Initial copy from dali-demo repository 35/231535/1
authorHeeyong Song <heeyong.song@samsung.com>
Wed, 22 Apr 2020 08:13:13 +0000 (17:13 +0900)
committerHeeyong Song <heeyong.song@samsung.com>
Wed, 22 Apr 2020 08:13:13 +0000 (17:13 +0900)
Change-Id: I301870d7ae7e9f71f86419545d7a780d34e61bf5

1037 files changed:
LICENSE [new file with mode: 0644]
README.md [new file with mode: 0644]
build/android/app/build.gradle [new file with mode: 0644]
build/android/app/src/main/AndroidManifest.xml [new file with mode: 0644]
build/android/app/src/main/cpp/CMakeLists.txt [new file with mode: 0644]
build/android/app/src/main/cpp/dali-demo-native-activity-jni.h [new file with mode: 0644]
build/android/app/src/main/cpp/main.cpp [new file with mode: 0644]
build/android/app/src/main/java/com/sec/dalidemo/DaliDemoApplication.java [new file with mode: 0644]
build/android/app/src/main/java/com/sec/dalidemo/DaliDemoNativeActivity.java [new file with mode: 0644]
build/android/app/src/main/java/com/sec/dalidemo/DaliDemosNativeActivity.java [new file with mode: 0644]
build/android/app/src/main/java/com/sec/dalidemo/DaliExamplesNativeActivity.java [new file with mode: 0644]
build/android/app/src/main/java/com/sec/dalidemo/DaliTestsNativeActivity.java [new file with mode: 0644]
build/android/app/src/main/res/mipmap-hdpi/dali_examples.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-hdpi/dali_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-hdpi/dali_tests.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-hdpi/ic_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-mdpi/dali_examples.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-mdpi/dali_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-mdpi/dali_tests.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-mdpi/ic_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xhdpi/dali_examples.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xhdpi/dali_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xhdpi/dali_tests.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xxhdpi/dali_examples.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xxhdpi/dali_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xxhdpi/dali_tests.png [new file with mode: 0644]
build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png [new file with mode: 0644]
build/android/app/src/main/res/values/strings.xml [new file with mode: 0644]
build/android/build.gradle [new file with mode: 0644]
build/android/build.sh [new file with mode: 0755]
build/android/dali/build.sh [new file with mode: 0755]
build/android/dali/build_adaptor.sh [new file with mode: 0755]
build/android/dali/build_core.sh [new file with mode: 0755]
build/android/dali/build_demo.sh [new file with mode: 0755]
build/android/dali/build_toolkit.sh [new file with mode: 0755]
build/android/dali/env.sh [new file with mode: 0755]
build/android/key.jks [new file with mode: 0644]
build/android/setenv [new file with mode: 0755]
build/android/settings.gradle [new file with mode: 0644]
build/tizen/CMakeLists.txt [new file with mode: 0644]
build/tizen/builder/CMakeLists.txt [new file with mode: 0644]
build/tizen/demo/CMakeLists.txt [new file with mode: 0644]
build/tizen/examples-reel/CMakeLists.txt [new file with mode: 0644]
build/tizen/examples/CMakeLists.txt [new file with mode: 0644]
build/tizen/resources-location.in [new file with mode: 0644]
build/tizen/tests-reel/CMakeLists.txt [new file with mode: 0644]
builder/dali-builder.cpp [new file with mode: 0644]
com.samsung.dali-demo.manifest [new file with mode: 0644]
com.samsung.dali-demo.manifest-smack [new file with mode: 0644]
com.samsung.dali-demo.rule [new file with mode: 0644]
com.samsung.dali-demo.xml [new file with mode: 0644]
demo/dali-demo.cpp [new file with mode: 0644]
examples-reel/dali-examples-reel.cpp [new file with mode: 0644]
examples/alpha-blending-cpu/alpha-blending-cpu-example.cpp [new file with mode: 0644]
examples/animated-gradient-call-active/animated-gradient-call-active.cpp [new file with mode: 0644]
examples/animated-gradient-card-active/animated-gradient-card-active.cpp [new file with mode: 0644]
examples/animated-images/animated-images-example.cpp [new file with mode: 0644]
examples/animated-shapes/animated-shapes-example.cpp [new file with mode: 0644]
examples/animated-vector-images/animated-vector-images-example.cpp [new file with mode: 0644]
examples/arc-visual/arc-visual-example.cpp [new file with mode: 0644]
examples/benchmark/benchmark.cpp [new file with mode: 0644]
examples/bezier-curve/bezier-curve-example.cpp [new file with mode: 0644]
examples/blocks/blocks-example.cpp [new file with mode: 0644]
examples/bloom-view/bloom-view-example.cpp [new file with mode: 0644]
examples/bubble-effect/bubble-effect-example.cpp [new file with mode: 0644]
examples/builder/examples.cpp [new file with mode: 0644]
examples/buttons/buttons-example.cpp [new file with mode: 0644]
examples/clipping-draw-order/clipping-draw-order.cpp [new file with mode: 0644]
examples/clipping/clipping-example.cpp [new file with mode: 0644]
examples/clipping/clipping-item-factory.cpp [new file with mode: 0644]
examples/clipping/clipping-item-factory.h [new file with mode: 0644]
examples/clipping/item-view-orientation-constraint.h [new file with mode: 0644]
examples/color-visual/color-visual-example.cpp [new file with mode: 0644]
examples/compressed-texture-formats/compressed-texture-formats-example.cpp [new file with mode: 0644]
examples/contact-cards/README.md [new file with mode: 0644]
examples/contact-cards/clipped-image.cpp [new file with mode: 0644]
examples/contact-cards/clipped-image.h [new file with mode: 0644]
examples/contact-cards/contact-card-layout-info.h [new file with mode: 0644]
examples/contact-cards/contact-card-layouter.cpp [new file with mode: 0644]
examples/contact-cards/contact-card-layouter.h [new file with mode: 0644]
examples/contact-cards/contact-card.cpp [new file with mode: 0644]
examples/contact-cards/contact-card.h [new file with mode: 0644]
examples/contact-cards/contact-cards-example.cpp [new file with mode: 0644]
examples/contact-cards/contact-data.cpp [new file with mode: 0644]
examples/contact-cards/contact-data.h [new file with mode: 0644]
examples/contact-cards/masked-image.cpp [new file with mode: 0644]
examples/contact-cards/masked-image.h [new file with mode: 0644]
examples/cube-transition-effect/cube-transition-effect-example.cpp [new file with mode: 0644]
examples/deferred-shading/deferred-shading.cpp [new file with mode: 0644]
examples/dissolve-effect/dissolve-effect-example.cpp [new file with mode: 0644]
examples/drag-and-drop/drag-and-drop-example.cpp [new file with mode: 0755]
examples/effects-view/effects-view-example.cpp [new file with mode: 0644]
examples/flex-container/flex-container-example.cpp [new file with mode: 0644]
examples/focus-integration/focus-integration.cpp [new file with mode: 0644]
examples/fpp-game/fpp-game-example.cpp [new file with mode: 0644]
examples/fpp-game/fpp-game-tutorial-controller.cpp [new file with mode: 0644]
examples/fpp-game/fpp-game-tutorial-controller.h [new file with mode: 0644]
examples/fpp-game/game-camera.cpp [new file with mode: 0644]
examples/fpp-game/game-camera.h [new file with mode: 0644]
examples/fpp-game/game-container.h [new file with mode: 0644]
examples/fpp-game/game-entity.cpp [new file with mode: 0644]
examples/fpp-game/game-entity.h [new file with mode: 0644]
examples/fpp-game/game-model.cpp [new file with mode: 0644]
examples/fpp-game/game-model.h [new file with mode: 0644]
examples/fpp-game/game-renderer.cpp [new file with mode: 0644]
examples/fpp-game/game-renderer.h [new file with mode: 0644]
examples/fpp-game/game-scene.cpp [new file with mode: 0644]
examples/fpp-game/game-scene.h [new file with mode: 0644]
examples/fpp-game/game-texture.cpp [new file with mode: 0644]
examples/fpp-game/game-texture.h [new file with mode: 0644]
examples/fpp-game/game-utils.cpp [new file with mode: 0644]
examples/fpp-game/game-utils.h [new file with mode: 0644]
examples/fpp-game/third-party/picojson.h [new file with mode: 0644]
examples/frame-callback/frame-callback-example.cpp [new file with mode: 0644]
examples/frame-callback/frame-callback.cpp [new file with mode: 0644]
examples/frame-callback/frame-callback.h [new file with mode: 0644]
examples/gaussian-blur-view/gaussian-blur-view-example.cpp [new file with mode: 0644]
examples/gestures/gesture-example.cpp [new file with mode: 0644]
examples/gradients/gradients-example.cpp [new file with mode: 0644]
examples/hello-world/hello-world-example.cpp [new file with mode: 0644]
examples/homescreen-benchmark/homescreen-benchmark.cpp [new file with mode: 0644]
examples/image-policies/image-policies-example.cpp [new file with mode: 0644]
examples/image-scaling-and-filtering/image-scaling-and-filtering-example.cpp [new file with mode: 0644]
examples/image-scaling-irregular-grid/grid-flags.h [new file with mode: 0644]
examples/image-scaling-irregular-grid/image-scaling-irregular-grid-example.cpp [new file with mode: 0644]
examples/image-view-alpha-blending/image-view-alpha-blending-example.cpp [new file with mode: 0644]
examples/image-view-pixel-area/image-view-pixel-area-example.cpp [new file with mode: 0644]
examples/image-view-svg/image-view-svg-example.cpp [new file with mode: 0644]
examples/image-view-url/image-view-url-example.cpp [new file with mode: 0644]
examples/image-view/image-view-example.cpp [new file with mode: 0644]
examples/item-view/item-view-example.cpp [new file with mode: 0644]
examples/line-mesh/line-mesh-example.cpp [new file with mode: 0644]
examples/magnifier/magnifier-example.cpp [new file with mode: 0644]
examples/mesh-morph/mesh-morph-example.cpp [new file with mode: 0644]
examples/mesh-visual/mesh-visual-example.cpp [new file with mode: 0644]
examples/metaball-explosion/metaball-explosion-example.cpp [new file with mode: 0644]
examples/metaball-refrac/metaball-refrac-example.cpp [new file with mode: 0644]
examples/model3d-view/model3d-view-example.cpp [new file with mode: 0644]
examples/motion-blur/motion-blur-example.cpp [new file with mode: 0644]
examples/motion-stretch/motion-stretch-example.cpp [new file with mode: 0644]
examples/native-image-source/native-image-source-example.cpp [new file with mode: 0644]
examples/page-turn-view/page-turn-view-example.cpp [new file with mode: 0644]
examples/perf-scroll/perf-scroll.cpp [new file with mode: 0644]
examples/pivot/pivot-example.cpp [new file with mode: 0644]
examples/point-mesh/point-mesh-example.cpp [new file with mode: 0644]
examples/popup/popup-example.cpp [new file with mode: 0644]
examples/pre-render-callback/pre-render-callback-example.cpp [new file with mode: 0644]
examples/primitive-shapes/primitive-shapes-example.cpp [new file with mode: 0644]
examples/progress-bar/progress-bar-example.cpp [new file with mode: 0644]
examples/property-notification/property-notification-example.cpp [new file with mode: 0644]
examples/ray-marching/ray-marching-example.cpp [new file with mode: 0644]
examples/reflection-demo/gltf-scene.cpp [new file with mode: 0644]
examples/reflection-demo/gltf-scene.h [new file with mode: 0644]
examples/reflection-demo/pico-json.h [new file with mode: 0644]
examples/reflection-demo/reflection-example.cpp [new file with mode: 0644]
examples/refraction-effect/refraction-effect-example.cpp [new file with mode: 0644]
examples/remote-image-loading/remote-image-loading-example.cpp [new file with mode: 0644]
examples/renderer-stencil/renderer-stencil-example.cpp [new file with mode: 0644]
examples/renderer-stencil/renderer-stencil-shaders.h [new file with mode: 0644]
examples/rendering-basic-light/rendering-basic-light-example.cpp [new file with mode: 0644]
examples/rendering-basic-pbr/ktx-loader.cpp [new file with mode: 0644]
examples/rendering-basic-pbr/ktx-loader.h [new file with mode: 0644]
examples/rendering-basic-pbr/model-pbr.cpp [new file with mode: 0644]
examples/rendering-basic-pbr/model-pbr.h [new file with mode: 0644]
examples/rendering-basic-pbr/model-skybox.cpp [new file with mode: 0644]
examples/rendering-basic-pbr/model-skybox.h [new file with mode: 0644]
examples/rendering-basic-pbr/obj-loader.cpp [new file with mode: 0644]
examples/rendering-basic-pbr/obj-loader.h [new file with mode: 0644]
examples/rendering-basic-pbr/rendering-basic-pbr-example.cpp [new file with mode: 0644]
examples/rendering-cube/rendering-cube.cpp [new file with mode: 0644]
examples/rendering-line/rendering-line.cpp [new file with mode: 0644]
examples/rendering-radial-progress/radial-progress.cpp [new file with mode: 0644]
examples/rendering-skybox/look-camera.cpp [new file with mode: 0644]
examples/rendering-skybox/look-camera.h [new file with mode: 0644]
examples/rendering-skybox/rendering-skybox.cpp [new file with mode: 0644]
examples/rendering-textured-cube/rendering-textured-cube.cpp [new file with mode: 0644]
examples/rendering-triangle/rendering-triangle.cpp [new file with mode: 0644]
examples/scroll-view/scroll-view-example.cpp [new file with mode: 0644]
examples/shadows-and-lights/shadows-and-lights-example.cpp [new file with mode: 0644]
examples/simple-bitmap-font-text-label/simple-text-label-example.cpp [new file with mode: 0644]
examples/simple-scroll-view/simple-scroll-view-example.cpp [new file with mode: 0644]
examples/simple-text-field/simple-text-field.cpp [new file with mode: 0644]
examples/simple-text-label/simple-text-label-example.cpp [new file with mode: 0644]
examples/simple-text-renderer/simple-text-renderer-example.cpp [new file with mode: 0644]
examples/simple-text-visual/simple-text-visual-example.cpp [new file with mode: 0644]
examples/simple-visuals-control/my-control-impl.cpp [new file with mode: 0644]
examples/simple-visuals-control/my-control-impl.h [new file with mode: 0644]
examples/simple-visuals-control/my-control.cpp [new file with mode: 0644]
examples/simple-visuals-control/my-control.h [new file with mode: 0644]
examples/simple-visuals-control/simple-visuals-application.cpp [new file with mode: 0644]
examples/simple-visuals-control/simple-visuals-application.h [new file with mode: 0644]
examples/simple-visuals-control/simple-visuals-example.cpp [new file with mode: 0644]
examples/size-negotiation/size-negotiation-example.cpp [new file with mode: 0644]
examples/sparkle/sparkle-effect-example.cpp [new file with mode: 0644]
examples/sparkle/sparkle-effect.h [new file with mode: 0644]
examples/styling/image-channel-control-impl.cpp [new file with mode: 0644]
examples/styling/image-channel-control-impl.h [new file with mode: 0644]
examples/styling/image-channel-control.cpp [new file with mode: 0644]
examples/styling/image-channel-control.h [new file with mode: 0644]
examples/styling/style-example.cpp [new file with mode: 0644]
examples/styling/styling-application.cpp [new file with mode: 0644]
examples/styling/styling-application.h [new file with mode: 0644]
examples/super-blur-view/super-blur-view-example.cpp [new file with mode: 0644]
examples/text-editor/text-editor-example.cpp [new file with mode: 0644]
examples/text-field/text-field-example.cpp [new file with mode: 0644]
examples/text-fonts/text-fonts-example.cpp [new file with mode: 0644]
examples/text-label-emojis/emoji-strings.h [new file with mode: 0644]
examples/text-label-emojis/text-label-emojis.cpp [new file with mode: 0644]
examples/text-label-multi-language/text-label-multi-language-example.cpp [new file with mode: 0644]
examples/text-label/expanding-buttons-impl.cpp [new file with mode: 0644]
examples/text-label/expanding-buttons-impl.h [new file with mode: 0644]
examples/text-label/expanding-buttons.cpp [new file with mode: 0644]
examples/text-label/expanding-buttons.h [new file with mode: 0644]
examples/text-label/text-label-example.cpp [new file with mode: 0644]
examples/text-memory-profiling/text-memory-profiling-example.cpp [new file with mode: 0644]
examples/text-overlap/text-overlap-example.cpp [new file with mode: 0644]
examples/text-overlap/text-overlap-example.h [new file with mode: 0644]
examples/text-scrolling/text-scrolling-example.cpp [new file with mode: 0644]
examples/textured-mesh/textured-mesh-example.cpp [new file with mode: 0644]
examples/tilt/tilt-example.cpp [new file with mode: 0644]
examples/tooltip/tooltip-example.cpp [new file with mode: 0644]
examples/transitions/shadow-button-impl.cpp [new file with mode: 0644]
examples/transitions/shadow-button-impl.h [new file with mode: 0644]
examples/transitions/shadow-button.cpp [new file with mode: 0644]
examples/transitions/shadow-button.h [new file with mode: 0644]
examples/transitions/transition-application.cpp [new file with mode: 0644]
examples/transitions/transition-application.h [new file with mode: 0644]
examples/transitions/transition-example.cpp [new file with mode: 0644]
examples/video-view/video-view-example.cpp [new file with mode: 0644]
examples/visual-fitting-mode/visual-fitting-mode-example.cpp [new file with mode: 0644]
examples/visual-transitions/beat-control-impl.cpp [new file with mode: 0644]
examples/visual-transitions/beat-control-impl.h [new file with mode: 0644]
examples/visual-transitions/beat-control.cpp [new file with mode: 0644]
examples/visual-transitions/beat-control.h [new file with mode: 0644]
examples/visual-transitions/transition-application.cpp [new file with mode: 0644]
examples/visual-transitions/transition-application.h [new file with mode: 0644]
examples/visual-transitions/transition-example.cpp [new file with mode: 0644]
examples/web-view/web-view-example.cpp [new file with mode: 0644]
packaging/com.samsung.dali-demo.spec [new file with mode: 0755]
resources/game/Cube.mod [new file with mode: 0644]
resources/game/lm_back_wall.png [new file with mode: 0644]
resources/game/lm_corridor_0.png [new file with mode: 0644]
resources/game/lm_corridor_1.png [new file with mode: 0644]
resources/game/lm_crate.001.png [new file with mode: 0644]
resources/game/lm_crate.002.png [new file with mode: 0644]
resources/game/lm_crate.003.png [new file with mode: 0644]
resources/game/lm_crate.004.png [new file with mode: 0644]
resources/game/lm_crate.005.png [new file with mode: 0644]
resources/game/lm_crate.006.png [new file with mode: 0644]
resources/game/lm_crate.007.png [new file with mode: 0644]
resources/game/lm_crate.008.png [new file with mode: 0644]
resources/game/lm_crate.009.png [new file with mode: 0644]
resources/game/lm_crate.010.png [new file with mode: 0644]
resources/game/lm_crate.011.png [new file with mode: 0644]
resources/game/lm_left_corridor.png [new file with mode: 0644]
resources/game/lm_right_corridor.png [new file with mode: 0644]
resources/game/lm_side_wall_floor.png [new file with mode: 0644]
resources/game/lm_slope.png [new file with mode: 0644]
resources/game/reflection.bin [new file with mode: 0644]
resources/game/reflection.gltf [new file with mode: 0644]
resources/game/scene.json [new file with mode: 0644]
resources/game/texture-atlas-license.txt [new file with mode: 0644]
resources/game/texture-atlas.jpg [new file with mode: 0644]
resources/game/tile_1.005.mod [new file with mode: 0644]
resources/game/tile_1.009.mod [new file with mode: 0644]
resources/game/tile_1.010.mod [new file with mode: 0644]
resources/game/tile_1.011.mod [new file with mode: 0644]
resources/images/00_popup_bg.9.png [new file with mode: 0644]
resources/images/Backward.png [new file with mode: 0755]
resources/images/Call_Accept.png [new file with mode: 0644]
resources/images/Call_Battery.png [new file with mode: 0644]
resources/images/Call_Decline.png [new file with mode: 0644]
resources/images/Call_Decline_wh.png [new file with mode: 0644]
resources/images/Camera.svg [new file with mode: 0755]
resources/images/Card_01.png [new file with mode: 0644]
resources/images/Card_02.png [new file with mode: 0644]
resources/images/Card_03.png [new file with mode: 0644]
resources/images/Card_Add_Button.png [new file with mode: 0644]
resources/images/Contacts.svg [new file with mode: 0755]
resources/images/DarkStyleDisabledArrowButton.png [new file with mode: 0644]
resources/images/DarkStyleGreenArrowButton.png [new file with mode: 0755]
resources/images/DarkStyleGreyArrowButton.png [new file with mode: 0755]
resources/images/Dino-Painted_lambert2SG_color.png [new file with mode: 0644]
resources/images/Dino-Painted_lambert2SG_gloss.png [new file with mode: 0644]
resources/images/Dino-Painted_lambert2SG_nmap.png [new file with mode: 0644]
resources/images/Dino2_lambert2SG_color.png [new file with mode: 0644]
resources/images/Dino2_lambert2SG_nmap.png [new file with mode: 0644]
resources/images/FontStyleButton_Background.png [new file with mode: 0644]
resources/images/FontStyleButton_Colour.png [new file with mode: 0755]
resources/images/FontStyleButton_Main.png [new file with mode: 0755]
resources/images/FontStyleButton_OK_02.png [new file with mode: 0755]
resources/images/FontStyleButton_OK_03.png [new file with mode: 0755]
resources/images/FontStyleButton_Outline.png [new file with mode: 0755]
resources/images/FontStyleButton_Shadow.png [new file with mode: 0755]
resources/images/Forward.png [new file with mode: 0755]
resources/images/Kid1.svg [new file with mode: 0755]
resources/images/Logo-for-demo.png [new file with mode: 0644]
resources/images/Mail.svg [new file with mode: 0755]
resources/images/Message.svg [new file with mode: 0755]
resources/images/Pause.png [new file with mode: 0755]
resources/images/Phone.svg [new file with mode: 0755]
resources/images/RadialEffect-280x280.png [new file with mode: 0644]
resources/images/Settings.svg [new file with mode: 0755]
resources/images/TB-gloss.png [new file with mode: 0644]
resources/images/Test_100_normal_roughness.png [new file with mode: 0644]
resources/images/Test_wblue_100_albedo_metal.png [new file with mode: 0644]
resources/images/Toyrobot-Plastic_lambert3SG_color.png [new file with mode: 0644]
resources/images/Toyrobot-Plastic_lambert3SG_gloss.png [new file with mode: 0644]
resources/images/Toyrobot-Plastic_lambert3SG_nmap.png [new file with mode: 0644]
resources/images/UI-Leather-DIFF.png [new file with mode: 0644]
resources/images/World.svg [new file with mode: 0755]
resources/images/add-meta.sh [new file with mode: 0755]
resources/images/animatedLoading.gif [new file with mode: 0644]
resources/images/animation-list.png [new file with mode: 0644]
resources/images/apache-licence.xmp [new file with mode: 0644]
resources/images/application-icon-0.png [new file with mode: 0644]
resources/images/application-icon-1.png [new file with mode: 0644]
resources/images/application-icon-10.png [new file with mode: 0644]
resources/images/application-icon-100.png [new file with mode: 0644]
resources/images/application-icon-101.png [new file with mode: 0644]
resources/images/application-icon-102.png [new file with mode: 0644]
resources/images/application-icon-103.png [new file with mode: 0644]
resources/images/application-icon-104.png [new file with mode: 0644]
resources/images/application-icon-105.png [new file with mode: 0644]
resources/images/application-icon-106.png [new file with mode: 0644]
resources/images/application-icon-107.png [new file with mode: 0644]
resources/images/application-icon-108.png [new file with mode: 0644]
resources/images/application-icon-109.png [new file with mode: 0644]
resources/images/application-icon-11.png [new file with mode: 0644]
resources/images/application-icon-110.png [new file with mode: 0644]
resources/images/application-icon-111.png [new file with mode: 0644]
resources/images/application-icon-112.png [new file with mode: 0644]
resources/images/application-icon-113.png [new file with mode: 0644]
resources/images/application-icon-114.png [new file with mode: 0644]
resources/images/application-icon-115.png [new file with mode: 0644]
resources/images/application-icon-116.png [new file with mode: 0644]
resources/images/application-icon-117.png [new file with mode: 0644]
resources/images/application-icon-118.png [new file with mode: 0644]
resources/images/application-icon-119.png [new file with mode: 0644]
resources/images/application-icon-12.png [new file with mode: 0644]
resources/images/application-icon-120.png [new file with mode: 0644]
resources/images/application-icon-121.png [new file with mode: 0644]
resources/images/application-icon-122.png [new file with mode: 0644]
resources/images/application-icon-123.png [new file with mode: 0644]
resources/images/application-icon-124.png [new file with mode: 0644]
resources/images/application-icon-125.png [new file with mode: 0644]
resources/images/application-icon-126.png [new file with mode: 0644]
resources/images/application-icon-127.png [new file with mode: 0644]
resources/images/application-icon-128.png [new file with mode: 0644]
resources/images/application-icon-129.png [new file with mode: 0644]
resources/images/application-icon-13.png [new file with mode: 0644]
resources/images/application-icon-130.png [new file with mode: 0644]
resources/images/application-icon-131.png [new file with mode: 0644]
resources/images/application-icon-132.png [new file with mode: 0644]
resources/images/application-icon-133.png [new file with mode: 0644]
resources/images/application-icon-134.png [new file with mode: 0644]
resources/images/application-icon-135.png [new file with mode: 0644]
resources/images/application-icon-136.png [new file with mode: 0644]
resources/images/application-icon-137.png [new file with mode: 0644]
resources/images/application-icon-138.png [new file with mode: 0644]
resources/images/application-icon-139.png [new file with mode: 0644]
resources/images/application-icon-14.png [new file with mode: 0644]
resources/images/application-icon-140.png [new file with mode: 0644]
resources/images/application-icon-141.png [new file with mode: 0644]
resources/images/application-icon-142.png [new file with mode: 0644]
resources/images/application-icon-143.png [new file with mode: 0644]
resources/images/application-icon-144.png [new file with mode: 0644]
resources/images/application-icon-145.png [new file with mode: 0644]
resources/images/application-icon-146.png [new file with mode: 0644]
resources/images/application-icon-147.png [new file with mode: 0644]
resources/images/application-icon-15.png [new file with mode: 0644]
resources/images/application-icon-16.png [new file with mode: 0644]
resources/images/application-icon-17.png [new file with mode: 0644]
resources/images/application-icon-18.png [new file with mode: 0644]
resources/images/application-icon-19.png [new file with mode: 0644]
resources/images/application-icon-2.png [new file with mode: 0644]
resources/images/application-icon-20.png [new file with mode: 0644]
resources/images/application-icon-21.png [new file with mode: 0644]
resources/images/application-icon-22.png [new file with mode: 0644]
resources/images/application-icon-23.png [new file with mode: 0644]
resources/images/application-icon-24.png [new file with mode: 0644]
resources/images/application-icon-25.png [new file with mode: 0644]
resources/images/application-icon-26.png [new file with mode: 0644]
resources/images/application-icon-27.png [new file with mode: 0644]
resources/images/application-icon-28.png [new file with mode: 0644]
resources/images/application-icon-29.png [new file with mode: 0644]
resources/images/application-icon-3.png [new file with mode: 0644]
resources/images/application-icon-30.png [new file with mode: 0644]
resources/images/application-icon-31.png [new file with mode: 0644]
resources/images/application-icon-32.png [new file with mode: 0644]
resources/images/application-icon-33.png [new file with mode: 0644]
resources/images/application-icon-34.png [new file with mode: 0644]
resources/images/application-icon-35.png [new file with mode: 0644]
resources/images/application-icon-36.png [new file with mode: 0644]
resources/images/application-icon-37.png [new file with mode: 0644]
resources/images/application-icon-38.png [new file with mode: 0644]
resources/images/application-icon-39.png [new file with mode: 0644]
resources/images/application-icon-4.png [new file with mode: 0644]
resources/images/application-icon-40.png [new file with mode: 0644]
resources/images/application-icon-41.png [new file with mode: 0644]
resources/images/application-icon-42.png [new file with mode: 0644]
resources/images/application-icon-43.png [new file with mode: 0644]
resources/images/application-icon-44.png [new file with mode: 0644]
resources/images/application-icon-45.png [new file with mode: 0644]
resources/images/application-icon-46.png [new file with mode: 0644]
resources/images/application-icon-47.png [new file with mode: 0644]
resources/images/application-icon-48.png [new file with mode: 0644]
resources/images/application-icon-49.png [new file with mode: 0644]
resources/images/application-icon-5.png [new file with mode: 0644]
resources/images/application-icon-50.png [new file with mode: 0644]
resources/images/application-icon-51.png [new file with mode: 0644]
resources/images/application-icon-52.png [new file with mode: 0644]
resources/images/application-icon-53.png [new file with mode: 0644]
resources/images/application-icon-54.png [new file with mode: 0644]
resources/images/application-icon-55.png [new file with mode: 0644]
resources/images/application-icon-56.png [new file with mode: 0644]
resources/images/application-icon-57.png [new file with mode: 0644]
resources/images/application-icon-58.png [new file with mode: 0644]
resources/images/application-icon-59.png [new file with mode: 0644]
resources/images/application-icon-6.png [new file with mode: 0644]
resources/images/application-icon-60.png [new file with mode: 0644]
resources/images/application-icon-61.png [new file with mode: 0644]
resources/images/application-icon-62.png [new file with mode: 0644]
resources/images/application-icon-63.png [new file with mode: 0644]
resources/images/application-icon-64.png [new file with mode: 0644]
resources/images/application-icon-65.png [new file with mode: 0644]
resources/images/application-icon-66.png [new file with mode: 0644]
resources/images/application-icon-67.png [new file with mode: 0644]
resources/images/application-icon-68.png [new file with mode: 0644]
resources/images/application-icon-69.png [new file with mode: 0644]
resources/images/application-icon-7-RGB565.png [new file with mode: 0644]
resources/images/application-icon-7.png [new file with mode: 0644]
resources/images/application-icon-70.png [new file with mode: 0644]
resources/images/application-icon-71.png [new file with mode: 0644]
resources/images/application-icon-72.png [new file with mode: 0644]
resources/images/application-icon-73.png [new file with mode: 0644]
resources/images/application-icon-74.png [new file with mode: 0644]
resources/images/application-icon-75.png [new file with mode: 0644]
resources/images/application-icon-76.png [new file with mode: 0644]
resources/images/application-icon-77.png [new file with mode: 0644]
resources/images/application-icon-78.png [new file with mode: 0644]
resources/images/application-icon-79.png [new file with mode: 0644]
resources/images/application-icon-8.png [new file with mode: 0644]
resources/images/application-icon-80.png [new file with mode: 0644]
resources/images/application-icon-81.png [new file with mode: 0644]
resources/images/application-icon-82.png [new file with mode: 0644]
resources/images/application-icon-83.png [new file with mode: 0644]
resources/images/application-icon-84.png [new file with mode: 0644]
resources/images/application-icon-85.png [new file with mode: 0644]
resources/images/application-icon-86.png [new file with mode: 0644]
resources/images/application-icon-87.png [new file with mode: 0644]
resources/images/application-icon-88.png [new file with mode: 0644]
resources/images/application-icon-89.png [new file with mode: 0644]
resources/images/application-icon-9.png [new file with mode: 0644]
resources/images/application-icon-90.png [new file with mode: 0644]
resources/images/application-icon-91.png [new file with mode: 0644]
resources/images/application-icon-92.png [new file with mode: 0644]
resources/images/application-icon-93.png [new file with mode: 0644]
resources/images/application-icon-94.png [new file with mode: 0644]
resources/images/application-icon-95.png [new file with mode: 0644]
resources/images/application-icon-96.png [new file with mode: 0644]
resources/images/application-icon-97.png [new file with mode: 0644]
resources/images/application-icon-98.png [new file with mode: 0644]
resources/images/application-icon-99.png [new file with mode: 0644]
resources/images/background-1.jpg [new file with mode: 0644]
resources/images/background-2.jpg [new file with mode: 0644]
resources/images/background-3.jpg [new file with mode: 0644]
resources/images/background-4.jpg [new file with mode: 0644]
resources/images/background-5.jpg [new file with mode: 0644]
resources/images/background-blocks.jpg [new file with mode: 0644]
resources/images/background-default.png [new file with mode: 0644]
resources/images/background-gradient.jpg [new file with mode: 0644]
resources/images/background-magnifier.jpg [new file with mode: 0644]
resources/images/bevelled-cube-button.png [new file with mode: 0644]
resources/images/blocks-ball.png [new file with mode: 0644]
resources/images/blocks-brick-1.png [new file with mode: 0644]
resources/images/blocks-brick-2.png [new file with mode: 0644]
resources/images/blocks-brick-3.png [new file with mode: 0644]
resources/images/blocks-brick-4.png [new file with mode: 0644]
resources/images/blocks-paddle-handle.png [new file with mode: 0644]
resources/images/blocks-paddle.png [new file with mode: 0644]
resources/images/book-landscape-cover-back.jpg [new file with mode: 0644]
resources/images/book-landscape-cover.jpg [new file with mode: 0644]
resources/images/book-landscape-p1.jpg [new file with mode: 0644]
resources/images/book-landscape-p2.jpg [new file with mode: 0644]
resources/images/book-landscape-p3.jpg [new file with mode: 0644]
resources/images/book-landscape-p4.jpg [new file with mode: 0644]
resources/images/book-landscape-p5.jpg [new file with mode: 0644]
resources/images/book-landscape-p6.jpg [new file with mode: 0644]
resources/images/book-landscape-p7.jpg [new file with mode: 0644]
resources/images/book-landscape-p8.jpg [new file with mode: 0644]
resources/images/book-portrait-cover.jpg [new file with mode: 0644]
resources/images/book-portrait-p1.jpg [new file with mode: 0644]
resources/images/book-portrait-p2.jpg [new file with mode: 0644]
resources/images/book-portrait-p3.jpg [new file with mode: 0644]
resources/images/book-portrait-p4.jpg [new file with mode: 0644]
resources/images/book-portrait-p5.jpg [new file with mode: 0644]
resources/images/book-portrait-p6.jpg [new file with mode: 0644]
resources/images/book-portrait-p7.jpg [new file with mode: 0644]
resources/images/book-portrait-p8.jpg [new file with mode: 0644]
resources/images/border-4px.9.png [new file with mode: 0644]
resources/images/brick-wall.jpg [new file with mode: 0644]
resources/images/bubble-ball.png [new file with mode: 0644]
resources/images/button-background.png [new file with mode: 0644]
resources/images/button-disabled.9.png [new file with mode: 0644]
resources/images/button-down-disabled.9.png [new file with mode: 0644]
resources/images/button-down.9.png [new file with mode: 0644]
resources/images/button-up-1.9.png [new file with mode: 0644]
resources/images/button-up-10.9.png [new file with mode: 0644]
resources/images/button-up-11.9.png [new file with mode: 0644]
resources/images/button-up-12.9.png [new file with mode: 0644]
resources/images/button-up-13.9.png [new file with mode: 0644]
resources/images/button-up-14.9.png [new file with mode: 0644]
resources/images/button-up-15.9.png [new file with mode: 0644]
resources/images/button-up-16.9.png [new file with mode: 0644]
resources/images/button-up-17.9.png [new file with mode: 0644]
resources/images/button-up-2.9.png [new file with mode: 0644]
resources/images/button-up-3.9.png [new file with mode: 0644]
resources/images/button-up-4.9.png [new file with mode: 0644]
resources/images/button-up-5.9.png [new file with mode: 0644]
resources/images/button-up-6.9.png [new file with mode: 0644]
resources/images/button-up-7.9.png [new file with mode: 0644]
resources/images/button-up-8.9.png [new file with mode: 0644]
resources/images/button-up-9.9.png [new file with mode: 0644]
resources/images/button-white-up.9.png [new file with mode: 0644]
resources/images/circle1.png [new file with mode: 0644]
resources/images/circle2.png [new file with mode: 0644]
resources/images/circle_point.png [new file with mode: 0644]
resources/images/circle_stroke_point.png [new file with mode: 0644]
resources/images/cluster-background.png [new file with mode: 0644]
resources/images/cluster-image-frame.png [new file with mode: 0644]
resources/images/cluster-image-shadow.png [new file with mode: 0644]
resources/images/com.samsung.dali-demo.ico [new file with mode: 0644]
resources/images/com.samsung.dali-demo.png [new file with mode: 0644]
resources/images/cone-button.png [new file with mode: 0644]
resources/images/conical-frustum-button.png [new file with mode: 0644]
resources/images/contact-cards-mask.png [new file with mode: 0644]
resources/images/contacts-background.png [new file with mode: 0644]
resources/images/contacts-image.png [new file with mode: 0644]
resources/images/cube-button.png [new file with mode: 0644]
resources/images/cylinder-button.png [new file with mode: 0644]
resources/images/dali-examples.png [new file with mode: 0644]
resources/images/dali-logo-anim-001.png [new file with mode: 0644]
resources/images/dali-logo-anim-002.png [new file with mode: 0644]
resources/images/dali-logo-anim-003.png [new file with mode: 0644]
resources/images/dali-logo-anim-004.png [new file with mode: 0644]
resources/images/dali-logo-anim-005.png [new file with mode: 0644]
resources/images/dali-logo-anim-006.png [new file with mode: 0644]
resources/images/dali-logo-anim-007.png [new file with mode: 0644]
resources/images/dali-logo-anim-008.png [new file with mode: 0644]
resources/images/dali-logo-anim-009.png [new file with mode: 0644]
resources/images/dali-logo-anim-010.png [new file with mode: 0644]
resources/images/dali-logo-anim-011.png [new file with mode: 0644]
resources/images/dali-logo-anim-012.png [new file with mode: 0644]
resources/images/dali-logo-anim-013.png [new file with mode: 0644]
resources/images/dali-logo-anim-014.png [new file with mode: 0644]
resources/images/dali-logo-anim-015.png [new file with mode: 0644]
resources/images/dali-logo-anim.gif [new file with mode: 0644]
resources/images/dali-logo-static.gif [new file with mode: 0644]
resources/images/dali-logo.png [new file with mode: 0644]
resources/images/dali-tests.png [new file with mode: 0644]
resources/images/demo-tile-texture-focused.9.png [new file with mode: 0644]
resources/images/demo-tile-texture.9.png [new file with mode: 0644]
resources/images/desktop_background_1440x2560.png [new file with mode: 0644]
resources/images/dog-anim-001.png [new file with mode: 0644]
resources/images/dog-anim-002.png [new file with mode: 0644]
resources/images/dog-anim-003.png [new file with mode: 0644]
resources/images/dog-anim-004.png [new file with mode: 0644]
resources/images/dog-anim-005.png [new file with mode: 0644]
resources/images/dog-anim-006.png [new file with mode: 0644]
resources/images/dog-anim-007.png [new file with mode: 0644]
resources/images/dog-anim-008.png [new file with mode: 0644]
resources/images/dog-anim.gif [new file with mode: 0644]
resources/images/dog-static.gif [new file with mode: 0644]
resources/images/folder_appicon_empty_bg.png [new file with mode: 0644]
resources/images/folder_appicon_empty_open_bg.png [new file with mode: 0644]
resources/images/frame-128x128.png [new file with mode: 0644]
resources/images/gallery-large-1.jpg [new file with mode: 0644]
resources/images/gallery-large-10.jpg [new file with mode: 0644]
resources/images/gallery-large-11.jpg [new file with mode: 0644]
resources/images/gallery-large-12.jpg [new file with mode: 0644]
resources/images/gallery-large-13.jpg [new file with mode: 0644]
resources/images/gallery-large-14.jpg [new file with mode: 0644]
resources/images/gallery-large-14.wbmp [new file with mode: 0644]
resources/images/gallery-large-15.jpg [new file with mode: 0644]
resources/images/gallery-large-16.jpg [new file with mode: 0644]
resources/images/gallery-large-17.jpg [new file with mode: 0644]
resources/images/gallery-large-18.jpg [new file with mode: 0644]
resources/images/gallery-large-19.jpg [new file with mode: 0644]
resources/images/gallery-large-2.jpg [new file with mode: 0644]
resources/images/gallery-large-20.jpg [new file with mode: 0644]
resources/images/gallery-large-21.jpg [new file with mode: 0644]
resources/images/gallery-large-3.jpg [new file with mode: 0644]
resources/images/gallery-large-4.jpg [new file with mode: 0644]
resources/images/gallery-large-5.jpg [new file with mode: 0644]
resources/images/gallery-large-6.jpg [new file with mode: 0644]
resources/images/gallery-large-7.jpg [new file with mode: 0644]
resources/images/gallery-large-8.jpg [new file with mode: 0644]
resources/images/gallery-large-9.jpg [new file with mode: 0644]
resources/images/gallery-medium-1.jpg [new file with mode: 0644]
resources/images/gallery-medium-10.jpg [new file with mode: 0644]
resources/images/gallery-medium-11.jpg [new file with mode: 0644]
resources/images/gallery-medium-12.jpg [new file with mode: 0644]
resources/images/gallery-medium-13.jpg [new file with mode: 0644]
resources/images/gallery-medium-14.jpg [new file with mode: 0644]
resources/images/gallery-medium-15.jpg [new file with mode: 0644]
resources/images/gallery-medium-16.jpg [new file with mode: 0644]
resources/images/gallery-medium-17.jpg [new file with mode: 0644]
resources/images/gallery-medium-18.jpg [new file with mode: 0644]
resources/images/gallery-medium-19.jpg [new file with mode: 0644]
resources/images/gallery-medium-2.jpg [new file with mode: 0644]
resources/images/gallery-medium-20.jpg [new file with mode: 0644]
resources/images/gallery-medium-21.jpg [new file with mode: 0644]
resources/images/gallery-medium-22.jpg [new file with mode: 0644]
resources/images/gallery-medium-23.jpg [new file with mode: 0644]
resources/images/gallery-medium-24.jpg [new file with mode: 0644]
resources/images/gallery-medium-25.jpg [new file with mode: 0644]
resources/images/gallery-medium-26.jpg [new file with mode: 0644]
resources/images/gallery-medium-27.jpg [new file with mode: 0644]
resources/images/gallery-medium-28.jpg [new file with mode: 0644]
resources/images/gallery-medium-29.jpg [new file with mode: 0644]
resources/images/gallery-medium-3.jpg [new file with mode: 0644]
resources/images/gallery-medium-30.jpg [new file with mode: 0644]
resources/images/gallery-medium-31.jpg [new file with mode: 0644]
resources/images/gallery-medium-32.jpg [new file with mode: 0644]
resources/images/gallery-medium-33.jpg [new file with mode: 0644]
resources/images/gallery-medium-34.jpg [new file with mode: 0644]
resources/images/gallery-medium-35.jpg [new file with mode: 0644]
resources/images/gallery-medium-36.jpg [new file with mode: 0644]
resources/images/gallery-medium-37.jpg [new file with mode: 0644]
resources/images/gallery-medium-38.jpg [new file with mode: 0644]
resources/images/gallery-medium-39.jpg [new file with mode: 0644]
resources/images/gallery-medium-4.jpg [new file with mode: 0644]
resources/images/gallery-medium-40.jpg [new file with mode: 0644]
resources/images/gallery-medium-41.jpg [new file with mode: 0644]
resources/images/gallery-medium-42.jpg [new file with mode: 0644]
resources/images/gallery-medium-43.jpg [new file with mode: 0644]
resources/images/gallery-medium-44.jpg [new file with mode: 0644]
resources/images/gallery-medium-45.jpg [new file with mode: 0644]
resources/images/gallery-medium-46.jpg [new file with mode: 0644]
resources/images/gallery-medium-47.jpg [new file with mode: 0644]
resources/images/gallery-medium-48.jpg [new file with mode: 0644]
resources/images/gallery-medium-49.jpg [new file with mode: 0644]
resources/images/gallery-medium-5.jpg [new file with mode: 0644]
resources/images/gallery-medium-50.jpg [new file with mode: 0644]
resources/images/gallery-medium-51.jpg [new file with mode: 0644]
resources/images/gallery-medium-52.jpg [new file with mode: 0644]
resources/images/gallery-medium-53.jpg [new file with mode: 0644]
resources/images/gallery-medium-6.jpg [new file with mode: 0644]
resources/images/gallery-medium-7.jpg [new file with mode: 0644]
resources/images/gallery-medium-8.jpg [new file with mode: 0644]
resources/images/gallery-medium-9.jpg [new file with mode: 0644]
resources/images/gallery-small-1.jpg [new file with mode: 0644]
resources/images/gallery-small-10.jpg [new file with mode: 0644]
resources/images/gallery-small-11.jpg [new file with mode: 0644]
resources/images/gallery-small-12.jpg [new file with mode: 0644]
resources/images/gallery-small-13.jpg [new file with mode: 0644]
resources/images/gallery-small-14.jpg [new file with mode: 0644]
resources/images/gallery-small-15.jpg [new file with mode: 0644]
resources/images/gallery-small-16.jpg [new file with mode: 0644]
resources/images/gallery-small-17.jpg [new file with mode: 0644]
resources/images/gallery-small-18.jpg [new file with mode: 0644]
resources/images/gallery-small-19.jpg [new file with mode: 0644]
resources/images/gallery-small-2.jpg [new file with mode: 0644]
resources/images/gallery-small-20.jpg [new file with mode: 0644]
resources/images/gallery-small-21.jpg [new file with mode: 0644]
resources/images/gallery-small-22.jpg [new file with mode: 0644]
resources/images/gallery-small-23.jpg [new file with mode: 0644]
resources/images/gallery-small-24.jpg [new file with mode: 0644]
resources/images/gallery-small-25.jpg [new file with mode: 0644]
resources/images/gallery-small-26.jpg [new file with mode: 0644]
resources/images/gallery-small-27.jpg [new file with mode: 0644]
resources/images/gallery-small-28.jpg [new file with mode: 0644]
resources/images/gallery-small-29.jpg [new file with mode: 0644]
resources/images/gallery-small-3.jpg [new file with mode: 0644]
resources/images/gallery-small-30.jpg [new file with mode: 0644]
resources/images/gallery-small-31.jpg [new file with mode: 0644]
resources/images/gallery-small-32.jpg [new file with mode: 0644]
resources/images/gallery-small-33.jpg [new file with mode: 0644]
resources/images/gallery-small-34.jpg [new file with mode: 0644]
resources/images/gallery-small-35.jpg [new file with mode: 0644]
resources/images/gallery-small-36.jpg [new file with mode: 0644]
resources/images/gallery-small-37.jpg [new file with mode: 0644]
resources/images/gallery-small-38.jpg [new file with mode: 0644]
resources/images/gallery-small-39.jpg [new file with mode: 0644]
resources/images/gallery-small-4.jpg [new file with mode: 0644]
resources/images/gallery-small-40.jpg [new file with mode: 0644]
resources/images/gallery-small-41.jpg [new file with mode: 0644]
resources/images/gallery-small-42.jpg [new file with mode: 0644]
resources/images/gallery-small-43.jpg [new file with mode: 0644]
resources/images/gallery-small-44.jpg [new file with mode: 0644]
resources/images/gallery-small-45.jpg [new file with mode: 0644]
resources/images/gallery-small-46.jpg [new file with mode: 0644]
resources/images/gallery-small-47.jpg [new file with mode: 0644]
resources/images/gallery-small-48.jpg [new file with mode: 0644]
resources/images/gallery-small-49.jpg [new file with mode: 0644]
resources/images/gallery-small-5.jpg [new file with mode: 0644]
resources/images/gallery-small-50.jpg [new file with mode: 0644]
resources/images/gallery-small-51.jpg [new file with mode: 0644]
resources/images/gallery-small-52.jpg [new file with mode: 0644]
resources/images/gallery-small-53.jpg [new file with mode: 0644]
resources/images/gallery-small-6.jpg [new file with mode: 0644]
resources/images/gallery-small-7.jpg [new file with mode: 0644]
resources/images/gallery-small-8.jpg [new file with mode: 0644]
resources/images/gallery-small-9.jpg [new file with mode: 0644]
resources/images/grab-handle.png [new file with mode: 0644]
resources/images/heartsframe.9.png [new file with mode: 0644]
resources/images/icon-change-selected.png [new file with mode: 0644]
resources/images/icon-change.png [new file with mode: 0644]
resources/images/icon-cluster-carousel-selected.png [new file with mode: 0644]
resources/images/icon-cluster-carousel.png [new file with mode: 0644]
resources/images/icon-cluster-none-selected.png [new file with mode: 0644]
resources/images/icon-cluster-none.png [new file with mode: 0644]
resources/images/icon-cluster-sphere-selected.png [new file with mode: 0644]
resources/images/icon-cluster-sphere.png [new file with mode: 0644]
resources/images/icon-cluster-wobble-selected.png [new file with mode: 0644]
resources/images/icon-cluster-wobble.png [new file with mode: 0644]
resources/images/icon-delete-selected.png [new file with mode: 0644]
resources/images/icon-delete.png [new file with mode: 0644]
resources/images/icon-edit-selected.png [new file with mode: 0644]
resources/images/icon-edit.png [new file with mode: 0644]
resources/images/icon-effect-cross-selected.png [new file with mode: 0644]
resources/images/icon-effect-cross.png [new file with mode: 0644]
resources/images/icon-effect-fold-selected.png [new file with mode: 0644]
resources/images/icon-effect-fold.png [new file with mode: 0644]
resources/images/icon-effect-wave-selected.png [new file with mode: 0644]
resources/images/icon-effect-wave.png [new file with mode: 0644]
resources/images/icon-effects-off-selected.png [new file with mode: 0644]
resources/images/icon-effects-off.png [new file with mode: 0644]
resources/images/icon-effects-on-selected.png [new file with mode: 0644]
resources/images/icon-effects-on.png [new file with mode: 0644]
resources/images/icon-highp-selected.png [new file with mode: 0644]
resources/images/icon-highp.png [new file with mode: 0644]
resources/images/icon-insert-selected.png [new file with mode: 0644]
resources/images/icon-insert.png [new file with mode: 0644]
resources/images/icon-item-view-layout-depth-selected.png [new file with mode: 0644]
resources/images/icon-item-view-layout-depth.png [new file with mode: 0644]
resources/images/icon-item-view-layout-grid-selected.png [new file with mode: 0644]
resources/images/icon-item-view-layout-grid.png [new file with mode: 0644]
resources/images/icon-item-view-layout-spiral-selected.png [new file with mode: 0644]
resources/images/icon-item-view-layout-spiral.png [new file with mode: 0644]
resources/images/icon-mediump-selected.png [new file with mode: 0644]
resources/images/icon-mediump.png [new file with mode: 0644]
resources/images/icon-play-selected.png [new file with mode: 0644]
resources/images/icon-play.png [new file with mode: 0644]
resources/images/icon-replace-selected.png [new file with mode: 0644]
resources/images/icon-replace.png [new file with mode: 0644]
resources/images/icon-reset-selected.png [new file with mode: 0644]
resources/images/icon-reset.png [new file with mode: 0644]
resources/images/icon-reverse-selected.png [new file with mode: 0644]
resources/images/icon-reverse.png [new file with mode: 0644]
resources/images/icon-rotate-anticlockwise-selected.png [new file with mode: 0644]
resources/images/icon-rotate-anticlockwise.png [new file with mode: 0644]
resources/images/icon-scroll-view-carousel-selected.png [new file with mode: 0644]
resources/images/icon-scroll-view-carousel.png [new file with mode: 0644]
resources/images/icon-scroll-view-depth-selected.png [new file with mode: 0644]
resources/images/icon-scroll-view-depth.png [new file with mode: 0644]
resources/images/icon-scroll-view-inner-cube-selected.png [new file with mode: 0644]
resources/images/icon-scroll-view-inner-cube.png [new file with mode: 0644]
resources/images/icon-scroll-view-outer-cube-selected.png [new file with mode: 0644]
resources/images/icon-scroll-view-outer-cube.png [new file with mode: 0644]
resources/images/icon-scroll-view-spiral-selected.png [new file with mode: 0644]
resources/images/icon-scroll-view-spiral.png [new file with mode: 0644]
resources/images/icon-stop-selected.png [new file with mode: 0644]
resources/images/icon-stop.png [new file with mode: 0644]
resources/images/image-with-border-1.jpg [new file with mode: 0644]
resources/images/image-with-border-2.jpg [new file with mode: 0644]
resources/images/image-with-border-3.jpg [new file with mode: 0644]
resources/images/image-with-border-4.jpg [new file with mode: 0644]
resources/images/image-with-border-5.jpg [new file with mode: 0644]
resources/images/insta_camera.json [new file with mode: 0644]
resources/images/item-background-focused.9.png [new file with mode: 0644]
resources/images/item-background.9.png [new file with mode: 0644]
resources/images/item-select-check.png [new file with mode: 0644]
resources/images/jolly_walker.json [new file with mode: 0644]
resources/images/keyboard-Landscape.jpg [new file with mode: 0644]
resources/images/keyboard-LandscapeCopy.jpg [new file with mode: 0644]
resources/images/lake_back.jpg [new file with mode: 0644]
resources/images/lake_bottom.jpg [new file with mode: 0644]
resources/images/lake_front.jpg [new file with mode: 0644]
resources/images/lake_left.jpg [new file with mode: 0644]
resources/images/lake_right.jpg [new file with mode: 0644]
resources/images/lake_top.jpg [new file with mode: 0644]
resources/images/landscape_screen_primitive_shapes.gif [new file with mode: 0644]
resources/images/layer1.png [new file with mode: 0644]
resources/images/layer2.png [new file with mode: 0644]
resources/images/layer3.png [new file with mode: 0644]
resources/images/layer4.png [new file with mode: 0644]
resources/images/light-icon-back.png [new file with mode: 0644]
resources/images/light-icon-front.png [new file with mode: 0644]
resources/images/loading.png [new file with mode: 0644]
resources/images/mask-large.png [new file with mode: 0644]
resources/images/mask.png [new file with mode: 0644]
resources/images/mask.xcf [new file with mode: 0644]
resources/images/message-field-box.png [new file with mode: 0644]
resources/images/music-libray-main-screen.png [new file with mode: 0644]
resources/images/music-libray-record-cover.png [new file with mode: 0644]
resources/images/new-progress-bar-progress.9.png [new file with mode: 0644]
resources/images/new-progress-bar-secondary-progress.9.png [new file with mode: 0644]
resources/images/new-progress-bar-track.9.png [new file with mode: 0644]
resources/images/octahedron-button.png [new file with mode: 0644]
resources/images/papermill_E_diffuse-64.ktx [new file with mode: 0644]
resources/images/papermill_pmrem.ktx [new file with mode: 0644]
resources/images/people-medium-1.jpg [new file with mode: 0644]
resources/images/people-medium-10.jpg [new file with mode: 0644]
resources/images/people-medium-11.jpg [new file with mode: 0644]
resources/images/people-medium-12.jpg [new file with mode: 0644]
resources/images/people-medium-13.jpg [new file with mode: 0644]
resources/images/people-medium-14.jpg [new file with mode: 0644]
resources/images/people-medium-15.jpg [new file with mode: 0644]
resources/images/people-medium-16.jpg [new file with mode: 0644]
resources/images/people-medium-2.jpg [new file with mode: 0644]
resources/images/people-medium-3.jpg [new file with mode: 0644]
resources/images/people-medium-4.jpg [new file with mode: 0644]
resources/images/people-medium-5.jpg [new file with mode: 0644]
resources/images/people-medium-6.jpg [new file with mode: 0644]
resources/images/people-medium-7-masked.png [new file with mode: 0644]
resources/images/people-medium-7-rgb565.png [new file with mode: 0644]
resources/images/people-medium-7.jpg [new file with mode: 0644]
resources/images/people-medium-8.jpg [new file with mode: 0644]
resources/images/people-medium-9.jpg [new file with mode: 0644]
resources/images/people-small-1.jpg [new file with mode: 0644]
resources/images/people-small-10.jpg [new file with mode: 0644]
resources/images/people-small-11.jpg [new file with mode: 0644]
resources/images/people-small-12.jpg [new file with mode: 0644]
resources/images/people-small-13.jpg [new file with mode: 0644]
resources/images/people-small-14.jpg [new file with mode: 0644]
resources/images/people-small-15.jpg [new file with mode: 0644]
resources/images/people-small-16.jpg [new file with mode: 0644]
resources/images/people-small-2.jpg [new file with mode: 0644]
resources/images/people-small-3.jpg [new file with mode: 0644]
resources/images/people-small-4.jpg [new file with mode: 0644]
resources/images/people-small-5.jpg [new file with mode: 0644]
resources/images/people-small-6.jpg [new file with mode: 0644]
resources/images/people-small-7.jpg [new file with mode: 0644]
resources/images/people-small-7b.jpg [new file with mode: 0644]
resources/images/people-small-8.jpg [new file with mode: 0644]
resources/images/people-small-9.jpg [new file with mode: 0644]
resources/images/popup-tail-down.png [new file with mode: 0644]
resources/images/popup-tail-left.png [new file with mode: 0644]
resources/images/popup-tail-right.png [new file with mode: 0644]
resources/images/popup-tail-up.png [new file with mode: 0644]
resources/images/popup.9.png [new file with mode: 0644]
resources/images/popup_button_background.9.png [new file with mode: 0644]
resources/images/portrait_screen_primitive_shapes.gif [new file with mode: 0644]
resources/images/preMultAlpha.png [new file with mode: 0644]
resources/images/resize-handle.png [new file with mode: 0644]
resources/images/selection-popup-bg.1.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.10.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.11.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.12.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.13.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.14.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.15.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.16.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.17.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.18.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.19.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.2.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.20.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.21.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.22.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.23.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.24.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.25.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.26.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.27.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.28.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.29.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.3.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.30.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.31.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.32.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.33.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.4.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.5.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.6.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.7.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.8.9.png [new file with mode: 0644]
resources/images/selection-popup-bg.9.9.png [new file with mode: 0644]
resources/images/shape-bubble.png [new file with mode: 0644]
resources/images/shape-circle.png [new file with mode: 0644]
resources/images/slider-skin.9.png [new file with mode: 0644]
resources/images/sparkle_normal_background.png [new file with mode: 0755]
resources/images/sparkle_particle.png [new file with mode: 0755]
resources/images/sphere-button.png [new file with mode: 0644]
resources/images/square_primitive_shapes.bmp [new file with mode: 0644]
resources/images/store_mask_profile_f.png [new file with mode: 0755]
resources/images/store_mask_profile_n.png [new file with mode: 0755]
resources/images/tb-norm.png [new file with mode: 0644]
resources/images/tbcol.png [new file with mode: 0644]
resources/images/tile-focus.9.png [new file with mode: 0644]
resources/images/tooltip-tail-above.png [new file with mode: 0644]
resources/images/tooltip-tail-below.png [new file with mode: 0644]
resources/images/tooltip.9.png [new file with mode: 0644]
resources/images/top-bar.png [new file with mode: 0644]
resources/images/tx-astc-4x4-linear-native.astc [new file with mode: 0644]
resources/images/tx-astc-4x4-linear.ktx [new file with mode: 0644]
resources/images/tx-astc-4x4-srgb.ktx [new file with mode: 0644]
resources/images/tx-etc1.ktx [new file with mode: 0644]
resources/images/u0030.png [new file with mode: 0644]
resources/images/u0030_color.png [new file with mode: 0644]
resources/images/u0031.png [new file with mode: 0644]
resources/images/u0031_color.png [new file with mode: 0644]
resources/images/u0032.png [new file with mode: 0644]
resources/images/u0032_color.png [new file with mode: 0644]
resources/images/u0033.png [new file with mode: 0644]
resources/images/u0033_color.png [new file with mode: 0644]
resources/images/u0034.png [new file with mode: 0644]
resources/images/u0034_color.png [new file with mode: 0644]
resources/images/u0035.png [new file with mode: 0644]
resources/images/u0035_color.png [new file with mode: 0644]
resources/images/u0036.png [new file with mode: 0644]
resources/images/u0036_color.png [new file with mode: 0644]
resources/images/u0037.png [new file with mode: 0644]
resources/images/u0037_color.png [new file with mode: 0644]
resources/images/u0038.png [new file with mode: 0644]
resources/images/u0038_color.png [new file with mode: 0644]
resources/images/u0039.png [new file with mode: 0644]
resources/images/u0039_color.png [new file with mode: 0644]
resources/images/u003a.png [new file with mode: 0644]
resources/images/u003a_color.png [new file with mode: 0644]
resources/images/wood.png [new file with mode: 0644]
resources/images/woodEffect.jpg [new file with mode: 0644]
resources/images/you're_in!.json [new file with mode: 0644]
resources/models/Album-Cute-COVER-small.png [new file with mode: 0644]
resources/models/AlbumCute.dae [new file with mode: 0644]
resources/models/AlbumCute.dali-bin [new file with mode: 0644]
resources/models/Dino.mtl [new file with mode: 0644]
resources/models/Dino.obj [new file with mode: 0644]
resources/models/Kitten.png [new file with mode: 0644]
resources/models/ToyRobot-Metal.mtl [new file with mode: 0644]
resources/models/ToyRobot-Metal.obj [new file with mode: 0644]
resources/models/Toyrobot-Plastic.mtl [new file with mode: 0644]
resources/models/Toyrobot-Plastic.obj [new file with mode: 0644]
resources/models/sphere.obj [new file with mode: 0644]
resources/models/surface_pattern_v01.obj [new file with mode: 0755]
resources/models/surface_pattern_v02.obj [new file with mode: 0644]
resources/models/teapot.obj [new file with mode: 0644]
resources/po/as.po [new file with mode: 0755]
resources/po/de.po [new file with mode: 0755]
resources/po/en.po [new symlink]
resources/po/en_GB.po [new file with mode: 0755]
resources/po/en_US.po [new file with mode: 0755]
resources/po/es.po [new file with mode: 0755]
resources/po/fi.po [new file with mode: 0755]
resources/po/ko.po [new file with mode: 0755]
resources/po/ml.po [new file with mode: 0755]
resources/po/ur.po [new file with mode: 0755]
resources/po/zn_CH.po [new file with mode: 0755]
resources/scripts/animated-colors.json [new file with mode: 0644]
resources/scripts/animation.json [new file with mode: 0644]
resources/scripts/background.json [new file with mode: 0644]
resources/scripts/button.json [new file with mode: 0644]
resources/scripts/clock.json [new file with mode: 0644]
resources/scripts/hello-world.json [new file with mode: 0644]
resources/scripts/popup.json [new file with mode: 0644]
resources/scripts/shader-effect-ripple.json [new file with mode: 0644]
resources/scripts/slider-test-style.json [new file with mode: 0644]
resources/scripts/slider.json [new file with mode: 0644]
resources/scripts/super-blur-view.json [new file with mode: 0644]
resources/scripts/table-view.json [new file with mode: 0644]
resources/shaders/pbr_shader.fsh [new file with mode: 0644]
resources/shaders/pbr_shader.vsh [new file with mode: 0644]
resources/shaders/raymarch_sphere_shaded.fsh [new file with mode: 0644]
resources/shaders/raymarch_sphere_shaded.vsh [new file with mode: 0644]
resources/style/android/animated-gradient-call-active-style.json [new file with mode: 0644]
resources/style/android/base-theme.json [new file with mode: 0644]
resources/style/android/basic-light-theme.json [new file with mode: 0644]
resources/style/android/contact-cards-example-theme.json [new file with mode: 0644]
resources/style/android/progress-bar-example-theme.json [new file with mode: 0644]
resources/style/android/simple-example-theme.json [new file with mode: 0644]
resources/style/android/style-example-theme-one.json [new file with mode: 0644]
resources/style/android/style-example-theme-three.json [new file with mode: 0644]
resources/style/android/style-example-theme-two.json [new file with mode: 0644]
resources/style/android/text-editor-example-theme.json [new file with mode: 0644]
resources/style/android/tooltip-example-theme.json [new file with mode: 0644]
resources/style/animated-gradient-call-active-style.json [new file with mode: 0644]
resources/style/base-theme.json [new file with mode: 0644]
resources/style/basic-light-theme.json [new file with mode: 0644]
resources/style/contact-cards-example-theme.json [new file with mode: 0644]
resources/style/demo-theme.json [new file with mode: 0644]
resources/style/examples-theme.json [new file with mode: 0644]
resources/style/images/00_popup_bg.9.png [new file with mode: 0644]
resources/style/images/CheckBg.png [new file with mode: 0644]
resources/style/images/Tick.png [new file with mode: 0644]
resources/style/images/radio-button-selected.png [new file with mode: 0644]
resources/style/images/radio-button-unselected-disabled.png [new file with mode: 0644]
resources/style/images/radio-button-unselected.png [new file with mode: 0644]
resources/style/images/shadowButtonBg.9.png [new file with mode: 0644]
resources/style/images/slider-skin-progress-blue.9.png [new file with mode: 0644]
resources/style/images/slider-skin-progress-green.9.png [new file with mode: 0644]
resources/style/images/slider-skin-progress-red.9.png [new file with mode: 0644]
resources/style/mobile/animated-gradient-call-active-style.json [new file with mode: 0644]
resources/style/mobile/base-theme.json [new file with mode: 0644]
resources/style/mobile/basic-light-theme.json [new file with mode: 0644]
resources/style/mobile/contact-cards-example-theme.json [new file with mode: 0644]
resources/style/mobile/demo-theme.json [new file with mode: 0644]
resources/style/mobile/examples-theme.json [new file with mode: 0644]
resources/style/mobile/images/CheckBg.png [new file with mode: 0644]
resources/style/mobile/images/Tick.png [new file with mode: 0644]
resources/style/mobile/images/radio-button-selected.png [new file with mode: 0644]
resources/style/mobile/images/radio-button-unselected-disabled.png [new file with mode: 0644]
resources/style/mobile/images/radio-button-unselected.png [new file with mode: 0644]
resources/style/mobile/images/shadowButtonBg.9.png [new file with mode: 0644]
resources/style/mobile/images/slider-skin-progress-blue.9.png [new file with mode: 0644]
resources/style/mobile/images/slider-skin-progress-green.9.png [new file with mode: 0644]
resources/style/mobile/images/slider-skin-progress-red.9.png [new file with mode: 0644]
resources/style/mobile/progress-bar-example-theme.json [new file with mode: 0644]
resources/style/mobile/simple-example-theme.json [new file with mode: 0644]
resources/style/mobile/style-example-theme-one.json [new file with mode: 0644]
resources/style/mobile/style-example-theme-three.json [new file with mode: 0644]
resources/style/mobile/style-example-theme-two.json [new file with mode: 0644]
resources/style/mobile/tests-theme.json [new file with mode: 0644]
resources/style/mobile/text-editor-example-theme.json [new file with mode: 0644]
resources/style/mobile/tooltip-example-theme.json [new file with mode: 0644]
resources/style/progress-bar-example-theme.json [new file with mode: 0644]
resources/style/simple-example-theme.json [new file with mode: 0644]
resources/style/style-example-theme-one.json [new file with mode: 0644]
resources/style/style-example-theme-three.json [new file with mode: 0644]
resources/style/style-example-theme-two.json [new file with mode: 0644]
resources/style/tests-theme.json [new file with mode: 0644]
resources/style/text-editor-example-theme.json [new file with mode: 0644]
resources/style/tooltip-example-theme.json [new file with mode: 0644]
resources/videos/demoVideo.mp4 [new file with mode: 0755]
shared/dali-demo-strings.h [new file with mode: 0644]
shared/dali-table-view.cpp [new file with mode: 0644]
shared/dali-table-view.h [new file with mode: 0644]
shared/execute-process-android.cpp [new file with mode: 0644]
shared/execute-process-unix.cpp [new file with mode: 0644]
shared/execute-process-win.cpp [new file with mode: 0644]
shared/execute-process.h [new file with mode: 0644]
shared/multi-language-strings.h [new file with mode: 0644]
shared/utility.h [new file with mode: 0644]
shared/view.h [new file with mode: 0644]
tests-reel/dali-tests-reel.cpp [new file with mode: 0644]

diff --git a/LICENSE b/LICENSE
new file mode 100644 (file)
index 0000000..f4f54b6
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,70 @@
+Apache License
+
+Version 2.0, January 2004
+
+http://www.apache.org/licenses/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
+
+"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
+
+"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
+
+"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
+
+"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
+
+"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
+
+"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
+
+"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
+
+"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
+
+"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
+
+2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
+
+3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
+
+4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
+
+You must give any other recipients of the Work or Derivative Works a copy of this License; and
+You must cause any modified files to carry prominent notices stating that You changed the files; and
+You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
+If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
+
+You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
+5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
+
+6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
+
+8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
+
+9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
+
+END OF TERMS AND CONDITIONS
+
+APPENDIX: How to apply the Apache License to your work
+To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives.
+
+Copyright [yyyy] [name of copyright owner]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..140fd00
--- /dev/null
+++ b/README.md
@@ -0,0 +1,171 @@
+<img src="https://dalihub.github.io/images/DaliLogo320x200.png">
+
+# Table of Contents
+
+   * [Build Instructions](#build-instructions)
+      * [1. Building for Ubuntu desktop](#1-building-for-ubuntu-desktop)
+         * [Minimum Requirements](#minimum-requirements)
+         * [Building the Repository](#building-the-repository)
+         * [DEBUG Builds](#debug-builds)
+      * [2. GBS Builds](#2-gbs-builds)
+         * [NON-SMACK Targets](#non-smack-targets)
+         * [SMACK enabled Targets](#smack-enabled-targets)
+         * [DEBUG Builds](#debug-builds-1)
+      * [3. Building for Android](#3-android-builds)
+      * [4. Building for MS Windows](#4-windows-builds)
+         * Build with the Visual Studio project.
+         * Build with CMake.
+   * [Creating an example](#creating-an-example)
+
+# Build Instructions
+
+## 1. Building for Ubuntu desktop
+
+### Requirements
+
+ - Ubuntu 16.04 or later
+ - Environment created using dali_env script in dali-core repository
+ - GCC version 6
+
+DALi requires a compiler supporting C++11 features.
+Ubuntu 16.04 is the first version to offer this by default (GCC v5.4.0).
+
+GCC version 6 is recommended since it has fixes for issues in version 5
+e.g. it avoids spurious 'defined but not used' warnings in header files.
+
+### Building the Repository
+
+To build the repository enter the 'build/tizen' folder:
+
+         $ cd dali-demo/build/tizen
+
+Then run the following commands:
+
+         $ cmake -DCMAKE_INSTALL_PREFIX=$DESKTOP_PREFIX .
+         $ make install -j8
+
+### DEBUG Builds
+
+Specify a debug build when building for desktop by passing the following parameter to cmake:
+
+         $ cmake -DCMAKE_INSTALL_PREFIX=$DESKTOP_PREFIX -DCMAKE_BUILD_TYPE=Debug .
+
+Before running make install as normal:
+
+         $ make install -j8
+
+## 2. GBS Builds
+
+### NON-SMACK Targets
+
+         $ gbs build -A [TARGET_ARCH]
+
+### SMACK enabled Targets
+
+         $ gbs build -A [TARGET_ARCH] --define "%enable_dali_smack_rules 1"
+
+### DEBUG Builds
+
+         $ gbs build -A [TARGET_ARCH] --define "%enable_debug 1"
+
+# Creating an example
+
+ - Make a directory in the "examples" directory. Only one example will be created per directory.
+ - The executable installed will have a ".example" appended to it, e.g. a "blocks" directory produces "blocks.example".
+ - Add all source files for the required example in this directory.
+ - Modify "com.samsung.dali-demo.xml" to include your example so that it can be launched on target.
+ - No changes are required to the make system as long as the above is followed, your example will be automatically built & installed.
+
+## 3. Building for Android
+
+### Requirements
+
+ - Ubuntu 16.04 or later
+ - GCC version 6
+ - Android DALi dependencies
+
+### Building the Repository
+To download Android DALi dependencies clone https://github.com/dalihub/android-dependencies
+in your DALi folder (folder containing dali-demo).
+
+         $ git clone https://github.com/dalihub/android-dependencies.git
+
+To build the repository enter the 'build/android' folder:
+
+         $ cd dali-demo/build/android
+
+Then run the following command:
+
+         $ ./build.sh
+
+For debug build:
+
+         $ DEBUG=1 ./build.sh
+
+To debug from Android Studio set Android DALi enviroment using setenv script in 'build/android' and launch Android Studio from the enviroment:
+
+         $ . setenv
+         $ <path/to/androidstudio>/bin/studio.sh
+
+To clean the build:
+
+         $ ./build.sh clean
+
+To install apks:
+
+         $ adb install -r ./app/build/outputs/apk/debug/dali-demo-debug.apk
+         $ adb install -r ./app/build/outputs/apk/release/dali-demo-release.apk
+
+## 4. Building for MS Windows
+
+Third party dependencies are built using vcpkg. Instructions on how to install vcpkg can be found in the
+vcpkg-script folder in the windows-dependencies repository.
+
+- Download the windows-dependencies repository from DaliHub
+
+         $ git clone https://github.com/dalihub/windows-dependencies.git
+
+- Read the windows-dependencies/vcpkg-script/Readme.md file for more instructions on how to build and install the third-party dependencies.
+
+### Build with the Visual Studio project
+  Read the windows-dependencies/README.md file for more instructions on how to build and run DALi for MS Windows.
+
+### Build with CMake
+
+  * Requirements
+    It's required the version 3.12.2 of CMake and a Git Bash Shell.
+
+  * Notes and troubleshoting:
+    It should be possible to use the MS Visual studio Developer Command Prompt (https://docs.microsoft.com/en-us/dotnet/framework/tools/developer-command-prompt-for-vs) to build DALi from the command line.
+    However, the CMake version installed with MS Visual Studio 2017 is a bit out of date and some VCPKG modules require a higher version.
+    This instructions have been tested with CMake 3.12.2 on a Git Bash shell.
+
+  * Define an environment variable to set the path to the VCPKG folder
+
+    $ export VCPKG_FOLDER=C:/Users/username/Workspace/VCPKG_TOOL
+
+  * Define an environment variable to set the path where DALi is going to be installed.
+
+    $ export DALI_ENV_FOLDER=C:/Users/username/Workspace/dali-env
+
+  * Execute the following commands to create the makefiles, build and install DALi.
+
+    $ cmake -g Ninja . -DCMAKE_TOOLCHAIN_FILE=$VCPKG_FOLDER/vcpkg/scripts/buildsystems/vcpkg.cmake -DENABLE_PKG_CONFIGURE=OFF -DINTERNATIONALIZATION=OFF -DCMAKE_INSTALL_PREFIX=$DALI_ENV_FOLDER
+    $ cmake --build . --target install
+
+  * Options:
+    - CMAKE_TOOLCHAIN_FILE  ---> Needed to find packages installed by VCPKG.
+    - ENABLE_PKG_CONFIGURE  ---> Whether to install pkg configure files (not currently working on MS Windows. CMake modules used instead).
+    - INTERNATIONALIZATION  ---> Whether to generate and install internazionalization '.po' Portable Object files.
+    - CMAKE_INSTALL_PREFIX  ---> Were DALi is installed.
+    - ENABLE_DEBUG          ---> Whether to build with debug enabled.
+
+  * If dali-toolkit has been compiled with the USE_DEFAULT_RESOURCE_DIR option disabled then is needed to set global environment variables in order to find the default toolkit resources.
+
+    i.e
+    $ setx DALI_ENV_FOLDER C:/Users/username/dali-env
+    $ setx DALI_IMAGE_DIR $DALI_ENV_FOLDER/share/dali/toolkit/images/
+    $ setx DALI_SOUND_DIR $DALI_ENV_FOLDER/share/dali/toolkit/sounds/
+    $ setx DALI_STYLE_DIR $DALI_ENV_FOLDER/share/dali/toolkit/styles/
+    $ setx DALI_STYLE_IMAGE_DIR $DALI_ENV_FOLDER/share/dali/toolkit/styles/images/
+    $ setx DALI_DATA_READ_ONLY_DIR $DALI_ENV_FOLDER/share/dali/
diff --git a/build/android/app/build.gradle b/build/android/app/build.gradle
new file mode 100644 (file)
index 0000000..28042e4
--- /dev/null
@@ -0,0 +1,120 @@
+apply plugin: 'com.android.application'
+
+def buildType = "debug"
+def androidABI = System.getenv('TARGET')
+def daliDir = System.getenv('DALI_DIR')
+def daliEnvDir = System.getenv('DALI_ENV_DIR')
+def daliEnvLibDir = daliEnvDir + '/lib'
+def daliEnvFilesDir = daliEnvDir + '/files'
+
+android {
+    signingConfigs {
+        config {
+            storeFile file("../key.jks")
+            storePassword "Samsung"
+            keyAlias "key0"
+            keyPassword "Samsung"
+        }
+    }
+    compileSdkVersion 28
+    defaultConfig {
+        applicationId = 'com.sec.dalidemo'
+        minSdkVersion 26
+        targetSdkVersion 26
+        versionCode 1
+        versionName "1.0"
+        externalNativeBuild {
+            cmake {
+                cppFlags "-fexceptions -frtti -w -Wall -std=gnu++11"
+                arguments '-DANDROID_STL=c++_shared'
+            }
+        }
+    }
+    project.archivesBaseName = 'dali-demo'
+    aaptOptions {
+        noCompress ''
+    }
+    buildTypes {
+        debug {
+            ndk {
+                abiFilters androidABI
+            }
+            buildType = "debug"
+        }
+        release {
+            minifyEnabled false
+            proguardFiles getDefaultProguardFile('proguard-android.txt'),
+                    'proguard-rules.pro'
+            ndk {
+                abiFilters androidABI
+            }
+
+            signingConfig signingConfigs.config
+            buildType = "release"
+        }
+    }
+    packagingOptions {
+        if( androidABI == "arm64-v8a" )
+        {
+          pickFirst 'lib/arm64-v8a/libc++_shared.so'
+          pickFirst 'lib/arm64-v8a/libdaliview.so'
+        }
+        else
+        {
+          pickFirst 'lib/armeabi-v7a/libc++_shared.so'
+          pickFirst 'lib/armeabi-v7a/libdaliview.so'
+        }
+    }
+    sourceSets {
+        main {
+            jniLibs.srcDirs += daliEnvLibDir
+            assets.srcDirs += daliEnvFilesDir
+        }
+    }
+    lintOptions {
+        checkReleaseBuilds false
+    }
+    externalNativeBuild {
+        cmake {
+            version '3.10.2'
+            path 'src/main/cpp/CMakeLists.txt'
+        }
+    }
+    compileOptions {
+        targetCompatibility = 1.6
+        sourceCompatibility = 1.6
+    }
+}
+
+dependencies {
+    implementation fileTree(include: ['*.jar'], dir: 'libs')
+    implementation 'androidx.appcompat:appcompat:1.1.0'
+    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
+}
+
+task buildDaliDependencies(type:Exec) {
+    environment "PREFIX", daliEnvDir
+    environment "ANDROID_ABI", androidABI
+    environment "ANDROID_PLATFORM", "26"
+    if (buildType == 'debug')
+        environment "DEBUG", "1"
+    workingDir file(daliDir + '/android-dependencies/cmake').getAbsolutePath()
+    commandLine 'sh',  './buildall.sh'
+}
+
+task buildDali(type:Exec) {
+    workingDir "../dali"
+    if (buildType == 'debug')
+        environment "DEBUG", "1"
+    commandLine 'sh', './build.sh'
+}
+
+task cleanDali(type:Exec) {
+    workingDir "../dali"
+    commandLine 'sh', './build.sh', 'clean'
+}
+
+buildDali.dependsOn buildDaliDependencies
+preBuild.dependsOn buildDali
+
+clean.dependsOn cleanDali
diff --git a/build/android/app/src/main/AndroidManifest.xml b/build/android/app/src/main/AndroidManifest.xml
new file mode 100644 (file)
index 0000000..e10568e
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- BEGIN_INCLUDE(manifest) -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+          package="com.sec.dalidemo"
+          android:versionCode="1"
+          android:versionName="1.0">
+  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
+  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
+
+  <application
+      android:allowBackup="false"
+      android:fullBackupContent="false"
+      android:icon="@mipmap/dali_launcher"
+      android:label="@string/app_name"
+      android:name="com.sec.dalidemo.DaliDemoApplication">
+
+    <activity android:name="com.sec.dalidemo.DaliDemoNativeActivity"
+        android:icon="@mipmap/dali_launcher"
+        android:label="DALi Example"
+        android:screenOrientation="portrait"
+        android:windowSoftInputMode="stateAlwaysVisible"
+        android:process=":example">
+      <!-- Tell NativeActivity the name of our .so -->
+      <meta-data android:name="android.app.lib_name"
+          android:value="native-activity" />
+      <meta-data android:name="start"
+          android:value="blocks.example" />
+      <intent-filter>
+        <action android:name="android.intent.action.RUN" />
+      </intent-filter>
+    </activity>
+
+    <!-- Our activity is the built-in NativeActivity framework class.
+         This will take care of integrating with our NDK code. -->
+    <activity android:name="com.sec.dalidemo.DaliDemosNativeActivity"
+              android:icon="@mipmap/dali_launcher"
+              android:label="@string/demo_name"
+              android:screenOrientation="portrait"
+              android:windowSoftInputMode="stateAlwaysVisible"
+              android:process=":dalidemos">
+      <!-- Tell NativeActivity the name of our .so -->
+      <meta-data android:name="android.app.lib_name"
+                 android:value="native-activity" />
+      <meta-data android:name="start"
+                 android:value="dali-demo" />
+      <intent-filter>
+        <action android:name="android.intent.action.MAIN" />
+        <category android:name="android.intent.category.LAUNCHER" />
+      </intent-filter>
+    </activity>
+
+    <activity
+        android:name="com.sec.dalidemo.DaliExamplesNativeActivity"
+        android:icon="@mipmap/dali_examples"
+        android:label="@string/examples_name"
+        android:screenOrientation="portrait"
+        android:windowSoftInputMode="stateAlwaysVisible"
+        android:process=":daliexamples">
+      <!-- Tell NativeActivity the name of our .so -->
+      <meta-data android:name="android.app.lib_name"
+          android:value="native-activity" />
+      <meta-data android:name="start"
+          android:value="dali-examples" />
+      <intent-filter>
+        <action android:name="android.intent.action.MAIN" />
+        <category android:name="android.intent.category.LAUNCHER" />
+      </intent-filter>
+    </activity>
+
+    <activity
+        android:name="com.sec.dalidemo.DaliTestsNativeActivity"
+        android:icon="@mipmap/dali_tests"
+        android:label="@string/tests_name"
+        android:screenOrientation="portrait"
+        android:windowSoftInputMode="stateAlwaysVisible"
+        android:process=":dalitests">
+      <!-- Tell NativeActivity the name of our .so -->
+      <meta-data android:name="android.app.lib_name"
+          android:value="native-activity" />
+      <meta-data android:name="start"
+          android:value="dali-tests" />
+      <intent-filter>
+        <action android:name="android.intent.action.MAIN" />
+        <category android:name="android.intent.category.LAUNCHER" />
+      </intent-filter>
+    </activity>
+
+  </application>
+
+</manifest>
+<!-- END_INCLUDE(manifest) -->
diff --git a/build/android/app/src/main/cpp/CMakeLists.txt b/build/android/app/src/main/cpp/CMakeLists.txt
new file mode 100644 (file)
index 0000000..fff12ab
--- /dev/null
@@ -0,0 +1,55 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 3.4.1)
+
+SET(DALI_ENV_DIR $ENV{DALI_ENV_DIR})
+SET(ENV{PKG_CONFIG_PATH} "${DALI_ENV_DIR}/lib/${ANDROID_ABI}/pkgconfig:$ENV{PKG_CONFIG_PATH}")
+FIND_PACKAGE(PkgConfig REQUIRED)
+
+SET(ANDROID_SDK $ENV{ANDROID_SDK})
+SET(ANDROID_NDK $ENV{ANDROID_NDK})
+
+# build native_app_glue as a static lib
+ADD_LIBRARY(native_app_glue STATIC
+    ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c)
+
+# now build app's shared lib
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexceptions -frtti -w -Wall -std=gnu++11")
+
+# Export ANativeActivity_onCreate(),
+# Refer to: https://github.com/android-ndk/ndk/issues/381.
+SET(CMAKE_SHARED_LINKER_FLAGS
+  "${CMAKE_SHARED_LINKER_FLAGS} -u ANativeActivity_onCreate")
+
+ADD_LIBRARY(native-activity SHARED main.cpp)
+
+TARGET_INCLUDE_DIRECTORIES(native-activity PRIVATE
+  ${ANDROID_NDK}/sources/android/native_app_glue)
+
+INCLUDE_DIRECTORIES(.)
+INCLUDE_DIRECTORIES(${DALI_ENV_DIR}/include)
+INCLUDE_DIRECTORIES(${DALI_ENV_DIR}/include/dali)
+
+IF(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
+  SET(ENABLE_TRACE ON)
+ELSE()
+  SET(ENABLE_TRACE OFF)
+ENDIF()
+
+IF(EXISTS "${DALI_ENV_DIR}")
+  PKG_CHECK_MODULES(DALI_CORE dali-core REQUIRED NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH)
+  PKG_CHECK_MODULES(DALI_ADAPTOR dali-adaptor REQUIRED NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH)
+  PKG_CHECK_MODULES(DALI_TOOLKIT dali-toolkit REQUIRED NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH)
+ELSE()
+  MESSAGE(WARNING "${DALI_ENV_DIR} not found!")
+ENDIF()
+
+# add lib dependencies
+TARGET_LINK_LIBRARIES(native-activity
+        ${DALI_TOOLKIT_LDFLAGS}
+        ${DALI_ADAPTOR_LDFLAGS}
+        ${DALI_CORE_LDFLAGS}
+        native_app_glue
+        z
+        android
+        log
+        EGL
+        GLESv3)
diff --git a/build/android/app/src/main/cpp/dali-demo-native-activity-jni.h b/build/android/app/src/main/cpp/dali-demo-native-activity-jni.h
new file mode 100644 (file)
index 0000000..2b2df8d
--- /dev/null
@@ -0,0 +1,130 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ANDROID_DALI_DEMO_NATIVE_ACTIVITY_JNI_H
+#define ANDROID_DALI_DEMO_NATIVE_ACTIVITY_JNI_H
+
+#include <string>
+#include <android_native_app_glue.h>
+
+class DaliDemoNativeActivity
+{
+public:
+  DaliDemoNativeActivity(ANativeActivity* activity)
+  : activity(activity)
+  {
+  }
+
+  class JString
+  {
+  public:
+    JString(JNIEnv* env, const std::string& str)
+    : env(env),
+      string(env->NewStringUTF(str.c_str()))
+    {
+    }
+
+    JString(JNIEnv* env, jstring str)
+    : env(env),
+      string(str)
+    {
+    }
+
+    std::string ToString()
+    {
+      std::string out;
+      if (string)
+      {
+        const char* utf = env->GetStringUTFChars(string, 0);
+        out = std::string(utf);
+        env->ReleaseStringUTFChars(string, utf);
+      }
+      return out;
+    }
+
+    ~JString()
+    {
+      if (string)
+      {
+        env->DeleteLocalRef(string);
+      }
+    }
+
+  private:
+    friend class DaliDemoNativeActivity;
+    JNIEnv* env;
+    jstring string;
+  };
+
+  class NativeActivityJNI
+  {
+  public:
+    NativeActivityJNI(ANativeActivity* activity)
+    : activity(activity)
+    {
+      activity->vm->AttachCurrentThread(&env, nullptr);
+      clazz = env->GetObjectClass(activity->clazz);
+    }
+
+    ~NativeActivityJNI()
+    {
+      activity->vm->DetachCurrentThread();
+    }
+
+    std::string CallStringMethod(const std::string& name, const std::string& arg)
+    {
+      jmethodID methodID = env->GetMethodID(clazz, name.c_str(), "(Ljava/lang/String;)Ljava/lang/String;");
+      JString argument(env, arg);
+      JString returnValue(env, (jstring)env->CallObjectMethod(activity->clazz, methodID, argument.string));
+      return returnValue.ToString();
+    }
+
+    void CallVoidMethod(const std::string& name, const std::string& arg)
+    {
+      jmethodID methodID = env->GetMethodID(clazz, name.c_str(), "(Ljava/lang/String;)V");
+      JString argument(env, arg);
+      env->CallVoidMethod(activity->clazz, methodID, argument.string);
+    }
+
+  private:
+    ANativeActivity* activity;
+    JNIEnv* env;
+    jclass clazz;
+  };
+
+  std::string GetMetaData(const std::string& key)
+  {
+    NativeActivityJNI nativeActivityJNI(activity);
+    return nativeActivityJNI.CallStringMethod("getMetaData", key);
+  }
+
+  std::string GetIntentStringExtra(const std::string& key)
+  {
+    NativeActivityJNI nativeActivityJNI(activity);
+    return nativeActivityJNI.CallStringMethod("getIntentStringExtra", key);
+  }
+
+  void LaunchExample(const std::string& exampleName)
+  {
+    NativeActivityJNI nativeActivityJNI(activity);
+    return nativeActivityJNI.CallVoidMethod("launchExample", exampleName);
+  }
+
+private:
+  ANativeActivity* activity;
+};
+
+#endif //ANDROID_DALI_DEMO_NATIVE_ACTIVITY_JNI_H
diff --git a/build/android/app/src/main/cpp/main.cpp b/build/android/app/src/main/cpp/main.cpp
new file mode 100644 (file)
index 0000000..09fe76a
--- /dev/null
@@ -0,0 +1,232 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+
+#include <android/log.h>
+#include <android_native_app_glue.h>
+#include <dali-demo-native-activity-jni.h>
+#include <dali/devel-api/adaptor-framework/application-devel.h>
+#include <dali/integration-api/debug.h>
+#include <dali/integration-api/adaptor-framework/android/android-framework.h>
+#include <dlfcn.h>
+
+// from android_native_app_glue.c
+#ifndef NDEBUG
+#define LOGV(...)  ((void)__android_log_print(ANDROID_LOG_VERBOSE, "dalidemo", __VA_ARGS__))
+#else
+#define LOGV(...)  ((void)0)
+#endif
+
+namespace
+{
+
+void free_saved_state(struct android_app *android_app)
+{
+  LOGV("free_saved_state");
+  pthread_mutex_lock(&android_app->mutex);
+
+  if (android_app->savedState != NULL)
+  {
+    free(android_app->savedState);
+    android_app->savedState = NULL;
+    android_app->savedStateSize = 0;
+  }
+
+  pthread_mutex_unlock(&android_app->mutex);
+}
+
+void android_app_destroy(struct android_app *android_app)
+{
+  LOGV("android_app_destroy");
+  free_saved_state(android_app);
+  pthread_mutex_lock(&android_app->mutex);
+
+  if (android_app->inputQueue != NULL)
+  {
+    AInputQueue_detachLooper(android_app->inputQueue);
+  }
+
+  AConfiguration_delete(android_app->config);
+  android_app->destroyed = 1;
+
+  pthread_cond_broadcast(&android_app->cond);
+  pthread_mutex_unlock(&android_app->mutex);
+
+  // Can't touch android_app object after this.
+}
+
+}
+
+void ExtractAsset(struct android_app* state, const std::string& assetPath, const std::string& filePath)
+{
+  AAsset* asset = AAssetManager_open(state->activity->assetManager, assetPath.c_str(), AASSET_MODE_BUFFER);
+  if (asset)
+  {
+    size_t length = AAsset_getLength(asset) + 1;
+
+    char* buffer = new char[length];
+    length = AAsset_read(asset, buffer, length);
+
+    FILE* file = fopen(filePath.c_str(), "wb");
+    if (file)
+    {
+      fwrite(buffer, 1, length, file);
+      fclose(file);
+    }
+
+    delete[] buffer;
+    AAsset_close(asset);
+  }
+}
+
+void ExtractAssets(struct android_app* state, const std::string& assetDirPath, const std::string& filesDirPath)
+{
+  AAssetDir* assetDir = AAssetManager_openDir(state->activity->assetManager, assetDirPath.c_str());
+  if (assetDir)
+  {
+    if (mkdir(filesDirPath.c_str(), S_IRWXU) != -1)
+    {
+      const char *filename = NULL;
+      std::string assetPath = assetDirPath + "/";
+      while ((filename = AAssetDir_getNextFileName(assetDir)) != NULL)
+      {
+        ExtractAsset(state, assetPath + filename, filesDirPath + "/" + filename);
+      }
+    }
+
+    AAssetDir_close(assetDir);
+  }
+}
+
+void ExtractFontConfig(struct android_app* state, std::string assetFontConfig, std::string fontsPath)
+{
+  AAsset* asset = AAssetManager_open(state->activity->assetManager, assetFontConfig.c_str(), AASSET_MODE_BUFFER);
+  if (asset)
+  {
+    size_t length = AAsset_getLength(asset) + 1;
+
+    char* buffer = new char[length];
+    length = AAsset_read(asset, buffer, length);
+
+    std::string fontConfig = std::string(buffer, length);
+    int i = fontConfig.find("~");
+    if (i != std::string::npos)
+    {
+      std::string filesDir = state->activity->internalDataPath;
+      fontConfig.replace(i, 1, filesDir);
+    }
+
+    std::string fontsFontConfig = fontsPath;
+    FILE* file = fopen(fontsFontConfig.c_str(), "wb");
+    if (file)
+    {
+      fwrite(fontConfig.c_str(), 1, fontConfig.size(), file);
+      fclose(file);
+    }
+
+    delete[] buffer;
+    AAsset_close(asset);
+  }
+}
+
+extern "C" void FcConfigPathInit(const char* path, const char* file);
+
+void android_main( struct android_app* state )
+{
+  LOGV("android_main() >>");
+
+  std::string filesDir = state->activity->internalDataPath;
+
+  std::string fontconfigPath = filesDir + "/fonts";
+  setenv("FONTCONFIG_PATH", fontconfigPath.c_str(), 1);
+
+  std::string fontconfigFile = fontconfigPath + "/fonts.conf";
+  setenv("FONTCONFIG_FILE", fontconfigFile.c_str(), 1);
+
+  struct stat st = { 0 };
+  FcConfigPathInit( fontconfigPath.c_str(), fontconfigFile.c_str() );
+
+  if (stat(fontconfigPath.c_str(), &st) == -1)
+  {
+    mkdir(fontconfigPath.c_str(), S_IRWXU);
+    ExtractFontConfig(state, "fonts/fonts.conf", fontconfigPath + "/fonts.conf");
+    ExtractFontConfig(state, "fonts/fonts.dtd", fontconfigPath + "/fonts.dtd" );
+    ExtractFontConfig(state, "fonts/local.conf", fontconfigPath + "/local.conf");
+    ExtractAssets(state, "fonts/dejavu", fontconfigPath + "/dejavu");
+    ExtractAssets(state, "fonts/tizen", fontconfigPath + "/tizen");
+    ExtractAssets(state, "fonts/bitmap", fontconfigPath + "/bitmap");
+  }
+
+  Dali::Integration::AndroidFramework::New();
+  Dali::Integration::AndroidFramework::Get().SetNativeApplication(state);
+  Dali::Integration::AndroidFramework::Get().SetApplicationConfiguration(state->config);
+  Dali::Integration::AndroidFramework::Get().SetApplicationAssets(state->activity->assetManager);
+  Dali::Integration::AndroidFramework::Get().SetInternalDataPath(filesDir);
+
+  DaliDemoNativeActivity nativeActivity(state->activity);
+
+  int status = 0;
+  std::string libpath = "/data/data/com.sec.dalidemo/lib/libdali-demo.so";
+  std::string callParam = nativeActivity.GetIntentStringExtra("start");
+  if (callParam.empty())
+  {
+    callParam = nativeActivity.GetMetaData("start");
+  }
+
+  if (!callParam.empty())
+  {
+    libpath = "/data/data/com.sec.dalidemo/lib/lib" +  callParam + ".so";
+  }
+
+  void* handle = dlopen(libpath.c_str(), RTLD_LAZY);
+  if (!handle)
+  {
+    std::exit(status);
+  }
+
+  dlerror();    /* Clear any existing error */
+
+  int (*main)(int, char**) = (int(*)(int, char**))dlsym(handle, "main");
+  if (main)
+  {
+    status = main( 0, nullptr );
+  }
+
+  if (handle)
+  {
+    dlclose(handle);
+    handle = nullptr;
+  }
+
+  android_app_destroy(state);
+
+  Dali::Integration::AndroidFramework::Get().SetNativeApplication(nullptr);
+  Dali::Integration::AndroidFramework::Get().SetApplicationConfiguration(nullptr);
+  Dali::Integration::AndroidFramework::Get().SetApplicationAssets(nullptr);
+  Dali::Integration::AndroidFramework::Delete();
+
+  LOGV("android_main() <<");
+
+  // We need to kill the application process manually, DALi cannot exit the process properly due to memory leaks
+  std::exit(status);
+}
+
+//END_INCLUDE(all)
diff --git a/build/android/app/src/main/java/com/sec/dalidemo/DaliDemoApplication.java b/build/android/app/src/main/java/com/sec/dalidemo/DaliDemoApplication.java
new file mode 100644 (file)
index 0000000..7c853cc
--- /dev/null
@@ -0,0 +1,6 @@
+package com.sec.dalidemo;
+
+import android.app.Application;
+
+public class DaliDemoApplication extends Application {
+}
diff --git a/build/android/app/src/main/java/com/sec/dalidemo/DaliDemoNativeActivity.java b/build/android/app/src/main/java/com/sec/dalidemo/DaliDemoNativeActivity.java
new file mode 100644 (file)
index 0000000..e894f60
--- /dev/null
@@ -0,0 +1,104 @@
+package com.sec.dalidemo;
+
+import android.annotation.TargetApi;
+import android.app.NativeActivity;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ActivityInfo;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.os.Bundle;
+import android.view.View;
+import android.view.WindowManager;
+
+public class DaliDemoNativeActivity extends NativeActivity {
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        // Hide toolbar
+        int SDK_INT = android.os.Build.VERSION.SDK_INT;
+        if(SDK_INT >= 19)
+        {
+            setImmersiveSticky();
+
+            View decorView = getWindow().getDecorView();
+            decorView.setOnSystemUiVisibilityChangeListener
+                    (new View.OnSystemUiVisibilityChangeListener() {
+                        @Override
+                        public void onSystemUiVisibilityChange(int visibility) {
+                            setImmersiveSticky();
+                        }
+                    });
+        }
+    }
+
+    @TargetApi(19)
+    void setImmersiveSticky() {
+        View decorView = getWindow().getDecorView();
+        decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN
+                | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
+                | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
+                | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
+                | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
+                | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
+    }
+
+    @TargetApi(19)
+    protected void onResume() {
+        super.onResume();
+
+        //Hide toolbar
+        int SDK_INT = android.os.Build.VERSION.SDK_INT;
+        if (SDK_INT >= 11 && SDK_INT < 14)
+        {
+            getWindow().getDecorView().setSystemUiVisibility(View.STATUS_BAR_HIDDEN);
+        }
+        else if (SDK_INT >= 14 && SDK_INT < 19)
+        {
+            getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LOW_PROFILE);
+        }
+        else if (SDK_INT >= 19)
+        {
+            setImmersiveSticky();
+        }
+    }
+
+    protected void onPause() {
+        super.onPause();
+    }
+
+    public final void setSoftInputMode(boolean visible) {
+        if (visible) {
+            getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
+        }
+        else {
+            getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
+        }
+    }
+
+    public final String getMetaData(String key) {
+        try {
+            ActivityInfo ai = getApplicationContext().getPackageManager()
+                    .getActivityInfo(getComponentName(), PackageManager.GET_META_DATA);
+            Bundle bundle = ai.metaData;
+            if (bundle != null)
+                return bundle.getString(key);
+        } catch (PackageManager.NameNotFoundException e) {
+            e.printStackTrace();
+        }
+
+        return null;
+    }
+
+    public final String getIntentStringExtra(String key) {
+        return getIntent().getStringExtra(key);
+    }
+
+    public final void launchExample(String exampleName) {
+        Intent intent = new Intent(this, DaliDemoNativeActivity.class);
+        intent.putExtra("start", exampleName);
+        startActivity(intent);
+    }
+}
diff --git a/build/android/app/src/main/java/com/sec/dalidemo/DaliDemosNativeActivity.java b/build/android/app/src/main/java/com/sec/dalidemo/DaliDemosNativeActivity.java
new file mode 100644 (file)
index 0000000..a2a735c
--- /dev/null
@@ -0,0 +1,4 @@
+package com.sec.dalidemo;
+
+public class DaliDemosNativeActivity extends DaliDemoNativeActivity {
+}
diff --git a/build/android/app/src/main/java/com/sec/dalidemo/DaliExamplesNativeActivity.java b/build/android/app/src/main/java/com/sec/dalidemo/DaliExamplesNativeActivity.java
new file mode 100644 (file)
index 0000000..a331a47
--- /dev/null
@@ -0,0 +1,5 @@
+package com.sec.dalidemo;
+
+public class DaliExamplesNativeActivity extends DaliDemoNativeActivity {
+}
+
diff --git a/build/android/app/src/main/java/com/sec/dalidemo/DaliTestsNativeActivity.java b/build/android/app/src/main/java/com/sec/dalidemo/DaliTestsNativeActivity.java
new file mode 100644 (file)
index 0000000..09420a7
--- /dev/null
@@ -0,0 +1,4 @@
+package com.sec.dalidemo;
+
+public class DaliTestsNativeActivity extends DaliDemoNativeActivity {
+}
diff --git a/build/android/app/src/main/res/mipmap-hdpi/dali_examples.png b/build/android/app/src/main/res/mipmap-hdpi/dali_examples.png
new file mode 100644 (file)
index 0000000..349b175
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-hdpi/dali_examples.png differ
diff --git a/build/android/app/src/main/res/mipmap-hdpi/dali_launcher.png b/build/android/app/src/main/res/mipmap-hdpi/dali_launcher.png
new file mode 100644 (file)
index 0000000..2ea08ce
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-hdpi/dali_launcher.png differ
diff --git a/build/android/app/src/main/res/mipmap-hdpi/dali_tests.png b/build/android/app/src/main/res/mipmap-hdpi/dali_tests.png
new file mode 100644 (file)
index 0000000..42280e0
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-hdpi/dali_tests.png differ
diff --git a/build/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/build/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
new file mode 100644 (file)
index 0000000..cde69bc
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/build/android/app/src/main/res/mipmap-mdpi/dali_examples.png b/build/android/app/src/main/res/mipmap-mdpi/dali_examples.png
new file mode 100644 (file)
index 0000000..349b175
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-mdpi/dali_examples.png differ
diff --git a/build/android/app/src/main/res/mipmap-mdpi/dali_launcher.png b/build/android/app/src/main/res/mipmap-mdpi/dali_launcher.png
new file mode 100644 (file)
index 0000000..e7100a3
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-mdpi/dali_launcher.png differ
diff --git a/build/android/app/src/main/res/mipmap-mdpi/dali_tests.png b/build/android/app/src/main/res/mipmap-mdpi/dali_tests.png
new file mode 100644 (file)
index 0000000..42280e0
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-mdpi/dali_tests.png differ
diff --git a/build/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/build/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
new file mode 100644 (file)
index 0000000..c133a0c
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/build/android/app/src/main/res/mipmap-xhdpi/dali_examples.png b/build/android/app/src/main/res/mipmap-xhdpi/dali_examples.png
new file mode 100644 (file)
index 0000000..349b175
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xhdpi/dali_examples.png differ
diff --git a/build/android/app/src/main/res/mipmap-xhdpi/dali_launcher.png b/build/android/app/src/main/res/mipmap-xhdpi/dali_launcher.png
new file mode 100644 (file)
index 0000000..2eb63d4
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xhdpi/dali_launcher.png differ
diff --git a/build/android/app/src/main/res/mipmap-xhdpi/dali_tests.png b/build/android/app/src/main/res/mipmap-xhdpi/dali_tests.png
new file mode 100644 (file)
index 0000000..42280e0
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xhdpi/dali_tests.png differ
diff --git a/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644 (file)
index 0000000..bfa42f0
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxhdpi/dali_examples.png b/build/android/app/src/main/res/mipmap-xxhdpi/dali_examples.png
new file mode 100644 (file)
index 0000000..349b175
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxhdpi/dali_examples.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxhdpi/dali_launcher.png b/build/android/app/src/main/res/mipmap-xxhdpi/dali_launcher.png
new file mode 100644 (file)
index 0000000..6a18f3d
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxhdpi/dali_launcher.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxhdpi/dali_tests.png b/build/android/app/src/main/res/mipmap-xxhdpi/dali_tests.png
new file mode 100644 (file)
index 0000000..42280e0
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxhdpi/dali_tests.png differ
diff --git a/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644 (file)
index 0000000..324e72c
Binary files /dev/null and b/build/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/build/android/app/src/main/res/values/strings.xml b/build/android/app/src/main/res/values/strings.xml
new file mode 100644 (file)
index 0000000..e07cdd0
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <string name="app_name">DALi</string>
+    <string name="demo_name">DALi Demo</string>
+    <string name="examples_name">DALi Examples</string>
+    <string name="tests_name">DALi Tests</string>
+</resources>
diff --git a/build/android/build.gradle b/build/android/build.gradle
new file mode 100644 (file)
index 0000000..5b10372
--- /dev/null
@@ -0,0 +1,26 @@
+// Top-level build file where you can add configuration options common to all sub-projects/modules.
+buildscript {
+    repositories {
+       google()
+       jcenter()
+    }
+    dependencies {
+        classpath 'com.android.tools.build:gradle:3.5.2'
+    }
+}
+
+allprojects {
+    repositories {
+        google()
+        jcenter()
+    }
+}
+
+task clean(type: Delete) {
+    delete rootProject.buildDir
+}
+
+
+
+
+
diff --git a/build/android/build.sh b/build/android/build.sh
new file mode 100755 (executable)
index 0000000..09fa170
--- /dev/null
@@ -0,0 +1,97 @@
+[ -z $ROOT_DIR ] && ROOT_DIR=$HOME
+echo "Using ROOT_DIR=\"$ROOT_DIR\""
+
+[ -z $DALI_DIR ] && DALI_DIR=$(cd ../../../;pwd)
+echo "Using DALI_DIR=\"$DALI_DIR\""
+export DALI_DIR=$DALI_DIR
+
+[ -z $DALI_ENV_DIR ] && DALI_ENV_DIR=$DALI_DIR/dali-env/android
+echo "Using DALI_ENV_DIR=\"$DALI_ENV_DIR\""
+export DALI_ENV_DIR=$DALI_ENV_DIR
+
+[ -z $TARGET ] && export TARGET=armeabi-v7a
+echo "Using TARGET=\"$TARGET\""
+
+if [ ! -z $http_proxy ]
+then
+  proxyFull=${http_proxy/http:\/\/}
+  proxyHost=$(echo $proxyFull | cut -d: -f 1)
+  proxyPort=$(echo $proxyFull | cut -d: -f 2)
+  SdbProxyOptions="--proxy=http --proxy_host=$proxyHost --proxy_port=$proxyPort"
+  echo "Proxy detected Host:$proxyHost Port:$proxyPort"
+fi
+
+if [ ! -d "$ANDROID_SDK" ]; then
+  if [ ! -d "$ROOT_DIR/Android/Sdk" ]; then
+    mkdir -p "$ROOT_DIR/Android/Sdk"
+    cd "$ROOT_DIR/Android/Sdk"
+    wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
+    unzip sdk-tools-linux-4333796.zip
+    tools/bin/sdkmanager --update $SdbProxyOptions
+    yes | tools/bin/sdkmanager $SdbProxyOptions "patcher;v4" "platform-tools" "platforms;android-29" "build-tools;29.0.2" "lldb;3.1" "cmake;3.10.2.4988404" "ndk-bundle" "ndk;20.1.5948944"
+    cd -
+  fi
+fi
+
+if [ ! -d "$ANDROID_SDK" ]; then
+# try default path
+  if [ -d "$ROOT_DIR/Android/Sdk" ]; then
+    export ANDROID_SDK=$ROOT_DIR/Android/Sdk
+  fi
+fi
+
+if [ ! -d "$ANDROID_NDK" ]; then
+  if [ -d "$ANDROID_SDK" ]; then
+    NDK_DIR=$(find $ANDROID_SDK -maxdepth 2 -name ndk-build | sed 's/\/ndk-build//')
+    # Some sdk folder structures have extra <version> dir for ndk folders.
+    if [ ! -d "$NDK_DIR" ]; then
+      NDK_DIR=$(find $ANDROID_SDK -maxdepth 3 -name ndk-build | sed 's/\/ndk-build//')
+    fi
+    if [ -d "$NDK_DIR" ]; then
+      export ANDROID_NDK=$NDK_DIR
+    fi
+  fi
+fi
+
+if [ ! -d "$ROOT_DIR/gradle/gradle-5.4.1" ]; then
+  mkdir -p $ROOT_DIR/gradle
+  cd $ROOT_DIR/gradle
+  wget https://services.gradle.org/distributions/gradle-5.4.1-bin.zip
+  unzip gradle-5.4.1-bin.zip
+  cd -
+fi
+
+GRADLE_PROPERTIES_FILE=gradle.properties
+if [ ! -f $GRADLE_PROPERTIES_FILE ]
+then
+  echo "org.gradle.jvmargs=-Xmx1536m" > $GRADLE_PROPERTIES_FILE
+  if [ ! -z $http_proxy ]
+  then
+    echo "systemProp.http.proxyHost=$proxyHost" >> $GRADLE_PROPERTIES_FILE
+    echo "systemProp.http.proxyPort=$proxyPort" >> $GRADLE_PROPERTIES_FILE
+
+    if [ ! -z $https_proxy ]
+    then
+      httpsProxyFull=${https_proxy/https:\/\/}
+      httpsProxyHost=$(echo $httpsProxyFull | cut -d: -f 1)
+      httpsProxyPort=$(echo $httpsProxyFull | cut -d: -f 2)
+      echo "systemProp.https.proxyHost=$httpsProxyHost" >> $GRADLE_PROPERTIES_FILE
+      echo "systemProp.https.proxyPort=$httpsProxyPort" >> $GRADLE_PROPERTIES_FILE
+    fi
+  fi
+fi
+
+export PATH=$PATH:$ROOT_DIR/gradle/gradle-5.4.1/bin
+[ ! -f local.properties ] && echo 'sdk.dir='$(echo $ANDROID_SDK) > local.properties
+
+gradle wrapper
+if [ "$1" = "clean" ]; then
+  ./gradlew clean
+else
+  if [ -z "$DEBUG" ]; then
+    ./gradlew assembleRelease
+  else
+    ./gradlew assembleDebug
+  fi
+fi
+
diff --git a/build/android/dali/build.sh b/build/android/dali/build.sh
new file mode 100755 (executable)
index 0000000..62969f4
--- /dev/null
@@ -0,0 +1,33 @@
+#!/bin/bash
+if [ -z "$ANDROID_SDK" ]; then
+  . ./env.sh
+fi
+
+if [ ! -d "$ANDROID_SDK" ]; then
+  echo "Please install Android SDK into "$ANDROID_SDK
+  exit 1
+fi
+
+if [ ! -d "$ANDROID_NDK" ]; then
+  echo "Please install Android NDK into "$ANDROID_NDK
+  exit 1
+fi
+
+if [ "$1" = "clean" ]; then
+  echo "Cleaning dali..."
+  rm -rf ./dali-core
+  rm -rf ./dali-adaptor
+  rm -rf ./dali-toolkit
+  rm -rf ./dali-demo
+  exit 0
+fi
+
+if [ ! -z "$DEBUG" ]; then
+  export ENABLE_TRACE=ON
+fi
+
+ANDROID_PLATFORM=26 ANDROID_ABI=${TARGET} ./build_core.sh || exit 1
+ANDROID_PLATFORM=26 ANDROID_ABI=${TARGET} ./build_adaptor.sh || exit 1
+ANDROID_PLATFORM=26 ANDROID_ABI=${TARGET} ./build_toolkit.sh || exit 1
+ANDROID_PLATFORM=26 ANDROID_ABI=${TARGET} ./build_demo.sh || exit 1
+
diff --git a/build/android/dali/build_adaptor.sh b/build/android/dali/build_adaptor.sh
new file mode 100755 (executable)
index 0000000..76ab10e
--- /dev/null
@@ -0,0 +1,27 @@
+if [ -d ./dali-adaptor/cmake/${ANDROID_ABI} ]; then
+  cd ./dali-adaptor/cmake/${ANDROID_ABI}
+else
+  mkdir -p ./dali-adaptor/cmake/${ANDROID_ABI}
+  cd ./dali-adaptor/cmake/${ANDROID_ABI}
+
+  if [ ! -z "$DEBUG" ]; then
+    export CMAKE_BUILD_TYPE=Debug
+  else
+    export CMAKE_BUILD_TYPE=Release
+  fi
+
+  if [ -z "$ENABLE_TRACE" ]; then
+    export ENABLE_TRACE=OFF
+  fi
+
+  export PREFIX=${DALI_ENV_DIR}
+  export PKG_CONFIG_LIBDIR=${ANDROID_NDK}/prebuilt/linux-x86_64/lib/pkgconfig
+  export PKG_CONFIG_PATH=${PREFIX}/lib/${ANDROID_ABI}/pkgconfig
+  export DALI_DATA_RO_DIR=assets
+  export DALI_DATA_RW_DIR=/data/data/com.sec.dali_demo/files
+  ${ANDROID_SDK}/cmake/3.10.2.4988404/bin/cmake ${DALI_DIR}/dali-adaptor/build/tizen -DCMAKE_C_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -DCMAKE_CXX_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake -DANDROID_PLATFORM=${ANDROID_PLATFORM} -DANDROID_ABI=${ANDROID_ABI} -DANDROID_NDK=${ANDROID_NDK} -DANDROID_STL=c++_shared -DCMAKE_CXX_FLAGS='-fexceptions -frtti -w -Wall -std=gnu++11' -DINCLUDE_DIR=${PREFIX}/include -DLIB_DIR=${PREFIX}/lib/${ANDROID_ABI} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DENABLE_TRACE=${ENABLE_TRACE} -DENABLE_PROFILE=ANDROID
+fi
+
+make -j8 || exit 1
+make install || exit 1
+cd -
diff --git a/build/android/dali/build_core.sh b/build/android/dali/build_core.sh
new file mode 100755 (executable)
index 0000000..0632405
--- /dev/null
@@ -0,0 +1,27 @@
+
+if [ -d ./dali-core/cmake/${ANDROID_ABI} ]; then
+  cd ./dali-core/cmake/${ANDROID_ABI}
+else
+  mkdir -p ./dali-core/cmake/${ANDROID_ABI}
+  cd ./dali-core/cmake/${ANDROID_ABI}
+
+  if [ ! -z "$DEBUG" ]; then
+    export CMAKE_BUILD_TYPE=Debug
+  else
+    export CMAKE_BUILD_TYPE=Release
+  fi
+
+  if [ -z "$ENABLE_TRACE" ]; then
+    export ENABLE_TRACE=OFF
+  fi
+
+  export PREFIX=${DALI_ENV_DIR}
+  export PKG_CONFIG_LIBDIR=${ANDROID_NDK}/prebuilt/linux-x86_64/lib/pkgconfig
+  export PKG_CONFIG_PATH=${PREFIX}/lib/${ANDROID_ABI}/pkgconfig
+  ${ANDROID_SDK}/cmake/3.10.2.4988404/bin/cmake ${DALI_DIR}/dali-core/build/tizen -DCMAKE_C_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -DCMAKE_CXX_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake -DANDROID_PLATFORM=${ANDROID_PLATFORM} -DANDROID_ABI=${ANDROID_ABI} -DANDROID_NDK=${ANDROID_NDK} -DANDROID_STL=c++_shared -DCMAKE_CXX_FLAGS='-fexceptions -frtti -w -Wall -std=gnu++11' -DINCLUDE_DIR=${PREFIX}/include -DLIB_DIR=${PREFIX}/lib/${ANDROID_ABI} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DENABLE_TRACE=${ENABLE_TRACE}
+fi
+
+make -j8 || exit 1
+make install || exit 1
+
+cd -
diff --git a/build/android/dali/build_demo.sh b/build/android/dali/build_demo.sh
new file mode 100755 (executable)
index 0000000..add4444
--- /dev/null
@@ -0,0 +1,32 @@
+
+if [ -d ./dali-demo/cmake/${ANDROID_ABI} ]; then
+  cd ./dali-demo/cmake/${ANDROID_ABI}
+else
+  mkdir -p ./dali-demo/cmake/${ANDROID_ABI}
+  cd ./dali-demo/cmake/${ANDROID_ABI}
+
+  if [ ! -z "$DEBUG" ]; then
+    export CMAKE_BUILD_TYPE=Debug
+  else
+    export CMAKE_BUILD_TYPE=Release
+  fi
+
+  if [ -z "$ENABLE_TRACE" ]; then
+   export ENABLE_TRACE=OFF
+  fi
+
+  export PREFIX=${DALI_ENV_DIR}
+  export PKG_CONFIG_LIBDIR=${ANDROID_NDK}/prebuilt/linux-x86_64/lib/pkgconfig
+  export PKG_CONFIG_PATH=${PREFIX}/lib/${ANDROID_ABI}/pkgconfig
+  export DALI_APP_RES_DIR=${PREFIX}/files
+  export DALI_APP_DIR=${PREFIX}/lib/${ANDROID_ABI}
+  export DALI_DEMO_RES_DIR=assets
+
+  ${ANDROID_SDK}/cmake/3.10.2.4988404/bin/cmake ${DALI_DIR}/dali-demo/build/tizen -DCMAKE_C_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -DCMAKE_CXX_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake -DANDROID_PLATFORM=${ANDROID_PLATFORM} -DANDROID_ABI=${ANDROID_ABI} -DANDROID_NDK=${ANDROID_NDK} -DANDROID_STL=c++_shared -DCMAKE_CXX_FLAGS='-fexceptions -frtti -w -Wall -std=gnu++11' -DINCLUDE_DIR=${PREFIX}/include -DLIB_DIR=${PREFIX}/lib/${ANDROID_ABI} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DENABLE_TRACE=${ENABLE_TRACE} -DINTERNATIONALIZATION=OFF -DSHARED=ON -DDALI_APP_RES_DIR=${DALI_APP_RES_DIR} -DDALI_APP_DIR=${DALI_APP_DIR} -DDALI_DEMO_RES_DIR=${DALI_DEMO_RES_DIR}
+fi
+
+make -j8 || exit 1
+make install || exit 1
+
+cd -
+
diff --git a/build/android/dali/build_toolkit.sh b/build/android/dali/build_toolkit.sh
new file mode 100755 (executable)
index 0000000..3b4f9a9
--- /dev/null
@@ -0,0 +1,33 @@
+
+if [ -d ./dali-toolkit/cmake/${ANDROID_ABI} ]; then
+  cd ./dali-toolkit/cmake/${ANDROID_ABI}
+else
+  mkdir -p ./dali-toolkit/cmake/${ANDROID_ABI}
+  cd ./dali-toolkit/cmake/${ANDROID_ABI}
+
+  if [ ! -z "$DEBUG" ]; then
+    export CMAKE_BUILD_TYPE=Debug
+  else
+    export CMAKE_BUILD_TYPE=Release
+  fi
+
+  if [ -z "$ENABLE_TRACE" ]; then
+   export ENABLE_TRACE=OFF
+  fi
+
+  export PREFIX=${DALI_ENV_DIR}
+  export PKG_CONFIG_LIBDIR=${ANDROID_NDK}/prebuilt/linux-x86_64/lib/pkgconfig
+  export PKG_CONFIG_PATH=${PREFIX}/lib/${ANDROID_ABI}/pkgconfig
+  export DALI_DATA_RO_DIR=assets
+  export DALI_DATA_RW_DIR=/data/data/com.sec.dali_demo/files
+  export DALI_DATA_RO_INSTALL_DIR=${PREFIX}/files
+  export DALI_DATA_RW_INSTALL_DIR=${PREFIX}/files
+
+  ${ANDROID_SDK}/cmake/3.10.2.4988404/bin/cmake ${DALI_DIR}/dali-toolkit/build/tizen -DCMAKE_C_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -DCMAKE_CXX_COMPILER=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake -DANDROID_PLATFORM=${ANDROID_PLATFORM} -DANDROID_ABI=${ANDROID_ABI} -DANDROID_NDK=${ANDROID_NDK} -DANDROID_STL=c++_shared -DCMAKE_CXX_FLAGS='-fexceptions -frtti -w -Wall -std=gnu++11' -DINCLUDE_DIR=${PREFIX}/include -DLIB_DIR=${PREFIX}/lib/${ANDROID_ABI} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DENABLE_TRACE=${ENABLE_TRACE} -DWITH_STYLE='2048x1080'
+fi
+
+make -j8 || exit 1
+make install || exit 1
+cp -R ${DALI_DIR}/dali-toolkit/automated-tests/resources/fonts/* ${DALI_DIR}/dali-env/android/files/fonts
+
+cd -
diff --git a/build/android/dali/env.sh b/build/android/dali/env.sh
new file mode 100755 (executable)
index 0000000..09f0539
--- /dev/null
@@ -0,0 +1,23 @@
+if [ ! -d "$ANDROID_SDK" ]; then
+# try default path
+if [ -d "$HOME/Android/Sdk" ]; then
+export ANDROID_SDK=$HOME/Android/Sdk
+fi
+fi
+
+if [ ! -d "$ANDROID_NDK" ]; then
+if [ -d $ANDROID_SDK ]; then
+NDK_DIR=$(find $ANDROID_SDK -maxdepth 2 -name ndk-build | sed 's/\/ndk-build//')
+if [ -d "$NDK_DIR" ]; then
+export ANDROID_NDK=$NDK_DIR
+fi
+fi
+fi
+
+if [ ! -d "$DALI_DIR" ]; then
+export DALI_DIR=$(cd ../../../../; pwd)
+fi
+
+if [ ! -d "$DALI_ENV_DIR" ]; then
+export DALI_ENV_DIR=$DALI_DIR/dali-env/android
+fi
diff --git a/build/android/key.jks b/build/android/key.jks
new file mode 100644 (file)
index 0000000..f2502d9
Binary files /dev/null and b/build/android/key.jks differ
diff --git a/build/android/setenv b/build/android/setenv
new file mode 100755 (executable)
index 0000000..c85e935
--- /dev/null
@@ -0,0 +1,35 @@
+[ -z $ROOT_DIR ] && ROOT_DIR=$HOME
+echo "Using ROOT_DIR=\"$ROOT_DIR\""
+
+[ -z $DALI_DIR ] && DALI_DIR=$(cd ../../../;pwd)
+echo "Using DALI_DIR=\"$DALI_DIR\""
+export DALI_DIR=$DALI_DIR
+
+[ -z $DALI_ENV_DIR ] && DALI_ENV_DIR=$DALI_DIR/dali-env/android
+echo "Using DALI_ENV_DIR=\"$DALI_ENV_DIR\""
+export DALI_ENV_DIR=$DALI_ENV_DIR
+
+[ -z $TARGET ] && export TARGET=armeabi-v7a
+echo "Using TARGET=\"$TARGET\""
+
+if [ ! -d "$ANDROID_SDK" ]; then
+# try default path
+  if [ -d "$ROOT_DIR/Android/Sdk" ]; then
+    export ANDROID_SDK=$ROOT_DIR/Android/Sdk
+  fi
+fi
+echo "Using ANDROID_SDK=\"$ANDROID_SDK\""
+
+if [ ! -d "$ANDROID_NDK" ]; then
+  if [ -d "$ANDROID_SDK" ]; then
+    NDK_DIR=$(find $ANDROID_SDK -maxdepth 2 -name ndk-build | sed 's/\/ndk-build//')
+    # Some sdk folder structures have extra <version> dir for ndk folders.
+    if [ ! -d "$NDK_DIR" ]; then
+      NDK_DIR=$(find $ANDROID_SDK -maxdepth 3 -name ndk-build | sed 's/\/ndk-build//')
+    fi
+    if [ -d "$NDK_DIR" ]; then
+      export ANDROID_NDK=$NDK_DIR
+    fi
+  fi
+fi
+echo "Using ANDROID_NDK=\"$ANDROID_NDK\""
diff --git a/build/android/settings.gradle b/build/android/settings.gradle
new file mode 100644 (file)
index 0000000..573abcb
--- /dev/null
@@ -0,0 +1,2 @@
+include ':app'
+
diff --git a/build/tizen/CMakeLists.txt b/build/tizen/CMakeLists.txt
new file mode 100644 (file)
index 0000000..5899745
--- /dev/null
@@ -0,0 +1,347 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(dali-demo C CXX)
+
+SET(dali-demo_VERSION_MAJOR 1)
+SET(dali-demo_VERSION_MINOR 0)
+
+SET(GCC_COMPILER_VERSION_REQUIRED "6")
+if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+  if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS GCC_COMPILER_VERSION_REQUIRED)
+    message(FATAL_ERROR "The GCC required compiler version is " ${GCC_COMPILER_VERSION_REQUIRED})
+  endif()
+endif()
+
+# Define options to CMake
+OPTION(ENABLE_EXPORTALL          "Enable Export all symbols" OFF)
+OPTION(ENABLE_DEBUG              "Enable Debug" OFF)
+OPTION(ENABLE_PKG_CONFIGURE      "Use pkgconfig" ON)
+OPTION(INTERNATIONALIZATION      "Internationalization demo string names" ON)
+
+SET(ROOT_SRC_DIR ${CMAKE_SOURCE_DIR}/../..)
+SET(DEMO_SHARED ${CMAKE_SOURCE_DIR}/../../shared)
+
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+
+IF(DEFINED DALI_APP_DIR)
+  SET(BINDIR ${DALI_APP_DIR})
+ELSE()
+  SET(BINDIR ${PREFIX}/bin)
+ENDIF()
+
+IF(DEFINED DALI_APP_RES_DIR)
+  SET(APP_DATA_RES_DIR ${DALI_APP_RES_DIR})
+ELSE()
+  SET(APP_DATA_RES_DIR ${PREFIX}/share/com.samsung.dali-demo/res)
+ENDIF()
+
+MESSAGE( STATUS "CMAKE_BUILD_TYPE: " ${CMAKE_BUILD_TYPE} )
+
+IF(CMAKE_BUILD_TYPE MATCHES Debug)
+  SET( ENABLE_DEBUG ON )
+ENDIF()
+
+IF( ENABLE_DEBUG )
+  MESSAGE( STATUS "CMAKE_BUILD_TYPE: " Debug )
+  SET( ENABLE_EXPORTALL ON )
+ELSE()
+  MESSAGE( STATUS "CMAKE_BUILD_TYPE: " Release )
+ENDIF()
+
+SET(RESOURCE_DIR ${ROOT_SRC_DIR}/resources)
+SET(LOCAL_IMAGES_DIR ${RESOURCE_DIR}/images)
+SET(LOCAL_GAME_DIR ${RESOURCE_DIR}/game)
+SET(LOCAL_VIDEOS_DIR ${RESOURCE_DIR}/videos)
+SET(LOCAL_MODELS_DIR ${RESOURCE_DIR}/models)
+SET(LOCAL_SCRIPTS_DIR ${RESOURCE_DIR}/scripts)
+SET(LOCAL_SHADERS_DIR ${RESOURCE_DIR}/shaders)
+IF(NOT DEFINED LOCAL_STYLE_DIR)
+  SET(LOCAL_STYLE_DIR ${RESOURCE_DIR}/style)
+ENDIF()
+
+IF(ANDROID)
+  SET(LOCAL_STYLE_ANDROID_DIR ${RESOURCE_DIR}/style/android)
+ENDIF()
+
+SET(IMAGES_DIR ${APP_DATA_RES_DIR}/images/)
+SET(GAME_DIR ${APP_DATA_RES_DIR}/game/)
+SET(VIDEOS_DIR ${APP_DATA_RES_DIR}/videos/)
+SET(MODELS_DIR ${APP_DATA_RES_DIR}/models/)
+SET(SCRIPTS_DIR ${APP_DATA_RES_DIR}/scripts/)
+SET(SHADERS_DIR ${APP_DATA_RES_DIR}/shaders/)
+SET(STYLE_DIR ${APP_DATA_RES_DIR}/style/)
+
+IF(NOT DEFINED LOCALE_DIR)
+   SET(LOCALE_DIR ${PREFIX}/share/locale)
+ENDIF()
+
+IF(DEFINED DALI_DEMO_RES_DIR)
+  SET(DEMO_IMAGE_DIR \\"${DALI_DEMO_RES_DIR}/images/\\")
+  SET(DEMO_GAME_DIR \\"${DALI_DEMO_RES_DIR}/game/\\")
+  SET(DEMO_VIDEO_DIR \\"${DALI_DEMO_RES_DIR}/videos/\\")
+  SET(DEMO_MODEL_DIR \\"${DALI_DEMO_RES_DIR}/models/\\")
+  SET(DEMO_SCRIPT_DIR \\"${DALI_DEMO_RES_DIR}/scripts/\\")
+  SET(DEMO_SHADER_DIR \\"${DALI_DEMO_RES_DIR}/shaders/\\")
+  SET(DEMO_STYLE_DIR \\"${DALI_DEMO_RES_DIR}/style/\\")
+  SET(DEMO_THEME_PATH \\"${DALI_DEMO_RES_DIR}/style/demo-theme.json\\")
+  SET(DEMO_LOCALE_DIR \\"${DALI_DEMO_RES_DIR}/locale/\\")
+  SET(DEMO_STYLE_IMAGE_DIR \\"${DALI_DEMO_RES_DIR}/style/images\\")
+ELSE()
+  SET(DEMO_GAME_DIR \\"${GAME_DIR}\\")
+  SET(DEMO_IMAGE_DIR \\"${IMAGES_DIR}\\")
+  SET(DEMO_VIDEO_DIR \\"${VIDEOS_DIR}\\")
+  SET(DEMO_MODEL_DIR \\"${MODELS_DIR}\\")
+  SET(DEMO_SCRIPT_DIR \\"${SCRIPTS_DIR}\\")
+  SET(DEMO_SHADER_DIR \\"${SHADERS_DIR}\\")
+  SET(DEMO_STYLE_DIR \\"${STYLE_DIR}\\")
+  SET(DEMO_THEME_PATH \\"${STYLE_DIR}demo-theme.json\\")
+  SET(DEMO_LOCALE_DIR \\"${LOCALE_DIR}\\")
+  SET(DEMO_STYLE_IMAGE_DIR ${STYLE_DIR}/images)
+ENDIF()
+
+SET(DEMO_EXAMPLE_BIN \\"${BINDIR}/\\")
+SET(DEMO_LANG \\"${LANG}\\")
+
+FILE(GLOB LOCAL_IMAGES_PNG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.png")
+FILE(GLOB LOCAL_IMAGES_JPG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.jpg")
+FILE(GLOB LOCAL_IMAGES_GIF RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.gif")
+FILE(GLOB LOCAL_IMAGES_BMP RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.bmp")
+FILE(GLOB LOCAL_IMAGES_ICO RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ico")
+FILE(GLOB LOCAL_IMAGES_WBMP RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.wbmp")
+FILE(GLOB LOCAL_IMAGES_KTX RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ktx")
+FILE(GLOB LOCAL_IMAGES_ASTC RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.astc")
+FILE(GLOB LOCAL_IMAGES_SVG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.svg")
+FILE(GLOB LOCAL_IMAGES_JSON RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.json")
+
+SET(LOCAL_IMAGES_LIST ${LOCAL_IMAGES_PNG};${LOCAL_IMAGES_JPG};${LOCAL_IMAGES_GIF};${LOCAL_IMAGES_BMP};${LOCAL_IMAGES_ICO};${LOCAL_IMAGES_WBMP};${LOCAL_IMAGES_KTX};${LOCAL_IMAGES_ASTC};${LOCAL_IMAGES_SVG};${LOCAL_IMAGES_JSON})
+FOREACH(flag ${LOCAL_IMAGES_LIST})
+        INSTALL(FILES ${LOCAL_IMAGES_DIR}/${flag} DESTINATION ${IMAGES_DIR})
+ENDFOREACH(flag)
+
+FILE(GLOB LOCAL_VIDEOS_LIST RELATIVE "${LOCAL_VIDEOS_DIR}" "${LOCAL_VIDEOS_DIR}/*")
+FOREACH(flag ${LOCAL_VIDEOS_LIST})
+        INSTALL(FILES ${LOCAL_VIDEOS_DIR}/${flag} DESTINATION ${VIDEOS_DIR})
+ENDFOREACH(flag)
+
+FILE(GLOB LOCAL_MODELS_LIST RELATIVE "${LOCAL_MODELS_DIR}" "${LOCAL_MODELS_DIR}/*")
+FOREACH(flag ${LOCAL_MODELS_LIST})
+        INSTALL(FILES ${LOCAL_MODELS_DIR}/${flag} DESTINATION ${MODELS_DIR})
+ENDFOREACH(flag)
+
+FILE(GLOB LOCAL_SCRIPTS_LIST RELATIVE "${LOCAL_SCRIPTS_DIR}" "${LOCAL_SCRIPTS_DIR}/*.json")
+FOREACH(flag ${LOCAL_SCRIPTS_LIST})
+        INSTALL(FILES ${LOCAL_SCRIPTS_DIR}/${flag} DESTINATION ${SCRIPTS_DIR})
+ENDFOREACH(flag)
+
+FILE(GLOB LOCAL_SHADERS_LIST RELATIVE "${LOCAL_SHADERS_DIR}" "${LOCAL_SHADERS_DIR}/*")
+FOREACH(flag ${LOCAL_SHADERS_LIST})
+        INSTALL(FILES ${LOCAL_SHADERS_DIR}/${flag} DESTINATION ${SHADERS_DIR})
+ENDFOREACH(flag)
+
+FILE(GLOB LOCAL_GAME_LIST RELATIVE "${LOCAL_GAME_DIR}" "${LOCAL_GAME_DIR}/*.*")
+FOREACH(flag ${LOCAL_GAME_LIST})
+        INSTALL(FILES ${LOCAL_GAME_DIR}/${flag} DESTINATION ${GAME_DIR})
+ENDFOREACH(flag)
+
+#Create resources location file
+CONFIGURE_FILE( resources-location.in ${DEMO_SHARED}/resources-location.cpp )
+
+FILE(GLOB LOCAL_STYLES_LIST "${LOCAL_STYLE_DIR}/*.json")
+FOREACH(flag ${LOCAL_STYLES_LIST})
+  INSTALL(FILES ${flag} DESTINATION ${STYLE_DIR})
+ENDFOREACH(flag)
+MESSAGE("Installed ${LOCAL_STYLES_LIST} to ${STYLE_DIR}")
+
+IF(ANDROID)
+FILE(GLOB LOCAL_STYLES_ANDROID_LIST "${LOCAL_STYLE_ANDROID_DIR}/*.json")
+FOREACH(flag ${LOCAL_STYLES_ANDROID_LIST})
+  INSTALL(FILES ${flag} DESTINATION ${STYLE_DIR})
+ENDFOREACH(flag)
+MESSAGE("Installed ${LOCAL_STYLES_ANDROID_LIST} to ${STYLE_DIR}")
+ENDIF()
+
+FILE(GLOB LOCAL_STYLE_IMAGES_LIST "${LOCAL_STYLE_DIR}/images/*.png")
+FOREACH(flag ${LOCAL_STYLE_IMAGES_LIST})
+  INSTALL(FILES ${flag} DESTINATION ${STYLE_DIR}/images)
+ENDFOREACH(flag)
+MESSAGE("Installed style resources ${LOCAL_STYLE_IMAGES_LIST} to ${STYLE_DIR}/images")
+
+IF( ENABLE_PKG_CONFIGURE )
+  SET(PKG_LIST dali-core
+               dali-adaptor
+               dali-toolkit)
+
+  INCLUDE(FindPkgConfig)
+  pkg_check_modules(REQUIRED_PKGS REQUIRED ${PKG_LIST})
+
+  FOREACH(flag ${REQUIRED_PKGS_CFLAGS})
+        SET(REQUIRED_CFLAGS "${REQUIRED_CFLAGS} ${flag}")
+  ENDFOREACH(flag)
+ENDIF()
+
+SET( VCPKG_INCLUDE_DIR "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include")
+
+IF( WIN32 ) # WIN32 includes x64 as well according to the cmake doc.
+  FIND_PACKAGE( pthreads REQUIRED )
+  FIND_PACKAGE( curl REQUIRED )
+  FIND_LIBRARY( GETOPT_LIBRARY NAMES getopt )
+  FIND_LIBRARY( EXIF_LIBRARY NAMES libexif )
+
+  FIND_PACKAGE( png REQUIRED )
+  FIND_PACKAGE( gif REQUIRED )
+  FIND_PACKAGE( jpeg REQUIRED )
+  FIND_LIBRARY( TURBO_JPEG_LIBRARY NAMES turbojpeg )
+
+  FIND_PACKAGE( unofficial-fontconfig REQUIRED )
+  FIND_PACKAGE( freetype REQUIRED )
+  FIND_PACKAGE( harfbuzz REQUIRED )
+  FIND_LIBRARY( FRIBIDI_LIBRARY NAMES fribidi )
+
+  FIND_PACKAGE( unofficial-angle REQUIRED )
+  FIND_PACKAGE( unofficial-cairo REQUIRED )
+
+  FIND_PACKAGE( dali-windows-dependencies REQUIRED )
+  FIND_PACKAGE( dali-core REQUIRED )
+  FIND_PACKAGE( dali-adaptor REQUIRED )
+  FIND_PACKAGE( dali-toolkit REQUIRED )
+
+  # Set up the include dir
+  SET( INCLUDE_DIR $ENV{includedir} )
+  IF( NOT INCLUDE_DIR )
+    SET( INCLUDE_DIR ${CMAKE_INSTALL_INCLUDEDIR} )
+  ENDIF()
+  IF( NOT INCLUDE_DIR )
+    SET( INCLUDE_DIR ${PREFIX}/include )
+  ENDIF()
+
+  SET( LIB_DIR $ENV{libdir} )
+  IF( NOT LIB_DIR )
+    SET( LIB_DIR ${CMAKE_INSTALL_LIBDIR} )
+  ENDIF()
+  IF( NOT LIB_DIR )
+    SET( LIB_DIR ${PREFIX}/lib )
+  ENDIF()
+
+  SET( REQUIRED_LIBS
+    PThreads4W::PThreads4W
+    CURL::libcurl
+    ${GETOPT_LIBRARY}
+    ${EXIF_LIBRARY}
+    ${PNG_LIBRARIES}
+    ${GIF_LIBRARIES}
+    JPEG::JPEG
+    ${TURBO_JPEG_LIBRARY}
+    unofficial::fontconfig::fontconfig
+    Freetype::Freetype
+    harfbuzz::harfbuzz
+    ${FRIBIDI_LIBRARY}
+    unofficial::angle::libEGL
+    unofficial::angle::libGLESv2
+    unofficial::cairo::cairo
+    dali-windows-dependencies::dali-windows-dependencies
+    dali-core::dali-core
+    dali-adaptor::dali-adaptor
+    dali-toolkit::dali-toolkit
+  )
+ELSEIF( UNIX )
+  SET( REQUIRED_LIBS
+    ${REQUIRED_PKGS_LDFLAGS}
+    -pie
+  )
+ENDIF()
+
+SET(DALI_DEMO_CFLAGS "-DDEMO_GAME_DIR=${DEMO_GAME_DIR} -DDEMO_IMAGE_DIR=${DEMO_IMAGE_DIR} -DDEMO_VIDEO_DIR=${DEMO_VIDEO_DIR} -DDEMO_MODEL_DIR=${DEMO_MODEL_DIR} -DDEMO_SCRIPT_DIR=${DEMO_SCRIPT_DIR} -DDEMO_SHADER_DIR=${DEMO_SHADER_DIR}  -DDEMO_STYLE_DIR=${DEMO_STYLE_DIR} -DDEMO_THEME_PATH=${DEMO_THEME_PATH} -DDEMO_EXAMPLE_BIN=${DEMO_EXAMPLE_BIN} -DDEMO_LOCALE_DIR=${DEMO_LOCALE_DIR} -DDEMO_LANG=${DEMO_LANG}")
+
+IF( ENABLE_DEBUG )
+  SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -DDEBUG_ENABLED")
+ENDIF()
+
+IF( UNIX )
+  IF( NOT ${ENABLE_EXPORTALL} )
+    ADD_DEFINITIONS( "-DHIDE_DALI_INTERNALS" )
+  ENDIF()
+ENDIF()
+
+###########################################################################
+# Internationalization
+
+IF (UNIX)
+  SET(PO_DIR ${RESOURCE_DIR}/po)
+
+  FILE(GLOB PO_FILES RELATIVE "${PO_DIR}" "${PO_DIR}/*.po")
+
+  SET(MSGFMT "/usr/bin/msgfmt")
+  SET(MO_FILES_DIR ${CMAKE_BINARY_DIR}/mo)
+  FILE(MAKE_DIRECTORY ${MO_FILES_DIR})
+
+  FOREACH(PO_FILE ${PO_FILES})
+        SET(PO_FILE ${PO_DIR}/${PO_FILE})
+        MESSAGE("PO: ${PO_FILE}")
+        GET_FILENAME_COMPONENT(ABS_PO_FILE ${PO_FILE} ABSOLUTE)
+        GET_FILENAME_COMPONENT(lang ${ABS_PO_FILE} NAME_WE)
+        SET(MO_FILE ${MO_FILES_DIR}/${lang}.mo)
+        ADD_CUSTOM_COMMAND(OUTPUT ${MO_FILE}
+                           COMMAND ${MSGFMT} -o ${MO_FILE} ${ABS_PO_FILE}
+                           DEPENDS ${ABS_PO_FILE})
+        INSTALL(FILES ${MO_FILE} DESTINATION ${LOCALE_DIR}/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
+        SET(MO_FILES ${MO_FILES} ${MO_FILE})
+  ENDFOREACH(PO_FILE)
+
+  MESSAGE(".mo files: ${MO_FILES}")
+  ADD_CUSTOM_TARGET(po ALL DEPENDS ${MO_FILES})
+ENDIF()
+
+IF (INTERNATIONALIZATION)
+  SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -DINTERNATIONALIZATION_ENABLED")
+ENDIF(INTERNATIONALIZATION)
+
+###########################################################################
+
+IF( WIN32 )
+  ADD_COMPILE_OPTIONS( /FIdali-windows-dependencies.h ) # Adds missing definitions.
+  ADD_COMPILE_OPTIONS( /vmg )                           # Avoids a 'reinterpret_cast' compile error while compiling signals and callbacks.
+  ADD_COMPILE_OPTIONS( /wd4251 )                        # Ignores warning C4251: "'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2'"
+ELSE()
+  SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -Werror -Wall -fPIE")
+
+  IF( NOT ${ENABLE_EXPORTALL} )
+    SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -fvisibility=hidden")
+  ENDIF()
+ENDIF()
+
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${REQUIRED_CFLAGS} ${DALI_DEMO_CFLAGS}")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_C_FLAGS}")
+
+INCLUDE_DIRECTORIES(
+  ${SYSTEM_INCLUDE_DIR}
+  ${ROOT_SRC_DIR}
+  ${VCPKG_INCLUDE_DIR}
+  ${INCLUDE_DIR}
+)
+
+IF(ANDROID)
+  INCLUDE_DIRECTORIES( ${ANDROID_NDK}/sources/android/native_app_glue )
+  INCLUDE_DIRECTORIES( ${ANDROID_NDK}/sysroot/usr )
+  INCLUDE_DIRECTORIES( ${ANDROID_NDK}/sysroot/usr/include/android )
+  INCLUDE_DIRECTORIES( ${ROOT_SRC_DIR}/build/android/app/src/main/cpp )
+ENDIF()
+
+LINK_DIRECTORIES(${LIB_DIR})
+
+ADD_SUBDIRECTORY(demo)
+ADD_SUBDIRECTORY(examples)
+ADD_SUBDIRECTORY(examples-reel)
+ADD_SUBDIRECTORY(tests-reel)
+ADD_SUBDIRECTORY(builder)
+
+
+MESSAGE( " Folder   DEMO_IMAGE_DIR : [" ${DEMO_IMAGE_DIR} "]" )
+MESSAGE( " Folder   DEMO_STYLE_DIR : [" ${DEMO_STYLE_DIR} "]" )
+MESSAGE( " Folder  DEMO_SHADER_DIR : [" ${DEMO_SHADER_DIR} "]" )
+MESSAGE( " Folder  DEMO_THEME_PATH : [" ${DEMO_THEME_PATH} "]" )
+MESSAGE( " Folder    DEMO_GAME_DIR : [" ${DEMO_GAME_DIR} "]" )
+MESSAGE( " Folder   DEMO_VIDEO_DIR : [" ${DEMO_VIDEO_DIR} "]" )
+MESSAGE( " Folder   DEMO_MODEL_DIR : [" ${DEMO_MODEL_DIR} "]" )
+MESSAGE( " Folder  DEMO_SCRIPT_DIR : [" ${DEMO_SCRIPT_DIR} "]" )
+MESSAGE( " Folder  DEMO_LOCALE_DIR : [" ${DEMO_LOCALE_DIR} "]" )
+MESSAGE( " Folder DEMO_EXAMPLE_BIN : [" ${DEMO_EXAMPLE_BIN} "]" )
+MESSAGE( " Folder        DEMO_LANG : [" ${DEMO_LANG} "]" )
diff --git a/build/tizen/builder/CMakeLists.txt b/build/tizen/builder/CMakeLists.txt
new file mode 100644 (file)
index 0000000..5fcd331
--- /dev/null
@@ -0,0 +1,13 @@
+SET(BUILDER_SRC_DIR ${ROOT_SRC_DIR}/builder)
+
+SET(DALI_BUILDER_SRCS ${BUILDER_SRC_DIR}/dali-builder.cpp)
+SET(DALI_BUILDER_SRCS ${DALI_BUILDER_SRCS} "${ROOT_SRC_DIR}/shared/resources-location.cpp")
+IF(SHARED)
+  ADD_LIBRARY(dali-builder SHARED ${DALI_BUILDER_SRCS})
+ELSE()
+  ADD_EXECUTABLE(dali-builder ${DALI_BUILDER_SRCS})
+ENDIF()
+
+TARGET_LINK_LIBRARIES(dali-builder ${REQUIRED_LIBS})
+
+INSTALL(TARGETS dali-builder DESTINATION ${BINDIR})
diff --git a/build/tizen/demo/CMakeLists.txt b/build/tizen/demo/CMakeLists.txt
new file mode 100644 (file)
index 0000000..af1ed2a
--- /dev/null
@@ -0,0 +1,37 @@
+SET(DEMO_SRC_DIR ${ROOT_SRC_DIR}/demo)
+
+AUX_SOURCE_DIRECTORY(${DEMO_SRC_DIR} DEMO_SRCS)
+
+SET(DEMO_SRCS
+  ${DEMO_SRCS}
+  "${ROOT_SRC_DIR}/shared/resources-location.cpp"
+  "${ROOT_SRC_DIR}/shared/dali-table-view.cpp"
+)
+
+IF(WIN32)
+  SET(DEMO_SRCS
+    ${DEMO_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-win.cpp"
+  )
+ELSEIF(ANDROID)
+  SET(DEMO_SRCS
+    ${DEMO_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-android.cpp"
+  )
+ELSE()
+  SET(DEMO_SRCS
+    ${DEMO_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-unix.cpp"
+  )
+ENDIF()
+
+IF(SHARED)
+  ADD_LIBRARY(${PROJECT_NAME} SHARED ${DEMO_SRCS})
+ELSE()
+  ADD_EXECUTABLE(${PROJECT_NAME} ${DEMO_SRCS})
+ENDIF()
+
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${REQUIRED_LIBS})
+
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
+
diff --git a/build/tizen/examples-reel/CMakeLists.txt b/build/tizen/examples-reel/CMakeLists.txt
new file mode 100644 (file)
index 0000000..16f2a0e
--- /dev/null
@@ -0,0 +1,37 @@
+SET(EXAMPLES_REEL_SRC_DIR ${ROOT_SRC_DIR}/examples-reel)
+
+AUX_SOURCE_DIRECTORY(${EXAMPLES_REEL_SRC_DIR} EXAMPLES_REEL_SRCS)
+
+SET(EXAMPLES_REEL_SRCS
+  ${EXAMPLES_REEL_SRCS}
+  "${ROOT_SRC_DIR}/shared/resources-location.cpp"
+  "${ROOT_SRC_DIR}/shared/dali-table-view.cpp"
+)
+
+IF(WIN32)
+  SET(EXAMPLES_REEL_SRCS
+    ${EXAMPLES_REEL_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-win.cpp"
+  )
+ELSEIF(ANDROID)
+  SET(EXAMPLES_REEL_SRCS
+    ${EXAMPLES_REEL_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-android.cpp"
+  )
+ELSE()
+  SET(EXAMPLES_REEL_SRCS
+    ${EXAMPLES_REEL_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-unix.cpp"
+  )
+ENDIF()
+
+IF(SHARED)
+  ADD_LIBRARY(dali-examples SHARED ${EXAMPLES_REEL_SRCS})
+ELSE()
+  ADD_EXECUTABLE(dali-examples ${EXAMPLES_REEL_SRCS})
+ENDIF()
+
+TARGET_LINK_LIBRARIES(dali-examples ${REQUIRED_LIBS})
+
+INSTALL(TARGETS dali-examples DESTINATION ${BINDIR})
+
diff --git a/build/tizen/examples/CMakeLists.txt b/build/tizen/examples/CMakeLists.txt
new file mode 100644 (file)
index 0000000..e84235c
--- /dev/null
@@ -0,0 +1,26 @@
+SET(EXAMPLES_SRC_DIR ${ROOT_SRC_DIR}/examples)
+
+# Get all subdirectory names from EXAMPLES_SRC_DIR
+MACRO(SUBDIRLIST result curdir)
+  FILE(GLOB children RELATIVE ${curdir} ${curdir}/*)
+  SET(dirlist "")
+  FOREACH(child ${children})
+    IF(IS_DIRECTORY ${curdir}/${child})
+        LIST(APPEND dirlist ${child})
+    ENDIF()
+  ENDFOREACH()
+  SET(${result} ${dirlist})
+ENDMACRO()
+SUBDIRLIST(SUBDIRS ${EXAMPLES_SRC_DIR})
+
+FOREACH(EXAMPLE ${SUBDIRS})
+  FILE(GLOB SRCS "${EXAMPLES_SRC_DIR}/${EXAMPLE}/*.cpp")
+  SET(SRCS ${SRCS} "${ROOT_SRC_DIR}/shared/resources-location.cpp")
+  IF(SHARED)
+    ADD_LIBRARY(${EXAMPLE}.example SHARED ${SRCS})
+  ELSE()
+    ADD_EXECUTABLE(${EXAMPLE}.example ${SRCS})
+  ENDIF()
+  TARGET_LINK_LIBRARIES(${EXAMPLE}.example ${REQUIRED_LIBS})
+  INSTALL(TARGETS ${EXAMPLE}.example DESTINATION ${BINDIR})
+ENDFOREACH(EXAMPLE)
diff --git a/build/tizen/resources-location.in b/build/tizen/resources-location.in
new file mode 100644 (file)
index 0000000..6474abb
--- /dev/null
@@ -0,0 +1,8 @@
+/**
+ * This file defines the location dali-demo resources.
+ * It is used for builds where an application resource directory is NOT explicity defined.
+ */
+
+#include <cstdlib>
+
+int dali_demo_RESOURCE_DIR = setenv("DALI_APPLICATION_PACKAGE",  "@APP_DATA_RES_DIR@" , 1);
diff --git a/build/tizen/tests-reel/CMakeLists.txt b/build/tizen/tests-reel/CMakeLists.txt
new file mode 100644 (file)
index 0000000..728e6d4
--- /dev/null
@@ -0,0 +1,37 @@
+SET(TESTS_REEL_SRC_DIR ${ROOT_SRC_DIR}/tests-reel)
+
+AUX_SOURCE_DIRECTORY(${TESTS_REEL_SRC_DIR} TESTS_REEL_SRCS)
+
+SET(TESTS_REEL_SRCS
+  ${TESTS_REEL_SRCS}
+  "${ROOT_SRC_DIR}/shared/resources-location.cpp"
+  "${ROOT_SRC_DIR}/shared/dali-table-view.cpp"
+)
+
+IF(WIN32)
+  SET(TESTS_REEL_SRCS
+    ${TESTS_REEL_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-win.cpp"
+  )
+ELSEIF(ANDROID)
+  SET(TESTS_REEL_SRCS
+    ${TESTS_REEL_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-android.cpp"
+  )
+ELSE()
+  SET(TESTS_REEL_SRCS
+    ${TESTS_REEL_SRCS}
+    "${ROOT_SRC_DIR}/shared/execute-process-unix.cpp"
+  )
+ENDIF()
+
+IF(SHARED)
+  ADD_LIBRARY(dali-tests SHARED ${TESTS_REEL_SRCS})
+ELSE()
+  ADD_EXECUTABLE(dali-tests ${TESTS_REEL_SRCS})
+ENDIF()
+
+TARGET_LINK_LIBRARIES(dali-tests ${REQUIRED_LIBS})
+
+INSTALL(TARGETS dali-tests DESTINATION ${BINDIR})
+
diff --git a/builder/dali-builder.cpp b/builder/dali-builder.cpp
new file mode 100644 (file)
index 0000000..5445fd1
--- /dev/null
@@ -0,0 +1,324 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+//------------------------------------------------------------------------------
+//
+// Run a json script layout file
+//
+//  - watches an named file and reloads actor tree if the file changes
+//    ie run
+//       builder-run layout.json
+//
+//       and edit layout.json in a text editor saving to trigger the reload
+//
+//------------------------------------------------------------------------------
+
+#include <dali/dali.h>
+#include <dali/devel-api/adaptor-framework/file-loader.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/builder/builder.h>
+#include <dali-toolkit/devel-api/builder/tree-node.h>
+#include <iostream>
+#include <map>
+#include <string>
+#include <fstream>
+#include <streambuf>
+
+#include "sys/stat.h"
+#include <ctime>
+
+#include <dali/integration-api/debug.h>
+
+#define TOKEN_STRING(x) #x
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+std::string JSON_BROKEN("                                      \
+{                                                              \
+  'stage':                                                     \
+  [                                                            \
+    {                                                          \
+      'type':'TextActor',                                      \
+      'size': [50,50,1],                                       \
+      'parentOrigin': 'CENTER',                                \
+      'text':'COULD NOT LOAD JSON FILE'                        \
+    }                                                          \
+  ]                                                            \
+}                                                              \
+");
+
+std::string ReplaceQuotes(const std::string &single_quoted)
+{
+  std::string s(single_quoted);
+
+  // wrong as no embedded quote but had regex link problems
+  std::replace(s.begin(), s.end(), '\'', '"');
+
+  return s;
+}
+
+} // anon namespace
+
+
+//------------------------------------------------------------------------------
+//
+//
+//
+//------------------------------------------------------------------------------
+class FileWatcher
+{
+public:
+  FileWatcher(void);
+  ~FileWatcher(void);
+  explicit FileWatcher(const std::string &fn): mLastTime(0) { SetFilename(fn) ; };
+
+  void SetFilename(const std::string &fn);
+  std::string GetFilename();
+
+  bool FileHasChanged(void);
+  std::string GetFileContents(void) { return GetFileContents(mstringPath) ; };
+
+private:
+  // compiler does
+  // FileWatcher(const FileWatcher&);
+  // FileWatcher &operator=(const FileWatcher &);
+
+  std::time_t mLastTime;
+  std::string mstringPath;
+
+  std::string GetFileContents(const std::string &filename)
+  {
+    std::streampos bufferSize = 0;
+    Dali::Vector<char> fileBuffer;
+    if( !Dali::FileLoader::ReadFile( filename, bufferSize, fileBuffer, FileLoader::FileType::BINARY ) )
+    {
+      return std::string();
+    }
+
+    return std::string( &fileBuffer[0], bufferSize );
+  };
+};
+
+FileWatcher::FileWatcher(void) : mLastTime(0)
+{
+}
+
+bool FileWatcher::FileHasChanged(void)
+{
+  struct stat buf;
+
+  if(0 != stat(mstringPath.c_str(), &buf))
+  {
+    DALI_LOG_WARNING("File does not exist '%s'\n", mstringPath.c_str());
+    return false;
+  }
+  else
+  {
+    if(buf.st_mtime > mLastTime)
+    {
+      mLastTime = buf.st_mtime;
+      return true;
+    }
+    else
+    {
+      mLastTime = buf.st_mtime;
+      return false;
+    }
+  }
+
+  return false;
+}
+
+FileWatcher::~FileWatcher()
+{
+}
+
+void FileWatcher::SetFilename(const std::string &fn)
+{
+  mstringPath = fn;
+}
+
+std::string FileWatcher::GetFilename(void)
+{
+  return mstringPath;
+}
+
+
+//------------------------------------------------------------------------------
+//
+//
+//
+//------------------------------------------------------------------------------
+class ExampleApp : public ConnectionTracker
+{
+public:
+  ExampleApp(Application &app) : mApp(app)
+  {
+    app.InitSignal().Connect(this, &ExampleApp::Create);
+
+  }
+
+  ~ExampleApp() {}
+
+public:
+  void SetJSONFilename(std::string const &fn) { fw.SetFilename(fn) ; };
+
+  void Create(Application& app)
+  {
+    mTimer = Timer::New( 500 ); // ms
+    mTimer.TickSignal().Connect( this, &ExampleApp::OnTimer);
+    mTimer.Start();
+
+    // Connect to key events in order to exit
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &ExampleApp::OnKeyEvent);
+  }
+
+private:
+  Application& mApp;
+  Layer mRootLayer;
+
+  FileWatcher fw;
+  Timer mTimer;
+
+  void ReloadJsonFile(Builder& builder, Layer& layer)
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    builder = Builder::New();
+    builder.QuitSignal().Connect( this, &ExampleApp::OnBuilderQuit );
+
+    Property::Map defaultDirs;
+    defaultDirs[ TOKEN_STRING(DEMO_IMAGE_DIR) ]  = DEMO_IMAGE_DIR;
+    defaultDirs[ TOKEN_STRING(DEMO_MODEL_DIR) ]  = DEMO_MODEL_DIR;
+    defaultDirs[ TOKEN_STRING(DEMO_SCRIPT_DIR) ] = DEMO_SCRIPT_DIR;
+
+    builder.AddConstants( defaultDirs );
+
+    if(!layer)
+    {
+      layer = Layer::New();
+      layer.SetParentOrigin(ParentOrigin::CENTER);
+      layer.SetAnchorPoint(AnchorPoint::CENTER);
+      layer.SetSize( stage.GetRootLayer().GetCurrentSize() );
+      stage.GetRootLayer().Add(layer);
+
+      // render tasks may have been setup last load so remove them
+      RenderTaskList taskList = stage.GetRenderTaskList();
+      if( taskList.GetTaskCount() > 1 )
+      {
+        typedef std::vector<RenderTask> Collection;
+        typedef Collection::iterator ColIter;
+        Collection tasks;
+
+        for(unsigned int i = 1; i < taskList.GetTaskCount(); ++i)
+        {
+          tasks.push_back( taskList.GetTask(i) );
+        }
+
+        for(ColIter iter = tasks.begin(); iter != tasks.end(); ++iter)
+        {
+          taskList.RemoveTask(*iter);
+        }
+
+        RenderTask defaultTask = taskList.GetTask(0);
+        defaultTask.SetSourceActor( stage.GetRootLayer() );
+        defaultTask.SetTargetFrameBuffer( FrameBufferImage() );
+      }
+    }
+
+    unsigned int numChildren = layer.GetChildCount();
+
+    for(unsigned int i=0; i<numChildren; ++i)
+    {
+      layer.Remove( layer.GetChildAt(0) );
+    }
+
+    std::string data(fw.GetFileContents());
+
+    try
+    {
+      builder.LoadFromString(data);
+    }
+    catch(...)
+    {
+      builder.LoadFromString(ReplaceQuotes(JSON_BROKEN));
+    }
+
+    builder.AddActors( layer );
+
+  }
+
+
+  bool OnTimer(void)
+  {
+    if(fw.FileHasChanged())
+    {
+      ReloadJsonFile( mBuilder, mRootLayer );
+    }
+
+    return true;
+  }
+
+  // Process Key events to Quit on back-key
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApp.Quit();
+      }
+    }
+  }
+
+  void OnBuilderQuit()
+  {
+    mApp.Quit();
+  }
+
+  Builder mBuilder;
+};
+
+//------------------------------------------------------------------------------
+//
+//
+//
+//------------------------------------------------------------------------------
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+
+  Application dali_app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  ExampleApp app(dali_app);
+
+  if(argc > 1)
+  {
+    std::cout << "Loading file:" << argc << " " << argv[1] << std::endl;
+    app.SetJSONFilename(argv[1]);
+  }
+  else
+  {
+    DALI_ASSERT_ALWAYS(!"Specify JSON file on command line\n");
+  }
+
+  dali_app.MainLoop();
+
+  return 0;
+}
diff --git a/com.samsung.dali-demo.manifest b/com.samsung.dali-demo.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/com.samsung.dali-demo.manifest-smack b/com.samsung.dali-demo.manifest-smack
new file mode 100644 (file)
index 0000000..e8c2eea
--- /dev/null
@@ -0,0 +1,17 @@
+<manifest>
+       <define>
+               <domain name="com.samsung.dali-demo" />
+               <request>
+                       <smack request="dali" type="rwxat" />
+               </request>
+       </define>
+       <assign>
+               <filesystem path="/usr/share/icons/com.samsung.dali-demo.png" label="_" />
+       </assign>
+       <assign>
+               <filesystem path="/usr/share/icons/dali-examples.png" label="_" />
+       </assign>
+       <request>
+               <domain name="com.samsung.dali-demo" />
+       </request>
+</manifest>
diff --git a/com.samsung.dali-demo.rule b/com.samsung.dali-demo.rule
new file mode 100644 (file)
index 0000000..443e251
--- /dev/null
@@ -0,0 +1,22 @@
+com.samsung.dali-demo device::app_logging w
+com.samsung.dali-demo system::homedir rwxat
+com.samsung.dali-demo system::use_internet rwxat
+com.samsung.dali-demo xorg rwxat
+com.samsung.dali-demo isf rwxat
+com.samsung.dali-demo dali rwxat
+com.samsung.dali-demo ail::db rwxat
+com.samsung.dali-demo system::vconf rwxat
+com.samsung.dali-demo immvibed rwxat
+com.samsung.dali-demo svi-data rwxat
+com.samsung.dali-demo system::share rwxat
+com.samsung.dali-demo system::media rwxat
+com.samsung.dali-demo sound_server rwxat
+com.samsung.dali-demo com.samsung.indicator rwxat
+com.samsung.dali-demo com.samsung.cluster-home rwxat
+com.samsung.dali-demo tts-server rx
+com.samsung.dali-demo aul::launch rx
+com.samsung.dali-demo system::vconf_inhouse rwxat
+com.samsung.dali-demo system::vconf_system rwxat
+com.samsung.dali-demo system::vconf_misc rwxat
+com.samsung.dali-demo system::vconf_setting rwxat
+e17 com.samsung.dali-demo rwxat
diff --git a/com.samsung.dali-demo.xml b/com.samsung.dali-demo.xml
new file mode 100644 (file)
index 0000000..10425fb
--- /dev/null
@@ -0,0 +1,341 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns="http://tizen.org/ns/packages" package="com.samsung.dali-demo" version="0.0.1" api-version="2.4" install-location="internal-only">
+<!-- NOTE THAT ALL LEADING WHITESPACE IN THIS FILE MUST BE TABS, NOT SPACES. APPS WITH LEADING SPACES WILL SILENTLY FAIL TO RUN ON A TARGET DEVICE. -->
+       <label>Dali Demo</label>
+       <description>DALi Demo Application</description>
+
+       <ui-application appid="com.samsung.dali-demo" exec="/usr/apps/com.samsung.dali-demo/bin/dali-demo" nodisplay="false" multiple="false" type="c++app" taskmanage="true">
+               <icon>/usr/share/icons/com.samsung.dali-demo.png</icon>
+               <label>DALi Demo</label>
+       </ui-application>
+       <ui-application appid="dali-examples" exec="/usr/apps/com.samsung.dali-demo/bin/dali-examples" nodisplay="false" multiple="false" type="c++app" taskmanage="true">
+               <icon>/usr/share/icons/dali-examples.png</icon>
+               <label>DALi Examples</label>
+       </ui-application>
+       <ui-application appid="dali-tests" exec="/usr/apps/com.samsung.dali-demo/bin/dali-tests" nodisplay="false" multiple="false" type="c++app" taskmanage="true">
+               <icon>/usr/share/icons/dali-tests.png</icon>
+               <label>DALi Tests</label>
+       </ui-application>
+
+       <!-- PLEASE KEEP THE FOLLOWING IN ALPHABETICAL ORDER USING THE 'appid'. -->
+
+       <ui-application appid="animated-gradient-call-active.example" exec="/usr/apps/com.samsung.dali-demo/bin/animated-gradient-call-active.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Call Active App</label>
+       </ui-application>
+       <ui-application appid="animated-gradient-card-active.example" exec="/usr/apps/com.samsung.dali-demo/bin/animated-gradient-card-active.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Card Active App</label>
+       </ui-application>
+       <ui-application appid="animated-images.example" exec="/usr/apps/com.samsung.dali-demo/bin/animated-images.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Animated images</label>
+       </ui-application>
+       <ui-application appid="animated-shapes.example" exec="/usr/apps/com.samsung.dali-demo/bin/animated-shapes.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Animated shapes</label>
+       </ui-application>
+       <ui-application appid="arc-visual.example" exec="/usr/apps/com.samsung.dali-demo/bin/arc-visual.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Arc Visual</label>
+       </ui-application>
+       <ui-application appid="benchmark.example" exec="/usr/apps/com.samsung.dali-demo/bin/benchmark.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Benchmark</label>
+       </ui-application>
+       <ui-application appid="bezier-curve.example" exec="/usr/apps/com.samsung.dali-demo/bin/bezier-curve.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Alpha Function Curve</label>
+       </ui-application>
+       <ui-application appid="blocks.example" exec="/usr/apps/com.samsung.dali-demo/bin/blocks.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Blocks</label>
+       </ui-application>
+       <ui-application appid="bloom-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/bloom-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Bloom</label>
+       </ui-application>
+       <ui-application appid="bubble-effect.example" exec="/usr/apps/com.samsung.dali-demo/bin/bubble-effect.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Bubble Effect</label>
+       </ui-application>
+       <ui-application appid="builder.example" exec="/usr/apps/com.samsung.dali-demo/bin/builder.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Script Based UI</label>
+       </ui-application>
+       <ui-application appid="buttons.example" exec="/usr/apps/com.samsung.dali-demo/bin/buttons.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Buttons</label>
+       </ui-application>
+       <ui-application appid="clipping-draw-order.example" exec="/usr/apps/com.samsung.dali-demo/bin/clipping-draw-order.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Clipping Draw Order</label>
+       </ui-application>
+       <ui-application appid="clipping.example" exec="/usr/apps/com.samsung.dali-demo/bin/clipping.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Clipping</label>
+       </ui-application>
+       <ui-application appid="color-visual.example" exec="/usr/apps/com.samsung.dali-demo/bin/color-visual.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Color Visual</label>
+       </ui-application>
+       <ui-application appid="compressed-texture-formats.example" exec="/usr/apps/com.samsung.dali-demo/bin/compressed-texture-formats.example" nodisplay="true" multiple="false" taskmanage="true" type="c++app">
+               <label>Compressed Texture Formats</label>
+       </ui-application>
+       <ui-application appid="contact-cards.example" exec="/usr/apps/com.samsung.dali-demo/bin/contact-cards.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Contact Cards</label>
+       </ui-application>
+       <ui-application appid="cube-transition-effect.example" exec="/usr/apps/com.samsung.dali-demo/bin/cube-transition-effect.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Cube transition effect</label>
+       </ui-application>
+       <ui-application appid="dali-builder" exec="/usr/apps/com.samsung.dali-demo/bin/dali-builder" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Builder</label>
+       </ui-application>
+       <ui-application appid="deferred-shading" exec="/usr/apps/com.samsung.dali-demo/bin/deferred-shading" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Deferred Shading</label>
+       </ui-application>
+       <ui-application appid="dissolve-effect.example" exec="/usr/apps/com.samsung.dali-demo/bin/dissolve-effect.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Dissolve effect</label>
+       </ui-application>
+       <ui-application appid="drag-and-drop.example" exec="/usr/apps/com.samsung.dali-demo/bin/drag-and-drop.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Drag And Drop</label>
+       </ui-application>
+       <ui-application appid="effects-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/effects-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Effects View</label>
+       </ui-application>
+       <ui-application appid="flex-container.example" exec="/usr/apps/com.samsung.dali-demo/bin/flex-container.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Flex Container</label>
+       </ui-application>
+       <ui-application appid="focus-integration.example" exec="/usr/apps/com.samsung.dali-demo/bin/focus-integration.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Focus Integration</label>
+       </ui-application>
+       <ui-application appid="fpp-game.example" exec="/usr/apps/com.samsung.dali-demo/bin/fpp-game.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>First Person Camera Game</label>
+       </ui-application>
+       <ui-application appid="frame-callback.example" exec="/usr/apps/com.samsung.dali-demo/bin/frame-callback.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Frame Callback</label>
+       </ui-application>
+       <ui-application appid="gaussian-blur-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/gaussian-blur-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Gaussian Blur</label>
+       </ui-application>
+       <ui-application appid="gestures.example" exec="/usr/apps/com.samsung.dali-demo/bin/gestures.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Gestures</label>
+       </ui-application>
+       <ui-application appid="gradients.example" exec="/usr/apps/com.samsung.dali-demo/bin/gradients.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Color Gradient</label>
+       </ui-application>
+       <ui-application appid="hello-world.example" exec="/usr/apps/com.samsung.dali-demo/bin/hello-world.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Hello World</label>
+       </ui-application>
+       <ui-application appid="homescreen-benchmark.example" exec="/usr/apps/com.samsung.dali-demo/bin/homescreen-benchmark.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Homescreen Benchmark</label>
+       </ui-application>
+       <ui-application appid="image-policies.example" exec="/usr/apps/com.samsung.dali-demo/bin/image-policies.example" nodisplay="true" multiple="false" taskmanage="true" type="c++app">
+               <label>Image Policies</label>
+       </ui-application>
+       <ui-application appid="image-scaling-and-filtering.example" exec="/usr/apps/com.samsung.dali-demo/bin/image-scaling-and-filtering.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Image Fitting and Sampling</label>
+       </ui-application>
+       <ui-application appid="image-scaling-irregular-grid.example" exec="/usr/apps/com.samsung.dali-demo/bin/image-scaling-irregular-grid.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Image Scaling Grid</label>
+       </ui-application>
+       <ui-application appid="image-view-alpha-blending.example" exec="/usr/apps/com.samsung.dali-demo/bin/image-view-alpha-blending.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>ImageView Alpha Blending</label>
+       </ui-application>
+       <ui-application appid="image-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/image-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Image View</label>
+       </ui-application>
+       <ui-application appid="image-view-pixel-area.example" exec="/usr/apps/com.samsung.dali-demo/bin/image-view-pixel-area.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>ImageView Pixel Area</label>
+       </ui-application>
+       <ui-application appid="image-view-svg.example" exec="/usr/apps/com.samsung.dali-demo/bin/image-view-svg.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>ImageView SVG</label>
+       </ui-application>
+       <ui-application appid="item-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/item-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Item View</label>
+       </ui-application>
+       <ui-application appid="layouting.example" exec="/usr/apps/com.samsung.dali-demo/bin/layouting.example" nodisplay="true" multiple="false" taskmanage="true" type="c++app">
+               <label>Layouting</label>
+       </ui-application>
+       <ui-application appid="magnifier.example" exec="/usr/apps/com.samsung.dali-demo/bin/magnifier.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Magnifier</label>
+       </ui-application>
+       <ui-application appid="mesh-visual.example" exec="/usr/apps/com.samsung.dali-demo/bin/mesh-visual.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Mesh Visual</label>
+       </ui-application>
+       <ui-application appid="metaball-explosion.example" exec="/usr/apps/com.samsung.dali-demo/bin/metaball-explosion.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Metaball Explosion</label>
+       </ui-application>
+       <ui-application appid="metaball-refrac.example" exec="/usr/apps/com.samsung.dali-demo/bin/metaball-refrac.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Metaball Refractions</label>
+       </ui-application>
+       <ui-application appid="model3d-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/model3d-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Model 3D Viewer</label>
+       </ui-application>
+       <ui-application appid="motion-blur.example" exec="/usr/apps/com.samsung.dali-demo/bin/motion-blur.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Motion Blur</label>
+       </ui-application>
+       <ui-application appid="motion-stretch.example" exec="/usr/apps/com.samsung.dali-demo/bin/motion-stretch.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Motion Stretch</label>
+       </ui-application>
+       <ui-application appid="native-image-source.example" exec="/usr/apps/com.samsung.dali-demo/bin/native-image-source.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Native Image Source</label>
+       </ui-application>
+       <ui-application appid="page-turn-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/page-turn-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Page Turn</label>
+       </ui-application>
+       <ui-application appid="perf-scroll.example" exec="/usr/apps/com.samsung.dali-demo/bin/perf-scroll.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>perf-scroll</label>
+       </ui-application>
+       <ui-application appid="pivot.example" exec="/usr/apps/com.samsung.dali-demo/bin/pivot.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Clipping</label>
+       </ui-application>
+       <ui-application appid="point-mesh.example" exec="/usr/apps/com.samsung.dali-demo/bin/point-mesh.example" nodisplay="true" multiple="false" taskmanage="true" type="c++app">
+               <label>Point Mesh</label>
+       </ui-application>
+       <ui-application appid="pre-render-callback.example" exec="/usr/apps/com.samsung.dali-demo/bin/pre-render-callback.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Frame Callback</label>
+       </ui-application>
+       <ui-application appid="primitive-shapes.example" exec="/usr/apps/com.samsung.dali-demo/bin/primitive-shapes.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Primitive Shapes</label>
+       </ui-application>
+       <ui-application appid="progress-bar.example" exec="/usr/apps/com.samsung.dali-demo/bin/progress-bar.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Progress Bar</label>
+       </ui-application>
+       <ui-application appid="property-notification.example" exec="/usr/apps/com.samsung.dali-demo/bin/property-notification.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Property Notification</label>
+       </ui-application>
+       <ui-application appid="ray-marching.example" exec="/usr/apps/com.samsung.dali-demo/bin/ray-marching.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Ray Marching example</label>
+       </ui-application>
+       <ui-application appid="reflection-demo.example" exec="/usr/apps/com.samsung.dali-demo/bin/reflection-demo.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Reflection effect</label>
+       </ui-application>
+       <ui-application appid="refraction-effect.example" exec="/usr/apps/com.samsung.dali-demo/bin/refraction-effect.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Refraction effect</label>
+       </ui-application>
+       <ui-application appid="remote-image-loading.example" exec="/usr/apps/com.samsung.dali-demo/bin/remote-image-loading.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Remote Image</label>
+       </ui-application>
+       <ui-application appid="renderer-stencil.example" exec="/usr/apps/com.samsung.dali-demo/bin/renderer-stencil.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Renderer Stencils</label>
+       </ui-application>
+       <ui-application appid="rendering-basic-light.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-basic-light.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Basic Light</label>
+       </ui-application>
+       <ui-application appid="rendering-basic-pbr.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-basic-pbr.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Physically Based Rendering</label>
+       </ui-application>
+       <ui-application appid="rendering-cube.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-cube.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Rendering Cube</label>
+       </ui-application>
+       <ui-application appid="rendering-line.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-line.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Rendering Line</label>
+       </ui-application>
+       <ui-application appid="rendering-radial-progress.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-radial-progress.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Rendering Radial Progress</label>
+       </ui-application>
+       <ui-application appid="rendering-skybox.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-skybox.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Skybox</label>
+       </ui-application>
+       <ui-application appid="rendering-textured-cube.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-textured-cube.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Rendering Textured Cube</label>
+       </ui-application>
+       <ui-application appid="rendering-triangle.example" exec="/usr/apps/com.samsung.dali-demo/bin/rendering-triangle.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Rendering Triangle</label>
+       </ui-application>
+       <ui-application appid="scripting.example" exec="/usr/apps/com.samsung.dali-demo/bin/scripting.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Scroll View</label>
+       </ui-application>
+       <ui-application appid="scroll-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/scroll-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Scroll View</label>
+       </ui-application>
+       <ui-application appid="shadows-and-lights.example" exec="/usr/apps/com.samsung.dali-demo/bin/shadows-and-lights.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Shadows and Lights</label>
+       </ui-application>
+       <ui-application appid="simple-bitmap-font-text-label.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-bitmap-font-text-label.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Simple Bitmap Font Text Label</label>
+       </ui-application>
+       <ui-application appid="simple-layout.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-layout.example" nodisplay="true" multiple="false" taskmanage="true" type="c++app">
+               <label>Simple Layout</label>
+       </ui-application>
+       <ui-application appid="simple-scroll-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-scroll-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Simple Scroll View</label>
+       </ui-application>
+       <ui-application appid="simple-text-field.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-text-field.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Simple Text Field</label>
+       </ui-application>
+       <ui-application appid="simple-text-label.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-text-label.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Simple Text Label</label>
+       </ui-application>
+       <ui-application appid="simple-text-renderer.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-text-renderer.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Simple Text Renderer</label>
+       </ui-application>
+       <ui-application appid="simple-text-visual.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-text-visual.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Visual</label>
+       </ui-application>
+       <ui-application appid="simple-visuals-control.example" exec="/usr/apps/com.samsung.dali-demo/bin/simple-visuals-control.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Simple Control</label>
+       </ui-application>
+       <ui-application appid="size-negotiation.example" exec="/usr/apps/com.samsung.dali-demo/bin/size-negotiation.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Size Negotiation</label>
+       </ui-application>
+       <ui-application appid="styling.example" exec="/usr/apps/com.samsung.dali-demo/bin/styling.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Styling</label>
+       </ui-application>
+       <ui-application appid="super-blur-bloom.example" exec="/usr/apps/com.samsung.dali-demo/bin/super-blur-bloom.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Super Blur and Bloom</label>
+       </ui-application>
+       <ui-application appid="super-blur-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/super-blur-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Super Blur</label>
+       </ui-application>
+       <ui-application appid="text-editor.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-editor.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Editor</label>
+       </ui-application>
+       <ui-application appid="text-field.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-field.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Field</label>
+       </ui-application>
+       <ui-application appid="text-fonts.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-fonts.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Fonts</label>
+       </ui-application>
+       <ui-application appid="text-label-emojis.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-label-emojis.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Emojis Text Label</label>
+       </ui-application>
+       <ui-application appid="text-label.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-label.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Label</label>
+       </ui-application>
+       <ui-application appid="text-label-multi-language.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-label-multi-language.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Multi-language Text Label</label>
+       </ui-application>
+       <ui-application appid="text-memory-profiling.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-memory-profiling.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Memory Profiling</label>
+       </ui-application>
+       <ui-application appid="text-overlap.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-overlap.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Overlap</label>
+       </ui-application>
+       <ui-application appid="text-scrolling.example" exec="/usr/apps/com.samsung.dali-demo/bin/text-scrolling.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Text Scrolling</label>
+       </ui-application>
+       <ui-application appid="tilt.example" exec="/usr/apps/com.samsung.dali-demo/bin/tilt.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Tilt sensor</label>
+       </ui-application>
+       <ui-application appid="tooltip.example" exec="/usr/apps/com.samsung.dali-demo/bin/tooltip.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Tooltip</label>
+       </ui-application>
+       <ui-application appid="transitions.example" exec="/usr/apps/com.samsung.dali-demo/bin/transitions.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Shadow button</label>
+       </ui-application>
+       <ui-application appid="video-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/video-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Video View</label>
+       </ui-application>
+       <ui-application appid="visual-fitting-mode.example" exec="/usr/apps/com.samsung.dali-demo/bin/visual-fitting-mode.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Visual Fitting Mode</label>
+       </ui-application>
+       <ui-application appid="visual-transitions.example" exec="/usr/apps/com.samsung.dali-demo/bin/visual-transitions.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Visual Transitions</label>
+       </ui-application>
+       <ui-application appid="web-view.example" exec="/usr/apps/com.samsung.dali-demo/bin/web-view.example" nodisplay="true" multiple="false" type="c++app" taskmanage="true">
+               <label>Web View</label>
+       </ui-application>
+
+       <!-- END OF ALPHABETICAL ORDER SORT. -->
+
+       <privileges>
+               <privilege>http://tizen.org/privilege/mediastorage</privilege>
+               <privilege>http://tizen.org/privilege/externalstorage</privilege>
+               <privilege>http://tizen.org/privilege/externalstorage.appdata</privilege>
+               <privilege>http://tizen.org/privilege/unlimitedstorage</privilege>
+               <privilege>http://tizen.org/privilege/filesystem.write</privilege>
+               <privilege>http://tizen.org/privilege/filesystem.read</privilege>
+               <privilege>http://tizen.org/privilege/download</privilege>
+               <privilege>http://tizen.org/privilege/internet</privilege>
+               <privilege>http://tizen.org/privilege/network.get</privilege>
+               <privilege>http://tizen.org/privilege/network.profile</privilege>
+               <privilege>http://tizen.org/privilege/network.set</privilege>
+       </privileges>
+</manifest>
diff --git a/demo/dali-demo.cpp b/demo/dali-demo.cpp
new file mode 100644 (file)
index 0000000..a6bee7a
--- /dev/null
@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+
+// INTERNAL INCLUDES
+#include "shared/dali-table-view.h"
+#include "shared/dali-demo-strings.h"
+
+using namespace Dali;
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  // Configure gettext for internalization
+#ifdef INTERNATIONALIZATION_ENABLED
+  bindtextdomain(DALI_DEMO_DOMAIN_LOCAL, DEMO_LOCALE_DIR);
+  textdomain(DALI_DEMO_DOMAIN_LOCAL);
+  setlocale(LC_ALL, DEMO_LANG);
+#endif
+
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+
+  // Create the demo launcher
+  DaliTableView demo(app);
+
+  demo.AddExample(Example("blocks.example", DALI_DEMO_STR_TITLE_BLOCKS));
+  demo.AddExample(Example("bezier-curve.example", DALI_DEMO_STR_TITLE_BEZIER_CURVE));
+  demo.AddExample(Example("bubble-effect.example", DALI_DEMO_STR_TITLE_BUBBLES));
+  demo.AddExample(Example("contact-cards.example", DALI_DEMO_STR_TITLE_CONTACT_CARDS));
+  demo.AddExample(Example("cube-transition-effect.example", DALI_DEMO_STR_TITLE_CUBE_TRANSITION));
+  demo.AddExample(Example("fpp-game.example", DALI_DEMO_STR_TITLE_FPP_GAME));
+  demo.AddExample(Example("item-view.example", DALI_DEMO_STR_TITLE_ITEM_VIEW));
+  demo.AddExample(Example("mesh-visual.example", DALI_DEMO_STR_TITLE_MESH_VISUAL));
+  demo.AddExample(Example("metaball-explosion.example", DALI_DEMO_STR_TITLE_METABALL_EXPLOSION));
+  demo.AddExample(Example("metaball-refrac.example", DALI_DEMO_STR_TITLE_METABALL_REFRAC));
+  demo.AddExample(Example("motion-blur.example", DALI_DEMO_STR_TITLE_MOTION_BLUR));
+  demo.AddExample(Example("page-turn-view.example", DALI_DEMO_STR_TITLE_PAGE_TURN));
+  demo.AddExample(Example("reflection-demo.example", DALI_DEMO_STR_TITLE_REFLECTION));
+  demo.AddExample(Example("refraction-effect.example", DALI_DEMO_STR_TITLE_REFRACTION));
+  demo.AddExample(Example("renderer-stencil.example", DALI_DEMO_STR_TITLE_RENDERER_STENCIL));
+  demo.AddExample(Example("shadows-and-lights.example", DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS));
+  demo.AddExample(Example("sparkle.example", DALI_DEMO_STR_TITLE_SPARKLE));
+  demo.AddExample(Example("rendering-skybox.example", DALI_DEMO_STR_TITLE_SKYBOX));
+  demo.AddExample(Example("rendering-basic-pbr.example", DALI_DEMO_STR_TITLE_PBR));
+  demo.AddExample(Example("animated-gradient-call-active.example", DALI_DEMO_STR_TITLE_CALL_ACTIVE));
+  demo.AddExample(Example("animated-gradient-card-active.example", DALI_DEMO_STR_TITLE_CARD_ACTIVE));
+
+  demo.SortAlphabetically( true );
+
+  // Start the event loop
+  app.MainLoop();
+
+  return 0;
+}
diff --git a/examples-reel/dali-examples-reel.cpp b/examples-reel/dali-examples-reel.cpp
new file mode 100644 (file)
index 0000000..9b0c043
--- /dev/null
@@ -0,0 +1,110 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+
+// INTERNAL INCLUDES
+#include "shared/dali-table-view.h"
+#include "shared/dali-demo-strings.h"
+
+using namespace Dali;
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  // Configure gettext for internalization
+#ifdef INTERNATIONALIZATION_ENABLED
+  bindtextdomain(DALI_DEMO_DOMAIN_LOCAL, DEMO_LOCALE_DIR);
+  textdomain(DALI_DEMO_DOMAIN_LOCAL);
+  setlocale(LC_ALL, DEMO_LANG);
+#endif
+
+  Application app = Application::New( &argc, &argv, DEMO_STYLE_DIR "/examples-theme.json" );
+
+  // Create the demo launcher
+  DaliTableView demo(app);
+
+  demo.AddExample(Example("animated-images.example", DALI_DEMO_STR_TITLE_ANIMATED_IMAGES));
+  demo.AddExample(Example("animated-shapes.example", DALI_DEMO_STR_TITLE_ANIMATED_SHAPES));
+  demo.AddExample(Example("animated-vector-images.example", DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES));
+  demo.AddExample(Example("alpha-blending-cpu.example", DALI_DEMO_STR_TITLE_ALPHA_BLENDING_CPU));
+  demo.AddExample(Example("arc-visual.example", DALI_DEMO_STR_TITLE_ARC_VISUAL));
+  demo.AddExample(Example("bloom-view.example", DALI_DEMO_STR_TITLE_BLOOM_VIEW));
+  demo.AddExample(Example("builder.example", DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI));
+  demo.AddExample(Example("buttons.example", DALI_DEMO_STR_TITLE_BUTTONS));
+  demo.AddExample(Example("clipping.example", DALI_DEMO_STR_TITLE_CLIPPING));
+  demo.AddExample(Example("clipping-draw-order.example", DALI_DEMO_STR_TITLE_CLIPPING_DRAW_ORDER));
+  demo.AddExample(Example("color-visual.example", DALI_DEMO_STR_TITLE_COLOR_VISUAL));
+  demo.AddExample(Example("deferred-shading.example", DALI_DEMO_STR_TITLE_DEFERRED_SHADING));
+  demo.AddExample(Example("dissolve-effect.example", DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION));
+  demo.AddExample(Example("drag-and-drop.example", DALI_DEMO_STR_TITLE_DRAG_AND_DROP));
+  demo.AddExample(Example("effects-view.example", DALI_DEMO_STR_TITLE_EFFECTS_VIEW));
+  demo.AddExample(Example("flex-container.example", DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND));
+  demo.AddExample(Example("frame-callback.example", DALI_DEMO_STR_TITLE_FRAME_CALLBACK));
+  demo.AddExample(Example("focus-integration.example", DALI_DEMO_STR_TITLE_FOCUS_INTEGRATION));
+  demo.AddExample(Example("gaussian-blur-view.example", DALI_DEMO_STR_TITLE_GAUSSIAN_BLUR_VIEW));
+  demo.AddExample(Example("gestures.example", DALI_DEMO_STR_TITLE_GESTURES));
+  demo.AddExample(Example("gradients.example", DALI_DEMO_STR_TITLE_COLOR_GRADIENT));
+  demo.AddExample(Example("hello-world.example", DALI_DEMO_STR_TITLE_HELLO_WORLD));
+  demo.AddExample(Example("image-policies.example", DALI_DEMO_STR_TITLE_IMAGE_POLICIES));
+  demo.AddExample(Example("image-scaling-and-filtering.example", DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING));
+  demo.AddExample(Example("image-scaling-irregular-grid.example", DALI_DEMO_STR_TITLE_IMAGE_SCALING));
+  demo.AddExample(Example("image-view.example", DALI_DEMO_STR_TITLE_IMAGE_VIEW));
+  demo.AddExample(Example("image-view-alpha-blending.example", DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING));
+  demo.AddExample(Example("image-view-pixel-area.example", DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA));
+  demo.AddExample(Example("image-view-svg.example", DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG));
+  demo.AddExample(Example("image-view-url.example", DALI_DEMO_STR_TITLE_IMAGE_VIEW_URL));
+  demo.AddExample(Example("line-mesh.example", DALI_DEMO_STR_TITLE_LINE_MESH));
+  demo.AddExample(Example("magnifier.example", DALI_DEMO_STR_TITLE_MAGNIFIER));
+  demo.AddExample(Example("mesh-morph.example", DALI_DEMO_STR_TITLE_MESH_MORPH));
+  demo.AddExample(Example("motion-stretch.example", DALI_DEMO_STR_TITLE_MOTION_STRETCH));
+  demo.AddExample(Example("native-image-source.example", DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE));
+  demo.AddExample(Example("popup.example", DALI_DEMO_STR_TITLE_POPUP));
+  demo.AddExample(Example("pivot.example", DALI_DEMO_STR_TITLE_PIVOT));
+  demo.AddExample(Example("primitive-shapes.example", DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES));
+  demo.AddExample(Example("progress-bar.example", DALI_DEMO_STR_TITLE_PROGRESS_BAR));
+  demo.AddExample(Example("remote-image-loading.example", DALI_DEMO_STR_TITLE_REMOTE_IMAGE));
+  demo.AddExample(Example("rendering-basic-light.example", DALI_DEMO_STR_TITLE_BASIC_LIGHT));
+  demo.AddExample(Example("rendering-line.example", DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE));
+  demo.AddExample(Example("rendering-triangle.example", DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE));
+  demo.AddExample(Example("rendering-cube.example", DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE));
+  demo.AddExample(Example("rendering-textured-cube.example", DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE));
+  demo.AddExample(Example("rendering-radial-progress.example", DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS));
+  demo.AddExample(Example("ray-marching.example", DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING));
+  demo.AddExample(Example("scroll-view.example", DALI_DEMO_STR_TITLE_SCROLL_VIEW));
+  demo.AddExample(Example("size-negotiation.example", DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE));
+  demo.AddExample(Example("styling.example", DALI_DEMO_STR_TITLE_STYLING));
+  demo.AddExample(Example("super-blur-view.example", DALI_DEMO_STR_TITLE_SUPER_BLUR_VIEW));
+  demo.AddExample(Example("text-editor.example", DALI_DEMO_STR_TITLE_TEXT_EDITOR));
+  demo.AddExample(Example("text-field.example", DALI_DEMO_STR_TITLE_TEXT_FIELD));
+  demo.AddExample(Example("text-label.example", DALI_DEMO_STR_TITLE_TEXT_LABEL));
+  demo.AddExample(Example("text-label-multi-language.example", DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE));
+  demo.AddExample(Example("text-label-emojis.example", DALI_DEMO_STR_TITLE_EMOJI_TEXT));
+  demo.AddExample(Example("text-scrolling.example", DALI_DEMO_STR_TITLE_TEXT_SCROLLING));
+  demo.AddExample(Example("textured-mesh.example", DALI_DEMO_STR_TITLE_TEXTURED_MESH));
+  demo.AddExample(Example("tilt.example", DALI_DEMO_STR_TITLE_TILT_SENSOR));
+  demo.AddExample(Example("tooltip.example", DALI_DEMO_STR_TITLE_TOOLTIP));
+  demo.AddExample(Example("transitions.example", DALI_DEMO_STR_TITLE_VISUAL_TRANSITIONS));
+  demo.AddExample(Example("web-view.example", DALI_DEMO_STR_TITLE_WEB_VIEW));
+
+  demo.SortAlphabetically( true );
+
+  // Start the event loop
+  app.MainLoop();
+
+  return 0;
+}
diff --git a/examples/alpha-blending-cpu/alpha-blending-cpu-example.cpp b/examples/alpha-blending-cpu/alpha-blending-cpu-example.cpp
new file mode 100644 (file)
index 0000000..f58e33f
--- /dev/null
@@ -0,0 +1,159 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <cstring>
+
+using namespace Dali;
+
+namespace
+{
+const char* const IMAGE_PATH_1 ( DEMO_IMAGE_DIR "people-small-7b.jpg" ); // 100x100
+const char* const IMAGE_PATH_2 ( DEMO_IMAGE_DIR "people-medium-7.jpg" );
+const char* const IMAGE_PATH_3 ( DEMO_IMAGE_DIR "people-medium-7-rgb565.png" ); // is compressed
+const char* const IMAGE_PATH_4 ( DEMO_IMAGE_DIR "people-medium-7-masked.png" ); // has alpha channel
+const char* const MASK_IMAGE_PATH_1 ( DEMO_IMAGE_DIR "store_mask_profile_n.png" ); // 300x300
+const char* const MASK_IMAGE_PATH_2 ( DEMO_IMAGE_DIR "store_mask_profile_f.png" );
+}
+
+class ImageViewAlphaBlendApp : public ConnectionTracker
+{
+public:
+  ImageViewAlphaBlendApp( Application& application )
+  : mApplication( application ),
+    mImageCombinationIndex( 0 )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageViewAlphaBlendApp::Create );
+  }
+
+  ~ImageViewAlphaBlendApp()
+  {
+    // Nothing to do here;
+  }
+
+private:
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // This creates an image view with one of 3 images, and one of 2 masks.
+    // Clicking the screen will cycle through each combination of mask and image.
+
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ImageViewAlphaBlendApp::OnKeyEvent);
+    stage.SetBackgroundColor( Color::WHITE );
+
+    mImageView = Toolkit::ImageView::New();
+
+    mImageView.SetSize(200, 200);
+    mImageView.SetParentOrigin( ParentOrigin::CENTER );
+    stage.Add(mImageView);
+
+    mImageLabel = Toolkit::TextLabel::New();
+    mImageLabel.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mImageLabel.SetAnchorPoint( ParentOrigin::BOTTOM_CENTER );
+    mImageLabel.SetPosition( Vector3( 0.0f, -50.0f, 0.0f ) );
+    mImageLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::BLACK );
+    stage.Add(mImageLabel);
+
+    mMaskLabel = Toolkit::TextLabel::New();
+    mMaskLabel.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mMaskLabel.SetAnchorPoint( ParentOrigin::BOTTOM_CENTER );
+    mMaskLabel.SetPosition( Vector3( 0.0f, 0.0f, 0.0f ) );
+    mMaskLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::BLACK );
+    stage.Add(mMaskLabel);
+
+    LoadImages();
+
+    stage.TouchSignal().Connect( this, &ImageViewAlphaBlendApp::OnTouched );
+  }
+
+  void OnTouched( const TouchData& touchData )
+  {
+    static bool touched = false;
+    if( touchData.GetState( 0 ) == PointState::DOWN )
+    {
+      touched = true;
+    }
+
+    if( touchData.GetState( 0 ) == PointState::UP && touched)
+    {
+      mImageCombinationIndex++;
+      touched = false;
+      LoadImages();
+    }
+  }
+
+  void LoadImages()
+  {
+    const char* images[4] = { IMAGE_PATH_1, IMAGE_PATH_2, IMAGE_PATH_3, IMAGE_PATH_4 };
+    const char*  masks[2] = { MASK_IMAGE_PATH_1, MASK_IMAGE_PATH_2 };
+
+    const char* mask  = masks[mImageCombinationIndex%2 ]; // Cycle through masks
+    const char* image = images[(mImageCombinationIndex/2)%4]; // then images
+
+    Property::Map map;
+    map.Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::Type::IMAGE );
+    map.Add( Toolkit::ImageVisual::Property::URL, image );
+    map.Add( Toolkit::ImageVisual::Property::ALPHA_MASK_URL, mask );
+
+    if( mImageCombinationIndex%2 == 0 )
+    {
+      map.Add( Toolkit::ImageVisual::Property::MASK_CONTENT_SCALE, 1.f );
+      map.Add( Toolkit::ImageVisual::Property::CROP_TO_MASK, false );
+    }
+    else
+    {
+      map.Add( Toolkit::ImageVisual::Property::MASK_CONTENT_SCALE, 1.6f );
+      map.Add( Toolkit::ImageVisual::Property::CROP_TO_MASK, true );
+    }
+
+    mImageView.SetProperty( Toolkit::ImageView::Property::IMAGE, map );
+
+    mImageLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, strrchr(image, '/') );
+    mMaskLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, strrchr(mask, '/') );
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+
+private:
+  Application&  mApplication;
+  Toolkit::ImageView mImageView;
+  Toolkit::TextLabel mImageLabel;
+  Toolkit::TextLabel mMaskLabel;
+
+  int mImageCombinationIndex;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ImageViewAlphaBlendApp test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/animated-gradient-call-active/animated-gradient-call-active.cpp b/examples/animated-gradient-call-active/animated-gradient-call-active.cpp
new file mode 100644 (file)
index 0000000..49fdd43
--- /dev/null
@@ -0,0 +1,413 @@
+/*
+* Copyright (c) 2019 Samsung Electronics Co., Ltd.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <iostream>
+#include <dali-toolkit/devel-api/visuals/animated-gradient-visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+#include <dali/integration-api/debug.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+// This example shows how to create and display animated-gradient-effect
+//
+namespace
+{
+// The value for scale-change between wearable-mobile
+// Can be changed on App-Create time
+Vector2 STAGE_SIZE = Vector2( 360.0f, 360.0f );
+Vector2 SCALED_STAGE_SIZE = Vector2( 1.0f, 1.0f );
+Vector3 SCALED_STAGE_SIZE_3 = Vector3( 1.0f, 1.0f, 0.0f );
+float SCALED_WIDTH = 1.0f;
+float SCALED_HEIGHT = 1.0f;
+float FONT_SCALE = 0.25f;
+
+// const parameters for animations
+const float CHANGE_DURATION = 0.2f;
+
+// const parameters for icon position and size when resolution is 360x360
+const Vector2 ICON_CALL_SIZE = Vector2( 54.0f, 54.0f );
+const Vector3 ICON_CALL_POSITION = Vector3( 0.0f, 0.0f, 0.0f );
+const Vector2 ICON_DECALL_SIZE = Vector2( 54.0f, 54.0f );
+const Vector3 ICON_DECALL_POSITION = Vector3( 141.0f, 0.0f, 0.0f );
+const Vector2 ICON_BATTERY_SIZE = Vector2( 14.0f, 23.0f );
+const Vector3 ICON_BATTERY_POSITION = Vector3( 0.0f, 25.5f, 0.0f );
+const Vector2 BUTTON_CALL_START_SIZE = Vector2( 54.0f, 54.0f );
+const Vector3 BUTTON_CALL_START_POSITION = Vector3( -141.0f, 0.0f, 0.0f );
+
+const Vector2 BUTTON_DECALL_ICON_SIZE = Vector2( 62.0f, 62.0f );
+const Vector3 BUTTON_DECALL_ICON_POSITION = Vector3( 0.0f, 0.0f, 0.0f );
+const Vector2 BUTTON_DECALL_SIZE = Vector2( 360.0f, 82.0f );
+const Vector3 BUTTON_DECALL_CLIP_POSITION = Vector3( 0.0f, 82.0f, 0.0f );
+const Vector3 BUTTON_DECALL_POSITION = Vector3( 0.0f, 0.0f, 0.0f );
+
+// icon image name
+const char * const ICON_CALL_IMAGE( DEMO_IMAGE_DIR "Call_Accept.png" );
+const char * const ICON_DECALL_IMAGE( DEMO_IMAGE_DIR "Call_Decline.png" );
+const char * const ICON_BATTERY_IMAGE( DEMO_IMAGE_DIR "Call_Battery.png" );
+const char * const BUTTON_DECALL_ICON_IMAGE( DEMO_IMAGE_DIR "Call_Decline_wh.png" );
+
+// const parameters for string position and size and font-size when resolution is 360x360
+const Vector2 LABEL_INCOMING_SIZE = Vector2( 156.0f, 26.0f );
+const Vector3 LABEL_INCOMING_POSITION = Vector3( 0.0f, -47.0f, 0.0f );
+const Vector4 LABEL_INCOMING_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_INCOMING_FONT_SIZE = 21.39f;
+const Vector2 LABEL_NAME_SIZE = Vector2( 230.0f, 45.0f );
+const Vector3 LABEL_NAME_POSITION = Vector3( 0.0f, -2.5f, 0.0f );
+const Vector4 LABEL_NAME_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_NAME_FONT_SIZE = 37.71f;
+const Vector2 LABEL_NUMBER_SIZE = Vector2( 196.0f, 25.0f );
+const Vector3 LABEL_NUMBER_POSITION = Vector3( 0.0f, 31.0f, 0.0f );
+const Vector4 LABEL_NUMBER_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_NUMBER_FONT_SIZE = 20.55f;
+const Vector2 LABEL_DECLINE_SIZE = Vector2( 203.0f, 25.0f );
+const Vector3 LABEL_DECLINE_POSITION = Vector3( 0.0f, -50.5f, 0.0f );
+const Vector4 LABEL_DECLINE_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_DECLINE_FONT_SIZE = 20.55f;
+const Vector2 LABEL_TIME_SIZE = Vector2( 91.0f, 26.0f );
+const Vector3 LABEL_TIME_POSITION = Vector3( 0.0f, -47.0f, 0.0f );
+const Vector4 LABEL_TIME_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_TIME_FONT_SIZE = 21.39f;
+
+// string string
+const char * const LABEL_INCOMING_STR( "Incoming Call" );
+const char * const LABEL_NAME_STR( "Sam Smith" );
+const char * const LABEL_NUMBER_STR( "+1 908-247-1695" );
+const char * const LABEL_DECLINE_STR( "Decline Message" );
+const char * const LABEL_TIME_STR( "1:03" );
+
+// Set style from json
+const char * const BACKGROUND_STYLE_JSON( DEMO_STYLE_DIR "animated-gradient-call-active-style.json" );
+const char * const BACKGROUND_INCOME_STYLE_STR( "IncomeBackground" );
+const char * const BACKGROUND_ACTIVE_STYLE_STR( "ActiveBackground" );
+const char * const DECLINE_BUTTON_STYLE_STR( "DeclineButton" );
+
+} // unnamed namespace
+
+// This example shows how to render animated gradients
+//
+class CallController : public ConnectionTracker
+{
+public:
+  CallController(Application& application)
+    : mApplication( application ),
+      mColorStart( 0.0f, 0.0f, 0.0f, 0.0f ),
+      mColorEnd( 0.0f, 0.0f, 0.0f, 0.0f ),
+      mColorReduce( 0.0f, 0.0f, 0.0f, 0.0f ),
+      mButtonColorStart( 0.0f, 0.0f, 0.0f, 0.0f ),
+      mButtonColorEnd( 0.0f, 0.0f, 0.0f, 0.0f ),
+      mDuration( 0.0f ),
+      mBackgroundDurationIncoming( 0.0f ),
+      mBackgroundDurationActive( 0.0f ),
+      mButtonDuration( 0.0f ),
+      mButtonDelay( 0.0f )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &CallController::Create );
+  }
+
+  ~CallController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create(Application& application)
+  {
+    // Get a handle to the stage
+    mStage = Stage::GetCurrent();
+    mStage.KeyEventSignal().Connect( this, &CallController::OnKeyEvent );
+
+    // Apply custom style for background and button.
+    StyleManager::Get().ApplyTheme( BACKGROUND_STYLE_JSON );
+
+    // Get current device's width and height.
+    STAGE_SIZE = mStage.GetSize();
+    SCALED_STAGE_SIZE = STAGE_SIZE / 360.0f;
+    SCALED_STAGE_SIZE_3 = Vector3( SCALED_STAGE_SIZE.x, SCALED_STAGE_SIZE.y, 0.0f );
+    SCALED_WIDTH = SCALED_STAGE_SIZE.x < SCALED_STAGE_SIZE.y ? SCALED_STAGE_SIZE.x : SCALED_STAGE_SIZE.y;
+    SCALED_HEIGHT = SCALED_WIDTH;
+
+    // Note that this is heuristic value
+    FONT_SCALE = 0.25f * STAGE_SIZE.y / STAGE_SIZE.x;
+
+    mBackground = Control::New();
+    mBackground.SetParentOrigin( ParentOrigin::CENTER );
+    mBackground.SetAnchorPoint( AnchorPoint::CENTER );
+    mBackground.SetSize( STAGE_SIZE );
+
+    mStage.Add( mBackground );
+
+    BuildParameter();
+    SetupActors();
+    SetupAnimation();
+
+    Reset();
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  // Setup const parameter values
+  void BuildParameter()
+  {
+    mDuration = CHANGE_DURATION;
+  }
+
+  void SetupActors()
+  {
+    SetupComingActors();
+    SetupActiveActors();
+  }
+
+  // Create and Add to stage when visible at call incomming
+  void SetupComingActors()
+  {
+    mButtonIconDecall = ImageView::New();
+    mButtonIconDecall.SetImage( ICON_DECALL_IMAGE );
+    mButtonIconDecall.SetParentOrigin( ParentOrigin::CENTER );
+    mButtonIconDecall.SetAnchorPoint( AnchorPoint::CENTER );
+    mButtonIconDecall.SetSize( ICON_DECALL_SIZE * SCALED_WIDTH );
+    mButtonIconDecall.SetPosition( ICON_DECALL_POSITION * SCALED_WIDTH );
+
+    mButtonIconBattery = ImageView::New();
+    mButtonIconBattery.SetImage( ICON_BATTERY_IMAGE );
+    mButtonIconBattery.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mButtonIconBattery.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mButtonIconBattery.SetSize( ICON_BATTERY_SIZE * SCALED_WIDTH );
+    mButtonIconBattery.SetPosition( ICON_BATTERY_POSITION * SCALED_WIDTH );
+
+    mCallStartButton = PushButton::New();
+    mCallStartButton.SetParentOrigin( ParentOrigin::CENTER );
+    mCallStartButton.SetAnchorPoint( AnchorPoint::CENTER );
+    mCallStartButton.SetSize( BUTTON_CALL_START_SIZE * SCALED_WIDTH );
+    mCallStartButton.SetPosition( BUTTON_CALL_START_POSITION * SCALED_WIDTH );
+    mCallStartButton.ClickedSignal().Connect( this, &CallController::OnButtonClicked );
+    mCallStartButton.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, ICON_CALL_IMAGE );
+    mCallStartButton.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, ICON_CALL_IMAGE );
+    mCallStartButton.SetProperty( Control::Property::BACKGROUND, ICON_CALL_IMAGE );
+    mCallStartButton.SetProperty( Button::Property::LABEL, "" );
+
+    mStage.Add( mCallStartButton );
+    mStage.Add( mButtonIconDecall );
+    mStage.Add( mButtonIconBattery );
+
+    mLabelIncoming = TextLabel::New( LABEL_INCOMING_STR );
+    mLabelIncoming.SetParentOrigin( ParentOrigin::CENTER );
+    mLabelIncoming.SetAnchorPoint( AnchorPoint::CENTER );
+    mLabelIncoming.SetSize( LABEL_INCOMING_SIZE * SCALED_STAGE_SIZE );
+    mLabelIncoming.SetPosition( LABEL_INCOMING_POSITION * SCALED_STAGE_SIZE_3 );
+    mLabelIncoming.SetVisible( true );
+    mLabelIncoming.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_INCOMING_FONT_COLOR );
+    mLabelIncoming.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_INCOMING_FONT_SIZE * FONT_SCALE );
+    mLabelIncoming.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabelIncoming.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mLabelName = TextLabel::New( LABEL_NAME_STR );
+    mLabelName.SetParentOrigin( ParentOrigin::CENTER );
+    mLabelName.SetAnchorPoint( AnchorPoint::CENTER );
+    mLabelName.SetSize( LABEL_NAME_SIZE * SCALED_STAGE_SIZE );
+    mLabelName.SetPosition( LABEL_NAME_POSITION * SCALED_STAGE_SIZE_3 );
+    mLabelName.SetVisible( true );
+    mLabelName.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_NAME_FONT_COLOR );
+    mLabelName.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_NAME_FONT_SIZE * FONT_SCALE );
+    mLabelName.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabelName.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mLabelNumber = TextLabel::New( LABEL_NUMBER_STR );
+    mLabelNumber.SetParentOrigin( ParentOrigin::CENTER );
+    mLabelNumber.SetAnchorPoint( AnchorPoint::CENTER );
+    mLabelNumber.SetSize( LABEL_NUMBER_SIZE * SCALED_STAGE_SIZE );
+    mLabelNumber.SetPosition( LABEL_NUMBER_POSITION * SCALED_STAGE_SIZE_3 );
+    mLabelNumber.SetVisible( true );
+    mLabelNumber.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_NUMBER_FONT_COLOR );
+    mLabelNumber.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_NUMBER_FONT_SIZE * FONT_SCALE );
+    mLabelNumber.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabelNumber.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mLabelDecline = TextLabel::New( LABEL_DECLINE_STR );
+    mLabelDecline.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mLabelDecline.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    mLabelDecline.SetSize( LABEL_DECLINE_SIZE * SCALED_STAGE_SIZE );
+    mLabelDecline.SetPosition( LABEL_DECLINE_POSITION * SCALED_WIDTH );
+    mLabelDecline.SetVisible( true );
+    mLabelDecline.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_DECLINE_FONT_COLOR );
+    mLabelDecline.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_DECLINE_FONT_SIZE * FONT_SCALE );
+    mLabelDecline.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabelDecline.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mStage.Add( mLabelIncoming );
+    mStage.Add( mLabelName );
+    mStage.Add( mLabelNumber );
+    mStage.Add( mLabelDecline );
+  }
+
+  // Create and Add to stage when visible at call active
+  void SetupActiveActors()
+  {
+    mButtonClip = Control::New();
+    mButtonClip.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mButtonClip.SetAnchorPoint( ParentOrigin::BOTTOM_CENTER );
+    mButtonClip.SetSize( BUTTON_DECALL_SIZE * SCALED_WIDTH );
+    mButtonClip.SetPosition( BUTTON_DECALL_CLIP_POSITION * SCALED_WIDTH );
+
+    mButtonIcon = ImageView::New();
+    mButtonIcon.SetImage( BUTTON_DECALL_ICON_IMAGE );
+    mButtonIcon.SetParentOrigin( ParentOrigin::CENTER );
+    mButtonIcon.SetAnchorPoint( AnchorPoint::CENTER );
+    mButtonIcon.SetSize( BUTTON_DECALL_ICON_SIZE * SCALED_WIDTH );
+    mButtonIcon.SetPosition( BUTTON_DECALL_ICON_POSITION * SCALED_WIDTH );
+
+    mCallEndButton = PushButton::New();
+    mCallEndButton.SetParentOrigin( ParentOrigin::CENTER );
+    mCallEndButton.SetAnchorPoint( AnchorPoint::CENTER );
+    mCallEndButton.SetSize( BUTTON_DECALL_SIZE * SCALED_WIDTH );
+    mCallEndButton.SetPosition( BUTTON_DECALL_POSITION * SCALED_WIDTH );
+    mCallEndButton.ClickedSignal().Connect( this, &CallController::OnButtonClicked );
+    mCallEndButton.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, "" );
+    mCallEndButton.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, "" );
+    mCallEndButton.SetStyleName( DECLINE_BUTTON_STYLE_STR );
+    mCallEndButton.SetProperty( Button::Property::LABEL, "" );
+
+    mButtonClip.Add( mCallEndButton );
+    mButtonClip.Add( mButtonIcon );
+
+    mLabelTime = TextLabel::New( LABEL_TIME_STR );
+    mLabelTime.SetParentOrigin( ParentOrigin::CENTER );
+    mLabelTime.SetAnchorPoint( AnchorPoint::CENTER );
+    mLabelTime.SetSize( LABEL_TIME_SIZE * SCALED_STAGE_SIZE );
+    mLabelTime.SetPosition( LABEL_TIME_POSITION * SCALED_STAGE_SIZE_3 );
+    mLabelTime.SetVisible( false );
+    mLabelTime.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_TIME_FONT_COLOR );
+    mLabelTime.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_TIME_FONT_SIZE * FONT_SCALE );
+    mLabelTime.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabelTime.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mStage.Add( mLabelTime );
+  }
+
+  void SetupAnimation()
+  {
+    mMoveFront = Animation::New( mDuration );
+    mMoveBack = Animation::New( mDuration );
+
+    mMoveFront.AnimateTo( Property( mButtonClip, Actor::Property::POSITION_Y ), 0.0f * SCALED_HEIGHT );
+    mMoveBack.AnimateTo( Property( mButtonClip, Actor::Property::POSITION_Y ), BUTTON_DECALL_CLIP_POSITION.y * SCALED_HEIGHT );
+
+    mMoveFront.AnimateTo( Property( mCallStartButton, Actor::Property::VISIBLE ), false );
+    mMoveFront.AnimateTo( Property( mButtonIconDecall, Actor::Property::VISIBLE ), false );
+    mMoveBack.AnimateTo( Property( mCallStartButton, Actor::Property::VISIBLE ), true );
+    mMoveBack.AnimateTo( Property( mButtonIconDecall, Actor::Property::VISIBLE ), true );
+
+    mMoveFront.AnimateTo( Property( mLabelIncoming, Actor::Property::VISIBLE ), false );
+    mMoveFront.AnimateTo( Property( mLabelNumber, Actor::Property::VISIBLE ), false );
+    mMoveFront.AnimateTo( Property( mLabelTime, Actor::Property::VISIBLE ), true );
+    mMoveBack.AnimateTo( Property( mLabelIncoming, Actor::Property::VISIBLE ), true );
+    mMoveBack.AnimateTo( Property( mLabelNumber, Actor::Property::VISIBLE ), true );
+    mMoveBack.AnimateTo( Property( mLabelTime, Actor::Property::VISIBLE ), false );
+  }
+
+  bool OnButtonClicked(Button button)
+  {
+    if( button == mCallStartButton )
+    {
+      mBackground.SetStyleName( BACKGROUND_ACTIVE_STYLE_STR );
+      mStage.Add( mButtonClip );
+      mMoveFront.Play();
+    }
+    else if( button == mCallEndButton )
+    {
+      mBackground.SetStyleName( BACKGROUND_INCOME_STYLE_STR );
+      mTempTimer = Timer::New( mDuration * 1000.0f );
+      mTempTimer.TickSignal().Connect( this, &CallController::smallTick );
+      mTempTimer.Start();
+      mMoveBack.Play();
+    }
+    return true;
+  }
+  bool smallTick()
+  {
+    mButtonClip.Unparent();
+    return false;
+  }
+
+  void Reset()
+  {
+    mBackground.SetStyleName( BACKGROUND_INCOME_STYLE_STR );
+  }
+
+private:
+  Application&  mApplication;
+  Stage mStage;
+
+  Control mBackground;
+
+  // Show when call incommint
+  PushButton mCallStartButton;
+  ImageView mButtonIconDecall;
+  ImageView mButtonIconBattery;
+  TextLabel mLabelIncoming;
+  TextLabel mLabelName;
+  TextLabel mLabelNumber;
+  TextLabel mLabelDecline;
+
+  // Show when call active
+  PushButton mCallEndButton;
+  ImageView mButtonIcon;
+  Control   mButtonBackground;
+  Control   mButtonClip;
+  TextLabel mLabelTime;
+
+  Timer mTempTimer;
+
+  Animation mMoveFront;
+  Animation mMoveBack;
+
+  Vector4 mColorStart;
+  Vector4 mColorEnd;
+  Vector4 mColorReduce;
+
+  Vector4 mButtonColorStart;
+  Vector4 mButtonColorEnd;
+
+  float mDuration;
+  float mBackgroundDurationIncoming;
+  float mBackgroundDurationActive;
+  float mButtonDuration;
+  float mButtonDelay;
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application application = Application::New( &argc, &argv );
+
+  CallController test( application );
+
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/animated-gradient-card-active/animated-gradient-card-active.cpp b/examples/animated-gradient-card-active/animated-gradient-card-active.cpp
new file mode 100644 (file)
index 0000000..2678b19
--- /dev/null
@@ -0,0 +1,836 @@
+/*
+* Copyright (c) 2018 Samsung Electronics Co., Ltd.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <iostream>
+#include <dali-toolkit/devel-api/visuals/animated-gradient-visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+#include <dali/integration-api/debug.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+// This example shows how to create and display animated-gradient-effect
+//
+namespace
+{
+// The value for scale-change between wearable-mobile
+// Can be changed on App-Create time
+Vector2 STAGE_SIZE = Vector2( 360.0f, 360.0f );
+Vector2 SCALED_STAGE_SIZE = Vector2( 1.0f, 1.0f );
+Vector3 SCALED_STAGE_SIZE_3 = Vector3( 1.0f, 1.0f, 0.0f );
+float SCALED_WIDTH = 1.0f;
+float SCALED_HEIGHT = 1.0f;
+float FONT_SCALE = 0.25f;
+
+// const parameters for color and animation
+const float CHANGE_DURATION = 0.2f;
+const float CARD_MOVE_DURATION = 1.0f;
+const float LOADING_ONE_CYCLE_DURATION = 2.0f;
+const int   LOADING_CYCLE_CNT = 4;
+const int   LOADING_CYCLE_DT = 10;
+const Vector4 DEFAULT_COLOR = Vector4( 0.5f, 0.5f, 0.5f, 1.0f );
+
+const float PSEUDO_SCROLL_TIME = 100.0f;
+const float PSEUDO_SCROLL_OFFSET = 0.05f;
+
+// const static parameters for cards when resolution is 360x360
+const int CARD_NUM = 3;
+const Vector2 CARD_SIZE = Vector2( 210.0f, 143.0f );
+const Vector2 CARD_OFFSET = Vector2( 0.0f, 12.5f );
+const Vector2 CARD_DIFF = Vector2( 240.0f, 0.0f );
+const float CARD_BOUNCE_ANIMATION_RATE = 0.3f;
+
+const Vector2 CARD_SIZE_BIG = Vector2( 292.0f, 199.0f );
+const Vector2 CARD_BIG_OFFSET = Vector2( 0.0f, -5.5f );
+const float CARD_MOVE_DIST = 40.0f;
+
+// const private parameters for each cards
+const Vector4 CARD_COLOR_START_LIST[] =
+{
+  Vector4( 0x24, 0x2C, 0x93, 255.f ) / 255.f,
+  Vector4( 0x7A, 0x1C, 0x9E, 255.f ) / 255.f,
+  Vector4( 0xA9, 0x0C, 0x96, 255.f ) / 255.f,
+};
+const Vector4 CARD_COLOR_END_LIST[] =
+{
+  Vector4( 0x04, 0x13, 0x23, 255.f ) / 255.f,
+  Vector4( 0x28, 0x01, 0x45, 255.f ) / 255.f,
+  Vector4( 0x37, 0x0A, 0x2E, 255.f ) / 255.f,
+};
+const Vector4 CARD_COLOR_BACKGROUND_LIST[] =
+{
+  Vector4( 0x28, 0x2B, 0x6E, 255.f ) / 255.f,
+  Vector4( 0x4D, 0x15, 0x61, 255.f ) / 255.f,
+  Vector4( 0x70, 0x21, 0x61, 255.f ) / 255.f,
+};
+const char * const CARD_IMAGE_LIST[] =
+{
+  ( DEMO_IMAGE_DIR "Card_01.png" ),
+  ( DEMO_IMAGE_DIR "Card_02.png" ),
+  ( DEMO_IMAGE_DIR "Card_03.png" ),
+};
+
+// const parameters for add button position and size when resolution is 360x360x
+const Vector2 BUTTON_ADD_SIZE = Vector2( 292.0f, 52.0f );
+const Vector3 BUTTON_ADD_POSITION = Vector3( 0.0f, 0.0f, 0.0f );
+const char * const BUTTON_ADD_IMAGE( DEMO_IMAGE_DIR "Card_Add_Button.png" );
+
+// const parameters for string position and size and font-size when resolution is 360x360
+const Vector2 LABEL_TICKET_SIZE = Vector2( 148.0f, 31.0f );
+const Vector3 LABEL_TICKET_POSITION = Vector3( 0.0f, 72.5f, 0.0f );
+const Vector4 LABEL_TICKET_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_TICKET_FONT_SIZE = 25.0f;
+const Vector2 LABEL_HOLD_SIZE = Vector2( 180.0f, 60.0f );
+const Vector3 LABEL_HOLD_POSITION = Vector3( 1.0f, 103.0f, 0.0f );
+const Vector4 LABEL_HOLD_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_HOLD_FONT_SIZE = 25.0f;
+const Vector2 LABEL_TERMINAL_SIZE = Vector2( 180.0f, 60.0f );
+const Vector3 LABEL_TERMINAL_POSITION = Vector3( 1.0f, 133.0f, 0.0f );
+const Vector4 LABEL_TERMINAL_FONT_COLOR = Vector4( 0.98f, 0.98f, 0.98f, 1.0f );
+const float   LABEL_TERMINAL_FONT_SIZE = 25.0f;
+
+// string string
+const char * const LABEL_TICKET_STR( "Select Ticket" );
+const char * const LABEL_HOLD_STR( "Hold near" );
+const char * const LABEL_TERMINAL_STR( "terminal" );
+
+class CardManager
+{
+public:
+  CardManager()
+    : mSize( 0.0f, 0.0f ),
+      mOffset( 0.0f, 0.0f),
+      mDiff( 0.0f, 0.0f),
+      mCurIndex( 0 ),
+      mCurState( 0 )
+  {
+  }
+  ~CardManager() {}
+
+  void Init(Stage& stage)
+  {
+    mSize = CARD_SIZE * SCALED_WIDTH;
+    mOffset = CARD_OFFSET * SCALED_WIDTH;
+    mDiff = CARD_DIFF * SCALED_WIDTH;
+
+    mCurIndex = 0;
+    mCurState = 0;
+
+    for( int k = 0; k < CARD_NUM; k++ )
+    {
+      mPosition[k] = mOffset + mDiff * k;
+
+      mColorStart[k] = CARD_COLOR_START_LIST[k];
+      mColorEnd[k] = CARD_COLOR_END_LIST[k];
+      mColorBackground[k] = CARD_COLOR_BACKGROUND_LIST[k];
+
+      mImageUrl[k] = CARD_IMAGE_LIST[k];
+
+      // Create an image view for this item
+      mCard[k] = ImageView::New();
+      {
+        Property::Map propertyMap;
+        propertyMap.Insert(Visual::Property::TYPE, Visual::IMAGE);
+        propertyMap.Insert(ImageVisual::Property::URL, mImageUrl[k]);
+        propertyMap.Insert(DevelVisual::Property::VISUAL_FITTING_MODE, DevelVisual::FILL);
+        mCard[k].SetProperty(Toolkit::ImageView::Property::IMAGE, propertyMap);
+      }
+
+      mCard[k].SetParentOrigin( ParentOrigin::CENTER );
+      mCard[k].SetAnchorPoint( AnchorPoint::CENTER );
+      mCard[k].SetSize( mSize.x, mSize.y );
+      mCard[k].SetPosition( mPosition[k].x, mPosition[k].y );
+
+      stage.Add( mCard[k] );
+    }
+  }
+
+  bool MoveRight(float duration)
+  {
+    Animation anim = Animation::New( duration );
+    for( int k = 0; k < CARD_NUM; k++ )
+    {
+      if( mCurIndex == 0 )
+      {
+        anim.AnimateBy( Property( mCard[k], Actor::Property::POSITION_X ), mDiff.x * CARD_BOUNCE_ANIMATION_RATE, AlphaFunction::BOUNCE );
+      }
+      else
+      {
+        anim.AnimateBy( Property( mCard[k], Actor::Property::POSITION_X ), mDiff.x, AlphaFunction::EASE_OUT );
+      }
+    }
+    bool res = false;
+    if( mCurIndex != 0 )
+    {
+      mCurIndex = (mCurIndex - 1) % CARD_NUM;
+      res = true;
+    }
+    anim.Play();
+    return res;
+  }
+
+  bool MoveLeft(float duration)
+  {
+    Animation anim = Animation::New( duration );
+    for( int k = 0; k < CARD_NUM; k++ )
+    {
+      if( mCurIndex == CARD_NUM - 1 )
+      {
+        anim.AnimateBy( Property( mCard[k], Actor::Property::POSITION_X ), -mDiff.x * CARD_BOUNCE_ANIMATION_RATE, AlphaFunction::BOUNCE );
+      }
+      else
+      {
+        anim.AnimateBy( Property( mCard[k], Actor::Property::POSITION_X ), -mDiff.x, AlphaFunction::EASE_OUT );
+      }
+    }
+    bool res = false;
+    if( mCurIndex != CARD_NUM - 1 )
+    {
+      mCurIndex = (mCurIndex + 1) % CARD_NUM;
+      res = true;
+    }
+    anim.Play();
+    return res;
+  }
+
+  Vector4 GetColorStart(int index)
+  {
+    DALI_ASSERT_ALWAYS( index >= 0 && index < CARD_NUM );
+    return mColorStart[index];
+  }
+
+  Vector4 GetColorEnd(int index)
+  {
+    DALI_ASSERT_ALWAYS( index >= 0 && index < CARD_NUM );
+    return mColorEnd[index];
+  }
+
+  Vector4 GetColorBackground(int index)
+  {
+    DALI_ASSERT_ALWAYS( index >= 0 && index < CARD_NUM );
+    return mColorBackground[index];
+  }
+
+  ImageView& operator [](int index)
+  {
+    DALI_ASSERT_ALWAYS( index >= 0 && index < CARD_NUM );
+    return mCard[index];
+  }
+
+  ImageView mCard[CARD_NUM];
+  std::string mImageUrl[CARD_NUM];
+  Vector4 mColorStart[CARD_NUM];
+  Vector4 mColorEnd[CARD_NUM];
+  Vector4 mColorBackground[CARD_NUM];
+  Vector2 mPosition[CARD_NUM];
+  Vector2 mSize;
+  Vector2 mOffset;
+  Vector2 mDiff;
+  int mCurIndex;
+  int mCurState;
+};
+
+} // unnamed namespace
+
+// This example shows how to render animated gradients
+//
+class CardController : public ConnectionTracker
+{
+public:
+  CardController(Application& application)
+    : mApplication( application ),
+      mNormalColor( 0.0f, 0.0f, 0.0f, 0.0f ),
+      mNormalStartColor( 0.0f, 0.0f, 0.0f, 0.0f ),
+      mNormalEndColor( 0.0f, 0.0f, 0.0f, 0.0f),
+      mFirstTouchPos( 0.0f, 0.0f ),
+      mLastTouchPos( 0.0f, 0.0f ),
+      mCardDuration( 0.0f ),
+      mDuration( 0.0f ),
+      mLoadingTime( 0.0f ),
+      mLoadingCount( 0 ),
+      mLoadingCountScale( 0 ),
+      mTickCount( 0 ),
+      mCancelSignal( false ),
+      mIsTouchedActor( false )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &CardController::Create );
+  }
+
+  ~CardController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create(Application& application)
+  {
+    // Get a handle to the stage
+    mStage = Stage::GetCurrent();
+    mStage.KeyEventSignal().Connect( this, &CardController::OnKeyEvent );
+
+    // Get current device's width and height.
+    STAGE_SIZE = mStage.GetSize();
+    SCALED_STAGE_SIZE = STAGE_SIZE / 360.0f;
+    SCALED_STAGE_SIZE_3 = Vector3( SCALED_STAGE_SIZE.x, SCALED_STAGE_SIZE.y, 0.0f );
+    SCALED_WIDTH = SCALED_STAGE_SIZE.x < SCALED_STAGE_SIZE.y ? SCALED_STAGE_SIZE.x : SCALED_STAGE_SIZE.y;
+    SCALED_HEIGHT = SCALED_WIDTH;
+
+    // Note that this is heuristic value
+    FONT_SCALE = 0.25f * STAGE_SIZE.y / STAGE_SIZE.x;
+
+    mBackground = Control::New();
+    mBackground.SetParentOrigin( ParentOrigin::CENTER );
+    mBackground.SetAnchorPoint( AnchorPoint::CENTER );
+    mBackground.SetSize( STAGE_SIZE );
+
+    mStage.Add( mBackground );
+
+    BuildParameter();
+    InitMap();
+    SetupCards();
+    SetupActors();
+    SetupAnimation();
+
+    mStage.GetRootLayer().TouchSignal().Connect( this, &CardController::OnTouchLayer );
+    Reset();
+  }
+
+  bool OnTouchCards(Actor actor, const TouchData &data)
+  {
+    if( data.GetPointCount() > 0 )
+    {
+      if( data.GetState( 0 ) == PointState::DOWN )
+      {
+        if( mCards.mCurState == 0 )
+        {
+          mIsTouchedActor = false;
+          if( mCards[mCards.mCurIndex] == actor )
+          {
+            mIsTouchedActor = true;
+          }
+          mCards.mCurState = 3;
+          mTempTimer = Timer::New( PSEUDO_SCROLL_TIME );
+          mTempTimer.TickSignal().Connect( this, &CardController::OnDetectMotionLayer );
+          mTempTimer.Start();
+
+          mFirstTouchPos = data.GetScreenPosition( 0 );
+          mLastTouchPos = mFirstTouchPos;
+        }
+        else if( mCards.mCurState == 1 )
+        {
+          mCancelSignal = true;
+          return false;
+        }
+      }
+      else
+      {
+        mLastTouchPos = data.GetScreenPosition( 0 );
+      }
+    }
+    return true;
+  }
+
+  bool OnTouchLayer(Actor actor, const TouchData &data)
+  {
+    if( data.GetPointCount() > 0 )
+    {
+      if( data.GetState( 0 ) == PointState::DOWN )
+      {
+        if( mCards.mCurState == 0 )
+        {
+          mIsTouchedActor = false;
+          mCards.mCurState = 3;
+          mTempTimer = Timer::New( PSEUDO_SCROLL_TIME );
+          mTempTimer.TickSignal().Connect( this, &CardController::OnDetectMotionLayer );
+          mTempTimer.Start();
+
+          mFirstTouchPos = data.GetScreenPosition( 0 );
+          mLastTouchPos = mFirstTouchPos;
+        }
+      }
+      else
+      {
+        mLastTouchPos = data.GetScreenPosition( 0 );
+      }
+    }
+    return true;
+  }
+
+  // Heuristic Scroll View
+  bool OnDetectMotionLayer()
+  {
+    if( mCards.mCurState == 3 )
+    {
+      Vector2 diff = (mLastTouchPos - mFirstTouchPos);
+      float offset = PSEUDO_SCROLL_OFFSET;
+      // Scroll to right
+      if( diff.x > mStage.GetSize().x * offset )
+      {
+        mCards.mCurState = 2;
+        MoveRight();
+        mCardChanger = Timer::New( mCardDuration * 1000.0f );
+        mCardChanger.TickSignal().Connect( this, &CardController::OnTickLayer );
+        mCardChanger.Start();
+      }
+      // Scroll to left
+      else if( diff.x < -mStage.GetSize().x * offset )
+      {
+        mCards.mCurState = 2;
+        MoveLeft();
+        mCardChanger = Timer::New( mCardDuration * 1000.0f );
+        mCardChanger.TickSignal().Connect( this, &CardController::OnTickLayer );
+        mCardChanger.Start();
+      }
+      // Not a scroll input
+      else
+      {
+        // Run NFC Tag effect if we touch a card
+        if (mIsTouchedActor)
+        {
+          mCards.mCurState = 1;
+          RunAnimation( mCards.mCurIndex );
+        }
+        else
+        {
+          Reset();
+        }
+      }
+    }
+    return false;
+  }
+
+  bool OnTickLayer()
+  {
+    Reset();
+    return false;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  // Utility function to make animation parameter map. return Property::Map
+  Property::Value BuildMap(const Property::Value &start, const Property::Value &target, int dir, float duration, float delay, int repeat, float repeat_delay, int motion, int easing)
+  {
+    Property::Map map;
+
+    map.Clear();
+    map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::START, start );
+    map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::TARGET, target );
+    if( dir == 0 )
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::DIRECTION, DevelAnimatedGradientVisual::AnimationParameter::DirectionType::FORWARD );
+    }
+    else
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::DIRECTION, DevelAnimatedGradientVisual::AnimationParameter::DirectionType::BACKWARD );
+    }
+    map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::DURATION, duration );
+    map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::DELAY, delay );
+    map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::REPEAT, repeat );
+    map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::REPEAT_DELAY, repeat_delay );
+    if( motion == 0 )
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::MOTION_TYPE, DevelAnimatedGradientVisual::AnimationParameter::MotionType::LOOP );
+    }
+    else
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::MOTION_TYPE, DevelAnimatedGradientVisual::AnimationParameter::MotionType::MIRROR );
+    }
+    if( easing == 0 )
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::EASING_TYPE, DevelAnimatedGradientVisual::AnimationParameter::EasingType::LINEAR );
+    }
+    else if( easing == 1 )
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::EASING_TYPE, DevelAnimatedGradientVisual::AnimationParameter::EasingType::IN );
+    }
+    else if( easing == 2 )
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::EASING_TYPE, DevelAnimatedGradientVisual::AnimationParameter::EasingType::OUT );
+    }
+    else
+    {
+      map.Insert( DevelAnimatedGradientVisual::AnimationParameter::Property::EASING_TYPE, DevelAnimatedGradientVisual::AnimationParameter::EasingType::IN_OUT );
+    }
+
+    return Property::Value( map );
+  }
+
+  // Setup background visual property during nothing action
+  void InitMapNormal()
+  {
+    mBackgroundNormalMap.Clear();
+    mBackgroundNormalMap.Insert( Visual::Property::TYPE, DevelVisual::ANIMATED_GRADIENT );
+
+    mBackgroundNormalMap.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_POSITION, Vector2( -0.5, -0.5 ) );
+    mBackgroundNormalMap.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_POSITION, Vector2( 0.5, 0.5 ) );
+    mBackgroundNormalMap.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR, mNormalColor );
+    mBackgroundNormalMap.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR, mNormalColor );
+    mBackgroundNormalMap.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_CENTER, Vector2( 0.0f, 0.0f ) );
+    mBackgroundNormalMap.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_AMOUNT, 0.0f );
+    mBackgroundNormalMap.Insert( Toolkit::DevelAnimatedGradientVisual::Property::OFFSET, 0.0f );
+  }
+
+  // Setup background visual property during NFC tagging start
+  void InitMapStart()
+  {
+    mBackgroundMapStart.Clear();
+    mBackgroundMapStart.Insert( Visual::Property::TYPE, DevelVisual::ANIMATED_GRADIENT );
+
+    mBackgroundMapStart.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_POSITION, Vector2( -0.5, -0.5 ) );
+    mBackgroundMapStart.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_POSITION, Vector2( 0.5, 0.5 ) );
+    mBackgroundMapStart.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR, mNormalColor );
+    mBackgroundMapStart.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR, mNormalColor );
+    mBackgroundMapStart.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_CENTER, Vector2( 0.0f, 0.0f ) );
+    mBackgroundMapStart.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_AMOUNT, 0.0f );
+    mBackgroundMapStart.Insert( Toolkit::DevelAnimatedGradientVisual::Property::OFFSET, BuildMap( 0.0f, 2.0f, 0, mLoadingTime, 0.0f, -1, 0.0f, 0, 0 ) );
+
+    mColorAnimationStartStart = *( BuildMap( mNormalColor, Vector4( 0, 0, 0, 0 ), 0, mDuration, 0.0f, 1, 0.0f, 0, 0 ).GetMap() );
+    mColorAnimationStartEnd = *( BuildMap( mNormalColor, Vector4( 0, 0, 0, 0 ), 0, mDuration, 0.0f, 1, 0.0f, 0, 0 ).GetMap() );
+  }
+
+  // Setup background visual property during NFC tagging end
+  void InitMapEnd()
+  {
+    mBackgroundMapEnd.Clear();
+    mBackgroundMapEnd.Insert( Visual::Property::TYPE, DevelVisual::ANIMATED_GRADIENT );
+
+    mBackgroundMapEnd.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_POSITION, Vector2( -0.5, -0.5 ) );
+    mBackgroundMapEnd.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_POSITION, Vector2( 0.5, 0.5 ) );
+    mBackgroundMapEnd.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR, mNormalColor );
+    mBackgroundMapEnd.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR, mNormalColor );
+    mBackgroundMapEnd.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_CENTER, Vector2( 0.0f, 0.0f ) );
+    mBackgroundMapEnd.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_AMOUNT, 0.0f );
+    mBackgroundMapEnd.Insert( Toolkit::DevelAnimatedGradientVisual::Property::OFFSET, BuildMap( 0.0f, 2.0f, 0, mLoadingTime, 0.0f, -1, 0.0f, 0, 0 ) );
+
+    mColorAnimationEndStart = *( BuildMap( mNormalColor, Vector4( 0, 0, 0, 0 ), 1, mDuration, 0.0f, 1, 0.0f, 0, 0 ).GetMap() );
+    mColorAnimationEndEnd = *( BuildMap( mNormalColor, Vector4( 0, 0, 0, 0 ), 1, mDuration, 0.0f, 1, 0.0f, 0, 0 ).GetMap() );
+  }
+
+  // Setup background visual property during card change
+  void InitMapMove()
+  {
+    mBackgroundMapMove.Clear();
+    mBackgroundMapMove.Insert( Visual::Property::TYPE, DevelVisual::ANIMATED_GRADIENT);
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::SPREAD_TYPE, Toolkit::DevelAnimatedGradientVisual::SpreadType::CLAMP);
+
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_POSITION, Vector2( -0.5, 0.0 ) );
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_POSITION, Vector2( 0.5, 0.0 ) );
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR, mNormalStartColor );
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR, mNormalEndColor );
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_CENTER, Vector2( 0.0f, 0.0f ) );
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_AMOUNT, 0.0f );
+    mBackgroundMapMove.Insert( Toolkit::DevelAnimatedGradientVisual::Property::OFFSET, BuildMap( -1.0f, 1.0f, 0, mCardDuration, 0.0f, 1, 0.0f, 0, 2 ) );
+  }
+
+  void InitMap()
+  {
+    InitMapNormal();
+    InitMapStart();
+    InitMapEnd();
+    InitMapMove();
+  }
+
+  // Setup const parameter values
+  void BuildParameter()
+  {
+    mNormalColor = DEFAULT_COLOR;
+    mCardDuration = CARD_MOVE_DURATION;
+    mDuration = CHANGE_DURATION;
+    mLoadingTime = LOADING_ONE_CYCLE_DURATION;
+    mLoadingCount = LOADING_CYCLE_CNT;
+    mLoadingCountScale = LOADING_CYCLE_DT;
+
+    mNormalStartColor = mNormalColor;
+    mNormalEndColor = mNormalColor;
+  }
+
+  void BuildAnimation()
+  {
+    InitMap();
+  }
+
+  void SetupCards()
+  {
+    mCards.Init( mStage );
+    for( int k = 0; k < CARD_NUM; k++ )
+    {
+      mCards[k].TouchSignal().Connect( this, &CardController::OnTouchCards );
+    }
+    mNormalStartColor = mCards.GetColorBackground( mCards.mCurIndex );
+    mNormalEndColor = mCards.GetColorBackground( mCards.mCurIndex );
+  }
+
+  // Create and Add to stage
+  void SetupActors()
+  {
+    mAddButton = ImageView::New();
+    mAddButton.SetImage( BUTTON_ADD_IMAGE );
+    mAddButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mAddButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    mAddButton.SetSize( BUTTON_ADD_SIZE * SCALED_WIDTH );
+    mAddButton.SetPosition( BUTTON_ADD_POSITION * SCALED_WIDTH );
+
+    mLabel1 = TextLabel::New( LABEL_TICKET_STR );
+    mLabel1.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mLabel1.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mLabel1.SetSize( LABEL_TICKET_SIZE * SCALED_WIDTH );
+    mLabel1.SetPosition( LABEL_TICKET_POSITION * SCALED_WIDTH );
+    mLabel1.SetVisible( true );
+    mLabel1.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_TICKET_FONT_COLOR );
+    mLabel1.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_TICKET_FONT_SIZE * FONT_SCALE );
+    mLabel1.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabel1.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mLabel2 = TextLabel::New( LABEL_HOLD_STR );
+    mLabel2.SetParentOrigin( ParentOrigin::CENTER );
+    mLabel2.SetAnchorPoint( AnchorPoint::CENTER );
+    mLabel2.SetSize( LABEL_HOLD_SIZE * SCALED_WIDTH );
+    mLabel2.SetPosition( LABEL_HOLD_POSITION * SCALED_WIDTH );
+    mLabel2.SetVisible( false );
+    mLabel2.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_HOLD_FONT_COLOR );
+    mLabel2.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_HOLD_FONT_SIZE * FONT_SCALE );
+    mLabel2.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabel2.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mLabel3 = TextLabel::New( LABEL_TERMINAL_STR );
+    mLabel3.SetParentOrigin( ParentOrigin::CENTER );
+    mLabel3.SetAnchorPoint( AnchorPoint::CENTER );
+    mLabel3.SetSize( LABEL_TERMINAL_SIZE * SCALED_WIDTH );
+    mLabel3.SetPosition( LABEL_TERMINAL_POSITION * SCALED_WIDTH );
+    mLabel3.SetVisible( false );
+    mLabel3.SetProperty( TextLabel::Property::TEXT_COLOR, LABEL_TERMINAL_FONT_COLOR );
+    mLabel3.SetProperty( TextLabel::Property::POINT_SIZE, LABEL_TERMINAL_FONT_SIZE * FONT_SCALE );
+    mLabel3.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabel3.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    mStage.Add( mAddButton );
+    mStage.Add( mLabel1 );
+    mStage.Add( mLabel2 );
+    mStage.Add( mLabel3 );
+  }
+
+  void SetupAnimation()
+  {
+    mMoveFront = Animation::New( mDuration );
+    mMoveBack = Animation::New( mDuration );
+  }
+
+  // Run animations when 'index' card active
+  void RunAnimation(int index)
+  {
+    //set animated background color here
+    mColorAnimationStartStart[DevelAnimatedGradientVisual::AnimationParameter::Property::START] = mNormalStartColor;
+    mColorAnimationStartEnd[DevelAnimatedGradientVisual::AnimationParameter::Property::START] = mNormalStartColor;
+    mColorAnimationEndStart[DevelAnimatedGradientVisual::AnimationParameter::Property::START] = mNormalStartColor;
+    mColorAnimationEndEnd[DevelAnimatedGradientVisual::AnimationParameter::Property::START] = mNormalStartColor;
+
+    mColorAnimationStartStart[DevelAnimatedGradientVisual::AnimationParameter::Property::TARGET] = mCards.GetColorStart( index );
+    mColorAnimationStartEnd[DevelAnimatedGradientVisual::AnimationParameter::Property::TARGET] = mCards.GetColorEnd( index );
+    mColorAnimationEndStart[DevelAnimatedGradientVisual::AnimationParameter::Property::TARGET] = mCards.GetColorStart( index );
+    mColorAnimationEndEnd[DevelAnimatedGradientVisual::AnimationParameter::Property::TARGET] = mCards.GetColorEnd( index );
+
+    mBackgroundMapStart[Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR] = mColorAnimationStartStart;
+    mBackgroundMapStart[Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR] = mColorAnimationStartEnd;
+    mBackgroundMapEnd[Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR] = mColorAnimationEndStart;
+    mBackgroundMapEnd[Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR] = mColorAnimationEndEnd;
+
+    if( index == 1 )
+    {
+      // Rotate background gradient
+      mBackgroundMapStart[Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_AMOUNT] = BuildMap( 0.0f, Math::PI * 2.0f, 0, mLoadingTime, 0.0f, -1, 0.0f, 0, 0 );
+    }
+    else if( index == 2 )
+    {
+      // Rotate background gradient more slow
+      mBackgroundMapStart[Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_AMOUNT] = BuildMap( 0.0f, Math::PI * 2.0f, 0, mLoadingTime * 2.0, 0.0f, -1, 0.0f, 0, 0 );
+    }
+    else
+    {
+      mBackgroundMapStart[Toolkit::DevelAnimatedGradientVisual::Property::ROTATE_AMOUNT] = 0.0f;
+    }
+
+    mBackground.SetProperty( Control::Property::BACKGROUND, mBackgroundMapStart );
+
+    mTickCount = 0;
+    mBackgroundChanger = Timer::New( mLoadingTime * 1000.0f / mLoadingCountScale );
+    mBackgroundChanger.TickSignal().Connect( this, &CardController::OnTickBackground );
+    mBackgroundChanger.Start();
+
+    mMoveFront.AnimateTo( Property( mCards[index], Actor::Property::SIZE_WIDTH ), CARD_SIZE_BIG.x * SCALED_WIDTH );
+    mMoveFront.AnimateTo( Property( mCards[index], Actor::Property::SIZE_HEIGHT ), CARD_SIZE_BIG.y * SCALED_HEIGHT );
+    mMoveFront.AnimateTo( Property( mCards[index], Actor::Property::POSITION_Y ), CARD_BIG_OFFSET.y * SCALED_HEIGHT );
+    mMoveBack.AnimateTo( Property( mCards[index], Actor::Property::SIZE_WIDTH ), CARD_SIZE.x * SCALED_WIDTH );
+    mMoveBack.AnimateTo( Property( mCards[index], Actor::Property::SIZE_HEIGHT ), CARD_SIZE.y * SCALED_HEIGHT );
+    mMoveBack.AnimateTo( Property( mCards[index], Actor::Property::POSITION_Y ), CARD_OFFSET.y * SCALED_HEIGHT );
+    for( int i = 0; i < index; i++ )
+    {
+      mMoveFront.AnimateBy( Property( mCards[i], Actor::Property::POSITION_X ), -CARD_MOVE_DIST * SCALED_WIDTH );
+      mMoveBack.AnimateBy( Property( mCards[i], Actor::Property::POSITION_X ), CARD_MOVE_DIST * SCALED_WIDTH );
+    }
+    for( int i = index + 1; i < CARD_NUM; i++ )
+    {
+      mMoveFront.AnimateBy( Property( mCards[i], Actor::Property::POSITION_X ), CARD_MOVE_DIST * SCALED_WIDTH );
+      mMoveBack.AnimateBy( Property( mCards[i], Actor::Property::POSITION_X ), -CARD_MOVE_DIST * SCALED_WIDTH );
+    }
+    mMoveFront.AnimateTo( Property( mAddButton, Actor::Property::POSITION_Y ), BUTTON_ADD_SIZE.y * SCALED_HEIGHT );
+    mMoveBack.AnimateTo( Property( mAddButton, Actor::Property::POSITION_Y ), 0.f * SCALED_HEIGHT );
+
+    mMoveFront.AnimateTo( Property( mLabel1, Actor::Property::VISIBLE), false );
+    mMoveFront.AnimateTo( Property( mLabel2, Actor::Property::VISIBLE), true );
+    mMoveFront.AnimateTo( Property( mLabel3, Actor::Property::VISIBLE), true );
+    mMoveBack.AnimateTo( Property( mLabel1, Actor::Property::VISIBLE), true );
+    mMoveBack.AnimateTo( Property( mLabel2, Actor::Property::VISIBLE), false );
+    mMoveBack.AnimateTo( Property( mLabel3, Actor::Property::VISIBLE), false );
+
+    mMoveFront.Play();
+  }
+  bool OnTickBackground()
+  {
+    mTickCount++;
+    if( mCancelSignal || mTickCount >= mLoadingCount * mLoadingCountScale )
+    {
+      if( mCards.mCurState == 1 )
+      {
+        mCards.mCurState = 2;
+        mBackground.SetProperty( Control::Property::BACKGROUND, mBackgroundMapEnd );
+        mMoveBack.Play();
+        mBackgroundChanger.SetInterval( mDuration * 1000.0f );
+        return true;
+      }
+      else
+      {
+        Reset();
+        return false;
+      }
+    }
+    return true;
+  }
+  void MoveRight()
+  {
+    if( mCards.MoveRight( mCardDuration ) )
+    {
+      // Set smooth background color change here
+      mNormalEndColor = mCards.GetColorBackground( mCards.mCurIndex );
+      mBackgroundMapMove[Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR] = mNormalEndColor;
+      mBackgroundMapMove[Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR] = mNormalStartColor;
+
+      (*mBackgroundMapMove[Toolkit::DevelAnimatedGradientVisual::Property::OFFSET].GetMap())[DevelAnimatedGradientVisual::AnimationParameter::Property::DIRECTION] = Property::Value( DevelAnimatedGradientVisual::AnimationParameter::DirectionType::BACKWARD );
+
+      mBackground.SetProperty( Control::Property::BACKGROUND, mBackgroundMapMove );
+    }
+  }
+  void MoveLeft()
+  {
+    if( mCards.MoveLeft( mCardDuration ) )
+    {
+      //Set smooth background color change here
+      mNormalEndColor = mCards.GetColorBackground( mCards.mCurIndex );
+      mBackgroundMapMove[Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR] = mNormalStartColor;
+      mBackgroundMapMove[Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR] = mNormalEndColor;
+
+      (*mBackgroundMapMove[Toolkit::DevelAnimatedGradientVisual::Property::OFFSET].GetMap())[DevelAnimatedGradientVisual::AnimationParameter::Property::DIRECTION] = Property::Value( DevelAnimatedGradientVisual::AnimationParameter::DirectionType::FORWARD );
+
+      mBackground.SetProperty( Control::Property::BACKGROUND, mBackgroundMapMove );
+    }
+  }
+
+  void Reset()
+  {
+    mCards.mCurState = 0;
+    mCancelSignal = false;
+    mMoveFront.Clear();
+    mMoveBack.Clear();
+
+    mNormalStartColor = mNormalEndColor;
+    mBackgroundNormalMap[Toolkit::DevelAnimatedGradientVisual::Property::START_COLOR] = mNormalStartColor;
+    mBackgroundNormalMap[Toolkit::DevelAnimatedGradientVisual::Property::END_COLOR] = mNormalEndColor;
+    mBackground.SetProperty(Control::Property::BACKGROUND, mBackgroundNormalMap);
+  }
+
+private:
+  Application&  mApplication;
+  Stage mStage;
+
+  CardManager mCards;
+
+  Control mBackground;
+
+  ImageView mAddButton;
+  TextLabel mLabel1;
+  TextLabel mLabel2;
+  TextLabel mLabel3;
+
+  Timer mBackgroundChanger;
+  Timer mCardChanger;
+  Timer mTempTimer;
+
+  Animation mMoveFront;
+  Animation mMoveBack;
+
+  // Property for background animated gradient visual
+  Property::Map mBackgroundNormalMap;
+  Property::Map mBackgroundMapStart;
+  Property::Map mBackgroundMapEnd;
+  Property::Map mBackgroundMapMove;
+
+  // Property for animation of color in animated gradient visual
+  Property::Map mColorAnimationStartStart;
+  Property::Map mColorAnimationStartEnd;
+  Property::Map mColorAnimationEndStart;
+  Property::Map mColorAnimationEndEnd;
+
+  Vector4 mNormalColor;
+  Vector4 mNormalStartColor;
+  Vector4 mNormalEndColor;
+
+  Vector2 mFirstTouchPos;
+  Vector2 mLastTouchPos;
+
+  float mCardDuration;
+  float mDuration;
+  float mLoadingTime;
+  int mLoadingCount;
+  int mLoadingCountScale;
+  int mTickCount;
+
+  bool mCancelSignal;
+  bool mIsTouchedActor;
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application application = Application::New( &argc, &argv );
+
+  CardController test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/animated-images/animated-images-example.cpp b/examples/animated-images/animated-images-example.cpp
new file mode 100644 (file)
index 0000000..3d83326
--- /dev/null
@@ -0,0 +1,387 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali-toolkit/devel-api/visuals/animated-image-visual-actions-devel.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char * const PLAY_ICON_UNSELECTED( DEMO_IMAGE_DIR "icon-play.png" );
+const char * const PLAY_ICON_SELECTED( DEMO_IMAGE_DIR "icon-play-selected.png" );
+
+const unsigned int ANIMATED_IMAGE_COUNT = 2;
+
+const char * ANIMATED_GIF_URLS[ ANIMATED_IMAGE_COUNT ] =
+{
+  DEMO_IMAGE_DIR "dog-anim.gif",
+  DEMO_IMAGE_DIR "dali-logo-anim.gif"
+};
+
+const char * ANIMATED_ARRAY_URL_FORMATS[ ANIMATED_IMAGE_COUNT ] =
+{
+  DEMO_IMAGE_DIR "dog-anim-%03d.png",       // Images are named dog-anim-001.png, dog-anim-002.png, etc.
+  DEMO_IMAGE_DIR "dali-logo-anim-%03d.png"  // Images are named dali-logo-anim-001.png, dali-logo-anim-002.png, etc.
+};
+
+int ANIMATED_ARRAY_NUMBER_OF_FRAMES[ ANIMATED_IMAGE_COUNT ] =
+{
+  8,
+  15
+};
+
+const char * GIF_RADIO_BUTTON_NAME( "Gif" );
+const char * ARRAY_RADIO_BUTTON_NAME( "Array" );
+
+/// Structure to specify the layout information for the animated images views.
+struct ImageLayoutInfo
+{
+  Vector3 anchorPoint;
+  Vector3 parentOrigin;
+  float yPosition;
+};
+
+ImageLayoutInfo IMAGE_LAYOUT_INFO[ ANIMATED_IMAGE_COUNT ] =
+{
+  { AnchorPoint::BOTTOM_CENTER, ParentOrigin::CENTER, -80.0f },
+  { AnchorPoint::TOP_CENTER,    ParentOrigin::CENTER,  80.0f }
+};
+
+} // unnamed namespace
+
+/**
+ * @brief This demonstrates how to display and control Animated Images.
+ *
+ * - It displays two animated images, an animated dog and an animated DALi logo.
+ * - The images are loaded paused, a play button is overlayed on top of the images to play the animated image.
+ * - Radio buttons at the bottom allow the user to change between Animated GIFs and a collection of Image Arrays.
+ */
+class AnimatedImageController : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in]  application  A reference to the Application class
+   */
+  AnimatedImageController( Application& application )
+  : mApplication( application ),
+    mImageType( ImageType::GIF )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &AnimatedImageController::Create );
+  }
+
+private:
+
+  /**
+   * @brief The image types supported by the application.
+   */
+  enum class ImageType
+  {
+    GIF,          ///< Displays Animated GIF Files.
+    IMAGE_ARRAY   ///< Displays an array of URLs that are used as an animated image.
+  };
+
+  /**
+   * @brief Called to initialise the application content.
+   * @param[in]  application  A reference to the Application class
+   */
+  void Create( Application& application )
+  {
+    // Set the stage background color and connect to the stage's key signal to allow Back and Escape to exit.
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    stage.KeyEventSignal().Connect( this, &AnimatedImageController::OnKeyEvent );
+
+    // Create the animated image-views
+    CreateAnimatedImageViews();
+
+    // Create radio buttons to change between GIF images and Image Arrays
+    CreateRadioButtonLayout();
+
+    // Create a tap gesture detector to use to pause the animated images
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.DetectedSignal().Connect( this, &AnimatedImageController::OnTap );
+  }
+
+  /**
+   * @brief Creates and lays out radio buttons to allow changing between the different image types.
+   */
+  void CreateRadioButtonLayout()
+  {
+    mGifButton = CreateRadioButton( GIF_RADIO_BUTTON_NAME, true );
+    mArrayButton = CreateRadioButton( ARRAY_RADIO_BUTTON_NAME, false );
+
+    Toolkit::TableView radioButtonLayout = Toolkit::TableView::New( 1, 2 );
+    radioButtonLayout.SetName( "RadioButtonsLayout" );
+    radioButtonLayout.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+    radioButtonLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    radioButtonLayout.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    radioButtonLayout.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    radioButtonLayout.SetFitHeight( 0 );
+    radioButtonLayout.AddChild( mGifButton, TableView::CellPosition( 0, 0 ) );
+    radioButtonLayout.AddChild( mArrayButton, TableView::CellPosition( 0, 1 ) );
+    radioButtonLayout.SetCellAlignment( TableView::CellPosition( 0, 0 ),
+                                        HorizontalAlignment::CENTER,
+                                        VerticalAlignment::CENTER );
+    radioButtonLayout.SetCellAlignment( TableView::CellPosition( 0, 1 ),
+                                        HorizontalAlignment::CENTER,
+                                        VerticalAlignment::CENTER );
+    radioButtonLayout.SetY( -10.0f );
+
+    Stage::GetCurrent().Add( radioButtonLayout );
+  }
+
+  /**
+   * @brief Creates a radio button.
+   * @param[in]  name      The name of the button
+   * @param[in]  selected  Whether the button is selected
+   * @return The created radio-button
+   */
+  RadioButton CreateRadioButton( const char * const name, bool selected )
+  {
+    RadioButton radioButton = Toolkit::RadioButton::New( name );
+    radioButton.SetProperty( Button::Property::SELECTED, selected );
+    radioButton.ClickedSignal().Connect( this, &AnimatedImageController::OnRadioButtonClicked );
+    return radioButton;
+  }
+
+  /**
+   * @brief Creates the required animated image views.
+   */
+  void CreateAnimatedImageViews()
+  {
+    for( unsigned int index = 0; index < ANIMATED_IMAGE_COUNT; ++index )
+    {
+      Stage stage = Stage::GetCurrent();
+
+      Control& control = ( index == 0 ) ? mActorDog : mActorLogo;
+      if( control )
+      {
+        // Remove the previous control from the stage, it's resources (and children) will be deleted automatically
+        control.Unparent();
+      }
+
+      // Create and lay out the image view according to the index
+      control = Toolkit::ImageView::New();
+      control.SetProperty( Toolkit::ImageView::Property::IMAGE, SetupViewProperties( mImageType, index ) );
+      control.SetAnchorPoint( IMAGE_LAYOUT_INFO[ index ].anchorPoint );
+      control.SetParentOrigin( IMAGE_LAYOUT_INFO[ index ].parentOrigin );
+      control.SetY( IMAGE_LAYOUT_INFO[ index ].yPosition );
+
+      // We do not want the animated image playing when it's added to the stage.
+      PauseAnimatedImage( control );
+
+      stage.Add( control );
+    }
+  }
+
+  /**
+   * @brief Plays the passed in animated image.
+   * @details Also sets up the control so it can be paused when tapped.
+   * @param[in]  control  The animated image to play
+   */
+  void PlayAnimatedImage( Control& control )
+  {
+    DevelControl::DoAction( control,
+                            ImageView::Property::IMAGE,
+                            DevelAnimatedImageVisual::Action::PLAY,
+                            Property::Value() );
+
+    if( mTapDetector )
+    {
+      mTapDetector.Attach( control );
+    }
+  }
+
+  /**
+   * @brief Pauses the animated image.
+   * @details Adds a Play button to the control and sets both up so that the animated image can be played again when
+   *          the button is tapped.
+   * @param[in]  control  The animated image to pause
+   */
+  void PauseAnimatedImage( Control& control )
+  {
+    DevelControl::DoAction( control,
+                            ImageView::Property::IMAGE,
+                            DevelAnimatedImageVisual::Action::PAUSE,
+                            Property::Value() );
+
+    // Create a push button, and add it as child of the control
+    Toolkit::PushButton animateButton = Toolkit::PushButton::New();
+    animateButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, PLAY_ICON_UNSELECTED );
+    animateButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, PLAY_ICON_SELECTED );
+    animateButton.SetParentOrigin( ParentOrigin::CENTER );
+    animateButton.SetAnchorPoint( AnchorPoint::CENTER );
+    animateButton.ClickedSignal().Connect( this, &AnimatedImageController::OnPlayButtonClicked );
+    control.Add( animateButton );
+
+    if( mTapDetector )
+    {
+      mTapDetector.Detach( control );
+    }
+  }
+
+  /**
+   * @brief Called when the play button is clicked.
+   * @details This method is used to start playing the parent image-view of the clicked button.
+   * @param[in]  button  The button that has been clicked
+   * @return We return true to state that we handled the event
+   */
+  bool OnPlayButtonClicked( Toolkit::Button button )
+  {
+    Control control = ( button.GetParent() == mActorDog ) ? mActorDog : mActorLogo;
+    PlayAnimatedImage( control );
+
+    button.Unparent();
+
+    return true;
+  }
+
+  /**
+   * @brief Called when the animated image views are tapped.
+   * @details This method is used to pause the tapped animated image view.
+   * @param[in]  actor  The actor that's tapped
+   */
+  void OnTap( Dali::Actor actor, const Dali::TapGesture& /* tap */ )
+  {
+    Control control = ( actor == mActorDog ) ? mActorDog : mActorLogo;
+    PauseAnimatedImage( control );
+  }
+
+  /**
+   * @brief Called when a radio button is clicked.
+   * @details This method is used to change between the different image types.
+   * @param[in]  button  The clicked radio-button
+   * @return We return true to state that we handled the event.
+   *
+   */
+  bool OnRadioButtonClicked( Toolkit::Button button )
+  {
+    mImageType = ( button == mGifButton ) ? ImageType::GIF : ImageType::IMAGE_ARRAY;
+
+    CreateAnimatedImageViews();
+    return true;
+  }
+
+  /**
+   * @brief Called when any key event is received.
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * @brief Sets up the view properties appropriately.
+   * @param[in]  type   The Image type
+   * @param[in]  index  The index
+   * @return The set up property value
+   */
+  Property::Value SetupViewProperties( ImageType type, int index )
+  {
+    Property::Map map;
+
+    AddUrl( map, type, index );
+    AddCache( map, type, index );
+    return Property::Value(map);
+  }
+
+  /**
+   * @brief Adds the URL to the given map appropriately.
+   * @param[in/out]  map    The map to add the URL details to
+   * @param[in]      type   The Image type
+   * @param[in]      index  The index
+   */
+  void AddUrl( Property::Map& map, ImageType type, int index )
+  {
+    if( type == ImageType::GIF )
+    {
+      map.Add( Toolkit::ImageVisual::Property::URL, Property::Value( ANIMATED_GIF_URLS[ index ] ) );
+    }
+    else
+    {
+      Property::Array frameUrls;
+      for( int i = 1; i <= ANIMATED_ARRAY_NUMBER_OF_FRAMES[ index ]; ++i )
+      {
+        char* buffer;
+        int len = asprintf( &buffer, ANIMATED_ARRAY_URL_FORMATS[ index ], i );
+        if( len > 0 )
+        {
+          std::string frameUrl( buffer );
+          free( buffer );
+          frameUrls.Add( Property::Value( frameUrl ) );
+        }
+      }
+      map.Add( Toolkit::ImageVisual::Property::URL, Property::Value( frameUrls ) );
+    }
+  }
+
+  /**
+   * @brief Adds the cache properties, if required to the map.
+   * @param[in/out]  map    The map to add the URL details to
+   * @param[in]      type   The Image type
+   * @param[in]      index  The index
+   */
+  void AddCache( Property::Map& map, ImageType type, int index )
+  {
+    if( type == ImageType::IMAGE_ARRAY )
+    {
+      map
+        .Add( Toolkit::ImageVisual::Property::BATCH_SIZE, 4 )
+        .Add( Toolkit::ImageVisual::Property::CACHE_SIZE, 10 )
+        .Add( Toolkit::ImageVisual::Property::FRAME_DELAY, 150 );
+    }
+  }
+
+private:
+  Application&  mApplication; ///< A reference to the application.
+
+  Toolkit::ImageView mActorDog;  ///< The current dog image view.
+  Toolkit::ImageView mActorLogo; ///< The current logo image view.
+
+  Toolkit::RadioButton mGifButton;   ///< The Gif Radio Button.
+  Toolkit::RadioButton mArrayButton; ///< The Array Radio Button.
+
+  TapGestureDetector mTapDetector; ///< The tap detector.
+
+  ImageType mImageType; ///< The current Image type.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  AnimatedImageController test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/animated-shapes/animated-shapes-example.cpp b/examples/animated-shapes/animated-shapes-example.cpp
new file mode 100644 (file)
index 0000000..b4b8a39
--- /dev/null
@@ -0,0 +1,469 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include "shared/view.h"
+
+#include <sstream>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char* APPLICATION_TITLE("Animated Shapes");
+
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER
+(
+  attribute mediump vec3 aCoefficient;
+  uniform mediump mat4 uMvpMatrix;
+  uniform mediump vec3 uPosition[MAX_POINT_COUNT];
+  varying lowp vec2 vCoefficient;
+  void main()
+  {
+    int vertexId = int(aCoefficient.z);
+    gl_Position = uMvpMatrix * vec4(uPosition[vertexId], 1.0);
+
+    vCoefficient = aCoefficient.xy;
+  }
+);
+
+// Fragment shader.
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER
+(
+  uniform lowp vec4 uColor;
+  varying lowp vec2 vCoefficient;
+  void main()
+  {
+    lowp float C = (vCoefficient.x*vCoefficient.x-vCoefficient.y);
+    lowp float Cdx = dFdx(C);
+    lowp float Cdy = dFdy(C);
+
+    lowp float distance = float(C / sqrt(Cdx*Cdx + Cdy*Cdy));
+    lowp float alpha = 0.5 - distance;
+    gl_FragColor = vec4( uColor.rgb, uColor.a * alpha );
+  }
+);
+
+Shader CreateShader( unsigned int pointCount )
+{
+  std::ostringstream vertexShader;
+  vertexShader << "#define MAX_POINT_COUNT "<< pointCount << "\n"<<VERTEX_SHADER;
+
+  std::ostringstream fragmentShader;
+  fragmentShader << "#extension GL_OES_standard_derivatives : enable "<< "\n"<<FRAGMENT_SHADER;
+
+  Shader shader = Shader::New( vertexShader.str(), fragmentShader.str() );
+  for( unsigned int i(0); i<pointCount; ++i )
+  {
+    std::ostringstream propertyName;
+    propertyName << "uPosition["<<i<<"]";
+    shader.RegisterProperty(propertyName.str(),Vector3(0.0f,0.0f,0.0f) );
+  }
+
+  return shader;
+}
+
+} //unnamed namespace
+
+// This example shows resolution independent rendering and animation of curves using the gpu.
+//
+class AnimatedShapesExample : public ConnectionTracker
+{
+public:
+
+  AnimatedShapesExample( Application& application )
+: mApplication( application )
+{
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &AnimatedShapesExample::Create );
+}
+
+  ~AnimatedShapesExample()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    Stage stage = Stage::GetCurrent();
+
+    // Creates the background gradient
+    Toolkit::Control background = Dali::Toolkit::Control::New();
+    background.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+    background.SetParentOrigin( Dali::ParentOrigin::CENTER );
+    background.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+    Dali::Property::Map map;
+    map.Insert( Toolkit::Visual::Property::TYPE,  Visual::GRADIENT );
+    Property::Array stopOffsets;
+    stopOffsets.PushBack( 0.0f );
+    stopOffsets.PushBack( 1.0f );
+    map.Insert( GradientVisual::Property::STOP_OFFSET, stopOffsets );
+    Property::Array stopColors;
+    stopColors.PushBack( Vector4( 0.0f,0.0f,1.0f,1.0f ) );
+    stopColors.PushBack( Vector4( 1.0f,1.0f,1.0f,1.0f ) );
+    map.Insert( GradientVisual::Property::STOP_COLOR, stopColors );
+    Vector2 halfStageSize = Stage::GetCurrent().GetSize()*0.5f;
+    map.Insert( GradientVisual::Property::START_POSITION,  Vector2(0.0f,-halfStageSize.y) );
+    map.Insert( GradientVisual::Property::END_POSITION,  Vector2(0.0f,halfStageSize.y)  );
+    map.Insert( GradientVisual::Property::UNITS, GradientVisual::Units::USER_SPACE );
+    background.SetProperty( Dali::Toolkit::Control::Property::BACKGROUND, map );
+    stage.Add( background );
+
+    // Create a TextLabel for the application title.
+    Toolkit::TextLabel label = Toolkit::TextLabel::New( APPLICATION_TITLE );
+    label.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    label.SetParentOrigin( Vector3( 0.5f, 0.0f, 0.5f ) );
+    label.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) );
+    stage.Add( label );
+
+    CreateTriangleMorph(Vector3( stage.GetSize().x*0.5f, stage.GetSize().y*0.15f, 0.0f), 100.0f );
+    CreateCircleMorph( Vector3( stage.GetSize().x*0.5f, stage.GetSize().y*0.5f, 0.0f), 55.0f );
+    CreateQuadMorph( Vector3( stage.GetSize().x*0.5f, stage.GetSize().y*0.85f, 0.0f), 60.0f );
+
+    stage.KeyEventSignal().Connect( this, &AnimatedShapesExample::OnKeyEvent );
+  }
+
+  void CreateTriangleMorph( Vector3 center, float side )
+  {
+    float h = ( side *0.5f ) / 0.866f;
+
+    Vector3 v0 = Vector3( -h, h, 0.0f );
+    Vector3 v1 = Vector3( 0.0f, -side * 0.366f, 0.0f );
+    Vector3 v2 = Vector3( h, h, 0.0f );
+
+    Vector3 v3 = v0 + ( ( v1 - v0 ) * 0.5f );
+    Vector3 v4 = v1 + ( ( v2 - v1 ) * 0.5f );
+    Vector3 v5 = v2 + ( ( v0 - v2 ) * 0.5f );
+
+    Shader shader = CreateShader( 12 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[0]"), v0 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[1]"), v3 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[2]"), v1 );
+
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[3]"), v1 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[4]"), v4 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[5]"), v2 );
+
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[6]"), v2 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[7]"), v5 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[8]"), v0 );
+
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[9]"),  v0 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[10]"), v1 );
+    shader.SetProperty( shader.GetPropertyIndex( "uPosition[11]"), v2 );
+
+
+    //Create geometry
+    static const Vector3 vertexData[] = { Dali::Vector3( 0.0f, 0.0f, 0.0f ),
+                                          Dali::Vector3( 0.5f, 0.0f, 1.0f ),
+                                          Dali::Vector3( 1.0f, 1.0f, 2.0f ),
+
+                                          Dali::Vector3( 0.0f, 0.0f, 3.0f ),
+                                          Dali::Vector3( 0.5f, 0.0f, 4.0f ),
+                                          Dali::Vector3( 1.0f, 1.0f, 5.0f ),
+
+                                          Dali::Vector3( 0.0f, 0.0f, 6.0f ),
+                                          Dali::Vector3( 0.5f, 0.0f, 7.0f ),
+                                          Dali::Vector3( 1.0f, 1.0f, 8.0f ),
+
+                                          Dali::Vector3( 0.0f, 1.0f, 9.0f ),
+                                          Dali::Vector3( 0.0f, 1.0f, 10.0f ),
+                                          Dali::Vector3( 0.0f, 1.0f, 11.0f )
+    };
+
+    unsigned short indexData[] = { 0, 2, 1, 3, 5, 4, 6, 8, 7, 9, 11, 10 };
+
+    //Create a vertex buffer for vertex positions and texture coordinates
+    Dali::Property::Map vertexFormat;
+    vertexFormat["aCoefficient"] = Dali::Property::VECTOR3;
+    Dali::PropertyBuffer vertexBuffer = Dali::PropertyBuffer::New( vertexFormat );
+    vertexBuffer.SetData( vertexData, sizeof(vertexData)/sizeof(vertexData[0]));
+
+    //Create the geometry
+    Dali::Geometry geometry = Dali::Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    geometry.SetIndexBuffer( indexData, sizeof(indexData)/sizeof(indexData[0]) );
+
+    Renderer renderer = Renderer::New( geometry, shader );
+    renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::ON );
+
+    Actor actor = Actor::New();
+    actor.SetSize( 400.0f, 400.0f );
+    actor.SetPosition( center );
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.SetColor(Vector4(1.0f,1.0f,0.0f,1.0f) );
+    actor.AddRenderer( renderer );
+
+    Stage stage = Stage::GetCurrent();
+    stage.Add( actor );
+
+    //Animation
+    Animation animation = Animation::New(5.0f);
+    KeyFrames k0 = KeyFrames::New();
+    k0.Add( 0.0f,v3  );
+    k0.Add( 0.5f, v3 + Vector3(-150.0f,-150.0f,0.0f));
+    k0.Add( 1.0f, v3 );
+    animation.AnimateBetween( Property(shader, "uPosition[1]"),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f,v4  );
+    k0.Add( 0.5f, v4 + Vector3(150.0f,-150.0f,0.0f));
+    k0.Add( 1.0f, v4 );
+    animation.AnimateBetween( Property(shader,"uPosition[4]"),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f,v5  );
+    k0.Add( 0.5f, v5 + Vector3(0.0,150.0f,0.0f));
+    k0.Add( 1.0f, v5 );
+    animation.AnimateBetween( Property(shader, "uPosition[7]"),k0, AlphaFunction::EASE_IN_OUT_SINE );
+    animation.SetLooping( true );
+    animation.Play();
+  }
+
+  void CreateCircleMorph( Vector3 center, float radius )
+  {
+    Shader shader = CreateShader( 16 );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[0]"), Vector3( -radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[1]"), Vector3( 0.0f, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[2]"), Vector3( radius, -radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[3]"), Vector3( radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[4]"), Vector3( radius, 0.0f, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[5]"), Vector3( radius, radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[6]"), Vector3( radius, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[7]"), Vector3( 0.0f, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[8]"), Vector3( -radius, radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[9]"),  Vector3( -radius, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[10]"), Vector3( -radius, 0.0f, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[11]"), Vector3( -radius, -radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[12]"), Vector3( -radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[13]"),  Vector3( radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[14]"), Vector3( radius, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[15]"), Vector3( -radius, radius, 0.0f ) );
+
+    //shader.SetProperty( shader.GetPropertyIndex("uLineWidth"), 2.0f );
+
+    static const Vector3 vertexData[] = { Vector3( 0.0f, 0.0f, 0.0f ),
+                                          Vector3( 0.5f, 0.0f, 1.0f ),
+                                          Vector3( 1.0f, 1.0f, 2.0f ),
+                                          Vector3( 0.0f, 0.0f, 3.0f ),
+                                          Vector3( 0.5f, 0.0f, 4.0f ),
+                                          Vector3( 1.0f, 1.0f, 5.0f ),
+                                          Vector3( 0.0f, 0.0f, 6.0f ),
+                                          Vector3( 0.5f, 0.0f, 7.0f ),
+                                          Vector3( 1.0f, 1.0f, 8.0f ),
+                                          Vector3( 0.0f, 0.0f, 9.0f ),
+                                          Vector3( 0.5f, 0.0f, 10.0f ),
+                                          Vector3( 1.0f, 1.0f, 11.0f ),
+                                          Vector3( 0.0f, 1.0f, 12.0f ),
+                                          Vector3( 0.0f, 1.0f, 13.0f ),
+                                          Vector3( 0.0f, 1.0f, 14.0f ),
+                                          Vector3( 0.0f, 1.0f, 15.0f )};
+
+    short unsigned int indexData[] = { 0, 2, 1, 3, 5, 4, 6, 8, 7, 9, 11, 10, 12, 13, 14, 12, 14, 15 };
+
+    //Create a vertex buffer for vertex positions and texture coordinates
+    Dali::Property::Map vertexFormat;
+    vertexFormat["aCoefficient"] = Dali::Property::VECTOR3;
+    Dali::PropertyBuffer vertexBuffer = Dali::PropertyBuffer::New( vertexFormat );
+    vertexBuffer.SetData( vertexData, sizeof(vertexData)/sizeof(vertexData[0]));
+
+    //Create the geometry
+    Dali::Geometry geometry = Dali::Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    geometry.SetIndexBuffer( indexData, sizeof(indexData)/sizeof(indexData[0]) );
+
+    Renderer renderer = Renderer::New( geometry, shader );
+    renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::ON );
+
+    Actor actor = Actor::New();
+    actor.SetSize( 400.0f, 400.0f );
+    actor.SetPosition( center );
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.AddRenderer( renderer );
+
+    Stage stage = Stage::GetCurrent();
+    stage.Add( actor );
+
+    //Animation
+    Animation animation = Animation::New(5.0f);
+    KeyFrames k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( 0.0f,-radius*1.85, 0.0f ) );
+    k0.Add( 0.5f, Vector3( -radius*1.85, -radius*3.0f, 0.0f ) );
+    k0.Add( 1.0f, Vector3( 0.0f,-radius*1.85, 0.0f ) );
+    animation.AnimateBetween( Property( shader, shader.GetPropertyIndex("uPosition[1]") ),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( radius*1.85, 0.0f, 0.0f ) );
+    k0.Add( 0.5f, Vector3( radius*3.0f,-radius*1.85, 0.0f ) );
+    k0.Add( 1.0f, Vector3( radius*1.85,0.0f, 0.0f ) );
+    animation.AnimateBetween( Property(shader, shader.GetPropertyIndex("uPosition[4]")),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( 0.0f, radius*1.85, 0.0f ) );
+    k0.Add( 0.5f, Vector3( radius*1.85, radius*3.0f, 0.0f) );
+    k0.Add( 1.0f, Vector3( 0.0f, radius*1.85, 0.0f) );
+    animation.AnimateBetween( Property( shader, shader.GetPropertyIndex("uPosition[7]") ),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( -radius*1.85, 0.0f, 0.0f) );
+    k0.Add( 0.5f, Vector3(-radius*3.0f, radius*1.85, 0.0f) );
+    k0.Add( 1.0f, Vector3( -radius*1.85, 0.0f, 0.0f) );
+    animation.AnimateBetween( Property( shader, shader.GetPropertyIndex("uPosition[10]") ),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    animation.AnimateBy( Property( actor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(-90.0f) ), Vector3::ZAXIS ) );
+    animation.SetLooping( true );
+    animation.Play();
+  }
+
+  void CreateQuadMorph( Vector3 center, float radius )
+  {
+    Shader shader = CreateShader( 16 );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[0]"), Vector3( -radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[1]"), Vector3( 0.0f, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[2]"), Vector3( radius, -radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[3]"), Vector3( radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[4]"), Vector3( radius, 0.0f, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[5]"), Vector3( radius, radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[6]"), Vector3( radius, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[7]"), Vector3( 0.0f, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[8]"), Vector3( -radius, radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[9]"), Vector3( -radius, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[10]"), Vector3( -radius, 0.0f, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[11]"), Vector3( -radius, -radius, 0.0f ) );
+
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[12]"), Vector3( -radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[13]"), Vector3( radius, -radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[14]"), Vector3( radius, radius, 0.0f ) );
+    shader.SetProperty( shader.GetPropertyIndex("uPosition[15]"), Vector3( -radius, radius, 0.0f ) );
+
+    static const Vector3 vertexData[] = { Dali::Vector3( 0.0f, 0.0f, 0.0f ),
+                                          Dali::Vector3( 0.5f, 0.0f, 1.0f ),
+                                          Dali::Vector3( 1.0f, 1.0f, 2.0f ),
+
+                                          Dali::Vector3( 0.0f, 0.0f, 3.0f ),
+                                          Dali::Vector3( 0.5f, 0.0f, 4.0f ),
+                                          Dali::Vector3( 1.0f, 1.0f, 5.0f ),
+
+                                          Dali::Vector3( 0.0f, 0.0f, 6.0f ),
+                                          Dali::Vector3( 0.5f, 0.0f, 7.0f ),
+                                          Dali::Vector3( 1.0f, 1.0f, 8.0f ),
+
+                                          Dali::Vector3( 0.0f, 0.0f, 9.0f ),
+                                          Dali::Vector3( 0.5f, 0.0f, 10.0f ),
+                                          Dali::Vector3( 1.0f, 1.0f, 11.0f ),
+
+                                          Dali::Vector3( 0.0f, 1.0f, 12.0f ),
+                                          Dali::Vector3( 0.0f, 1.0f, 13.0f ),
+                                          Dali::Vector3( 0.0f, 1.0f, 14.0f ),
+                                          Dali::Vector3( 0.0f, 1.0f, 15.0f ) };
+
+    short unsigned int indexData[] = { 0, 2, 1, 3, 5, 4, 6, 8, 7, 9, 11, 10, 12, 15, 14, 12, 14, 13 };
+
+    //Create a vertex buffer for vertex positions and texture coordinates
+    Dali::Property::Map vertexFormat;
+    vertexFormat["aCoefficient"] = Dali::Property::VECTOR3;
+    Dali::PropertyBuffer vertexBuffer = Dali::PropertyBuffer::New( vertexFormat );
+    vertexBuffer.SetData( vertexData, sizeof(vertexData)/sizeof(vertexData[0]));
+
+    //Create the geometry
+    Dali::Geometry geometry = Dali::Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    geometry.SetIndexBuffer( indexData, sizeof(indexData)/sizeof(indexData[0]) );
+
+    Renderer renderer = Renderer::New( geometry, shader );
+    renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::ON );
+
+    Actor actor = Actor::New();
+    actor.SetSize( 400.0f, 400.0f );
+    actor.SetPosition( center );
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.SetColor(Vector4(1.0f,0.0f,0.0f,1.0f) );
+    actor.AddRenderer( renderer );
+
+    Stage stage = Stage::GetCurrent();
+    stage.Add( actor );
+
+    //Animation
+    Animation animation = Animation::New( 5.0f );
+    KeyFrames k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( 0.0f, -radius, 0.0f ) );
+    k0.Add( 0.5f, Vector3( 0.0f, -radius*4.0f, 0.0f ) );
+    k0.Add( 1.0f, Vector3( 0.0f, -radius, 0.0f ) );
+    animation.AnimateBetween( Property(shader, shader.GetPropertyIndex("uPosition[1]")),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( radius, 0.0f, 0.0f ) );
+    k0.Add( 0.5f, Vector3( radius*4.0f, 0.0f, 0.0f ) );
+    k0.Add( 1.0f, Vector3( radius, 0.0f, 0.0f ) );
+    animation.AnimateBetween( Property(shader, shader.GetPropertyIndex("uPosition[4]")),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( 0.0f, radius, 0.0f ) );
+    k0.Add( 0.5f, Vector3( 0.0f, radius*4.0f, 0.0f ) );
+    k0.Add( 1.0f, Vector3( 0.0f, radius, 0.0f ) );
+    animation.AnimateBetween( Property(shader, shader.GetPropertyIndex("uPosition[7]")),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    k0 = KeyFrames::New();
+    k0.Add( 0.0f, Vector3( -radius, 0.0f, 0.0f ) );
+    k0.Add( 0.5f, Vector3( -radius*4.0f,0.0f, 0.0f ) );
+    k0.Add( 1.0f, Vector3( -radius,  0.0f, 0.0f ) );
+    animation.AnimateBetween( Property(shader, shader.GetPropertyIndex("uPosition[10]")),k0, AlphaFunction::EASE_IN_OUT_SINE );
+
+    animation.AnimateBy( Property( actor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(90.0f) ), Vector3::ZAXIS ) );
+    animation.SetLooping( true );
+    animation.Play();
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if( event.state == KeyEvent::Down && (IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ))  )
+    {
+      mApplication.Quit();
+    }
+  }
+
+private:
+  Application&                mApplication;
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  AnimatedShapesExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/animated-vector-images/animated-vector-images-example.cpp b/examples/animated-vector-images/animated-vector-images-example.cpp
new file mode 100644 (file)
index 0000000..4e6656a
--- /dev/null
@@ -0,0 +1,231 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <string>
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali-toolkit/devel-api/visuals/animated-vector-image-visual-actions-devel.h>
+#include <dali-toolkit/devel-api/visuals/animated-vector-image-visual-signals-devel.h>
+#include <dali-toolkit/devel-api/visuals/image-visual-properties-devel.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-gradient.jpg" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* APPLICATION_TITLE( "Animated Vector Images" );
+
+const char* IMAGE_PATH[] = {
+    DEMO_IMAGE_DIR "insta_camera.json",
+    DEMO_IMAGE_DIR "you're_in!.json",
+    DEMO_IMAGE_DIR "jolly_walker.json"
+};
+
+const unsigned int NUMBER_OF_IMAGES = 3;
+
+enum CellPlacement
+{
+  TOP_BUTTON,
+  LOWER_BUTTON,
+  IMAGE,
+  NUMBER_OF_ROWS
+};
+
+unsigned int GetControlIndex( Control control )
+{
+  std::string controlName = control.GetName();
+  unsigned int index = 0;
+
+  if ( controlName != "")
+  {
+    index = std::stoul( controlName );
+  }
+
+  return index;
+}
+
+}  // namespace
+
+// This example shows the usage of AnimatedVectorImageVisual.
+// It doesn't work on Ubuntu because the visual uses the external library to render frames.
+class AnimatedVectorImageViewController: public ConnectionTracker
+{
+ public:
+
+  AnimatedVectorImageViewController( Application& application )
+    : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &AnimatedVectorImageViewController::Create );
+  }
+
+  void Create( Application& application )
+  {
+    // The Init signal is received once (only) during the Application lifetime
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+
+    // Create a table view to show a pair of buttons above each image.
+    mTable = TableView::New( CellPlacement::NUMBER_OF_ROWS, NUMBER_OF_IMAGES );
+    mTable.SetAnchorPoint( AnchorPoint::CENTER );
+    mTable.SetParentOrigin( ParentOrigin::CENTER );
+    mTable.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    Vector3 offset( 0.9f, 0.70f, 0.0f );
+    mTable.SetSizeModeFactor( offset );
+    mTable.SetFitHeight(CellPlacement::TOP_BUTTON);
+    mTable.SetFitHeight(CellPlacement::LOWER_BUTTON);
+    mContentLayer.Add( mTable );
+
+    for( unsigned int x = 0; x < NUMBER_OF_IMAGES; x++ )
+    {
+      mPlayButtons[x] = PushButton::New();
+      mPlayButtons[x].SetProperty( Button::Property::LABEL, "Play" );
+      mPlayButtons[x].SetParentOrigin( ParentOrigin::TOP_CENTER );
+      mPlayButtons[x].SetAnchorPoint( AnchorPoint::TOP_CENTER );
+      mPlayButtons[x].ClickedSignal().Connect( this, &AnimatedVectorImageViewController::OnPlayButtonClicked );
+      mPlayButtons[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      mPlayButtons[x].SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      std::string s = std::to_string(x);
+      mPlayButtons[x].SetName( s );
+      mTable.AddChild( mPlayButtons[x], TableView::CellPosition( CellPlacement::TOP_BUTTON, x )  );
+
+      mStopButtons[x] = PushButton::New();
+      mStopButtons[x].SetProperty( Button::Property::LABEL, "Stop" );
+      mStopButtons[x].SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+      mStopButtons[x].SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+      mStopButtons[x].ClickedSignal().Connect( this, &AnimatedVectorImageViewController::OnStopButtonClicked );
+      mStopButtons[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      mStopButtons[x].SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      mStopButtons[x].SetName( s );
+      mTable.AddChild( mStopButtons[x], TableView::CellPosition( CellPlacement::LOWER_BUTTON, x )  );
+
+      mImageViews[x] = ImageView::New( );
+      Property::Map imagePropertyMap;
+      imagePropertyMap.Insert( Visual::Property::TYPE, Visual::IMAGE );
+      imagePropertyMap.Insert( ImageVisual::Property::URL, IMAGE_PATH[ x ] );
+      imagePropertyMap.Insert( DevelImageVisual::Property::LOOP_COUNT, 3 );
+      mImageViews[x].SetProperty( ImageView::Property::IMAGE, imagePropertyMap );
+
+      mImageViews[x].SetParentOrigin( ParentOrigin::CENTER );
+      mImageViews[x].SetAnchorPoint( AnchorPoint::CENTER );
+      mImageViews[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mImageViews[x].SetName( s );
+
+      DevelControl::VisualEventSignal( mImageViews[x] ).Connect( this, &AnimatedVectorImageViewController::OnVisualEvent );
+
+      mTable.AddChild( mImageViews[x], TableView::CellPosition( CellPlacement::IMAGE, x ) );
+    }
+
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &AnimatedVectorImageViewController::OnKeyEvent);
+  }
+
+private:
+
+  bool OnPlayButtonClicked( Button button )
+  {
+    unsigned int controlIndex = GetControlIndex( button );
+
+    ImageView imageView =  mImageViews[controlIndex];
+
+    Property::Map map = imageView.GetProperty< Property::Map >( ImageView::Property::IMAGE );
+    Property::Value* value = map.Find( DevelImageVisual::Property::PLAY_STATE );
+
+    if( value )
+    {
+      if( value->Get< int >() != static_cast< int >( DevelImageVisual::PlayState::PLAYING ) )
+      {
+        mPlayButtons[controlIndex].SetProperty( Button::Property::LABEL, "Pause" );
+
+        DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::PLAY, Property::Value() );
+      }
+      else
+      {
+        mPlayButtons[controlIndex].SetProperty( Button::Property::LABEL, "Play" );
+
+        DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::PAUSE, Property::Value() );
+      }
+    }
+
+    return true;
+  }
+
+  bool OnStopButtonClicked( Button button )
+  {
+    unsigned int controlIndex = GetControlIndex( button );
+    ImageView imageView =  mImageViews[controlIndex];
+    DevelControl::DoAction( imageView, ImageView::Property::IMAGE, DevelAnimatedVectorImageVisual::Action::STOP, Property::Value() );
+
+    return true;
+  }
+
+  void OnVisualEvent( Control control, Dali::Property::Index visualIndex, Dali::Property::Index signalId )
+  {
+    unsigned int controlIndex = GetControlIndex( control );
+
+    if( visualIndex == ImageView::Property::IMAGE && signalId == DevelAnimatedVectorImageVisual::Signal::ANIMATION_FINISHED )
+    {
+      mPlayButtons[controlIndex].SetProperty( Button::Property::LABEL, "Play" );
+    }
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+
+  Control           mView;                              ///< The View instance.
+  ToolBar           mToolBar;                           ///< The View's Toolbar.
+  Layer             mContentLayer;                      ///< Content layer
+  TableView         mTable;
+  ImageView         mImageViews[ NUMBER_OF_IMAGES ];
+  PushButton        mPlayButtons[ NUMBER_OF_IMAGES ];
+  PushButton        mStopButtons[ NUMBER_OF_IMAGES ];
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  AnimatedVectorImageViewController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/arc-visual/arc-visual-example.cpp b/examples/arc-visual/arc-visual-example.cpp
new file mode 100644 (file)
index 0000000..24ecb42
--- /dev/null
@@ -0,0 +1,135 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visuals/arc-visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visual-factory/transition-data.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const float START_ANGLE_INITIAL_VALUE( 0.0f );
+const float START_ANGLE_TARGET_VALUE( 360.0f );
+const float SWEEP_ANGLE_INITIAL_VALUE( 90.0f );
+const float SWEEP_ANGLE_TARGET_VALUE( 360.0f );
+const float ANIMATION_DURATION( 5.0f );
+
+const Property::Value BACKGROUND
+{
+  { Visual::Property::TYPE, DevelVisual::ARC },
+  { Visual::Property::MIX_COLOR, Color::RED },
+  { DevelArcVisual::Property::START_ANGLE, 0.0f },
+  { DevelArcVisual::Property::SWEEP_ANGLE, 90.0f },
+  { DevelArcVisual::Property::CAP, DevelArcVisual::Cap::ROUND },
+  { DevelArcVisual::Property::THICKNESS, 20.0f }
+};
+
+} // namespace
+
+// This example shows the properties of the arc visual - thickness, startAngle and sweepAngle and animates them.
+//
+class ArcVisualExample : public ConnectionTracker
+{
+public:
+
+  ArcVisualExample( Application& application )
+  : mApplication( application ),
+    mStartAngle( 0.0f ),
+    mSweepAngle( 0.0f )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ArcVisualExample::Create );
+  }
+
+  ~ArcVisualExample() = default;
+
+private:
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    mControl = Control::New();
+    mControl.SetParentOrigin( ParentOrigin::CENTER );
+    mControl.SetSize( 200.0f, 200.0f );
+    mControl.SetProperty( Control::Property::BACKGROUND, BACKGROUND );
+
+    stage.Add( mControl );
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &ArcVisualExample::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &ArcVisualExample::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    if( touch.GetState( 0 ) == PointState::UP )
+    {
+      Property::Array array;
+      array.PushBack( Property::Map().Add( "target", "background" )
+                                     .Add( "property", "startAngle" )
+                                     .Add( "initialValue", START_ANGLE_INITIAL_VALUE )
+                                     .Add( "targetValue", START_ANGLE_TARGET_VALUE )
+                                     .Add( "animator", Property::Map().Add( "duration", ANIMATION_DURATION ) ) );
+      array.PushBack( Property::Map().Add( "target", "background" )
+                                     .Add( "property", "sweepAngle" )
+                                     .Add( "initialValue", SWEEP_ANGLE_INITIAL_VALUE )
+                                     .Add( "targetValue", SWEEP_ANGLE_TARGET_VALUE )
+                                     .Add( "animator", Property::Map().Add( "duration", ANIMATION_DURATION ) ) );
+
+      TransitionData transitionData = TransitionData::New( array );
+      Animation animation = DevelControl::CreateTransition( Toolkit::Internal::GetImplementation( mControl ), transitionData );
+      animation.Play();
+    }
+    return true;
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+  Control mControl;
+  float mStartAngle;
+  float mSweepAngle;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ArcVisualExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/benchmark/benchmark.cpp b/examples/benchmark/benchmark.cpp
new file mode 100644 (file)
index 0000000..cd36e29
--- /dev/null
@@ -0,0 +1,514 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "shared/utility.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+
+namespace
+{
+const char* IMAGE_PATH[] = {
+                            DEMO_IMAGE_DIR "gallery-medium-1.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-2.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-3.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-4.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-5.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-6.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-7.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-8.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-9.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-10.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-11.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-12.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-13.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-14.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-15.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-16.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-17.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-18.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-19.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-20.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-21.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-22.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-23.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-24.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-25.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-26.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-27.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-28.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-29.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-30.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-31.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-32.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-33.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-34.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-35.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-36.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-37.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-38.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-39.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-40.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-41.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-42.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-43.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-44.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-45.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-46.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-47.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-48.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-49.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-50.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-51.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-52.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-53.jpg",
+};
+
+const char* NINEPATCH_IMAGE_PATH[] = {
+                            DEMO_IMAGE_DIR "selection-popup-bg.1.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.2.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.3.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.4.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.5.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.6.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.7.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.8.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.9.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.10.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.11.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.12.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.13.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.14.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.15.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.16.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.17.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.18.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.19.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.20.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.21.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.22.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.23.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.24.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.25.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.26.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.27.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.28.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.29.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.30.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.31.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.32.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.33.9.png",
+                            DEMO_IMAGE_DIR "button-disabled.9.png",
+                            DEMO_IMAGE_DIR "button-down.9.png",
+                            DEMO_IMAGE_DIR "button-down-disabled.9.png",
+                            DEMO_IMAGE_DIR "button-up-1.9.png",
+                            DEMO_IMAGE_DIR "button-up-2.9.png",
+                            DEMO_IMAGE_DIR "button-up-3.9.png",
+                            DEMO_IMAGE_DIR "button-up-4.9.png",
+                            DEMO_IMAGE_DIR "button-up-5.9.png",
+                            DEMO_IMAGE_DIR "button-up-6.9.png",
+                            DEMO_IMAGE_DIR "button-up-7.9.png",
+                            DEMO_IMAGE_DIR "button-up-8.9.png",
+                            DEMO_IMAGE_DIR "button-up-9.9.png",
+                            DEMO_IMAGE_DIR "button-up-10.9.png",
+                            DEMO_IMAGE_DIR "button-up-11.9.png",
+                            DEMO_IMAGE_DIR "button-up-12.9.png",
+                            DEMO_IMAGE_DIR "button-up-13.9.png",
+                            DEMO_IMAGE_DIR "button-up-14.9.png",
+                            DEMO_IMAGE_DIR "button-up-15.9.png",
+                            DEMO_IMAGE_DIR "button-up-16.9.png",
+                            DEMO_IMAGE_DIR "button-up-17.9.png",
+};
+
+const unsigned int NUM_IMAGES = sizeof(IMAGE_PATH) / sizeof(char*);
+const unsigned int NUM_NINEPATCH_IMAGES = sizeof(NINEPATCH_IMAGE_PATH) / sizeof(char*);
+
+const float ANIMATION_TIME ( 5.0f ); // animation length in seconds
+
+struct VertexWithTexture
+{
+  Vector2 position;
+  Vector2 texCoord;
+};
+
+VertexWithTexture gQuadWithTexture[] = {
+                                        { Vector2( -0.5f, -0.5f ), Vector2( 0.0f, 0.0f ) },
+                                        { Vector2(  0.5f, -0.5f ), Vector2( 1.0f, 0.0f ) },
+                                        { Vector2( -0.5f,  0.5f ), Vector2( 0.0f, 1.0f ) },
+                                        { Vector2(  0.5f,  0.5f ), Vector2( 1.0f, 1.0f ) }
+};
+
+const char* VERTEX_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+    attribute mediump vec2 aPosition;\n
+    attribute mediump vec2 aTexCoord;\n
+    uniform mediump mat4 uMvpMatrix;\n
+    uniform mediump vec3 uSize;\n
+    varying mediump vec2 vTexCoord;\n
+    void main()\n
+    {\n
+      vec4 position = vec4(aPosition,0.0,1.0)*vec4(uSize,1.0);\n
+      gl_Position = uMvpMatrix * position;\n
+      vTexCoord = aTexCoord;\n
+    }\n
+);
+
+const char* FRAGMENT_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+    uniform lowp vec4 uColor;\n
+    uniform sampler2D sTexture;\n
+    varying mediump vec2 vTexCoord;\n
+
+    void main()\n
+    {\n
+      gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n
+    }\n
+);
+
+bool gUseMesh(false);
+bool gNinePatch(false);
+unsigned int gRowsPerPage(25);
+unsigned int gColumnsPerPage( 25 );
+unsigned int gPageCount(13);
+
+Renderer CreateRenderer( unsigned int index, Geometry geometry, Shader shader )
+{
+  Renderer renderer = Renderer::New( geometry, shader );
+  const char* imagePath = !gNinePatch ? IMAGE_PATH[index] : NINEPATCH_IMAGE_PATH[index];
+  Texture texture = DemoHelper::LoadTexture( imagePath );
+  TextureSet textureSet = TextureSet::New();
+  textureSet.SetTexture( 0u, texture );
+  renderer.SetTextures( textureSet );
+  renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::OFF );
+  return renderer;
+}
+
+}
+// Test application to compare performance between using a mesh and ImageView
+// By default, the application consist of 10 pages of 25x25 Image views, this can be modified using the following command line arguments:
+// -r NumberOfRows  (Modifies the number of rows per page)
+// -c NumberOfColumns (Modifies the number of columns per page)
+// -p NumberOfPages (Modifies the nimber of pages )
+// --use-mesh ( Use new renderer API (as ImageView) but shares renderers between actors when possible )
+// --nine-patch ( Use nine patch images )
+
+//
+class Benchmark : public ConnectionTracker
+{
+public:
+
+  Benchmark( Application& application )
+: mApplication( application ),
+  mRowsPerPage( gRowsPerPage ),
+  mColumnsPerPage( gColumnsPerPage ),
+  mPageCount( gPageCount )
+{
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &Benchmark::Create );
+}
+
+  ~Benchmark()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    Vector2 stageSize = stage.GetSize();
+
+    stage.GetRootLayer().SetDepthTestDisabled(true);
+
+    mSize = Vector3( stageSize.x / mColumnsPerPage, stageSize.y / mRowsPerPage, 0.0f );
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &Benchmark::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &Benchmark::OnKeyEvent );
+
+    if( gUseMesh )
+    {
+      CreateMeshActors();
+    }
+    else
+    {
+      CreateImageViews();
+    }
+
+    ShowAnimation();
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  const char* ImagePath( int i )
+  {
+    return !gNinePatch ? IMAGE_PATH[i % NUM_IMAGES] : NINEPATCH_IMAGE_PATH[i % NUM_NINEPATCH_IMAGES];
+  }
+
+  void CreateImageViews()
+  {
+    Stage stage = Stage::GetCurrent();
+    unsigned int actorCount(mRowsPerPage*mColumnsPerPage * mPageCount);
+    mImageView.resize(actorCount);
+
+    for( size_t i(0); i<actorCount; ++i )
+    {
+      mImageView[i] = ImageView::New(ImagePath(i));
+      mImageView[i].SetSize(Vector3(0.0f,0.0f,0.0f));
+      mImageView[i].SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+      stage.Add(mImageView[i]);
+    }
+  }
+
+  void CreateMeshActors()
+  {
+    unsigned int numImages = !gNinePatch ? NUM_IMAGES : NUM_NINEPATCH_IMAGES;
+
+    //Create all the renderers
+    std::vector<Renderer> renderers( numImages );
+    Shader shader = Shader::New( VERTEX_SHADER_TEXTURE, FRAGMENT_SHADER_TEXTURE );
+    Geometry geometry = DemoHelper::CreateTexturedQuad();
+    for( unsigned int i(0); i<numImages; ++i )
+    {
+      renderers[i] = CreateRenderer( i, geometry, shader );
+    }
+
+    //Create the actors
+    Stage stage = Stage::GetCurrent();
+    unsigned int actorCount(mRowsPerPage*mColumnsPerPage * mPageCount);
+    mActor.resize(actorCount);
+    for( size_t i(0); i<actorCount; ++i )
+    {
+      mActor[i] = Actor::New();
+      mActor[i].AddRenderer( renderers[i % numImages] );
+      mActor[i].SetSize(0.0f,0.0f,0.0f);
+      stage.Add(mActor[i]);
+    }
+  }
+
+  void OnAnimationEnd( Animation& source )
+  {
+    if( source == mShow )
+    {
+      ScrollAnimation();
+    }
+    else if( source == mScroll )
+    {
+      HideAnimation();
+    }
+    else
+    {
+      mApplication.Quit();
+    }
+  }
+
+  void ShowAnimation()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector3 initialPosition( stage.GetSize().x * 0.5f, stage.GetSize().y*0.5f, 1000.0f );
+
+    unsigned int totalColumns = mColumnsPerPage * mPageCount;
+
+    size_t count(0);
+    float xpos, ypos;
+    mShow = Animation::New(0.0f);
+
+    float totalDuration( 10.0f );
+    float durationPerActor( 0.5f );
+    float delayBetweenActors = ( totalDuration - durationPerActor) / (mRowsPerPage*mColumnsPerPage);
+    for( size_t i(0); i<totalColumns; ++i )
+    {
+      xpos = mSize.x * i;
+
+      for( size_t j(0);j<mRowsPerPage;++j)
+      {
+
+        ypos = mSize.y * j;
+
+        float delay = 0.0f;
+        float duration = 0.0f;
+        if( count < ( static_cast< size_t >( mRowsPerPage ) * mColumnsPerPage ) )
+        {
+          duration = durationPerActor;
+          delay = delayBetweenActors * count;
+        }
+        if( gUseMesh )
+        {
+          mActor[count].SetPosition( initialPosition );
+          mActor[count].SetSize( Vector3(0.0f,0.0f,0.0f) );
+          mActor[count].SetOrientation( Quaternion( Radian(0.0f),Vector3::XAXIS));
+          mShow.AnimateTo( Property( mActor[count], Actor::Property::POSITION), Vector3(xpos+mSize.x*0.5f, ypos+mSize.y*0.5f, 0.0f), AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ));
+          mShow.AnimateTo( Property( mActor[count], Actor::Property::SIZE), mSize, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ));
+        }
+        else
+        {
+          mImageView[count].SetPosition( initialPosition );
+          mImageView[count].SetSize( Vector3(0.0f,0.0f,0.0f) );
+          mImageView[count].SetOrientation( Quaternion( Radian(0.0f),Vector3::XAXIS));
+          mShow.AnimateTo( Property( mImageView[count], Actor::Property::POSITION), Vector3(xpos+mSize.x*0.5f, ypos+mSize.y*0.5f, 0.0f), AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ));
+          mShow.AnimateTo( Property( mImageView[count], Actor::Property::SIZE), mSize, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ));
+        }
+        ++count;
+      }
+    }
+    mShow.Play();
+    mShow.FinishedSignal().Connect( this, &Benchmark::OnAnimationEnd );
+  }
+
+  void ScrollAnimation()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector3 stageSize( stage.GetSize() );
+
+    mScroll = Animation::New(10.0f);
+    size_t actorCount( static_cast< size_t >( mRowsPerPage ) * mColumnsPerPage * mPageCount );
+    for( size_t i(0); i<actorCount; ++i )
+    {
+      if( gUseMesh )
+      {
+        mScroll.AnimateBy( Property( mActor[i], Actor::Property::POSITION), Vector3(-4.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(0.0f,3.0f));
+        mScroll.AnimateBy( Property( mActor[i], Actor::Property::POSITION), Vector3(-4.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(3.0f,3.0f));
+        mScroll.AnimateBy( Property( mActor[i], Actor::Property::POSITION), Vector3(-4.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(6.0f,2.0f));
+        mScroll.AnimateBy( Property( mActor[i], Actor::Property::POSITION), Vector3( 12.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(8.0f,2.0f));
+      }
+      else
+      {
+        mScroll.AnimateBy( Property( mImageView[i], Actor::Property::POSITION), Vector3(-4.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(0.0f,3.0f));
+        mScroll.AnimateBy( Property( mImageView[i], Actor::Property::POSITION), Vector3(-4.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(3.0f,3.0f));
+        mScroll.AnimateBy( Property( mImageView[i], Actor::Property::POSITION), Vector3(-4.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(6.0f,2.0f));
+        mScroll.AnimateBy( Property( mImageView[i], Actor::Property::POSITION), Vector3( 12.0f*stageSize.x,0.0f, 0.0f), AlphaFunction::EASE_OUT, TimePeriod(8.0f,2.0f));
+      }
+    }
+    mScroll.Play();
+    mScroll.FinishedSignal().Connect( this, &Benchmark::OnAnimationEnd );
+  }
+
+  void HideAnimation()
+  {
+    size_t count(0);
+    unsigned int actorsPerPage( mRowsPerPage*mColumnsPerPage );
+    mHide = Animation::New(0.0f);
+
+    unsigned int totalColumns = mColumnsPerPage * mPageCount;
+
+    float finalZ = Dali::Stage::GetCurrent().GetRenderTaskList().GetTask(0).GetCameraActor().GetCurrentWorldPosition().z;
+    float totalDuration( 5.0f);
+    float durationPerActor( 0.5f );
+    float delayBetweenActors = ( totalDuration - durationPerActor) / (mRowsPerPage*mColumnsPerPage);
+    for( size_t i(0); i<mRowsPerPage; ++i )
+    {
+      for( size_t j(0);j<totalColumns;++j)
+      {
+        float delay = 0.0f;
+        float duration = 0.0f;
+        if( count < actorsPerPage )
+        {
+          duration = durationPerActor;
+          delay = delayBetweenActors * count;
+        }
+
+        if( gUseMesh )
+        {
+          mHide.AnimateTo( Property( mActor[count], Actor::Property::ORIENTATION),  Quaternion( Radian( Degree( 70.0f ) ), Vector3::XAXIS ), AlphaFunction::EASE_OUT, TimePeriod( delay, duration ));
+          mHide.AnimateBy( Property( mActor[count], Actor::Property::POSITION_Z), finalZ, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay +delayBetweenActors*actorsPerPage + duration, duration ));
+        }
+        else
+        {
+          mHide.AnimateTo( Property( mImageView[count], Actor::Property::ORIENTATION),  Quaternion( Radian( Degree( 70.0f ) ), Vector3::XAXIS ), AlphaFunction::EASE_OUT, TimePeriod( delay, duration ));
+          mHide.AnimateBy( Property( mImageView[count], Actor::Property::POSITION_Z), finalZ, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay +delayBetweenActors*actorsPerPage + duration, duration ));
+        }
+        ++count;
+      }
+    }
+
+    mHide.Play();
+    mHide.FinishedSignal().Connect( this, &Benchmark::OnAnimationEnd );
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+
+  std::vector<Actor>  mActor;
+  std::vector<ImageView>  mImageView;
+
+  Vector3             mSize;
+  unsigned int        mRowsPerPage;
+  unsigned int        mColumnsPerPage;
+  unsigned int        mPageCount;
+
+  Animation           mShow;
+  Animation           mScroll;
+  Animation           mHide;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  for( int i(1) ; i < argc; ++i )
+  {
+    std::string arg( argv[i] );
+    if( arg.compare("--use-mesh") == 0)
+    {
+      gUseMesh = true;
+    }
+    else if( arg.compare("--nine-patch" ) == 0)
+    {
+      gNinePatch = true;
+    }
+    else if( arg.compare(0, 2, "-r" ) == 0)
+    {
+      gRowsPerPage = atoi( arg.substr( 2, arg.size()).c_str());
+    }
+    else if( arg.compare(0, 2, "-c" ) == 0)
+    {
+      gColumnsPerPage = atoi( arg.substr( 2, arg.size()).c_str());
+    }
+    else if( arg.compare(0, 2, "-p" ) == 0)
+    {
+      gPageCount = atoi( arg.substr( 2, arg.size()).c_str());
+    }
+  }
+
+  Benchmark test( application );
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/bezier-curve/bezier-curve-example.cpp b/examples/bezier-curve/bezier-curve-example.cpp
new file mode 100644 (file)
index 0000000..20ce083
--- /dev/null
@@ -0,0 +1,623 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include "shared/view.h"
+
+#include <sstream>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace std;
+
+namespace
+{
+
+const Vector4 GRID_BACKGROUND_COLOR(0.85f, 0.85f, 0.85f, 1.0f);
+const Vector4 CONTROL_POINT1_COLOR(Color::MAGENTA);
+const Vector4 CONTROL_POINT2_COLOR(0.0, 0.9, 0.9, 1.0);
+const Vector3 CONTROL_POINT1_ORIGIN(-100,  200, 0);
+const Vector3 CONTROL_POINT2_ORIGIN( 100, -200, 0);
+const char* const CIRCLE1_IMAGE( DEMO_IMAGE_DIR "circle1.png" );
+const char* const CIRCLE2_IMAGE( DEMO_IMAGE_DIR "circle2.png" );
+const char* const ANIMATION_BACKGROUND( DEMO_IMAGE_DIR "slider-skin.9.png" );
+const char* APPLICATION_TITLE("Bezier curve animation");
+const float ANIM_LEFT_FACTOR(0.2f);
+const float ANIM_RIGHT_FACTOR(0.8f);
+const int AXIS_LABEL_POINT_SIZE(7);
+const float AXIS_LINE_SIZE(1.0f);
+
+const char* CURVE_VERTEX_SHADER = DALI_COMPOSE_SHADER
+  (
+    attribute mediump vec2 aPosition;
+    uniform mediump mat4 uMvpMatrix;
+    uniform vec3 uSize;
+    void main()
+    {
+      gl_Position = uMvpMatrix * vec4(aPosition*uSize.xy, 0.0, 1.0);
+    }
+   );
+
+const char* CURVE_FRAGMENT_SHADER = DALI_COMPOSE_SHADER
+  (
+    uniform lowp vec4 uColor;
+    void main()
+    {
+      gl_FragColor = vec4(0.0,0.0,0.0,1.0);
+    }
+   );
+
+
+inline float Clamp(float v, float min, float max)
+{
+  if(v<min) return min;
+  if(v>max) return max;
+  return v;
+}
+
+struct HandlePositionConstraint
+{
+  HandlePositionConstraint( float minRelX, float maxRelX, float minRelY, float maxRelY )
+  : minRelX(minRelX), maxRelX(maxRelX), minRelY(minRelY), maxRelY(maxRelY)
+  {
+  }
+
+  void operator()( Vector3& current, const PropertyInputContainer& inputs )
+  {
+    Vector3 size( inputs[0]->GetVector3() );
+    current.x = Clamp(current.x, minRelX*size.x, maxRelX*size.x );
+    current.y = Clamp(current.y, minRelY*size.y, maxRelY*size.y );
+  }
+
+  float minRelX;
+  float maxRelX;
+  float minRelY;
+  float maxRelY;
+};
+
+void AnimatingPositionConstraint( Vector3& current, const PropertyInputContainer& inputs )
+{
+  float positionFactor( inputs[0]->GetFloat() ); // -1 - 2
+  Vector3 size( inputs[1]->GetVector3() );
+
+  current.x = size.x * (positionFactor-0.5f); // size * (-1.5 - 1.5)
+}
+
+} //unnamed namespace
+
+
+
+class BezierCurveExample : public ConnectionTracker
+{
+public:
+
+  BezierCurveExample( Application& application )
+  : mApplication( application ),
+    mControlPoint1(),
+    mControlPoint2(),
+    mControlLine1(),
+    mControlLine2(),
+    mAnimIcon1(),
+    mAnimIcon2(),
+    mDragActor(),
+    mCurve(),
+    mCoefficientLabel(),
+    mContentLayer(),
+    mGrid(),
+    mTimer(),
+    mDragAnimation(),
+    mBezierAnimation(),
+    mCurveVertices(),
+    mLine1Vertices(),
+    mLine2Vertices(),
+    mRelativeDragPoint(),
+    mLastControlPointPosition1(),
+    mLastControlPointPosition2(),
+    mPositionFactorIndex(),
+    mDuration( 2.0f ),
+    mControlPoint1Id( 0.0f ),
+    mControlPoint2Id( 0.0f ),
+    mControlPointScale( 0.5f ),
+    mControlPointZoomScale( mControlPointScale * 2.0 ),
+    mGoingRight( true )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &BezierCurveExample::Create );
+  }
+
+  ~BezierCurveExample()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect( this, &BezierCurveExample::OnKeyEvent );
+
+    CreateBackground(stage);
+
+    mControlPointScale = 0.5f;
+    mControlPointZoomScale = mControlPointScale * 2.0f;
+
+    mContentLayer = Layer::New();
+    mContentLayer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mContentLayer.TouchSignal().Connect(this, &BezierCurveExample::OnTouchLayer);
+    mContentLayer.SetParentOrigin( ParentOrigin::CENTER );
+    stage.Add( mContentLayer );
+
+    // 6 rows: title, grid, coords, play, anim1, anim2
+    TableView contentLayout = TableView::New(5, 1);
+    contentLayout.SetName("contentLayout");
+    contentLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    contentLayout.SetCellPadding( Size( 30, 30 ) );
+    contentLayout.SetParentOrigin(ParentOrigin::TOP_CENTER);
+    contentLayout.SetAnchorPoint(AnchorPoint::TOP_CENTER);
+    mContentLayer.Add( contentLayout );
+
+    // Create a TextLabel for the application title.
+    Toolkit::TextLabel label = Toolkit::TextLabel::New( APPLICATION_TITLE );
+    label.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::BLACK );
+    contentLayout.Add( label );
+    contentLayout.SetFitHeight(0);
+
+    mGrid = Control::New();
+
+    mGrid.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::WIDTH );
+    mGrid.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+
+    mGrid.SetParentOrigin(ParentOrigin::CENTER);
+    mGrid.SetAnchorPoint(AnchorPoint::CENTER);
+    mGrid.SetBackgroundColor(GRID_BACKGROUND_COLOR);
+
+    contentLayout.Add( mGrid );
+    contentLayout.SetCellAlignment(1, HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+    CreateCubic(mGrid);
+    CreateControlPoints( mGrid ); // Control points constrained to double height of grid
+    CreateAxisLabels( mGrid );
+
+    mCoefficientLabel = TextLabel::New();
+    mCoefficientLabel.SetProperty( TextLabel::Property::ENABLE_MARKUP, true );
+    mCoefficientLabel.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mCoefficientLabel.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mCoefficientLabel.SetParentOrigin(ParentOrigin::CENTER);
+
+    contentLayout.Add( mCoefficientLabel );
+    SetLabel( Vector2(0,0), Vector2(1,1));
+    contentLayout.SetCellAlignment(2, HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+    contentLayout.SetFitHeight(2);
+
+    // Setup Play button and 2 icons to show off current anim and linear anim
+
+    PushButton play = PushButton::New();
+    play.SetName("Play");
+    play.SetParentOrigin(ParentOrigin::CENTER);
+    play.SetProperty( Button::Property::LABEL, "Play");
+    play.ClickedSignal().Connect( this, &BezierCurveExample::OnPlayClicked );
+
+    contentLayout.Add( play );
+    contentLayout.SetCellAlignment(3, HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+    contentLayout.SetFitHeight(3);
+
+    auto animContainer = Control::New();
+    animContainer.SetName("AnimationContainer");
+    animContainer.SetParentOrigin( ParentOrigin::CENTER );
+    animContainer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    auto animRail = Control::New();
+    animRail.SetProperty( Control::Property::BACKGROUND, Property::Map()
+                          .Add( Visual::Property::TYPE, Visual::IMAGE )
+                          .Add( ImageVisual::Property::URL, ANIMATION_BACKGROUND ) );
+    animRail.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    animRail.SetSizeModeFactor( Vector3( 0.666f, 0.2f, 1.0f ) );
+    animRail.SetParentOrigin( ParentOrigin::CENTER );
+    animContainer.Add( animRail );
+
+    contentLayout.Add( animContainer );
+    contentLayout.SetFixedHeight(4, 150 );
+
+    mAnimIcon1 = ImageView::New( CIRCLE1_IMAGE );
+    mAnimIcon1.SetParentOrigin( ParentOrigin::CENTER );
+    mAnimIcon1.SetAnchorPoint( AnchorPoint::CENTER );
+
+    // Would like some means of setting and animating position as a percentage of
+    // parent size without using constraints, but this will have to suffice for the moment.
+    mPositionFactorIndex = mAnimIcon1.RegisterProperty( "positionFactor", ANIM_LEFT_FACTOR); // range: 0-1 (+/- 1)
+    Constraint constraint = Constraint::New<Vector3>( mAnimIcon1, Actor::Property::POSITION, AnimatingPositionConstraint );
+    constraint.AddSource( Source( mAnimIcon1, mPositionFactorIndex ) );
+    constraint.AddSource( Source( animContainer, Actor::Property::SIZE ) );
+    constraint.Apply();
+
+    animContainer.Add( mAnimIcon1 );
+
+    // First UpdateCurve needs to run after size negotiation and after images have loaded
+    mGrid.OnRelayoutSignal().Connect( this, &BezierCurveExample::InitialUpdateCurve );
+
+    auto controlPoint1 = Control::DownCast( mControlPoint1 );
+    if( controlPoint1 )
+    {
+      controlPoint1.ResourceReadySignal().Connect( this, &BezierCurveExample::ControlPointReady );
+    }
+
+    auto controlPoint2 = Control::DownCast( mControlPoint2 );
+    if( controlPoint2 )
+    {
+      controlPoint2.ResourceReadySignal().Connect( this, &BezierCurveExample::ControlPointReady );
+    }
+  }
+
+  void ControlPointReady( Control control )
+  {
+    UpdateCurve();
+  }
+
+  void InitialUpdateCurve(Actor actor)
+  {
+    UpdateCurve();
+  }
+
+  void CreateBackground( Stage stage )
+  {
+    Toolkit::Control background = Dali::Toolkit::Control::New();
+    background.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+    background.SetParentOrigin( Dali::ParentOrigin::CENTER );
+    background.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+
+    Property::Map map;
+    map.Insert( Visual::Property::TYPE,  Visual::COLOR );
+    map.Insert( ColorVisual::Property::MIX_COLOR, Vector4( 253/255.0f, 245/255.0f, 230/255.0f, 1.0f ) );
+    background.SetProperty( Dali::Toolkit::Control::Property::BACKGROUND, map );
+    stage.Add( background );
+  }
+
+  void CreateCubic(Actor parent)
+  {
+    // Create a mesh to draw the cubic as a single line
+    mCurve = Actor::New();
+    mCurve.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mCurve.SetParentOrigin( ParentOrigin::CENTER );
+
+    Shader shader = Shader::New( CURVE_VERTEX_SHADER, CURVE_FRAGMENT_SHADER );
+
+    Property::Map curveVertexFormat;
+    curveVertexFormat["aPosition"] = Property::VECTOR2;
+    mCurveVertices = PropertyBuffer::New( curveVertexFormat );
+    Vector2 vertexData[2] = { Vector2(-0.5f, 0.5f), Vector2( 0.5f, -0.5f ) };
+    mCurveVertices.SetData( vertexData, 2 );
+
+    Geometry geometry = Geometry::New();
+    geometry.AddVertexBuffer( mCurveVertices );
+    geometry.SetType( Geometry::LINE_STRIP );
+
+    Renderer renderer = Renderer::New( geometry, shader );
+    mCurve.AddRenderer( renderer );
+    parent.Add(mCurve);
+  }
+
+  Actor CreateControlPoint( Actor parent, const char* url, Vector3 position)
+  {
+    Actor actor = ImageView::New( url );
+    actor.SetScale( mControlPointScale);
+    actor.SetParentOrigin( ParentOrigin::CENTER );
+    // Curve and line drawing works off current value (i.e. last update frame's value). Need to animate to ensure
+    // initial position is baked to both frames before initially drawing the curve.
+    auto positionAnimation = Animation::New( 0.01f );
+    positionAnimation.AnimateTo( Property( actor, Actor::Property::POSITION ), position, AlphaFunction::EASE_IN_OUT );
+    positionAnimation.Play();
+    positionAnimation.FinishedSignal().Connect( this, &BezierCurveExample::OnAnimationFinished );
+
+    // Set up constraints for drag/drop
+    Constraint constraint = Constraint::New<Vector3>( actor, Actor::Property::POSITION, HandlePositionConstraint( -0.5, 0.5, -1, 1));
+    constraint.AddSource( Source( parent, Actor::Property::SIZE ) );
+    constraint.Apply();
+
+    actor.TouchSignal().Connect(this, &BezierCurveExample::OnTouchControlPoint);
+    return actor;
+  }
+
+  Actor CreateControlLine( PropertyBuffer vertexBuffer )
+  {
+    Actor line = Actor::New();
+    line.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    line.SetParentOrigin( ParentOrigin::CENTER );
+
+    Shader shader = Shader::New( CURVE_VERTEX_SHADER, CURVE_FRAGMENT_SHADER );
+    Geometry geometry = Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    geometry.SetType( Geometry::LINE_STRIP );
+
+    Renderer renderer = Renderer::New( geometry, shader );
+    line.AddRenderer( renderer );
+    return line;
+  }
+
+  void CreateControlPoints( Actor parent )
+  {
+    mControlPoint1 = CreateControlPoint( parent,
+                                         CIRCLE1_IMAGE,
+                                         CONTROL_POINT1_ORIGIN );
+    mControlPoint1Id = mControlPoint1.GetId();
+
+    mControlPoint2 = CreateControlPoint( parent,
+                                         CIRCLE2_IMAGE,
+                                         CONTROL_POINT2_ORIGIN );
+    mControlPoint2Id = mControlPoint2.GetId();
+
+    Property::Map lineVertexFormat;
+    lineVertexFormat["aPosition"] = Property::VECTOR2;
+    mLine1Vertices = PropertyBuffer::New( lineVertexFormat );
+    mLine2Vertices = PropertyBuffer::New( lineVertexFormat );
+
+    mControlLine1 = CreateControlLine( mLine1Vertices );
+    mControlLine2 = CreateControlLine( mLine2Vertices );
+
+    parent.Add( mControlLine1 );
+    parent.Add( mControlLine2 );
+    parent.Add( mControlPoint1 );
+    parent.Add( mControlPoint2 );
+  }
+
+  void CreateAxisLabels( Actor parent )
+  {
+    TextLabel progressionLabel = TextLabel::New( "Progression" );
+    progressionLabel.SetProperty( TextLabel::Property::POINT_SIZE, AXIS_LABEL_POINT_SIZE );
+    progressionLabel.SetOrientation( Degree(-90.0f), Vector3::ZAXIS );
+    progressionLabel.SetAnchorPoint( AnchorPoint::BOTTOM_LEFT );
+    progressionLabel.SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
+    CreateLine( progressionLabel, ParentOrigin::BOTTOM_LEFT );
+
+    TextLabel timeLabel = TextLabel::New( "Time" );
+    timeLabel.SetProperty( TextLabel::Property::POINT_SIZE, AXIS_LABEL_POINT_SIZE );
+    timeLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    timeLabel.SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
+    CreateLine( timeLabel, ParentOrigin::TOP_LEFT );
+
+    parent.Add( progressionLabel );
+    parent.Add( timeLabel );
+  }
+
+  void CreateLine( Actor parent, const Vector3& parentOrigin )
+  {
+    Control control = Control::New();
+    control.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    control.SetParentOrigin( parentOrigin );
+    control.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    control.SetProperty( Actor::Property::SIZE_HEIGHT, AXIS_LINE_SIZE );
+    control.SetBackgroundColor( Color::BLACK );
+    parent.Add( control );
+  }
+
+  void SetLabel( Vector2 pos1, Vector2 pos2 )
+  {
+    std::ostringstream oss;
+    oss.setf(std::ios::fixed, std::ios::floatfield);
+    oss.precision(2);
+    oss << "( <color value='#971586'>" << pos1.x << ", " << pos1.y << ", </color>";
+    oss << "<color value='#e7640d'>" << pos2.x << ", " << pos2.y << "</color>";
+    oss << "<color value='black'> )</color>";
+
+    mCoefficientLabel.SetProperty( TextLabel::Property::TEXT, oss.str() );
+  }
+
+  Vector2 AlignToGrid( Vector3 actorPos, Vector3 gridSize )
+  {
+    actorPos /= gridSize; // => -0.5 - 0.5
+    actorPos.x = Clamp( actorPos.x, -0.5f, 0.5f );
+    return Vector2( actorPos.x + 0.5f, 0.5f - actorPos.y );
+  }
+
+  void GetControlPoints(Vector2& pt1, Vector2& pt2)
+  {
+    Vector3 gridSize = mGrid.GetProperty<Vector3>( Actor::Property::SIZE ); // Get target value
+
+    pt1 = AlignToGrid( mControlPoint1.GetCurrentPosition(), gridSize );
+    pt2 = AlignToGrid( mControlPoint2.GetCurrentPosition(), gridSize );
+  }
+
+  /**
+   * @param[in] actor The actor to get the position from
+   * @param[out] point The point in the grid in the range -0.5 -> 0.5 in x and y, with y up.
+   * @param[out] position The actor position, floored to the nearest pixel
+   */
+  void GetPoint( Actor actor, Vector2& point, Vector2& position)
+  {
+    auto gridSize = mGrid.GetProperty<Vector3>( Actor::Property::SIZE ); // Get target value
+    auto currentPosition = actor.GetCurrentPosition(); // Get constrained current value
+
+    position = Vector2( floor( currentPosition.x ), floor( currentPosition.y ) );
+
+    point.x = Clamp( position.x / gridSize.x, -0.5f, 0.5f ) + 0.5f;
+    point.y = 0.5f - position.y / gridSize.y;
+  }
+
+  void UpdateCurve()
+  {
+    Vector2 point1, point2;
+    Vector2 position1, position2;
+    const int NUMBER_OF_SEGMENTS(40);
+
+    GetPoint( mControlPoint1, point1, position1 );
+    GetPoint( mControlPoint2, point2, position2 );
+
+    if( position1 != mLastControlPointPosition1 ||
+        position2 != mLastControlPointPosition2 )
+    {
+      mLastControlPointPosition1 = position1;
+      mLastControlPointPosition2 = position2;
+
+      SetLabel( point1, point2 );
+
+      Path path = Path::New();
+      path.AddPoint(Vector3::ZERO);
+      path.AddPoint(Vector3(1.0f, 1.0f, 1.0f));
+      path.AddControlPoint( Vector3( point1.x, point1.y, 0 ) );
+      path.AddControlPoint( Vector3( point2.x, point2.y, 0 ) );
+
+      Dali::Vector<float> verts;
+
+      verts.Resize(2*(NUMBER_OF_SEGMENTS+1)); // 1 more point than segment
+      for( int i=0; i<=NUMBER_OF_SEGMENTS; ++i)
+      {
+        Vector3 position, tangent;
+        path.Sample( i/float(NUMBER_OF_SEGMENTS), position, tangent );
+        verts[i*2] = position.x-0.5;
+        verts[i*2+1] = 0.5-position.y;
+      }
+      mCurveVertices.SetData(&verts[0], NUMBER_OF_SEGMENTS+1);
+
+      Vector4 line1( -0.5f, 0.5f, point1.x-0.5f, 0.5f-point1.y );
+      mLine1Vertices.SetData( line1.AsFloat(), 2 );
+
+      Vector4 line2( 0.5f, -0.5f, point2.x-0.5f, 0.5f-point2.y );
+      mLine2Vertices.SetData( line2.AsFloat(), 2 );
+    }
+  }
+
+  bool OnTouchControlPoint( Actor controlPoint, const TouchData& event )
+  {
+    if( event.GetPointCount() > 0 )
+    {
+      if( event.GetState( 0 ) == PointState::DOWN )
+      {
+        Vector2 screenPoint = event.GetScreenPosition( 0 );
+        mRelativeDragPoint = screenPoint;
+        mRelativeDragPoint -= Vector2(controlPoint.GetCurrentPosition());
+        mDragActor = controlPoint;
+        mDragAnimation = Animation::New(0.25f);
+        mDragAnimation.AnimateTo( Property(mDragActor, Actor::Property::SCALE), Vector3( mControlPointZoomScale, mControlPointZoomScale, 1.0f), AlphaFunction::EASE_OUT);
+        mDragAnimation.Play();
+      }
+    }
+    return false; // Don't mark this as consumed - let the layer get the touch
+  }
+
+  bool OnTouchLayer( Actor actor, const TouchData& event )
+  {
+    if( event.GetPointCount() > 0 )
+    {
+      if( mDragActor )
+      {
+        Vector3 position( event.GetScreenPosition( 0 ) );
+
+        mDragActor.SetPosition( position - Vector3( mRelativeDragPoint ) );
+
+        if( event.GetState( 0 ) == PointState::UP ) // Stop dragging
+        {
+          mDragAnimation = Animation::New(0.25f);
+          mDragAnimation.AnimateTo( Property( mDragActor, Actor::Property::SCALE ), Vector3( mControlPointScale, mControlPointScale, 1.0f), AlphaFunction::EASE_IN);
+          mDragAnimation.FinishedSignal().Connect( this, &BezierCurveExample::OnAnimationFinished );
+          mDragAnimation.Play();
+          mDragActor.Reset();
+        }
+      }
+      UpdateCurve();
+    }
+    return false;
+  }
+
+  void OnAnimationFinished( Animation& animation )
+  {
+    UpdateCurve();
+  }
+
+  bool OnPlayClicked( Button button )
+  {
+    if( ! mBezierAnimation )
+    {
+      mBezierAnimation = Animation::New( mDuration );
+    }
+    mBezierAnimation.Stop();
+    mBezierAnimation.Clear();
+
+    float positionFactor = ANIM_LEFT_FACTOR;
+    if( mGoingRight )
+    {
+      positionFactor = ANIM_RIGHT_FACTOR;
+      mGoingRight = false;
+    }
+    else
+    {
+      mGoingRight = true;
+    }
+
+    Vector2 pt1, pt2;
+    GetControlPoints(pt1, pt2);
+
+    mBezierAnimation.AnimateTo( Property(mAnimIcon1, mPositionFactorIndex), positionFactor, AlphaFunction( pt1, pt2 ) );
+    mBezierAnimation.Play();
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+
+    if( event.state == KeyEvent::Down && (IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ))  )
+    {
+      mApplication.Quit();
+    }
+  }
+
+private:
+  Application& mApplication;
+  Actor mControlPoint1;
+  Actor mControlPoint2;
+  Actor mControlLine1;
+  Actor mControlLine2;
+  ImageView mAnimIcon1;
+  ImageView mAnimIcon2;
+  Actor mDragActor;
+  Actor mCurve;
+  TextLabel mCoefficientLabel;
+  Layer mContentLayer;
+  Control mGrid;
+  Timer mTimer;
+  Animation mDragAnimation;
+  Animation mBezierAnimation;
+  PropertyBuffer mCurveVertices;
+  PropertyBuffer mLine1Vertices;
+  PropertyBuffer mLine2Vertices;
+  Vector2 mRelativeDragPoint;
+  Vector2 mLastControlPointPosition1;
+  Vector2 mLastControlPointPosition2;
+  Property::Index mPositionFactorIndex;
+  float mDuration;
+  unsigned int mControlPoint1Id;
+  unsigned int mControlPoint2Id;
+  float mControlPointScale;
+  float mControlPointZoomScale;
+  bool mGoingRight;
+};
+
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  BezierCurveExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/blocks/blocks-example.cpp b/examples/blocks/blocks-example.cpp
new file mode 100644 (file)
index 0000000..7cadbe2
--- /dev/null
@@ -0,0 +1,877 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <sstream>
+#include <iostream>
+#include <string>
+#include <map>
+#include <algorithm>
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace DemoHelper;
+
+namespace
+{
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-blocks.jpg" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* APPLICATION_TITLE( "DALi Blocks" );
+const char* BALL_IMAGE = DEMO_IMAGE_DIR "blocks-ball.png";
+const char* PADDLE_IMAGE = DEMO_IMAGE_DIR "blocks-paddle.png";
+const char* PADDLE_HANDLE_IMAGE = DEMO_IMAGE_DIR "blocks-paddle-handle.png";
+
+const char* BRICK_IMAGE_PATH[] =    { DEMO_IMAGE_DIR "blocks-brick-1.png",
+                                      DEMO_IMAGE_DIR "blocks-brick-2.png",
+                                      DEMO_IMAGE_DIR "blocks-brick-3.png",
+                                      DEMO_IMAGE_DIR "blocks-brick-4.png" };
+
+const int TOTAL_BRICKS(4);                                                  ///< Total bricks in game.
+const Vector3 ICON_SIZE(100.0f, 100.0f, 0.0f);
+
+const float SCREEN_MARGIN = 10.0f;                                          ///< Margin indentation around screen
+const Vector3 MENU_BUTTON_SIZE = Vector3(0.15f, 0.05f, 1.0f);               ///< Standard Menu Buttons.
+
+const float MAX_ANIMATION_DURATION = 60.0f;                                 ///< 60 seconds animations. Long enough for ball to hit an obstacle.
+const float BALL_VELOCITY = 300.0f;                                         ///< Ball velocity in pixels/second.
+const float MAX_VELOCITY = 500.0f;                                          ///< Max. velocity in pixels/second.
+const Vector3 PADDLE_COLLISION_MARGIN(0.0f, 0.0f, 0.0f);                    ///< Collision margin for ball-paddle detection.
+const Vector3 BRICK_COLLISION_MARGIN(0.0f, 0.0f, 0.0f);                     ///< Collision margin for ball-brick detection.
+const Vector3 INITIAL_BALL_DIRECTION(1.0f, 1.0f, 0.0f);                     ///< Initial ball direction.
+
+const std::string WOBBLE_PROPERTY_NAME("wobbleProperty");                  ///< Wobble property name.
+const std::string COLLISION_PROPERTY_NAME("collisionProperty");            ///< Collision property name.
+
+const Vector2 BRICK_SIZE(0.1f, 0.05f );                                     ///< Brick size relative to width of stage.
+const Vector2 BALL_SIZE( 0.05f, 0.05f );                                    ///< Ball size relative to width of stage.
+const Vector2 PADDLE_SIZE( 0.2f, 0.05f );                                   ///< Paddle size relative to width of stage.
+const Vector2 PADDLE_HANDLE_SIZE( 0.3f, 0.3f );                             ///< Paddle handle size relative to width of stage.
+const Vector2 BALL_START_POSITION(0.5f, 0.8f);                              ///< Ball start position relative to stage size.
+const Vector2 PADDLE_START_POSITION(0.5f, 0.9f);                            ///< Paddler start position relative to stage size.
+const Vector2 PADDLE_HIT_MARGIN( 0.1, 0.15f );                              ///< Extra hit Area for Paddle when touching.
+
+const int TOTAL_LIVES(3);                                                   ///< Total lives in game before it's game over!
+const int TOTAL_LEVELS(3);                                                  ///< 3 Levels total, then repeats.
+
+// constraints ////////////////////////////////////////////////////////////////
+
+/**
+ * CollisionCircleRectangleConstraint generates a collision vector
+ * between two actors a (circle) and b (rectangle)
+ */
+struct CollisionCircleRectangleConstraint
+{
+  /**
+   * Collision Constraint constructor
+   * The adjust (optional) parameter can be used to add a margin
+   * to the actors. A +ve size will result in larger collisions,
+   * while a -ve size will result in tighter collisions.
+   *
+   * @param[in] adjustPosition (optional) Adjusts the position offset of detection
+   * @param[in] adjustSize (optional) Adjusts the rectangular size of detection
+   */
+  CollisionCircleRectangleConstraint(Vector3 adjustPosition = Vector3::ZERO,
+                                     Vector3 adjustSize = Vector3::ZERO)
+  : mAdjustPosition(adjustPosition),
+    mAdjustSize(adjustSize)
+  {
+  }
+
+  /**
+   * Generates collision vector indicating whether Actor's A and B
+   * have overlapped eachother, and the relative position of Actor B to A.
+   *
+   * @param[in,out] current The current collision-property
+   * @param[in] inputs Contains:
+   *                    Actor A's Position property.
+   *                    Actor B's Position property.
+   *                    Actor A's Size property.
+   *                    Actor B's Size property.
+   * @return The collision vector is returned.
+   */
+  void operator()( Vector3& current, const PropertyInputContainer& inputs )
+  {
+    const Vector3& a = inputs[0]->GetVector3();
+    const Vector3 b = inputs[1]->GetVector3() + mAdjustPosition;
+    const Vector3& sizeA = inputs[2]->GetVector3();
+    const Vector3& sizeB = inputs[3]->GetVector3();
+    const Vector3 sizeA2 = sizeA * 0.5f; // circle radius
+    const Vector3 sizeB2 = (sizeB + mAdjustSize) * 0.5f; // rectangle half rectangle.
+
+    // get collision relative to a (rectangle).
+    Vector3 delta = a - b;
+
+    // reduce rectangle to 0.
+    if (delta.x > sizeB2.x)
+    {
+      delta.x -= sizeB2.x;
+    }
+    else if (delta.x < -sizeB2.x)
+    {
+      delta.x += sizeB2.x;
+    }
+    else
+    {
+      delta.x = 0;
+    }
+
+    if (delta.y > sizeB2.y)
+    {
+      delta.y -= sizeB2.y;
+    }
+    else if (delta.y < -sizeB2.y)
+    {
+      delta.y += sizeB2.y;
+    }
+    else
+    {
+      delta.y = 0;
+    }
+
+    // now calculate collision vector vs origin. (assume A is a circle, not ellipse)
+    if(delta.Length() < sizeA2.x)
+    {
+      delta.Normalize();
+      current = delta;
+    }
+    else
+    {
+      current = Vector3::ZERO;
+    }
+  }
+
+  const Vector3 mAdjustPosition;            ///< Position Adjustment value
+  const Vector3 mAdjustSize;                ///< Size Adjustment value
+};
+
+/**
+ * WobbleConstraint generates a decaying sinusoidial rotation.
+ * The result when applied to an Actor, is the Actor rotating left/right
+ * initially a large amount (deviation degrees, when wobble property is 0.0f)
+ * then eventually coming to a stop (once wobble property reaches 1.0f)
+ */
+struct WobbleConstraint
+{
+  /**
+   * Wobble Constraint constructor
+   * Generates a sinusoidial rotation that starts with
+   * high amplitude (deviation), and then decays to zero over input 0.0f to 1.0f
+   *
+   * @param[in] deviation The max. deviation of wobble effect in degrees.
+   */
+  WobbleConstraint( Degree deviation )
+  : mDeviation( deviation )
+  {
+
+  }
+
+  /**
+   * @param[in,out] current The current rotation property
+   * @param[in] inputs Contains the wobble property (value from 0.0f to 1.0f)
+   * @return The rotation (quaternion) is generated.
+   */
+  void operator()( Quaternion& current, const PropertyInputContainer& inputs )
+  {
+    const float& wobble = inputs[0]->GetFloat();
+
+    float f = sinf(wobble * 10.0f) * (1.0f-wobble);
+
+    current = Quaternion(mDeviation * f, Vector3::ZAXIS);
+  }
+
+  Radian mDeviation;           ///< Deviation factor in radians.
+};
+
+} // unnamed namespace
+
+/**
+ * This example shows how to use PropertyNotifications
+ */
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application Application class, stored as reference
+   */
+  ExampleController( Application& application )
+  : mApplication( application ),
+    mView(),
+    mContentLayer(),
+    mBall(),
+    mBallStartPosition(),
+    mBallVelocity(),
+    mBallAnimation(),
+    mPaddle(),
+    mPaddleImage(),
+    mPaddleHandle(),
+    mPaddleHitMargin(),
+    mWobbleAnimation(),
+    mWobbleProperty( Property::INVALID_INDEX ),
+    mLevelContainer(),
+    mBrickImageMap(),
+    mDragAnimation(),
+    mDragActor(),
+    mRelativeDragPoint(),
+    mDestroyAnimationMap(),
+    mPaddleFullSize(),
+    mLevel( 0 ),
+    mLives( TOTAL_LIVES ),
+    mBrickCount( 0 )
+
+  {
+    // Connect to the Application's Init and orientation changed signal
+    mApplication.InitSignal().Connect(this, &ExampleController::Create);
+  }
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   * @param[in] application Reference to the application instance
+   */
+  void Create(Application& application)
+  {
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    Toolkit::ToolBar toolBar;
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            toolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    // Add an extra space on the right to center the title text.
+    toolBar.AddControl( Actor::New(), DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight );
+
+    // Create the content layer, which is where game actors appear.
+    AddContentLayer();
+  }
+
+private:
+
+  /**
+   * Adds a new layer to the stage, containing game actors.
+   */
+  void AddContentLayer()
+  {
+    Stage stage = Stage::GetCurrent();
+    const Vector3 stageSize(stage.GetSize());
+
+    // Ball setup
+    mBallStartPosition = stageSize * Vector3( BALL_START_POSITION );
+    mBall = CreateImage(BALL_IMAGE);
+    mBall.SetPosition( mBallStartPosition );
+    mBall.SetSize( BALL_SIZE * stageSize.width );
+    mContentLayer.Add(mBall);
+    mBallVelocity = Vector3::ZERO;
+
+    // Paddle setup
+    mPaddleHitMargin = Vector2(stageSize) * PADDLE_HIT_MARGIN;
+    mPaddle = Actor::New();
+    mPaddleHandle = CreateImage(PADDLE_HANDLE_IMAGE);
+    mPaddleImage = CreateImage(PADDLE_IMAGE);
+    mPaddle.Add( mPaddleHandle );
+    mPaddle.Add( mPaddleImage );
+    mPaddleHandle.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mPaddleHandle.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mPaddleHandle.SetPosition( 0.0f, stageSize.width * 0.0125f );
+    mPaddleImage.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mPaddleImage.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mPaddle.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mPaddle.SetAnchorPoint( AnchorPoint::CENTER );
+    mPaddleFullSize = PADDLE_SIZE * stageSize.width;
+    mPaddle.SetSize( mPaddleFullSize + mPaddleHitMargin );
+    mPaddleHandle.SetSize( PADDLE_HANDLE_SIZE * stageSize.width );
+    mPaddleImage.SetSize( mPaddleFullSize );
+
+    mWobbleProperty = mPaddle.RegisterProperty(WOBBLE_PROPERTY_NAME, 0.0f);
+    Constraint wobbleConstraint = Constraint::New<Quaternion>( mPaddle, Actor::Property::ORIENTATION, WobbleConstraint(Degree( 10.0f )));
+    wobbleConstraint.AddSource( LocalSource(mWobbleProperty) );
+    wobbleConstraint.Apply();
+
+    mPaddle.SetPosition( stageSize * Vector3( PADDLE_START_POSITION ) );
+    mContentLayer.Add(mPaddle);
+    mPaddle.TouchSignal().Connect(this, &ExampleController::OnTouchPaddle);
+    mContentLayer.TouchSignal().Connect(this, &ExampleController::OnTouchLayer);
+
+    const float margin(BALL_SIZE.width * stageSize.width * 0.5f);
+
+    // Set up notifications for ball's collisions against walls.
+    PropertyNotification leftNotification = mBall.AddPropertyNotification( Actor::Property::POSITION_X, LessThanCondition(margin) );
+    leftNotification.NotifySignal().Connect( this, &ExampleController::OnHitLeftWall );
+
+    PropertyNotification rightNotification = mBall.AddPropertyNotification( Actor::Property::POSITION_X, GreaterThanCondition(stageSize.width - margin) );
+    rightNotification.NotifySignal().Connect( this, &ExampleController::OnHitRightWall );
+
+    PropertyNotification topNotification = mBall.AddPropertyNotification( Actor::Property::POSITION_Y, LessThanCondition(margin) );
+    topNotification.NotifySignal().Connect( this, &ExampleController::OnHitTopWall );
+
+    PropertyNotification bottomNotification = mBall.AddPropertyNotification( Actor::Property::POSITION_Y, GreaterThanCondition(stageSize.height + margin) );
+    bottomNotification.NotifySignal().Connect( this, &ExampleController::OnHitBottomWall );
+
+    // Set up notification for ball colliding against paddle.
+    Actor delegate = Actor::New();
+    stage.Add(delegate);
+    Property::Index property = delegate.RegisterProperty(COLLISION_PROPERTY_NAME, Vector3::ZERO);
+    Constraint constraint = Constraint::New<Vector3>( delegate, property, CollisionCircleRectangleConstraint( -Vector3(0.0f, mPaddleHitMargin.height * 0.575f, 0.0f),-Vector3(mPaddleHitMargin) ) );
+    constraint.AddSource( Source(mBall, Actor::Property::POSITION) );
+    constraint.AddSource( Source(mPaddle, Actor::Property::POSITION) );
+    constraint.AddSource( Source(mBall, Actor::Property::SIZE) );
+    constraint.AddSource( Source(mPaddle, Actor::Property::SIZE) );
+    constraint.Apply();
+
+    PropertyNotification paddleNotification = delegate.AddPropertyNotification( property, GreaterThanCondition(0.0f) );
+    paddleNotification.NotifySignal().Connect( this, &ExampleController::OnHitPaddle );
+
+    RestartGame();
+  }
+
+  /**
+   * Restarts Game
+   * Resets Lives count and other stats, and loads level
+   */
+  void RestartGame()
+  {
+    mLives = TOTAL_LIVES;
+    mLevel = 0;
+    mBall.SetPosition( mBallStartPosition );
+    mBallVelocity = Vector3::ZERO;
+    mPaddle.SetSize( mPaddleFullSize + mPaddleHitMargin );
+    mPaddleImage.SetSize( mPaddleFullSize );
+
+    LoadLevel(mLevel);
+  }
+
+  /**
+   * Loads level
+   * All existing level content is removed, and new bricks
+   * are added.
+   * @param[in] level Level index to load.
+   */
+  void LoadLevel(int level)
+  {
+    if(mLevelContainer && mLevelContainer.GetParent() == mContentLayer)
+    {
+      mContentLayer.Remove( mLevelContainer );
+    }
+
+    mLevelContainer = Actor::New();
+    mLevelContainer.SetAnchorPoint( AnchorPoint::CENTER );
+    mLevelContainer.SetParentOrigin( ParentOrigin::CENTER );
+    mLevelContainer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    mContentLayer.Add( mLevelContainer );
+
+    mBrickCount = 0;
+
+    if( mBrickImageMap.Empty() )
+    {
+      Vector2 stageSize(Stage::GetCurrent().GetSize());
+      const Vector2 brickSize(BRICK_SIZE * Vector2(stageSize.x, stageSize.x));
+
+      mBrickImageMap["desiredWidth"] = static_cast<int>( brickSize.width );
+      mBrickImageMap["desiredHeight"] = static_cast<int>( brickSize.height );
+      mBrickImageMap["fittingMode"] = "SCALE_TO_FILL";
+      mBrickImageMap["samplingMode"] = "BOX_THEN_LINEAR";
+    }
+
+    switch(level%TOTAL_LEVELS)
+    {
+      case 0:
+      {
+        GenerateLevel0();
+        break;
+      }
+      case 1:
+      {
+        GenerateLevel1();
+        break;
+      }
+      case 2:
+      {
+        GenerateLevel2();
+        break;
+      }
+      default:
+      {
+        break;
+      }
+    } // end switch
+  }
+
+  /**
+   * Generates level 0
+   */
+  void GenerateLevel0()
+  {
+    Vector2 stageSize(Stage::GetCurrent().GetSize());
+    const Vector2 brickSize(BRICK_SIZE * stageSize.width);
+
+    const int columns = (0.85f * stageSize.width) / brickSize.width; // 85 percent of the width of the screen covered with bricks.
+    const int rows = (0.3f * stageSize.height) / brickSize.height;   // 30 percent of the height of the screen covered with bricks.
+    const Vector2 offset( (stageSize.x - (columns * brickSize.width)) * 0.5f,
+                           stageSize.y * 0.125f );
+
+    for(int j = 0; j < rows; j++)
+    {
+      for(int i = 0; i < columns; i++)
+      {
+        Actor brick = CreateBrick(Vector2(i * brickSize.width + offset.x, j * brickSize.height + offset.y) + (brickSize * 0.5f), j % TOTAL_BRICKS );
+        mLevelContainer.Add(brick);
+        mBrickCount++;
+      }
+    }
+  }
+
+  /**
+   * Generates level 1
+   */
+  void GenerateLevel1()
+  {
+    Vector2 stageSize(Stage::GetCurrent().GetSize());
+    const Vector2 brickSize(BRICK_SIZE * stageSize.width);
+
+    const int columns = (0.85f * stageSize.width) / brickSize.width; // 85 percent of the width of the screen covered with bricks.
+    const int rows = (0.3f * stageSize.height) / brickSize.height;   // 30 percent of the height of the screen covered with bricks.
+    const Vector2 offset( (stageSize.x - (columns * brickSize.width)) * 0.5f,
+                           stageSize.y * 0.125f );
+
+    for(int j = 0; j < rows; j++)
+    {
+      for(int i = 0; i < columns; i++)
+      {
+        int i2 = columns - i - 1;
+        int j2 = rows - j - 1;
+        int brickIndex = std::min( std::min(i, j), std::min(i2, j2) ) % TOTAL_BRICKS;
+
+        Actor brick = CreateBrick(Vector2(i * brickSize.width + offset.x, j * brickSize.height + offset.y) + (brickSize * 0.5f), brickIndex );
+
+        mLevelContainer.Add(brick);
+        mBrickCount++;
+      }
+    }
+  }
+
+  /**
+   * Generates level 2
+   */
+  void GenerateLevel2()
+  {
+    Vector2 stageSize(Stage::GetCurrent().GetSize());
+    const Vector2 brickSize(BRICK_SIZE * stageSize.width);
+
+    const int columns = (0.85f * stageSize.width) / brickSize.width; // 85 percent of the width of the screen covered with bricks.
+    const int rows = (0.3f * stageSize.height) / brickSize.height;   // 30 percent of the height of the screen covered with bricks.
+    const Vector2 offset( (stageSize.x - (columns * brickSize.width)) * 0.5f,
+                           stageSize.y * 0.125f );
+
+    // lays down bricks in a spiral formation starting at i,j = (0,0) top left corner
+    // travelling right di,dj = (1,0) initially
+    int i = 0;
+    int j = 0;
+    int di = 1;
+    int dj = 0;
+
+    // contracting boundaries
+    int left = 0;
+    int right = columns - 1;
+    int top = 2;
+    int bottom = rows - 1;
+
+    // length of current line. we stop laying down bricks when the length is 1 brick or less.
+    int length = 0;
+    while(true)
+    {
+      Actor brick = CreateBrick(Vector2(i * brickSize.width + offset.x, j * brickSize.height + offset.y) + (brickSize * 0.5f), 0 );
+      mLevelContainer.Add(brick);
+      i+=di;
+      j+=dj;
+      bool turn(false);
+      if((i==right) && (di==1))
+      {
+        right -= 2;
+        turn = true;
+      }
+      if((j==bottom) && (dj==1))
+      {
+        bottom -= 2;
+        turn = true;
+      }
+      if((i==left) && (di==-1))
+      {
+        left += 2;
+        turn = true;
+      }
+      if((j==top) && (dj==-1))
+      {
+        top += 2;
+        turn = true;
+      }
+      if(turn)
+      {
+        // turn 90 degrees clockwise.
+        std::swap(di, dj);
+        di = -di;
+        if (length<=1)
+        {
+          break;
+        }
+        length = 0;
+      }
+      length++;
+      mBrickCount++;
+    }
+  }
+
+
+  /**
+   * Creates a brick at a specified position on the stage
+   * @param[in] position the position for the brick
+   * @param[in] type the type of brick
+   * @return The Brick Actor is returned.
+   */
+  Actor CreateBrick( const Vector2& position, int type )
+  {
+    mBrickImageMap["url"] = BRICK_IMAGE_PATH[type];
+    ImageView brick = ImageView::New();
+    brick.SetProperty( ImageView::Property::IMAGE, mBrickImageMap );
+    brick.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    brick.SetAnchorPoint(AnchorPoint::CENTER);
+    brick.SetPosition( Vector3( position ) );
+
+    // Add a constraint on the brick between it and the ball generating a collision-property
+    Property::Index property = brick.RegisterProperty(COLLISION_PROPERTY_NAME, Vector3::ZERO);
+    Constraint constraint = Constraint::New<Vector3>( brick, property, CollisionCircleRectangleConstraint(BRICK_COLLISION_MARGIN) );
+    constraint.AddSource( Source(mBall, Actor::Property::POSITION) );
+    constraint.AddSource( Source(brick, Actor::Property::POSITION) );
+    constraint.AddSource( Source(mBall, Actor::Property::SIZE) );
+    constraint.AddSource( Source(brick, Actor::Property::SIZE) );
+    constraint.Apply();
+
+    // Now add a notification on this collision-property
+
+    PropertyNotification brickNotification = brick.AddPropertyNotification( property, GreaterThanCondition(0.0f) );
+    brickNotification.NotifySignal().Connect( this, &ExampleController::OnHitBrick );
+
+    return brick;
+  }
+
+  /**
+   * Creates an Image (Helper)
+   *
+   * @param[in] filename the path of the image.
+   */
+  ImageView CreateImage(const std::string& filename)
+  {
+    Property::Map propertyMap;
+    propertyMap.Insert(Visual::Property::TYPE, Visual::IMAGE);
+    propertyMap.Insert(ImageVisual::Property::URL, filename);
+    propertyMap.Insert(DevelVisual::Property::VISUAL_FITTING_MODE, DevelVisual::FILL);
+    ImageView actor = ImageView::New();
+    actor.SetProperty(Toolkit::ImageView::Property::IMAGE, propertyMap);
+    actor.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    actor.SetAnchorPoint(AnchorPoint::CENTER);
+    return actor;
+  }
+
+  /**
+   * Continue animation (based on current velocity)
+   */
+  void ContinueAnimation()
+  {
+    if(mBallAnimation)
+    {
+      mBallAnimation.Clear();
+    }
+
+    mBallAnimation = Animation::New(MAX_ANIMATION_DURATION);
+    mBallAnimation.AnimateBy( Property( mBall, Actor::Property::POSITION ), mBallVelocity * MAX_ANIMATION_DURATION);
+    mBallAnimation.Play();
+  }
+
+  /**
+   * Signal invoked whenever user touches the Paddle.
+   * @param[in] actor The actor touched
+   * @param[in] event The touch event
+   */
+  bool OnTouchPaddle(Actor actor, const TouchData& event)
+  {
+    if(event.GetPointCount()>0)
+    {
+      if( event.GetState( 0 ) == PointState::DOWN ) // Commence dragging
+      {
+        // Get point where user touched paddle (relative to paddle's center)
+        Vector2 screenPoint = event.GetScreenPosition( 0 );
+        mRelativeDragPoint = screenPoint;
+        mRelativeDragPoint -= actor.GetCurrentPosition();
+
+        mDragActor = actor;
+        mDragAnimation = Animation::New(0.25f);
+        mDragAnimation.AnimateTo( Property(mDragActor, Actor::Property::SCALE), Vector3(1.1f, 1.1f, 1.0f), AlphaFunction::EASE_OUT);
+        mDragAnimation.AnimateTo( Property(mPaddleHandle, Actor::Property::COLOR), Vector4(1.0f, 1.0f, 1.0f, 0.0f), AlphaFunction::EASE_OUT);
+        mDragAnimation.Play();
+      }
+    }
+    return false;
+  }
+
+  /**
+   * Signal invoked whenever user touches anywhere on the screen.
+   * @param[in] actor The actor touched
+   * @param[in] event The touch event
+   */
+  bool OnTouchLayer(Actor actor, const TouchData& event)
+  {
+    if(event.GetPointCount()>0)
+    {
+      if(mDragActor)
+      {
+        Vector3 position( event.GetScreenPosition( 0 ) );
+        mPaddle.SetPosition( position - mRelativeDragPoint );
+
+        if( event.GetState( 0 ) == PointState::UP ) // Stop dragging
+        {
+          mDragAnimation = Animation::New(0.25f);
+          mDragAnimation.AnimateTo( Property(mDragActor, Actor::Property::SCALE), Vector3(1.0f, 1.0f, 1.0f), AlphaFunction::EASE_IN);
+          mDragAnimation.AnimateTo( Property(mPaddleHandle, Actor::Property::COLOR), Vector4(1.0f, 1.0f, 1.0f, 1.0f), AlphaFunction::EASE_OUT);
+          mDragAnimation.Play();
+          mDragActor.Reset();
+        }
+      }
+    }
+    return false;
+  }
+
+  /**
+   * Notification: Ball hit left wall
+   * @param source The notification
+   */
+  void OnHitLeftWall(PropertyNotification& source)
+  {
+    mBallVelocity.x = fabsf(mBallVelocity.x);
+    ContinueAnimation();
+  }
+
+  /**
+   * Notification: Ball hit right wall
+   * @param source The notification
+   */
+  void OnHitRightWall(PropertyNotification& source)
+  {
+    mBallVelocity.x = -fabsf(mBallVelocity.x);
+    ContinueAnimation();
+  }
+
+  /**
+   * Notification: Ball hit top wall
+   * @param source The notification
+   */
+  void OnHitTopWall(PropertyNotification& source)
+  {
+    mBallVelocity.y = fabsf(mBallVelocity.y);
+    ContinueAnimation();
+  }
+
+  /**
+   * Notification: Ball hit bottom wall
+   * @param source The notification
+   */
+  void OnHitBottomWall(PropertyNotification& source)
+  {
+    if(mBallAnimation)
+    {
+      mBallAnimation.Clear();
+    }
+
+    if(mLives>0)
+    {
+      mLives--;
+      const float f(static_cast<float>(mLives) / TOTAL_LIVES);
+      mBallVelocity = Vector3::ZERO;
+
+      Animation shrink = Animation::New(0.5f);
+      shrink.AnimateTo( Property(mPaddle, Actor::Property::SIZE_WIDTH), mPaddleFullSize.x * f + mPaddleHitMargin.x);
+      shrink.AnimateTo( Property(mPaddleImage, Actor::Property::SIZE_WIDTH), mPaddleFullSize.x * f );
+
+      shrink.FinishedSignal().Connect( this, &ExampleController::OnPaddleShrunk );
+      shrink.Play();
+    }
+  }
+
+  /**
+   * Paddle Shrink Animation complete.
+   * @param[in] source The animation responsible for shrinking the paddle.
+   */
+  void OnPaddleShrunk( Animation &source )
+  {
+    // Reposition Ball in start position, and make ball appear.
+    mBall.SetPosition( mBallStartPosition );
+    mBall.SetColor( Vector4(1.0f, 1.0f, 1.0f, 0.1f) );
+    Animation appear = Animation::New(0.5f);
+    appear.AnimateTo( Property(mBall, Actor::Property::COLOR), Vector4(1.0f, 1.0f, 1.0f, 1.0f) );
+    appear.Play();
+
+    if(!mLives)
+    {
+      RestartGame();
+    }
+  }
+
+  /**
+   * Notification: Ball hit paddle
+   * @param source The notification
+   */
+  void OnHitPaddle(PropertyNotification& source)
+  {
+    Actor delegate = Actor::DownCast(source.GetTarget());
+    Vector3 collisionVector = delegate.GetCurrentProperty< Vector3 >( source.GetTargetProperty() );
+    Vector3 ballRelativePosition(mBall.GetCurrentPosition() - mPaddle.GetCurrentPosition());
+    ballRelativePosition.Normalize();
+
+    collisionVector.x += ballRelativePosition.x * 0.5f;
+
+    if(mBallVelocity.LengthSquared() < Math::MACHINE_EPSILON_1)
+    {
+      mBallVelocity += collisionVector * BALL_VELOCITY;
+    }
+    else
+    {
+      const float normalVelocity = fabsf(mBallVelocity.Dot(collisionVector));
+      mBallVelocity += collisionVector * normalVelocity * 2.0f;
+      const float currentSpeed = mBallVelocity.Length();
+      const float limitedSpeed = std::min( currentSpeed, MAX_VELOCITY );
+      mBallVelocity = mBallVelocity * limitedSpeed / currentSpeed;
+    }
+
+    ContinueAnimation();
+
+    // wobble paddle
+    mWobbleAnimation = Animation::New(0.5f);
+    mWobbleAnimation.AnimateTo( Property( mPaddle, mWobbleProperty ), 1.0f );
+    mWobbleAnimation.Play();
+    mPaddle.SetProperty(mWobbleProperty, 0.0f);
+  }
+
+  /**
+   * Notification: Ball hit brick
+   * @param source The notification
+   */
+  void OnHitBrick(PropertyNotification& source)
+  {
+    Actor brick = Actor::DownCast(source.GetTarget());
+    Vector3 collisionVector = brick.GetCurrentProperty< Vector3 >( source.GetTargetProperty() );
+
+    const float normalVelocity = fabsf(mBallVelocity.Dot(collisionVector));
+    mBallVelocity += collisionVector * normalVelocity * 2.0f;
+    const float currentSpeed = mBallVelocity.Length();
+    const float limitedSpeed = std::min( currentSpeed, MAX_VELOCITY );
+    mBallVelocity = mBallVelocity * limitedSpeed / currentSpeed;
+
+    ContinueAnimation();
+
+    // remove collision-constraint and notification.
+    brick.RemovePropertyNotification(source);
+    brick.RemoveConstraints();
+
+    // fade brick (destroy)
+    Animation destroyAnimation = Animation::New(0.5f);
+    destroyAnimation.AnimateTo( Property( brick, Actor::Property::COLOR_ALPHA ), 0.0f, AlphaFunction::EASE_IN );
+    destroyAnimation.Play();
+    destroyAnimation.FinishedSignal().Connect( this, &ExampleController::OnBrickDestroyed );
+    mDestroyAnimationMap[destroyAnimation] = brick;
+  }
+
+  /**
+   * Brick Destruction Animation complete.
+   * @param[in] source The animation responsible for destroying the brick
+   */
+  void OnBrickDestroyed( Animation& source )
+  {
+    // Remove brick from stage, it's constraint and property notification should also remove themselves.
+    Actor brick = mDestroyAnimationMap[source];
+    mDestroyAnimationMap.erase(source);
+    brick.GetParent().Remove(brick);
+    mBrickCount--;
+
+    if(!mBrickCount)
+    {
+      mLevel++;
+      LoadLevel(mLevel);
+    }
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;                            ///< Application instance
+  Toolkit::Control mView;                               ///< The View instance.
+  Layer mContentLayer;                                  ///< The content layer (contains game actors)
+  ImageView mBall;                                      ///< The Moving ball image.
+  Vector3 mBallStartPosition;                           ///< Ball Start position
+  Vector3 mBallVelocity;                                ///< Ball's current direction.
+  Animation mBallAnimation;                             ///< Ball's animation
+  Actor mPaddle;                                        ///< The paddle including hit area.
+  ImageView mPaddleImage;                               ///< The paddle's image.
+  ImageView mPaddleHandle;                              ///< The paddle's handle (where the user touches)
+  Vector2 mPaddleHitMargin;                             ///< The paddle hit margin.
+  Animation mWobbleAnimation;                           ///< Paddle's animation when hit (wobbles)
+  Property::Index mWobbleProperty;                      ///< The wobble property (generated from animation)
+  Actor mLevelContainer;                                ///< The level container (contains bricks)
+  Property::Map mBrickImageMap;                       ///< The property map used to load the brick
+
+  // actor - dragging functionality
+
+  Animation mDragAnimation;                             ///< Animation for dragging. (grows - affects ACTOR::SCALE)
+  Actor mDragActor;                                     ///< The actor which is being dragged (if any)
+  Vector3 mRelativeDragPoint;                           ///< The point the user touched, relative to the actor.
+  std::map<Animation, Actor> mDestroyAnimationMap;      ///< Keep track of which actors are to be destroyed.
+  Vector2 mPaddleFullSize;                              ///< Initial 100% size of the paddle.
+  int mLevel;                                           ///< Current level
+  int mLives;                                           ///< Total lives.
+  int mBrickCount;                                      ///< Total bricks on screen.
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  ExampleController test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/bloom-view/bloom-view-example.cpp b/examples/bloom-view/bloom-view-example.cpp
new file mode 100644 (file)
index 0000000..7c856c1
--- /dev/null
@@ -0,0 +1,221 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/bloom-view/bloom-view.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char* BACKGROUND_IMAGE_PATH( DEMO_IMAGE_DIR "desktop_background_1440x2560.png" );
+const char* UI_DIFFUSE_IMAGE( DEMO_IMAGE_DIR "UI-Leather-DIFF.png" );
+
+const Rect<int> UI_PIXEL_AREA( 0, 0, 720, 1280 );
+
+const Rect<int> PANEL1_PIXEL_AREA( 0, 0, 720,  39 );
+const Rect<int> PANEL2_PIXEL_AREA( 0, 39, 720, 100 );
+
+const unsigned int NUM_MOVEMENT_ANIMATIONS = 2;
+
+// for animating bloom intensity on tap gesture
+const float PULSE_BLOOM_INCREASE_ANIM_TIME = 1.175;
+const float PULSE_BLOOM_DECREASE_ANIM_TIME = 2.4;
+const float PULSE_BLOOM_TOTAL_ANIM_TIME = PULSE_BLOOM_INCREASE_ANIM_TIME + PULSE_BLOOM_DECREASE_ANIM_TIME;
+const float PULSE_BLOOM_INTENSITY_DEFAULT = 1.0f;
+const float PULSE_BLOOM_INTENSITY_INCREASE = 3.0f;
+
+// These values depend on the button background image
+const Vector4 BUTTON_IMAGE_BORDER(16.0f, 16.0f, 16.0f, 20.0f);
+
+const float UI_MARGIN = 4.0f;                              ///< Screen Margin for placement of UI buttons
+const Vector3 BUTTON_SIZE_CONSTRAINT( 0.24f, 0.09f, 1.0f );
+
+} // namespace
+
+/**
+ * This example demonstrates a bloom effect.
+ */
+class BloomExample : public ConnectionTracker
+{
+public:
+
+  BloomExample( Application &application )
+  : mApplication(application),
+    mCurrentAnimation(0)
+  {
+    application.InitSignal().Connect( this, &BloomExample::Create );
+  }
+
+  ~BloomExample()
+  {
+  }
+
+public:
+
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+    Vector2 viewSize( stageSize );
+
+    mRootActor = Actor::New();
+    mRootActor.SetParentOrigin( ParentOrigin::CENTER );
+    mRootActor.SetSize( stageSize );
+    stage.Add( mRootActor );
+
+    // Create the object that will perform the blooming work
+    mBloomView = Dali::Toolkit::BloomView::New();
+    mBloomView.SetParentOrigin( ParentOrigin::CENTER );
+    mBloomView.SetSize( viewSize );
+    mRootActor.Add( mBloomView );
+    mBloomView.Activate();
+
+    Layer backgroundLayer = Layer::New();
+    backgroundLayer.SetSize( viewSize );
+    backgroundLayer.SetParentOrigin( ParentOrigin::CENTER );
+    mBloomView.Add( backgroundLayer );
+
+    // Create the background image
+    ImageView backgroundImage = ImageView::New( BACKGROUND_IMAGE_PATH );
+    backgroundImage.SetParentOrigin( ParentOrigin::CENTER );
+    backgroundImage.SetSize( viewSize );
+    backgroundLayer.Add( backgroundImage );
+
+    Layer foregroundLayer = Layer::New();
+    foregroundLayer.SetSize( viewSize );
+    foregroundLayer.SetParentOrigin( ParentOrigin::CENTER );
+    mBloomView.Add( foregroundLayer );
+
+    // Create visible actors
+    mObjectRootActor = Actor::New();
+    mObjectRootActor.SetParentOrigin( ParentOrigin::CENTER );
+    mObjectRootActor.SetSize( viewSize );
+    foregroundLayer.Add( mObjectRootActor );
+
+    ImageView imageView = ImageView::New( UI_DIFFUSE_IMAGE );
+    imageView.SetParentOrigin( ParentOrigin::CENTER );
+    imageView.SetSize( viewSize );
+    mObjectRootActor.Add( imageView );
+
+    imageView = ImageView::New( UI_DIFFUSE_IMAGE );
+    imageView.SetParentOrigin( ParentOrigin::CENTER );
+    imageView.SetSize( stageSize * 0.5f );
+    imageView.SetPosition( 0.0f, 0.0f, 100.0f );
+    mObjectRootActor.Add( imageView );
+
+    AnimateBloomView();
+    PulseBloomIntensity();
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &BloomExample::OnKeyEvent );
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  void AnimateBloomView()
+  {
+    if(mRotationAnimation)
+    {
+      mRotationAnimation.Stop();
+    }
+    if(mResizeAnimation)
+    {
+      mResizeAnimation.Stop();
+    }
+    if(mTranslationAnimation)
+    {
+      mTranslationAnimation.Stop();
+    }
+    if(mBlurAnimation)
+    {
+      mBlurAnimation.Stop();
+    }
+
+    // ROTATE
+    mRotationAnimation = Animation::New( 5.0f );
+    mRotationAnimation.AnimateBy( Property( mObjectRootActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::YAXIS ), AlphaFunction::EASE_IN_OUT );
+    mRotationAnimation.SetEndAction( Animation::Discard );
+    mRotationAnimation.SetLooping( true );
+    mRotationAnimation.Play();
+
+    // TRANSLATE
+    mTranslationAnimation = Animation::New( 7.5f );
+    mTranslationAnimation.AnimateBy( Property(mObjectRootActor, Actor::Property::POSITION), Vector3(100.0f, 0.0f, 0.0f), AlphaFunction::BOUNCE, TimePeriod(2.5f) );
+    mTranslationAnimation.AnimateBy( Property(mObjectRootActor, Actor::Property::POSITION), Vector3(300.0f, 0.0f, 0.0f), AlphaFunction::BOUNCE, TimePeriod(2.5f, 2.5f) );
+    mTranslationAnimation.AnimateBy( Property(mObjectRootActor, Actor::Property::POSITION), Vector3(0.0f, 0.0f, 0.0f),   AlphaFunction::BOUNCE, TimePeriod(5.0f, 2.5f) );
+    mTranslationAnimation.SetEndAction( Animation::Discard );
+    mTranslationAnimation.SetLooping( true );
+    //mTranslationAnimation.Play();
+
+    // BLUR
+    mBlurAnimation = Animation::New( 4.0f );
+    mBlurAnimation.AnimateTo( Property( mBloomView, mBloomView.GetBlurStrengthPropertyIndex() ), 0.0f, AlphaFunction::LINEAR, TimePeriod(0.0f, 0.5f) );
+    mBlurAnimation.AnimateTo( Property( mBloomView, mBloomView.GetBlurStrengthPropertyIndex() ), 1.0f, AlphaFunction::LINEAR, TimePeriod(2.0f, 0.5f) );
+    mBlurAnimation.SetEndAction( Animation::Discard );
+    mBlurAnimation.SetLooping( true );
+    mBlurAnimation.Play();
+  }
+
+  void PulseBloomIntensity()
+  {
+    mPulseBloomIntensityAnim = Animation::New( 2.5f );
+    mPulseBloomIntensityAnim.AnimateTo( Property(mBloomView, mBloomView.GetBloomIntensityPropertyIndex()), 3.0f, AlphaFunction::BOUNCE, TimePeriod(2.5f) );
+    mPulseBloomIntensityAnim.SetEndAction( Animation::Discard );
+    mPulseBloomIntensityAnim.SetLooping( true );
+    mPulseBloomIntensityAnim.Play();
+  }
+
+private:
+
+  Application& mApplication;
+
+  Actor mRootActor;
+
+  Actor mObjectRootActor;
+
+  unsigned int mCurrentAnimation;
+  Animation mRotationAnimation;
+  Animation mResizeAnimation;
+  Animation mTranslationAnimation;
+  Animation mBlurAnimation;
+  Animation mPulseBloomIntensityAnim;
+
+  BloomView mBloomView;
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application application = Application::New( &argc, &argv );
+
+  BloomExample theApp( application );
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/bubble-effect/bubble-effect-example.cpp b/examples/bubble-effect/bubble-effect-example.cpp
new file mode 100644 (file)
index 0000000..de1f14d
--- /dev/null
@@ -0,0 +1,314 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/bubble-effect/bubble-emitter.h>
+#include "shared/view.h"
+#include "shared/utility.h"
+
+using namespace Dali;
+
+namespace
+{
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const APPLICATION_TITLE( "Bubble Effect" );
+const char * const CHANGE_BACKGROUND_ICON( DEMO_IMAGE_DIR "icon-change.png" );
+const char * const CHANGE_BACKGROUND_ICON_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char * const CHANGE_BUBBLE_SHAPE_ICON( DEMO_IMAGE_DIR "icon-replace.png" );
+const char * const CHANGE_BUBBLE_SHAPE_ICON_SELECTED( DEMO_IMAGE_DIR "icon-replace-selected.png" );
+
+const char* BACKGROUND_IMAGES[]=
+{
+  DEMO_IMAGE_DIR "background-1.jpg",
+  DEMO_IMAGE_DIR "background-2.jpg",
+  DEMO_IMAGE_DIR "background-3.jpg",
+  DEMO_IMAGE_DIR "background-4.jpg",
+  DEMO_IMAGE_DIR "background-5.jpg",
+};
+const unsigned int NUM_BACKGROUND_IMAGES( sizeof( BACKGROUND_IMAGES ) / sizeof( BACKGROUND_IMAGES[0] ) );
+
+const char* BUBBLE_SHAPE_IMAGES[] =
+{
+  DEMO_IMAGE_DIR "bubble-ball.png",
+  DEMO_IMAGE_DIR "icon-effect-cross.png",
+  DEMO_IMAGE_DIR "icon-item-view-layout-spiral.png",
+  DEMO_IMAGE_DIR "icon-replace.png"
+};
+const unsigned int NUM_BUBBLE_SHAPE_IMAGES( sizeof( BUBBLE_SHAPE_IMAGES ) / sizeof( BUBBLE_SHAPE_IMAGES[0] ) );
+
+const Vector2 DEFAULT_BUBBLE_SIZE( 10.f, 30.f );
+const unsigned int DEFAULT_NUMBER_OF_BUBBLES( 1000 );
+
+}// end LOCAL_STUFF
+
+// This example shows the usage of BubbleEmitter which displays lots of moving bubbles on the stage.
+class BubbleEffectExample : public ConnectionTracker
+{
+public:
+  BubbleEffectExample(Application &app)
+  : mApp(app),
+    mBackground(),
+    mBubbleEmitter(),
+    mEmitAnimation(),
+    mChangeBackgroundButton(),
+    mChangeBubbleShapeButton(),
+    mTimerForBubbleEmission(),
+    mHSVDelta( Vector3( 0.f, 0.f, 0.5f ) ),
+    mCurrentTouchPosition(),
+    mEmitPosition(),
+    mAnimateComponentCount( 0 ),
+    mNonMovementCount( 0 ),
+    mTimerInterval( 16 ),
+    mCurrentBackgroundImageId( 0 ),
+    mCurrentBubbleShapeImageId( 0 ),
+    mNeedNewAnimation( true )
+  {
+    // Connect to the Application's Init signal
+    app.InitSignal().Connect(this, &BubbleEffectExample::Create);
+  }
+
+  ~BubbleEffectExample()
+  {
+  }
+
+private:
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create(Application& app)
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    stage.KeyEventSignal().Connect(this, &BubbleEffectExample::OnKeyEvent);
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    Toolkit::ToolBar toolBar;
+    Layer content = DemoHelper::CreateView( app,
+                                            mBackground,
+                                            toolBar,
+                                            "",
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    // Add a button to change background. (right of toolbar)
+    mChangeBackgroundButton = Toolkit::PushButton::New();
+    mChangeBackgroundButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CHANGE_BACKGROUND_ICON );
+    mChangeBackgroundButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CHANGE_BACKGROUND_ICON_SELECTED );
+    mChangeBackgroundButton.ClickedSignal().Connect( this, &BubbleEffectExample::OnChangeIconClicked );
+    toolBar.AddControl( mChangeBackgroundButton,
+                        DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
+                        Toolkit::Alignment::HorizontalRight,
+                        DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+    // Add a button to change bubble shape. ( left of bar )
+    mChangeBubbleShapeButton = Toolkit::PushButton::New();
+    mChangeBubbleShapeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CHANGE_BUBBLE_SHAPE_ICON );
+    mChangeBubbleShapeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CHANGE_BUBBLE_SHAPE_ICON_SELECTED );
+    mChangeBubbleShapeButton.ClickedSignal().Connect( this, &BubbleEffectExample::OnChangeIconClicked );
+    toolBar.AddControl( mChangeBubbleShapeButton,
+                        DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
+                        Toolkit::Alignment::HorizontalLeft,
+                        DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    // Create and initialize the BubbleEmitter object
+    mBubbleEmitter = Toolkit::BubbleEmitter::New( stageSize,
+                                                  DemoHelper::LoadTexture( BUBBLE_SHAPE_IMAGES[mCurrentBubbleShapeImageId] ),
+                                                  DEFAULT_NUMBER_OF_BUBBLES,
+                                                  DEFAULT_BUBBLE_SIZE);
+
+    mBubbleEmitter.SetBackground( DemoHelper::LoadStageFillingTexture( BACKGROUND_IMAGES[mCurrentBackgroundImageId] ), mHSVDelta );
+
+    // Get the root actor of all bubbles, and add it to stage.
+    Actor bubbleRoot = mBubbleEmitter.GetRootActor();
+    bubbleRoot.SetParentOrigin(ParentOrigin::CENTER);
+    bubbleRoot.SetZ(0.1f); // Make sure the bubbles displayed on top og the background.
+    content.Add( bubbleRoot );
+
+    // Set the application background
+    mBackground.SetProperty( Toolkit::Control::Property::BACKGROUND, BACKGROUND_IMAGES[ mCurrentBackgroundImageId ] );
+
+    // Set up the timer to emit bubble regularly when the finger is touched down but not moved
+    mTimerForBubbleEmission = Timer::New( mTimerInterval );
+    mTimerForBubbleEmission.TickSignal().Connect(this, &BubbleEffectExample::OnTimerTick);
+
+    // Connect the callback to the touch signal on the background
+    mBackground.TouchSignal().Connect( this, &BubbleEffectExample::OnTouch );
+  }
+
+
+/***********
+ * Emit bubbles
+ *****************/
+
+  // Set up the animation of emitting bubbles, to be efficient, every animation controls multiple emission ( 4 here )
+  void SetUpAnimation( Vector2 emitPosition, Vector2 direction )
+  {
+    if( mNeedNewAnimation )
+    {
+      float duration = Random::Range(1.f, 1.5f);
+      mEmitAnimation = Animation::New( duration );
+      mNeedNewAnimation = false;
+      mAnimateComponentCount = 0;
+    }
+
+    mBubbleEmitter.EmitBubble( mEmitAnimation, emitPosition, direction + Vector2(0.f, 30.f) /* upwards */, Vector2(300, 600) );
+
+    mAnimateComponentCount++;
+
+    if( mAnimateComponentCount % 4 ==0 )
+    {
+      mEmitAnimation.Play();
+      mNeedNewAnimation = true;
+    }
+  }
+
+  // Emit bubbles when the finger touches down but keep stationary.
+  // And stops emitting new bubble after being stationary for 2 seconds
+  bool OnTimerTick()
+  {
+    if(mEmitPosition == mCurrentTouchPosition) // finger is not moving
+    {
+      mNonMovementCount++;
+      if(mNonMovementCount < (1000 / mTimerInterval)) // 1 seconds
+      {
+        for(int i = 0; i < 4; i++) // emit 4 bubbles every timer tick
+        {
+          SetUpAnimation( mCurrentTouchPosition+Vector2(rand()%5, rand()%5), Vector2(rand()%60-30, rand()%100-50) );
+        }
+      }
+    }
+    else
+    {
+      mNonMovementCount = 0;
+      mEmitPosition = mCurrentTouchPosition;
+    }
+
+    return true;
+  }
+
+  // Callback function of the touch signal on the background
+  bool OnTouch(Dali::Actor actor, const Dali::TouchData& event)
+  {
+    switch( event.GetState( 0 ) )
+    {
+      case PointState::DOWN:
+      {
+        mCurrentTouchPosition = mEmitPosition = event.GetScreenPosition( 0 );
+        mTimerForBubbleEmission.Start();
+        mNonMovementCount = 0;
+
+        break;
+      }
+      case PointState::MOTION:
+      {
+        Vector2 displacement = event.GetScreenPosition( 0 ) - mCurrentTouchPosition;
+        mCurrentTouchPosition = event.GetScreenPosition( 0 );
+        //emit multiple bubbles along the moving direction when the finger moves quickly
+        float step = std::min(5.f, displacement.Length());
+        for( float i=0.25f; i<step; i=i+1.f)
+        {
+          SetUpAnimation( mCurrentTouchPosition+displacement*(i/step), displacement );
+        }
+        break;
+      }
+      case PointState::UP:
+      case PointState::LEAVE:
+      case PointState::INTERRUPTED:
+      {
+        mTimerForBubbleEmission.Stop();
+        mEmitAnimation.Play();
+        mNeedNewAnimation = true;
+        mAnimateComponentCount = 0;
+        break;
+      }
+      case PointState::STATIONARY:
+      default:
+      {
+        break;
+      }
+
+    }
+    return true;
+  }
+
+  bool OnChangeIconClicked( Toolkit::Button button )
+  {
+    if(button == mChangeBackgroundButton)
+    {
+      mCurrentBackgroundImageId = (mCurrentBackgroundImageId+1) % NUM_BACKGROUND_IMAGES;
+
+      //Update bubble emitter background
+      mBubbleEmitter.SetBackground( DemoHelper::LoadStageFillingTexture( BACKGROUND_IMAGES[ mCurrentBackgroundImageId  ] ), mHSVDelta );
+
+      // Set the application background
+      mBackground.SetProperty( Toolkit::Control::Property::BACKGROUND, BACKGROUND_IMAGES[ mCurrentBackgroundImageId ] );
+    }
+    else if( button == mChangeBubbleShapeButton )
+    {
+      mBubbleEmitter.SetBubbleShape( DemoHelper::LoadTexture( BUBBLE_SHAPE_IMAGES[ ++mCurrentBubbleShapeImageId % NUM_BUBBLE_SHAPE_IMAGES ] ) );
+    }
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApp.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&               mApp;
+  Dali::Toolkit::Control     mBackground;
+
+  Toolkit::BubbleEmitter     mBubbleEmitter;
+  Animation                  mEmitAnimation;
+  Toolkit::PushButton        mChangeBackgroundButton;
+  Toolkit::PushButton        mChangeBubbleShapeButton;
+  Timer                      mTimerForBubbleEmission;
+
+  Vector3                    mHSVDelta;
+  Vector2                    mCurrentTouchPosition;
+  Vector2                    mEmitPosition;
+
+  unsigned int               mAnimateComponentCount;
+  unsigned int               mNonMovementCount;
+  unsigned int               mTimerInterval;
+  unsigned int               mCurrentBackgroundImageId;
+  unsigned int               mCurrentBubbleShapeImageId;
+
+  bool                       mNeedNewAnimation;
+};
+
+/*****************************************************************************/
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  BubbleEffectExample theApp(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/builder/examples.cpp b/examples/builder/examples.cpp
new file mode 100644 (file)
index 0000000..d4549b8
--- /dev/null
@@ -0,0 +1,606 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+//------------------------------------------------------------------------------
+//
+//
+//------------------------------------------------------------------------------
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/builder/builder.h>
+#include <dali-toolkit/devel-api/builder/tree-node.h>
+#include <dali-toolkit/devel-api/builder/json-parser.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+#include <dali-toolkit/devel-api/controls/navigation-view/navigation-view.h>
+
+#include <map>
+#include <string>
+#include <fstream>
+#include <streambuf>
+#include <sstream>
+#include <dirent.h>
+#include <stdio.h>
+#include <iostream>
+
+#include "sys/stat.h"
+#include <ctime>
+#include <cstring>
+
+#include <dali/integration-api/debug.h>
+#include <dali/devel-api/adaptor-framework/file-loader.h>
+#include "shared/view.h"
+
+#define TOKEN_STRING(x) #x
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char* BACKGROUND_IMAGE( "" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* EDIT_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
+const char* EDIT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+
+std::string USER_DIRECTORY;
+
+std::string JSON_BROKEN("                                      \
+{                                                              \
+  'stage':                                                     \
+  [                                                            \
+    {                                                          \
+      'type':'TextLabel',                                      \
+      'size': [50,50,1],                                       \
+      'parentOrigin': 'CENTER',                                \
+      'text':'COULD NOT LOAD JSON FILE'                        \
+    }                                                          \
+  ]                                                            \
+}                                                              \
+");
+
+std::string ReplaceQuotes(const std::string &single_quoted)
+{
+  std::string s(single_quoted);
+
+  // wrong as no embedded quote but had regex link problems
+  std::replace(s.begin(), s.end(), '\'', '"');
+
+  return s;
+}
+
+std::string GetFileContents(const std::string &fn)
+{
+  std::streampos bufferSize = 0;
+  Dali::Vector<char> fileBuffer;
+  if( !Dali::FileLoader::ReadFile( fn, bufferSize, fileBuffer, FileLoader::FileType::BINARY ) )
+  {
+    return std::string();
+  }
+
+  return std::string( &fileBuffer[0], bufferSize );
+};
+
+typedef std::vector<std::string> FileList;
+
+void DirectoryFileList(const std::string& directory, FileList& files)
+{
+  DIR           *d;
+  struct dirent *dir;
+  d = opendir(directory.c_str());
+  if (d)
+  {
+    while ((dir = readdir(d)) != NULL)
+    {
+      if (dir->d_type == DT_REG)
+      {
+        files.push_back( directory + std::string(dir->d_name) );
+      }
+    }
+
+    closedir(d);
+  }
+}
+
+void DirectoryFilesByType(const std::string& dir, const std::string& fileType /* ie "json" */, FileList& files)
+{
+  typedef FileList Collection;
+  typedef FileList::iterator Iter;
+
+  Collection allFiles;
+  DirectoryFileList(dir, allFiles);
+
+  for(Iter iter = allFiles.begin(); iter != allFiles.end(); ++iter)
+  {
+    size_t pos = (*iter).rfind( '.' );
+    if( pos != std::string::npos )
+    {
+      if( (*iter).substr( pos+1 ) == fileType )
+      {
+        files.push_back( (*iter) );
+      }
+    }
+  }
+}
+
+const std::string ShortName( const std::string& name )
+{
+  size_t pos = name.rfind( '/' );
+
+  if( pos != std::string::npos )
+  {
+    pos++;
+    return name.substr( pos );
+  }
+  else
+  {
+    return name;
+  }
+}
+
+//------------------------------------------------------------------------------
+//
+//
+//
+//------------------------------------------------------------------------------
+class FileWatcher
+{
+public:
+  FileWatcher(void);
+  ~FileWatcher(void);
+  explicit FileWatcher(const std::string &fn) { SetFilename(fn) ; };
+
+  void SetFilename(const std::string &fn);
+  std::string GetFilename() const;
+
+  bool FileHasChanged(void);
+  std::string GetFileContents(void) const { return ::GetFileContents(mstringPath) ; };
+
+private:
+  // compiler does
+  // FileWatcher(const FileWatcher&);
+  // FileWatcher &operator=(const FileWatcher &);
+
+  std::time_t mLastTime;
+  std::string mstringPath;
+
+};
+
+FileWatcher::FileWatcher(void) : mLastTime(0)
+{
+}
+
+bool FileWatcher::FileHasChanged(void)
+{
+  struct stat buf;
+
+  if(0 != stat(mstringPath.c_str(), &buf))
+  {
+    return false;
+  }
+  else
+  {
+    if(buf.st_mtime > mLastTime)
+    {
+      mLastTime = buf.st_mtime;
+      return true;
+    }
+    else
+    {
+      mLastTime = buf.st_mtime;
+      return false;
+    }
+  }
+
+  return false;
+}
+
+FileWatcher::~FileWatcher()
+{
+}
+
+void FileWatcher::SetFilename(const std::string &fn)
+{
+  mstringPath = fn;
+  FileHasChanged(); // update last time
+}
+
+std::string FileWatcher::GetFilename(void) const
+{
+  return mstringPath;
+}
+
+
+} // anon namespace
+
+
+//------------------------------------------------------------------------------
+//
+//
+//
+//------------------------------------------------------------------------------
+class ExampleApp : public ConnectionTracker, public Toolkit::ItemFactory
+{
+public:
+  ExampleApp(Application &app) : mApp(app)
+  {
+    app.InitSignal().Connect(this, &ExampleApp::Create);
+  }
+
+  ~ExampleApp() {}
+
+public:
+
+  void SetTitle(const std::string& title)
+  {
+    if(!mTitleActor)
+    {
+      mTitleActor = DemoHelper::CreateToolBarLabel( "" );
+      // Add title to the tool bar.
+      mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Alignment::HorizontalCenter );
+    }
+
+    mTitleActor.SetProperty( TextLabel::Property::TEXT, title );
+  }
+
+  bool OnBackButtonPressed( Toolkit::Button button )
+  {
+    OnQuitOrBack();
+    return true;
+  }
+
+  void SetUpItemView()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.DetectedSignal().Connect( this, &ExampleApp::OnTap );
+
+    mFiles.clear();
+
+    mItemView = ItemView::New(*this);
+
+    mItemView.SetParentOrigin(ParentOrigin::CENTER);
+    mItemView.SetAnchorPoint(AnchorPoint::CENTER);
+    mLayout = DefaultItemLayout::New( DefaultItemLayout::LIST );
+
+    mLayout->SetItemSize( Vector3( stage.GetSize().width, 50, 1 ) );
+
+    mItemView.AddLayout( *mLayout );
+
+    mItemView.SetKeyboardFocusable( true );
+
+    mFiles.clear();
+    FileList files;
+
+    if( USER_DIRECTORY.size() )
+    {
+      DirectoryFilesByType( USER_DIRECTORY, "json", files );
+    }
+    else
+    {
+      DirectoryFilesByType( DEMO_SCRIPT_DIR, "json", files );
+    }
+
+    std::sort(files.begin(), files.end());
+
+    ItemId itemId = 0;
+    for(FileList::iterator iter = files.begin(); iter != files.end(); ++iter)
+    {
+      JsonParser parser = JsonParser::New();
+
+      std::string data( GetFileContents( *iter ) );
+
+      parser.Parse( data );
+
+      if( parser.ParseError() )
+      {
+        std::cout << "Parser Error:" << *iter << std::endl;
+        std::cout << parser.GetErrorLineNumber() << "(" << parser.GetErrorColumn() << "):" << parser.GetErrorDescription() << std::endl;
+        exit(1);
+      }
+
+      if( parser.GetRoot() )
+      {
+        if( const TreeNode* node = parser.GetRoot()->Find("stage") )
+        {
+          // only those with a stage section
+          if( node->Size() )
+          {
+            mFiles.push_back( *iter );
+
+            mItemView.InsertItem( Item(itemId,
+                                       MenuItem( ShortName( *iter ) ) ),
+                                  0.5f );
+
+            itemId++;
+          }
+          else
+          {
+            std::cout << "Ignored file (stage has no nodes?):" << *iter << std::endl;
+          }
+        }
+        else
+        {
+          std::cout << "Ignored file (no stage section):" << *iter << std::endl;
+        }
+      }
+    }
+
+    // Activate the layout
+    Vector3 size(stage.GetSize());
+    mItemView.ActivateLayout(0, size, 0.0f/*immediate*/);
+  }
+
+
+  void OnTap( Actor actor, const TapGesture& tap )
+  {
+    ItemId id = mItemView.GetItemId( actor );
+
+    LoadFromFileList( id );
+  }
+
+  Actor MenuItem(const std::string& text)
+  {
+    TextLabel label = TextLabel::New( ShortName( text ) );
+    label.SetStyleName( "BuilderLabel" );
+    label.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+
+    // Hook up tap detector
+    mTapDetector.Attach( label );
+
+    return label;
+  }
+
+  bool OnTimer()
+  {
+    if( mFileWatcher.FileHasChanged() )
+    {
+      LoadFromFile( mFileWatcher.GetFilename() );
+    }
+
+    return true;
+  }
+
+  void ReloadJsonFile(const std::string& filename, Builder& builder, Layer& layer)
+  {
+    Stage stage = Stage::GetCurrent();
+
+    builder = Builder::New();
+    builder.QuitSignal().Connect( this, &ExampleApp::OnQuitOrBack );
+
+    Property::Map defaultDirs;
+    defaultDirs[ TOKEN_STRING(DEMO_IMAGE_DIR) ]  = DEMO_IMAGE_DIR;
+    defaultDirs[ TOKEN_STRING(DEMO_MODEL_DIR) ]  = DEMO_MODEL_DIR;
+    defaultDirs[ TOKEN_STRING(DEMO_SCRIPT_DIR) ] = DEMO_SCRIPT_DIR;
+
+    builder.AddConstants( defaultDirs );
+
+    // render tasks may have been setup last load so remove them
+    RenderTaskList taskList = stage.GetRenderTaskList();
+    if( taskList.GetTaskCount() > 1 )
+    {
+      typedef std::vector<RenderTask> Collection;
+      typedef Collection::iterator ColIter;
+      Collection tasks;
+
+      for(unsigned int i = 1; i < taskList.GetTaskCount(); ++i)
+      {
+        tasks.push_back( taskList.GetTask(i) );
+      }
+
+      for(ColIter iter = tasks.begin(); iter != tasks.end(); ++iter)
+      {
+        taskList.RemoveTask(*iter);
+      }
+
+      RenderTask defaultTask = taskList.GetTask(0);
+      defaultTask.SetSourceActor( stage.GetRootLayer() );
+      defaultTask.SetTargetFrameBuffer( FrameBufferImage() );
+    }
+
+    unsigned int numChildren = layer.GetChildCount();
+
+    for(unsigned int i=0; i<numChildren; ++i)
+    {
+      layer.Remove( layer.GetChildAt(0) );
+    }
+
+    std::string data(GetFileContents(filename));
+
+    try
+    {
+      builder.LoadFromString(data);
+    }
+    catch(...)
+    {
+      builder.LoadFromString(ReplaceQuotes(JSON_BROKEN));
+    }
+
+    builder.AddActors( layer );
+  }
+
+
+  void LoadFromFileList( size_t index )
+  {
+    if( index < mFiles.size())
+    {
+      const std::string& name = mFiles[index];
+      mFileWatcher.SetFilename( name );
+      LoadFromFile( name );
+    }
+  }
+
+  void LoadFromFile( const std::string& name )
+  {
+    ReloadJsonFile( name, mBuilder, mBuilderLayer );
+
+    mBuilderLayer.SetParentOrigin(ParentOrigin::BOTTOM_CENTER);
+    mBuilderLayer.SetAnchorPoint(AnchorPoint::BOTTOM_CENTER);
+    Dali::Vector3 size = Stage::GetCurrent().GetRootLayer().GetCurrentSize();
+    size.y -= DemoHelper::DEFAULT_VIEW_STYLE.mToolBarHeight;
+    mBuilderLayer.SetSize( size );
+
+    mNavigationView.Push( mBuilderLayer );
+  }
+
+  void Create(Application& app)
+  {
+    Stage stage = Stage::GetCurrent();
+
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &ExampleApp::OnKeyEvent);
+
+    Layer contents = DemoHelper::CreateView( app,
+                                             mView,
+                                             mToolBar,
+                                             BACKGROUND_IMAGE,
+                                             TOOLBAR_IMAGE,
+                                             "" );
+
+    SetTitle("Select Example");
+
+    mBuilderLayer = Layer::New();
+
+    // Create an edit mode button. (left of toolbar)
+    Toolkit::PushButton backButton = Toolkit::PushButton::New();
+    backButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EDIT_IMAGE );
+    backButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EDIT_IMAGE_SELECTED );
+    backButton.ClickedSignal().Connect( this, &ExampleApp::OnBackButtonPressed);
+    backButton.SetLeaveRequired( true );
+    mToolBar.AddControl( backButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    mNavigationView = Toolkit::NavigationView::New();
+    mNavigationView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mNavigationView.SetAnchorPoint( AnchorPoint::TOP_LEFT);
+
+    stage.Add( mNavigationView );
+
+    // Set up the background gradient.
+    Property::Array stopOffsets;
+    stopOffsets.PushBack( 0.0f );
+    stopOffsets.PushBack( 1.0f );
+    Property::Array stopColors;
+    stopColors.PushBack( Color::WHITE );
+    stopColors.PushBack( Vector4( 0.45f, 0.70f, 0.80f, 1.0f ) ); // Medium bright, pastel blue
+    const float percentageStageHeight = stage.GetSize().height * 0.6f;
+
+    mNavigationView.SetProperty( Toolkit::Control::Property::BACKGROUND, Dali::Property::Map()
+      .Add( Toolkit::Visual::Property::TYPE, Dali::Toolkit::Visual::GRADIENT )
+      .Add( Toolkit::GradientVisual::Property::STOP_OFFSET, stopOffsets )
+      .Add( Toolkit::GradientVisual::Property::STOP_COLOR, stopColors )
+      .Add( Toolkit::GradientVisual::Property::START_POSITION, Vector2( 0.0f, -percentageStageHeight ) )
+      .Add( Toolkit::GradientVisual::Property::END_POSITION, Vector2( 0.0f, percentageStageHeight ) )
+      .Add( Toolkit::GradientVisual::Property::UNITS, Toolkit::GradientVisual::Units::USER_SPACE ) );
+
+    SetUpItemView();
+    mNavigationView.Push( mItemView );
+
+    mTimer = Timer::New( 500 ); // ms
+    mTimer.TickSignal().Connect( this, &ExampleApp::OnTimer);
+    mTimer.Start();
+
+  } // Create(app)
+
+  virtual unsigned int GetNumberOfItems()
+  {
+    return mFiles.size();
+  }
+
+  virtual Actor NewItem(unsigned int itemId)
+  {
+    DALI_ASSERT_DEBUG( itemId < mFiles.size() );
+    return MenuItem( ShortName( mFiles[itemId] ) );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        OnQuitOrBack();
+      }
+    }
+  }
+
+  /**
+   * Event handler when Builder wants to quit (we only want to close the shown json unless we're at the top-level)
+   */
+  void OnQuitOrBack()
+  {
+    if ( mItemView.OnStage() )
+    {
+      mApp.Quit();
+    }
+    else
+    {
+      mNavigationView.Pop();
+    }
+  }
+
+private:
+  Application& mApp;
+
+  ItemLayoutPtr mLayout;
+  ItemView mItemView;
+  Toolkit::NavigationView mNavigationView;
+
+  Toolkit::Control mView;
+
+  Toolkit::ToolBar mToolBar;
+  TextLabel mTitleActor;
+
+  Layer mBuilderLayer;
+
+  TapGestureDetector mTapDetector;
+
+  // builder
+  Builder mBuilder;
+
+  FileList mFiles;
+
+  FileWatcher mFileWatcher;
+  Timer mTimer;
+};
+
+//------------------------------------------------------------------------------
+//
+//
+//
+//------------------------------------------------------------------------------
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  if(argc > 2)
+  {
+    if(strcmp(argv[1], "-f") == 0)
+    {
+      USER_DIRECTORY = argv[2];
+    }
+  }
+
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+
+  ExampleApp dali_app(app);
+
+  app.MainLoop();
+
+  return 0;
+}
diff --git a/examples/buttons/buttons-example.cpp b/examples/buttons/buttons-example.cpp
new file mode 100644 (file)
index 0000000..ce59368
--- /dev/null
@@ -0,0 +1,518 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+
+// Define this so that it is interchangeable
+// "DP" stands for Device independent Pixels
+#define DP(x) x
+
+
+namespace
+{
+
+const char* const BACKGROUND_IMAGE = DEMO_IMAGE_DIR "background-gradient.jpg";
+const char* const TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png";
+
+const char* const TOOLBAR_TITLE = "Buttons";
+
+const char* const SMALL_IMAGE_1 = DEMO_IMAGE_DIR "gallery-small-14.jpg";
+const char* const BIG_IMAGE_1   = DEMO_IMAGE_DIR "gallery-large-4.jpg";
+
+const char* const SMALL_IMAGE_2 = DEMO_IMAGE_DIR "gallery-small-20.jpg";
+const char* const BIG_IMAGE_2   = DEMO_IMAGE_DIR "gallery-large-11.jpg";
+
+const char* const SMALL_IMAGE_3 = DEMO_IMAGE_DIR "gallery-small-25.jpg";
+const char* const BIG_IMAGE_3   = DEMO_IMAGE_DIR "gallery-large-13.jpg";
+
+const char* const ENABLED_IMAGE = DEMO_IMAGE_DIR "item-select-check.png";
+
+const Vector4 BACKGROUND_COLOUR( 1.0f, 1.0f, 1.0f, 0.15f );
+
+// Layout sizes
+const int RADIO_LABEL_THUMBNAIL_SIZE = 60;
+const int RADIO_LABEL_THUMBNAIL_SIZE_SMALL = 40;
+const int RADIO_IMAGE_SPACING = 8;
+const int BUTTON_HEIGHT = 48;
+
+const int MARGIN_SIZE = 10;
+const int TOP_MARGIN = 85;
+const int GROUP2_HEIGHT = 238;
+const int GROUP1_HEIGHT = 120;
+const int GROUP3_HEIGHT = 190;
+const int GROUP4_HEIGHT = BUTTON_HEIGHT + MARGIN_SIZE * 2;
+
+}  // namespace
+
+/** This example shows how to create and use different buttons.
+ *
+ * 1. First group of radio buttons with image actor labels selects an image to load
+ * 2. A push button loads the selected thumbnail image into the larger image pane
+ * 3. Second group of radio buttons with a table view label containing a text view and image view, and a normal text view.
+ *    Selecting one of these will enable/disable the image loading push button
+ * 4. A group of check boxes
+ */
+class ButtonsController: public ConnectionTracker
+{
+ public:
+
+  ButtonsController( Application& application )
+    : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ButtonsController::Create );
+  }
+
+  ~ButtonsController()
+  {
+    // Nothing to do here
+  }
+
+  void Create( Application& application )
+  {
+    // The Init signal is received once (only) during the Application lifetime
+
+    // Respond to key events
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &ButtonsController::OnKeyEvent);
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            TOOLBAR_TITLE );
+
+    Toolkit::TableView contentTable = Toolkit::TableView::New( 4, 1 );
+    contentTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    contentTable.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    contentTable.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    contentTable.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    contentTable.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE * 0.5f ) );
+
+    for( unsigned int i = 0; i < contentTable.GetRows(); ++i )
+    {
+      contentTable.SetFitHeight( i );
+    }
+
+    contentTable.SetPosition( 0.0f, TOP_MARGIN );
+
+    mContentLayer.Add( contentTable );
+
+    // Image selector radio group
+    Toolkit::TableView radioGroup2Background = Toolkit::TableView::New( 2, 2 );
+    radioGroup2Background.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    radioGroup2Background.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    radioGroup2Background.SetBackgroundColor( BACKGROUND_COLOUR );
+    radioGroup2Background.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+    radioGroup2Background.SetFitHeight( 0 );
+    radioGroup2Background.SetFitHeight( 1 );
+    radioGroup2Background.SetFitWidth( 0 );
+
+    contentTable.Add( radioGroup2Background );
+
+    Toolkit::TableView radioButtonsGroup2 = Toolkit::TableView::New( 3, 1 );
+    radioButtonsGroup2.SetCellPadding( Size( 0.0f, MARGIN_SIZE * 0.5f ) );
+    radioButtonsGroup2.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    for( unsigned int i = 0; i < radioButtonsGroup2.GetRows(); ++i )
+    {
+      radioButtonsGroup2.SetFitHeight( i );
+    }
+    radioButtonsGroup2.SetFitWidth( 0 );
+
+    radioGroup2Background.AddChild( radioButtonsGroup2, Toolkit::TableView::CellPosition( 0, 0 ) );
+
+    // TableView to lay out 3x Radio buttons on the left, and 3x Image thumbnails on the right.
+    Toolkit::TableView imageSelectTableView = Toolkit::TableView::New( 3, 2 );
+    imageSelectTableView.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    imageSelectTableView.SetFitHeight( 0 );
+    imageSelectTableView.SetFitHeight( 1 );
+    imageSelectTableView.SetFitHeight( 2 );
+    imageSelectTableView.SetFitWidth( 0 );
+    imageSelectTableView.SetFitWidth( 1 );
+    imageSelectTableView.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+    radioButtonsGroup2.Add( imageSelectTableView );
+
+    int radioY = 0;
+
+    // Radio 1
+    {
+      Toolkit::ImageView image = Toolkit::ImageView::New( SMALL_IMAGE_1 );
+      image.SetSize( DP(RADIO_LABEL_THUMBNAIL_SIZE), DP(RADIO_LABEL_THUMBNAIL_SIZE) );
+
+      mRadioButtonImage1 = Dali::Toolkit::RadioButton::New( "1" );
+      mRadioButtonImage1.SetParentOrigin( ParentOrigin::TOP_LEFT );
+      mRadioButtonImage1.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+      mRadioButtonImage1.SetPosition( 0, DP(radioY) );
+      mRadioButtonImage1.SetProperty( Toolkit::Button::Property::SELECTED, true );
+
+      imageSelectTableView.AddChild( mRadioButtonImage1, Toolkit::TableView::CellPosition( 0, 0 ) );
+      imageSelectTableView.AddChild( image, Toolkit::TableView::CellPosition( 0, 1 ) );
+    }
+
+    // Radio 2
+    {
+      radioY += RADIO_LABEL_THUMBNAIL_SIZE + RADIO_IMAGE_SPACING;
+
+      Toolkit::ImageView image = Toolkit::ImageView::New( SMALL_IMAGE_2 );
+      image.SetSize( DP(RADIO_LABEL_THUMBNAIL_SIZE), DP(RADIO_LABEL_THUMBNAIL_SIZE) );
+
+      mRadioButtonImage2 = Dali::Toolkit::RadioButton::New( "2" );
+      mRadioButtonImage2.SetParentOrigin( ParentOrigin::TOP_LEFT );
+      mRadioButtonImage2.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+      mRadioButtonImage2.SetPosition( 0, DP(radioY) );
+
+      imageSelectTableView.AddChild( mRadioButtonImage2, Toolkit::TableView::CellPosition( 1, 0 ) );
+      imageSelectTableView.AddChild( image, Toolkit::TableView::CellPosition( 1, 1 ) );
+    }
+
+    // Radio 3
+    {
+      radioY += RADIO_LABEL_THUMBNAIL_SIZE + RADIO_IMAGE_SPACING;
+
+      Toolkit::ImageView image = Toolkit::ImageView::New( SMALL_IMAGE_3 );
+      image.SetSize( DP(RADIO_LABEL_THUMBNAIL_SIZE), DP(RADIO_LABEL_THUMBNAIL_SIZE) );
+
+      mRadioButtonImage3 = Dali::Toolkit::RadioButton::New( "3" );
+      mRadioButtonImage3.SetParentOrigin( ParentOrigin::TOP_LEFT );
+      mRadioButtonImage3.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+      mRadioButtonImage3.SetPosition( 0, DP(radioY) );
+
+      imageSelectTableView.AddChild( mRadioButtonImage3, Toolkit::TableView::CellPosition( 2, 0 ) );
+      imageSelectTableView.AddChild( image, Toolkit::TableView::CellPosition( 2, 1 ) );
+    }
+
+    // Create select button
+    mUpdateButton = Toolkit::PushButton::New();
+    mUpdateButton.SetProperty( Toolkit::Button::Property::LABEL, "Select" );
+    mUpdateButton.SetName( "selectButton" );
+    mUpdateButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+
+    mUpdateButton.ClickedSignal().Connect( this, &ButtonsController::OnButtonClicked );
+
+    radioGroup2Background.AddChild( mUpdateButton, Toolkit::TableView::CellPosition( 1, 0 ) );
+
+    // ImageView to display selected image
+    mImage = Toolkit::ImageView::New( BIG_IMAGE_1 );
+    mImage.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mImage.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+    radioGroup2Background.AddChild( mImage, Toolkit::TableView::CellPosition( 0, 1, 2, 1 ) );
+
+    // The enable/disable radio group
+    Toolkit::TableView radioGroup1Background = Toolkit::TableView::New( 1, 1 );
+    radioGroup1Background.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    radioGroup1Background.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    radioGroup1Background.SetBackgroundColor( BACKGROUND_COLOUR );
+    radioGroup1Background.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+    radioGroup1Background.SetFitHeight( 0 );
+
+    contentTable.Add( radioGroup1Background );
+
+    // Radio group
+    Toolkit::TableView radioButtonsGroup1 = Toolkit::TableView::New( 2, 1 );
+    radioButtonsGroup1.SetCellPadding( Size( 0.0f, MARGIN_SIZE * 0.5f ) );
+    radioButtonsGroup1.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    for( unsigned int i = 0; i < radioButtonsGroup1.GetRows(); ++i )
+    {
+      radioButtonsGroup1.SetFitHeight( i );
+    }
+    radioButtonsGroup1.SetFitWidth( 0 );
+
+    radioGroup1Background.Add( radioButtonsGroup1 );
+
+    // TableView to lay out 2x Radio buttons on the left, and 1x Tick image on the right.
+    Toolkit::TableView tableView = Toolkit::TableView::New( 2, 2 );
+    tableView.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    tableView.SetFitHeight( 0 );
+    tableView.SetFitHeight( 1 );
+    tableView.SetFitWidth( 0 );
+    tableView.SetFitWidth( 1 );
+
+    Toolkit::TextLabel textLabel = Toolkit::TextLabel::New( "Select enabled" );
+    textLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::WIDTH );
+    textLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+    textLabel.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+    Toolkit::ImageView image = Toolkit::ImageView::New( ENABLED_IMAGE );
+    image.SetSize( DP(RADIO_LABEL_THUMBNAIL_SIZE), DP(RADIO_LABEL_THUMBNAIL_SIZE) );
+    image.SetPadding( Padding( DP(20.0f), 0.0f, 0.0f, 0.0f ) );
+    tableView.AddChild( image, Toolkit::TableView::CellPosition( 0, 1 ) );
+
+    radioButtonsGroup1.Add( tableView );
+
+    // First radio button
+    {
+      Toolkit::RadioButton radioButton = Dali::Toolkit::RadioButton::New( "Select enabled" );
+      radioButton.SetName( "radioSelectEnable" );
+      radioButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+      radioButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+      radioButton.SetPosition( 0, 0 );
+      radioButton.SetProperty( Toolkit::Button::Property::SELECTED, true );
+
+      radioButton.StateChangedSignal().Connect( this, &ButtonsController::EnableSelectButton );
+
+      tableView.AddChild( radioButton, Toolkit::TableView::CellPosition( 0, 0 ) );
+    }
+
+    // Second radio button
+    {
+      Toolkit::RadioButton radioButton = Dali::Toolkit::RadioButton::New( "Select disabled" );
+      radioButton.SetName( "radioSelectDisable" );
+      radioButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+      radioButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+      radioButton.SetPosition( 0, DP(50) );
+
+      radioButton.StateChangedSignal().Connect( this, &ButtonsController::EnableSelectButton );
+
+      tableView.AddChild( radioButton, Toolkit::TableView::CellPosition( 1, 0 ) );
+    }
+
+    // CheckBoxes
+    Toolkit::TableView checkBoxBackground = Toolkit::TableView::New( 3, 1 );
+    checkBoxBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    checkBoxBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    checkBoxBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+    checkBoxBackground.SetCellPadding( Size( MARGIN_SIZE / 2.0f, MARGIN_SIZE / 2.0f ) );
+
+    for( unsigned int i = 0; i < checkBoxBackground.GetRows(); ++i )
+    {
+      checkBoxBackground.SetFitHeight( i );
+    }
+
+    contentTable.Add( checkBoxBackground );
+
+    {
+      mCheckboxButton1 = Toolkit::CheckBoxButton::New();
+      mCheckboxButton1.SetName( "checkbox1" );
+      mCheckboxButton1.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox1 is unselected" );
+      mCheckboxButton1.StateChangedSignal().Connect( this, &ButtonsController::OnCheckBoxesSelected );
+      mCheckboxButton1.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+
+      checkBoxBackground.Add( mCheckboxButton1 );
+    }
+
+    {
+      mCheckboxButton2 = Toolkit::CheckBoxButton::New();
+      mCheckboxButton2.SetName( "checkbox2" );
+      mCheckboxButton2.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox2 is selected" );
+      mCheckboxButton2.SetProperty( Toolkit::Button::Property::SELECTED, true );
+      mCheckboxButton2.StateChangedSignal().Connect( this, &ButtonsController::OnCheckBoxesSelected );
+      mCheckboxButton2.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+
+      checkBoxBackground.Add( mCheckboxButton2 );
+    }
+
+    {
+      mCheckboxButton3 = Toolkit::CheckBoxButton::New();
+      mCheckboxButton3.SetName( "checkbox3" );
+      mCheckboxButton3.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox3 is unselected" );
+      mCheckboxButton3.StateChangedSignal().Connect( this, &ButtonsController::OnCheckBoxesSelected );
+      mCheckboxButton3.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+
+      checkBoxBackground.Add( mCheckboxButton3 );
+    }
+
+    // Create togglabe button
+    Toolkit::TableView toggleBackground = Toolkit::TableView::New( 3, 1 );
+    toggleBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    toggleBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    toggleBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+    toggleBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+
+    for( unsigned int i = 0; i < toggleBackground.GetRows(); ++i )
+    {
+      toggleBackground.SetFitHeight( i );
+    }
+
+    contentTable.Add( toggleBackground );
+
+    mToggleButton = Toolkit::PushButton::New();
+    mToggleButton.SetProperty( Toolkit::Button::Property::TOGGLABLE, true );
+    mToggleButton.SetProperty( Toolkit::Button::Property::LABEL, "Unselected" );
+    mToggleButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mToggleButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mToggleButton.StateChangedSignal().Connect( this, &ButtonsController::OnButtonSelected );
+
+    toggleBackground.Add( mToggleButton );
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        // Exit application when click back or escape.
+        mApplication.Quit();
+      }
+    }
+  }
+
+  bool OnButtonSelected( Toolkit::Button button )
+  {
+    Toolkit::PushButton pushButton = Toolkit::PushButton::DownCast( button );
+    if( pushButton )
+    {
+      bool isSelected = button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+      if( isSelected )
+      {
+        pushButton.SetProperty( Toolkit::Button::Property::LABEL, "Selected" );
+      }
+      else
+      {
+        pushButton.SetProperty( Toolkit::Button::Property::LABEL, "Unselected" );
+      }
+    }
+
+    return true;
+  }
+
+  bool EnableSelectButton( Toolkit::Button button )
+  {
+    bool isSelected = button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+    if( !isSelected )
+    {
+      return true;
+    }
+
+    if( button.GetName() == "radioSelectEnable" )
+    {
+      mUpdateButton.SetProperty( Toolkit::Button::Property::DISABLED, false );
+
+      mRadioButtonImage1.SetProperty( Toolkit::Button::Property::DISABLED, false );
+      mRadioButtonImage2.SetProperty( Toolkit::Button::Property::DISABLED, false );
+      mRadioButtonImage3.SetProperty( Toolkit::Button::Property::DISABLED, false );
+
+      mCheckboxButton1.SetProperty( Toolkit::Button::Property::DISABLED, false );
+      mCheckboxButton2.SetProperty( Toolkit::Button::Property::DISABLED, false );
+      mCheckboxButton3.SetProperty( Toolkit::Button::Property::DISABLED, false );
+
+      mToggleButton.SetProperty( Toolkit::Button::Property::DISABLED, false );
+    }
+    else if( button.GetName() == "radioSelectDisable" )
+    {
+      mUpdateButton.SetProperty( Toolkit::Button::Property::DISABLED, true );
+
+      mRadioButtonImage1.SetProperty( Toolkit::Button::Property::DISABLED, true );
+      mRadioButtonImage2.SetProperty( Toolkit::Button::Property::DISABLED, true );
+      mRadioButtonImage3.SetProperty( Toolkit::Button::Property::DISABLED, true );
+
+      mCheckboxButton1.SetProperty( Toolkit::Button::Property::DISABLED, true );
+      mCheckboxButton2.SetProperty( Toolkit::Button::Property::DISABLED, true );
+      mCheckboxButton3.SetProperty( Toolkit::Button::Property::DISABLED, true );
+
+      mToggleButton.SetProperty( Toolkit::Button::Property::DISABLED, true );
+    }
+
+    return true;
+  }
+
+  bool OnButtonClicked(Toolkit::Button button)
+  {
+    if( mRadioButtonImage1.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>() )
+    {
+      mImage.SetImage( BIG_IMAGE_1 );
+    }
+    else if( mRadioButtonImage2.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>() )
+    {
+      mImage.SetImage( BIG_IMAGE_2 );
+    }
+    else if( mRadioButtonImage3.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>() )
+    {
+      mImage.SetImage( BIG_IMAGE_3 );
+    }
+    return true;
+  }
+
+  bool OnCheckBoxesSelected( Toolkit::Button button )
+  {
+    bool isSelected = button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+    if( button.GetName() == "checkbox1" )
+    {
+      if( isSelected )
+      {
+        button.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox1 is selected");
+      }
+      else
+      {
+        button.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox1 is unselected");
+      }
+    }
+
+    if( button.GetName() == "checkbox2" )
+    {
+      if( isSelected )
+      {
+        button.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox2 is selected");
+      }
+      else
+      {
+        button.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox2 is unselected");
+      }
+    }
+
+    if( button.GetName() == "checkbox3" )
+    {
+      if( isSelected )
+      {
+        button.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox3 is selected");
+      }
+      else
+      {
+        button.SetProperty( Toolkit::Button::Property::LABEL, "CheckBox3 is unselected");
+      }
+    }
+
+    return true;
+  }
+
+private:
+
+  Application&      mApplication;
+  Toolkit::Control  mView;                              ///< The View instance.
+  Toolkit::ToolBar  mToolBar;                           ///< The View's Toolbar.
+  Layer             mContentLayer;                      ///< Content layer
+
+  Toolkit::RadioButton mRadioButtonImage1;
+  Toolkit::RadioButton mRadioButtonImage2;
+  Toolkit::RadioButton mRadioButtonImage3;
+
+  Toolkit::PushButton mUpdateButton;
+  Toolkit::PushButton mToggleButton;
+
+  Toolkit::CheckBoxButton mCheckboxButton1;
+  Toolkit::CheckBoxButton mCheckboxButton2;
+  Toolkit::CheckBoxButton mCheckboxButton3;
+
+  Animation      mAnimation;
+
+  Toolkit::ImageView mImage;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  ButtonsController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/clipping-draw-order/clipping-draw-order.cpp b/examples/clipping-draw-order/clipping-draw-order.cpp
new file mode 100644 (file)
index 0000000..68ca7df
--- /dev/null
@@ -0,0 +1,237 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+const char* images[] = {
+    DEMO_IMAGE_DIR "gallery-small-1.jpg",
+    DEMO_IMAGE_DIR "gallery-small-2.jpg",
+    DEMO_IMAGE_DIR "gallery-small-3.jpg",
+    DEMO_IMAGE_DIR "gallery-small-4.jpg",
+    DEMO_IMAGE_DIR "gallery-small-5.jpg"
+};
+
+// This verification example confirms drawing order is the same, with or without clipping enabled.
+class ClippingDrawOrderVerification : public ConnectionTracker
+{
+public:
+
+  ClippingDrawOrderVerification( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal.
+    mApplication.InitSignal().Connect( this, &ClippingDrawOrderVerification::Create );
+  }
+
+  ~ClippingDrawOrderVerification()
+  {
+    // Nothing to do here.
+  }
+
+  // The Init signal is received once (only) during the Application lifetime.
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Connect to the stage's key signal to allow Back and Escape to exit.
+    stage.KeyEventSignal().Connect( this, &ClippingDrawOrderVerification::OnKeyEvent );
+
+    // Create the title label.
+    TextLabel title = TextLabel::New( "Clipping draw order verification" );
+    title.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    title.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    title.SetAnchorPoint( AnchorPoint::CENTER );
+    title.SetParentOrigin( ParentOrigin::CENTER );
+
+    // Create the description label.
+    TextLabel description = TextLabel::New( "The bottom tree should have the same draw order as the top tree.\nThey should look identical except \"C\" is clipped on the bottom tree." );
+    description.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    description.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    description.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    description.SetParentOrigin( Vector3( 0.5f, 1.0f, 0.5f ) );
+    stage.Add( description );
+
+    /*
+     * Create a 4-row TableView.
+     * It will be segmented as follows:
+     *
+     *    +---------------+
+     *    |     Title     |
+     *    +---------------+
+     *    |     Tree      |
+     *    |    Without    |
+     *    |   Clipping    |
+     *    +---------------+
+     *    |     Tree      |
+     *    |     With      |
+     *    |   Clipping    |
+     *    +---------------+
+     *    |  Explanation  |
+     *    +---------------+
+     */
+    TableView view = TableView::New( 4, 1 );
+    view.SetAnchorPoint( AnchorPoint::CENTER );
+    view.SetParentOrigin( ParentOrigin::CENTER );
+    view.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    view.SetCellAlignment( Toolkit::TableView::CellPosition( 0, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+    view.SetCellAlignment( Toolkit::TableView::CellPosition( 1, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+    view.SetCellAlignment( Toolkit::TableView::CellPosition( 2, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+    view.SetCellAlignment( Toolkit::TableView::CellPosition( 3, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+    view.SetCellPadding( Vector2( 14.0f, 7.0f ) );
+
+    view.SetRelativeWidth( 0u, 1.0f );
+
+    view.SetFitHeight( 0u );
+    view.SetRelativeHeight( 1u, 0.5f );
+    view.SetRelativeHeight( 2u, 0.5f );
+    view.SetFitHeight( 3u );
+
+    // Add the title and description to the TableView.
+    view.AddChild( title, TableView::CellPosition( 0u, 0u ) );
+    view.AddChild( description, TableView::CellPosition( 3u, 0u ) );
+
+    /*
+       For each of the 2 tree views, we create a small tree of actors as follows:
+       ( Note: Clipping is only enabled for B on the bottom tree ).
+
+                             A
+                            / \
+       Clipping enabled -> B   D
+                           |   |
+                           C   E
+
+       The correct draw order is "ABCDE" (the same as if clipping was not enabled).
+    */
+    const float treeYStart = 0.12f;
+    const float depthGap = 0.35f;
+
+    for( int tree = 0; tree < 2; ++tree )
+    {
+      Control container = Control::New();
+      container.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+      container.SetParentOrigin( ParentOrigin::TOP_CENTER );
+      container.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      Vector4 backgroundColor = tree == 0 ? Vector4( 0.77f, 1.0f, 0.77f, 1.0f ) : Vector4( 0.8f, 0.8f, 1.0f, 1.0f );
+      container.SetProperty( Control::Property::BACKGROUND, backgroundColor );
+      ImageView image[5];
+
+      // Loop for each of the 5 images & labels.
+      for( int i = 0; i < 5; ++i )
+      {
+        std::stringstream labelStream;
+        labelStream << static_cast<char>( static_cast<char>( i ) + 'A' );
+        TextLabel textLabel = TextLabel::New( labelStream.str() );
+        textLabel.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+
+        image[i] = ImageView::New( images[i] );
+        image[i].SetAnchorPoint( AnchorPoint::TOP_CENTER );
+
+        // Calculate the relative positioning for the images and labels.
+        float depth = static_cast<float>( i == 0 ? 0 : ( ( i - 1 ) % 2 ) + 1 );
+
+        if( i == 0 )
+        {
+          image[i].SetParentOrigin( Vector3( 0.5f, treeYStart, 0.5f ) );
+          textLabel.SetParentOrigin( Vector3( 1.0f, 0.05f * depth, 0.5f ) );
+        }
+        else
+        {
+          float b = i > 2 ? 1.0f : -1.0f;
+          image[i].SetParentOrigin( Vector3( 0.5f + ( 0.2f * b ), depthGap, 0.5f ) );
+          textLabel.SetParentOrigin( Vector3( 0.98f + 0.215f * b + ( 0.04f * b * depth ), treeYStart + 0.02f + ( 0.16f * depth ), 0.5f ) );
+        }
+
+        container.Add( textLabel );
+      }
+
+      // Create the title label.
+      std::string treeText = tree == 0 ? "Without Clipping" : "With Clipping";
+      TextLabel treeLabel = TextLabel::New( treeText );
+      treeLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+      treeLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "BOTTOM" );
+      treeLabel.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+      treeLabel.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+      container.Add( treeLabel );
+
+      // Enable clipping for the 2nd tree.
+      if( tree == 1 )
+      {
+        image[1].SetProperty( Actor::Property::CLIPPING_MODE, ClippingMode::CLIP_CHILDREN );
+      }
+
+      // Build the tree structure.
+      container.Add( image[0] );
+
+      image[0].Add( image[1] );
+      image[1].Add( image[2] );
+
+      image[0].Add( image[3] );
+      image[3].Add( image[4] );
+
+      // Add the finished tree to the TableView.
+      view.AddChild( container, TableView::CellPosition( 1u + tree, 0u ) );
+    }
+
+    // Add the finished TableView to the stage.
+    stage.Add( view );
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &ClippingDrawOrderVerification::OnTouch );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // Quit the application.
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ClippingDrawOrderVerification verification( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/clipping/clipping-example.cpp b/examples/clipping/clipping-example.cpp
new file mode 100644 (file)
index 0000000..884bc18
--- /dev/null
@@ -0,0 +1,217 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/actors/actor-devel.h>
+
+// INTERNAL INCLUDES
+#include "clipping-item-factory.h"
+#include "item-view-orientation-constraint.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char * const APPLICATION_TITLE( "Clipping Controls" );
+const Vector3 APPLICATION_TITLE_PARENT_ORIGIN( 0.5f, 0.03f, 0.5f ); // Set the parent origin to a small percentage below the top (so the demo will scale for different resolutions).
+
+const Vector3 ITEM_VIEW_LAYOUT_SIZE_SCALE( 0.75f, 0.5f, 0.75f );
+const float ITEM_VIEW_BORDER_SIZE = 2.0f;
+const float ITEM_VIEW_MAXIMUM_ROTATION_IN_DEGREES = 20.0f;
+const float ITEM_VIEW_LAYOUT_POSITION_CHANGE_MULTIPLIER = 3.0f;
+const float ITEM_VIEW_ROTATION_ANIMATION_TIME = 0.2f;
+
+const char * const BUTTON_LABEL( "Toggle Clipping Mode" );
+} // unnamed namespace
+
+/**
+ * @brief Demonstrates the control clipping of a UI Control.
+ *
+ * When an Actor is set to clip its children, the renderers have to be added manually in order to specify what its children
+ * need to clip to. UI Controls automate the creation of the renderers/visuals when they are set to clip their children.
+ *
+ * This example displays an item-view whose clipping mode is toggled without the need for adding any renderers to it.
+ *
+ * Additionally, a constraint is used to modify the item-view's orientation.
+ */
+class ClippingExample : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in] application A reference to the Application class.
+   */
+  ClippingExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ClippingExample::Create );
+  }
+
+private:
+
+  /**
+   * @brief Called to initialise the application content.
+   * @param[in] application A reference to the Application class.
+   */
+  void Create( Application& application )
+  {
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Connect to the stage's key signal to allow Back and Escape to exit.
+    Stage stage = Dali::Stage::GetCurrent();
+    stage.KeyEventSignal().Connect( this, &ClippingExample::OnKeyEvent );
+
+    // Create a TextLabel for the application title.
+    Toolkit::TextLabel label = Toolkit::TextLabel::New( APPLICATION_TITLE );
+    label.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    label.SetParentOrigin( APPLICATION_TITLE_PARENT_ORIGIN );
+    label.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    stage.Add( label );
+
+    // Create an item-view which clips its children.
+    mItemView = ItemView::New( mClippingItemFactory );
+    mItemView.SetParentOrigin( ParentOrigin::CENTER );
+    mItemView.SetAnchorPoint( AnchorPoint::CENTER );
+    mItemView.SetProperty( Actor::Property::CLIPPING_MODE, ClippingMode::CLIP_CHILDREN ); // Enable clipping. No need to create any renderers.
+    stage.Add( mItemView );
+
+    // Create a Spiral Layout and add it to the Item View.
+    mItemView.AddLayout( * DefaultItemLayout::New( DefaultItemLayout::SPIRAL ) );
+    stage.GetRootLayer().SetBehavior( Layer::LAYER_3D ); // The item-view spiral layout requires Layer 3D behaviour.
+
+    // Calculate the size we would like our item-view layout to be, and then activate the layout.
+    const Vector2 stageSize = stage.GetSize();
+    const Vector3 itemViewLayoutSize( ITEM_VIEW_LAYOUT_SIZE_SCALE.x * stageSize.x, ITEM_VIEW_LAYOUT_SIZE_SCALE.y * stageSize.y, ITEM_VIEW_LAYOUT_SIZE_SCALE.z * stageSize.x );
+    mItemView.ActivateLayout( 0, itemViewLayoutSize, 0.0f );
+
+    // Connect to the scroll started and completed signals to apply orientation constraints & animations.
+    mItemView.ScrollStartedSignal().Connect( this, &ClippingExample::ScrollStarted );
+    mItemView.ScrollCompletedSignal().Connect( this, &ClippingExample::ScrollCompleted );
+
+    // Create a constraint for the item-view which we apply when we start scrolling and remove when we stop.
+    mItemViewOrientationConstraint = Constraint::New< Quaternion >( mItemView, Actor::Property::ORIENTATION, ItemViewOrientationConstraint( ITEM_VIEW_MAXIMUM_ROTATION_IN_DEGREES, ITEM_VIEW_LAYOUT_POSITION_CHANGE_MULTIPLIER ) );
+    mItemViewOrientationConstraint.AddSource( LocalSource( ItemView::Property::LAYOUT_POSITION ) );
+
+    // Create a border around item-view (as item-view is clipping its children, we should NOT add this as a child of item-view).
+    Control border = Control::New();
+    border.SetParentOrigin( ParentOrigin::CENTER );
+    border.SetAnchorPoint( AnchorPoint::CENTER );
+    border.SetProperty( Control::Property::BACKGROUND,
+                        Property::Map().Add( Toolkit::Visual::Property::TYPE, Visual::BORDER )
+                                       .Add( BorderVisual::Property::COLOR, Color::WHITE )
+                                       .Add( BorderVisual::Property::SIZE, 2.0f )
+                                       .Add( BorderVisual::Property::ANTI_ALIASING, true ) );
+    border.SetSize( Vector3( itemViewLayoutSize.x + ITEM_VIEW_BORDER_SIZE * 2.0f, itemViewLayoutSize.y + ITEM_VIEW_BORDER_SIZE * 2.0f, itemViewLayoutSize.z + ITEM_VIEW_BORDER_SIZE * 2.0f ) );
+    stage.Add( border );
+
+    // Constrain the border's orientation to the orientation of item-view.
+    Constraint constraint = Constraint::New< Quaternion >( border, Actor::Property::ORIENTATION, EqualToConstraint() );
+    constraint.AddSource( Source( mItemView, Actor::Property::ORIENTATION ) );
+    constraint.Apply();
+
+    // Create a button to toggle the clipping mode
+    PushButton button = Toolkit::PushButton::New();
+    button.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    button.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    button.SetProperty( Actor::Property::DRAW_MODE, DrawMode::OVERLAY_2D );
+    button.SetProperty( Button::Property::LABEL, BUTTON_LABEL );
+    button.ClickedSignal().Connect( this, &ClippingExample::OnButtonClicked );
+    stage.Add( button );
+  }
+
+  /**
+   * @brief Called when the item-view starts to scroll.
+   *
+   * Here we want to apply the item-view constraint.
+   */
+  void ScrollStarted( const Vector2& /* currentScrollPosition */ )
+  {
+    mItemViewOrientationConstraint.Apply();
+  }
+
+  /**
+   * @brief Called when the item-view scrolling completes.
+   *
+   * Here we remove the item-view orientation constraint and perform an animation to return the item-view back to base-rotation.
+   */
+  void ScrollCompleted( const Vector2& /* currentScrollPosition */ )
+  {
+    Animation animation = Animation::New( ITEM_VIEW_ROTATION_ANIMATION_TIME );
+    animation.AnimateTo( Property( mItemView, Actor::Property::ORIENTATION ), Quaternion( Degree( 0.0f ), Vector3::XAXIS ), AlphaFunction::EASE_IN_SINE );
+    animation.Play();
+
+    mItemViewOrientationConstraint.Remove();
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * @brief Called when the button is clicked.
+   *
+   * Will use this to toggle between the clipping modes.
+   * @param[in] button The button that has been clicked.
+   */
+  bool OnButtonClicked( Toolkit::Button button )
+  {
+    if( mItemView )
+    {
+      ClippingMode::Type currentMode = static_cast< ClippingMode::Type >( mItemView.GetProperty( Actor::Property::CLIPPING_MODE ).Get< int >() );
+      mItemView.SetProperty( Actor::Property::CLIPPING_MODE, ( currentMode == ClippingMode::CLIP_CHILDREN ) ? ClippingMode::DISABLED : ClippingMode::CLIP_CHILDREN );
+    }
+    return true;
+  }
+
+  // Data
+
+  Application& mApplication; ///< Reference to the application class.
+  ItemView mItemView; ///< The item view which whose children we would like to clip.
+  ClippingItemFactory mClippingItemFactory; ///< The ItemFactory used to create our items.
+  Constraint mItemViewOrientationConstraint; ///< The constraint used to control the orientation of item-view.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  ClippingExample test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/clipping/clipping-item-factory.cpp b/examples/clipping/clipping-item-factory.cpp
new file mode 100644 (file)
index 0000000..9d3b886
--- /dev/null
@@ -0,0 +1,129 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "clipping-item-factory.h"
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/object/property-map.h>
+#include <dali-toolkit/public-api/controls/image-view/image-view.h>
+#include <dali-toolkit/public-api/visuals/border-visual-properties.h>
+#include <dali-toolkit/public-api/visuals/visual-properties.h>
+#include <dali-toolkit/public-api/visuals/image-visual-properties.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char * IMAGE_PATHS[] = {
+  DEMO_IMAGE_DIR "gallery-medium-1.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-2.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-3.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-4.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-5.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-6.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-7.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-8.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-9.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-10.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-11.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-12.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-13.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-14.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-15.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-16.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-17.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-18.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-19.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-20.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-21.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-22.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-23.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-24.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-25.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-26.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-27.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-28.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-29.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-30.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-31.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-32.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-33.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-34.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-35.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-36.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-37.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-38.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-39.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-40.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-41.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-42.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-43.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-44.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-45.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-46.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-47.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-48.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-49.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-50.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-51.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-52.jpg",
+  DEMO_IMAGE_DIR "gallery-medium-53.jpg",
+};
+const unsigned int NUM_IMAGES = sizeof( IMAGE_PATHS ) / sizeof( char * );
+const unsigned int NUM_IMAGES_MULTIPLIER = 10;
+
+const float ITEM_BORDER_SIZE = 2.0f;
+} // unnamed namespace
+
+ClippingItemFactory::ClippingItemFactory()
+{
+}
+
+unsigned int ClippingItemFactory::GetNumberOfItems()
+{
+  return NUM_IMAGES * NUM_IMAGES_MULTIPLIER;
+}
+
+Actor ClippingItemFactory::NewItem( unsigned int itemId )
+{
+  // Create an image view for this item
+  Property::Map propertyMap;
+  propertyMap.Insert(Visual::Property::TYPE,  Visual::IMAGE);
+  propertyMap.Insert(ImageVisual::Property::URL, IMAGE_PATHS[ itemId % NUM_IMAGES ] );
+  propertyMap.Insert(DevelVisual::Property::VISUAL_FITTING_MODE, DevelVisual::FILL);
+  ImageView actor = ImageView::New();
+  actor.SetProperty(Toolkit::ImageView::Property::IMAGE, propertyMap);
+
+  // Add a border image child actor
+  ImageView borderActor = ImageView::New();
+  borderActor.SetParentOrigin( ParentOrigin::CENTER );
+  borderActor.SetAnchorPoint( AnchorPoint::CENTER );
+  borderActor.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT, Dimension::ALL_DIMENSIONS );
+  borderActor.SetSizeModeFactor( Vector3( 2.0f * ITEM_BORDER_SIZE, 2.0f * ITEM_BORDER_SIZE, 0.0f ) );
+  borderActor.SetColorMode( USE_PARENT_COLOR );
+  borderActor.SetProperty( ImageView::Property::IMAGE,
+                           Property::Map().Add( Toolkit::Visual::Property::TYPE, Visual::BORDER )
+                                          .Add( BorderVisual::Property::COLOR, Color::WHITE )
+                                          .Add( BorderVisual::Property::SIZE, ITEM_BORDER_SIZE )
+                                          .Add( BorderVisual::Property::ANTI_ALIASING, true ) );
+  actor.Add(borderActor);
+
+  return actor;
+}
diff --git a/examples/clipping/clipping-item-factory.h b/examples/clipping/clipping-item-factory.h
new file mode 100644 (file)
index 0000000..344afea
--- /dev/null
@@ -0,0 +1,56 @@
+#ifndef CLIPPING_ITEM_FACTORY_H
+#define CLIPPING_ITEM_FACTORY_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/public-api/controls/scrollable/item-view/item-factory.h>
+
+/**
+ * @brief Factory used to create the items required in the item-view used by this example.
+ */
+class ClippingItemFactory : public Dali::Toolkit::ItemFactory
+{
+public:
+
+  /**
+   * @brief Constructor
+   */
+  ClippingItemFactory();
+
+private: // From ItemFactory
+
+  /**
+   * Query the number of items available from the factory.
+   * The maximum available item has an ID of GetNumberOfItems() - 1.
+   */
+  virtual unsigned int GetNumberOfItems();
+
+  /**
+   * Create an Actor to represent a visible item.
+   * @param itemId
+   * @return the created actor.
+   */
+  virtual Dali::Actor NewItem( unsigned int itemId );
+
+private:
+
+  ClippingItemFactory( const ClippingItemFactory& ); ///< Undefined
+  ClippingItemFactory& operator=( const ClippingItemFactory& ); ///< Undefined
+};
+
+#endif // CLIPPING_ITEM_FACTORY_H
diff --git a/examples/clipping/item-view-orientation-constraint.h b/examples/clipping/item-view-orientation-constraint.h
new file mode 100644 (file)
index 0000000..0ff4bf9
--- /dev/null
@@ -0,0 +1,102 @@
+#ifndef ITEM_VIEW_ORIENTATION_CONSTRAINT_H
+#define ITEM_VIEW_ORIENTATION_CONSTRAINT_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/animation/constraint.h>
+#include <dali/public-api/math/degree.h>
+#include <dali/public-api/math/math-utils.h>
+#include <dali/public-api/math/quaternion.h>
+#include <dali/public-api/math/radian.h>
+#include <dali/public-api/math/vector3.h>
+
+/**
+ * @brief Constraint used to constrain the orientation of the item-view depending on the position within the layout.
+ */
+class ItemViewOrientationConstraint
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in] maximumRotationInDegrees       The maximum rotation (in degrees) that we should rotate the item-view by.
+   * @param[in] layoutPositionChangeMultiplier This value is used to multiply the change in layout position
+   *                                           (in order to exaggerate the amount moved so it's more visible).
+   */
+  ItemViewOrientationConstraint( float maximumRotationInDegrees, float layoutPositionChangeMultiplier )
+  : mMaximumRotationInDegrees( maximumRotationInDegrees ),
+    mLayoutPositionChangeMultiplier( layoutPositionChangeMultiplier ),
+    mStartingLayoutPosition( 0.0f ),
+    mStartingAngle( 0.0f ),
+    mFirstCall( true )
+  {
+  }
+
+  /**
+   * @brief Will be called by the Constraint.
+   *
+   * The first time this operator is called, it uses the values as it's base reference.
+   * Thereafter, the position in the layout is used to determine the rotation around the X-Axis.
+   *
+   * @param[in] rotation The rotation of the item-view.
+   * @param[in] inputs   The constraint inputs:
+   *                     [0] ItemView::Property::LAYOUT_POSITION, float
+   */
+  void operator()( Dali::Quaternion& rotation, const Dali::PropertyInputContainer& inputs )
+  {
+    const float& layoutPosition = inputs[ 0 ]->GetFloat();
+
+    // Store values for base reference when called the first call.
+    if( mFirstCall )
+    {
+      mStartingLayoutPosition = layoutPosition;
+
+      Dali::Vector3 axis;
+      Dali::Radian angleInRadians;
+      rotation.ToAxisAngle( axis, angleInRadians );
+      Dali::Degree angleInDegrees( angleInRadians ); // Convert to Degrees
+
+      mStartingAngle = angleInDegrees.degree;
+      if( axis.x < 0.0f ) // We only rotate round the X-Axis. So if the X-Axis is negative, then the angle is also a negative angle.
+      {
+        mStartingAngle = -mStartingAngle;
+      }
+
+      mFirstCall = false;
+    }
+    else
+    {
+      // All subsequent calls should tilt the orientation of the item-view around the X-Axis depending on how much our position has changed in the layout.
+
+      Dali::Degree angle( mStartingAngle + mLayoutPositionChangeMultiplier * ( mStartingLayoutPosition - layoutPosition ) );
+      Dali::ClampInPlace( angle.degree, -mMaximumRotationInDegrees, mMaximumRotationInDegrees ); // Ensure the angle does not exceed maximum specified (in both directions).
+      rotation = Dali::Quaternion( angle, Dali::Vector3::XAXIS );
+    }
+  }
+
+private:
+
+  const float mMaximumRotationInDegrees; ///< The maximum allowable rotation of the item-view.
+  const float mLayoutPositionChangeMultiplier; ///< This value is used to multiply the change in layout position.
+  float mStartingLayoutPosition; ///< The starting layout position.
+  float mStartingAngle; ///< The starting angle (in degrees) of the item-view.
+  bool mFirstCall; ///< A boolean to state whether this is the first time the operator() is called. Allows us to set the starting values.
+};
+
+#endif // ITEM_VIEW_ORIENTATION_CONSTRAINT_H
diff --git a/examples/color-visual/color-visual-example.cpp b/examples/color-visual/color-visual-example.cpp
new file mode 100644 (file)
index 0000000..616e3f6
--- /dev/null
@@ -0,0 +1,141 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visuals/color-visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visual-factory/transition-data.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char* IMAGE_FILE( DEMO_IMAGE_DIR "gallery-medium-1.jpg" );
+
+const float BLUR_RADIUS_VALUE( 10.0f );
+const float NO_BLUR_VALUE( 0.0f );
+const float ANIMATION_DURATION( 2.0f );
+
+const Property::Value SHADOW
+{
+  { Visual::Property::TYPE, Visual::COLOR },
+  { Visual::Property::MIX_COLOR, Vector4( 0.0f, 0.0f, 0.0f, 0.5f ) },
+  { Visual::Property::TRANSFORM, Property::Map{ { Visual::Transform::Property::OFFSET, Vector2( 0.05f, 0.05f ) },
+                                                { Visual::Transform::Property::SIZE, Vector2( 1.05f, 1.05f ) },
+                                                { Visual::Transform::Property::ORIGIN, Align::CENTER },
+                                                { Visual::Transform::Property::ANCHOR_POINT, Align::CENTER } } },
+  { DevelColorVisual::Property::BLUR_RADIUS, BLUR_RADIUS_VALUE }
+};
+
+} // namespace
+
+// This example shows the blur radius property of the color visual and animates it.
+//
+class ColorVisualExample : public ConnectionTracker
+{
+public:
+
+  ColorVisualExample( Application& application )
+  : mApplication( application ),
+    mShadowVisible( true )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ColorVisualExample::Create );
+  }
+
+  ~ColorVisualExample()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    mImageView = ImageView::New( IMAGE_FILE );
+    mImageView.SetParentOrigin( ParentOrigin::CENTER );
+    mImageView.SetSize( 200.0f, 200.0f );
+    mImageView.SetProperty( DevelControl::Property::SHADOW, SHADOW );
+
+    stage.Add( mImageView );
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &ColorVisualExample::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &ColorVisualExample::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    if( touch.GetState( 0 ) == PointState::UP )
+    {
+      float initialValue, targetValue;
+      if( !mShadowVisible )
+      {
+        initialValue = NO_BLUR_VALUE;
+        targetValue = BLUR_RADIUS_VALUE;
+      }
+      else
+      {
+        initialValue = BLUR_RADIUS_VALUE;
+        targetValue = NO_BLUR_VALUE;
+      }
+
+      mShadowVisible = !mShadowVisible;
+
+      TransitionData transitionData = TransitionData::New( Property::Map().Add( "target", "shadow" )
+                                                                          .Add( "property", "blurRadius" )
+                                                                          .Add( "initialValue", initialValue )
+                                                                          .Add( "targetValue", targetValue )
+                                                                          .Add( "animator", Property::Map().Add( "duration", ANIMATION_DURATION ) ) );
+      Animation animation = DevelControl::CreateTransition( Toolkit::Internal::GetImplementation( mImageView ), transitionData );
+      animation.Play();
+    }
+    return true;
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+  ImageView mImageView;
+  bool mShadowVisible;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ColorVisualExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/compressed-texture-formats/compressed-texture-formats-example.cpp b/examples/compressed-texture-formats/compressed-texture-formats-example.cpp
new file mode 100644 (file)
index 0000000..606f8cd
--- /dev/null
@@ -0,0 +1,211 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "shared/utility.h"
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+
+namespace
+{
+
+const char* IMAGE_FILENAME_ETC         =        DEMO_IMAGE_DIR "tx-etc1.ktx";
+const char* IMAGE_FILENAME_ASTC_LINEAR =        DEMO_IMAGE_DIR "tx-astc-4x4-linear.ktx";
+const char* IMAGE_FILENAME_ASTC_LINEAR_NATIVE = DEMO_IMAGE_DIR "tx-astc-4x4-linear-native.astc";
+
+
+static const char* VERTEX_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+    attribute mediump vec2 aPosition;\n
+    attribute mediump vec2 aTexCoord;\n
+    uniform mediump mat4 uMvpMatrix;\n
+    uniform mediump vec3 uSize;\n
+    varying mediump vec2 vTexCoord;\n
+    void main()\n
+    {\n
+      vec4 position = vec4(aPosition,0.0,1.0)*vec4(uSize,1.0);\n
+      gl_Position = uMvpMatrix * position;\n
+      vTexCoord = aTexCoord;\n
+    }\n
+);
+
+static const char* FRAGMENT_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+    uniform lowp vec4 uColor;\n
+    uniform sampler2D sTexture;\n
+    varying mediump vec2 vTexCoord;\n
+
+    void main()\n
+    {\n
+      gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n
+    }\n
+);
+
+/**
+ * @brief Create a renderer to render an image and adds it to an actor
+ * @param[in] imagePath The path where the image file is located
+ * @param[in] actor The actor that will be used to render the image
+ * @param[in[ geometry The geometry to use
+ * @param[in] shader The shader to use
+ */
+void AddImage( const char*imagePath, Actor& actor, Geometry& geometry, Shader& shader )
+{
+  //Load the texture
+  Texture texture = DemoHelper::LoadTexture( imagePath );
+  TextureSet textureSet = TextureSet::New();
+  textureSet.SetTexture( 0u, texture );
+
+  //Create the renderer
+  Renderer renderer = Renderer::New( geometry, shader );
+  renderer.SetTextures( textureSet );
+
+  //Set actor size and add the renderer
+  actor.SetSize( texture.GetWidth(), texture.GetHeight() );
+  actor.AddRenderer( renderer );
+}
+
+}
+/**
+ * @brief This example shows 3 images, each of a different compressed texture type.
+ * If built and run on a OpenGL ES 3.1 compatable target, then all 3 images will display.
+ * Otherwise, the top image will display and the other 2 will appear as black squares.
+ */
+class CompressedTextureFormatsController : public ConnectionTracker
+{
+public:
+
+  CompressedTextureFormatsController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &CompressedTextureFormatsController::Create );
+  }
+
+  ~CompressedTextureFormatsController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Setup a TableView to hold a grid of images and labels.
+    Toolkit::TableView table = Toolkit::TableView::New( 3u, 2u );
+    table.SetAnchorPoint( AnchorPoint::CENTER );
+    table.SetParentOrigin( ParentOrigin::CENTER );
+    table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    table.SetRelativeWidth( 0u, 0.5f );
+    table.SetRelativeWidth( 1u, 0.5f );
+    table.SetRelativeHeight( 0u, 1.0f / 3.0f );
+    table.SetRelativeHeight( 1u, 1.0f / 3.0f );
+    table.SetRelativeHeight( 2u, 1.0f / 3.0f );
+
+
+    // Add text labels.
+    TextLabel textLabel = TextLabel::New( "ETC1 (KTX):" );
+    textLabel.SetAnchorPoint( AnchorPoint::CENTER );
+    textLabel.SetParentOrigin( ParentOrigin::CENTER );
+    textLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    textLabel.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+    table.AddChild( textLabel, Toolkit::TableView::CellPosition( 0u, 0u ) );
+    table.SetCellAlignment( Toolkit::TableView::CellPosition( 0u, 0u ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+    textLabel = TextLabel::New( "ASTC (KTX) 4x4 linear:" );
+    textLabel.SetAnchorPoint( AnchorPoint::CENTER );
+    textLabel.SetParentOrigin( ParentOrigin::CENTER );
+    textLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    textLabel.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+    table.AddChild( textLabel, Toolkit::TableView::CellPosition( 1u, 0u ) );
+    table.SetCellAlignment( Toolkit::TableView::CellPosition( 1u, 0u ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+    textLabel = TextLabel::New( "ASTC (Native) 4x4 linear:" );
+    textLabel.SetAnchorPoint( AnchorPoint::CENTER );
+    textLabel.SetParentOrigin( ParentOrigin::CENTER );
+    textLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    textLabel.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+    table.AddChild( textLabel, Toolkit::TableView::CellPosition( 2u, 0u ) );
+    table.SetCellAlignment( Toolkit::TableView::CellPosition( 2u, 0u ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+    //Create the geometry and the shader renderers will use
+    Geometry geometry = DemoHelper::CreateTexturedQuad();
+    Shader shader = Shader::New( VERTEX_SHADER_TEXTURE, FRAGMENT_SHADER_TEXTURE );
+
+    // Add images.
+    Actor actor = Actor::New();
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.SetParentOrigin( ParentOrigin::CENTER );
+    AddImage( IMAGE_FILENAME_ETC, actor, geometry, shader  );
+    table.AddChild( actor, Toolkit::TableView::CellPosition( 0u, 1u ) );
+    table.SetCellAlignment( Toolkit::TableView::CellPosition( 0u, 1u ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+    actor = Actor::New();
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.SetParentOrigin( ParentOrigin::CENTER );
+    AddImage( IMAGE_FILENAME_ASTC_LINEAR, actor, geometry, shader );
+    table.AddChild( actor, Toolkit::TableView::CellPosition( 1u, 1u ) );
+    table.SetCellAlignment( Toolkit::TableView::CellPosition( 1u, 1u ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+    actor = Actor::New();
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.SetParentOrigin( ParentOrigin::CENTER );
+    AddImage( IMAGE_FILENAME_ASTC_LINEAR_NATIVE, actor, geometry, shader );
+    table.AddChild( actor, Toolkit::TableView::CellPosition( 2u, 1u ) );
+    table.SetCellAlignment( Toolkit::TableView::CellPosition( 2u, 1u ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+    stage.Add( table );
+
+    // Respond to touch and key signals
+    stage.GetRootLayer().TouchSignal().Connect( this, &CompressedTextureFormatsController::OnTouch );
+    stage.KeyEventSignal().Connect(this, &CompressedTextureFormatsController::OnKeyEvent);
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  CompressedTextureFormatsController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/contact-cards/README.md b/examples/contact-cards/README.md
new file mode 100644 (file)
index 0000000..ef2f645
--- /dev/null
@@ -0,0 +1,2 @@
+Please use contact-cards-example.cpp as your start point.
+The ContactCardController class has a brief explanation regarding what this example does and all the classes used in this example.
diff --git a/examples/contact-cards/clipped-image.cpp b/examples/contact-cards/clipped-image.cpp
new file mode 100644 (file)
index 0000000..c27a5f6
--- /dev/null
@@ -0,0 +1,221 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// HEADER
+#include "clipped-image.h"
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+namespace ClippedImage
+{
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char * const DELTA_PROPERTY_NAME( "uDelta" ); ///< Name of uniform used to mix the Circle and Quad geometries.
+
+/**
+ * @brief This vertex-shader mixes in the quad and circle geometry depending on the value of uDelta.
+ *
+ * uDelta is used to mix in the Circle and the Quad positions.
+ * If uDelta is 0.0f, then the circle position is adopted and if it is 1.0f, then the quad position is adopted.
+ */
+const char * VERTEX_SHADER = DALI_COMPOSE_SHADER(
+  attribute mediump vec2  aPositionCircle;\n
+  attribute mediump vec2  aPositionQuad;\n
+  uniform   mediump float uDelta;
+  uniform mediump mat4    uMvpMatrix;\n
+  uniform mediump vec3    uSize;\n
+  \n
+  void main()\n
+  {\n
+    mediump vec4 vertexPosition = vec4(mix(aPositionCircle,aPositionQuad,uDelta), 0.0, 1.0);\n
+    vertexPosition.xyz *= uSize;\n
+    gl_Position = uMvpMatrix * vertexPosition;\n
+  }\n
+);
+
+/**
+ * @brief This fragment-shader does not output anything. It's for a control which is just going to clip as specified in the vertex shader.
+ */
+const char * FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+  void main()\n
+  {\n
+    gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\n
+  }\n
+);
+
+/**
+ * @brief Creates the shader required for the clipped image
+ * @return A reference to a static handle to a shader object (only created when first called).
+ */
+Shader& CreateShader()
+{
+  // Only need to create it once
+  // The issue with using a static is that the shader will only get destroyed at application destruction.
+  // This is OK for a simple use cases such as this example, but for more polished applications, the shader creation/destruction needs to
+  // be managed by the application writer.
+  static Shader shader;
+
+  if( !shader )
+  {
+    shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+  }
+
+  return shader;
+}
+
+/**
+ * @brief Creates the geometry required for the clipped image
+ * @return A reference to a static handle to a geometry object (only created when first called).
+ */
+Geometry& CreateGeometry()
+{
+  // Only need to create it once
+  // The issue with using a static is that the geometry will only get destroyed at application destruction.
+  // This is OK for a simple use cases such as this example, but for more polished applications, the geometry creation/destruction needs to
+  // be managed by the application writer.
+  static Geometry geometry;
+
+  if ( !geometry )
+  {
+    const int vertexCount = 34; // Needs to be 4n plus 2 where n is a positive integer above 4
+
+    // Create the circle geometry
+
+    // Radius is bound to actor's dimensions so this should not be increased.
+    // If a bigger circle is required then the actor size should be increased.
+    const float radius = 0.5f;
+    const Vector2 center = Vector2::ZERO;
+
+    // Create a buffer for vertex data
+    Vector2 circleBuffer[vertexCount];
+    int idx = 0;
+
+    // Center vertex for triangle fan
+    circleBuffer[ idx++ ] = center;
+
+    // Outer vertices of the circle
+    const int outerVertexCount = vertexCount - 1;
+
+    for ( int i = 0; i < outerVertexCount; ++i )
+    {
+      const float percent = ( i / static_cast< float >( outerVertexCount - 1 ) );
+      const float rad = percent * 2.0f * Math::PI;
+
+      // Vertex position
+      Vector2 outer;
+      outer.x = center.x + radius * cos( rad );
+      outer.y = center.y + radius * sin( rad );
+
+      circleBuffer[ idx++ ] = outer;
+    }
+
+    Property::Map circleVertexFormat;
+    circleVertexFormat["aPositionCircle"] = Property::VECTOR2;
+    PropertyBuffer circleVertices = PropertyBuffer::New( circleVertexFormat );
+    circleVertices.SetData( circleBuffer, vertexCount );
+
+    // Create the Quad Geometry
+    Vector2 quadBuffer[vertexCount];
+    idx = 0;
+    quadBuffer[ idx++ ]  = center;
+
+    const size_t vertsPerSide = ( vertexCount - 2 ) / 4;
+    Vector2 outer( 0.5f, 0.0f );
+    quadBuffer[ idx++ ]  = outer;
+    float incrementPerBuffer = 1.0f / static_cast< float >( vertsPerSide );
+
+    for( size_t i = 0; i < vertsPerSide && outer.y < 0.5f; ++i )
+    {
+      outer.y += incrementPerBuffer;
+      quadBuffer[ idx++ ] = outer;
+    }
+
+    for( size_t i = 0; i < vertsPerSide && outer.x > -0.5f; ++i )
+    {
+      outer.x -= incrementPerBuffer;
+      quadBuffer[ idx++ ] = outer;
+    }
+
+    for( size_t i = 0; i < vertsPerSide && outer.y > -0.5f; ++i )
+    {
+      outer.y -= incrementPerBuffer;
+      quadBuffer[ idx++ ] = outer;
+    }
+
+    for( size_t i = 0; i < vertsPerSide && outer.x < 0.5f; ++i )
+    {
+      outer.x += incrementPerBuffer;
+      quadBuffer[ idx++ ] = outer;
+    }
+
+    for( size_t i = 0; i < vertsPerSide && outer.y < 0.0f; ++i )
+    {
+      outer.y += incrementPerBuffer;
+      quadBuffer[ idx++ ] = outer;
+    }
+
+    Property::Map vertexFormat;
+    vertexFormat["aPositionQuad"] = Property::VECTOR2;
+    PropertyBuffer quadVertices2 = PropertyBuffer::New( vertexFormat );
+    quadVertices2.SetData( quadBuffer, vertexCount );
+
+    // Create the geometry object itself
+    geometry = Geometry::New();
+    geometry.AddVertexBuffer( circleVertices );
+    geometry.AddVertexBuffer( quadVertices2 );
+    geometry.SetType( Geometry::TRIANGLE_FAN );
+  }
+
+  return geometry;
+}
+
+} // unnamed namespace
+
+const float CIRCLE_GEOMETRY = 0.0f;
+const float QUAD_GEOMETRY = 1.0f;
+
+Dali::Toolkit::Control Create( const std::string& imagePath, Property::Index& propertyIndex )
+{
+  // Create a control which whose geometry will be morphed between a circle and a quad
+  Control clippedImage = Control::New();
+  clippedImage.SetProperty( Actor::Property::CLIPPING_MODE, ClippingMode::CLIP_CHILDREN );
+
+  // Create the required renderer and add to the clipped image control
+  Renderer renderer = Renderer::New( CreateGeometry(), CreateShader() );
+  renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::ON );
+  clippedImage.AddRenderer( renderer );
+
+  // Register the property on the clipped image control which will allow animations between a circle and a quad
+  propertyIndex = clippedImage.RegisterProperty( DELTA_PROPERTY_NAME, 0.0f );
+
+  // Add the actual image to the control
+  Control image = ImageView::New( imagePath );
+  image.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  image.SetParentOrigin( ParentOrigin::CENTER );
+  image.SetAnchorPoint( AnchorPoint::CENTER );
+  clippedImage.Add( image );
+
+  return clippedImage;
+}
+
+} // namespace ClippedImage
diff --git a/examples/contact-cards/clipped-image.h b/examples/contact-cards/clipped-image.h
new file mode 100644 (file)
index 0000000..edfd86a
--- /dev/null
@@ -0,0 +1,50 @@
+#ifndef CLIPPED_IMAGE_H
+#define CLIPPED_IMAGE_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <string>
+#include <dali-toolkit/public-api/controls/control.h>
+
+/**
+ * @brief This namespace provides a helper function to create a control that clips an image either as a quad or a circle.
+ *
+ * The CIRCLE_GEOMETRY and QUAD_GEOMETRY constants can be used to set or animate to the different clipping geometries.
+ */
+namespace ClippedImage
+{
+
+extern const float CIRCLE_GEOMETRY; ///< Setting or animating the returned propertyIndex in Create() to this value will provide a circle geometry on the image @see Create
+extern const float QUAD_GEOMETRY; ///< Setting or animating the returned propertyIndex in Create() to this value will provide a quad geometry on the image @see Create
+
+/**
+ * @brief Creates a clipping image whose geometry (i.e. clip area) can be morphed between a circle and a quad by animating the propertyIndex out parameter.
+ *
+ * The propertyIndex parameter can be set or animated to CIRCLE_GEOMETRY or QUAD_GEOMETRY depending on the type of clipping required.
+ * If set to a value between these two constants, then the resulting geometry will be somewhere in between a circle and a quad.
+ *
+ * @param[in]   imagePath      The path to the image to show.
+ * @param[out]  propertyIndex  Gets set with the property index which the caller can animate using the CIRCLE_GEOMETRY & QUAD_GEOMETRY values.
+ * @return The image-mesh control
+ */
+Dali::Toolkit::Control Create( const std::string& imagePath, Dali::Property::Index& propertyIndex );
+
+} // namespace ClippedImage
+
+#endif // CLIPPED_IMAGE_H
diff --git a/examples/contact-cards/contact-card-layout-info.h b/examples/contact-cards/contact-card-layout-info.h
new file mode 100644 (file)
index 0000000..68e3f20
--- /dev/null
@@ -0,0 +1,54 @@
+#ifndef CONTACT_CARD_LAYOUT_INFO_H
+#define CONTACT_CARD_LAYOUT_INFO_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/math/vector2.h>
+
+/**
+ * @brief This is the common data that is used by all contact cards.
+ *
+ * In this context, "unfolded" means when all the details, including the name, address and image are shown.
+ * In this scenario, the control takes up most of the screen and a header is also shown.
+ *
+ * When the contact card is "folded", this means when only brief information is shown to the user, i.e. the image and name.
+ * In this scenario, the control is small and there should be several of these contact cards visible on the screen.
+ */
+struct ContactCardLayoutInfo
+{
+  Dali::Vector2 unfoldedPosition; ///< The position of the entire contact card when all details (unfolded) are shown
+  Dali::Vector2 unfoldedSize;     ///< The size of the entire contact card when all details (unfolded) are shown
+  Dali::Vector2 foldedSize;       ///< The size of each contact card when only the brief information is shown (folded)
+
+  Dali::Vector2 padding; ///< The default padding to use throughout
+
+  Dali::Vector2 headerSize;             ///< The size of the header area (only shown when unfolded)
+  Dali::Vector2 headerFoldedPosition;   ///< The position of the header area when folded - required for animation purposes only as it's actually clipped
+  Dali::Vector2 headerUnfoldedPosition; ///< The position of the header area when unfolded
+
+  Dali::Vector2 imageSize;             ///< The size of the image
+  Dali::Vector2 imageFoldedPosition;   ///< The position of the image when folded
+  Dali::Vector2 imageUnfoldedPosition; ///< The position of the image when unfolded
+
+  Dali::Vector2 textFoldedPosition;   ///< The position of the text when folded
+  Dali::Vector2 textUnfoldedPosition; ///< The position of the text when unfolded
+};
+
+#endif // CONTACT_CARD_LAYOUT_INFO_H
+
diff --git a/examples/contact-cards/contact-card-layouter.cpp b/examples/contact-cards/contact-card-layouter.cpp
new file mode 100644 (file)
index 0000000..c638f83
--- /dev/null
@@ -0,0 +1,121 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "contact-card-layouter.h"
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/common/stage.h>
+
+// INTERNAL INCLUDES
+#include "contact-card.h"
+
+using namespace Dali;
+
+namespace
+{
+const float DEFAULT_PADDING = 25.0f;
+
+const float MINIMUM_ITEMS_PER_ROW_OR_COLUMN( 3.0f );
+
+const float HEADER_HEIGHT_TO_UNFOLDED_SIZE_RATIO( 0.1f );
+const Vector2 HEADER_FOLDED_POSITION_AS_RATIO_OF_SIZE( -0.05f, -1.5f );
+const Vector2 HEADER_UNFOLDED_POSITION( Vector2::ZERO );
+
+const float IMAGE_SIZE_AS_RATIO_TO_FOLDED_SIZE( 0.5f );
+const Vector2 IMAGE_FOLDED_POSITION_AS_RATIO_OF_SIZE( 0.5f, 0.25f );
+
+const float FOLDED_TEXT_POSITION_AS_RATIO_OF_IMAGE_SIZE( 1.01f );
+} // unnamed namespace
+
+ContactCardLayouter::ContactCardLayouter()
+: mContactCardLayoutInfo(),
+  mContactCards(),
+  mLastPosition(),
+  mPositionIncrementer(),
+  mItemsPerRow( 0 ),
+  mInitialized( false )
+{
+}
+
+ContactCardLayouter::~ContactCardLayouter()
+{
+  // Nothing to do as ContactCardContainer uses intrusive pointers so they will be automatically deleted
+}
+
+void ContactCardLayouter::AddContact( const std::string& contactName, const std::string& contactAddress, const std::string& imagePath )
+{
+  if( ! mInitialized )
+  {
+    // Set up the common layouting info shared between all contact cards when first called
+
+    mContactCardLayoutInfo.unfoldedPosition = mContactCardLayoutInfo.padding = Vector2( DEFAULT_PADDING, DEFAULT_PADDING );
+    mContactCardLayoutInfo.unfoldedSize = Stage::GetCurrent().GetSize() - mContactCardLayoutInfo.padding * ( MINIMUM_ITEMS_PER_ROW_OR_COLUMN - 1.0f );
+
+    // Calculate the size of the folded card (use the minimum of width/height as size)
+    mContactCardLayoutInfo.foldedSize = ( mContactCardLayoutInfo.unfoldedSize - ( mContactCardLayoutInfo.padding * ( MINIMUM_ITEMS_PER_ROW_OR_COLUMN - 1.0f ) ) ) / MINIMUM_ITEMS_PER_ROW_OR_COLUMN;
+    mContactCardLayoutInfo.foldedSize.width = mContactCardLayoutInfo.foldedSize.height = std::min( mContactCardLayoutInfo.foldedSize.width, mContactCardLayoutInfo.foldedSize.height );
+
+    // Set the size and positions of the header
+    mContactCardLayoutInfo.headerSize.width = mContactCardLayoutInfo.unfoldedSize.width;
+    mContactCardLayoutInfo.headerSize.height = mContactCardLayoutInfo.unfoldedSize.height * HEADER_HEIGHT_TO_UNFOLDED_SIZE_RATIO;
+    mContactCardLayoutInfo.headerFoldedPosition = mContactCardLayoutInfo.headerSize * HEADER_FOLDED_POSITION_AS_RATIO_OF_SIZE;
+    mContactCardLayoutInfo.headerUnfoldedPosition = HEADER_UNFOLDED_POSITION;
+
+    // Set the image size and positions
+    mContactCardLayoutInfo.imageSize = mContactCardLayoutInfo.foldedSize * IMAGE_SIZE_AS_RATIO_TO_FOLDED_SIZE;
+    mContactCardLayoutInfo.imageFoldedPosition = mContactCardLayoutInfo.imageSize * IMAGE_FOLDED_POSITION_AS_RATIO_OF_SIZE;
+    mContactCardLayoutInfo.imageUnfoldedPosition.x = mContactCardLayoutInfo.padding.width;
+    mContactCardLayoutInfo.imageUnfoldedPosition.y = mContactCardLayoutInfo.headerSize.height + mContactCardLayoutInfo.padding.height;
+
+    // Set the positions of the contact name
+    mContactCardLayoutInfo.textFoldedPosition.x = 0.0f;
+    mContactCardLayoutInfo.textFoldedPosition.y = mContactCardLayoutInfo.imageFoldedPosition.x + mContactCardLayoutInfo.imageSize.height * FOLDED_TEXT_POSITION_AS_RATIO_OF_IMAGE_SIZE;
+    mContactCardLayoutInfo.textUnfoldedPosition.x = mContactCardLayoutInfo.padding.width;
+    mContactCardLayoutInfo.textUnfoldedPosition.y = mContactCardLayoutInfo.imageUnfoldedPosition.y + mContactCardLayoutInfo.imageSize.height + mContactCardLayoutInfo.padding.height;
+
+    // Figure out the positions of the contact cards
+    mItemsPerRow = ( mContactCardLayoutInfo.unfoldedSize.width + mContactCardLayoutInfo.padding.width ) / ( mContactCardLayoutInfo.foldedSize.width + mContactCardLayoutInfo.padding.width );
+    mLastPosition = mContactCardLayoutInfo.unfoldedPosition;
+    mPositionIncrementer.x = mContactCardLayoutInfo.foldedSize.width + mContactCardLayoutInfo.padding.width;
+    mPositionIncrementer.y = mContactCardLayoutInfo.foldedSize.height + mContactCardLayoutInfo.padding.height;
+
+    mInitialized = true;
+  }
+
+  // Create a new contact card and add to our container
+  mContactCards.push_back( new ContactCard( mContactCardLayoutInfo, contactName, contactAddress, imagePath, NextCardPosition() ) );
+}
+
+const Vector2& ContactCardLayouter::NextCardPosition()
+{
+  size_t currentNumOfCards = mContactCards.size();
+
+  if( currentNumOfCards )
+  {
+    if( currentNumOfCards % mItemsPerRow )
+    {
+      mLastPosition.x += mPositionIncrementer.x;
+    }
+    else // go to the next row
+    {
+      mLastPosition.x = mContactCardLayoutInfo.unfoldedPosition.x;
+      mLastPosition.y += mPositionIncrementer.y;
+    }
+  }
+  return mLastPosition;
+}
diff --git a/examples/contact-cards/contact-card-layouter.h b/examples/contact-cards/contact-card-layouter.h
new file mode 100644 (file)
index 0000000..ed4d17b
--- /dev/null
@@ -0,0 +1,85 @@
+#ifndef CONTACT_CARD_LAYOUTER_H
+#define CONTACT_CARD_LAYOUTER_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <vector>
+#include <string>
+#include <dali/public-api/common/intrusive-ptr.h>
+#include <dali/public-api/math/vector2.h>
+
+// INTERNAL INCLUDES
+#include "contact-card-layout-info.h"
+
+class ContactCard;
+
+/**
+ * @brief This class lays out contact cards on the screen appropriately.
+ *
+ * The contact cards are added to the stage directly and it uses the stage size to figure out exactly how to layout them.
+ * It supports a minimum of 3 items on each row or column.
+ *
+ * Relayouting is not supported.
+ */
+class ContactCardLayouter
+{
+public:
+
+  /**
+   * @brief Constructor.
+   */
+  ContactCardLayouter();
+
+  /**
+   * @brief Destructor.
+   */
+  ~ContactCardLayouter();
+
+  /**
+   * @brief Creates a contact card with the given information.
+   * @param[in]  contactName     The name of the contact to display.
+   * @param[in]  contactAddress  The address of the contact to display.
+   * @param[in]  imagePath       The path to the image to display.
+   */
+  void AddContact( const std::string& contactName, const std::string& contactAddress, const std::string& imagePath );
+
+private:
+
+  /**
+   * @brief Calculates the next position of the contact card that's about to be added to our container.
+   * @return A reference to the next position.
+   */
+  const Dali::Vector2& NextCardPosition();
+
+  ContactCardLayoutInfo mContactCardLayoutInfo; ///< The common layouting information used by all contact cards. Set up when AddContact is first called.
+
+  typedef Dali::IntrusivePtr< ContactCard > ContactCardPtr; ///< Better than raw pointers as these are ref counted and the memory is released when the count reduces to 0.
+  typedef std::vector< ContactCardPtr > ContactCardContainer;
+  ContactCardContainer mContactCards; ///< Contains all the contact cards.
+
+  Dali::Vector2 mLastPosition; ///< The last position a contact card was added.
+  Dali::Vector2 mPositionIncrementer; ///< Calculated once when AddContact is first called.
+  size_t mItemsPerRow; ///< Calculated once when AddContact is first called and stores the number of items we have in a row.
+
+  bool mInitialized; ///< Whether initialization has taken place or not.
+};
+
+
+
+#endif // CONTACT_CARD_LAYOUTER_H
diff --git a/examples/contact-cards/contact-card.cpp b/examples/contact-cards/contact-card.cpp
new file mode 100644 (file)
index 0000000..92c97d2
--- /dev/null
@@ -0,0 +1,341 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "contact-card.h"
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/focus-manager/keyinput-focus-manager.h>
+
+// INTERNAL INCLUDES
+#include "contact-card-layout-info.h"
+#include "clipped-image.h"
+#include "masked-image.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+/*
+ * The constants below are used to create the following Unfold Animation.
+ *
+ * 0ms  50  100  150  200  250  300  350  400 Total Animation time in Milliseconds
+ * |    |    |    |    |    |    |    |    |
+ * o-----------------------------------o   |  X Position Animation            ( 0ms To 360ms)
+ * |   o-----------------------------------o  Y Position Animation            (40ms To 400ms)
+ * o-----------------------------------o   |  Width Animation                 ( 0ms To 360ms)
+ * |   o-----------------------------------o  Height Animation                (40ms To 400ms)
+ * o-------o |    |    |    |    |    |    |  Fade out Name Text Animation    ( 0ms To  80ms)
+ * |       o-------o   |    |    |    |    |  Fade in Details Text Animation  (80ms To 160ms)
+ * o---------------o   |    |    |    |    |  Fade out other cards Animation  ( 0ms To 160ms)
+ * o---------------------------------------o  Mesh Morph Animation            ( 0ms To 400ms)
+ */
+const TimePeriod TIME_PERIOD_UNFOLD_X( 0.0f,  0.36f ); ///< Start at 0ms, duration 360ms
+const TimePeriod TIME_PERIOD_UNFOLD_Y( 0.04f, 0.36f ); ///< Start at 40ms, duration 360ms
+const TimePeriod TIME_PERIOD_UNFOLD_WIDTH( 0.0f,  0.36f ); ///< Start at 0ms, duration 360ms
+const TimePeriod TIME_PERIOD_UNFOLD_HEIGHT( 0.04f, 0.36f ); ///< Start at 40ms, duration 360ms
+const TimePeriod TIME_PERIOD_UNFOLD_NAME_OPACITY( 0.0f, 0.08f ); ///< Start at 0ms, duration 80ms
+const TimePeriod TIME_PERIOD_UNFOLD_DETAIL_OPACITY( 0.08f, 0.08f ); ///< Start at 80ms, duration 80ms
+const TimePeriod TIME_PERIOD_UNFOLD_SIBLING_OPACITY( 0.0f, 0.08f ); ///< Start at 0ms, duration 80ms
+const TimePeriod TIME_PERIOD_UNFOLD_MESH_MORPH( 0.0f, 0.4f ); ///< Start at 0ms, duration 400ms
+
+/*
+ * The constants below are used to create the following Fold Animation:
+ *
+ * 0ms  50  100  150  200  250  300  350  400 Total Animation time in Milliseconds
+ * |    |    |    |    |    |    |    |    |
+ * |    |o---------------------------------o  X Position Animation            ( 64ms To 400ms)
+ * o---------------------------------o|    |  Y Position Animation            (  0ms To 336ms)
+ * |    |o---------------------------------o  Width Animation                 ( 64ms To 400ms)
+ * o---------------------------------o|    |  Height Animation                (  0ms To 336ms)
+ * |       o-------o   |    |    |    |    |  Fade in Name Text animation     ( 80ms To 160ms)
+ * o-------o |    |    |    |    |    |    |  Fade out Details Text animation (  0ms To  80ms)
+ * |    |    |    |    |    |    | o-------o  Fade in other cards animation   (320ms To 400ms)
+ * o---------------------------------------o  Morph Animation                 (  0ms To 400ms)
+ */
+const TimePeriod TIME_PERIOD_FOLD_X( 0.064f, 0.336f ); ///< Start at 64ms, duration 336ms
+const TimePeriod TIME_PERIOD_FOLD_Y( 0.0f, 0.336f ); ///< Start at 0ms, duration 336ms
+const TimePeriod TIME_PERIOD_FOLD_WIDTH( 0.064f, 0.336f ); ///< Start at 64ms, duration 336ms
+const TimePeriod TIME_PERIOD_FOLD_HEIGHT( 0.0f, 0.336f ); ///< Start at 0ms, duration 336ms
+const TimePeriod TIME_PERIOD_FOLD_NAME_OPACITY( 0.08f, 0.08f ); ///< Start at 80ms, duration 80ms
+const TimePeriod TIME_PERIOD_FOLD_DETAIL_OPACITY( 0.0f, 0.08f ); ///< Start at 0ms, duration 80ms
+const TimePeriod TIME_PERIOD_FOLD_SIBLING_OPACITY( 0.32f, 0.08f ); ///< Start at 320ms, duration 80ms
+const TimePeriod TIME_PERIOD_FOLD_MESH_MORPH( 0.0f, 0.4f ); ///< Start at 0ms, duration 400ms
+
+AlphaFunction ALPHA_FUNCTION_UNFOLD( AlphaFunction::DEFAULT ); ///< Alpha function used for the Unfold Animation
+AlphaFunction ALPHA_FUNCTION_FOLD( AlphaFunction::EASE_IN_OUT ); ///< Alpha function used for the Fold Animation
+
+const Vector4 HEADER_COLOR( 231.0f/255.0f, 231.0f/255.0f, 231.0f/255.0f, 1.0f ); ///< The color of the header
+
+} // unnamed namespace
+
+ContactCard::ContactCard(
+    const ContactCardLayoutInfo& contactCardLayoutInfo,
+    const std::string& contactName,
+    const std::string& contactAddress,
+    const std::string& imagePath,
+    const Vector2& position )
+: mTapDetector(),
+  mContactCard(),
+  mHeader(),
+  mClippedImage(),
+  mMaskedImage(),
+  mNameText(),
+  mDetailText(),
+  mAnimation(),
+  mSlotDelegate( this ),
+  mContactCardLayoutInfo( contactCardLayoutInfo ),
+  foldedPosition( position ),
+  mClippedImagePropertyIndex( Property::INVALID_INDEX ),
+  mFolded( true )
+{
+  // Connect to the stage's key signal to allow Back and Escape to fold a contact card if it is unfolded
+  Stage stage = Stage::GetCurrent();
+  stage.KeyEventSignal().Connect( mSlotDelegate, &ContactCard::OnKeyEvent );
+
+  // Create a control which will be used for the background and to clip the contents
+  mContactCard = Control::New();
+  mContactCard.SetProperty( Control::Property::BACKGROUND,
+                            Property::Map{ { Toolkit::Visual::Property::TYPE, Visual::COLOR },
+                                           { ColorVisual::Property::MIX_COLOR, Color::WHITE } } );
+  mContactCard.SetProperty( Actor::Property::CLIPPING_MODE, ClippingMode::CLIP_CHILDREN );
+  mContactCard.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  mContactCard.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  mContactCard.SetPosition( foldedPosition.x, foldedPosition.y );
+  mContactCard.SetSize( mContactCardLayoutInfo.foldedSize );
+  stage.Add( mContactCard );
+
+  // Create the header which will be shown only when the contact is unfolded
+  mHeader = Control::New();
+  mHeader.SetSize( mContactCardLayoutInfo.headerSize );
+  mHeader.SetProperty( Control::Property::BACKGROUND,
+                       Property::Map{ { Toolkit::Visual::Property::TYPE, Visual::COLOR },
+                                      { ColorVisual::Property::MIX_COLOR, HEADER_COLOR } } );
+  mHeader.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  mHeader.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  mHeader.SetPosition( mContactCardLayoutInfo.headerFoldedPosition.x, mContactCardLayoutInfo.headerFoldedPosition.y );
+
+  // Create a clipped image (whose clipping can be animated)
+  mClippedImage = ClippedImage::Create( imagePath, mClippedImagePropertyIndex );
+  mClippedImage.SetSize( mContactCardLayoutInfo.imageSize );
+  mClippedImage.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  mClippedImage.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  mClippedImage.SetPosition( mContactCardLayoutInfo.imageFoldedPosition.x, mContactCardLayoutInfo.imageFoldedPosition.y );
+  mClippedImage.SetVisible( false ); // Hide image as we only want to display it if we are animating or unfolded
+  mContactCard.Add( mClippedImage );
+
+  // Create an image with a mask which is to be used when the contact is folded
+  mMaskedImage = MaskedImage::Create( imagePath );
+  mMaskedImage.SetSize( mContactCardLayoutInfo.imageSize );
+  mMaskedImage.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  mMaskedImage.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  mMaskedImage.SetPosition( mContactCardLayoutInfo.imageFoldedPosition.x, mContactCardLayoutInfo.imageFoldedPosition.y );
+  mContactCard.Add( mMaskedImage );
+
+  // Add the text label for just the name
+  mNameText = TextLabel::New( contactName );
+  mNameText.SetStyleName( "ContactNameTextLabel" );
+  mNameText.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  mNameText.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  mNameText.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  mNameText.SetPosition( mContactCardLayoutInfo.textFoldedPosition.x, mContactCardLayoutInfo.textFoldedPosition.y );
+  mContactCard.Add( mNameText );
+
+  // Create the detail text-label
+  std::string detailString( contactName );
+  detailString += "\n\n";
+  detailString += contactAddress;
+
+  mDetailText = TextLabel::New( detailString );
+  mDetailText.SetStyleName( "ContactDetailTextLabel" );
+  mDetailText.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  mDetailText.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  mDetailText.SetPosition( mContactCardLayoutInfo.textFoldedPosition.x, mContactCardLayoutInfo.textFoldedPosition.y );
+  mDetailText.SetSize( Vector2( mContactCardLayoutInfo.unfoldedSize.width - mContactCardLayoutInfo.textFoldedPosition.x * 2.0f, 0.0f ) );
+  mDetailText.SetOpacity( 0.0f );
+
+  // Attach tap detection to the overall clip control
+  mTapDetector = TapGestureDetector::New();
+  mTapDetector.Attach( mContactCard );
+  mTapDetector.DetectedSignal().Connect( mSlotDelegate, &ContactCard::OnTap );
+}
+
+ContactCard::~ContactCard()
+{
+  if( mContactCard )
+  {
+    mContactCard.Unparent();
+  }
+}
+
+void ContactCard::OnTap( Actor actor, const TapGesture& /* gesture */ )
+{
+  if( actor == mContactCard )
+  {
+    Animate();
+  }
+}
+
+void ContactCard::Animate()
+{
+  KeyInputFocusManager keyInputFocusManager = KeyInputFocusManager::Get();
+
+  mAnimation = Animation::New( 0.0f ); // Overall duration is unimportant as superseded by TimePeriods set later
+
+  if( mFolded )
+  {
+    // Set key-input-focus to our contact-card so that we can fold the contact-card if we receive a Back or Esc key
+    keyInputFocusManager.SetFocus( mContactCard );
+
+    mContactCard.Add( mHeader );
+    mContactCard.Add( mDetailText );
+
+    // Show clipped-image to animate geometry and hide the masked-image
+    mClippedImage.SetVisible( true );
+    mMaskedImage.SetVisible( false );
+
+    // Animate the size of the control (and clipping area)
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::POSITION_X ),  mContactCardLayoutInfo.unfoldedPosition.x,  ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_X );
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::POSITION_Y ),  mContactCardLayoutInfo.unfoldedPosition.y,  ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_Y );
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::SIZE_WIDTH ),  mContactCardLayoutInfo.unfoldedSize.width,  ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_WIDTH );
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::SIZE_HEIGHT ), mContactCardLayoutInfo.unfoldedSize.height, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_HEIGHT );
+
+    // Animate the header area into position
+    mAnimation.AnimateTo( Property( mHeader, Actor::Property::POSITION_X ), mContactCardLayoutInfo.headerUnfoldedPosition.x, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_X );
+    mAnimation.AnimateTo( Property( mHeader, Actor::Property::POSITION_Y ), mContactCardLayoutInfo.headerUnfoldedPosition.y, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_Y );
+
+    // Animate the clipped image into the unfolded position and into a quad
+    mAnimation.AnimateTo( Property( mClippedImage, Actor::Property::POSITION_X ),  mContactCardLayoutInfo.imageUnfoldedPosition.x, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_X );
+    mAnimation.AnimateTo( Property( mClippedImage, Actor::Property::POSITION_Y ),  mContactCardLayoutInfo.imageUnfoldedPosition.y, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_Y );
+    mAnimation.AnimateTo( Property( mClippedImage, mClippedImagePropertyIndex ), ClippedImage::QUAD_GEOMETRY, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_MESH_MORPH );
+
+    // Fade out the opacity of the name, and animate into the unfolded position
+    mAnimation.AnimateTo( Property( mNameText, Actor::Property::COLOR_ALPHA ), 0.0f, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_NAME_OPACITY );
+    mAnimation.AnimateTo( Property( mNameText, Actor::Property::POSITION_X ),  mContactCardLayoutInfo.textUnfoldedPosition.x, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_X );
+    mAnimation.AnimateTo( Property( mNameText, Actor::Property::POSITION_Y ),  mContactCardLayoutInfo.textUnfoldedPosition.y, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_Y );
+
+    // Fade in the opacity of the detail, and animate into the unfolded position
+    mAnimation.AnimateTo( Property( mDetailText, Actor::Property::COLOR_ALPHA ), 1.0f, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_DETAIL_OPACITY );
+    mAnimation.AnimateTo( Property( mDetailText, Actor::Property::POSITION_X ),  mContactCardLayoutInfo.textUnfoldedPosition.x, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_X );
+    mAnimation.AnimateTo( Property( mDetailText, Actor::Property::POSITION_Y ),  mContactCardLayoutInfo.textUnfoldedPosition.y, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_Y );
+
+    // Fade out all the siblings
+    Actor parent = mContactCard.GetParent();
+    for( size_t i = 0; i < parent.GetChildCount(); ++i )
+    {
+      Actor sibling = parent.GetChildAt( i );
+      if( sibling != mContactCard )
+      {
+        mAnimation.AnimateTo( Property( sibling, Actor::Property::COLOR_ALPHA ), 0.0f, ALPHA_FUNCTION_UNFOLD, TIME_PERIOD_UNFOLD_SIBLING_OPACITY );
+        sibling.SetSensitive( false );
+      }
+    }
+
+    mAnimation.FinishedSignal().Connect( mSlotDelegate, &ContactCard::OnAnimationFinished );
+    mAnimation.Play();
+  }
+  else
+  {
+    // Remove key-input-focus from our contact-card when we are folded
+    keyInputFocusManager.RemoveFocus( mContactCard );
+
+    mContactCard.Add( mNameText );
+
+    // Animate the size of the control (and clipping area)
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::POSITION_X ),  foldedPosition.x, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_X );
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::POSITION_Y ),  foldedPosition.y, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_Y );
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::SIZE_WIDTH ),  mContactCardLayoutInfo.foldedSize.width,  ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_WIDTH );
+    mAnimation.AnimateTo( Property( mContactCard, Actor::Property::SIZE_HEIGHT ), mContactCardLayoutInfo.foldedSize.height, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_HEIGHT );
+
+    // Animate the header area out of position
+    mAnimation.AnimateTo( Property( mHeader, Actor::Property::POSITION_X ), mContactCardLayoutInfo.headerFoldedPosition.x, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_X );
+    mAnimation.AnimateTo( Property( mHeader, Actor::Property::POSITION_Y ), mContactCardLayoutInfo.headerFoldedPosition.y, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_Y );
+
+    // Animate the clipped image into the folded position and into a circle
+    mAnimation.AnimateTo( Property( mClippedImage, Actor::Property::POSITION_X ),  mContactCardLayoutInfo.imageFoldedPosition.x, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_X );
+    mAnimation.AnimateTo( Property( mClippedImage, Actor::Property::POSITION_Y ),  mContactCardLayoutInfo.imageFoldedPosition.y, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_Y );
+    mAnimation.AnimateTo( Property( mClippedImage, mClippedImagePropertyIndex ), ClippedImage::CIRCLE_GEOMETRY, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_MESH_MORPH );
+
+    // Fade in the opacity of the name, and animate into the folded position
+    mAnimation.AnimateTo( Property( mNameText, Actor::Property::COLOR_ALPHA ), 1.0f, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_NAME_OPACITY );
+    mAnimation.AnimateTo( Property( mNameText, Actor::Property::POSITION_X ),  mContactCardLayoutInfo.textFoldedPosition.x, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_X );
+    mAnimation.AnimateTo( Property( mNameText, Actor::Property::POSITION_Y ),  mContactCardLayoutInfo.textFoldedPosition.y, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_Y );
+
+    // Fade out the opacity of the detail, and animate into the folded position
+    mAnimation.AnimateTo( Property( mDetailText, Actor::Property::COLOR_ALPHA ), 0.0f, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_DETAIL_OPACITY );
+    mAnimation.AnimateTo( Property( mDetailText, Actor::Property::POSITION_X ),  mContactCardLayoutInfo.textFoldedPosition.x, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_X );
+    mAnimation.AnimateTo( Property( mDetailText, Actor::Property::POSITION_Y ),  mContactCardLayoutInfo.textFoldedPosition.y, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_Y );
+
+    // Slowly fade in all the siblings
+    Actor parent = mContactCard.GetParent();
+    for( size_t i = 0; i < parent.GetChildCount(); ++i )
+    {
+      Actor sibling = parent.GetChildAt( i );
+      if( sibling != mContactCard )
+      {
+        mAnimation.AnimateTo( Property( sibling, Actor::Property::COLOR_ALPHA ), 1.0f, ALPHA_FUNCTION_FOLD, TIME_PERIOD_FOLD_SIBLING_OPACITY );
+        sibling.SetSensitive( true );
+      }
+    }
+
+    mAnimation.FinishedSignal().Connect( mSlotDelegate, &ContactCard::OnAnimationFinished );
+    mAnimation.Play();
+  }
+
+  mFolded = !mFolded;
+}
+
+void ContactCard::OnAnimationFinished( Animation& animation )
+{
+  // Ensure the finishing animation is the latest as we do not want to change state if a previous animation has finished
+  if( mAnimation == animation )
+  {
+    if( mFolded )
+    {
+      mHeader.Unparent();
+      mDetailText.Unparent();
+
+      // Hide the clipped-image as we have finished animating the geometry and show the masked-image again
+      mClippedImage.SetVisible( false );
+      mMaskedImage.SetVisible( true );
+    }
+    else
+    {
+      mNameText.Unparent();
+    }
+    mAnimation.Reset();
+  }
+}
+
+void ContactCard::OnKeyEvent( const KeyEvent& event )
+{
+  if( ( ! mFolded ) && // If we're folded then there's no need to do any more checking
+      ( event.state == KeyEvent::Down ) )
+  {
+    if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+    {
+      KeyInputFocusManager keyInputFocusManager = KeyInputFocusManager::Get();
+      if( keyInputFocusManager.GetCurrentFocusControl() == mContactCard )
+      {
+        // Our contact-card is set to receive focus and we're unfolded so animate back to the folded state
+        Animate();
+      }
+    }
+  }
+}
diff --git a/examples/contact-cards/contact-card.h b/examples/contact-cards/contact-card.h
new file mode 100644 (file)
index 0000000..cee4000
--- /dev/null
@@ -0,0 +1,113 @@
+#ifndef CONTACT_CARD_H
+#define CONTACT_CARD_H
+
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <string>
+#include <dali/public-api/actors/actor.h>
+#include <dali/public-api/animation/animation.h>
+#include <dali/public-api/events/tap-gesture-detector.h>
+#include <dali/public-api/object/ref-object.h>
+#include <dali-toolkit/public-api/controls/control.h>
+
+struct ContactCardLayoutInfo;
+
+/**
+ * @brief Creates and sets up animations for a contact card
+ *
+ * Each contact card has two states, folded and unfolded.
+ * In this context, "unfolded" means when all the details, including the name, address and image are shown.
+ * In this scenario, the control takes up most of the screen.
+ *
+ * When the contact card is "folded", this means when only brief information is shown to the user, i.e. the image and name.
+ * In this scenario, the control is small and there should be several of these contact cards visible on the screen.
+ *
+ * The contact card creates several controls that it requires to appropriately display itself in both of these states.
+ */
+class ContactCard : public Dali::RefObject
+{
+public:
+
+  /**
+   * @brief Constructor.
+   *
+   * This will create all the controls and add them to the stage so should only be called after the init-signal from the Application has been received.
+   *
+   * @param[in]  contactCardLayoutInfo  Reference to the common data used by all contact cards.
+   * @param[in]  contactName            The name of the contact to display.
+   * @param[in]  contactAddress         The address of the contact to display.
+   * @param[in]  imagePath              The path to the image to display.
+   * @param[in]  position               The unique folded position of this particular contact-card.
+   */
+  ContactCard( const ContactCardLayoutInfo& contactCardLayoutInfo, const std::string& contactName, const std::string& contactAddress, const std::string& imagePath, const Dali::Vector2& position );
+
+private:
+
+  /**
+   * @brief Private Destructor. Will only be deleted when ref-count goes to 0.
+   *
+   * Unparent the created contact card (i.e. remove from stage).
+   */
+  ~ContactCard();
+
+  /**
+   * @brief Called when this contact card is tapped.
+   * @param[in]  actor    The tapped actor.
+   * @param[in]  gesture  The tap gesture.
+   */
+  void OnTap( Dali::Actor actor, const Dali::TapGesture& gesture );
+
+  /**
+   * @brief Animates the fold/unfold animation as required.
+   */
+  void Animate();
+
+  /**
+   * @brief Called when the animation finishes.
+   * @param[in]  animation  The animation which has just finished.
+   */
+  void OnAnimationFinished( Dali::Animation& animation );
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to fold a contact card if it is unfolded.
+   * @param[in]  event  The key event information
+   */
+  void OnKeyEvent( const Dali::KeyEvent& event );
+
+  Dali::TapGestureDetector mTapDetector; ///< Used for tap detection.
+  Dali::Toolkit::Control mContactCard; ///< Used for the background and to clip the contents.
+  Dali::Toolkit::Control mHeader; ///< Header shown when unfolded.
+  Dali::Toolkit::Control mClippedImage; ///< The image representing the contact (whose clipping can be animated).
+  Dali::Toolkit::Control mMaskedImage; ///< The image with a mask (better quality around the edges than the clipped image when folded).
+  Dali::Toolkit::Control mNameText; ///< The text shown when folded.
+  Dali::Toolkit::Control mDetailText; ///< The text shown when unfolded.
+
+  Dali::Animation mAnimation; ///< The fold/unfold animation.
+
+  Dali::SlotDelegate< ContactCard > mSlotDelegate; ///< Used to automatically disconnect our member functions from signals that this class connects to upon destruction. Can be used instead of inheriting from ConnectionTracker.
+
+  const ContactCardLayoutInfo& mContactCardLayoutInfo; ///< Reference to the common data used by all contact cards.
+  const Dali::Vector2 foldedPosition; ///< The unique position of this card when it is folded.
+  Dali::Property::Index mClippedImagePropertyIndex; ///< Index used to animate the clipping of mClippedImage.
+  bool mFolded; ///< Whether the contact card is folded or not.
+};
+
+#endif // CONTACT_CARD_H
diff --git a/examples/contact-cards/contact-cards-example.cpp b/examples/contact-cards/contact-cards-example.cpp
new file mode 100644 (file)
index 0000000..a0967a1
--- /dev/null
@@ -0,0 +1,128 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <vector>
+#include <dali/public-api/adaptor-framework/application.h>
+#include <dali/public-api/adaptor-framework/key.h>
+#include <dali/public-api/common/stage.h>
+#include <dali/public-api/events/key-event.h>
+#include <dali-toolkit/devel-api/focus-manager/keyinput-focus-manager.h>
+
+// INTERNAL INCLUDES
+#include "contact-card-layouter.h"
+#include "contact-data.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const Vector4 STAGE_COLOR( 211.0f / 255.0f, 211.0f / 255.0f, 211.0f / 255.0f, 1.0f ); ///< The color of the stage
+const char * const THEME_PATH( DEMO_STYLE_DIR "contact-cards-example-theme.json" ); ///< The theme used for this example
+} // unnamed namespace
+
+/**
+ * @brief Creates several contact cards that animate between a folded and unfolded state.
+ *
+ * This demonstrates how different animations can start and stop at different times within the same Animation function.
+ * Additionally, this also shows how to morph between two different geometries.
+ *
+ * ContactCardLayouter: This class is used to lay out the different contact cards on the screen.
+ *                      This takes stage size into account but does not support relayouting.
+ * ContactCard: This class represents each contact card on the screen.
+ *              Two animations are set up in this class which animate several properties with multiple start and stop times.
+ *              An overview of the two animations can be found in contact-card.cpp.
+ * ContactCardLayoutInfo: This is a structure to store common layout information and is created by the ContactCardLayouter and used by each ContactCard.
+ * ContactData: This namespace contains a table which has the contact information we use to populate the contact cards.
+ * ClippedImage: This namespace provides a helper function which creates an ImageView which is added to a control that has clipping.
+ *               This clipping comes in the form of a Circle or Quad.
+ *               The Vertex shader mixes in the Circle and Quad geometry depending on the value of a uniform float.
+ *               Animating this float between CIRCLE_GEOMETRY and QUAD_GEOMETRY is what enables the morphing between the two geometries.
+ * MaskedImage: This namespace provides a helper function which creates an ImageView with a mask that matches the Circle geometry provided by ClippedImage.
+ *              Using a mask yields much better quality than when using an image with a circle geometry, so this is ONLY used when the contact card is folded.
+ */
+class ContactCardController : public ConnectionTracker // Inherit from ConnectionTracker so that our signals can be automatically disconnected upon our destruction.
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in]  application A reference to the Application class.
+   */
+  ContactCardController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ContactCardController::Create );
+  }
+
+private:
+
+  /**
+   * @brief Called to initialise the application content
+   * @param[in] application A reference to the Application class.
+   */
+  void Create( Application& application )
+  {
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Set the stage background color and connect to the stage's key signal to allow Back and Escape to exit.
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( STAGE_COLOR );
+    stage.KeyEventSignal().Connect( this, &ContactCardController::OnKeyEvent );
+
+    // Add all the contacts to the layouter
+    for( size_t i = 0; i < ContactData::TABLE_SIZE; ++i )
+    {
+      mContactCardLayouter.AddContact( ContactData::TABLE[ i ].name, ContactData::TABLE[ i ].address, ContactData::TABLE[ i ].imagePath );
+    }
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      KeyInputFocusManager keyInputFocusManager = KeyInputFocusManager::Get();
+      if( ! keyInputFocusManager.GetCurrentFocusControl() ) // Don't quit if a control has focus
+      {
+        if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+        {
+          mApplication.Quit();
+        }
+      }
+    }
+  }
+
+  Application& mApplication; ///< Reference to the application class.
+  ContactCardLayouter mContactCardLayouter; ///< The contact card layouter.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, THEME_PATH );
+  ContactCardController contactCardController( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/contact-cards/contact-data.cpp b/examples/contact-cards/contact-data.cpp
new file mode 100644 (file)
index 0000000..5ff3163
--- /dev/null
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// HEADER
+#include "contact-data.h"
+
+namespace ContactData
+{
+
+const Item TABLE[] =
+{
+  { "Shelia Ramos",       "19 Wormley Ct\nWinters Way\nWaltham Abbey\nEN9 3HW", DEMO_IMAGE_DIR "gallery-small-19.jpg" },
+  { "Walter Jensen",      "32 Upper Fant Rd\nMaidstone\nME16 8DN",              DEMO_IMAGE_DIR "gallery-small-2.jpg" },
+  { "Randal Parks",       "8 Rymill St\nLondon\nE16 2JF",                       DEMO_IMAGE_DIR "gallery-small-3.jpg" },
+  { "Tasha Cooper",       "2 Kyles View\nColintraive\nPA22 3AS",                DEMO_IMAGE_DIR "gallery-small-4.jpg" },
+  { "Domingo Lynch",      "Red Lion Farm\nWatlington\nOX49 5LG",                DEMO_IMAGE_DIR "gallery-small-5.jpg" },
+  { "Dan Haynes",         "239 Whitefield Dr\nLiverpool\nL32 0RD",              DEMO_IMAGE_DIR "gallery-small-6.jpg" },
+  { "Leslie Wong",        "1 Tullyvar Rd\nAughnacloy\nBT69 6BQ",                DEMO_IMAGE_DIR "gallery-small-7.jpg" },
+  { "Mable Hodges",       "5 Mortimer Rd\nGrazeley\nReading\nRG7 1LA",          DEMO_IMAGE_DIR "gallery-small-8.jpg" },
+  { "Kristi Riley",       "10 Jura Dr\nOld Kilpatrick\nGlasgow\nG60 5EH",       DEMO_IMAGE_DIR "gallery-small-17.jpg" },
+  { "Terry Clark",        "142 Raeberry St\nGlasgow\nG20 6EA",                  DEMO_IMAGE_DIR "gallery-small-18.jpg" },
+  { "Horace Bailey",      "11 Assembly St\nNormanton\nWF6 2DB",                 DEMO_IMAGE_DIR "gallery-small-11.jpg" },
+  { "Suzanne Delgado",    "6 Grange Rd\nDownpatrick\nBT30 7DB",                 DEMO_IMAGE_DIR "gallery-small-12.jpg" },
+  { "Jamie Bennett",      "117 Potter St\nNorthwood\nHA6 1QF",                  DEMO_IMAGE_DIR "gallery-small-13.jpg" },
+  { "Emmett Yates",       "18 Renfrew Way\nBletchley\nMilton Keynes\nMK3 7NY",  DEMO_IMAGE_DIR "gallery-small-14.jpg" },
+  { "Glen Vaughn",        "5 Hasman Terrace\nCove Bay\nAberdeen\nAB12 3GD",     DEMO_IMAGE_DIR "gallery-small-15.jpg" },
+};
+const size_t TABLE_SIZE = sizeof( TABLE ) / sizeof( TABLE[ 0 ] );
+
+} // namespace ContactData
diff --git a/examples/contact-cards/contact-data.h b/examples/contact-cards/contact-data.h
new file mode 100644 (file)
index 0000000..0036774
--- /dev/null
@@ -0,0 +1,42 @@
+#ifndef CONTACT_DATA_H
+#define CONTACT_DATA_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <cstddef>
+
+namespace ContactData
+{
+
+/**
+ * @brief The information for an individual contact.
+ */
+struct Item
+{
+  const char * const name; ///< The name of the contact.
+  const char * const address; ///< The address of the contact.
+  const char * const imagePath; ///< The path to the image that represents the contact.
+};
+
+extern const Item TABLE[]; ///< The table that has the information for all the contacts.
+extern const size_t TABLE_SIZE; ///< The size of TABLE. Can use this to iterate through TABLE.
+
+} // namespace ContactData
+
+#endif // CONTACT_DATA_H
diff --git a/examples/contact-cards/masked-image.cpp b/examples/contact-cards/masked-image.cpp
new file mode 100644 (file)
index 0000000..ede6e75
--- /dev/null
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// HEADER
+#include "masked-image.h"
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+namespace MaskedImage
+{
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char* const IMAGE_MASK ( DEMO_IMAGE_DIR "contact-cards-mask.png" );
+} // unnamed namespace
+
+Dali::Toolkit::Control Create( const std::string& imagePath )
+{
+  Control maskedImage = ImageView::New();
+  maskedImage.SetProperty(
+    Toolkit::ImageView::Property::IMAGE,
+    Property::Map{ { Visual::Property::TYPE, Toolkit::Visual::Type::IMAGE },
+                   { ImageVisual::Property::URL, imagePath },
+                   { ImageVisual::Property::ALPHA_MASK_URL, IMAGE_MASK } }
+  );
+  return maskedImage;
+}
+
+} // namespace ClippedImage
diff --git a/examples/contact-cards/masked-image.h b/examples/contact-cards/masked-image.h
new file mode 100644 (file)
index 0000000..9fefc84
--- /dev/null
@@ -0,0 +1,44 @@
+#ifndef MASKED_IMAGE_H
+#define MASKED_IMAGE_H
+
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <string>
+#include <dali-toolkit/public-api/controls/control.h>
+
+/**
+ * @brief This namespace provides a helper function which creates an ImageView with a mask that matches the Circle geometry provided by ClippedImage.
+ *
+ * Using a mask yields much better quality than when using an image with a circle geometry.
+ * @see ClippedImage
+ */
+namespace MaskedImage
+{
+
+/**
+ * @brief Creates an image with a circular mask.
+ *
+ * @param[in]  imagePath  The path to the image to show.
+ * @return The ImageView with a mask control.
+ */
+Dali::Toolkit::Control Create( const std::string& imagePath );
+
+} // namespace ClippedImage
+
+#endif // MASKED_IMAGE_H
diff --git a/examples/cube-transition-effect/cube-transition-effect-example.cpp b/examples/cube-transition-effect/cube-transition-effect-example.cpp
new file mode 100644 (file)
index 0000000..b2f860e
--- /dev/null
@@ -0,0 +1,422 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <math.h>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+#include "shared/utility.h"
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/buttons/toggle-button.h>
+#include <dali-toolkit/devel-api/transition-effects/cube-transition-effect.h>
+#include <dali-toolkit/devel-api/transition-effects/cube-transition-cross-effect.h>
+#include <dali-toolkit/devel-api/transition-effects/cube-transition-fold-effect.h>
+#include <dali-toolkit/devel-api/transition-effects/cube-transition-wave-effect.h>
+
+
+using namespace Dali;
+
+using Dali::Toolkit::TextLabel;
+
+// LOCAL STUFF
+namespace
+{
+
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const APPLICATION_TITLE_WAVE( "Cube Transition: Wave" );
+const char * const APPLICATION_TITLE_CROSS( "Cube Transition: Cross" );
+const char * const APPLICATION_TITLE_FOLD( "Cube Transition: Fold" );
+const char * const EFFECT_WAVE_IMAGE( DEMO_IMAGE_DIR "icon-effect-wave.png" );
+const char * const EFFECT_WAVE_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-effect-wave-selected.png" );
+const char * const EFFECT_CROSS_IMAGE( DEMO_IMAGE_DIR "icon-effect-cross.png" );
+const char * const EFFECT_CROSS_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-effect-cross-selected.png" );
+const char * const EFFECT_FOLD_IMAGE( DEMO_IMAGE_DIR "icon-effect-fold.png" );
+const char * const EFFECT_FOLD_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-effect-fold-selected.png" );
+const char * const SLIDE_SHOW_START_ICON( DEMO_IMAGE_DIR "icon-play.png" );
+const char * const SLIDE_SHOW_START_ICON_SELECTED( DEMO_IMAGE_DIR "icon-play-selected.png" );
+const char * const SLIDE_SHOW_STOP_ICON( DEMO_IMAGE_DIR "icon-stop.png" );
+const char * const SLIDE_SHOW_STOP_ICON_SELECTED( DEMO_IMAGE_DIR "icon-stop-selected.png" );
+
+const char* IMAGES[] =
+{
+  DEMO_IMAGE_DIR "gallery-large-1.jpg",
+  DEMO_IMAGE_DIR "gallery-large-2.jpg",
+  DEMO_IMAGE_DIR "gallery-large-3.jpg",
+  DEMO_IMAGE_DIR "gallery-large-4.jpg",
+  DEMO_IMAGE_DIR "gallery-large-5.jpg",
+  DEMO_IMAGE_DIR "gallery-large-6.jpg",
+  DEMO_IMAGE_DIR "gallery-large-7.jpg",
+  DEMO_IMAGE_DIR "gallery-large-8.jpg",
+  DEMO_IMAGE_DIR "gallery-large-9.jpg",
+  DEMO_IMAGE_DIR "gallery-large-10.jpg",
+  DEMO_IMAGE_DIR "gallery-large-11.jpg",
+  DEMO_IMAGE_DIR "gallery-large-12.jpg",
+  DEMO_IMAGE_DIR "gallery-large-13.jpg",
+  DEMO_IMAGE_DIR "gallery-large-14.jpg",
+  DEMO_IMAGE_DIR "gallery-large-15.jpg",
+  DEMO_IMAGE_DIR "gallery-large-16.jpg",
+  DEMO_IMAGE_DIR "gallery-large-17.jpg",
+  DEMO_IMAGE_DIR "gallery-large-18.jpg",
+  DEMO_IMAGE_DIR "gallery-large-19.jpg",
+  DEMO_IMAGE_DIR "gallery-large-20.jpg",
+  DEMO_IMAGE_DIR "gallery-large-21.jpg",
+};
+const int NUM_IMAGES( sizeof(IMAGES) / sizeof(IMAGES[0]) );
+
+// the number of cubes: NUM_COLUMNS*NUM_ROWS
+// better choose the numbers that can divide viewAreaSize.x
+const int NUM_COLUMNS_WAVE(16);
+const int NUM_COLUMNS_CROSS(8);
+const int NUM_COLUMNS_FOLD(8);
+// better choose the numbers that can divide viewAreaSize.y
+const int NUM_ROWS_WAVE(20);
+const int NUM_ROWS_CROSS(10);
+const int NUM_ROWS_FOLD(10);
+//transition effect duration
+const float ANIMATION_DURATION_WAVE(1.5f);
+const float ANIMATION_DURATION_CROSS(1.f);
+const float ANIMATION_DURATION_FOLD(1.f);
+//transition effect displacement
+const float CUBE_DISPLACEMENT_WAVE(70.f);
+const float CUBE_DISPLACEMENT_CROSS(30.f);
+
+// The duration of the current image staying on screen when slideshow is on
+const int VIEWINGTIME = 2000; // 2 seconds
+
+} // namespace
+
+class CubeTransitionApp : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  CubeTransitionApp( Application& application );
+
+  ~CubeTransitionApp();
+
+private:
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit( Application& application );
+  /**
+   * PanGesture callback. This method gets called when the pan gesture is detected.
+   * @param[in] actor The actor receiving the pan gesture.
+   * @param[in] gesture The detected pan gesture.
+   */
+  void OnPanGesture( Actor actor, const PanGesture& gesture );
+  /**
+   * Load the next image and start the transition;
+   */
+  void GoToNextImage();
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event);
+  /**
+   * Callback function of effect-switch button
+   * Change the effect when the effect button is clicked
+   * @param[in] button The handle of the clicked button
+   */
+  bool OnEffectButtonClicked( Toolkit::Button button );
+  /**
+   * Callback function of slideshow button
+   * Start or stop the automatical image display when the slideshow button is clicked
+   * @param[in] button The handle of the clicked button
+   */
+  bool OnSildeshowButtonClicked( Toolkit::Button button );
+  /**
+   * Callback function of cube transition completed signal
+   * @param[in] effect The cube effect used for the transition
+   * @param[in] texture The target Texture of the completed transition
+   */
+  void OnTransitionCompleted(Toolkit::CubeTransitionEffect effect, Texture image );
+  /**
+   * Callback function of timer tick
+   * The timer is used to count the image display duration in slideshow,
+   */
+  bool OnTimerTick();
+
+  /**
+   * Loads image, resizes it to the size of stage and creates a textue out of it
+   * @param[in] filepath Path to the image file
+   * @return New texture object
+   */
+  Texture LoadStageFillingTexture( const char* filepath );
+
+private:
+  Application&                    mApplication;
+  Toolkit::Control                mView;
+  Toolkit::ToolBar                mToolBar;
+  Layer                           mContent;
+  Toolkit::TextLabel              mTitle;
+
+  Vector2                         mViewSize;
+
+  Texture                         mCurrentTexture;
+  Texture                         mNextTexture;
+  unsigned int                    mIndex;
+  bool                            mIsImageLoading;
+
+  PanGestureDetector              mPanGestureDetector;
+
+  Toolkit::CubeTransitionEffect   mCubeWaveEffect;
+  Toolkit::CubeTransitionEffect   mCubeCrossEffect;
+  Toolkit::CubeTransitionEffect   mCubeFoldEffect;
+  Toolkit::CubeTransitionEffect   mCurrentEffect;
+
+  bool                            mSlideshow;
+  Timer                           mViewTimer;
+  Toolkit::PushButton             mSlideshowButton;
+
+  Vector2                         mPanPosition;
+  Vector2                         mPanDisplacement;
+};
+
+CubeTransitionApp::CubeTransitionApp( Application& application )
+: mApplication( application ),
+  mIndex( 0 ),
+  mIsImageLoading( false ),
+  mSlideshow( false )
+{
+  mApplication.InitSignal().Connect( this, &CubeTransitionApp::OnInit );
+}
+
+CubeTransitionApp::~CubeTransitionApp()
+{
+  //Nothing to do
+}
+
+void CubeTransitionApp::OnInit( Application& application )
+{
+  Stage::GetCurrent().KeyEventSignal().Connect(this, &CubeTransitionApp::OnKeyEvent);
+
+  // Creates a default view with a default tool bar, the view is added to the stage.
+  mContent = DemoHelper::CreateView( application, mView, mToolBar, "", TOOLBAR_IMAGE, "" );
+  mContent.SetBehavior( Layer::LAYER_3D );
+
+
+  // Add an effect changing toggle button
+  Toolkit::ToggleButton effectChangeToggleButton = Toolkit::ToggleButton::ToggleButton::New();
+
+  effectChangeToggleButton.SetProperty( Toolkit::ToggleButton::Property::STATE_VISUALS,
+                                        Property::Array{ EFFECT_WAVE_IMAGE,
+                                                         EFFECT_CROSS_IMAGE,
+                                                         EFFECT_FOLD_IMAGE }
+                                      );
+
+  effectChangeToggleButton.ClickedSignal().Connect( this, &CubeTransitionApp::OnEffectButtonClicked );
+  mToolBar.AddControl( effectChangeToggleButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+  // Add title to the tool bar.
+  mTitle = DemoHelper::CreateToolBarLabel( APPLICATION_TITLE_WAVE );
+  mToolBar.AddControl( mTitle, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter );
+
+  //Add an slideshow icon on the right of the title
+  mSlideshowButton = Toolkit::PushButton::New();
+  mSlideshowButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, SLIDE_SHOW_START_ICON );
+  mSlideshowButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, SLIDE_SHOW_START_ICON_SELECTED );
+  mSlideshowButton.ClickedSignal().Connect( this, &CubeTransitionApp::OnSildeshowButtonClicked );
+  mToolBar.AddControl( mSlideshowButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalCenter, DemoHelper::DEFAULT_PLAY_PADDING );
+
+  // Set size to stage size to avoid seeing a black border on transition
+  mViewSize = Stage::GetCurrent().GetSize();
+
+  // show the first image
+  mCurrentTexture = LoadStageFillingTexture( IMAGES[mIndex] );
+
+  //use small cubes
+  mCubeWaveEffect = Toolkit::CubeTransitionWaveEffect::New( NUM_ROWS_WAVE, NUM_COLUMNS_WAVE );
+  mCubeWaveEffect.SetTransitionDuration( ANIMATION_DURATION_WAVE );
+  mCubeWaveEffect.SetCubeDisplacement( CUBE_DISPLACEMENT_WAVE );
+  mCubeWaveEffect.TransitionCompletedSignal().Connect(this, &CubeTransitionApp::OnTransitionCompleted);
+
+  mCubeWaveEffect.SetSize( mViewSize );
+  mCubeWaveEffect.SetParentOrigin( ParentOrigin::CENTER );
+  mCubeWaveEffect.SetCurrentTexture( mCurrentTexture );
+
+  // use big cubes
+  mCubeCrossEffect = Toolkit::CubeTransitionCrossEffect::New(NUM_ROWS_CROSS, NUM_COLUMNS_CROSS );
+  mCubeCrossEffect.SetTransitionDuration( ANIMATION_DURATION_CROSS );
+  mCubeCrossEffect.SetCubeDisplacement( CUBE_DISPLACEMENT_CROSS );
+  mCubeCrossEffect.TransitionCompletedSignal().Connect(this, &CubeTransitionApp::OnTransitionCompleted);
+
+  mCubeCrossEffect.SetSize( mViewSize );
+  mCubeCrossEffect.SetParentOrigin( ParentOrigin::CENTER );
+  mCubeCrossEffect.SetCurrentTexture( mCurrentTexture );
+
+  mCubeFoldEffect = Toolkit::CubeTransitionFoldEffect::New( NUM_ROWS_FOLD, NUM_COLUMNS_FOLD );
+  mCubeFoldEffect.SetTransitionDuration( ANIMATION_DURATION_FOLD );
+  mCubeFoldEffect.TransitionCompletedSignal().Connect(this, &CubeTransitionApp::OnTransitionCompleted);
+
+  mCubeFoldEffect.SetSize( mViewSize );
+  mCubeFoldEffect.SetParentOrigin( ParentOrigin::CENTER );
+  mCubeFoldEffect.SetCurrentTexture( mCurrentTexture );
+
+  mViewTimer = Timer::New( VIEWINGTIME );
+  mViewTimer.TickSignal().Connect( this, &CubeTransitionApp::OnTimerTick );
+
+
+  mCurrentEffect = mCubeWaveEffect;
+  mContent.Add( mCurrentEffect );
+
+  // use pan gesture to detect the cursor or finger movement
+  mPanGestureDetector = PanGestureDetector::New();
+  mPanGestureDetector.DetectedSignal().Connect( this, &CubeTransitionApp::OnPanGesture );
+  mPanGestureDetector.Attach( mContent );
+}
+
+// signal handler, called when the pan gesture is detected
+void CubeTransitionApp::OnPanGesture( Actor actor, const PanGesture& gesture )
+{
+  // does not response when the transition has not finished
+  if( mIsImageLoading || mCubeWaveEffect.IsTransitioning() || mCubeCrossEffect.IsTransitioning() || mCubeFoldEffect.IsTransitioning() || mSlideshow )
+  {
+    return;
+  }
+
+  if( gesture.state == Gesture::Continuing )
+  {
+    if( gesture.displacement.x < 0)
+    {
+      mIndex = (mIndex + 1)%NUM_IMAGES;
+    }
+    else
+    {
+      mIndex = (mIndex + NUM_IMAGES -1)%NUM_IMAGES;
+    }
+
+    mPanPosition = gesture.position;
+    mPanDisplacement = gesture.displacement;
+    GoToNextImage();
+  }
+}
+
+void CubeTransitionApp::GoToNextImage()
+{
+  mNextTexture = LoadStageFillingTexture( IMAGES[ mIndex ] );
+  mCurrentEffect.SetTargetTexture( mNextTexture );
+  mIsImageLoading = false;
+  mCurrentEffect.StartTransition( mPanPosition, mPanDisplacement );
+  mCurrentTexture = mNextTexture;
+}
+
+bool CubeTransitionApp::OnEffectButtonClicked( Toolkit::Button button )
+{
+  mContent.Remove( mCurrentEffect );
+  if(mCurrentEffect == mCubeWaveEffect)
+  {
+    mCurrentEffect = mCubeCrossEffect;
+    mTitle.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_CROSS) );
+  }
+  else if(mCurrentEffect == mCubeCrossEffect)
+  {
+    mCurrentEffect = mCubeFoldEffect;
+    mTitle.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_FOLD) );
+  }
+  else
+  {
+    mCurrentEffect = mCubeWaveEffect;
+    mTitle.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_WAVE) );
+  }
+  mContent.Add( mCurrentEffect );
+
+  // Set the current image to cube transition effect
+  // only need to set at beginning or change from another effect
+  mCurrentEffect.SetCurrentTexture( mCurrentTexture );
+  return true;
+}
+
+bool CubeTransitionApp::OnSildeshowButtonClicked( Toolkit::Button button )
+{
+  mSlideshow = !mSlideshow;
+  if( mSlideshow )
+  {
+    mPanGestureDetector.Detach( mContent );
+    mSlideshowButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, SLIDE_SHOW_STOP_ICON );
+    mSlideshowButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, SLIDE_SHOW_STOP_ICON_SELECTED );
+    mPanPosition = Vector2( mViewSize.width, mViewSize.height*0.5f );
+    mPanDisplacement = Vector2( -10.f, 0.f );
+    mViewTimer.Start();
+  }
+  else
+  {
+    mPanGestureDetector.Attach( mContent );
+    mSlideshowButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, SLIDE_SHOW_START_ICON );
+    mSlideshowButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, SLIDE_SHOW_START_ICON_SELECTED );
+    mViewTimer.Stop();
+  }
+  return true;
+}
+
+void CubeTransitionApp::OnTransitionCompleted(Toolkit::CubeTransitionEffect effect, Texture texture )
+{
+  if( mSlideshow )
+  {
+    mViewTimer.Start();
+  }
+}
+
+bool CubeTransitionApp::OnTimerTick()
+{
+  if(mSlideshow)
+  {
+    mIndex = (mIndex + 1)%NUM_IMAGES;
+    GoToNextImage();
+  }
+
+  //return false to stop the timer
+  return false;
+}
+
+Texture CubeTransitionApp::LoadStageFillingTexture( const char* filepath )
+{
+  ImageDimensions dimensions( Stage::GetCurrent().GetSize().x, Stage::GetCurrent().GetSize().y );
+  Devel::PixelBuffer pixelBuffer = LoadImageFromFile( filepath, dimensions, FittingMode::SCALE_TO_FILL );
+  PixelData pixelData = Devel::PixelBuffer::Convert(pixelBuffer);
+
+  Texture texture = Texture::New( TextureType::TEXTURE_2D, pixelData.GetPixelFormat(), pixelData.GetWidth(), pixelData.GetHeight() );
+  texture.Upload( pixelData );
+  return texture;
+}
+
+void CubeTransitionApp::OnKeyEvent(const KeyEvent& event)
+{
+  if(event.state == KeyEvent::Down)
+  {
+    if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+    {
+      mApplication.Quit();
+    }
+  }
+}
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  CubeTransitionApp test( application );
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/deferred-shading/deferred-shading.cpp b/examples/deferred-shading/deferred-shading.cpp
new file mode 100644 (file)
index 0000000..72ca6c5
--- /dev/null
@@ -0,0 +1,823 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+#include "dali/dali.h"
+#include "dali/public-api/actors/actor.h"
+#include "dali/public-api/rendering/renderer.h"
+#include <random>
+#include <iostream>
+#include <cstring>
+
+using namespace Dali;
+
+namespace
+{
+//=============================================================================
+// Demonstrates deferred shading with multiple render targets (for color,
+// position, and normal), a Phong lighting model and 32 point lights.
+//
+// Invoked with the --show-lights it will render a mesh at each light position.
+//=============================================================================
+
+#define QUOTE(x) DALI_COMPOSE_SHADER(x)
+
+#define MAX_LIGHTS 32
+
+#define DEFINE_MAX_LIGHTS "const int kMaxLights = " QUOTE(MAX_LIGHTS) ";"
+
+#define DEFINE(x) "#define " DALI_COMPOSE_SHADER(x) DALI_COMPOSE_SHADER(\n)
+
+//=============================================================================
+// PRE-PASS
+//=============================================================================
+const char* const PREPASS_VSH = DALI_COMPOSE_SHADER(#version 300 es\n
+precision mediump float;)
+  DALI_COMPOSE_SHADER(
+
+// DALI uniforms
+uniform mat4 uMvpMatrix;
+uniform mat3 uNormalMatrix;
+uniform vec3 uSize;
+
+uniform vec3 uDepth_InvDepth_Near;\n)
+  DEFINE(DEPTH uDepth_InvDepth_Near.x)
+  DEFINE(INV_DEPTH uDepth_InvDepth_Near.y)
+  DEFINE(NEAR uDepth_InvDepth_Near.z)
+  DALI_COMPOSE_SHADER(
+
+in vec3 aPosition;
+in vec3 aNormal;
+
+out vec4 vPosition;
+out vec3 vNormal;
+
+vec4 Map(vec4 v)       // projection space -> texture
+{
+  return vec4(v.xyz / (2.f * v.w) + vec3(.5f), (v.w - NEAR) * INV_DEPTH);
+}
+
+void main()
+{
+  vec4 position = uMvpMatrix * vec4(aPosition * uSize, 1.f);
+  vPosition = Map(position);
+  gl_Position = position;
+
+  vNormal = normalize(uNormalMatrix * aNormal);
+});
+
+//=============================================================================
+const char* const PREPASS_FSH = DALI_COMPOSE_SHADER(#version 300 es\n
+precision mediump float;
+
+// DALI uniform
+uniform vec4 uColor;
+
+in vec4 vPosition;
+in vec3 vNormal;
+
+// These are our outputs.
+layout(location = 0) out vec3 oNormal;
+layout(location = 1) out vec4 oPosition;
+layout(location = 2) out vec3 oColor;
+
+void main()
+{
+  oColor = uColor.rgb;
+  oPosition = vPosition;
+  oNormal = normalize(vNormal) * .5f + .5f;
+});
+
+//=============================================================================
+// MAIN (LIGHTING) PASS
+//=============================================================================
+const char* const MAINPASS_VSH = DALI_COMPOSE_SHADER(#version 300 es\n
+precision mediump float;
+
+// DALI uniforms
+uniform mat4 uMvpMatrix;
+uniform vec3 uSize;
+
+in vec3 aPosition;
+in vec2 aTexCoord;
+
+out vec2 vUv;
+
+void main()
+{
+  vec4 position = uMvpMatrix * vec4(aPosition * uSize, 1.f);
+  vUv = aTexCoord;
+
+  gl_Position = position;
+});
+
+//=============================================================================
+const char* const MAINPASS_FSH = DALI_COMPOSE_SHADER(#version 300 es\n
+precision mediump float;\n)
+  DEFINE_MAX_LIGHTS
+  DALI_COMPOSE_SHADER(
+
+const float kAttenuationConst = .05f;
+const float kAttenuationLinear = .1f;
+const float kAttenuationQuadratic = .15f;
+
+// G-buffer
+uniform sampler2D uTextureNormal;
+uniform sampler2D uTexturePosition;
+uniform sampler2D uTextureColor;
+
+uniform mat4 uInvProjection;
+
+uniform vec3 uDepth_InvDepth_Near;\n)
+  DEFINE(DEPTH uDepth_InvDepth_Near.x)
+  DEFINE(INV_DEPTH uDepth_InvDepth_Near.y)
+  DEFINE(NEAR uDepth_InvDepth_Near.z)
+  DALI_COMPOSE_SHADER(
+
+// Light source uniforms
+struct Light
+{
+  vec3 position;       // view space
+  float radius;
+  vec3 color;
+};
+
+uniform Light uLights[kMaxLights];
+
+in vec2 vUv;
+
+out vec4 oColor;
+
+vec4 Unmap(vec4 m)     // texture -> projection
+{
+  m.w = m.w * DEPTH + NEAR;
+  m.xyz = (m.xyz - vec3(.5)) * (2.f * m.w);
+  return m;
+}
+
+vec3 CalculateLighting(vec3 pos, vec3 normal)
+{
+  vec3 viewDir = normalize(pos);
+  vec3 viewDirRefl = -reflect(viewDir, normal);
+
+  vec3 light = vec3(0.04f); // fake ambient term
+  for (int i = 0; i < kMaxLights; ++i)
+  {
+    vec3 rel = pos - uLights[i].position;
+    float distance = length(rel);
+    rel /= distance;
+
+    float a = uLights[i].radius / (kAttenuationConst + kAttenuationLinear * distance +
+      kAttenuationQuadratic * distance * distance);    // attenuation
+
+    float l = max(0.f, dot(normal, rel));      // lambertian
+    float s = pow(max(0.f, dot(viewDirRefl, rel)), 256.f);     // specular
+
+    light += (uLights[i].color * (l + s)) * a;
+  }
+
+  return light;
+}
+
+void main()
+{
+  vec3 normSample = texture(uTextureNormal, vUv).xyz;
+  if (dot(normSample, normSample) == 0.f)
+  {
+    discard;  // if we didn't write this texel, don't bother lighting it.
+  }
+
+  vec3 normal = normalize(normSample - .5f);
+
+  vec4 posSample = texture(uTexturePosition, vUv);
+  vec3 pos = (uInvProjection * Unmap(posSample)).xyz;
+
+  vec3 color = texture(uTextureColor, vUv).rgb;
+  vec3 finalColor = color * CalculateLighting(pos, normal);
+
+  oColor = vec4(finalColor, 1.f);
+});
+
+//=============================================================================
+// PRNG for floats.
+struct FloatRand
+{
+  std::random_device mDevice;
+  std::mt19937 mMersenneTwister;
+  std::uniform_real_distribution<float> mDistribution;
+
+  FloatRand()
+  : mMersenneTwister(mDevice()),
+    mDistribution(0., 1.)
+  {}
+
+  float operator()()
+  {
+    return mDistribution(mMersenneTwister);
+  }
+};
+
+//=============================================================================
+float FastFloor(float x)
+{
+  return static_cast<int>(x) - static_cast<int>(x < 0);
+}
+
+//=============================================================================
+Vector3 FromHueSaturationLightness(Vector3 hsl)
+{
+  Vector3 rgb;
+  if (hsl.y * hsl.y > 0.f)
+  {
+    if(hsl.x >= 360.f)
+    {
+      hsl.x -= 360.f;
+    }
+    hsl.x /= 60.f;
+
+    int i = FastFloor(hsl.x);
+    float ff = hsl.x - i;
+    float p = hsl.z * (1.0 - hsl.y);
+    float q = hsl.z * (1.0 - (hsl.y * ff));
+    float t = hsl.z * (1.0 - (hsl.y * (1.f - ff)));
+
+    switch (i)
+    {
+    case 0:
+      rgb.r = hsl.z;
+      rgb.g = t;
+      rgb.b = p;
+      break;
+
+    case 1:
+      rgb.r = q;
+      rgb.g = hsl.z;
+      rgb.b = p;
+      break;
+
+    case 2:
+      rgb.r = p;
+      rgb.g = hsl.z;
+      rgb.b = t;
+      break;
+
+    case 3:
+      rgb.r = p;
+      rgb.g = q;
+      rgb.b = hsl.z;
+      break;
+
+    case 4:
+      rgb.r = t;
+      rgb.g = p;
+      rgb.b = hsl.z;
+      break;
+
+    case 5:
+    default:
+      rgb.r = hsl.z;
+      rgb.g = p;
+      rgb.b = q;
+      break;
+    }
+  }
+  else
+  {
+    rgb = Vector3::ONE * hsl.z;
+  }
+
+  return rgb;
+}
+
+//=============================================================================
+Geometry CreateTexturedQuadGeometry(bool flipV)
+{
+  // Create geometry -- unit square with whole of the texture mapped to it.
+  struct Vertex
+  {
+    Vector3 aPosition;
+    Vector2 aTexCoord;
+  };
+
+  Vertex vertexData[] = {
+  { Vector3(-.5f, .5f, .0f), Vector2(.0f, 1.0f) },
+  { Vector3(.5f, .5f, .0f), Vector2(1.0f, 1.0f) },
+  { Vector3(-.5f, -.5f, .0f), Vector2(.0f, .0f) },
+  { Vector3(.5f, -.5f, .0f), Vector2(1.0f, .0f) },
+  };
+
+  if (flipV)
+  {
+    std::swap(vertexData[0].aTexCoord, vertexData[2].aTexCoord);
+    std::swap(vertexData[1].aTexCoord, vertexData[3].aTexCoord);
+  }
+
+  PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+    .Add( "aPosition", Property::VECTOR3 )
+    .Add( "aTexCoord", Property::VECTOR2 ) );
+  vertexBuffer.SetData( vertexData, std::extent<decltype(vertexData)>::value );
+
+  Geometry geometry = Geometry::New();
+  geometry.AddVertexBuffer( vertexBuffer );
+  geometry.SetType( Geometry::TRIANGLE_STRIP );
+  return geometry;
+}
+
+//=============================================================================
+Geometry CreateOctahedron(bool invertNormals)
+{
+  Vector3 positions[] = {
+    Vector3{ -1.f, 0.f, 0.f },
+    Vector3{ 1.f, 0.f, 0.f },
+    Vector3{ 0.f, -1.f, 0.f },
+    Vector3{ 0.f, 1.f, 0.f },
+    Vector3{ 0.f, 0.f, -1.f },
+    Vector3{ 0.f, 0.f, 1.f },
+  };
+
+  struct Vertex
+  {
+    Vector3 position;
+    Vector3 normal;
+  };
+  Vertex vertexData[] = {
+    { positions[0] },
+    { positions[3] },
+    { positions[5] },
+
+    { positions[5] },
+    { positions[3] },
+    { positions[1] },
+
+    { positions[1] },
+    { positions[3] },
+    { positions[4] },
+
+    { positions[4] },
+    { positions[3] },
+    { positions[0] },
+
+    { positions[0] },
+    { positions[5] },
+    { positions[2] },
+
+    { positions[5] },
+    { positions[1] },
+    { positions[2] },
+
+    { positions[1] },
+    { positions[4] },
+    { positions[2] },
+
+    { positions[4] },
+    { positions[0] },
+    { positions[2] },
+  };
+
+  // Calculate normals
+  for (uint32_t i = 0; i < std::extent<decltype(vertexData)>::value / 3; ++i)
+  {
+    uint32_t idx = i * 3;
+
+    Vector3 normal = (vertexData[idx + 2].position - vertexData[idx].position).
+        Cross(vertexData[idx + 1].position - vertexData[idx].position);
+    normal.Normalize();
+    normal *= invertNormals * 2.f - 1.f;
+
+    vertexData[idx++].normal = normal;
+    vertexData[idx++].normal = normal;
+    vertexData[idx].normal = normal;
+  }
+
+  // Configure property buffers and create geometry.
+  PropertyBuffer vertexBuffer = PropertyBuffer::New(Property::Map()
+    .Add("aPosition", Property::VECTOR3)
+    .Add("aNormal", Property::VECTOR3));
+  vertexBuffer.SetData(vertexData, std::extent<decltype(vertexData)>::value);
+
+  Geometry geometry = Geometry::New();
+  geometry.AddVertexBuffer( vertexBuffer );
+  geometry.SetType( Geometry::TRIANGLES );
+  return geometry;
+}
+
+//=============================================================================
+enum RendererOptions
+{
+  OPTION_NONE = 0x0,
+  OPTION_BLEND = 0x01,
+  OPTION_DEPTH_TEST = 0x02,
+  OPTION_DEPTH_WRITE = 0x04
+};
+
+Renderer CreateRenderer(TextureSet textures, Geometry geometry, Shader shader, uint32_t options = OPTION_NONE)
+{
+  Renderer renderer = Renderer::New(geometry, shader);
+  renderer.SetProperty(Renderer::Property::BLEND_MODE,
+      (options & OPTION_BLEND) ? BlendMode::ON : BlendMode::OFF);
+  renderer.SetProperty(Renderer::Property::DEPTH_TEST_MODE,
+      (options & OPTION_DEPTH_TEST) ? DepthTestMode::ON : DepthTestMode::OFF);
+  renderer.SetProperty(Renderer::Property::DEPTH_WRITE_MODE,
+      (options & OPTION_DEPTH_WRITE) ? DepthWriteMode::ON : DepthWriteMode::OFF);
+  renderer.SetProperty(Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK);
+
+  if (!textures)
+  {
+    textures = TextureSet::New();
+  }
+
+  renderer.SetTextures(textures);
+  return renderer;
+}
+
+//=============================================================================
+void CenterActor(Actor actor)
+{
+  actor.SetAnchorPoint( AnchorPoint::CENTER );
+  actor.SetParentOrigin( ParentOrigin::CENTER );
+}
+
+//=============================================================================
+void RegisterDepthProperties(float depth, float near, Handle& h)
+{
+  h.RegisterProperty("uDepth_InvDepth_Near", Vector3(depth, 1.f / depth, near));
+}
+
+}
+
+//=============================================================================
+/// Create a String whose size can be evaluated at compile time
+struct ConstantString
+{
+  const char * const string;
+  const uint16_t size;
+
+  template<uint16_t inputSize>
+  constexpr ConstantString(const char (&input)[inputSize])
+  : string(input),
+    size(inputSize)
+  {
+  }
+};
+
+constexpr ConstantString POSITION_STRING("position");
+constexpr ConstantString RADIUS_STRING("radius");
+constexpr ConstantString COLOR_STRING("color");
+constexpr uint16_t LIGHT_SOURCE_BUFFER_SIZE(128u);
+
+//=============================================================================
+class DeferredShadingExample : public ConnectionTracker
+{
+public:
+  struct Options
+  {
+    enum
+    {
+      NONE = 0x0,
+      SHOW_LIGHTS = 0x1,
+    };
+  };
+
+  DeferredShadingExample(Application& app, uint32_t options = Options::NONE)
+  : mApp(app),
+    mOptions(options)
+  {
+    app.InitSignal().Connect( this, &DeferredShadingExample::Create );
+    app.TerminateSignal().Connect( this, &DeferredShadingExample::Destroy );
+  }
+
+private:
+  void Create(Application& app)
+  {
+    // Grab stage, configure layer
+    Stage stage = Stage::GetCurrent();
+    auto rootLayer = stage.GetRootLayer();
+    rootLayer.SetBehavior(Layer::LAYER_3D);
+
+    auto stageSize = stage.GetSize();
+    auto stageHalfSize = stageSize * .5f;
+    auto invStageHalfSize = Vector2::ONE / stageHalfSize;
+
+    float unit = stageSize.y / 24.f;
+
+    // Get camera - we'll be re-using the same old camera in the two passes.
+    RenderTaskList tasks = stage.GetRenderTaskList();
+    CameraActor camera = tasks.GetTask(0).GetCameraActor();
+
+    auto zCameraPos = camera.GetProperty(Actor::Property::POSITION_Z).Get<float>();
+    camera.SetFarClippingPlane(zCameraPos + stageSize.y * .5f);
+    camera.SetNearClippingPlane(zCameraPos - stageSize.y * .5f);
+
+    const float zNear = camera.GetNearClippingPlane();
+    const float zFar = camera.GetFarClippingPlane();
+    const float depth = zFar - zNear;
+
+    // Create root of scene that shall be rendered off-screen.
+    auto sceneRoot = Actor::New();
+    CenterActor(sceneRoot);
+
+    mSceneRoot = sceneRoot;
+    stage.Add(sceneRoot);
+
+    // Create an axis to spin our actors around.
+    auto axis = Actor::New();
+    CenterActor(axis);
+    sceneRoot.Add(axis);
+    mAxis = axis;
+
+    // Create an octahedral mesh for our main actors and to visualise the light sources.
+    Geometry mesh = CreateOctahedron(false);
+
+    // Create main actors
+    Shader preShader = Shader::New(PREPASS_VSH, PREPASS_FSH);
+    TextureSet noTexturesThanks = TextureSet::New();
+    Renderer meshRenderer = CreateRenderer(noTexturesThanks, mesh, preShader,
+        OPTION_DEPTH_TEST | OPTION_DEPTH_WRITE);
+    meshRenderer.SetProperty(Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK);
+    meshRenderer.RegisterProperty("uInvStageHalfSize", invStageHalfSize);
+    RegisterDepthProperties(depth, zNear, meshRenderer);
+    float c = 1.f;
+    for (auto v: {
+      Vector3{ -c, -c, -c },
+      Vector3{ c, -c, -c },
+      Vector3{ -c, c, -c },
+      Vector3{ c, c, -c },
+      Vector3{ -c, -c, c },
+      Vector3{ c, -c, c },
+      Vector3{ -c, c, c },
+      Vector3{ c, c, c },
+
+      Vector3{ 0.f, -c, -c },
+      Vector3{ 0.f, c, -c },
+      Vector3{ 0.f, -c, c },
+      Vector3{ 0.f, c, c },
+
+      Vector3{ -c, 0.f, -c },
+      Vector3{ c, 0.f, -c },
+      Vector3{ -c, 0.f, c },
+      Vector3{ c, 0.f, c },
+
+      Vector3{ -c, -c, 0.f },
+      Vector3{ c, -c, 0.f },
+      Vector3{ -c, c, 0.f },
+      Vector3{ c, c, 0.f },
+    })
+    {
+      Actor a = Actor::New();
+      CenterActor(a);
+
+      Vector3 position{ v * unit * 5.f };
+      a.SetPosition(position);
+
+      float scale = (c + ((v.x + v.y + v.z) + c * 3.f) * .5f) / (c * 4.f);
+      Vector3 size{ Vector3::ONE * scale * unit * 2.f };
+      a.SetSize(size);
+
+      a.SetColor(Color::WHITE * .25f +
+          (Color::RED * (v.x + c) / (c * 2.f) +
+          Color::GREEN * (v.y + c) / (c * 2.f) +
+          Color::BLUE * (v.z + c) / (c * 2.f)) * .015625f);
+      a.AddRenderer(meshRenderer);
+
+      axis.Add(a);
+    }
+
+    // Create off-screen textures, fbo and render task.
+    uint32_t width = static_cast<uint32_t>(stageSize.x);
+    uint32_t height = static_cast<uint32_t>(stageSize.y);
+
+    Texture rttNormal = Texture::New(TextureType::TEXTURE_2D, Pixel::Format::RGB888,
+        width, height);
+    Texture rttPosition = Texture::New(TextureType::TEXTURE_2D, Pixel::Format::RGBA8888,
+        width, height);
+    Texture rttColor = Texture::New(TextureType::TEXTURE_2D, Pixel::Format::RGB888,
+        width, height);
+    FrameBuffer fbo = FrameBuffer::New(width, height, FrameBuffer::Attachment::DEPTH);
+    fbo.AttachColorTexture(rttNormal);
+    fbo.AttachColorTexture(rttPosition);
+    fbo.AttachColorTexture(rttColor);
+
+    RenderTask sceneRender = tasks.CreateTask();
+    sceneRender.SetViewportSize(stageSize);
+    sceneRender.SetFrameBuffer(fbo);
+    sceneRender.SetCameraActor(camera);
+    sceneRender.SetSourceActor(sceneRoot);
+    sceneRender.SetInputEnabled(false);
+    sceneRender.SetCullMode(false);
+    sceneRender.SetClearEnabled(true);
+    sceneRender.SetClearColor(Color::BLACK);
+    sceneRender.SetExclusive(true);
+
+    mSceneRender = sceneRender;
+
+    // Create final image for deferred shading
+    auto finalImage = Actor::New();
+    CenterActor(finalImage);
+    finalImage.SetSize(stageSize);
+
+    TextureSet finalImageTextures = TextureSet::New();
+    finalImageTextures.SetTexture(0, rttNormal);
+    finalImageTextures.SetTexture(1, rttPosition);
+    finalImageTextures.SetTexture(2, rttColor);
+
+    Sampler sampler = Sampler::New();
+    sampler.SetFilterMode(FilterMode::NEAREST, FilterMode::NEAREST);
+    finalImageTextures.SetSampler(0, sampler);
+    finalImageTextures.SetSampler(1, sampler);
+    finalImageTextures.SetSampler(2, sampler);
+
+    Shader shdMain = Shader::New(MAINPASS_VSH, MAINPASS_FSH);
+    Geometry finalImageGeom = CreateTexturedQuadGeometry(true);
+    Renderer finalImageRenderer = CreateRenderer(finalImageTextures, finalImageGeom, shdMain);
+    finalImageRenderer.RegisterProperty("uStageHalfSize", stageHalfSize);
+    RegisterDepthProperties(depth, zNear, finalImageRenderer);
+
+    auto propInvProjection = finalImageRenderer.RegisterProperty("uInvProjection", Matrix::IDENTITY);
+    Constraint cnstrInvProjection = Constraint::New<Matrix>(finalImageRenderer, propInvProjection,
+      [zCameraPos, zNear, depth](Matrix& output, const PropertyInputContainer& input) {
+        output = input[0]->GetMatrix();
+        DALI_ASSERT_ALWAYS(output.Invert() && "Failed to invert projection matrix.");
+      });
+    cnstrInvProjection.AddSource(Source(camera, CameraActor::Property::PROJECTION_MATRIX));
+    cnstrInvProjection.AddSource(Source(camera, CameraActor::Property::VIEW_MATRIX));
+    cnstrInvProjection.Apply();
+
+    finalImage.AddRenderer(finalImageRenderer);
+
+    mFinalImage = finalImage;
+    stage.Add(finalImage);
+
+    // Create a node for our lights
+    auto lights = Actor::New();
+    CenterActor(lights);
+    sceneRoot.Add(lights);
+
+    // Create Lights
+    const bool showLights = mOptions & Options::SHOW_LIGHTS;
+    Renderer lightRenderer;
+    if (showLights)
+    {
+      Geometry lightMesh = CreateOctahedron(true);
+      lightRenderer = CreateRenderer(noTexturesThanks, lightMesh, preShader,
+          OPTION_DEPTH_TEST | OPTION_DEPTH_WRITE);
+      lightRenderer.SetProperty(Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::FRONT);
+    }
+
+    Vector3 lightPos{ unit * 12.f, 0.f, 0.f };
+    float theta = M_PI * 2.f / MAX_LIGHTS;
+    float cosTheta = std::cos(theta);
+    float sinTheta = std::sin(theta);
+    for (int i = 0; i < MAX_LIGHTS; ++i)
+    {
+      Vector3 color = FromHueSaturationLightness(Vector3((360.f * i) / MAX_LIGHTS, .5f, 1.f));
+
+      Actor light = CreateLight(lightPos * (1 + (i % 8)) / 8.f, unit * 16.f, color, camera, finalImageRenderer);
+
+      float z = (((i & 1) << 1) - 1) * unit * 8.f;
+      lightPos = Vector3(cosTheta * lightPos.x - sinTheta * lightPos.y, sinTheta * lightPos.x + cosTheta * lightPos.y, z);
+
+      if (showLights)
+      {
+        light.SetProperty(Actor::Property::SIZE, Vector3::ONE * unit / 8.f);
+        light.AddRenderer(lightRenderer);
+      }
+
+      lights.Add(light);
+    }
+
+    // Take them for a spin.
+    Animation animLights = Animation::New(40.f);
+    animLights.SetLooping(true);
+    animLights.AnimateBy(Property(lights, Actor::Property::ORIENTATION), Quaternion(Radian(M_PI * 2.f), Vector3::YAXIS));
+    animLights.Play();
+
+    // Event handling
+    stage.KeyEventSignal().Connect(this, &DeferredShadingExample::OnKeyEvent);
+
+    mPanDetector = PanGestureDetector::New();
+    mPanDetector.DetectedSignal().Connect(this, &DeferredShadingExample::OnPan);
+    mPanDetector.Attach(stage.GetRootLayer());
+  }
+
+  void Destroy(Application& app)
+  {
+    Stage::GetCurrent().GetRenderTaskList().RemoveTask(mSceneRender);
+    mSceneRender.Reset();
+
+    UnparentAndReset(mSceneRoot);
+    UnparentAndReset(mFinalImage);
+  }
+
+  Actor CreateLight(Vector3 position, float radius, Vector3 color, CameraActor camera, Renderer renderer)
+  {
+    Actor light = Actor::New();
+    CenterActor(light);
+    light.SetProperty(Actor::Property::COLOR, Color::WHITE);
+    light.SetProperty(Actor::Property::POSITION, position);
+
+    auto iPropRadius = light.RegisterProperty("radius", radius);
+    auto iPropLightColor = light.RegisterProperty("lightcolor", color);
+
+    // Create light source uniforms on lighting shader.
+    char buffer[LIGHT_SOURCE_BUFFER_SIZE];
+    char* writep = buffer + snprintf(buffer, LIGHT_SOURCE_BUFFER_SIZE, "uLights[%d].", mNumLights);
+    ++mNumLights;
+
+    strncpy(writep, POSITION_STRING.string, POSITION_STRING.size);
+    auto oPropLightPos = renderer.RegisterProperty(buffer, position);
+
+    strncpy(writep, RADIUS_STRING.string, RADIUS_STRING.size);
+    auto oPropLightRadius = renderer.RegisterProperty(buffer, radius);
+
+    strncpy(writep, COLOR_STRING.string, COLOR_STRING.size);
+    auto oPropLightColor = renderer.RegisterProperty(buffer, color);
+
+    // Constrain the light position, radius and color to lighting shader uniforms.
+    // Convert light position to view space;
+    Constraint cLightPos = Constraint::New<Vector3>(renderer, oPropLightPos, [](Vector3& output, const PropertyInputContainer& input)
+    {
+      Vector4 worldPos(input[0]->GetVector3());
+      worldPos.w = 1.f;
+
+      worldPos = input[1]->GetMatrix() * worldPos;
+      output = Vector3(worldPos);
+    });
+    cLightPos.AddSource(Source(light, Actor::Property::WORLD_POSITION));
+    cLightPos.AddSource(Source(camera, CameraActor::Property::VIEW_MATRIX));
+    cLightPos.Apply();
+
+    Constraint cLightRadius = Constraint::New<float>(renderer, oPropLightRadius,
+        EqualToConstraint());
+    cLightRadius.AddSource(Source(light, iPropRadius));
+    cLightRadius.Apply();
+
+    Constraint cLightColor = Constraint::New<Vector3>(renderer, oPropLightColor,
+        EqualToConstraint());
+    cLightColor.AddSource(Source(light, iPropLightColor));
+    cLightColor.Apply();
+
+    return light;
+  }
+
+  void OnPan(Actor, PanGesture const& gesture)
+  {
+    Quaternion q = mAxis.GetProperty(Actor::Property::ORIENTATION).Get<Quaternion>();
+    Quaternion qx(Radian(Degree(gesture.screenDisplacement.y) * -.5f), Vector3::XAXIS);
+    Quaternion qy(Radian(Degree(gesture.screenDisplacement.x) * .5f), Vector3::YAXIS);
+    mAxis.SetProperty(Actor::Property::ORIENTATION, qy * qx * q);
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApp.Quit();
+      }
+    }
+  }
+
+  Application& mApp;
+  uint32_t mOptions;
+
+  Actor mSceneRoot;
+  Actor mAxis;
+
+  RenderTask mSceneRender;
+  Actor mFinalImage;
+
+  int mNumLights = 0;
+
+  PanGestureDetector mPanDetector;
+};
+
+
+int main(int argc, char** argv)
+{
+  const bool showLights = [](int argc, char** argv)
+  {
+    auto endArgs = argv + argc;
+    return std::find_if(argv, endArgs, [](const char* arg)
+    {
+      return strcmp(arg, "--show-lights") == 0;
+    }) != endArgs;
+  }(argc, argv);
+
+  Application app = Application::New(&argc, &argv);
+  DeferredShadingExample example(app, (showLights ? DeferredShadingExample::Options::SHOW_LIGHTS : 0));
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/dissolve-effect/dissolve-effect-example.cpp b/examples/dissolve-effect/dissolve-effect-example.cpp
new file mode 100644 (file)
index 0000000..8b1b6eb
--- /dev/null
@@ -0,0 +1,445 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <math.h>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/shader-effects/dissolve-effect.h>
+
+using namespace Dali;
+
+using Dali::Toolkit::TextLabel;
+
+// LOCAL STUFF
+namespace
+{
+
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const APPLICATION_TITLE_HIGHP( "Dissolve Effect(highp)" );
+const char * const APPLICATION_TITLE_MEDIUMP( "Dissolve Effect(mediump)" );
+const char * const EFFECT_HIGHP_IMAGE( DEMO_IMAGE_DIR "icon-highp.png" );
+const char * const EFFECT_HIGHP_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-highp-selected.png" );
+const char * const EFFECT_MEDIUMP_IMAGE( DEMO_IMAGE_DIR "icon-mediump.png" );
+const char * const EFFECT_MEDIUMP_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-mediump-selected.png" );
+const char * const PLAY_ICON( DEMO_IMAGE_DIR "icon-play.png" );
+const char * const PLAY_ICON_SELECTED( DEMO_IMAGE_DIR "icon-play-selected.png" );
+const char * const STOP_ICON( DEMO_IMAGE_DIR "icon-stop.png" );
+const char * const STOP_ICON_SELECTED( DEMO_IMAGE_DIR "icon-stop-selected.png" );
+
+const char* IMAGES[] =
+{
+  DEMO_IMAGE_DIR "gallery-large-1.jpg",
+  DEMO_IMAGE_DIR "gallery-large-2.jpg",
+  DEMO_IMAGE_DIR "gallery-large-3.jpg",
+  DEMO_IMAGE_DIR "gallery-large-4.jpg",
+  DEMO_IMAGE_DIR "gallery-large-5.jpg",
+  DEMO_IMAGE_DIR "gallery-large-6.jpg",
+  DEMO_IMAGE_DIR "gallery-large-7.jpg",
+  DEMO_IMAGE_DIR "gallery-large-8.jpg",
+  DEMO_IMAGE_DIR "gallery-large-9.jpg",
+  DEMO_IMAGE_DIR "gallery-large-10.jpg",
+  DEMO_IMAGE_DIR "gallery-large-11.jpg",
+  DEMO_IMAGE_DIR "gallery-large-12.jpg",
+  DEMO_IMAGE_DIR "gallery-large-13.jpg",
+  DEMO_IMAGE_DIR "gallery-large-14.jpg",
+  DEMO_IMAGE_DIR "gallery-large-15.jpg",
+  DEMO_IMAGE_DIR "gallery-large-16.jpg",
+  DEMO_IMAGE_DIR "gallery-large-17.jpg",
+  DEMO_IMAGE_DIR "gallery-large-18.jpg",
+  DEMO_IMAGE_DIR "gallery-large-19.jpg",
+  DEMO_IMAGE_DIR "gallery-large-20.jpg",
+  DEMO_IMAGE_DIR "gallery-large-21.jpg",
+};
+
+const int NUM_IMAGES( sizeof(IMAGES) / sizeof(IMAGES[0]) );
+
+// The duration of the current image staying on screen when slideshow is on
+const int VIEWINGTIME = 2000; // 2 seconds
+
+const float TRANSITION_DURATION = 2.5f; //2.5 second
+
+const float INITIAL_DEPTH = 10.0f;
+
+/**
+ * @brief Create an image view with an image which would be scaled-down to no more than the stage dimensions.
+ *
+ * Uses image scaling mode SCALE_TO_FILL to resize the image at
+ * load time to cover the entire stage with pixels with no borders,
+ * and filter mode BOX_THEN_LINEAR to sample the image with maximum quality.
+ */
+Toolkit::ImageView CreateStageFillingImageView( const char * const imagePath )
+{
+  Size stageSize = Stage::GetCurrent().GetSize();
+  Toolkit::ImageView imageView = Toolkit::ImageView::New();
+  Property::Map map;
+  map[Toolkit::Visual::Property::TYPE] = Toolkit::Visual::IMAGE;
+  map[Toolkit::ImageVisual::Property::URL] = imagePath;
+  map[Toolkit::ImageVisual::Property::DESIRED_WIDTH] = stageSize.x;
+  map[Toolkit::ImageVisual::Property::DESIRED_HEIGHT] = stageSize.y;
+  map[Toolkit::ImageVisual::Property::FITTING_MODE] = FittingMode::SCALE_TO_FILL;
+  map[Toolkit::ImageVisual::Property::SAMPLING_MODE] = SamplingMode::BOX_THEN_LINEAR;
+  map[Toolkit::ImageVisual::Property::SYNCHRONOUS_LOADING] = true;
+  imageView.SetProperty( Toolkit::ImageView::Property::IMAGE, map );
+
+  return imageView;
+}
+
+} // namespace
+
+class DissolveEffectApp : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  DissolveEffectApp( Application& application );
+
+  ~DissolveEffectApp();
+
+private:
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit( Application& application );
+  /**
+   * PanGesture callback. This method gets called when the pan gesture is detected.
+   * @param[in] actor The actor receiving the pan gesture.
+   * @param[in] gesture The detected pan gesture.
+   */
+  void OnPanGesture( Actor actor, const PanGesture& gesture );
+
+  /**
+   * Set up the animations for transition
+   * @param[in] position The point ( locates within rectange {(0,0),(0,1),(1,0),(1,1)} ) passing through the central line of the dissolve effect
+   * @param[in] displacement The direction of the central line of the dissolve effect
+   */
+  void StartTransition(Vector2 position, Vector2 displacement);
+  /**
+   * Callback function of effect-switch button
+   * Change the precision of the effect shader when the effect button is clicked
+   * @param[in] button The handle of the clicked button
+   */
+  bool OnEffectButtonClicked( Toolkit::Button button );
+  /**
+   * Callback function of slideshow button
+   * Start or stop the automatical image display when the slideshow button is clicked
+   * @param[in] button The handle of the clicked button
+   */
+  bool OnSildeshowButtonClicked( Toolkit::Button button );
+  /**
+   * Callback function of cube transition completed signal
+   * @param[in] effect The cube effect used for the transition
+   * @param[in] imageActor The target imageActor of the completed transition
+   */
+  void OnTransitionCompleted(Animation& source);
+  /**
+   * Callback function of timer tick
+   * The timer is used to count the image display duration after cube transition in slideshow,
+   */
+  bool OnTimerTick();
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event);
+
+private:
+  Application&                    mApplication;
+  Toolkit::Control                mView;
+  Toolkit::ToolBar                mToolBar;
+  Layer                           mContent;
+  Toolkit::TextLabel              mTitleActor;
+  Actor                           mParent;
+
+  Toolkit::ImageView              mCurrentImage;
+  Toolkit::ImageView              mNextImage;
+  unsigned int                    mIndex;
+
+  Property::Map                   mDissolveEffect;
+  Property::Map                   mEmptyEffect;
+
+  bool                            mUseHighPrecision;
+  Animation                       mAnimation;
+
+  PanGestureDetector              mPanGestureDetector;
+  bool                            mIsTransiting;
+
+  bool                            mSlideshow;
+  Timer                           mViewTimer;
+  bool                            mTimerReady;
+  unsigned int                    mCentralLineIndex;
+
+  Toolkit::PushButton             mPlayStopButton;
+  Toolkit::PushButton             mEffectChangeButton;
+};
+
+DissolveEffectApp::DissolveEffectApp( Application& application )
+: mApplication( application ),
+  mIndex( 0 ),
+  mUseHighPrecision(true),
+  mIsTransiting( false ),
+  mSlideshow( false ),
+  mTimerReady( false ),
+  mCentralLineIndex( 0 )
+{
+  mApplication.InitSignal().Connect( this, &DissolveEffectApp::OnInit );
+}
+
+DissolveEffectApp::~DissolveEffectApp()
+{
+  //Nothing to do
+}
+
+void DissolveEffectApp::OnInit( Application& application )
+{
+  Stage::GetCurrent().KeyEventSignal().Connect(this, &DissolveEffectApp::OnKeyEvent);
+
+  // Creates a default view with a default tool bar, the view is added to the stage.
+  mContent = DemoHelper::CreateView( application, mView,mToolBar, "", TOOLBAR_IMAGE, "" );
+
+  // Add an effect-changing button on the right of the tool bar.
+  mEffectChangeButton = Toolkit::PushButton::New();
+  mEffectChangeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECT_HIGHP_IMAGE );
+  mEffectChangeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECT_HIGHP_IMAGE_SELECTED );
+  mEffectChangeButton.ClickedSignal().Connect( this, &DissolveEffectApp::OnEffectButtonClicked );
+  mToolBar.AddControl( mEffectChangeButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+  // Add title to the tool bar.
+  mTitleActor = DemoHelper::CreateToolBarLabel( APPLICATION_TITLE_HIGHP );
+  mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter );
+
+  // Add an slide-show button on the right of the title
+  mPlayStopButton = Toolkit::PushButton::New();
+  mPlayStopButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, PLAY_ICON );
+  mPlayStopButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, PLAY_ICON_SELECTED );
+  mPlayStopButton.ClickedSignal().Connect( this, &DissolveEffectApp::OnSildeshowButtonClicked );
+  mToolBar.AddControl( mPlayStopButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalCenter, DemoHelper::DEFAULT_PLAY_PADDING );
+
+  // use pan gesture to detect the cursor or finger movement
+  mPanGestureDetector = PanGestureDetector::New();
+  mPanGestureDetector.DetectedSignal().Connect( this, &DissolveEffectApp::OnPanGesture );
+
+  mViewTimer = Timer::New( VIEWINGTIME );
+  mViewTimer.TickSignal().Connect( this, &DissolveEffectApp::OnTimerTick );
+  mTimerReady = true;
+
+  // Set size to stage size to avoid seeing a black border on transition
+  mParent = Actor::New();
+  mParent.SetSize( Stage::GetCurrent().GetSize() );
+  mParent.SetParentOrigin( ParentOrigin::CENTER );
+  mContent.Add( mParent );
+
+  // show the first image
+  mCurrentImage = CreateStageFillingImageView( IMAGES[mIndex] );
+  mCurrentImage.SetParentOrigin( ParentOrigin::CENTER );
+  mCurrentImage.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  mCurrentImage.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+  mParent.Add( mCurrentImage );
+
+  mPanGestureDetector.Attach( mCurrentImage );
+
+  mDissolveEffect = Dali::Toolkit::CreateDissolveEffect( mUseHighPrecision );
+  Property::Map emptyShaderMap;
+  mEmptyEffect.Insert( "shader", emptyShaderMap );
+}
+
+// signal handler, called when the pan gesture is detected
+void DissolveEffectApp::OnPanGesture( Actor actor, const PanGesture& gesture )
+{
+  // does not response when the animation has not finished
+  if( mIsTransiting || mSlideshow )
+  {
+    return;
+  }
+
+  if( gesture.state == Gesture::Continuing )
+  {
+    if( gesture.displacement.x < 0)
+    {
+      mIndex = (mIndex + 1)%NUM_IMAGES;
+    }
+    else
+    {
+      mIndex = (mIndex + NUM_IMAGES -1)%NUM_IMAGES;
+    }
+
+    mNextImage = CreateStageFillingImageView( IMAGES[ mIndex ] );
+    mNextImage.SetParentOrigin( ParentOrigin::CENTER );
+    mNextImage.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mNextImage.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+    mNextImage.SetZ(INITIAL_DEPTH);
+    mParent.Add( mNextImage );
+    Vector2 size = Vector2( mCurrentImage.GetCurrentSize() );
+    StartTransition( gesture.position / size, gesture.displacement * Vector2(1.0, size.x/size.y));
+  }
+}
+
+void DissolveEffectApp::StartTransition(Vector2 position, Vector2 displacement)
+{
+  mAnimation = Animation::New(TRANSITION_DURATION);
+
+  Dali::Toolkit::DissolveEffectSetCentralLine( mCurrentImage, position, displacement, 0.0f );
+  mCurrentImage.SetProperty( Toolkit::ImageView::Property::IMAGE, mDissolveEffect );
+  mAnimation.AnimateTo( Property( mCurrentImage, "uPercentage" ), 1.0f, AlphaFunction::LINEAR );
+
+  mNextImage.SetOpacity(0.0f);
+  mAnimation.AnimateTo( Property( mNextImage, Actor::Property::COLOR_ALPHA ), 1.0f, AlphaFunction::LINEAR );
+
+  if(mUseHighPrecision)
+  {
+    Dali::Toolkit::DissolveEffectSetCentralLine( mNextImage, position, displacement, 1.0f );
+    mNextImage.SetProperty( Toolkit::ImageView::Property::IMAGE, mDissolveEffect );
+    mAnimation.AnimateTo( Property( mNextImage, "uPercentage" ), 0.0f, AlphaFunction::LINEAR );
+  }
+  else
+  {
+    mAnimation.AnimateTo( Property( mNextImage, Actor::Property::POSITION ), Vector3( 0.0f, 0.0f, 0.0f ), AlphaFunction::LINEAR );
+  }
+
+  mAnimation.FinishedSignal().Connect( this, &DissolveEffectApp::OnTransitionCompleted );
+  mAnimation.Play();
+  mIsTransiting = true;
+}
+
+void DissolveEffectApp::OnKeyEvent(const KeyEvent& event)
+{
+  if(event.state == KeyEvent::Down)
+  {
+    if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+    {
+      mApplication.Quit();
+    }
+  }
+}
+
+bool DissolveEffectApp::OnEffectButtonClicked( Toolkit::Button button )
+{
+  mUseHighPrecision = !mUseHighPrecision;
+  mDissolveEffect = Dali::Toolkit::CreateDissolveEffect(mUseHighPrecision);
+  if(mUseHighPrecision)
+  {
+    mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_HIGHP) );
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECT_HIGHP_IMAGE );
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECT_HIGHP_IMAGE_SELECTED );
+  }
+  else
+  {
+    mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_MEDIUMP) );
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECT_MEDIUMP_IMAGE );
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECT_MEDIUMP_IMAGE_SELECTED );
+  }
+
+  return true;
+}
+
+bool DissolveEffectApp::OnSildeshowButtonClicked( Toolkit::Button button )
+{
+  mSlideshow = !mSlideshow;
+  if( mSlideshow )
+  {
+    mPlayStopButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, STOP_ICON );
+    mPlayStopButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, STOP_ICON_SELECTED );
+    mPanGestureDetector.Detach( mParent );
+    mViewTimer.Start();
+    mTimerReady = false;
+  }
+  else
+  {
+    mPlayStopButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, PLAY_ICON );
+    mPlayStopButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, PLAY_ICON_SELECTED );
+    mTimerReady = true;
+    mPanGestureDetector.Attach( mParent );
+  }
+  return true;
+}
+
+void DissolveEffectApp::OnTransitionCompleted( Animation& source )
+{
+  if(mUseHighPrecision)
+  {
+    mNextImage.SetProperty( Toolkit::ImageView::Property::IMAGE, mEmptyEffect );
+  }
+  mParent.Remove( mCurrentImage );
+  mPanGestureDetector.Detach( mCurrentImage );
+  mCurrentImage = mNextImage;
+  mPanGestureDetector.Attach( mCurrentImage );
+  mIsTransiting = false;
+
+  if( mSlideshow)
+  {
+    mViewTimer.Start();
+    mTimerReady = false;
+  }
+}
+
+bool DissolveEffectApp::OnTimerTick()
+{
+  mTimerReady = true;
+  if(mSlideshow)
+  {
+    mIndex = (mIndex + 1)%NUM_IMAGES;
+    mNextImage = CreateStageFillingImageView( IMAGES[ mIndex ] );
+    mNextImage.SetParentOrigin( ParentOrigin::CENTER );
+    mNextImage.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mNextImage.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+    mNextImage.SetZ(INITIAL_DEPTH);
+    mParent.Add( mNextImage );
+    switch( mCentralLineIndex%4 )
+    {
+      case 0:
+      {
+        StartTransition(Vector2(1.0f,0.5f), Vector2(-1.0f, 0.0f));
+        break;
+      }
+      case 1:
+      {
+        StartTransition(Vector2(0.5f,0.0f), Vector2(0.0f, 1.0f));
+        break;
+      }
+      case 2:
+      {
+        StartTransition(Vector2(0.0f,0.5f), Vector2(1.0f, 0.0f));
+        break;
+      }
+      default:
+      {
+        StartTransition(Vector2(0.5f,1.0f), Vector2(0.0f, -1.0f));
+        break;
+      }
+
+    }
+    mCentralLineIndex++;
+  }
+  return false;   //return false to stop the timer
+}
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  DissolveEffectApp test( application );
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/drag-and-drop/drag-and-drop-example.cpp b/examples/drag-and-drop/drag-and-drop-example.cpp
new file mode 100755 (executable)
index 0000000..07556bf
--- /dev/null
@@ -0,0 +1,281 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/integration-api/debug.h>
+#include <dali/devel-api/actors/actor-devel.h>
+#include <dali-toolkit/devel-api/drag-drop-detector/drag-and-drop-detector.h>
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+using namespace Dali::Toolkit;
+
+namespace
+{
+Vector4 TEXT_LABEL_COLOR[] =
+{
+  Color::MAGENTA,
+  Color::YELLOW,
+  Color::CYAN,
+  Color::BLUE,
+  Color::MAGENTA,
+  Color::YELLOW,
+  Color::CYAN,
+  Color::BLUE
+};
+
+const float TEXT_LABEL_POSITION_X = 100.0f;
+const float TEXT_LABEL_POSITION_START_Y = 50.0f;
+const float TEXT_LABEL_WIDTH = 250.0f;
+const float TEXT_LABEL_HEIGHT = 70.0f;
+const unsigned int TEXT_LABEL_NUM = sizeof(TEXT_LABEL_COLOR) / sizeof(TEXT_LABEL_COLOR[0]);
+
+#if defined(DEBUG_ENABLED)
+  Debug::Filter* gDragAndDropFilter = Debug::Filter::New(Debug::NoLogging, false, "LOG_DRAG_AND_DROP_EXAMPLE");
+#endif
+}
+
+//This example shows how to use drag and drop function by several simple TextActors
+class DragAndDropExample : public ConnectionTracker
+{
+public:
+
+  DragAndDropExample( Application& application )
+  : mApplication( application ),
+    mDragIndex(-1),
+    mDragRealIndex(-1)
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &DragAndDropExample::Create );
+  }
+
+  ~DragAndDropExample()
+  {
+    mDragAndDropDetector.DetachAll();
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    mDragAndDropDetector = Dali::Toolkit::DragAndDropDetector::New();
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &DragAndDropExample::OnKeyEvent );
+
+    TextLabel hintText = TextLabel::New("please drag one textlabel, move and drop on other textlabel");
+    hintText.SetPosition(0.0f, 700.0f);
+    hintText.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    hintText.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    hintText.SetProperty(TextLabel::Property::MULTI_LINE, true);
+    stage.Add(hintText);
+
+    for(unsigned int i = 0 ; i < TEXT_LABEL_NUM; i++)
+    {
+      std::string str = "textlabel ";
+      mTextLabel[i] = TextLabel::New(str + std::to_string(i));
+      mTextLabel[i].SetParentOrigin(ParentOrigin::TOP_LEFT);
+      mTextLabel[i].SetAnchorPoint(AnchorPoint::TOP_LEFT);
+      mTextLabel[i].SetName("textlabel " + std::to_string(i));
+      mTextLabel[i].SetLeaveRequired(true);
+      mTextLabel[i].SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER");
+      mTextLabel[i].SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER");
+      mTextLabel[i].SetBackgroundColor(TEXT_LABEL_COLOR[i]);
+
+      mTextLabel[i].SetSize(TEXT_LABEL_WIDTH, TEXT_LABEL_HEIGHT);
+      mTextLabel[i].SetPosition(TEXT_LABEL_POSITION_X, TEXT_LABEL_POSITION_START_Y + TEXT_LABEL_HEIGHT * i);
+      mDragAndDropDetector.Attach(mTextLabel[i]);
+
+      mRect[i] = Rect<float>(TEXT_LABEL_POSITION_X, TEXT_LABEL_POSITION_START_Y + TEXT_LABEL_HEIGHT * i, TEXT_LABEL_WIDTH, TEXT_LABEL_HEIGHT);
+      mOrder[i] = i;
+
+      stage.Add(mTextLabel[i]);
+    }
+
+    mDragAndDropDetector.StartedSignal().Connect(this, &DragAndDropExample::OnStart);
+    mDragAndDropDetector.EnteredSignal().Connect(this, &DragAndDropExample::OnEnter);
+    mDragAndDropDetector.ExitedSignal().Connect(this, &DragAndDropExample::OnExit);
+    mDragAndDropDetector.MovedSignal().Connect(this, &DragAndDropExample::OnMoved);
+    mDragAndDropDetector.DroppedSignal().Connect(this, &DragAndDropExample::OnDropped);
+    mDragAndDropDetector.EndedSignal().Connect(this, &DragAndDropExample::OnEnd);
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  void OnStart(Control control, Dali::Toolkit::DragAndDropDetector detector)
+  {
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---OnStart---\n");
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---control name is %s---\n", control.GetName().c_str());
+
+    control.SetOpacity(0.1f);
+    Vector2 screenPos  = detector.GetCurrentScreenPosition();
+    control.ScreenToLocal(mDragLocalPos.x, mDragLocalPos.y,screenPos.x, screenPos.y );
+    Rect<float> targetRect(screenPos.x, screenPos.y, 0.0f, 0.0f);
+
+    for(unsigned int i = 0; i < TEXT_LABEL_NUM; i++)
+    {
+      if(mRect[i].Contains(targetRect))
+      {
+        mDragIndex = i;
+      }
+    }
+
+    mDragRealIndex = mOrder[mDragIndex];
+  }
+
+  void OnEnter(Control control, Dali::Toolkit::DragAndDropDetector detector)
+  {
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---OnEnter---\n");
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---control name is %s---\n", control.GetName().c_str());
+  }
+
+  void OnExit(Control control, Dali::Toolkit::DragAndDropDetector detector)
+  {
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---OnExit---\n");
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---control name is %s---\n", control.GetName().c_str());
+  }
+
+  void OnMoved(Control control, Dali::Toolkit::DragAndDropDetector detector)
+  {
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::Verbose, "---OnMoved---\n");
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::Verbose, "---control name is %s---\n", control.GetName().c_str());
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::Verbose, "---coordinate is (%f, %f)---\n", detector.GetCurrentScreenPosition().x, detector.GetCurrentScreenPosition().y);
+  }
+
+  void OnDropped(Control control, Dali::Toolkit::DragAndDropDetector detector)
+  {
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---OnDropped---\n");
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---control name is %s---\n", control.GetName().c_str());
+
+    Vector2 screenPos  = detector.GetCurrentScreenPosition();
+    Rect<float> targetRect(screenPos.x, screenPos.y, 0.0f, 0.0f);
+    int droppedIndex = -1;
+    for(unsigned int i = 0; i < TEXT_LABEL_NUM; i++)
+    {
+      if(mRect[i].Contains(targetRect))
+      {
+        droppedIndex = i;
+      }
+    }
+
+    Animation mAnimation = Animation::New(0.5f);
+
+    if(droppedIndex > mDragIndex)
+    {
+      for(int i = mDragIndex + 1; i <= droppedIndex; i++)
+      {
+        float y = mTextLabel[mOrder[i]].GetCurrentPosition().y;
+        mAnimation.AnimateTo(Property(mTextLabel[mOrder[i]], Actor::Property::POSITION), Vector3(TEXT_LABEL_POSITION_X, y - TEXT_LABEL_HEIGHT, 0.0f), AlphaFunction::EASE_OUT);
+        mAnimation.Play();
+      }
+
+      int tmpId = mOrder[mDragIndex];
+      for(int i = mDragIndex; i < droppedIndex; i++)
+      {
+        mOrder[i] = mOrder[i+1];
+      }
+
+      mOrder[droppedIndex] = tmpId;
+    }
+    else if(droppedIndex < mDragIndex)
+    {
+
+      for(int i = mDragIndex - 1; i >= droppedIndex; i--)
+      {
+        float y = mTextLabel[mOrder[i]].GetCurrentPosition().y;
+        mAnimation.AnimateTo(Property(mTextLabel[mOrder[i]], Actor::Property::POSITION), Vector3(TEXT_LABEL_POSITION_X, y + TEXT_LABEL_HEIGHT, 0.0f), AlphaFunction::EASE_OUT);
+        mAnimation.Play();
+      }
+
+      int tmpId = mOrder[mDragIndex];
+      for(int i = mDragIndex; i > droppedIndex; i--)
+      {
+        mOrder[i] = mOrder[i-1];
+      }
+
+      mOrder[droppedIndex] = tmpId;
+
+    }
+
+
+    Vector2 pos = detector.GetCurrentScreenPosition();
+    Vector2 localPos;
+    control.GetParent().ScreenToLocal(localPos.x, localPos.y, pos.x, pos.y);
+
+    KeyFrames k0 = KeyFrames::New();
+    k0.Add(0.0f, Vector3(localPos.x - mDragLocalPos.x, localPos.y - mDragLocalPos.y, 0.0f));
+    k0.Add(1.0f, Vector3(control.GetCurrentPosition().x, control.GetCurrentPosition().y, 0.0f));
+
+    KeyFrames k1 = KeyFrames::New();
+    k1.Add(0.0f, 0.1f);
+    k1.Add(1.0f, 1.0f);
+
+    Animation dropAnimation = Animation::New(0.5f);
+    dropAnimation.AnimateBetween(Property(mTextLabel[mDragRealIndex], Actor::Property::POSITION), k0, AlphaFunction::EASE_OUT);
+    dropAnimation.AnimateBetween(Property(mTextLabel[mDragRealIndex], DevelActor::Property::OPACITY), k1, AlphaFunction::EASE_OUT);
+    dropAnimation.Play();
+  }
+
+  void DropAnimationFinished(Animation& animation)
+  {
+    for(unsigned int i = 0 ; i < TEXT_LABEL_NUM; i++)
+    {
+      mDragAndDropDetector.Attach(mTextLabel[i]);
+    }
+  }
+
+  void OnEnd(Control control, Dali::Toolkit::DragAndDropDetector detector)
+  {
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---OnEnd---\n");
+    DALI_LOG_INFO(gDragAndDropFilter, Debug::General, "---control name is %s---\n", control.GetName().c_str());
+
+    control.SetOpacity(1.0f);
+  }
+
+private:
+  Application&  mApplication;
+  Dali::Toolkit::DragAndDropDetector mDragAndDropDetector;
+
+  TextLabel mTextLabel[TEXT_LABEL_NUM];
+  Rect<float> mRect[TEXT_LABEL_NUM];
+
+  int mOrder[TEXT_LABEL_NUM];
+  int mDragIndex;
+  int mDragRealIndex;
+
+  Vector2 mDragLocalPos;
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  DragAndDropExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/effects-view/effects-view-example.cpp b/examples/effects-view/effects-view-example.cpp
new file mode 100644 (file)
index 0000000..4e00b84
--- /dev/null
@@ -0,0 +1,254 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/effects-view/effects-view.h>
+#include <sstream>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char* const TITLE( "EffectsView: effect size = " );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* VIEW_SWAP_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
+const char* VIEW_SWAP_SELECTED_IMAGE( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char* TEST_IMAGE( DEMO_IMAGE_DIR "Kid1.svg" );
+} // namespace
+
+// This example illustrates the capabilities of the EffectsView container
+//
+class EffectsViewApp : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   */
+  EffectsViewApp( Application& application );
+  /**
+   * Destructor
+   */
+  ~EffectsViewApp();
+
+private:
+
+  /**
+   * Initialisation. This method gets called once the main loop of application is up and running
+   */
+  void OnAppInitialize( Application& application );
+
+  /**
+   * Create a effect view of drop shadow
+   *
+   * @param[in] type The type of effect to be performed by the EffectView.
+   * @param[in] viewSize Size of the effect view
+   * @param[in] effectSize The effect size used in image filters.
+   */
+  EffectsView CreateEffectsView( EffectsView::EffectType type, const Vector2& viewSize, int effectSize );
+
+  /**
+   * Animate the effect offset and color properties.
+   * @param[in] effectsView The view whose properties to be animated.
+   */
+  void AnimateEffectProperties( EffectsView& effectsView );
+
+  /**
+   * Set title onto the toolbar
+   * @param[in] effectSize The effect size value to be indicated on the title
+   */
+  void SetTitle(int effectSize);
+
+  /**
+   * Callback function to change the effect size.
+   * @param[in] button The button which triggered the callback.
+   */
+  bool ChangeEffectSize( Button button );
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event);
+
+private:
+  Application&           mApplication;
+  Layer                  mContents;
+  Toolkit::Control       mView;
+  Toolkit::ToolBar       mToolBar;
+  EffectsView            mDropShadowView;
+  EffectsView            mEmbossView;
+  Toolkit::TextLabel     mTitleActor; ///< The title on the toolbar
+  Vector2                mStageSize;
+  int                    mEffectSize;
+};
+
+EffectsViewApp::EffectsViewApp( Application& application )
+: mApplication( application ),
+  mEffectSize( 2 )
+{
+  // Connect to the Application's Init signal
+  mApplication.InitSignal().Connect( this, &EffectsViewApp::OnAppInitialize );
+}
+
+EffectsViewApp::~EffectsViewApp()
+{
+  // Nothing to do here;
+}
+
+void EffectsViewApp::OnAppInitialize( Application& application )
+{
+  // The Init signal is received once (only) during the Application lifetime
+
+  Stage stage = Stage::GetCurrent();
+  stage.KeyEventSignal().Connect(this, &EffectsViewApp::OnKeyEvent);
+  stage.SetBackgroundColor( Color::WHITE );
+
+  mStageSize = stage.GetSize();
+
+  // Creates a default view with a default tool bar.
+  // The view is added to the stage.
+  mContents = DemoHelper::CreateView( application, mView, mToolBar, "", TOOLBAR_IMAGE, "" );
+
+  // Creates view change button.
+  Toolkit::PushButton viewButton = Toolkit::PushButton::New();
+  viewButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, VIEW_SWAP_IMAGE );
+  viewButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, VIEW_SWAP_SELECTED_IMAGE );
+  // Connects the view change button clicked signal to the OnView method.
+  viewButton.ClickedSignal().Connect( this, &EffectsViewApp::ChangeEffectSize );
+  mToolBar.AddControl( viewButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+  Vector2 effectsViewSize( mStageSize.width, mStageSize.height * 0.25f );
+  mDropShadowView = CreateEffectsView( EffectsView::DROP_SHADOW, effectsViewSize, mEffectSize );
+  mDropShadowView.SetParentOrigin( ParentOrigin::CENTER );
+  mDropShadowView.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+  mDropShadowView.SetZ( -mStageSize.height * 0.1f );
+  mContents.Add( mDropShadowView );
+
+  mEmbossView = CreateEffectsView( EffectsView::EMBOSS, effectsViewSize, mEffectSize );
+  mEmbossView.SetParentOrigin( ParentOrigin::CENTER );
+  mEmbossView.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+  mEmbossView.SetZ( mStageSize.height * 0.1f );
+  mContents.Add( mEmbossView );
+
+  SetTitle( mEffectSize );
+}
+
+
+EffectsView EffectsViewApp::CreateEffectsView( EffectsView::EffectType type, const Vector2& viewSize, int effectSize  )
+{
+  Toolkit::EffectsView effectsView = Toolkit::EffectsView::New(type);
+  // set control size
+   effectsView.SetSize( viewSize.width, viewSize.height );
+  // set effect size property
+  effectsView.SetProperty( EffectsView::Property::EFFECT_SIZE, effectSize );
+
+  // Create some content
+  // text
+  std::string text = ( type == EffectsView::DROP_SHADOW) ? "Drop Shadow" : "Emboss";
+  TextLabel textActor( TextLabel::New( text ) );
+  textActor.SetParentOrigin( ParentOrigin::CENTER_LEFT );
+  textActor.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
+  textActor.SetSize( viewSize );
+  textActor.SetPosition( viewSize.width*0.4f, viewSize.height*0.3f );
+  textActor.SetProperty(  TextLabel::Property::POINT_SIZE, DemoHelper::ScalePointSize(14.f) );
+  effectsView.Add( textActor );
+
+  // image
+  ImageView icon = ImageView::New( TEST_IMAGE );
+  icon.SetParentOrigin( ParentOrigin::CENTER_LEFT );
+  icon.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
+  icon.SetX( viewSize.width*0.1f );
+  icon.SetSize( viewSize.height*0.8f, viewSize.height*0.8f );
+  effectsView.Add( icon );
+
+  AnimateEffectProperties( effectsView );
+
+  return effectsView;
+}
+
+void EffectsViewApp::AnimateEffectProperties( EffectsView& effectsView )
+{
+  const float animationTime( 5.0f );
+  Animation animation( Animation::New(animationTime) );
+
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_OFFSET ), Vector3( 2.f,-2.f, 0.0f), TimePeriod(animationTime * 0.0f, animationTime * 0.2f) );
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_OFFSET ), Vector3(-2.f,-2.f, 0.0f), TimePeriod(animationTime * 0.2f, animationTime * 0.2f) );
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_OFFSET ), Vector3(-2.f, 2.f, 0.0f), TimePeriod(animationTime * 0.4f, animationTime * 0.2f) );
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_OFFSET ), Vector3( 4.f, 4.f, 0.0f), TimePeriod(animationTime * 0.6f, animationTime * 0.2f) );
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_OFFSET ), Vector3::ZERO, TimePeriod(animationTime * 0.8f, animationTime * 0.2f) );
+
+  effectsView.SetProperty( EffectsView::Property::EFFECT_COLOR, Color::BLACK );
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_COLOR ), Color::BLUE, TimePeriod(animationTime * 0.0f, animationTime * 0.33f) );
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_COLOR ), Color::RED, TimePeriod(animationTime * 0.33f, animationTime * 0.33f) );
+  animation.AnimateTo( Property( effectsView, EffectsView::Property::EFFECT_COLOR ), Color::BLACK, TimePeriod(animationTime * 0.66f, animationTime * 0.34f));
+
+  animation.SetLooping( true );
+  animation.Play();
+}
+
+void EffectsViewApp::SetTitle(int effectSize)
+{
+  std::ostringstream title;
+  title<<TITLE<< effectSize;
+
+  if(!mTitleActor)
+  {
+    mTitleActor = DemoHelper::CreateToolBarLabel( title.str() );
+    // Add title to the tool bar.
+    mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter );
+  }
+  mTitleActor.SetProperty( Toolkit::TextLabel::Property::TEXT, title.str() );
+}
+
+bool EffectsViewApp::ChangeEffectSize( Button button )
+{
+  mEffectSize = ( mEffectSize+1 )%5;
+  mDropShadowView.SetProperty( EffectsView::Property::EFFECT_SIZE, mEffectSize );
+  mEmbossView.SetProperty( EffectsView::Property::EFFECT_SIZE, mEffectSize );
+  SetTitle( mEffectSize );
+
+  return true;
+}
+
+
+void EffectsViewApp::OnKeyEvent(const KeyEvent& event)
+{
+  if(event.state == KeyEvent::Down)
+  {
+    if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+    {
+      mApplication.Quit();
+    }
+  }
+}
+
+/*****************************************************************************/
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application application = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  EffectsViewApp test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/flex-container/flex-container-example.cpp b/examples/flex-container/flex-container-example.cpp
new file mode 100644 (file)
index 0000000..71bc408
--- /dev/null
@@ -0,0 +1,375 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <sstream>
+#include "shared/view.h"
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const int NUM_FLEX_ITEMS = 8;
+
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-default.png" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+
+const DemoHelper::ViewStyle VIEW_STYLE( 0.08f, 0.45f, 80.f, 4.f );
+
+const std::string FLEX_DIRECTION[] = {
+    "column",
+    "columnReverse",
+    "row",
+    "rowReverse"
+};
+
+const unsigned int NUM_FLEX_DIRECTION = sizeof(FLEX_DIRECTION) / sizeof(std::string);
+
+const std::string FLEX_WRAP[] = {
+    "noWrap",
+    "Wrap"
+};
+
+const unsigned int NUM_FLEX_WRAP = sizeof(FLEX_WRAP) / sizeof(std::string);
+
+const std::string CONTENT_DIRECTION[] = {
+    "inherit",
+    "LTR",
+    "RTL"
+};
+
+const unsigned int NUM_CONTENT_DIRECTION = sizeof(CONTENT_DIRECTION) / sizeof(std::string);
+
+const std::string JUSTIFY_CONTENT[] = {
+    "flexStart",
+    "center",
+    "flexEnd",
+    "spaceBetween",
+    "spaceAround"
+};
+
+const unsigned int NUM_JUSTIFY_CONTENT = sizeof(JUSTIFY_CONTENT) / sizeof(std::string);
+
+const std::string ALIGN_ITEMS[] = {
+    "flexStart",
+    "center",
+    "flexEnd",
+    "stretch"
+};
+
+const unsigned int NUM_ALIGN_ITEMS = sizeof(ALIGN_ITEMS) / sizeof(std::string);
+
+const std::string ALIGN_CONTENT[] = {
+    "flexStart",
+    "center",
+    "flexEnd",
+    "stretch"
+};
+
+const unsigned int NUM_ALIGN_CONTENT = sizeof(ALIGN_CONTENT) / sizeof(std::string);
+
+} // unnamed namespace
+
+/**
+ * This example demonstrates a proof of concept for FlexContainer UI control.
+ * The flexbox properties can be changed by pressing different buttons in the
+ * toolbar.
+ */
+class FlexContainerExample : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  FlexContainerExample( Application& application )
+  : mApplication( application ),
+    mCurrentFlexDirection( FlexContainer::ROW ),
+    mCurrentFlexWrap( FlexContainer::WRAP ),
+    mCurrentContentDirection( FlexContainer::INHERIT),
+    mCurrentJustifyContent( FlexContainer::JUSTIFY_FLEX_START ),
+    mCurrentAlignItems( FlexContainer::ALIGN_FLEX_START ),
+    mCurrentAlignContent( FlexContainer::ALIGN_FLEX_START )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect(this, &FlexContainerExample::OnInit);
+  }
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit(Application& app)
+  {
+    Stage stage = Dali::Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &FlexContainerExample::OnKeyEvent);
+    stage.GetRootLayer().SetBehavior(Layer::LAYER_3D);
+
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    Layer contents = DemoHelper::CreateView( mApplication,
+                                             mView,
+                                             mToolBar,
+                                             BACKGROUND_IMAGE,
+                                             TOOLBAR_IMAGE,
+                                             "" );
+
+    // Create a flex direction toggle button. (left of toolbar)
+    mFlexDirectionButton = Toolkit::PushButton::New();
+    mFlexDirectionButton.SetName("mFlexDirectionButton");
+    mFlexDirectionButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-change.png" );
+    mFlexDirectionButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-change-selected.png" );
+    mFlexDirectionButton.ClickedSignal().Connect( this, &FlexContainerExample::OnFlexDirectionButtonClicked);
+    mFlexDirectionButton.SetLeaveRequired( true );
+    mToolBar.AddControl( mFlexDirectionButton, VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Create a flex wrap toggle button. (left of toolbar)
+    mFlexWrapButton = Toolkit::PushButton::New();
+    mFlexWrapButton.SetName("mFlexWrapButton");
+    mFlexWrapButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-edit.png" );
+    mFlexWrapButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-edit-selected.png" );
+    mFlexWrapButton.ClickedSignal().Connect( this, &FlexContainerExample::OnFlexWrapButtonClicked);
+    mFlexWrapButton.SetLeaveRequired( true );
+    mToolBar.AddControl( mFlexWrapButton, VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Create a content direction toggle button. (left of toolbar)
+    mContentDirectionButton = Toolkit::PushButton::New();
+    mContentDirectionButton.SetName("mContentDirectionButton");
+    mContentDirectionButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-replace.png" );
+    mContentDirectionButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-replace-selected.png" );
+    mContentDirectionButton.ClickedSignal().Connect( this, &FlexContainerExample::OnContentDirectionButtonClicked);
+    mContentDirectionButton.SetLeaveRequired( true );
+    mToolBar.AddControl( mContentDirectionButton, VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Create a justify content toggle button. (right of toolbar)
+    mJustifyContentButton = Toolkit::PushButton::New();
+    mJustifyContentButton.SetName("mJustifyContentButton");
+    mJustifyContentButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-reset.png" );
+    mJustifyContentButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-reset-selected.png" );
+    mJustifyContentButton.ClickedSignal().Connect( this, &FlexContainerExample::OnJustifyContentButtonClicked);
+    mJustifyContentButton.SetLeaveRequired( true );
+    mToolBar.AddControl( mJustifyContentButton, VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Create a align items toggle button. (right of toolbar)
+    mAlignItemsButton = Toolkit::PushButton::New();
+    mAlignItemsButton.SetName("mAlignItemsButton");
+    mAlignItemsButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-highp.png" );
+    mAlignItemsButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-highp-selected.png" );
+    mAlignItemsButton.ClickedSignal().Connect( this, &FlexContainerExample::OnAlignItemsButtonClicked);
+    mAlignItemsButton.SetLeaveRequired( true );
+    mToolBar.AddControl( mAlignItemsButton, VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Create a align content toggle button. (right of toolbar)
+    mAlignContentButton = Toolkit::PushButton::New();
+    mAlignContentButton.SetName("mAlignContentButton");
+    mAlignContentButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-effect-cross.png" );
+    mAlignContentButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DEMO_IMAGE_DIR "icon-effect-cross-selected.png" );
+    mAlignContentButton.ClickedSignal().Connect( this, &FlexContainerExample::OnAlignContentButtonClicked);
+    mAlignContentButton.SetLeaveRequired( true );
+    mToolBar.AddControl( mAlignContentButton, VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Create the base flex container
+    mFlexContainer = FlexContainer::New();
+    mFlexContainer.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mFlexContainer.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    mFlexContainer.SetSize( stageSize.width, stageSize.height - VIEW_STYLE.mToolBarHeight );
+    mFlexContainer.SetY(VIEW_STYLE.mToolBarHeight);
+    mFlexContainer.SetProperty(FlexContainer::Property::FLEX_DIRECTION, FlexContainer::COLUMN); // column as main axis
+    contents.Add(mFlexContainer);
+
+    // Add a text label to the container for showing the recently updated flexbox property value
+    mFlexPropertyLabel = TextLabel::New( FLEX_DIRECTION[mCurrentFlexDirection] );
+    mFlexPropertyLabel.SetProperty(FlexContainer::ChildProperty::FLEX_MARGIN, Vector4(10.0f, 10.0f, 10.0f, 10.0f));
+    mFlexPropertyLabel.SetProperty(FlexContainer::ChildProperty::FLEX, 0.05f); // 5 pecent of the container size in the main axis
+    mFlexPropertyLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER");
+    mFlexPropertyLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER");
+    mFlexContainer.Add( mFlexPropertyLabel );
+
+    // Create the flex container for the flex items and add it to the base flex container
+    mFlexItemContainer = FlexContainer::New();
+    mFlexItemContainer.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mFlexItemContainer.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    mFlexItemContainer.SetBackgroundColor( Color::YELLOW );
+    mFlexItemContainer.SetProperty(FlexContainer::Property::FLEX_DIRECTION, mCurrentFlexDirection);
+    mFlexItemContainer.SetProperty(FlexContainer::Property::FLEX_WRAP, mCurrentFlexWrap);
+    mFlexItemContainer.SetProperty(FlexContainer::ChildProperty::FLEX, 0.95f); // 95 pecent of the container size in the main axis
+    mFlexContainer.Add(mFlexItemContainer);
+
+    // Create flex items and add them to the container
+    for (int i = 0; i < NUM_FLEX_ITEMS; i++)
+    {
+      PushButton flexItem = PushButton::New();
+      flexItem.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+      flexItem.SetParentOrigin( ParentOrigin::TOP_LEFT );
+
+      // Set different background colour to help to identify different items
+      flexItem.SetBackgroundColor(Vector4(static_cast<float>(i) / NUM_FLEX_ITEMS, static_cast<float>(NUM_FLEX_ITEMS - i) / NUM_FLEX_ITEMS, 1.0f, 1.0f));
+      flexItem.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, "" );
+      flexItem.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, "" );
+
+      // Add a label to the button so that we can identify each item more easily
+      std::ostringstream index;
+      index << i + 1;
+      flexItem.SetProperty( Toolkit::Button::Property::LABEL, index.str() );
+      flexItem.SetName("FlexItem " + index.str());
+
+      // Set a fixed size to the items so that we can wrap the line and test these
+      // flex properties that only work when there are multiple lines in the layout
+      flexItem.SetResizePolicy(ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS);
+      // Make sure there are still extra space in the line after wrapping
+      flexItem.SetSize(stageSize.width / NUM_FLEX_ITEMS * 1.25f, (stageSize.height - VIEW_STYLE.mToolBarHeight) * 0.95f / NUM_FLEX_ITEMS * 1.25f);
+
+      mFlexItemContainer.Add( flexItem );
+    }
+
+    // Update the title
+    SetTitle( "Flex direction", FLEX_DIRECTION[mCurrentFlexDirection] );
+  }
+
+  bool OnFlexDirectionButtonClicked( Toolkit::Button button )
+  {
+    mCurrentFlexDirection = static_cast<FlexContainer::FlexDirection>( ( mCurrentFlexDirection + 1 ) % NUM_FLEX_DIRECTION );
+    mFlexItemContainer.SetProperty(FlexContainer::Property::FLEX_DIRECTION, mCurrentFlexDirection);
+    SetTitle( "Flex direction", FLEX_DIRECTION[mCurrentFlexDirection] );
+
+    return true;
+  }
+
+  bool OnFlexWrapButtonClicked( Toolkit::Button button )
+  {
+    mCurrentFlexWrap = static_cast<FlexContainer::WrapType>( ( mCurrentFlexWrap + 1 ) % NUM_FLEX_WRAP );
+    mFlexItemContainer.SetProperty(FlexContainer::Property::FLEX_WRAP, mCurrentFlexWrap);
+    SetTitle( "Flex wrap", FLEX_WRAP[mCurrentFlexWrap] );
+
+    return true;
+  }
+
+  bool OnContentDirectionButtonClicked( Toolkit::Button button )
+  {
+    mCurrentContentDirection = static_cast<FlexContainer::ContentDirection>( ( mCurrentContentDirection + 1 ) % NUM_CONTENT_DIRECTION );
+    mFlexItemContainer.SetProperty(FlexContainer::Property::CONTENT_DIRECTION, mCurrentContentDirection);
+    SetTitle( "Content direction", CONTENT_DIRECTION[mCurrentContentDirection] );
+
+    return true;
+  }
+
+  bool OnJustifyContentButtonClicked( Toolkit::Button button )
+  {
+    mCurrentJustifyContent = static_cast<FlexContainer::Justification>( ( mCurrentJustifyContent + 1 ) % NUM_JUSTIFY_CONTENT );
+    mFlexItemContainer.SetProperty(FlexContainer::Property::JUSTIFY_CONTENT, mCurrentJustifyContent);
+    SetTitle( "Justify content", JUSTIFY_CONTENT[mCurrentJustifyContent] );
+
+    return true;
+  }
+
+  bool OnAlignItemsButtonClicked( Toolkit::Button button )
+  {
+    mCurrentAlignItems = static_cast<FlexContainer::Alignment>( ( mCurrentAlignItems + 1 ) % ( NUM_ALIGN_ITEMS + 1 ) );
+    mCurrentAlignItems = mCurrentAlignItems < FlexContainer::ALIGN_FLEX_START ? FlexContainer::ALIGN_FLEX_START : mCurrentAlignItems; // skip auto as it is invalid for alignItems property
+    mFlexItemContainer.SetProperty(FlexContainer::Property::ALIGN_ITEMS, mCurrentAlignItems );
+    SetTitle( "Align Items", ALIGN_ITEMS[mCurrentAlignItems - 1] );
+
+    return true;
+  }
+
+  bool OnAlignContentButtonClicked( Toolkit::Button button )
+  {
+    mCurrentAlignContent = static_cast<FlexContainer::Alignment>( ( mCurrentAlignContent + 1 ) % (NUM_ALIGN_CONTENT + 1 ) );
+    mCurrentAlignContent = mCurrentAlignContent < FlexContainer::ALIGN_FLEX_START ? FlexContainer::ALIGN_FLEX_START : mCurrentAlignContent; // skip auto as it is invalid for alignContent property
+    mFlexItemContainer.SetProperty(FlexContainer::Property::ALIGN_CONTENT, mCurrentAlignContent);
+    SetTitle( "Align content", ALIGN_CONTENT[mCurrentAlignContent - 1] );
+
+    return true;
+  }
+
+private:
+
+  /**
+   * Sets/Updates the title of the View and the value of the recently updated
+   * flexbox property.
+   *
+   * @param[in] title The new title for the view.
+   * @param[in] propertyValue The value of the flexbox property.
+   */
+  void SetTitle(const std::string& title, const std::string& propertyValue)
+  {
+    if(!mTitleActor)
+    {
+      mTitleActor = DemoHelper::CreateToolBarLabel( "" );
+      // Add title to the tool bar.
+      mToolBar.AddControl( mTitleActor, VIEW_STYLE.mToolBarTitlePercentage, Alignment::HorizontalCenter );
+    }
+
+    // Update the title and property value
+    mTitleActor.SetProperty( TextLabel::Property::TEXT, title );
+    mFlexPropertyLabel.SetProperty( TextLabel::Property::TEXT, propertyValue );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+
+  Toolkit::Control mView;
+  Toolkit::ToolBar mToolBar;
+  TextLabel mTitleActor;             ///< The Toolbar's Title.
+
+  FlexContainer mFlexContainer;
+  FlexContainer mFlexItemContainer;
+  TextLabel mFlexPropertyLabel;
+
+  FlexContainer::FlexDirection mCurrentFlexDirection;
+  FlexContainer::WrapType mCurrentFlexWrap;
+  FlexContainer::ContentDirection mCurrentContentDirection;
+  FlexContainer::Justification mCurrentJustifyContent;
+  FlexContainer::Alignment mCurrentAlignItems;
+  FlexContainer::Alignment mCurrentAlignContent;
+
+  Toolkit::PushButton mFlexDirectionButton;
+  Toolkit::PushButton mFlexWrapButton;
+  Toolkit::PushButton mContentDirectionButton;
+  Toolkit::PushButton mJustifyContentButton;
+  Toolkit::PushButton mAlignItemsButton;
+  Toolkit::PushButton mAlignContentButton;
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  FlexContainerExample test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/focus-integration/focus-integration.cpp b/examples/focus-integration/focus-integration.cpp
new file mode 100644 (file)
index 0000000..f2d2bf0
--- /dev/null
@@ -0,0 +1,206 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "shared/view.h"
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char* const BACKGROUND_IMAGE = DEMO_IMAGE_DIR "background-gradient.jpg";
+const char* const TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png";
+const char* const TOOLBAR_TITLE = "Focus Integration";
+const Vector4 BACKGROUND_COLOUR( 1.0f, 1.0f, 1.0f, 0.15f );
+
+// Layout sizes
+const int MARGIN_SIZE = 10;
+const int TOP_MARGIN = 85;
+const std::string ITEMNAME[] = { "TextLabel", "TextField", "TextEditor", "PushButton", "RadioButton", "CheckBoxButton" };
+
+}  // namespace
+
+/**
+ * @brief Shows how integrated DALi Focus works.
+ */
+class FocusIntegrationExample: public ConnectionTracker
+{
+public:
+
+  FocusIntegrationExample( Application& application )
+    : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &FocusIntegrationExample::Create );
+  }
+
+  void Create( Application& application )
+  {
+    mStage = Stage::GetCurrent();
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            TOOLBAR_TITLE );
+
+    TableView contentTable = TableView::New(2, 1);
+    contentTable.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH);
+    contentTable.SetResizePolicy(ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT);
+    contentTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    contentTable.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    contentTable.SetCellPadding(Size(MARGIN_SIZE, MARGIN_SIZE * 0.5f));
+    contentTable.SetKeyboardFocusable(true);
+
+    for( unsigned int i = 0; i < contentTable.GetRows(); ++i )
+    {
+      contentTable.SetFitHeight( i );
+    }
+    contentTable.SetPosition( 0.0f, TOP_MARGIN );
+    mContentLayer.Add( contentTable );
+
+    // Create label to display which control's KeyEvent callback is called
+    mEventLabel = TextLabel::New("Controls don't get KeyEvent yet");
+    mEventLabel.SetSize( mStage.GetSize().width, mStage.GetSize().height*0.1f );
+    mEventLabel.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH);
+    mEventLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mEventLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mEventLabel.SetBackgroundColor( Color::WHITE );
+    contentTable.Add( mEventLabel );
+
+    mContainer = TableView::New( 4, 3 );
+    mContainer.SetSize( mStage.GetSize().width, mStage.GetSize().height*0.4f );
+    mContainer.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH);
+    mContainer.SetBackgroundColor( BACKGROUND_COLOUR );
+    mContainer.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+    mContainer.SetRelativeHeight( 0, 0.2f);
+    mContainer.SetRelativeHeight( 1, 0.3f);
+    mContainer.SetRelativeHeight( 2, 0.2f);
+    mContainer.SetRelativeHeight( 3, 0.3f);
+    mContainer.SetKeyboardFocusable(true);
+    contentTable.Add( mContainer );
+
+    // Make name label for each controls
+    for(int i = 0; i < 6; i++)
+    {
+      TextLabel itemLabel = TextLabel::New( ITEMNAME[i] );
+      itemLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      itemLabel.SetBackgroundColor( BACKGROUND_COLOUR );
+      itemLabel.SetProperty( TextLabel::Property::POINT_SIZE, 14.0f );
+      itemLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+      itemLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+      mContainer.AddChild( itemLabel, TableView::CellPosition( (i/3)*2, i%3 ) );
+    }
+
+    TextLabel textLabel = TextLabel::New("TextLabel");
+    mContainer.AddChild( textLabel, TableView::CellPosition( 1, 0 ) );
+
+    TextField textField = TextField::New();
+    textField.SetBackgroundColor( Color::WHITE );
+    textField.SetProperty( TextField::Property::TEXT, "Text" );
+    mContainer.AddChild( textField, TableView::CellPosition( 1, 1 ) );
+
+    TextEditor textEditor = TextEditor::New();
+    textEditor.SetBackgroundColor( Color::WHITE );
+    textEditor.SetProperty( TextEditor::Property::TEXT, "Text\nText" );
+    mContainer.AddChild( textEditor, TableView::CellPosition( 1, 2 ) );
+
+    PushButton pushButton = PushButton::New();
+    mContainer.AddChild( pushButton, TableView::CellPosition( 3, 0 ) );
+
+    RadioButton radioButton = RadioButton::New();
+    mContainer.AddChild( radioButton, TableView::CellPosition( 3, 1 ) );
+
+    CheckBoxButton checkBoxButton = CheckBoxButton::New();
+    mContainer.AddChild( checkBoxButton, TableView::CellPosition( 3, 2 ) );
+
+    // Set name and keyboard focusable for each controls
+    for(int i = 0; i<6; i++)
+    {
+      Control control = Control::DownCast( mContainer.GetChildAt( TableView::CellPosition( (i/3)*2+1, i%3 ) ) );
+      control.SetKeyboardFocusable(true);
+      control.SetName(ITEMNAME[i]);
+      control.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      control.KeyEventSignal().Connect( this, &FocusIntegrationExample::OnControlKeyEvent );
+    }
+
+    KeyboardFocusManager::Get().PreFocusChangeSignal().Connect( this, &FocusIntegrationExample::OnPreFocusChange );
+
+    // Respond to key events
+    mStage.KeyEventSignal().Connect( this, &FocusIntegrationExample::OnKeyEvent );
+  }
+
+  // Callback for KeyboardFocusManager
+  Actor OnPreFocusChange( Actor current, Actor next, Control::KeyboardFocus::Direction direction )
+  {
+    if( !current && !next )
+    {
+      next = mContainer.GetChildAt( TableView::CellPosition( 1, 0 ) );
+    }
+    return next;
+  }
+
+  // Callback for each controls.
+  // Display current control name.
+  bool OnControlKeyEvent( Control control, const KeyEvent& event )
+  {
+    std::string controlName = control.GetName();
+    mEventLabel.SetProperty( TextLabel::Property::TEXT, controlName+"'s KeyEvent works\n" );
+
+    return false;
+  }
+
+private:
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;
+  Stage mStage;
+  TableView mContainer;
+  TextLabel mEventLabel;
+  Toolkit::Control  mView;                              ///< The View instance.
+  Toolkit::ToolBar  mToolBar;                           ///< The View's Toolbar.
+  Layer             mContentLayer;                      ///< Content layer.
+};
+
+//
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  FocusIntegrationExample test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/fpp-game/fpp-game-example.cpp b/examples/fpp-game/fpp-game-example.cpp
new file mode 100644 (file)
index 0000000..c409dc2
--- /dev/null
@@ -0,0 +1,144 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "game-renderer.h"
+#include "game-model.h"
+#include "game-texture.h"
+#include "game-scene.h"
+
+#include "fpp-game-tutorial-controller.h"
+
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+
+namespace
+{
+
+const char* SCENE_URL =
+{
+  DEMO_GAME_DIR "/scene.json"
+};
+
+}
+/* This example creates 3D environment with first person camera control
+   It contains following modules:
+
+   GameScene  - responsible for loading and managing the scene data,
+                it wraps around stage. Owns list of entities. Scene can be deserialised
+                from json file ( see scene.json )
+   GameEntity - the renderable object that has also a transformation. It wraps DALi actors.
+
+   GameModel  - loads models ( '.mod' file format ) and wraps DALi Geometry object. 'mod' format
+                is binary in order
+
+   GameTexture - manages textures. Loads them, creates samplers and wraps DALi TextureSet
+
+   GameRenderer - binds texture and model. It's created per entity. While renderer is always unique
+                  for entity, the texture and model may be reused
+
+   GameCamera - Wraps the CameraActor. It provides not only that but also handles user input and
+                implements first-person-perspective camera behavior.
+                GameCamera uses Dali::Timer to provide per-frame ( or rather every 16ms ) update tick.
+
+
+                               .-----------.
+               .---------------| GameScene |---------------.
+               |               '-----------'               |
+               |                     |                     |
+               v                     |                     v
+        .------------. .------------.|.------------. .------------.
+        | GameEntity | | GameEntity |v|    ...     | | GameEntity |
+        '------------' '------------' '------------' '------------'
+               |
+               v
+        .--------------.
+        | GameRenderer |
+        '--------------'
+                |
+         <------'-------->
+.--------------.  .--------------.
+| GameTexture  |  |  GameModel   |
+'--------------'  '--------------'
+ */
+class GameController : public ConnectionTracker
+{
+public:
+
+  GameController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &GameController::Create );
+  }
+
+  ~GameController()
+  {
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Disable indicator
+    Dali::Window winHandle = application.GetWindow();
+    winHandle.ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Get a handle to the stage
+    mStage = Stage::GetCurrent();
+
+    mStage.SetBackgroundColor( Color::BLACK );
+
+    // Use 3D layer
+    mStage.GetRootLayer().SetBehavior( Layer::LAYER_3D );
+
+    // Load game scene
+    mScene.Load( SCENE_URL );
+
+    // Display tutorial
+    mTutorialController.DisplayTutorial();
+
+    // Connect OnKeyEvent signal
+    mStage.KeyEventSignal().Connect( this, &GameController::OnKeyEvent );
+  }
+
+  // Handle a quit key event
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&              mApplication;
+  GameScene                 mScene;
+  Stage                     mStage;
+  FppGameTutorialController mTutorialController;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  GameController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/fpp-game/fpp-game-tutorial-controller.cpp b/examples/fpp-game/fpp-game-tutorial-controller.cpp
new file mode 100644 (file)
index 0000000..8141986
--- /dev/null
@@ -0,0 +1,178 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "fpp-game-tutorial-controller.h"
+
+#include <dali/public-api/events/touch-data.h>
+#include <dali/public-api/animation/animation.h>
+#include <dali/public-api/actors/camera-actor.h>
+#include <dali/public-api/object/property-map.h>
+#include <dali/public-api/render-tasks/render-task-list.h>
+#include <dali-toolkit/public-api/visuals/visual-properties.h>
+#include <dali-toolkit/public-api/visuals/color-visual-properties.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+FppGameTutorialController::FppGameTutorialController()
+: mLeftTutorialComplete( false ),
+  mRightTutorialComplete( false )
+{
+
+}
+
+FppGameTutorialController::~FppGameTutorialController()
+{
+
+}
+
+void FppGameTutorialController::OnTouch( const TouchData& touchEvent )
+{
+  Vector2 size( mStage.GetSize() );
+
+  bool isLandscape( size.x > size.y );
+
+  if( !isLandscape )
+  {
+    std::swap( size.x, size.y );
+  }
+
+  Vector2 sizeHalf( size * 0.5f );
+
+  for( size_t i = 0; i < touchEvent.GetPointCount(); ++i )
+  {
+    Vector2 pos = touchEvent.GetScreenPosition( i );
+    if( !isLandscape )
+    {
+      std::swap( pos.x, pos.y );
+    }
+
+    // left label touched
+    if( touchEvent.GetState( i ) == PointState::STARTED )
+    {
+      if( pos.x < sizeHalf.x && !mLeftTutorialComplete )
+      {
+        mLeftTutorialComplete = true;
+        Animation animation = Animation::New( 1.0f );
+        animation.AnimateTo( Property( mLeftLabel, Actor::Property::COLOR_ALPHA ), 0.0f );
+
+        // connect complete signal
+        if( mRightTutorialComplete )
+        {
+          animation.FinishedSignal().Connect( this, &FppGameTutorialController::OnTutorialComplete );
+        }
+        animation.Play();
+      }
+      // right label touched
+      else if( !mRightTutorialComplete )
+      {
+        mRightTutorialComplete = true;
+        Animation animation = Animation::New( 1.0f );
+        animation.AnimateTo( Property( mRightLabel, Actor::Property::COLOR_ALPHA ), 0.0f );
+        // connect complete signal
+        if( mLeftTutorialComplete )
+        {
+          animation.FinishedSignal().Connect( this, &FppGameTutorialController::OnTutorialComplete );
+        }
+        animation.Play();
+      }
+    }
+  }
+}
+
+void FppGameTutorialController::DisplayTutorial()
+{
+  mStage = Stage::GetCurrent();
+
+  Vector2 stageSize( mStage.GetSize() );
+  bool isLandscape( stageSize.x > stageSize.y );
+  if( !isLandscape )
+  {
+    std::swap( stageSize.x, stageSize.y );
+  }
+
+  mUiRoot = Actor::New();
+  mStage.Add( mUiRoot );
+
+  // left tutorial text label
+  mLeftLabel = Toolkit::TextLabel::New("Touch here to walk");
+  mLeftLabel.SetParentOrigin( ParentOrigin::CENTER );
+  mLeftLabel.SetAnchorPoint( AnchorPoint::CENTER );
+  mLeftLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  mLeftLabel.SetSize( Vector3( stageSize.x*0.5, stageSize.y, 1.0f ) );
+  mLeftLabel.SetProperty( Toolkit::Control::Property::BACKGROUND,
+                          Property::Map().Add( Toolkit::Visual::Property::TYPE, Visual::COLOR )
+                                         .Add( ColorVisual::Property::MIX_COLOR, Vector4( 0.0, 0.0, 0.7, 0.2 ) ) );
+  mLeftLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) ); // White.
+  mLeftLabel.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  mLeftLabel.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+  // right tutorial text label
+  mRightLabel = Toolkit::TextLabel::New("Touch here to look around");
+  mRightLabel.SetParentOrigin( ParentOrigin::CENTER );
+  mRightLabel.SetAnchorPoint( AnchorPoint::CENTER );
+  mRightLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  mRightLabel.SetSize( Vector3( stageSize.x*0.5, stageSize.y, 1.0f ) );
+  mRightLabel.SetProperty( Toolkit::Control::Property::BACKGROUND,
+                           Property::Map().Add( Toolkit::Visual::Property::TYPE, Visual::COLOR )
+                                          .Add( ColorVisual::Property::MIX_COLOR, Vector4( 0.5, 0.0, 0.0, 0.2 ) ) );
+  mRightLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) ); // White.
+  mRightLabel.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  mRightLabel.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+  // create camera dedicated to be used with UI controls
+  CameraActor uiCamera = CameraActor::New();
+  mTutorialRenderTask = mStage.GetRenderTaskList().CreateTask();
+  mTutorialRenderTask.SetCameraActor( uiCamera );
+  mTutorialRenderTask.SetClearEnabled( false );
+  mTutorialRenderTask.SetSourceActor( mUiRoot );
+  mTutorialRenderTask.SetExclusive( true );
+
+  if( !isLandscape )
+  {
+    uiCamera.RotateBy( Degree(90.0f), Vector3( 0.0f, 0.0f, 1.0f ));
+  }
+
+  mLeftLabel.SetPosition( Vector3( -stageSize.x*0.25f, 0.0, 0.0 ) );
+  mRightLabel.SetPosition( Vector3( stageSize.x*0.25f, 0.0, 0.0 ) );
+
+  mUiRoot.Add( mLeftLabel );
+  mUiRoot.Add( mRightLabel );
+  mStage.Add( uiCamera );
+
+  Animation animation = Animation::New( 1.0f );
+  animation.AnimateTo( Property( mLeftLabel, Actor::Property::COLOR_ALPHA ), 1.0f, AlphaFunction::EASE_OUT );
+  animation.AnimateTo( Property( mRightLabel, Actor::Property::COLOR_ALPHA ), 1.0f, AlphaFunction::EASE_OUT );
+
+  animation.FinishedSignal().Connect( this, &FppGameTutorialController::OnTutorialAnimationFinished );
+
+  animation.Play();
+}
+
+void FppGameTutorialController::OnTutorialAnimationFinished( Animation& animation )
+{
+  // touch signal will wait for a single touch on each side of screen
+  mStage.TouchSignal().Connect( this, &FppGameTutorialController::OnTouch );
+}
+
+void FppGameTutorialController::OnTutorialComplete( Animation& animation )
+{
+  mStage.Remove( mUiRoot );
+  mUiRoot.Reset();
+  mStage.GetRenderTaskList().RemoveTask( mTutorialRenderTask );
+}
+
diff --git a/examples/fpp-game/fpp-game-tutorial-controller.h b/examples/fpp-game/fpp-game-tutorial-controller.h
new file mode 100644 (file)
index 0000000..897a922
--- /dev/null
@@ -0,0 +1,75 @@
+#ifndef FPPGAMETUTORIAL_H
+#define FPPGAMETUTORIAL_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/public-api/actors/actor.h>
+#include <dali/public-api/render-tasks/render-task.h>
+#include <dali/public-api/common/stage.h>
+#include <dali/public-api/signals/connection-tracker.h>
+#include <dali-toolkit/public-api/controls/text-controls/text-label.h>
+
+class FppGameTutorialController : public Dali::ConnectionTracker
+{
+public:
+
+  /**
+   * Creates new instance of FppGameTutorialController
+   */
+  FppGameTutorialController();
+
+  /**
+   * Destroys instance of FppGameTutorialController
+   */
+  ~FppGameTutorialController();
+
+  /**
+   * Displays UI with tutorial
+   */
+  void DisplayTutorial();
+
+  /**
+   * Handles tutorial touch input
+   * @param[in] touchEvent Incoming touch event in the UI space
+   */
+  void OnTouch( const Dali::TouchData& touchEvent );
+
+  /**
+   * Handles tutorial animation finished signal
+   * @param[in] animation Animation object
+   */
+  void OnTutorialAnimationFinished( Dali::Animation& animation );
+
+  /**
+   * Handles tutorial completion stage
+   * @param animation Animation object
+   */
+  void OnTutorialComplete( Dali::Animation& animation );
+
+private:
+
+  Dali::RenderTask              mTutorialRenderTask; /// RenderTask associated with rendering tutorial
+  Dali::Actor                   mUiRoot; /// The parent actor for tutorial UI
+  Dali::Toolkit::TextLabel      mLeftLabel; /// Text label displaying left message
+  Dali::Toolkit::TextLabel      mRightLabel; /// Text label displaying right message
+  bool                          mLeftTutorialComplete; /// Flag indicating the walk (left) tutorial action has been performed
+  bool                          mRightTutorialComplete; /// Flag indicating the look (right) tutorial action has been performed
+  Dali::Stage                   mStage;
+};
+
+#endif // FPPGAMETUTORIAL_H
diff --git a/examples/fpp-game/game-camera.cpp b/examples/fpp-game/game-camera.cpp
new file mode 100644 (file)
index 0000000..7215c5a
--- /dev/null
@@ -0,0 +1,292 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "game-camera.h"
+
+#include <dali/public-api/common/stage.h>
+#include <dali/public-api/render-tasks/render-task-list.h>
+#include <dali/public-api/render-tasks/render-task.h>
+#include <dali/public-api/events/touch-data.h>
+#include <dali/public-api/events/touch-event.h>
+
+using namespace Dali;
+
+namespace
+{
+// Input sensitivity, the larger value, the more sensitive input
+// Default value has been chosen empirically
+const float   CAMERA_SENSITIVITY        ( 90.0f );
+
+// Vertical angle limit of the camera
+const float   CAMERA_VERTICAL_LIMIT     ( 80.0f );
+
+// Position where camera is instantiated by default
+const Vector3 CAMERA_DEFAULT_POSITION   ( 1.0f, -1.5f, -3.0f );
+
+// Field-of-View in degrees
+const float   CAMERA_DEFAULT_FOV        ( 60.0f );
+
+// Near plane
+const float   CAMERA_DEFAULT_NEAR       ( 0.1f );
+
+// Far plane
+const float   CAMERA_DEFAULT_FAR        ( 100.0f );
+
+// Default forward vector
+const Vector3 CAMERA_FORWARD            ( 0.0f, 0.0f, 1.0f );
+
+// Default up vector
+const Vector3 CAMERA_UP                 ( Vector3::YAXIS );
+}
+
+GameCamera::GameCamera()
+: mFovY( CAMERA_DEFAULT_FOV ),
+  mNear( CAMERA_DEFAULT_NEAR ),
+  mFar( CAMERA_DEFAULT_FAR ),
+  mWalkingTouchId( -1 ),
+  mLookingTouchId( -1 ),
+  mPortraitMode( false )
+{
+}
+
+GameCamera::~GameCamera()
+{
+  mTimer.Stop();
+  mCameraActor.Remove( mInterceptorActor );
+}
+
+void GameCamera::Initialise( float fovY, float near, float far )
+{
+  mFovY = fovY;
+  mNear = near;
+  mFar = far;
+
+  Vector2 stageSize = Stage::GetCurrent().GetSize();
+  mPortraitMode = stageSize.x < stageSize.y ? true : false;
+
+  // Initialise default camera
+  InitialiseDefaultCamera();
+
+  // Create input interceptor actor
+  CreateInterceptorActor();
+
+  // Start timer
+  mTimer = Timer::New( 16 );
+  mTimer.TickSignal().Connect( this, &GameCamera::OnTick );
+  mTimer.Start();
+}
+
+bool GameCamera::OnTick()
+{
+  Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+  // ---------------------------------------------------------------------
+  // update rotation
+  Vector2 tmp( mScreenLookDelta );
+  mScreenLookDelta = Vector2::ZERO;
+
+  if( mPortraitMode )
+  {
+    float yaw = ( (tmp.y / stageSize.y ) * CAMERA_SENSITIVITY );
+    float pitch = ( (tmp.x / stageSize.x ) * CAMERA_SENSITIVITY );
+    mCameraYawPitch.y -= yaw;
+    mCameraYawPitch.x -= pitch;
+    if( abs( mCameraYawPitch.y ) > CAMERA_VERTICAL_LIMIT )
+    {
+      mCameraYawPitch.y = CAMERA_VERTICAL_LIMIT * ((mCameraYawPitch.y < 0) ? -1.0f : 1.0f );
+    }
+  }
+  else
+  {
+    float yaw = ( (tmp.y / stageSize.x ) * CAMERA_SENSITIVITY );
+    float pitch = ( (tmp.x / stageSize.y ) * CAMERA_SENSITIVITY );
+    mCameraYawPitch.x -= yaw;
+    mCameraYawPitch.y -= pitch;
+    if( abs( mCameraYawPitch.x ) > CAMERA_VERTICAL_LIMIT )
+    {
+      mCameraYawPitch.x = CAMERA_VERTICAL_LIMIT * ((mCameraYawPitch.x < 0) ? -1.0f : 1.0f );
+    }
+  }
+
+  Quaternion rotation;
+  Quaternion rotX( Degree( mCameraYawPitch.x), Vector3( 1.0f, 0.0f, 0.0f ) );
+  Quaternion rotY( Degree( mCameraYawPitch.y), Vector3( 0.0f, 1.0f, 0.0f ) );
+  if (mPortraitMode )
+  {
+    Quaternion rotZ( Degree( mPortraitMode ? 90.0 : 0.0f), Vector3( 0.0f, 0.0f, 1.0f ) );
+    rotation = ( rotZ * rotX * rotY );
+  }
+  else
+  {
+    rotation = ( rotY * rotX );
+  }
+  mCameraActor.SetOrientation( rotation );
+
+  // ---------------------------------------------------------------------
+  // update position
+  Vector3 position( mCameraPosition );
+
+  // Rotate CAMERA_FORWARD vector
+  Vector3 forwardVector = rotation.Rotate( CAMERA_FORWARD );
+
+  // Cancel vertical movement
+  forwardVector.y = 0.0f;
+
+  // Normalize
+  forwardVector.Normalize();
+
+  // compute sideways vector
+  Vector3 sidewaysVector = forwardVector.Cross( CAMERA_UP );
+
+  sidewaysVector.Normalize();
+
+  const float forwardSpeed( mScreenWalkDelta.y / stageSize.y );
+  const float sidewaysSpeed( mScreenWalkDelta.x / stageSize.x );
+
+  // Adjust walking speed
+  if ( mPortraitMode )
+  {
+    position += forwardVector * (forwardSpeed * 0.5f);
+  }
+  else
+  {
+    position += forwardVector * (-forwardSpeed * 0.5f);
+  }
+
+  position += sidewaysVector * (sidewaysSpeed * 0.5f);
+
+  mCameraActor.SetPosition( position );
+
+  mCameraPosition = position;
+
+  return true;
+}
+
+void GameCamera::InitialiseDefaultCamera()
+{
+  Stage stage = Stage::GetCurrent();
+  mCameraActor = stage.GetRenderTaskList().GetTask(0).GetCameraActor();
+  mCameraActor.SetName( "GameCamera" );
+  mCameraActor.SetAnchorPoint( AnchorPoint::CENTER );
+  mCameraActor.SetParentOrigin( ParentOrigin::CENTER );
+  mCameraActor.SetFieldOfView( Radian( Degree( mFovY ) ) );
+
+  // should be read from file
+  mCameraActor.SetNearClippingPlane( mNear );
+  mCameraActor.SetFarClippingPlane( mFar );
+  mCameraActor.SetPosition( CAMERA_DEFAULT_POSITION );
+
+  // Camera position is shadowed in order to avoid using GetCurrentPosition()
+  mCameraPosition = CAMERA_DEFAULT_POSITION;
+}
+
+void GameCamera::CreateInterceptorActor()
+{
+  Stage stage = Stage::GetCurrent();
+
+  mInterceptorActor = Actor::New();
+  mInterceptorActor.SetName( "GameInputInterceptor" );
+  mInterceptorActor.SetSize( Vector3( stage.GetSize().x, stage.GetSize().y, 1 ) );
+  mInterceptorActor.SetPosition( Vector3( 0.0, 0.0, 1.0  ) );
+  mInterceptorActor.SetAnchorPoint( AnchorPoint::CENTER );
+  mInterceptorActor.SetParentOrigin( ParentOrigin::CENTER );
+  mCameraActor.Add( mInterceptorActor );
+
+  // Connect TouchSignal to interceptor actor
+  mInterceptorActor.TouchSignal().Connect( this, &GameCamera::OnTouch );
+}
+
+bool GameCamera::OnTouch( Actor actor, const TouchData& touch )
+{
+  Stage stage = Stage::GetCurrent();
+
+  for( int i = 0; i < (int)touch.GetPointCount() && i < 3; ++i )
+  {
+    int id = touch.GetDeviceId( i );
+    Vector2 tmp( touch.GetScreenPosition( i ) );
+    Vector2 position;
+    float halfWindowSize;
+    if( mPortraitMode )
+    {
+      position.x = tmp.y;
+      position.y = tmp.x;
+      halfWindowSize = stage.GetSize().y / 2;
+    }
+    else
+    {
+      position.x = tmp.x;
+      position.y = tmp.y;
+      halfWindowSize = stage.GetSize().x / 2;
+    }
+
+    // touch started
+    if( touch.GetState( i ) == PointState::STARTED )
+    {
+      // start looking
+      if( position.x > halfWindowSize && mLookingTouchId < 0 )
+      {
+        mLookingTouchId = id;
+        mOldTouchLookPosition = position;
+      }
+      // start walking
+      else if( position.x < halfWindowSize && mWalkingTouchId < 0 )
+      {
+        mWalkingTouchId = id;
+        mOldTouchWalkPosition = position;
+        mScreenWalkDelta = Vector2::ZERO;
+      }
+    }
+    else if( touch.GetState( i ) == PointState::FINISHED ||
+             touch.GetState( i ) == PointState::LEAVE ||
+             touch.GetState( i ) == PointState::INTERRUPTED
+             )
+    {
+      // terminate look
+      if( mLookingTouchId == id )
+      {
+        mScreenLookDelta = Vector2::ZERO;
+        mOldTouchLookPosition = Vector2::ZERO;
+        mLookingTouchId = -1;
+      }
+      // terminate walking
+      else if( mWalkingTouchId == id )
+      {
+        mScreenWalkDelta = Vector2::ZERO;
+        mOldTouchWalkPosition = Vector2::ZERO;
+        mWalkingTouchId = -1;
+      }
+    }
+    else // on motion
+    {
+      // update looking
+      if( mLookingTouchId == id )
+      {
+        mScreenLookDelta.x += ( position.x - mOldTouchLookPosition.x );
+        mScreenLookDelta.y += ( position.y - mOldTouchLookPosition.y );
+        mOldTouchLookPosition = position;
+      }
+      // update walking
+      else if ( mWalkingTouchId == id )
+      {
+        mScreenWalkDelta.x += ( position.x - mOldTouchWalkPosition.x );
+        mScreenWalkDelta.y += ( position.y - mOldTouchWalkPosition.y );
+        mOldTouchWalkPosition = position;
+      }
+    }
+  }
+  return true;
+}
diff --git a/examples/fpp-game/game-camera.h b/examples/fpp-game/game-camera.h
new file mode 100644 (file)
index 0000000..f1d6306
--- /dev/null
@@ -0,0 +1,122 @@
+#ifndef GAME_CAMERA_H
+#define GAME_CAMERA_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/public-api/actors/camera-actor.h>
+#include <dali/public-api/adaptor-framework/timer.h>
+#include <dali/public-api/math/vector2.h>
+
+/**
+ * @brief The GameCamera class
+ * First-person camera implementation with handling user input
+ *
+ * GameCamera uses the DALi camera for displaying 3D game view.
+ * Additionally it handles simple user input by attaching fullscreen
+ * sized 'interceptor' Actor to the front of the CameraActor ( to be always
+ * parallel to the view ). It is necessary, as with changing camera orientation
+ * the the stage cannot be used as a touch signal receiver ( it will simply
+ * go offscreen with camera rotation ).
+ *
+ * DALi camera uses left-handed coordinate system.
+ *
+ * The control scheme assumes that left half of the screen is responsible for
+ * movement, the right half of screen is a rotation.
+ */
+class GameCamera : public Dali::ConnectionTracker
+{
+public:
+
+  /**
+   * Creates an instance of GameCamera
+   */
+  GameCamera();
+
+  /**
+   * Destroys an instance of GameCamera
+   */
+  ~GameCamera();
+
+  /**
+   * Initialise with given fovY, near, far
+   * @param[in] fovY Field of view in degrees
+   * @param[in] near Near plane
+   * @param[in] far Far Plane
+   */
+  void Initialise( float fov, float near, float far );
+
+  /**
+   * Retrieves actor associated with camera object
+   * @return Returns camera actor
+   */
+  Dali::CameraActor GetCameraActor();
+
+private:
+
+  /**
+   * Sets up a perspective camera using Dali default camera
+   */
+  void InitialiseDefaultCamera();
+
+  /**
+   * Creates 'interceptor' actor. Interceptor actor is always parallel
+   * to the camera and positioned little bit in front of it in order to
+   * intercept user input.
+   */
+  void CreateInterceptorActor();
+
+  /**
+   * Handles onTouch signal on the 'interceptor' actor
+   * @param[in] actor Actor receiving signal
+   * @param[in] touch Touch data
+   */
+  bool OnTouch( Dali::Actor actor, const Dali::TouchData& touch );
+
+  /**
+   * Handles camera tick() update
+   * @return true if continue running timer, false otherwise
+   */
+  bool OnTick();
+
+private:
+
+  Dali::CameraActor mCameraActor; /// Camera actor
+  Dali::Actor mInterceptorActor; /// Actor intercepting user input
+
+  Dali::Timer mTimer; /// Per-frame timer
+
+  Dali::Vector2 mScreenLookDelta; /// Look delta vector in screen space
+  Dali::Vector2 mScreenWalkDelta; /// Walk delta vector in screen space
+  Dali::Vector2 mOldTouchLookPosition; /// Previous look vector in screen space
+  Dali::Vector2 mOldTouchWalkPosition; /// Previuus walk vector in screen space
+
+  Dali::Vector2 mCameraYawPitch; /// Camera yaw-pitch angles
+
+  float mFovY; /// Camera field-of-view
+  float mNear; /// Near plane
+  float mFar; /// Far plane
+
+  int mWalkingTouchId; /// Touch device id bound to the walking action
+  int mLookingTouchId; /// Touch device id bound to the looking action
+
+  Dali::Vector3 mCameraPosition; /// Current camera position ( shadowing the actor position )
+
+  bool mPortraitMode; /// flag if window is in portrait mode ( physically stage width < height )
+};
+
+#endif
diff --git a/examples/fpp-game/game-container.h b/examples/fpp-game/game-container.h
new file mode 100644 (file)
index 0000000..d7cc40b
--- /dev/null
@@ -0,0 +1,82 @@
+#ifndef GAME_CONTAINER_H
+#define GAME_CONTAINER_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/public-api/common/dali-vector.h>
+
+
+/**
+ * GameContainer is a vector which owns heap-allocated objects.
+ * Unlike vector this will call delete on the stored pointers during destruction.
+ * For example, you can define a vector of heap-allocated Node objects:
+ * @code
+ *   typedef GameContainer< GameEntity* > EntityArray;
+ *
+ *   EntityArray entites;
+ *   entites.PushBack( new GameEntity() );
+ *   // container is now responsible for calling delete on GameEntity
+ *
+ * @endcode
+ */
+template< class T > class GameContainer : public Dali::Vector< T >
+{
+public:
+
+  typedef typename Dali::Vector< T >::Iterator Iterator;
+  typedef typename Dali::Vector< T >::ConstIterator ConstIterator;
+
+  /**
+   * Create a owner container.
+   */
+  GameContainer()
+  {
+  }
+
+  /**
+   * Non-virtual destructor; GameCache<T> is not suitable as base class.
+   */
+  ~GameContainer()
+  {
+    Clear();
+    Dali::VectorBase::Release();
+  }
+
+  /**
+   * Destroy all of the elements in the container.
+   */
+  void Clear()
+  {
+    ConstIterator end = Dali::Vector< T >::End();
+    for( Iterator iter = Dali::Vector< T >::Begin(); iter != end; ++iter )
+    {
+      delete (*iter);
+    }
+    Dali::Vector< T >::Clear();
+  }
+
+private:
+
+  // Undefined copy constructor.
+  GameContainer( const GameContainer& );
+
+  // Undefined assignment operator.
+  GameContainer& operator=( const GameContainer& );
+};
+
+#endif // GAMECACHE_H
diff --git a/examples/fpp-game/game-entity.cpp b/examples/fpp-game/game-entity.cpp
new file mode 100644 (file)
index 0000000..fed76a1
--- /dev/null
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "game-entity.h"
+#include "game-renderer.h"
+
+GameEntity::GameEntity( const char* name )
+{
+  mActor = Dali::Actor::New();
+  mActor.SetName( name );
+}
+
+GameEntity::~GameEntity()
+{
+}
+
+void GameEntity::UpdateRenderer()
+{
+  if( mActor.GetRendererCount() )
+  {
+    Dali::Renderer currentRenderer = mActor.GetRendererAt( 0 );
+    if( currentRenderer == mGameRenderer.GetRenderer() )
+    {
+      return;
+    }
+    mActor.RemoveRenderer( currentRenderer );
+  }
+  if( mGameRenderer.GetRenderer() )
+  {
+    mActor.AddRenderer( mGameRenderer.GetRenderer() );
+  }
+}
+
+GameRenderer& GameEntity::GetGameRenderer()
+{
+  return mGameRenderer;
+}
+
+Dali::Actor& GameEntity::GetActor()
+{
+  return mActor;
+}
+
+void GameEntity::SetLocation( const Dali::Vector3& loc )
+{
+  mActor.SetPosition( loc );
+}
+
+void GameEntity::SetRotation( const Dali::Quaternion& rot )
+{
+  mActor.SetOrientation( rot );
+}
+
+void GameEntity::SetScale( const Dali::Vector3& scale )
+{
+  mActor.SetScale( scale );
+}
+
+void GameEntity::SetSize( const Dali::Vector3& size )
+{
+  mActor.SetSize( size );
+}
diff --git a/examples/fpp-game/game-entity.h b/examples/fpp-game/game-entity.h
new file mode 100644 (file)
index 0000000..3601bdf
--- /dev/null
@@ -0,0 +1,92 @@
+#ifndef GAME_ENTITY_H
+#define GAME_ENTITY_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "game-renderer.h"
+
+#include <dali/public-api/actors/actor.h>
+
+/**
+ * @brief The GameEntity class
+ * GameEntity wraps the Dali::Actor class and binds the GameRenderer with
+ * loaded entity. Entities are owned by the GameScene and populated when
+ * scene is being deserialized.
+ */
+class GameEntity
+{
+public:
+
+  /**
+   * Creates an instance of GameEntity with given name
+   * @param[in] name Name of created entity
+   */
+  GameEntity( const char* name );
+
+  /**
+   * Destroys an instance of GameEntity
+   */
+  ~GameEntity();
+
+  /**
+   * Returns the GameRenderer object
+   */
+  GameRenderer& GetGameRenderer();
+
+  /**
+   * Returns associated DALi actor
+   * @return Returns actor associated with this GameEntity
+   */
+  Dali::Actor& GetActor();
+
+  /**
+   * Sets location of entity
+   * @param[in] location Local position of entity
+   */
+  void SetLocation( const Dali::Vector3& location );
+
+  /**
+   * Sets rotation of entity
+   * @param[in] rotation Local rotation of entity
+   */
+  void SetRotation( const Dali::Quaternion& rotation );
+
+  /**
+   * Sets scale of entity
+   * @param[in] scale Local scale of entity
+   */
+  void SetScale( const Dali::Vector3& scale );
+
+  /**
+   * Sets size of entity
+   * @param[in] size Bounding box of entity
+   */
+  void SetSize( const Dali::Vector3& size );
+
+  /**
+   * Updates Dali::Renderer in case if anything changed ( geometry, texture, etc. )
+   */
+  void UpdateRenderer();
+
+private:
+
+  Dali::Actor   mActor;
+  GameRenderer  mGameRenderer;
+};
+
+#endif
diff --git a/examples/fpp-game/game-model.cpp b/examples/fpp-game/game-model.cpp
new file mode 100644 (file)
index 0000000..3e6a585
--- /dev/null
@@ -0,0 +1,82 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "game-model.h"
+#include "game-utils.h"
+
+using namespace GameUtils;
+
+namespace
+{
+// 'MODV' tag stored in the big-endian (network) order
+const uint32_t MODV_TAG( 0x4D4F4456 );
+}
+
+GameModel::GameModel( const char *filename )
+  : mUniqueId( false ),
+    mIsReady( false )
+{
+  ByteArray bytes;
+  if( !LoadFile( filename, bytes ) )
+  {
+    return;
+  }
+
+  mHeader = *(reinterpret_cast<ModelHeader*>( bytes.data() ));
+
+  // expect big-endian
+  if( MODV_TAG != mHeader.tag )
+  {
+    // jump to little-endian variant
+    mHeader = *(reinterpret_cast<ModelHeader*>( bytes.data() + bytes.size()/2 ));
+  }
+
+  mVertexBuffer = Dali::PropertyBuffer::New( Dali::Property::Map().
+                                             Add( "aPosition", Dali::Property::VECTOR3 ).
+                                             Add( "aNormal", Dali::Property::VECTOR3 ).
+                                             Add( "aTexCoord", Dali::Property::VECTOR2 )
+                                             );
+
+  mVertexBuffer.SetData( bytes.data() + mHeader.dataBeginOffset, mHeader.vertexBufferSize/mHeader.vertexStride );
+
+  mGeometry = Dali::Geometry::New();
+  mGeometry.AddVertexBuffer( mVertexBuffer );
+  mGeometry.SetType( Dali::Geometry::TRIANGLES );
+
+  mUniqueId = HashString( filename );
+
+  mIsReady = true;
+}
+
+GameModel::~GameModel()
+{
+}
+
+Dali::Geometry& GameModel::GetGeometry()
+{
+  return mGeometry;
+}
+
+bool GameModel::IsReady()
+{
+  return mIsReady;
+}
+
+uint32_t GameModel::GetUniqueId()
+{
+  return mUniqueId;
+}
diff --git a/examples/fpp-game/game-model.h b/examples/fpp-game/game-model.h
new file mode 100644 (file)
index 0000000..0c38e0a
--- /dev/null
@@ -0,0 +1,96 @@
+#ifndef GAME_MODEL_H
+#define GAME_MODEL_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/public-api/rendering/geometry.h>
+#include <dali/public-api/rendering/property-buffer.h>
+
+#include <inttypes.h>
+
+/**
+ * @brief The ModelHeader struct
+ * Model file header structure
+ */
+struct ModelHeader
+{
+  uint32_t tag;                   /// 'MODV' tag
+  uint32_t version;               /// File version
+  uint32_t vertexBufferSize;      /// total size of the vertex buffer to allocate
+  uint32_t attributeCount;        /// number of stored attributes
+  uint32_t attributeFormat[16];   /// format encoded as ((type << 16)|(count)); 'type' represents primitive type, 'count' represents number of components ( 1-4 )
+  uint32_t attributeOffset[16];   /// attribute offsets
+  uint32_t attributeSize[16];     /// attribute size in bytes
+  uint32_t vertexStride;          /// vertex stride
+  uint32_t reserved;              /// reserved, may point at additional structure
+  uint32_t dataBeginOffset;       /// start of actual vertex data
+};
+
+/**
+ * @brief The GameModel class
+ * GameModel represents model geometry. It loads model data from external model file ( .mod file ).
+ * Such data is ready to be used as GL buffer so it can be copied directly into the PropertyBuffer
+ * object.
+ *
+ * Model file is multi-architecture so can be loaded on little and big endian architectures
+ */
+class GameModel
+{
+public:
+
+  /**
+   * Creates an instance of GameModel and loads the '.mod' file
+   * @param[in] filename Name of file to load
+   */
+  GameModel( const char* filename );
+
+  /**
+   * Destroys an instance of GameModel
+   */
+  ~GameModel();
+
+  /**
+   * Returns DALi geometry object
+   * @return Returns DALi geometry object
+   */
+  Dali::Geometry& GetGeometry();
+
+  /**
+   * Checks status of model, returns false if failed to load
+   * @return true if model has been loaded, false otherwise
+   */
+  bool IsReady();
+
+  /**
+   * Returns unique Id of the texture
+   * @return Unique Id
+   */
+  uint32_t GetUniqueId();
+
+private:
+
+  Dali::Geometry        mGeometry;
+  Dali::PropertyBuffer  mVertexBuffer;
+
+  ModelHeader           mHeader;
+
+  uint32_t              mUniqueId;
+  bool                  mIsReady;
+};
+
+#endif
diff --git a/examples/fpp-game/game-renderer.cpp b/examples/fpp-game/game-renderer.cpp
new file mode 100644 (file)
index 0000000..b578539
--- /dev/null
@@ -0,0 +1,111 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "game-model.h"
+#include "game-texture.h"
+#include "game-renderer.h"
+
+#include <dali/dali.h>
+
+namespace
+{
+
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+    attribute highp vec3 aPosition;\n
+    attribute highp vec3 aNormal;\n
+    attribute highp vec2 aTexCoord;\n
+    uniform highp mat4 uMvpMatrix;\n
+    varying highp vec2 vTexCoord;\n
+    void main()\n
+    {\n
+      gl_Position = uMvpMatrix * vec4(aPosition, 1.0 );\n
+      vTexCoord = aTexCoord;\n
+      vTexCoord.y = 1.0 - vTexCoord.y;\n
+    }\n
+)
+    ;
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+    uniform sampler2D sTexture;\n
+    varying highp vec2 vTexCoord;\n
+    void main()\n
+    {\n
+      gl_FragColor = texture2D( sTexture, vTexCoord ) * vec4(1.2, 1.2, 1.2, 1.0);\n
+    }\n
+);
+
+}
+
+GameRenderer::GameRenderer()
+  : mModel( NULL ),
+    mTexture( NULL )
+{
+}
+
+GameRenderer::~GameRenderer()
+{
+}
+
+void GameRenderer::SetModel( GameModel* model )
+{
+  mModel = model;
+  Setup();
+}
+
+void GameRenderer::SetMainTexture( GameTexture* texture )
+{
+  mTexture = texture;
+  Setup();
+}
+
+void GameRenderer::Setup()
+{
+  if( !mRenderer && mModel )
+  {
+    Dali::Shader shader = Dali::Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+    mRenderer = Dali::Renderer::New( mModel->GetGeometry(), shader );
+    mRenderer.SetProperty( Dali::Renderer::Property::DEPTH_WRITE_MODE, Dali::DepthWriteMode::ON );
+    mRenderer.SetProperty( Dali::Renderer::Property::DEPTH_FUNCTION, Dali::DepthFunction::LESS_EQUAL );
+    mRenderer.SetProperty( Dali::Renderer::Property::DEPTH_TEST_MODE, Dali::DepthTestMode::ON );
+  }
+
+  Dali::TextureSet textureSet;
+  Dali::Geometry geometry;
+
+  if( mModel )
+  {
+    geometry = mModel->GetGeometry();
+  }
+
+  if( mTexture && mTexture->GetTextureSet() )
+  {
+    textureSet = mTexture->GetTextureSet();
+  }
+
+  if( textureSet && geometry )
+  {
+    mRenderer.SetGeometry( geometry );
+    mRenderer.SetTextures( textureSet );
+  }
+}
+
+Dali::Renderer& GameRenderer::GetRenderer()
+{
+  return mRenderer;
+}
+
+
+
diff --git a/examples/fpp-game/game-renderer.h b/examples/fpp-game/game-renderer.h
new file mode 100644 (file)
index 0000000..de1222b
--- /dev/null
@@ -0,0 +1,78 @@
+#ifndef GAME_RENDERER_H
+#define GAME_RENDERER_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/public-api/rendering/renderer.h>
+
+class GameModel;
+class GameTexture;
+
+/**
+ * @brief The GameRenderer class
+ * GameRenderer binds the main texture with model. Can be used by multiple entities. It wraps
+ * Dali::Renderer.
+ */
+class GameRenderer
+{
+public:
+
+  /**
+   * Creates an instance of the GameRenderer
+   */
+  GameRenderer();
+
+  /**
+   * Destroys an instance of the GameRenderer
+   */
+  ~GameRenderer();
+
+  /**
+   * Sets current model on the renderer
+   * Resets the Dali::Renderer or creates new one on first time setup
+   * @param[in] model Pointer to the GameModel object
+   */
+  void SetModel( GameModel* model );
+
+  /**
+   * Sets main texture on the renderer
+   * Resets the Dali::Renderer or creates new one on first time setup
+   * @param[in] texture Pointer to the GameTexture object
+   */
+  void SetMainTexture( GameTexture* texture );
+
+  /**
+   * Retrieves DALi renderer object
+   */
+  Dali::Renderer& GetRenderer();
+
+private:
+
+  /**
+   * Initialises rendering data
+   */
+  void Setup();
+
+private:
+
+  Dali::Renderer  mRenderer;
+  GameModel*      mModel;
+  GameTexture*    mTexture;
+};
+
+#endif
diff --git a/examples/fpp-game/game-scene.cpp b/examples/fpp-game/game-scene.cpp
new file mode 100644 (file)
index 0000000..03b8e05
--- /dev/null
@@ -0,0 +1,180 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <string.h>
+#include <stdio.h>
+
+#include "game-scene.h"
+#include "game-model.h"
+#include "game-texture.h"
+#include "game-entity.h"
+#include "game-renderer.h"
+#include "game-camera.h"
+
+#include "third-party/picojson.h"
+
+#include <dali/dali.h>
+
+using namespace Dali;
+using namespace picojson;
+
+using std::vector;
+
+using namespace GameUtils;
+
+GameScene::GameScene()
+{
+}
+
+GameScene::~GameScene()
+{
+}
+
+bool GameScene::Load(const char *filename)
+{
+  ByteArray bytes;
+  if( !LoadFile( filename, bytes ) )
+  {
+    return false;
+  }
+
+  // add EOL
+  bytes.push_back( '\0');
+
+  picojson::value root;
+  picojson::parse( root, bytes.data() );
+
+  bool failed( false );
+
+  if( root.is<object>() )
+  {
+    object rootObject = root.get<object>();
+    for( object::iterator it = rootObject.begin(); it != rootObject.end(); ++it )
+    {
+      std::string entityName( (*it).first );
+
+      GameEntity* entity = new GameEntity( entityName.c_str() );
+      mEntities.PushBack( entity );
+
+      value& val( (*it).second );
+      value& vLocation = val.get( "location" );
+      value& vRotation = val.get( "rotation" );
+      value& vScale = val.get( "scale" );
+      value& vSize = val.get( "size" );
+      value& vModel = val.get( "model" );
+      value& vTexture = val.get( "texture" );
+
+      if( !vLocation.is<null>() )
+      {
+        array& location = vLocation.get<array>();
+        entity->SetLocation( Vector3(
+                              location.at(0).get<double>(),
+                              location.at(1).get<double>(),
+                              location.at(2).get<double>()
+                              ));
+      }
+
+      if( !vRotation.is<null>() )
+      {
+        array& rotation = vRotation.get<array>();
+        entity->SetRotation( Quaternion( Vector4(
+                              -rotation.at(0).get<double>(),
+                              rotation.at(1).get<double>(),
+                              -rotation.at(2).get<double>(),
+                              rotation.at(3).get<double>()
+                              )) );
+      }
+
+      if( !vScale.is<null>() )
+      {
+        array& scale = vScale.get<array>();
+        entity->SetScale( Vector3(
+                              scale.at(0).get<double>(),
+                              scale.at(1).get<double>(),
+                              scale.at(2).get<double>()
+                              ));
+      }
+
+      if( !vSize.is<null>() )
+      {
+        array& size = vSize.get<array>();
+        entity->SetSize( Vector3(
+                              size.at(0).get<double>(),
+                              size.at(1).get<double>(),
+                              size.at(2).get<double>()
+                              ));
+      }
+
+      GameModel* model( NULL );
+      GameTexture* texture( NULL );
+
+      if( !vModel.is<null>() )
+      {
+        std::string& strModel = vModel.get<std::string>();
+        model = GetResource( strModel.c_str(), mModelCache );
+      }
+
+      if( !vTexture.is<null>() )
+      {
+        std::string& strTexture = vTexture.get<std::string>();
+        texture = GetResource( strTexture.c_str(), mTextureCache );
+      }
+
+      if( !model || !texture )
+      {
+        failed = true;
+        break;
+      }
+
+      entity->GetGameRenderer().SetModel( model );
+      entity->GetGameRenderer().SetMainTexture( texture );
+    }
+  }
+
+  if( failed )
+  {
+    return false;
+  }
+
+  // add all to the stage
+  Stage stage = Stage::GetCurrent();
+  mRootActor = Actor::New();
+  mRootActor.SetAnchorPoint( AnchorPoint::CENTER );
+  mRootActor.SetParentOrigin( ParentOrigin::CENTER );
+  stage.GetRootLayer().Add( mRootActor );
+  mRootActor.SetScale( -1.0, 1.0, 1.0 );
+  mRootActor.SetPosition( 0.0, 0.0, 0.0 );
+  mRootActor.SetOrientation( Degree( 90 ), Vector3( 1.0, 0.0, 0.0 ));
+  for( size_t i = 0; i < mEntities.Size(); ++i )
+  {
+    Actor actor( mEntities[i]->GetActor() );
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.SetParentOrigin( ParentOrigin::CENTER );
+    mRootActor.Add( actor );
+    mEntities[i]->UpdateRenderer();
+  }
+
+  // update camera
+  mCamera.Initialise( 60.0f, 0.1f, 100.0f );
+
+  return true;
+}
+
+Dali::Actor& GameScene::GetRootActor()
+{
+  return mRootActor;
+}
diff --git a/examples/fpp-game/game-scene.h b/examples/fpp-game/game-scene.h
new file mode 100644 (file)
index 0000000..0b0c689
--- /dev/null
@@ -0,0 +1,123 @@
+#ifndef GAME_SCENE_H
+#define GAME_SCENE_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <vector>
+#include <stdint.h>
+#include <inttypes.h>
+
+#include "game-container.h"
+#include "game-utils.h"
+#include "game-camera.h"
+
+#include <dali/public-api/actors/actor.h>
+
+class GameCamera;
+class GameEntity;
+class GameTexture;
+class GameModel;
+
+/**
+ * Container based types owning heap allocated data of specifed types
+ */
+typedef GameContainer< GameEntity* > EntityArray;
+typedef GameContainer< GameTexture* > TextureArray;
+typedef GameContainer< GameModel* > ModelArray;
+
+class GameScene
+{
+public:
+
+  /**
+   * Creates an instance of the GameScene
+   */
+  GameScene();
+
+  /**
+   * Destroys an instance of the GameScene
+   */
+  ~GameScene();
+
+  /**
+   * Loads scene from formatted JSON file, returns true on success
+   *
+   * @param[in] filename Path to the scene file
+   * @return true if suceess
+   */
+  bool Load( const char* filename );
+
+  /**
+   * Loads resource ( model or texture ) or gets if from cache if already loaded
+   * @param[in] filename Path to the resource file
+   * @param[in] cache Reference to the cache array to be used
+   * @return Pointer to the resource or NULL otherwise
+   */
+  template <typename T>
+  T* GetResource( const char* filename, GameContainer<T*>& cache );
+
+  /**
+   * Returns scene root actor
+   * @return Parent actor of the whole game scene
+   */
+  Dali::Actor& GetRootActor();
+
+private:
+
+  EntityArray     mEntities;
+  GameCamera      mCamera;
+
+  // internal scene cache
+  ModelArray      mModelCache;
+  TextureArray    mTextureCache;
+
+  Dali::Actor     mRootActor;
+};
+
+
+template<typename T>
+T* GameScene::GetResource( const char* filename, GameContainer<T*>& cache )
+{
+  std::string path( DEMO_GAME_DIR );
+  path += "/";
+  path += filename;
+
+  uint32_t hash( GameUtils::HashString( path.c_str() ) );
+
+  for( typename GameContainer<T*>::Iterator iter = cache.Begin(); iter != cache.End(); ++iter )
+  {
+    if( (*iter)->GetUniqueId() == hash )
+    {
+      return (*iter);
+    }
+  }
+
+  // load resource
+  T* resource = new T( path.c_str() );
+  if( !resource->IsReady() )
+  {
+    return NULL;
+  }
+
+  cache.PushBack( resource );
+
+  return resource;
+}
+
+
+#endif
diff --git a/examples/fpp-game/game-texture.cpp b/examples/fpp-game/game-texture.cpp
new file mode 100644 (file)
index 0000000..630c28f
--- /dev/null
@@ -0,0 +1,88 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <stdio.h>
+
+#include "game-texture.h"
+#include "game-utils.h"
+
+#include <dali-toolkit/public-api/image-loader/sync-image-loader.h>
+
+GameTexture::GameTexture()
+: mUniqueId( 0 ),
+  mIsReady( false )
+{
+}
+
+GameTexture::~GameTexture()
+{
+}
+
+GameTexture::GameTexture( const char* filename )
+: mUniqueId( 0 ),
+  mIsReady( false )
+{
+  Load( filename );
+}
+
+bool GameTexture::Load( const char* filename )
+{
+  Dali::PixelData pixelData = Dali::Toolkit::SyncImageLoader::Load( filename );
+
+  if( !pixelData )
+  {
+    return false;
+  }
+
+  Dali::Texture texture = Dali::Texture::New( Dali::TextureType::TEXTURE_2D,
+                                  pixelData.GetPixelFormat(),
+                                  pixelData.GetWidth(),
+                                  pixelData.GetHeight() );
+  texture.Upload( pixelData );
+  texture.GenerateMipmaps();
+  Dali::TextureSet textureSet = Dali::TextureSet::New();
+  textureSet.SetTexture( 0, texture );
+  Dali::Sampler sampler = Dali::Sampler::New();
+  sampler.SetWrapMode( Dali::WrapMode::REPEAT, Dali::WrapMode::REPEAT, Dali::WrapMode::REPEAT );
+  sampler.SetFilterMode( Dali::FilterMode::LINEAR_MIPMAP_LINEAR, Dali::FilterMode::LINEAR );
+  textureSet.SetSampler( 0, sampler );
+
+  mTexture = texture;
+  mSampler = sampler;
+  mTextureSet = textureSet;
+
+  mUniqueId = GameUtils::HashString( filename );
+
+  mIsReady = true;
+
+  return true;
+}
+
+Dali::TextureSet& GameTexture::GetTextureSet()
+{
+  return mTextureSet;
+}
+
+uint32_t GameTexture::GetUniqueId()
+{
+  return mUniqueId;
+}
+
+bool GameTexture::IsReady()
+{
+  return mIsReady;
+}
diff --git a/examples/fpp-game/game-texture.h b/examples/fpp-game/game-texture.h
new file mode 100644 (file)
index 0000000..78de926
--- /dev/null
@@ -0,0 +1,81 @@
+#ifndef GAME_TEXTURE_H
+#define GAME_TEXTURE_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/public-api/rendering/texture.h>
+#include <dali/public-api/rendering/texture-set.h>
+#include <dali/public-api/rendering/sampler.h>
+
+#include <inttypes.h>
+
+class GameTexture
+{
+public:
+
+  /**
+   * Creates an instance of the GameTexture
+   */
+  GameTexture();
+
+  /**
+   * Creates an instance of the GameTexture with given filename
+   */
+  GameTexture( const char* filename );
+
+  /**
+   * Destroys an instance of the GameTexture
+   */
+  ~GameTexture();
+
+  /**
+   * @brief Loads texture from file
+   * @return Returns true if success
+   */
+  bool Load( const char* filename );
+
+  /**
+   * Checks status of texture, returns false if failed to load
+   * @return true if texture has been loaded, false otherwise
+   */
+  bool IsReady();
+
+  /**
+   * @brief Returns DALi texture set associated with the GameTexture
+   * @return Initialised TextureSet
+   */
+  Dali::TextureSet& GetTextureSet();
+
+  /**
+   * Returns unique Id of the texture
+   * @return Value of unique Id
+   */
+  uint32_t GetUniqueId();
+
+private:
+
+  Dali::Texture     mTexture;
+  Dali::Sampler     mSampler;
+  Dali::TextureSet  mTextureSet;
+
+  uint32_t          mUniqueId;
+
+  bool              mIsReady;
+};
+
+#endif
diff --git a/examples/fpp-game/game-utils.cpp b/examples/fpp-game/game-utils.cpp
new file mode 100644 (file)
index 0000000..1f3f502
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <inttypes.h>
+#include <stdio.h>
+#include <dali/integration-api/debug.h>
+#include <dali/devel-api/adaptor-framework/file-stream.h>
+
+#include "game-utils.h"
+
+namespace GameUtils
+{
+bool LoadFile( const char* filename, ByteArray& bytes )
+{
+  Dali::FileStream fileStream( filename, Dali::FileStream::READ | Dali::FileStream::BINARY );
+  FILE* fin = fileStream.GetFile();
+
+  if( fin )
+  {
+    if( fseek( fin, 0, SEEK_END ) )
+    {
+      return false;
+    }
+    bytes.resize( ftell( fin ) );
+    std::fill( bytes.begin(), bytes.end(), 0 );
+    if( fseek( fin, 0, SEEK_SET ) )
+    {
+      return false;
+    }
+    size_t result = fread( bytes.data(), 1, bytes.size(), fin );
+    return ( result != 0 );
+  }
+
+  return false;
+}
+
+size_t HashString( const char* str )
+{
+  size_t hash = 5381;
+  int c;
+  while( ( c = *str++ ) )
+  {
+     hash = ((hash << 5) + hash) + c;
+  }
+  return hash;
+}
+
+}
diff --git a/examples/fpp-game/game-utils.h b/examples/fpp-game/game-utils.h
new file mode 100644 (file)
index 0000000..6d70ff1
--- /dev/null
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#ifndef GAME_UTILS_H
+#define GAME_UTILS_H
+
+#include <vector>
+#include <inttypes.h>
+#include <stdlib.h>
+
+namespace GameUtils
+{
+typedef std::vector<char> ByteArray;
+
+/**
+ * Loads file from the storage and returns byte array
+ */
+bool LoadFile( const char* filename, ByteArray& out );
+
+/**
+ * Computes hash value from string using djb2 algorithm
+ * @return hash value
+ */
+size_t HashString( const char* str );
+}
+
+#endif
+
diff --git a/examples/fpp-game/third-party/picojson.h b/examples/fpp-game/third-party/picojson.h
new file mode 100644 (file)
index 0000000..c0081e7
--- /dev/null
@@ -0,0 +1,1086 @@
+/*
+ * Copyright 2009-2010 Cybozu Labs, Inc.
+ * Copyright 2011-2014 Kazuho Oku
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ *    this list of conditions and the following disclaimer.
+ *
+ * 2. 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.
+ *
+ * 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 HOLDER 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.
+ */
+#ifndef picojson_h
+#define picojson_h
+
+#include <algorithm>
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
+#include <cstddef>
+#include <iostream>
+#include <iterator>
+#include <limits>
+#include <map>
+#include <stdexcept>
+#include <string>
+#include <vector>
+#include <utility>
+
+// for isnan/isinf
+#if __cplusplus>=201103L
+# include <cmath>
+#else
+extern "C" {
+# ifdef _MSC_VER
+#  include <float.h>
+# elif defined(__INTEL_COMPILER)
+#  include <mathimf.h>
+# else
+#  include <math.h>
+# endif
+}
+#endif
+
+#ifndef PICOJSON_USE_RVALUE_REFERENCE
+# if (defined(__cpp_rvalue_references) && __cpp_rvalue_references >= 200610) || (defined(_MSC_VER) && _MSC_VER >= 1600)
+#  define PICOJSON_USE_RVALUE_REFERENCE 1
+# else
+#  define PICOJSON_USE_RVALUE_REFERENCE 0
+# endif
+#endif//PICOJSON_USE_RVALUE_REFERENCE
+
+
+// experimental support for int64_t (see README.mkdn for detail)
+#ifdef PICOJSON_USE_INT64
+# define __STDC_FORMAT_MACROS
+# include <errno.h>
+# include <inttypes.h>
+#endif
+
+// to disable the use of localeconv(3), set PICOJSON_USE_LOCALE to 0
+#ifndef PICOJSON_USE_LOCALE
+# define PICOJSON_USE_LOCALE 1
+#endif
+#if PICOJSON_USE_LOCALE
+extern "C" {
+# include <locale.h>
+}
+#endif
+
+#ifndef PICOJSON_ASSERT
+# define PICOJSON_ASSERT(e) do { if (! (e)) throw std::runtime_error(#e); } while (0)
+#endif
+
+#ifdef _MSC_VER
+    #define SNPRINTF _snprintf_s
+    #pragma warning(push)
+    #pragma warning(disable : 4244) // conversion from int to char
+    #pragma warning(disable : 4127) // conditional expression is constant
+    #pragma warning(disable : 4702) // unreachable code
+#else
+    #define SNPRINTF snprintf
+#endif
+
+namespace picojson {
+
+  enum {
+    null_type,
+    boolean_type,
+    number_type,
+    string_type,
+    array_type,
+    object_type
+#ifdef PICOJSON_USE_INT64
+    , int64_type
+#endif
+  };
+
+  enum {
+    INDENT_WIDTH = 2
+  };
+
+  struct null {};
+
+  class value {
+  public:
+    typedef std::vector<value> array;
+    typedef std::map<std::string, value> object;
+    union _storage {
+      bool boolean_;
+      double number_;
+#ifdef PICOJSON_USE_INT64
+      int64_t int64_;
+#endif
+      std::string* string_;
+      array* array_;
+      object* object_;
+    };
+  protected:
+    int type_;
+    _storage u_;
+  public:
+    value();
+    value(int type, bool);
+    explicit value(bool b);
+#ifdef PICOJSON_USE_INT64
+    explicit value(int64_t i);
+#endif
+    explicit value(double n);
+    explicit value(const std::string& s);
+    explicit value(const array& a);
+    explicit value(const object& o);
+    explicit value(const char* s);
+    value(const char* s, size_t len);
+    ~value();
+    value(const value& x);
+    value& operator=(const value& x);
+#if PICOJSON_USE_RVALUE_REFERENCE
+    value(value&& x)throw();
+    value& operator=(value&& x)throw();
+#endif
+    void swap(value& x)throw();
+    template <typename T> bool is() const;
+    template <typename T> const T& get() const;
+    template <typename T> T& get();
+    template <typename T> void set(const T &);
+#if PICOJSON_USE_RVALUE_REFERENCE
+    template <typename T> void set(T &&);
+#endif
+    bool evaluate_as_boolean() const;
+    const value& get(size_t idx) const;
+    const value& get(const std::string& key) const;
+    value& get(size_t idx);
+    value& get(const std::string& key);
+
+    bool contains(size_t idx) const;
+    bool contains(const std::string& key) const;
+    std::string to_str() const;
+    template <typename Iter> void serialize(Iter os, bool prettify = false) const;
+    std::string serialize(bool prettify = false) const;
+  private:
+    template <typename T> value(const T*); // intentionally defined to block implicit conversion of pointer to bool
+    template <typename Iter> static void _indent(Iter os, int indent);
+    template <typename Iter> void _serialize(Iter os, int indent) const;
+    std::string _serialize(int indent) const;
+    void clear();
+  };
+
+  typedef value::array array;
+  typedef value::object object;
+
+  inline value::value() : type_(null_type) {}
+
+  inline value::value(int type, bool) : type_(type) {
+    switch (type) {
+#define INIT(p, v) case p##type: u_.p = v; break
+      INIT(boolean_, false);
+      INIT(number_, 0.0);
+#ifdef PICOJSON_USE_INT64
+      INIT(int64_, 0);
+#endif
+      INIT(string_, new std::string());
+      INIT(array_, new array());
+      INIT(object_, new object());
+#undef INIT
+    default: break;
+    }
+  }
+
+  inline value::value(bool b) : type_(boolean_type) {
+    u_.boolean_ = b;
+  }
+
+#ifdef PICOJSON_USE_INT64
+  inline value::value(int64_t i) : type_(int64_type) {
+    u_.int64_ = i;
+  }
+#endif
+
+  inline value::value(double n) : type_(number_type) {
+    if (
+#ifdef _MSC_VER
+        ! _finite(n)
+#elif __cplusplus>=201103L || !(defined(isnan) && defined(isinf))
+               std::isnan(n) || std::isinf(n)
+#else
+        isnan(n) || isinf(n)
+#endif
+        ) {
+      throw std::overflow_error("");
+    }
+    u_.number_ = n;
+  }
+
+  inline value::value(const std::string& s) : type_(string_type) {
+    u_.string_ = new std::string(s);
+  }
+
+  inline value::value(const array& a) : type_(array_type) {
+    u_.array_ = new array(a);
+  }
+
+  inline value::value(const object& o) : type_(object_type) {
+    u_.object_ = new object(o);
+  }
+
+  inline value::value(const char* s) : type_(string_type) {
+    u_.string_ = new std::string(s);
+  }
+
+  inline value::value(const char* s, size_t len) : type_(string_type) {
+    u_.string_ = new std::string(s, len);
+  }
+
+  inline void value::clear() {
+    switch (type_) {
+#define DEINIT(p) case p##type: delete u_.p; break
+      DEINIT(string_);
+      DEINIT(array_);
+      DEINIT(object_);
+#undef DEINIT
+    default: break;
+    }
+  }
+
+  inline value::~value() {
+    clear();
+  }
+
+  inline value::value(const value& x) : type_(x.type_) {
+    switch (type_) {
+#define INIT(p, v) case p##type: u_.p = v; break
+      INIT(string_, new std::string(*x.u_.string_));
+      INIT(array_, new array(*x.u_.array_));
+      INIT(object_, new object(*x.u_.object_));
+#undef INIT
+    default:
+      u_ = x.u_;
+      break;
+    }
+  }
+
+  inline value& value::operator=(const value& x) {
+    if (this != &x) {
+      value t(x);
+      swap(t);
+    }
+    return *this;
+  }
+
+#if PICOJSON_USE_RVALUE_REFERENCE
+  inline value::value(value&& x)throw() : type_(null_type) {
+    swap(x);
+  }
+  inline value& value::operator=(value&& x)throw() {
+    swap(x);
+    return *this;
+  }
+#endif
+  inline void value::swap(value& x)throw() {
+    std::swap(type_, x.type_);
+    std::swap(u_, x.u_);
+  }
+
+#define IS(ctype, jtype)                            \
+  template <> inline bool value::is<ctype>() const { \
+    return type_ == jtype##_type;                   \
+  }
+  IS(null, null)
+  IS(bool, boolean)
+#ifdef PICOJSON_USE_INT64
+  IS(int64_t, int64)
+#endif
+  IS(std::string, string)
+  IS(array, array)
+  IS(object, object)
+#undef IS
+  template <> inline bool value::is<double>() const {
+    return type_ == number_type
+#ifdef PICOJSON_USE_INT64
+      || type_ == int64_type
+#endif
+      ;
+  }
+
+#define GET(ctype, var)                                                \
+  template <> inline const ctype& value::get<ctype>() const {  \
+    PICOJSON_ASSERT("type mismatch! call is<type>() before get<type>()" \
+          && is<ctype>());                                     \
+    return var;                                                        \
+  }                                                            \
+  template <> inline ctype& value::get<ctype>() {              \
+    PICOJSON_ASSERT("type mismatch! call is<type>() before get<type>()"        \
+          && is<ctype>());                                     \
+    return var;                                                        \
+  }
+  GET(bool, u_.boolean_)
+  GET(std::string, *u_.string_)
+  GET(array, *u_.array_)
+  GET(object, *u_.object_)
+#ifdef PICOJSON_USE_INT64
+  GET(double, (type_ == int64_type && (const_cast<value*>(this)->type_ = number_type, const_cast<value*>(this)->u_.number_ = u_.int64_), u_.number_))
+  GET(int64_t, u_.int64_)
+#else
+  GET(double, u_.number_)
+#endif
+#undef GET
+
+#define SET(ctype, jtype, setter)           \
+  template <> inline void value::set<ctype>(const ctype &_val) {  \
+    clear();                      \
+    type_ = jtype##_type;         \
+    setter                        \
+  }
+  SET(bool, boolean, u_.boolean_ = _val;)
+  SET(std::string, string, u_.string_ = new std::string(_val);)
+  SET(array, array, u_.array_ = new array(_val);)
+  SET(object, object, u_.object_ = new object(_val);)
+  SET(double, number, u_.number_ = _val;)
+#ifdef PICOJSON_USE_INT64
+  SET(int64_t, int64, u_.int64_ = _val;)
+#endif
+#undef SET
+
+#if PICOJSON_USE_RVALUE_REFERENCE
+#define MOVESET(ctype, jtype, setter)       \
+  template <> inline void value::set<ctype>(ctype &&_val) {     \
+    clear();                      \
+    type_ = jtype##_type;         \
+    setter                        \
+  }
+  MOVESET(std::string, string, u_.string_ = new std::string(std::move(_val));)
+  MOVESET(array, array, u_.array_ = new array(std::move(_val));)
+  MOVESET(object, object, u_.object_ = new object(std::move(_val));)
+#undef MOVESET
+#endif
+
+  inline bool value::evaluate_as_boolean() const {
+    switch (type_) {
+    case null_type:
+      return false;
+    case boolean_type:
+      return u_.boolean_;
+    case number_type:
+      return u_.number_ != 0;
+#ifdef PICOJSON_USE_INT64
+    case int64_type:
+      return u_.int64_ != 0;
+#endif
+    case string_type:
+      return ! u_.string_->empty();
+    default:
+      return true;
+    }
+  }
+
+  inline const value& value::get(size_t idx) const {
+    static value s_null;
+    PICOJSON_ASSERT(is<array>());
+    return idx < u_.array_->size() ? (*u_.array_)[idx] : s_null;
+  }
+
+  inline value& value::get(size_t idx) {
+    static value s_null;
+    PICOJSON_ASSERT(is<array>());
+    return idx < u_.array_->size() ? (*u_.array_)[idx] : s_null;
+  }
+
+  inline const value& value::get(const std::string& key) const {
+    static value s_null;
+    PICOJSON_ASSERT(is<object>());
+    object::const_iterator i = u_.object_->find(key);
+    return i != u_.object_->end() ? i->second : s_null;
+  }
+
+  inline value& value::get(const std::string& key) {
+    static value s_null;
+    PICOJSON_ASSERT(is<object>());
+    object::iterator i = u_.object_->find(key);
+    return i != u_.object_->end() ? i->second : s_null;
+  }
+
+  inline bool value::contains(size_t idx) const {
+    PICOJSON_ASSERT(is<array>());
+    return idx < u_.array_->size();
+  }
+
+  inline bool value::contains(const std::string& key) const {
+    PICOJSON_ASSERT(is<object>());
+    object::const_iterator i = u_.object_->find(key);
+    return i != u_.object_->end();
+  }
+
+  inline std::string value::to_str() const {
+    switch (type_) {
+    case null_type:      return "null";
+    case boolean_type:   return u_.boolean_ ? "true" : "false";
+#ifdef PICOJSON_USE_INT64
+    case int64_type: {
+      char buf[sizeof("-9223372036854775808")];
+      SNPRINTF(buf, sizeof(buf), "%" PRId64, u_.int64_);
+      return buf;
+    }
+#endif
+    case number_type:    {
+      char buf[256];
+      double tmp;
+      SNPRINTF(buf, sizeof(buf), fabs(u_.number_) < (1ULL << 53) && modf(u_.number_, &tmp) == 0 ? "%.f" : "%.17g", u_.number_);
+#if PICOJSON_USE_LOCALE
+      char *decimal_point = localeconv()->decimal_point;
+      if (strcmp(decimal_point, ".") != 0) {
+        size_t decimal_point_len = strlen(decimal_point);
+        for (char *p = buf; *p != '\0'; ++p) {
+          if (strncmp(p, decimal_point, decimal_point_len) == 0) {
+            return std::string(buf, p) + "." + (p + decimal_point_len);
+          }
+        }
+      }
+#endif
+      return buf;
+    }
+    case string_type:    return *u_.string_;
+    case array_type:     return "array";
+    case object_type:    return "object";
+    default:             PICOJSON_ASSERT(0);
+#ifdef _MSC_VER
+      __assume(0);
+#endif
+    }
+    return std::string();
+  }
+
+  template <typename Iter> void copy(const std::string& s, Iter oi) {
+    std::copy(s.begin(), s.end(), oi);
+  }
+
+  template <typename Iter>
+  struct serialize_str_char {
+    Iter oi;
+    void operator()(char c) {
+      switch (c) {
+#define MAP(val, sym) case val: copy(sym, oi); break
+       MAP('"', "\\\"");
+       MAP('\\', "\\\\");
+       MAP('/', "\\/");
+       MAP('\b', "\\b");
+       MAP('\f', "\\f");
+       MAP('\n', "\\n");
+       MAP('\r', "\\r");
+       MAP('\t', "\\t");
+#undef MAP
+      default:
+       if (static_cast<unsigned char>(c) < 0x20 || c == 0x7f) {
+         char buf[7];
+         SNPRINTF(buf, sizeof(buf), "\\u%04x", c & 0xff);
+         copy(buf, buf + 6, oi);
+         } else {
+         *oi++ = c;
+       }
+       break;
+      }
+    }
+  };
+
+  template <typename Iter> void serialize_str(const std::string& s, Iter oi) {
+    *oi++ = '"';
+    serialize_str_char<Iter> process_char = { oi };
+    std::for_each(s.begin(), s.end(), process_char);
+    *oi++ = '"';
+  }
+
+  template <typename Iter> void value::serialize(Iter oi, bool prettify) const {
+    return _serialize(oi, prettify ? 0 : -1);
+  }
+
+  inline std::string value::serialize(bool prettify) const {
+    return _serialize(prettify ? 0 : -1);
+  }
+
+  template <typename Iter> void value::_indent(Iter oi, int indent) {
+    *oi++ = '\n';
+    for (int i = 0; i < indent * INDENT_WIDTH; ++i) {
+      *oi++ = ' ';
+    }
+  }
+
+  template <typename Iter> void value::_serialize(Iter oi, int indent) const {
+    switch (type_) {
+    case string_type:
+      serialize_str(*u_.string_, oi);
+      break;
+    case array_type: {
+      *oi++ = '[';
+      if (indent != -1) {
+        ++indent;
+      }
+      for (array::const_iterator i = u_.array_->begin();
+           i != u_.array_->end();
+           ++i) {
+       if (i != u_.array_->begin()) {
+         *oi++ = ',';
+       }
+        if (indent != -1) {
+          _indent(oi, indent);
+        }
+       i->_serialize(oi, indent);
+      }
+      if (indent != -1) {
+        --indent;
+        if (! u_.array_->empty()) {
+          _indent(oi, indent);
+        }
+      }
+      *oi++ = ']';
+      break;
+    }
+    case object_type: {
+      *oi++ = '{';
+      if (indent != -1) {
+        ++indent;
+      }
+      for (object::const_iterator i = u_.object_->begin();
+          i != u_.object_->end();
+          ++i) {
+       if (i != u_.object_->begin()) {
+         *oi++ = ',';
+       }
+        if (indent != -1) {
+          _indent(oi, indent);
+        }
+       serialize_str(i->first, oi);
+       *oi++ = ':';
+        if (indent != -1) {
+          *oi++ = ' ';
+        }
+        i->second._serialize(oi, indent);
+      }
+      if (indent != -1) {
+        --indent;
+        if (! u_.object_->empty()) {
+          _indent(oi, indent);
+        }
+      }
+      *oi++ = '}';
+      break;
+    }
+    default:
+      copy(to_str(), oi);
+      break;
+    }
+    if (indent == 0) {
+      *oi++ = '\n';
+    }
+  }
+
+  inline std::string value::_serialize(int indent) const {
+    std::string s;
+    _serialize(std::back_inserter(s), indent);
+    return s;
+  }
+
+  template <typename Iter> class input {
+  protected:
+    Iter cur_, end_;
+    bool consumed_;
+    int line_;
+  public:
+    input(const Iter& first, const Iter& last) : cur_(first), end_(last), consumed_(false), line_(1) {}
+    int getc() {
+      if (consumed_) {
+        if (*cur_ == '\n') {
+          ++line_;
+        }
+        ++cur_;
+      }
+      if (cur_ == end_) {
+        consumed_ = false;
+        return -1;
+      }
+      consumed_ = true;
+      return *cur_ & 0xff;
+    }
+    void ungetc() {
+      consumed_ = false;
+    }
+    Iter cur() const {
+      if (consumed_) {
+        input<Iter> *self = const_cast<input<Iter>*>(this);
+        self->consumed_ = false;
+        ++self->cur_;
+      }
+      return cur_;
+    }
+    int line() const { return line_; }
+    void skip_ws() {
+      while (1) {
+       int ch = getc();
+       if (! (ch == ' ' || ch == '\t' || ch == '\n' || ch == '\r')) {
+         ungetc();
+         break;
+       }
+      }
+    }
+    bool expect(int expect) {
+      skip_ws();
+      if (getc() != expect) {
+       ungetc();
+       return false;
+      }
+      return true;
+    }
+    bool match(const std::string& pattern) {
+      for (std::string::const_iterator pi(pattern.begin());
+          pi != pattern.end();
+          ++pi) {
+       if (getc() != *pi) {
+         ungetc();
+         return false;
+       }
+      }
+      return true;
+    }
+  };
+
+  template<typename Iter> inline int _parse_quadhex(input<Iter> &in) {
+    int uni_ch = 0, hex;
+    for (int i = 0; i < 4; i++) {
+      if ((hex = in.getc()) == -1) {
+       return -1;
+      }
+      if ('0' <= hex && hex <= '9') {
+       hex -= '0';
+      } else if ('A' <= hex && hex <= 'F') {
+       hex -= 'A' - 0xa;
+      } else if ('a' <= hex && hex <= 'f') {
+       hex -= 'a' - 0xa;
+      } else {
+       in.ungetc();
+       return -1;
+      }
+      uni_ch = uni_ch * 16 + hex;
+    }
+    return uni_ch;
+  }
+
+  template<typename String, typename Iter> inline bool _parse_codepoint(String& out, input<Iter>& in) {
+    int uni_ch;
+    if ((uni_ch = _parse_quadhex(in)) == -1) {
+      return false;
+    }
+    if (0xd800 <= uni_ch && uni_ch <= 0xdfff) {
+      if (0xdc00 <= uni_ch) {
+       // a second 16-bit of a surrogate pair appeared
+       return false;
+      }
+      // first 16-bit of surrogate pair, get the next one
+      if (in.getc() != '\\' || in.getc() != 'u') {
+       in.ungetc();
+       return false;
+      }
+      int second = _parse_quadhex(in);
+      if (! (0xdc00 <= second && second <= 0xdfff)) {
+       return false;
+      }
+      uni_ch = ((uni_ch - 0xd800) << 10) | ((second - 0xdc00) & 0x3ff);
+      uni_ch += 0x10000;
+    }
+    if (uni_ch < 0x80) {
+      out.push_back(uni_ch);
+    } else {
+      if (uni_ch < 0x800) {
+       out.push_back(0xc0 | (uni_ch >> 6));
+      } else {
+       if (uni_ch < 0x10000) {
+         out.push_back(0xe0 | (uni_ch >> 12));
+       } else {
+         out.push_back(0xf0 | (uni_ch >> 18));
+         out.push_back(0x80 | ((uni_ch >> 12) & 0x3f));
+       }
+       out.push_back(0x80 | ((uni_ch >> 6) & 0x3f));
+      }
+      out.push_back(0x80 | (uni_ch & 0x3f));
+    }
+    return true;
+  }
+
+  template<typename String, typename Iter> inline bool _parse_string(String& out, input<Iter>& in) {
+    while (1) {
+      int ch = in.getc();
+      if (ch < ' ') {
+       in.ungetc();
+       return false;
+      } else if (ch == '"') {
+       return true;
+      } else if (ch == '\\') {
+       if ((ch = in.getc()) == -1) {
+         return false;
+       }
+       switch (ch) {
+#define MAP(sym, val) case sym: out.push_back(val); break
+         MAP('"', '\"');
+         MAP('\\', '\\');
+         MAP('/', '/');
+         MAP('b', '\b');
+         MAP('f', '\f');
+         MAP('n', '\n');
+         MAP('r', '\r');
+         MAP('t', '\t');
+#undef MAP
+       case 'u':
+         if (! _parse_codepoint(out, in)) {
+           return false;
+         }
+         break;
+       default:
+         return false;
+       }
+      } else {
+       out.push_back(ch);
+      }
+    }
+    return false;
+  }
+
+  template <typename Context, typename Iter> inline bool _parse_array(Context& ctx, input<Iter>& in) {
+    if (! ctx.parse_array_start()) {
+      return false;
+    }
+    size_t idx = 0;
+    if (in.expect(']')) {
+      return ctx.parse_array_stop(idx);
+    }
+    do {
+      if (! ctx.parse_array_item(in, idx)) {
+       return false;
+      }
+      idx++;
+    } while (in.expect(','));
+    return in.expect(']') && ctx.parse_array_stop(idx);
+  }
+
+  template <typename Context, typename Iter> inline bool _parse_object(Context& ctx, input<Iter>& in) {
+    if (! ctx.parse_object_start()) {
+      return false;
+    }
+    if (in.expect('}')) {
+      return true;
+    }
+    do {
+      std::string key;
+      if (! in.expect('"')
+         || ! _parse_string(key, in)
+         || ! in.expect(':')) {
+       return false;
+      }
+      if (! ctx.parse_object_item(in, key)) {
+       return false;
+      }
+    } while (in.expect(','));
+    return in.expect('}');
+  }
+
+  template <typename Iter> inline std::string _parse_number(input<Iter>& in) {
+    std::string num_str;
+    while (1) {
+      int ch = in.getc();
+      if (('0' <= ch && ch <= '9') || ch == '+' || ch == '-'
+          || ch == 'e' || ch == 'E') {
+        num_str.push_back(ch);
+      } else if (ch == '.') {
+#if PICOJSON_USE_LOCALE
+        num_str += localeconv()->decimal_point;
+#else
+        num_str.push_back('.');
+#endif
+      } else {
+       in.ungetc();
+       break;
+      }
+    }
+    return num_str;
+  }
+
+  template <typename Context, typename Iter> inline bool _parse(Context& ctx, input<Iter>& in) {
+    in.skip_ws();
+    int ch = in.getc();
+    switch (ch) {
+#define IS(ch, text, op) case ch: \
+      if (in.match(text) && op) { \
+       return true; \
+      } else { \
+       return false; \
+      }
+      IS('n', "ull", ctx.set_null());
+      IS('f', "alse", ctx.set_bool(false));
+      IS('t', "rue", ctx.set_bool(true));
+#undef IS
+    case '"':
+      return ctx.parse_string(in);
+    case '[':
+      return _parse_array(ctx, in);
+    case '{':
+      return _parse_object(ctx, in);
+    default:
+      if (('0' <= ch && ch <= '9') || ch == '-') {
+        double f;
+        char *endp;
+       in.ungetc();
+        std::string num_str = _parse_number(in);
+        if (num_str.empty()) {
+          return false;
+        }
+#ifdef PICOJSON_USE_INT64
+        {
+          errno = 0;
+          intmax_t ival = strtoimax(num_str.c_str(), &endp, 10);
+          if (errno == 0
+              && std::numeric_limits<int64_t>::min() <= ival
+              && ival <= std::numeric_limits<int64_t>::max()
+              && endp == num_str.c_str() + num_str.size()) {
+            ctx.set_int64(ival);
+            return true;
+          }
+        }
+#endif
+        f = strtod(num_str.c_str(), &endp);
+        if (endp == num_str.c_str() + num_str.size()) {
+          ctx.set_number(f);
+          return true;
+        }
+        return false;
+      }
+      break;
+    }
+    in.ungetc();
+    return false;
+  }
+
+  class deny_parse_context {
+  public:
+    bool set_null() { return false; }
+    bool set_bool(bool) { return false; }
+#ifdef PICOJSON_USE_INT64
+    bool set_int64(int64_t) { return false; }
+#endif
+    bool set_number(double) { return false; }
+    template <typename Iter> bool parse_string(input<Iter>&) { return false; }
+    bool parse_array_start() { return false; }
+    template <typename Iter> bool parse_array_item(input<Iter>&, size_t) {
+      return false;
+    }
+    bool parse_array_stop(size_t) { return false; }
+    bool parse_object_start() { return false; }
+    template <typename Iter> bool parse_object_item(input<Iter>&, const std::string&) {
+      return false;
+    }
+  };
+
+  class default_parse_context {
+  protected:
+    value* out_;
+  public:
+    default_parse_context(value* out) : out_(out) {}
+    bool set_null() {
+      *out_ = value();
+      return true;
+    }
+    bool set_bool(bool b) {
+      *out_ = value(b);
+      return true;
+    }
+#ifdef PICOJSON_USE_INT64
+    bool set_int64(int64_t i) {
+      *out_ = value(i);
+      return true;
+    }
+#endif
+    bool set_number(double f) {
+      *out_ = value(f);
+      return true;
+    }
+    template<typename Iter> bool parse_string(input<Iter>& in) {
+      *out_ = value(string_type, false);
+      return _parse_string(out_->get<std::string>(), in);
+    }
+    bool parse_array_start() {
+      *out_ = value(array_type, false);
+      return true;
+    }
+    template <typename Iter> bool parse_array_item(input<Iter>& in, size_t) {
+      array& a = out_->get<array>();
+      a.push_back(value());
+      default_parse_context ctx(&a.back());
+      return _parse(ctx, in);
+    }
+    bool parse_array_stop(size_t) { return true; }
+    bool parse_object_start() {
+      *out_ = value(object_type, false);
+      return true;
+    }
+    template <typename Iter> bool parse_object_item(input<Iter>& in, const std::string& key) {
+      object& o = out_->get<object>();
+      default_parse_context ctx(&o[key]);
+      return _parse(ctx, in);
+    }
+  private:
+    default_parse_context(const default_parse_context&);
+    default_parse_context& operator=(const default_parse_context&);
+  };
+
+  class null_parse_context {
+  public:
+    struct dummy_str {
+      void push_back(int) {}
+    };
+  public:
+    null_parse_context() {}
+    bool set_null() { return true; }
+    bool set_bool(bool) { return true; }
+#ifdef PICOJSON_USE_INT64
+    bool set_int64(int64_t) { return true; }
+#endif
+    bool set_number(double) { return true; }
+    template <typename Iter> bool parse_string(input<Iter>& in) {
+      dummy_str s;
+      return _parse_string(s, in);
+    }
+    bool parse_array_start() { return true; }
+    template <typename Iter> bool parse_array_item(input<Iter>& in, size_t) {
+      return _parse(*this, in);
+    }
+    bool parse_array_stop(size_t) { return true; }
+    bool parse_object_start() { return true; }
+    template <typename Iter> bool parse_object_item(input<Iter>& in, const std::string&) {
+      return _parse(*this, in);
+    }
+  private:
+    null_parse_context(const null_parse_context&);
+    null_parse_context& operator=(const null_parse_context&);
+  };
+
+  // obsolete, use the version below
+  template <typename Iter> inline std::string parse(value& out, Iter& pos, const Iter& last) {
+    std::string err;
+    pos = parse(out, pos, last, &err);
+    return err;
+  }
+
+  template <typename Context, typename Iter> inline Iter _parse(Context& ctx, const Iter& first, const Iter& last, std::string* err) {
+    input<Iter> in(first, last);
+    if (! _parse(ctx, in) && err != NULL) {
+      char buf[64];
+      SNPRINTF(buf, sizeof(buf), "syntax error at line %d near: ", in.line());
+      *err = buf;
+      while (1) {
+       int ch = in.getc();
+       if (ch == -1 || ch == '\n') {
+         break;
+       } else if (ch >= ' ') {
+         err->push_back(ch);
+       }
+      }
+    }
+    return in.cur();
+  }
+
+  template <typename Iter> inline Iter parse(value& out, const Iter& first, const Iter& last, std::string* err) {
+    default_parse_context ctx(&out);
+    return _parse(ctx, first, last, err);
+  }
+
+  inline std::string parse(value& out, const std::string& s) {
+    std::string err;
+    parse(out, s.begin(), s.end(), &err);
+    return err;
+  }
+
+  inline std::string parse(value& out, std::istream& is) {
+    std::string err;
+    parse(out, std::istreambuf_iterator<char>(is.rdbuf()),
+         std::istreambuf_iterator<char>(), &err);
+    return err;
+  }
+
+  template <typename T> struct last_error_t {
+    static std::string s;
+  };
+  template <typename T> std::string last_error_t<T>::s;
+
+  inline void set_last_error(const std::string& s) {
+    last_error_t<bool>::s = s;
+  }
+
+  inline const std::string& get_last_error() {
+    return last_error_t<bool>::s;
+  }
+
+  inline bool operator==(const value& x, const value& y) {
+    if (x.is<null>())
+      return y.is<null>();
+#define PICOJSON_CMP(type)                                     \
+    if (x.is<type>())                                          \
+      return y.is<type>() && x.get<type>() == y.get<type>()
+    PICOJSON_CMP(bool);
+    PICOJSON_CMP(double);
+    PICOJSON_CMP(std::string);
+    PICOJSON_CMP(array);
+    PICOJSON_CMP(object);
+#undef PICOJSON_CMP
+    PICOJSON_ASSERT(0);
+#ifdef _MSC_VER
+    __assume(0);
+#endif
+    return false;
+  }
+
+  inline bool operator!=(const value& x, const value& y) {
+    return ! (x == y);
+  }
+}
+
+#if !PICOJSON_USE_RVALUE_REFERENCE
+namespace std {
+  template<> inline void swap(picojson::value& x, picojson::value& y)
+    {
+      x.swap(y);
+    }
+}
+#endif
+
+inline std::istream& operator>>(std::istream& is, picojson::value& x)
+{
+  picojson::set_last_error(std::string());
+  std::string err = picojson::parse(x, is);
+  if (! err.empty()) {
+    picojson::set_last_error(err);
+    is.setstate(std::ios::failbit);
+  }
+  return is;
+}
+
+inline std::ostream& operator<<(std::ostream& os, const picojson::value& x)
+{
+  x.serialize(std::ostream_iterator<char>(os));
+  return os;
+}
+#ifdef _MSC_VER
+    #pragma warning(pop)
+#endif
+
+#endif
diff --git a/examples/frame-callback/frame-callback-example.cpp b/examples/frame-callback/frame-callback-example.cpp
new file mode 100644 (file)
index 0000000..978d087
--- /dev/null
@@ -0,0 +1,196 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/common/stage-devel.h>
+
+// INTERNAL INCLUDES
+#include "frame-callback.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char * IMAGE_NAME = DEMO_IMAGE_DIR "application-icon-1.png";
+
+const char * TEXT_ENABLED( "FrameCallback: ON" );
+const char * TEXT_DISABLED( "FrameCallback: OFF" );
+Vector4 TEXT_COLOR_ENABLED( Color::BLACK );
+Vector4 TEXT_COLOR_DISABLED( Color::RED );
+
+float ANIMATION_TIME( 4.0f );
+float ANIMATION_PROGRESS_MULTIPLIER( 0.02f );
+} // unnamed namespace
+
+/**
+ * @brief An example of how to set/unset the FrameCallbackInterface in DALi.
+ *
+ * Creates a scene with several image-views which are animated from side-to-side.
+ * With the frame-callback enabled, the image-views' sizes expand as they hits the sides and the opacity
+ * changes to transparent as they go to the middle.
+ */
+class FrameCallbackController : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in]  application  The application.
+   */
+  FrameCallbackController( Application& application )
+  : mApplication( application ),
+    mStage(),
+    mFrameCallback(),
+    mTextLabel(),
+    mTapDetector(),
+    mFrameCallbackEnabled( false )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &FrameCallbackController::Create );
+  }
+
+private:
+
+  /**
+   * @brief Creates the scene.
+   *
+   * Creates several image-views and places them appropriately.
+   * Animate all image-views.
+   * Set the FrameCallbackInterface on the stage.
+   * Tapping on the stage enables/disables the FrameCallback.
+   */
+  void Create( Application& /* application */ )
+  {
+    // Hide the indicator bar.
+    mApplication.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Set the stage background color and connect to the stage's key signal to allow Back and Escape to exit.
+    mStage = Stage::GetCurrent();
+    mStage.SetBackgroundColor( Color::WHITE );
+    mStage.KeyEventSignal().Connect( this, &FrameCallbackController::OnKeyEvent );
+
+    // Notify mFrameCallback about the stage width.
+    // Can call methods in mFrameCallback directly as we have not set it on the stage yet.
+    Vector2 stageSize = mStage.GetSize();
+    mFrameCallback.SetStageWidth( stageSize.width );
+
+    // Detect taps on the root layer.
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.Attach( mStage.GetRootLayer() );
+    mTapDetector.DetectedSignal().Connect( this, &FrameCallbackController::OnTap );
+
+    // Create some key-frames to be used by all animations.
+    KeyFrames keyFrames = KeyFrames::New();
+    keyFrames.Add( 0.0f,   0.0f );
+    keyFrames.Add( 0.25f,  stageSize.width * 0.5f );
+    keyFrames.Add( 0.75f, -stageSize.width * 0.5f );
+    keyFrames.Add( 1.0f,   0.0f );
+
+    float yPos = 0.0f;
+    for( int i = 0; yPos < stageSize.height; ++i )
+    {
+      ImageView imageView = ImageView::New( IMAGE_NAME );
+      imageView.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+      imageView.SetParentOrigin( ParentOrigin::TOP_CENTER );
+      imageView.SetY( yPos );
+      yPos += imageView.GetNaturalSize().height;
+
+      // Add the ID of the created ImageView to mFrameCallback.
+      // Again, can call methods in mFrameCallback directly as we have not set it on the stage yet.
+      mFrameCallback.AddId( imageView.GetId() );
+
+      mStage.Add( imageView );
+
+      // Create an animation and set the progress so that each image starts at a different point.
+      Animation animation = Animation::New( ANIMATION_TIME );
+      animation.SetLooping( true );
+      animation.AnimateBetween( Property( imageView, Actor::Property::POSITION_X ), keyFrames );
+      animation.SetCurrentProgress( std::min( 1.0f, ANIMATION_PROGRESS_MULTIPLIER * i ) );
+      animation.Play();
+    }
+
+    // Create a text-label to display whether the FrameCallback is enabled/disabled.
+    mTextLabel = TextLabel::New( TEXT_ENABLED );
+    mTextLabel.SetProperty( TextLabel::Property::TEXT_COLOR, TEXT_COLOR_ENABLED );
+    mTextLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mTextLabel.SetAnchorPoint( AnchorPoint::CENTER );
+    mTextLabel.SetParentOrigin( ParentOrigin::CENTER );
+    mStage.Add( mTextLabel );
+
+    // Set the FrameCallbackInterface on the root layer.
+    DevelStage::AddFrameCallback( mStage, mFrameCallback, mStage.GetRootLayer() );
+    mFrameCallbackEnabled = true;
+  }
+
+  /**
+   * @brief Called when a tap on the stage occurs.
+   *
+   * Toggle enabling/disabling of the FrameCallbackInterface
+   */
+  void OnTap( Actor /* actor */, const TapGesture& /* tap */ )
+  {
+    if( mFrameCallbackEnabled )
+    {
+      DevelStage::RemoveFrameCallback( mStage, mFrameCallback );
+      mTextLabel.SetProperty( TextLabel::Property::TEXT, TEXT_DISABLED );
+      mTextLabel.SetProperty( TextLabel::Property::TEXT_COLOR, TEXT_COLOR_DISABLED );
+    }
+    else
+    {
+      DevelStage::AddFrameCallback( mStage, mFrameCallback, mStage.GetRootLayer() );
+      mTextLabel.SetProperty( TextLabel::Property::TEXT, TEXT_ENABLED );
+      mTextLabel.SetProperty( TextLabel::Property::TEXT_COLOR, TEXT_COLOR_ENABLED );
+    }
+
+    mFrameCallbackEnabled = !mFrameCallbackEnabled;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&        mApplication;          ///< A reference to the application instance.
+  Stage               mStage;                ///< The stage we enable the FrameCallback on.
+  FrameCallback       mFrameCallback;        ///< An instance of our implementation of the FrameCallbackInterface.
+  TextLabel           mTextLabel;            ///< Text label which shows whether the frame-callback is enabled/disabled.
+  TapGestureDetector  mTapDetector;          ///< Tap detector to enable/disable the FrameCallbackInterface.
+  bool                mFrameCallbackEnabled; ///< Stores whether the FrameCallbackInterface is enabled/disabled.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  FrameCallbackController controller( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/frame-callback/frame-callback.cpp b/examples/frame-callback/frame-callback.cpp
new file mode 100644 (file)
index 0000000..52ef117
--- /dev/null
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "frame-callback.h"
+
+using namespace Dali;
+using namespace std;
+
+FrameCallback::FrameCallback()
+: mActorIdContainer(),
+  stageHalfWidth( 0.0f )
+{
+}
+
+void FrameCallback::SetStageWidth( float stageWidth )
+{
+  stageHalfWidth = stageWidth * 0.5f;
+}
+
+void FrameCallback::AddId( uint32_t id )
+{
+  mActorIdContainer.PushBack( id );
+}
+
+void FrameCallback::Update( Dali::UpdateProxy& updateProxy, float /* elapsedSeconds */ )
+{
+  // Go through Actor ID container and check if we've hit the sides.
+  for( auto&& i : mActorIdContainer )
+  {
+    Vector3 position;
+    Vector3 size;
+    if( updateProxy.GetPositionAndSize( i, position, size ) ) // Retrieve the position and size using the Actor ID.
+    {
+      float halfWidthPoint = stageHalfWidth - size.width * 0.5f;
+      float xTranslation = abs( position.x );
+      if( xTranslation > halfWidthPoint )
+      {
+        // Actor has hit the edge, adjust the size accordingly.
+        float adjustment = xTranslation - halfWidthPoint;
+        size.width += adjustment * SIZE_MULTIPLIER;
+        size.height += adjustment * SIZE_MULTIPLIER;
+
+        updateProxy.SetSize( i, size ); // Set the size using the UpdateProxy.
+      }
+
+      // Retrieve the actor's position and set make it more transparent the closer it is to the middle.
+      Vector4 color;
+      if( updateProxy.GetColor( i, color ) )
+      {
+        color.a = xTranslation / halfWidthPoint;
+        updateProxy.SetColor( i, color );
+      }
+    }
+  }
+}
diff --git a/examples/frame-callback/frame-callback.h b/examples/frame-callback/frame-callback.h
new file mode 100644 (file)
index 0000000..3302c0f
--- /dev/null
@@ -0,0 +1,70 @@
+#ifndef DEMO_FRAME_CALLBACK_H
+#define DEMO_FRAME_CALLBACK_H
+
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/devel-api/update/frame-callback-interface.h>
+#include <dali/devel-api/update/update-proxy.h>
+#include <dali/public-api/common/dali-vector.h>
+
+/**
+ * @brief Implementation of the FrameCallbackInterface.
+ *
+ * When this is used, it will expand the size of the actors the closer they get to the horizontal edge
+ * and make the actor transparent the closer it gets to the middle.
+ */
+class FrameCallback : public Dali::FrameCallbackInterface
+{
+public:
+
+  /**
+   * @brief Constructor.
+   */
+  FrameCallback();
+
+  /**
+   * @brief Sets the stage width.
+   * @param[in]  stageWidth  The stage width.
+   */
+  void SetStageWidth( float stageWidth );
+
+  /**
+   * @brief The actor with the specified ID will be changed when Update() is called.
+   * @param[in]  id  Actor ID of actor which should be changed by the FrameCallback.
+   */
+  void AddId( uint32_t id );
+
+private:
+
+  /**
+   * @brief Called when every frame is updated.
+   * @param[in]  updateProxy     Used to set the world-matrix and sizes.
+   * @param[in]  elapsedSeconds  Time elapsed time since the last frame (in seconds)
+   */
+  virtual void Update( Dali::UpdateProxy& updateProxy, float elapsedSeconds );
+
+private:
+
+  Dali::Vector< uint32_t > mActorIdContainer; ///< Container of Actor IDs.
+  float stageHalfWidth; ///< Half the width of the stage. Center is 0,0 in the world matrix.
+
+  constexpr static float SIZE_MULTIPLIER = 2.0f; ///< Multiplier for the size to set as the actors hit the edge.
+};
+
+#endif // DEMO_FRAME_CALLBACK_H
diff --git a/examples/gaussian-blur-view/gaussian-blur-view-example.cpp b/examples/gaussian-blur-view/gaussian-blur-view-example.cpp
new file mode 100644 (file)
index 0000000..6c68f69
--- /dev/null
@@ -0,0 +1,186 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <algorithm>
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/gaussian-blur-view/gaussian-blur-view.h>
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+using Dali::Toolkit::GaussianBlurView;
+
+namespace
+{
+
+const char* const BACKGROUND_IMAGE( DEMO_IMAGE_DIR "lake_front.jpg" );
+const float BACKGROUND_IMAGE_WIDTH = 2048.0f;
+
+}
+
+/**
+ * This example shows a scrolling background image which can be blurred (on/off) by tapping the screen
+ */
+class GaussianBlurViewExample : public ConnectionTracker
+{
+public:
+
+  GaussianBlurViewExample( Application& application )
+  : mApplication( application ),
+    mExcessWidth( 0.0f ),
+    mStrength( 1.0f )
+  {
+    mApplication.InitSignal().Connect( this, &GaussianBlurViewExample::Create );
+  }
+
+  ~GaussianBlurViewExample() = default;
+
+private:
+
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+    stage.KeyEventSignal().Connect(this, &GaussianBlurViewExample::OnKeyEvent);
+
+    mImageView = Toolkit::ImageView::New( BACKGROUND_IMAGE );
+    mImageView.SetParentOrigin( ParentOrigin::CENTER );
+    mImageView.SetAnchorPoint( AnchorPoint::CENTER );
+
+    stage.Add( mImageView );
+
+    float excessWidth = std::max( 0.0f, (BACKGROUND_IMAGE_WIDTH - stageSize.width) * 0.5f );
+
+    if( excessWidth > 0.0f )
+    {
+      // Move background image to show GaussianBlurView activity
+
+      float pixelsPerSecond = 10.0f;
+      float duration = excessWidth / pixelsPerSecond;
+      float qDuration = duration * 0.25f;
+
+      mAnimation = Animation::New( duration );
+      mAnimation.AnimateTo( Property(mImageView, Actor::Property::POSITION_X),  excessWidth, TimePeriod(0.0f          , qDuration) );
+      mAnimation.AnimateTo( Property(mImageView, Actor::Property::POSITION_X),         0.0f, TimePeriod(qDuration     , qDuration) );
+      mAnimation.AnimateTo( Property(mImageView, Actor::Property::POSITION_X), -excessWidth, TimePeriod(2.0f*qDuration, qDuration) );
+      mAnimation.AnimateTo( Property(mImageView, Actor::Property::POSITION_X),         0.0f, TimePeriod(3.0f*qDuration, qDuration) );
+
+      mAnimation.SetLooping( true );
+      mAnimation.Play();
+    }
+
+    Layer onTop = Layer::New();
+    onTop.SetParentOrigin( ParentOrigin::CENTER );
+    onTop.SetAnchorPoint( AnchorPoint::CENTER );
+    onTop.SetSize( stageSize );
+    stage.Add( onTop );
+    onTop.RaiseToTop();
+
+    mOnLabel = TextLabel::New( "Blur ON" );
+    mOnLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mOnLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::GREEN );
+    mOnLabel.SetVisible( false );
+    onTop.Add( mOnLabel );
+
+    mOffLabel = TextLabel::New( "Blur OFF" );
+    mOffLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mOffLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    mOffLabel.SetVisible( true );
+    onTop.Add( mOffLabel );
+
+    stage.GetRootLayer().TouchSignal().Connect( this, &GaussianBlurViewExample::OnTouch );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+      const PointState::Type state = touch.GetState( 0 );
+
+      if( PointState::DOWN == state )
+      {
+        Stage stage = Stage::GetCurrent();
+
+        // Enable/disable blur effect
+
+        if( !mGaussianBlurView )
+        {
+          mGaussianBlurView = GaussianBlurView::New( 30, 8.0f, Pixel::RGBA8888, 0.5f, 0.5f, false );
+          mGaussianBlurView.SetParentOrigin( ParentOrigin::CENTER );
+          mGaussianBlurView.SetAnchorPoint( AnchorPoint::CENTER );
+          mGaussianBlurView.SetSize( stage.GetSize() );
+          stage.Add( mGaussianBlurView );
+
+          mGaussianBlurView.Add( mImageView );
+          mGaussianBlurView.Activate();
+
+          mGaussianBlurView.SetProperty( mGaussianBlurView.GetBlurStrengthPropertyIndex(), mStrength );
+
+          mOnLabel.SetVisible( true );
+          mOffLabel.SetVisible( false );
+        }
+        else
+        {
+          stage.Add( mImageView );
+
+          UnparentAndReset( mGaussianBlurView );
+
+          mOnLabel.SetVisible( false );
+          mOffLabel.SetVisible( true );
+        }
+
+      }
+
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;
+
+  Toolkit::ImageView mImageView;
+
+  Animation mAnimation;
+
+  TextLabel mOnLabel;
+  TextLabel mOffLabel;
+
+  GaussianBlurView mGaussianBlurView;
+
+  float mExcessWidth;
+  float mStrength;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  GaussianBlurViewExample test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/gestures/gesture-example.cpp b/examples/gestures/gesture-example.cpp
new file mode 100644 (file)
index 0000000..2cca96d
--- /dev/null
@@ -0,0 +1,487 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <string>
+#include <dali/devel-api/events/rotation-gesture.h>
+#include <dali/devel-api/events/rotation-gesture-detector.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace std;
+
+namespace
+{
+const Property::Value BACKGROUND
+{
+  { Toolkit::Visual::Property::TYPE, Visual::GRADIENT },
+  { GradientVisual::Property::STOP_COLOR,  Property::Array{ Vector4( 167.0f, 207.0f, 223.0f, 255.0f ) / 255.0f,
+                                                            Vector4(   0.0f,  64.0f, 137.0f, 255.0f ) / 255.0f } },
+  { GradientVisual::Property::START_POSITION, Vector2( 0.0f, -0.5f ) },
+  { GradientVisual::Property::END_POSITION,   Vector2( 0.0f,  0.5f ) }
+};
+
+const Property::Value CONTROL_BACKGROUND
+{
+  { Toolkit::Visual::Property::TYPE, Visual::GRADIENT },
+  { GradientVisual::Property::STOP_COLOR, Property::Array{ Vector4( 234.0f, 185.0f,  45.0f, 255.0f ) / 255.0f,
+                                                           Vector4( 199.0f, 152.0f,  16.0f, 255.0f ) / 255.0f } },
+  { GradientVisual::Property::CENTER, Vector2::ZERO },
+  { GradientVisual::Property::RADIUS, 0.5f }
+};
+
+const float HELP_ANIMATION_DURATION( 25.0f );
+const float HELP_ANIMATION_SEGMENT_TIME( 5.0f );
+const float HELP_ANIMATION_TRANSITION_DURATION( 0.75f );
+const Vector2 HELP_TEXT_POSITION_MULTIPLIER( 0.25f, 0.13f );
+
+const float SHAKY_ANIMATION_DURATION( 0.1f );
+const float SHAKY_ANIMATION_SEGMENT_TIME( 0.05f );
+const float SHAKY_ANIMATION_ANGLE( 1.0f );
+
+const float TOUCH_MODE_ANIMATION_DURATION( 0.1f );
+const Vector4 TOUCH_MODE_COLOR( 1.0f, 0.7f, 0.7f, 1.0f );
+
+const float PAN_MODE_CHANGE_ANIMATION_DURATION( 0.25f );
+const Vector3 PAN_MODE_START_ANIMATION_SCALE( 1.2f, 1.2f, 1.0f );
+const Vector3 PAN_MODE_END_ANIMATION_SCALE( 0.8f, 0.8f, 1.0f );
+
+const float TAP_ANIMATION_DURATION( 0.5f );
+const Vector4 TAP_ANIMATION_COLOR( 0.8f, 0.5, 0.2f, 0.6f );
+
+const Vector3 MINIMUM_SCALE( Vector3::ONE );
+const Vector3 MAXIMUM_SCALE( Vector3::ONE * 2.0f );
+const float SCALE_BACK_ANIMATION_DURATION( 0.25f );
+const float ROTATE_BACK_ANIMATION_DURATION( 0.25f );
+
+/**
+ * @brief Shows the given string between the given start and end times.
+ *
+ * Appropriately animates the string into and out of the scene.
+ *
+ * @param[in]  string     The label to display, this is an rvalue reference & will be moved
+ * @param[in]  parent     The parent to add the label to
+ * @param[in]  animation  The animation to add the animators created in this function
+ * @param[in]  startTime  When to start the animators
+ * @param[in]  endTime    When to end the animators
+ */
+void AddHelpInfo( const std::string&& string, Actor parent, Animation animation, float startTime, float endTime )
+{
+  Actor text = TextLabel::New( std::move( string ) );
+  Vector3 position( Stage::GetCurrent().GetSize() * HELP_TEXT_POSITION_MULTIPLIER );
+
+  text.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+  text.SetParentOrigin( ParentOrigin::TOP_CENTER );
+  text.SetPosition( position );
+  text.SetOpacity( 0.0f );
+  text.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, Text::HorizontalAlignment::CENTER );
+  text.SetProperty( TextLabel::Property::MULTI_LINE, true );
+  parent.Add( text );
+
+  // Animate IN
+  TimePeriod timePeriod( startTime, HELP_ANIMATION_TRANSITION_DURATION );
+  animation.AnimateTo( Property( text, Actor::Property::COLOR_ALPHA ),  1.0f,       timePeriod );
+  animation.AnimateBy( Property( text, Actor::Property::POSITION_X ),  -position.x, timePeriod );
+
+  // Animate OUT
+  timePeriod.delaySeconds = endTime;
+  animation.AnimateTo( Property( text, Actor::Property::COLOR_ALPHA ),  0.0f,       timePeriod );
+  animation.AnimateBy( Property( text, Actor::Property::POSITION_X ),  -position.x, timePeriod );
+}
+
+} // unnamed namespace
+
+/**
+ * @brief This example shows how to use the different gesture detectors available.
+ *
+ * - Tapping on the control shows a small rotation animation.
+ * - A Long press on the control puts it into Pan Mode.
+ * - When in Pan mode, the control can be panned (moved).
+ * - When the pan ends, we exit the Pan mode via an animation.
+ * - Pinching the control changes the scale of the control.
+ */
+class GestureExample : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   *
+   * @param[in]  application  Reference to the application
+   */
+  GestureExample( Application &application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    application.InitSignal().Connect( this, &GestureExample::Create );
+  }
+
+private:
+
+  /**
+   * @brief Creates the scene as described in this class' description.
+   *
+   * @param[in]  application  Reference to the application class
+   */
+  void Create( Application& application )
+  {
+    // Get a handle to the stage & connect to the key event signal
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &GestureExample::OnKeyEvent);
+
+    // Create a background with a linear gradient which matches parent size & is placed in the center.
+    Actor background = Control::New();
+    background.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    background.SetParentOrigin( ParentOrigin::CENTER );
+    background.SetProperty( Control::Property::BACKGROUND, BACKGROUND );
+    stage.Add( background );
+
+    // Create a control with a circular gradient that we'll use for the gestures and be a quarter of the size of the stage.
+    Actor touchControl = Control::New();
+    touchControl.SetSize( stage.GetSize() * 0.25f );
+    touchControl.SetParentOrigin( ParentOrigin::CENTER );
+    touchControl.SetProperty( Control::Property::BACKGROUND, CONTROL_BACKGROUND );
+    background.Add( touchControl );
+
+    // Connect to the touch signal
+    touchControl.TouchSignal().Connect( this, &GestureExample::OnTouch );
+    touchControl.SetLeaveRequired( true );
+
+    // Create a long press gesture detector, attach the actor & connect
+    mLongPressDetector = LongPressGestureDetector::New();
+    mLongPressDetector.Attach( touchControl );
+    mLongPressDetector.DetectedSignal().Connect( this, &GestureExample::OnLongPress );
+
+    // Create a pan gesture detector & connect, don't attach the actor as we'll attach it when we detect a long-press
+    mPanDetector = PanGestureDetector::New();
+    mPanDetector.DetectedSignal().Connect( this, &GestureExample::OnPan );
+
+    // Create a tap gesture detector, attach the actor & connect
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.Attach( touchControl );
+    mTapDetector.DetectedSignal().Connect( this, &GestureExample::OnTap );
+
+    // Create a pinch gesture detector, attach the actor & connect
+    mPinchDetector = PinchGestureDetector::New();
+    mPinchDetector.Attach( touchControl );
+    mPinchDetector.DetectedSignal().Connect( this, &GestureExample::OnPinch );
+
+    // Create a rotation gesture detector, attach the actor & connect
+    mRotationDetector = RotationGestureDetector::New();
+    mRotationDetector.Attach( touchControl );
+    mRotationDetector.DetectedSignal().Connect( this, &GestureExample::OnRotation );
+
+    // Create an animation which shakes the actor when in Pan mode
+    mShakeAnimation = Animation::New( SHAKY_ANIMATION_DURATION );
+    mShakeAnimation.AnimateBy( Property( touchControl, Actor::Property::ORIENTATION ),
+                               Quaternion( Degree(  SHAKY_ANIMATION_ANGLE ), Vector3::ZAXIS ),
+                               AlphaFunction::BOUNCE,
+                               TimePeriod( 0.0f, SHAKY_ANIMATION_SEGMENT_TIME ) );
+    mShakeAnimation.AnimateBy( Property( touchControl, Actor::Property::ORIENTATION ),
+                               Quaternion( Degree( -SHAKY_ANIMATION_ANGLE ), Vector3::ZAXIS ),
+                               AlphaFunction::BOUNCE,
+                               TimePeriod( SHAKY_ANIMATION_SEGMENT_TIME, SHAKY_ANIMATION_SEGMENT_TIME ) );
+
+    // Animate help information
+    // Here we just animate some text on the screen to show tips on how to use this example
+    // The help animation loops
+    Animation helpAnimation = Animation::New( HELP_ANIMATION_DURATION );
+
+    float startTime( 0.0f );
+    float endTime( startTime + HELP_ANIMATION_SEGMENT_TIME );
+
+    AddHelpInfo( "Tap image for animation",                              background, helpAnimation, startTime, endTime );
+    AddHelpInfo( "Press & Hold image to drag",                           background, helpAnimation, startTime += HELP_ANIMATION_SEGMENT_TIME, endTime += HELP_ANIMATION_SEGMENT_TIME );
+    AddHelpInfo( "Pinch image to resize",                                background, helpAnimation, startTime += HELP_ANIMATION_SEGMENT_TIME, endTime += HELP_ANIMATION_SEGMENT_TIME );
+    AddHelpInfo( "Move fingers in a circular motion on image to rotate", background, helpAnimation, startTime += HELP_ANIMATION_SEGMENT_TIME, endTime += HELP_ANIMATION_SEGMENT_TIME );
+    helpAnimation.SetLooping( true );
+    helpAnimation.Play();
+  }
+
+  /**
+   * @brief Called when our actor is touched.
+   *
+   * @param[in]  actor  The touched actor
+   * @param[in]  touch  The touch event
+   */
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    switch( touch.GetState( 0 ) )
+    {
+      case PointState::DOWN:
+      {
+        // When we get a touch point, change the color of the actor.
+
+        Animation anim = Animation::New( TOUCH_MODE_ANIMATION_DURATION );
+        anim.AnimateTo( Property( actor, Actor::Property::COLOR ), TOUCH_MODE_COLOR );
+        anim.Play();
+        break;
+      }
+
+      case PointState::LEAVE:
+      case PointState::UP:
+      case PointState::INTERRUPTED:
+      {
+        if( ! mPanStarted )
+        {
+          // If we're not panning, change the color back to normal.
+
+          Animation anim = Animation::New( TOUCH_MODE_ANIMATION_DURATION );
+          anim.AnimateTo( Property( actor, Actor::Property::COLOR ), Vector4::ONE );
+          anim.Play();
+
+          // Stop the shake animation from looping.
+          mShakeAnimation.SetLooping( false );
+        }
+        break;
+      }
+
+      default:
+      {
+        break;
+      }
+    }
+    return true;
+  }
+
+  /**
+   * @brief Called when a long-press gesture is detected on our control.
+   *
+   * @param[in]  actor      The actor that's been long-pressed
+   * @param[in]  longPress  The long-press gesture information
+   */
+  void OnLongPress( Actor actor, const LongPressGesture& longPress )
+  {
+    if( longPress.state == Gesture::Started )
+    {
+      // When we first receive a long press, attach the actor to the pan detector.
+      mPanDetector.Attach( actor );
+
+      // Do a small animation to indicate to the user that we are in pan mode.
+      Animation anim = Animation::New( PAN_MODE_CHANGE_ANIMATION_DURATION );
+      anim.AnimateTo( Property( actor, Actor::Property::SCALE ), actor.GetCurrentScale() * PAN_MODE_START_ANIMATION_SCALE, AlphaFunction::BOUNCE );
+      anim.Play();
+
+      // Start the shake animation so the user knows when they are in pan mode.
+      mShakeAnimation.SetLooping( true );
+      mShakeAnimation.Play();
+    }
+  }
+
+  /**
+   * @brief Called when a pan gesture is detected on our control.
+   *
+   * @param[in]  actor  The actor that's been panned
+   * @param[in]  pan    The pan gesture information
+   */
+  void OnPan( Actor actor, const PanGesture& pan )
+  {
+    // Just move the actor by the displacement.
+
+    // As the displacement is in local actor coords, we will have to multiply the displacement by the
+    // actor's scale so that it moves the correct amount in the parent's coordinate system.
+    Vector3 scaledDisplacement( pan.displacement );
+    scaledDisplacement *= actor.GetCurrentScale();
+
+    Vector3 currentPosition;
+    actor.GetProperty( Actor::Property::POSITION ).Get( currentPosition );
+
+    Vector3 newPosition = currentPosition + scaledDisplacement;
+    actor.SetPosition( newPosition );
+
+    switch( pan.state )
+    {
+      case Gesture::Started:
+      {
+        mPanStarted = true;
+        break;
+      }
+
+      case Gesture::Finished:
+      case Gesture::Cancelled:
+      {
+        // If we cancel or finish the pan, do an animation to indicate this and stop the shake animation.
+
+        Animation anim = Animation::New( PAN_MODE_CHANGE_ANIMATION_DURATION );
+        anim.AnimateTo( Property( actor, Actor::Property::COLOR ), Vector4::ONE );
+        anim.AnimateTo( Property( actor, Actor::Property::SCALE ), actor.GetCurrentScale() * PAN_MODE_END_ANIMATION_SCALE, AlphaFunction::BOUNCE );
+
+        // Move actor back to center if we're out of bounds
+        Vector2 halfStageSize = Stage::GetCurrent().GetSize() * 0.5f;
+        if( ( abs( newPosition.x ) > halfStageSize.width  ) ||
+            ( abs( newPosition.y ) > halfStageSize.height ) )
+        {
+          anim.AnimateTo( Property( actor, Actor::Property::POSITION ), Vector3::ZERO, AlphaFunction::EASE_IN );
+        }
+        anim.Play();
+
+        // Set end of pan configuration and disconnect the actor from the pan detector
+        mShakeAnimation.SetLooping( false );
+        mPanStarted = false;
+        mPanDetector.Detach( actor );
+        break;
+      }
+
+      default:
+      {
+        break;
+      }
+    }
+  }
+
+  /**
+   * @brief Called when a tap gesture is detected on our control.
+   *
+   * @param[in]  actor The actor that's been tapped
+   * @param[in]  tap   The tap gesture information
+   */
+  void OnTap( Actor actor, const TapGesture& tap )
+  {
+    // Do a short animation to show a tap has happened.
+
+    Animation anim = Animation::New( TAP_ANIMATION_DURATION );
+    anim.AnimateBy( Property( actor, Actor::Property::ORIENTATION ), Quaternion( ANGLE_360, Vector3::ZAXIS ) );
+    anim.AnimateTo( Property( actor, Actor::Property::SCALE ), Vector3::ONE, AlphaFunction::LINEAR );
+    anim.AnimateTo( Property( actor, Actor::Property::COLOR ), TAP_ANIMATION_COLOR, AlphaFunction::BOUNCE );
+    anim.AnimateTo( Property( actor, Actor::Property::POSITION ), Vector3::ZERO, AlphaFunction::EASE_OUT_SQUARE );
+    anim.Play();
+  }
+
+  /**
+   * @brief Called when a pinch gesture is detected on our control.
+   *
+   * @param[in]  actor  The actor that's been pinched
+   * @param[in]  pinch  The pinch gesture information
+   */
+  void OnPinch( Actor actor, const PinchGesture& pinch )
+  {
+    switch( pinch.state )
+    {
+      case Gesture::Started:
+      {
+        // Starting scale is required so that we know what to multiply the pinch.scale by.
+        mStartingScale = actor.GetCurrentScale();
+        break;
+      }
+
+      case Gesture::Finished:
+      case Gesture::Cancelled:
+      {
+        Vector3 scale( actor.GetCurrentScale() );
+
+        // Ensure the actor sizes itself to be within the limits defined.
+        if ( scale.x < MINIMUM_SCALE.x )
+        {
+          scale = MINIMUM_SCALE;
+        }
+        else if ( scale.x > MAXIMUM_SCALE.x )
+        {
+          scale = MAXIMUM_SCALE;
+        }
+
+        // Do an animation to come back to go back to the limits.
+        Animation anim = Animation::New( SCALE_BACK_ANIMATION_DURATION );
+        anim.AnimateTo( Property( actor, Actor::Property::SCALE ), scale, AlphaFunction::LINEAR );
+        anim.Play();
+        break;
+      }
+
+      default:
+      {
+        break;
+      }
+    }
+
+    actor.SetScale( mStartingScale * pinch.scale );
+  }
+
+  /**
+   * @brief Called when a rotation gesture is detected on our control.
+   *
+   * @param[in]  actor     The actor that's been pinched
+   * @param[in]  rotation  The rotation gesture information
+   */
+  void OnRotation( Actor actor, const RotationGesture& rotation )
+  {
+    switch( rotation.state )
+    {
+      case Gesture::Started:
+      {
+        // Starting orientation is required so that we know what to multiply the rotation.rotation by.
+        mStartingOrientation = actor.GetCurrentOrientation();
+        break;
+      }
+
+      case Gesture::Finished:
+      case Gesture::Cancelled:
+      {
+        // Do an animation to come back to go back to the original orientation.
+        Animation anim = Animation::New( ROTATE_BACK_ANIMATION_DURATION );
+        anim.AnimateTo( Property( actor, Actor::Property::ORIENTATION ), Quaternion::IDENTITY, AlphaFunction::LINEAR );
+        anim.Play();
+        break;
+      }
+
+      default:
+      {
+        break;
+      }
+    }
+
+    actor.SetOrientation( mStartingOrientation * Quaternion( rotation.rotation, Vector3::ZAXIS ) );
+  }
+
+  /**
+   * @brief Called when any key event is received.
+   *
+   * Will use this to quit the application if Back or the Escape key is received.
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+
+  PanGestureDetector mPanDetector;
+  LongPressGestureDetector mLongPressDetector;
+  TapGestureDetector mTapDetector;
+  PinchGestureDetector mPinchDetector;
+  RotationGestureDetector mRotationDetector;
+
+  Vector3 mStartingScale; ///< Set to the scale of the control when pinch starts.
+  Quaternion mStartingOrientation; ///< Set to the orientation of the control when the rotation starts.
+  Animation mShakeAnimation; ///< "Shake" animation to show when we are in panning mode.
+  bool mPanStarted = false; ///< Set to true to state that panning has started.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  GestureExample controller( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/gradients/gradients-example.cpp b/examples/gradients/gradients-example.cpp
new file mode 100644 (file)
index 0000000..58bf674
--- /dev/null
@@ -0,0 +1,169 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char * const APPLICATION_TITLE( "Color Gradients" );
+
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const CHANGE_ICON( DEMO_IMAGE_DIR "icon-change.png" );
+const char * const CHANGE_ICON_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+}
+
+// This example shows how to render color gradients
+//
+class GradientController : public ConnectionTracker
+{
+public:
+
+  GradientController( Application& application )
+  : mApplication( application ),
+    mIndex( 0 )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &GradientController::Create );
+  }
+
+  ~GradientController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &GradientController::OnKeyEvent);
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    Toolkit::ToolBar toolBar;
+    Layer content = DemoHelper::CreateView( application,
+                                            mView,
+                                            toolBar,
+                                            "",
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    PushButton changeButton = Toolkit::PushButton::New();
+    changeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CHANGE_ICON );
+    changeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CHANGE_ICON_SELECTED );
+    changeButton.ClickedSignal().Connect( this, &GradientController::OnChangeIconClicked );
+    toolBar.AddControl( changeButton,
+                        DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
+                        Toolkit::Alignment::HorizontalRight,
+                        DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+// ---- Gradient for background
+
+    mGradientMap.Insert( Toolkit::Visual::Property::TYPE,  Visual::GRADIENT );
+
+    Property::Array stopOffsets;
+    stopOffsets.PushBack( 0.0f );
+    stopOffsets.PushBack( 0.3f );
+    stopOffsets.PushBack( 0.6f );
+    stopOffsets.PushBack( 0.8f );
+    stopOffsets.PushBack( 1.0f );
+    mGradientMap.Insert( GradientVisual::Property::STOP_OFFSET, stopOffsets );
+
+    Property::Array stopColors;
+    stopColors.PushBack( Vector4( 129.f, 198.f, 193.f, 255.f )/255.f );
+    stopColors.PushBack( Vector4( 196.f, 198.f, 71.f, 122.f )/255.f );
+    stopColors.PushBack( Vector4( 214.f, 37.f, 139.f, 191.f )/255.f );
+    stopColors.PushBack( Vector4( 129.f, 198.f, 193.f, 150.f )/255.f );
+    stopColors.PushBack( Color::YELLOW );
+    mGradientMap.Insert( GradientVisual::Property::STOP_COLOR, stopColors );
+
+    OnChangeIconClicked( changeButton );
+  }
+
+  bool OnChangeIconClicked( Toolkit::Button button )
+  {
+    Property::Map gradientMap;
+
+    switch( mIndex%4 )
+    {
+      case 0: // linear gradient with units as objectBoundingBox
+      {
+        gradientMap.Insert( GradientVisual::Property::START_POSITION,   Vector2(  0.5f,  0.5f ) );
+        gradientMap.Insert( GradientVisual::Property::END_POSITION,     Vector2( -0.5f, -0.5f ) );
+        break;
+      }
+      case 1: // linear gradient with units as userSpaceOnUse
+      {
+        Vector2 halfStageSize = Stage::GetCurrent().GetSize()*0.5f;
+        gradientMap.Insert( GradientVisual::Property::START_POSITION,  halfStageSize );
+        gradientMap.Insert( GradientVisual::Property::END_POSITION,   -halfStageSize );
+        gradientMap.Insert( GradientVisual::Property::UNITS, GradientVisual::Units::USER_SPACE );
+        break;
+      }
+      case 2: // radial gradient with units as objectBoundingBox
+      {
+        gradientMap.Insert( GradientVisual::Property::CENTER, Vector2( 0.5f, 0.5f ) );
+        gradientMap.Insert( GradientVisual::Property::RADIUS, 1.414f );
+        break;
+      }
+      default: // radial gradient with units as userSpaceOnUse
+      {
+        Vector2 stageSize = Stage::GetCurrent().GetSize();
+        gradientMap.Insert( GradientVisual::Property::CENTER, stageSize * 0.5f );
+        gradientMap.Insert( GradientVisual::Property::RADIUS, stageSize.Length());
+        gradientMap.Insert( GradientVisual::Property::UNITS,  GradientVisual::Units::USER_SPACE );
+        break;
+      }
+    }
+
+    gradientMap.Merge( mGradientMap );
+    mView.SetProperty( Control::Property::BACKGROUND, gradientMap );
+
+    mIndex++;
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+
+  Property::Map mGradientMap;
+  Control mView;
+  unsigned mIndex;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  GradientController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/hello-world/hello-world-example.cpp b/examples/hello-world/hello-world-example.cpp
new file mode 100644 (file)
index 0000000..ad70d0d
--- /dev/null
@@ -0,0 +1,88 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+
+// This example shows how to create and display Hello World! using a simple TextActor
+//
+class HelloWorldController : public ConnectionTracker
+{
+public:
+
+  HelloWorldController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &HelloWorldController::Create );
+  }
+
+  ~HelloWorldController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    TextLabel textLabel = TextLabel::New( "Hello World" );
+    textLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    textLabel.SetName( "helloWorldLabel" );
+    stage.Add( textLabel );
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &HelloWorldController::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &HelloWorldController::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  HelloWorldController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/homescreen-benchmark/homescreen-benchmark.cpp b/examples/homescreen-benchmark/homescreen-benchmark.cpp
new file mode 100644 (file)
index 0000000..c32aaf7
--- /dev/null
@@ -0,0 +1,529 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/actors/actor-devel.h>
+#include <sstream>
+#include <iostream>
+
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+
+namespace
+{
+enum IconType
+{
+  IMAGEVIEW,
+  CHECKBOX
+};
+
+const char* IMAGE_PATH_PREFIX               ( DEMO_IMAGE_DIR "application-icon-" );
+const char* IMAGE_PATH_POSTFIX              ( ".png" );
+const int   TOTAL_ICON_DEFINITIONS          ( 147 );
+
+const char* BACKGROUND_IMAGE                ( DEMO_IMAGE_DIR "background-3.jpg" );
+const float PAGE_SCALE_FACTOR_X             ( 0.95f );
+const float PAGE_SCALE_FACTOR_Y             ( 0.95f );
+const float PAGE_DURATION_SCALE_FACTOR      ( 10.0f ); ///< Time-scale factor, larger = animation is slower
+
+const float DEFAULT_OPT_ROW_COUNT           ( 5 );
+const float DEFAULT_OPT_COL_COUNT           ( 4 );
+const float DEFAULT_OPT_PAGE_COUNT          ( 10 );
+const bool  DEFAULT_OPT_USE_TABLEVIEW       ( true );
+const bool  DEFAULT_OPT_ICON_LABELS         ( true );
+const IconType  DEFAULT_OPT_ICON_TYPE       ( IMAGEVIEW );
+const bool  DEFAULT_OPT_USE_TEXT_LABEL      ( false );
+
+// The image/label area tries to make sure the positioning will be relative to previous sibling
+const float IMAGE_AREA                      ( 0.60f );
+const float LABEL_AREA                      ( 0.50f );
+
+
+
+/**
+ * Random words used as unique application names.
+ * The number matches the value of TOTAL_ICON_DEFINITIONS.
+ */
+const char* DEMO_APPS_NAMES[] =
+{
+  "Achdyer",   "Aughm",       "Cerl",       "Daril",      "Emgha",     "Ghatan",     "Issum",     "Lertan",    "Mosorrad",
+  "Achtortor", "Aughtheryer", "Certin",     "Darpban",    "Emiton",    "Gibanis",    "Itenthbel", "Liadem",    "Mosraye",
+  "Ackirlor",  "Awitad",      "Checerper",  "Dasrad",     "Emworeng",  "Hatdyn",     "K'ackves",  "Liathar",   "Mosth",
+  "Ackptin",   "Banengon",    "Chegit",     "Deeqskel",   "Endnys",    "Heesban",    "Kagdra",    "Liephden",  "Neabar",
+  "Aighte",    "Banhinat",    "Cheirat",    "Delurnther", "Enessray",  "Hesub",      "Kalbankim", "Likellor",  "Neerdem",
+  "Akala",     "Belrisash",   "Che'rak",    "Denalda",    "Engyer",    "Hinkelenth", "Kal'enda",  "Loightmos", "Nichqua",
+  "Alealdny",  "Bilorm",      "Cheves",     "Derynkel",   "En'rady",   "Hirryer",    "Kimest",    "Loromum",   "Nudraough",
+  "Angash",    "Bleustcer",   "Chiperath",  "Deurnos",    "Enthount",  "Ideinta",    "Kimundeng", "Lorr",      "Nuyim",
+  "Anglor",    "Bliagelor",   "Chralerack", "Doyaryke",   "Enundem",   "Im'eld",     "Koachlor",  "Lortas",    "Nycha",
+  "Anveraugh", "Blorynton",   "Chram",      "Draithon",   "Essina",    "Ina'ir",     "Kuren",     "Lyerr",     "Nyia",
+  "Ardangas",  "Booten",      "Clyimen",    "Drantess",   "Faughald",  "Ing'moro",   "Kygver",    "Maustbur",  "Nyjac",
+  "Ardug",     "Bripolqua",   "Coqueang",   "Druardny",   "Fiummos",   "Ingormess",  "Kyning",    "Menvor",    "Nystondar",
+  "Ardworu",   "Bryray",      "Craennther", "Dynsaytor",  "Garash",    "Ingshy",     "Laiyach",   "Meusten",   "Okine",
+  "Ascerald",  "Burust",      "Cykage",     "Dytinris",   "Garight",   "Issath",     "Lasuzu",    "Mirodskel", "Oldit",
+  "Ash'ach",   "Cataikel",    "Dalek",      "Eeni",       "Garrynath", "Issendris",  "Lekew",     "Morhatrod", "Om'mose",
+  "Athiund",   "Cerilwar",    "Darhkel",    "Elmryn",     "Ghalora",   "Issey",      "Lerengom",  "Moserbel",  "Onye",
+  "Ososrak",   "Pecertin",    "Perrd"
+};
+
+// This code comes from command-line-options.cpp. the reason it's here is to
+// keep consistent the extra-help formatting when '--help' used.
+void PrintHelp( const char * const opt, const char * const optDescription)
+{
+  const std::ios_base::fmtflags flags = std::cout.flags();
+  std::cout << std::left << "  -";
+  std::cout.width( 18 );
+  std::cout << opt;
+  std::cout << optDescription;
+  std::cout << std::endl;
+  std::cout.flags( flags );
+}
+
+}
+
+/**
+ * @brief This example is a benchmark that mimics the paged applications list of the homescreen application.
+ */
+class HomescreenBenchmark : public ConnectionTracker
+{
+public:
+
+  // Config structure passed to the constructor. It makes easier to increase number
+  // of setup parameters if needed.
+  struct Config
+  {
+    Config() :
+      mRows( DEFAULT_OPT_ROW_COUNT ),
+      mCols( DEFAULT_OPT_COL_COUNT ),
+      mPageCount( DEFAULT_OPT_PAGE_COUNT ),
+      mTableViewEnabled( DEFAULT_OPT_USE_TABLEVIEW ),
+      mIconLabelsEnabled( DEFAULT_OPT_ICON_LABELS ),
+      mIconType( DEFAULT_OPT_ICON_TYPE ),
+      mUseTextLabel( DEFAULT_OPT_USE_TEXT_LABEL )
+    {
+    }
+
+    int  mRows;
+    int  mCols;
+    int  mPageCount;
+    bool mTableViewEnabled;
+    bool mIconLabelsEnabled;
+    IconType mIconType;
+    bool mUseTextLabel;
+  };
+
+  // animation script data
+  struct ScriptData
+  {
+    ScriptData( int pages, float duration, bool flick )
+    : mPages( pages ),
+      mDuration( duration ),
+      mFlick( flick )
+    {
+    }
+
+    int   mPages;    ///< Number of pages to scroll
+    float mDuration; ///< Duration
+    bool  mFlick;    ///< Use flick or 'one-by-one' scroll
+  };
+
+  HomescreenBenchmark( Application& application, const Config& config )
+  : mApplication( application ),
+    mConfig( config ),
+    mScriptFrame( 0 ),
+    mCurrentPage( 0 )
+  {
+    // Connect to the Application's Init signal.
+    mApplication.InitSignal().Connect( this, &HomescreenBenchmark::Create );
+  }
+
+  ~HomescreenBenchmark()
+  {
+  }
+
+  // The Init signal is received once (only) during the Application lifetime.
+  void Create( Application& application )
+  {
+    // Create benchmark script
+    CreateScript();
+
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+
+    mScrollParent = Actor::New();
+    mScrollParent.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mScrollParent.SetAnchorPoint( AnchorPoint::CENTER );
+    mScrollParent.SetParentOrigin( ParentOrigin::CENTER );
+
+    // create background
+    Toolkit::ImageView background = Toolkit::ImageView::New( BACKGROUND_IMAGE );
+    Stage::GetCurrent().Add( background );
+    background.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    background.SetAnchorPoint( AnchorPoint::CENTER );
+    background.SetParentOrigin( ParentOrigin::CENTER );
+
+    PopulatePages();
+
+    stage.Add( mScrollParent );
+
+    // Respond to a click anywhere on the stage.
+    stage.GetRootLayer().TouchSignal().Connect( this, &HomescreenBenchmark::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &HomescreenBenchmark::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // Quit the application.
+    mApplication.Quit();
+    return true;
+  }
+
+  Actor AddPage()
+  {
+    // Create root page actor.
+    Toolkit::Control pageActor;
+
+    if( mConfig.mTableViewEnabled )
+    {
+      pageActor = Toolkit::TableView::New( mConfig.mRows, mConfig.mCols );
+    }
+    else
+    {
+      pageActor = Toolkit::Control::New();
+    }
+
+    pageActor.SetBackgroundColor( Vector4( 0.0f, 0.0f, 0.0f, 0.5f ) );
+    pageActor.SetParentOrigin( ParentOrigin::CENTER );
+    pageActor.SetAnchorPoint( AnchorPoint::CENTER );
+    pageActor.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    pageActor.SetSizeModeFactor( Vector3( PAGE_SCALE_FACTOR_X, PAGE_SCALE_FACTOR_Y, 1.0f ) );
+    return pageActor;
+  }
+
+  Toolkit::ImageView CreateImageView( const unsigned int currentIconIndex )
+  {
+    // Create empty image to avoid early renderer creation
+    Toolkit::ImageView imageView = Toolkit::ImageView::New();
+
+    // Auto-generate the Icons image URL.
+    Property::Map map;
+    std::stringstream imagePath;
+    imagePath << IMAGE_PATH_PREFIX << currentIconIndex << IMAGE_PATH_POSTFIX;
+    map[ Dali::Toolkit::ImageVisual::Property::URL ] = imagePath.str();
+
+    imageView.SetProperty( Toolkit::ImageView::Property::IMAGE, map );
+    imageView.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    imageView.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+    imageView.SetAnchorPoint( AnchorPoint::CENTER );
+    imageView.SetParentOrigin( ParentOrigin::CENTER );
+    imageView.SetSizeModeFactor( Vector3( IMAGE_AREA, IMAGE_AREA, 1.0f ) );
+
+    return imageView;
+  }
+
+  Toolkit::Button CreateButton( const unsigned int currentIconIndex )
+  {
+    Toolkit::CheckBoxButton button = Toolkit::CheckBoxButton::New();
+    button.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    button.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+    button.SetAnchorPoint( AnchorPoint::CENTER );
+    button.SetParentOrigin( ParentOrigin::CENTER );
+    button.SetProperty( Toolkit::Button::Property::SELECTED, ( currentIconIndex % 2 == 0 ) ); // Select half the button
+
+    return button;
+  }
+
+  void AddIconsToPage( Actor page, bool useTextLabel )
+  {
+    Size stageSize( Stage::GetCurrent().GetSize() );
+    const float scaledHeight = stageSize.y * PAGE_SCALE_FACTOR_Y;
+    const float scaledWidth = stageSize.x * PAGE_SCALE_FACTOR_X;
+    const float PADDING = stageSize.y / 64.0f;
+    const float ROW_HEIGHT = ( scaledHeight - (PADDING*2.0f) ) / static_cast<float>( mConfig.mRows );
+    const float COL_WIDTH = ( scaledWidth - (PADDING*2.0f) ) / static_cast<float>( mConfig.mCols );
+
+    Vector2 dpi = Stage::GetCurrent().GetDpi();
+
+    static int currentIconIndex = 0;
+
+    for( int y = 0; y < mConfig.mRows; ++y )
+    {
+      for( int x = 0; x < mConfig.mCols; ++x )
+      {
+        // Create parent icon view
+        Toolkit::Control iconView = Toolkit::Control::New();
+        iconView.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+        iconView.SetParentOrigin( ParentOrigin::TOP_LEFT );
+
+        if( !mConfig.mTableViewEnabled )
+        {
+          float rowX = x * COL_WIDTH + PADDING;
+          float rowY = y * ROW_HEIGHT + PADDING;
+          iconView.SetSize( Vector3( COL_WIDTH, ROW_HEIGHT, 1.0f ) );
+          iconView.SetPosition( Vector3( rowX, rowY, 0.0f ) );
+        }
+        else
+        {
+          iconView.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+          iconView.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+        }
+
+        Actor icon;
+
+        switch( mConfig.mIconType )
+        {
+          case CHECKBOX:
+          {
+            icon = CreateButton( currentIconIndex );
+            break;
+          }
+          case IMAGEVIEW:
+          {
+            icon = CreateImageView( currentIconIndex );
+            break;
+          }
+        }
+
+        if( mConfig.mIconLabelsEnabled )
+        {
+          // create label
+          if( useTextLabel )
+          {
+            Toolkit::TextLabel textLabel = Toolkit::TextLabel::New( DEMO_APPS_NAMES[currentIconIndex] );
+            textLabel.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+            textLabel.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+            textLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+            textLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) ); // White.
+            textLabel.SetProperty( Toolkit::TextLabel::Property::POINT_SIZE, ( ( static_cast<float>( ROW_HEIGHT * LABEL_AREA ) * 72.0f )  / dpi.y ) * 0.25f );
+            textLabel.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+            textLabel.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "TOP" );
+            icon.Add( textLabel );
+          }
+          else
+          {
+            Property::Map map;
+            map.Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT ).
+              Add( Toolkit::TextVisual::Property::TEXT, DEMO_APPS_NAMES[currentIconIndex] ).
+              Add( Toolkit::TextVisual::Property::TEXT_COLOR, Color::WHITE ).
+              Add( Toolkit::TextVisual::Property::POINT_SIZE, ( ( static_cast<float>( ROW_HEIGHT * LABEL_AREA ) * 72.0f )  / dpi.y ) * 0.25f ).
+              Add( Toolkit::TextVisual::Property::HORIZONTAL_ALIGNMENT, "CENTER" ).
+              Add( Toolkit::TextVisual::Property::VERTICAL_ALIGNMENT, "TOP" );
+
+            Toolkit::Control control = Toolkit::Control::New();
+            control.SetProperty( Toolkit::Control::Property::BACKGROUND, map );
+            control.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+            control.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+            icon.Add( control );
+          }
+        }
+
+        iconView.Add( icon );
+        page.Add( iconView );
+
+        // We only have images and names for a certain number of icons.
+        // Wrap around if we have used them all.
+        if( ++currentIconIndex == TOTAL_ICON_DEFINITIONS )
+        {
+          currentIconIndex = 0;
+        }
+      }
+    }
+  }
+
+  void CreateScript()
+  {
+    const int lastPage = mConfig.mPageCount - 1;
+    const int halfA = lastPage / 2;
+    const int halfB = lastPage / 2 + lastPage % 2;
+    mScriptFrameData.push_back( ScriptData( lastPage,  1.5f, true  ) );
+    mScriptFrameData.push_back( ScriptData( -lastPage, 1.5f, true  ) );
+    mScriptFrameData.push_back( ScriptData( halfA,     1.0f, true  ) );
+    mScriptFrameData.push_back( ScriptData( halfB,     1.0f, true  ) );
+    mScriptFrameData.push_back( ScriptData( -lastPage, 0.5f, false ) );
+    mScriptFrameData.push_back( ScriptData( halfA,     0.5f, false ) );
+    mScriptFrameData.push_back( ScriptData( halfB,     1.0f, true  ) );
+    mScriptFrameData.push_back( ScriptData( -halfA,    1.0f, true  ) );
+    mScriptFrameData.push_back( ScriptData( 1,         0.1f, true  ) );
+    mScriptFrameData.push_back( ScriptData( -1,        0.1f, true  ) );
+    mScriptFrameData.push_back( ScriptData( 1,         0.1f, true  ) );
+    mScriptFrameData.push_back( ScriptData( -1,        0.1f, true  ) );
+    mScriptFrameData.push_back( ScriptData( 1,         0.1f, true  ) );
+    mScriptFrameData.push_back( ScriptData( -1,        0.1f, true  ) );
+    mScriptFrameData.push_back( ScriptData( halfA,     1.0f, true  ) );
+  }
+
+  void PopulatePages()
+  {
+    Vector3 stageSize( Stage::GetCurrent().GetSize() );
+
+    for( int i = 0; i < mConfig.mPageCount; ++i )
+    {
+      // Create page.
+      Actor page = AddPage();
+
+      // Populate icons.
+      AddIconsToPage( page, mConfig.mUseTextLabel );
+
+      // Move page 'a little bit up'.
+      page.SetParentOrigin( ParentOrigin::CENTER );
+      page.SetAnchorPoint( AnchorPoint::CENTER );
+      page.SetPosition( Vector3( stageSize.x * i, 0.0f, 0.0f ) );
+      mScrollParent.Add( page );
+    }
+
+    mScrollParent.SetOpacity( 1.0f );
+    mScrollParent.SetScale( Vector3::ONE );
+
+    // Fade in.
+    ShowAnimation();
+  }
+
+  void ShowAnimation()
+  {
+    mShowAnimation = Animation::New( 1.0f );
+    mShowAnimation.AnimateTo( Property( mScrollParent, Actor::Property::COLOR_ALPHA ), 1.0f, AlphaFunction::EASE_IN_OUT );
+    mShowAnimation.AnimateTo( Property( mScrollParent, Actor::Property::SCALE ), Vector3::ONE, AlphaFunction::EASE_IN_OUT );
+    mShowAnimation.FinishedSignal().Connect( this, &HomescreenBenchmark::OnAnimationEnd );
+    mShowAnimation.Play();
+  }
+
+  void ScrollPages(int pages, float duration, bool flick)
+  {
+    duration *= PAGE_DURATION_SCALE_FACTOR;
+    Vector3 stageSize( Stage::GetCurrent().GetSize() );
+    mScrollAnimation = Animation::New( duration );
+    if( flick )
+    {
+      mScrollAnimation.AnimateBy( Property( mScrollParent, Actor::Property::POSITION ), Vector3( -stageSize.x * pages, 0.0f, 0.0f ), AlphaFunction::EASE_IN_OUT );
+    }
+    else
+    {
+      int totalPages = abs( pages );
+      for( int i = 0; i < totalPages; ++i )
+      {
+        mScrollAnimation.AnimateBy( Property( mScrollParent, Actor::Property::POSITION ), Vector3( pages < 0 ? stageSize.x : -stageSize.x, 0.0f, 0.0f ), AlphaFunction::EASE_IN_OUT, TimePeriod( duration * i, duration ) );
+      }
+    }
+    mScrollAnimation.FinishedSignal().Connect( this, &HomescreenBenchmark::OnAnimationEnd );
+    mScrollAnimation.Play();
+    mCurrentPage += pages;
+  }
+
+  void OnAnimationEnd( Animation& source )
+  {
+    if( mScriptFrame < mScriptFrameData.size() )
+    {
+      ScriptData& frame = mScriptFrameData[mScriptFrame];
+      ScrollPages( frame.mPages, frame.mDuration, frame.mFlick );
+      ++mScriptFrame;
+    }
+    else
+    {
+      mApplication.Quit();
+    }
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&                mApplication;
+  Actor                       mScrollParent;
+  Animation                   mShowAnimation;
+  Animation                   mScrollAnimation;
+  Config                      mConfig;
+  std::vector<ScriptData>     mScriptFrameData;
+  size_t                      mScriptFrame;
+  int                         mCurrentPage;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  // Default settings.
+  HomescreenBenchmark::Config config;
+
+  bool printHelpAndExit = false;
+
+  for( int i = 1 ; i < argc; ++i )
+  {
+    std::string arg( argv[i] );
+    if( arg.compare( 0, 2, "-r" ) == 0 )
+    {
+      config.mRows = atoi( arg.substr( 2 ).c_str() );
+    }
+    else if( arg.compare( 0, 2, "-c" ) == 0 )
+    {
+      config.mCols = atoi( arg.substr( 2 ).c_str() );
+    }
+    else if( arg.compare( 0, 2, "-p" ) == 0 )
+    {
+      config.mPageCount = atoi( arg.substr( 2 ).c_str() );
+    }
+    else if( arg.compare( "--disable-tableview" ) == 0 )
+    {
+      config.mTableViewEnabled = false;
+    }
+    else if( arg.compare( "--disable-icon-labels" ) == 0 )
+    {
+      config.mIconLabelsEnabled = false;
+    }
+    else if( arg.compare( "--use-checkbox" ) == 0 )
+    {
+      config.mIconType = CHECKBOX;
+    }
+    else if( arg.compare("--use-text-label" ) == 0)
+    {
+      config.mUseTextLabel = true;
+    }
+    else if( arg.compare( "--help" ) == 0 )
+    {
+      printHelpAndExit = true;
+    }
+  }
+
+  Application application = Application::New( &argc, &argv );
+  HomescreenBenchmark test( application, config );
+
+  if( printHelpAndExit )
+  {
+    PrintHelp( "c<num>",               " Number of columns" );
+    PrintHelp( "r<num>",               " Number of rows" );
+    PrintHelp( "p<num>",               " Number of pages ( must be greater than 1 )" );
+    PrintHelp( "-disable-tableview",   " Disables the use of TableView for layouting" );
+    PrintHelp( "-disable-icon-labels", " Disables labels for each icon" );
+    PrintHelp( "-use-checkbox",        " Uses checkboxes for icons" );
+    PrintHelp( "-use-text-label",      " Uses TextLabel instead of a TextVisual" );
+    return 0;
+  }
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/image-policies/image-policies-example.cpp b/examples/image-policies/image-policies-example.cpp
new file mode 100644 (file)
index 0000000..65de171
--- /dev/null
@@ -0,0 +1,554 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <string>
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/visuals/image-visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-base.h>
+#include <dali-toolkit/devel-api/visuals/image-visual-properties-devel.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+const char* NEXT_BUTTON_IMAGE( DEMO_IMAGE_DIR "DarkStyleGreenArrowButton.png" );
+const char* NEXT_BUTTON_PRESSED_IMAGE( DEMO_IMAGE_DIR "DarkStyleGreyArrowButton.png" );
+const char* NEXT_BUTTON_DISABLED_IMAGE( DEMO_IMAGE_DIR "DarkStyleDisabledArrowButton.png" );
+const char* OK_IMAGE_IMAGE( DEMO_IMAGE_DIR "FontStyleButton_OK_02.png" );
+const char* LOADING_IMAGE( DEMO_IMAGE_DIR "animatedLoading.gif" );
+
+const char* IMAGE_PATH[] = {
+    DEMO_IMAGE_DIR "gallery-small-23.jpg",
+    DEMO_IMAGE_DIR "woodEffect.jpg",
+    DEMO_IMAGE_DIR "heartsframe.9.png",
+    DEMO_IMAGE_DIR "keyboard-Landscape.jpg",
+    DEMO_IMAGE_DIR "keyboard-LandscapeCopy.jpg",
+};
+
+/**
+ * Enums that refer to the row in the main table view.
+ * Aids in placement of content so easy to see which type of content belongs to each row.
+ */
+enum TableRowPlacement
+{
+  TITLE,
+  INSTRUCTIONS,
+  IMAGE,
+  NEXT_BUTTON,
+  LOADING_STATUS,
+  NUMBER_OF_ROWS
+};
+
+}  // namespace
+
+/**
+ * Examples showing the various polices of ImageVisual in use.
+ * image release polcy, image loading policy and exif data are currently demonstrated.
+ * Large images are used to cause loading time to be long enough to show differences.
+ * If hardware causes loading time improve then remote images or larger images may be required in future.
+ */
+class ImagePolicies: public ConnectionTracker
+{
+ public:
+
+  /**
+   * Constructor
+   */
+  ImagePolicies( Application& application )
+    : mApplication( application ),
+      mExampleIndex( 0 )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImagePolicies::Create );
+  }
+
+  /**
+   * To prevent the next button being pressed before an Image has loaded the Button can br disabled.
+   * This function allows the control (Image view in this case) to attached to the Image loading signal
+   * and re-enable the button after Image has loaded.
+   */
+  void ResourceReadySignal( Control control )
+  {
+    mNextButton.SetProperty( Button::Property::DISABLED, false );
+  }
+
+  /**
+   * Helper function to create ImageViews used by this example, preventing the duplication of code.
+   * param[in] correctionEnabled  Set true if Exif orientation correction should be applied.
+   * param[in] loadPolicy Which LoadPolicy to use.
+   * param[in] releasePolicy Which ReleasePolicy to use
+   * param[in] synchronousLoading If the Image should be loaded synchronously
+   * param[in] imageFilenameId Which image to load, referring to the array of filenames for this example.
+   * return An ImageView with the required set up
+   */
+  ImageView CreateImageView( bool correctionEnabled, ImageVisual::LoadPolicy::Type loadPolicy, ImageVisual::ReleasePolicy::Type releasePolicy, bool synchronousLoading, unsigned int imageFilenameId )
+  {
+    ImageView imageView = ImageView::New( );
+    Property::Map imagePropertyMap;
+    imagePropertyMap.Insert( Visual::Property::TYPE,  Visual::IMAGE );
+    imagePropertyMap.Insert( ImageVisual::Property::URL,  IMAGE_PATH[imageFilenameId ]  );
+    imagePropertyMap.Insert( ImageVisual::Property::ORIENTATION_CORRECTION, correctionEnabled  );
+    imagePropertyMap.Insert( ImageVisual::Property::LOAD_POLICY,  loadPolicy  );
+    imagePropertyMap.Insert( ImageVisual::Property::RELEASE_POLICY,  releasePolicy  );
+    if( synchronousLoading )
+    {
+      imagePropertyMap.Insert( DevelImageVisual::Property::SYNCHRONOUS_LOADING,  true  );
+    }
+    imageView.SetProperty(ImageView::Property::IMAGE , imagePropertyMap );
+
+    imageView.SetParentOrigin( ParentOrigin::CENTER );
+    imageView.SetAnchorPoint( AnchorPoint::CENTER );
+    imageView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    return imageView;
+  }
+
+
+  /**
+   * To prevent the next button being pressed before an Image has loaded the Button can br disabled.
+   * This function will disable the next button.
+   * Connecting to the ResourceReady signal with ( ResourceReadySignal( Control control ) ) will allow enabling of the button again.
+   */
+
+  void DisableButtonWhilstLoading()
+  {
+    mNextButton.SetProperty( Button::Property::DISABLED, true );
+  }
+
+  /**
+   * Example shows loading an Image with exif orientation data but not applying automatic orientation correction
+   */
+  void OrientationCorrectionExampleNoCorrection()
+  {
+
+    mTitle.SetProperty( Toolkit::TextLabel::Property::TEXT,  "Orientation Correction" );
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Orientation Correction not applied");
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+    DisableButtonWhilstLoading();
+    ImageView imageView01 = CreateImageView( false, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+
+    mTable.AddChild( imageView01, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+  }
+
+  /**
+   * Example shows loading an Image with exif orientation data and automatically correcting the orientation to match the exif data.
+   */
+  void OrientationCorrectionExampleWithCorrection()
+  {
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Orientation Correction applied based on Exif data, now shown in landscape");
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+    DisableButtonWhilstLoading();
+    ImageView imageView01 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+    mTable.AddChild( imageView01, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+  }
+
+  /**
+   * Part One of the Immediate loading example, displays instructions on what will be shown and starts loading of the Immediate image before it
+   * is staged.
+   */
+  void LoadPolicyImmediateExampleInstructions()
+  {
+    mTitle.SetProperty( Toolkit::TextLabel::Property::TEXT,  "Immediate Loading Policy");
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Loading Image before staging, press next to see it in right column");
+    TableView dualImageViewTable = TableView::New( 1, 2 );
+    dualImageViewTable.SetAnchorPoint( AnchorPoint::CENTER );
+    dualImageViewTable.SetName("dualTable");
+    dualImageViewTable.SetParentOrigin( ParentOrigin::CENTER );
+    dualImageViewTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    dualImageViewTable.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+    TextLabel attached = TextLabel::New("ATTACHED loaded image \nWill appear here");
+    attached.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    TextLabel immediate = TextLabel::New("IMMEDIATE loaded image \nWill appear here");
+    immediate.SetProperty( TextLabel::Property::MULTI_LINE, true );
+
+    dualImageViewTable.AddChild( attached, TableView::CellPosition( 0, 0 ) );
+    dualImageViewTable.AddChild( immediate, TableView::CellPosition( 0, 1 ) );
+    mTable.AddChild( dualImageViewTable, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+
+    DisableButtonWhilstLoading();
+    mPersistantImageView = CreateImageView( true, ImageVisual::LoadPolicy::IMMEDIATE, ImageVisual::ReleasePolicy::DESTROYED, false, 4 );
+    mPersistantImageView.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+  }
+
+  /**
+   * Part Two of the Immediate loading example and here the Image is staged, shown to be instant (if previously step gave enough time to load).
+   */
+  void LoadPolicyImmediateExample()
+  {
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Immediate loading policy on only second column hence image load was almost instant.");
+    DisableButtonWhilstLoading();
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+
+    TableView dualImageViewTable = TableView::New( 2, 2 );
+    dualImageViewTable.SetAnchorPoint( AnchorPoint::CENTER );
+    dualImageViewTable.SetName("dualTable");
+    dualImageViewTable.SetParentOrigin( ParentOrigin::CENTER );
+    dualImageViewTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    dualImageViewTable.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+    TextLabel attached = TextLabel::New("ATTACHED");
+    TextLabel immediate = TextLabel::New("IMMEDIATE");
+    dualImageViewTable.AddChild( attached, TableView::CellPosition( 1, 0 ) );
+    dualImageViewTable.AddChild( immediate, TableView::CellPosition( 1, 1 ) );
+    dualImageViewTable.SetFitHeight( 1 );
+
+    mTable.AddChild( dualImageViewTable, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+
+    ImageView imageView02 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView02.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+    dualImageViewTable.AddChild( imageView02, TableView::CellPosition( 0, 0 ) );
+    dualImageViewTable.AddChild( mPersistantImageView, TableView::CellPosition( 0, 1 ) );
+  }
+
+  /**
+   * Part one of an example of loading time when an Image is destroyed with the ReleasePolicy DESTROYED.
+   */
+  void LoadPolicyDestroyedExample()
+  {
+    mTitle.SetProperty( Toolkit::TextLabel::Property::TEXT, "Release Policy DESTROYED");
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+    mPersistantImageView.Reset();
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "ReleasePolicy::DESTROYED shown in first column, press next to destroy it.");
+    DisableButtonWhilstLoading();
+    TableView dualImageViewTable = TableView::New( 1, 2 );
+    dualImageViewTable.SetAnchorPoint( AnchorPoint::CENTER );
+    dualImageViewTable.SetParentOrigin( ParentOrigin::CENTER );
+    dualImageViewTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    dualImageViewTable.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+    mTable.AddChild( dualImageViewTable, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+
+    ImageView imageView01 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+
+    dualImageViewTable.AddChild( imageView01, TableView::CellPosition( 0, 0 ) );
+  }
+
+  /**
+   * Part two of the Destroyed example, the image is staged again but to the second column, it shows the loading takes the same amount of time as
+   * when first loaded.
+   */
+  void LoadPolicyDestroyedExample02()
+  {
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Destroyed first image and reloaded in second column (loading took some time)");
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+    DisableButtonWhilstLoading();
+    TableView dualImageViewTable = TableView::New( 1, 2 );
+    dualImageViewTable.SetAnchorPoint( AnchorPoint::CENTER );
+    dualImageViewTable.SetParentOrigin( ParentOrigin::CENTER );
+    dualImageViewTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    dualImageViewTable.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+    mTable.AddChild( dualImageViewTable, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+
+    ImageView imageView01 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+
+    dualImageViewTable.AddChild( imageView01, TableView::CellPosition( 0, 1 ) );
+  }
+
+  /**
+   * Part one the second Release policy example showing detachment of a visual with the Destroyed policy and loading instantly when re-used.
+   */
+  void ReleasePolicyDestroyedExample03()
+  {
+    mTitle.SetProperty( Toolkit::TextLabel::Property::TEXT, "Detaching with DESTROYED Policy");
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Image with ReleasePolicy::DESTROYED shown in first column, Image will be detached, reusing it will be fast");
+    DisableButtonWhilstLoading();
+    TableView dualImageViewTable = TableView::New( 1, 2 );
+    dualImageViewTable.SetAnchorPoint( AnchorPoint::CENTER );
+    dualImageViewTable.SetParentOrigin( ParentOrigin::CENTER );
+    dualImageViewTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    dualImageViewTable.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+    mTable.AddChild( dualImageViewTable, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+
+    ImageView imageView01 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+
+    dualImageViewTable.AddChild( imageView01, TableView::CellPosition( 0, 0 ) );
+  }
+
+  /**
+   * Second part of the second Release policy example, the detached visual is used again in the second column and shown nearly instantly.
+   */
+  void ReleasePolicyDestroyedExample04()
+  {
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Detached first image and reloaded in second column, loading should have seemed instant");
+    DisableButtonWhilstLoading();
+    TableView dualImageViewTable = TableView::DownCast( mTable.GetChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) ) );
+    ImageView imageViewDetached = ImageView::DownCast( dualImageViewTable.GetChildAt( TableView::CellPosition( 0, 0 ) ) );
+    dualImageViewTable.RemoveChildAt( TableView::CellPosition( 0, 0 ) );
+
+    ImageView imageView01 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+
+    dualImageViewTable.AddChild( imageView01, TableView::CellPosition( 0, 1 ) );
+  }
+
+  /**
+   * Part one of an example of loading time when an Image is detached with the ReleasePolicy Detached.
+   */
+  void ReleasePolicyDestroyedExample05()
+  {
+    mTitle.SetProperty( Toolkit::TextLabel::Property::TEXT, "Detaching with DETACHED Policy");
+    mTable.RemoveChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Image with ReleasePolicy::DETACHED shown in first column, will be detached and reloaded");
+    DisableButtonWhilstLoading();
+    TableView dualImageViewTable = TableView::New( 1, 2 );
+    dualImageViewTable.SetAnchorPoint( AnchorPoint::CENTER );
+    dualImageViewTable.SetParentOrigin( ParentOrigin::CENTER );
+    dualImageViewTable.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    dualImageViewTable.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+    mTable.AddChild( dualImageViewTable, TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) );
+
+    ImageView imageView01 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DETACHED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+
+    dualImageViewTable.AddChild( imageView01, TableView::CellPosition( 0, 0 ) );
+  }
+
+  /**
+   * Part two of the Detached example, the image is staged again but to the second column, it shows the loading takes the same amount of time as
+   * when first loaded.
+   */
+  void ReleasePolicyDestroyedExample06()
+  {
+    mInstructions.SetProperty( TextLabel::Property::TEXT, "Detached first image and reloaded in second column, loading took some time");
+    DisableButtonWhilstLoading();
+    TableView dualImageViewTable = TableView::DownCast( mTable.GetChildAt( TableView::CellPosition( TableRowPlacement::IMAGE, 0 ) ) );
+    ImageView imageViewDetached = ImageView::DownCast( dualImageViewTable.GetChildAt( TableView::CellPosition( 0, 0 ) ) );
+    dualImageViewTable.RemoveChildAt( TableView::CellPosition( 0, 0 ) );
+
+    ImageView imageView01 = CreateImageView( true, ImageVisual::LoadPolicy::ATTACHED, ImageVisual::ReleasePolicy::DESTROYED, false, 3 );
+    imageView01.ResourceReadySignal().Connect( this, &ImagePolicies::ResourceReadySignal );
+
+    dualImageViewTable.AddChild( imageView01, TableView::CellPosition( 0, 1 ) );
+  }
+
+  /**
+   * Created a gradient property map that will produce a Gradient Visual
+   * param[out] gradientMap the output property map
+   */
+  void CreateGradient( Property::Map& gradientMap )
+  {
+    gradientMap.Insert( Toolkit::Visual::Property::TYPE,  Visual::GRADIENT );
+
+    Property::Array stopOffsets;
+    stopOffsets.PushBack( 0.0f );
+    stopOffsets.PushBack( 0.6f );
+    stopOffsets.PushBack( 1.0f );
+    gradientMap.Insert( GradientVisual::Property::STOP_OFFSET, stopOffsets );
+
+    Property::Array stopColors;
+    stopColors.PushBack( Vector4( 54.f, 140.f, 207.f, 223.f )/255.f );
+    stopColors.PushBack( Vector4( 54.f, 170.f, 207.f, 123.f )/255.f );
+    stopColors.PushBack( Vector4( 54.f, 189.f, 207.f, 123.f )/255.f );
+    gradientMap.Insert( GradientVisual::Property::STOP_COLOR, stopColors );
+
+    gradientMap.Insert( GradientVisual::Property::START_POSITION, Vector2(  0.5f,  0.5f ) );
+    gradientMap.Insert( GradientVisual::Property::END_POSITION,  Vector2( -0.5f, -0.5f ) );
+  }
+
+  /**
+   * Start of this example, called once when the application is initiated
+   */
+  void Create( Application& application )
+  {
+    Property::Map gradientBackground;
+    CreateGradient( gradientBackground );
+
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+
+    // Create default View.
+    Toolkit::Control view = Toolkit::Control::New();
+    view.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+    view.SetParentOrigin( Dali::ParentOrigin::CENTER );
+    view.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+    view.SetProperty( Toolkit::Control::Property::BACKGROUND , gradientBackground );
+    stage.Add( view );
+
+    // Create a table view to show a pair of buttons above each image.
+    mTable = TableView::New( TableRowPlacement::NUMBER_OF_ROWS, 1 );
+    mTable.SetAnchorPoint( AnchorPoint::CENTER );
+    mTable.SetParentOrigin( ParentOrigin::CENTER );
+    mTable.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    Vector3 offset( 0.9f, 0.90f, 0.0f );
+    mTable.SetSizeModeFactor( offset );
+    mTable.SetFitHeight( TableRowPlacement::NEXT_BUTTON );
+    mTable.SetFitHeight( TableRowPlacement::LOADING_STATUS );
+    view.Add( mTable );
+
+    // Create Next button
+    mNextButton = PushButton::New();
+    Property::Map imagePropertyMap;
+    imagePropertyMap.Insert( Visual::Property::TYPE,  Visual::IMAGE );
+    imagePropertyMap.Insert( ImageVisual::Property::URL, NEXT_BUTTON_IMAGE );
+    mNextButton.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, imagePropertyMap );
+    imagePropertyMap.Clear();
+    imagePropertyMap.Insert( Visual::Property::TYPE,  Visual::IMAGE );
+    imagePropertyMap.Insert( ImageVisual::Property::URL, NEXT_BUTTON_PRESSED_IMAGE );
+    mNextButton.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, imagePropertyMap );
+    mNextButton.SetProperty( Button::Property::DISABLED_UNSELECTED_BACKGROUND_VISUAL, LOADING_IMAGE );
+    mNextButton.SetProperty( Button::Property::DISABLED_SELECTED_BACKGROUND_VISUAL, NEXT_BUTTON_DISABLED_IMAGE );
+    mNextButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mNextButton.SetY( -50.0f );
+    mNextButton.SetSize( 100.0f, 100.0f );
+    mNextButton.ClickedSignal().Connect( this, &ImagePolicies::ChangeImageClicked );
+    mTable.AddChild( mNextButton, TableView::CellPosition( TableRowPlacement::NEXT_BUTTON, 0 ) );
+    mTable.SetCellPadding( Vector2( 2.0f, 2.0f ) );
+
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &ImagePolicies::OnKeyEvent);
+
+    // Outline Map for Labels
+    Property::Map outlineMap;
+    outlineMap["color"] = Color::BLACK;
+    outlineMap["width"] = 1.0f;
+
+    // Create Title Label
+    mTitle  = TextLabel::New("Image Polices");
+    mTitle.SetProperty( TextLabel::Property::TEXT_COLOR, Color::CYAN );
+    mTable.AddChild( mTitle, TableView::CellPosition( TableRowPlacement::TITLE, 0 ) );
+    mTable.SetFitHeight( TableRowPlacement::TITLE );
+
+    // Create Instructions label
+    mInstructions = TextLabel::New("This is an explaination of each example");
+    mInstructions.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    mInstructions.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    mInstructions.SetProperty( TextLabel::Property::OUTLINE, outlineMap );
+    mInstructions.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mTable.AddChild( mInstructions, TableView::CellPosition( TableRowPlacement::INSTRUCTIONS, 0 ) );
+    float value = mInstructions.GetProperty<float>( TextLabel::Property::PIXEL_SIZE );
+    mTable.SetFixedHeight( TableRowPlacement::INSTRUCTIONS, value * 5 ); // Space allocated for example instructions
+
+    ChangeImageClicked( mNextButton );  // Start examples ( 0 )
+  }
+
+private:
+
+  /**
+   * Callback to the button clicked signal and starts the next example.
+   */
+  bool ChangeImageClicked( Button button )
+  {
+    switch ( mExampleIndex++ )
+    {
+      case 0 :
+      {
+        OrientationCorrectionExampleNoCorrection();
+        break;
+      }
+      case 1 :
+      {
+        OrientationCorrectionExampleWithCorrection();
+        break;
+      }
+      case 2 :
+      {
+        LoadPolicyImmediateExampleInstructions();
+        break;
+      }
+      case 3 :
+      {
+        LoadPolicyImmediateExample();
+        break;
+      }
+      case 4 :
+      {
+        LoadPolicyDestroyedExample();
+        break;
+      }
+      case 5 :
+      {
+        LoadPolicyDestroyedExample02();
+        break;
+      }
+      case 6 :
+      {
+        ReleasePolicyDestroyedExample03();
+        break;
+      }
+      case 7 :
+      {
+        ReleasePolicyDestroyedExample04();
+        break;
+      }
+      case 8 :
+      {
+        ReleasePolicyDestroyedExample05();
+        break;
+      }
+      case 9 :
+      {
+        ReleasePolicyDestroyedExample06();
+        // Change Next button to complete button ( will quit app once pressed )
+        button.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, OK_IMAGE_IMAGE );
+        button.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, OK_IMAGE_IMAGE );
+        break;
+      }
+      default:
+      {
+        mApplication.Quit();
+        break;
+      }
+    }
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application& mApplication;
+
+  TableView    mTable;
+  TextLabel    mInstructions;
+  TextLabel    mTitle;
+  PushButton   mNextButton;
+  ImageView    mPersistantImageView;
+
+  unsigned int mExampleIndex;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  ImagePolicies test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/image-scaling-and-filtering/image-scaling-and-filtering-example.cpp b/examples/image-scaling-and-filtering/image-scaling-and-filtering-example.cpp
new file mode 100644 (file)
index 0000000..cdd8ee6
--- /dev/null
@@ -0,0 +1,732 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+#include "shared/view.h"
+#include <iostream>
+
+using namespace Dali;
+using Toolkit::TextLabel;
+
+namespace
+{
+
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-gradient.jpg" );
+const Vector4 BACKGROUND_COLOUR( 1.0f, 1.0f, 1.0f, 0.15f );
+
+const char* BORDER_IMAGE( DEMO_IMAGE_DIR "border-4px.9.png" );
+const int BORDER_WIDTH = ( 11.0f + 4.0f ); // Shadow size = 11, border size = 4.
+const char* RESIZE_HANDLE_IMAGE( DEMO_IMAGE_DIR "resize-handle.png" );
+
+const int MARGIN_SIZE = 10;
+
+const char* const NEXT_BUTTON_ID = "NEXT_BUTTON";
+const char* const PREVIOUS_BUTTON_ID = "PREVIOUS_BUTTON";
+const char * const DALI_ICON_PLAY = DEMO_IMAGE_DIR "icon-play.png";
+
+const char* const FITTING_BUTTON_ID = "FITTING_BUTTON";
+const char* const SAMPLING_BUTTON_ID = "SAMPLING_BUTTON";
+const char* const FITTING_BUTTON_TEXT = "Fitting";
+const char* const SAMPLING_BUTTON_TEXT = "Sampling";
+
+const char* const STYLE_LABEL_TEXT  = "ImageScalingGroupLabel";
+const char* const STYLE_BUTTON_TEXT = "ImageScalingButton";
+
+const char* IMAGE_PATHS[] =
+{
+  // Variety of sizes, shapes and formats:
+  DEMO_IMAGE_DIR "dali-logo.png",
+  DEMO_IMAGE_DIR "layer1.png",
+  DEMO_IMAGE_DIR "layer2.png",
+  DEMO_IMAGE_DIR "animation-list.png",
+  DEMO_IMAGE_DIR "music-libray-main-screen.png",
+  DEMO_IMAGE_DIR "music-libray-record-cover.png",
+  DEMO_IMAGE_DIR "contacts-background.png",
+  DEMO_IMAGE_DIR "portrait_screen_primitive_shapes.gif",
+  DEMO_IMAGE_DIR "landscape_screen_primitive_shapes.gif",
+  DEMO_IMAGE_DIR "square_primitive_shapes.bmp",
+  DEMO_IMAGE_DIR "gallery-large-14.jpg",
+  DEMO_IMAGE_DIR "book-landscape-cover.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p1.jpg",
+  DEMO_IMAGE_DIR "book-landscape-cover-back.jpg",
+
+  // Worst case for aliasing in downscaling, 2k x 2k 1 bit per pixel dithered
+  // black and white image:
+  DEMO_IMAGE_DIR "gallery-large-14.wbmp",
+
+  DEMO_IMAGE_DIR "background-1.jpg",
+  DEMO_IMAGE_DIR "background-blocks.jpg",
+  DEMO_IMAGE_DIR "background-magnifier.jpg",
+  DEMO_IMAGE_DIR "gallery-large-14.jpg",
+  NULL
+};
+const int NUM_IMAGE_PATHS = sizeof(IMAGE_PATHS) / sizeof(IMAGE_PATHS[0]) - 1u;
+
+/** Cycle the scaling mode options. */
+FittingMode::Type NextScalingMode( FittingMode::Type oldMode )
+{
+  FittingMode::Type newMode = FittingMode::SHRINK_TO_FIT;
+  switch ( oldMode )
+  {
+    case FittingMode::SHRINK_TO_FIT:
+      newMode = FittingMode::SCALE_TO_FILL;
+      break;
+    case FittingMode::SCALE_TO_FILL:
+      newMode = FittingMode::FIT_WIDTH;
+      break;
+    case FittingMode::FIT_WIDTH:
+      newMode = FittingMode::FIT_HEIGHT;
+      break;
+    case FittingMode::FIT_HEIGHT:
+      newMode = FittingMode::SHRINK_TO_FIT;
+      break;
+  }
+  return newMode;
+}
+
+/** Cycle through filter mode options. */
+SamplingMode::Type NextFilterMode( SamplingMode::Type oldMode )
+{
+  SamplingMode::Type newMode = SamplingMode::BOX;
+
+  switch ( oldMode )
+  {
+    case SamplingMode::BOX:
+      newMode = SamplingMode::NEAREST;
+      break;
+    case SamplingMode::NEAREST:
+      newMode = SamplingMode::LINEAR;
+      break;
+    case SamplingMode::LINEAR:
+      newMode = SamplingMode::BOX_THEN_NEAREST;
+      break;
+    case SamplingMode::BOX_THEN_NEAREST:
+      newMode = SamplingMode::BOX_THEN_LINEAR;
+      break;
+    case SamplingMode::BOX_THEN_LINEAR:
+      newMode = SamplingMode::NO_FILTER;
+      break;
+    case SamplingMode::NO_FILTER:
+      newMode = SamplingMode::BOX;
+      break;
+    case SamplingMode::DONT_CARE:
+      newMode = SamplingMode::BOX;
+      break;
+  }
+  return newMode;
+}
+
+const char* StringFromScalingMode( FittingMode::Type scalingMode )
+{
+  return scalingMode == FittingMode::SCALE_TO_FILL ? "SCALE_TO_FILL" : scalingMode == FittingMode::SHRINK_TO_FIT ? "SHRINK_TO_FIT" : scalingMode == FittingMode::FIT_WIDTH ? "FIT_WIDTH" : scalingMode == FittingMode::FIT_HEIGHT ? "FIT_HEIGHT" : "UnknownScalingMode";
+}
+
+const char* StringFromFilterMode( SamplingMode::Type filterMode )
+{
+  return filterMode == SamplingMode::BOX ? "BOX" : filterMode == SamplingMode::BOX_THEN_NEAREST ? "BOX_THEN_NEAREST" : filterMode == SamplingMode::BOX_THEN_LINEAR ? "BOX_THEN_LINEAR" : filterMode == SamplingMode::NEAREST ? "NEAREST" : filterMode == SamplingMode::LINEAR ? "LINEAR" : filterMode == SamplingMode::NO_FILTER ? "NO_FILTER" : filterMode == SamplingMode::DONT_CARE ? "DONT_CARE" : "UnknownFilterMode";
+}
+
+}
+
+// This example shows the load-time image scaling and filtering features.
+//
+class ImageScalingAndFilteringController : public ConnectionTracker
+{
+public:
+
+  ImageScalingAndFilteringController( Application& application )
+  : mApplication( application ),
+    mLastPinchScale( 1.0f ),
+    mImageStageScale( 0.5f, 0.5f ),
+    mCurrentPath( 0 ),
+    mFittingMode( FittingMode::FIT_WIDTH ),
+    mSamplingMode( SamplingMode::BOX_THEN_LINEAR),
+    mImageLoading( false ),
+    mQueuedImageLoad( false )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageScalingAndFilteringController::Create );
+  }
+
+  ~ImageScalingAndFilteringController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Background image:
+    Dali::Property::Map backgroundImage;
+    backgroundImage.Insert( Toolkit::Visual::Property::TYPE,  Toolkit::Visual::IMAGE );
+    backgroundImage.Insert( Toolkit::ImageVisual::Property::URL,  BACKGROUND_IMAGE );
+    backgroundImage.Insert( Toolkit::ImageVisual::Property::DESIRED_WIDTH, stage.GetSize().width );
+    backgroundImage.Insert( Toolkit::ImageVisual::Property::DESIRED_HEIGHT, stage.GetSize().height );
+    backgroundImage.Insert( Toolkit::ImageVisual::Property::FITTING_MODE,   FittingMode::SCALE_TO_FILL );
+    backgroundImage.Insert( Toolkit::ImageVisual::Property::SAMPLING_MODE,   SamplingMode::BOX_THEN_NEAREST );
+
+    Toolkit::ImageView background = Toolkit::ImageView::New();
+    background.SetProperty( Toolkit::ImageView::Property::IMAGE, backgroundImage );
+    background.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    background.SetSize( stage.GetSize() );
+    stage.Add( background );
+
+    BufferImage heightBackground = BufferImage::WHITE();
+    PixelBuffer* const heightPixel = heightBackground.GetBuffer();
+    heightPixel[0] = 0x8f;
+    heightPixel[1] = 0x8f;
+    heightPixel[2] = 0x8f;
+
+    BufferImage widthBackground = BufferImage::WHITE();
+    PixelBuffer* const widthPixel = widthBackground.GetBuffer();
+    widthPixel[0] = 0x4f;
+    widthPixel[1] = 0x4f;
+    widthPixel[2] = 0x4f;
+
+    mHeightBox = Toolkit::ImageView::New( heightBackground );
+    mHeightBox.SetOpacity( 0.2f );
+    background.Add( mHeightBox );
+
+    mWidthBox = Toolkit::ImageView::New( widthBackground );
+    mWidthBox.SetOpacity( 0.2f );
+    background.Add( mWidthBox );
+
+    mDesiredBox = Toolkit::ImageView::New( BORDER_IMAGE );
+    background.Add( mDesiredBox );
+
+    mDesiredBox.SetSize( stage.GetSize() * mImageStageScale );
+    mDesiredBox.SetParentOrigin( ParentOrigin::CENTER );
+    mDesiredBox.SetAnchorPoint( AnchorPoint::CENTER );
+
+    mHeightBox.SetSize( stage.GetSize().width,  (stage.GetSize() * mImageStageScale).height );
+    mHeightBox.SetParentOrigin( ParentOrigin::CENTER );
+    mHeightBox.SetAnchorPoint( AnchorPoint::CENTER );
+
+    mWidthBox.SetSize( (stage.GetSize() * mImageStageScale).width, stage.GetSize().height );
+    mWidthBox.SetParentOrigin( ParentOrigin::CENTER );
+    mWidthBox.SetAnchorPoint( AnchorPoint::CENTER );
+
+    // Initialize the actor
+    mImageView = Toolkit::ImageView::New( IMAGE_PATHS[ 0 ] );
+
+    // Reposition the actor
+    mImageView.SetParentOrigin( ParentOrigin::CENTER );
+    mImageView.SetAnchorPoint( AnchorPoint::CENTER );
+
+    // Display the actor on the stage
+    mDesiredBox.Add( mImageView );
+
+    mImageView.SetSize( stage.GetSize() * mImageStageScale );
+
+    // Setup the pinch detector for scaling the desired image load dimensions:
+    mPinchDetector = PinchGestureDetector::New();
+    mPinchDetector.Attach( mImageView );
+    mPinchDetector.DetectedSignal().Connect( this, &ImageScalingAndFilteringController::OnPinch );
+
+    mGrabCorner = Toolkit::ImageView::New( RESIZE_HANDLE_IMAGE );
+    mGrabCorner.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mGrabCorner.SetName( "GrabCorner" );
+    mGrabCorner.SetAnchorPoint( AnchorPoint::BOTTOM_RIGHT );
+    mGrabCorner.SetParentOrigin( ParentOrigin::BOTTOM_RIGHT );
+    mGrabCorner.SetPosition( -BORDER_WIDTH, -BORDER_WIDTH );
+    mGrabCorner.SetOpacity( 0.6f );
+
+    Layer grabCornerLayer = Layer::New();
+    grabCornerLayer.SetAnchorPoint( AnchorPoint::BOTTOM_RIGHT );
+    grabCornerLayer.SetParentOrigin( ParentOrigin::BOTTOM_RIGHT );
+    grabCornerLayer.Add( mGrabCorner );
+    mDesiredBox.Add( grabCornerLayer );
+
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.Attach( mGrabCorner );
+    mPanGestureDetector.DetectedSignal().Connect( this, &ImageScalingAndFilteringController::OnPan );
+
+    // Tie-in input event handlers:
+    stage.KeyEventSignal().Connect( this, &ImageScalingAndFilteringController::OnKeyEvent );
+
+    CreateControls();
+
+    ResizeImage();
+  }
+
+  /**
+   * Create the GUI controls which float above the scene
+   */
+  void CreateControls()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    Dali::Layer controlsLayer = Dali::Layer::New();
+    controlsLayer.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    controlsLayer.SetSizeModeFactor( Vector3( 1.0f, 1.0f, 1.0f ) );
+    controlsLayer.SetAnchorPoint( AnchorPoint::TOP_LEFT);
+    controlsLayer.SetParentOrigin( ParentOrigin::TOP_LEFT);
+    stage.Add( controlsLayer );
+
+    // Back and next image buttons in corners of stage:
+    unsigned int playWidth = std::min( stage.GetSize().x * (1 / 5.0f), 58.0f );
+    Toolkit::ImageView imagePrevious = Toolkit::ImageView::New( DALI_ICON_PLAY, ImageDimensions( playWidth, playWidth ) );
+
+    // Last image button:
+    imagePrevious.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    imagePrevious.RotateBy( Radian(3.14159265358979323846f), Vector3( 0, 1.0f, 0 ) );
+    imagePrevious.SetY( playWidth * 0.5f );
+    imagePrevious.SetX( playWidth + playWidth * 0.5f );
+    imagePrevious.SetOpacity( 0.6f );
+    controlsLayer.Add( imagePrevious );
+    imagePrevious.SetName( PREVIOUS_BUTTON_ID );
+    imagePrevious.TouchSignal().Connect( this, &ImageScalingAndFilteringController::OnControlTouched );
+
+    // Next image button:
+    Toolkit::ImageView imageNext = Toolkit::ImageView::New( DALI_ICON_PLAY, ImageDimensions( playWidth, playWidth ) );
+    imageNext.SetAnchorPoint( AnchorPoint::TOP_RIGHT );
+    imageNext.SetY( playWidth * 0.5f );
+    imageNext.SetX( stage.GetSize().x - playWidth * 0.5f );
+    imageNext.SetOpacity( 0.6f );
+    controlsLayer.Add( imageNext );
+    imageNext.SetName( NEXT_BUTTON_ID );
+    imageNext.TouchSignal().Connect( this, &ImageScalingAndFilteringController::OnControlTouched );
+
+    // Buttons to popup selectors for fitting and sampling modes:
+
+    // Wrapper table to hold two buttons side by side:
+    Toolkit::TableView modesGroupBackground = Toolkit::TableView::New( 1, 2 );
+    modesGroupBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    modesGroupBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    modesGroupBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+    modesGroupBackground.SetCellPadding( Size( MARGIN_SIZE * 0.5f, MARGIN_SIZE ) );
+    modesGroupBackground.SetFitHeight( 0 );
+
+    modesGroupBackground.SetAnchorPoint( AnchorPoint::BOTTOM_LEFT );
+    modesGroupBackground.SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
+    modesGroupBackground.SetPosition( 0.0f, 0.0f );
+
+    controlsLayer.Add( modesGroupBackground );
+
+    {
+      // Vertical table to hold label and button:
+      Toolkit::TableView fittingModeGroup = Toolkit::TableView::New( 2, 1 );
+      fittingModeGroup.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      fittingModeGroup.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      fittingModeGroup.SetBackgroundColor( BACKGROUND_COLOUR );
+      fittingModeGroup.SetCellPadding( Size( MARGIN_SIZE * 0.5f, MARGIN_SIZE * 0.5f ) );
+      fittingModeGroup.SetFitHeight( 0 );
+      fittingModeGroup.SetFitHeight( 1 );
+
+      TextLabel label = TextLabel::New( "Image fitting mode:" );
+      label.SetStyleName( STYLE_LABEL_TEXT );
+      fittingModeGroup.Add( label );
+
+      Toolkit::PushButton button = CreateButton( FITTING_BUTTON_ID, StringFromScalingMode( mFittingMode ) );
+      fittingModeGroup.Add( button );
+      mFittingModeButton = button;
+
+      modesGroupBackground.Add( fittingModeGroup );
+    }
+
+    {
+      // Vertical table to hold label and button:
+      Toolkit::TableView samplingModeGroup = Toolkit::TableView::New( 2, 1 );
+      samplingModeGroup.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      samplingModeGroup.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      samplingModeGroup.SetBackgroundColor( BACKGROUND_COLOUR );
+      samplingModeGroup.SetCellPadding( Size( MARGIN_SIZE * 0.5f, MARGIN_SIZE * 0.5f ) );
+      samplingModeGroup.SetFitHeight( 0 );
+      samplingModeGroup.SetFitHeight( 1 );
+
+      TextLabel label = TextLabel::New( "Image sampling mode:" );
+      label.SetStyleName( STYLE_LABEL_TEXT );
+      samplingModeGroup.Add( label );
+
+      Toolkit::PushButton button = CreateButton( SAMPLING_BUTTON_ID, StringFromFilterMode( mSamplingMode ) );
+      samplingModeGroup.Add( button );
+      mSamplingModeButton = button;
+
+      modesGroupBackground.Add( samplingModeGroup );
+    }
+  }
+
+  Toolkit::PushButton CreateButton( const char * id, const char * label )
+  {
+    Toolkit::PushButton button = Toolkit::PushButton::New();
+    button.SetStyleName( STYLE_BUTTON_TEXT );
+    button.SetName( id );
+    button.SetProperty( Toolkit::Button::Property::LABEL, label );
+    button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    button.ClickedSignal().Connect( this, &ImageScalingAndFilteringController::OnButtonClicked );
+    return button;
+  }
+
+  Toolkit::Popup CreatePopup()
+  {
+    Stage stage = Stage::GetCurrent();
+    const float POPUP_WIDTH_DP = stage.GetSize().width * 0.75f;
+
+    Toolkit::Popup popup = Toolkit::Popup::New();
+    popup.SetName( "POPUP" );
+    popup.SetParentOrigin( ParentOrigin::CENTER );
+    popup.SetAnchorPoint( AnchorPoint::CENTER );
+    popup.SetSize( POPUP_WIDTH_DP, 0.0f );
+
+    popup.OutsideTouchedSignal().Connect( this, &ImageScalingAndFilteringController::OnPopupOutsideTouched );
+
+    return popup;
+  }
+
+  Toolkit::PushButton CreatePopupButton( Actor parent, const char* id )
+  {
+    Toolkit::PushButton button = Toolkit::PushButton::New();
+    button.SetName( id );
+    button.SetProperty( Toolkit::Button::Property::LABEL, id );
+
+    button.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    button.SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
+    button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+
+    button.ClickedSignal().Connect( this, &ImageScalingAndFilteringController::OnButtonClicked );
+
+    parent.Add( button );
+    return button;
+  }
+
+  bool OnButtonClicked( Toolkit::Button button )
+  {
+    if( button.GetName() == FITTING_BUTTON_ID )
+    {
+      mPopup = CreatePopup();
+
+      // Four-row table to hold buttons:
+      Toolkit::TableView fittingModes = Toolkit::TableView::New( 4, 1 );
+      fittingModes.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      fittingModes.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      fittingModes.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE * 0.5 ) );
+      fittingModes.SetFitHeight( 0 );
+      fittingModes.SetFitHeight( 1 );
+      fittingModes.SetFitHeight( 2 );
+      fittingModes.SetFitHeight( 3 );
+
+      CreatePopupButton( fittingModes, StringFromScalingMode( FittingMode::SCALE_TO_FILL ) );
+      CreatePopupButton( fittingModes, StringFromScalingMode( FittingMode::SHRINK_TO_FIT ) );
+      CreatePopupButton( fittingModes, StringFromScalingMode( FittingMode::FIT_WIDTH ) );
+      CreatePopupButton( fittingModes, StringFromScalingMode( FittingMode::FIT_HEIGHT ) );
+
+      mPopup.SetContent( fittingModes );
+      Stage::GetCurrent().Add( mPopup );
+      mPopup.SetDisplayState( Toolkit::Popup::SHOWN );
+    }
+    else if( button.GetName() == SAMPLING_BUTTON_ID )
+    {
+      mPopup = CreatePopup();
+
+      // Table to hold buttons for each sampling mode:
+      Toolkit::TableView samplingModes = Toolkit::TableView::New( 6, 1 );
+      samplingModes.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      samplingModes.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      samplingModes.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE * 0.5 ) );
+      samplingModes.SetFitHeight( 0 );
+      samplingModes.SetFitHeight( 1 );
+      samplingModes.SetFitHeight( 2 );
+      samplingModes.SetFitHeight( 3 );
+      samplingModes.SetFitHeight( 4 );
+      samplingModes.SetFitHeight( 5 );
+
+      CreatePopupButton( samplingModes, StringFromFilterMode( SamplingMode::NEAREST ) );
+      CreatePopupButton( samplingModes, StringFromFilterMode( SamplingMode::LINEAR ) );
+      CreatePopupButton( samplingModes, StringFromFilterMode( SamplingMode::BOX ) );
+      CreatePopupButton( samplingModes, StringFromFilterMode( SamplingMode::BOX_THEN_NEAREST ) );
+      CreatePopupButton( samplingModes, StringFromFilterMode( SamplingMode::BOX_THEN_LINEAR ) );
+      CreatePopupButton( samplingModes, StringFromFilterMode( SamplingMode::NO_FILTER ) );
+
+      mPopup.SetContent( samplingModes );
+      Stage::GetCurrent().Add( mPopup );
+      mPopup.SetDisplayState( Toolkit::Popup::SHOWN );
+    }
+    else if( CheckFittingModeButton( button, FittingMode::SCALE_TO_FILL) ||
+             CheckFittingModeButton( button, FittingMode::SHRINK_TO_FIT) ||
+             CheckFittingModeButton( button, FittingMode::FIT_WIDTH) ||
+             CheckFittingModeButton( button, FittingMode::FIT_HEIGHT) )
+    {
+    }
+    else if( CheckSamplingModeButton( button, SamplingMode::NEAREST ) ||
+             CheckSamplingModeButton( button, SamplingMode::LINEAR ) ||
+             CheckSamplingModeButton( button, SamplingMode::BOX ) ||
+             CheckSamplingModeButton( button, SamplingMode::LINEAR ) ||
+             CheckSamplingModeButton( button, SamplingMode::BOX_THEN_NEAREST ) ||
+             CheckSamplingModeButton( button, SamplingMode::BOX_THEN_LINEAR ) ||
+             CheckSamplingModeButton( button, SamplingMode::NO_FILTER ) )
+    {
+    }
+    return true;
+  }
+
+  bool CheckFittingModeButton( Actor &button, FittingMode::Type mode )
+  {
+    const char * const modeName = StringFromScalingMode( mode );
+    if( button.GetName() == modeName )
+    {
+      mFittingMode = mode;
+      mFittingModeButton.SetProperty( Toolkit::Button::Property::LABEL, modeName );
+      ResizeImage();
+      mPopup.SetDisplayState( Toolkit::Popup::HIDDEN );
+      mPopup.Reset();
+      return true;
+    }
+    return false;
+  }
+
+  bool CheckSamplingModeButton( Actor &button, SamplingMode::Type mode )
+  {
+    const char * const modeName = StringFromFilterMode( mode );
+    if( button.GetName() == modeName )
+    {
+      mSamplingMode = mode;
+      mSamplingModeButton.SetProperty( Toolkit::Button::Property::LABEL, modeName );
+      ResizeImage();
+      mPopup.SetDisplayState( Toolkit::Popup::HIDDEN );
+      mPopup.Reset();
+      return true;
+    }
+    return false;
+  }
+
+  void OnPopupOutsideTouched()
+  {
+    if( mPopup )
+    {
+      mPopup.SetDisplayState( Toolkit::Popup::HIDDEN );
+      mPopup.Reset();
+    }
+  }
+
+  bool OnControlTouched( Actor actor, const TouchData& event )
+  {
+    if(event.GetPointCount() > 0)
+    {
+      switch( event.GetState( 0 ) )
+      {
+        case PointState::UP:
+        {
+          const std::string & name = actor.GetName();
+          if( name == NEXT_BUTTON_ID )
+          {
+            mCurrentPath = mCurrentPath + 1;
+            mCurrentPath = mCurrentPath <  NUM_IMAGE_PATHS ? mCurrentPath : 0;
+            ResizeImage();
+          }
+          else if( name == PREVIOUS_BUTTON_ID )
+          {
+            mCurrentPath = mCurrentPath - 1;
+            mCurrentPath = mCurrentPath >= 0 ? mCurrentPath : NUM_IMAGE_PATHS - 1;
+            ResizeImage();
+          }
+          break;
+        }
+        default:
+        {
+          break;
+        }
+      } // end switch
+    }
+
+    return false;
+  }
+
+  void OnPinch( Actor actor, const PinchGesture& pinch )
+  {
+    if( pinch.state == Gesture::Started )
+    {
+      mLastPinchScale = pinch.scale;
+    }
+    const float scale = pinch.scale;
+
+    if( ! Equals( scale, mLastPinchScale ) )
+    {
+      if ( scale < mLastPinchScale )
+      {
+        mImageStageScale.x = std::max( 0.05f, mImageStageScale.x * 0.9f );
+        mImageStageScale.y = std::max( 0.05f, mImageStageScale.y * 0.9f );
+      }
+      else
+      {
+        mImageStageScale.x = std::max( 0.05f, std::min( 1.0f, mImageStageScale.x * 1.1f ) );
+        mImageStageScale.y = std::max( 0.05f, std::min( 1.0f, mImageStageScale.y * 1.1f ) );
+      }
+      ResizeImage();
+    }
+    mLastPinchScale = scale;
+  }
+
+  void OnPan( Actor actor, const PanGesture& gesture )
+  {
+    Stage stage = Stage::GetCurrent();
+    // 1.0f and 0.75f are the maximum size caps of the resized image, as a factor of stage-size.
+    mImageStageScale.x = std::max( 0.05f, std::min( 0.95f,  mImageStageScale.x + ( gesture.displacement.x * 2.0f / stage.GetSize().width ) ) );
+    mImageStageScale.y = std::max( 0.05f, std::min( 0.70f, mImageStageScale.y + ( gesture.displacement.y * 2.0f / stage.GetSize().height ) ) );
+
+    ResizeImage();
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        if( mPopup && mPopup.IsVisible() )
+        {
+          mPopup.SetDisplayState( Toolkit::Popup::HIDDEN );
+          mPopup.Reset();
+        }
+        else
+        {
+          mApplication.Quit();
+        }
+      }
+      else if ( event.keyPressedName == "Right" )
+      {
+        mImageStageScale.x = std::max( 0.05f, std::min( 1.0f, mImageStageScale.x * 1.1f ) );
+      }
+      else if ( event.keyPressedName == "Left" )
+      {
+        mImageStageScale.x = std::max( 0.05f, mImageStageScale.x * 0.9f );
+      }
+      else if ( event.keyPressedName == "Up" )
+      {
+        mImageStageScale.y = std::max( 0.05f, std::min( 1.0f, mImageStageScale.y * 1.1f ) );
+      }
+      else if ( event.keyPressedName == "Down" )
+      {
+        mImageStageScale.y = std::max( 0.05f, mImageStageScale.y * 0.9f );
+      }
+      else if ( event.keyPressedName == "o" )
+      {
+        mImageStageScale.x = std::max( 0.05f, mImageStageScale.x * 0.9f );
+        mImageStageScale.y = std::max( 0.05f, mImageStageScale.y * 0.9f );
+      }
+      else if ( event.keyPressedName == "p" )
+      {
+        mImageStageScale.x = std::max( 0.05f, std::min( 1.0f, mImageStageScale.x * 1.1f ) );
+        mImageStageScale.y = std::max( 0.05f, std::min( 1.0f, mImageStageScale.y * 1.1f ) );
+      }
+      else if ( event.keyPressedName == "n" )
+      {
+        mCurrentPath = mCurrentPath + 1;
+        mCurrentPath = mCurrentPath <  NUM_IMAGE_PATHS ? mCurrentPath : 0;
+      }
+      else if ( event.keyPressedName == "b" )
+      {
+        mCurrentPath = mCurrentPath - 1;
+        mCurrentPath = mCurrentPath >= 0 ? mCurrentPath : NUM_IMAGE_PATHS - 1;
+      }
+      // Cycle filter and scaling modes:
+      else if ( event.keyPressedName == "f" )
+      {
+        mSamplingMode = NextFilterMode( mSamplingMode );
+        mSamplingModeButton.SetProperty( Toolkit::Button::Property::LABEL, StringFromFilterMode( mSamplingMode ) );
+      }
+      // Cycle filter and scaling modes:
+      else if ( event.keyPressedName == "s" )
+      {
+        mFittingMode = NextScalingMode( mFittingMode );
+        mFittingModeButton.SetProperty( Toolkit::Button::Property::LABEL, StringFromScalingMode( mFittingMode ) );
+      }
+      else
+      {
+        return;
+      }
+
+      ResizeImage();
+    }
+  }
+
+private:
+
+  void LoadImage()
+  {
+    mImageLoading = true;
+
+    const char * const path = IMAGE_PATHS[ mCurrentPath ];
+    Stage stage = Stage::GetCurrent();
+    Size imageSize = stage.GetSize() * mImageStageScale;
+    mImageView.SetSize( imageSize );
+
+    Property::Map map;
+    map[Toolkit::ImageVisual::Property::URL] = path;
+    map[Toolkit::ImageVisual::Property::DESIRED_WIDTH] = imageSize.x;
+    map[Toolkit::ImageVisual::Property::DESIRED_HEIGHT] = imageSize.y;
+    map[Toolkit::ImageVisual::Property::FITTING_MODE] = mFittingMode;
+    map[Toolkit::ImageVisual::Property::SAMPLING_MODE] = mSamplingMode;
+
+    mImageView.SetProperty( Toolkit::ImageView::Property::IMAGE, map );
+
+  }
+
+  void ResizeImage()
+  {
+
+    Stage stage = Stage::GetCurrent();
+    Size imageSize = stage.GetSize() * mImageStageScale;
+
+    LoadImage();
+
+    // Border size needs to be modified to take into account the width of the frame.
+    Vector2 borderScale( ( imageSize + Vector2( BORDER_WIDTH * 2.0f, BORDER_WIDTH * 2.0f ) ) / stage.GetSize() );
+    mDesiredBox.SetSize( stage.GetSize() * borderScale );
+
+    mHeightBox.SetSize( stage.GetSize().width, (stage.GetSize() * mImageStageScale).height );
+    mWidthBox.SetSize( (stage.GetSize() * mImageStageScale).width, stage.GetSize().height );
+  }
+
+private:
+  Application&  mApplication;
+  Toolkit::ImageView mDesiredBox; //< Background rectangle to show requested image size.
+  Toolkit::ImageView mHeightBox;  //< Background horizontal stripe to show requested image height.
+  Toolkit::ImageView mWidthBox;   //< Background vertical stripe to show requested image width.
+  Toolkit::PushButton mFittingModeButton;
+  Toolkit::PushButton mSamplingModeButton;
+  Toolkit::Popup mPopup;
+  PinchGestureDetector mPinchDetector;
+  float mLastPinchScale;
+  Toolkit::ImageView mGrabCorner;
+  PanGestureDetector mPanGestureDetector;
+  Toolkit::ImageView mImageView;
+  Vector2 mImageStageScale;
+  int mCurrentPath;
+  FittingMode::Type mFittingMode;
+  SamplingMode::Type mSamplingMode;
+  bool mImageLoading;
+  bool mQueuedImageLoad;
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  ImageScalingAndFilteringController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/image-scaling-irregular-grid/grid-flags.h b/examples/image-scaling-irregular-grid/grid-flags.h
new file mode 100644 (file)
index 0000000..1c151cc
--- /dev/null
@@ -0,0 +1,204 @@
+#ifndef DALI_DEMO_GRID_FLAGS_H
+#define DALI_DEMO_GRID_FLAGS_H
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+#include <algorithm>
+#include <cassert>
+#include <dali/dali.h>
+
+/** Controls the output of application logging. */
+//#define DEBUG_PRINT_GRID_DIAGNOSTICS
+
+namespace Dali
+{
+namespace Demo
+{
+/**
+ * @brief A 2D grid of booleans, settable and gettable via integer (x,y) coordinates.
+ * */
+class GridFlags
+{
+public:
+  /**
+   * Create grid of specified dimensions.
+   */
+  GridFlags( unsigned width, unsigned height ) :  mCells( width * height ), mWidth( width ), mHeight( height ), mHighestUsedRow( 0 )
+  {
+#ifdef DEBUG_PRINT_GRID_DIAGNOSTICS
+      fprintf(stderr, "Grid created with dimensions: (%u, %u).\n", mWidth, mHeight );
+#endif
+  }
+
+  void Set( const unsigned x, const unsigned y )
+  {
+    const unsigned index = CellIndex( x, y );
+    mCells[index] += 1u; ///< += To allow a debug check of the number of times a cell is set.
+    mHighestUsedRow = std::max( mHighestUsedRow, y );
+  }
+
+  bool Get( unsigned x, unsigned y ) const
+  {
+    return mCells[ CellIndex( x, y ) ] != 0;
+  }
+
+  unsigned GetHighestUsedRow() const
+  {
+    return mHighestUsedRow;
+  }
+
+  /**
+   * @brief Try to find space in a grid of cells for the region requested.
+   * @return true if any region (not necessarily an exact match) was found, else false.
+   * @param[in] region The rectangular region requested
+   * @param[out] outCellX The X coordinate of the region allocated, if any.
+   * @param[out] outCellY The Y coordinate of the region allocated, if any.
+   * @param[out] outRegion The rectangle actually found: the lowest-Y exact match region
+   *             or the largest area rectangular region no greater than the requested
+   *             region in x or y. Undefined if false is returned.
+   */
+  bool AllocateRegion( const Vector2& region, unsigned& outCellX, unsigned& outCellY, Vector2& outRegion )
+  {
+    const unsigned regionWidth = (region.x + 0.5f);
+    const unsigned regionHeight = (region.y + 0.5f);
+#ifdef DEBUG_PRINT_GRID_DIAGNOSTICS
+      fprintf( stderr, "Allocation requested for region (%u, %u). Result: ", regionWidth, regionHeight );
+#endif
+    unsigned bestRegionWidth = 0;
+    unsigned bestRegionHeight = 0;
+    unsigned bestCellX = 0;
+    unsigned bestCellY = 0;
+
+    // Look for a non-set cell:
+    for( unsigned y = 0; y < mHeight; ++y )
+    {
+      for( unsigned x = 0; x < mWidth; ++x )
+      {
+        if ( !Get( x, y) )
+        {
+          // Look for clear grid cells under the desired region:
+
+          const unsigned clampedRegionHeight = std::min( regionHeight, mHeight - y);
+          const unsigned clampedRegionWidth = std::min( regionWidth, mWidth - x);
+          const unsigned regionLimitY = y + clampedRegionHeight;
+          const unsigned regionLimitX = x + clampedRegionWidth;
+
+          for( unsigned regionY = y; regionY < regionLimitY; ++regionY )
+          {
+            for( unsigned regionX = x; regionX < regionLimitX; ++regionX )
+            {
+              if( Get( regionX, regionY ) )
+              {
+                // The region of clear cells is not big enough but remember it
+                // anyway in case there is no region that fits:
+                const unsigned clearRegionWidth = regionX - x;
+                const unsigned clearRegionHeight = (regionY + 1) - y;
+                if( clearRegionWidth * clearRegionHeight > bestRegionWidth * bestRegionHeight )
+                {
+                  bestCellX = x;
+                  bestCellY = y;
+                  bestRegionWidth = clearRegionWidth;
+                  bestRegionHeight = clearRegionHeight;
+                }
+                goto whole_region_not_found;
+              }
+            }
+          }
+
+          // Every cell in the region is clear so check if it is the best one yet:
+          if( clampedRegionWidth * clampedRegionHeight > bestRegionWidth * bestRegionHeight )
+          {
+            bestCellX = x;
+            bestCellY = y;
+            bestRegionWidth = clampedRegionWidth;
+            bestRegionHeight = clampedRegionHeight;
+          }
+
+          // If a big-enough region was found, end the search early and greedily allocate it:
+          if( clampedRegionHeight == regionHeight && clampedRegionWidth == regionWidth )
+          {
+            x = mWidth;
+            y = mHeight;
+          }
+whole_region_not_found:
+          continue;
+        }
+      }
+    }
+
+    // Allocate and return the best cell region found:
+
+    if( bestRegionWidth == 0 || bestRegionHeight == 0 )
+    {
+#ifdef DEBUG_PRINT_GRID_DIAGNOSTICS
+        fputs( "false.\n", stderr );
+#endif
+      return false;
+    }
+
+    // Allocate the found region:
+#ifdef DEBUG_PRINT_GRID_DIAGNOSTICS
+      fprintf( stderr, " - bestCellX = %u, bestCellY = %u, bestRegionWidth = %u, bestRegionHeight = %u - ", bestCellX, bestCellY, bestRegionWidth, bestRegionHeight );
+#endif
+    for( unsigned y = bestCellY; y < bestCellY + bestRegionHeight; ++y )
+    {
+      for( unsigned x = bestCellX; x < bestCellX + bestRegionWidth; ++x )
+      {
+        Set( x, y );
+      }
+    }
+
+    outCellX = bestCellX;
+    outCellY = bestCellY;
+    outRegion = Vector2( bestRegionWidth, bestRegionHeight );
+#ifdef DEBUG_PRINT_GRID_DIAGNOSTICS
+      fputs( "true.\n", stderr );
+#endif
+    return true;
+  }
+
+  /** @return True if every cell was set one or zero times, else false. */
+  bool DebugCheckGridValid()
+  {
+    for( unsigned cell = 0; cell < mWidth * mHeight; ++cell )
+    {
+      if( mCells[cell] > 1 )
+      {
+        return false;
+      }
+    }
+    return true;
+  }
+
+private:
+  unsigned CellIndex( unsigned x, unsigned y ) const
+  {
+    const unsigned offset = mWidth * y + x;
+    assert( offset < mCells.size() && "Out of range access to grid." );
+    return offset;
+  }
+
+  std::vector<unsigned char> mCells;
+  const unsigned mWidth;
+  const unsigned mHeight;
+  unsigned mHighestUsedRow;
+};
+
+} // namespace Demo
+
+} // namespace Dali
+
+#endif // DALI_DEMO_GRID_FLAGS_H
diff --git a/examples/image-scaling-irregular-grid/image-scaling-irregular-grid-example.cpp b/examples/image-scaling-irregular-grid/image-scaling-irregular-grid-example.cpp
new file mode 100644 (file)
index 0000000..c152052
--- /dev/null
@@ -0,0 +1,652 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file image-scaling-irregular-grid-example.cpp
+ * @brief Demonstrates how to use image scaling modes when loading images.
+ *
+ * If an image is going to be drawn on-screen at a lower resolution than it is
+ * stored at on-disk, the scaling feature of the image loader can be used to
+ * reduce the image to save memory, improve performance, and potentially display
+ * a better small version of the image than if the default size were loaded.
+ *
+ * The functions CreateImage and CreateImageView below show how to build an
+ * image using a scaling mode to have %Dali resize it during loading.
+ *
+ * This demo defaults to the SCALE_TO_FILL mode of ImageAttributes which makes
+ * sure that every pixel in the loaded image is filled with a source colour
+ * from the image's central region while losing the minimum number of pixels
+ * from its periphery.
+ * It is the best option for producing thumbnails of input images that have
+ * diverse aspect ratios.
+ *
+ * The other four scaling modes of dali can be cycled-through for the whole
+ * grid  using the button in the top-right of the toolbar.
+ * A single image can be cycled by clicking the image directly.
+ *
+ * @see CreateImage CreateImageView
+ */
+
+// EXTERNAL INCLUDES
+#include <algorithm>
+#include <map>
+#include <dali-toolkit/dali-toolkit.h>
+#include <iostream>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+
+// INTERNAL INCLUDES
+#include "grid-flags.h"
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace Dali::Demo;
+
+namespace
+{
+
+/** Controls the output of application logging. */
+//#define DEBUG_PRINT_DIAGNOSTICS;
+
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-gradient.jpg" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* APPLICATION_TITLE( "Image Scaling Modes" );
+const char* TOGGLE_SCALING_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
+const char* TOGGLE_SCALING_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+
+/** The width of the grid in whole grid cells. */
+const unsigned GRID_WIDTH = 9;
+/** Limit the grid to be no higher than this in units of a cell. */
+const unsigned GRID_MAX_HEIGHT = 600;
+
+/** The space between the edge of a grid cell and the image embedded within it. */
+const unsigned GRID_CELL_PADDING = 4;
+
+/** The aspect ratio of cells in the image grid. */
+const float CELL_ASPECT_RATIO = 1.33333333333333333333f;
+
+const Dali::FittingMode::Type DEFAULT_SCALING_MODE = Dali::FittingMode::SCALE_TO_FILL;
+
+/** The number of times to spin an image on touching, each spin taking a second.*/
+const float SPIN_DURATION = 1.0f;
+
+/** The target image sizes in grid cells. */
+const Vector2 IMAGE_SIZES[] = {
+ Vector2( 1, 1 ),
+ Vector2( 2, 1 ),
+ Vector2( 3, 1 ),
+ Vector2( 1, 2 ),
+ Vector2( 1, 3 ),
+ Vector2( 2, 3 ),
+ Vector2( 3, 2 ),
+ // Large, tall configuration:
+ Vector2( GRID_WIDTH / 2, GRID_WIDTH + GRID_WIDTH / 2 ),
+ // Large, square-ish images to show shrink-to-fit well with wide and tall images:
+ Vector2( GRID_WIDTH / 2, GRID_WIDTH / 2.0f * CELL_ASPECT_RATIO + 0.5f ),
+ Vector2( GRID_WIDTH - 2, (GRID_WIDTH - 2) * CELL_ASPECT_RATIO + 0.5f ),
+};
+const unsigned NUM_IMAGE_SIZES = sizeof(IMAGE_SIZES) / sizeof(IMAGE_SIZES[0]);
+
+/** Images to load into the grid. These are mostly large and non-square to
+ *  show the scaling. */
+const char* IMAGE_PATHS[] = {
+
+  DEMO_IMAGE_DIR "dali-logo.png",
+  DEMO_IMAGE_DIR "com.samsung.dali-demo.ico",
+  DEMO_IMAGE_DIR "square_primitive_shapes.bmp",
+  DEMO_IMAGE_DIR "gallery-large-14.wbmp",
+
+  // Images that show aspect ratio changes clearly in primitive shapes:
+
+  DEMO_IMAGE_DIR "portrait_screen_primitive_shapes.gif",
+  DEMO_IMAGE_DIR "landscape_screen_primitive_shapes.gif",
+
+  // Images from other demos that are tall, wide or just large:
+
+  DEMO_IMAGE_DIR "gallery-large-1.jpg",
+  DEMO_IMAGE_DIR "gallery-large-2.jpg",
+  DEMO_IMAGE_DIR "gallery-large-3.jpg",
+  DEMO_IMAGE_DIR "gallery-large-4.jpg",
+  DEMO_IMAGE_DIR "gallery-large-5.jpg",
+  DEMO_IMAGE_DIR "gallery-large-6.jpg",
+  DEMO_IMAGE_DIR "gallery-large-7.jpg",
+  DEMO_IMAGE_DIR "gallery-large-8.jpg",
+  DEMO_IMAGE_DIR "gallery-large-9.jpg",
+  DEMO_IMAGE_DIR "gallery-large-10.jpg",
+  DEMO_IMAGE_DIR "gallery-large-11.jpg",
+  DEMO_IMAGE_DIR "gallery-large-12.jpg",
+  DEMO_IMAGE_DIR "gallery-large-13.jpg",
+  DEMO_IMAGE_DIR "gallery-large-14.jpg",
+  DEMO_IMAGE_DIR "gallery-large-15.jpg",
+  DEMO_IMAGE_DIR "gallery-large-16.jpg",
+  DEMO_IMAGE_DIR "gallery-large-17.jpg",
+  DEMO_IMAGE_DIR "gallery-large-18.jpg",
+  DEMO_IMAGE_DIR "gallery-large-19.jpg",
+  DEMO_IMAGE_DIR "gallery-large-20.jpg",
+  DEMO_IMAGE_DIR "gallery-large-21.jpg",
+
+  DEMO_IMAGE_DIR "background-1.jpg",
+  DEMO_IMAGE_DIR "background-2.jpg",
+  DEMO_IMAGE_DIR "background-3.jpg",
+  DEMO_IMAGE_DIR "background-4.jpg",
+  DEMO_IMAGE_DIR "background-5.jpg",
+  DEMO_IMAGE_DIR "background-blocks.jpg",
+  DEMO_IMAGE_DIR "background-magnifier.jpg",
+
+  DEMO_IMAGE_DIR "background-1.jpg",
+  DEMO_IMAGE_DIR "background-2.jpg",
+  DEMO_IMAGE_DIR "background-3.jpg",
+  DEMO_IMAGE_DIR "background-4.jpg",
+  DEMO_IMAGE_DIR "background-5.jpg",
+  DEMO_IMAGE_DIR "background-blocks.jpg",
+  DEMO_IMAGE_DIR "background-magnifier.jpg",
+
+  DEMO_IMAGE_DIR "book-landscape-cover-back.jpg",
+  DEMO_IMAGE_DIR "book-landscape-cover.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p1.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p2.jpg",
+
+  DEMO_IMAGE_DIR "book-portrait-cover.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p1.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p2.jpg",
+  NULL
+};
+const unsigned NUM_IMAGE_PATHS = sizeof(IMAGE_PATHS) / sizeof(IMAGE_PATHS[0]) - 1u;
+const unsigned int INITIAL_IMAGES_TO_LOAD = 10;
+
+
+/**
+ * Creates an ImageView
+ *
+ * @param[in] filename The path of the image.
+ * @param[in] width The width of the image in pixels.
+ * @param[in] height The height of the image in pixels.
+ * @param[in] fittingMode The mode to use when scaling the image to fit the desired dimensions.
+ */
+ImageView CreateImageView(const std::string& filename, int width, int height, Dali::FittingMode::Type fittingMode )
+{
+
+  ImageView imageView = ImageView::New();
+
+  Property::Map map;
+  map[Toolkit::ImageVisual::Property::URL] = filename;
+  map[Toolkit::ImageVisual::Property::DESIRED_WIDTH] = width;
+  map[Toolkit::ImageVisual::Property::DESIRED_HEIGHT] = height;
+  map[Toolkit::ImageVisual::Property::FITTING_MODE] = fittingMode;
+  imageView.SetProperty( Toolkit::ImageView::Property::IMAGE, map );
+
+  imageView.SetName( filename );
+  imageView.SetParentOrigin(ParentOrigin::CENTER);
+  imageView.SetAnchorPoint(AnchorPoint::CENTER);
+
+  return imageView;
+}
+
+/** Cycle the scaling mode options. */
+Dali::FittingMode::Type NextMode( const Dali::FittingMode::Type oldMode )
+{
+  Dali::FittingMode::Type newMode = FittingMode::SHRINK_TO_FIT;
+  switch ( oldMode )
+  {
+    case FittingMode::SHRINK_TO_FIT:
+      newMode = FittingMode::SCALE_TO_FILL;
+      break;
+    case FittingMode::SCALE_TO_FILL:
+      newMode = FittingMode::FIT_WIDTH;
+      break;
+    case FittingMode::FIT_WIDTH:
+      newMode = FittingMode::FIT_HEIGHT;
+      break;
+    case FittingMode::FIT_HEIGHT:
+      newMode = FittingMode::SHRINK_TO_FIT;
+      break;
+  }
+  return newMode;
+}
+
+/**
+ * Bundle an image path with the rectangle to pack it into.
+ * */
+struct ImageConfiguration
+{
+  ImageConfiguration( const char * const path, const Vector2 dimensions ) :
+    path( path ),
+    dimensions( dimensions )
+  {}
+  const char * path;
+  Vector2 dimensions;
+};
+
+/**
+ * Post-layout image data.
+ */
+struct PositionedImage
+{
+  PositionedImage(ImageConfiguration& configuration, unsigned cellX, unsigned cellY, Vector2 imageGridDims) :
+    configuration( configuration ),
+    cellX( cellX ),
+    cellY( cellY ),
+    imageGridDims( imageGridDims )
+  {}
+
+  ImageConfiguration configuration;
+  unsigned cellX;
+  unsigned cellY;
+  Vector2 imageGridDims;
+};
+
+}
+
+/**
+ * @brief The main class of the demo.
+ */
+class ImageScalingIrregularGridController : public ConnectionTracker
+{
+public:
+
+  ImageScalingIrregularGridController( Application& application )
+  : mApplication( application ),
+    mScrolling( false ),
+    mImagesLoaded( 0 )
+  {
+    std::cout << "ImageScalingIrregularGridController::ImageScalingIrregularGridController" << std::endl;
+
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageScalingIrregularGridController::Create );
+  }
+
+  ~ImageScalingIrregularGridController()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * Called everytime an ImageView has loaded it's image
+   */
+  void ResourceReadySignal( Toolkit::Control control )
+  {
+    mImagesLoaded++;
+    // To allow fast startup, we only place a small number of ImageViews on stage first
+    if ( mImagesLoaded == INITIAL_IMAGES_TO_LOAD )
+    {
+      // Adding the ImageViews to the stage will trigger loading of the Images
+      mGridActor.Add( mOffStageImageViews );
+    }
+  }
+
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    std::cout << "ImageScalingIrregularGridController::Create" << std::endl;
+
+    // Get a handle to the stage:
+    Stage stage = Stage::GetCurrent();
+
+    // Connect to input event signals:
+    stage.KeyEventSignal().Connect(this, &ImageScalingIrregularGridController::OnKeyEvent);
+
+    // Hide the indicator bar
+    mApplication.GetWindow().ShowIndicator(Dali::Window::INVISIBLE);
+
+    // Create a default view with a default tool bar:
+    mContentLayer = DemoHelper::CreateView( mApplication,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            "" );
+
+    // Create an image scaling toggle button. (right of toolbar)
+    Toolkit::PushButton toggleScalingButton = Toolkit::PushButton::New();
+    toggleScalingButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, TOGGLE_SCALING_IMAGE );
+    toggleScalingButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, TOGGLE_SCALING_IMAGE_SELECTED );
+    toggleScalingButton.ClickedSignal().Connect( this, &ImageScalingIrregularGridController::OnToggleScalingTouched );
+    mToolBar.AddControl( toggleScalingButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    SetTitle( APPLICATION_TITLE );
+
+    mOffStageImageViews = Actor::New();
+    mOffStageImageViews.SetAnchorPoint( AnchorPoint::CENTER );
+    mOffStageImageViews.SetParentOrigin(ParentOrigin::CENTER);
+    mOffStageImageViews.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    // Build the main content of the widow:
+    PopulateContentLayer( DEFAULT_SCALING_MODE );
+  }
+
+  /**
+   * Build the main part of the application's view.
+   */
+  void PopulateContentLayer( const Dali::FittingMode::Type fittingMode )
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    float fieldHeight;
+    Actor imageField = BuildImageField( stageSize.x, GRID_WIDTH, GRID_MAX_HEIGHT, fittingMode, fieldHeight );
+
+    mScrollView = ScrollView::New();
+
+    mScrollView.ScrollStartedSignal().Connect( this, &ImageScalingIrregularGridController::OnScrollStarted );
+    mScrollView.ScrollCompletedSignal().Connect( this, &ImageScalingIrregularGridController::OnScrollCompleted );
+
+    mScrollView.SetAnchorPoint(AnchorPoint::CENTER);
+    mScrollView.SetParentOrigin(ParentOrigin::CENTER);
+
+    mScrollView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    mScrollView.SetAxisAutoLock( true );
+    mScrollView.SetAxisAutoLockGradient( 1.0f );
+
+    // Restrict scrolling to mostly vertical only, but with some horizontal wiggle-room:
+
+    RulerPtr rulerX = new FixedRuler( stageSize.width ); //< Pull the view back to the grid's centre-line when touch is release using a snapping ruler.
+    rulerX->SetDomain( RulerDomain( stageSize.width * -0.125f, stageSize.width * 1.125f ) ); //< Scroll slightly left/right of image field.
+    mScrollView.SetRulerX ( rulerX );
+
+    RulerPtr rulerY = new DefaultRuler(); //< Snap in multiples of a screen / stage height
+    rulerY->SetDomain( RulerDomain( - fieldHeight * 0.5f + stageSize.height * 0.5f - GRID_CELL_PADDING, fieldHeight * 0.5f + stageSize.height * 0.5f + GRID_CELL_PADDING ) );
+    mScrollView.SetRulerY ( rulerY );
+
+    mContentLayer.Add( mScrollView );
+    mScrollView.Add( imageField );
+    mGridActor = imageField;
+
+    // Create the scroll bar
+    mScrollBarVertical = ScrollBar::New(Toolkit::ScrollBar::Vertical);
+    mScrollBarVertical.SetParentOrigin(ParentOrigin::TOP_RIGHT);
+    mScrollBarVertical.SetAnchorPoint(AnchorPoint::TOP_RIGHT);
+    mScrollBarVertical.SetResizePolicy(Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::HEIGHT);
+    mScrollBarVertical.SetResizePolicy(Dali::ResizePolicy::FIT_TO_CHILDREN, Dali::Dimension::WIDTH);
+    mScrollView.Add(mScrollBarVertical);
+
+    mScrollBarHorizontal = ScrollBar::New(Toolkit::ScrollBar::Horizontal);
+    mScrollBarHorizontal.SetParentOrigin(ParentOrigin::BOTTOM_LEFT);
+    mScrollBarHorizontal.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    mScrollBarHorizontal.SetResizePolicy(Dali::ResizePolicy::FIT_TO_CHILDREN, Dali::Dimension::WIDTH);
+    mScrollBarHorizontal.SetOrientation(Quaternion(Radian( 1.5f * Math::PI ), Vector3::ZAXIS));
+    mScrollView.Add(mScrollBarHorizontal);
+
+    mScrollView.OnRelayoutSignal().Connect( this, &ImageScalingIrregularGridController::OnScrollViewRelayout );
+
+    // Scroll to top of grid so first images loaded are on-screen:
+    mScrollView.ScrollTo( Vector2( 0, -1000000 ) );
+  }
+
+  void OnScrollViewRelayout(Actor actor)
+  {
+    // Make the height of the horizontal scroll bar to be the same as the width of scroll view.
+    mScrollBarHorizontal.SetSize(Vector2(0.0f, mScrollView.GetRelayoutSize( Dimension::WIDTH) ));
+  }
+
+  /**
+   * Build a field of images scaled into a variety of shapes from very wide,
+   * through square, to very tall. The images are direct children of the Dali::Actor
+   * returned.
+   **/
+  Actor BuildImageField( const float fieldWidth,
+                           const unsigned gridWidth,
+                           const unsigned maxGridHeight,
+                           Dali::FittingMode::Type fittingMode,
+                           float & outFieldHeight )
+  {
+    // Generate the list of image configurations to be fitted into the field:
+
+    std::vector<ImageConfiguration> configurations;
+    configurations.reserve( NUM_IMAGE_PATHS * NUM_IMAGE_SIZES );
+    for( unsigned imageIndex = 0; imageIndex < NUM_IMAGE_PATHS; ++imageIndex )
+    {
+      for( unsigned dimensionsIndex = 0; dimensionsIndex < NUM_IMAGE_SIZES; ++ dimensionsIndex )
+      {
+        configurations.push_back( ImageConfiguration( IMAGE_PATHS[imageIndex], IMAGE_SIZES[dimensionsIndex] ) );
+      }
+    }
+    // Stir-up the list to get some nice irregularity in the generated field:
+    std::random_shuffle( configurations.begin(), configurations.end() );
+    std::random_shuffle( configurations.begin(), configurations.end() );
+
+    // Place the images in the grid:
+
+    std::vector<ImageConfiguration>::iterator config, end;
+    GridFlags grid( gridWidth, maxGridHeight );
+    std::vector<PositionedImage> placedImages;
+
+    for( config = configurations.begin(), end = configurations.end(); config != end; ++config )
+    {
+      unsigned cellX, cellY;
+      Vector2 imageGridDims;
+
+      // Allocate a region of the grid for the image:
+      bool allocated = grid.AllocateRegion( config->dimensions, cellX, cellY, imageGridDims );
+      if( !allocated )
+      {
+#ifdef DEBUG_PRINT_DIAGNOSTICS
+          fprintf( stderr, "Failed to allocate image in grid with dims (%f, %f) and path: %s.\n", config->dimensions.x, config->dimensions.y, config->path );
+#endif
+        continue;
+      }
+
+      placedImages.push_back( PositionedImage( *config, cellX, cellY, imageGridDims ) );
+    }
+    DALI_ASSERT_DEBUG( grid.DebugCheckGridValid() && "Cells were set more than once, indicating erroneous overlap in placing images on the grid." );
+    const unsigned actualGridHeight = grid.GetHighestUsedRow() + 1;
+
+    // Take the images images in the grid and turn their logical locations into
+    // coordinates in a frame defined by a parent actor:
+
+    Actor gridActor = Actor::New();
+    gridActor.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    gridActor.SetParentOrigin( ParentOrigin::CENTER );
+    gridActor.SetAnchorPoint( AnchorPoint::CENTER );
+
+    // Work out the constants of the grid and cell dimensions and positions:
+    const float cellWidth = fieldWidth / gridWidth;
+    const float cellHeight = cellWidth / CELL_ASPECT_RATIO;
+    const Vector2 cellSize = Vector2( cellWidth, cellHeight );
+    outFieldHeight = actualGridHeight * cellHeight;
+    const Vector2 gridOrigin = Vector2( -fieldWidth * 0.5f, -outFieldHeight * 0.5 );
+
+     unsigned int count = 0;
+    // Build the image actors in their right locations in their parent's frame:
+    for( std::vector<PositionedImage>::const_iterator i = placedImages.begin(), end = placedImages.end(); i != end; ++i, ++count )
+    {
+      const PositionedImage& imageSource = *i;
+      const Vector2 imageSize = imageSource.imageGridDims * cellSize - Vector2( GRID_CELL_PADDING * 2, GRID_CELL_PADDING * 2 );
+      const Vector2 imageRegionCorner = gridOrigin + cellSize * Vector2( imageSource.cellX, imageSource.cellY );
+      const Vector2 imagePosition = imageRegionCorner + Vector2( GRID_CELL_PADDING , GRID_CELL_PADDING ) + imageSize * 0.5f;
+
+      ImageView image = CreateImageView( imageSource.configuration.path, imageSize.x, imageSize.y, fittingMode );
+      image.SetPosition( Vector3( imagePosition.x, imagePosition.y, 0 ) );
+      image.SetSize( imageSize );
+      image.TouchSignal().Connect( this, &ImageScalingIrregularGridController::OnTouchImage );
+      image.ResourceReadySignal().Connect( this, &ImageScalingIrregularGridController::ResourceReadySignal );
+      mFittingModes[image.GetId()] = fittingMode;
+      mResourceUrls[image.GetId()] = imageSource.configuration.path;
+      mSizes[image.GetId()] = imageSize;
+      if ( count < INITIAL_IMAGES_TO_LOAD )
+      {
+        gridActor.Add( image );
+      }
+      else
+      {
+        // Store the ImageView in an offstage actor until the inital batch of ImageViews have finished loading their images
+        // Required
+        mOffStageImageViews.Add( image );
+      }
+    }
+
+    return gridActor;
+  }
+
+ /**
+  * Upon Touching an image (Release), change its scaling mode and make it spin, provided we're not scrolling.
+  * @param[in] actor The actor touched
+  * @param[in] event The Touch information.
+  */
+  bool OnTouchImage( Actor actor, const TouchData& event )
+  {
+    if( ( event.GetPointCount() > 0 ) && ( !mScrolling ) )
+    {
+      if( event.GetState( 0 ) == PointState::UP )
+      {
+        // Spin the image a few times:
+        Animation animation = Animation::New(SPIN_DURATION);
+        animation.AnimateBy( Property( actor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f * SPIN_DURATION) ), Vector3::XAXIS ), AlphaFunction::EASE_OUT );
+        animation.Play();
+
+        // Change the scaling mode:
+        const unsigned id = actor.GetId();
+        Dali::FittingMode::Type newMode = NextMode( mFittingModes[id] );
+        const Vector2 imageSize = mSizes[actor.GetId()];
+
+        ImageView imageView = ImageView::DownCast( actor );
+        if( imageView)
+        {
+          Property::Map map;
+          map[Visual::Property::TYPE] = Visual::IMAGE;
+          map[ImageVisual::Property::URL] = mResourceUrls[id];
+          map[ImageVisual::Property::DESIRED_WIDTH] = imageSize.width + 0.5f;
+          map[ImageVisual::Property::DESIRED_HEIGHT] =  imageSize.height + 0.5f;
+          map[ImageVisual::Property::FITTING_MODE] = newMode;
+          imageView.SetProperty( ImageView::Property::IMAGE, map );
+        }
+
+        mFittingModes[id] = newMode;
+      }
+    }
+    return false;
+  }
+
+ /**
+  * Main key event handler.
+  * Quit on escape key.
+  */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE )
+          || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+ /**
+  * Signal handler, called when the 'Scaling' button has been touched.
+  *
+  * @param[in] button The button that was pressed.
+  */
+  bool OnToggleScalingTouched( Button button )
+  {
+    const unsigned numChildren = mGridActor.GetChildCount();
+
+    for( unsigned i = 0; i < numChildren; ++i )
+    {
+      ImageView gridImageView = ImageView::DownCast( mGridActor.GetChildAt( i ) );
+      if( gridImageView )
+      {
+        // Cycle the scaling mode options:
+        unsigned int id = gridImageView.GetId();
+
+        const Vector2 imageSize = mSizes[ id ];
+        Dali::FittingMode::Type newMode = NextMode( mFittingModes[ id ] );
+
+        Property::Map map;
+        map[Visual::Property::TYPE] = Visual::IMAGE;
+        map[ImageVisual::Property::URL] = mResourceUrls[id];
+        map[ImageVisual::Property::DESIRED_WIDTH] = imageSize.width;
+        map[ImageVisual::Property::DESIRED_HEIGHT] =  imageSize.height;
+        map[ImageVisual::Property::FITTING_MODE] = newMode;
+        gridImageView.SetProperty( ImageView::Property::IMAGE, map );
+
+
+
+        mFittingModes[ id ] = newMode;
+
+        SetTitle( std::string( newMode == FittingMode::SHRINK_TO_FIT ? "SHRINK_TO_FIT" : newMode == FittingMode::SCALE_TO_FILL ?  "SCALE_TO_FILL" : newMode == FittingMode::FIT_WIDTH ? "FIT_WIDTH" : "FIT_HEIGHT" ) );
+      }
+    }
+    return true;
+  }
+
+  /**
+   * Sets/Updates the title of the View
+   * @param[in] title The new title for the view.
+   */
+  void SetTitle(const std::string& title)
+  {
+    if(!mTitleActor)
+    {
+      mTitleActor = DemoHelper::CreateToolBarLabel( "" );
+      // Add title to the tool bar.
+      mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Alignment::HorizontalCenter );
+    }
+
+    mTitleActor.SetProperty( TextLabel::Property::TEXT, title );
+  }
+
+  /**
+   * When scroll starts (i.e. user starts to drag scrollview),
+   * note this state (mScrolling = true)
+   * @param[in] position Current Scroll Position
+   */
+  void OnScrollStarted( const Vector2& position )
+  {
+    mScrolling = true;
+  }
+
+  /**
+   * When scroll starts (i.e. user stops dragging scrollview, and scrollview has snapped to destination),
+   * note this state (mScrolling = false).
+   * @param[in] position Current Scroll Position
+   */
+  void OnScrollCompleted( const Vector2& position )
+  {
+    mScrolling = false;
+  }
+
+private:
+  Application&  mApplication;
+
+  Layer mContentLayer;                ///< The content layer (contains non gui chrome actors)
+  Toolkit::Control mView;             ///< The View instance.
+  Toolkit::ToolBar mToolBar;          ///< The View's Toolbar.
+  TextLabel mTitleActor;               ///< The Toolbar's Title.
+  Actor mGridActor;                   ///< The container for the grid of images
+  Actor mOffStageImageViews;          ///< ImageViews held off stage until the inital batch have loaded their images
+  ScrollView mScrollView;             ///< ScrollView UI Component
+  ScrollBar mScrollBarVertical;
+  ScrollBar mScrollBarHorizontal;
+  bool mScrolling;                    ///< ScrollView scrolling state (true = scrolling, false = stationary)
+  std::map<unsigned, Dali::FittingMode::Type> mFittingModes; ///< Stores the current scaling mode of each image, keyed by image actor id.
+  std::map<unsigned, std::string> mResourceUrls; ///< Stores the url of each image, keyed by image actor id.
+  std::map<unsigned, Vector2> mSizes; ///< Stores the current size of each image, keyed by image actor id.
+  unsigned int mImagesLoaded;         ///< How many images have been loaded
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  ImageScalingIrregularGridController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/image-view-alpha-blending/image-view-alpha-blending-example.cpp b/examples/image-view-alpha-blending/image-view-alpha-blending-example.cpp
new file mode 100644 (file)
index 0000000..bf6067c
--- /dev/null
@@ -0,0 +1,147 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/image-loader/texture-manager.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+
+using namespace Dali;
+
+namespace
+{
+const char* const IMAGE_PATH ( DEMO_IMAGE_DIR "gallery-large-20.jpg" );
+}
+
+class ImageViewAlphaBlendApp : public ConnectionTracker
+{
+public:
+  ImageViewAlphaBlendApp( Application& application )
+  : mApplication( application ),
+    mIndex(0u)
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageViewAlphaBlendApp::Create );
+  }
+
+  ~ImageViewAlphaBlendApp()
+  {
+    // Nothing to do here;
+  }
+
+private:
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ImageViewAlphaBlendApp::OnKeyEvent);
+
+    auto green0 = Vector4( 0.f, 1.f, 0.f, 0.25f );
+    auto green1 = Vector4( 0.f, 0.25f, 0.f, 0.25f );
+    auto redGreen0 = CreateTexture( Color::RED, green0 );
+    auto redGreen1 = CreateTexture( Color::RED, green1 );
+    float imageSize = 512.f;
+
+    Toolkit::ImageView imageView0 = CreateImageView( IMAGE_PATH );
+    imageView0.SetSize(imageSize, imageSize);
+    imageView0.SetParentOrigin( ParentOrigin::CENTER );
+    imageView0.SetY( -imageSize*0.5f );
+    stage.Add(imageView0);
+    Toolkit::ImageView imageView1 = CreateImageView( redGreen0 );
+    imageView1.SetParentOrigin( ParentOrigin::CENTER );
+    imageView1.SetSize(imageSize, imageSize);
+    imageView0.Add(imageView1);
+
+    Toolkit::ImageView imageView2 = CreateImageView( IMAGE_PATH );
+    imageView2.SetSize(imageSize, imageSize);
+    imageView2.SetParentOrigin( ParentOrigin::CENTER );
+    imageView2.SetY( imageSize*0.5f );
+    stage.Add(imageView2);
+    Toolkit::ImageView imageView3 = CreateImageView( redGreen1);
+    imageView3.SetParentOrigin( ParentOrigin::CENTER );
+    imageView3.SetSize(imageSize, imageSize);
+    imageView2.Add(imageView3);
+
+    imageView2.SetProperty( Toolkit::ImageView::Property::PRE_MULTIPLIED_ALPHA, true );
+    imageView3.SetProperty( Toolkit::ImageView::Property::PRE_MULTIPLIED_ALPHA, true );
+
+    Animation animation = Animation::New( 10.f );
+    animation.AnimateTo(Property(imageView0, Actor::Property::COLOR), Vector4(1.0f, 1.0f, 1.0f, 0.0f), AlphaFunction::BOUNCE, TimePeriod( 2.f, 8.f ));
+    animation.AnimateTo(Property(imageView2, Actor::Property::COLOR), Vector4(1.0f, 1.0f, 1.0f, 0.0f), AlphaFunction::BOUNCE, TimePeriod( 2.f, 8.f ));
+    animation.SetLooping( true );
+    animation.Play();
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  std::string CreateTexture( const Vector4& color1, const Vector4& color2 )
+  {
+    const auto width = 2u;
+    const auto height = 1u;
+    auto size = width * height * 4;
+    auto pixelBuffer = new unsigned char[size];
+    pixelBuffer[0] = 0xFF * color1.x;
+    pixelBuffer[1] = 0xFF * color1.y;
+    pixelBuffer[2] = 0xFF * color1.z;
+    pixelBuffer[3] = 0xFF * color1.w;
+    pixelBuffer[4] = 0xFF * color2.x;
+    pixelBuffer[5] = 0xFF * color2.y;
+    pixelBuffer[6] = 0xFF * color2.z;
+    pixelBuffer[7] = 0xFF * color2.w;
+
+    auto pixelData = PixelData::New(pixelBuffer, size, width, height, Pixel::RGBA8888, PixelData::ReleaseFunction::DELETE_ARRAY);
+    auto texture = Texture::New( TextureType::TEXTURE_2D, Pixel::RGBA8888, width, height );
+    texture.Upload(pixelData);
+
+    return Toolkit::TextureManager::AddTexture(texture);
+  }
+
+  template<typename TextT>
+  Toolkit::ImageView CreateImageView(TextT&& filename)
+  {
+    auto imageView = Toolkit::ImageView::New();
+
+    Property::Map propertyMap;
+    propertyMap.Insert(Toolkit::ImageVisual::Property::URL, std::forward<TextT>(filename));
+    propertyMap.Insert(Toolkit::Visual::Property::TYPE, Toolkit::Visual::IMAGE);
+    propertyMap.Insert(Toolkit::DevelVisual::Property::VISUAL_FITTING_MODE, Toolkit::DevelVisual::FILL);
+    imageView.SetProperty(Toolkit::ImageView::Property::IMAGE, propertyMap );
+
+    return imageView;
+  }
+
+private:
+  Application&  mApplication;
+  unsigned int mIndex;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ImageViewAlphaBlendApp test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/image-view-pixel-area/image-view-pixel-area-example.cpp b/examples/image-view-pixel-area/image-view-pixel-area-example.cpp
new file mode 100644 (file)
index 0000000..5b69e13
--- /dev/null
@@ -0,0 +1,242 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+
+#include "shared/view.h"
+
+using namespace Dali;
+
+namespace
+{
+const char* BIG_TEST_IMAGE( DEMO_IMAGE_DIR "book-landscape-cover.jpg" );
+const char* SMALL_TEST_IMAGE( DEMO_IMAGE_DIR "gallery-large-1.jpg" );
+
+const char * const APPLICATION_TITLE( "Pixel Area & Wrap Mode" );
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const BUTTON_ICON( DEMO_IMAGE_DIR "icon-change.png" );
+const char * const BUTTON_ICON_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+
+const Vector4 ORIGINAL_PIXEL_AREA( -0.5f, -0.5f, 2.f, 2.f );
+}
+
+class ImageViewPixelAreaApp : public ConnectionTracker
+{
+public:
+  ImageViewPixelAreaApp( Application& application )
+  : mApplication( application ),
+    mIndex(0u)
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageViewPixelAreaApp::Create );
+  }
+
+  ~ImageViewPixelAreaApp()
+  {
+    // Nothing to do here;
+  }
+
+private:
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ImageViewPixelAreaApp::OnKeyEvent);
+
+    Toolkit::ToolBar toolBar;
+    Toolkit::Control background;
+    // Creates a default view with a default tool bar.
+    mContent = DemoHelper::CreateView( application,
+                                            background,
+                                            toolBar,
+                                            "",
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    // Add a button to switch the scene. (right of toolbar)
+    Toolkit::PushButton switchButton = Toolkit::PushButton::New();
+    switchButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, BUTTON_ICON );
+    switchButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, BUTTON_ICON_SELECTED );
+    switchButton.ClickedSignal().Connect( this, &ImageViewPixelAreaApp::OnButtonClicked );
+    toolBar.AddControl( switchButton,
+                        DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
+                        Toolkit::Alignment::HorizontalRight,
+                        DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+
+    // for testing image WITH automatic atlasing
+    visualPropertyMap[0][ Toolkit::ImageVisual::Property::URL ] =  SMALL_TEST_IMAGE;
+    visualPropertyMap[0][ Toolkit::ImageVisual::Property::DESIRED_WIDTH ] = 500;
+    visualPropertyMap[0][ Toolkit::ImageVisual::Property::DESIRED_HEIGHT ] = 500;
+    visualPropertyMap[0][ Toolkit::ImageVisual::Property::WRAP_MODE_U ] = WrapMode::CLAMP_TO_EDGE;
+    visualPropertyMap[0][ Toolkit::ImageVisual::Property::WRAP_MODE_V ] = WrapMode::MIRRORED_REPEAT;
+    visualPropertyMap[0][ Toolkit::ImageVisual::Property::PIXEL_AREA ] = ORIGINAL_PIXEL_AREA;
+
+    // for testing image WITHOUT automatic atlasing
+    visualPropertyMap[1][ Toolkit::ImageVisual::Property::URL ] =  BIG_TEST_IMAGE;
+    visualPropertyMap[1][ Toolkit::ImageVisual::Property::DESIRED_WIDTH ] = 640;
+    visualPropertyMap[1][ Toolkit::ImageVisual::Property::DESIRED_HEIGHT ] = 720;
+    visualPropertyMap[1][ Toolkit::ImageVisual::Property::WRAP_MODE_U ] = WrapMode::MIRRORED_REPEAT;
+    visualPropertyMap[1][ Toolkit::ImageVisual::Property::WRAP_MODE_V ] = WrapMode::REPEAT;
+    visualPropertyMap[1][ Toolkit::ImageVisual::Property::PIXEL_AREA ] = ORIGINAL_PIXEL_AREA;
+
+    CreateScene(  visualPropertyMap[0] );
+
+    mWrapLabel = Toolkit::TextLabel::New(" Automatic atlasing\n WrapMode: CLAMP_TO_EDGE, MIRRORED_REPEAT");
+    mWrapLabel.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mWrapLabel.SetAnchorPoint(AnchorPoint::BOTTOM_CENTER );
+    mWrapLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mWrapLabel.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+    mWrapLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    mContent.Add( mWrapLabel );
+
+    mPixelAreaLabel = Toolkit::TextLabel::New( " Use ImageVisual::Property::PIXEL_AREA\n " );
+    mPixelAreaLabel.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mPixelAreaLabel.SetAnchorPoint(AnchorPoint::BOTTOM_CENTER );
+    mPixelAreaLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mPixelAreaLabel.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+    mPixelAreaLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    mWrapLabel.Add( mPixelAreaLabel );
+  }
+
+  void CreateScene( const Property::Value& propertyMap )
+  {
+    for( int i=0; i<3;i++ )
+      for( int j=0; j<3; j++ )
+      {
+        mImageView[i][j] = Toolkit::ImageView::New();
+        mImageView[i][j].SetProperty( Toolkit::ImageView::Property::IMAGE, propertyMap );
+        mImageView[i][j].SetPosition( 50.f*(i-1), 50.f*(j-1) );
+      }
+
+    mImageView[1][1].SetParentOrigin( ParentOrigin::CENTER );
+    mImageView[1][1].SetAnchorPoint(AnchorPoint::CENTER );
+    mImageView[1][1].SetScale( 1.f/3.f );
+    mContent.Add( mImageView[1][1] );
+
+    mImageView[0][0].SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mImageView[0][0].SetAnchorPoint(AnchorPoint::BOTTOM_RIGHT );
+    mImageView[0][0].SetPosition( -50.f, -50.f );
+    mImageView[1][1].Add( mImageView[0][0] );
+
+    mImageView[1][0].SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mImageView[1][0].SetAnchorPoint(AnchorPoint::BOTTOM_CENTER );
+    mImageView[1][1].Add( mImageView[1][0] );
+
+    mImageView[2][0].SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    mImageView[2][0].SetAnchorPoint(AnchorPoint::BOTTOM_LEFT );
+    mImageView[1][1].Add( mImageView[2][0] );
+
+    mImageView[0][1].SetParentOrigin( ParentOrigin::CENTER_LEFT );
+    mImageView[0][1].SetAnchorPoint(AnchorPoint::CENTER_RIGHT );
+    mImageView[1][1].Add( mImageView[0][1] );
+
+    mImageView[2][1].SetParentOrigin( ParentOrigin::CENTER_RIGHT );
+    mImageView[2][1].SetAnchorPoint(AnchorPoint::CENTER_LEFT );
+    mImageView[1][1].Add( mImageView[2][1] );
+
+    mImageView[0][2].SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
+    mImageView[0][2].SetAnchorPoint(AnchorPoint::TOP_RIGHT );
+    mImageView[1][1].Add( mImageView[0][2] );
+
+    mImageView[1][2].SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mImageView[1][2].SetAnchorPoint(AnchorPoint::TOP_CENTER );
+    mImageView[1][1].Add( mImageView[1][2] );
+
+    mImageView[2][2].SetParentOrigin( ParentOrigin::BOTTOM_RIGHT );
+    mImageView[2][2].SetAnchorPoint(AnchorPoint::TOP_LEFT );
+    mImageView[1][1].Add( mImageView[2][2] );
+
+  }
+
+  bool OnButtonClicked( Toolkit::Button button )
+    {
+      if( mAnimation )
+      {
+        mAnimation.Stop();
+        mAnimation.Clear();
+      }
+
+      mIndex = ( mIndex+1 ) % 4;
+      if( mIndex%2 == 0 )
+      {
+        // switch to the other image
+        // set the pixel area to image visual, the pixel area property is registered on the renderer
+        mContent.Remove( mImageView[1][1] );
+        CreateScene(  visualPropertyMap[mIndex/2] );
+        if( mIndex == 0 )
+        {
+          mWrapLabel.SetProperty( Toolkit::TextLabel::Property::TEXT," Automatic atlasing\n WrapMode: CLAMP_TO_EDGE, MIRRORED_REPEAT");
+        }
+        else
+        {
+          mWrapLabel.SetProperty( Toolkit::TextLabel::Property::TEXT," No atlasing\n WrapMode: MIRRORED_REPEAT, REPEAT");
+        }
+        mPixelAreaLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, " Use ImageVisual::Property::PIXEL_AREA\n " );
+      }
+      else
+      {
+        // animate the pixel area property on image view,
+        // the animatable pixel area property is registered on the actor, which overwrites the property on the renderer
+        mAnimation = Animation::New( 10.f );
+        float relativeSubSize = 0.33;
+        for( int i=0; i<3;i++ )
+          for( int j=0; j<3; j++ )
+          {
+            mImageView[i][j].SetProperty( Toolkit::ImageView::Property::PIXEL_AREA, ORIGINAL_PIXEL_AREA );
+            mAnimation.AnimateTo( Property(mImageView[i][j], Toolkit::ImageView::Property::PIXEL_AREA),
+                Vector4( relativeSubSize*i, relativeSubSize*j, relativeSubSize, relativeSubSize ),
+                AlphaFunction::BOUNCE );
+          }
+        mAnimation.SetLooping( true );
+        mAnimation.Play();
+
+        mPixelAreaLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, " Animate ImageView::Property::PIXEL_AREA \n     (Overwrite the ImageVisual property) " );
+      }
+      return true;
+    }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+  Layer mContent;
+  Toolkit::ImageView mImageView[3][3];
+  Property::Map visualPropertyMap[2];
+  Toolkit::TextLabel mWrapLabel;
+  Toolkit::TextLabel mPixelAreaLabel;
+  Animation mAnimation;
+  unsigned int mIndex;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ImageViewPixelAreaApp test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/image-view-svg/image-view-svg-example.cpp b/examples/image-view-svg/image-view-svg-example.cpp
new file mode 100644 (file)
index 0000000..13ba31d
--- /dev/null
@@ -0,0 +1,268 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/actors/actor-devel.h>
+#include <string.h>
+
+using namespace Dali;
+
+namespace
+{
+const float MIN_SCALE = 0.6f;
+const float MAX_SCALE = 6.f;
+
+const char* SVG_IMAGES[] =
+{
+    DEMO_IMAGE_DIR "Camera.svg",
+    DEMO_IMAGE_DIR "Contacts.svg",
+    DEMO_IMAGE_DIR "Mail.svg",
+    DEMO_IMAGE_DIR "Message.svg",
+    DEMO_IMAGE_DIR "Phone.svg",
+    DEMO_IMAGE_DIR "Settings.svg",
+    DEMO_IMAGE_DIR "World.svg",
+    DEMO_IMAGE_DIR "Kid1.svg"
+};
+const unsigned int NUM_SVG_IMAGES( sizeof( SVG_IMAGES ) / sizeof( SVG_IMAGES[0] ) );
+const unsigned int NUM_IMAGES_DISPLAYED = 4u;
+} // unnamed namespace
+
+// This example shows how to display svg images with ImageView.
+//
+class ImageSvgController : public ConnectionTracker
+{
+public:
+
+  ImageSvgController( Application& application )
+  : mApplication( application ),
+    mScale( 1.f ),
+    mIndex( 0 )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageSvgController::Create );
+  }
+
+  ~ImageSvgController()
+  {
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    Vector2 stageSize = stage.GetSize();
+    mActorSize = stageSize/2.f;
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    stage.KeyEventSignal().Connect(this, &ImageSvgController::OnKeyEvent);
+
+    // Background, for receiving gestures
+    mStageBackground = Actor::New();
+    mStageBackground.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mStageBackground.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mStageBackground.SetSize( stageSize.x, stageSize.y );
+    stage.Add(mStageBackground);
+
+    // Push button,  for changing the image set for displaying
+    Toolkit::PushButton changeButton = Toolkit::PushButton::New();
+    changeButton.SetProperty( Toolkit::Button::Property::LABEL, "Next" );
+    changeButton.SetAnchorPoint( AnchorPoint::TOP_RIGHT );
+    changeButton.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    stage.Add( changeButton );
+    changeButton.ClickedSignal().Connect( this, &ImageSvgController::OnChangeButtonClicked );
+
+    // Push button, for resetting the actor size and position
+    Toolkit::PushButton resetButton = Toolkit::PushButton::New();
+    resetButton.SetProperty( Toolkit::Button::Property::LABEL, "Reset" );
+    resetButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    resetButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    stage.Add( resetButton );
+    resetButton.ClickedSignal().Connect( this, &ImageSvgController::OnResetButtonClicked );
+
+    // Create and put imageViews to stage
+    for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED; i++ )
+    {
+      mSvgActor[i] = Toolkit::ImageView::New(SVG_IMAGES[mIndex+i]);
+      mSvgActor[i].SetSize( mActorSize );
+      mSvgActor[i].TranslateBy( Vector3( 0.0, stageSize.height * 0.05, 0.0f ) );
+      stage.Add( mSvgActor[i] );
+    }
+    mSvgActor[0].SetParentOrigin( ParentOrigin::CENTER );
+    mSvgActor[0].SetAnchorPoint( AnchorPoint::BOTTOM_RIGHT );
+    mSvgActor[1].SetParentOrigin( ParentOrigin::CENTER );
+    mSvgActor[1].SetAnchorPoint( AnchorPoint::BOTTOM_LEFT );
+    mSvgActor[2].SetParentOrigin( ParentOrigin::CENTER );
+    mSvgActor[2].SetAnchorPoint( AnchorPoint::TOP_RIGHT );
+    mSvgActor[3].SetParentOrigin( ParentOrigin::CENTER );
+    mSvgActor[3].SetAnchorPoint( AnchorPoint::TOP_LEFT );
+
+    // Connect pan gesture for moving the actors
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.DetectedSignal().Connect( this, &ImageSvgController::OnPanGesture );
+    mPanGestureDetector.Attach( mStageBackground );
+
+    // Connect pinch gesture for resizing the actors
+    mPinchGestureDetector = PinchGestureDetector::New();
+    mPinchGestureDetector.Attach( mStageBackground);
+    mPinchGestureDetector.DetectedSignal().Connect(this, &ImageSvgController::OnPinch);
+
+    changeButton.RaiseToTop();
+    resetButton.RaiseToTop();
+  }
+
+  // Callback of push button, for changing image set
+  bool OnChangeButtonClicked( Toolkit::Button button )
+  {
+    mIndex = ( mIndex + NUM_IMAGES_DISPLAYED ) % NUM_SVG_IMAGES;
+    for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED; i++ )
+    {
+      mSvgActor[i].SetImage(SVG_IMAGES[mIndex+i]);
+    }
+
+    return true;
+  }
+
+  // Callback of push button, for resetting image size and position
+  bool OnResetButtonClicked( Toolkit::Button button )
+  {
+    for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED ; i++ )
+    {
+      mSvgActor[i].SetSize(mActorSize);
+      mSvgActor[i].SetPosition( Vector3::ZERO );
+      mScale = 1.f;
+    }
+
+    return true;
+  }
+
+  // Callback of pan gesture, for moving the actors
+  void OnPanGesture( Actor actor, const PanGesture& gesture )
+  {
+    if( gesture.state == Gesture::Continuing )
+    {
+      for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED; i++ )
+      {
+        mSvgActor[i].TranslateBy(Vector3(gesture.displacement));
+      }
+    }
+  }
+
+  // Callback of pinch gesture, for resizing the actors
+  void OnPinch(Actor actor, const PinchGesture& gesture)
+  {
+    switch( gesture.state )
+    {
+      // Only scale the image when we start or continue pinching
+
+      case Gesture::Started:
+      case Gesture::Continuing:
+      {
+        float scale = std::max( gesture.scale, MIN_SCALE / mScale );
+        scale = std::min( MAX_SCALE / mScale, scale );
+
+        for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED; i++ )
+        {
+          mSvgActor[i].SetScale( scale );
+        }
+        break;
+      }
+
+      case Gesture::Finished:
+      {
+        // Resize the image when pinching is complete, this will rasterize the SVG to the new size
+
+        mScale = mScale * gesture.scale;
+        mScale = mScale > MAX_SCALE ? MAX_SCALE : mScale;
+        mScale = mScale < MIN_SCALE ? MIN_SCALE : mScale;
+        for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED; i++ )
+        {
+          mSvgActor[i].SetSize( mActorSize * mScale );
+          mSvgActor[i].SetScale( 1.0f );
+        }
+        break;
+      }
+
+      case Gesture::Cancelled:
+      case Gesture::Clear:
+      case Gesture::Possible:
+        break;
+    }
+  }
+
+  /**
+    * Main key event handler
+    */
+   void OnKeyEvent(const KeyEvent& event)
+   {
+     if(event.state == KeyEvent::Down)
+     {
+       if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+       {
+         mApplication.Quit();
+       }
+       else
+       {
+         const char* keyName = event.keyPressedName.c_str();
+         if( strcmp(keyName, "Left") == 0 )
+         {
+           if( mScale > MIN_SCALE )
+           {
+             mScale /= 1.1f;
+           }
+           for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED; i++ )
+           {
+             mSvgActor[i].SetSize( mActorSize * mScale );
+           }
+         }
+         else if( strcmp(keyName, "Right") == 0 )
+         {
+           if( mScale < MAX_SCALE )
+           {
+             mScale *= 1.1f;
+           }
+           for( unsigned int i = 0; i < NUM_IMAGES_DISPLAYED; i++ )
+           {
+             mSvgActor[i].SetSize( mActorSize * mScale );
+           }
+         }
+       }
+     }
+   }
+
+private:
+  Application&         mApplication;
+  Actor                mStageBackground;
+  PanGestureDetector   mPanGestureDetector;
+  PinchGestureDetector mPinchGestureDetector;
+
+  Toolkit::ImageView  mSvgActor[4];
+  Vector2             mActorSize;
+  float               mScale;
+  unsigned int        mIndex;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ImageSvgController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/image-view-url/image-view-url-example.cpp b/examples/image-view-url/image-view-url-example.cpp
new file mode 100644 (file)
index 0000000..58d0910
--- /dev/null
@@ -0,0 +1,222 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/image-loader/texture-manager.h>
+
+#include "shared/view.h"
+
+using namespace Dali;
+
+namespace
+{
+const char* BIG_TEST_IMAGE( DEMO_IMAGE_DIR "book-landscape-cover.jpg" );
+
+const char * const APPLICATION_TITLE( "Image View URL" );
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const BUTTON_ICON( DEMO_IMAGE_DIR "icon-change.png" );
+const char * const BUTTON_ICON_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+
+const char* FILTER_FRAGMENT_SOURCE =
+{
+ "precision highp float;\n"
+ "varying mediump vec2 vTexCoord;\n"
+ "uniform sampler2D sTexture;\n"
+ "uniform mediump float uDelta;\n"
+ "void main()\n"
+ "{\n"
+ "  vec4 color = vec4(0.0);\n"
+ "  vec2 texCoord = vTexCoord * 2. - 1.;\n"
+ "  mat2 rotation = mat2(cos(uDelta), -sin(uDelta), sin(uDelta), cos(uDelta));"
+ "  texCoord = (rotation * texCoord) * .5 + .5;\n"
+ "  color += texture2D( sTexture, texCoord );\n"
+ "  gl_FragColor = color;\n"
+ "}\n"
+};
+
+const char* DELTA_UNIFORM_NAME = "uDelta";
+
+const Vector2 TARGET_SIZE(800.f, 800.f);
+}
+
+class ImageViewUrlApp : public ConnectionTracker
+{
+public:
+  ImageViewUrlApp( Application& application, std::string url )
+  : mApplication( application ),
+    mUrl( url ),
+    mDeltaPropertyIndex( Property::INVALID_INDEX )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageViewUrlApp::Create );
+  }
+
+  ~ImageViewUrlApp() = default;
+
+private:
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ImageViewUrlApp::OnKeyEvent);
+
+    Toolkit::ToolBar toolBar;
+    Toolkit::Control background;
+    // Creates a default view with a default tool bar.
+    mContent = DemoHelper::CreateView( application,
+                                            background,
+                                            toolBar,
+                                            "",
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    // Add a button to switch the scene. (right of toolbar)
+    Toolkit::PushButton switchButton = Toolkit::PushButton::New();
+    switchButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, BUTTON_ICON );
+    switchButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, BUTTON_ICON_SELECTED );
+    switchButton.ClickedSignal().Connect( this, &ImageViewUrlApp::OnButtonClicked );
+    toolBar.AddControl( switchButton,
+                        DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
+                        Toolkit::Alignment::HorizontalRight,
+                        DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    std::string url = mUrl;
+    if( url.empty() )
+    {
+      url = BIG_TEST_IMAGE;
+    }
+
+    CreateRenderTask( url );
+    CreateScene( );
+  }
+
+  void CreateRenderTask( const std::string& url )
+  {
+    auto rootActor = Stage::GetCurrent().GetRootLayer();
+
+    auto cameraActor = CameraActor::New(TARGET_SIZE);
+    cameraActor.SetParentOrigin(ParentOrigin::CENTER);
+    cameraActor.SetInvertYAxis(true);
+    rootActor.Add(cameraActor);
+
+    {
+      // create actor to render input with applied shader
+      mActorForInput = Toolkit::ImageView::New( url );
+      mActorForInput.SetParentOrigin(ParentOrigin::CENTER);
+      mActorForInput.SetSize(TARGET_SIZE);
+      Property::Map customShader;
+      customShader[Toolkit::Visual::Shader::Property::FRAGMENT_SHADER] = FILTER_FRAGMENT_SOURCE;
+      Property::Map visualMap;
+      visualMap.Insert(Toolkit::Visual::Property::SHADER, customShader);
+      mActorForInput.SetProperty(Toolkit::ImageView::Property::IMAGE, visualMap);
+
+      mDeltaPropertyIndex = mActorForInput.RegisterProperty(DELTA_UNIFORM_NAME, 0.f);
+
+      rootActor.Add(mActorForInput);
+
+      RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList();
+
+      // perform a horizontal blur targeting the internal buffer
+      auto renderTask = taskList.CreateTask();
+      renderTask.SetRefreshRate(RenderTask::REFRESH_ALWAYS);
+      renderTask.SetSourceActor(mActorForInput);
+      renderTask.SetExclusive(true);
+      renderTask.SetInputEnabled(false);
+      renderTask.SetClearColor(Vector4(1.,0.,0.,1.));
+      renderTask.SetClearEnabled(true);
+      renderTask.SetCameraActor(cameraActor);
+
+      mOutputTexture = Texture::New(TextureType::TEXTURE_2D,
+                                    Pixel::RGB888,
+                                    unsigned(TARGET_SIZE.width),
+                                    unsigned(TARGET_SIZE.height));
+      auto framebuffer = FrameBuffer::New(TARGET_SIZE.width, TARGET_SIZE.height, FrameBuffer::Attachment::NONE );
+      framebuffer.AttachColorTexture(mOutputTexture);
+
+      renderTask.SetFrameBuffer(framebuffer);
+    }
+    {
+      // animate the shader uniform
+      mAnimation = Animation::New(10.f);
+
+      mActorForInput.SetProperty( mDeltaPropertyIndex, 0.f );
+      mAnimation.AnimateTo( Property( mActorForInput, mDeltaPropertyIndex ), Math::PI * 2.f );
+      mAnimation.SetLooping(true);
+      mAnimation.Play();
+    }
+  }
+
+  void CreateScene( )
+  {
+    auto url = Dali::Toolkit::TextureManager::AddTexture(mOutputTexture);
+    mImageView = Toolkit::ImageView::New(url);
+
+    mImageView.SetParentOrigin(ParentOrigin::CENTER);
+    mImageView.SetAnchorPoint(AnchorPoint::CENTER);
+    mContent.Add(mImageView);
+  }
+
+  bool OnButtonClicked(Toolkit::Button button)
+  {
+    if(mAnimation.GetState() == Animation::State::PLAYING)
+    {
+      mAnimation.Pause();
+    }
+    else
+    {
+      mAnimation.Play();
+    }
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+  std::string mUrl;
+  Layer mContent;
+  Toolkit::ImageView mImageView;
+  Animation mAnimation;
+  Actor mActorForInput;
+  Property::Index mDeltaPropertyIndex;
+  Texture mOutputTexture;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  std::string url;
+  if( argc > 1 )
+  {
+    url = argv[1];
+  }
+
+  ImageViewUrlApp test( application, url );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/image-view/image-view-example.cpp b/examples/image-view/image-view-example.cpp
new file mode 100644 (file)
index 0000000..afb3fe1
--- /dev/null
@@ -0,0 +1,255 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <string>
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/visuals/image-visual-properties-devel.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+
+using namespace Dali;
+
+namespace
+{
+
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-gradient.jpg" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* APPLICATION_TITLE( "Image view" );
+
+const char* IMAGE_PATH[] = {
+    DEMO_IMAGE_DIR "gallery-small-23.jpg",
+    DEMO_IMAGE_DIR "woodEffect.jpg",
+    DEMO_IMAGE_DIR "heartsframe.9.png",
+    DEMO_IMAGE_DIR "World.svg"
+};
+
+const unsigned int NUMBER_OF_IMAGES = 3;
+
+enum CellPlacement
+{
+   TOP_BUTTON,
+   LOWER_BUTTON,
+   IMAGE,
+   NUMBER_OF_ROWS
+};
+
+
+unsigned int GetButtonIndex( Toolkit::Button button )
+{
+  std::string buttonName = button.GetName();
+  unsigned int index = 0;
+
+  if ( buttonName != "")
+  {
+    index = std::stoul( buttonName );
+  }
+
+  return index;
+}
+
+
+const unsigned int NUMBER_OF_RESOURCES = sizeof(IMAGE_PATH) / sizeof(char*);
+
+std::string EXAMPLE_INSTRUCTIONS = "Instructions: Change button cycles through different image visuals, "
+                           "on/off takes the ImageView and it's current visual on or off stage.";
+
+}  // namespace
+
+class ImageViewController: public ConnectionTracker
+{
+ public:
+
+  ImageViewController( Application& application )
+    : mApplication( application ),
+      mCurrentPositionToggle( 0, 0 ),
+      mCurrentPositionImage( 0, 0 )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ImageViewController::Create );
+  }
+
+  ~ImageViewController()
+  {
+    // Nothing to do here
+  }
+
+  void Create( Application& application )
+  {
+    // The Init signal is received once (only) during the Application lifetime
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+
+    // Create a table view to show a pair of buttons above each image.
+    mTable = Toolkit::TableView::New( CellPlacement::NUMBER_OF_ROWS, NUMBER_OF_IMAGES );
+    mTable.SetAnchorPoint( AnchorPoint::CENTER );
+    mTable.SetParentOrigin( ParentOrigin::CENTER );
+    mTable.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    Vector3 offset( 0.9f, 0.70f, 0.0f );
+    mTable.SetSizeModeFactor( offset );
+    mTable.SetFitHeight(CellPlacement::TOP_BUTTON);
+    mTable.SetFitHeight(CellPlacement::LOWER_BUTTON);
+    mContentLayer.Add( mTable );
+
+    Toolkit::TextLabel instructions = Toolkit::TextLabel::New( EXAMPLE_INSTRUCTIONS );
+    instructions.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    instructions.SetParentOrigin(ParentOrigin::BOTTOM_CENTER);
+    instructions.SetY(-50.0f);
+    instructions.SetProperty( Toolkit::TextLabel::Property::ENABLE_AUTO_SCROLL, true  );
+    instructions.SetProperty( Toolkit::TextLabel::Property::AUTO_SCROLL_LOOP_COUNT, 10  );
+    mContentLayer.Add(instructions);
+
+    for( unsigned int x = 0; x < NUMBER_OF_IMAGES; x++ )
+    {
+      Toolkit::PushButton button = Toolkit::PushButton::New();
+      button.SetProperty( Toolkit::Button::Property::LABEL, "on/off" );
+      button.SetParentOrigin( ParentOrigin::TOP_CENTER );
+      button.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+      button.ClickedSignal().Connect( this, &ImageViewController::ToggleImageOnStage );
+      button.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      std::string s = std::to_string(x);
+      button.SetName( s );
+      mTable.AddChild( button, Toolkit::TableView::CellPosition( CellPlacement::TOP_BUTTON, x )  );
+
+      Toolkit::PushButton button2 = Toolkit::PushButton::New();
+      button2.SetProperty( Toolkit::Button::Property::LABEL, "Change" );
+      button2.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+      button2.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+      button2.ClickedSignal().Connect( this, &ImageViewController::ChangeImageClicked );
+      button2.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      button2.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      button2.SetName( s );
+      mTable.AddChild( button2, Toolkit::TableView::CellPosition( CellPlacement::LOWER_BUTTON, x )  );
+
+      mImageViews[x] = Toolkit::ImageView::New( );
+      Property::Map imagePropertyMap;
+      imagePropertyMap.Insert( Toolkit::Visual::Property::TYPE,  Toolkit::Visual::IMAGE );
+      imagePropertyMap.Insert( Toolkit::ImageVisual::Property::URL,  IMAGE_PATH[ 0 ]  );
+      mImageViews[x].SetProperty(Toolkit::ImageView::Property::IMAGE , imagePropertyMap );
+
+
+      mImageViews[x].SetParentOrigin( ParentOrigin::CENTER );
+      mImageViews[x].SetAnchorPoint( AnchorPoint::CENTER );
+      mImageViews[x].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mTable.AddChild( mImageViews[x], Toolkit::TableView::CellPosition( CellPlacement::IMAGE, x ) );
+
+      // Set changeable counter and toggle for each ImageView
+      mImageViewImageIndexStatus[x] = true;
+      mImageViewToggleStatus[x] = true;
+    }
+
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &ImageViewController::OnKeyEvent);
+  }
+
+private:
+
+  void ImmediateLoadImage( const char* urlToLoad )
+  {
+    Property::Map imagePropertyMap;
+    imagePropertyMap.Insert( Toolkit::Visual::Property::TYPE,  Toolkit::Visual::IMAGE );
+    imagePropertyMap.Insert( Toolkit::ImageVisual::Property::URL, urlToLoad );
+    Toolkit::Visual::Base visual =  Toolkit::VisualFactory::Get().CreateVisual( imagePropertyMap );
+    visual.Reset();
+  }
+
+  bool ToggleImageOnStage( Toolkit::Button button )
+  {
+    unsigned int buttonIndex = GetButtonIndex( button );
+
+    Toolkit::ImageView imageView =  mImageViews[ buttonIndex ];
+
+    if( mImageViewToggleStatus[ buttonIndex ] )
+    {
+      imageView.Unparent();
+    }
+    else
+    {
+      mTable.AddChild( imageView, Toolkit::TableView::CellPosition( 2, GetButtonIndex( button ) ) );
+    }
+
+    mImageViewToggleStatus[ buttonIndex ] = !mImageViewToggleStatus[ buttonIndex ];
+
+    return true;
+  }
+
+  bool ChangeImageClicked( Toolkit::Button button )
+  {
+    unsigned int buttonIndex = GetButtonIndex( button );
+
+    if (  mImageViews[buttonIndex].OnStage() )
+    {
+      Property::Map imagePropertyMap;
+      imagePropertyMap.Insert( Toolkit::Visual::Property::TYPE,  Toolkit::Visual::IMAGE );
+      imagePropertyMap.Insert( Toolkit::ImageVisual::Property::URL,  IMAGE_PATH[ mImageViewImageIndexStatus[buttonIndex] ]  );
+      mImageViews[buttonIndex].SetProperty(Toolkit::ImageView::Property::IMAGE , imagePropertyMap );
+
+      ++mImageViewImageIndexStatus[buttonIndex];
+
+      if( mImageViewImageIndexStatus[buttonIndex] == NUMBER_OF_RESOURCES )
+      {
+        mImageViewImageIndexStatus[buttonIndex] = 0;
+      }
+    }
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+
+  Toolkit::Control           mView;                              ///< The View instance.
+  Toolkit::ToolBar           mToolBar;                           ///< The View's Toolbar.
+  Layer                      mContentLayer;                      ///< Content layer
+  Toolkit::TableView         mTable;
+  Toolkit::ImageView         mImageViews[ NUMBER_OF_IMAGES ];
+  bool                       mImageViewToggleStatus[ NUMBER_OF_IMAGES ];
+  unsigned int               mImageViewImageIndexStatus[ NUMBER_OF_IMAGES ];
+
+  Toolkit::TableView::CellPosition mCurrentPositionToggle;
+  Toolkit::TableView::CellPosition mCurrentPositionImage;
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  ImageViewController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/item-view/item-view-example.cpp b/examples/item-view/item-view-example.cpp
new file mode 100644 (file)
index 0000000..ae285e4
--- /dev/null
@@ -0,0 +1,1008 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <sstream>
+#include "shared/view.h"
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+enum AllImagesLayouts
+{
+  SPIRAL_LAYOUT,
+  DEPTH_LAYOUT,
+  GRID_LAYOUT,
+
+  NUMBER_OF_LAYOUTS
+};
+
+const char* IMAGE_PATHS[] = {
+    DEMO_IMAGE_DIR "gallery-medium-1.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-2.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-3.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-4.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-5.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-6.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-7.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-8.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-9.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-10.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-11.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-12.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-13.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-14.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-15.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-16.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-17.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-18.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-19.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-20.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-21.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-22.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-23.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-24.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-25.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-26.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-27.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-28.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-29.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-30.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-31.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-32.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-33.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-34.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-35.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-36.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-37.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-38.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-39.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-40.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-41.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-42.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-43.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-44.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-45.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-46.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-47.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-48.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-49.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-50.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-51.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-52.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-53.jpg",
+};
+
+const unsigned int NUM_IMAGES = sizeof(IMAGE_PATHS) / sizeof(char*);
+
+const char* BACKGROUND_IMAGE( "" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* EDIT_IMAGE( DEMO_IMAGE_DIR "icon-edit.png" );
+const char* EDIT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-edit-selected.png" );
+const char* SPIRAL_LAYOUT_IMAGE( DEMO_IMAGE_DIR "icon-item-view-layout-spiral.png" );
+const char* SPIRAL_LAYOUT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-item-view-layout-spiral-selected.png" );
+const char* GRID_LAYOUT_IMAGE( DEMO_IMAGE_DIR "icon-item-view-layout-grid.png" );
+const char* GRID_LAYOUT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-item-view-layout-grid-selected.png" );
+const char* DEPTH_LAYOUT_IMAGE( DEMO_IMAGE_DIR "icon-item-view-layout-depth.png" );
+const char* DEPTH_LAYOUT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-item-view-layout-depth-selected.png" );
+const char* DELETE_IMAGE( DEMO_IMAGE_DIR "icon-delete.png" );
+const char* DELETE_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-delete-selected.png" );
+const char* REPLACE_IMAGE( DEMO_IMAGE_DIR "icon-replace.png" );
+const char* REPLACE_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-replace-selected.png" );
+const char* INSERT_IMAGE( DEMO_IMAGE_DIR "icon-insert.png" );
+const char* INSERT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-insert-selected.png" );
+const char* SELECTED_IMAGE( DEMO_IMAGE_DIR "item-select-check.png" );
+const char* APPLICATION_TITLE( "ItemView" );
+
+const char* SPIRAL_LABEL("Spiral");
+const char* GRID_LABEL("Grid");
+const char* DEPTH_LABEL("Depth");
+
+const float ITEM_BORDER_SIZE = 2.0f;
+
+const float DEPTH_LAYOUT_ITEM_SIZE_FACTOR_PORTRAIT = 1.0f;
+const float DEPTH_LAYOUT_ITEM_SIZE_FACTOR_LANDSCAPE = 0.8f;
+const float DEPTH_LAYOUT_COLUMNS = 3.0f;
+
+const float MIN_SWIPE_DISTANCE = 15.0f;
+const float MIN_SWIPE_SPEED = 5.0f;
+
+const float SELECTION_BORDER_WIDTH = 3.0f;
+const float BUTTON_BORDER = -10.0f;
+const float MENU_OPTION_HEIGHT(140.0f);
+const float LABEL_TEXT_SIZE_Y = 20.0f;
+
+const Vector3 INITIAL_OFFSCREEN_POSITION( 1000.0f, 0, -1000.0f );
+
+const float SCROLL_TO_ITEM_ANIMATION_TIME = 5.f;
+
+static Vector3 DepthLayoutItemSizeFunctionPortrait( float layoutWidth )
+{
+  float width = ( layoutWidth / ( DEPTH_LAYOUT_COLUMNS + 1.0f ) ) * DEPTH_LAYOUT_ITEM_SIZE_FACTOR_PORTRAIT;
+
+  // 1x1 aspect ratio
+  return Vector3(width, width, width);
+}
+
+static Vector3 DepthLayoutItemSizeFunctionLandscape( float layoutWidth )
+{
+  float width = ( layoutWidth / ( DEPTH_LAYOUT_COLUMNS + 1.0f ) ) * DEPTH_LAYOUT_ITEM_SIZE_FACTOR_LANDSCAPE;
+
+  // 1x1 aspect ratio
+  return Vector3(width, width, width);
+}
+
+} // unnamed namespace
+
+/**
+ * This example shows how to use ItemView UI control.
+ * There are three layouts created for ItemView, i.e., Spiral, Depth and Grid.
+ * There is one button in the upper-left corner for quitting the application and
+ * another button in the upper-right corner for switching between different layouts.
+ */
+class ItemViewExample : public ConnectionTracker, public ItemFactory
+{
+public:
+
+  enum Mode
+  {
+    MODE_NORMAL,
+    MODE_REMOVE,
+    MODE_REMOVE_MANY,
+    MODE_INSERT,
+    MODE_INSERT_MANY,
+    MODE_REPLACE,
+    MODE_REPLACE_MANY,
+    MODE_LAST
+  };
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  ItemViewExample( Application& application )
+  : mApplication( application ),
+    mMode( MODE_NORMAL ),
+    mOrientation( 0 ),
+    mCurrentLayout( SPIRAL_LAYOUT ),
+    mDurationSeconds( 0.25f )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect(this, &ItemViewExample::OnInit);
+  }
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit(Application& app)
+  {
+    Stage stage = Dali::Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ItemViewExample::OnKeyEvent);
+    stage.GetRootLayer().SetBehavior(Layer::LAYER_3D);
+
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+
+    Layer contents = DemoHelper::CreateView( mApplication,
+                                             mView,
+                                             mToolBar,
+                                             BACKGROUND_IMAGE,
+                                             TOOLBAR_IMAGE,
+                                             "" );
+
+    // Create an edit mode button. (left of toolbar)
+    Toolkit::PushButton editButton = Toolkit::PushButton::New();
+    editButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EDIT_IMAGE );
+    editButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EDIT_IMAGE_SELECTED );
+    editButton.ClickedSignal().Connect( this, &ItemViewExample::OnModeButtonClicked);
+    editButton.SetLeaveRequired( true );
+    mToolBar.AddControl( editButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    // Create a layout toggle button. (right of toolbar)
+    mLayoutButton = Toolkit::PushButton::New();
+    mLayoutButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, SPIRAL_LAYOUT_IMAGE );
+    mLayoutButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, SPIRAL_LAYOUT_IMAGE_SELECTED );
+    mLayoutButton.ClickedSignal().Connect( this, &ItemViewExample::OnLayoutButtonClicked);
+    mLayoutButton.SetLeaveRequired( true );
+    mToolBar.AddControl( mLayoutButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    // Create a delete button (bottom right of screen)
+    mDeleteButton = Toolkit::PushButton::New();
+    mDeleteButton.SetParentOrigin(ParentOrigin::BOTTOM_RIGHT);
+    mDeleteButton.SetAnchorPoint(AnchorPoint::BOTTOM_RIGHT);
+    mDeleteButton.SetPosition( BUTTON_BORDER, BUTTON_BORDER );
+    mDeleteButton.SetDrawMode( DrawMode::OVERLAY_2D );
+    mDeleteButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DELETE_IMAGE );
+    mDeleteButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DELETE_IMAGE_SELECTED );
+    mDeleteButton.SetProperty( Toolkit::Control::Property::BACKGROUND, TOOLBAR_IMAGE );
+    mDeleteButton.SetSize( Vector2( stageSize.width * 0.15f, stageSize.width * 0.15f ) );
+    mDeleteButton.ClickedSignal().Connect( this, &ItemViewExample::OnDeleteButtonClicked);
+    mDeleteButton.SetLeaveRequired( true );
+    mDeleteButton.SetVisible( false );
+    stage.Add( mDeleteButton );
+
+    // Create an insert button (bottom right of screen)
+    mInsertButton = Toolkit::PushButton::New();
+    mInsertButton.SetParentOrigin(ParentOrigin::BOTTOM_RIGHT);
+    mInsertButton.SetAnchorPoint(AnchorPoint::BOTTOM_RIGHT);
+    mInsertButton.SetPosition( BUTTON_BORDER, BUTTON_BORDER );
+    mInsertButton.SetDrawMode( DrawMode::OVERLAY_2D );
+    mInsertButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, INSERT_IMAGE );
+    mInsertButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, INSERT_IMAGE_SELECTED );
+    mInsertButton.SetProperty( Toolkit::Control::Property::BACKGROUND, TOOLBAR_IMAGE );
+    mInsertButton.SetSize( stageSize.width * 0.15f, stageSize.width * 0.15f );
+    mInsertButton.ClickedSignal().Connect( this, &ItemViewExample::OnInsertButtonClicked);
+    mInsertButton.SetLeaveRequired( true );
+    mInsertButton.SetVisible( false );
+    stage.Add( mInsertButton );
+
+    // Create an replace button (bottom right of screen)
+    mReplaceButton = Toolkit::PushButton::New();
+    mReplaceButton.SetParentOrigin(ParentOrigin::BOTTOM_RIGHT);
+    mReplaceButton.SetAnchorPoint(AnchorPoint::BOTTOM_RIGHT);
+    mReplaceButton.SetPosition( BUTTON_BORDER, BUTTON_BORDER );
+    mReplaceButton.SetDrawMode( DrawMode::OVERLAY_2D );
+    mReplaceButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, REPLACE_IMAGE );
+    mReplaceButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, REPLACE_IMAGE_SELECTED );
+    mReplaceButton.SetProperty( Toolkit::Control::Property::BACKGROUND, TOOLBAR_IMAGE );
+    mReplaceButton.SetSize( stageSize.width * 0.15f, stageSize.width * 0.15f );
+    mReplaceButton.ClickedSignal().Connect( this, &ItemViewExample::OnReplaceButtonClicked);
+    mReplaceButton.SetLeaveRequired( true );
+    mReplaceButton.SetVisible( false );
+    stage.Add( mReplaceButton );
+
+    // Create the item view actor
+    mItemView = ItemView::New(*this);
+    mItemView.SetParentOrigin(ParentOrigin::CENTER);
+    mItemView.SetAnchorPoint(AnchorPoint::CENTER);
+
+    // Display item view on the stage
+    stage.Add( mItemView );
+    stage.GetRootLayer().SetBehavior( Layer::LAYER_3D );
+
+    // Create the layouts
+    mSpiralLayout = DefaultItemLayout::New( DefaultItemLayout::SPIRAL );
+    mDepthLayout = DefaultItemLayout::New( DefaultItemLayout::DEPTH );
+    mGridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID );
+
+    // Add the layouts to item view
+    mItemView.AddLayout(*mSpiralLayout);
+    mItemView.AddLayout(*mDepthLayout);
+    mItemView.AddLayout(*mGridLayout);
+
+    mItemView.SetMinimumSwipeDistance(MIN_SWIPE_DISTANCE);
+    mItemView.SetMinimumSwipeSpeed(MIN_SWIPE_SPEED);
+
+    // Activate the spiral layout
+    SetLayout( mCurrentLayout );
+    mItemView.SetKeyboardFocusable( true );
+    KeyboardFocusManager::Get().PreFocusChangeSignal().Connect( this, &ItemViewExample::OnKeyboardPreFocusChange );
+
+    // Set the title and icon to the current layout
+    SetLayoutTitle();
+    SetLayoutImage();
+
+    mLongPressDetector = LongPressGestureDetector::New();
+    mLongPressDetector.Attach( mItemView );
+    mLongPressDetector.DetectedSignal().Connect( this, &ItemViewExample::OnLongPress );
+  }
+
+  Actor OnKeyboardPreFocusChange( Actor current, Actor proposed, Control::KeyboardFocus::Direction direction )
+  {
+    if ( !current && !proposed  )
+    {
+      return mItemView;
+    }
+
+    return proposed;
+  }
+
+  /**
+   * Animate to a different layout
+   */
+  void ChangeLayout()
+  {
+    Animation animation = Animation::New( mDurationSeconds );
+    animation.FinishedSignal().Connect( this, &ItemViewExample::AnimationFinished );
+    animation.AnimateTo( Property( mItemView, Actor::Property::COLOR_ALPHA ), 0.0f );
+    animation.Play();
+  }
+
+  void AnimationFinished( Animation& )
+  {
+    SetLayout( mCurrentLayout );
+
+    Animation animation = Animation::New( mDurationSeconds );
+    animation.AnimateTo( Property( mItemView, Actor::Property::COLOR_ALPHA ), 1.0f );
+    animation.Play();
+  }
+
+  /**
+   * Switch to a different item view layout
+   */
+  void SetLayout( int layoutId )
+  {
+    Stage stage = Dali::Stage::GetCurrent();
+    switch( mCurrentLayout )
+    {
+      case SPIRAL_LAYOUT:
+      case DEPTH_LAYOUT:
+      {
+        stage.GetRootLayer().SetBehavior(Layer::LAYER_3D);
+        break;
+      }
+      case GRID_LAYOUT:
+      {
+        stage.GetRootLayer().SetBehavior(Layer::LAYER_UI);
+        break;
+      }
+    }
+
+    // Set the new orientation to the layout
+    mItemView.GetLayout(layoutId)->SetOrientation(static_cast<ControlOrientation::Type>(mOrientation / 90));
+
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+    if(layoutId == DEPTH_LAYOUT)
+    {
+      // Set up the depth layout according to the new orientation
+      if(Toolkit::IsVertical(mDepthLayout->GetOrientation()))
+      {
+        mDepthLayout->SetItemSize( DepthLayoutItemSizeFunctionPortrait( stageSize.width ) );
+      }
+      else
+      {
+        mDepthLayout->SetItemSize( DepthLayoutItemSizeFunctionLandscape( stageSize.height ) );
+      }
+    }
+
+    // Enable anchoring for depth layout only
+    mItemView.SetAnchoring(layoutId == DEPTH_LAYOUT);
+
+    // Activate the layout
+    mItemView.ActivateLayout( layoutId, Vector3(stageSize.x, stageSize.y, stageSize.x), 0.0f );
+  }
+
+  bool OnLayoutButtonClicked( Toolkit::Button button )
+  {
+    // Switch to the next layout
+    mCurrentLayout = (mCurrentLayout + 1) % mItemView.GetLayoutCount();
+
+    ChangeLayout();
+
+    SetLayoutTitle();
+    SetLayoutImage();
+
+    return true;
+  }
+
+  bool OnModeButtonClicked( Toolkit::Button button )
+  {
+    SwitchToNextMode();
+
+    return true;
+  }
+
+  void SwitchToNextMode()
+  {
+    switch( mMode )
+    {
+      case MODE_REMOVE:
+      {
+        ExitRemoveMode();
+        mMode = MODE_REMOVE_MANY;
+        EnterRemoveManyMode();
+        break;
+      }
+
+      case MODE_REMOVE_MANY:
+      {
+        ExitRemoveManyMode();
+        mMode = MODE_INSERT;
+        EnterInsertMode();
+        break;
+      }
+
+      case MODE_INSERT:
+      {
+        ExitInsertMode();
+        mMode = MODE_INSERT_MANY;
+        EnterInsertManyMode();
+        break;
+      }
+
+      case MODE_INSERT_MANY:
+      {
+        ExitInsertManyMode();
+        mMode = MODE_REPLACE;
+        EnterReplaceMode();
+        break;
+      }
+
+      case MODE_REPLACE:
+      {
+        ExitReplaceMode();
+        mMode = MODE_REPLACE_MANY;
+        EnterReplaceManyMode();
+        break;
+      }
+
+      case MODE_REPLACE_MANY:
+      {
+        ExitReplaceManyMode();
+        mMode = MODE_NORMAL;
+        SetLayoutTitle();
+        break;
+      }
+
+      case MODE_NORMAL:
+      default:
+      {
+        mMode = MODE_REMOVE;
+        EnterRemoveMode();
+        break;
+      }
+    }
+  }
+
+  void EnterRemoveMode()
+  {
+    SetTitle("Edit: Remove");
+
+    mTapDetector = TapGestureDetector::New();
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      mTapDetector.Attach(mItemView.GetChildAt(i));
+    }
+
+    mTapDetector.DetectedSignal().Connect( this, &ItemViewExample::RemoveOnTap );
+  }
+
+  void ExitRemoveMode()
+  {
+    mTapDetector.Reset();
+  }
+
+  void RemoveOnTap( Actor actor, const TapGesture& tap )
+  {
+    mItemView.RemoveItem( mItemView.GetItemId(actor), 0.5f );
+  }
+
+  void EnterRemoveManyMode()
+  {
+    SetTitle("Edit: Remove Many");
+
+    mDeleteButton.SetVisible( true );
+
+    mTapDetector = TapGestureDetector::New();
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor box = child.FindChildByName( "CheckBox" );
+
+      if( box )
+      {
+        mTapDetector.Attach( child );
+        box.SetVisible( true );
+      }
+    }
+
+    mTapDetector.DetectedSignal().Connect( this, &ItemViewExample::SelectOnTap );
+  }
+
+  void ExitRemoveManyMode()
+  {
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor box = child.FindChildByName( "CheckBox" );
+
+      if( box )
+      {
+        box.SetVisible( false );
+
+        Actor tick = box.FindChildByName( "Tick" );
+        if( tick )
+        {
+          tick.SetVisible( false );
+        }
+      }
+    }
+
+    mTapDetector.Reset();
+
+    mDeleteButton.SetVisible( false );
+  }
+
+  void SelectOnTap( Actor actor, const TapGesture& tap )
+  {
+    Actor tick = actor.FindChildByName( "Tick" );
+    if( tick )
+    {
+      tick.SetVisible( !tick.IsVisible() );
+    }
+  }
+
+  void OnLongPress( Actor actor, const LongPressGesture& gesture )
+  {
+    switch( gesture.state )
+    {
+      case Gesture::Started:
+      {
+        const Size& size = Stage::GetCurrent().GetSize();
+
+        ItemRange range( 0u, 0u );
+        mItemView.GetItemsRange( range );
+
+        const unsigned int item = ( gesture.screenPoint.y < 0.5f * size.height ) ? range.begin : range.end;
+        mItemView.ScrollToItem( item, SCROLL_TO_ITEM_ANIMATION_TIME );
+
+        break;
+      }
+      case Gesture::Finished:
+      {
+        Property::Map attributes;
+        mItemView.DoAction( "stopScrolling", attributes );
+        break;
+      }
+      default:
+      {
+        break;
+      }
+    }
+  }
+
+  bool OnDeleteButtonClicked( Toolkit::Button button )
+  {
+    ItemIdContainer removeList;
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor tick = child.FindChildByName( "Tick" );
+
+      if( tick && tick.IsVisible() )
+      {
+        removeList.push_back( mItemView.GetItemId(child) );
+      }
+    }
+
+    if( ! removeList.empty() )
+    {
+      mItemView.RemoveItems( removeList, 0.5f );
+    }
+
+    return true;
+  }
+
+  void EnterInsertMode()
+  {
+    SetTitle("Edit: Insert");
+
+    mTapDetector = TapGestureDetector::New();
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      mTapDetector.Attach( mItemView.GetChildAt(i) );
+    }
+
+    mTapDetector.DetectedSignal().Connect( this, &ItemViewExample::InsertOnTap );
+  }
+
+  void ExitInsertMode()
+  {
+    mTapDetector.Reset();
+  }
+
+  void InsertOnTap( Actor actor, const TapGesture& tap )
+  {
+    ItemId id = mItemView.GetItemId( actor );
+
+    Actor newActor = NewItem( rand() );
+
+    mItemView.InsertItem( Item(id,newActor), 0.5f );
+  }
+
+  void EnterInsertManyMode()
+  {
+    SetTitle("Edit: Insert Many");
+
+    mInsertButton.SetVisible( true );
+
+    mTapDetector = TapGestureDetector::New();
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor box = child.FindChildByName( "CheckBox" );
+
+      if( box )
+      {
+        mTapDetector.Attach( child );
+        box.SetVisible( true );
+      }
+    }
+
+    mTapDetector.DetectedSignal().Connect( this, &ItemViewExample::SelectOnTap );
+  }
+
+  void ExitInsertManyMode()
+  {
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor box = child.FindChildByName( "CheckBox" );
+
+      if( box )
+      {
+        box.SetVisible( false );
+
+        Actor tick = box.FindChildByName( "Tick" );
+        if( tick )
+        {
+          tick.SetVisible( false );
+        }
+      }
+    }
+
+    mTapDetector.Reset();
+
+    mInsertButton.SetVisible( false );
+  }
+
+  bool OnInsertButtonClicked( Toolkit::Button button )
+  {
+    ItemContainer insertList;
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor tick = child.FindChildByName( "Tick" );
+
+      if( tick && tick.IsVisible() )
+      {
+        insertList.push_back( Item( mItemView.GetItemId(child), NewItem(rand()) ) );
+      }
+    }
+
+    if( ! insertList.empty() )
+    {
+      mItemView.InsertItems( insertList, 0.5f );
+    }
+
+    return true;
+  }
+
+  void EnterReplaceMode()
+  {
+    SetTitle("Edit: Replace");
+
+    mTapDetector = TapGestureDetector::New();
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      mTapDetector.Attach(mItemView.GetChildAt(i));
+    }
+
+    mTapDetector.DetectedSignal().Connect( this, &ItemViewExample::ReplaceOnTap );
+  }
+
+  void ReplaceOnTap( Actor actor, const TapGesture& tap )
+  {
+    mItemView.ReplaceItem( Item( mItemView.GetItemId(actor), NewItem(rand()) ), 0.5f );
+  }
+
+  void ExitReplaceMode()
+  {
+    mTapDetector.Reset();
+  }
+
+  void EnterReplaceManyMode()
+  {
+    SetTitle("Edit: Replace Many");
+
+    mReplaceButton.SetVisible( true );
+
+    mTapDetector = TapGestureDetector::New();
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor box = child.FindChildByName( "CheckBox" );
+
+      if( box )
+      {
+        mTapDetector.Attach( child );
+        box.SetVisible( true );
+      }
+    }
+
+    mTapDetector.DetectedSignal().Connect( this, &ItemViewExample::SelectOnTap );
+  }
+
+  void ExitReplaceManyMode()
+  {
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor box = child.FindChildByName( "CheckBox" );
+
+      if( box )
+      {
+        box.SetVisible( false );
+
+        Actor tick = box.FindChildByName( "Tick" );
+        if( tick )
+        {
+          tick.SetVisible( false );
+        }
+      }
+    }
+
+    mTapDetector.Reset();
+
+    mReplaceButton.SetVisible( false );
+  }
+
+  bool OnReplaceButtonClicked( Toolkit::Button button )
+  {
+    ItemContainer replaceList;
+
+    for( unsigned int i = 0u; i < mItemView.GetChildCount(); ++i )
+    {
+      Actor child = mItemView.GetChildAt( i );
+      Actor tick = child.FindChildByName( "Tick" );
+
+      if( tick && tick.IsVisible() )
+      {
+        replaceList.push_back( Item( mItemView.GetItemId(child), NewItem(rand()) ) );
+      }
+    }
+
+    if( ! replaceList.empty() )
+    {
+      mItemView.ReplaceItems( replaceList, 0.5f );
+    }
+
+    return true;
+  }
+
+  void SetLayoutTitle()
+  {
+    if( MODE_NORMAL == mMode )
+    {
+      std::stringstream ss(APPLICATION_TITLE);
+      switch(mCurrentLayout)
+      {
+      case SPIRAL_LAYOUT:
+        ss << APPLICATION_TITLE << ": " << SPIRAL_LABEL;
+        break;
+      case GRID_LAYOUT:
+        ss << APPLICATION_TITLE << ": " << GRID_LABEL;
+        break;
+      case DEPTH_LAYOUT:
+        ss << APPLICATION_TITLE << ": " << DEPTH_LABEL;
+        break;
+      default:
+        break;
+      }
+      SetTitle(ss.str());
+    }
+  }
+
+  void SetLayoutImage()
+  {
+    if( mLayoutButton )
+    {
+      switch( mCurrentLayout )
+      {
+        case SPIRAL_LAYOUT:
+        {
+          mLayoutButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, SPIRAL_LAYOUT_IMAGE );
+          mLayoutButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, SPIRAL_LAYOUT_IMAGE_SELECTED );
+          break;
+        }
+
+        case GRID_LAYOUT:
+        {
+          mLayoutButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, GRID_LAYOUT_IMAGE );
+          mLayoutButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, GRID_LAYOUT_IMAGE_SELECTED );
+          break;
+        }
+
+        case DEPTH_LAYOUT:
+        {
+          mLayoutButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, DEPTH_LAYOUT_IMAGE );
+          mLayoutButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, DEPTH_LAYOUT_IMAGE_SELECTED );
+          break;
+        }
+
+        default:
+          break;
+      }
+    }
+  }
+
+public: // From ItemFactory
+
+  /**
+   * Query the number of items available from the factory.
+   * The maximum available item has an ID of GetNumberOfItems() - 1.
+   */
+  virtual unsigned int GetNumberOfItems()
+  {
+    return NUM_IMAGES * 10;
+  }
+
+  /**
+   * Create an Actor to represent a visible item.
+   * @param itemId
+   * @return the created actor.
+   */
+  virtual Actor NewItem(unsigned int itemId)
+  {
+    // Create an image view for this item
+    Property::Map propertyMap;
+    propertyMap.Insert(Toolkit::Visual::Property::TYPE,  Visual::IMAGE);
+    propertyMap.Insert(ImageVisual::Property::URL, IMAGE_PATHS[ itemId % NUM_IMAGES ] );
+    propertyMap.Insert(DevelVisual::Property::VISUAL_FITTING_MODE, DevelVisual::FILL);
+    ImageView actor = ImageView::New();
+    actor.SetProperty( Toolkit::ImageView::Property::IMAGE, propertyMap );
+    actor.SetZ( 0.0f );
+    actor.SetPosition( INITIAL_OFFSCREEN_POSITION );
+
+    // Add a border image child actor
+    ImageView borderActor = ImageView::New();
+    borderActor.SetParentOrigin( ParentOrigin::CENTER );
+    borderActor.SetAnchorPoint( AnchorPoint::CENTER );
+    borderActor.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT, Dimension::ALL_DIMENSIONS );
+    borderActor.SetSizeModeFactor( Vector3( 2.0f * ITEM_BORDER_SIZE, 2.0f * ITEM_BORDER_SIZE, 0.0f ) );
+    borderActor.SetColorMode( USE_PARENT_COLOR );
+
+    Property::Map borderProperty;
+    borderProperty.Insert( Toolkit::Visual::Property::TYPE, Visual::BORDER );
+    borderProperty.Insert( BorderVisual::Property::COLOR, Color::WHITE );
+    borderProperty.Insert( BorderVisual::Property::SIZE, ITEM_BORDER_SIZE );
+    borderProperty.Insert( BorderVisual::Property::ANTI_ALIASING, true );
+    borderActor.SetProperty( ImageView::Property::IMAGE, borderProperty );
+
+    actor.Add(borderActor);
+
+    actor.SetKeyboardFocusable( true );
+
+    Vector3 spiralItemSize;
+    static_cast<ItemLayout&>(*mSpiralLayout).GetItemSize( 0u, Vector3( Stage::GetCurrent().GetSize() ), spiralItemSize );
+
+    // Add a checkbox child actor; invisible until edit-mode is enabled
+    ImageView checkbox = ImageView::New();
+    checkbox.SetName( "CheckBox" );
+    checkbox.SetColorMode( USE_PARENT_COLOR );
+    checkbox.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    checkbox.SetAnchorPoint( AnchorPoint::TOP_RIGHT );
+    checkbox.SetSize( spiralItemSize.width * 0.2f, spiralItemSize.width * 0.2f );
+    checkbox.SetPosition( -SELECTION_BORDER_WIDTH, SELECTION_BORDER_WIDTH );
+    checkbox.SetZ( 0.1f );
+
+    Property::Map solidColorProperty;
+    solidColorProperty.Insert( Toolkit::Visual::Property::TYPE, Visual::COLOR );
+    solidColorProperty.Insert( ColorVisual::Property::MIX_COLOR, Vector4(0.f, 0.f, 0.f, 0.6f) );
+    checkbox.SetProperty( ImageView::Property::IMAGE, solidColorProperty );
+
+    if( MODE_REMOVE_MANY  != mMode &&
+        MODE_INSERT_MANY  != mMode &&
+        MODE_REPLACE_MANY != mMode )
+    {
+      checkbox.SetVisible( false );
+    }
+    borderActor.Add( checkbox );
+
+    ImageView tick = ImageView::New( SELECTED_IMAGE );
+    tick.SetName( "Tick" );
+    tick.SetColorMode( USE_PARENT_COLOR );
+    tick.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    tick.SetAnchorPoint( AnchorPoint::TOP_RIGHT );
+    tick.SetSize( spiralItemSize.width * 0.2f, spiralItemSize.width * 0.2f );
+    tick.SetZ( 0.2f );
+    tick.SetVisible( false );
+    checkbox.Add( tick );
+
+    // Connect new items for various editing modes
+    if( mTapDetector )
+    {
+      mTapDetector.Attach( actor );
+    }
+
+    return actor;
+  }
+
+private:
+
+  /**
+   * Sets/Updates the title of the View
+   * @param[in] title The new title for the view.
+   */
+  void SetTitle(const std::string& title)
+  {
+    if(!mTitleActor)
+    {
+      mTitleActor = DemoHelper::CreateToolBarLabel( "" );
+      // Add title to the tool bar.
+      mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Alignment::HorizontalCenter );
+    }
+
+    mTitleActor.SetProperty( TextLabel::Property::TEXT, title );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+  Mode mMode;
+
+  Toolkit::Control mView;
+  unsigned int mOrientation;
+
+  Toolkit::ToolBar mToolBar;
+  TextLabel mTitleActor;             ///< The Toolbar's Title.
+
+  ItemView mItemView;
+  unsigned int mCurrentLayout;
+  float mDurationSeconds;
+
+  ItemLayoutPtr mSpiralLayout;
+  ItemLayoutPtr mDepthLayout;
+  ItemLayoutPtr mGridLayout;
+
+  TapGestureDetector mTapDetector;
+  Toolkit::PushButton mLayoutButton;
+  Toolkit::PushButton mDeleteButton;
+  Toolkit::PushButton mInsertButton;
+  Toolkit::PushButton mReplaceButton;
+
+  LongPressGestureDetector mLongPressDetector;
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  ItemViewExample test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/line-mesh/line-mesh-example.cpp b/examples/line-mesh/line-mesh-example.cpp
new file mode 100644 (file)
index 0000000..24d1504
--- /dev/null
@@ -0,0 +1,400 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+#include <sstream>
+
+using namespace Dali;
+
+namespace
+{
+
+#define MAKE_SHADER(A)#A
+
+const char* VERTEX_SHADER = MAKE_SHADER(
+attribute mediump vec2    aPosition1;
+attribute mediump vec2    aPosition2;
+attribute lowp    vec3    aColor;
+uniform   mediump mat4    uMvpMatrix;
+uniform   mediump vec3    uSize;
+uniform   mediump float   uMorphAmount;
+
+varying   lowp    vec3    vColor;
+
+void main()
+{
+  mediump vec2 morphPosition = mix(aPosition1, aPosition2, uMorphAmount);
+  mediump vec4 vertexPosition = vec4(morphPosition, 0.0, 1.0);
+  vColor = aColor;
+  vertexPosition.xyz *= uSize;
+  vertexPosition = uMvpMatrix * vertexPosition;
+  gl_Position = vertexPosition;
+}
+);
+
+const char* FRAGMENT_SHADER = MAKE_SHADER(
+uniform lowp  vec4    uColor;
+uniform sampler2D     sTexture;
+
+varying   lowp        vec3 vColor;
+
+void main()
+{
+  gl_FragColor = uColor * vec4( vColor, 1.0 );
+}
+);
+
+const unsigned short INDEX_LINES[] = { 0, 1, 1, 2, 2, 3, 3, 4, 4, 0 };
+const unsigned short INDEX_LOOP[] =  { 0, 1, 2, 3, 4 };
+const unsigned short INDEX_STRIP[] = { 0, 1, 2, 3, 4, 0 };
+const unsigned short* INDICES[3] = { &INDEX_LINES[0], &INDEX_LOOP[0], &INDEX_STRIP[0] };
+const unsigned int INDICES_SIZE[3] = { sizeof(INDEX_LINES)/sizeof(INDEX_LINES[0]), sizeof(INDEX_LOOP)/sizeof(INDEX_LOOP[0]), sizeof(INDEX_STRIP)/sizeof(INDEX_STRIP[0])};
+
+Geometry CreateGeometry()
+{
+  // Create vertices
+  struct Vertex
+  {
+    Vector2 position1;
+    Vector2 position2;
+    Vector3 color;
+  };
+
+  // Create new geometry object
+  Vertex pentagonVertexData[5] =
+    {
+      { Vector2(  0.0f,   1.00f),  Vector2(  0.0f,  -1.00f),  Vector3( 1.0f, 1.0f, 1.0f ) }, // 0
+      { Vector2( -0.95f,  0.31f),  Vector2(  0.59f,  0.81f),  Vector3( 1.0f, 0.0f, 0.0f ) }, // 1
+      { Vector2( -0.59f, -0.81f),  Vector2( -0.95f, -0.31f),  Vector3( 0.0f, 1.0f, 0.0f ) }, // 2
+      { Vector2(  0.59f, -0.81f),  Vector2(  0.95f, -0.31f),  Vector3( 0.0f, 0.0f, 1.0f ) }, // 3
+      { Vector2(  0.95f,  0.31f),  Vector2( -0.59f,  0.81f),  Vector3( 1.0f, 1.0f, 0.0f ) }, // 4
+    };
+
+  Property::Map pentagonVertexFormat;
+  pentagonVertexFormat["aPosition1"] = Property::VECTOR2;
+  pentagonVertexFormat["aPosition2"] = Property::VECTOR2;
+  pentagonVertexFormat["aColor"] = Property::VECTOR3;
+  PropertyBuffer pentagonVertices = PropertyBuffer::New( pentagonVertexFormat );
+  pentagonVertices.SetData(pentagonVertexData, 5);
+
+
+  // Create the geometry object
+  Geometry pentagonGeometry = Geometry::New();
+  pentagonGeometry.AddVertexBuffer( pentagonVertices );
+  pentagonGeometry.SetIndexBuffer( INDICES[0], INDICES_SIZE[0] );
+  pentagonGeometry.SetType( Geometry::LINES );
+  return pentagonGeometry;
+}
+
+} // anonymous namespace
+
+// This example shows how to morph between 2 meshes with the same number of
+// vertices.
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * The example controller constructor.
+   * @param[in] application The application instance
+   */
+  ExampleController( Application& application )
+  : mApplication( application ),
+    mStageSize(),
+    mShader(),
+    mGeometry(),
+    mRenderer(),
+    mMeshActor(),
+    mButtons(),
+    mMinusButton(),
+    mPlusButton(),
+    mIndicesCountLabel(),
+    mPrimitiveType( Geometry::LINES ),
+    mCurrentIndexCount( 0 ),
+    mMaxIndexCount( 0 )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ExampleController::Create );
+  }
+
+  /**
+   * The example controller destructor
+   */
+  ~ExampleController()
+  {
+    // Nothing to do here;
+  }
+
+  /**
+   * Invoked upon creation of application
+   * @param[in] application The application instance
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    // initial settings
+    mPrimitiveType = Geometry::LINES;
+    mCurrentIndexCount = 10;
+    mMaxIndexCount = 10;
+
+    CreateRadioButtons();
+
+    stage.KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    mStageSize = stage.GetSize();
+
+    Initialise();
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    stage.SetBackgroundColor(Vector4(0.0f, 0.2f, 0.2f, 1.0f));
+  }
+
+  /**
+   * Invoked whenever application changes the type of geometry drawn
+   */
+  void Initialise()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    // destroy mesh actor and its resources if already exists
+    if( mMeshActor )
+    {
+      stage.Remove( mMeshActor );
+      mMeshActor.Reset();
+    }
+
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+    mGeometry = CreateGeometry();
+    mRenderer = Renderer::New( mGeometry, mShader );
+
+    mRenderer.SetIndexRange( 0, 10 ); // lines
+    mPrimitiveType = Geometry::LINES;
+
+    mMeshActor = Actor::New();
+    mMeshActor.AddRenderer( mRenderer );
+    mMeshActor.SetSize(200, 200);
+
+    Property::Index morphAmountIndex = mMeshActor.RegisterProperty( "uMorphAmount", 0.0f );
+
+    mRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, 0 );
+
+    mMeshActor.SetParentOrigin( ParentOrigin::CENTER );
+    mMeshActor.SetAnchorPoint( AnchorPoint::CENTER );
+    stage.Add( mMeshActor );
+
+    Animation  animation = Animation::New(5);
+    KeyFrames keyFrames = KeyFrames::New();
+    keyFrames.Add(0.0f, 0.0f);
+    keyFrames.Add(1.0f, 1.0f);
+
+    animation.AnimateBetween( Property( mMeshActor, morphAmountIndex ), keyFrames, AlphaFunction(AlphaFunction::SIN) );
+    animation.SetLooping(true);
+    animation.Play();
+  }
+
+  /**
+   * Invoked on create
+   */
+  void CreateRadioButtons()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    Toolkit::TableView modeSelectTableView = Toolkit::TableView::New( 4, 1 );
+    modeSelectTableView.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    modeSelectTableView.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    modeSelectTableView.SetFitHeight( 0 );
+    modeSelectTableView.SetFitHeight( 1 );
+    modeSelectTableView.SetFitHeight( 2 );
+    modeSelectTableView.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+    modeSelectTableView.SetScale( Vector3( 0.8f, 0.8f, 0.8f ));
+
+    const char* labels[] =
+    {
+      "LINES",
+      "LINE_LOOP",
+      "LINE_STRIP"
+    };
+
+    for( int i = 0; i < 3; ++i )
+    {
+      Dali::Toolkit::RadioButton radio = Dali::Toolkit::RadioButton::New();
+
+      radio.SetProperty( Toolkit::Button::Property::LABEL,
+                                 Property::Map()
+                                  .Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT )
+                                  .Add( Toolkit::TextVisual::Property::TEXT, labels[i] )
+                                  .Add( Toolkit::TextVisual::Property::TEXT_COLOR, Vector4( 0.8f, 0.8f, 0.8f, 1.0f ) )
+                               );
+
+      radio.SetParentOrigin( ParentOrigin::TOP_LEFT );
+      radio.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+      radio.SetProperty( Toolkit::Button::Property::SELECTED, i == 0 );
+      radio.PressedSignal().Connect( this, &ExampleController::OnButtonPressed );
+      mButtons[i] = radio;
+      modeSelectTableView.AddChild( radio, Toolkit::TableView::CellPosition( i,  0 ) );
+    }
+
+    Toolkit::TableView elementCountTableView = Toolkit::TableView::New( 1, 3 );
+    elementCountTableView.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+    elementCountTableView.SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
+    elementCountTableView.SetAnchorPoint( AnchorPoint::BOTTOM_LEFT );
+    elementCountTableView.SetFitHeight( 0 );
+    elementCountTableView.SetFitWidth( 0 );
+    elementCountTableView.SetFitWidth( 1 );
+    elementCountTableView.SetFitWidth( 2 );
+    mMinusButton = Toolkit::PushButton::New();
+    mMinusButton.SetProperty( Toolkit::Button::Property::LABEL, "<<" );
+    mMinusButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mMinusButton.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
+
+    Toolkit::PushButton mPlusButton = Toolkit::PushButton::New();
+    mPlusButton.SetProperty( Toolkit::Button::Property::LABEL, ">>" );
+    mPlusButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mPlusButton.SetAnchorPoint( AnchorPoint::CENTER_RIGHT );
+
+    mMinusButton.ClickedSignal().Connect( this, &ExampleController::OnButtonClicked );
+    mPlusButton.ClickedSignal().Connect( this, &ExampleController::OnButtonClicked );
+
+    mIndicesCountLabel = Toolkit::TextLabel::New();
+    mIndicesCountLabel.SetParentOrigin( ParentOrigin::CENTER );
+    mIndicesCountLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+
+    std::stringstream str;
+    str << mCurrentIndexCount;
+    mIndicesCountLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, str.str() );
+    mIndicesCountLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Vector4( 1.0, 1.0, 1.0, 1.0 ) );
+    mIndicesCountLabel.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "BOTTOM");
+    mIndicesCountLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::WIDTH );
+    mIndicesCountLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+
+    elementCountTableView.AddChild( mMinusButton, Toolkit::TableView::CellPosition( 0,  0 ) );
+    elementCountTableView.AddChild( mIndicesCountLabel, Toolkit::TableView::CellPosition( 0,  1 ) );
+    elementCountTableView.AddChild( mPlusButton, Toolkit::TableView::CellPosition( 0,  2 ) );
+
+    stage.Add(modeSelectTableView);
+    stage.Add(elementCountTableView);
+  }
+
+  /**
+   * Invoked whenever the quit button is clicked
+   * @param[in] button the quit button
+   */
+  bool OnQuitButtonClicked( Toolkit::Button button )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  bool OnButtonPressed( Toolkit::Button button )
+  {
+    int indicesArray;
+    if( button == mButtons[0] )
+    {
+      mCurrentIndexCount = 10;
+      mMaxIndexCount = 10;
+      mPrimitiveType = Geometry::LINES;
+      indicesArray = 0;
+    }
+    else if( button == mButtons[1] )
+    {
+      mCurrentIndexCount = 5;
+      mMaxIndexCount = 5;
+      mPrimitiveType = Geometry::LINE_LOOP;
+      indicesArray = 1;
+    }
+    else
+    {
+      mCurrentIndexCount = 6;
+      mMaxIndexCount = 6;
+      mPrimitiveType = Geometry::LINE_STRIP;
+      indicesArray = 2;
+    }
+
+    std::stringstream str;
+    str << mCurrentIndexCount;
+    mIndicesCountLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, str.str() );
+    mGeometry.SetType( mPrimitiveType );
+    mGeometry.SetIndexBuffer( INDICES[ indicesArray ], INDICES_SIZE[ indicesArray ] );
+    mRenderer.SetIndexRange( 0, mCurrentIndexCount );
+    return true;
+  }
+
+  bool OnButtonClicked( Toolkit::Button button )
+  {
+    if( button == mMinusButton )
+    {
+      if (--mCurrentIndexCount < 2 )
+        mCurrentIndexCount = 2;
+    }
+    else
+    {
+      if (++mCurrentIndexCount > mMaxIndexCount )
+        mCurrentIndexCount = mMaxIndexCount;
+    }
+
+    std::stringstream str;
+    str << mCurrentIndexCount;
+    mIndicesCountLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, str.str() );
+    mRenderer.SetIndexRange( 0, mCurrentIndexCount );
+    return true;
+  }
+
+private:
+
+  Application&  mApplication;                             ///< Application instance
+  Vector3 mStageSize;                                     ///< The size of the stage
+
+  Shader   mShader;
+  Geometry mGeometry;
+  Renderer mRenderer;
+  Actor    mMeshActor;
+  Toolkit::RadioButton  mButtons[3];
+  Toolkit::PushButton   mMinusButton;
+  Toolkit::PushButton   mPlusButton;
+  Toolkit::TextLabel    mIndicesCountLabel;
+  Geometry::Type mPrimitiveType;
+  int      mCurrentIndexCount;
+  int      mMaxIndexCount;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ExampleController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/magnifier/magnifier-example.cpp b/examples/magnifier/magnifier-example.cpp
new file mode 100644 (file)
index 0000000..d319540
--- /dev/null
@@ -0,0 +1,411 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/magnifier/magnifier.h>
+using namespace Dali;
+
+namespace
+{
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-magnifier.jpg" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* APPLICATION_TITLE( "Magnifier Example" );
+const Vector3 MAGNIFIER_SIZE(0.25f, 0.25f, 0.0f);       ///< Magnifier sides should be 25% of the width of the stage
+const float ANIMATION_DURATION(60.0f);                  ///< Run animation for a minute before repeating.
+const float MAGNIFIER_DISPLAY_DURATION(0.125f);         ///< Duration in seconds for show/hide manual magnifier animation
+
+const float MAGNIFICATION_FACTOR(2.0f);                 ///< Amount to magnify by.
+const float MAGNIFIER_INDENT(10.0f);                    ///< Indentation around edge of stage to define where magnifiers may move.
+const float FINGER_RADIUS_INCHES(0.25f);                ///< Average finger radius in inches from the center of index finger to edge.
+
+/**
+ * MagnifierPathConstraint
+ * This constraint governs the position of the
+ * animating magnifier in a swirly pattern around
+ * the stage.
+ */
+struct MagnifierPathConstraint
+{
+  /**
+   * Constraint constructor
+   * @param[in] stageSize The stage size so that the constraint can create a path
+   * within stage bounds.
+   */
+  MagnifierPathConstraint(const Vector3& stageSize,
+                          Vector3 offset = Vector3::ZERO)
+  : mStageSize(stageSize),
+    mOffset(offset)
+  {
+  }
+
+  void operator()( Vector3& current, const PropertyInputContainer& inputs )
+  {
+    float time = inputs[1]->GetFloat();
+    const Vector3& size = inputs[0]->GetVector3();
+
+    current = mOffset;
+
+    Vector3 range( mStageSize - size - Vector3::ONE * MAGNIFIER_INDENT * 2.0f );
+    current.x += 0.5f * sinf(time * 0.471f) * range.width;
+    current.y += 0.5f * sinf(time * 0.8739f) * range.height;
+  }
+
+  Vector3 mStageSize;     ///< Keep track of the stage size for determining path within stage bounds
+  Vector3 mOffset;        ///< Amount to offset magnifier path
+};
+
+/**
+ * Confine Actor to boundaries of reference actor (e.g. Parent)
+ * Actor bounds (top-left position + size) are confined to reference Actor's
+ * bounds.
+ */
+struct ConfinementConstraint
+{
+  /**
+   * Confinement constraint constructor.
+   * @param[in] offsetOrigin (optional) Whether to offset the parent origin or not.
+   * @param[in] topLeftMargin (optional) Top-Left margins (defaults to 0.0f, 0.0f)
+   * @param[in] bottomRightMargin (optional) Bottom-Right margins (defaults to 0.0f, 0.0f)
+   * @param[in] flipHorizontal (optional) whether to flip Actor to the other side X if near edge, and by
+   * how much (defaults to 0.0f i.e. no flip)
+   * @param[in] flipVertical (optional) whether to flip Actor to the other side Y if near edge, and by
+   * how much (defaults to 0.0f i.e. no flip)
+   */
+  ConfinementConstraint(Vector3 offsetOrigin = Vector3::ZERO, Vector2 topLeftMargin = Vector2::ZERO, Vector2 bottomRightMargin = Vector2::ZERO, bool flipHorizontal = false, bool flipVertical = false)
+  : mOffsetOrigin(offsetOrigin),
+    mMinIndent(topLeftMargin),
+    mMaxIndent(bottomRightMargin),
+    mFlipHorizontal(flipHorizontal),
+    mFlipVertical(flipVertical)
+  {
+  }
+
+  void operator()( Vector3& current, const PropertyInputContainer& inputs )
+  {
+    const Vector3& size = inputs[0]->GetVector3();
+    const Vector3 origin = inputs[1]->GetVector3();
+    const Vector3& anchor = inputs[2]->GetVector3();
+    const Vector3& referenceSize = inputs[3]->GetVector3();
+
+    Vector3 offset(mOffsetOrigin * referenceSize);
+
+    // Get actual position of Actor relative to parent's Top-Left.
+    Vector3 position(current + offset + origin * referenceSize);
+
+    current += offset;
+
+    // if top-left corner is outside of Top-Left bounds, then push back in screen.
+    Vector3 corner(position - size * anchor - mMinIndent);
+
+    if(mFlipHorizontal && corner.x < 0.0f)
+    {
+      corner.x = 0.0f;
+      current.x += size.width;
+    }
+
+    if(mFlipVertical && corner.y < 0.0f)
+    {
+      corner.y = 0.0f;
+      current.y += size.height;
+    }
+
+    current.x -= std::min(corner.x, 0.0f);
+    current.y -= std::min(corner.y, 0.0f);
+
+    // if bottom-right corner is outside of Bottom-Right bounds, then push back in screen.
+    corner += size - referenceSize + mMinIndent + mMaxIndent;
+
+    if(mFlipHorizontal && corner.x > 0.0f)
+    {
+      corner.x = 0.0f;
+      current.x -= size.width;
+    }
+
+    if(mFlipVertical && corner.y > 0.0f)
+    {
+      corner.y = 0.0f;
+      current.y -= size.height;
+    }
+
+    current.x -= std::max(corner.x, 0.0f);
+    current.y -= std::max(corner.y, 0.0f);
+  }
+
+  Vector3 mOffsetOrigin;                                ///< Manual Parent Offset Origin.
+  Vector3 mMinIndent;                                   ///< Top-Left Margin
+  Vector3 mMaxIndent;                                   ///< Bottom-Right Margin.
+  bool mFlipHorizontal;                                 ///< Whether to flip actor's position if exceeds horizontal screen bounds
+  bool mFlipVertical;                                   ///< Whether to flip actor's position if exceeds vertical screen bounds
+};
+
+}
+
+// This example shows how to use the Magnifier component.
+//
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * The example controller constructor.
+   * @param[in] application The application instance
+   */
+  ExampleController( Application& application )
+  : mApplication( application ),
+    mView(),
+    mAnimationTime(0.0f),
+    mAnimationTimeProperty( Property::INVALID_INDEX ),
+    mMagnifierShown(false)
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ExampleController::Create );
+  }
+
+  /**
+   * The example controller destructor
+   */
+  ~ExampleController()
+  {
+    // Nothing to do here;
+  }
+
+  /**
+   * Invoked upon creation of application
+   * @param[in] application The application instance
+   */
+  void Create( Application& application )
+  {
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    mStageSize = Stage::GetCurrent().GetSize();
+
+    // The Init signal is received once (only) during the Application lifetime
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    Toolkit::ToolBar toolBar;
+    mContent = DemoHelper::CreateView( application,
+                                       mView,
+                                       toolBar,
+                                       BACKGROUND_IMAGE,
+                                       TOOLBAR_IMAGE,
+                                       APPLICATION_TITLE );
+
+    mContent.SetLeaveRequired(true);
+    mContent.TouchSignal().Connect( this, &ExampleController::OnTouched );
+
+    // Create magnifier (controlled by human touch)
+    Layer overlay = Layer::New();
+    overlay.SetSensitive(false);
+    overlay.SetParentOrigin( ParentOrigin::CENTER );
+    overlay.SetSize(mStageSize);
+    Stage::GetCurrent().Add(overlay);
+
+    mMagnifier = Toolkit::Magnifier::New();
+    mMagnifier.SetSourceActor( mView );
+    mMagnifier.SetSize( MAGNIFIER_SIZE * mStageSize.width );  // Size of magnifier is in relation to stage width
+    mMagnifier.SetProperty( Toolkit::Magnifier::Property::MAGNIFICATION_FACTOR, MAGNIFICATION_FACTOR );
+    mMagnifier.SetScale(Vector3::ZERO);
+    overlay.Add( mMagnifier );
+
+    // Apply constraint to animate the position of the magnifier.
+    Constraint constraint = Constraint::New<Vector3>( mMagnifier, Actor::Property::POSITION, ConfinementConstraint(Vector3( 0.5f, 0.5f, 0.0f ), Vector2::ONE * MAGNIFIER_INDENT, Vector2::ONE * MAGNIFIER_INDENT) );
+    constraint.AddSource( LocalSource(Actor::Property::SIZE) );
+    constraint.AddSource( LocalSource(Actor::Property::PARENT_ORIGIN) );
+    constraint.AddSource( LocalSource(Actor::Property::ANCHOR_POINT) );
+    constraint.AddSource( ParentSource(Actor::Property::SIZE) );
+    constraint.SetRemoveAction(Constraint::Discard);
+    constraint.Apply();
+
+    // Create bouncing magnifier automatically bounces around screen.
+    mBouncingMagnifier = Toolkit::Magnifier::New();
+    mBouncingMagnifier.SetSourceActor( mView );
+    mBouncingMagnifier.SetSize( MAGNIFIER_SIZE * mStageSize.width ); // Size of magnifier is in relation to stage width
+    mBouncingMagnifier.SetProperty( Toolkit::Magnifier::Property::MAGNIFICATION_FACTOR, MAGNIFICATION_FACTOR );
+    overlay.Add( mBouncingMagnifier );
+
+    mAnimationTimeProperty = mBouncingMagnifier.RegisterProperty("animationTime",  0.0f);
+    ContinueAnimation();
+
+    // Apply constraint to animate the position of the magnifier.
+    constraint = Constraint::New<Vector3>( mBouncingMagnifier, Actor::Property::POSITION, MagnifierPathConstraint(mStageSize, mStageSize * 0.5f) );
+    constraint.AddSource( LocalSource(Actor::Property::SIZE) );
+    constraint.AddSource( LocalSource(mAnimationTimeProperty) );
+    constraint.Apply();
+
+    // Apply constraint to animate the source of the magnifier.
+    constraint = Constraint::New<Vector3>( mBouncingMagnifier, Toolkit::Magnifier::Property::SOURCE_POSITION, MagnifierPathConstraint(mStageSize) );
+    constraint.AddSource( LocalSource(Actor::Property::SIZE) );
+    constraint.AddSource( LocalSource(mAnimationTimeProperty) );
+    constraint.Apply();
+  }
+
+  /**
+   * Invoked whenever the animation finishes (every 60 seconds)
+   * @param[in] animation The animation
+   */
+  void OnAnimationFinished( Animation& animation )
+  {
+    animation.FinishedSignal().Disconnect(this, &ExampleController::OnAnimationFinished);
+    animation.Clear();
+    ContinueAnimation();
+  }
+
+  /**
+   * Resumes animation for another ANIMATION_DURATION seconds.
+   */
+  void ContinueAnimation()
+  {
+    Animation animation = Animation::New(ANIMATION_DURATION);
+    mAnimationTime += ANIMATION_DURATION;
+    animation.AnimateTo( Property(mBouncingMagnifier, mAnimationTimeProperty), mAnimationTime );
+    animation.Play();
+    animation.FinishedSignal().Connect(this, &ExampleController::OnAnimationFinished);
+  }
+
+  /**
+   * Invoked whenever the quit button is clicked
+   * @param[in] button the quit button
+   */
+  bool OnQuitButtonClicked( Toolkit::Button button )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * Invoked whenever the content (screen) is touched
+   * @param[in] actor The actor that received the touch
+   * @param[in] event The touch-event information
+   */
+  bool OnTouched( Actor actor, const TouchData& event )
+  {
+    if(event.GetPointCount() > 0)
+    {
+      switch( event.GetState( 0 ) )
+      {
+        case PointState::DOWN:
+        case PointState::MOTION:
+        {
+          ShowMagnifier();
+          break;
+        }
+        case PointState::UP:
+        case PointState::LEAVE:
+        case PointState::INTERRUPTED:
+        {
+          HideMagnifier();
+          break;
+        }
+        case PointState::STATIONARY:
+        {
+          break;
+        }
+      } // end switch
+
+      Vector3 touchPoint( event.GetScreenPosition( 0 ) );
+
+      SetMagnifierPosition(touchPoint - mStageSize * 0.5f);
+    }
+
+    return false;
+  }
+
+  /**
+   * Shows the magnifier
+   */
+  void ShowMagnifier()
+  {
+    if(!mMagnifierShown)
+    {
+      Animation animation = Animation::New(MAGNIFIER_DISPLAY_DURATION);
+      animation.AnimateTo(Property(mMagnifier, Actor::Property::SCALE), Vector3::ONE, AlphaFunction::EASE_IN);
+      animation.Play();
+      mMagnifierShown = true;
+    }
+  }
+
+  /**
+   * Hides the magnifier
+   */
+  void HideMagnifier()
+  {
+    if(mMagnifierShown)
+    {
+      Animation animation = Animation::New(MAGNIFIER_DISPLAY_DURATION);
+      animation.AnimateTo(Property(mMagnifier, Actor::Property::SCALE), Vector3::ZERO, AlphaFunction::EASE_OUT);
+      animation.Play();
+      mMagnifierShown = false;
+    }
+  }
+
+  /**
+   * Manually sets the magnifier position
+   * @param[in] position The magnifier's position relative to center of stage
+   */
+  void SetMagnifierPosition(const Vector3 position)
+  {
+    mMagnifier.SetProperty( Toolkit::Magnifier::Property::SOURCE_POSITION, position );
+
+    // position magnifier glass such that bottom edge is touching/near top of finger.
+    Vector3 glassPosition(position);
+    glassPosition.y -= mStageSize.width * MAGNIFIER_SIZE.height * 0.5f + Stage::GetCurrent().GetDpi().height * FINGER_RADIUS_INCHES;
+
+    mMagnifier.SetPosition( glassPosition );
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;                             ///< Application instance
+  Toolkit::Control mView;                                 ///< The view
+  Layer mContent;                                         ///< The content layer
+  Toolkit::Magnifier mMagnifier;                          ///< The manually controlled magnifier
+  Toolkit::Magnifier mBouncingMagnifier;                  ///< The animating magnifier (swirly animation)
+  Vector3 mStageSize;                                     ///< The size of the stage
+  float mAnimationTime;                                   ///< Keep track of start animation time.
+  Property::Index mAnimationTimeProperty;                 ///< Animation time property (responsible for swirly animation)
+  bool mMagnifierShown;                                   ///< Flag indicating whether the magnifier is being shown or not.
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  ExampleController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/mesh-morph/mesh-morph-example.cpp b/examples/mesh-morph/mesh-morph-example.cpp
new file mode 100644 (file)
index 0000000..4fa17bb
--- /dev/null
@@ -0,0 +1,357 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+using namespace Dali;
+
+namespace
+{
+
+#define MAKE_SHADER(A)#A
+
+const char* VERTEX_SHADER = MAKE_SHADER(
+attribute mediump vec2    aInitPos;
+attribute mediump vec2    aFinalPos;
+attribute mediump vec3    aColor;
+uniform   mediump mat4    uMvpMatrix;
+uniform   mediump vec3    uSize;
+uniform   mediump float   uDelta;
+uniform   lowp    vec4    uColor;
+varying   lowp    vec4    vColor;
+
+void main()
+{
+  mediump vec4 vertexPosition = vec4(mix(aInitPos, aFinalPos, uDelta), 0.0, 1.0);
+  vertexPosition.xyz *= uSize;
+  vertexPosition = uMvpMatrix * vertexPosition;
+  gl_Position = vertexPosition;
+  vColor = vec4(aColor, 0.) * uColor;
+}
+);
+
+const char* FRAGMENT_SHADER = MAKE_SHADER(
+varying   lowp    vec4    vColor;
+
+void main()
+{
+  gl_FragColor = vColor;
+}
+);
+
+Geometry CreateGeometry()
+{
+  // Create vertices
+  struct VertexPosition { Vector2 position; };
+  struct VertexColor { Vector3 color; };
+
+  VertexPosition quad[] = {
+    // yellow
+    { Vector2(-.5, -.5) },
+    { Vector2( .0,  .0) },
+    { Vector2(-.5,  .5) },
+
+    // green
+    { Vector2(-.5, -.5) },
+    { Vector2( .5, -.5) },
+    { Vector2( .0,  .0) },
+
+    // blue
+    { Vector2(.5,  -.5)  },
+    { Vector2(.5,   .0)  },
+    { Vector2(.25, -.25) },
+
+    // red
+    { Vector2(.25, -.25) },
+    { Vector2(.5,   .0)  },
+    { Vector2(.25,  .25) },
+    { Vector2(.25,  .25) },
+    { Vector2(.0,   .0)  },
+    { Vector2(.25, -.25) },
+
+    // cyan
+    { Vector2( .0,  .0)  },
+    { Vector2( .25, .25) },
+    { Vector2(-.25, .25) },
+
+    // magenta
+    { Vector2(-.25, .25) },
+    { Vector2( .25, .25) },
+    { Vector2( .0,  .5)  },
+    { Vector2( .0,  .5)  },
+    { Vector2(-.5,  .5)  },
+    { Vector2(-.25, .25) },
+
+    // orange
+    { Vector2( .5, .0) },
+    { Vector2( .5, .5) },
+    { Vector2( .0, .5) },
+  };
+
+  float bigSide = 0.707106781;
+  float side = bigSide * .5f;
+ // float smallSide = side * .5f;
+
+  Vector2 pA = Vector2( side, .25 );
+  Vector2 pB = pA + Vector2( 0., bigSide );
+  Vector2 pC = pB + Vector2( -bigSide, 0. );
+  Vector2 pD = pA + Vector2(-.5, -.5 );
+  Vector2 pE = pD + Vector2( .0, 1. );
+  Vector2 pF = pD + Vector2(-side, side );
+  Vector2 pF2 = pD + Vector2( 0., bigSide );
+  Vector2 pG = pD + Vector2(-.25, .25 );
+  Vector2 pH = pD + Vector2( -.5, .0 );
+  Vector2 pI = pD + Vector2(-.25, -.25 );
+  Vector2 pJ = pD + Vector2( 0., -.5);
+  Vector2 pK = pD + Vector2(-.5, -.5);
+  Vector2 pL = pB + Vector2(0, -side);
+  Vector2 pM = pL + Vector2(side, -side);
+  Vector2 pN = pB + Vector2(side, -side);
+
+  VertexPosition cat[] = {
+    // yellow
+    { pA },
+    { pB },
+    { pC },
+
+    // green
+    { pD },
+    { pA },
+    { pE },
+
+    // blue
+    { pJ },
+    { pD },
+    { pI },
+
+    // red
+    { pI },
+    { pD },
+    { pG },
+    { pG },
+    { pH },
+    { pI },
+
+    // cyan
+    { pI },
+    { pH },
+    { pK },
+
+    // magenta
+    { pL },
+    { pM },
+    { pN },
+    { pN },
+    { pB },
+    { pL },
+
+    // orange
+    { pD },
+    { pF2 },
+    { pF },
+  };
+
+  VertexColor colors[] = {
+    // yellow
+    { Vector3( 1., 1., 0. ) },
+    { Vector3( 1., 1., 0. ) },
+    { Vector3( 1., 1., 0. ) },
+
+    // green
+    { Vector3( 0., 1., 0. ) },
+    { Vector3( 0., 1., 0. ) },
+    { Vector3( 0., 1., 0. ) },
+
+    // blue
+    { Vector3( 0., 0., 1. ) },
+    { Vector3( 0., 0., 1. ) },
+    { Vector3( 0., 0., 1. ) },
+
+    // red
+    { Vector3( 1., 0., 0. ) },
+    { Vector3( 1., 0., 0. ) },
+    { Vector3( 1., 0., 0. ) },
+    { Vector3( 1., 0., 0. ) },
+    { Vector3( 1., 0., 0. ) },
+    { Vector3( 1., 0., 0. ) },
+
+    // cyan
+    { Vector3( 0., 1., 1. ) },
+    { Vector3( 0., 1., 1. ) },
+    { Vector3( 0., 1., 1. ) },
+
+    // magenta
+    { Vector3( 1., 0., 1. ) },
+    { Vector3( 1., 0., 1. ) },
+    { Vector3( 1., 0., 1. ) },
+    { Vector3( 1., 0., 1. ) },
+    { Vector3( 1., 0., 1. ) },
+    { Vector3( 1., 0., 1. ) },
+
+    // orange
+    { Vector3( 1., 0.5, 0. ) },
+    { Vector3( 1., 0.5, 0. ) },
+    { Vector3( 1., 0.5, 0. ) },
+
+  };
+
+  unsigned int numberOfVertices = sizeof(quad)/sizeof(VertexPosition);
+
+  Property::Map initialPositionVertexFormat;
+  initialPositionVertexFormat["aInitPos"] = Property::VECTOR2;
+  PropertyBuffer initialPositionVertices = PropertyBuffer::New( initialPositionVertexFormat );
+  initialPositionVertices.SetData( quad, numberOfVertices );
+
+  Property::Map finalPositionVertexFormat;
+  finalPositionVertexFormat["aFinalPos"] = Property::VECTOR2;
+  PropertyBuffer finalPositionVertices = PropertyBuffer::New( finalPositionVertexFormat );
+  finalPositionVertices.SetData( cat, numberOfVertices );
+
+  Property::Map colorVertexFormat;
+  colorVertexFormat["aColor"] = Property::VECTOR3;
+  PropertyBuffer colorVertices = PropertyBuffer::New( colorVertexFormat );
+  colorVertices.SetData( colors, numberOfVertices );
+
+  // Create the geometry object
+  Geometry texturedQuadGeometry = Geometry::New();
+  texturedQuadGeometry.AddVertexBuffer( initialPositionVertices );
+  texturedQuadGeometry.AddVertexBuffer( finalPositionVertices );
+  texturedQuadGeometry.AddVertexBuffer( colorVertices );
+
+  return texturedQuadGeometry;
+}
+
+inline float StationarySin( float progress ) ///< Single revolution
+{
+  float val = cosf(progress * 2.0f * Math::PI) + .5f;
+  val = val > 1.f ? 1.f : val;
+  val = val < 0.f ? 0.f : val;
+  return val;
+}
+
+} // anonymous namespace
+
+// This example shows how to use a simple mesh
+//
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * The example controller constructor.
+   * @param[in] application The application instance
+   */
+  ExampleController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ExampleController::Create );
+  }
+
+  /**
+   * The example controller destructor
+   */
+  ~ExampleController()
+  {
+    // Nothing to do here;
+  }
+
+  /**
+   * Invoked upon creation of application
+   * @param[in] application The application instance
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    mStageSize = stage.GetSize();
+
+    // The Init signal is received once (only) during the Application lifetime
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+    mGeometry = CreateGeometry();
+    mRenderer = Renderer::New( mGeometry, mShader );
+
+    mMeshActor = Actor::New();
+    mMeshActor.AddRenderer( mRenderer );
+    mMeshActor.SetSize(400, 400);
+
+    Property::Index morphDeltaIndex = mMeshActor.RegisterProperty( "uDelta", 0.f );
+
+    mRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, 0 );
+
+    mMeshActor.SetParentOrigin( ParentOrigin::CENTER );
+    mMeshActor.SetAnchorPoint( AnchorPoint::CENTER );
+    stage.Add( mMeshActor );
+
+    Animation  animation = Animation::New(10);
+    animation.AnimateTo( Property( mMeshActor, morphDeltaIndex ), 1.f, StationarySin );
+    animation.SetLooping( true );
+    animation.Play();
+
+    stage.SetBackgroundColor(Vector4(0.0f, 0.2f, 0.2f, 1.0f));
+  }
+
+  /**
+   * Invoked whenever the quit button is clicked
+   * @param[in] button the quit button
+   */
+  bool OnQuitButtonClicked( Toolkit::Button button )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;                             ///< Application instance
+  Vector3 mStageSize;                                     ///< The size of the stage
+
+  Shader   mShader;
+  Geometry mGeometry;
+  Renderer mRenderer;
+  Actor    mMeshActor;
+  Timer    mMorphTimer;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ExampleController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/mesh-visual/mesh-visual-example.cpp b/examples/mesh-visual/mesh-visual-example.cpp
new file mode 100644 (file)
index 0000000..4a039df
--- /dev/null
@@ -0,0 +1,612 @@
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+// Keeps information about each model for access.
+struct Model
+{
+  Control control; // Control housing the mesh visual of the model.
+  Vector2 rotation; // Keeps track of rotation about x and y axis for manual rotation.
+  Animation rotationAnimation; // Automatically rotates when left alone.
+};
+
+// Files for meshes
+const char * const MODEL_FILE_TABLE[] =
+{
+    DEMO_MODEL_DIR "Dino.obj",
+    DEMO_MODEL_DIR "ToyRobot-Metal.obj",
+    DEMO_MODEL_DIR "Toyrobot-Plastic.obj"
+};
+
+const char * const MATERIAL_FILE_TABLE[] =
+{
+    DEMO_MODEL_DIR "Dino.mtl",
+    DEMO_MODEL_DIR "ToyRobot-Metal.mtl",
+    DEMO_MODEL_DIR "Toyrobot-Plastic.mtl"
+};
+
+const char * const TEXTURES_PATH( DEMO_IMAGE_DIR "" );
+
+// Possible shading modes.
+MeshVisual::ShadingMode::Value SHADING_MODE_TABLE[] =
+{
+  MeshVisual::ShadingMode::TEXTURED_WITH_DETAILED_SPECULAR_LIGHTING,
+  MeshVisual::ShadingMode::TEXTURED_WITH_SPECULAR_LIGHTING,
+  MeshVisual::ShadingMode::TEXTURELESS_WITH_DIFFUSE_LIGHTING
+};
+
+// Button labels.
+const char * const PAUSE =  "  ||  ";
+const char * const PLAY =   "  >  ";
+const char * const FIXED =  "FIXED";
+const char * const MANUAL = "MANUAL";
+const char * const FRONT =  "FRONT";
+const char * const BACK =   "BACK";
+
+// Image urls for the light.
+const char * const LIGHT_URL_FRONT = DEMO_IMAGE_DIR "light-icon-front.png";
+const char * const LIGHT_URL_BACK =  DEMO_IMAGE_DIR "light-icon-back.png";
+
+const float X_ROTATION_DISPLACEMENT_FACTOR = 60.0f;
+const float Y_ROTATION_DISPLACEMENT_FACTOR = 60.0f;
+const float MODEL_SCALE =                    0.75f;
+const float LIGHT_SCALE =                    0.15f;
+const float BUTTONS_OFFSET_BOTTOM =          0.08f;
+const float BUTTONS_OFFSET_SIDE =            0.2f;
+const int   NUM_MESHES =                     2;
+
+// Used to identify actors.
+const int MODEL_TAG = 0;
+const int LIGHT_TAG = 1;
+const int LAYER_TAG = 2;
+
+const Vector4 STAGE_COLOR( 211.0f / 255.0f, 211.0f / 255.0f, 211.0f / 255.0f, 1.0f ); ///< The color of the stage
+
+} // unnamed namespace
+
+class MeshVisualController : public ConnectionTracker
+{
+public:
+
+  MeshVisualController( Application& application )
+  : mApplication( application ),   //Store handle to the application.
+    mModelIndex( 1 ),              //Start with metal robot.
+    mShadingModeIndex( 0 ),        //Start with texture and detailed specular lighting.
+    mTag( -1 ),                    //Non-valid default, which will get set to a correct value when used.
+    mSelectedModelIndex( -1 ),     //Non-valid default, which will get set to a correct value when used.
+    mPaused( false ),              //Animations play by default.
+    mLightFixed( true ),           //The light is fixed by default.
+    mLightFront( true )            //The light is in front by default.
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &MeshVisualController::Create );
+  }
+
+  ~MeshVisualController()
+  {
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( STAGE_COLOR );
+
+    //Set up root layer to receive touch gestures.
+    Layer rootLayer = stage.GetRootLayer();
+    rootLayer.RegisterProperty( "Tag", LAYER_TAG ); //Used to differentiate between different kinds of actor.
+    rootLayer.TouchSignal().Connect( this, &MeshVisualController::OnTouch );
+
+    //Place models on the scene.
+    SetupModels( rootLayer );
+
+    //Place buttons on the scene.
+    SetupButtons( rootLayer );
+
+    //Add a light to the scene.
+    SetupLight( rootLayer );
+
+    //Allow for exiting of the application via key presses.
+    stage.KeyEventSignal().Connect( this, &MeshVisualController::OnKeyEvent );
+  }
+
+  //Loads and adds the models to the scene, inside containers for hit detection.
+  void SetupModels( Layer layer )
+  {
+    //Add containers to house each renderer-holding-actor.
+    for( int i = 0; i < NUM_MESHES; i++ )
+    {
+      mContainers[i] = Actor::New();
+      mContainers[i].SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mContainers[i].RegisterProperty( "Tag", MODEL_TAG ); //Used to differentiate between different kinds of actor.
+      mContainers[i].RegisterProperty( "Model", Property::Value( i ) ); //Used to index into the model.
+      mContainers[i].TouchSignal().Connect( this, &MeshVisualController::OnTouch );
+      layer.Add( mContainers[i] );
+    }
+
+    //Position each container individually on screen
+
+    //Main, central model
+    mContainers[0].SetSizeModeFactor( Vector3( MODEL_SCALE, MODEL_SCALE, 0.0f ) );
+    mContainers[0].SetParentOrigin( ParentOrigin::CENTER );
+    mContainers[0].SetAnchorPoint( AnchorPoint::CENTER );
+
+    //Top left model
+    mContainers[1].SetSizeModeFactor( Vector3( MODEL_SCALE / 3.0f, MODEL_SCALE / 3.0f, 0.0f ) );
+    mContainers[1].SetParentOrigin( Vector3( 0.05, 0.03, 0.5 ) ); //Offset from top left
+    mContainers[1].SetAnchorPoint( AnchorPoint::TOP_LEFT );
+
+    //Set up models
+    for( int i = 0; i < NUM_MESHES; i++ )
+    {
+      //Create control to display model
+      Control control = Control::New();
+      control.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      control.SetParentOrigin( ParentOrigin::CENTER );
+      control.SetAnchorPoint( AnchorPoint::CENTER );
+      mContainers[i].Add( control );
+
+      //Make model spin to demonstrate 3D
+      Animation rotationAnimation = Animation::New( 15.0f );
+      float spin = i % 2 == 0 ? 1.0f : -1.0f; //Make actors spin in different directions to better show independence.
+      rotationAnimation.AnimateBy( Property( control, Actor::Property::ORIENTATION ),
+                                   Quaternion( Degree( 0.0f ), Degree( spin * 360.0f ), Degree( 0.0f ) ) );
+      rotationAnimation.SetLooping( true );
+      rotationAnimation.Play();
+
+      //Store model information in corresponding structs.
+      mModels[i].control = control;
+      mModels[i].rotation.x = 0.0f;
+      mModels[i].rotation.y = 0.0f;
+      mModels[i].rotationAnimation = rotationAnimation;
+    }
+
+    //Calling this sets the model in the controls.
+    ReloadModel();
+  }
+
+  //Place the various buttons on the bottom of the screen, with title labels where necessary.
+  void SetupButtons( Layer layer )
+  {
+    //Actor for positioning model and shading mode buttons.
+    Actor positionActorModel = Actor::New();
+    positionActorModel.SetParentOrigin( Vector3( BUTTONS_OFFSET_SIDE, 1.0 - BUTTONS_OFFSET_BOTTOM, 0.5 ) );
+    positionActorModel.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    layer.Add( positionActorModel );
+
+    //Create button for model changing.
+    PushButton modelButton = Toolkit::PushButton::New();
+    modelButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    modelButton.ClickedSignal().Connect( this, &MeshVisualController::OnChangeModelClicked );
+    modelButton.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    modelButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    modelButton.SetProperty( Toolkit::Button::Property::LABEL, "Model" );
+    positionActorModel.Add( modelButton );
+
+    //Create button for shading mode changing.
+    PushButton shadingModeButton = Toolkit::PushButton::New();
+    shadingModeButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    shadingModeButton.ClickedSignal().Connect( this, &MeshVisualController::OnChangeShadingModeClicked );
+    shadingModeButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    shadingModeButton.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    shadingModeButton.SetProperty( Toolkit::Button::Property::LABEL, "Shading Mode" );
+    positionActorModel.Add( shadingModeButton );
+
+    //Text label title for changing model or shading mode.
+    TextLabel changeTitleLabel = TextLabel::New( "Change" );
+    changeTitleLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    changeTitleLabel.SetProperty( TextLabel::Property::UNDERLINE, "{\"thickness\":\"2.0\"}" );
+    changeTitleLabel.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    changeTitleLabel.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    modelButton.Add( changeTitleLabel );
+
+    //Create button for pausing animations.
+    PushButton pauseButton = Toolkit::PushButton::New();
+    pauseButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    pauseButton.ClickedSignal().Connect( this, &MeshVisualController::OnPauseClicked );
+    pauseButton.SetParentOrigin( Vector3( 0.5, 1.0 - BUTTONS_OFFSET_BOTTOM, 0.5 ) );
+    pauseButton.SetAnchorPoint( AnchorPoint::CENTER );
+    pauseButton.SetProperty( Toolkit::Button::Property::LABEL, PAUSE );
+    layer.Add( pauseButton );
+
+    //Actor for positioning light position buttons.
+    Actor positionActorLight = Actor::New();
+    positionActorLight.SetParentOrigin( Vector3( 1.0 - BUTTONS_OFFSET_SIDE, 1.0 - BUTTONS_OFFSET_BOTTOM, 0.5 ) );
+    positionActorLight.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    layer.Add( positionActorLight );
+
+    //Create button for switching between manual and fixed light position.
+    PushButton lightModeButton = Toolkit::PushButton::New();
+    lightModeButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    lightModeButton.ClickedSignal().Connect( this, &MeshVisualController::OnChangeLightModeClicked );
+    lightModeButton.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    lightModeButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    lightModeButton.SetProperty( Toolkit::Button::Property::LABEL, FIXED );
+    positionActorLight.Add( lightModeButton );
+
+    //Create button for switching between front and back light position.
+    PushButton lightSideButton = Toolkit::PushButton::New();
+    lightSideButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    lightSideButton.ClickedSignal().Connect( this, &MeshVisualController::OnChangeLightSideClicked );
+    lightSideButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    lightSideButton.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    lightSideButton.SetProperty( Toolkit::Button::Property::LABEL, FRONT );
+    positionActorLight.Add( lightSideButton );
+
+    //Text label title for light position mode.
+    TextLabel lightTitleLabel = TextLabel::New( "Light Position" );
+    lightTitleLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    lightTitleLabel.SetProperty( TextLabel::Property::UNDERLINE, "{\"thickness\":\"2.0\"}" );
+    lightTitleLabel.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    lightTitleLabel.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    lightModeButton.Add( lightTitleLabel );
+  }
+
+  //Add a point light source the the scene, on a layer above the first.
+  void SetupLight( Layer baseLayer )
+  {
+    //Create control to act as light source of scene.
+    mLightSource = Control::New();
+    mLightSource.RegisterProperty( "Tag", LIGHT_TAG );
+
+    //Set size of control based on screen dimensions.
+    Stage stage = Stage::GetCurrent();
+    if( stage.GetSize().width < stage.GetSize().height )
+    {
+      //Scale to width.
+      mLightSource.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::WIDTH );
+      mLightSource.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+      mLightSource.SetSizeModeFactor( Vector3( LIGHT_SCALE, 0.0f, 0.0f ) );
+    }
+    else
+    {
+      //Scale to height.
+      mLightSource.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::HEIGHT );
+      mLightSource.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::WIDTH );
+      mLightSource.SetSizeModeFactor( Vector3( 0.0f, LIGHT_SCALE, 0.0f ) );
+    }
+
+    //Set position relative to top left, as the light source property is also relative to the top left.
+    mLightSource.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mLightSource.SetAnchorPoint( AnchorPoint::CENTER );
+    mLightSource.SetPosition( Stage::GetCurrent().GetSize().x * 0.85f, Stage::GetCurrent().GetSize().y * 0.125 );
+
+    //Supply an image to represent the light.
+    SetLightImage();
+
+    //Connect to touch signal for dragging.
+    mLightSource.TouchSignal().Connect( this, &MeshVisualController::OnTouch );
+
+    //Place the light source on a layer above the base, so that it is rendered above everything else.
+    Layer upperLayer = Layer::New();
+    upperLayer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    upperLayer.SetParentOrigin( ParentOrigin::CENTER );
+    upperLayer.SetAnchorPoint( AnchorPoint::CENTER );
+
+    baseLayer.Add( upperLayer );
+    upperLayer.Add( mLightSource );
+
+    //Decide which light to use to begin with.
+    SetLightMode();
+  }
+
+  //Sets the image to use for the light source depending on whether the light is in front or behind.
+  void SetLightImage()
+  {
+    std::string imageUrl;
+
+    if( mLightFront )
+    {
+      imageUrl = LIGHT_URL_FRONT;
+    }
+    else
+    {
+      imageUrl = LIGHT_URL_BACK;
+    }
+
+    Property::Map lightMap;
+    lightMap.Insert( Toolkit::Visual::Property::TYPE, Visual::IMAGE );
+    lightMap.Insert( ImageVisual::Property::URL, imageUrl );
+    mLightSource.SetProperty( Control::Property::BACKGROUND, Property::Value( lightMap ) );
+  }
+
+  //Updates the displayed models to account for parameter changes.
+  void ReloadModel()
+  {
+    //Create mesh property map
+    Property::Map map;
+    map.Insert( Toolkit::Visual::Property::TYPE,  Visual::MESH );
+    map.Insert( Visual::Property::TRANSFORM,
+                Property::Map().Add( Visual::Transform::Property::ORIGIN, Align::CENTER )
+                               .Add( Visual::Transform::Property::ANCHOR_POINT, Align::CENTER ) );
+    map.Insert( MeshVisual::Property::OBJECT_URL, MODEL_FILE_TABLE[mModelIndex] );
+    map.Insert( MeshVisual::Property::MATERIAL_URL, MATERIAL_FILE_TABLE[mModelIndex] );
+    map.Insert( MeshVisual::Property::TEXTURES_PATH, TEXTURES_PATH );
+    map.Insert( MeshVisual::Property::SHADING_MODE, SHADING_MODE_TABLE[mShadingModeIndex] );
+
+    //Set the two controls to use the mesh
+    for( int i = 0; i < NUM_MESHES; i++ )
+    {
+      mModels[i].control.SetProperty( Control::Property::BACKGROUND, Property::Value( map ) );
+    }
+  }
+
+  //Set the mode used to light the models.
+  void SetLightMode()
+  {
+    if( mLightFixed )
+    {
+      UseFixedLight();
+    }
+    else
+    {
+      UseManualLight();
+    }
+  }
+
+  //Make the models use a fixed, invisible light above the center of the stage.
+  void UseFixedLight()
+  {
+    //Hide draggable source
+    mLightSource.SetVisible( false );
+
+    //Use stage dimensions to place light at center, offset in z axis.
+    Stage stage = Stage::GetCurrent();
+    float width = stage.GetSize().width;
+    float height = stage.GetSize().height;
+    Vector3 lightPosition = Vector3( width / 2.0f, height / 2.0f,
+                                     ( mLightFront ? 1 : -1 ) * std::max( width, height ) * 5.0f );
+
+    //Set global light position
+    for( int i = 0; i < NUM_MESHES; ++i )
+    {
+      mModels[i].control.RegisterProperty( "lightPosition", lightPosition, Property::ANIMATABLE );
+    }
+  }
+
+  //Make the models use a light source that the user can drag around.
+  void UseManualLight()
+  {
+    //Show draggable source
+    mLightSource.SetVisible( true );
+
+    //Update to switch light position of models to that of the source.
+    UpdateLight();
+  }
+
+  //Updates the light position for each model to account for changes in the source on screen.
+  void UpdateLight()
+  {
+    //Set light position to the x and y of the light control, offset into/out of the screen.
+    Vector3 controlPosition = mLightSource.GetCurrentPosition();
+    Vector3 lightPosition = Vector3( controlPosition.x, controlPosition.y,
+                                     ( mLightFront ? 1 : -1 ) * Stage::GetCurrent().GetSize().x / 2.0f );
+
+    for( int i = 0; i < NUM_MESHES; ++i )
+    {
+      mModels[i].control.RegisterProperty( "lightPosition", lightPosition, Property::ANIMATABLE );
+    }
+  }
+
+  //If the light source is touched, move it by dragging it.
+  //If a model is touched, rotate it by panning around.
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    switch( touch.GetState( 0 ) )
+    {
+      case PointState::DOWN:
+      {
+        //Determine what was touched.
+        actor.GetProperty( actor.GetPropertyIndex( "Tag" ) ).Get( mTag );
+
+        if( mTag == MODEL_TAG )
+        {
+          //Find out which model has been selected
+          actor.GetProperty( actor.GetPropertyIndex( "Model" ) ).Get( mSelectedModelIndex );
+
+          //Pause current animation, as the touch gesture will be used to manually rotate the model
+          mModels[mSelectedModelIndex].rotationAnimation.Pause();
+
+          //Store start points.
+          mPanStart = touch.GetScreenPosition( 0 );
+          mRotationStart = mModels[mSelectedModelIndex].rotation;
+        }
+
+        break;
+      }
+      case PointState::MOTION:
+      {
+        //Switch on the kind of actor we're interacting with.
+        switch( mTag )
+        {
+          case MODEL_TAG: //Rotate model
+          {
+            //Calculate displacement and corresponding rotation.
+            Vector2 displacement = touch.GetScreenPosition( 0 ) - mPanStart;
+            mModels[mSelectedModelIndex].rotation = Vector2( mRotationStart.x - displacement.y / Y_ROTATION_DISPLACEMENT_FACTOR,   // Y displacement rotates around X axis
+                                                             mRotationStart.y + displacement.x / X_ROTATION_DISPLACEMENT_FACTOR ); // X displacement rotates around Y axis
+            Quaternion rotation = Quaternion( Radian( mModels[mSelectedModelIndex].rotation.x ), Vector3::XAXIS) *
+                                  Quaternion( Radian( mModels[mSelectedModelIndex].rotation.y ), Vector3::YAXIS);
+
+            //Apply rotation.
+            mModels[mSelectedModelIndex].control.SetOrientation( rotation );
+
+            break;
+          }
+          case LIGHT_TAG: //Drag light
+          {
+            //Set light source to new position and update the models accordingly.
+            mLightSource.SetPosition( Vector3( touch.GetScreenPosition( 0 ) ) );
+            UpdateLight();
+
+            break;
+          }
+        }
+
+        break;
+      }
+      case PointState::INTERRUPTED: //Same as finished.
+      case PointState::FINISHED:
+      {
+        if( mTag == MODEL_TAG )
+        {
+          //Return to automatic animation
+          if( !mPaused )
+          {
+            mModels[mSelectedModelIndex].rotationAnimation.Play();
+          }
+        }
+
+        break;
+      }
+      default:
+      {
+        //Other touch states do nothing.
+        break;
+      }
+    }
+
+    return true;
+  }
+
+  //Cycle through the list of models.
+  bool OnChangeModelClicked( Toolkit::Button button )
+  {
+    ++mModelIndex %= 3;
+
+    ReloadModel();
+
+    return true;
+  }
+
+  //Cycle through the list of shading modes.
+  bool OnChangeShadingModeClicked( Toolkit::Button button )
+  {
+    ++mShadingModeIndex %= 3;
+
+    ReloadModel();
+
+    return true;
+  }
+
+  //Pause all animations, and keep them paused even after user panning.
+  //This button is a toggle, so pressing again will start the animations again.
+  bool OnPauseClicked( Toolkit::Button button )
+  {
+    //Toggle pause state.
+    mPaused = !mPaused;
+
+    //If we wish to pause animations, do so and keep them paused.
+    if( mPaused )
+    {
+      for( int i = 0; i < NUM_MESHES ; ++i )
+      {
+        mModels[i].rotationAnimation.Pause();
+      }
+
+      button.SetProperty( Toolkit::Button::Property::LABEL, PLAY );
+    }
+    else //Unpause all animations again.
+    {
+      for( int i = 0; i < NUM_MESHES ; ++i )
+      {
+        mModels[i].rotationAnimation.Play();
+      }
+
+      button.SetProperty( Toolkit::Button::Property::LABEL, PAUSE );
+    }
+
+    return true;
+  }
+
+
+  //Switch between a fixed light source above/behind the screen, and a light source the user can drag around.
+  bool OnChangeLightModeClicked( Toolkit::Button button )
+  {
+    //Toggle state.
+    mLightFixed = !mLightFixed;
+
+    if( mLightFixed )
+    {
+      button.SetProperty( Toolkit::Button::Property::LABEL, FIXED );
+    }
+    else
+    {
+      button.SetProperty( Toolkit::Button::Property::LABEL, MANUAL );
+    }
+
+    SetLightMode();
+
+    return true;
+  }
+
+  //Switch between the light being in front of and behind the models.
+  bool OnChangeLightSideClicked( Toolkit::Button button )
+  {
+    //Toggle state.
+    mLightFront = !mLightFront;
+
+    if( mLightFront )
+    {
+      button.SetProperty( Toolkit::Button::Property::LABEL, FRONT );
+    }
+    else
+    {
+      button.SetProperty( Toolkit::Button::Property::LABEL, BACK );
+    }
+
+    //Change light image.
+    SetLightImage();
+
+    //Update light to account for the change.
+    SetLightMode();
+
+    return true;
+  }
+
+  //If escape or the back button is pressed, quit the application (and return to the launcher)
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+
+  //The models displayed on screen, including information about rotation.
+  Model mModels[NUM_MESHES];
+  Actor mContainers[NUM_MESHES];
+
+  //Acts as a global light source, which can be dragged around.
+  Control mLightSource;
+
+  //Used to detect panning to rotate the selected model.
+  Vector2 mPanStart;
+  Vector2 mRotationStart;
+
+  int mModelIndex; //Index of model to load.
+  int mShadingModeIndex; //Index of shading mode to use.
+  int mTag; //Identifies what kind of actor has been selected in OnTouch.
+  int mSelectedModelIndex; //Index of model selected on screen.
+  bool mPaused; //If true, all animations are paused and should stay so.
+  bool mLightFixed; //If false, the light is in manual.
+  bool mLightFront; //Bool for light being in front or behind the models.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  MeshVisualController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/metaball-explosion/metaball-explosion-example.cpp b/examples/metaball-explosion/metaball-explosion-example.cpp
new file mode 100644 (file)
index 0000000..d5332d7
--- /dev/null
@@ -0,0 +1,691 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <cstdio>
+#include <string>
+#include <cstdint> // uint32_t, uint16_t etc
+
+#include <dali/public-api/rendering/renderer.h>
+#include <dali/public-api/rendering/texture.h>
+#include <dali/public-api/rendering/texture-set.h>
+#include <dali/public-api/rendering/frame-buffer.h>
+#include <dali/public-api/math/random.h>
+
+// INTERNAL INCLUDES
+#include "shared/utility.h" // DemoHelper::LoadTexture
+
+using namespace Dali;
+
+namespace // unnamed namespace for constants
+{
+// background image
+const char * const BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-2.jpg" );
+
+// number of metaballs
+constexpr uint32_t METABALL_NUMBER = 6;
+
+/**
+ * Vertex shader code for metaball
+ */
+const char* const METABALL_VERTEX_SHADER = DALI_COMPOSE_SHADER (
+    attribute mediump vec2    aPosition;\n
+    attribute mediump vec2    aTexture;\n
+    uniform   mediump mat4    uMvpMatrix;\n
+    uniform   mediump vec3    uSize;\n
+    uniform   lowp    vec4    uColor;\n
+    varying   mediump vec2    vTexCoord;\n
+
+    void main()\n
+    {\n
+      vTexCoord = aTexture;\n
+      mediump vec4 vertexPosition = vec4(aPosition.x, aPosition.y, 0.0, 1.0);\n
+      gl_Position = uMvpMatrix * vertexPosition;\n
+    }\n
+);
+
+/**
+ * Fragment shader code for metaball
+ */
+const char* const METABALL_FRAG_SHADER = DALI_COMPOSE_SHADER (
+  precision mediump float;\n
+  varying vec2 vTexCoord;\n
+  uniform vec2 uPositionMetaball;\n
+  uniform vec2 uPositionVar;\n
+  uniform vec2 uGravityVector;\n
+  uniform float uRadius;\n
+  uniform float uRadiusVar;\n
+  void main()\n
+  {\n
+    vec2 adjustedCoords = vTexCoord * 2.0 - 1.0;\n
+    vec2 finalMetaballPosition = uPositionMetaball + uGravityVector + uPositionVar;\n
+    \n
+    float finalRadius = uRadius + uRadiusVar;\n
+    vec2 distanceVec = adjustedCoords - finalMetaballPosition;\n
+    float result = dot(distanceVec, distanceVec);\n
+    float color = inversesqrt(result) * finalRadius;\n
+    \n
+    gl_FragColor = vec4(color,color,color,1.0);\n
+  }\n
+);
+
+/**
+ * Fragment shader code for metaball and background composition with refraction effect
+ */
+const char* const REFRACTION_FRAG_SHADER = DALI_COMPOSE_SHADER (
+  precision highp float;\n
+  varying vec2 vTexCoord;\n
+  uniform sampler2D sTexture;\n
+  uniform sampler2D sEffect;\n
+  uniform vec2 uPositionMetaball;\n
+  void main()\n
+  {\n
+    vec2 zoomCoords;\n
+    vec3 normal = vec3(0.0,0.0,1.0);\n
+    vec2 fakePos = vec2(0.0,0.0);\n
+    vec3 color = vec3(1.0, 1.0, 1.0);
+    float ambient = 0.2;
+    \n
+    vec4 metaColor = texture2D(sEffect, vTexCoord);\n
+    \n
+    vec2 adjustedCoords = vTexCoord.xy * vec2(2.0) - vec2(1.0);\n
+    fakePos = adjustedCoords.xy - vec2(uPositionMetaball.x, -uPositionMetaball.y);
+    float len = length(fakePos) + 0.01;\n
+    vec3 colorPos = vec3(0,0,1);
+    \n
+    if (metaColor.r > 0.85)\n
+    {\n
+      zoomCoords = ((vTexCoord - 0.5) * 0.9);\n
+      zoomCoords = zoomCoords + 0.5;\n
+      \n
+      float interpNormal = mix(0.7, 1.0, (metaColor.r - 0.85) * 4.);\n
+      normal.xyz = vec3(fakePos.x * (1.0 - interpNormal) / len, fakePos.y * (1.0 - interpNormal) / len, interpNormal);\n
+      normal.xyz = normalize(normal.xyz);\n
+      color = vec3(0.65, 1.0, 0);\n
+      colorPos = vec3(fakePos.x,fakePos.y,0);
+    }\n
+    else if (metaColor.r > 0.75)\n
+    {\n
+      float interpolation = mix(0.9, 1.15, (0.85 - metaColor.r) * 10.0);\n
+      zoomCoords = ((vTexCoord - 0.5) * interpolation);\n
+      zoomCoords = zoomCoords + 0.5;\n
+      \n
+      float interpNormal = mix(0.7, 0.0, (0.85 - metaColor.r) * 10.0);\n
+      normal.xyz = vec3(fakePos.x * (1.0 - interpNormal) / len, fakePos.y * (1.0 - interpNormal) / len, interpNormal);\n
+      normal.xyz = normalize(normal.xyz);\n
+      color = vec3(0.65, 1.0, 0);\n
+      colorPos = vec3(fakePos.x,fakePos.y,0);
+    }\n
+    else\n
+    {\n
+      zoomCoords = vTexCoord;\n
+      normal = vec3(0,0,0);\n
+      ambient = 0.5;\n
+    }\n
+    \n
+    vec3 lightPosition = vec3(-750.0,-1000.0,2000.0);\n
+    vec3 vertex = vec3(adjustedCoords.x,adjustedCoords.y,0.0);\n
+    \n
+    vec3 vecToLight = normalize( lightPosition - vertex );\n
+    \n
+    float lightDiffuse = dot( vecToLight, normal );\n
+    lightDiffuse = max(0.0,lightDiffuse);\n
+    lightDiffuse = lightDiffuse * 0.5 + 0.5;
+    \n
+    vec3 vertexToEye = vec3(0,0,1) - vertex;\n
+    vertexToEye = normalize(vertexToEye);
+    vec3 lightReflect = normalize(reflect(-vecToLight, normal));\n
+    float specularFactor = max(0.0,dot(vertexToEye, lightReflect));\n
+    specularFactor = pow(specularFactor, 32.0) * 0.7;
+    \n
+    vec4 texColor = texture2D(sTexture, zoomCoords);\n
+    gl_FragColor.rgb = texColor.rgb * ambient + color.rgb * texColor.rgb * lightDiffuse + vec3(specularFactor);\n
+    gl_FragColor.a = 1.0;
+  }\n
+ );
+
+/**
+ * Metadata for each ball
+ */
+struct MetaballInfo
+{
+  Actor         actor;
+  Vector2       position;
+  float         radius;
+  float         initRadius;
+
+  //new shader stuff
+  Property::Index positionIndex;
+  Property::Index positionVarIndex;
+};
+
+} // unnamed namespace
+
+/**
+ * Demo using Metaballs
+ *
+ * When the metaball is clicked it explodes to smaller balls
+ */
+class MetaballExplosionController : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application
+   */
+  MetaballExplosionController( Application& application );
+
+  /**
+   * Destructor
+   */
+  virtual ~MetaballExplosionController();
+
+  /**
+   * Creates the metaballs and initializes the scene
+   */
+  void Create( Application& app );
+
+  /**
+   * Touch event handler to center metaballs at touch position
+   * and start explosion animation on release
+   */
+  bool OnTouch( Actor actor, const TouchData& touch );
+
+  /**
+   * Key event handler to quit application on escape or back key
+   */
+  void OnKeyEvent(const KeyEvent& event);
+
+private: // Data
+
+  Application&      mApplication;
+  Vector2           mScreenSize;
+
+  Texture           mBackgroundTexture;
+  FrameBuffer       mMetaballFBO;
+
+  Actor             mMetaballRoot;
+  MetaballInfo      mMetaballs[METABALL_NUMBER];
+
+  Property::Index   mPositionIndex;
+  Actor             mCompositionActor;
+
+  //Motion
+  Vector2           mCurrentTouchPosition;
+  Vector2           mMetaballPosVariation;
+  Vector2           mMetaballPosVariationFrom;
+  Vector2           mMetaballPosVariationTo;
+  Vector2           mMetaballCenter;
+
+  //Animations
+  Animation         mPositionVarAnimation[METABALL_NUMBER];
+
+  uint32_t          mDispersion;
+  Animation         mDispersionAnimation[METABALL_NUMBER];
+
+  Timer             mTimerDispersion;
+
+  float             mTimeMultiplier;
+
+  // Private helper functions
+
+  /**
+   * Create a mesh data with the geometry for the metaball rendering
+   * @param aspectMappedTexture whether texture coords should be mapped based on aspect ratio
+   */
+  Geometry CreateGeometry( bool aspectMappedTexture = true );
+
+  /**
+   * Create a actors and renderers for the metaballs
+   */
+  void CreateMetaballActors();
+
+  /**
+   * Create the render task and FBO to render the metaballs into a texture
+   */
+  void CreateMetaballImage();
+
+  /**
+   * Create the the final composition
+   */
+  void CreateComposition();
+
+  /**
+   * Function to create animations for the small variations of position inside the metaball
+   */
+  void CreateAnimations();
+
+  /**
+   * Function to reset metaball state
+   */
+  void ResetMetaballs( bool resetAnims );
+
+  /**
+   * Function to create disperse each of the ball that compose the metaball when exploding
+   */
+  void DisperseBallAnimation( uint32_t ball );
+
+  /**
+   * Function to make metaballs come back to reset position
+   */
+  void LaunchResetMetaballPosition( Animation& source );
+
+  /**
+   * Function to set things at the end of the animation
+   */
+  void EndDisperseAnimation( Animation& source );
+
+  /**
+   * Function to init dispersion of the metaballs one by one using a timer
+   * (so not all the balls begin moving at the same time)
+   */
+  bool OnTimerDispersionTick();
+
+  /**
+   * Function to set the actual position of the metaballs when the user clicks the screen
+   */
+  void SetPositionToMetaballs( const Vector2& metaballCenter );
+};
+
+/**
+ * Implementation
+ */
+
+MetaballExplosionController::MetaballExplosionController( Application& application )
+: mApplication( application ),
+  mScreenSize(),
+  mBackgroundTexture(),
+  mMetaballFBO(),
+  mMetaballRoot(),
+  mMetaballs(),
+  mPositionIndex(),
+  mCompositionActor(),
+  mCurrentTouchPosition(),
+  mMetaballPosVariation(),
+  mMetaballPosVariationFrom(),
+  mMetaballPosVariationTo(),
+  mMetaballCenter(),
+  mPositionVarAnimation(),
+  mDispersion( 0 ),
+  mDispersionAnimation(),
+  mTimerDispersion(),
+  mTimeMultiplier( 1.0f )
+{
+  // Connect to the Application's Init signal
+  mApplication.InitSignal().Connect( this, &MetaballExplosionController::Create );
+}
+
+MetaballExplosionController::~MetaballExplosionController()
+{
+  // Nothing to do here;
+}
+
+void MetaballExplosionController::Create( Application& app )
+{
+  Stage stage = Stage::GetCurrent();
+
+  stage.KeyEventSignal().Connect( this, &MetaballExplosionController::OnKeyEvent );
+
+  mScreenSize = stage.GetSize();
+
+  mTimeMultiplier = 1.0f;
+
+  stage.SetBackgroundColor(Color::BLACK);
+
+  // Load background texture
+  mBackgroundTexture = DemoHelper::LoadTexture( BACKGROUND_IMAGE );
+
+  srand( static_cast<uint32_t>( time(0) ) );
+
+  //Create internal data
+  CreateMetaballActors();
+  CreateMetaballImage();
+  CreateComposition();
+
+  CreateAnimations();
+
+  mDispersion = 0;
+  mTimerDispersion = Timer::New( 150 );
+  mTimerDispersion.TickSignal().Connect( this, &MetaballExplosionController::OnTimerDispersionTick );
+
+  // Connect the callback to the touch signal on the mesh actor
+  stage.GetRootLayer().TouchSignal().Connect( this, &MetaballExplosionController::OnTouch );
+}
+
+Geometry MetaballExplosionController::CreateGeometry( bool aspectMappedTexture )
+{
+  const float aspect = mScreenSize.y / mScreenSize.x;
+
+  // Create vertices and specify their color
+  const float xsize = mScreenSize.x * 0.5;
+
+  // Create the meshdata for the metaballs
+  struct VertexPosition { Vector2 position; };
+  struct VertexTexture { Vector2 texture; };
+
+  VertexPosition vertices[] =
+  {
+    { Vector2( -xsize, -xsize * aspect ) },
+    { Vector2(  xsize, -xsize * aspect ) },
+    { Vector2( -xsize,  xsize * aspect ) },
+    { Vector2(  xsize,  xsize * aspect ) }
+  };
+
+  const float textureAspect = (aspectMappedTexture) ? aspect : 1.0f;
+  VertexTexture textures[] =
+  {
+    { Vector2( 0.0f, 0.0f ) },
+    { Vector2( 1.0f, 0.0f ) },
+    { Vector2( 0.0f, 1.0f * textureAspect ) },
+    { Vector2( 1.0f, 1.0f * textureAspect ) }
+  };
+
+  uint32_t numberOfVertices = sizeof(vertices)/sizeof(VertexPosition);
+
+  // Vertices
+  Property::Map positionVertexFormat;
+  positionVertexFormat["aPosition"] = Property::VECTOR2;
+  PropertyBuffer positionVertices = PropertyBuffer::New( positionVertexFormat );
+  positionVertices.SetData( vertices, numberOfVertices );
+
+  // Textures
+  Property::Map textureVertexFormat;
+  textureVertexFormat["aTexture"] = Property::VECTOR2;
+  PropertyBuffer textureVertices = PropertyBuffer::New( textureVertexFormat );
+  textureVertices.SetData( textures, numberOfVertices );
+
+  // Indices
+  const uint16_t indices[] = { 0, 3, 1, 0, 2, 3 };
+
+  // Create the geometry object
+  Geometry texturedQuadGeometry = Geometry::New();
+  texturedQuadGeometry.AddVertexBuffer( positionVertices );
+  texturedQuadGeometry.AddVertexBuffer( textureVertices );
+
+  texturedQuadGeometry.SetIndexBuffer ( &indices[0], sizeof( indices )/ sizeof( indices[0] ) );
+
+  return texturedQuadGeometry;
+}
+
+void MetaballExplosionController::CreateMetaballActors()
+{
+  // Create the shader for the metaballs, tell DALi that shader modifies geometry so we dont need to set a meaningless size
+  Shader shader = Shader::New( METABALL_VERTEX_SHADER, METABALL_FRAG_SHADER, Shader::Hint::MODIFIES_GEOMETRY );
+
+  Geometry metaballGeom = CreateGeometry();
+  // Reuse same renderer for each actor
+  Renderer renderer = Renderer::New( metaballGeom, shader );
+  renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::ON );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_SRC_RGB,    BlendFactor::ONE );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_DEST_RGB,   BlendFactor::ONE );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_SRC_ALPHA,  BlendFactor::ONE );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_DEST_ALPHA, BlendFactor::ONE  );
+
+  //Initialization of each of the metaballs
+  for( uint32_t i = 0; i < METABALL_NUMBER; i++ )
+  {
+    mMetaballs[i].position = Vector2(0.0f, 0.0f);
+    mMetaballs[i].radius = mMetaballs[i].initRadius = Random::Range(0.05f,0.07f);
+
+    mMetaballs[i].actor = Actor::New( );
+    mMetaballs[i].actor.SetName( "Metaball" );
+    mMetaballs[i].actor.SetScale( 1.0f );
+    mMetaballs[i].actor.SetParentOrigin( ParentOrigin::CENTER );
+    mMetaballs[i].actor.AddRenderer( renderer );
+
+    mMetaballs[i].positionIndex = mMetaballs[i].actor.RegisterProperty( "uPositionMetaball", mMetaballs[i].position );
+
+    mMetaballs[i].positionVarIndex = mMetaballs[i].actor.RegisterProperty( "uPositionVar", Vector2(0.f,0.f) );
+
+    mMetaballs[i].actor.RegisterProperty( "uGravityVector", Vector2(Random::Range(-0.2,0.2),Random::Range(-0.2,0.2)) );
+    mMetaballs[i].actor.RegisterProperty( "uRadius", mMetaballs[i].radius );
+    mMetaballs[i].actor.RegisterProperty( "uRadiusVar", 0.f );
+  }
+
+  // Root creation
+  mMetaballRoot = Actor::New();
+  mMetaballRoot.SetParentOrigin( ParentOrigin::CENTER );
+  for( uint32_t i = 0; i < METABALL_NUMBER; i++ )
+  {
+    mMetaballRoot.Add( mMetaballs[i].actor );
+  }
+
+}
+
+void MetaballExplosionController::CreateMetaballImage()
+{
+  // Create an FBO and a render task to create to render the metaballs with a fragment shader
+  Stage stage = Stage::GetCurrent();
+
+  mMetaballFBO = FrameBuffer::New( mScreenSize.x, mScreenSize.y );
+
+  stage.Add(mMetaballRoot);
+
+  // Create the render task used to render the metaballs
+  RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList();
+  RenderTask task = taskList.CreateTask();
+  task.SetRefreshRate( RenderTask::REFRESH_ALWAYS );
+  task.SetSourceActor( mMetaballRoot );
+  task.SetExclusive( true );
+  task.SetClearColor( Color::BLACK );
+  task.SetClearEnabled( true );
+  task.SetFrameBuffer( mMetaballFBO );
+}
+
+void MetaballExplosionController::CreateComposition()
+{
+  //Create new shader
+  Shader shader = Shader::New( METABALL_VERTEX_SHADER, REFRACTION_FRAG_SHADER );
+
+  // Create new texture set
+  auto textureSet = TextureSet::New();
+  textureSet.SetTexture( 0u, mBackgroundTexture  );
+  textureSet.SetTexture( 1u, mMetaballFBO.GetColorTexture() );
+
+  // Create geometry
+  Geometry metaballGeom = CreateGeometry( false );
+
+  Renderer mRenderer = Renderer::New( metaballGeom, shader );
+  mRenderer.SetTextures( textureSet );
+
+  // Create actor
+  mCompositionActor = Actor::New( );
+  mCompositionActor.SetParentOrigin(ParentOrigin::CENTER);
+  mCompositionActor.SetPosition(Vector3(0.0f, 0.0f, 0.0f));
+  mCompositionActor.SetSize(mScreenSize.x, mScreenSize.y);
+  mCompositionActor.AddRenderer( mRenderer );
+
+  Vector2 metaballCenter(0.0,0);
+  metaballCenter.x = metaballCenter.x * 0.5;
+  metaballCenter.y = metaballCenter.y * 0.5;
+  mPositionIndex = mCompositionActor.RegisterProperty( "uPositionMetaball", metaballCenter );
+
+  SetPositionToMetaballs( metaballCenter );
+
+  mCompositionActor.SetSize(mScreenSize.x, mScreenSize.y);
+
+  Stage stage = Stage::GetCurrent();
+  stage.Add( mCompositionActor );
+}
+
+void MetaballExplosionController::CreateAnimations()
+{
+  Vector2 direction;
+
+  for( uint32_t i = 0; i < METABALL_NUMBER; i++ )
+  {
+    KeyFrames keySinCosVariation = KeyFrames::New();
+    Vector2 sinCosVariation( 0,0 );
+
+    direction.x = Random::Range( -100.f,100.f );
+    direction.y = Random::Range( -100.f,100.f );
+
+    direction.Normalize();
+    direction *= 0.1f;
+
+    for( uint32_t j = 0; j < 360; j++ )
+    {
+      sinCosVariation.x = sinf( j * Math::PI/180.f ) * direction.x;
+      sinCosVariation.y = cosf( j * Math::PI/180.f ) * direction.y;
+      float key = j/360.f;
+      keySinCosVariation.Add( key, sinCosVariation );
+    }
+
+    mPositionVarAnimation[i] = Animation::New( 3.f );
+    mPositionVarAnimation[i].AnimateBetween( Property( mMetaballs[i].actor, mMetaballs[i].positionVarIndex ), keySinCosVariation );
+    mPositionVarAnimation[i].SetLooping( true );
+    mPositionVarAnimation[i].Play();
+  }
+}
+
+void MetaballExplosionController::ResetMetaballs( bool resetAnims )
+{
+  for( uint32_t i = 0; i < METABALL_NUMBER; i++ )
+  {
+    if( mDispersionAnimation[i] )
+    {
+      mDispersionAnimation[i].Clear();
+    }
+
+    mMetaballs[i].position = Vector2( 0.0f, 0.0f );
+    mMetaballs[i].actor.SetProperty( mMetaballs[i].positionIndex, mMetaballs[i].position );
+  }
+  mTimerDispersion.Stop();
+  mDispersion = 0;
+
+  mCompositionActor.SetProperty( mPositionIndex, Vector2(0,0) );
+}
+
+void MetaballExplosionController::DisperseBallAnimation( uint32_t ball )
+{
+  Vector2 position;
+  position.x = Random::Range(-1.5f,1.5f);
+  position.y = Random::Range(-1.5f,1.5f);
+
+  mDispersionAnimation[ball] = Animation::New(2.0f * mTimeMultiplier);
+  mDispersionAnimation[ball].AnimateTo( Property(mMetaballs[ball].actor, mMetaballs[ball].positionIndex), position);
+  mDispersionAnimation[ball].Play();
+
+  if( ball == METABALL_NUMBER - 1 )
+  {
+    mDispersionAnimation[ball].FinishedSignal().Connect( this, &MetaballExplosionController::LaunchResetMetaballPosition );
+  }
+}
+
+void MetaballExplosionController::LaunchResetMetaballPosition( Animation& source )
+{
+  for( uint32_t i = 0; i < METABALL_NUMBER; i++ )
+  {
+    mDispersionAnimation[i] = Animation::New( 1.5f + i * 0.25f * mTimeMultiplier );
+    mDispersionAnimation[i].AnimateTo(Property( mMetaballs[i].actor, mMetaballs[i].positionIndex), Vector2(0,0) );
+    mDispersionAnimation[i].Play();
+
+    if( i == METABALL_NUMBER - 1 )
+    {
+      mDispersionAnimation[i].FinishedSignal().Connect( this, &MetaballExplosionController::EndDisperseAnimation );
+    }
+  }
+}
+
+void MetaballExplosionController::EndDisperseAnimation( Animation& source )
+{
+  mCompositionActor.SetProperty( mPositionIndex, Vector2(0,0) );
+}
+
+bool MetaballExplosionController::OnTimerDispersionTick()
+{
+  if( mDispersion < METABALL_NUMBER )
+  {
+    DisperseBallAnimation( mDispersion );
+    mDispersion++;
+  }
+  return true;
+}
+
+void MetaballExplosionController::SetPositionToMetaballs( const Vector2& metaballCenter )
+{
+  //We set the position for the metaballs based on click position
+  for( uint32_t i = 0; i < METABALL_NUMBER; i++ )
+  {
+    mMetaballs[i].position = metaballCenter;
+    mMetaballs[i].actor.SetProperty( mMetaballs[i].positionIndex, mMetaballs[i].position );
+  }
+
+  mCompositionActor.SetProperty( mPositionIndex, metaballCenter );
+}
+
+bool MetaballExplosionController::OnTouch( Actor actor, const TouchData& touch )
+{
+  float aspectR = mScreenSize.y / mScreenSize.x;
+
+  switch( touch.GetState( 0 ) )
+  {
+    case PointState::DOWN:
+    {
+      ResetMetaballs(true);
+
+      const Vector2 screen = touch.GetScreenPosition( 0 );
+      Vector2 metaballCenter = Vector2( (screen.x / mScreenSize.x) - 0.5f, (aspectR * (mScreenSize.y - screen.y) / mScreenSize.y) - 0.5f ) * 2.0f;
+      SetPositionToMetaballs(metaballCenter);
+
+      break;
+    }
+    case PointState::MOTION:
+    {
+      const Vector2 screen = touch.GetScreenPosition( 0 );
+      Vector2 metaballCenter = Vector2( (screen.x / mScreenSize.x) - 0.5f, (aspectR * (mScreenSize.y - screen.y) / mScreenSize.y) - 0.5f ) * 2.0f;
+      SetPositionToMetaballs(metaballCenter);
+      break;
+    }
+    case PointState::UP:
+    case PointState::LEAVE:
+    case PointState::INTERRUPTED:
+    {
+      mTimerDispersion.Start();
+      break;
+    }
+    default:
+      break;
+    }
+  return true;
+}
+
+void MetaballExplosionController::OnKeyEvent(const KeyEvent& event)
+{
+  if(event.state == KeyEvent::Down)
+  {
+    if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+    {
+      mApplication.Quit();
+    }
+  }
+}
+
+/**
+ * Main entry point
+ */
+int32_t DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  MetaballExplosionController test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/metaball-refrac/metaball-refrac-example.cpp b/examples/metaball-refrac/metaball-refrac-example.cpp
new file mode 100644 (file)
index 0000000..b73c6b9
--- /dev/null
@@ -0,0 +1,782 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <cstdio>
+#include <string>
+#include <cstdint> // uint32_t, uint16_t etc
+
+#include <dali/public-api/rendering/renderer.h>
+#include <dali/public-api/rendering/texture.h>
+#include <dali/public-api/rendering/texture-set.h>
+#include <dali/public-api/rendering/frame-buffer.h>
+
+// INTERNAL INCLUDES
+#include "shared/utility.h" // DemoHelper::LoadTexture
+
+using namespace Dali;
+
+namespace // unnamed namespace for constants
+{
+const char * const BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-2.jpg" );
+const float GRAVITY_X(0);
+const float GRAVITY_Y(-0.09);
+
+// number of metaballs
+constexpr uint32_t METABALL_NUMBER = 6;
+
+/**
+ * Vertex shader for metaballs
+ */
+const char* const METABALL_VERTEX_SHADER = DALI_COMPOSE_SHADER (
+    attribute mediump vec2    aPosition;\n
+    attribute mediump vec2    aTexture;\n
+    uniform   mediump mat4    uMvpMatrix;\n
+    uniform   mediump vec3    uSize;\n
+    uniform   lowp    vec4    uColor;\n
+    varying   mediump vec2    vTexCoord;\n
+
+    void main()\n
+    {\n
+      mediump vec4 vertexPosition = vec4(aPosition.x, aPosition.y, 0.0, 1.0);\n
+      vertexPosition = uMvpMatrix * vertexPosition;\n
+      gl_Position = vertexPosition;\n
+      vTexCoord = aTexture;\n
+    }\n
+);
+
+/**
+ * Fragment shader for metaballs
+ */
+const char* const METABALL_FRAG_SHADER = DALI_COMPOSE_SHADER (
+  precision mediump float;\n
+  varying vec2 vTexCoord;\n
+  uniform vec2 uPositionMetaball;\n
+  uniform vec2 uPositionVar;\n
+  uniform vec2 uGravityVector;\n
+  uniform float uRadius;\n
+  uniform float uRadiusVar;\n
+  uniform float uAspect;\n
+  void main()\n
+  {\n
+    vec2 adjustedCoords = vTexCoord * 2.0 - 1.0;\n
+    vec2 finalMetaballPosition = uPositionMetaball + uGravityVector + uPositionVar;\n
+
+    float distance = (adjustedCoords.x - finalMetaballPosition.x) * (adjustedCoords.x - finalMetaballPosition.x) +
+                     (adjustedCoords.y - finalMetaballPosition.y) * (adjustedCoords.y - finalMetaballPosition.y);\n
+    float finalRadius = uRadius + uRadiusVar;\n
+    float color = finalRadius / sqrt( distance );\n
+    vec2 bordercolor = vec2(0.0,0.0);\n
+    if (vTexCoord.x < 0.1)\n
+    {\n
+      bordercolor.x = (0.1 - vTexCoord.x) * 0.8;\n
+    }\n
+    if (vTexCoord.x > 0.9)\n
+    {\n
+      bordercolor.x = (vTexCoord.x - 0.9) * 0.8;\n
+    }\n
+    if (vTexCoord.y < 0.1)\n
+    {\n
+      bordercolor.y = (0.1 - vTexCoord.y) * 0.8;\n
+    }\n
+    if (vTexCoord.y > (0.9 * uAspect))\n
+    {\n
+      bordercolor.y = (vTexCoord.y - (0.9 * uAspect)) * 0.8;\n
+    }\n
+    float border = (bordercolor.x + bordercolor.y) * 0.5;\n
+    gl_FragColor = vec4(color + border,color + border,color + border,1.0);\n
+  }\n
+);
+
+/**
+ * Fragment shader code for metaball and background composition with refraction effect
+ */
+const char* const REFRACTION_FRAG_SHADER = DALI_COMPOSE_SHADER (
+  precision mediump float;\n
+  varying vec2 vTexCoord;\n
+  uniform sampler2D sTexture;\n
+  uniform sampler2D sEffect;\n
+  void main()\n
+  {\n
+    vec4 metaColor = texture2D(sEffect, vTexCoord);\n
+    vec2 zoomCoords;\n
+    float bright = 1.0;\n
+    if (metaColor.r > 0.85)\n
+    {\n
+      zoomCoords = ((vTexCoord - 0.5) * 0.95) + 0.5;\n
+    }\n
+    else if (metaColor.r > 0.78)\n
+    {\n
+      float interpolation = mix(0.95, 1.05, (0.85 - metaColor.r) * 50.0);\n
+      zoomCoords = ((vTexCoord - 0.5) * interpolation) + 0.5;\n
+      bright = 1.2;\n
+    }\n
+    else\n
+    {\n
+      zoomCoords = vTexCoord;\n
+    }\n
+
+    gl_FragColor = texture2D(sTexture, zoomCoords) * bright;\n
+  }\n
+ );
+
+/**
+ * Fragment shader code when there's no effect
+ */
+const char* const FRAG_SHADER = DALI_COMPOSE_SHADER (
+  precision mediump float;\n
+  varying vec2 vTexCoord;\n
+  uniform sampler2D sTexture;\n
+  void main()\n
+  {\n
+    gl_FragColor = texture2D(sTexture, vTexCoord);\n
+  }\n
+);
+
+/**
+ * Metadata for each ball
+ */
+struct MetaballInfo
+{
+  Actor   actor;
+  Vector2 position;
+  float   radius;
+  float   initRadius;
+
+  //Properties needed for animations
+  Property::Index positionIndex;
+  Property::Index positionVarIndex;
+  Property::Index gravityIndex;
+  Property::Index radiusIndex;
+  Property::Index radiusVarIndex;
+  Property::Index aspectIndex;
+};
+
+} // unnamed namespace
+
+/**
+ * Demo using Metaballs
+ *
+ * When the metaball is clicked it starts to grow and fuses into the closest edge of screen
+ */
+class MetaballRefracController : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application
+   */
+  MetaballRefracController( Application& application );
+
+  /**
+   * Destructor
+   */
+  virtual ~MetaballRefracController();
+
+  /**
+   * Creates the metaballs and initializes the scene
+   */
+  void Create( Application& app );
+
+  /**
+   * Touch handler, start the grow animation and creates additional metaballs
+   */
+  bool OnTouch( Actor actor, const TouchData& touch );
+
+  /**
+   * Key event callback to quit the application on escape or back key
+   */
+  void OnKeyEvent( const KeyEvent& event );
+
+private: // Data
+
+  Application&      mApplication;
+  Vector2           mScreenSize;
+
+  Texture           mBackgroundTexture;
+  FrameBuffer       mMetaballFBO;
+
+  Actor             mMetaballRoot;
+  MetaballInfo      mMetaballs[METABALL_NUMBER];
+
+  Actor             mCompositionActor;
+
+  //Motion
+  Vector2           mCurrentTouchPosition;
+  Vector2           mMetaballPosVariation;
+  Vector2           mMetaballPosVariationFrom;
+  Vector2           mMetaballPosVariationTo;
+  Vector2           mMetaballCenter;
+
+  Vector2           mGravity;
+  Vector2           mGravityVar;
+
+  Renderer          mRendererRefraction;
+  TextureSet        mTextureSetRefraction;
+  Shader            mShaderRefraction;
+  TextureSet        mTextureSetNormal;
+  Shader            mShaderNormal;
+
+  // Animations
+  Animation         mGravityAnimation[METABALL_NUMBER];
+  Animation         mRadiusDecAnimation[METABALL_NUMBER];
+  Animation         mRadiusIncFastAnimation[METABALL_NUMBER];
+  Animation         mRadiusIncSlowAnimation[METABALL_NUMBER];
+  Animation         mRadiusVarAnimation[METABALL_NUMBER];
+  Animation         mPositionVarAnimation[METABALL_NUMBER];
+
+  // Private Helper functions
+
+  /**
+   * Create a mesh data with the geometry for the metaball rendering
+   * @param aspectMappedTexture whether texture coords should be mapped based on aspect ratio
+   */
+  Geometry CreateGeometry( bool aspectMappedTexture = true );
+
+  /**
+   * Create a actor for the metaballs
+   */
+  void CreateMetaballActors();
+
+  /**
+   * Create the render task and FBO to render the metaballs into a texture
+   */
+  void CreateMetaballImage();
+
+  /**
+   * Create the the final composition
+   */
+  void CreateComposition();
+
+  /**
+   * Create all the metaballs animations (gravity, movement, size, etc.)
+   */
+  void CreateAnimations();
+
+  /**
+   * Function to launch the grow slow radius for the metaballs, and also the small variations for metaball[2] and [3]
+   */
+  void LaunchRadiusIncSlowAnimations( Animation& source );
+
+  /**
+   * Function to launch the animation to get the metaball[1] back to the center
+   */
+  void LaunchGetBackToPositionAnimation( Animation& source );
+
+  /**
+   * Function to stop all animations related to the click of the user in the screen
+   */
+  void StopClickAnimations();
+
+  /**
+   * Function to stop all animations related to the after click of the user in the screen
+   */
+  void StopAfterClickAnimations();
+
+  /**
+   * Function that resets the sate of the different Metaballs
+   */
+  void ResetMetaballsState();
+
+  /**
+   * Function to set the actual position of the metaballs when the user clicks the screen
+   */
+  void SetPositionToMetaballs( const Vector2& metaballCenter );
+
+};
+
+/**
+ * Implementation
+ */
+
+MetaballRefracController::MetaballRefracController( Application& application )
+  : mApplication( application )
+{
+  // Connect to the Application's Init signal
+  mApplication.InitSignal().Connect( this, &MetaballRefracController::Create );
+}
+
+MetaballRefracController::~MetaballRefracController()
+{
+  // Nothing to do here;
+}
+
+void MetaballRefracController::Create( Application& app )
+{
+  Stage stage = Stage::GetCurrent();
+
+  stage.KeyEventSignal().Connect( this, &MetaballRefracController::OnKeyEvent );
+
+  mScreenSize = stage.GetSize();
+
+  stage.SetBackgroundColor(Color::BLACK);
+
+  // Load background texture
+  mBackgroundTexture = DemoHelper::LoadTexture( BACKGROUND_IMAGE );
+
+  mGravity = Vector2(GRAVITY_X,GRAVITY_Y);
+  mGravityVar = Vector2(0,0);
+
+  CreateMetaballActors();
+  CreateMetaballImage();
+  CreateComposition();
+  CreateAnimations();
+
+  // Connect the callback to the touch signal on the mesh actor
+  stage.GetRootLayer().TouchSignal().Connect( this, &MetaballRefracController::OnTouch );
+}
+
+Geometry MetaballRefracController::CreateGeometry( bool aspectMappedTexture )
+{
+  const float aspect = mScreenSize.y / mScreenSize.x;
+
+  // Create vertices and specify their color
+  const float xsize = mScreenSize.x * 0.5;
+
+  // Create the meshdata for the metaballs
+  struct VertexPosition { Vector2 position; };
+  struct VertexTexture { Vector2 texture; };
+
+  VertexPosition vertices[] =
+  {
+    { Vector2( -xsize, -xsize * aspect ) },
+    { Vector2(  xsize, -xsize * aspect ) },
+    { Vector2( -xsize,  xsize * aspect ) },
+    { Vector2(  xsize,  xsize * aspect ) }
+  };
+
+  const float textureAspect = (aspectMappedTexture) ? aspect : 1.0f;
+  VertexTexture textures[] =
+  {
+    { Vector2( 0.0f, 0.0f ) },
+    { Vector2( 1.0f, 0.0f ) },
+    { Vector2( 0.0f, 1.0f * textureAspect ) },
+    { Vector2( 1.0f, 1.0f * textureAspect ) }
+  };
+
+  uint32_t numberOfVertices = sizeof(vertices)/sizeof(VertexPosition);
+
+  // Vertices
+  Property::Map positionVertexFormat;
+  positionVertexFormat["aPosition"] = Property::VECTOR2;
+  PropertyBuffer positionVertices = PropertyBuffer::New( positionVertexFormat );
+  positionVertices.SetData( vertices, numberOfVertices );
+
+  // Textures
+  Property::Map textureVertexFormat;
+  textureVertexFormat["aTexture"] = Property::VECTOR2;
+  PropertyBuffer textureVertices = PropertyBuffer::New( textureVertexFormat );
+  textureVertices.SetData( textures, numberOfVertices );
+
+  // Indices
+  const uint16_t indices[] = { 0, 3, 1, 0, 2, 3 };
+
+  // Create the geometry object
+  Geometry texturedQuadGeometry = Geometry::New();
+  texturedQuadGeometry.AddVertexBuffer( positionVertices );
+  texturedQuadGeometry.AddVertexBuffer( textureVertices );
+
+  texturedQuadGeometry.SetIndexBuffer ( &indices[0], sizeof( indices )/ sizeof( indices[0] ) );
+
+  return texturedQuadGeometry;
+}
+
+void MetaballRefracController::CreateMetaballActors()
+{
+  const float aspect = mScreenSize.y / mScreenSize.x;
+
+  // Create the renderer for the metaballs
+  Shader shader = Shader::New( METABALL_VERTEX_SHADER, METABALL_FRAG_SHADER, Shader::Hint::MODIFIES_GEOMETRY );
+  Geometry metaballGeometry = CreateGeometry();
+  Renderer renderer = Renderer::New( metaballGeometry, shader );
+  renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::ON );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_SRC_RGB,    BlendFactor::ONE );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_DEST_RGB,   BlendFactor::ONE );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_SRC_ALPHA,  BlendFactor::ONE );
+  renderer.SetProperty( Renderer::Property::BLEND_FACTOR_DEST_ALPHA, BlendFactor::ONE );
+
+  // Each metaball has a different radius
+  mMetaballs[0].radius = mMetaballs[0].initRadius = 0.0145f;
+  mMetaballs[1].radius = mMetaballs[1].initRadius = 0.012f;
+  mMetaballs[2].radius = mMetaballs[2].initRadius = 0.0135f;
+  mMetaballs[3].radius = mMetaballs[3].initRadius = 0.0135f;
+
+  // Initialization of each of the metaballs
+  for( uint32_t i = 0 ; i < METABALL_NUMBER ; i++ )
+  {
+    mMetaballs[i].position = Vector2(0.0f, 0.0f);
+
+    mMetaballs[i].actor = Actor::New();
+    mMetaballs[i].actor.SetName( "Metaball" );
+    mMetaballs[i].actor.SetScale( 1.0f );
+    mMetaballs[i].actor.SetParentOrigin( ParentOrigin::CENTER );
+
+
+    mMetaballs[i].actor.AddRenderer( renderer );
+
+    mMetaballs[i].positionIndex = mMetaballs[i].actor.RegisterProperty( "uPositionMetaball", mMetaballs[i].position );
+    mMetaballs[i].positionVarIndex = mMetaballs[i].actor.RegisterProperty( "uPositionVar", Vector2(0.f,0.f) );
+    mMetaballs[i].gravityIndex = mMetaballs[i].actor.RegisterProperty( "uGravityVector", Vector2(0.f,0.f) );
+    mMetaballs[i].radiusIndex = mMetaballs[i].actor.RegisterProperty( "uRadius", mMetaballs[i].radius );
+    mMetaballs[i].radiusVarIndex = mMetaballs[i].actor.RegisterProperty( "uRadiusVar", 0.f );
+    mMetaballs[i].aspectIndex = mMetaballs[i].actor.RegisterProperty( "uAspect", aspect );
+  }
+
+  //Root creation
+  mMetaballRoot = Actor::New();
+  mMetaballRoot.SetParentOrigin( ParentOrigin::CENTER );
+  for( uint32_t i = 0 ; i < METABALL_NUMBER ; i++ )
+  {
+    mMetaballRoot.Add( mMetaballs[i].actor );
+  }
+}
+
+void MetaballRefracController::CreateMetaballImage()
+{
+  // Create an FBO and a render task to create to render the metaballs with a fragment shader
+  Stage stage = Stage::GetCurrent();
+  mMetaballFBO = FrameBuffer::New( mScreenSize.x, mScreenSize.y );
+
+  stage.Add(mMetaballRoot);
+
+  //Creation of the render task used to render the metaballs
+  RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList();
+  RenderTask task = taskList.CreateTask();
+  task.SetRefreshRate( RenderTask::REFRESH_ALWAYS );
+  task.SetSourceActor( mMetaballRoot );
+  task.SetExclusive( true );
+  task.SetClearColor( Color::BLACK );
+  task.SetClearEnabled( true );
+  task.SetFrameBuffer( mMetaballFBO );
+}
+
+void MetaballRefracController::CreateComposition()
+{
+  // Create Refraction shader and renderer
+  mShaderRefraction = Shader::New( METABALL_VERTEX_SHADER, REFRACTION_FRAG_SHADER );
+
+  // Create new texture set
+  mTextureSetRefraction = TextureSet::New();
+  mTextureSetRefraction.SetTexture( 0u, mBackgroundTexture  );
+  mTextureSetRefraction.SetTexture( 1u, mMetaballFBO.GetColorTexture() );
+
+  // Create normal shader
+  mShaderNormal = Shader::New( METABALL_VERTEX_SHADER, FRAG_SHADER );
+
+  // Create new texture set
+  mTextureSetNormal = TextureSet::New();
+  mTextureSetNormal.SetTexture( 0u, mBackgroundTexture );
+
+  // Create actor
+  mCompositionActor = Actor::New( );
+  mCompositionActor.SetParentOrigin(ParentOrigin::CENTER);
+  mCompositionActor.SetPosition(Vector3(0.0f, 0.0f, 0.0f));
+  mCompositionActor.SetSize(mScreenSize.x, mScreenSize.y);
+
+  // Create geometry
+  Geometry metaballGeometry = CreateGeometry( false );
+  mRendererRefraction = Renderer::New( metaballGeometry, mShaderNormal );
+  mRendererRefraction.SetTextures( mTextureSetNormal );
+  mCompositionActor.AddRenderer( mRendererRefraction );
+
+  Stage stage = Stage::GetCurrent();
+  stage.Add( mCompositionActor );
+}
+
+void MetaballRefracController::CreateAnimations()
+{
+  uint32_t i = 0;
+  float key;
+
+  mPositionVarAnimation[1] = Animation::New( 2.f );
+  mPositionVarAnimation[1].SetLooping( false );
+  mPositionVarAnimation[1].Pause();
+  mPositionVarAnimation[1].FinishedSignal().Connect( this, &MetaballRefracController::LaunchGetBackToPositionAnimation );
+
+  KeyFrames keySinCosVariation = KeyFrames::New();
+  Vector2 sinCosVariation(0,0);
+  for( i = 0 ; i < 360; i++ )
+  {
+    sinCosVariation.x = 0.05f * ( -sinf(i * Math::PI_OVER_180) + cosf(i * Math::PI_OVER_180) );
+    sinCosVariation.y = 0.05f * ( sinf(i * Math::PI_OVER_180) - cosf(i * Math::PI_OVER_180) );
+    key = i/360.f;
+    keySinCosVariation.Add(key, sinCosVariation);
+  }
+
+  mPositionVarAnimation[2] = Animation::New(6.f);
+  mPositionVarAnimation[2].AnimateBetween(Property( mMetaballs[2].actor, mMetaballs[2].positionVarIndex ), keySinCosVariation);
+  mPositionVarAnimation[2].SetLooping( true );
+  mPositionVarAnimation[2].Pause();
+
+  KeyFrames keyCosSinVariation = KeyFrames::New();
+  Vector2 cosSinVariation(0,0);
+  for( i = 0 ; i < 360; i++ )
+  {
+    cosSinVariation.x = 0.05f * ( -sinf(i * Math::PI_OVER_180) - cosf(i * Math::PI_OVER_180) );
+    cosSinVariation.y = 0.05f * ( sinf(i * Math::PI_OVER_180) + cosf(i * Math::PI_OVER_180) );
+    key = i/360.f;
+    keyCosSinVariation.Add(key, cosSinVariation);
+  }
+
+  mPositionVarAnimation[3] = Animation::New(6.f);
+  mPositionVarAnimation[3].AnimateBetween(Property( mMetaballs[3].actor, mMetaballs[3].positionVarIndex ), keyCosSinVariation);
+  mPositionVarAnimation[3].SetLooping( true );
+  mPositionVarAnimation[3].Pause();
+
+  //Animations for gravity
+  for( i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mGravityAnimation[i] = Animation::New( 25.f );
+    mGravityAnimation[i].AnimateBy( Property( mMetaballs[i].actor, mMetaballs[i].gravityIndex ), mGravity * 25.f * 3.f );
+    mGravityAnimation[i].SetLooping( false );
+    mGravityAnimation[i].Pause();
+  }
+
+  //Animation to decrease size of metaballs when there is no click
+  for( i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mRadiusDecAnimation[i] = Animation::New( 25.f );
+    mRadiusDecAnimation[i].AnimateBy( Property( mMetaballs[i].actor, mMetaballs[i].radiusIndex ), -0.004f * 25.f * 3.f );
+    mRadiusDecAnimation[i].SetLooping( false );
+    mRadiusDecAnimation[i].Pause();
+  }
+
+  // Animation to grow the size of the metaballs the first second of the click
+  for( i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mRadiusIncFastAnimation[i] = Animation::New( 0.3f );
+    mRadiusIncFastAnimation[i].AnimateBy( Property( mMetaballs[i].actor, mMetaballs[i].radiusIndex ), 0.06f );
+    mRadiusIncFastAnimation[i].SetLooping( false );
+    mRadiusIncFastAnimation[i].Pause();
+  }
+  mRadiusIncFastAnimation[0].FinishedSignal().Connect( this, &MetaballRefracController::LaunchRadiusIncSlowAnimations );
+
+  // Animation to grow the size of the metaballs afterwards
+  for( i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mRadiusIncSlowAnimation[i] = Animation::New( 20.f );
+    mRadiusIncSlowAnimation[i].AnimateBy( Property( mMetaballs[i].actor, mMetaballs[i].radiusIndex ), 0.04f );
+    mRadiusIncSlowAnimation[i].SetLooping( false );
+    mRadiusIncSlowAnimation[i].Pause();
+  }
+
+  // Keyframes of a sin function
+  KeyFrames keySin = KeyFrames::New();
+  float val;
+  for( i = 0 ; i < 360; i++ )
+  {
+    val = 0.01f * sin(i * Math::PI/180.f);
+    key = i/360.f;
+    keySin.Add(key, val);
+  }
+
+  //Animation to change the size of the metaball
+  mRadiusVarAnimation[2] = Animation::New( 8.f );
+  mRadiusVarAnimation[2].AnimateBetween( Property( mMetaballs[2].actor, mMetaballs[2].radiusVarIndex ), keySin );
+  mRadiusVarAnimation[2].SetLooping( true );
+
+  // Keyframes of a cos function
+  KeyFrames keyCos = KeyFrames::New();
+  for( i = 0 ; i < 360; i++ )
+  {
+    val = 0.01f * cos(i * Math::PI/180.f);
+    key = i/360.f;
+    keyCos.Add(key, val);
+  }
+
+  //Animation to change the size of the metaball
+  mRadiusVarAnimation[3] = Animation::New( 8.f );
+  mRadiusVarAnimation[3].AnimateBetween( Property( mMetaballs[3].actor, mMetaballs[3].radiusVarIndex ), keyCos );
+  mRadiusVarAnimation[3].SetLooping( true );
+}
+
+void MetaballRefracController::LaunchGetBackToPositionAnimation( Animation& source )
+{
+  mMetaballPosVariationTo = Vector2(0,0);
+
+  mPositionVarAnimation[1] = Animation::New( 1.f );
+  mPositionVarAnimation[1].SetLooping( false );
+  mPositionVarAnimation[1].AnimateTo(Property( mMetaballs[1].actor, mMetaballs[1].positionVarIndex ), Vector2(0,0) );
+  mPositionVarAnimation[1].Play();
+}
+
+void MetaballRefracController::LaunchRadiusIncSlowAnimations( Animation& source )
+{
+  for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mRadiusIncSlowAnimation[i].Play();
+  }
+  mPositionVarAnimation[2].Play();
+  mPositionVarAnimation[3].Play();
+}
+
+void MetaballRefracController::StopClickAnimations()
+{
+  for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mRadiusIncSlowAnimation[i].Stop();
+    mRadiusIncFastAnimation[i].Stop();
+  }
+  mPositionVarAnimation[1].Stop();
+  mPositionVarAnimation[2].Stop();
+  mPositionVarAnimation[3].Stop();
+}
+
+void MetaballRefracController::StopAfterClickAnimations()
+{
+  for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mGravityAnimation[i].Stop();
+    mRadiusDecAnimation[i].Stop();
+
+    mMetaballs[i].radius = mMetaballs[i].initRadius;
+
+    mMetaballs[i].actor.SetProperty( mMetaballs[i].gravityIndex, Vector2(0,0) );
+    mMetaballs[i].actor.SetProperty( mMetaballs[i].radiusIndex, mMetaballs[i].radius );
+    mMetaballs[i].actor.SetProperty( mMetaballs[i].radiusVarIndex, 0.f );
+  }
+  mRadiusVarAnimation[2].Stop();
+  mRadiusVarAnimation[3].Stop();
+}
+
+void MetaballRefracController::ResetMetaballsState()
+{
+  mRendererRefraction.SetTextures( mTextureSetNormal );
+  mRendererRefraction.SetShader( mShaderNormal );
+
+  for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mMetaballs[i].radius = mMetaballs[i].initRadius;
+  }
+
+  mMetaballPosVariationTo = Vector2(0,0);
+  mMetaballPosVariationFrom = Vector2(0,0);
+  mMetaballPosVariation = Vector2(0,0);
+  mGravityVar = Vector2(0,0);
+}
+
+void MetaballRefracController::SetPositionToMetaballs( const Vector2& metaballCenter )
+{
+  //We set the position for the metaballs based on click position
+  for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+  {
+    mMetaballs[i].position = metaballCenter;
+    mMetaballs[i].actor.SetProperty( mMetaballs[i].positionIndex, mMetaballs[i].position );
+  }
+}
+
+bool MetaballRefracController::OnTouch( Actor actor, const TouchData& touch )
+{
+  const float aspect = mScreenSize.y / mScreenSize.x;
+  switch( touch.GetState( 0 ) )
+  {
+    case PointState::DOWN:
+    {
+      StopAfterClickAnimations();
+      for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+      {
+        mRadiusIncFastAnimation[i].Play();
+      }
+      mRadiusVarAnimation[2].Play();
+      mRadiusVarAnimation[3].Play();
+
+      //We draw with the refraction-composition shader
+      mRendererRefraction.SetTextures( mTextureSetRefraction );
+      mRendererRefraction.SetShader( mShaderRefraction );
+      mCurrentTouchPosition = touch.GetScreenPosition( 0 );
+
+      //we use the click position for the metaballs
+      Vector2 metaballCenter = Vector2( (mCurrentTouchPosition.x / mScreenSize.x) - 0.5f,
+                                        (aspect * (mScreenSize.y - mCurrentTouchPosition.y) / mScreenSize.y) - 0.5f ) * 2.0f;
+      SetPositionToMetaballs(metaballCenter);
+      break;
+    }
+    case PointState::MOTION:
+    {
+      Vector2 screen = touch.GetScreenPosition( 0 );
+      Vector2 displacement = screen - mCurrentTouchPosition;
+      mCurrentTouchPosition = screen;
+
+      mMetaballPosVariationTo.x += ( displacement.x / mScreenSize.x ) * 2.2f;
+      mMetaballPosVariationTo.y += (-displacement.y / mScreenSize.y ) * 2.2f;
+
+      if (mPositionVarAnimation[1])
+      {
+        mPositionVarAnimation[1].FinishedSignal().Disconnect( this, &MetaballRefracController::LaunchGetBackToPositionAnimation );
+        mPositionVarAnimation[1].Stop();
+      }
+      mPositionVarAnimation[1] = Animation::New( 1.f );
+      mPositionVarAnimation[1].SetLooping( false );
+      mPositionVarAnimation[1].AnimateTo(Property( mMetaballs[1].actor, mMetaballs[1].positionVarIndex ), mMetaballPosVariationTo );
+      mPositionVarAnimation[1].FinishedSignal().Connect( this, &MetaballRefracController::LaunchGetBackToPositionAnimation );
+      mPositionVarAnimation[1].Play();
+
+      //we use the click position for the metaballs
+      Vector2 metaballCenter = Vector2( (screen.x / mScreenSize.x) - 0.5f,
+                                        (aspect * (mScreenSize.y - screen.y) / mScreenSize.y) - 0.5f) * 2.0f;
+      SetPositionToMetaballs(metaballCenter);
+      break;
+    }
+    case PointState::UP:
+    case PointState::LEAVE:
+    case PointState::INTERRUPTED:
+    {
+      //Stop click animations
+      StopClickAnimations();
+
+      //Launch out of screen animations
+      for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+      {
+        mGravityAnimation[i].Play();
+      }
+
+      for( uint32_t i = 0 ; i < METABALL_NUMBER; i++ )
+      {
+        mRadiusDecAnimation[i].Play();
+      }
+      break;
+    }
+    default:
+      break;
+    }
+  return true;
+}
+
+void MetaballRefracController::OnKeyEvent(const KeyEvent& event)
+{
+  if( event.state == KeyEvent::Down )
+  {
+    if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+    {
+      mApplication.Quit();
+    }
+  }
+}
+
+/**
+ * Main entry point
+ */
+int32_t DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  MetaballRefracController test( application );
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/model3d-view/model3d-view-example.cpp b/examples/model3d-view/model3d-view-example.cpp
new file mode 100644 (file)
index 0000000..865c8ed
--- /dev/null
@@ -0,0 +1,303 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using Dali::Toolkit::Model3dView;
+
+namespace
+{
+const int MODEL_NUMBER(3);
+
+const char * const MODEL_FILE[] = {
+    DEMO_MODEL_DIR "Dino.obj",
+    DEMO_MODEL_DIR "ToyRobot-Metal.obj",
+    DEMO_MODEL_DIR "Toyrobot-Plastic.obj"
+};
+
+const char * const MATERIAL_FILE[] = {
+    DEMO_MODEL_DIR "Dino.mtl",
+    DEMO_MODEL_DIR "ToyRobot-Metal.mtl",
+    DEMO_MODEL_DIR "Toyrobot-Plastic.mtl"
+};
+
+const char * const IMAGE_PATH( DEMO_IMAGE_DIR "" );
+
+const char * BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-1.jpg");
+
+}
+
+/*
+ * This example shows how to create and display a model3d-view control.
+ * The application can cycle between 3 different models, and 3 different shaders.
+ * There are two animations running, one is a rotation for the model, one is a light that
+ * goes from one side of the model to the other.
+ * There are dedicated buttons for changing the models, the shaders and pausing the animations.
+ * The animations can also be paused, resumed with the space key
+ * A double tap in the model3d-view will make zoom-in/out of the zone clicked
+ */
+
+class Model3dViewController : public ConnectionTracker
+{
+public:
+
+  Model3dViewController( Application& application )
+  : mApplication( application ),
+    mModelCounter( 0 ),
+    mModel3dView(),
+    mButtonLayer(),
+    mTapDetector(),
+    mIlluminationShader( Model3dView::DIFFUSE ),
+    mRotationAnimation(),
+    mLightAnimation(),
+    mPlaying( false ),
+    mScaled( false )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &Model3dViewController::Create );
+  }
+
+  ~Model3dViewController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    Vector2 screenSize = stage.GetSize();
+
+    //Add background
+    Toolkit::ImageView backView = Toolkit::ImageView::New( BACKGROUND_IMAGE );
+    backView.SetParentOrigin( ParentOrigin::CENTER );
+    backView.SetAnchorPoint( AnchorPoint::CENTER );
+    stage.Add( backView );
+
+    mModelCounter = 0;
+
+    mModel3dView = Model3dView::New( MODEL_FILE[0], MATERIAL_FILE[0], IMAGE_PATH );
+    mModel3dView.SetParentOrigin( ParentOrigin::CENTER );
+    mModel3dView.SetAnchorPoint( AnchorPoint::CENTER );
+    mModel3dView.SetName( "model3dViewControl" );
+    mModel3dView.SetResizePolicy(ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS);
+    mModel3dView.SetSize(screenSize);
+
+    mModel3dView.SetProperty(Model3dView::Property::LIGHT_POSITION, Vector3(5,10.,0));
+
+    backView.Add( mModel3dView );
+
+    mIlluminationShader = Model3dView::IlluminationType(mModel3dView.GetProperty<int>(Model3dView::Property::ILLUMINATION_TYPE));
+
+    mButtonLayer = Layer::New();
+    mButtonLayer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mButtonLayer.SetParentOrigin( ParentOrigin::CENTER );
+    mButtonLayer.SetAnchorPoint( AnchorPoint::CENTER );
+    stage.Add(mButtonLayer);
+
+    // Create button for model changing
+    Toolkit::PushButton editButton = Toolkit::PushButton::New();
+    editButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    editButton.ClickedSignal().Connect( this, &Model3dViewController::OnChangeModelClicked);
+    editButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    editButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    editButton.SetProperty( Toolkit::Button::Property::LABEL, "Change Model" );
+    mButtonLayer.Add( editButton  );
+
+    // Create button for shader changing
+    editButton = Toolkit::PushButton::New();
+    editButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    editButton.ClickedSignal().Connect( this, &Model3dViewController::OnChangeLightingClicked);
+    editButton.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    editButton.SetAnchorPoint( AnchorPoint::TOP_RIGHT );
+    editButton.SetProperty( Toolkit::Button::Property::LABEL, "Change Shader" );
+    mButtonLayer.Add( editButton  );
+
+    // Create button for pause/resume animation
+    editButton = Toolkit::PushButton::New();
+    editButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    editButton.ClickedSignal().Connect( this, &Model3dViewController::OnPauseAnimationsClicked);
+    editButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    editButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    editButton.SetProperty( Toolkit::Button::Property::LABEL, "Pause Animations" );
+    mButtonLayer.Add( editButton  );
+
+    //Create animations
+    mLightAnimation = Animation::New(6.f);
+    mLightAnimation.AnimateTo(Property(mModel3dView, Model3dView::Property::LIGHT_POSITION), Vector3(-5,10.0,0), TimePeriod( 0.0f, 3.0f ));
+    mLightAnimation.AnimateTo(Property(mModel3dView, Model3dView::Property::LIGHT_POSITION), Vector3(5,10.0,0), TimePeriod( 3.0f, 3.0f ));
+    mLightAnimation.SetLooping(true);
+    mLightAnimation.Play();
+
+    mRotationAnimation = Animation::New(15.f);
+    mRotationAnimation.AnimateBy(Property(mModel3dView, Actor::Property::ORIENTATION), Quaternion(Degree(0.f), Degree(360.f), Degree(0.f)) );
+    mRotationAnimation.SetLooping(true);
+    mRotationAnimation.Play();
+
+    mPlaying = true;
+    mScaled = false;
+
+    // Respond to a click anywhere on the stage
+    stage.KeyEventSignal().Connect(this, &Model3dViewController::OnKeyEvent);
+
+    //Create a tap gesture detector for zoom
+    mTapDetector = TapGestureDetector::New( 2 );
+    mTapDetector.DetectedSignal().Connect(this, &Model3dViewController::OnTap);
+
+    mTapDetector.Attach( backView );
+  }
+
+  /**
+   * Main Tap event handler
+   */
+  void OnTap( Actor actor, const TapGesture& tap )
+  {
+    if (mScaled)
+    {
+      mModel3dView.SetScale(1.0);
+      mModel3dView.SetPosition(0,0,0);
+      mScaled = false;
+    }
+    else
+    {
+      Stage stage = Stage::GetCurrent();
+      Vector2 screenSize = stage.GetSize();
+
+      Vector2 position;
+      position.x = tap.screenPoint.x - screenSize.x * 0.5;
+      position.y = tap.screenPoint.y - screenSize.y * 0.5;
+
+      float size = 2.5;
+
+      mModel3dView.SetScale(size);
+      mModel3dView.SetPosition(-position.x * size,-position.y * size, 0);
+      mScaled = true;
+    }
+  }
+
+  /**
+   * Change models button signal function
+   */
+  bool OnChangeModelClicked(Toolkit::Button button)
+  {
+    mModelCounter = (mModelCounter + 1) % MODEL_NUMBER;
+    mModel3dView.SetProperty(Model3dView::Property::GEOMETRY_URL, MODEL_FILE[mModelCounter]);
+    mModel3dView.SetProperty(Model3dView::Property::MATERIAL_URL, MATERIAL_FILE[mModelCounter]);
+    return true;
+  }
+
+  /**
+   * Change shader button signal function
+   */
+  bool OnChangeLightingClicked(Toolkit::Button button)
+  {
+    if( mIlluminationShader == Model3dView::DIFFUSE_WITH_NORMAL_MAP )
+    {
+      mModel3dView.SetProperty(Model3dView::Property::ILLUMINATION_TYPE, Model3dView::DIFFUSE_WITH_TEXTURE);
+      mIlluminationShader = Model3dView::IlluminationType(mModel3dView.GetProperty<int>(Model3dView::Property::ILLUMINATION_TYPE));
+    }
+    else if( mIlluminationShader == Model3dView::DIFFUSE_WITH_TEXTURE )
+    {
+      mModel3dView.SetProperty(Model3dView::Property::ILLUMINATION_TYPE, Model3dView::DIFFUSE);
+      mIlluminationShader = Model3dView::IlluminationType(mModel3dView.GetProperty<int>(Model3dView::Property::ILLUMINATION_TYPE));
+   }
+    else if( mIlluminationShader == Model3dView::DIFFUSE )
+    {
+      mModel3dView.SetProperty(Model3dView::Property::ILLUMINATION_TYPE, Model3dView::DIFFUSE_WITH_NORMAL_MAP);
+      mIlluminationShader = Model3dView::IlluminationType(mModel3dView.GetProperty<int>(Model3dView::Property::ILLUMINATION_TYPE));
+   }
+
+    return true;
+  }
+
+  /**
+   * Function to pause resume all animations
+   */
+  void PauseAnimations()
+  {
+    if( mPlaying )
+    {
+      mRotationAnimation.Pause();
+      mLightAnimation.Pause();
+
+      mPlaying = false;
+    }
+    else
+    {
+      mRotationAnimation.Play();
+      mLightAnimation.Play();
+
+      mPlaying = true;
+    }
+  }
+
+  /**
+   * Pause button signal function
+   */
+  bool OnPauseAnimationsClicked(Toolkit::Button button)
+  {
+    PauseAnimations();
+
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+      else
+      {
+        PauseAnimations();
+      }
+    }
+  }
+
+
+private:
+  Application&  mApplication;
+
+  int mModelCounter;
+  Model3dView mModel3dView;
+
+  Layer mButtonLayer;
+  TapGestureDetector mTapDetector;
+
+  Model3dView::IlluminationType mIlluminationShader;
+
+  Animation mRotationAnimation;
+  Animation mLightAnimation;
+  bool mPlaying;
+
+  bool mScaled;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  Model3dViewController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/motion-blur/motion-blur-example.cpp b/examples/motion-blur/motion-blur-example.cpp
new file mode 100644 (file)
index 0000000..6972cf3
--- /dev/null
@@ -0,0 +1,464 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <sstream>
+#include <iomanip>
+
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/shader-effects/motion-blur-effect.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+
+
+namespace // unnamed namespace
+{
+
+////////////////////////////////////////////////////
+//
+// Demo setup parameters
+//
+
+const float MOTION_BLUR_ACTOR_WIDTH = 256;                                          // actor size on screen
+const float MOTION_BLUR_ACTOR_HEIGHT = 256;                                         // ""
+const unsigned int MOTION_BLUR_NUM_SAMPLES = 8;
+
+const int MOTION_BLUR_NUM_ACTOR_IMAGES = 5;
+const char* MOTION_BLUR_ACTOR_IMAGE1( DEMO_IMAGE_DIR "image-with-border-1.jpg" );
+const char* MOTION_BLUR_ACTOR_IMAGE2( DEMO_IMAGE_DIR "image-with-border-2.jpg" );
+const char* MOTION_BLUR_ACTOR_IMAGE3( DEMO_IMAGE_DIR "image-with-border-3.jpg" );
+const char* MOTION_BLUR_ACTOR_IMAGE4( DEMO_IMAGE_DIR "image-with-border-4.jpg" );
+const char* MOTION_BLUR_ACTOR_IMAGE5( DEMO_IMAGE_DIR "image-with-border-1.jpg" );
+
+const char* MOTION_BLUR_ACTOR_IMAGES[] = {
+  MOTION_BLUR_ACTOR_IMAGE1,
+  MOTION_BLUR_ACTOR_IMAGE2,
+  MOTION_BLUR_ACTOR_IMAGE3,
+  MOTION_BLUR_ACTOR_IMAGE4,
+  MOTION_BLUR_ACTOR_IMAGE5,
+};
+
+const int NUM_ACTOR_ANIMATIONS = 4;
+const int NUM_CAMERA_ANIMATIONS = 2;
+
+
+const char* BACKGROUND_IMAGE_PATH = DEMO_IMAGE_DIR "background-default.png";
+
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* LAYOUT_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
+const char* LAYOUT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char* APPLICATION_TITLE( "Motion Blur" );
+const char* EFFECTS_OFF_ICON( DEMO_IMAGE_DIR "icon-effects-off.png" );
+const char* EFFECTS_OFF_ICON_SELECTED( DEMO_IMAGE_DIR "icon-effects-off-selected.png" );
+const char* EFFECTS_ON_ICON( DEMO_IMAGE_DIR "icon-effects-on.png" );
+const char* EFFECTS_ON_ICON_SELECTED( DEMO_IMAGE_DIR "icon-effects-on-selected.png" );
+
+const float UI_MARGIN = 4.0f;                              ///< Screen Margin for placement of UI buttons
+
+const Vector3 BUTTON_SIZE_CONSTRAINT( 0.24f, 0.09f, 1.0f );
+const Vector3 BUTTON_TITLE_LABEL_TAP_HERE_SIZE_CONSTRAINT( 0.55f, 0.06f, 1.0f );
+const Vector3 BUTTON_TITLE_LABEL_INSTRUCTIONS_POPUP_SIZE_CONSTRAINT( 1.0f, 1.0f, 1.0f );
+
+// move this button down a bit so it is visible on target and not covered up by toolbar
+const float BUTTON_TITLE_LABEL_Y_OFFSET = 0.05f;
+
+const float ORIENTATION_DURATION = 0.5f;                  ///< Time to rotate to new orientation.
+
+/**
+ * @brief Set an image to image view, scaled-down to no more than the dimensions passed in.
+ *
+ * Uses SHRINK_TO_FIT which ensures the resulting image is
+ * smaller than or equal to the specified dimensions while preserving its original aspect ratio.
+ */
+void SetImageFittedInBox( ImageView& imageView, Property::Map& shaderEffect, const char * const imagePath, int maxWidth, int maxHeight )
+{
+  Property::Map map;
+  map[Visual::Property::TYPE] = Visual::IMAGE;
+  map[ImageVisual::Property::URL] = imagePath;
+  // Load the image nicely scaled-down to fit within the specified max width and height:
+  map[ImageVisual::Property::DESIRED_WIDTH] = maxWidth;
+  map[ImageVisual::Property::DESIRED_HEIGHT] = maxHeight;
+  map[ImageVisual::Property::FITTING_MODE] = FittingMode::SHRINK_TO_FIT;
+  map[ImageVisual::Property::SAMPLING_MODE] = SamplingMode::BOX_THEN_LINEAR;
+  map.Merge( shaderEffect );
+
+  imageView.SetProperty( ImageView::Property::IMAGE, map );
+}
+
+} // unnamed namespace
+
+
+//
+class MotionBlurExampleApp : public ConnectionTracker
+{
+public:
+
+  /**
+     * DeviceOrientation describes the four different
+     * orientations the device can be in based on accelerometer reports.
+     */
+  enum DeviceOrientation
+  {
+    PORTRAIT = 0,
+    LANDSCAPE = 90,
+    PORTRAIT_INVERSE = 180,
+    LANDSCAPE_INVERSE = 270
+  };
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  MotionBlurExampleApp(Application &app)
+  : mApplication(app),
+    mActorEffectsEnabled(false),
+    mCurrentActorAnimation(0),
+    mCurrentImage(0),
+    mOrientation( PORTRAIT )
+  {
+    // Connect to the Application's Init signal
+    app.InitSignal().Connect(this, &MotionBlurExampleApp::OnInit);
+  }
+
+  ~MotionBlurExampleApp()
+  {
+    // Nothing to do here; everything gets deleted automatically
+  }
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit(Application& app)
+  {
+    // The Init signal is received once (only) during the Application lifetime
+
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &MotionBlurExampleApp::OnKeyEvent);
+
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( mApplication,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE_PATH,
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    // Ensure the content layer is a square so the touch area works in all orientations
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+    float size = std::max( stageSize.width, stageSize.height );
+    mContentLayer.SetSize( size, size );
+
+    //Add an effects icon on the right of the title
+    mActorEffectsButton = Toolkit::PushButton::New();
+    mActorEffectsButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON );
+    mActorEffectsButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON_SELECTED );
+    mActorEffectsButton.ClickedSignal().Connect( this, &MotionBlurExampleApp::OnEffectButtonClicked );
+    mToolBar.AddControl( mActorEffectsButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalCenter, DemoHelper::DEFAULT_PLAY_PADDING );
+
+    // Creates a mode button.
+    // Create a effect toggle button. (right of toolbar)
+    Toolkit::PushButton layoutButton = Toolkit::PushButton::New();
+    layoutButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, LAYOUT_IMAGE );
+    layoutButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, LAYOUT_IMAGE_SELECTED );
+    layoutButton.ClickedSignal().Connect( this, &MotionBlurExampleApp::OnLayoutButtonClicked);
+    layoutButton.SetLeaveRequired( true );
+    mToolBar.AddControl( layoutButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Input
+    mTapGestureDetector = TapGestureDetector::New();
+    mTapGestureDetector.Attach( mContentLayer );
+    mTapGestureDetector.DetectedSignal().Connect( this, &MotionBlurExampleApp::OnTap );
+
+    Dali::Window winHandle = app.GetWindow();
+    winHandle.AddAvailableOrientation( Dali::Window::PORTRAIT );
+    winHandle.AddAvailableOrientation( Dali::Window::LANDSCAPE );
+    winHandle.AddAvailableOrientation( Dali::Window::PORTRAIT_INVERSE  );
+    winHandle.AddAvailableOrientation( Dali::Window::LANDSCAPE_INVERSE );
+    winHandle.ResizedSignal().Connect( this, &MotionBlurExampleApp::OnWindowResized );
+
+    // set initial orientation
+    Rotate( PORTRAIT );
+
+    ///////////////////////////////////////////////////////
+    //
+    // Motion blurred actor
+    //
+
+    // Scale down actor to fit on very low resolution screens with space to interact:
+    mMotionBlurActorSize = Size( std::min( stageSize.x * 0.3f, MOTION_BLUR_ACTOR_WIDTH ), std::min( stageSize.y * 0.3f, MOTION_BLUR_ACTOR_HEIGHT ) );
+    mMotionBlurActorSize = Size( std::min( mMotionBlurActorSize.x, mMotionBlurActorSize.y ), std::min( mMotionBlurActorSize.x, mMotionBlurActorSize.y ) );
+
+    mMotionBlurEffect = CreateMotionBlurEffect();
+    mMotionBlurImageView = ImageView::New();
+    SetImageFittedInBox( mMotionBlurImageView, mMotionBlurEffect, MOTION_BLUR_ACTOR_IMAGE1, mMotionBlurActorSize.x, mMotionBlurActorSize.y );
+    mMotionBlurImageView.SetParentOrigin( ParentOrigin::CENTER );
+    mMotionBlurImageView.SetSize(mMotionBlurActorSize.x, mMotionBlurActorSize.y);
+
+    mContentLayer.Add( mMotionBlurImageView );
+
+    // Create shader used for doing motion blur
+    mMotionBlurEffect = CreateMotionBlurEffect();
+
+    // set actor shader to the blur one
+    Toolkit::SetMotionBlurProperties( mMotionBlurImageView, MOTION_BLUR_NUM_SAMPLES );
+
+  }
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Device Orientation Support
+  //
+  //
+
+  void OnWindowResized( Window::WindowSize size )
+  {
+    Rotate( size.GetWidth() > size.GetHeight() ? LANDSCAPE : PORTRAIT );
+  }
+
+  void Rotate( DeviceOrientation orientation )
+  {
+    // Resize the root actor
+    const Vector2 targetSize = Stage::GetCurrent().GetSize();
+
+    if( mOrientation != orientation )
+    {
+      mOrientation = orientation;
+
+      // check if actor is on stage
+      if( mView.GetParent() )
+      {
+        // has parent so we expect it to be on stage, start animation
+        mRotateAnimation = Animation::New( ORIENTATION_DURATION );
+        mRotateAnimation.AnimateTo( Property( mView, Actor::Property::SIZE_WIDTH ), targetSize.width );
+        mRotateAnimation.AnimateTo( Property( mView, Actor::Property::SIZE_HEIGHT ), targetSize.height );
+        mRotateAnimation.Play();
+      }
+      else
+      {
+        mView.SetSize( targetSize );
+      }
+    }
+    else
+    {
+      // for first time just set size
+      mView.SetSize( targetSize );
+    }
+  }
+
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Actor Animation
+  //
+  //
+
+  // move to point on screen that was tapped
+  void OnTap( Actor actor, const TapGesture& tapGesture )
+  {
+    Vector3 destPos;
+    float originOffsetX, originOffsetY;
+
+    // rotate offset (from top left origin to centre) into actor space
+    Vector2 stageSize = Dali::Stage::GetCurrent().GetSize();
+    actor.ScreenToLocal(originOffsetX, originOffsetY, stageSize.width * 0.5f, stageSize.height * 0.5f);
+
+    // get dest point in local actor space
+    destPos.x = tapGesture.localPoint.x - originOffsetX;
+    destPos.y = tapGesture.localPoint.y - originOffsetY;
+    destPos.z = 0.0f;
+
+    float animDuration = 0.5f;
+    mActorTapMovementAnimation = Animation::New( animDuration );
+    if ( mMotionBlurImageView )
+    {
+      mActorTapMovementAnimation.AnimateTo( Property(mMotionBlurImageView, Actor::Property::POSITION), destPos, AlphaFunction::EASE_IN_OUT_SINE, TimePeriod(animDuration) );
+    }
+    mActorTapMovementAnimation.SetEndAction( Animation::Bake );
+    mActorTapMovementAnimation.Play();
+
+
+    // perform some spinning etc
+    if(mActorEffectsEnabled)
+    {
+      switch(mCurrentActorAnimation)
+      {
+        // spin around y
+        case 0:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionBlurImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::YAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        // spin around z
+        case 1:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionBlurImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::ZAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        // spin around y and z
+        case 2:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionBlurImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::YAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.AnimateBy( Property( mMotionBlurImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::ZAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        // scale
+        case 3:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionBlurImageView, Actor::Property::SCALE ), Vector3(2.0f, 2.0f, 2.0f), AlphaFunction::BOUNCE, TimePeriod( 0.0f, 1.0f ) );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        default:
+          break;
+      }
+
+      mCurrentActorAnimation++;
+      if(NUM_ACTOR_ANIMATIONS == mCurrentActorAnimation)
+      {
+        mCurrentActorAnimation = 0;
+      }
+    }
+  }
+
+  void ToggleActorEffects()
+  {
+    if(!mActorEffectsEnabled)
+    {
+      mActorEffectsEnabled = true;
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECTS_ON_ICON );
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECTS_ON_ICON_SELECTED );
+    }
+    else
+    {
+      mActorEffectsEnabled = false;
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON );
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON_SELECTED );
+    }
+  }
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Input handlers
+  //
+  //
+
+  bool OnLayoutButtonClicked( Toolkit::Button button )
+  {
+    ChangeImage();
+    return true;
+  }
+
+  bool OnEffectButtonClicked( Toolkit::Button button )
+  {
+    ToggleActorEffects();
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Misc
+  //
+  //
+
+
+  void ChangeImage()
+  {
+    mCurrentImage++;
+    if(MOTION_BLUR_NUM_ACTOR_IMAGES == mCurrentImage)
+    {
+      mCurrentImage = 0;
+    }
+    SetImageFittedInBox( mMotionBlurImageView, mMotionBlurEffect, MOTION_BLUR_ACTOR_IMAGES[mCurrentImage], mMotionBlurActorSize.x, mMotionBlurActorSize.y );
+
+  }
+
+
+private:
+  Application&               mApplication;            ///< Application instance
+  Toolkit::Control           mView;
+  Toolkit::ToolBar           mToolBar;
+
+  Layer                      mContentLayer;           ///< Content layer (contains actor for this blur demo)
+
+  PushButton                 mActorEffectsButton;     ///< The actor effects toggling Button.
+
+  // Motion blur
+  Property::Map mMotionBlurEffect;
+  ImageView mMotionBlurImageView;
+  Size mMotionBlurActorSize;
+
+  // animate actor to position where user taps screen
+  Animation mActorTapMovementAnimation;
+
+  // show different animations to demonstrate blur effect working on an object only movement basis
+  bool mActorEffectsEnabled;
+  Animation mActorAnimation;
+  int mCurrentActorAnimation;
+
+  // offer a selection of images that user can cycle between
+  int mCurrentImage;
+
+  TapGestureDetector mTapGestureDetector;
+
+  DeviceOrientation mOrientation;               ///< Current Device orientation
+  Animation mRotateAnimation;                   ///< Animation for rotating between landscape and portrait.
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  MotionBlurExampleApp test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/motion-stretch/motion-stretch-example.cpp b/examples/motion-stretch/motion-stretch-example.cpp
new file mode 100644 (file)
index 0000000..3557005
--- /dev/null
@@ -0,0 +1,436 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <sstream>
+#include <iomanip>
+
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/shader-effects/motion-stretch-effect.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+
+
+namespace // unnamed namespace
+{
+
+////////////////////////////////////////////////////
+//
+// Demo setup parameters
+//
+
+const float MOTION_STRETCH_ACTOR_WIDTH = 256;                                          // actor size on screen
+const float MOTION_STRETCH_ACTOR_HEIGHT = 256;                                         // ""
+
+const int MOTION_STRETCH_NUM_ACTOR_IMAGES = 5;
+const char* MOTION_STRETCH_ACTOR_IMAGE1( DEMO_IMAGE_DIR "image-with-border-1.jpg" );
+const char* MOTION_STRETCH_ACTOR_IMAGE2( DEMO_IMAGE_DIR "image-with-border-2.jpg" );
+const char* MOTION_STRETCH_ACTOR_IMAGE3( DEMO_IMAGE_DIR "image-with-border-3.jpg" );
+const char* MOTION_STRETCH_ACTOR_IMAGE4( DEMO_IMAGE_DIR "image-with-border-4.jpg" );
+const char* MOTION_STRETCH_ACTOR_IMAGE5( DEMO_IMAGE_DIR "image-with-border-5.jpg" );
+
+const char* MOTION_STRETCH_ACTOR_IMAGES[] = {
+  MOTION_STRETCH_ACTOR_IMAGE1,
+  MOTION_STRETCH_ACTOR_IMAGE2,
+  MOTION_STRETCH_ACTOR_IMAGE3,
+  MOTION_STRETCH_ACTOR_IMAGE4,
+  MOTION_STRETCH_ACTOR_IMAGE5,
+};
+
+const int NUM_ACTOR_ANIMATIONS = 4;
+const int NUM_CAMERA_ANIMATIONS = 2;
+
+
+const char* BACKGROUND_IMAGE_PATH = DEMO_IMAGE_DIR "background-default.png";
+
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* LAYOUT_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
+const char* LAYOUT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char* APPLICATION_TITLE( "Motion Stretch" );
+const char* EFFECTS_OFF_ICON( DEMO_IMAGE_DIR "icon-effects-off.png" );
+const char* EFFECTS_OFF_ICON_SELECTED( DEMO_IMAGE_DIR "icon-effects-off-selected.png" );
+const char* EFFECTS_ON_ICON( DEMO_IMAGE_DIR "icon-effects-on.png" );
+const char* EFFECTS_ON_ICON_SELECTED( DEMO_IMAGE_DIR "icon-effects-on-selected.png" );
+
+// These values depend on the button background image
+const Vector4 BUTTON_IMAGE_BORDER( Vector4::ONE * 3.0f );
+
+const float UI_MARGIN = 4.0f;                              ///< Screen Margin for placement of UI buttons
+
+const Vector3 BUTTON_SIZE_CONSTRAINT( 0.24f, 0.09f, 1.0f );
+
+// move this button down a bit so it is visible on target and not covered up by toolbar
+const float BUTTON_TITLE_LABEL_Y_OFFSET = 0.05f;
+
+const float ORIENTATION_DURATION = 0.5f;                  ///< Time to rotate to new orientation.
+} // unnamed namespace
+
+
+
+
+//
+class MotionStretchExampleApp : public ConnectionTracker
+{
+public:
+
+  /**
+     * DeviceOrientation describes the four different
+     * orientations the device can be in based on accelerometer reports.
+     */
+  enum DeviceOrientation
+  {
+    PORTRAIT = 0,
+    LANDSCAPE = 90,
+    PORTRAIT_INVERSE = 180,
+    LANDSCAPE_INVERSE = 270
+  };
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  MotionStretchExampleApp(Application &app)
+  : mApplication(app),
+    mActorEffectsEnabled(false),
+    mCurrentActorAnimation(0),
+    mCurrentImage(0),
+    mOrientation( PORTRAIT )
+  {
+    // Connect to the Application's Init signal
+    app.InitSignal().Connect(this, &MotionStretchExampleApp::OnInit);
+  }
+
+  ~MotionStretchExampleApp()
+  {
+    // Nothing to do here; everything gets deleted automatically
+  }
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit(Application& app)
+  {
+    // The Init signal is received once (only) during the Application lifetime
+
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &MotionStretchExampleApp::OnKeyEvent);
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( mApplication,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE_PATH,
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    // Ensure the content layer is a square so the touch area works in all orientations
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+    float size = std::max( stageSize.width, stageSize.height );
+    mContentLayer.SetSize( size, size );
+
+    //Add an slideshow icon on the right of the title
+    mActorEffectsButton = Toolkit::PushButton::New();
+    mActorEffectsButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON );
+    mActorEffectsButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON_SELECTED );
+    mActorEffectsButton.ClickedSignal().Connect( this, &MotionStretchExampleApp::OnEffectButtonClicked );
+    mToolBar.AddControl( mActorEffectsButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalCenter, DemoHelper::DEFAULT_PLAY_PADDING );
+
+    // Creates a mode button.
+    // Create a effect toggle button. (right of toolbar)
+    Toolkit::PushButton layoutButton = Toolkit::PushButton::New();
+    layoutButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, LAYOUT_IMAGE );
+    layoutButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, LAYOUT_IMAGE_SELECTED );
+    layoutButton.ClickedSignal().Connect( this, &MotionStretchExampleApp::OnLayoutButtonClicked);
+    layoutButton.SetLeaveRequired( true );
+    mToolBar.AddControl( layoutButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Input
+    mTapGestureDetector = TapGestureDetector::New();
+    mTapGestureDetector.Attach( mContentLayer );
+    mTapGestureDetector.DetectedSignal().Connect( this, &MotionStretchExampleApp::OnTap );
+
+    // set initial orientation
+    Dali::Window winHandle = app.GetWindow();
+    winHandle.AddAvailableOrientation( Dali::Window::PORTRAIT );
+    winHandle.AddAvailableOrientation( Dali::Window::LANDSCAPE );
+    winHandle.AddAvailableOrientation( Dali::Window::PORTRAIT_INVERSE  );
+    winHandle.AddAvailableOrientation( Dali::Window::LANDSCAPE_INVERSE );
+    winHandle.ResizedSignal().Connect( this, &MotionStretchExampleApp::OnWindowResized );
+
+    // set initial orientation
+    Rotate( PORTRAIT );
+
+    ///////////////////////////////////////////////////////
+    //
+    // Motion stretched actor
+    //
+    mMotionStretchEffect = Toolkit::CreateMotionStretchEffect();
+    mMotionStretchEffect["url"] = MOTION_STRETCH_ACTOR_IMAGE1;
+    mMotionStretchImageView = ImageView::New();
+    mMotionStretchImageView.SetProperty( Toolkit::ImageView::Property::IMAGE, mMotionStretchEffect );
+    mMotionStretchImageView.SetParentOrigin( ParentOrigin::CENTER );
+    mMotionStretchImageView.SetAnchorPoint( AnchorPoint::CENTER );
+    mMotionStretchImageView.SetSize( MOTION_STRETCH_ACTOR_WIDTH, MOTION_STRETCH_ACTOR_HEIGHT );
+
+    mContentLayer.Add( mMotionStretchImageView );
+
+    // Create shader used for doing motion stretch
+    Toolkit::SetMotionStretchProperties( mMotionStretchImageView );
+  }
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Device Orientation Support
+  //
+  //
+
+  void OnWindowResized( Window::WindowSize size )
+  {
+    Rotate( size.GetWidth() > size.GetHeight() ? LANDSCAPE : PORTRAIT );
+  }
+
+  void Rotate( DeviceOrientation orientation )
+  {
+    // Resize the root actor
+    const Vector2 targetSize = Stage::GetCurrent().GetSize();
+
+    if( mOrientation != orientation )
+    {
+      mOrientation = orientation;
+
+      // check if actor is on stage
+      if( mView.GetParent() )
+      {
+        // has parent so we expect it to be on stage, start animation
+        mRotateAnimation = Animation::New( ORIENTATION_DURATION );
+        mRotateAnimation.AnimateTo( Property( mView, Actor::Property::SIZE_WIDTH ), targetSize.width );
+        mRotateAnimation.AnimateTo( Property( mView, Actor::Property::SIZE_HEIGHT ), targetSize.height );
+        mRotateAnimation.Play();
+      }
+      else
+      {
+        mView.SetSize( targetSize );
+      }
+    }
+    else
+    {
+      // for first time just set size
+      mView.SetSize( targetSize );
+    }
+  }
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Actor Animation
+  //
+  //
+
+  // move to point on screen that was tapped
+  void OnTap( Actor actor, const TapGesture& tapGesture )
+  {
+    Vector3 destPos;
+    float originOffsetX, originOffsetY;
+
+    // rotate offset (from top left origin to centre) into actor space
+    Vector2 stageSize = Dali::Stage::GetCurrent().GetSize();
+    actor.ScreenToLocal(originOffsetX, originOffsetY, stageSize.width * 0.5f, stageSize.height * 0.5f);
+
+    // get dest point in local actor space
+    destPos.x = tapGesture.localPoint.x - originOffsetX;
+    destPos.y = tapGesture.localPoint.y - originOffsetY;
+    destPos.z = 0.0f;
+
+    float animDuration = 0.5f;
+    mActorTapMovementAnimation = Animation::New( animDuration );
+    if ( mMotionStretchImageView )
+    {
+      mActorTapMovementAnimation.AnimateTo( Property(mMotionStretchImageView, Actor::Property::POSITION), destPos, AlphaFunction::EASE_IN_OUT_SINE, TimePeriod(animDuration) );
+    }
+    mActorTapMovementAnimation.SetEndAction( Animation::Bake );
+    mActorTapMovementAnimation.Play();
+
+
+    // perform some spinning etc
+    if(mActorEffectsEnabled)
+    {
+      switch(mCurrentActorAnimation)
+      {
+        // spin around y
+        case 0:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionStretchImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::YAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        // spin around z
+        case 1:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionStretchImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::ZAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        // spin around y and z
+        case 2:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionStretchImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::YAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.AnimateBy( Property( mMotionStretchImageView, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f) ), Vector3::ZAXIS ), AlphaFunction::EASE_IN_OUT );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        // scale
+        case 3:
+        {
+          float animDuration = 1.0f;
+          mActorAnimation = Animation::New(animDuration);
+          mActorAnimation.AnimateBy( Property( mMotionStretchImageView, Actor::Property::SCALE ), Vector3(2.0f, 2.0f, 2.0f), AlphaFunction::BOUNCE, TimePeriod( 0.0f, 1.0f ) );
+          mActorAnimation.SetEndAction( Animation::Bake );
+          mActorAnimation.Play();
+        }
+        break;
+
+        default:
+          break;
+      }
+
+      mCurrentActorAnimation++;
+      if(NUM_ACTOR_ANIMATIONS == mCurrentActorAnimation)
+      {
+        mCurrentActorAnimation = 0;
+      }
+    }
+  }
+
+  void ToggleActorEffects()
+  {
+    if(!mActorEffectsEnabled)
+    {
+      mActorEffectsEnabled = true;
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECTS_ON_ICON );
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECTS_ON_ICON_SELECTED );
+    }
+    else
+    {
+      mActorEffectsEnabled = false;
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON );
+      mActorEffectsButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, EFFECTS_OFF_ICON_SELECTED );
+    }
+  }
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Input handlers
+  //
+  //
+
+  bool OnLayoutButtonClicked( Toolkit::Button button )
+  {
+    ChangeImage();
+    return true;
+  }
+
+  bool OnEffectButtonClicked( Toolkit::Button button )
+  {
+    ToggleActorEffects();
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  //////////////////////////////////////////////////////////////
+  //
+  // Misc
+  //
+  //
+
+
+  void ChangeImage()
+  {
+    mCurrentImage++;
+    if(MOTION_STRETCH_NUM_ACTOR_IMAGES == mCurrentImage)
+    {
+      mCurrentImage = 0;
+    }
+
+    mMotionStretchEffect["url"] = MOTION_STRETCH_ACTOR_IMAGES[mCurrentImage];
+    mMotionStretchImageView.SetProperty( Toolkit::ImageView::Property::IMAGE, mMotionStretchEffect );
+  }
+
+
+private:
+  Application&               mApplication;            ///< Application instance
+  Toolkit::Control           mView;
+  Toolkit::ToolBar           mToolBar;
+  Layer                      mContentLayer;           ///< Content layer (contains actor for this stretch demo)
+
+  PushButton                 mActorEffectsButton;     ///< The actor effects toggling Button.
+
+  // Motion stretch
+  Property::Map mMotionStretchEffect;
+  ImageView mMotionStretchImageView;
+
+  // animate actor to position where user taps screen
+  Animation mActorTapMovementAnimation;
+
+  // show different animations to demonstrate stretch effect working on an object only movement basis
+  bool mActorEffectsEnabled;
+  Animation mActorAnimation;
+  int mCurrentActorAnimation;
+
+  // offer a selection of images that user can cycle between
+  int mCurrentImage;
+
+  TapGestureDetector mTapGestureDetector;
+
+  DeviceOrientation mOrientation;               ///< Current Device orientation
+  Animation mRotateAnimation;                   ///< Animation for rotating between landscape and portrait.
+
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  MotionStretchExampleApp test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/native-image-source/native-image-source-example.cpp b/examples/native-image-source/native-image-source-example.cpp
new file mode 100644 (file)
index 0000000..d8271eb
--- /dev/null
@@ -0,0 +1,441 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+#include <dali/devel-api/images/native-image-interface-extension.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <cstring>
+
+// INTERNAL INCLUDES
+#include "shared/utility.h"
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+
+const float BUTTON_HEIGHT = 100.0f;
+const float BUTTON_COUNT  = 5.0f;
+
+const std::string JPG_FILENAME = DEMO_IMAGE_DIR "gallery-medium-4.jpg";
+const std::string CAPTURE_FILENAME = "/tmp/native-image-capture.png";
+
+/**
+ * @brief Creates a shader used to render a native image
+ * @param[in] nativeImageInterface The native image interface
+ * @return A shader to render the native image
+ */
+Shader CreateShader( NativeImageInterface& nativeImageInterface )
+{
+  static const char* DEFAULT_SAMPLER_TYPENAME = "sampler2D";
+
+  static const char* VERTEX_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+      attribute mediump vec2 aPosition;\n
+      attribute mediump vec2 aTexCoord;\n
+      uniform mediump mat4 uMvpMatrix;\n
+      uniform mediump vec3 uSize;\n
+      varying mediump vec2 vTexCoord;\n
+      void main()\n
+      {\n
+        vec4 position = vec4(aPosition,0.0,1.0)*vec4(uSize,1.0);\n
+        gl_Position = uMvpMatrix * position;\n
+        vTexCoord = aTexCoord;\n
+      }\n
+  );
+
+  static const char* FRAGMENT_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+      uniform lowp vec4 uColor;\n
+      uniform sampler2D sTexture;\n
+      varying mediump vec2 vTexCoord;\n
+
+      void main()\n
+      {\n
+        gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n
+      }\n
+  );
+
+  NativeImageInterface::Extension* extension( nativeImageInterface.GetExtension() );
+  if( extension )
+  {
+    std::string fragmentShader;
+
+    //Get custom fragment shader prefix
+    const char* fragmentPreFix = extension->GetCustomFragmentPreFix();
+    if( fragmentPreFix )
+    {
+      fragmentShader = fragmentPreFix;
+      fragmentShader += FRAGMENT_SHADER_TEXTURE;
+    }
+    else
+    {
+      fragmentShader = FRAGMENT_SHADER_TEXTURE;
+    }
+
+    //Get custom sampler type name
+    const char* customSamplerTypename = extension->GetCustomSamplerTypename();
+    if( customSamplerTypename )
+    {
+      fragmentShader.replace( fragmentShader.find( DEFAULT_SAMPLER_TYPENAME ), strlen(DEFAULT_SAMPLER_TYPENAME), customSamplerTypename );
+    }
+
+    return Shader::New( VERTEX_SHADER_TEXTURE, fragmentShader );
+  }
+  else
+  {
+    return Shader::New( VERTEX_SHADER_TEXTURE, FRAGMENT_SHADER_TEXTURE );
+  }
+}
+
+}
+
+// This example shows how to create and use a NativeImageSource as the target of the render task.
+//
+class NativeImageSourceController : public ConnectionTracker
+{
+public:
+
+  NativeImageSourceController( Application& application )
+  : mApplication( application ),
+    mRefreshAlways( true )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &NativeImageSourceController::Create );
+  }
+
+  ~NativeImageSourceController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    stage.KeyEventSignal().Connect(this, &NativeImageSourceController::OnKeyEvent);
+
+    CreateButtonArea();
+
+    CreateContentAreas();
+  }
+
+  void CreateButtonArea()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    mButtonArea = Layer::New();
+    mButtonArea.SetSize( stageSize.x, BUTTON_HEIGHT );
+    mButtonArea.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mButtonArea.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    stage.Add( mButtonArea );
+
+    mButtonShow = PushButton::New();
+    mButtonShow.SetProperty( Button::Property::TOGGLABLE, true );
+    mButtonShow.SetProperty( Toolkit::Button::Property::LABEL, "SHOW" );
+    mButtonShow.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mButtonShow.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mButtonShow.SetSize( stageSize.x / BUTTON_COUNT, BUTTON_HEIGHT );
+    mButtonShow.ClickedSignal().Connect( this, &NativeImageSourceController::OnButtonSelected );
+    mButtonArea.Add( mButtonShow );
+
+    mButtonRefreshAlways = PushButton::New();
+    mButtonRefreshAlways.SetProperty( Button::Property::TOGGLABLE, true );
+    mButtonRefreshAlways.SetProperty( Toolkit::Button::Property::LABEL, "ALWAYS" );
+    mButtonRefreshAlways.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mButtonRefreshAlways.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mButtonRefreshAlways.SetSize( stageSize.x / BUTTON_COUNT, BUTTON_HEIGHT );
+    mButtonRefreshAlways.SetPosition( (stageSize.x / BUTTON_COUNT)*1.0f, 0.0f );
+    mButtonRefreshAlways.StateChangedSignal().Connect( this, &NativeImageSourceController::OnButtonSelected );
+    mButtonArea.Add( mButtonRefreshAlways );
+
+    mButtonRefreshOnce = PushButton::New();
+    mButtonRefreshOnce.SetProperty( Toolkit::Button::Property::LABEL, "ONCE" );
+    mButtonRefreshOnce.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mButtonRefreshOnce.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mButtonRefreshOnce.SetSize( stageSize.x / BUTTON_COUNT, BUTTON_HEIGHT );
+    mButtonRefreshOnce.SetPosition( (stageSize.x / BUTTON_COUNT)*2.0f, 0.0f );
+    mButtonRefreshOnce.ClickedSignal().Connect( this, &NativeImageSourceController::OnButtonSelected );
+    mButtonArea.Add( mButtonRefreshOnce );
+
+    mButtonCapture = PushButton::New();
+    mButtonCapture.SetProperty( Toolkit::Button::Property::LABEL, "CAPTURE" );
+    mButtonCapture.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mButtonCapture.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mButtonCapture.SetSize( stageSize.x / BUTTON_COUNT, BUTTON_HEIGHT );
+    mButtonCapture.SetPosition( (stageSize.x / BUTTON_COUNT)*3.0f, 0.0f );
+    mButtonCapture.ClickedSignal().Connect( this, &NativeImageSourceController::OnButtonSelected );
+    mButtonArea.Add( mButtonCapture );
+
+    mButtonReset = PushButton::New();
+    mButtonReset.SetProperty( Toolkit::Button::Property::LABEL, "RESET" );
+    mButtonReset.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mButtonReset.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mButtonReset.SetSize( stageSize.x / BUTTON_COUNT, BUTTON_HEIGHT );
+    mButtonReset.SetPosition( (stageSize.x / BUTTON_COUNT)*4.0f, 0.0f );
+    mButtonReset.ClickedSignal().Connect( this, &NativeImageSourceController::OnButtonSelected );
+    mButtonArea.Add( mButtonReset );
+  }
+
+  void CreateContentAreas()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    float contentHeight( (stageSize.y - BUTTON_HEIGHT)/2.0f );
+
+    mTopContentArea = Actor::New();
+    mTopContentArea.SetSize( stageSize.x, contentHeight );
+    mTopContentArea.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mTopContentArea.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mTopContentArea.SetY( BUTTON_HEIGHT );
+    stage.Add( mTopContentArea );
+
+    mBottomContentArea = Actor::New();
+    mBottomContentArea.SetSize( stageSize.x, contentHeight );
+    mBottomContentArea.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mBottomContentArea.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    stage.Add( mBottomContentArea );
+
+    mSourceActor = ImageView::New(JPG_FILENAME);
+    mSourceActor.SetParentOrigin( ParentOrigin::CENTER);
+    mSourceActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mTopContentArea.Add( mSourceActor );
+
+    Animation animation = Animation::New(2.f);
+    Degree relativeRotationDegrees(90.0f);
+    Radian relativeRotationRadians(relativeRotationDegrees);
+    animation.AnimateTo( Property( mSourceActor, Actor::Property::ORIENTATION ), Quaternion( relativeRotationRadians, Vector3::ZAXIS ), AlphaFunction::LINEAR, TimePeriod(0.f, 0.5f));
+    animation.AnimateBy( Property( mSourceActor, Actor::Property::ORIENTATION ), Quaternion( relativeRotationRadians, Vector3::ZAXIS ), AlphaFunction::LINEAR, TimePeriod(0.5f, 0.5f));
+    animation.AnimateBy( Property( mSourceActor, Actor::Property::ORIENTATION ), Quaternion( relativeRotationRadians, Vector3::ZAXIS ), AlphaFunction::LINEAR, TimePeriod(1.f, 0.5f));
+    animation.AnimateBy( Property( mSourceActor, Actor::Property::ORIENTATION ), Quaternion( relativeRotationRadians, Vector3::ZAXIS ), AlphaFunction::LINEAR, TimePeriod(1.5f, 0.5f));
+    animation.SetLooping(true);
+    animation.Play();
+
+    TextLabel textLabel1 = TextLabel::New( "Image" );
+    textLabel1.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    textLabel1.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    mTopContentArea.Add( textLabel1 );
+
+    // Wait until button press before creating mOffscreenRenderTask
+
+    TextLabel textLabel2 = TextLabel::New( "Native Image" );
+    textLabel2.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    textLabel2.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    mBottomContentArea.Add( textLabel2 );
+  }
+
+  void SetupNativeImage()
+  {
+    if( ! mOffscreenRenderTask )
+    {
+      Stage stage = Stage::GetCurrent();
+      Vector2 stageSize = stage.GetSize();
+
+      float contentHeight( (stageSize.y - BUTTON_HEIGHT)/2.0f );
+      Vector2 imageSize( stageSize.x, contentHeight );
+
+      mNativeImageSourcePtr = NativeImageSource::New( imageSize.width, imageSize.height, NativeImageSource::COLOR_DEPTH_DEFAULT );
+      mNativeTexture = Texture::New( *mNativeImageSourcePtr );
+
+      mFrameBuffer = FrameBuffer::New( mNativeTexture.GetWidth(), mNativeTexture.GetHeight(), FrameBuffer::Attachment::NONE );
+      mFrameBuffer.AttachColorTexture( mNativeTexture );
+
+      mCameraActor = CameraActor::New( imageSize );
+      mCameraActor.SetParentOrigin( ParentOrigin::CENTER );
+      mCameraActor.SetParentOrigin( AnchorPoint::CENTER );
+      mTopContentArea.Add( mCameraActor );
+
+      RenderTaskList taskList = stage.GetRenderTaskList();
+      mOffscreenRenderTask = taskList.CreateTask();
+      mOffscreenRenderTask.SetSourceActor( mSourceActor );
+      mOffscreenRenderTask.SetClearColor( Color::WHITE );
+      mOffscreenRenderTask.SetClearEnabled( true );
+      mOffscreenRenderTask.SetCameraActor( mCameraActor );
+      mOffscreenRenderTask.GetCameraActor().SetInvertYAxis( true );
+      mOffscreenRenderTask.SetFrameBuffer( mFrameBuffer );
+    }
+
+    if( mRefreshAlways )
+    {
+      mOffscreenRenderTask.SetRefreshRate( RenderTask::REFRESH_ALWAYS );
+    }
+    else
+    {
+      mOffscreenRenderTask.SetRefreshRate( RenderTask::REFRESH_ONCE );
+    }
+  }
+
+  void SetupDisplayActor( bool show )
+  {
+    if( show )
+    {
+      if( ! mDisplayActor )
+      {
+        // Make sure we have something to display
+        SetupNativeImage();
+
+        mDisplayActor = Actor::New();
+        mDisplayActor.SetParentOrigin( ParentOrigin::CENTER );
+        mDisplayActor.SetAnchorPoint( AnchorPoint::CENTER );
+
+        Geometry geometry = DemoHelper::CreateTexturedQuad();
+
+        Shader shader = CreateShader( *mNativeImageSourcePtr );
+
+        Renderer renderer = Renderer::New( geometry, shader );
+
+        TextureSet textureSet = TextureSet::New();
+        textureSet.SetTexture( 0u, mNativeTexture );
+        renderer.SetTextures( textureSet );
+
+        mDisplayActor.AddRenderer( renderer );
+        mDisplayActor.SetSize( mNativeTexture.GetWidth(), mNativeTexture.GetHeight() );
+
+        mBottomContentArea.Add( mDisplayActor );
+      }
+    }
+    else
+    {
+      UnparentAndReset( mDisplayActor );
+    }
+  }
+
+  void Capture()
+  {
+    mRefreshAlways = false;
+    SetupNativeImage();
+
+    mOffscreenRenderTask.FinishedSignal().Connect( this, &NativeImageSourceController::DoCapture );
+  }
+
+  void DoCapture(RenderTask& task)
+  {
+    task.FinishedSignal().Disconnect( this, &NativeImageSourceController::DoCapture );
+
+    mNativeImageSourcePtr->EncodeToFile( CAPTURE_FILENAME );
+  }
+
+  void Reset()
+  {
+    SetupDisplayActor( false );
+
+    Stage stage = Stage::GetCurrent();
+    RenderTaskList taskList = stage.GetRenderTaskList();
+    taskList.RemoveTask( mOffscreenRenderTask );
+    mOffscreenRenderTask.Reset();
+    mCameraActor.Reset();
+
+    mFrameBuffer.Reset();
+    mNativeTexture.Reset();
+    mNativeImageSourcePtr.Reset();
+  }
+
+  bool OnButtonSelected( Toolkit::Button button )
+  {
+    Toolkit::PushButton pushButton = Toolkit::PushButton::DownCast( button );
+
+    if( pushButton == mButtonShow )
+    {
+      bool isSelected = mButtonShow.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+
+      SetupDisplayActor( isSelected );
+    }
+    else if( pushButton == mButtonRefreshAlways )
+    {
+      bool isSelected = mButtonRefreshAlways.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+
+      mRefreshAlways = isSelected;
+      SetupNativeImage();
+    }
+    else if( pushButton == mButtonRefreshOnce )
+    {
+      bool isSelected = mButtonRefreshAlways.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+
+      if( isSelected )
+      {
+        mButtonRefreshAlways.SetProperty( Button::Property::SELECTED, false );
+      }
+
+      mRefreshAlways = false;
+      SetupNativeImage();
+    }
+    else if( pushButton == mButtonCapture )
+    {
+      Capture();
+    }
+    else if( pushButton == mButtonReset )
+    {
+      Reset();
+    }
+
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;
+
+  Layer mButtonArea;
+  Actor mTopContentArea;
+  Actor mBottomContentArea;
+
+  PushButton mButtonShow;
+  PushButton mButtonRefreshAlways;
+  PushButton mButtonRefreshOnce;
+  PushButton mButtonCapture;
+  PushButton mButtonReset;
+
+  Actor mSourceActor;
+
+  NativeImageSourcePtr mNativeImageSourcePtr;
+  Texture              mNativeTexture;
+  FrameBuffer          mFrameBuffer;
+
+  RenderTask mOffscreenRenderTask;
+  CameraActor mCameraActor;
+
+  Actor mDisplayActor;
+
+  bool mRefreshAlways;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  NativeImageSourceController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/page-turn-view/page-turn-view-example.cpp b/examples/page-turn-view/page-turn-view-example.cpp
new file mode 100644 (file)
index 0000000..a8e53e5
--- /dev/null
@@ -0,0 +1,289 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/page-turn-view/page-factory.h>
+#include <dali-toolkit/devel-api/controls/page-turn-view/page-turn-landscape-view.h>
+#include <dali-toolkit/devel-api/controls/page-turn-view/page-turn-portrait-view.h>
+#include <dali-toolkit/devel-api/controls/page-turn-view/page-turn-view.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char* BOOK_COVER_PORTRAIT = ( DEMO_IMAGE_DIR "book-portrait-cover.jpg" );
+const char* BOOK_COVER_LANDSCAPE = ( DEMO_IMAGE_DIR "book-landscape-cover.jpg" );
+const char* BOOK_COVER_BACK_LANDSCAPE = ( DEMO_IMAGE_DIR "book-landscape-cover-back.jpg" );
+
+const char* PAGE_IMAGES_PORTRAIT[] =
+{
+  DEMO_IMAGE_DIR "book-portrait-p1.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p2.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p3.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p4.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p5.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p6.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p7.jpg",
+  DEMO_IMAGE_DIR "book-portrait-p8.jpg"
+};
+const unsigned int NUMBER_OF_PORTRAIT_IMAGE( sizeof(PAGE_IMAGES_PORTRAIT) / sizeof(PAGE_IMAGES_PORTRAIT[0]) );
+
+const char* PAGE_IMAGES_LANDSCAPE[] =
+{
+  DEMO_IMAGE_DIR "book-landscape-p1.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p2.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p3.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p4.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p5.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p6.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p7.jpg",
+  DEMO_IMAGE_DIR "book-landscape-p8.jpg"
+};
+const unsigned int NUMBER_OF_LANDSCAPE_IMAGE( sizeof(PAGE_IMAGES_LANDSCAPE) / sizeof(PAGE_IMAGES_LANDSCAPE[0]) );
+
+enum DemoOrientation
+{
+  PORTRAIT,
+  LANDSCAPE,
+  UNKNOWN
+};
+
+}
+
+class PortraitPageFactory : public PageFactory
+{
+  /**
+   * Query the number of pages available from the factory.
+   * The maximum available page has an ID of GetNumberOfPages()-1.
+   */
+  virtual unsigned int GetNumberOfPages()
+  {
+    return 5*NUMBER_OF_PORTRAIT_IMAGE + 1;
+  }
+
+  /**
+   * Create texture to represent a page.
+   * @param[in] pageId The ID of the page to create.
+   * @return The texture.
+   */
+  virtual Texture NewPage( unsigned int pageId )
+  {
+    Texture texture;
+
+    PixelData pixels;
+    if( pageId == 0 )
+    {
+      pixels = SyncImageLoader::Load( BOOK_COVER_PORTRAIT );
+    }
+    else
+    {
+      pixels = SyncImageLoader::Load( PAGE_IMAGES_PORTRAIT[ (pageId-1) % NUMBER_OF_PORTRAIT_IMAGE ] );
+    }
+
+    if( pixels )
+    {
+      texture = Texture::New( TextureType::TEXTURE_2D, pixels.GetPixelFormat(), pixels.GetWidth(), pixels.GetHeight() );
+      texture.Upload( pixels, 0, 0, 0, 0, pixels.GetWidth(), pixels.GetHeight() );
+    }
+
+    return texture;
+  }
+};
+
+class LandscapePageFactory : public PageFactory
+{
+  /**
+   * Query the number of pages available from the factory.
+   * The maximum available page has an ID of GetNumberOfPages()-1.
+   */
+  virtual unsigned int GetNumberOfPages()
+  {
+    return 5*NUMBER_OF_LANDSCAPE_IMAGE / 2 + 1;
+  }
+
+  /**
+   * Create texture to represent a page.
+   * @param[in] pageId The ID of the page to create.
+   * @return The texture.
+   */
+  virtual Texture NewPage( unsigned int pageId )
+  {
+    Texture texture;
+
+    PixelData pixelsFront;
+    PixelData pixelsBack;
+
+    if( pageId == 0 )
+    {
+       pixelsFront = SyncImageLoader::Load( BOOK_COVER_LANDSCAPE );
+       pixelsBack  = SyncImageLoader::Load( BOOK_COVER_BACK_LANDSCAPE );
+    }
+    else
+    {
+      unsigned int imageId = (pageId-1)*2;
+      pixelsFront = SyncImageLoader::Load( PAGE_IMAGES_LANDSCAPE[ imageId     % NUMBER_OF_LANDSCAPE_IMAGE ] );
+      pixelsBack  = SyncImageLoader::Load( PAGE_IMAGES_LANDSCAPE[ (imageId+1) % NUMBER_OF_LANDSCAPE_IMAGE ] );
+    }
+
+    if( pixelsFront && pixelsBack )
+    {
+      texture = Texture::New( TextureType::TEXTURE_2D, pixelsFront.GetPixelFormat(), pixelsFront.GetWidth()*2, pixelsFront.GetHeight() );
+      texture.Upload( pixelsFront, 0, 0, 0, 0, pixelsFront.GetWidth(), pixelsFront.GetHeight() );
+      texture.Upload( pixelsBack,  0, 0, pixelsFront.GetWidth(), 0, pixelsBack.GetWidth(), pixelsBack.GetHeight() );
+    }
+
+    return texture;
+  }
+};
+
+/**
+ * This example shows how to use the PageTurnView UI control
+ */
+class PageTurnExample : public ConnectionTracker
+{
+public:
+
+  PageTurnExample( Application &app );
+
+  ~PageTurnExample();
+
+  void OnInit( Application& app );
+
+private:
+
+
+  void OnWindowResized( Window::WindowSize size );
+
+  void Rotate( DemoOrientation orientation );
+
+  void OnKeyEvent(const KeyEvent& event);
+
+private:
+
+  Application&                mApplication;
+
+  PageTurnView                mPageTurnPortraitView;
+  PageTurnView                mPageTurnLandscapeView;
+  PortraitPageFactory         mPortraitPageFactory;
+  LandscapePageFactory        mLandscapePageFactory;
+
+  DemoOrientation             mOrientation;
+};
+
+PageTurnExample::PageTurnExample( Application &app )
+: mApplication( app ),
+  mOrientation( UNKNOWN )
+{
+  app.InitSignal().Connect( this, &PageTurnExample::OnInit );
+}
+
+PageTurnExample::~PageTurnExample()
+{
+}
+
+/**
+ * The Init signal is received once (only) during the Application lifetime
+ */
+void PageTurnExample::OnInit( Application& app )
+{
+  Stage::GetCurrent().KeyEventSignal().Connect(this, &PageTurnExample::OnKeyEvent);
+
+  Window window = app.GetWindow();
+  window.AddAvailableOrientation( Window::PORTRAIT );
+  window.AddAvailableOrientation( Window::LANDSCAPE );
+  window.AddAvailableOrientation( Window::PORTRAIT_INVERSE  );
+  window.AddAvailableOrientation( Window::LANDSCAPE_INVERSE );
+  window.ResizedSignal().Connect( this, &PageTurnExample::OnWindowResized );
+
+  Window::WindowSize size = window.GetSize();
+  Rotate( size.GetWidth() > size.GetHeight() ? LANDSCAPE : PORTRAIT );
+}
+
+void PageTurnExample::OnWindowResized( Window::WindowSize size )
+{
+  Rotate( size.GetWidth() > size.GetHeight() ? LANDSCAPE : PORTRAIT );
+}
+
+void PageTurnExample::Rotate( DemoOrientation orientation )
+{
+  Stage stage = Stage::GetCurrent();
+  Vector2 stageSize = stage.GetSize();
+
+  if( mOrientation != orientation )
+  {
+    mOrientation = orientation;
+
+    if( PORTRAIT == orientation )
+    {
+      if( !mPageTurnPortraitView )
+      {
+        mPageTurnPortraitView = PageTurnPortraitView::New( mPortraitPageFactory, stageSize );
+        mPageTurnPortraitView.SetParentOrigin( ParentOrigin::CENTER );
+      }
+
+      if( mPageTurnLandscapeView )
+      {
+        stage.Remove( mPageTurnLandscapeView );
+      }
+      stage.Add( mPageTurnPortraitView );
+    }
+    else if( LANDSCAPE == orientation )
+    {
+      if( !mPageTurnLandscapeView )
+      {
+        mPageTurnLandscapeView = PageTurnLandscapeView::New( mLandscapePageFactory, Vector2(stageSize.x*0.5f, stageSize.y) );
+        mPageTurnLandscapeView.SetParentOrigin( ParentOrigin::CENTER );
+      }
+
+      if( mPageTurnPortraitView )
+      {
+        stage.Remove( mPageTurnPortraitView );
+      }
+
+      stage.Add( mPageTurnLandscapeView );
+    }
+  }
+}
+
+/**
+ * Main key event handler
+ */
+void PageTurnExample::OnKeyEvent(const KeyEvent& event)
+{
+  if(event.state == KeyEvent::Down)
+  {
+    if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+    {
+      mApplication.Quit();
+    }
+  }
+}
+
+// Entry point for applications
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application app = Application::New(&argc, &argv);
+  PageTurnExample test ( app );
+
+  app.MainLoop();
+
+  return 0;
+}
+
diff --git a/examples/perf-scroll/perf-scroll.cpp b/examples/perf-scroll/perf-scroll.cpp
new file mode 100644 (file)
index 0000000..43ac252
--- /dev/null
@@ -0,0 +1,499 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+#include "shared/utility.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+
+namespace
+{
+const char* IMAGE_PATH[] = {
+                            DEMO_IMAGE_DIR "gallery-medium-1.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-2.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-3.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-4.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-5.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-6.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-7.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-8.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-9.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-10.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-11.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-12.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-13.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-14.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-15.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-16.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-17.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-18.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-19.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-20.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-21.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-22.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-23.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-24.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-25.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-26.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-27.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-28.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-29.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-30.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-31.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-32.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-33.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-34.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-35.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-36.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-37.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-38.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-39.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-40.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-41.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-42.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-43.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-44.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-45.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-46.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-47.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-48.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-49.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-50.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-51.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-52.jpg",
+                            DEMO_IMAGE_DIR "gallery-medium-53.jpg",
+};
+
+const char* NINEPATCH_IMAGE_PATH[] = {
+                            DEMO_IMAGE_DIR "selection-popup-bg.1.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.2.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.3.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.4.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.5.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.6.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.7.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.8.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.9.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.10.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.11.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.12.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.13.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.14.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.15.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.16.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.17.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.18.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.19.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.20.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.21.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.22.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.23.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.24.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.25.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.26.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.27.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.28.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.29.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.30.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.31.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.32.9.png",
+                            DEMO_IMAGE_DIR "selection-popup-bg.33.9.png",
+                            DEMO_IMAGE_DIR "button-disabled.9.png",
+                            DEMO_IMAGE_DIR "button-down.9.png",
+                            DEMO_IMAGE_DIR "button-down-disabled.9.png",
+                            DEMO_IMAGE_DIR "button-up-1.9.png",
+                            DEMO_IMAGE_DIR "button-up-2.9.png",
+                            DEMO_IMAGE_DIR "button-up-3.9.png",
+                            DEMO_IMAGE_DIR "button-up-4.9.png",
+                            DEMO_IMAGE_DIR "button-up-5.9.png",
+                            DEMO_IMAGE_DIR "button-up-6.9.png",
+                            DEMO_IMAGE_DIR "button-up-7.9.png",
+                            DEMO_IMAGE_DIR "button-up-8.9.png",
+                            DEMO_IMAGE_DIR "button-up-9.9.png",
+                            DEMO_IMAGE_DIR "button-up-10.9.png",
+                            DEMO_IMAGE_DIR "button-up-11.9.png",
+                            DEMO_IMAGE_DIR "button-up-12.9.png",
+                            DEMO_IMAGE_DIR "button-up-13.9.png",
+                            DEMO_IMAGE_DIR "button-up-14.9.png",
+                            DEMO_IMAGE_DIR "button-up-15.9.png",
+                            DEMO_IMAGE_DIR "button-up-16.9.png",
+                            DEMO_IMAGE_DIR "button-up-17.9.png",
+};
+
+const unsigned int NUM_IMAGES = sizeof(IMAGE_PATH) / sizeof(char*);
+const unsigned int NUM_NINEPATCH_IMAGES = sizeof(NINEPATCH_IMAGE_PATH) / sizeof(char*);
+
+const float ANIMATION_TIME ( 5.0f ); // animation length in seconds
+
+struct VertexWithTexture
+{
+  Vector2 position;
+  Vector2 texCoord;
+};
+
+VertexWithTexture gQuadWithTexture[] = {
+                                        { Vector2( -0.5f, -0.5f ), Vector2( 0.0f, 0.0f ) },
+                                        { Vector2(  0.5f, -0.5f ), Vector2( 1.0f, 0.0f ) },
+                                        { Vector2( -0.5f,  0.5f ), Vector2( 0.0f, 1.0f ) },
+                                        { Vector2(  0.5f,  0.5f ), Vector2( 1.0f, 1.0f ) }
+};
+
+const char* VERTEX_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+    attribute mediump vec2 aPosition;\n
+    attribute mediump vec2 aTexCoord;\n
+    uniform mediump mat4 uMvpMatrix;\n
+    uniform mediump vec3 uSize;\n
+    varying mediump vec2 vTexCoord;\n
+    void main()\n
+    {\n
+      vec4 position = vec4(aPosition,0.0,1.0)*vec4(uSize,1.0);\n
+      gl_Position = uMvpMatrix * position;\n
+      vTexCoord = aTexCoord;\n
+    }\n
+);
+
+const char* FRAGMENT_SHADER_TEXTURE = DALI_COMPOSE_SHADER(
+    uniform lowp vec4 uColor;\n
+    uniform sampler2D sTexture;\n
+    varying mediump vec2 vTexCoord;\n
+
+    void main()\n
+    {\n
+      gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n
+    }\n
+);
+
+bool gUseMesh(false);
+bool gNinePatch(false);
+unsigned int gRowsPerPage(15);
+unsigned int gColumnsPerPage(15);
+unsigned int gPageCount(10);
+float gDuration(10.0f);
+
+Renderer CreateRenderer( unsigned int index, Geometry geometry, Shader shader )
+{
+  Renderer renderer = Renderer::New( geometry, shader );
+  const char* imagePath = !gNinePatch ? IMAGE_PATH[index] : NINEPATCH_IMAGE_PATH[index];
+  Texture texture = DemoHelper::LoadTexture( imagePath );
+  TextureSet textureSet = TextureSet::New();
+  textureSet.SetTexture( 0u, texture );
+  renderer.SetTextures( textureSet );
+  renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::OFF );
+  return renderer;
+}
+
+
+}
+// Test application to compare performance between ImageActor and ImageView
+// By default, the application consist of 10 pages of 25x25 ImageActors, this can be modified using the following command line arguments:
+// -t duration (sec )
+// --use-imageview ( Use ImageView instead of ImageActor )
+// --use-mesh ( Use new renderer API (as ImageView) but shares renderers between actors when possible )
+
+//
+class PerfScroll : public ConnectionTracker
+{
+public:
+
+  PerfScroll( Application& application )
+  : mApplication( application ),
+  mRowsPerPage( gRowsPerPage ),
+  mColumnsPerPage( gColumnsPerPage ),
+  mPageCount( gPageCount )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &PerfScroll::Create );
+  }
+
+  ~PerfScroll()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    Vector2 stageSize = stage.GetSize();
+
+    stage.GetRootLayer().SetDepthTestDisabled(true);
+
+    mSize = Vector3( stageSize.x / mColumnsPerPage, stageSize.y / mRowsPerPage, 0.0f );
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &PerfScroll::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &PerfScroll::OnKeyEvent );
+
+    mParent = Actor::New();
+    mParent.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    stage.Add(mParent);
+
+    if( gUseMesh )
+    {
+      CreateMeshActors();
+    }
+    else
+    {
+      CreateImageViews();
+    }
+
+    ShowAnimation();
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  const char* ImagePath( int i )
+  {
+    return !gNinePatch ? IMAGE_PATH[i % NUM_IMAGES] : NINEPATCH_IMAGE_PATH[i % NUM_NINEPATCH_IMAGES];
+  }
+
+  void CreateImageViews()
+  {
+    Stage stage = Stage::GetCurrent();
+    unsigned int actorCount( mRowsPerPage*mColumnsPerPage * mPageCount );
+    mImageView.resize( actorCount );
+
+    for( size_t i(0); i<actorCount; ++i )
+    {
+      mImageView[i] = ImageView::New();
+      Property::Map propertyMap;
+      propertyMap.Insert(Toolkit::ImageVisual::Property::URL, ImagePath(i));
+      propertyMap.Insert(Toolkit::Visual::Property::TYPE, Toolkit::Visual::IMAGE);
+      propertyMap.Insert(Toolkit::DevelVisual::Property::VISUAL_FITTING_MODE, Toolkit::DevelVisual::FILL);
+      mImageView[i].SetProperty(Toolkit::ImageView::Property::IMAGE, propertyMap);
+
+      mImageView[i].SetSize( Vector3(0.0f,0.0f,0.0f) );
+      mImageView[i].SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+      mParent.Add( mImageView[i] );
+    }
+  }
+
+  void CreateMeshActors()
+  {
+    unsigned int numImages = !gNinePatch ? NUM_IMAGES : NUM_NINEPATCH_IMAGES;
+
+    //Create all the renderers
+    std::vector<Renderer> renderers( numImages );
+    Shader shader = Shader::New( VERTEX_SHADER_TEXTURE, FRAGMENT_SHADER_TEXTURE );
+    Geometry geometry = DemoHelper::CreateTexturedQuad();
+    for( unsigned int i(0); i<numImages; ++i )
+    {
+      renderers[i] = CreateRenderer( i, geometry, shader );
+    }
+
+    //Create the actors
+    Stage stage = Stage::GetCurrent();
+    unsigned int actorCount(mRowsPerPage*mColumnsPerPage * mPageCount);
+    mActor.resize(actorCount);
+    for( size_t i(0); i<actorCount; ++i )
+    {
+      mActor[i] = Actor::New();
+      mActor[i].AddRenderer( renderers[i % numImages] );
+      mActor[i].SetSize(0.0f,0.0f,0.0f);
+      mParent.Add(mActor[i]);
+    }
+  }
+
+  void OnAnimationEnd( Animation& source )
+  {
+    if( source == mShow )
+    {
+      ScrollAnimation();
+    }
+    else if( source == mScroll )
+    {
+      HideAnimation();
+    }
+    else
+    {
+      mApplication.Quit();
+    }
+  }
+
+  void ShowAnimation()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector3 initialPosition( stage.GetSize().x * 0.5f, stage.GetSize().y*0.5f, 1000.0f );
+
+    unsigned int totalColumns = mColumnsPerPage * mPageCount;
+
+    size_t count(0);
+    float xpos, ypos;
+    mShow = Animation::New( 0.0f );
+
+    float totalDuration( 0.0f );
+    float durationPerActor( 0.0f );
+    float delayBetweenActors = ( totalDuration - durationPerActor ) / ( mRowsPerPage * mColumnsPerPage );
+
+    for( size_t i(0); i<totalColumns; ++i )
+    {
+      xpos = mSize.x * i;
+
+      for( size_t j(0); j<mRowsPerPage; ++j )
+      {
+
+        ypos = mSize.y * j;
+
+        float delay = 0.0f;
+        float duration = 0.0f;
+        if( count < ( static_cast< size_t >( mRowsPerPage ) * mColumnsPerPage ) )
+        {
+          duration = durationPerActor;
+          delay = delayBetweenActors * count;
+        }
+        if( gUseMesh )
+        {
+          mActor[count].SetPosition( initialPosition );
+          mActor[count].SetSize( Vector3(0.0f,0.0f,0.0f) );
+          mActor[count].SetOrientation( Quaternion( Radian( 0.0f ), Vector3::XAXIS ) );
+          mShow.AnimateTo( Property( mActor[count], Actor::Property::POSITION ), Vector3( xpos+mSize.x*0.5f, ypos+mSize.y*0.5f, 0.0f), AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ) );
+          mShow.AnimateTo( Property( mActor[count], Actor::Property::SIZE ), mSize, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ) );
+        }
+        else
+        {
+          mImageView[count].SetPosition( initialPosition );
+          mImageView[count].SetSize( Vector3(0.0f,0.0f,0.0f) );
+          mImageView[count].SetOrientation( Quaternion( Radian(0.0f),Vector3::XAXIS ) );
+          mShow.AnimateTo( Property( mImageView[count], Actor::Property::POSITION ), Vector3( xpos+mSize.x*0.5f, ypos+mSize.y*0.5f, 0.0f ), AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ) );
+          mShow.AnimateTo( Property( mImageView[count], Actor::Property::SIZE ), mSize, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay, duration ) );
+        }
+        ++count;
+      }
+    }
+    mShow.Play();
+    mShow.FinishedSignal().Connect( this, &PerfScroll::OnAnimationEnd );
+  }
+
+  void ScrollAnimation()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector3 stageSize( stage.GetSize() );
+
+    mScroll = Animation::New( gDuration );
+
+    mScroll.AnimateBy( Property( mParent, Actor::Property::POSITION ), Vector3( -(gPageCount-1.)*stageSize.x,0.0f, 0.0f) );
+    mScroll.Play();
+    mScroll.FinishedSignal().Connect( this, &PerfScroll::OnAnimationEnd );
+  }
+
+  void HideAnimation()
+  {
+    size_t count(0);
+    unsigned int actorsPerPage( mRowsPerPage*mColumnsPerPage );
+    mHide = Animation::New( 0.0f );
+
+    unsigned int totalColumns = mColumnsPerPage * mPageCount;
+
+    float totalDuration( 0.0f );
+    float durationPerActor( 0.0f );
+    float delayBetweenActors = ( totalDuration - durationPerActor ) / ( mRowsPerPage * mColumnsPerPage );
+    for( size_t i(0); i<mRowsPerPage; ++i )
+    {
+      for( size_t j(0); j<totalColumns; ++j )
+      {
+        float delay = 0.0f;
+        float duration = 0.0f;
+        if( count < actorsPerPage )
+        {
+          duration = durationPerActor;
+          delay = delayBetweenActors * count;
+        }
+
+        if( gUseMesh )
+        {
+          mHide.AnimateTo( Property( mActor[count], Actor::Property::ORIENTATION ),  Quaternion( Radian( Degree( 70.0f ) ), Vector3::XAXIS ), AlphaFunction::EASE_OUT, TimePeriod( delay, duration ) );
+          mHide.AnimateBy( Property( mActor[count], Actor::Property::POSITION_Z ), 1000.0f, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay +delayBetweenActors*actorsPerPage + duration, duration ) );
+        }
+        else
+        {
+          mHide.AnimateTo( Property( mImageView[count], Actor::Property::ORIENTATION ),  Quaternion( Radian( Degree( 70.0f ) ), Vector3::XAXIS ), AlphaFunction::EASE_OUT, TimePeriod( delay, duration ) );
+          mHide.AnimateBy( Property( mImageView[count], Actor::Property::POSITION_Z ), 1000.0f, AlphaFunction::EASE_OUT_BACK, TimePeriod( delay +delayBetweenActors*actorsPerPage + duration, duration ) );
+        }
+        ++count;
+      }
+    }
+
+    mHide.Play();
+    mHide.FinishedSignal().Connect( this, &PerfScroll::OnAnimationEnd );
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+
+  std::vector<Actor>  mActor;
+  std::vector<ImageView>  mImageView;
+  Actor mParent;
+
+  Vector3             mSize;
+  unsigned int        mRowsPerPage;
+  unsigned int        mColumnsPerPage;
+  unsigned int        mPageCount;
+
+  Animation           mShow;
+  Animation           mScroll;
+  Animation           mHide;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  for( int i(1) ; i < argc; ++i )
+  {
+    std::string arg( argv[i] );
+    if( arg.compare("--use-mesh") == 0)
+    {
+      gUseMesh = true;
+    }
+    else if( arg.compare("--nine-patch" ) == 0)
+    {
+      gNinePatch = true;
+    }
+    else if( arg.compare(0, 2, "-t" ) == 0)
+    {
+      gDuration = atof( arg.substr( 2, arg.size()).c_str());
+    }
+  }
+
+  PerfScroll test( application );
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/pivot/pivot-example.cpp b/examples/pivot/pivot-example.cpp
new file mode 100644 (file)
index 0000000..fe62dcf
--- /dev/null
@@ -0,0 +1,159 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/actors/actor-devel.h>
+
+#include <iostream>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const int TABLE_VIEW_ROWS = 5;
+const int TABLE_VIEW_COLUMNS = 3;
+const Vector3 TABLE_VIEW_SIZE_MODE_FACTOR( 0.6f, 0.6f, 1.0f );
+
+const Quaternion ANIMATION_ROTATION( Degree( 360.0f), Vector3::ZAXIS );
+const AlphaFunction::BuiltinFunction ROTATION_ANIMATION_ALPHA_FUNCTION( AlphaFunction::EASE_IN_OUT );
+const TimePeriod ROTATION_ANIMATION_TIME_PERIOD( 0.0f, 0.5f );
+
+const Vector3 ANIMATION_SCALE( 2.0f, 2.0f, 1.0f );
+const AlphaFunction::BuiltinFunction SCALE_ANIMATION_ALPHA_FUNCTION( AlphaFunction::SIN );
+const TimePeriod SCALE_ANIMATION_TIME_PERIOD( 0.15f, 0.85f );
+} // unnamed namespace
+
+/**
+ * @brief Demonstrates how to animate a control in a layout-container using the anchor point as the pivot.
+ *
+ * Positions of the controls in the layout-container will be set using the top-left of the control.
+ */
+class PivotController : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in] application Reference to the application instance.
+   */
+  PivotController( Application& application )
+  : mApplication( application )
+  {
+    mApplication.InitSignal().Connect( this, &PivotController::Create );
+  }
+
+private:
+
+  /**
+   * @brief The Init signal is received once (only) during the Application lifetime.
+   */
+  void Create( Application& /* application */ )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    stage.KeyEventSignal().Connect( this, &PivotController::OnKeyEvent );
+
+    // Create a table view.
+    TableView tableView = TableView::New( TABLE_VIEW_ROWS, TABLE_VIEW_COLUMNS );
+    tableView.SetAnchorPoint( AnchorPoint::CENTER );
+    tableView.SetParentOrigin( ParentOrigin::CENTER );
+    tableView.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    tableView.SetSizeModeFactor( TABLE_VIEW_SIZE_MODE_FACTOR );
+    stage.Add( tableView );
+
+    // Create a tap detector - we are going to rotate an actor round our anchor-point (pivot) when one of our controls is tapped.
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.DetectedSignal().Connect( this, &PivotController::OnTap );
+
+    Vector3 anchorPoint( AnchorPoint::CENTER ); // This will be changed depending on the row and column.
+
+    // Add controls to the table-view - each control will have a random color.
+    for( int row = 0; row < TABLE_VIEW_ROWS; ++row )
+    {
+      anchorPoint.y = ( row % TABLE_VIEW_ROWS ) * ( 1.0f / ( TABLE_VIEW_ROWS - 1 ) ); // Calculate this row's y anchor-point.
+
+      for( int column = 0; column < TABLE_VIEW_COLUMNS; ++column )
+      {
+        anchorPoint.x = ( column % TABLE_VIEW_COLUMNS ) * ( 1.0f / ( TABLE_VIEW_COLUMNS - 1 ) ); // Calculate this column's x anchor-point.
+
+        // Create a control with a randomly chosen background color.
+        Control control = Control::New();
+        control.SetBackgroundColor( Vector4( Random::Range( 0.0f, 1.0f ), Random::Range( 0.0f, 1.0f ), Random::Range( 0.0f, 1.0f ), 1.0f ) );
+        control.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        control.SetProperty( DevelActor::Property::POSITION_USES_ANCHOR_POINT, false ); // Ensures the position always uses top-left for its calculations.
+        control.SetAnchorPoint( anchorPoint ); // This anchor-point is used for the rotation and the scale.
+
+        // Add to the table-view
+        tableView.AddChild( control, TableView::CellPosition( row, column ) );
+
+        // Attach each control to the tap-detector so we can start the animation around our anchor point.
+        mTapDetector.Attach( control );
+      }
+    }
+  }
+
+  /**
+   * @brief Called when a control is tapped.
+   *
+   * Here we will start an animation around our pivot.
+   */
+  void OnTap( Actor actor, const TapGesture& /* tap */ )
+  {
+    // Raise the actor to the top.
+    actor.RaiseToTop();
+
+    // Create the animation to rotate and scale our actor.
+    Animation animation = Animation::New( 1.0f );
+    animation.AnimateBy( Property( actor, Actor::Property::ORIENTATION ), ANIMATION_ROTATION, ROTATION_ANIMATION_ALPHA_FUNCTION, ROTATION_ANIMATION_TIME_PERIOD );
+    animation.AnimateTo( Property( actor, Actor::Property::SCALE ), ANIMATION_SCALE, SCALE_ANIMATION_ALPHA_FUNCTION, SCALE_ANIMATION_TIME_PERIOD );
+
+    // Play the animation.
+    animation.Play();
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication; ///< Reference to the Application instance.
+  TapGestureDetector mTapDetector; ///< Used for animating the tapped control.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  PivotController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/point-mesh/point-mesh-example.cpp b/examples/point-mesh/point-mesh-example.cpp
new file mode 100644 (file)
index 0000000..0313f86
--- /dev/null
@@ -0,0 +1,236 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+#include "shared/utility.h"
+
+using namespace Dali;
+
+namespace
+{
+const char* MATERIAL_SAMPLE( DEMO_IMAGE_DIR "gallery-small-48.jpg" );
+const char* MATERIAL_SAMPLE2( DEMO_IMAGE_DIR "gallery-medium-19.jpg" );
+
+#define MAKE_SHADER(A)#A
+
+const char* VERTEX_SHADER = MAKE_SHADER(
+attribute mediump vec2    aPosition;
+attribute highp   float   aHue;
+varying   mediump vec2    vTexCoord;
+uniform   mediump mat4    uMvpMatrix;
+uniform   mediump vec3    uSize;
+uniform   mediump float   uPointSize;
+uniform   lowp    vec4    uFadeColor;
+varying   mediump vec3    vVertexColor;
+varying   mediump float   vHue;
+
+vec3 hsv2rgb(vec3 c)
+{
+  vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
+  vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
+  return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
+}
+
+void main()
+{
+  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  vertexPosition.xyz *= (uSize-uPointSize);
+  vertexPosition = uMvpMatrix * vertexPosition;
+  vVertexColor = hsv2rgb( vec3( aHue, 0.7, 1.0 ) );
+  vHue = aHue;
+  gl_PointSize = uPointSize;
+  gl_Position = vertexPosition;
+}
+);
+
+const char* FRAGMENT_SHADER = MAKE_SHADER(
+varying mediump vec3  vVertexColor;
+varying mediump float vHue;
+uniform lowp  vec4    uColor;
+uniform sampler2D     sTexture1;
+uniform sampler2D     sTexture2;
+uniform lowp vec4     uFadeColor;
+
+void main()
+{
+  mediump vec4 texCol1 = texture2D(sTexture1, gl_PointCoord);
+  mediump vec4 texCol2 = texture2D(sTexture2, gl_PointCoord);
+  gl_FragColor = vec4(vVertexColor, 1.0) * ((texCol1*vHue) + (texCol2*(1.0-vHue)));
+}
+);
+
+Geometry CreateGeometry()
+{
+  // Create vertices
+  struct Vertex { Vector2 position; float hue; };
+
+  const unsigned int numSides = 20;
+  Vertex polyhedraVertexData[numSides];
+  float angle=0;
+  float sectorAngle = 2.0f * Math::PI / (float) numSides;
+
+  for(unsigned int i=0; i<numSides; ++i)
+  {
+    polyhedraVertexData[i].position.x = sinf(angle)*0.5f;
+    polyhedraVertexData[i].position.y = cosf(angle)*0.5f;
+    polyhedraVertexData[i].hue = angle / ( 2.0f * Math::PI);
+    angle += sectorAngle;
+  }
+
+  Property::Map polyhedraVertexFormat;
+  polyhedraVertexFormat["aPosition"] = Property::VECTOR2;
+  polyhedraVertexFormat["aHue"] = Property::FLOAT;
+  PropertyBuffer polyhedraVertices = PropertyBuffer::New( polyhedraVertexFormat );
+  polyhedraVertices.SetData( polyhedraVertexData, numSides );
+
+  // Create the geometry object
+  Geometry polyhedraGeometry = Geometry::New();
+  polyhedraGeometry.AddVertexBuffer( polyhedraVertices );
+  polyhedraGeometry.SetType( Geometry::POINTS );
+
+  return polyhedraGeometry;
+}
+
+} // anonymous namespace
+
+// This example shows how to use a simple mesh
+//
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * The example controller constructor.
+   * @param[in] application The application instance
+   */
+  ExampleController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ExampleController::Create );
+  }
+
+  /**
+   * The example controller destructor
+   */
+  ~ExampleController()
+  {
+    // Nothing to do here;
+  }
+
+  /**
+   * Invoked upon creation of application
+   * @param[in] application The application instance
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    mStageSize = stage.GetSize();
+
+    // The Init signal is received once (only) during the Application lifetime
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    Texture texture0 = DemoHelper::LoadTexture( MATERIAL_SAMPLE );
+    Texture texture1 = DemoHelper::LoadTexture( MATERIAL_SAMPLE2 );
+
+    Shader shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+
+    TextureSet textureSet = TextureSet::New();
+    textureSet.SetTexture( 0u, texture0 );
+    textureSet.SetTexture( 1u, texture1 );
+
+    Geometry geometry = CreateGeometry();
+
+    mRenderer = Renderer::New( geometry, shader );
+    mRenderer.SetTextures( textureSet );
+
+    mMeshActor = Actor::New();
+    mMeshActor.AddRenderer( mRenderer );
+    mMeshActor.SetSize(400, 400);
+
+    mMeshActor.RegisterProperty( "uFadeColor", Color::GREEN );
+
+    mRenderer.RegisterProperty( "uFadeColor", Color::MAGENTA );
+    mRenderer.RegisterProperty( "uPointSize", 80.0f );
+    mRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, 0 );
+
+    mMeshActor.SetParentOrigin( ParentOrigin::CENTER );
+    mMeshActor.SetAnchorPoint( AnchorPoint::CENTER );
+    stage.Add( mMeshActor );
+
+    Animation  animation = Animation::New(15);
+    KeyFrames keyFrames = KeyFrames::New();
+    keyFrames.Add(0.0f, Vector4::ZERO);
+    keyFrames.Add(1.0f, Vector4( 1.0f, 0.0f, 1.0f, 1.0f ));
+
+    animation.AnimateBy( Property(mMeshActor, Actor::Property::ORIENTATION), Quaternion(Degree(360), Vector3::ZAXIS) );
+
+    animation.SetLooping(true);
+    animation.Play();
+
+    stage.SetBackgroundColor(Vector4(0.0f, 0.2f, 0.2f, 1.0f));
+  }
+
+  /**
+   * Invoked whenever the quit button is clicked
+   * @param[in] button the quit button
+   */
+  bool OnQuitButtonClicked( Toolkit::Button button )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;                             ///< Application instance
+  Vector3 mStageSize;                                     ///< The size of the stage
+
+  Renderer mRenderer;
+  Actor    mMeshActor;
+  Renderer mRenderer2;
+  Actor    mMeshActor2;
+  Timer    mChangeImageTimer;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ExampleController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/popup/popup-example.cpp b/examples/popup/popup-example.cpp
new file mode 100644 (file)
index 0000000..800317d
--- /dev/null
@@ -0,0 +1,740 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+
+using namespace Dali;
+
+using Dali::Toolkit::TextLabel;
+
+struct ButtonItem
+{
+  const char* name;
+  const char* text;
+};
+
+namespace
+{
+
+const char* const BACKGROUND_IMAGE = DEMO_IMAGE_DIR "background-gradient.jpg";
+const char* const TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png";
+
+const char* const TOOLBAR_TITLE = "Popup";
+
+const char* CONTEXT_DISABLED_ICON_IMAGE = DEMO_IMAGE_DIR "icon-scroll-view-carousel.png";
+const char* CONTEXT_ENABLED_ICON_IMAGE = DEMO_IMAGE_DIR "icon-scroll-view-spiral.png";
+const char* ANIMATION_FADE_ICON_IMAGE = DEMO_IMAGE_DIR "icon-effects-off.png";
+const char* ANIMATION_ZOOM_ICON_IMAGE = DEMO_IMAGE_DIR "icon-effects-on.png";
+
+const char* const POPUP_BUTTON_TITLE_ID = "POPUP_BUTTON_TITLE";
+const char* const POPUP_BUTTON_BUTTONS_1_ID = "POPUP_BUTTON_BUTTONS_1";
+const char* const POPUP_BUTTON_BUTTONS_2_ID = "POPUP_BUTTON_BUTTONS_2";
+const char* const POPUP_BUTTON_TOAST_ID = "POPUP_BUTTON_TOAST";
+const char* const POPUP_BUTTON_TITLE_CONTENT_BUTTONS_ID = "POPUP_BUTTON_TITLE_CONTENT_BUTTONS";
+const char* const POPUP_BUTTON_CONTENT_TEXT_ID = "POPUP_BUTTON_CONTENT_TEXT";
+const char* const POPUP_BUTTON_CONTENT_IMAGE_ID = "POPUP_BUTTON_CONTENT_IMAGE";
+const char* const POPUP_BUTTON_TITLE_CONTENT_TEXT_ID = "POPUP_BUTTON_TITLE_CONTENT_TEXT";
+const char* const POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS_ID = "POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS";
+const char* const POPUP_BUTTON_FIXED_SIZE_ID = "POPUP_BUTTON_FIXED_SIZE_ID";
+const char* const POPUP_BUTTON_COMPLEX_ID = "POPUP_BUTTON_COMPLEX";
+const char* const POPUP_BUTTON_CUSTOM_STYLE = "POPUP_BUTTON_CUSTOM_STYLE";
+
+// Names to give Popup PushButton controls.
+const char* const POPUP_CONTROL_OK_NAME = "controlOk";
+const char* const POPUP_CONTROL_CANCEL_NAME = "controlCancel";
+
+const char* const CONTENT_TEXT = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.";
+const char* const IMAGE1 = DEMO_IMAGE_DIR "gallery-medium-5.jpg";
+const char* const IMAGE2 = DEMO_IMAGE_DIR "background-magnifier.jpg";
+
+// Control area image.
+const char*   DEFAULT_CONTROL_AREA_IMAGE_PATH = DEMO_IMAGE_DIR "popup_button_background.9.png"; ///< Control area image for the popup.
+
+const ButtonItem POPUP_BUTTON_ITEMS[] = {
+    { POPUP_BUTTON_COMPLEX_ID,                     "Complex" },
+    { POPUP_BUTTON_TOAST_ID,                       "Toast Popup" },
+    { POPUP_BUTTON_TITLE_ID,                       "Title" },
+    { POPUP_BUTTON_BUTTONS_1_ID,                   "1 Button" },
+    { POPUP_BUTTON_BUTTONS_2_ID,                   "2 Buttons" },
+    { POPUP_BUTTON_FIXED_SIZE_ID,                  "Fixed Size" },
+    { POPUP_BUTTON_TITLE_CONTENT_BUTTONS_ID,       "Title + Content + Buttons" },
+    { POPUP_BUTTON_CONTENT_TEXT_ID,                "Content Text" },
+    { POPUP_BUTTON_CONTENT_IMAGE_ID,               "Content Image" },
+    { POPUP_BUTTON_TITLE_CONTENT_TEXT_ID,          "Title + Content" },
+    { POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS_ID, "Title + Large Content + Buttons" },
+    { POPUP_BUTTON_CUSTOM_STYLE,                   "Custom Styled Popup" }
+};
+
+const int POPUP_BUTTON_ITEMS_COUNT = sizeof( POPUP_BUTTON_ITEMS ) / sizeof( POPUP_BUTTON_ITEMS[0] );
+
+const char * const CUSTOM_POPUP_STYLE_NAME = "CustomPopupStyle"; ///< Custom popup style name
+}  // anonymous namespace
+
+
+/**
+ * This example shows the usage of the Popup class.
+ */
+class PopupExample: public ConnectionTracker, public Toolkit::ItemFactory
+{
+public:
+
+  PopupExample( Application& application )
+    : mApplication( application ),
+      mContextual( false ),
+      mAnimationFade( true )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &PopupExample::Create );
+  }
+
+  ~PopupExample()
+  {
+    // Nothing to do here
+  }
+
+  void Create( Application& application )
+  {
+    // The Init signal is received once (only) during the Application lifetime
+    Stage stage = Stage::GetCurrent();
+
+    // Respond to key events if not handled
+    stage.KeyEventSignal().Connect( this, &PopupExample::OnKeyEvent );
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            std::string("") );
+
+    mTitleActor = DemoHelper::CreateToolBarLabel( "CUSTOM_TOOLBAR_TITLE" );
+    mTitleActor.SetProperty( Toolkit::TextLabel::Property::TEXT, TOOLBAR_TITLE );
+
+    // Add title to the tool bar.
+    const float padding( DemoHelper::DEFAULT_VIEW_STYLE.mToolBarPadding );
+    mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter, Toolkit::Alignment::Padding( padding, padding, padding, padding ) );
+
+    // Create animation button.
+    mAnimationButton = Toolkit::PushButton::New();
+    mAnimationButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, ANIMATION_FADE_ICON_IMAGE );
+    mAnimationButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, ANIMATION_ZOOM_ICON_IMAGE );
+    mAnimationButton.SetProperty( Toolkit::Button::Property::TOGGLABLE, true );
+    mAnimationButton.ClickedSignal().Connect( this, &PopupExample::OnAnimationClicked );
+    mToolBar.AddControl( mAnimationButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    // Create context button.
+    mContextButton = Toolkit::PushButton::New();
+    mContextButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CONTEXT_DISABLED_ICON_IMAGE );
+    mContextButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CONTEXT_ENABLED_ICON_IMAGE );
+    mContextButton.SetProperty( Toolkit::Button::Property::TOGGLABLE, true );
+    mContextButton.ClickedSignal().Connect( this, &PopupExample::OnContextClicked );
+    mToolBar.AddControl( mContextButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    // Add title to the tool bar.
+    mItemView = Toolkit::ItemView::New( *this );
+    mItemView.SetParentOrigin( ParentOrigin::CENTER );
+    mItemView.SetAnchorPoint( AnchorPoint::CENTER );
+    mItemView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    // Use a grid layout for tests
+    Vector2 stageSize = stage.GetSize();
+    Toolkit::ItemLayoutPtr gridLayout = Toolkit::DefaultItemLayout::New( Toolkit::DefaultItemLayout::LIST );
+    Vector3 itemSize;
+    gridLayout->GetItemSize( 0, Vector3( stageSize ), itemSize );
+    itemSize.height = stageSize.y / 10;
+    gridLayout->SetItemSize( itemSize );
+    mItemView.AddLayout( *gridLayout );
+
+    mItemView.ActivateLayout( 0, Vector3(stageSize.x, stageSize.y, stageSize.x), 0.0f );
+
+    mContentLayer.Add( mItemView );
+  }
+
+  bool OnContextClicked( Toolkit::Button button )
+  {
+    mContextual = button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>();
+    return true;
+  }
+
+  bool OnAnimationClicked( Toolkit::Button button )
+  {
+    mAnimationFade = ! ( button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>() );
+    return true;
+  }
+
+  /**
+   * This function is designed as a shortcut to convert any resize policies set for a popup to
+   * ones that will work for contextual mode (for demo purposes).
+   * Note that in a real-use case example the policies would be set to something appropriate
+   * manually, but in the case of this demo, the popup is parented from the popup-opening buttons
+   * and (incorrectly) have their policies as "SIZE_RELATIVE_TO_PARENT". This would create a tiny
+   * popup that would not be able to contain it's contents, so to illustrate contextual behaviour
+   * this function converts the old policies and size to new ones that would give the popup the
+   * same visual appearance.
+   * @param[in] popup The popup whose policies should be modified.
+   */
+  void SetupContextualResizePolicy( Toolkit::Popup& popup )
+  {
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+    // Some defaults when creating a new fixed size.
+    // This is NOT a Vector2 so we can modify each dimension in a for-loop.
+    float newSize[ Dimension::DIMENSION_COUNT ] = { stageSize.x * 0.75f, stageSize.y * 0.75f };
+    bool modifySize = false;
+
+    // Loop through each of two dimensions to process them.
+    for( unsigned int dimension = 0; dimension < 2; ++dimension )
+    {
+      float stageDimensionSize, sizeModeFactor;
+      Dimension::Type policyDimension = dimension == 0 ? Dimension::WIDTH : Dimension::HEIGHT;
+
+      // Setup information related to the current dimension we are processing.
+      if( policyDimension == Dimension::WIDTH )
+      {
+        stageDimensionSize = stageSize.x;
+        sizeModeFactor = popup.GetSizeModeFactor().x;
+      }
+      else
+      {
+        stageDimensionSize = stageSize.y;
+        sizeModeFactor = popup.GetSizeModeFactor().y;
+      }
+
+      bool modifyPolicy = false;
+      ResizePolicy::Type policy = popup.GetResizePolicy( policyDimension );
+      ResizePolicy::Type newPolicy( policy );
+
+      // Switch on each policy type to determine the new behaviour.
+      switch( policy )
+      {
+        case ResizePolicy::FIXED:
+        case ResizePolicy::USE_ASSIGNED_SIZE:
+        {
+          break;
+        }
+
+        case ResizePolicy::USE_NATURAL_SIZE:
+        case ResizePolicy::FIT_TO_CHILDREN:
+        case ResizePolicy::DIMENSION_DEPENDENCY:
+        {
+          // Set size to 0 so the policy determines size.
+          // If a non-zero size is set, policy is converted to fixed.
+          newSize[ dimension ] = 0.0f;
+          modifySize = true;
+          break;
+        }
+
+        // The following cases emulate the three size-mode related resize policies.
+        case ResizePolicy::FILL_TO_PARENT:
+        {
+          newPolicy = ResizePolicy::FIXED;
+          newSize[ dimension ] = stageDimensionSize;
+          modifyPolicy = true;
+          break;
+        }
+
+        case ResizePolicy::SIZE_RELATIVE_TO_PARENT:
+        {
+          newPolicy = ResizePolicy::FIXED;
+          newSize[ dimension ] = stageDimensionSize * sizeModeFactor;
+          modifyPolicy = true;
+          break;
+        }
+
+        case ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT:
+        {
+          newPolicy = ResizePolicy::FIXED;
+          newSize[ dimension ] = stageDimensionSize + sizeModeFactor;
+          modifyPolicy = true;
+          break;
+        }
+      }
+
+      if( modifyPolicy )
+      {
+        // Set the new policy for this dimension, if it has been modified.
+        popup.SetResizePolicy( newPolicy, policyDimension );
+        modifySize = true;
+      }
+    }
+
+    if( modifySize )
+    {
+      // The size is set once at the end.
+      popup.SetSize( Vector2( newSize[ 0 ], newSize[ 1 ] ) );
+    }
+  }
+
+  void SetupPopup( Toolkit::Popup popup, Actor parent )
+  {
+    if( mAnimationFade )
+    {
+      popup.SetProperty( Toolkit::Popup::Property::ANIMATION_MODE, "FADE" );
+    }
+    else
+    {
+      popup.SetProperty( Toolkit::Popup::Property::ANIMATION_MODE, "ZOOM" );
+    }
+
+    if( mContextual )
+    {
+      popup.SetProperty( Toolkit::Popup::Property::CONTEXTUAL_MODE, "BELOW" );
+
+      // Modify the preset demo resize policies (and size) to contextual ones.
+      SetupContextualResizePolicy( popup );
+
+      parent.Add( popup );
+    }
+    else
+    {
+      Stage::GetCurrent().Add( popup );
+    }
+
+    mPopup.SetDisplayState( Toolkit::Popup::SHOWN );
+  }
+
+  void HidePopup()
+  {
+    if( mPopup )
+    {
+      mPopup.SetDisplayState( Toolkit::Popup::HIDDEN );
+    }
+  }
+
+  void PopupHidden()
+  {
+    if( mPopup )
+    {
+      mPopup.Unparent();
+      mPopup.Reset();
+    }
+  }
+
+  Toolkit::Popup CreatePopup()
+  {
+    Stage stage = Stage::GetCurrent();
+    const float POPUP_WIDTH_DP = stage.GetSize().width * 0.75f;
+
+    Toolkit::Popup popup = Toolkit::Popup::New();
+    popup.SetName( "popup" );
+    popup.SetParentOrigin( ParentOrigin::CENTER );
+    popup.SetAnchorPoint( AnchorPoint::CENTER );
+    popup.SetSize( POPUP_WIDTH_DP, 0.0f );
+    popup.SetProperty( Toolkit::Popup::Property::TAIL_VISIBILITY, false );
+
+    popup.OutsideTouchedSignal().Connect( this, &PopupExample::HidePopup );
+    popup.HiddenSignal().Connect( this, &PopupExample::PopupHidden );
+
+    return popup;
+  }
+
+  Toolkit::Popup CreateConfirmationPopup( int numberOfButtons )
+  {
+    Toolkit::Popup confirmationPopup = Toolkit::Popup::New();
+    confirmationPopup.SetName( "MAIN-POPUP-SELF" );
+
+    if( numberOfButtons > 0 )
+    {
+      // Start with a control area image.
+      Toolkit::ImageView footer = Toolkit::ImageView::New( DEFAULT_CONTROL_AREA_IMAGE_PATH );
+      footer.SetName( "controlAreaImage" );
+      // Set up the container's layout.
+      footer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      footer.SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT );
+      footer.SetSize( 0.0f, 130.0f );
+      footer.SetAnchorPoint( AnchorPoint::CENTER );
+      footer.SetParentOrigin( ParentOrigin::CENTER );
+
+      Actor okButton = CreateOKButton();
+      okButton.SetParentOrigin( ParentOrigin::CENTER );
+      okButton.SetAnchorPoint( AnchorPoint::CENTER );
+      okButton.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT, Dimension::ALL_DIMENSIONS );
+      okButton.SetSizeModeFactor( Vector3( -20.0f, -20.0f, 0.0 ) );
+
+      if( numberOfButtons > 1 )
+      {
+        Toolkit::TableView controlLayout = Toolkit::TableView::New( 1, 2 );
+        controlLayout.SetParentOrigin( ParentOrigin::CENTER );
+        controlLayout.SetAnchorPoint( AnchorPoint::CENTER );
+        controlLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+        Actor cancelButton = CreateCancelButton();
+        cancelButton.SetParentOrigin( ParentOrigin::CENTER );
+        cancelButton.SetAnchorPoint( AnchorPoint::CENTER );
+        cancelButton.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT, Dimension::ALL_DIMENSIONS );
+        cancelButton.SetSizeModeFactor( Vector3( -20.0f, -20.0f, 0.0 ) );
+
+        controlLayout.SetCellPadding( Size( 10.0f, 10.0f ) );
+
+        controlLayout.SetRelativeWidth( 0, 0.5f );
+        controlLayout.SetRelativeWidth( 1, 0.5f );
+
+        controlLayout.SetCellAlignment( Toolkit::TableView::CellPosition( 0, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+        controlLayout.SetCellAlignment( Toolkit::TableView::CellPosition( 0, 1 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+        controlLayout.AddChild( okButton, Toolkit::TableView::CellPosition( 0, 0 ) );
+        controlLayout.AddChild( cancelButton, Toolkit::TableView::CellPosition( 0, 1 ) );
+
+        footer.Add( controlLayout );
+      }
+      else
+      {
+        footer.Add( okButton );
+      }
+
+      confirmationPopup.SetFooter( footer );
+    }
+
+    confirmationPopup.OutsideTouchedSignal().Connect( this, &PopupExample::HidePopup );
+
+    return confirmationPopup;
+  }
+
+  Actor CreateTitle( std::string title )
+  {
+    Toolkit::TextLabel titleActor = Toolkit::TextLabel::New( title );
+    titleActor.SetName( "titleActor" );
+    titleActor.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    titleActor.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+    titleActor.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+
+    return titleActor;
+  }
+
+  Toolkit::PushButton CreateOKButton()
+  {
+    Toolkit::PushButton okayButton = Toolkit::PushButton::New();
+    okayButton.SetName( POPUP_CONTROL_OK_NAME );
+    okayButton.SetProperty( Toolkit::Button::Property::LABEL, "OK!" );
+
+    okayButton.ClickedSignal().Connect( this, &PopupExample::OnPopupButtonClicked );
+
+    return okayButton;
+  }
+
+  Toolkit::PushButton CreateCancelButton()
+  {
+    Toolkit::PushButton cancelButton = Toolkit::PushButton::New();
+    cancelButton.SetName( POPUP_CONTROL_CANCEL_NAME );
+    cancelButton.SetProperty( Toolkit::Button::Property::LABEL, "Cancel" );
+
+    cancelButton.ClickedSignal().Connect( this, &PopupExample::OnPopupButtonClicked );
+
+    return cancelButton;
+  }
+
+  bool OnPopupButtonClicked( Toolkit::Button button )
+  {
+    // Handle Popup pushbuttons being clicked.
+    HidePopup();
+    return true;
+  }
+
+  bool OnButtonClicked( Toolkit::Button button )
+  {
+    // Handle menu items that create popups.
+    if( button.GetName() == POPUP_BUTTON_TITLE_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetTitle( CreateTitle( "Popup!" ) );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_BUTTONS_1_ID )
+    {
+      mPopup = CreateConfirmationPopup( 1 );
+      mPopup.SetTitle( CreateTitle( "Title" ) );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_BUTTONS_2_ID )
+    {
+      mPopup = CreateConfirmationPopup( 2 );
+      mPopup.SetTitle( CreateTitle( "Title" ) );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_TOAST_ID )
+    {
+      // Create a toast popup via the type registry (as it is a named-type).
+      TypeInfo typeInfo = TypeRegistry::Get().GetTypeInfo( "PopupToast" );
+      if( typeInfo )
+      {
+        BaseHandle baseHandle = typeInfo.CreateInstance();
+        if( baseHandle )
+        {
+          mPopup = Toolkit::Popup::DownCast( baseHandle );
+          mPopup.SetTitle( CreateTitle( "This is a Toast Popup.\nIt will auto-hide itself" ) );
+
+          Stage::GetCurrent().Add( mPopup );
+          mPopup.SetDisplayState( Toolkit::Popup::SHOWN );
+        }
+      }
+    }
+    else if( button.GetName() == POPUP_BUTTON_TITLE_CONTENT_BUTTONS_ID )
+    {
+      mPopup = CreateConfirmationPopup( 2 );
+      mPopup.SetTitle( CreateTitle( "Erase image" ) );
+
+      Toolkit::TextLabel text = Toolkit::TextLabel::New( "This will erase the image permanently. Are you sure?" );
+      text.SetName( "POPUP_CONTENT_TEXT" );
+      text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+      text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      text.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+      text.SetProperty( TextLabel::Property::MULTI_LINE, true );
+      text.SetPadding( Padding( 10.0f, 10.0f, 20.0f, 0.0f ) );
+      mPopup.SetContent( text );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_CONTENT_TEXT_ID )
+    {
+      mPopup = CreatePopup();
+
+      TextLabel text = TextLabel::New( CONTENT_TEXT );
+      text.SetName( "POPUP_CONTENT_TEXT" );
+      text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+      text.SetProperty( TextLabel::Property::MULTI_LINE, true );
+      text.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+      text.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+      text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      text.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+      text.SetPadding( Padding( 20.0f, 20.0f, 20.0f, 20.0f ) );
+
+      mPopup.Add( text );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_CONTENT_IMAGE_ID )
+    {
+      mPopup = CreatePopup();
+      Toolkit::ImageView image = Toolkit::ImageView::New( IMAGE2 );
+      image.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      image.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+      image.SetPadding( Padding( 20.0f, 20.0f, 20.0f, 20.0f ) );
+
+      mPopup.Add( image );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_TITLE_CONTENT_TEXT_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetTitle( CreateTitle( "Popup!" ) );
+
+      Toolkit::TextLabel text = Toolkit::TextLabel::New( CONTENT_TEXT );
+      text.SetName( "POPUP_CONTENT_TEXT" );
+      text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+      text.SetProperty( TextLabel::Property::MULTI_LINE, true );
+      text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      text.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+      text.SetPadding( Padding( 20.0f, 20.0f, 20.0f, 20.0f ) );
+
+      mPopup.Add( text );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_FIXED_SIZE_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetTitle( CreateTitle( "Popup!" ) );
+
+      Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fixed size popup" );
+      text.SetName( "POPUP_CONTENT_TEXT" );
+      text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+      text.SetProperty( TextLabel::Property::MULTI_LINE, true );
+      text.SetPadding( Padding( 20.0f, 20.0f, 20.0f, 20.0f ) );
+
+      mPopup.Add( text );
+
+      // Fix the popup's size.
+      mPopup.SetSize( 240.0f, 400.0f );
+      mPopup.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_TITLE_LARGE_CONTENT_BUTTONS_ID )
+    {
+      mPopup = CreateConfirmationPopup( 2 );
+      mPopup.SetTitle( CreateTitle( "Popup!" ) );
+
+      Toolkit::TextLabel text = Toolkit::TextLabel::New( CONTENT_TEXT );
+      text.SetName( "POPUP_CONTENT_TEXT" );
+      text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+      text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      text.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+      text.SetProperty( TextLabel::Property::MULTI_LINE, true );
+      text.SetPadding( Padding( 10.0f, 10.0f, 20.0f, 0.0f ) );
+
+      mPopup.Add( text );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_COMPLEX_ID )
+    {
+      mPopup = CreateConfirmationPopup( 2 );
+      mPopup.SetTitle( CreateTitle( "Warning" ) );
+
+      // Content
+      Toolkit::TableView content = Toolkit::TableView::New( 2, 2 );
+      content.SetName( "COMPLEX_TABLEVIEW" );
+      content.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      content.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      content.SetFitHeight( 0 );
+      content.SetFitHeight( 1 );
+      content.SetPadding( Padding( 20.0f, 20.0f, 20.0f, 0.0f ) );
+
+      // Text
+      {
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Do you really want to quit?" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        text.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+
+        content.AddChild( text, Toolkit::TableView::CellPosition( 0, 0 ) );
+      }
+
+      // Image
+      {
+        Toolkit::ImageView image = Toolkit::ImageView::New( IMAGE1 );
+        image.SetName( "COMPLEX_IMAGE" );
+        image.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        image.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+        image.SetPadding( Padding( 20.0f, 0.0f, 0.0f, 0.0f ) );
+        content.AddChild( image, Toolkit::TableView::CellPosition( 0, 1 ) );
+      }
+
+      // Text 2
+      {
+        Toolkit::TableView root = Toolkit::TableView::New( 1, 2 );
+        root.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        root.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+        root.SetFitHeight( 0 );
+        root.SetFitWidth( 0 );
+        root.SetPadding( Padding( 0.0f, 0.0f, 0.0f, 20.0f ) );
+
+        Toolkit::CheckBoxButton checkBox = Toolkit::CheckBoxButton::New();
+        checkBox.SetSize( 48, 48 );
+        root.AddChild( checkBox, Toolkit::TableView::CellPosition( 0, 0 ) );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Don't show again" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        Actor textActor = text;
+        textActor.SetPadding( Padding( 20.0f, 0.0f, 0.0f, 10.0f ) );
+
+        root.AddChild( text, Toolkit::TableView::CellPosition( 0, 1 ) );
+
+        content.AddChild( root, Toolkit::TableView::CellPosition( 1, 0 ) );
+      }
+
+      mPopup.SetContent( content );
+
+      SetupPopup( mPopup, button );
+    }
+    else if( button.GetName() == POPUP_BUTTON_CUSTOM_STYLE )
+    {
+      mPopup = CreateConfirmationPopup( 2 );
+
+      Toolkit::TextLabel titleActor = Toolkit::TextLabel::New( "Styled Popup" );
+      titleActor.SetName( "titleActor" );
+      titleActor.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::RED );
+      titleActor.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+      titleActor.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+      mPopup.SetTitle( titleActor );
+
+      SetupPopup( mPopup, button );
+
+      mPopup.SetStyleName( CUSTOM_POPUP_STYLE_NAME );
+    }
+
+    return true;
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        // Exit application when click back or escape.
+        mApplication.Quit();
+      }
+    }
+  }
+
+public: // From ItemFactory
+
+  /**
+   * @brief Return the number of items to display in the item view
+   *
+   * @return Return the number of items to display
+   */
+  virtual unsigned int GetNumberOfItems()
+  {
+    return POPUP_BUTTON_ITEMS_COUNT;
+  }
+
+  /**
+   * @brief Create a new item to populate the item view with
+   *
+   * @param[in] itemId The index of the item to create
+   * @return Return the created actor for the given ID
+   */
+  virtual Actor NewItem(unsigned int itemId)
+  {
+    Toolkit::PushButton popupButton = Toolkit::PushButton::New();
+    popupButton.SetName( POPUP_BUTTON_ITEMS[ itemId ].name );
+    popupButton.SetProperty( Toolkit::Button::Property::LABEL, POPUP_BUTTON_ITEMS[ itemId ].text );
+    popupButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+
+    popupButton.ClickedSignal().Connect( this, &PopupExample::OnButtonClicked );
+
+    return popupButton;
+  }
+
+private:
+
+
+  Application&        mApplication;
+  Toolkit::Control    mView;                       ///< The View instance.
+  Toolkit::ToolBar    mToolBar;                    ///< The View's Toolbar.
+  Toolkit::PushButton mContextButton;              ///< For toggling contextual mode.
+  Toolkit::PushButton mAnimationButton;            ///< For toggling the fade animation.
+  Layer               mContentLayer;               ///< Content layer
+
+  Toolkit::TextLabel  mTitleActor;                 ///< Title text
+
+  bool                mContextual;                 ///< True if currently using the contextual popup mode.
+  bool                mAnimationFade;              ///< True if currently using the fade animation.
+
+  Toolkit::Popup      mPopup;                       ///< The current example popup.
+
+  Toolkit::ItemView   mItemView;                    ///< ItemView to hold test images
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  PopupExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/pre-render-callback/pre-render-callback-example.cpp b/examples/pre-render-callback/pre-render-callback-example.cpp
new file mode 100644 (file)
index 0000000..bf5173a
--- /dev/null
@@ -0,0 +1,262 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/integration-api/adaptor-framework/adaptor.h>
+#include <dali/devel-api/adaptor-framework/application-devel.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+
+using namespace Dali::Toolkit;
+
+namespace Dali
+{
+const char* SCENE_IMAGE_1( DEMO_IMAGE_DIR "gallery-small-10.jpg");
+const char* SCENE_IMAGE_2( DEMO_IMAGE_DIR "gallery-small-42.jpg");
+const char* SCENE_IMAGE_3( DEMO_IMAGE_DIR "gallery-small-48.jpg");
+const char* ROTATE_TEXT("-\\|/");
+const float TEXT_HEIGHT = 40.0f;
+
+void AddText( Control textContainer, std::string text, unsigned int yIndex )
+{
+  auto label = TextLabel::New(text);
+  label.SetParentOrigin( ParentOrigin::TOP_CENTER );
+  label.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  label.SetSize( 300,TEXT_HEIGHT );
+  label.SetY( yIndex*TEXT_HEIGHT );
+  textContainer.Add( label );
+}
+
+class PreRenderCallbackController : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in]  application  The application.
+   */
+  PreRenderCallbackController ( Application& application )
+  : mApplication( application ),
+    mStage(),
+    mTapDetector(),
+    mKeepPreRender(false),
+    mRotateTextCharacter(0),
+    mLastRTC(-1),
+    mImageActor1(),
+    mImageActor2(),
+    mImageActor3(),
+    mAngle1Index( Property::INVALID_INDEX ),
+    mAngle3Index( Property::INVALID_INDEX ),
+    mSceneActor(),
+    mSceneAnimation(),
+    mSpinner()
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &PreRenderCallbackController::Create );
+  }
+
+private:
+  struct RotationConstraint
+  {
+    RotationConstraint(float sign)
+    : mSign(sign)
+    {
+    }
+
+    void operator()( Quaternion& current, const PropertyInputContainer& inputs )
+    {
+      Radian angle( inputs[0]->GetFloat() );
+      current = Quaternion( angle * mSign, Vector3::YAXIS );
+    }
+
+    float mSign;
+  };
+
+  /**
+   * @brief Creates the scene.
+   */
+  void Create( Application& application )
+  {
+    mStage = Stage::GetCurrent();
+    mStage.SetBackgroundColor( Color::WHITE );
+    mStage.KeyEventSignal().Connect( this, &PreRenderCallbackController::OnKeyEvent );
+
+    // Hide the indicator bar.
+    mApplication.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Detect taps on the root layer.
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.Attach( mStage.GetRootLayer() );
+    mTapDetector.DetectedSignal().Connect( this, &PreRenderCallbackController::OnTap );
+
+    CreateAnimatingScene();
+
+    auto textContainer = Control::New();
+    textContainer.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    AddText(textContainer, "Click to add callback", 1 );
+    AddText(textContainer, "Press 1 to add callback", 2 );
+    AddText(textContainer, "Press 2 to clear callback", 3 );
+    AddText(textContainer, "Press 3 to toggle keep alive", 4 );
+
+
+    mSpinner = TextLabel::New("");
+    mSpinner.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mSpinner.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mSpinner.SetSize(100,100);
+
+    mStage.Add(mSpinner);
+    mStage.Add(textContainer);
+
+    DevelApplication::AddIdleWithReturnValue( application, MakeCallback( this, &PreRenderCallbackController::OnIdle ) );
+  }
+
+  void CreateAnimatingScene()
+  {
+    mSceneActor = Layer::New();
+    mSceneActor.SetBehavior( Layer::LAYER_3D );
+    mSceneActor.SetParentOrigin(ParentOrigin::CENTER);
+
+    // Create and add images to the scene actor:
+    mImageActor1 = ImageView::New( SCENE_IMAGE_1 );
+    mImageActor2 = ImageView::New( SCENE_IMAGE_2 );
+    mImageActor3 = ImageView::New( SCENE_IMAGE_3 );
+
+    mImageActor1.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mImageActor2.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mImageActor3.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+
+    mImageActor2.SetParentOrigin(ParentOrigin::CENTER);
+
+    mImageActor1.SetParentOrigin(ParentOrigin::CENTER_LEFT);
+    mImageActor1.SetAnchorPoint(AnchorPoint::CENTER_RIGHT);
+
+    mImageActor3.SetParentOrigin(ParentOrigin::CENTER_RIGHT);
+    mImageActor3.SetAnchorPoint(AnchorPoint::CENTER_LEFT);
+
+    mSceneActor.Add(mImageActor2);
+    mImageActor2.Add(mImageActor1);
+    mImageActor2.Add(mImageActor3);
+
+    Property::Index angleIndex = mImageActor2.RegisterProperty("angle", Property::Value( Dali::ANGLE_30 ) );
+    Source angleSrc( mImageActor2, angleIndex );
+
+    Constraint constraint = Constraint::New<Quaternion>( mImageActor1, Actor::Property::ORIENTATION, RotationConstraint(-1.0f) );
+    constraint.AddSource( angleSrc );
+    constraint.Apply();
+
+    constraint = Constraint::New<Quaternion>( mImageActor3, Actor::Property::ORIENTATION, RotationConstraint(+1.0f) );
+    constraint.AddSource( angleSrc );
+    constraint.Apply();
+
+    mSceneAnimation = Animation::New(2.5f);
+
+    // Want to animate angle from 30 => -30 and back again smoothly.
+    mSceneAnimation.AnimateTo( Property( mImageActor2, angleIndex ), Property::Value(-Dali::ANGLE_30), AlphaFunction::SIN );
+
+    mSceneAnimation.SetLooping(true);
+    mSceneAnimation.Play();
+
+    mSceneActor.SetSize(250.0f, 250.0f);
+    mSceneActor.SetPosition(0.0f, 0.0f, 130.0f);
+    Quaternion p( Degree( -6.0f ), Vector3::XAXIS );
+    Quaternion q( Degree( 20.0f ), Vector3::YAXIS );
+    mSceneActor.SetOrientation( p * q );
+
+    mStage.Add( mSceneActor );
+  }
+
+  void OnTap( Actor /* actor */, const TapGesture& /* tap */ )
+  {
+    Adaptor::Get().SetPreRenderCallback( MakeCallback( this, &PreRenderCallbackController::OnPreRender ) );
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else if( event.keyPressedName.compare("1") == 0)
+      {
+        Adaptor::Get().SetPreRenderCallback( MakeCallback( this, &PreRenderCallbackController::OnPreRender ) );
+      }
+      else if( event.keyPressedName.compare("2") == 0)
+      {
+        Adaptor::Get().SetPreRenderCallback( NULL );
+      }
+      else if( event.keyPressedName.compare("3") == 0)
+      {
+        mKeepPreRender = !mKeepPreRender;
+      }
+    }
+  }
+
+  bool OnPreRender()
+  {
+    // Called from Update/Render thread
+    printf("Pre-render callback\n");
+    ++mRotateTextCharacter;
+    return mKeepPreRender;
+  }
+
+  bool OnIdle()
+  {
+    // Called from Event thread on main loop
+    int rotation = mRotateTextCharacter;
+    if( rotation != mLastRTC )
+    {
+      mLastRTC = rotation;
+      mSpinner.SetProperty(TextLabel::Property::TEXT, std::string(1, ROTATE_TEXT[rotation%4]));
+    }
+    return true;
+  }
+
+
+private:
+  Application& mApplication;
+  Stage mStage;
+  TapGestureDetector  mTapDetector;          ///< Tap detector to enable the PreRenderCallback
+  bool mKeepPreRender;
+  int mRotateTextCharacter;
+  int mLastRTC;
+
+  // Scene objects:
+  ImageView                 mImageActor1;
+  ImageView                 mImageActor2;
+  ImageView                 mImageActor3;
+  Property::Index           mAngle1Index;
+  Property::Index           mAngle3Index;
+  Layer                     mSceneActor;
+  Animation                 mSceneAnimation;
+  TextLabel                 mSpinner;
+};
+
+} // namespace Dali
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Dali::Application application = Dali::Application::New( &argc, &argv );
+  Dali::PreRenderCallbackController controller( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/primitive-shapes/primitive-shapes-example.cpp b/examples/primitive-shapes/primitive-shapes-example.cpp
new file mode 100644 (file)
index 0000000..e39fcb6
--- /dev/null
@@ -0,0 +1,714 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+  //Button image urls
+  const char* BUTTON_IMAGE_URL[] =
+  {
+    DEMO_IMAGE_DIR "sphere-button.png",
+    DEMO_IMAGE_DIR "cone-button.png",
+    DEMO_IMAGE_DIR "conical-frustum-button.png",
+    DEMO_IMAGE_DIR "cylinder-button.png",
+    DEMO_IMAGE_DIR "cube-button.png",
+    DEMO_IMAGE_DIR "bevelled-cube-button.png",
+    DEMO_IMAGE_DIR "octahedron-button.png"
+  };
+
+  //Prefix of all shape titles.
+  const std::string SHAPE_TITLE_PREFIX = "Current Shape: ";
+
+  //Shape property defaults
+  const int DEFAULT_SLICES = 32;
+  const int DEFAULT_STACKS = 32;
+  const float DEFAULT_SCALE_HEIGHT = 16.0f;
+  const float DEFAULT_SCALE_BOTTOM_RADIUS = 8.0f;
+  const float DEFAULT_SCALE_TOP_RADIUS = 4.0f;
+  const float DEFAULT_SCALE_RADIUS = 8.0f;
+  const float DEFAULT_BEVEL_PERCENTAGE = 0.3f;
+  const float DEFAULT_BEVEL_SMOOTHNESS = 0.0f;
+
+  //Shape property limits
+  const int SLICES_LOWER_BOUND = 3;
+  const int SLICES_UPPER_BOUND = 16;
+  const int STACKS_LOWER_BOUND = 2;
+  const int STACKS_UPPER_BOUND = 16;
+
+  //Used to the control rate of rotation when panning an object.
+  const float X_ROTATION_DISPLACEMENT_FACTOR = 60.0f;
+  const float Y_ROTATION_DISPLACEMENT_FACTOR = 60.0f;
+
+  const int NUM_MODELS = 7; //Total number of possible base shapes.
+  const int MAX_PROPERTIES = 3; //Maximum number of properties a shape may require. (For displaying sliders.)
+
+} //End namespace
+
+class PrimitiveShapesController : public ConnectionTracker
+{
+public:
+
+  PrimitiveShapesController( Application& application )
+  : mApplication( application ),
+    mColor( Vector4( 0.3f, 0.7f, 1.0f, 1.0f ) ),
+    mRotation( Vector2::ZERO )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &PrimitiveShapesController::Create );
+  }
+
+  ~PrimitiveShapesController()
+  {
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    //Set up layer to place UI on.
+    Layer layer = Layer::New();
+    layer.SetParentOrigin( ParentOrigin::CENTER );
+    layer.SetAnchorPoint( AnchorPoint::CENTER );
+    layer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    layer.SetBehavior( Layer::LAYER_UI ); //We use a 2D layer as this is closer to UI work than full 3D scene creation.
+    layer.SetDepthTestDisabled( false ); //Enable depth testing, as otherwise the 2D layer would not do so.
+    stage.Add( layer );
+
+    //Set up model selection buttons.
+    SetupButtons( layer );
+
+    //Set up model parameter sliders.
+    SetupSliders( layer );
+
+    //Set up 3D model.
+    SetupModel( layer );
+
+    //Allow for exiting of the application via key presses.
+    stage.KeyEventSignal().Connect( this, &PrimitiveShapesController::OnKeyEvent );
+  }
+
+  //Place buttons on the top of the screen, which allow for selection of the shape to be displayed.
+  //A title above indicates the currently selected shape.
+  //The buttons are laid out like so:
+  //
+  //      ^    +--------------------------------+
+  //      |    | Current Shape: ~~~~~           |
+  //      |    |                                |
+  //      |    | +----+ +----+ +----+ +----+    |
+  //      |    | |    | |    | |    | |    |    |
+  //  30% |    | +----+ +----+ +----+ +----+    |
+  //      |    |                                |
+  //      |    | +----+ +----+ +----+           |
+  //      |    | |    | |    | |    |           |
+  //      v    | +----+ +----+ +----+           |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           +--------------------------------+
+  //
+  void SetupButtons( Layer layer )
+  {
+    float containerPadding = 10.0f;
+    float elementPadding = 5.0f;
+
+    //Used to layout the title and the buttons below it.
+    Control topAlignment = Control::New();
+    topAlignment.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    topAlignment.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    topAlignment.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    topAlignment.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+    layer.Add( topAlignment );
+
+    //Add a title to indicate the currently selected shape.
+    mShapeTitle = TextLabel::New( "DEFAULT" );
+    mShapeTitle.SetParentOrigin( ParentOrigin::CENTER );
+    mShapeTitle.SetAnchorPoint( AnchorPoint::CENTER );
+    mShapeTitle.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mShapeTitle.SetPadding( Padding( elementPadding, elementPadding, elementPadding, elementPadding ) );
+    topAlignment.Add( mShapeTitle );
+
+    //Create a variable-length container that can wrap buttons around as more are added.
+    FlexContainer buttonContainer = FlexContainer::New();
+    buttonContainer.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    buttonContainer.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    buttonContainer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    buttonContainer.SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT );
+    buttonContainer.SetPadding( Padding( containerPadding, containerPadding, containerPadding, containerPadding ) );
+    buttonContainer.SetProperty( FlexContainer::Property::FLEX_DIRECTION, FlexContainer::ROW );
+    buttonContainer.SetProperty( FlexContainer::Property::FLEX_WRAP, FlexContainer::WRAP );
+    topAlignment.Add( buttonContainer );
+
+    //Create buttons and place them in the container.
+    for( int modelNumber = 0; modelNumber < NUM_MODELS; modelNumber++ )
+    {
+      PushButton button = Toolkit::PushButton::New();
+      button.SetParentOrigin( ParentOrigin::CENTER );
+      button.SetAnchorPoint( AnchorPoint::CENTER );
+      button.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+      button.SetPadding( Padding( elementPadding, elementPadding, elementPadding, elementPadding ) );
+      button.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, BUTTON_IMAGE_URL[modelNumber] );
+      button.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL,  BUTTON_IMAGE_URL[modelNumber] );
+      button.RegisterProperty( "modelNumber", Property::Value( modelNumber ) );
+      button.ClickedSignal().Connect( this, &PrimitiveShapesController::OnChangeShapeClicked );
+
+      buttonContainer.Add( button );
+    }
+  }
+
+  //Add sliders to the bottom of the screen, which allow for control of shape properties such as radius.
+  //Each slider is placed next to a label that states the property it affects.
+  //The sliders are laid out like so:
+  //
+  //           +--------------------------------+
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //      ^    | Label +----------O-----------+ |
+  //      |    |                                |
+  //      |    |                                |
+  //      |    | Label +--O-------------------+ |
+  //  30% |    |                                |
+  //      |    |                                |
+  //      |    | Label +----------------------O |
+  //      |    |                                |
+  //      v    +--------------------------------+
+  //
+  void SetupSliders( Layer layer )
+  {
+    //Create table to hold sliders and their corresponding labels.
+    mSliderTable = Toolkit::TableView::New( MAX_PROPERTIES, 2 );
+    mSliderTable.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mSliderTable.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    mSliderTable.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mSliderTable.SetSizeModeFactor( Vector3( 0.9, 0.3, 0.0 ) );  //90% of width, 30% of height.
+    mSliderTable.SetFitWidth( 0 );  //Label column should fit to natural size of label.
+    mSliderTable.SetRelativeWidth( 1, 1.0f );  //Slider column should fill remaining space.
+    mSliderTable.SetCellPadding( Vector2( 10.0f, 0.0f ) ); //Leave a gap between the slider and its label.
+    layer.Add( mSliderTable );
+
+    //Set up sliders, and place labels next to them.
+    for( int i = 0; i < MAX_PROPERTIES; i++ )
+    {
+      //Create slider
+      Slider slider = Slider::New();
+      slider.SetParentOrigin( ParentOrigin::CENTER );
+      slider.SetAnchorPoint( AnchorPoint::CENTER );
+      slider.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      slider.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      slider.ValueChangedSignal().Connect( this, &PrimitiveShapesController::OnSliderValueChanged );
+      mSliders.push_back( slider );
+
+      //Setup slider cell properties
+      mSliderTable.AddChild( slider, TableView::CellPosition( i, 1 ) );
+      mSliderTable.SetCellAlignment( TableView::CellPosition( i, 1 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+      //Create slider label
+      TextLabel sliderLabel = TextLabel::New();
+      sliderLabel.SetParentOrigin( ParentOrigin::CENTER );
+      sliderLabel.SetAnchorPoint( AnchorPoint::CENTER );
+      sliderLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+      mSliderLabels.push_back( sliderLabel );
+
+      //Setup slider-label cell properties
+      mSliderTable.AddChild( sliderLabel, TableView::CellPosition( i, 0 ) );
+      mSliderTable.SetCellAlignment( TableView::CellPosition( i, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+    }
+  }
+
+  //Adds a control to the centre of the stage to display the 3D shapes.
+  //The model is placed in the center of the screen, like so:
+  //
+  //           +--------------------------------+
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //       ^   |           ----------           |
+  //       |   |          /          \          |
+  //       |   |         /            \         |
+  //       |   |        |              |        |
+  //   30% |   |        |              |        |
+  //       |   |        |              |        |
+  //       |   |         \            /         |
+  //       |   |          \          /          |
+  //       v   |           ----------           |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           |                                |
+  //           +--------------------------------+
+  //
+  void SetupModel( Layer layer )
+  {
+    //Create a container to house the visual-holding actor, to provide a constant hitbox.
+    Actor container = Actor::New();
+    container.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    container.SetSizeModeFactor( Vector3( 0.9, 0.3, 0.0 ) );  //90% of width, 30% of height.
+    container.SetParentOrigin( ParentOrigin::CENTER );
+    container.SetAnchorPoint( AnchorPoint::CENTER );
+    layer.Add( container );
+
+    //Create control to display the 3D primitive.
+    mModel = Control::New();
+    mModel.SetParentOrigin( ParentOrigin::CENTER );
+    mModel.SetAnchorPoint( AnchorPoint::CENTER);
+    mModel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    container.Add( mModel );
+
+    //Load default shape.
+    LoadCube();
+
+    //Make model spin to demonstrate 3D.
+    mRotationAnimation = Animation::New(15.0f);
+    mRotationAnimation.AnimateBy( Property( mModel, Actor::Property::ORIENTATION ),
+                                 Quaternion( Degree( 0.0f ), Degree( 360.0f ), Degree( 0.0f ) ) );
+    mRotationAnimation.SetLooping(true);
+    mRotationAnimation.Play();
+
+    //Attach gesture detector to pan models when rotated.
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.Attach( container );
+    mPanGestureDetector.DetectedSignal().Connect( this, &PrimitiveShapesController::OnPan );
+  }
+
+  //Clears all sliders and resets the primitive visual property map.
+  void InitialiseSlidersAndModel()
+  {
+    //Sliders
+    for( unsigned i = 0; i < mSliders.size(); i++ )
+    {
+      mSliders.at( i ).SetProperty( Slider::Property::MARKS, Property::Value( 0 ) ); //Remove marks
+      mSliders.at( i ).SetVisible( false );
+      mSliderLabels.at( i ).SetProperty( TextLabel::Property::TEXT, Property::Value( "Default" ) );
+      mSliderLabels.at( i ).SetVisible( false );
+    }
+
+    //Visual map for model
+    mVisualMap.Clear();
+    mVisualMap[ Toolkit::Visual::Property::TYPE           ] = Visual::PRIMITIVE;
+    mVisualMap[ PrimitiveVisual::Property::MIX_COLOR ] = mColor;
+    mVisualMap[ Visual::Property::TRANSFORM ] =
+        Property::Map().Add( Visual::Transform::Property::ORIGIN, Align::CENTER )
+                       .Add( Visual::Transform::Property::ANCHOR_POINT, Align::CENTER );
+  }
+
+  //Sets the 3D model to a sphere and modifies the sliders appropriately.
+  void LoadSphere()
+  {
+    InitialiseSlidersAndModel();
+
+    //Set up specific visual properties.
+    mVisualMap[ PrimitiveVisual::Property::SHAPE  ] = PrimitiveVisual::Shape::SPHERE;
+    mVisualMap[ PrimitiveVisual::Property::SLICES ] = DEFAULT_SLICES;
+    mVisualMap[ PrimitiveVisual::Property::STACKS ] = DEFAULT_STACKS;
+
+    //Set up sliders.
+    SetupSlider( 0, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" );
+    SetupMarks( 0, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND );
+    mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
+
+    SetupSlider( 1, STACKS_LOWER_BOUND, STACKS_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::STACKS, "stacks" );
+    SetupMarks( 1, STACKS_LOWER_BOUND, STACKS_UPPER_BOUND );
+    mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
+
+    //Set model in control.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    //Update title.
+    mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Sphere" );
+  }
+
+  //Sets the 3D model to a cone and modifies the sliders appropriately.
+  void LoadCone()
+  {
+    InitialiseSlidersAndModel();
+
+    //Set up specific visual properties.
+    mVisualMap[ PrimitiveVisual::Property::SHAPE               ] = PrimitiveVisual::Shape::CONE;
+    mVisualMap[ PrimitiveVisual::Property::SCALE_HEIGHT        ] = DEFAULT_SCALE_HEIGHT;
+    mVisualMap[ PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS ] = DEFAULT_SCALE_BOTTOM_RADIUS;
+    mVisualMap[ PrimitiveVisual::Property::SLICES              ] = DEFAULT_SLICES;
+
+    //Set up sliders.
+    SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" );
+    mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
+
+    SetupSlider( 1, 1.0f, 32.0f, DEFAULT_SCALE_BOTTOM_RADIUS, PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS, "scaleBottomRadius" );
+    mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
+
+    SetupSlider( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" );
+    SetupMarks( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND );
+    mSliders.at( 2 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
+
+    //Set model in control.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    //Update title.
+    mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Cone" );
+  }
+
+  //Sets the 3D model to a conical frustum and modifies the sliders appropriately.
+  void LoadConicalFrustum()
+  {
+    InitialiseSlidersAndModel();
+
+    //Set up specific visual properties.
+    mVisualMap[ PrimitiveVisual::Property::SHAPE               ] = PrimitiveVisual::Shape::CONICAL_FRUSTUM;
+    mVisualMap[ PrimitiveVisual::Property::SCALE_TOP_RADIUS    ] = DEFAULT_SCALE_TOP_RADIUS;
+    mVisualMap[ PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS ] = DEFAULT_SCALE_BOTTOM_RADIUS;
+    mVisualMap[ PrimitiveVisual::Property::SCALE_HEIGHT        ] = DEFAULT_SCALE_HEIGHT;
+    mVisualMap[ PrimitiveVisual::Property::SLICES              ] = DEFAULT_SLICES;
+
+    //Set up used sliders.
+    SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" );
+    mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
+
+    SetupSlider( 1, 0.0f, 32.0f, DEFAULT_SCALE_BOTTOM_RADIUS, PrimitiveVisual::Property::SCALE_BOTTOM_RADIUS, "scaleBottomRadius" );
+    mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
+
+    SetupSlider( 2, 0.0f, 32.0f, DEFAULT_SCALE_TOP_RADIUS, PrimitiveVisual::Property::SCALE_TOP_RADIUS, "scaleTopRadius" );
+    mSliders.at( 2 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
+
+    //Set model in control.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    //Update title.
+    mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Conical Frustum" );
+  }
+
+  //Sets the 3D model to a cylinder and modifies the sliders appropriately.
+  void LoadCylinder()
+  {
+    InitialiseSlidersAndModel();
+
+    //Set up specific visual properties.
+    mVisualMap[ PrimitiveVisual::Property::SHAPE        ] = PrimitiveVisual::Shape::CYLINDER;
+    mVisualMap[ PrimitiveVisual::Property::SCALE_HEIGHT ] = DEFAULT_SCALE_HEIGHT;
+    mVisualMap[ PrimitiveVisual::Property::SCALE_RADIUS ] = DEFAULT_SCALE_RADIUS;
+    mVisualMap[ PrimitiveVisual::Property::SLICES       ] = DEFAULT_SLICES;
+
+    //Set up used sliders.
+    SetupSlider( 0, 1.0f, 32.0f, DEFAULT_SCALE_HEIGHT, PrimitiveVisual::Property::SCALE_HEIGHT, "scaleHeight" );
+    mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
+
+    SetupSlider( 1, 1.0f, 32.0f, DEFAULT_SCALE_RADIUS, PrimitiveVisual::Property::SCALE_RADIUS, "scaleRadius" );
+    mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 1 ) );
+
+    SetupSlider( 2, SLICES_LOWER_BOUND, SLICES_UPPER_BOUND, DEFAULT_STACKS, PrimitiveVisual::Property::SLICES, "slices" );
+    SetupMarks( 2 , SLICES_LOWER_BOUND, SLICES_UPPER_BOUND );
+    mSliders.at( 2 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 0 ) );
+
+    //Set model in control.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    //Update title.
+    mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Cylinder" );
+  }
+
+  //Sets the 3D model to a cube and modifies the sliders appropriately.
+  void LoadCube()
+  {
+    InitialiseSlidersAndModel();
+
+    //Set up specific visual properties.
+    mVisualMap[ PrimitiveVisual::Property::SHAPE ] = PrimitiveVisual::Shape::CUBE;
+
+    //Set model in control.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    //Update title.
+    mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Cube" );
+  }
+
+  //Sets the 3D model to a bevelled cube and modifies the sliders appropriately.
+  void LoadBevelledCube()
+  {
+    InitialiseSlidersAndModel();
+
+    //Set up specific visual properties.
+    mVisualMap[ PrimitiveVisual::Property::SHAPE            ] = PrimitiveVisual::Shape::BEVELLED_CUBE;
+    mVisualMap[ PrimitiveVisual::Property::BEVEL_PERCENTAGE ] = DEFAULT_BEVEL_PERCENTAGE;
+    mVisualMap[ PrimitiveVisual::Property::BEVEL_SMOOTHNESS ] = DEFAULT_BEVEL_SMOOTHNESS;
+
+    //Set up used sliders.
+    SetupSlider( 0, 0.0f, 1.0f, DEFAULT_BEVEL_PERCENTAGE, PrimitiveVisual::Property::BEVEL_PERCENTAGE, "bevelPercentage" );
+    mSliders.at( 0 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 2 ) );
+
+    SetupSlider( 1, 0.0f, 1.0f, DEFAULT_BEVEL_SMOOTHNESS, PrimitiveVisual::Property::BEVEL_SMOOTHNESS, "bevelSmoothness" );
+    mSliders.at( 1 ).SetProperty( Slider::Property::VALUE_PRECISION, Property::Value( 2 ) );
+
+    //Set model in control.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    //Update title.
+    mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Bevelled Cube" );
+  }
+
+  //Sets the 3D model to an octahedron and modifies the sliders appropriately.
+  void LoadOctahedron()
+  {
+    InitialiseSlidersAndModel();
+
+    //Set up specific visual properties.
+    mVisualMap[ PrimitiveVisual::Property::SHAPE ] = PrimitiveVisual::Shape::OCTAHEDRON;
+
+    //Set model in control.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    //Update title.
+    mShapeTitle.SetProperty( TextLabel::Property::TEXT, SHAPE_TITLE_PREFIX + "Octahedron" );
+  }
+
+  //Sets up the slider at the given index for the supplied property, and labels it appropriately.
+  // visualProperty is the property that will be set by this slider.
+  void SetupSlider( int sliderIndex, float lowerBound, float upperBound, float startPoint,
+                    Property::Index visualProperty, std::string visualPropertyLabel )
+  {
+    //Set up the slider itself.
+    mSliders.at( sliderIndex ).RegisterProperty( "visualProperty", Property::Value( visualProperty ), Property::READ_WRITE );
+    mSliders.at( sliderIndex ).SetProperty( Slider::Property::LOWER_BOUND, Property::Value( lowerBound ) );
+    mSliders.at( sliderIndex ).SetProperty( Slider::Property::UPPER_BOUND, Property::Value( upperBound ) );
+    mSliders.at( sliderIndex ).SetProperty( Slider::Property::VALUE, Property::Value( startPoint ) );
+    mSliders.at( sliderIndex ).SetVisible( true );
+
+    //Label the slider with the property.
+    //We reset the TextLabel to force a relayout of the table.
+    mSliderTable.RemoveChildAt( TableView::CellPosition(sliderIndex, 0) );
+
+    TextLabel sliderLabel = TextLabel::New( visualPropertyLabel );
+    sliderLabel.SetParentOrigin( ParentOrigin::CENTER );
+    sliderLabel.SetAnchorPoint( AnchorPoint::CENTER );
+    sliderLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+
+    mSliderTable.AddChild( sliderLabel, TableView::CellPosition( sliderIndex, 0 ) );
+    mSliderTable.SetCellAlignment( TableView::CellPosition( sliderIndex, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+    mSliderLabels.at( sliderIndex ).SetVisible( true );
+    mSliderLabels.at( sliderIndex) = sliderLabel;
+  }
+
+  //Setup snapping to integer values between the two given values.
+  void SetupMarks( int sliderIndex, int lower, int upper )
+  {
+    Property::Array marks;
+
+    for( int mark = lower; mark <= upper; mark++ )
+    {
+      marks.PushBack( Property::Value( mark ) );
+    }
+
+    mSliders.at( sliderIndex ).SetProperty( Slider::Property::MARKS, Property::Value( marks ) );
+    mSliders.at( sliderIndex ).SetProperty( Slider::Property::SNAP_TO_MARKS, Property::Value( true ) );
+  }
+
+  //When a shape button is tapped, switch to the corresponding shape.
+  bool OnChangeShapeClicked( Button button )
+  {
+    //Get the model number from the button.
+    int modelNumber;
+    button.GetProperty( button.GetPropertyIndex( "modelNumber" ) ).Get( modelNumber );
+
+    //Switch to the shape that corresponds to the model number.
+    switch( modelNumber )
+    {
+      case 0:
+      {
+        LoadSphere();
+        break;
+      }
+      case 1:
+      {
+        LoadCone();
+        break;
+      }
+      case 2:
+      {
+        LoadConicalFrustum();
+        break;
+      }
+      case 3:
+      {
+        LoadCylinder();
+        break;
+      }
+      case 4:
+      {
+        LoadCube();
+        break;
+      }
+      case 5:
+      {
+        LoadBevelledCube();
+        break;
+      }
+      case 6:
+      {
+        LoadOctahedron();
+        break;
+      }
+    }
+
+    return true;
+  }
+
+  //When the slider is adjusted, change the corresponding shape property accordingly.
+  bool OnSliderValueChanged( Slider slider, float value )
+  {
+    //Update property map to reflect the change to the specific visual property.
+    int visualProperty;
+    slider.GetProperty( slider.GetPropertyIndex( "visualProperty" ) ).Get( visualProperty );
+    mVisualMap[ visualProperty ] = value;
+
+    //Reload the model to display the change.
+    mModel.SetProperty( Control::Property::BACKGROUND, Property::Value( mVisualMap ) );
+
+    return true;
+  }
+
+  //Panning around the shape rotates it.
+  void OnPan( Actor actor, const PanGesture& gesture )
+  {
+    switch( gesture.state )
+    {
+      case Gesture::Started:
+      {
+        //Pause animation, as the gesture will be used to manually rotate the model
+        mRotationAnimation.Pause();
+
+        break;
+      }
+      case Gesture::Continuing:
+      {
+        //Rotate based off the gesture.
+        mRotation.x -= gesture.displacement.y / X_ROTATION_DISPLACEMENT_FACTOR; // Y displacement rotates around X axis
+        mRotation.y += gesture.displacement.x / Y_ROTATION_DISPLACEMENT_FACTOR; // X displacement rotates around Y axis
+        Quaternion rotation = Quaternion( Radian( mRotation.x ), Vector3::XAXIS) *
+                              Quaternion( Radian( mRotation.y ), Vector3::YAXIS);
+
+        mModel.SetOrientation( rotation );
+
+        break;
+      }
+      case Gesture::Finished:
+      {
+        //Return to automatic animation
+        mRotationAnimation.Play();
+
+        break;
+      }
+      case Gesture::Cancelled:
+      {
+        //Return to automatic animation
+        mRotationAnimation.Play();
+
+        break;
+      }
+      default:
+      {
+        break;
+      }
+    }
+  }
+
+  //If escape or the back button is pressed, quit the application (and return to the launcher)
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application& mApplication;
+
+  std::vector<Slider>       mSliders;               ///< Holds the sliders on screen that each shape accesses.
+  std::vector<TextLabel>    mSliderLabels;          ///< Holds the labels to each slider.
+  TableView                 mSliderTable;           ///< A table to layout the sliders next to their labels.
+
+  Property::Map             mVisualMap;             ///< Property map to create a primitive visual.
+  Control                   mModel;                 ///< Control to house the primitive visual.
+  TextLabel                 mShapeTitle;            ///< Indicates what the currently selected shape is.
+
+  PanGestureDetector        mPanGestureDetector;    ///< Detects pan gestures for rotation of the model.
+  Animation                 mRotationAnimation;     ///< Automatically rotates the model, unless it is being panned.
+
+  Vector4                   mColor;                 ///< Color to set all shapes.
+  Vector2                   mRotation;              ///< Keeps track of model rotation.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  PrimitiveShapesController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/progress-bar/progress-bar-example.cpp b/examples/progress-bar/progress-bar-example.cpp
new file mode 100644 (file)
index 0000000..049b559
--- /dev/null
@@ -0,0 +1,253 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "shared/view.h"
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using Dali::Toolkit::ProgressBar;
+
+namespace
+{
+const char * const THEME_PATH( DEMO_STYLE_DIR "progress-bar-example-theme.json" ); ///< The theme used for this example
+const char* const BACKGROUND_IMAGE = DEMO_IMAGE_DIR "background-gradient.jpg";
+const char* const TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png";
+const char* const TOOLBAR_TITLE = "Progress Bar";
+
+const Vector4 BACKGROUND_COLOUR( 1.0f, 1.0f, 1.0f, 0.15f );
+
+// Layout sizes
+const int MARGIN_SIZE = 10;
+const int TOP_MARGIN = 85;
+
+const unsigned int TIMER_TIMEOUT_TIME = 50;
+const float PROGRESS_INCREMENT_VALUE = 0.01f;
+
+}  // namespace
+
+/**
+ * @brief Shows how to create a default progress bar and custom styled progress bars.
+ */
+class ProgressBarExample: public ConnectionTracker
+{
+public:
+
+  ProgressBarExample( Application& application )
+    : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mProgressValue = 0.0f;
+    mSecondaryProgressValue = 0.1f;
+    isDefaultTheme = true;
+    mApplication.InitSignal().Connect( this, &ProgressBarExample::Create );
+  }
+
+private:
+
+  void Create( Application& application )
+  {
+    // The Init signal is received once (only) during the Application lifetime
+
+    // Respond to key events
+    Stage::GetCurrent().KeyEventSignal().Connect( this, &ProgressBarExample::OnKeyEvent );
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            TOOLBAR_TITLE );
+
+    mProgressBarDefault = ProgressBar::New();
+    mProgressBarDefault.SetParentOrigin(ParentOrigin::TOP_CENTER);
+    mProgressBarDefault.SetAnchorPoint(AnchorPoint::TOP_CENTER);
+    mProgressBarDefault.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH);
+    mProgressBarDefault.SetResizePolicy(ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT);
+    mProgressBarDefault.ValueChangedSignal().Connect( this, &ProgressBarExample::OnValueChanged );
+
+    Toolkit::TableView contentTable = Toolkit::TableView::New(2, 1);
+    contentTable.SetResizePolicy(ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH);
+    contentTable.SetResizePolicy(ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT);
+    contentTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    contentTable.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    contentTable.SetCellPadding(Size(MARGIN_SIZE, MARGIN_SIZE * 0.5f));
+
+    for( unsigned int i = 0; i < contentTable.GetRows(); ++i )
+    {
+      contentTable.SetFitHeight( i );
+    }
+
+    contentTable.SetPosition( 0.0f, TOP_MARGIN );
+    mContentLayer.Add( contentTable );
+
+    // Image selector for progress bar
+    Toolkit::TableView progressBackground = Toolkit::TableView::New( 1, 1 );
+    progressBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    progressBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    progressBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+    progressBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+    progressBackground.SetRelativeWidth( 0, 1.0f );
+
+    for( unsigned int i = 0; i < progressBackground.GetRows(); ++i )
+    {
+      progressBackground.SetFitHeight( i );
+    }
+
+    contentTable.Add( progressBackground );
+    progressBackground.Add( mProgressBarDefault );
+
+    // Create buttons
+    Toolkit::TableView buttonBackground = Toolkit::TableView::New( 3, 1 );
+    buttonBackground.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    buttonBackground.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    buttonBackground.SetBackgroundColor( BACKGROUND_COLOUR );
+    buttonBackground.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+
+    for( unsigned int i = 0; i < buttonBackground.GetRows(); ++i )
+    {
+      buttonBackground.SetFitHeight( i );
+    }
+
+    contentTable.Add( buttonBackground );
+
+    mResetProgressButton = Toolkit::PushButton::New();
+    mResetProgressButton.SetProperty( Toolkit::Button::Property::LABEL, "Reset" );
+    mResetProgressButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mResetProgressButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mResetProgressButton.ClickedSignal().Connect( this, &ProgressBarExample::OnResetProgressButtonSelected );
+
+    buttonBackground.Add( mResetProgressButton );
+
+    mSetIndeterminateButton = Toolkit::PushButton::New();
+    mSetIndeterminateButton.SetProperty( Toolkit::Button::Property::LABEL, "Toggle Indeterminate" );
+    mSetIndeterminateButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mSetIndeterminateButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mSetIndeterminateButton.ClickedSignal().Connect( this, &ProgressBarExample::OnSetIndeterminateButtonSelected );
+
+    buttonBackground.Add( mSetIndeterminateButton );
+
+    mChangeThemeButton = Toolkit::PushButton::New();
+    mChangeThemeButton.SetProperty( Toolkit::Button::Property::LABEL, "Change Theme" );
+    mChangeThemeButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mChangeThemeButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mChangeThemeButton.ClickedSignal().Connect( this, &ProgressBarExample::OnChangeThemeButtonSelected );
+
+    buttonBackground.Add( mChangeThemeButton );
+
+    // Create a timer to update the progress of all progress bars
+    mTimer = Timer::New( TIMER_TIMEOUT_TIME );
+    mTimer.TickSignal().Connect( this, &ProgressBarExample::OnTimerTick );
+    mTimer.Start();
+  }
+
+  bool OnTimerTick()
+  {
+    mProgressValue += PROGRESS_INCREMENT_VALUE;
+    mSecondaryProgressValue = mProgressValue + 0.1f;
+    mProgressBarDefault.SetProperty(ProgressBar::Property::PROGRESS_VALUE, mProgressValue);
+    mProgressBarDefault.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, mSecondaryProgressValue);
+
+    return ( mProgressValue < 1.0f ); // Only call again if progress has NOT got to the end
+  }
+
+  bool OnResetProgressButtonSelected( Toolkit::Button button )
+  {
+    mProgressValue = 0.0f;
+    mSecondaryProgressValue = 0.1f;
+    mProgressBarDefault.SetProperty(ProgressBar::Property::PROGRESS_VALUE, 0.0f);
+    mProgressBarDefault.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, 0.1f);
+    mTimer.Start();
+    return true;
+  }
+
+  void OnValueChanged( ProgressBar progressBar, float value, float secondaryValue )
+  {
+    std::stringstream newLabel;
+    newLabel.precision( 2 );
+    newLabel << std::fixed << "current : " << value << " / loaded : "  << secondaryValue;
+
+    mProgressBarDefault.SetProperty(ProgressBar::Property::LABEL_VISUAL, newLabel.str() );
+  }
+
+  bool OnSetIndeterminateButtonSelected( Toolkit::Button button )
+  {
+    if( mProgressBarDefault.GetProperty<bool>(ProgressBar::Property::INDETERMINATE))
+    {
+      mProgressBarDefault.SetProperty(ProgressBar::Property::INDETERMINATE, false);
+    }
+    else
+    {
+      mProgressBarDefault.SetProperty(ProgressBar::Property::INDETERMINATE, true);
+    }
+    return true;
+  }
+
+  bool OnChangeThemeButtonSelected( Toolkit::Button button )
+  {
+    StyleManager styleManager = StyleManager::Get();
+
+    if( isDefaultTheme )
+    {
+      styleManager.ApplyTheme( THEME_PATH );
+      isDefaultTheme = false;
+    }
+    else
+    {
+      styleManager.ApplyDefaultTheme();
+      isDefaultTheme = true;
+    }
+    return true;
+  }
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        // Exit application when click back or escape.
+        mApplication.Quit();
+      }
+    }
+  }
+
+  // Data
+
+  Application&      mApplication;
+  Timer             mTimer;
+  Toolkit::Control  mView;                              ///< The View instance.
+  Toolkit::ToolBar  mToolBar;                           ///< The View's Toolbar.
+  Layer             mContentLayer;                      ///< Content layer.
+  ProgressBar       mProgressBarDefault;
+  Toolkit::PushButton mResetProgressButton;
+  Toolkit::PushButton mSetIndeterminateButton;
+  Toolkit::PushButton mChangeThemeButton;
+  float mProgressValue;
+  float mSecondaryProgressValue;
+  bool isDefaultTheme;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ProgressBarExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/property-notification/property-notification-example.cpp b/examples/property-notification/property-notification-example.cpp
new file mode 100644 (file)
index 0000000..8748533
--- /dev/null
@@ -0,0 +1,124 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/devel-api/actors/actor-devel.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const float COLOR_ANIMATION_DURATION( 5.0f );
+const float OPACITY_ANIMATION_DURATION( 1.0f );
+} // unnamed namespace
+
+/**
+ * @brief An example that shows how to use property notifications.
+ *
+ * - Creates a text label and sets its text color to black.
+ * - Animates the text color of a text label to red.
+ * - Sets up a property notification so that we are informed when the color is 50% red.
+ * - When we are notified, we start a new animation which animates the text label to transparent.
+ */
+class PropertyNotificationController : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in] application A reference to the Application class.
+   */
+  PropertyNotificationController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &PropertyNotificationController::Create );
+  }
+
+  /**
+   * @brief Called to initialise the application content
+   * @param[in] application A reference to the Application class.
+   */
+  void Create( Application& application )
+  {
+    // Set the stage background color and connect to the stage's key signal to allow Back and Escape to exit.
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    stage.KeyEventSignal().Connect( this, &PropertyNotificationController::OnKeyEvent );
+
+    // Create a text label and set the text color to black
+    mTextLabel = TextLabel::New( "Black to Red Animation\nNew opacity animation at 50% Red" );
+    mTextLabel.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER );
+    mTextLabel.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
+    mTextLabel.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    mTextLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mTextLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLACK );
+    stage.Add( mTextLabel );
+
+    // Create an animation and animate the text color to red
+    Animation animation = Animation::New( COLOR_ANIMATION_DURATION );
+    animation.AnimateTo( Property( mTextLabel, TextLabel::Property::TEXT_COLOR ), Color::RED );
+    animation.Play();
+
+    // Set up a property notification so we are notified when the red component of the text-color reaches 50%
+    PropertyNotification notification = mTextLabel.AddPropertyNotification( TextLabel::Property::TEXT_COLOR_RED, GreaterThanCondition( 0.5f ) );
+    notification.NotifySignal().Connect( this, &PropertyNotificationController::RedComponentNotification );
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * @brief Called when the property notification condition is met.
+   *
+   * In our case, it's when the red component is greater than 50%.
+   * Will use this notification to animate the opacity of the text-label to transparent.
+   */
+  void RedComponentNotification( PropertyNotification& /* source */ )
+  {
+    Animation animation = Animation::New( OPACITY_ANIMATION_DURATION );
+    animation.AnimateTo( Property( mTextLabel, DevelActor::Property::OPACITY ), 0.0f );
+    animation.Play();
+  }
+
+private:
+  Application& mApplication;
+  TextLabel mTextLabel;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  PropertyNotificationController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/ray-marching/ray-marching-example.cpp b/examples/ray-marching/ray-marching-example.cpp
new file mode 100644 (file)
index 0000000..2a7b959
--- /dev/null
@@ -0,0 +1,237 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/tool-bar/tool-bar.h>
+#include "shared/view.h"
+#include "shared/utility.h"
+#include <stdio.h>
+#include <dali/integration-api/debug.h>
+#include <dali/devel-api/adaptor-framework/file-stream.h>
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+using Dali::Toolkit::Control;
+using Dali::Toolkit::ToolBar;
+
+const char* BACKGROUND_IMAGE( "" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* APPLICATION_TITLE( "Ray Marching" );
+const char* SHADER_NAME("raymarch_sphere_shaded");
+
+/**
+ * @brief LoadShaderCode
+ * @param filename
+ * @param output
+ * @return
+ */
+bool LoadShaderCode( const char* path, const char* filename, std::vector<char>& output )
+{
+  std::string fullpath( path );
+  fullpath += filename;
+
+  Dali::FileStream fileStream( fullpath, Dali::FileStream::READ | Dali::FileStream::BINARY );
+  FILE* file = fileStream.GetFile();
+  if( !file )
+  {
+    return false;
+  }
+
+  bool retValue = false;
+  if( !fseek( file, 0, SEEK_END ) )
+  {
+    long int size = ftell( file );
+
+    if( ( size != -1L ) &&
+        ( ! fseek( file, 0, SEEK_SET ) ) )
+    {
+      output.resize( size + 1 );
+      std::fill( output.begin(), output.end(), 0 );
+      ssize_t result = fread( output.data(), size, 1, file );
+
+      retValue = ( result >= 0 );
+    }
+  }
+
+  return retValue;
+}
+
+/**
+ * @brief LoadShaders
+ * @param shaderName
+ * @return
+ */
+Shader LoadShaders( const std::string& shaderName )
+{
+  std::vector<char> bufV, bufF;
+  std::string shaderVSH( shaderName );
+  std::string shaderFSH( shaderName );
+  shaderVSH += ".vsh";
+  shaderFSH += ".fsh";
+
+  Shader shader;
+  if( LoadShaderCode( DEMO_SHADER_DIR, shaderVSH.c_str(), bufV ) &&
+      LoadShaderCode( DEMO_SHADER_DIR, shaderFSH.c_str(), bufF ) )
+  {
+    shader = Shader::New( bufV.data(), bufF.data() );
+  }
+  return shader;
+}
+
+// This example shows how to create a Ray Marching using a shader
+//
+class RayMarchingExample : public ConnectionTracker
+{
+public:
+
+  RayMarchingExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &RayMarchingExample::Create );
+  }
+
+  ~RayMarchingExample()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+
+    stage.GetRootLayer().TouchSignal().Connect( this, &RayMarchingExample::OnTouch );
+
+    stage.KeyEventSignal().Connect(this, &RayMarchingExample::OnKeyEvent);
+
+    stage.SetBackgroundColor( Color::YELLOW );
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            APPLICATION_TITLE );
+
+    // Add an extra space on the right to center the title text.
+    mToolBar.AddControl( Actor::New(), DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight );
+
+    AddContentLayer();
+
+  }
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * Creates quad renderer
+   */
+  Renderer CreateQuadRenderer()
+  {
+    // Create shader & geometry needed by Renderer
+    Shader shader = LoadShaders( SHADER_NAME );
+
+    Property::Map vertexFormat;
+    vertexFormat["aPosition"] = Property::VECTOR2;
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( vertexFormat );
+
+    const float P( 0.5f );
+    const Vector2 vertices[] = {
+      Vector2( -P, -P ),
+      Vector2( +P, -P ),
+      Vector2( -P, +P ),
+      Vector2( +P, +P )
+    };
+
+    vertexBuffer.SetData( vertices, 4 );
+
+    // Instantiate quad geometry
+    Geometry geometry = Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    geometry.SetType( Geometry::TRIANGLE_STRIP );
+
+    // Create renderer
+    Renderer renderer = Renderer::New( geometry, shader );
+
+    renderer.RegisterProperty("uRadius", 0.0f );
+    renderer.RegisterProperty("uAdjuster", -4.0f );
+
+    //  Animate the sphere radius uniform and a generic uAdjust uniform currently used to move the light around
+    Animation animation = Animation::New(8.0f);
+    animation.AnimateTo( Property(renderer,"uRadius"), 1.2f, AlphaFunction::BOUNCE);
+    animation.AnimateTo( Property(renderer,"uAdjuster"), 4.0f, AlphaFunction::BOUNCE);
+    animation.SetLooping( true );
+    animation.Play();
+
+    return renderer;
+  }
+
+  void AddContentLayer()
+  {
+    Stage stage = Stage::GetCurrent();
+
+     //Create all the renderers
+    Renderer renderer = CreateQuadRenderer();
+
+    Actor actor = Actor::New();
+    actor.AddRenderer( renderer );
+
+    actor.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+    actor.SetParentOrigin( Dali::ParentOrigin::CENTER );
+    actor.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+
+    mContentLayer.Add( actor );
+  }
+
+private:
+  Application&  mApplication;
+  Control mView;
+  Layer mContentLayer;
+  ToolBar mToolBar;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  RayMarchingExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/reflection-demo/gltf-scene.cpp b/examples/reflection-demo/gltf-scene.cpp
new file mode 100644 (file)
index 0000000..46e39cf
--- /dev/null
@@ -0,0 +1,594 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+#include <dali/devel-api/adaptor-framework/file-stream.h>
+
+#include "gltf-scene.h"
+
+#include "pico-json.h"
+
+namespace
+{
+// string contains enum type index encoded matching glTFAttributeType
+const std::vector<std::string> GLTF_STR_ATTRIBUTE_TYPE = {
+  "POSITION",
+  "NORMAL",
+  "TEXCOORD_0"
+};
+
+const std::vector<std::pair<std::string, uint32_t>> GLTF_STR_COMPONENT_TYPE = {
+  std::make_pair( "VEC2", 2 ),
+  std::make_pair( "VEC3", 3 ),
+  std::make_pair( "VEC4", 4 ),
+  std::make_pair( "SCALAR", 1 )
+};
+
+glTFAttributeType glTFAttributeTypeStrToEnum( const std::string& name )
+{
+  int index = -1;
+  auto iter = std::find_if( GLTF_STR_ATTRIBUTE_TYPE.begin(), GLTF_STR_ATTRIBUTE_TYPE.end(),
+  [name, &index]( const std::string& val )
+  {
+    index++;
+    return val == name;
+  });
+  if( iter == GLTF_STR_ATTRIBUTE_TYPE.end() )
+  {
+    return glTFAttributeType::UNDEFINED;
+  }
+
+  return static_cast<glTFAttributeType>(index);
+}
+
+uint32_t glTFComponentTypeStrToNum( const std::string& name )
+{
+  auto iter = std::find_if( GLTF_STR_COMPONENT_TYPE.begin(), GLTF_STR_COMPONENT_TYPE.end(),
+                            [name]( const std::pair<std::string, uint32_t>& val )
+                            {
+                              return val.first == name;
+                            });
+  if( iter == GLTF_STR_COMPONENT_TYPE.end() )
+  {
+    return 0;
+  }
+
+  return iter->second;
+}
+
+template<class T>
+struct JsonResult
+{
+  bool success;
+  T    result;
+  operator T() const
+  {
+    return static_cast<T>(result);
+  }
+};
+
+template<>
+struct JsonResult<bool>
+{
+  bool success;
+  bool result;
+
+  operator bool() const
+  {
+    return result;
+  }
+};
+
+template<class Expected, class Converted = Expected>
+JsonResult<picojson::value> JsonFindValue( const picojson::object& object, const std::string& name )
+{
+  auto iter = find_if(object.begin(), object.end(), [name](decltype(*object.begin())& item)
+  {
+    return item.first == name;
+  });
+
+  if(iter == object.end())
+  {
+    return {false};
+  }
+
+  return {true, iter->second};
+};
+
+
+template<class Expected, class Converted = Expected>
+JsonResult<Converted> JsonGetValue( const picojson::value& val, const std::string& name, const Converted& onFail )
+{
+  if( val.contains(name) )
+  {
+    return {true, static_cast<Converted>(val.get(name).get<Expected>())};
+  }
+  return {false, onFail};
+}
+
+template<class Expected, class Converted = Expected>
+bool JsonGetValueOut( const picojson::value& val, const std::string& name, Converted& writeOut )
+{
+  if( val.contains(name) )
+  {
+    writeOut = static_cast<Converted>(val.get(name).get<Expected>());
+    return true;
+  }
+  return false;
+}
+
+
+/**
+ * Safe json value accessor
+ */
+template<class Expected, class Converted = Expected>
+JsonResult<std::vector<Converted>> JsonGetArray( const picojson::value& val, const std::string& name, std::vector<Converted> valueOnFail = {} )
+{
+  if(val.contains(name) )
+  {
+    const auto& array = val.get(name).get<picojson::array>();
+    std::vector<Converted> result{};
+    for( const auto& item : array )
+    {
+      result.emplace_back( static_cast<Converted>(item.get<Expected>()) );
+    }
+    return {true, result};
+  }
+  return {false, valueOnFail};
+}
+
+}
+
+glTF::glTF(const std::string& filename)
+{
+  LoadFromFile(filename);
+  ParseJSON();
+}
+
+void glTF::LoadFromFile( const std::string& filename )
+{
+  std::string jsonFile( filename );
+  jsonFile += ".gltf";
+  std::string binFile( filename );
+  binFile += ".bin";
+
+  // load binary
+
+  GLTF_LOG("LoadFromFile: %s", binFile.c_str());
+  mBuffer = LoadFile(binFile);
+  jsonBuffer = LoadFile(jsonFile);
+
+  // Log errors
+  if(mBuffer.empty())
+  {
+    GLTF_LOG("Error, buffer empty!");
+  }
+  else
+  {
+    GLTF_LOG( "GLTF[BIN]: %s loaded, size = %d", binFile.c_str(), int(mBuffer.size()));
+  }
+  if(jsonBuffer.empty())
+  {
+    GLTF_LOG("Error, buffer GLTF empty!");
+  }
+  else
+  {
+    GLTF_LOG( "GLTF: %s loaded, size = %d", binFile.c_str(), int(jsonBuffer.size()));
+  }
+
+  // Abort if errors
+  if(jsonBuffer.empty() || mBuffer.empty())
+  {
+    return;
+  }
+
+  // parse json
+  auto err = picojson::parse(jsonNode, std::string(reinterpret_cast<char*>(jsonBuffer.data())));
+  if(!err.empty())
+  {
+    GLTF_LOG( "GLTF: Error parsing %s, error: %s", jsonFile.c_str(), err.c_str());
+    return;
+  }
+  else
+  {
+    GLTF_LOG( "GLTF: %s loaded, size = %d", jsonFile.c_str(), int(jsonBuffer.size()));
+  }
+}
+
+bool glTF::ParseJSON()
+{
+  if (!jsonNode.is<picojson::object>())
+  {
+    return false;
+  }
+
+  // Add dummy first node to nodes (scene node)
+  mNodes.emplace_back();
+
+  // Sources for textures to be resolved later
+  std::vector<uint32_t> textureSources{};
+  std::vector<glTF_Texture> images{};
+
+  for( auto& val : jsonNode.get<picojson::object>() )
+  {
+    GLTF_LOG( "node: %s", val.first.c_str());
+
+    // Parse bufferviews
+    if( val.first == "bufferViews" )
+    {
+      auto bufferViews = val.second;
+      for( auto& view : bufferViews.get<picojson::array>() )
+      {
+        auto bufferIndex = uint32_t(view.get("buffer").get<double>());
+        auto byteLength = uint32_t(view.get("byteLength").get<double>());
+        auto byteOffset = uint32_t(view.get("byteOffset").get<double>());
+
+        glTF_BufferView bufferView{};
+        bufferView.bufferIndex = bufferIndex;
+        bufferView.byteLength = byteLength;
+        bufferView.byteOffset = byteOffset;
+
+        mBufferViews.emplace_back( bufferView );
+      }
+    }
+
+    // parse accessors
+    else if( val.first == "accessors" )
+    {
+      for( const auto& accessor : val.second.get<picojson::array>() )
+      {
+        auto gltfAccessor = glTF_Accessor{};
+        gltfAccessor.bufferView = uint32_t(accessor.get( "bufferView" ).get<double>());
+        gltfAccessor.componentType = uint32_t(accessor.get( "componentType" ).get<double>());
+        gltfAccessor.count = uint32_t(accessor.get( "count" ).get<double>());
+        gltfAccessor.type = accessor.get( "type" ).get<std::string>();
+        gltfAccessor.componentSize = glTFComponentTypeStrToNum( gltfAccessor.type );
+        mAccessors.emplace_back( gltfAccessor );
+      }
+    }
+
+    // parse meshes
+    else if( val.first == "meshes" )
+    {
+      for( const auto& mesh : val.second.get<picojson::array>() )
+      {
+        glTF_Mesh gltfMesh{};
+        gltfMesh.name = mesh.get( "name" ).get<std::string>();
+
+        // get primitives (in this implementation assuming single mesh consists of
+        // one and only one primitive)
+        const auto& primitive = mesh.get("primitives").get<picojson::array>()[0];
+        const auto& attrs = primitive.get("attributes").get<picojson::object>();
+        for( const auto& attr : attrs )
+        {
+          auto type = glTFAttributeTypeStrToEnum( attr.first );
+          auto bvIndex = uint32_t(attr.second.get<double>());
+          gltfMesh.attributes.emplace_back( std::make_pair( type, bvIndex ) );
+          GLTF_LOG("GLTF: ATTR: type: %d, index: %d", int(type), int(bvIndex));
+        }
+
+        gltfMesh.indices = uint32_t(primitive.get("indices").get<double>());
+        gltfMesh.material = uint32_t(primitive.get("material").get<double>());
+        mMeshes.emplace_back( gltfMesh );
+      }
+    }
+    // parse cameras
+    else if( val.first == "cameras" )
+    {
+      glTF_Camera tgifCamera{};
+      for( const auto& camera : val.second.get<picojson::array>() )
+      {
+        tgifCamera.name = camera.get( "name" ).to_str();
+        tgifCamera.isPerspective = (camera.get( "type" ).to_str() == "perspective" );
+        if(tgifCamera.isPerspective)
+        {
+          const auto& perspective = camera.get( "perspective" );
+          tgifCamera.yfov = static_cast<float>(perspective.get( "yfov" ).get<double>());
+          tgifCamera.zfar = static_cast<float>(perspective.get( "zfar" ).get<double>());
+          tgifCamera.znear = static_cast<float>(perspective.get( "znear" ).get<double>());
+        }
+
+        mCameras.emplace_back( tgifCamera );
+      }
+    }
+    // parse nodes
+    else if( val.first == "nodes" )
+    {
+      auto nodeIndex = 1u;
+      for( const auto& node : val.second.get<picojson::array>() )
+      {
+        glTF_Node gltfNode{};
+        gltfNode.name = node.get( "name" ).to_str();
+        auto rotation = JsonGetArray<double, float>( node, "rotation", {0.0f, 0.0f, 0.0f, 1.0f} );
+        auto translation = JsonGetArray<double, float>( node, "translation", {0.0f, 0.0f, 0.0f} );
+        auto scale = JsonGetArray<double, float>( node, "scale", {1.0f, 1.0f, 1.0f} );
+        std::copy( rotation.result.begin(), rotation.result.end(), gltfNode.rotationQuaternion );
+        std::copy( translation.result.begin(), translation.result.end(), gltfNode.translation );
+        std::copy( scale.result.begin(), scale.result.end(), gltfNode.scale );
+
+        auto children = JsonGetArray<double, uint32_t>( node, "children" );
+        if(children.success)
+        {
+          gltfNode.children = std::move(children.result);
+        }
+        gltfNode.index = nodeIndex;
+        gltfNode.cameraId = 0xffffffff;
+        gltfNode.meshId = 0xffffffff;
+
+        auto cameraId = JsonGetValue<double, uint32_t>( node, "camera", 0xffffffff );
+        if( cameraId.success )
+        {
+          gltfNode.cameraId = cameraId.result;
+        }
+        auto meshId = JsonGetValue<double, uint32_t>( node, "mesh",  0xffffffff );
+        if( meshId.success )
+        {
+          gltfNode.meshId = meshId.result;
+        }
+        mNodes.emplace_back( gltfNode );
+        ++nodeIndex;
+      }
+
+    }
+    // parse scenes, note: only first scene is being parsed
+    else if( val.first == "scenes" )
+    {
+      auto& sceneNode = mNodes[0];
+      const auto& scene = val.second.get<picojson::array>()[0];
+      sceneNode.name = JsonGetValue<std::string>( scene, "name", std::string() );
+      auto result = JsonGetArray<double, uint32_t>( scene, "nodes" );
+      sceneNode.children = result.result;
+      sceneNode.index = 0;
+    }
+    else if( val.first == "materials" )
+    {
+      for( const auto& node : val.second.get<picojson::array>() )
+      {
+        // Get pbr material, base color texture
+        glTF_Material material{};
+        material.doubleSided = JsonGetValue<bool>( node, "doubleSided", false ).result;
+        material.name = JsonGetValue<std::string>( node, "name", std::string() ).result;
+        if( node.contains("pbrMetallicRoughness") )
+        {
+          const auto& node0 = node.get("pbrMetallicRoughness");
+          if(node0.contains("baseColorTexture"))
+          {
+            const auto& node1 = node0.get("baseColorTexture");
+            auto index = uint32_t(node1.get("index").get<double>());
+            auto texCoord = uint32_t(node1.get("texCoord").get<double>());
+            material.pbrMetallicRoughness.enabled = true;
+            material.pbrMetallicRoughness.baseTextureColor.index = index;
+            material.pbrMetallicRoughness.baseTextureColor.texCoord = texCoord;
+          }
+        }
+        mMaterials.emplace_back( material );
+      }
+    }
+    else if( val.first == "textures" )
+    {
+      for(const auto& item : val.second.get<picojson::array>() )
+      {
+        auto source = JsonGetValue<double, uint32_t>( item, "source", 0xffffffff );
+        textureSources.emplace_back( source.result );
+      }
+    }
+    else if( val.first == "images" )
+    {
+      for(const auto& item : val.second.get<picojson::array>() )
+      {
+        glTF_Texture tex{};
+        JsonGetValueOut<std::string>( item, "name", tex.name );
+        JsonGetValueOut<std::string>( item, "uri", tex.uri );
+        images.emplace_back( tex );
+      }
+    }
+  }
+
+  // Resolve cross-referencing
+  for( const auto& source : textureSources )
+  {
+    mTextures.emplace_back( images[source] );
+  }
+
+  return true;
+}
+
+glTF_Buffer glTF::LoadFile( const std::string& filename )
+{
+  Dali::FileStream fileStream( filename.c_str(), Dali::FileStream::READ | Dali::FileStream::BINARY );
+  FILE* fin = fileStream.GetFile();
+  std::vector<unsigned char> buffer;
+  if( fin )
+  {
+    if( fseek( fin, 0, SEEK_END ) )
+    {
+      return {};
+    }
+    auto size = ftell(fin);
+    if( fseek( fin, 0, SEEK_SET ) )
+    {
+      return {};
+    }
+    buffer.resize(unsigned(size));
+    auto result = fread( buffer.data(), 1, size_t(size), fin );
+    if( result != size_t(size) )
+    {
+      GLTF_LOG("LoadFile: Result: %d", int(result));
+      // return empty buffer
+      return {};
+    }
+  }
+  else
+  {
+    GLTF_LOG("LoadFile: Can't open file: errno = %d", errno);
+  }
+
+  return buffer;
+}
+
+std::vector<const glTF_Mesh*> glTF::GetMeshes() const
+{
+  std::vector<const glTF_Mesh*> retval;
+  for( auto& mesh : mMeshes )
+  {
+    retval.emplace_back( &mesh );
+  }
+  return retval;
+}
+
+std::vector<const glTF_Camera*> glTF::GetCameras()
+{
+  std::vector<const glTF_Camera*> cameras;
+  for( const auto& cam : mCameras )
+  {
+    cameras.emplace_back( &cam );
+  }
+  return cameras;
+}
+
+std::vector<unsigned char> glTF::GetMeshAttributeBuffer( const glTF_Mesh& mesh,  const std::vector<glTFAttributeType>& attrTypes )
+{
+  // find buffer views
+  struct Data
+  {
+    uint32_t accessorIndex{0u};
+    uint32_t byteStride{0u};
+    char*    srcPtr{ nullptr };
+  };
+  std::vector<Data> data{};
+  for( const auto& attrType : attrTypes )
+  {
+    std::find_if( mesh.attributes.begin(), mesh.attributes.end(), [&data, &attrType]( const std::pair<glTFAttributeType, uint32_t>& item ){
+      if( item.first == attrType )
+      {
+        data.emplace_back();
+        data.back().accessorIndex = item.second;
+      }
+      return false;
+    });
+  }
+
+  if(data.empty())
+  {
+    return {};
+  }
+
+  // number of attributes is same for the whole mesh so using very first
+  // accessor
+
+  glTF_Buffer retval{};
+
+  // data is interleaved
+  if( data.size() > 1 )
+  {
+    auto attributeCount = mAccessors[data[0].accessorIndex].count;// / mAccessors[data[0].accessorIndex].componentSize;
+    uint32_t attributeStride = 0;
+    // now find buffer view stride for particular accessor
+    for( auto& item : data )
+    {
+      auto& accessor = mAccessors[item.accessorIndex];
+
+      // Update byte stride for this buffer view
+      auto& bufferView = mBufferViews[accessor.bufferView];
+      item.byteStride = bufferView.byteLength / attributeCount;
+      attributeStride += item.byteStride;
+      item.srcPtr = reinterpret_cast<char*>(mBuffer.data()) + bufferView.byteOffset;
+    }
+
+    // now allocate final buffer and interleave data
+    retval.resize( attributeStride * attributeCount );
+    auto* dstPtr = retval.data();
+    for( auto i = 0u; i < attributeCount; ++i )
+    {
+      for(auto& item : data )
+      {
+        std::copy( item.srcPtr,
+                   item.srcPtr + item.byteStride,
+                   reinterpret_cast<char*>(dstPtr) );
+        dstPtr += item.byteStride;
+        item.srcPtr += item.byteStride;
+      }
+    }
+  }
+  else // copy data directly as single buffer
+  {
+    auto& bufferView = mBufferViews[mAccessors[data[0].accessorIndex].bufferView];
+    retval.resize( bufferView.byteLength );
+    std::copy( mBuffer.begin() + bufferView.byteOffset,
+               mBuffer.begin() + bufferView.byteOffset + bufferView.byteLength,
+               retval.begin());
+
+  }
+  return retval;
+}
+
+
+const glTF_Mesh* glTF::FindMeshByName( const std::string& name ) const
+{
+  for( const auto& mesh : mMeshes )
+  {
+    if(mesh.name == name)
+      return &mesh;
+  }
+  return nullptr;
+}
+
+uint32_t glTF::GetMeshAttributeCount( const glTF_Mesh* mesh ) const
+{
+  const auto& accessor = mAccessors[mesh->attributes[0].second];
+  return accessor.count;// / accessor.componentSize;
+}
+
+std::vector<uint16_t> glTF::GetMeshIndexBuffer( const glTF_Mesh* mesh ) const
+{
+  // check GL component type
+  const auto& accessor = mAccessors[mesh->indices];
+  if( accessor.componentType == 0x1403 ) // GL_UNSIGNED_SHORT
+  {
+    std::vector<uint16_t> retval{};
+    retval.resize( accessor.count );
+    const auto& bufferView = mBufferViews[accessor.bufferView];
+    const auto* srcPtr = reinterpret_cast<const uint16_t*>
+                (reinterpret_cast<const char*>(mBuffer.data()) + bufferView.byteOffset);
+    std::copy( srcPtr, srcPtr + accessor.count, retval.data() );
+    return retval;
+  }
+  return {};
+}
+
+const glTF_Node* glTF::FindNodeByName( const std::string& name ) const
+{
+  auto iter = std::find_if( mNodes.begin(), mNodes.end(), [name]( const glTF_Node& node )
+  {
+    return !name.compare( node.name );
+  });
+
+  if(iter == mNodes.end())
+  {
+    return nullptr;
+  }
+
+  return &*iter;
+}
+
+const std::vector<glTF_Material>& glTF::GetMaterials() const
+{
+  return mMaterials;
+}
+
+const std::vector<glTF_Texture>& glTF::GetTextures() const
+{
+  return mTextures;
+}
diff --git a/examples/reflection-demo/gltf-scene.h b/examples/reflection-demo/gltf-scene.h
new file mode 100644 (file)
index 0000000..faecea8
--- /dev/null
@@ -0,0 +1,178 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#ifndef GLTF_SCENE_H
+#define GLTF_SCENE_H
+
+#include <dali/integration-api/debug.h>
+
+#include <string>
+
+#include "pico-json.h"
+
+#define GLTF_LOG(...) {DALI_LOG_ERROR( __VA_ARGS__ );}
+
+enum class glTFAttributeType
+{
+  POSITION = 0,
+  NORMAL = 1,
+  TEXCOORD_0 = 2,
+  UNDEFINED,
+};
+
+struct glTF_Camera
+{
+  std::string name;
+
+  // perspective setup
+  float yfov;
+  float zfar;
+  float znear;
+
+  bool isPerspective;
+};
+
+struct glTF_BufferView
+{
+  uint32_t bufferIndex;
+  uint32_t byteLength;
+  uint32_t byteOffset;
+  void*    data;
+};
+
+struct glTF_Accessor
+{
+  uint32_t bufferView;
+  uint32_t componentType;
+  uint32_t count;
+  uint32_t componentSize;
+  std::string type;
+};
+
+struct glTF_Mesh
+{
+  std::string name;
+  std::vector<std::pair<glTFAttributeType, uint32_t>> attributes;
+  uint32_t indices;
+  uint32_t material;
+};
+
+struct glTF_Texture
+{
+  std::string uri;
+  std::string name;
+};
+
+struct glTF_Material
+{
+  bool doubleSided;
+  std::string name;
+  struct pbrMetallicRoughness
+  {
+    bool enabled {false};
+    struct baseTextureColor
+    {
+      uint32_t index;
+      uint32_t texCoord;
+    } baseTextureColor;
+  } pbrMetallicRoughness;
+};
+
+struct glTF_Node
+{
+  uint32_t index{0u};
+  std::string  name{};
+  uint32_t     meshId { 0xffffffff };
+  uint32_t     cameraId{ 0xffffffff };
+  glTF_Node*   parent { nullptr };
+  std::vector<uint32_t> children {};
+
+  // Transform
+  float        rotationQuaternion[4] = { 0.0f, 0.0f, 0.0f, 1.0f };
+  float        translation[3] = { 0.0f, 0.0f, 0.0f };
+  float        scale[3] = { 1.0f, 1.0f, 1.0f };
+};
+
+using glTF_Buffer = std::vector<unsigned char>;
+
+/**
+ * Simple glTF parser
+ *
+ * This implementation requires 2 files (it doesn't decode Base64 embedded in json)
+ */
+struct glTF
+{
+
+  glTF( const std::string& filename );
+  ~glTF() = default;
+
+  std::vector<const glTF_Mesh*> GetMeshes() const;
+
+  std::vector<const glTF_Camera*> GetCameras();
+
+  const std::vector<glTF_Material>& GetMaterials() const;
+
+  const std::vector<glTF_Texture>& GetTextures() const;
+
+  const std::vector<glTF_Node>& GetNodes() const
+  {
+    return mNodes;
+  }
+
+  /**
+   * MESH interface
+   */
+  /**
+   * Returns a copy of attribute buffer
+   * @return
+   */
+  std::vector<unsigned char> GetMeshAttributeBuffer( const glTF_Mesh& mesh, const std::vector<glTFAttributeType>& attrTypes );
+  uint32_t GetMeshAttributeCount( const glTF_Mesh* mesh ) const;
+  const glTF_Mesh* FindMeshByName( const std::string& name ) const;
+
+  /**
+   * Returns a copy of index buffer
+   * @return
+   */
+  std::vector<uint16_t> GetMeshIndexBuffer( const glTF_Mesh* mesh ) const;
+
+  const glTF_Node* FindNodeByName( const std::string& name ) const;
+
+private:
+
+  void LoadFromFile( const std::string& filename );
+
+  glTF_Buffer LoadFile( const std::string& filename );
+
+  bool ParseJSON();
+
+  std::vector<glTF_Mesh>        mMeshes;
+  std::vector<glTF_Camera>      mCameras;
+  std::vector<glTF_BufferView>  mBufferViews;
+  std::vector<glTF_Accessor>    mAccessors;
+  std::vector<glTF_Node>        mNodes;
+  std::vector<glTF_Material>    mMaterials;
+  std::vector<glTF_Texture>     mTextures;
+  glTF_Buffer mBuffer;
+  glTF_Buffer jsonBuffer;
+
+  // json nodes
+  picojson::value jsonNode;
+};
+
+
+#endif //DALI_CMAKE_GLTF_SCENE_H
diff --git a/examples/reflection-demo/pico-json.h b/examples/reflection-demo/pico-json.h
new file mode 100644 (file)
index 0000000..e4f28e9
--- /dev/null
@@ -0,0 +1,1086 @@
+/*
+ * Copyright 2009-2010 Cybozu Labs, Inc.
+ * Copyright 2011-2014 Kazuho Oku
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ *    this list of conditions and the following disclaimer.
+ *
+ * 2. 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.
+ *
+ * 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 HOLDER 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.
+ */
+#ifndef picojson_h
+#define picojson_h
+
+#include <algorithm>
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
+#include <cstddef>
+#include <iostream>
+#include <iterator>
+#include <limits>
+#include <map>
+#include <stdexcept>
+#include <string>
+#include <vector>
+#include <utility>
+
+// for isnan/isinf
+#if __cplusplus>=201103L
+# include <cmath>
+#else
+extern "C" {
+# ifdef _MSC_VER
+#  include <float.h>
+# elif defined(__INTEL_COMPILER)
+#  include <mathimf.h>
+# else
+#  include <math.h>
+# endif
+}
+#endif
+
+#ifndef PICOJSON_USE_RVALUE_REFERENCE
+# if (defined(__cpp_rvalue_references) && __cpp_rvalue_references >= 200610) || (defined(_MSC_VER) && _MSC_VER >= 1600)
+#  define PICOJSON_USE_RVALUE_REFERENCE 1
+# else
+#  define PICOJSON_USE_RVALUE_REFERENCE 0
+# endif
+#endif//PICOJSON_USE_RVALUE_REFERENCE
+
+
+// experimental support for int64_t (see README.mkdn for detail)
+#ifdef PICOJSON_USE_INT64
+# define __STDC_FORMAT_MACROS
+# include <errno.h>
+# include <inttypes.h>
+#endif
+
+// to disable the use of localeconv(3), set PICOJSON_USE_LOCALE to 0
+#ifndef PICOJSON_USE_LOCALE
+# define PICOJSON_USE_LOCALE 1
+#endif
+#if PICOJSON_USE_LOCALE
+extern "C" {
+# include <locale.h>
+}
+#endif
+
+#ifndef PICOJSON_ASSERT
+# define PICOJSON_ASSERT(e) do { if (! (e)) throw std::runtime_error(#e); } while (0)
+#endif
+
+#ifdef _MSC_VER
+#define SNPRINTF _snprintf_s
+    #pragma warning(push)
+    #pragma warning(disable : 4244) // conversion from int to char
+    #pragma warning(disable : 4127) // conditional expression is constant
+    #pragma warning(disable : 4702) // unreachable code
+#else
+#define SNPRINTF snprintf
+#endif
+
+namespace picojson {
+
+enum {
+  null_type,
+  boolean_type,
+  number_type,
+  string_type,
+  array_type,
+  object_type
+#ifdef PICOJSON_USE_INT64
+  , int64_type
+#endif
+};
+
+enum {
+  INDENT_WIDTH = 2
+};
+
+struct null {};
+
+class value {
+public:
+  typedef std::vector<value> array;
+  typedef std::map<std::string, value> object;
+  union _storage {
+    bool boolean_;
+    double number_;
+#ifdef PICOJSON_USE_INT64
+    int64_t int64_;
+#endif
+    std::string* string_;
+    array* array_;
+    object* object_;
+  };
+protected:
+  int type_{};
+  _storage u_ {};
+public:
+  value();
+  value(int type, bool);
+  explicit value(bool b);
+#ifdef PICOJSON_USE_INT64
+  explicit value(int64_t i);
+#endif
+  explicit value(double n);
+  explicit value(const std::string& s);
+  explicit value(const array& a);
+  explicit value(const object& o);
+  explicit value(const char* s);
+  value(const char* s, size_t len);
+  ~value();
+  value(const value& x);
+  value& operator=(const value& x);
+#if PICOJSON_USE_RVALUE_REFERENCE
+  value(value&& x)throw();
+  value& operator=(value&& x)throw();
+#endif
+  void swap(value& x)throw();
+  template <typename T> bool is() const;
+  template <typename T> const T& get() const;
+  template <typename T> T& get();
+  template <typename T> void set(const T &);
+#if PICOJSON_USE_RVALUE_REFERENCE
+  template <typename T> void set(T &&);
+#endif
+  bool evaluate_as_boolean() const;
+  const value& get(size_t idx) const;
+  const value& get(const std::string& key) const;
+  value& get(size_t idx);
+  value& get(const std::string& key);
+
+  bool contains(size_t idx) const;
+  bool contains(const std::string& key) const;
+  std::string to_str() const;
+  template <typename Iter> void serialize(Iter os, bool prettify = false) const;
+  std::string serialize(bool prettify = false) const;
+private:
+  template <typename T> value(const T*); // intentionally defined to block implicit conversion of pointer to bool
+  template <typename Iter> static void _indent(Iter os, int indent);
+  template <typename Iter> void _serialize(Iter os, int indent) const;
+  std::string _serialize(int indent) const;
+  void clear();
+};
+
+typedef value::array array;
+typedef value::object object;
+
+inline value::value() : type_(null_type) {}
+
+inline value::value(int type, bool) : type_(type) {
+  switch (type) {
+#define INIT(p, v) case p##type: u_.p = v; break
+    INIT(boolean_, false);
+    INIT(number_, 0.0);
+#ifdef PICOJSON_USE_INT64
+    INIT(int64_, 0);
+#endif
+    INIT(string_, new std::string());
+    INIT(array_, new array());
+    INIT(object_, new object());
+#undef INIT
+    default: break;
+  }
+}
+
+inline value::value(bool b) : type_(boolean_type) {
+  u_.boolean_ = b;
+}
+
+#ifdef PICOJSON_USE_INT64
+inline value::value(int64_t i) : type_(int64_type) {
+    u_.int64_ = i;
+  }
+#endif
+
+inline value::value(double n) : type_(number_type) {
+  if (
+#ifdef _MSC_VER
+! _finite(n)
+#elif __cplusplus>=201103L || !(defined(isnan) && defined(isinf))
+std::isnan(n) || std::isinf(n)
+#else
+    isnan(n) || isinf(n)
+#endif
+    ) {
+    throw std::overflow_error("");
+  }
+  u_.number_ = n;
+}
+
+inline value::value(const std::string& s) : type_(string_type) {
+  u_.string_ = new std::string(s);
+}
+
+inline value::value(const array& a) : type_(array_type) {
+  u_.array_ = new array(a);
+}
+
+inline value::value(const object& o) : type_(object_type) {
+  u_.object_ = new object(o);
+}
+
+inline value::value(const char* s) : type_(string_type) {
+  u_.string_ = new std::string(s);
+}
+
+inline value::value(const char* s, size_t len) : type_(string_type) {
+  u_.string_ = new std::string(s, len);
+}
+
+inline void value::clear() {
+  switch (type_) {
+#define DEINIT(p) case p##type: delete u_.p; break
+    DEINIT(string_);
+    DEINIT(array_);
+    DEINIT(object_);
+#undef DEINIT
+    default: break;
+  }
+}
+
+inline value::~value() {
+  clear();
+}
+
+inline value::value(const value& x) : type_(x.type_) {
+  switch (type_) {
+#define INIT(p, v) case p##type: u_.p = v; break
+    INIT(string_, new std::string(*x.u_.string_));
+    INIT(array_, new array(*x.u_.array_));
+    INIT(object_, new object(*x.u_.object_));
+#undef INIT
+    default:
+      u_ = x.u_;
+      break;
+  }
+}
+
+inline value& value::operator=(const value& x) {
+  if (this != &x) {
+    value t(x);
+    swap(t);
+  }
+  return *this;
+}
+
+#if PICOJSON_USE_RVALUE_REFERENCE
+inline value::value(value&& x)throw() : type_(null_type) {
+  swap(x);
+}
+inline value& value::operator=(value&& x)throw() {
+  swap(x);
+  return *this;
+}
+#endif
+inline void value::swap(value& x)throw() {
+  std::swap(type_, x.type_);
+  std::swap(u_, x.u_);
+}
+
+#define IS(ctype, jtype)                            \
+  template <> inline bool value::is<ctype>() const { \
+    return type_ == jtype##_type;                   \
+  }
+IS(null, null)
+IS(bool, boolean)
+#ifdef PICOJSON_USE_INT64
+IS(int64_t, int64)
+#endif
+IS(std::string, string)
+IS(array, array)
+IS(object, object)
+#undef IS
+template <> inline bool value::is<double>() const {
+  return type_ == number_type
+#ifdef PICOJSON_USE_INT64
+    || type_ == int64_type
+#endif
+    ;
+}
+
+#define GET(ctype, var)                                                \
+  template <> inline const ctype& value::get<ctype>() const {  \
+    PICOJSON_ASSERT("type mismatch! call is<type>() before get<type>()" \
+          && is<ctype>());                                     \
+    return var;                                                        \
+  }                                                            \
+  template <> inline ctype& value::get<ctype>() {              \
+    PICOJSON_ASSERT("type mismatch! call is<type>() before get<type>()"        \
+          && is<ctype>());                                     \
+    return var;                                                        \
+  }
+GET(bool, u_.boolean_)
+GET(std::string, *u_.string_)
+GET(array, *u_.array_)
+GET(object, *u_.object_)
+#ifdef PICOJSON_USE_INT64
+GET(double, (type_ == int64_type && (const_cast<value*>(this)->type_ = number_type, const_cast<value*>(this)->u_.number_ = u_.int64_), u_.number_))
+  GET(int64_t, u_.int64_)
+#else
+GET(double, u_.number_)
+#endif
+#undef GET
+
+#define SET(ctype, jtype, setter)           \
+  template <> inline void value::set<ctype>(const ctype &_val) {  \
+    clear();                      \
+    type_ = jtype##_type;         \
+    setter                        \
+  }
+SET(bool, boolean, u_.boolean_ = _val;)
+SET(std::string, string, u_.string_ = new std::string(_val);)
+SET(array, array, u_.array_ = new array(_val);)
+SET(object, object, u_.object_ = new object(_val);)
+SET(double, number, u_.number_ = _val;)
+#ifdef PICOJSON_USE_INT64
+SET(int64_t, int64, u_.int64_ = _val;)
+#endif
+#undef SET
+
+#if PICOJSON_USE_RVALUE_REFERENCE
+#define MOVESET(ctype, jtype, setter)       \
+  template <> inline void value::set<ctype>(ctype &&_val) {     \
+    clear();                      \
+    type_ = jtype##_type;         \
+    setter                        \
+  }
+MOVESET(std::string, string, u_.string_ = new std::string(std::move(_val));)
+MOVESET(array, array, u_.array_ = new array(std::move(_val));)
+MOVESET(object, object, u_.object_ = new object(std::move(_val));)
+#undef MOVESET
+#endif
+
+inline bool value::evaluate_as_boolean() const {
+  switch (type_) {
+    case null_type:
+      return false;
+    case boolean_type:
+      return u_.boolean_;
+    case number_type:
+      return u_.number_ != 0;
+#ifdef PICOJSON_USE_INT64
+    case int64_type:
+      return u_.int64_ != 0;
+#endif
+    case string_type:
+      return ! u_.string_->empty();
+    default:
+      return true;
+  }
+}
+
+inline const value& value::get(size_t idx) const {
+  static value s_null;
+  PICOJSON_ASSERT(is<array>());
+  return idx < u_.array_->size() ? (*u_.array_)[idx] : s_null;
+}
+
+inline value& value::get(size_t idx) {
+  static value s_null;
+  PICOJSON_ASSERT(is<array>());
+  return idx < u_.array_->size() ? (*u_.array_)[idx] : s_null;
+}
+
+inline const value& value::get(const std::string& key) const {
+  static value s_null;
+  PICOJSON_ASSERT(is<object>());
+  object::const_iterator i = u_.object_->find(key);
+  return i != u_.object_->end() ? i->second : s_null;
+}
+
+inline value& value::get(const std::string& key) {
+  static value s_null;
+  PICOJSON_ASSERT(is<object>());
+  object::iterator i = u_.object_->find(key);
+  return i != u_.object_->end() ? i->second : s_null;
+}
+
+inline bool value::contains(size_t idx) const {
+  PICOJSON_ASSERT(is<array>());
+  return idx < u_.array_->size();
+}
+
+inline bool value::contains(const std::string& key) const {
+  PICOJSON_ASSERT(is<object>());
+  object::const_iterator i = u_.object_->find(key);
+  return i != u_.object_->end();
+}
+
+inline std::string value::to_str() const {
+  switch (type_) {
+    case null_type:      return "null";
+    case boolean_type:   return u_.boolean_ ? "true" : "false";
+#ifdef PICOJSON_USE_INT64
+    case int64_type: {
+      char buf[sizeof("-9223372036854775808")];
+      SNPRINTF(buf, sizeof(buf), "%" PRId64, u_.int64_);
+      return buf;
+    }
+#endif
+    case number_type:    {
+      char buf[256];
+      double tmp;
+      SNPRINTF(buf, sizeof(buf), fabs(u_.number_) < (1ULL << 53) && modf(u_.number_, &tmp) == 0 ? "%.f" : "%.17g", u_.number_);
+#if PICOJSON_USE_LOCALE
+      char *decimal_point = localeconv()->decimal_point;
+      if (strcmp(decimal_point, ".") != 0) {
+        size_t decimal_point_len = strlen(decimal_point);
+        for (char *p = buf; *p != '\0'; ++p) {
+          if (strncmp(p, decimal_point, decimal_point_len) == 0) {
+            return std::string(buf, p) + "." + (p + decimal_point_len);
+          }
+        }
+      }
+#endif
+      return buf;
+    }
+    case string_type:    return *u_.string_;
+    case array_type:     return "array";
+    case object_type:    return "object";
+    default:             PICOJSON_ASSERT(0);
+#ifdef _MSC_VER
+      __assume(0);
+#endif
+  }
+  return std::string();
+}
+
+template <typename Iter> void copy(const std::string& s, Iter oi) {
+  std::copy(s.begin(), s.end(), oi);
+}
+
+template <typename Iter>
+struct serialize_str_char {
+  Iter oi;
+  void operator()(char c) {
+    switch (c) {
+#define MAP(val, sym) case val: copy(sym, oi); break
+      MAP('"', "\\\"");
+      MAP('\\', "\\\\");
+      MAP('/', "\\/");
+      MAP('\b', "\\b");
+      MAP('\f', "\\f");
+      MAP('\n', "\\n");
+      MAP('\r', "\\r");
+      MAP('\t', "\\t");
+#undef MAP
+      default:
+        if (static_cast<unsigned char>(c) < 0x20 || c == 0x7f) {
+          char buf[7];
+          SNPRINTF(buf, sizeof(buf), "\\u%04x", c & 0xff);
+          copy(buf, buf + 6, oi);
+        } else {
+          *oi++ = c;
+        }
+        break;
+    }
+  }
+};
+
+template <typename Iter> void serialize_str(const std::string& s, Iter oi) {
+  *oi++ = '"';
+  serialize_str_char<Iter> process_char = { oi };
+  std::for_each(s.begin(), s.end(), process_char);
+  *oi++ = '"';
+}
+
+template <typename Iter> void value::serialize(Iter oi, bool prettify) const {
+  return _serialize(oi, prettify ? 0 : -1);
+}
+
+inline std::string value::serialize(bool prettify) const {
+  return _serialize(prettify ? 0 : -1);
+}
+
+template <typename Iter> void value::_indent(Iter oi, int indent) {
+  *oi++ = '\n';
+  for (int i = 0; i < indent * INDENT_WIDTH; ++i) {
+    *oi++ = ' ';
+  }
+}
+
+template <typename Iter> void value::_serialize(Iter oi, int indent) const {
+  switch (type_) {
+    case string_type:
+      serialize_str(*u_.string_, oi);
+      break;
+    case array_type: {
+      *oi++ = '[';
+      if (indent != -1) {
+        ++indent;
+      }
+      for (array::const_iterator i = u_.array_->begin();
+           i != u_.array_->end();
+           ++i) {
+        if (i != u_.array_->begin()) {
+          *oi++ = ',';
+        }
+        if (indent != -1) {
+          _indent(oi, indent);
+        }
+        i->_serialize(oi, indent);
+      }
+      if (indent != -1) {
+        --indent;
+        if (! u_.array_->empty()) {
+          _indent(oi, indent);
+        }
+      }
+      *oi++ = ']';
+      break;
+    }
+    case object_type: {
+      *oi++ = '{';
+      if (indent != -1) {
+        ++indent;
+      }
+      for (object::const_iterator i = u_.object_->begin();
+           i != u_.object_->end();
+           ++i) {
+        if (i != u_.object_->begin()) {
+          *oi++ = ',';
+        }
+        if (indent != -1) {
+          _indent(oi, indent);
+        }
+        serialize_str(i->first, oi);
+        *oi++ = ':';
+        if (indent != -1) {
+          *oi++ = ' ';
+        }
+        i->second._serialize(oi, indent);
+      }
+      if (indent != -1) {
+        --indent;
+        if (! u_.object_->empty()) {
+          _indent(oi, indent);
+        }
+      }
+      *oi++ = '}';
+      break;
+    }
+    default:
+      copy(to_str(), oi);
+      break;
+  }
+  if (indent == 0) {
+    *oi++ = '\n';
+  }
+}
+
+inline std::string value::_serialize(int indent) const {
+  std::string s;
+  _serialize(std::back_inserter(s), indent);
+  return s;
+}
+
+template <typename Iter> class input {
+protected:
+  Iter cur_, end_;
+  bool consumed_;
+  int line_;
+public:
+  input(const Iter& first, const Iter& last) : cur_(first), end_(last), consumed_(false), line_(1) {}
+  int getc() {
+    if (consumed_) {
+      if (*cur_ == '\n') {
+        ++line_;
+      }
+      ++cur_;
+    }
+    if (cur_ == end_) {
+      consumed_ = false;
+      return -1;
+    }
+    consumed_ = true;
+    return *cur_ & 0xff;
+  }
+  void ungetc() {
+    consumed_ = false;
+  }
+  Iter cur() const {
+    if (consumed_) {
+      input<Iter> *self = const_cast<input<Iter>*>(this);
+      self->consumed_ = false;
+      ++self->cur_;
+    }
+    return cur_;
+  }
+  int line() const { return line_; }
+  void skip_ws() {
+    while (1) {
+      int ch = getc();
+      if (! (ch == ' ' || ch == '\t' || ch == '\n' || ch == '\r')) {
+        ungetc();
+        break;
+      }
+    }
+  }
+  bool expect(int expect) {
+    skip_ws();
+    if (getc() != expect) {
+      ungetc();
+      return false;
+    }
+    return true;
+  }
+  bool match(const std::string& pattern) {
+    for (std::string::const_iterator pi(pattern.begin());
+         pi != pattern.end();
+         ++pi) {
+      if (getc() != *pi) {
+        ungetc();
+        return false;
+      }
+    }
+    return true;
+  }
+};
+
+template<typename Iter> inline int _parse_quadhex(input<Iter> &in) {
+  int uni_ch = 0, hex;
+  for (int i = 0; i < 4; i++) {
+    if ((hex = in.getc()) == -1) {
+      return -1;
+    }
+    if ('0' <= hex && hex <= '9') {
+      hex -= '0';
+    } else if ('A' <= hex && hex <= 'F') {
+      hex -= 'A' - 0xa;
+    } else if ('a' <= hex && hex <= 'f') {
+      hex -= 'a' - 0xa;
+    } else {
+      in.ungetc();
+      return -1;
+    }
+    uni_ch = uni_ch * 16 + hex;
+  }
+  return uni_ch;
+}
+
+template<typename String, typename Iter> inline bool _parse_codepoint(String& out, input<Iter>& in) {
+  int uni_ch;
+  if ((uni_ch = _parse_quadhex(in)) == -1) {
+    return false;
+  }
+  if (0xd800 <= uni_ch && uni_ch <= 0xdfff) {
+    if (0xdc00 <= uni_ch) {
+      // a second 16-bit of a surrogate pair appeared
+      return false;
+    }
+    // first 16-bit of surrogate pair, get the next one
+    if (in.getc() != '\\' || in.getc() != 'u') {
+      in.ungetc();
+      return false;
+    }
+    int second = _parse_quadhex(in);
+    if (! (0xdc00 <= second && second <= 0xdfff)) {
+      return false;
+    }
+    uni_ch = ((uni_ch - 0xd800) << 10) | ((second - 0xdc00) & 0x3ff);
+    uni_ch += 0x10000;
+  }
+  if (uni_ch < 0x80) {
+    out.push_back(uni_ch);
+  } else {
+    if (uni_ch < 0x800) {
+      out.push_back(0xc0 | (uni_ch >> 6));
+    } else {
+      if (uni_ch < 0x10000) {
+        out.push_back(0xe0 | (uni_ch >> 12));
+      } else {
+        out.push_back(0xf0 | (uni_ch >> 18));
+        out.push_back(0x80 | ((uni_ch >> 12) & 0x3f));
+      }
+      out.push_back(0x80 | ((uni_ch >> 6) & 0x3f));
+    }
+    out.push_back(0x80 | (uni_ch & 0x3f));
+  }
+  return true;
+}
+
+template<typename String, typename Iter> inline bool _parse_string(String& out, input<Iter>& in) {
+  while (1) {
+    int ch = in.getc();
+    if (ch < ' ') {
+      in.ungetc();
+      return false;
+    } else if (ch == '"') {
+      return true;
+    } else if (ch == '\\') {
+      if ((ch = in.getc()) == -1) {
+        return false;
+      }
+      switch (ch) {
+#define MAP(sym, val) case sym: out.push_back(val); break
+        MAP('"', '\"');
+        MAP('\\', '\\');
+        MAP('/', '/');
+        MAP('b', '\b');
+        MAP('f', '\f');
+        MAP('n', '\n');
+        MAP('r', '\r');
+        MAP('t', '\t');
+#undef MAP
+        case 'u':
+          if (! _parse_codepoint(out, in)) {
+            return false;
+          }
+          break;
+        default:
+          return false;
+      }
+    } else {
+      out.push_back(ch);
+    }
+  }
+  return false;
+}
+
+template <typename Context, typename Iter> inline bool _parse_array(Context& ctx, input<Iter>& in) {
+  if (! ctx.parse_array_start()) {
+    return false;
+  }
+  size_t idx = 0;
+  if (in.expect(']')) {
+    return ctx.parse_array_stop(idx);
+  }
+  do {
+    if (! ctx.parse_array_item(in, idx)) {
+      return false;
+    }
+    idx++;
+  } while (in.expect(','));
+  return in.expect(']') && ctx.parse_array_stop(idx);
+}
+
+template <typename Context, typename Iter> inline bool _parse_object(Context& ctx, input<Iter>& in) {
+  if (! ctx.parse_object_start()) {
+    return false;
+  }
+  if (in.expect('}')) {
+    return true;
+  }
+  do {
+    std::string key;
+    if (! in.expect('"')
+        || ! _parse_string(key, in)
+        || ! in.expect(':')) {
+      return false;
+    }
+    if (! ctx.parse_object_item(in, key)) {
+      return false;
+    }
+  } while (in.expect(','));
+  return in.expect('}');
+}
+
+template <typename Iter> inline std::string _parse_number(input<Iter>& in) {
+  std::string num_str;
+  while (1) {
+    int ch = in.getc();
+    if (('0' <= ch && ch <= '9') || ch == '+' || ch == '-'
+        || ch == 'e' || ch == 'E') {
+      num_str.push_back(ch);
+    } else if (ch == '.') {
+#if PICOJSON_USE_LOCALE
+      num_str += localeconv()->decimal_point;
+#else
+      num_str.push_back('.');
+#endif
+    } else {
+      in.ungetc();
+      break;
+    }
+  }
+  return num_str;
+}
+
+template <typename Context, typename Iter> inline bool _parse(Context& ctx, input<Iter>& in) {
+  in.skip_ws();
+  int ch = in.getc();
+  switch (ch) {
+#define IS(ch, text, op) case ch: \
+      if (in.match(text) && op) { \
+       return true; \
+      } else { \
+       return false; \
+      }
+    IS('n', "ull", ctx.set_null());
+    IS('f', "alse", ctx.set_bool(false));
+    IS('t', "rue", ctx.set_bool(true));
+#undef IS
+    case '"':
+      return ctx.parse_string(in);
+    case '[':
+      return _parse_array(ctx, in);
+    case '{':
+      return _parse_object(ctx, in);
+    default:
+      if (('0' <= ch && ch <= '9') || ch == '-') {
+        double f;
+        char *endp;
+        in.ungetc();
+        std::string num_str = _parse_number(in);
+        if (num_str.empty()) {
+          return false;
+        }
+#ifdef PICOJSON_USE_INT64
+        {
+          errno = 0;
+          intmax_t ival = strtoimax(num_str.c_str(), &endp, 10);
+          if (errno == 0
+              && std::numeric_limits<int64_t>::min() <= ival
+              && ival <= std::numeric_limits<int64_t>::max()
+              && endp == num_str.c_str() + num_str.size()) {
+            ctx.set_int64(ival);
+            return true;
+          }
+        }
+#endif
+        f = strtod(num_str.c_str(), &endp);
+        if (endp == num_str.c_str() + num_str.size()) {
+          ctx.set_number(f);
+          return true;
+        }
+        return false;
+      }
+      break;
+  }
+  in.ungetc();
+  return false;
+}
+
+class deny_parse_context {
+public:
+  bool set_null() { return false; }
+  bool set_bool(bool) { return false; }
+#ifdef PICOJSON_USE_INT64
+  bool set_int64(int64_t) { return false; }
+#endif
+  bool set_number(double) { return false; }
+  template <typename Iter> bool parse_string(input<Iter>&) { return false; }
+  bool parse_array_start() { return false; }
+  template <typename Iter> bool parse_array_item(input<Iter>&, size_t) {
+    return false;
+  }
+  bool parse_array_stop(size_t) { return false; }
+  bool parse_object_start() { return false; }
+  template <typename Iter> bool parse_object_item(input<Iter>&, const std::string&) {
+    return false;
+  }
+};
+
+class default_parse_context {
+protected:
+  value* out_;
+public:
+  default_parse_context(value* out) : out_(out) {}
+  bool set_null() {
+    *out_ = value();
+    return true;
+  }
+  bool set_bool(bool b) {
+    *out_ = value(b);
+    return true;
+  }
+#ifdef PICOJSON_USE_INT64
+  bool set_int64(int64_t i) {
+      *out_ = value(i);
+      return true;
+    }
+#endif
+  bool set_number(double f) {
+    *out_ = value(f);
+    return true;
+  }
+  template<typename Iter> bool parse_string(input<Iter>& in) {
+    *out_ = value(string_type, false);
+    return _parse_string(out_->get<std::string>(), in);
+  }
+  bool parse_array_start() {
+    *out_ = value(array_type, false);
+    return true;
+  }
+  template <typename Iter> bool parse_array_item(input<Iter>& in, size_t) {
+    array& a = out_->get<array>();
+    a.push_back(value());
+    default_parse_context ctx(&a.back());
+    return _parse(ctx, in);
+  }
+  bool parse_array_stop(size_t) { return true; }
+  bool parse_object_start() {
+    *out_ = value(object_type, false);
+    return true;
+  }
+  template <typename Iter> bool parse_object_item(input<Iter>& in, const std::string& key) {
+    object& o = out_->get<object>();
+    default_parse_context ctx(&o[key]);
+    return _parse(ctx, in);
+  }
+private:
+  default_parse_context(const default_parse_context&);
+  default_parse_context& operator=(const default_parse_context&);
+};
+
+class null_parse_context {
+public:
+  struct dummy_str {
+    void push_back(int) {}
+  };
+public:
+  null_parse_context() {}
+  bool set_null() { return true; }
+  bool set_bool(bool) { return true; }
+#ifdef PICOJSON_USE_INT64
+  bool set_int64(int64_t) { return true; }
+#endif
+  bool set_number(double) { return true; }
+  template <typename Iter> bool parse_string(input<Iter>& in) {
+    dummy_str s;
+    return _parse_string(s, in);
+  }
+  bool parse_array_start() { return true; }
+  template <typename Iter> bool parse_array_item(input<Iter>& in, size_t) {
+    return _parse(*this, in);
+  }
+  bool parse_array_stop(size_t) { return true; }
+  bool parse_object_start() { return true; }
+  template <typename Iter> bool parse_object_item(input<Iter>& in, const std::string&) {
+    return _parse(*this, in);
+  }
+private:
+  null_parse_context(const null_parse_context&);
+  null_parse_context& operator=(const null_parse_context&);
+};
+
+// obsolete, use the version below
+template <typename Iter> inline std::string parse(value& out, Iter& pos, const Iter& last) {
+  std::string err;
+  pos = parse(out, pos, last, &err);
+  return err;
+}
+
+template <typename Context, typename Iter> inline Iter _parse(Context& ctx, const Iter& first, const Iter& last, std::string* err) {
+  input<Iter> in(first, last);
+  if (! _parse(ctx, in) && err != NULL) {
+    char buf[64];
+    SNPRINTF(buf, sizeof(buf), "syntax error at line %d near: ", in.line());
+    *err = buf;
+    while (1) {
+      int ch = in.getc();
+      if (ch == -1 || ch == '\n') {
+        break;
+      } else if (ch >= ' ') {
+        err->push_back(ch);
+      }
+    }
+  }
+  return in.cur();
+}
+
+template <typename Iter> inline Iter parse(value& out, const Iter& first, const Iter& last, std::string* err) {
+  default_parse_context ctx(&out);
+  return _parse(ctx, first, last, err);
+}
+
+inline std::string parse(value& out, const std::string& s) {
+  std::string err;
+  parse(out, s.begin(), s.end(), &err);
+  return err;
+}
+
+inline std::string parse(value& out, std::istream& is) {
+  std::string err;
+  parse(out, std::istreambuf_iterator<char>(is.rdbuf()),
+        std::istreambuf_iterator<char>(), &err);
+  return err;
+}
+
+template <typename T> struct last_error_t {
+  static std::string s;
+};
+template <typename T> std::string last_error_t<T>::s;
+
+inline void set_last_error(const std::string& s) {
+  last_error_t<bool>::s = s;
+}
+
+inline const std::string& get_last_error() {
+  return last_error_t<bool>::s;
+}
+
+inline bool operator==(const value& x, const value& y) {
+  if (x.is<null>())
+    return y.is<null>();
+#define PICOJSON_CMP(type)                                     \
+    if (x.is<type>())                                          \
+      return y.is<type>() && x.get<type>() == y.get<type>()
+  PICOJSON_CMP(bool);
+  PICOJSON_CMP(double);
+  PICOJSON_CMP(std::string);
+  PICOJSON_CMP(array);
+  PICOJSON_CMP(object);
+#undef PICOJSON_CMP
+  PICOJSON_ASSERT(0);
+#ifdef _MSC_VER
+  __assume(0);
+#endif
+  return false;
+}
+
+inline bool operator!=(const value& x, const value& y) {
+  return ! (x == y);
+}
+}
+
+#if !PICOJSON_USE_RVALUE_REFERENCE
+namespace std {
+  template<> inline void swap(picojson::value& x, picojson::value& y)
+    {
+      x.swap(y);
+    }
+}
+#endif
+
+inline std::istream& operator>>(std::istream& is, picojson::value& x)
+{
+  picojson::set_last_error(std::string());
+  std::string err = picojson::parse(x, is);
+  if (! err.empty()) {
+    picojson::set_last_error(err);
+    is.setstate(std::ios::failbit);
+  }
+  return is;
+}
+
+inline std::ostream& operator<<(std::ostream& os, const picojson::value& x)
+{
+  x.serialize(std::ostream_iterator<char>(os));
+  return os;
+}
+#ifdef _MSC_VER
+#pragma warning(pop)
+#endif
+
+#endif
diff --git a/examples/reflection-demo/reflection-example.cpp b/examples/reflection-demo/reflection-example.cpp
new file mode 100644 (file)
index 0000000..3bf189f
--- /dev/null
@@ -0,0 +1,675 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/actors/camera-actor-devel.h>
+#include <dali/devel-api/adaptor-framework/file-stream.h>
+
+#include <map>
+
+#include "gltf-scene.h"
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+  attribute mediump vec3 aPosition;\n
+  attribute mediump vec3 aNormal;\n
+  attribute mediump vec2 aTexCoord;\n
+  uniform mediump mat4 uMvpMatrix;\n
+  uniform mediump mat3 uNormalMatrix;\n
+  uniform mediump vec3 uSize;\n
+  \n
+  varying mediump vec2 vTexCoord; \n
+  varying mediump vec3 vNormal; \n
+  varying mediump vec3 vPosition; \n
+  void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  vTexCoord = aTexCoord;\n
+  vNormal = normalize(uNormalMatrix * aNormal);\n
+  vPosition = aPosition; \n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+  uniform lowp vec4 uColor;\n
+  uniform sampler2D sTexture; \n
+  varying mediump vec3 vNormal;\n
+  varying mediump vec3 vPosition; \n
+  varying mediump vec2 vTexCoord; \n
+  \n
+  void main()\n
+{\n
+  gl_FragColor = texture2D(sTexture, vTexCoord) * 50.0;\n
+}\n
+);
+
+const char* FRAGMENT_SIMPLE_SHADER = DALI_COMPOSE_SHADER(
+        uniform lowp vec4 uColor;\n
+        uniform sampler2D sTexture; \n
+        varying mediump vec3 vNormal;\n
+        varying mediump vec3 vPosition; \n
+        varying mediump vec2 vTexCoord; \n
+        \n
+        void main()\n
+{\n
+        gl_FragColor = texture2D(sTexture, vTexCoord) * 2.0;\n
+}\n
+);
+
+const char* TEXTURED_FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+  uniform lowp vec4 uColor;\n
+  uniform sampler2D sTexture; \n
+  uniform mediump vec2 uScreenSize;\n
+
+  uniform mediump vec3 eyePos;\n
+  uniform mediump vec3 lightDir;\n
+
+  varying mediump vec3 vNormal;\n
+  varying mediump vec3 vPosition; \n
+  varying mediump vec2 vTexCoord; \n
+  \n
+  void main()\n
+{\n
+  mediump vec3 n = normalize( vNormal );\n
+  mediump vec3 l = normalize( lightDir );\n
+  mediump vec3 e = normalize( eyePos );\n
+  mediump float intensity = max(dot(n,l), 0.0);\n
+  gl_FragColor = texture2D(sTexture, vTexCoord) * intensity;\n
+}\n
+);
+
+const char* PLASMA_FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+  precision mediump float;\n
+  uniform sampler2D sTexture; \n
+
+  uniform float uTime;
+  uniform float uKFactor;
+  uniform mediump vec3 eyePos;\n
+  uniform mediump vec3 lightDir;\n
+  varying mediump vec3 vNormal;\n
+  varying mediump vec3 vPosition; \n
+  varying mediump vec2 vTexCoord; \n
+  \n
+  void main()\n
+{\n
+  mediump vec3 n = normalize( vNormal );\n
+  mediump vec3 l = normalize( lightDir );\n
+  mediump vec3 e = normalize( eyePos );\n
+  mediump float intensity = max(dot(n,l), 0.0);\n
+\n
+  const mediump float PI = 3.1415926535897932384626433832795;\n
+  mediump float v = 0.0;\n
+  mediump vec2 c = vTexCoord * uKFactor - uKFactor/2.0;\n
+  v += sin((c.x+uTime));\n
+  v += sin((c.y+uTime)/2.0);\n
+  v += sin((c.x+c.y+uTime)/2.0);\n
+  c += uKFactor/2.0 * vec2(sin(uTime/3.0), cos(uTime/2.0));\n
+  v += sin(sqrt(c.x*c.x+c.y*c.y+1.0)+uTime);\n
+  v = v/2.0;\n
+  mediump vec3 col = vec3(1, sin(PI*v), cos(PI*v));\n
+  gl_FragColor = (texture2D(sTexture, vTexCoord)) * (((col.r+col.g+col.b)/3.0)+1.0+intensity);\n
+}\n
+);
+
+const char* TEX_FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+  uniform lowp vec4 uColor;\n
+  uniform sampler2D sTexture0; \n
+  uniform sampler2D sTexture1; \n
+  uniform mediump vec3 eyePos;\n
+  uniform mediump vec3 lightDir;\n
+  uniform mediump vec2 uScreenSize;\n
+  varying mediump vec3 vNormal;\n
+  varying mediump vec3 vPosition; \n
+  varying mediump vec2 vTexCoord; \n
+  \n
+
+  mediump float rand(mediump vec2 co){\n
+    return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453);\n
+  }\n
+  \n
+  void main()\n
+{\n
+  mediump vec2 tx = (gl_FragCoord.xy / uScreenSize.xy);\n
+  mediump vec3 n = normalize( vNormal );\n
+  mediump vec3 l = normalize( lightDir );\n
+  mediump vec3 e = normalize( eyePos );\n
+  mediump float factor = gl_FragCoord.y / uScreenSize.y;\n
+  mediump float intensity = max(dot(n,l), 0.0);\n
+  mediump vec2 uv = tx;\n
+  gl_FragColor = ((texture2D(sTexture0, vTexCoord) * factor ) + \n
+                 (texture2D(sTexture1, uv))) * intensity;\n
+}\n
+);
+
+struct Model
+{
+  Shader    shader;
+  Geometry  geometry;
+};
+
+// This example shows how to create and display mirrored reflection using CameraActor
+//
+class ReflectionExample : public ConnectionTracker
+{
+public:
+
+  ReflectionExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ReflectionExample::Create );
+  }
+
+  ~ReflectionExample() = default;
+
+private:
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    uint32_t stageWidth  = uint32_t(stage.GetSize().x);
+    uint32_t stageHeight = uint32_t(stage.GetSize().y);
+
+    stage.GetRenderTaskList().GetTask(0).SetClearEnabled(false);
+    mLayer3D = Layer::New();
+    mLayer3D.SetSize( stageWidth, stageHeight );
+    stage.Add(mLayer3D);
+
+    mLayer3D.SetAnchorPoint( AnchorPoint::CENTER );
+    mLayer3D.SetParentOrigin( ParentOrigin::CENTER );
+    mLayer3D.SetBehavior( Layer::LAYER_3D );
+    mLayer3D.SetDepthTestDisabled( false );
+
+
+    auto gltf = glTF(DEMO_GAME_DIR "/reflection");
+
+    // Define direction of light
+    mLightDir = Vector3( 0.5, 0.5, -1 );
+
+    /**
+     * Instantiate texture sets
+     */
+    CreateTextureSetsFromGLTF( &gltf, DEMO_GAME_DIR );
+
+    /**
+     * Create models
+     */
+    CreateModelsFromGLTF( &gltf );
+
+    /**
+     * Create scene nodes
+     */
+    CreateSceneFromGLTF( stage, &gltf );
+
+    auto planeActor = mLayer3D.FindChildByName( "Plane" );
+    auto solarActor = mLayer3D.FindChildByName( "solar_root" );
+    auto backgroundActor = mLayer3D.FindChildByName( "background" );
+    ReplaceShader( backgroundActor, VERTEX_SHADER, FRAGMENT_SIMPLE_SHADER );
+    mCenterActor = mLayer3D.FindChildByName( "center" );
+    mCenterHorizActor = mLayer3D.FindChildByName( "center2" );
+
+    // Prepare Sun
+    auto sun = mLayer3D.FindChildByName( "sun" );
+    ReplaceShader( sun, VERTEX_SHADER, PLASMA_FRAGMENT_SHADER );
+    mSunTimeUniformIndex = sun.RegisterProperty( "uTime", 0.0f );
+    mSunKFactorUniformIndex = sun.RegisterProperty( "uKFactor", 0.0f );
+
+    mTickTimer = Timer::New( 16 );
+    mTickTimer.TickSignal().Connect( this, &ReflectionExample::TickTimerSignal);
+
+    // Milkyway
+    auto milkyway = mLayer3D.FindChildByName( "milkyway" );
+    ReplaceShader( milkyway, VERTEX_SHADER, FRAGMENT_SHADER );
+
+    auto renderTaskSourceActor = mLayer3D.FindChildByName( "RenderTaskSource" );
+
+    /**
+     * Access camera (it's a child of "Camera" node)
+     */
+    auto camera = mLayer3D.FindChildByName( "Camera_Orientation" );
+    auto cameraRef = mLayer3D.FindChildByName( "CameraReflection_Orientation" );
+
+    auto cameraActor = CameraActor::DownCast( camera );
+    mCamera3D = cameraActor;
+
+    auto cameraRefActor = CameraActor::DownCast( cameraRef );
+    cameraRefActor.SetProperty( DevelCameraActor::Property::REFLECTION_PLANE, Vector4(0.0f, -1.0f, 0.0f, 0.0f));
+    mReflectionCamera3D = cameraRefActor;
+
+    auto task3D = stage.GetRenderTaskList().CreateTask();
+    task3D.SetSourceActor( mLayer3D );
+    task3D.SetViewport( Rect<int>(0, 0, stageWidth, stageHeight ) );
+    task3D.SetCameraActor( cameraActor );
+    task3D.SetClearColor( Color::BLACK );
+    task3D.SetClearEnabled( true );
+    task3D.SetExclusive( false );
+    task3D.SetCameraActor( cameraActor );
+
+    /**
+     * Change shader to textured
+     */
+    Shader texShader = CreateShader( VERTEX_SHADER, TEX_FRAGMENT_SHADER );
+    planeActor.RegisterProperty( "uScreenSize", Vector2(stageWidth, stageHeight) );
+    auto renderer = planeActor.GetRendererAt(0);
+    auto textureSet = renderer.GetTextures();
+    renderer.SetShader( texShader );
+
+    Texture fbTexture = Texture::New(TextureType::TEXTURE_2D, Pixel::Format::RGBA8888, stageWidth, stageHeight );
+    textureSet.SetTexture( 1u, fbTexture );
+
+    auto fb = FrameBuffer::New(stageWidth, stageHeight,
+                               FrameBuffer::Attachment::DEPTH );
+
+    fb.AttachColorTexture( fbTexture );
+
+    auto renderTask = stage.GetRenderTaskList().CreateTask();
+    renderTask.SetFrameBuffer( fb );
+    renderTask.SetSourceActor( renderTaskSourceActor );
+    renderTask.SetViewport( Rect<int>(0, 0, stageWidth, stageHeight ) );
+    renderTask.SetCameraActor( cameraRefActor );
+    renderTask.SetClearColor( Color::BLACK );
+    renderTask.SetClearEnabled( true );
+    renderTask.SetExclusive( false );
+
+    mAnimation = Animation::New(30.0f );
+    mAnimation.AnimateBy(Property(solarActor, Actor::Property::ORIENTATION ),
+                         Quaternion( Degree(359), Vector3(0.0, 1.0, 0.0)));
+    mAnimation.AnimateBy(Property(milkyway, Actor::Property::ORIENTATION ),
+                         Quaternion( Degree(-359), Vector3(0.0, 1.0, 0.0)));
+    mAnimation.SetLooping(true );
+    mAnimation.Play();
+
+    Actor panScreen = Actor::New();
+    auto stageSize = stage.GetSize();
+    panScreen.SetSize( stageSize.width, stageSize.height );
+    panScreen.SetAnchorPoint( AnchorPoint::CENTER );
+    panScreen.SetParentOrigin( ParentOrigin::CENTER );
+    auto camera2d = stage.GetRenderTaskList().GetTask(0).GetCameraActor();
+    panScreen.SetPosition( 0, 0, camera2d.GetNearClippingPlane() );
+    camera2d.Add(panScreen);
+    camera2d.RotateBy( Degree(180.0f), Vector3( 0.0, 1.0, 0.0 ) );
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.Attach( panScreen );
+    mPanGestureDetector.DetectedSignal().Connect( this, &ReflectionExample::OnPan );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &ReflectionExample::OnKeyEvent );
+
+    mTickTimer.Start();
+  }
+
+  void CreateSceneFromGLTF( Stage stage, glTF* gltf )
+  {
+    const auto& nodes = gltf->GetNodes();
+
+    // for each node create nodes and children
+    // resolve parents later
+    std::vector<Actor> actors;
+    actors.reserve( nodes.size() );
+    for( const auto& node : nodes )
+    {
+      auto actor = node.cameraId != 0xffffffff ? CameraActor::New( stage.GetSize() ) : Actor::New();
+
+      actor.SetSize( 1, 1, 1 );
+      actor.SetName( node.name );
+      actor.SetAnchorPoint( AnchorPoint::CENTER );
+      actor.SetParentOrigin( ParentOrigin::CENTER );
+      actor.SetPosition( node.translation[0], node.translation[1], node.translation[2] );
+      actor.SetScale( node.scale[0], node.scale[1], node.scale[2] );
+      actor.SetOrientation( Quaternion(node.rotationQuaternion[3],
+                                       node.rotationQuaternion[0],
+                                       node.rotationQuaternion[1],
+                                       node.rotationQuaternion[2]));
+
+      actors.emplace_back( actor );
+
+      // Initially add each actor to the very first one
+      if(actors.size() > 1)
+      {
+        actors[0].Add(actor);
+      }
+
+      // If mesh, create and add renderer
+      if(node.meshId != 0xffffffff)
+      {
+        const auto& model = mModels[node.meshId].get();
+        auto renderer = Renderer::New( model->geometry, model->shader );
+
+        // if textured, add texture set
+        auto materialId = gltf->GetMeshes()[node.meshId]->material;
+        if( materialId != 0xffffffff )
+        {
+          if( gltf->GetMaterials()[materialId].pbrMetallicRoughness.enabled )
+          {
+            renderer.SetTextures( mTextureSets[materialId] );
+          }
+        }
+
+        actor.AddRenderer( renderer );
+      }
+
+      // Reset and attach main camera
+      if( node.cameraId != 0xffffffff )
+      {
+        mCameraPos = Vector3(node.translation[0], node.translation[1], node.translation[2]);
+        auto quatY = Quaternion( Degree(180.0f), Vector3( 0.0, 1.0, 0.0) );
+        auto cameraActor = CameraActor::DownCast( actor );
+        cameraActor.SetOrientation( Quaternion(node.rotationQuaternion[3],
+                                               node.rotationQuaternion[0],
+                                               node.rotationQuaternion[1],
+                                               node.rotationQuaternion[2] )
+                                    * quatY
+                                      );
+        cameraActor.SetProjectionMode( Camera::PERSPECTIVE_PROJECTION );
+
+        const auto camera = gltf->GetCameras()[node.cameraId];
+        cameraActor.SetNearClippingPlane( camera->znear );
+        cameraActor.SetFarClippingPlane( camera->zfar );
+        cameraActor.SetFieldOfView( camera->yfov );
+
+        cameraActor.SetProperty( CameraActor::Property::INVERT_Y_AXIS, true);
+        cameraActor.SetAnchorPoint( AnchorPoint::CENTER );
+        cameraActor.SetParentOrigin( ParentOrigin::CENTER );
+
+        mCameras.emplace_back( cameraActor );
+      }
+    }
+
+    // Resolve hierarchy dependencies
+    auto i = 0u;
+    for( const auto& node : nodes )
+    {
+      if(!node.children.empty())
+      {
+        for(const auto& childId : node.children)
+        {
+          actors[i].Add( actors[childId+1] );
+        }
+      }
+      ++i;
+    }
+
+    mActors = std::move(actors);
+
+    // Add root actor to the stage
+    mLayer3D.Add( mActors[0] );
+
+    for( auto& actor : mActors )
+    {
+      actor.RegisterProperty( "lightDir", mLightDir );
+      actor.RegisterProperty( "eyePos", mCameraPos );
+    }
+
+  }
+
+  /**
+   * Creates models from glTF
+   */
+  void CreateModelsFromGLTF( glTF* gltf )
+  {
+    const auto& meshes = gltf->GetMeshes();
+    for( const auto& mesh : meshes )
+    {
+      // change shader to use texture if material indicates that
+      if(mesh->material != 0xffffffff && gltf->GetMaterials()[mesh->material].pbrMetallicRoughness.enabled)
+      {
+        mModels.emplace_back( CreateModel( *gltf, mesh, VERTEX_SHADER, TEXTURED_FRAGMENT_SHADER ) );
+      }
+      else
+      {
+        mModels.emplace_back( CreateModel( *gltf, mesh, VERTEX_SHADER, FRAGMENT_SHADER ) );
+      }
+    }
+  }
+
+  void CreateTextureSetsFromGLTF( glTF* gltf, const std::string& basePath )
+  {
+    const auto& materials = gltf->GetMaterials();
+    const auto& textures = gltf->GetTextures();
+
+    std::map<std::string, Texture> textureCache{};
+
+    for(const auto& material : materials )
+    {
+      TextureSet textureSet;
+      if(material.pbrMetallicRoughness.enabled)
+      {
+        textureSet = TextureSet::New();
+        std::string filename( basePath );
+        filename += '/';
+        filename += textures[material.pbrMetallicRoughness.baseTextureColor.index].uri;
+        Dali::PixelData pixelData = Dali::Toolkit::SyncImageLoader::Load( filename );
+
+        auto cacheKey = textures[material.pbrMetallicRoughness.baseTextureColor.index].uri;
+        auto iter = textureCache.find(cacheKey);
+        Texture texture;
+        if(iter == textureCache.end())
+        {
+          texture = Texture::New(TextureType::TEXTURE_2D, pixelData.GetPixelFormat(), pixelData.GetWidth(),
+                                         pixelData.GetHeight());
+          texture.Upload(pixelData);
+          texture.GenerateMipmaps();
+          textureCache[cacheKey] = texture;
+        }
+        else
+        {
+          texture = iter->second;
+        }
+        textureSet.SetTexture( 0, texture );
+        Dali::Sampler sampler = Dali::Sampler::New();
+        sampler.SetWrapMode( Dali::WrapMode::REPEAT, Dali::WrapMode::REPEAT, Dali::WrapMode::REPEAT );
+        sampler.SetFilterMode( Dali::FilterMode::LINEAR_MIPMAP_LINEAR, Dali::FilterMode::LINEAR );
+        textureSet.SetSampler( 0, sampler );
+      }
+      mTextureSets.emplace_back( textureSet );
+    }
+  }
+
+  template<class T>
+  bool LoadFile( const std::string& filename, std::vector<T>& bytes )
+  {
+    Dali::FileStream fileStream( filename, Dali::FileStream::READ | Dali::FileStream::BINARY );
+    FILE* fin = fileStream.GetFile();
+
+    if( fin )
+    {
+      if( fseek( fin, 0, SEEK_END ) )
+      {
+        return false;
+      }
+      bytes.resize( uint32_t(ftell( fin )) );
+      std::fill( bytes.begin(), bytes.end(), 0 );
+      if( fseek( fin, 0, SEEK_SET ) )
+      {
+        return false;
+      }
+      size_t result = fread( bytes.data(), 1, bytes.size(), fin );
+      return ( result != 0 );
+    }
+
+    return false;
+  }
+
+  Shader CreateShader( const std::string& vsh, const std::string& fsh )
+  {
+    std::vector<char> vshShaderSource;
+    std::vector<char> fshShaderSource;
+
+    // VSH
+    if(vsh[0] == '/')
+    {
+      std::string vshPath( DEMO_GAME_DIR );
+      vshPath += '/';
+      vshPath += vsh;
+      LoadFile( vshPath, vshShaderSource );
+    }
+    else
+    {
+      vshShaderSource.insert(vshShaderSource.end(), vsh.begin(), vsh.end());
+    }
+
+    // FSH
+    if(fsh[0] == '/')
+    {
+      std::string fshPath( DEMO_GAME_DIR );
+      fshPath += '/';
+      fshPath += fsh;
+      LoadFile( fshPath, fshShaderSource );
+    }
+    else
+    {
+      fshShaderSource.insert(fshShaderSource.end(), fsh.begin(), fsh.end());
+    }
+
+    vshShaderSource.emplace_back(0);
+    fshShaderSource.emplace_back(0);
+    return Shader::New( std::string(vshShaderSource.data()), std::string(fshShaderSource.data()) );
+  }
+
+  std::unique_ptr<Model> CreateModel( glTF& gltf,
+                                      const glTF_Mesh* mesh,
+                                      const std::string& vertexShaderSource,
+                                      const std::string& fragmentShaderSource )
+  {
+    /*
+     * Obtain interleaved buffer for first mesh with position and normal attributes
+     */
+    auto positionBuffer = gltf.GetMeshAttributeBuffer( *mesh,
+                                                       {
+                                                         glTFAttributeType::POSITION,
+                                                         glTFAttributeType::NORMAL,
+                                                         glTFAttributeType::TEXCOORD_0
+                                                       } );
+
+    auto attributeCount = gltf.GetMeshAttributeCount( mesh );
+    /**
+     * Create matching property buffer
+     */
+    auto vertexBuffer = PropertyBuffer::New( Property::Map()
+                                               .Add("aPosition", Property::VECTOR3 )
+                                               .Add("aNormal", Property::VECTOR3)
+                                               .Add("aTexCoord", Property::VECTOR2)
+    );
+
+    // set vertex data
+    vertexBuffer.SetData( positionBuffer.data(), attributeCount );
+
+    auto geometry = Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    auto indexBuffer = gltf.GetMeshIndexBuffer( mesh );
+    geometry.SetIndexBuffer( indexBuffer.data(), indexBuffer.size() );
+    geometry.SetType( Geometry::Type::TRIANGLES );
+    std::unique_ptr<Model> retval( new Model() );
+    retval->shader = CreateShader( vertexShaderSource, fragmentShaderSource );
+    retval->geometry = geometry;
+    return retval;
+  }
+
+  void ReplaceShader( Actor& actor, const std::string& vsh, const std::string& fsh )
+  {
+    auto renderer = actor.GetRendererAt(0);
+    auto shader = CreateShader(vsh, fsh);
+    renderer.SetShader( shader );
+  }
+
+  void OnPan( Actor actor, const PanGesture& panGesture )
+  {
+    auto displacement = panGesture.screenDisplacement;
+    mCenterActor.RotateBy( Degree( displacement.y *0.1f ), Vector3( 0.0, 0.0, 1.0) );
+    mCenterActor.RotateBy( Degree( displacement.x *0.1f ), Vector3( 0.0, 1.0, 0.0) );
+    Quaternion q;
+    mCenterActor.GetProperty( Actor::Property::ORIENTATION ).Get(q);
+    Matrix m = Matrix::IDENTITY;
+    m.SetTransformComponents( Vector3::ONE, q, Vector3::ZERO );
+    auto yAxis = m.GetYAxis() * -1.0f;
+
+    yAxis.Normalize();
+    mReflectionCamera3D.SetProperty( DevelCameraActor::Property::REFLECTION_PLANE, Vector4(yAxis.x, yAxis.y, yAxis.z, 0.0f));
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  bool TickTimerSignal()
+  {
+    auto root = mLayer3D;
+    static float rotationAngle = 0.0f;
+
+    const auto ROTATION_ANGLE_STEP = 0.05f;
+    const auto FRAME_DELTA_TIME = 0.016f;
+    const auto PLASMA_K_FACTOR = 12.0f; // 'granularity' of plasma effect
+
+    rotationAngle += ROTATION_ANGLE_STEP;
+    mMockTime += FRAME_DELTA_TIME;
+    mKFactor = PLASMA_K_FACTOR;
+
+    auto sun = root.FindChildByName( "sun" );
+    sun.SetProperty( mSunTimeUniformIndex, mMockTime );
+    sun.SetProperty( mSunKFactorUniformIndex, mKFactor );
+    sun.SetOrientation( Quaternion( Radian(Degree(rotationAngle)), Vector3(0.0, 1.0, 0.0)));
+    return true;
+  }
+
+private:
+
+  Application&  mApplication;
+
+  Layer mLayer3D{};
+
+  std::vector<Actor>                      mActors {};
+  std::vector<CameraActor>                mCameras {};
+  std::vector<std::unique_ptr<Model>>     mModels {};
+  std::vector<TextureSet>                 mTextureSets {};
+
+  Animation mAnimation {};
+  float mMockTime { 0.0f };
+  float mKFactor { 0.0f };
+  Property::Index mSunTimeUniformIndex {};
+  Property::Index mSunKFactorUniformIndex {};
+  PanGestureDetector mPanGestureDetector {};
+
+  Vector3 mCameraPos { Vector3::ZERO };
+  Vector3 mLightDir { Vector3::ZERO };
+  Timer mTickTimer {};
+
+  CameraActor mCamera3D {};
+  CameraActor mReflectionCamera3D {};
+  Actor mCenterActor {};
+  Actor mCenterHorizActor {};
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ReflectionExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/refraction-effect/refraction-effect-example.cpp b/examples/refraction-effect/refraction-effect-example.cpp
new file mode 100644 (file)
index 0000000..bd2a0d3
--- /dev/null
@@ -0,0 +1,605 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/integration-api/debug.h>
+#include <dali/devel-api/adaptor-framework/file-loader.h>
+
+#include <sstream>
+#include <limits>
+#include <cctype>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+#include "shared/utility.h"
+
+using namespace Dali;
+
+namespace
+{
+const char * const APPLICATION_TITLE( "Refraction Effect" );
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const CHANGE_TEXTURE_ICON( DEMO_IMAGE_DIR "icon-change.png" );
+const char * const CHANGE_TEXTURE_ICON_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char * const CHANGE_MESH_ICON( DEMO_IMAGE_DIR "icon-replace.png" );
+const char * const CHANGE_MESH_ICON_SELECTED( DEMO_IMAGE_DIR "icon-replace-selected.png" );
+
+const char* MESH_FILES[] =
+{
+ DEMO_MODEL_DIR "surface_pattern_v01.obj",
+ DEMO_MODEL_DIR "surface_pattern_v02.obj"
+};
+const unsigned int NUM_MESH_FILES( sizeof( MESH_FILES ) / sizeof( MESH_FILES[0] ) );
+
+const char* TEXTURE_IMAGES[]=
+{
+  DEMO_IMAGE_DIR "background-1.jpg",
+  DEMO_IMAGE_DIR "background-2.jpg",
+  DEMO_IMAGE_DIR "background-3.jpg",
+  DEMO_IMAGE_DIR "background-4.jpg"
+};
+const unsigned int NUM_TEXTURE_IMAGES( sizeof( TEXTURE_IMAGES ) / sizeof( TEXTURE_IMAGES[0] ) );
+
+struct LightOffsetConstraint
+{
+  LightOffsetConstraint( float radius )
+  : mRadius( radius )
+  {
+  }
+
+  void operator()( Vector2& current, const PropertyInputContainer& inputs )
+  {
+    float spinAngle = inputs[0]->GetFloat();
+    current.x = cos( spinAngle );
+    current.y = sin( spinAngle );
+
+    current *= mRadius;
+  }
+
+  float mRadius;
+};
+
+/**
+ * structure of the vertex in the mesh
+ */
+struct Vertex
+{
+  Vector3 position;
+  Vector3 normal;
+  Vector2 textureCoord;
+
+  Vertex()
+  {}
+
+  Vertex( const Vector3& position, const Vector3& normal, const Vector2& textureCoord )
+  : position( position ), normal( normal ), textureCoord( textureCoord )
+  {}
+};
+
+/************************************************************************************************
+ *** The shader source is used when the MeshActor is not touched***
+ ************************************************************************************************/
+const char* VERTEX_SHADER_FLAT = DALI_COMPOSE_SHADER(
+attribute mediump vec3    aPosition;\n
+attribute mediump vec3    aNormal;\n
+attribute highp   vec2    aTexCoord;\n
+uniform   mediump mat4    uMvpMatrix;\n
+varying   mediump vec2    vTexCoord;\n
+void main()\n
+{\n
+  gl_Position = uMvpMatrix * vec4( aPosition.xy, 0.0, 1.0 );\n
+  vTexCoord = aTexCoord.xy;\n
+}\n
+);
+
+const char* FRAGMENT_SHADER_FLAT = DALI_COMPOSE_SHADER(
+uniform lowp    vec4  uColor;\n
+uniform sampler2D     sTexture;\n
+varying mediump vec2  vTexCoord;\n
+void main()\n
+{\n
+  gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n
+}\n
+);
+
+/************************************************************
+ ** Custom refraction effect shader***************************
+ ************************************************************/
+const char* VERTEX_SHADER_REFRACTION = DALI_COMPOSE_SHADER(
+attribute mediump vec3    aPosition;\n
+attribute mediump vec3    aNormal;\n
+attribute highp   vec2    aTexCoord;\n
+uniform   mediump mat4    uMvpMatrix;\n
+varying   mediump vec4    vVertex;\n
+varying   mediump vec3    vNormal;\n
+varying   mediump vec2    vTexCoord;\n
+varying   mediump vec2    vTextureOffset;\n
+void main()\n
+{\n
+  gl_Position = uMvpMatrix * vec4( aPosition.xy, 0.0, 1.0 );\n
+  vTexCoord = aTexCoord.xy;\n
+
+  vNormal = aNormal;\n
+  vVertex = vec4( aPosition, 1.0 );\n
+  float length = max(0.01, length(aNormal.xy)) * 40.0;\n
+  vTextureOffset = aNormal.xy / length;\n
+}\n
+);
+
+const char* FRAGMENT_SHADER_REFRACTION = DALI_COMPOSE_SHADER(
+precision mediump float;\n
+uniform   mediump float  uEffectStrength;\n
+uniform   mediump vec3   uLightPosition;\n
+uniform   mediump vec2   uLightXYOffset;\n
+uniform   mediump vec2   uLightSpinOffset;\n
+uniform   mediump float  uLightIntensity;\n
+uniform   lowp    vec4   uColor;\n
+uniform   sampler2D      sTexture;\n
+varying   mediump vec4   vVertex;\n
+varying   mediump vec3   vNormal;\n
+varying   mediump vec2   vTexCoord;\n
+varying   mediump vec2   vTextureOffset;\n
+
+vec3 rgb2hsl(vec3 rgb)\n
+{\n
+  float epsilon = 1.0e-10;\n
+  vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\n
+  vec4 P = mix(vec4(rgb.bg, K.wz), vec4(rgb.gb, K.xy), step(rgb.b, rgb.g));\n
+  vec4 Q = mix(vec4(P.xyw, rgb.r), vec4(rgb.r, P.yzx), step(P.x, rgb.r));\n
+  \n
+  // RGB -> HCV
+  float value = Q.x;\n
+  float chroma = Q.x - min(Q.w, Q.y);\n
+  float hue = abs(Q.z + (Q.w-Q.y) / (6.0*chroma+epsilon));\n
+  // HCV -> HSL
+  float lightness = value - chroma*0.5;\n
+  return vec3( hue, chroma/max( 1.0-abs(lightness*2.0-1.0), 1.0e-1 ), lightness );\n
+}\n
+
+vec3 hsl2rgb( vec3 hsl )\n
+{\n
+  // pure hue->RGB
+  vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\n
+  vec3 p = abs(fract(hsl.xxx + K.xyz) * 6.0 - K.www);\n
+  vec3 RGB = clamp(p - K.xxx, 0.0, 1.0);\n
+  \n
+  float chroma = ( 1.0 - abs( hsl.z*2.0-1.0 ) ) * hsl.y;\n
+  return ( RGB - 0.5 ) * chroma + hsl.z;\n
+}\n
+
+void main()\n
+{\n
+  vec3 normal = normalize( vNormal);\n
+
+  vec3 lightPosition = uLightPosition + vec3(uLightXYOffset+uLightSpinOffset, 0.0);\n
+  mediump vec3 vecToLight = normalize( (lightPosition - vVertex.xyz) * 0.01 );\n
+  mediump float spotEffect = pow( max(0.05, vecToLight.z ) - 0.05, 8.0);\n
+
+  spotEffect = spotEffect * uEffectStrength;\n
+  mediump float lightDiffuse = ( ( dot( vecToLight, normal )-0.75 ) *uLightIntensity  ) * spotEffect;\n
+
+  lowp vec4 color = texture2D( sTexture, vTexCoord + vTextureOffset * spotEffect );\n
+  vec3 lightedColor =  hsl2rgb( rgb2hsl(color.rgb) + vec3(0.0,0.0,lightDiffuse) );\n
+
+  gl_FragColor = vec4( lightedColor, color.a ) * uColor;\n
+}\n
+);
+
+} // namespace
+
+
+/*************************************************/
+/*Demo using RefractionEffect*****************/
+/*************************************************/
+class RefractionEffectExample : public ConnectionTracker
+{
+public:
+  RefractionEffectExample( Application &application )
+  : mApplication( application ),
+    mContent(),
+    mTextureSet(),
+    mGeometry(),
+    mRenderer(),
+    mMeshActor(),
+    mShaderFlat(),
+    mShaderRefraction(),
+    mLightAnimation(),
+    mStrenghAnimation(),
+    mLightXYOffsetIndex( Property::INVALID_INDEX ),
+    mSpinAngleIndex( Property::INVALID_INDEX ),
+    mLightIntensityIndex( Property::INVALID_INDEX ),
+    mEffectStrengthIndex( Property::INVALID_INDEX ),
+    mChangeTextureButton(),
+    mChangeMeshButton(),
+    mCurrentTextureId( 1 ),
+    mCurrentMeshId( 0 )
+  {
+    // Connect to the Application's Init signal
+    application.InitSignal().Connect(this, &RefractionEffectExample::Create);
+  }
+
+  ~RefractionEffectExample()
+  {
+  }
+
+private:
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create(Application& application)
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    stage.KeyEventSignal().Connect(this, &RefractionEffectExample::OnKeyEvent);
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    Toolkit::ToolBar toolBar;
+    Toolkit::Control    view;
+    mContent = DemoHelper::CreateView( application,
+        view,
+        toolBar,
+        "",
+        TOOLBAR_IMAGE,
+        APPLICATION_TITLE );
+
+    // Add a button to change background. (right of toolbar)
+    mChangeTextureButton = Toolkit::PushButton::New();
+    mChangeTextureButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CHANGE_TEXTURE_ICON );
+    mChangeTextureButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CHANGE_TEXTURE_ICON_SELECTED );
+    mChangeTextureButton.ClickedSignal().Connect( this, &RefractionEffectExample::OnChangeTexture );
+    toolBar.AddControl( mChangeTextureButton,
+                        DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
+                        Toolkit::Alignment::HorizontalRight,
+                        DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+    // Add a button to change mesh pattern. ( left of bar )
+    mChangeMeshButton = Toolkit::PushButton::New();
+    mChangeMeshButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CHANGE_MESH_ICON );
+    mChangeMeshButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CHANGE_MESH_ICON_SELECTED );
+    mChangeMeshButton.ClickedSignal().Connect( this, &RefractionEffectExample::OnChangeMesh );
+    toolBar.AddControl( mChangeMeshButton,
+                        DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage,
+                        Toolkit::Alignment::HorizontalLeft,
+                        DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+
+
+    // shader used when the screen is not touched, render a flat surface
+    mShaderFlat = Shader::New( VERTEX_SHADER_FLAT, FRAGMENT_SHADER_FLAT );
+    mGeometry = CreateGeometry( MESH_FILES[mCurrentMeshId] );
+
+    Texture texture = DemoHelper::LoadStageFillingTexture( TEXTURE_IMAGES[mCurrentTextureId] );
+    mTextureSet = TextureSet::New();
+    mTextureSet.SetTexture( 0u, texture );
+
+    mRenderer = Renderer::New( mGeometry, mShaderFlat );
+    mRenderer.SetTextures( mTextureSet );
+
+    mMeshActor = Actor::New();
+    mMeshActor.AddRenderer( mRenderer );
+    mMeshActor.SetSize( stageSize );
+    mMeshActor.SetParentOrigin(ParentOrigin::CENTER);
+    mContent.Add( mMeshActor );
+
+    // Connect the callback to the touch signal on the mesh actor
+    mContent.TouchSignal().Connect( this, &RefractionEffectExample::OnTouch );
+
+    // shader used when the finger is touching the screen. render refraction effect
+    mShaderRefraction = Shader::New( VERTEX_SHADER_REFRACTION, FRAGMENT_SHADER_REFRACTION );
+
+    // register uniforms
+    mLightXYOffsetIndex = mMeshActor.RegisterProperty( "uLightXYOffset", Vector2::ZERO );
+
+    mLightIntensityIndex = mMeshActor.RegisterProperty( "uLightIntensity", 2.5f );
+
+    mEffectStrengthIndex = mMeshActor.RegisterProperty( "uEffectStrength",  0.f );
+
+    Vector3 lightPosition( -stageSize.x*0.5f, -stageSize.y*0.5f, stageSize.x*0.5f ); // top_left
+    mMeshActor.RegisterProperty( "uLightPosition", lightPosition );
+
+    Property::Index lightSpinOffsetIndex = mMeshActor.RegisterProperty( "uLightSpinOffset", Vector2::ZERO );
+
+    mSpinAngleIndex = mMeshActor.RegisterProperty("uSpinAngle", 0.f );
+    Constraint constraint = Constraint::New<Vector2>( mMeshActor, lightSpinOffsetIndex, LightOffsetConstraint(stageSize.x*0.1f) );
+    constraint.AddSource( LocalSource(mSpinAngleIndex) );
+    constraint.Apply();
+
+    // the animation which spin the light around the finger touch position
+    mLightAnimation = Animation::New(2.f);
+    mLightAnimation.AnimateTo( Property( mMeshActor, mSpinAngleIndex ), Math::PI*2.f );
+    mLightAnimation.SetLooping( true );
+    mLightAnimation.Pause();
+  }
+
+  void SetLightXYOffset( const Vector2& offset )
+  {
+    mMeshActor.SetProperty( mLightXYOffsetIndex,  offset );
+  }
+
+  /**
+   * Create a mesh actor with different geometry to replace the current one
+   */
+  bool OnChangeMesh( Toolkit::Button button  )
+  {
+    mCurrentMeshId = ( mCurrentMeshId + 1 ) % NUM_MESH_FILES;
+    mGeometry = CreateGeometry( MESH_FILES[mCurrentMeshId] );
+    mRenderer.SetGeometry( mGeometry );
+
+    return true;
+  }
+
+  bool OnChangeTexture( Toolkit::Button button )
+  {
+    mCurrentTextureId = ( mCurrentTextureId + 1 ) % NUM_TEXTURE_IMAGES;
+    Texture texture = DemoHelper::LoadStageFillingTexture( TEXTURE_IMAGES[mCurrentTextureId] );
+    mTextureSet.SetTexture( 0u, texture );
+    return true;
+  }
+
+  bool OnTouch( Actor actor, const TouchData& event )
+  {
+    switch( event.GetState( 0 ) )
+    {
+      case PointState::DOWN:
+      {
+        mRenderer.SetShader( mShaderRefraction );
+
+        SetLightXYOffset( event.GetScreenPosition( 0 ) );
+
+        mLightAnimation.Play();
+
+        if( mStrenghAnimation )
+        {
+          mStrenghAnimation.Clear();
+        }
+
+        mStrenghAnimation= Animation::New(0.5f);
+        mStrenghAnimation.AnimateTo( Property( mMeshActor, mEffectStrengthIndex ), 1.f );
+        mStrenghAnimation.Play();
+
+        break;
+      }
+      case PointState::MOTION:
+      {
+        // make the light position following the finger movement
+        SetLightXYOffset( event.GetScreenPosition( 0 ) );
+        break;
+      }
+      case PointState::UP:
+      case PointState::LEAVE:
+      case PointState::INTERRUPTED:
+      {
+        mLightAnimation.Pause();
+
+        if( mStrenghAnimation )
+        {
+          mStrenghAnimation.Clear();
+        }
+        mStrenghAnimation = Animation::New(0.5f);
+        mStrenghAnimation.AnimateTo( Property( mMeshActor, mEffectStrengthIndex ), 0.f );
+        mStrenghAnimation.FinishedSignal().Connect( this, &RefractionEffectExample::OnTouchFinished );
+        mStrenghAnimation.Play();
+        break;
+      }
+      case PointState::STATIONARY:
+      {
+        break;
+      }
+    }
+
+    return true;
+  }
+
+  void OnTouchFinished( Animation& source )
+  {
+    mRenderer.SetShader( mShaderFlat );
+    SetLightXYOffset( Vector2::ZERO );
+  }
+
+  Geometry CreateGeometry(const std::string& objFileName)
+  {
+    std::vector<Vector3> vertexPositions;
+    Vector<unsigned int> faceIndices;
+    Vector<float> boundingBox;
+    // read the vertice and faces from the .obj file, and record the bounding box
+    ReadObjFile( objFileName, boundingBox, vertexPositions, faceIndices );
+
+    std::vector<Vector2> textureCoordinates;
+    // align the mesh, scale it to fit the screen size, and calculate the texture coordinate for each vertex
+    ShapeResizeAndTexureCoordinateCalculation( boundingBox, vertexPositions, textureCoordinates );
+
+    // re-organize the mesh, the vertices are duplicated, each vertex only belongs to one triangle.
+    // Without sharing vertex between triangle, so we can manipulate the texture offset on each triangle conveniently.
+    std::vector<Vertex> vertices;
+
+    std::size_t size = faceIndices.Size();
+    vertices.reserve( size );
+
+    for( std::size_t i=0; i<size; i=i+3 )
+    {
+      Vector3 edge1 = vertexPositions[ faceIndices[i+2] ] - vertexPositions[ faceIndices[i] ];
+      Vector3 edge2 = vertexPositions[ faceIndices[i+1] ] - vertexPositions[ faceIndices[i] ];
+      Vector3 normal = edge1.Cross(edge2);
+      normal.Normalize();
+
+      // make sure all the faces are front-facing
+      if( normal.z > 0 )
+      {
+        vertices.push_back( Vertex( vertexPositions[ faceIndices[i] ], normal, textureCoordinates[ faceIndices[i] ] ) );
+        vertices.push_back( Vertex( vertexPositions[ faceIndices[i+1] ], normal, textureCoordinates[ faceIndices[i+1] ] ) );
+        vertices.push_back( Vertex( vertexPositions[ faceIndices[i+2] ], normal, textureCoordinates[ faceIndices[i+2] ] ) );
+      }
+      else
+      {
+        normal *= -1.f;
+        vertices.push_back( Vertex( vertexPositions[ faceIndices[i] ], normal, textureCoordinates[ faceIndices[i] ] ) );
+        vertices.push_back( Vertex( vertexPositions[ faceIndices[i+2] ], normal, textureCoordinates[ faceIndices[i+2] ] ) );
+        vertices.push_back( Vertex( vertexPositions[ faceIndices[i+1] ], normal, textureCoordinates[ faceIndices[i+1] ] ) );
+      }
+    }
+
+    Property::Map vertexFormat;
+    vertexFormat["aPosition"] = Property::VECTOR3;
+    vertexFormat["aNormal"] = Property::VECTOR3;
+    vertexFormat["aTexCoord"] = Property::VECTOR2;
+    PropertyBuffer surfaceVertices = PropertyBuffer::New( vertexFormat );
+    surfaceVertices.SetData( &vertices[0], vertices.size() );
+
+    Geometry surface = Geometry::New();
+    surface.AddVertexBuffer( surfaceVertices );
+
+    return surface;
+  }
+
+  void ReadObjFile( const std::string& objFileName,
+      Vector<float>& boundingBox,
+      std::vector<Vector3>& vertexPositions,
+      Vector<unsigned int>& faceIndices)
+  {
+    std::streampos bufferSize = 0;
+    Dali::Vector<char> fileBuffer;
+    if( !Dali::FileLoader::ReadFile( objFileName, bufferSize, fileBuffer, Dali::FileLoader::FileType::TEXT ) )
+    {
+        DALI_LOG_WARNING( "file open failed for: \"%s\"", objFileName.c_str() );
+        return;
+    }
+
+    std::stringstream iss( &fileBuffer[0], std::ios::in );
+
+    boundingBox.Resize( 6 );
+    boundingBox[0]=boundingBox[2]=boundingBox[4] = std::numeric_limits<float>::max();
+    boundingBox[1]=boundingBox[3]=boundingBox[5] = -std::numeric_limits<float>::max();
+
+    std::string line;
+    while( std::getline( iss, line ) )
+    {
+      if( line[0] == 'v' && std::isspace(line[1]))  // vertex
+      {
+        std::istringstream iss(line.substr(2), std::istringstream::in);
+        unsigned int i = 0;
+        Vector3 vertex;
+        while( iss >> vertex[i++] && i < 3);
+        if( vertex.x < boundingBox[0] )  boundingBox[0] = vertex.x;
+        if( vertex.x > boundingBox[1] )  boundingBox[1] = vertex.x;
+        if( vertex.y < boundingBox[2] )  boundingBox[2] = vertex.y;
+        if( vertex.y > boundingBox[3] )  boundingBox[3] = vertex.y;
+        if( vertex.z < boundingBox[4] )  boundingBox[4] = vertex.z;
+        if( vertex.z > boundingBox[5] )  boundingBox[5] = vertex.z;
+        vertexPositions.push_back( vertex );
+      }
+      else if( line[0] == 'f' ) //face
+      {
+        unsigned int numOfInt = 3;
+        while( true )
+        {
+          std::size_t found  = line.find('/');
+          if( found == std::string::npos )
+          {
+            break;
+          }
+          line[found] = ' ';
+          numOfInt++;
+        }
+
+        std::istringstream iss(line.substr(2), std::istringstream::in);
+        Dali::Vector<unsigned int> indices;
+        indices.Resize(numOfInt);
+        unsigned int i=0;
+        while( iss >> indices[i++] && i < numOfInt);
+        unsigned int step = (i+1) / 3;
+        faceIndices.PushBack( indices[0]-1 );
+        faceIndices.PushBack( indices[step]-1 );
+        faceIndices.PushBack( indices[2*step]-1 );
+      }
+    }
+  }
+
+  void ShapeResizeAndTexureCoordinateCalculation( const Vector<float>& boundingBox,
+      std::vector<Vector3>& vertexPositions,
+      std::vector<Vector2>& textureCoordinates)
+  {
+    Vector3 bBoxSize( boundingBox[1] - boundingBox[0], boundingBox[3] - boundingBox[2], boundingBox[5] - boundingBox[4]);
+    Vector3 bBoxMinCorner( boundingBox[0], boundingBox[2], boundingBox[4] );
+
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+    Vector3 scale( stageSize.x / bBoxSize.x, stageSize.y / bBoxSize.y, 1.f );
+    scale.z = (scale.x + scale.y)/2.f;
+
+    textureCoordinates.reserve(vertexPositions.size());
+
+    for( std::vector<Vector3>::iterator iter = vertexPositions.begin(); iter != vertexPositions.end(); iter++ )
+    {
+      Vector3 newPosition(  (*iter) - bBoxMinCorner ) ;
+
+     textureCoordinates.push_back( Vector2( newPosition.x / bBoxSize.x, newPosition.y / bBoxSize.y ) );
+
+      newPosition -= bBoxSize * 0.5f;
+      (*iter) = newPosition * scale;
+    }
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&   mApplication;
+  Layer          mContent;
+  TextureSet     mTextureSet;
+  Geometry       mGeometry;
+  Renderer       mRenderer;
+  Actor          mMeshActor;
+
+  Shader         mShaderFlat;
+  Shader         mShaderRefraction;
+
+  Animation      mLightAnimation;
+  Animation      mStrenghAnimation;
+
+  Property::Index mLightXYOffsetIndex;
+  Property::Index mSpinAngleIndex;
+  Property::Index mLightIntensityIndex;
+  Property::Index mEffectStrengthIndex;
+
+  Toolkit::PushButton        mChangeTextureButton;
+  Toolkit::PushButton        mChangeMeshButton;
+  unsigned int               mCurrentTextureId;
+  unsigned int               mCurrentMeshId;
+};
+
+/*****************************************************************************/
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  RefractionEffectExample theApp(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/remote-image-loading/remote-image-loading-example.cpp b/examples/remote-image-loading/remote-image-loading-example.cpp
new file mode 100644 (file)
index 0000000..2dbcadb
--- /dev/null
@@ -0,0 +1,217 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+#include <shared/utility.h>
+#include <stdlib.h>
+#include <iostream>
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/actors/actor-devel.h>
+
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+// This example shows the load-time image scaling and filtering features.
+//
+class MyTester : public ConnectionTracker
+{
+public:
+  MyTester(Application &application) : mApplication(application)
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect(this, &MyTester::Create);
+  }
+
+  ~MyTester()
+  {
+    // Nothing to do here;
+  }
+
+  void ConnectEventSignal(Control control)
+  {
+    control.TouchSignal().Connect(this, &MyTester::OnControlTouch);
+
+    control.SetKeyboardFocusable(true);
+    control.KeyEventSignal().Connect(this, &MyTester::OnControlKeyEvent);
+    control.KeyInputFocusGainedSignal().Connect(this, &MyTester::OnFocusSet);
+    control.KeyInputFocusLostSignal().Connect(this, &MyTester::OnFocusUnSet);
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create(Application &application)
+  {
+    stage = Stage::GetCurrent();
+    stage.SetBackgroundColor(Color::BLACK);
+    stage.KeyEventSignal().Connect(this, &MyTester::OnKey);
+    stage.TouchSignal().Connect(this, &MyTester::OnTouch);
+
+    TextLabel rubric = TextLabel::New( "You will need a working internet connection to see the images below");
+    rubric.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    rubric.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    rubric.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    rubric.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+    rubric.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    rubric.SetAnchorPoint( ParentOrigin::TOP_CENTER );
+    stage.Add( rubric );
+
+    mImageView1 = Toolkit::ImageView::New("http://static.midomi.com/s/s/images/000/000/000/000/293/259/19/520_000000000000293259191500x1500_72dpi_RGB_q70.jpg");
+
+    mImageView1.SetName("mImageView1");
+    mImageView1.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mImageView1.SetAnchorPoint(AnchorPoint::TOP_CENTER);
+    mImageView1.SetProperty(DevelActor::Property::POSITION_USES_ANCHOR_POINT, false);
+    mImageView1.SetPosition(0, 100);
+    mImageView1.SetBackgroundColor(Vector4(0.0f, 0.0f, 0.0f, 0.0f));
+    stage.Add(mImageView1);
+
+    mImageView2 = Toolkit::ImageView::New("http://static.midomi.com/s/s/images/000/000/000/000/212/651/88/520_000000000000212651881500x1500_72dpi_RGB_q70.jpg");
+    mImageView2.SetName("mImageView2");
+    mImageView2.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mImageView2.SetAnchorPoint(AnchorPoint::TOP_CENTER);
+    mImageView2.SetProperty(DevelActor::Property::POSITION_USES_ANCHOR_POINT, false);
+    mImageView2.SetPosition(400, 100);
+    mImageView2.SetBackgroundColor(Vector4(0.0f, 0.0f, 0.0f, 0.0f));
+    stage.Add(mImageView2);
+
+    mImageView3 = Toolkit::ImageView::New("http://static.midomi.com/s/s/images/000/000/000/000/212/353/21/520_000000000000212353211500x1500_72dpi_RGB_q70.jpg");
+    mImageView3.SetName("mImageView3");
+    mImageView3.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mImageView3.SetAnchorPoint(AnchorPoint::TOP_CENTER);
+    mImageView3.SetProperty(DevelActor::Property::POSITION_USES_ANCHOR_POINT, false);
+    mImageView3.SetPosition(0, 400);
+    mImageView3.SetBackgroundColor(Vector4(0.0f, 0.0f, 0.0f, 0.0f));
+    stage.Add(mImageView3);
+
+    mImageView4 = Toolkit::ImageView::New("http://d2k43l0oslhof9.cloudfront.net/platform/image/contents/vc/20/01/58/20170629100630071189_0bf6b911-a847-cba4-e518-be40fe2f579420170629192203240.jpg");
+    mImageView4.SetName("mImageView4");
+    mImageView4.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mImageView4.SetAnchorPoint(AnchorPoint::TOP_CENTER);
+    mImageView4.SetProperty(DevelActor::Property::POSITION_USES_ANCHOR_POINT, false);
+    mImageView4.SetPosition(400, 400);
+    mImageView4.SetBackgroundColor(Vector4(0.0f, 0.0f, 0.0f, 0.0f));
+    stage.Add(mImageView4);
+
+    mImageView5 = Toolkit::ImageView::New("http://static.midomi.com/h/images/w/weather_sunny.png");
+    mImageView5.SetName("mImageView5");
+    mImageView4.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mImageView5.SetAnchorPoint(AnchorPoint::TOP_CENTER);
+    mImageView5.SetProperty(DevelActor::Property::POSITION_USES_ANCHOR_POINT, false);
+    mImageView5.SetPosition(800, 100);
+    mImageView5.SetBackgroundColor(Vector4(0.0f, 0.0f, 0.0f, 0.0f));
+    stage.Add(mImageView5);
+
+    // Tie-in input event handlers:
+    stage.KeyEventSignal().Connect( this, &MyTester::OnKeyEvent );
+  }
+
+  void OnAnimationEnd(Animation &source)
+  {
+    std::cout<<"OnAnimationEnd" << std::endl;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  void OnKey(const KeyEvent &event)
+  {
+    if (event.state == KeyEvent::Down)
+    {
+      std::cout<<"Stage key : " << event.keyCode << std::endl;
+    }
+  }
+
+  void OnTouch(const TouchData &touch)
+  {
+    if (touch.GetState(0) == PointState::DOWN)
+    {
+      std::cout<<"Stage touch" << std::endl;
+    }
+  }
+
+  bool OnControlKeyEvent(Toolkit::Control control, const KeyEvent &event)
+  {
+    if (event.state == KeyEvent::Down)
+    {
+      std::cout<<"Control down key : " << control.GetName() << ", keyCode : " << event.keyCode << std::endl;
+    }
+    else
+    {
+      std::cout<<"Control up key : " << control.GetName() << ", keyCode : " << event.keyCode << std::endl;
+    }
+    return false;
+  }
+
+  bool OnControlTouch(Actor actor, const TouchData &touch)
+  {
+    if (touch.GetState(0) == PointState::DOWN)
+    {
+
+      std::cout<<"Control touch " << actor.GetName() << ", parent " << actor.GetParent().GetName() << std::endl;
+    }
+
+    return false;
+  }
+
+  void OnFocusSet(Control control)
+  {
+    std::cout<<"OnFocusSet " << control.GetName() << std::endl;
+  }
+
+  void OnFocusUnSet(Control control)
+  {
+    std::cout<<"OnFocusUnSet " << control.GetName() << std::endl;
+  }
+
+private:
+  Stage stage;
+  Application &mApplication;
+
+  Control mControl1;
+  Control mControl2;
+  ImageView mImageView1;
+  ImageView mImageView2;
+  ImageView mImageView3;
+  ImageView mImageView4;
+  ImageView mImageView5;
+
+  TextLabel mTextLabel1;
+  TextLabel mTextLabel2;
+  TextField mTextField;
+  TextEditor mTextEditor;
+
+  Animation mAnimation;
+  Timer     mTimer;
+
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application application = Application::New(&argc, &argv, "");
+  MyTester test(application);
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/renderer-stencil/renderer-stencil-example.cpp b/examples/renderer-stencil/renderer-stencil-example.cpp
new file mode 100644 (file)
index 0000000..a8f50f8
--- /dev/null
@@ -0,0 +1,762 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "renderer-stencil-shaders.h"
+#include "shared/view.h"
+#include "shared/utility.h"
+
+using namespace Dali;
+
+namespace
+{
+
+// Constants:
+
+// Application constants:
+const char * const APPLICATION_TITLE( "Renderer Stencil API Demo" );
+const char * const BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-gradient.jpg" );
+
+// Texture filenames:
+const char * const CUBE_TEXTURE( DEMO_IMAGE_DIR "people-medium-1.jpg" );
+const char * const FLOOR_TEXTURE( DEMO_IMAGE_DIR "wood.png" );
+
+// Scale dimensions: These values are relative to the stage size. EG. width = 0.32f * stageSize.
+const float   CUBE_WIDTH_SCALE( 0.32f );                   ///< The width (and height + depth) of the main and reflection cubes.
+const Vector2 FLOOR_DIMENSION_SCALE( 0.67f, 0.017f );      ///< The width and height of the floor object.
+
+// Configurable animation characteristics:
+const float ANIMATION_ROTATION_DURATION( 10.0f );          ///< Time in seconds to rotate the scene 360 degrees around Y.
+const float ANIMATION_BOUNCE_TOTAL_TIME( 1.6f );           ///< Time in seconds to perform 1 full bounce animation cycle.
+const float ANIMATION_BOUNCE_DEFORMATION_TIME( 0.4f );     ///< Time in seconds that the cube deformation animation will occur for (on contact with the floor).
+const float ANIMATION_BOUNCE_DEFORMATION_PERCENT( 20.0f ); ///< Percentage (of the cube's size) to deform the cube by (on contact with floor).
+const float ANIMATION_BOUNCE_HEIGHT_PERCENT( 40.0f );      ///< Percentage (of the cube's size) to bounce up in to the air by.
+
+// Base colors for the objects:
+const Vector4 TEXT_COLOR( 1.0f, 1.0f, 1.0f, 1.0f );        ///< White.
+const Vector4 CUBE_COLOR( 1.0f, 1.0f, 1.0f, 1.0f );        ///< White.
+const Vector4 FLOOR_COLOR( 1.0f, 1.0f, 1.0f, 1.0f );       ///< White.
+const Vector4 REFLECTION_COLOR( 0.6f, 0.6f, 0.6f, 0.6f );  ///< Note that alpha is not 1.0f, to make the blend more photo-realistic.
+
+// We need to control the draw order as we are controlling both the stencil and depth buffer per renderer.
+const int DEPTH_INDEX_GRANULARITY( 10000 );                ///< This value is the gap in depth-index in-between each renderer.
+
+} // Anonymous namespace
+
+/**
+ * @brief This example shows how to manipulate stencil and depth buffer properties within the Renderer API.
+ */
+class RendererStencilExample : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in] application The DALi application object
+   */
+  RendererStencilExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal.
+    mApplication.InitSignal().Connect( this, &RendererStencilExample::Create );
+  }
+
+  /**
+   * @brief Destructor (non-virtual).
+   */
+  ~RendererStencilExample()
+  {
+  }
+
+private:
+
+  /**
+   * @brief Enum to facilitate more readable use of the cube array.
+   */
+  enum CubeType
+  {
+    MAIN_CUBE,      ///< The main cube that bounces above the floor object.
+    REFLECTION_CUBE ///< The reflected cube object.
+  };
+
+  /**
+   * @brief Struct to store the position, normal and texture coordinates of a single vertex.
+   */
+  struct TexturedVertex
+  {
+    Vector3 position;
+    Vector3 normal;
+    Vector2 textureCoord;
+  };
+
+  /**
+   * @brief This is the main scene setup method for this demo.
+   * This is called via the Init signal which is received once (only) during the Application lifetime.
+   * @param[in] application The DALi application object
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Use a gradient visual to render the background gradient.
+    Toolkit::Control background = Dali::Toolkit::Control::New();
+    background.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+    background.SetParentOrigin( Dali::ParentOrigin::CENTER );
+    background.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+
+    // Set up the background gradient.
+    Property::Array stopOffsets;
+    stopOffsets.PushBack( 0.0f );
+    stopOffsets.PushBack( 1.0f );
+    Property::Array stopColors;
+    stopColors.PushBack( Vector4( 0.17f, 0.24f, 0.35f, 1.0f ) ); // Dark, medium saturated blue  ( top   of screen)
+    stopColors.PushBack( Vector4( 0.45f, 0.70f, 0.80f, 1.0f ) ); // Medium bright, pastel blue   (bottom of screen)
+    const float percentageStageHeight = stage.GetSize().height * 0.7f;
+
+    background.SetProperty( Toolkit::Control::Property::BACKGROUND, Dali::Property::Map()
+      .Add( Toolkit::Visual::Property::TYPE, Dali::Toolkit::Visual::GRADIENT )
+      .Add( Toolkit::GradientVisual::Property::STOP_OFFSET, stopOffsets )
+      .Add( Toolkit::GradientVisual::Property::STOP_COLOR, stopColors )
+      .Add( Toolkit::GradientVisual::Property::START_POSITION, Vector2( 0.0f, -percentageStageHeight ) )
+      .Add( Toolkit::GradientVisual::Property::END_POSITION, Vector2( 0.0f, percentageStageHeight ) )
+      .Add( Toolkit::GradientVisual::Property::UNITS, Toolkit::GradientVisual::Units::USER_SPACE ) );
+
+    stage.Add( background );
+
+    // Create a TextLabel for the application title.
+    Toolkit::TextLabel label = Toolkit::TextLabel::New( APPLICATION_TITLE );
+    label.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    // Set the parent origin to a small percentage below the top (so the demo will scale for different resolutions).
+    label.SetParentOrigin( Vector3( 0.5f, 0.03f, 0.5f ) );
+    label.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, TEXT_COLOR );
+    stage.Add( label );
+
+    // Layer to hold the 3D scene.
+    Layer layer = Layer::New();
+    layer.SetAnchorPoint( AnchorPoint::CENTER );
+    // Set the parent origin to a small percentage below the center (so the demo will scale for different resolutions).
+    layer.SetParentOrigin( Vector3( 0.5f, 0.58f, 0.5f ) );
+    layer.SetBehavior( Layer::LAYER_UI );
+    layer.SetDepthTestDisabled( false );
+    stage.Add( layer );
+
+    // Main cube:
+    // Make the demo scalable with different resolutions by basing
+    // the cube size on a percentage of the stage size.
+    float scaleSize( std::min( stage.GetSize().width, stage.GetSize().height ) );
+    float cubeWidth( scaleSize * CUBE_WIDTH_SCALE );
+    Vector3 cubeSize( cubeWidth, cubeWidth, cubeWidth );
+    // Create the geometry for the cube, and the texture.
+    Geometry cubeGeometry = CreateCubeVertices( Vector3::ONE, false );
+    TextureSet cubeTextureSet = CreateTextureSet( CUBE_TEXTURE );
+    // Create the cube object and add it.
+    // Note: The cube is anchored around its base for animation purposes, so the position can be zero.
+    mCubes[ MAIN_CUBE ] = CreateMainCubeObject( cubeGeometry, cubeSize, cubeTextureSet );
+    layer.Add( mCubes[ MAIN_CUBE ] );
+
+    // Floor:
+    float floorWidth( scaleSize * FLOOR_DIMENSION_SCALE.x );
+    Vector3 floorSize( floorWidth, scaleSize * FLOOR_DIMENSION_SCALE.y, floorWidth );
+    // Create the floor object using the cube geometry with a new size, and add it.
+    Actor floorObject( CreateFloorObject( cubeGeometry, floorSize ) );
+    layer.Add( floorObject );
+
+    // Stencil:
+    Vector3 planeSize( floorWidth, floorWidth, 0.0f );
+    // Create the stencil plane object, and add it.
+    Actor stencilPlaneObject( CreateStencilPlaneObject( planeSize ) );
+    layer.Add( stencilPlaneObject );
+
+    // Reflection cube:
+    // Create the reflection cube object and add it.
+    // Note: The cube is anchored around its base for animation purposes, so the position can be zero.
+    mCubes[ REFLECTION_CUBE ] = CreateReflectionCubeObject( cubeSize, cubeTextureSet );
+    layer.Add( mCubes[ REFLECTION_CUBE ] );
+
+    // Rotate the layer so we can see some of the top of the cube for a more 3D effect.
+    layer.SetProperty( Actor::Property::ORIENTATION, Quaternion( Degree( -24.0f ), Degree( 0.0f ), Degree( 0.0f ) ) );
+
+    // Set up the rotation on the Y axis.
+    mRotationAnimation = Animation::New( ANIMATION_ROTATION_DURATION );
+    float fullRotation = 360.0f;
+    mRotationAnimation.AnimateBy( Property( mCubes[ MAIN_CUBE ], Actor::Property::ORIENTATION ),
+                                 Quaternion( Degree( 0.0f ), Degree( fullRotation ), Degree( 0.0f ) ) );
+    mRotationAnimation.AnimateBy( Property( floorObject, Actor::Property::ORIENTATION ),
+                                 Quaternion( Degree( 0.0f ), Degree( fullRotation ), Degree( 0.0f ) ) );
+    // Note the stencil is pre-rotated by 90 degrees on X, so we rotate relatively on its Z axis for an equivalent Y rotation.
+    mRotationAnimation.AnimateBy( Property( stencilPlaneObject, Actor::Property::ORIENTATION ),
+                                 Quaternion( Degree( 0.0f ), Degree( 0.0f ), Degree( fullRotation ) ) );
+    mRotationAnimation.AnimateBy( Property( mCubes[ REFLECTION_CUBE ], Actor::Property::ORIENTATION ),
+                                 Quaternion( Degree( 0.0f ), Degree( fullRotation ), Degree( 0.0f ) ) );
+    mRotationAnimation.SetLooping( true );
+
+    // Set up the cube bouncing animation.
+    float totalTime = ANIMATION_BOUNCE_TOTAL_TIME;
+    float deformationTime = ANIMATION_BOUNCE_DEFORMATION_TIME;
+    // Percentage based amounts allows the bounce and deformation to scale for different resolution screens.
+    float deformationAmount = ANIMATION_BOUNCE_DEFORMATION_PERCENT / 100.0f;
+    float heightChange = ( cubeSize.y * ANIMATION_BOUNCE_HEIGHT_PERCENT ) / 100.0f;
+
+    // Animation pre-calculations:
+    float halfTime = totalTime / 2.0f;
+    float halfDeformationTime = deformationTime / 2.0f;
+
+    // First position the cubes at the top of the animation cycle.
+    mCubes[ MAIN_CUBE ].SetProperty(       Actor::Property::POSITION_Y, -heightChange );
+    mCubes[ REFLECTION_CUBE ].SetProperty( Actor::Property::POSITION_Y,  heightChange );
+
+    mBounceAnimation = Animation::New( totalTime );
+
+    // The animations for the main and reflected cubes are almost identical, so we combine the code to do both.
+    for( int cube = 0; cube < 2; ++cube )
+    {
+      // If iterating on the reflection cube, adjust the heightChange variable so the below code can be reused.
+      if( cube == 1 )
+      {
+        heightChange = -heightChange;
+      }
+
+      // 1st TimePeriod: Start moving down with increasing speed, until it is time to distort the cube due to impact.
+      mBounceAnimation.AnimateBy( Property( mCubes[ cube ], Actor::Property::POSITION_Y ),  heightChange, AlphaFunction::EASE_IN_SQUARE, TimePeriod( 0.0f, halfTime - halfDeformationTime ) );
+
+      // 2nd TimePeriod: The cube is touching the floor, start deforming it - then un-deform it again.
+      mBounceAnimation.AnimateBy( Property( mCubes[ cube ], Actor::Property::SCALE_X ),  deformationAmount, AlphaFunction::BOUNCE, TimePeriod( halfTime - halfDeformationTime, deformationTime ) );
+      mBounceAnimation.AnimateBy( Property( mCubes[ cube ], Actor::Property::SCALE_Z ),  deformationAmount, AlphaFunction::BOUNCE, TimePeriod( halfTime - halfDeformationTime, deformationTime ) );
+      mBounceAnimation.AnimateBy( Property( mCubes[ cube ], Actor::Property::SCALE_Y ), -deformationAmount, AlphaFunction::BOUNCE, TimePeriod( halfTime - halfDeformationTime, deformationTime ) );
+
+      // 3rd TimePeriod: Start moving up with decreasing speed, until at the apex of the animation.
+      mBounceAnimation.AnimateBy( Property( mCubes[ cube ], Actor::Property::POSITION_Y ), -heightChange, AlphaFunction::EASE_OUT_SQUARE, TimePeriod( halfTime + halfDeformationTime, halfTime - halfDeformationTime ) );
+    }
+
+    mBounceAnimation.SetLooping( true );
+
+    // Start the animations.
+    mRotationAnimation.Play();
+    mBounceAnimation.Play();
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &RendererStencilExample::OnTouch );
+    // Connect signals to allow Back and Escape to exit.
+    stage.KeyEventSignal().Connect( this, &RendererStencilExample::OnKeyEvent );
+  }
+
+private:
+
+  // Methods to setup each component of the 3D scene:
+
+  /**
+   * @brief Creates the Main cube object.
+   * This creates the renderer from existing geometry (as the cubes geometry is shared).
+   * The texture is set and all relevant renderer properties are set-up.
+   * @param[in] geometry Pre-calculated cube geometry
+   * @param[in] size The desired cube size
+   * @param[in] textureSet A pre-existing TextureSet with a texture set up, to be applied to the cube
+   * @return An actor set-up containing the main cube object
+   */
+  Actor CreateMainCubeObject( Geometry& geometry, Vector3 size, TextureSet& textureSet )
+  {
+    Toolkit::Control container = Toolkit::Control::New();
+    container.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    container.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    container.SetSize( size );
+    container.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+
+    // Create a renderer from the geometry and add the texture.
+    Renderer renderer = CreateRenderer( geometry, size, true, CUBE_COLOR );
+    renderer.SetTextures( textureSet );
+
+    // Setup the renderer properties:
+    // We are writing to the color buffer & culling back faces (no stencil is used for the main cube).
+    renderer.SetProperty( Renderer::Property::RENDER_MODE, RenderMode::COLOR );
+    renderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+
+    // We do need to write to the depth buffer as other objects need to appear underneath this cube.
+    renderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, DepthWriteMode::ON );
+    // We do not need to test the depth buffer as we are culling the back faces.
+    renderer.SetProperty( Renderer::Property::DEPTH_TEST_MODE, DepthTestMode::OFF );
+
+    // This object must be rendered 1st.
+    renderer.SetProperty( Renderer::Property::DEPTH_INDEX, 0 * DEPTH_INDEX_GRANULARITY );
+
+    container.AddRenderer( renderer );
+    return container;
+  }
+
+  /**
+   * @brief Creates the Floor object.
+   * This creates the renderer from existing geometry (as the cube geometry can be re-used).
+   * The texture is created and set and all relevant renderer properties are set-up.
+   * @param[in] geometry Pre-calculated cube geometry
+   * @param[in] size The desired floor size
+   * @return An actor set-up containing the floor object
+   */
+  Actor CreateFloorObject( Geometry& geometry, Vector3 size )
+  {
+    Toolkit::Control container = Toolkit::Control::New();
+    container.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    container.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    container.SetSize( size );
+    container.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+
+    // Create a renderer from the geometry and add the texture.
+    TextureSet planeTextureSet = CreateTextureSet( FLOOR_TEXTURE );
+    Renderer renderer = CreateRenderer( geometry, size, true, FLOOR_COLOR );
+    renderer.SetTextures( planeTextureSet );
+
+    // Setup the renderer properties:
+    // We are writing to the color buffer & culling back faces as we are NOT doing depth write (no stencil is used for the floor).
+    renderer.SetProperty( Renderer::Property::RENDER_MODE, RenderMode::COLOR );
+    renderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+
+    // We do not write to the depth buffer as its not needed.
+    renderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, DepthWriteMode::OFF );
+    // We do need to test the depth buffer as we need the floor to be underneath the cube.
+    renderer.SetProperty( Renderer::Property::DEPTH_TEST_MODE, DepthTestMode::ON );
+
+    // This object must be rendered 2nd.
+    renderer.SetProperty( Renderer::Property::DEPTH_INDEX, 1 * DEPTH_INDEX_GRANULARITY );
+
+    container.AddRenderer( renderer );
+    return container;
+  }
+
+  /**
+   * @brief Creates the Stencil-Plane object.
+   * This is places on the floor object to allow the reflection to be drawn on to the floor.
+   * This creates the geometry and renderer.
+   * All relevant renderer properties are set-up.
+   * @param[in] size The desired plane size
+   * @return An actor set-up containing the stencil-plane object
+   */
+  Actor CreateStencilPlaneObject( Vector3 size )
+  {
+    Toolkit::Control container = Toolkit::Control::New();
+    container.SetAnchorPoint( AnchorPoint::CENTER );
+    container.SetParentOrigin( ParentOrigin::CENTER );
+    container.SetSize( size );
+    container.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+
+    // We rotate the plane as the geometry is created flat in X & Y. We want it to span X & Z axis.
+    container.SetProperty( Actor::Property::ORIENTATION, Quaternion( Degree( -90.0f ), Degree( 0.0f ), Degree( 0.0f ) ) );
+
+    // Create geometry for a flat plane.
+    Geometry planeGeometry = CreatePlaneVertices( Vector2::ONE );
+    // Create a renderer from the geometry.
+    Renderer renderer = CreateRenderer( planeGeometry, size, false, Vector4::ONE );
+
+    // Setup the renderer properties:
+    // The stencil plane is only for stencilling.
+    renderer.SetProperty( Renderer::Property::RENDER_MODE, RenderMode::STENCIL );
+
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION, StencilFunction::ALWAYS );
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_REFERENCE, 1 );
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_MASK, 0xFF );
+    renderer.SetProperty( Renderer::Property::STENCIL_OPERATION_ON_FAIL, StencilOperation::KEEP );
+    renderer.SetProperty( Renderer::Property::STENCIL_OPERATION_ON_Z_FAIL, StencilOperation::KEEP );
+    renderer.SetProperty( Renderer::Property::STENCIL_OPERATION_ON_Z_PASS, StencilOperation::REPLACE );
+    renderer.SetProperty( Renderer::Property::STENCIL_MASK, 0xFF );
+
+    // We don't want to write to the depth buffer, as this would block the reflection being drawn.
+    renderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, DepthWriteMode::OFF );
+    // We test the depth buffer as we want the stencil to only exist underneath the cube.
+    renderer.SetProperty( Renderer::Property::DEPTH_TEST_MODE, DepthTestMode::ON );
+
+    // This object must be rendered 3rd.
+    renderer.SetProperty( Renderer::Property::DEPTH_INDEX, 2 * DEPTH_INDEX_GRANULARITY );
+
+    container.AddRenderer( renderer );
+    return container;
+  }
+
+  /**
+   * @brief Creates the Reflection cube object.
+   * This creates new geometry (as the texture UVs are different to the main cube).
+   * The renderer is then created.
+   * The texture is set and all relevant renderer properties are set-up.
+   * @param[in] size The desired cube size
+   * @param[in] textureSet A pre-existing TextureSet with a texture set up, to be applied to the cube
+   * @return An actor set-up containing the reflection cube object
+   */
+  Actor CreateReflectionCubeObject( Vector3 size, TextureSet& textureSet )
+  {
+    Toolkit::Control container = Toolkit::Control::New();
+    container.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    container.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    container.SetSize( size );
+    container.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+
+    // Create the cube geometry of unity size.
+    // The "true" specifies we want the texture UVs flipped vertically as this is the reflection cube.
+    Geometry reflectedCubeGeometry = CreateCubeVertices( Vector3::ONE, true );
+    // Create a renderer from the geometry and add the texture.
+    Renderer renderer = CreateRenderer( reflectedCubeGeometry, size, true, REFLECTION_COLOR );
+    renderer.SetTextures( textureSet );
+
+    // Setup the renderer properties:
+    // Write to color buffer so reflection is visible.
+    // Also enable the stencil buffer, as we will be testing against it to only draw to areas within the stencil.
+    renderer.SetProperty( Renderer::Property::RENDER_MODE, RenderMode::COLOR_STENCIL );
+    // We cull to skip drawing the back faces.
+    renderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+
+    // We use blending to blend the reflection with the floor texture.
+    renderer.SetProperty( Renderer::Property::BLEND_MODE, BlendMode::ON );
+    renderer.SetProperty( Renderer::Property::BLEND_EQUATION_RGB, BlendEquation::ADD );
+    renderer.SetProperty( Renderer::Property::BLEND_EQUATION_ALPHA, BlendEquation::ADD );
+    renderer.SetProperty( Renderer::Property::BLEND_FACTOR_DEST_RGB, BlendFactor::ONE );
+
+    // Enable stencil. Here we only draw to areas within the stencil.
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION, StencilFunction::EQUAL );
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_REFERENCE, 1 );
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_MASK, 0xff );
+    // Don't write to the stencil.
+    renderer.SetProperty( Renderer::Property::STENCIL_MASK, 0x00 );
+
+    // We don't need to write to the depth buffer, as we are culling.
+    renderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, DepthWriteMode::OFF );
+    // We need to test the depth buffer as we need the reflection to be underneath the cube.
+    renderer.SetProperty( Renderer::Property::DEPTH_TEST_MODE, DepthTestMode::ON );
+
+    // This object must be rendered last.
+    renderer.SetProperty( Renderer::Property::DEPTH_INDEX, 3 * DEPTH_INDEX_GRANULARITY );
+
+    container.AddRenderer( renderer );
+    return container;
+  }
+
+  // Methods:
+
+  /**
+   * @brief Creates a geometry object from vertices and indices.
+   * @param[in] vertices The object vertices
+   * @param[in] indices The object indices
+   * @return A geometry object
+   */
+  Geometry CreateTexturedGeometry( Vector<TexturedVertex>& vertices, Vector<unsigned short>& indices )
+  {
+    // Vertices
+    Property::Map vertexFormat;
+    vertexFormat[POSITION] = Property::VECTOR3;
+    vertexFormat[NORMAL] =   Property::VECTOR3;
+    vertexFormat[TEXTURE] =  Property::VECTOR2;
+
+    PropertyBuffer surfaceVertices = PropertyBuffer::New( vertexFormat );
+    surfaceVertices.SetData( &vertices[0u], vertices.Size() );
+
+    Geometry geometry = Geometry::New();
+    geometry.AddVertexBuffer( surfaceVertices );
+
+    // Indices for triangle formulation
+    geometry.SetIndexBuffer( &indices[0u], indices.Size() );
+    return geometry;
+  }
+
+  /**
+   * @brief Creates a renderer from a geometry object.
+   * @param[in] geometry The geometry to use
+   * @param[in] dimensions The dimensions (will be passed in to the shader)
+   * @param[in] textured Set to true to use the texture versions of the shaders
+   * @param[in] color The base color for the renderer
+   * @return A renderer object
+   */
+  Renderer CreateRenderer( Geometry geometry, Vector3 dimensions, bool textured, Vector4 color )
+  {
+    Stage stage = Stage::GetCurrent();
+    Shader shader;
+
+    if( textured )
+    {
+      shader = Shader::New( VERTEX_SHADER_TEXTURED, FRAGMENT_SHADER_TEXTURED );
+    }
+    else
+    {
+      shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+    }
+
+    // Here we modify the light position based on half the stage size as a pre-calculation step.
+    // This avoids the work having to be done in the shader.
+    shader.RegisterProperty( LIGHT_POSITION_UNIFORM_NAME, Vector3( -stage.GetSize().width / 2.0f, -stage.GetSize().width / 2.0f, 1000.0f ) );
+    shader.RegisterProperty( COLOR_UNIFORM_NAME, color );
+    shader.RegisterProperty( OBJECT_DIMENSIONS_UNIFORM_NAME, dimensions );
+
+    return Renderer::New( geometry, shader );
+  }
+
+  /**
+   * @brief Helper method to create a TextureSet from an image URL.
+   * @param[in] url An image URL
+   * @return A TextureSet object
+   */
+  TextureSet CreateTextureSet( const char* url )
+  {
+    TextureSet textureSet = TextureSet::New();
+
+    if( textureSet )
+    {
+      Texture texture = DemoHelper::LoadTexture( url );
+      if( texture )
+      {
+        textureSet.SetTexture( 0u, texture );
+      }
+    }
+
+    return textureSet;
+  }
+
+  // Geometry Creation:
+
+  /**
+   * @brief Creates a geometry object for a flat plane.
+   * The plane is oriented in X & Y axis (Z is 0).
+   * @param[in] dimensions The desired plane dimensions
+   * @return A Geometry object
+   */
+  Geometry CreatePlaneVertices( Vector2 dimensions )
+  {
+    Vector<TexturedVertex> vertices;
+    Vector<unsigned short> indices;
+    vertices.Resize( 4u );
+    indices.Resize( 6u );
+
+    float scaledX = 0.5f * dimensions.x;
+    float scaledY = 0.5f * dimensions.y;
+
+    vertices[0].position     = Vector3( -scaledX, -scaledY, 0.0f );
+    vertices[0].textureCoord = Vector2( 0.0, 0.0f );
+    vertices[1].position     = Vector3(  scaledX, -scaledY, 0.0f );
+    vertices[1].textureCoord = Vector2( 1.0, 0.0f );
+    vertices[2].position     = Vector3(  scaledX,  scaledY, 0.0f );
+    vertices[2].textureCoord = Vector2( 1.0, 1.0f );
+    vertices[3].position     = Vector3( -scaledX,  scaledY, 0.0f );
+    vertices[3].textureCoord = Vector2( 0.0, 1.0f );
+
+    // All vertices have the same normal.
+    for( int i = 0; i < 4; ++i )
+    {
+      vertices[i].normal = Vector3( 0.0f, 0.0f, -1.0f );
+    }
+
+    indices[0] = 0;
+    indices[1] = 1;
+    indices[2] = 2;
+    indices[3] = 2;
+    indices[4] = 3;
+    indices[5] = 0;
+
+    // Use the helper method to create the geometry object.
+    return CreateTexturedGeometry( vertices, indices );
+  }
+
+  /**
+   * @brief Creates a geometry object for a cube (or cuboid).
+   * @param[in] dimensions The desired cube dimensions
+   * @param[in] reflectVerticalUVs Set to True to force the UVs to be vertically flipped
+   * @return A Geometry object
+   */
+  Geometry CreateCubeVertices( Vector3 dimensions, bool reflectVerticalUVs )
+  {
+    Vector<TexturedVertex> vertices;
+    Vector<unsigned short> indices;
+    int vertexIndex = 0u; // Tracks progress through vertices.
+    float scaledX = 0.5f * dimensions.x;
+    float scaledY = 0.5f * dimensions.y;
+    float scaledZ = 0.5f * dimensions.z;
+    float verticalTextureCoord = reflectVerticalUVs ? 0.0f : 1.0f;
+
+    vertices.Resize( 4u * 6u ); // 4 vertices x 6 faces
+
+    Vector<Vector3> positions;  // Stores vertex positions, which are shared between vertexes at the same position but with a different normal.
+    positions.Resize( 8u );
+    Vector<Vector3> normals;    // Stores normals, which are shared between vertexes of the same face.
+    normals.Resize( 6u );
+
+    positions[0] = Vector3( -scaledX,  scaledY, -scaledZ );
+    positions[1] = Vector3(  scaledX,  scaledY, -scaledZ );
+    positions[2] = Vector3(  scaledX,  scaledY,  scaledZ );
+    positions[3] = Vector3( -scaledX,  scaledY,  scaledZ );
+    positions[4] = Vector3( -scaledX, -scaledY, -scaledZ );
+    positions[5] = Vector3(  scaledX, -scaledY, -scaledZ );
+    positions[6] = Vector3(  scaledX, -scaledY,  scaledZ );
+    positions[7] = Vector3( -scaledX, -scaledY,  scaledZ );
+
+    normals[0] = Vector3(  0,  1,  0 );
+    normals[1] = Vector3(  0,  0, -1 );
+    normals[2] = Vector3(  1,  0,  0 );
+    normals[3] = Vector3(  0,  0,  1 );
+    normals[4] = Vector3( -1,  0,  0 );
+    normals[5] = Vector3(  0, -1,  0 );
+
+    // Top face, upward normals.
+    for( int i = 0; i < 4; ++i, ++vertexIndex )
+    {
+      vertices[vertexIndex].position = positions[i];
+      vertices[vertexIndex].normal = normals[0];
+      // The below logic forms the correct U/V pairs for a quad when "i" goes from 0 to 3.
+      vertices[vertexIndex].textureCoord = Vector2( ( i == 1 || i == 2 ) ? 1.0f : 0.0f, ( i == 2 || i == 3 ) ? 1.0f : 0.0f );
+    }
+
+    // Top face, outward normals.
+    for( int i = 0; i < 4; ++i, vertexIndex += 2 )
+    {
+      vertices[vertexIndex].position = positions[i];
+      vertices[vertexIndex].normal = normals[i + 1];
+
+      if( i == 3 )
+      {
+        // End, so loop around.
+        vertices[vertexIndex + 1].position = positions[0];
+      }
+      else
+      {
+        vertices[vertexIndex + 1].position = positions[i + 1];
+      }
+      vertices[vertexIndex + 1].normal = normals[i + 1];
+
+      vertices[vertexIndex].textureCoord = Vector2( 0.0f, verticalTextureCoord );
+      vertices[vertexIndex+1].textureCoord = Vector2( 1.0f, verticalTextureCoord );
+    }
+
+    // Flip the vertical texture coord for the UV values of the bottom points.
+    verticalTextureCoord = 1.0f - verticalTextureCoord;
+
+    // Bottom face, outward normals.
+    for( int i = 0; i < 4; ++i, vertexIndex += 2 )
+    {
+      vertices[vertexIndex].position = positions[i + 4];
+      vertices[vertexIndex].normal = normals[i + 1];
+
+      if( i == 3 )
+      {
+        // End, so loop around.
+        vertices[vertexIndex + 1].position = positions[4];
+      }
+      else
+      {
+        vertices[vertexIndex + 1].position = positions[i + 5];
+      }
+      vertices[vertexIndex + 1].normal = normals[i + 1];
+
+      vertices[vertexIndex].textureCoord = Vector2( 0.0f, verticalTextureCoord );
+      vertices[vertexIndex+1].textureCoord = Vector2( 1.0f, verticalTextureCoord );
+    }
+
+    // Bottom face, downward normals.
+    for( int i = 0; i < 4; ++i, ++vertexIndex )
+    {
+      // Reverse positions for bottom face to keep triangles clockwise (for culling).
+      vertices[vertexIndex].position = positions[ 7 - i ];
+      vertices[vertexIndex].normal = normals[5];
+      // The below logic forms the correct U/V pairs for a quad when "i" goes from 0 to 3.
+      vertices[vertexIndex].textureCoord = Vector2( ( i == 1 || i == 2 ) ? 1.0f : 0.0f, ( i == 2 || i == 3 ) ? 1.0f : 0.0f );
+    }
+
+    // Create cube indices.
+    int triangleIndex = 0u;     //Track progress through indices.
+    indices.Resize( 3u * 12u ); // 3 points x 12 triangles.
+
+    // Top face.
+    indices[triangleIndex] =     0;
+    indices[triangleIndex + 1] = 1;
+    indices[triangleIndex + 2] = 2;
+    indices[triangleIndex + 3] = 2;
+    indices[triangleIndex + 4] = 3;
+    indices[triangleIndex + 5] = 0;
+    triangleIndex += 6;
+
+    int topFaceStart = 4u;
+    int bottomFaceStart = topFaceStart + 8u;
+
+    // Side faces.
+    for( int i = 0; i < 8; i += 2, triangleIndex += 6 )
+    {
+      indices[triangleIndex    ] = i + topFaceStart;
+      indices[triangleIndex + 1] = i + bottomFaceStart + 1;
+      indices[triangleIndex + 2] = i + topFaceStart + 1;
+      indices[triangleIndex + 3] = i + topFaceStart;
+      indices[triangleIndex + 4] = i + bottomFaceStart;
+      indices[triangleIndex + 5] = i + bottomFaceStart + 1;
+    }
+
+    // Bottom face.
+    indices[triangleIndex] =     20;
+    indices[triangleIndex + 1] = 21;
+    indices[triangleIndex + 2] = 22;
+    indices[triangleIndex + 3] = 22;
+    indices[triangleIndex + 4] = 23;
+    indices[triangleIndex + 5] = 20;
+
+    // Use the helper method to create the geometry object.
+    return CreateTexturedGeometry( vertices, indices );
+  }
+
+  // Signal handlers:
+
+  /**
+   * @brief OnTouch signal handler.
+   * @param[in] actor The actor that has been touched
+   * @param[in] touch The touch information
+   * @return True if the event has been handled
+   */
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // Quit the application.
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * @brief OnKeyEvent signal handler.
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  // Member variables:
+
+  Application&     mApplication;       ///< The DALi application object
+  Toolkit::Control mView;              ///< The view used to show the background
+
+  Animation        mRotationAnimation; ///< The animation to spin the cube & floor
+  Animation        mBounceAnimation;   ///< The animation to bounce the cube
+  Actor            mCubes[2];          ///< The cube object containers
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  RendererStencilExample example( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/renderer-stencil/renderer-stencil-shaders.h b/examples/renderer-stencil/renderer-stencil-shaders.h
new file mode 100644 (file)
index 0000000..fcf758f
--- /dev/null
@@ -0,0 +1,125 @@
+#ifndef DALI_DEMO_RENDERER_STENCIL_SHADERS_H
+#define DALI_DEMO_RENDERER_STENCIL_SHADERS_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/rendering/shader.h>
+
+// Shader uniforms:
+const char * const COLOR_UNIFORM_NAME( "uColor" );
+const char * const OBJECT_DIMENSIONS_UNIFORM_NAME( "uObjectDimensions" );
+const char * const STAGE_SIZE_UNIFORM_NAME( "uStageSize" );
+const char * const LIGHT_POSITION_UNIFORM_NAME = "uLightPosition";
+const char * const POSITION( "aPosition");
+const char * const NORMAL( "aNormal" );
+const char * const TEXTURE( "aTexCoord" );
+
+// Shader for basic, per-vertex lighting (vertex):
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+  attribute mediump vec3  aPosition;
+  attribute highp   vec3  aNormal;
+  attribute highp   vec2  aTexCoord;
+
+  varying   mediump vec2  vTexCoord;
+  uniform   mediump mat4  uMvpMatrix;
+  uniform   mediump vec3  uSize;
+  uniform   mediump vec3  uObjectDimensions;
+  varying   mediump vec3  vIllumination;
+  uniform   mediump mat4  uModelView;
+  uniform   mediump mat4  uViewMatrix;
+  uniform   mediump mat3  uNormalMatrix;
+  uniform   mediump vec3  uLightPosition;
+
+  void main()
+  {
+    mediump vec4 vertexPosition = vec4( aPosition * uObjectDimensions, 1.0 );
+    vertexPosition = uMvpMatrix * vertexPosition;
+
+    vec4 mvVertexPosition = uModelView * vertexPosition;
+
+    vec3 vectorToLight = normalize( mat3( uViewMatrix ) * uLightPosition - mvVertexPosition.xyz );
+
+    vec3 normal = uNormalMatrix * aNormal;
+    float lightDiffuse = max( dot( vectorToLight, normal ), 0.0 );
+    vIllumination = vec3( lightDiffuse * 0.5 + 0.5 );
+
+    gl_Position = vertexPosition;
+  }
+);
+
+// Fragment shader.
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+  varying mediump vec2  vTexCoord;
+  varying mediump vec3  vIllumination;
+  uniform lowp    vec4  uColor;
+  uniform sampler2D     sTexture;
+
+  void main()
+  {
+    gl_FragColor = vec4( vIllumination.rgb * uColor.rgb, uColor.a );
+  }
+);
+
+// Shader for basic, per-vertex lighting with texture (vertex):
+const char* VERTEX_SHADER_TEXTURED = DALI_COMPOSE_SHADER(
+  attribute mediump vec3  aPosition;
+  attribute highp   vec3  aNormal;
+  attribute highp   vec2  aTexCoord;
+
+  varying   mediump vec2  vTexCoord;
+  uniform   mediump mat4  uMvpMatrix;
+  uniform   mediump vec3  uSize;
+  uniform   mediump vec3  uObjectDimensions;
+  varying   mediump vec3  vIllumination;
+  uniform   mediump mat4  uModelView;
+  uniform   mediump mat4  uViewMatrix;
+  uniform   mediump mat3  uNormalMatrix;
+  uniform   mediump vec3  uLightPosition;
+
+  void main()
+  {
+    mediump vec4 vertexPosition = vec4( aPosition * uObjectDimensions, 1.0 );
+    vertexPosition = uMvpMatrix * vertexPosition;
+
+    vec4 mvVertexPosition = uModelView * vertexPosition;
+
+    vec3 vectorToLight = normalize( mat3( uViewMatrix ) * uLightPosition - mvVertexPosition.xyz );
+
+    vec3 normal = uNormalMatrix * aNormal;
+    float lightDiffuse = max( dot( vectorToLight, normal ), 0.0 );
+    vIllumination = vec3( lightDiffuse * 0.5 + 0.5 );
+
+    vTexCoord = aTexCoord;
+    gl_Position = vertexPosition;
+  }
+);
+
+// Fragment shader.
+const char* FRAGMENT_SHADER_TEXTURED = DALI_COMPOSE_SHADER(
+  varying mediump vec2  vTexCoord;
+  varying mediump vec3  vIllumination;
+  uniform lowp    vec4  uColor;
+  uniform sampler2D     sTexture;
+
+  void main()
+  {
+    gl_FragColor = vec4( texture2D( sTexture, vTexCoord ).rgb * vIllumination.rgb * uColor.rgb, uColor.a );
+  }
+);
+
+#endif // DALI_DEMO_RENDERER_STENCIL_SHADERS_H
diff --git a/examples/rendering-basic-light/rendering-basic-light-example.cpp b/examples/rendering-basic-light/rendering-basic-light-example.cpp
new file mode 100644 (file)
index 0000000..a5fdcb3
--- /dev/null
@@ -0,0 +1,418 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+#define MATERIALS_MAX 24
+
+namespace
+{
+
+const char* BASIC_LIGHT_THEME( DEMO_STYLE_DIR "basic-light-theme.json" );
+const char* const CUSTOM_BASIC_LIGHT_THEME = "BasicLightButton";
+
+struct Material
+{
+    const char *name;
+    Vector3 ambient;
+    Vector3 diffuse;
+    Vector3 specular;
+    float shininess;
+};
+
+Material material[] =
+{
+        {"Emerald",        Vector3( 0.0215f,   0.1745f,   0.0215f ),   Vector3( 0.07568f,  0.61424f,    0.07568f ),    Vector3( 0.633,       0.727811f,   0.633f ),      0.6f },
+        {"Jade",           Vector3( 0.135f,    0.2225f,   0.1575f ),   Vector3( 0.54f,     0.89f,       0.63f ),       Vector3( 0.316228f,   0.316228f,   0.316228f ),   0.1f },
+        {"Obsidian",       Vector3( 0.05375f,  0.05f,     0.06625f ),  Vector3( 0.18275f,  0.17f,       0.22525f ),    Vector3( 0.332741f,   0.328634f,   0.346435f ),   0.3f },
+        {"Perl",           Vector3( 0.25f,     0.20725f,  0.20725f ),  Vector3( 1.0f,      0.829f,      0.829f ),      Vector3( 0.296648f,   0.296648f,   0.296648f ),   0.088f },
+        {"Ruby",           Vector3( 0.1745f,   0.01175f,  0.01175f ),  Vector3( 0.61424f,  0.04136f,    0.04136f ),    Vector3( 0.727811f,   0.626959f,   0.626959f ),   0.6f },
+        {"Turquoise",      Vector3( 0.1f,      0.18725f,  0.1745f ),   Vector3( 0.396f,    0.74151f,    0.69102f ),    Vector3( 0.297254,    0.30829f,    0.306678f ),   0.1f },
+        {"Brass",          Vector3( 0.329412f, 0.223529f, 0.027451f ), Vector3( 0.780392f, 0.568627f,   0.113725f ),   Vector3( 0.992157f,   0.941176f,   0.807843f ),   0.21794872f },
+        {"Bronze",         Vector3( 0.2125f,   0.1275f,   0.054f ),    Vector3( 0.714f,    0.4284f,     0.18144f ),    Vector3( 0.393548f,   0.271906f,   0.166721f ),   0.2f },
+        {"Chrome",         Vector3( 0.25f,     0.25f,     0.25f ),     Vector3( 0.4f,      0.4f,        0.4f),         Vector3( 0.774597f,   0.774597f,   0.774597f ),   0.6f },
+        {"Copper",         Vector3( 0.19125f,  0.0735f,   0.0225f ),   Vector3( 0.7038f,   0.27048f,    0.0828f ),     Vector3( 0.256777f,   0.137622f,   0.086014f ),   0.1f },
+        {"Gold",           Vector3( 0.24725f,  0.1995f,   0.0745f ),   Vector3( 0.75164f,  0.60648f,    0.22648f ),    Vector3( 0.628281f,   0.555802f,   0.366065f ),   0.4f },
+        {"Silver",         Vector3( 0.19225f,  0.19225f,  0.19225f ),  Vector3( 0.50754f,  0.50754f,    0.50754f ),    Vector3( 0.508273f,   0.508273f,   0.508273f ),   0.4f },
+        {"Black plastic",  Vector3( 0.0f,      0.0f,      0.0f ),      Vector3( 0.01f,     0.01f,       0.01f ),       Vector3( 0.50f,       0.50f,       0.50f ),       0.25f },
+        {"Cyan plastic",   Vector3( 0.0f,      0.1f,      0.06f ),     Vector3( 0.0f,      0.50980392f, 0.50980392f ), Vector3( 0.50196078f, 0.50196078f, 0.50196078f ), 0.25f },
+        {"Green plastic",  Vector3( 0.0f,      0.0f,      0.0f ),      Vector3( 0.1f,      0.35f,       0.1f ),        Vector3( 0.45,        0.55,        0.45 ),        0.25f },
+        {"Red plastic",    Vector3( 0.0f,      0.0f,      0.0f ),      Vector3( 0.5f,      0.0f,        0.0f ),        Vector3( 0.7f,        0.6f,        0.6f ),        0.25f },
+        {"White plastic",  Vector3( 0.0f,      0.0f,      0.0f ),      Vector3( 0.55f,     0.55f,       0.55f ),       Vector3( 0.7f,        0.7f,        0.7f ),        0.25f },
+        {"Yellow plastic", Vector3( 0.0f,      0.0f,      0.0f ),      Vector3( 0.5f,      0.5f,        0.0f ),        Vector3( 0.6f,        0.6f,        0.5f ),        0.25f },
+        {"Black rubber",   Vector3( 0.02f,     0.02f,     0.02f ),     Vector3( 0.01f,     0.01f,       0.01f ),       Vector3( 0.4f,        0.4f,        0.4f ),        0.078125f },
+        {"Cyan rubber",    Vector3( 0.0f,      0.05f,     0.05f ),     Vector3( 0.4f,      0.5f,        0.5f ),        Vector3( 0.04f,       0.7f,        0.7f ),        0.078125f },
+        {"Green rubber",   Vector3( 0.0f,      0.05f,     0.0f ),      Vector3( 0.4f,      0.5f,        0.4f ),        Vector3( 0.04f,       0.7f,        0.04f ),       0.078125f },
+        {"Red rubber",     Vector3( 0.05f,     0.0f,      0.0f ),      Vector3( 0.5f,      0.4f,        0.4f ),        Vector3( 0.7f,        0.04f,       0.04f ),       0.078125f },
+        {"White rubber",   Vector3( 0.05f,     0.05f,     0.05f ),     Vector3( 0.5f,      0.5f,        0.5f ),        Vector3( 0.7f,        0.7f,        0.7f ),        0.078125f },
+        {"Yellow rubber",  Vector3( 0.05f,     0.05f,     0.0f ),      Vector3( 0.5f,      0.5f,        0.4f ),        Vector3( 0.7f,        0.7f,        0.04f ),       0.078125f }
+};
+
+int MaterialID = 0;
+
+/*
+ * Vertex shader
+ */
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+attribute mediump vec3 aPosition;\n // DALi shader builtin
+attribute mediump vec3 aNormal;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+uniform   mediump mat4 uModelView;\n // DALi shader builtin
+uniform   mediump mat3 uNormalMatrix;\n // DALi shader builtin
+\n
+varying mediump vec3 vNormal;\n
+varying mediump vec3 vFragPos;\n
+\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  vFragPos = vec3(uModelView * vertexPosition);\n
+  vNormal = uNormalMatrix * aNormal;\n
+  \n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shader
+ */
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+varying mediump vec3 vNormal;\n
+varying mediump vec3 vFragPos;\n
+uniform mediump  vec3 viewPos;\n // custom uniform
+\n
+struct Material {\n
+    mediump vec3 ambient;\n
+    mediump vec3 diffuse;\n
+    mediump vec3 specular;\n
+    mediump float shininess;\n
+};\n
+struct Light {\n
+    mediump vec3 position;\n
+    mediump vec3 color;\n
+};\n
+uniform Material material;\n // custom uniform
+uniform Light light;\n  // custom uniform
+\n
+void main()\n
+{\n
+\n    // Ambient
+    mediump vec3 ambient = material.ambient * light.color;\n
+\n    // Diffuse
+    mediump vec3 norm = normalize(vNormal);\n
+    mediump vec3 lightDir = normalize(light.position - vFragPos);\n
+    mediump float diff = max(dot(norm, lightDir), 0.0);\n
+    mediump vec3 diffuse = material.diffuse * diff * light.color;\n
+    \n
+\n    // Specular
+    mediump vec3 viewDir = normalize(viewPos - vFragPos);\n
+    mediump vec3 reflectDir = reflect(-lightDir, norm);  \n
+    mediump float spec = pow(max(dot(viewDir, reflectDir), 0.0), material.shininess);\n
+    mediump vec3 specular = material.specular * spec * light.color;  \n
+    mediump vec3 result = (ambient + diffuse + specular);\n
+    gl_FragColor = vec4(result, 1.0);\n
+}\n
+);
+
+}
+
+// This example shows per-pixel lighting of materials with different ambient, diffuse, specular and shininess parameters
+//
+class BasicLightController : public ConnectionTracker
+{
+public:
+
+  BasicLightController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &BasicLightController::Create );
+  }
+
+  ~BasicLightController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::BLACK );
+    mLabel = TextLabel::New( material[MaterialID].name );
+    mLabel.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mLabel.SetParentOrigin( Vector3( 0.5f, 0.0f, 0.5f ) );
+    mLabel.SetSize( stage.GetSize().x * 0.5f, stage.GetSize().y * 0.083f );
+    mLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Vector4( 1.0f, 1.0f, 1.0f, 1.0f ));
+    stage.Add( mLabel );
+    mButton = PushButton::New();
+    mButton.SetProperty( Button::Property::LABEL, "Exit" );
+    mButton.SetParentOrigin( ParentOrigin::CENTER );
+    mButton.SetAnchorPoint( AnchorPoint::CENTER );
+    mButton.ClickedSignal().Connect( this, &BasicLightController::OnExit );
+    mButton.SetParentOrigin( Vector3( 0.5f, 0.1f, 0.5f ) );
+    mButton.SetStyleName(CUSTOM_BASIC_LIGHT_THEME);
+    mButton.SetColor( Vector4( material[MaterialID].diffuse) + Vector4( 0.0f, 0.0f, 0.0f, 1.0f ) );
+    stage.Add(mButton);
+
+    // Step 1. Create shader
+    CreateCubeShader();
+
+    // Step 2. Prepare geometry
+    CreateCubeGeometry();
+
+    // Step 3. Create a renderer
+    CreateRenderer();
+
+    // Step 4. Create an Actor
+    CreateActor();
+
+    // Step 5. Play animation to rotate the cube
+    PlayAnimation();
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &BasicLightController::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &BasicLightController::OnKeyEvent );
+  }
+
+  /**
+   * This function will change the material of the cube when touched
+   */
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    if(touch.GetState(0) == PointState::UP)
+    {
+        MaterialID++;
+        MaterialID %= MATERIALS_MAX;
+
+        mShader.SetProperty( mShader.GetPropertyIndex( "material.ambient" ), material[MaterialID].ambient );
+        mShader.SetProperty( mShader.GetPropertyIndex( "material.diffuse" ), material[MaterialID].diffuse );
+        mShader.SetProperty( mShader.GetPropertyIndex( "material.specular" ), material[MaterialID].specular );
+        mShader.SetProperty( mShader.GetPropertyIndex( "material.shininess" ), material[MaterialID].shininess * 128.0f );
+        mLabel.SetProperty( TextLabel::Property::TEXT, material[MaterialID].name );
+        mButton.SetColor( Vector4(material[MaterialID].diffuse) + Vector4(0.0f, 0.0f, 0.0f, 1.0f) );
+    }
+    return true;
+  }
+
+  /**
+   * This function will the terminate the application when the exit button is pressed
+   */
+  bool OnExit( Button button )
+  {
+      mApplication.Quit();
+      return true;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * This function creates a cube geometry including texture coordinates.
+   * Also it demonstrates using the indexed draw feature by setting an index array.
+   */
+  void CreateCubeGeometry()
+  {
+    struct Vertex
+    {
+      Vector3 aPosition;
+      Vector3 aNormal;
+    };
+
+    const Vector3 NORMAL0(-1.0f, 0.0f, 0.0f );
+    const Vector3 NORMAL1( 0.0f, 1.0f, 0.0f );
+    const Vector3 NORMAL2( 0.0f,-1.0f, 0.0f );
+    const Vector3 NORMAL3( 0.0f, 0.0f, 1.0f );
+    const Vector3 NORMAL4( 1.0f, 0.0f, 0.0f );
+    const Vector3 NORMAL5( 0.0f, 0.0f,-1.0f );
+
+    Vertex vertices[] = {
+      { Vector3(  1.0f,-1.0f,-1.0f ), NORMAL5 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), NORMAL5 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), NORMAL5 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), NORMAL3 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), NORMAL3 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), NORMAL3 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), NORMAL4 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), NORMAL4 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), NORMAL4 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), NORMAL1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), NORMAL1 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), NORMAL1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), NORMAL0 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), NORMAL0 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), NORMAL0 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), NORMAL2 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), NORMAL2 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), NORMAL2 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), NORMAL5 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), NORMAL5 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), NORMAL5 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), NORMAL3 },
+      { Vector3( -1.0f,-1.0f, 1.0f ), NORMAL3 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), NORMAL3 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), NORMAL4 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), NORMAL4 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), NORMAL4 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), NORMAL1 },
+      { Vector3( -1.0f,-1.0f, 1.0f ), NORMAL1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), NORMAL1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), NORMAL0 },
+      { Vector3( -1.0f,-1.0f, 1.0f ), NORMAL0 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), NORMAL0 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), NORMAL2 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), NORMAL2 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), NORMAL2 },
+    };
+
+    Property::Map property;
+    property.Insert( "aPosition", Property::VECTOR3 );
+    property.Insert( "aNormal", Property::VECTOR3 );
+
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( property );
+
+    vertexBuffer.SetData( vertices, sizeof(vertices) / sizeof(Vertex) );
+
+    // create indices
+    const unsigned short INDEX_CUBE[] = {
+      2, 1, 0,
+      5, 4, 3,
+      8, 7, 6,
+      11, 10, 9,
+      14, 13, 12,
+      17, 16, 15,
+      20, 19, 18,
+      23, 22, 21,
+      26, 25, 24,
+      29, 28, 27,
+      32, 31, 30,
+      35, 34, 33
+    };
+    mGeometry = Geometry::New();
+    mGeometry.AddVertexBuffer( vertexBuffer );
+    mGeometry.SetIndexBuffer( INDEX_CUBE,
+                              sizeof(INDEX_CUBE)/sizeof(INDEX_CUBE[0])
+        );
+    mGeometry.SetType( Geometry::TRIANGLES );
+  }
+
+  /**
+   * Creates a shader using inlined variable VERTEX_SHADER and FRAGMENT_SHADER
+   *
+   * Shaders are very basic and all they do is transforming vertices and interpolating
+   * input per-vertex color.
+   */
+  void CreateCubeShader()
+  {
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+
+    float scale = 120.0f;
+    mShader.RegisterProperty( "light.position",Vector3( 1.2 * scale, scale, 2.0 * scale ) );
+    mShader.RegisterProperty( "light.color", Vector3( 1.0f, 1.0f, 1.0f ) );
+    mShader.RegisterProperty( "viewPos", Vector3( 0, 0, 3.0 * scale ) );
+
+    mShader.RegisterProperty( "material.ambient", material[MaterialID].ambient );
+    mShader.RegisterProperty( "material.diffuse", material[MaterialID].diffuse );
+    mShader.RegisterProperty( "material.specular", material[MaterialID].specular );
+    mShader.RegisterProperty( "material.shininess", material[MaterialID].shininess * 128.0f );
+  }
+
+  /**
+   * Function creates renderer. It turns on depth test and depth write.
+   */
+  void CreateRenderer()
+  {
+    mRenderer = Renderer::New( mGeometry, mShader );
+
+    // Face culling is enabled to hide the backwards facing sides of the cube
+    // This is sufficient to render a single object; for more complex scenes depth-testing might be required
+    mRenderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+  }
+
+  /**
+   * Creates new actor and attaches renderer.
+   */
+  void CreateActor()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    float quarterStageWidth = stage.GetSize().x * 0.25f;
+    mActor = Actor::New();
+    mActor.SetColor( Vector4( 1.0f, 1.0f, 0.6f, 1.0f ) );
+    mActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mActor.SetParentOrigin( ParentOrigin::CENTER );
+    mActor.SetSize( Vector3( quarterStageWidth, quarterStageWidth, quarterStageWidth ) );
+    mActor.AddRenderer( mRenderer );
+    stage.Add( mActor );
+  }
+
+  /**
+   * Plays animation
+   */
+  void PlayAnimation()
+  {
+    mAnimation = Animation::New( 15.0f );
+    mAnimation.SetLooping( true );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::ZAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::YAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::XAXIS ) );
+    mAnimation.Play();
+  }
+
+private:
+  Application&  mApplication;
+  TextLabel mLabel;
+  PushButton mButton;
+  Renderer mRenderer;
+  Shader mShader;
+  Geometry mGeometry;
+  Actor mActor;
+  Animation mAnimation;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, BASIC_LIGHT_THEME);
+  BasicLightController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/rendering-basic-pbr/ktx-loader.cpp b/examples/rendering-basic-pbr/ktx-loader.cpp
new file mode 100644 (file)
index 0000000..13e767c
--- /dev/null
@@ -0,0 +1,185 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// FILE HEADER
+#include "ktx-loader.h"
+
+// EXTERNAL INCLUDES
+#include <memory.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <dali/integration-api/debug.h>
+#include <dali/devel-api/adaptor-framework/file-stream.h>
+
+namespace PbrDemo
+{
+
+struct KtxFileHeader
+{
+  char   identifier[12];
+  uint32_t  endianness;
+  uint32_t  glType;    //(UNSIGNED_BYTE, UNSIGNED_SHORT_5_6_5, etc.)
+  uint32_t  glTypeSize;
+  uint32_t  glFormat;  //(RGB, RGBA, BGRA, etc.)
+  uint32_t  glInternalFormat; //For uncompressed textures, specifies the internalformat parameter passed to glTexStorage*D or glTexImage*D
+  uint32_t  glBaseInternalFormat;
+  uint32_t  pixelWidth;
+  uint32_t  pixelHeight;
+  uint32_t  pixelDepth;
+  uint32_t  numberOfArrayElements;
+  uint32_t  numberOfFaces; //Cube map faces are stored in the order: +X, -X, +Y, -Y, +Z, -Z.
+  uint32_t  numberOfMipmapLevels;
+  uint32_t  bytesOfKeyValueData;
+};
+
+/**
+ * Convert KTX format to Dali::Pixel::Format
+ */
+bool ConvertPixelFormat(const uint32_t ktxPixelFormat, Dali::Pixel::Format& format)
+{
+  switch( ktxPixelFormat )
+  {
+    case 0x93B0: // GL_COMPRESSED_RGBA_ASTC_4x4_KHR
+    {
+      format = Dali::Pixel::COMPRESSED_RGBA_ASTC_4x4_KHR;
+      break;
+    }
+    case 0x881B:// GL_RGB16F
+    {
+      format = Dali::Pixel::RGB16F;
+      break;
+    }
+    case 0x8815: // GL_RGB32F
+    {
+      format = Dali::Pixel::RGB32F;
+      break;
+    }
+    case 0x8C3A: // GL_R11F_G11F_B10F
+    {
+      format = Dali::Pixel::RGB32F;
+      break;
+    }
+    case 0x8D7C: // GL_RGBA8UI
+    {
+      format = Dali::Pixel::RGBA8888;
+      break;
+    }
+    case 0x8D7D: // GL_RGB8UI
+    {
+      format = Dali::Pixel::RGB888;
+      break;
+    }
+    default:
+    {
+      return false;
+    }
+  }
+
+  return true;
+}
+
+bool LoadCubeMapFromKtxFile( const std::string& path, CubeData& cubedata )
+{
+  std::unique_ptr<FILE, void(*)(FILE*)> fp(fopen(path.c_str(), "rb"), [](FILE* fp) {
+    if (fp)
+    {
+      fclose(fp);
+    }
+  });
+  if (!fp)
+  {
+    return false;
+  }
+
+  KtxFileHeader header;
+  int result = fread(&header, sizeof(KtxFileHeader), 1u, fp.get());
+  if (0 == result)
+  {
+    return false;
+  }
+
+  // Skip the key-values:
+  if (fseek(fp.get(), header.bytesOfKeyValueData, SEEK_CUR))
+  {
+    return false;
+  }
+
+  cubedata.img.resize(header.numberOfFaces);
+
+  for (unsigned int face = 0; face < header.numberOfFaces; ++face) //array_element must be 0 or 1
+  {
+    cubedata.img[face].resize(header.numberOfMipmapLevels);
+  }
+
+  if (0 == header.numberOfMipmapLevels)
+  {
+    header.numberOfMipmapLevels = 1u;
+  }
+
+  if (0 == header.numberOfArrayElements)
+  {
+    header.numberOfArrayElements = 1u;
+  }
+
+  if (0 == header.pixelDepth)
+  {
+    header.pixelDepth = 1u;
+  }
+
+  if (0 == header.pixelHeight)
+  {
+    header.pixelHeight = 1u;
+  }
+
+  Dali::Pixel::Format daliformat = Pixel::RGB888;
+
+  ConvertPixelFormat(header.glInternalFormat, daliformat);
+
+  for (unsigned int mipmapLevel = 0; mipmapLevel < header.numberOfMipmapLevels; ++mipmapLevel)
+  {
+    uint32_t byteSize = 0;
+    if (fread(&byteSize, sizeof(byteSize), 1u, fp.get()) != 1)
+    {
+      return false;
+    }
+
+    if (0 != byteSize % 4u)
+    {
+      byteSize += 4u - byteSize % 4u;
+    }
+
+    for (unsigned int arrayElement = 0; arrayElement < header.numberOfArrayElements; ++arrayElement) // arrayElement must be 0 or 1
+    {
+      for (unsigned int face = 0; face < header.numberOfFaces; ++face)
+      {
+        std::unique_ptr<uint8_t, void(*)(void*)> img(static_cast<unsigned char*>(malloc(byteSize)), free); // resources will be freed when the PixelData is destroyed.
+        if (fread(img.get(), byteSize, 1u, fp.get()) != 1)
+        {
+          return false;
+        }
+        cubedata.img[face][mipmapLevel] = PixelData::New(img.release(), byteSize, header.pixelWidth, header.pixelHeight, daliformat, PixelData::FREE);
+      }
+    }
+
+    header.pixelHeight /= 2u;
+    header.pixelWidth /= 2u;
+  }
+
+  return true;
+}
+
+} // namespace PbrDemo
diff --git a/examples/rendering-basic-pbr/ktx-loader.h b/examples/rendering-basic-pbr/ktx-loader.h
new file mode 100644 (file)
index 0000000..c805f89
--- /dev/null
@@ -0,0 +1,48 @@
+#ifndef KTX_LOADER_H
+#define KTX_LOADER_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/common/vector-wrapper.h>
+#include <dali/public-api/images/pixel-data.h>
+
+using namespace Dali;
+
+namespace PbrDemo
+{
+
+/**
+ * @brief Stores the pixel data objects for each face of the cube texture and their mipmaps.
+ */
+struct CubeData
+{
+  std::vector< std::vector<Dali::PixelData> > img;
+};
+
+/**
+ * @brief Loads a cube map texture from a ktx file.
+ *
+ * @param[in] path The file path.
+ * @param[out] cubedata The data structure with all pixel data objects.
+ */
+bool LoadCubeMapFromKtxFile( const std::string& path, CubeData& cubedata );
+
+} // namespace PbrDemo
+
+#endif //KTX_LOADER_H
diff --git a/examples/rendering-basic-pbr/model-pbr.cpp b/examples/rendering-basic-pbr/model-pbr.cpp
new file mode 100644 (file)
index 0000000..565f5a7
--- /dev/null
@@ -0,0 +1,123 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "model-pbr.h"
+
+// EXTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/file-loader.h>
+#include <cstdio>
+#include <string.h>
+
+// INTERNAL INCLUDES
+#include "obj-loader.h"
+
+namespace
+{
+const int SEGMENTS = 16;
+
+struct Vertices
+{
+  Vector<Vector3> positions;
+  Vector<Vector3> normals;
+  Vector<Vector3> tangents;
+  Vector<Vector2> texCoords;
+};
+
+} // namespace
+
+
+ModelPbr::ModelPbr()
+{
+}
+
+ModelPbr::~ModelPbr()
+{
+}
+
+void ModelPbr::Init( Shader shader, const std::string& modelUrl, const Vector3& position, const Vector3& size )
+{
+  Geometry geometry;
+
+  geometry = CreateGeometry( modelUrl );
+
+  Renderer renderer = Renderer::New( geometry, shader );
+
+  if( mTextureSet )
+  {
+    renderer.SetTextures( mTextureSet );
+  }
+
+  // Face culling is enabled to hide the backwards facing sides of the model
+  // This is sufficient to render a single object; for more complex scenes depth-testing might be required
+  renderer.SetProperty( Renderer::Property::DEPTH_TEST_MODE, DepthTestMode::ON );
+  renderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, DepthWriteMode::ON );
+  renderer.SetProperty( Renderer::Property::DEPTH_FUNCTION, DepthFunction::LESS_EQUAL );
+  renderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+
+  mActor = Actor::New();
+  mActor.SetAnchorPoint( AnchorPoint::CENTER );
+  mActor.SetParentOrigin( ParentOrigin::CENTER );
+  mActor.SetPosition( position );
+  mActor.SetSize( size );
+  mActor.AddRenderer( renderer );
+}
+
+/**
+ * Set texture and sampler
+ */
+void ModelPbr::InitTexture(Texture albedoM, Texture normalR, Texture texDiffuse, Texture texSpecular)
+{
+  mTextureSet = TextureSet::New();
+  mTextureSet.SetTexture( 0u, albedoM );
+  mTextureSet.SetTexture( 1u, normalR );
+  mTextureSet.SetTexture( 2u, texDiffuse );
+  mTextureSet.SetTexture( 3u, texSpecular );
+
+  Sampler sampler = Sampler::New();
+  sampler.SetWrapMode(WrapMode::CLAMP_TO_EDGE,WrapMode::CLAMP_TO_EDGE,WrapMode::CLAMP_TO_EDGE);
+  sampler.SetFilterMode(FilterMode::LINEAR_MIPMAP_LINEAR,FilterMode::LINEAR);
+  mTextureSet.SetSampler(3,sampler);
+}
+
+Actor& ModelPbr::GetActor()
+{
+  return mActor;
+}
+
+/**
+ * Create geometry from OBJ path file
+ */
+Geometry ModelPbr::CreateGeometry( const std::string& url )
+{
+  std::streampos fileSize;
+  Dali::Vector<char> fileContent;
+
+  Geometry geometry;
+
+  if( FileLoader::ReadFile( url, fileSize, fileContent, FileLoader::TEXT ) )
+  {
+    PbrDemo::ObjLoader objLoader;
+
+    objLoader.ClearArrays();
+    objLoader.LoadObject( fileContent.Begin(), fileSize );
+
+    geometry = objLoader.CreateGeometry( PbrDemo::ObjLoader::TEXTURE_COORDINATES | PbrDemo::ObjLoader::TANGENTS, true );
+  }
+
+  return geometry;
+}
diff --git a/examples/rendering-basic-pbr/model-pbr.h b/examples/rendering-basic-pbr/model-pbr.h
new file mode 100644 (file)
index 0000000..9cc956a
--- /dev/null
@@ -0,0 +1,95 @@
+#ifndef DALI_DEMO_MODELPBR_H
+#define DALI_DEMO_MODELPBR_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/actors/actor.h>
+#include <dali/public-api/rendering/renderer.h>
+
+using namespace Dali;
+
+class ModelPbr
+{
+public:
+  /**
+   * @brief Constructor.
+   * Does nothing.
+   */
+  ModelPbr();
+
+  /**
+   * @brief Destructor
+   * Does nothing.
+   */
+  ~ModelPbr();
+
+  /**
+   * @brief Initializes an Actor for the Physically Based Rendering.
+   *
+   * @note Call InitTexture() before calling this method.
+   *
+   * It creates a geometry for the renderer.
+   * According to the parameter @p modelType it may create a @e quad, a @e sphere or load a model.
+   * If @p modelType is @e MODEL, the @p modelUrl parameter needs to be set with a valid url pointing a file with a @e obj model.
+   *
+   * A renderer is created with the geometry and the shader and it's set to the an actor that can be retrieved by calling GetActor().
+   * The @p position and @p size is set to the actor.
+   *
+   * @param[in] shader The Physically Based Rendering shader.
+   * @param[in] modelType The type of geometry.
+   * @param[in] modelUrl The url of the model if the paramterer @p modelType is @e MODEL.
+   * @param[in] position The position of the actor.
+   * @param[in] size The size of the actor.
+   */
+  void Init( Shader shader, const std::string& modelUrl, const Vector3& position, const Vector3& size );
+
+  /**
+   * @brief Initializes the @p mTextureSet member with the needed textures for Physically Based Rendering.
+   *
+   * @param[in] albedoMetalTexture The albedo metal texture.
+   * @param[in] normalRoughTexture The normal rough texture.
+   * @param[in] diffuseTexture The diffuse texture.
+   * @param[in] specularTexture The specular texture.
+   */
+  void InitTexture( Texture albedoMetalTexture, Texture normalRoughTexture, Texture diffuseTexture, Texture specularTexture );
+
+  /**
+   * @brief Retrieves the actor created by calling the Init() method.
+   *
+   * @return The Actor for the Physically Based Rendering.
+   */
+  Actor &GetActor();
+
+private:
+
+  /**
+   * @brief Creates a geometry from a @e obj model.
+   *
+   * @param[in] url A url pointing a file with a @e obj model.
+   *
+   * @return The geometry.
+   */
+  Geometry CreateGeometry( const std::string& url );
+
+  Actor mActor;
+  TextureSet mTextureSet;
+};
+
+#endif // DALI_DEMO_MODELPBR_H
+
diff --git a/examples/rendering-basic-pbr/model-skybox.cpp b/examples/rendering-basic-pbr/model-skybox.cpp
new file mode 100644 (file)
index 0000000..8873e0f
--- /dev/null
@@ -0,0 +1,194 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "model-skybox.h"
+
+// EXTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/file-loader.h>
+#include <cstdio>
+#include <string.h>
+
+// INTERNAL INCLUDES
+#include "obj-loader.h"
+
+namespace
+{
+/*
+ * Vertex shader for a skybox
+ */
+const char* VERTEX_SHADER_SKYBOX = DALI_COMPOSE_SHADER(
+attribute mediump vec3 aPosition;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+\n
+varying mediump vec3 vTexCoord;\n
+void main()\n
+{\n
+  vTexCoord =  aPosition;\n
+
+  mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n
+  vec4 clipSpacePosition = uMvpMatrix * vertexPosition;\n
+  gl_Position = clipSpacePosition.xyww;\n // Writes 1.0, the maximum depth value, into the depth buffer.
+                                          // This is an optimization to avoid running the fragment shader
+                                          // for the pixels hidden by the scene's objects.
+}\n
+);
+
+/*
+ * Fragment shader for a skybox
+ */
+const char* FRAGMENT_SHADER_SKYBOX = DALI_COMPOSE_SHADER(
+uniform samplerCube uSkyBoxTexture;\n
+\n
+varying mediump vec3 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 texColor = textureCube( uSkyBoxTexture, vTexCoord, 0.0);\n
+  gl_FragColor = texColor;\n
+}\n
+);
+
+} // namespace
+
+
+ModelSkybox::ModelSkybox()
+{
+}
+
+ModelSkybox::~ModelSkybox()
+{
+}
+
+void ModelSkybox::Init( const Vector3& size )
+{
+
+  Geometry geometry = CreateGeometry();
+  Shader shader = Shader::New( VERTEX_SHADER_SKYBOX, FRAGMENT_SHADER_SKYBOX );
+
+  Renderer renderer = Renderer::New( geometry, shader );
+
+  if( mTextureSet )
+  {
+    renderer.SetTextures( mTextureSet );
+  }
+
+  // Face culling is enabled to hide the backwards facing sides of the model
+  // This is sufficient to render a single object; for more complex scenes depth-testing might be required
+  renderer.SetProperty( Renderer::Property::DEPTH_TEST_MODE, DepthTestMode::ON );
+  renderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, DepthWriteMode::ON );
+  renderer.SetProperty( Renderer::Property::DEPTH_FUNCTION, DepthFunction::LESS_EQUAL );
+  renderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+
+  mActor = Actor::New();
+  mActor.SetAnchorPoint( AnchorPoint::CENTER );
+  mActor.SetParentOrigin( ParentOrigin::CENTER );
+  mActor.SetSize( size );
+  mActor.AddRenderer( renderer );
+}
+
+/**
+ * Set texture and sampler
+ */
+void ModelSkybox::InitTexture(Texture texSkybox)
+{
+  mTextureSet = TextureSet::New();
+  mTextureSet.SetTexture( 0u, texSkybox );
+
+  Sampler sampler = Sampler::New();
+  sampler.SetWrapMode(WrapMode::CLAMP_TO_EDGE,WrapMode::CLAMP_TO_EDGE,WrapMode::CLAMP_TO_EDGE);
+  sampler.SetFilterMode(FilterMode::LINEAR_MIPMAP_LINEAR,FilterMode::LINEAR);
+  mTextureSet.SetSampler(0,sampler);
+}
+
+Actor& ModelSkybox::GetActor()
+{
+  return mActor;
+}
+
+
+/**
+ * @brief CreateGeometry
+ * This function creates a cube geometry including texture coordinates.
+ */
+Geometry ModelSkybox::CreateGeometry()
+{
+  Geometry geometry;
+
+  struct Vertex
+  {
+    Vector3 aPosition;
+  };
+
+  Vertex skyboxVertices[] = {
+      // back
+      { Vector3(  -1.0f,  1.0f, -1.0f ) },
+      { Vector3(  -1.0f, -1.0f, -1.0f ) },
+      { Vector3(   1.0f, -1.0f, -1.0f ) },
+      { Vector3(   1.0f, -1.0f, -1.0f ) },
+      { Vector3(   1.0f,  1.0f, -1.0f ) },
+      { Vector3(  -1.0f,  1.0f, -1.0f ) },
+
+      // left
+      { Vector3(  -1.0f, -1.0f,  1.0f ) },
+      { Vector3(  -1.0f, -1.0f, -1.0f ) },
+      { Vector3(  -1.0f,  1.0f, -1.0f ) },
+      { Vector3(  -1.0f,  1.0f, -1.0f ) },
+      { Vector3(  -1.0f,  1.0f,  1.0f ) },
+      { Vector3(  -1.0f, -1.0f,  1.0f ) },
+
+      // right
+      { Vector3(   1.0f, -1.0f, -1.0f ) },
+      { Vector3(   1.0f, -1.0f,  1.0f ) },
+      { Vector3(   1.0f,  1.0f,  1.0f ) },
+      { Vector3(   1.0f,  1.0f,  1.0f ) },
+      { Vector3(   1.0f,  1.0f, -1.0f ) },
+      { Vector3(   1.0f, -1.0f, -1.0f ) },
+
+      // front
+      { Vector3(  -1.0f, -1.0f,  1.0f ) },
+      { Vector3(  -1.0f,  1.0f,  1.0f ) },
+      { Vector3(   1.0f,  1.0f,  1.0f ) },
+      { Vector3(   1.0f,  1.0f,  1.0f ) },
+      { Vector3(   1.0f, -1.0f,  1.0f ) },
+      { Vector3(  -1.0f, -1.0f,  1.0f ) },
+
+      // botton
+      { Vector3(  -1.0f,  1.0f, -1.0f ) },
+      { Vector3(   1.0f,  1.0f, -1.0f ) },
+      { Vector3(   1.0f,  1.0f,  1.0f ) },
+      { Vector3(   1.0f,  1.0f,  1.0f ) },
+      { Vector3(  -1.0f,  1.0f,  1.0f ) },
+      { Vector3(  -1.0f,  1.0f, -1.0f ) },
+
+      // top
+      { Vector3(  -1.0f, -1.0f, -1.0f ) },
+      { Vector3(  -1.0f, -1.0f,  1.0f ) },
+      { Vector3(   1.0f, -1.0f, -1.0f ) },
+      { Vector3(   1.0f, -1.0f, -1.0f ) },
+      { Vector3(  -1.0f, -1.0f,  1.0f ) },
+      { Vector3(   1.0f, -1.0f,  1.0f ) }
+  };
+
+  PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+                                                     .Add( "aPosition", Property::VECTOR3 ) );
+  vertexBuffer.SetData( skyboxVertices, sizeof(skyboxVertices) / sizeof(Vertex) );
+
+  geometry = Geometry::New();
+  geometry.AddVertexBuffer( vertexBuffer );
+  geometry.SetType( Geometry::TRIANGLES );
+  return geometry;
+}
diff --git a/examples/rendering-basic-pbr/model-skybox.h b/examples/rendering-basic-pbr/model-skybox.h
new file mode 100644 (file)
index 0000000..befddff
--- /dev/null
@@ -0,0 +1,95 @@
+#ifndef DALI_DEMO_MODELSKYBOX_H
+#define DALI_DEMO_MODELSKYBOX_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/actors/actor.h>
+#include <dali/public-api/rendering/renderer.h>
+
+using namespace Dali;
+
+class ModelSkybox
+{
+public:
+  /**
+   * @brief Constructor.
+   * Does nothing.
+   */
+  ModelSkybox();
+
+  /**
+   * @brief Destructor
+   * Does nothing.
+   */
+  ~ModelSkybox();
+
+  /**
+   * @brief Initializes an Actor for the Physically Based Rendering.
+   *
+   * @note Call InitTexture() before calling this method.
+   *
+   * It creates a geometry for the renderer.
+   * According to the parameter @p modelType it may create a @e quad, a @e sphere or load a model.
+   * If @p modelType is @e MODEL, the @p modelUrl parameter needs to be set with a valid url pointing a file with a @e obj model.
+   *
+   * A renderer is created with the geometry and the shader and it's set to the an actor that can be retrieved by calling GetActor().
+   * The @p position and @p size is set to the actor.
+   *
+   * @param[in] shader The Physically Based Rendering shader.
+   * @param[in] modelType The type of geometry.
+   * @param[in] modelUrl The url of the model if the paramterer @p modelType is @e MODEL.
+   * @param[in] position The position of the actor.
+   * @param[in] size The size of the actor.
+   */
+  void Init( const Vector3& size );
+
+  /**
+   * @brief Initializes the @p mTextureSet member with the needed textures for Physically Based Rendering.
+   *
+   * @param[in] albedoMetalTexture The albedo metal texture.
+   * @param[in] normalRoughTexture The normal rough texture.
+   * @param[in] diffuseTexture The diffuse texture.
+   * @param[in] specularTexture The specular texture.
+   */
+  void InitTexture( Texture texSkybox );
+
+  /**
+   * @brief Retrieves the actor created by calling the Init() method.
+   *
+   * @return The Actor for the Physically Based Rendering.
+   */
+  Actor &GetActor();
+
+private:
+
+  /**
+   * @brief Creates a geometry from a @e obj model.
+   *
+   * @param[in] url A url pointing a file with a @e obj model.
+   *
+   * @return The geometry.
+   */
+  Geometry CreateGeometry();
+
+  Actor mActor;
+  TextureSet mTextureSet;
+};
+
+#endif // DALI_DEMO_MODELSKYBOX_H
+
diff --git a/examples/rendering-basic-pbr/obj-loader.cpp b/examples/rendering-basic-pbr/obj-loader.cpp
new file mode 100644 (file)
index 0000000..bb21c9c
--- /dev/null
@@ -0,0 +1,708 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "obj-loader.h"
+
+// EXTERNAL INCLUDES
+#include <dali/integration-api/debug.h>
+#include <sstream>
+#include <string.h>
+
+namespace PbrDemo
+{
+
+namespace
+{
+const int MAX_POINT_INDICES = 4;
+}
+
+ObjLoader::ObjLoader()
+: mSceneLoaded( false ),
+  mMaterialLoaded( false ),
+  mHasTextureUv( false ),
+  mHasDiffuseMap( false ),
+  mHasNormalMap( false ),
+  mHasSpecularMap( false )
+{
+  mSceneAABB.Init();
+}
+
+ObjLoader::~ObjLoader()
+{
+  ClearArrays();
+}
+
+bool ObjLoader::IsSceneLoaded()
+{
+  return mSceneLoaded;
+}
+
+bool ObjLoader::IsMaterialLoaded()
+{
+  return mMaterialLoaded;
+}
+
+void ObjLoader::CalculateHardFaceNormals( const Dali::Vector<Vector3>& points, Dali::Vector<TriIndex>& triangles,
+                                          Dali::Vector<Vector3>& normals )
+{
+  int numFaceVertices = 3 * triangles.Size();  //Vertices per face, as each vertex has different normals instance for each face.
+  int normalIndex = 0;  //Tracks progress through the array of normals.
+
+  normals.Clear();
+  normals.Resize( numFaceVertices );
+
+  //For each triangle, calculate the normal by crossing two vectors on the triangle's plane.
+  for( unsigned long i = 0; i < triangles.Size(); i++ )
+  {
+    //Triangle vertices.
+    const Vector3& v0 = points[triangles[i].pointIndex[0]];
+    const Vector3& v1 = points[triangles[i].pointIndex[1]];
+    const Vector3& v2 = points[triangles[i].pointIndex[2]];
+
+    //Triangle edges.
+    Vector3 edge1 = v1 - v0;
+    Vector3 edge2 = v2 - v0;
+
+    //Using edges as vectors on the plane, cross product to get the normal.
+    Vector3 normalVector = edge1.Cross(edge2);
+    normalVector.Normalize();
+
+    //Assign normal index to triangle vertex and set the normal vector to the list of normals.
+    for( unsigned long j = 0; j < 3; j++, normalIndex++ )
+    {
+      triangles[i].normalIndex[j] = normalIndex;
+      normals[normalIndex] = normalVector;
+    }
+  }
+}
+
+void ObjLoader::CalculateSoftFaceNormals( const Dali::Vector<Vector3>& points, Dali::Vector<TriIndex>& triangles,
+                                          Dali::Vector<Vector3>& normals )
+{
+  int normalIndex = 0;  //Tracks progress through the array of normals.
+
+  normals.Clear();
+  normals.Resize( points.Size() );  //One (averaged) normal per point.
+
+  //For each triangle, calculate the normal by crossing two vectors on the triangle's plane
+  //We then add the triangle's normal to the cumulative normals at each point of it
+  for( unsigned long i = 0; i < triangles.Size(); i++ )
+  {
+    //Triangle points.
+    const Vector3& v0 = points[triangles[i].pointIndex[0]];
+    const Vector3& v1 = points[triangles[i].pointIndex[1]];
+    const Vector3& v2 = points[triangles[i].pointIndex[2]];
+
+    //Triangle edges.
+    Vector3 edge1 = v1 - v0;
+    Vector3 edge2 = v2 - v0;
+
+    //Using edges as vectors on the plane, cross to get the normal.
+    Vector3 normalVector = edge1.Cross(edge2);
+
+    //Add this triangle's normal to the cumulative normal of each constituent triangle point and set the index of the normal accordingly.
+    for( unsigned long j = 0; j < 3; j++)
+    {
+      normalIndex = triangles[i].pointIndex[j];
+      triangles[i].normalIndex[j] = normalIndex; //Normal index matches up to vertex index, as one normal per vertex.
+      normals[normalIndex] += normalVector;
+    }
+  }
+
+  //Normalise the normals.
+  for( unsigned long i = 0; i < normals.Size(); i++ )
+  {
+    normals[i].Normalize();
+  }
+}
+
+void ObjLoader::CalculateTangentFrame()
+{
+  //Reset tangent vector to hold new values.
+  mTangents.Clear();
+  mTangents.Resize( mNormals.Size() );
+
+  //For each triangle, calculate the tangent vector and then add it to the total tangent vector of each normal.
+  for ( unsigned long a = 0; a < mTriangles.Size(); a++ )
+  {
+    Vector3 tangentVector;
+
+    const Vector3& v0 = mPoints[mTriangles[a].pointIndex[0]];
+    const Vector3& v1 = mPoints[mTriangles[a].pointIndex[1]];
+    const Vector3& v2 = mPoints[mTriangles[a].pointIndex[2]];
+
+    Vector3 edge1 = v1 - v0;
+    Vector3 edge2 = v2 - v0;
+
+    const Vector2& w0 = mTextureUv[mTriangles[a].textureIndex[0]];
+    const Vector2& w1 = mTextureUv[mTriangles[a].textureIndex[1]];
+    const Vector2& w2 = mTextureUv[mTriangles[a].textureIndex[2]];
+
+    float deltaU1 = w1.x - w0.x;
+    float deltaV1 = w1.y - w0.y;
+    float deltaU2 = w2.x - w0.x;
+    float deltaV2 = w2.y - w0.y;
+
+    // 1.0/f could cause division by zero in some cases, this factor will act
+    // as a weight of the tangent vector and it is fixed when it is normalised.
+    float f = (deltaU1 * deltaV2 - deltaU2 * deltaV1);
+
+    tangentVector.x = f * ( deltaV2 * edge1.x - deltaV1 * edge2.x );
+    tangentVector.y = f * ( deltaV2 * edge1.y - deltaV1 * edge2.y );
+    tangentVector.z = f * ( deltaV2 * edge1.z - deltaV1 * edge2.z );
+
+    mTangents[mTriangles[a].normalIndex[0]] += tangentVector;
+    mTangents[mTriangles[a].normalIndex[1]] += tangentVector;
+    mTangents[mTriangles[a].normalIndex[2]] += tangentVector;
+  }
+
+  //Orthogonalize tangents.
+  for ( unsigned long a = 0; a < mTangents.Size(); a++ )
+  {
+    const Vector3& n = mNormals[a];
+    const Vector3& t = mTangents[a];
+
+    // Gram-Schmidt orthogonalize
+    mTangents[a] = t - n * n.Dot(t);
+    mTangents[a].Normalize();
+  }
+}
+
+void ObjLoader::CenterAndScale( bool center, Dali::Vector<Vector3>& points )
+{
+  BoundingVolume newAABB;
+
+  Vector3 sceneSize = GetSize();
+
+  float biggestDimension = sceneSize.x;
+  if( sceneSize.y > biggestDimension )
+  {
+    biggestDimension = sceneSize.y;
+  }
+  if( sceneSize.z > biggestDimension )
+  {
+    biggestDimension = sceneSize.z;
+  }
+
+  newAABB.Init();
+  for( unsigned int ui = 0; ui < points.Size(); ++ui )
+  {
+    points[ui] = points[ui] - GetCenter();
+    points[ui] = points[ui] / biggestDimension;
+    newAABB.ConsiderNewPointInVolume(points[ui]);
+  }
+
+  mSceneAABB = newAABB;
+}
+
+void ObjLoader::CreateGeometryArray( Dali::Vector<Vector3>& positions,
+                                     Dali::Vector<Vector3>& normals,
+                                     Dali::Vector<Vector3>& tangents,
+                                     Dali::Vector<Vector2>& textures,
+                                     Dali::Vector<unsigned short> & indices,
+                                     bool useSoftNormals )
+{
+  //We must calculate the tangents if they weren't supplied, or if they don't match up.
+  bool mustCalculateTangents = ( mTangents.Size() == 0 ) || ( mTangents.Size() != mNormals.Size() );
+
+  //However, we don't need to do this if the object doesn't use textures to begin with.
+  mustCalculateTangents &= mHasTextureUv;
+
+  // We calculate the normals if hard normals(flat normals) is set.
+  // Use the normals provided by the file to make the tangent calculation per normal,
+  // the correct results depends of normal generated by file, otherwise we need to recalculate
+  // the normal programmatically.
+  if( ( ( mNormals.Size() == 0 ) && mustCalculateTangents ) || !useSoftNormals )
+  {
+    if( useSoftNormals )
+    {
+      CalculateSoftFaceNormals( mPoints, mTriangles, mNormals );
+    }
+    else
+    {
+      CalculateHardFaceNormals( mPoints, mTriangles, mNormals );
+    }
+  }
+
+  if( mHasTextureUv && mustCalculateTangents )
+  {
+    CalculateTangentFrame();
+  }
+
+  bool mapsCorrespond; //True if the sizes of the arrays necessary to draw the object match.
+
+  if ( mHasTextureUv )
+  {
+    mapsCorrespond = ( mPoints.Size() == mTextureUv.Size() ) && ( mTextureUv.Size() == mNormals.Size() );
+  }
+  else
+  {
+    mapsCorrespond = ( mPoints.Size() == mNormals.Size() );
+  }
+
+  //Check the number of points textures and normals
+  if ( mapsCorrespond )
+  {
+    int numPoints = mPoints.Size();
+    int numIndices = 3 * mTriangles.Size();
+    positions.Resize( numPoints );
+    normals.Resize( numPoints );
+    tangents.Resize( numPoints );
+    textures.Resize( numPoints );
+    indices.Resize( numIndices );
+
+    //We create the vertices array. For now we just copy points info
+    positions = mPoints;
+
+    int indiceIndex = 0;
+
+    //We copy the indices
+    for ( unsigned int ui = 0 ; ui < mTriangles.Size() ; ++ui )
+    {
+      for ( int j = 0 ; j < 3 ; ++j )
+      {
+        indices[indiceIndex] = mTriangles[ui].pointIndex[j];
+        indiceIndex++;
+
+        normals[mTriangles[ui].pointIndex[j]] = mNormals[mTriangles[ui].normalIndex[j]];
+
+        if ( mHasTextureUv )
+        {
+          textures[mTriangles[ui].pointIndex[j]] = mTextureUv[mTriangles[ui].textureIndex[j]];
+          tangents[mTriangles[ui].pointIndex[j]] = mTangents[mTriangles[ui].normalIndex[j]];
+        }
+      }
+    }
+  }
+  else
+  {
+    int numVertices = 3 * mTriangles.Size();
+    positions.Resize( numVertices );
+    normals.Resize( numVertices );
+    textures.Resize( numVertices );
+    tangents.Resize( numVertices );
+
+    int index = 0;
+
+    //We have to normalize the arrays so we can draw we just one index array
+    for( unsigned int ui = 0; ui < mTriangles.Size(); ++ui )
+    {
+      for ( int j = 0 ; j < 3 ; ++j )
+      {
+        positions[index] = mPoints[mTriangles[ui].pointIndex[j]];
+        normals[index] = mNormals[mTriangles[ui].normalIndex[j]];
+
+        if( mHasTextureUv )
+        {
+          textures[index] = mTextureUv[mTriangles[ui].textureIndex[j]];
+          tangents[index] = mTangents[mTriangles[ui].normalIndex[j]];
+        }
+
+        ++index;
+      }
+    }
+  }
+}
+
+bool ObjLoader::LoadObject( char* objBuffer, std::streampos fileSize )
+{
+  Vector3 point;
+  Vector2 texture;
+  std::string vet[MAX_POINT_INDICES], name;
+  int ptIdx[MAX_POINT_INDICES];
+  int nrmIdx[MAX_POINT_INDICES];
+  int texIdx[MAX_POINT_INDICES];
+  TriIndex triangle,triangle2;
+  int pntAcum = 0, texAcum = 0, nrmAcum = 0;
+  bool iniObj = false;
+  bool hasTexture = false;
+  int face = 0;
+
+  //Init AABB for the file
+  mSceneAABB.Init();
+
+  std::string strMatActual;
+
+  std::string input( objBuffer, fileSize );
+  std::istringstream ss(input);
+  ss.imbue( std::locale( "C" ) );
+
+
+  std::string line;
+  std::getline( ss, line );
+
+  while ( std::getline( ss, line ) )
+  {
+    std::istringstream isline( line, std::istringstream::in );
+    std::string tag;
+
+    isline >> tag;
+
+    if ( tag == "v" )
+    {
+      //Two different objects in the same file
+      isline >> point.x;
+      isline >> point.y;
+      isline >> point.z;
+      mPoints.PushBack( point );
+
+      mSceneAABB.ConsiderNewPointInVolume( point );
+    }
+    else if ( tag == "vn" )
+    {
+      isline >> point.x;
+      isline >> point.y;
+      isline >> point.z;
+
+      mNormals.PushBack( point );
+    }
+    else if ( tag == "#_#tangent" )
+    {
+      isline >> point.x;
+      isline >> point.y;
+      isline >> point.z;
+
+      mTangents.PushBack( point );
+    }
+    else if ( tag == "#_#binormal" )
+    {
+      isline >> point.x;
+      isline >> point.y;
+      isline >> point.z;
+
+      mBiTangents.PushBack( point );
+    }
+    else if ( tag == "vt" )
+    {
+      isline >> texture.x;
+      isline >> texture.y;
+      texture.y = 1.0-texture.y;
+      mTextureUv.PushBack( texture );
+    }
+    else if ( tag == "#_#vt1" )
+    {
+      isline >> texture.x;
+      isline >> texture.y;
+
+      texture.y = 1.0-texture.y;
+      mTextureUv2.PushBack( texture );
+    }
+    else if ( tag == "s" )
+    {
+    }
+    else if ( tag == "f" )
+    {
+      if ( !iniObj )
+      {
+        //name assign
+
+        iniObj = true;
+      }
+
+      int numIndices = 0;
+      while( ( numIndices < MAX_POINT_INDICES ) && ( isline >> vet[numIndices] ) )
+      {
+        numIndices++;
+      }
+
+      //Hold slashes that separate attributes of the same point.
+      char separator;
+      char separator2;
+
+      const char * subString; //A pointer to the position in the string as we move through it.
+
+      subString = strstr( vet[0].c_str(),"/" ); //Search for the first '/'
+
+      if( subString )
+      {
+        if( subString[1] == '/' ) // Of the form A//C, so has points and normals but no texture coordinates.
+        {
+          for( int i = 0 ; i < numIndices; i++)
+          {
+            std::istringstream isindex( vet[i] );
+            isindex >> ptIdx[i] >> separator >> separator2 >> nrmIdx[i];
+            texIdx[i] = 0;
+          }
+        }
+        else if( strstr( subString, "/" ) ) // Of the form A/B/C, so has points, textures and normals.
+        {
+          for( int i = 0 ; i < numIndices; i++ )
+          {
+            std::istringstream isindex( vet[i] );
+            isindex >> ptIdx[i] >> separator >> texIdx[i] >> separator2 >> nrmIdx[i];
+          }
+
+          hasTexture = true;
+        }
+        else // Of the form A/B, so has points and textures but no normals.
+        {
+          for( int i = 0 ; i < numIndices; i++ )
+          {
+            std::istringstream isindex( vet[i] );
+            isindex >> ptIdx[i] >> separator >> texIdx[i];
+            nrmIdx[i] = 0;
+          }
+
+          hasTexture = true;
+        }
+      }
+      else // Simply of the form A, as in, point indices only.
+      {
+        for( int i = 0 ; i < numIndices; i++ )
+        {
+          std::istringstream isindex( vet[i] );
+          isindex >> ptIdx[i];
+          texIdx[i] = 0;
+          nrmIdx[i] = 0;
+        }
+      }
+
+      //If it is a triangle
+      if( numIndices == 3 )
+      {
+        for( int i = 0 ; i < 3; i++ )
+        {
+          triangle.pointIndex[i] = ptIdx[i] - 1 - pntAcum;
+          triangle.normalIndex[i] = nrmIdx[i] - 1 - nrmAcum;
+          triangle.textureIndex[i] = texIdx[i] - 1 - texAcum;
+        }
+        mTriangles.PushBack( triangle );
+        face++;
+      }
+      //If on the other hand it is a quad, we will create two triangles
+      else if( numIndices == 4 )
+      {
+        for( int i = 0 ; i < 3; i++ )
+        {
+          triangle.pointIndex[i] = ptIdx[i] - 1 - pntAcum;
+          triangle.normalIndex[i] = nrmIdx[i] - 1 - nrmAcum;
+          triangle.textureIndex[i] = texIdx[i] - 1 - texAcum;
+        }
+        mTriangles.PushBack( triangle );
+        face++;
+
+        for( int i = 0 ; i < 3; i++ )
+        {
+          int idx = ( i + 2 ) % numIndices;
+          triangle2.pointIndex[i] = ptIdx[idx] - 1 - pntAcum;
+          triangle2.normalIndex[i] = nrmIdx[idx] - 1 - nrmAcum;
+          triangle2.textureIndex[i] = texIdx[idx] - 1 - texAcum;
+        }
+        mTriangles.PushBack( triangle2 );
+        face++;
+      }
+    }
+    else if ( tag == "usemtl" )
+    {
+      isline >> strMatActual;
+    }
+    else if ( tag == "mtllib" )
+    {
+      isline >> strMatActual;
+    }
+    else if ( tag == "g" )
+    {
+      isline >> name;
+    }
+  }
+
+  if ( iniObj )
+  {
+    CenterAndScale( true, mPoints );
+    mSceneLoaded = true;
+    mHasTextureUv = hasTexture;
+    return true;
+  }
+
+  return false;
+}
+
+void ObjLoader::LoadMaterial( char* objBuffer,
+                              std::streampos fileSize,
+                              std::string& diffuseTextureUrl,
+                              std::string& normalTextureUrl,
+                              std::string& glossTextureUrl )
+{
+  float fR,fG,fB;
+
+  std::string info;
+
+  std::string input = objBuffer;
+  std::istringstream ss(input);
+  ss.imbue(std::locale("C"));
+
+  std::string line;
+  std::getline( ss, line );
+
+  while ( std::getline( ss, line ) )
+  {
+    std::istringstream isline( line, std::istringstream::in );
+    std::string tag;
+
+    isline >> tag;
+
+    if ( tag == "newmtl" )  //name of the material
+    {
+      isline >> info;
+    }
+    else if ( tag == "Ka" ) //ambient color
+    {
+      isline >> fR >> fG >> fB;
+    }
+    else if ( tag == "Kd" ) //diffuse color
+    {
+      isline >> fR >> fG >> fB;
+    }
+    else if ( tag == "Ks" ) //specular color
+    {
+      isline >> fR >> fG >> fB;
+    }
+    else if ( tag == "Tf" ) //color
+    {
+    }
+    else if ( tag == "Ni" )
+    {
+    }
+    else if ( tag == "map_Kd" )
+    {
+      isline >> info;
+      diffuseTextureUrl = info;
+      mHasDiffuseMap = true;
+    }
+    else if ( tag == "bump" )
+    {
+      isline >> info;
+      normalTextureUrl = info;
+      mHasNormalMap = true;
+    }
+    else if ( tag == "map_Ks" )
+    {
+      isline >> info;
+      glossTextureUrl = info;
+      mHasSpecularMap = true;
+    }
+  }
+
+  mMaterialLoaded = true;
+}
+
+Geometry ObjLoader::CreateGeometry( int objectProperties, bool useSoftNormals )
+{
+  Geometry surface = Geometry::New();
+
+  Dali::Vector<Vector3> positions;
+  Dali::Vector<Vector3> normals;
+  Dali::Vector<Vector3> tangents;
+  Dali::Vector<Vector2> textures;
+  Dali::Vector<unsigned short> indices;
+
+  CreateGeometryArray( positions, normals, tangents, textures, indices, useSoftNormals );
+
+  //All vertices need at least Position and Normal
+
+  Property::Map positionMap;
+  positionMap["aPosition"] = Property::VECTOR3;
+  PropertyBuffer positionBuffer = PropertyBuffer::New( positionMap );
+  positionBuffer.SetData( positions.Begin(), positions.Count() );
+
+  Property::Map normalMap;
+  normalMap["aNormal"] = Property::VECTOR3;
+  PropertyBuffer normalBuffer = PropertyBuffer::New( normalMap );
+  normalBuffer.SetData( normals.Begin(), normals.Count() );
+
+  surface.AddVertexBuffer( positionBuffer );
+  surface.AddVertexBuffer( normalBuffer );
+
+  //Some need tangent
+  if( ( objectProperties & TANGENTS ) && mHasTextureUv )
+  {
+    Property::Map tangentMap;
+    tangentMap["aTangent"] = Property::VECTOR3;
+    PropertyBuffer tangentBuffer = PropertyBuffer::New( tangentMap );
+    tangentBuffer.SetData( tangents.Begin(), tangents.Count() );
+
+    surface.AddVertexBuffer( tangentBuffer );
+  }
+
+  //Some need texture coordinates
+  if( ( objectProperties & TEXTURE_COORDINATES ) && mHasTextureUv )
+  {
+    Property::Map textCoordMap;
+    textCoordMap["aTexCoord"] = Property::VECTOR2;
+    PropertyBuffer texCoordBuffer = PropertyBuffer::New( textCoordMap );
+    texCoordBuffer.SetData( textures.Begin(), textures.Count() );
+
+    surface.AddVertexBuffer( texCoordBuffer );
+  }
+
+  //If indices are required, we set them.
+  if ( indices.Size() )
+  {
+    surface.SetIndexBuffer ( &indices[0], indices.Size() );
+  }
+
+  return surface;
+}
+
+Vector3 ObjLoader::GetCenter()
+{
+  Vector3 center = GetSize() * 0.5 + mSceneAABB.pointMin;
+  return center;
+}
+
+Vector3 ObjLoader::GetSize()
+{
+  Vector3 size = mSceneAABB.pointMax - mSceneAABB.pointMin;
+  return size;
+}
+
+void ObjLoader::ClearArrays()
+{
+  mPoints.Clear();
+  mTextureUv.Clear();
+  mTextureUv2.Clear();
+  mNormals.Clear();
+  mTangents.Clear();
+  mBiTangents.Clear();
+
+  mTriangles.Clear();
+
+  mSceneLoaded = false;
+}
+
+bool ObjLoader::IsTexturePresent()
+{
+  return mHasTextureUv;
+}
+
+bool ObjLoader::IsDiffuseMapPresent()
+{
+  return mHasDiffuseMap;
+}
+
+bool ObjLoader::IsNormalMapPresent()
+{
+  return mHasNormalMap;
+}
+
+bool ObjLoader::IsSpecularMapPresent()
+{
+  return mHasSpecularMap;
+}
+
+} // namespace PbrDemo
diff --git a/examples/rendering-basic-pbr/obj-loader.h b/examples/rendering-basic-pbr/obj-loader.h
new file mode 100644 (file)
index 0000000..11d289c
--- /dev/null
@@ -0,0 +1,172 @@
+#ifndef DALI_DEMO_PBR_OBJ_LOADER_H
+#define DALI_DEMO_PBR_OBJ_LOADER_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/public-api/rendering/geometry.h>
+#include <limits>
+
+using namespace Dali;
+
+namespace PbrDemo
+{
+
+class ObjLoader
+{
+public:
+
+  struct TriIndex
+  {
+    int pointIndex[3];
+    int normalIndex[3];
+    int textureIndex[3];
+  };
+
+  struct BoundingVolume
+  {
+    void Init()
+    {
+      pointMin = Vector3( std::numeric_limits<float>::max(), std::numeric_limits<float>::max(), std::numeric_limits<float>::max() );
+      pointMax = Vector3( std::numeric_limits<float>::min(), std::numeric_limits<float>::min(), std::numeric_limits<float>::min() );
+    }
+
+    void ConsiderNewPointInVolume( const Vector3& position )
+    {
+      pointMin.x = std::min( position.x, pointMin.x );
+      pointMin.y = std::min( position.y, pointMin.y );
+      pointMin.z = std::min( position.z, pointMin.z );
+
+      pointMax.x = std::max( position.x, pointMax.x );
+      pointMax.y = std::max( position.y, pointMax.y );
+      pointMax.z = std::max( position.z, pointMax.z );
+    }
+
+    Vector3 pointMin;
+    Vector3 pointMax;
+  };
+
+  //Defines bit masks to declare which properties are needed by anyone requesting a geometry.
+  enum ObjectProperties
+  {
+    TEXTURE_COORDINATES = 1 << 0,
+    TANGENTS = 1 << 1,
+    BINORMALS = 1 << 2
+  };
+
+  ObjLoader();
+  virtual ~ObjLoader();
+
+  bool      IsSceneLoaded();
+  bool      IsMaterialLoaded();
+
+  bool      LoadObject( char* objBuffer, std::streampos fileSize );
+
+  void      LoadMaterial( char* objBuffer, std::streampos fileSize, std::string& diffuseTextureUrl,
+                          std::string& normalTextureUrl, std::string& glossTextureUrl );
+
+  Geometry  CreateGeometry( int objectProperties, bool useSoftNormals );
+
+  Vector3   GetCenter();
+  Vector3   GetSize();
+
+  void      ClearArrays();
+
+  bool      IsTexturePresent();
+  bool      IsDiffuseMapPresent();
+  bool      IsNormalMapPresent();
+  bool      IsSpecularMapPresent();
+
+private:
+
+  Dali::Vector<Vector3>  mPoints;
+  Dali::Vector<Vector2>  mTextureUv;
+  Dali::Vector<Vector2>  mTextureUv2;
+  Dali::Vector<Vector3>  mNormals;
+  Dali::Vector<Vector3>  mTangents;
+  Dali::Vector<Vector3>  mBiTangents;
+  Dali::Vector<TriIndex> mTriangles;
+
+  BoundingVolume mSceneAABB;
+
+  bool mSceneLoaded;
+  bool mMaterialLoaded;
+  bool mHasTextureUv;
+
+  //Material file properties.
+  bool mHasDiffuseMap;
+  bool mHasNormalMap;
+  bool mHasSpecularMap;
+
+  /**
+   * @brief Calculates normals for each point on a per-face basis.
+   *
+   * There are multiple normals per point, each corresponding to the normal of a face connecting to the point.
+   *
+   * @param[in] vertices The vertices of the object.
+   * @param[in, out] triangles The triangles that form the faces. The normals of each triangle will be updated.
+   * @param[in, out] normals The normals to be calculated.
+   */
+  void CalculateHardFaceNormals( const Dali::Vector<Vector3>& vertices,
+                                 Dali::Vector<TriIndex>& triangles,
+                                 Dali::Vector<Vector3>& normals );
+
+  /**
+   * @brief Calculates smoothed normals for each point.
+   *
+   * There is one normal per point, an average of the connecting faces.
+   *
+   * @param[in] vertices The vertices of the object.
+   * @param[in, out] triangles The triangles that form the faces. The normals of each triangle will be updated.
+   * @param[in, out] normals The normals to be calculated.
+   */
+  void CalculateSoftFaceNormals( const Dali::Vector<Vector3>& vertices,
+                                 Dali::Vector<TriIndex>& triangles,
+                                 Dali::Vector<Vector3>& normals );
+
+  /**
+   * @brief Calculates tangents and bitangents for each point of the object.
+   *
+   * These are calculated using the object's points, texture coordinates and normals, so these must be initialised first.
+   */
+  void CalculateTangentFrame();
+
+  void CenterAndScale( bool center, Dali::Vector<Vector3>& points );
+
+  /**
+   * @brief Using the data loaded from the file, create arrays of data to be used in creating the geometry.
+   *
+   * @param[out] positions The positions of the vertices of the object.
+   * @param[out] normals The normals of the vertices of the object.
+   * @param[out] tangents The tangents of the vertices of the object.
+   * @param[out] textures The texture coordinates of the vertices of the object.
+   * @param[out] indices Indices of corresponding values to match triangles to their respective data.
+   * @param[in] useSoftNormals Indicates whether we should average the normals at each point to smooth the surface or not.
+   */
+  void CreateGeometryArray( Dali::Vector<Vector3>& positions,
+                            Dali::Vector<Vector3>& normals,
+                            Dali::Vector<Vector3>& tangents,
+                            Dali::Vector<Vector2>& textures,
+                            Dali::Vector<unsigned short>& indices,
+                            bool useSoftNormals );
+
+};
+
+} // namespace PbrDemo
+
+#endif // DALI_DEMO_PBR_OBJ_LOADER_H
diff --git a/examples/rendering-basic-pbr/rendering-basic-pbr-example.cpp b/examples/rendering-basic-pbr/rendering-basic-pbr-example.cpp
new file mode 100644 (file)
index 0000000..1239401
--- /dev/null
@@ -0,0 +1,471 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+#include <stdio.h>
+#include <sstream>
+
+// INTERNAL INCLUDES
+#include "ktx-loader.h"
+#include "model-skybox.h"
+#include "model-pbr.h"
+#include <dali/integration-api/debug.h>
+#include <dali/devel-api/adaptor-framework/file-stream.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+/*
+ *
+ * "papermill_pmrem.ktx" and "papermill_E_diffuse-64.ktx are image files generated from
+ * image file downloaded from "http://www.hdrlabs.com/sibl/archive.html" with title
+ * "Papermill Ruins E" by Blochi and is licensed under Creative Commons License
+ * http://creativecommons.org/licenses/by-nc-sa/3.0/us/
+ *
+*/
+
+namespace
+{
+
+const char* NORMAL_ROUGH_TEXTURE_URL = DEMO_IMAGE_DIR "Test_100_normal_roughness.png";
+const char* ALBEDO_METAL_TEXTURE_URL = DEMO_IMAGE_DIR "Test_wblue_100_albedo_metal.png";
+const char* CUBEMAP_SPECULAR_TEXTURE_URL = DEMO_IMAGE_DIR "papermill_pmrem.ktx";
+const char* CUBEMAP_DIFFUSE_TEXTURE_URL = DEMO_IMAGE_DIR "papermill_E_diffuse-64.ktx";
+
+const char* SPHERE_URL = DEMO_MODEL_DIR "sphere.obj";
+const char* TEAPOT_URL = DEMO_MODEL_DIR "teapot.obj";
+
+const char* VERTEX_SHADER_URL = DEMO_SHADER_DIR "pbr_shader.vsh";
+const char* FRAGMENT_SHADER_URL = DEMO_SHADER_DIR "pbr_shader.fsh";
+
+const Vector3 SKYBOX_SCALE( 1.0f, 1.0f, 1.0f );
+const Vector3 SPHERE_SCALE( 1.5f, 1.5f, 1.5f );
+const Vector3 TEAPOT_SCALE( 2.0f, 2.0f, 2.0f );
+
+const float CAMERA_DEFAULT_FOV(    60.0f );
+const float CAMERA_DEFAULT_NEAR(    0.1f );
+const float CAMERA_DEFAULT_FAR(  1000.0f );
+const Vector3 CAMERA_DEFAULT_POSITION( 0.0f, 0.0f, 3.5f );
+
+}
+
+/*
+ *
+ * This example shows a Physically Based Rendering illumination model.
+ *
+ * - Double-tap to toggle between 3D models (teapot & cube)
+ * - Pan up/down on left side of screen to change roughness
+ * - Pan up/down on right side of screen to change metalness
+ * - Pan anywhere else to rotate scene
+ *
+*/
+
+class BasicPbrController : public ConnectionTracker
+{
+public:
+
+  BasicPbrController( Application& application )
+  : mApplication( application ),
+    mLabel(),
+    m3dRoot(),
+    mUiRoot(),
+    mDoubleTapTime(),
+    mModelOrientation(),
+    mRoughness( 1.f ),
+    mMetalness( 0.f ),
+    mDoubleTap(false),
+    mTeapotView(true)
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &BasicPbrController::Create );
+  }
+
+  ~BasicPbrController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Disable indicator
+    Dali::Window winHandle = application.GetWindow();
+    winHandle.ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::BLACK );
+    mAnimation = Animation::New( 1.0f );
+    mLabel = TextLabel::New( "R:1 M:0" );
+    mLabel.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mLabel.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mLabel.SetSize( stage.GetSize().width * 0.5f, stage.GetSize().height * 0.083f );
+    mLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    mLabel.SetProperty( Actor::Property::COLOR_ALPHA, 0.0f );
+    // Step 1. Create shader
+    CreateModelShader();
+
+    // Step 2. Create texture
+    CreateTexture();
+
+    // Step 3. Initialise Main Actor
+    InitActors();
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &BasicPbrController::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &BasicPbrController::OnKeyEvent );
+
+    mDoubleTapTime = Timer::New(150);
+    mDoubleTapTime.TickSignal().Connect( this, &BasicPbrController::OnDoubleTapTime );
+  }
+
+
+  bool OnDoubleTapTime()
+  {
+    mDoubleTap = false;
+    return true;
+  }
+
+  /**
+   * This function will change the material Roughness, Metalness or the model orientation when touched
+   */
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    const PointState::Type state = touch.GetState( 0 );
+
+    switch( state )
+    {
+      case PointState::DOWN:
+      {
+        if(mDoubleTap)
+        {
+          mTeapotView = !mTeapotView;
+          mModel[0].GetActor().SetProperty(Dali::Actor::Property::VISIBLE, !mTeapotView);
+          mModel[1].GetActor().SetProperty(Dali::Actor::Property::VISIBLE, mTeapotView);
+        }
+        mDoubleTapTime.Stop();
+        mStartTouch = touch.GetScreenPosition(0);
+        mPointZ = mStartTouch;
+        mAnimation.Stop();
+        mLabel.SetProperty( Actor::Property::COLOR_ALPHA, 1.0f );
+        break;
+      }
+      case PointState::MOTION:
+      {
+        const Stage stage = Stage::GetCurrent();
+        const Size size = stage.GetSize();
+        const float scaleX = size.width;
+        const float scaleY = size.height;
+        const Vector2 point = touch.GetScreenPosition(0);
+        bool process = false;
+        if( ( mStartTouch.x < ( scaleX * 0.3f ) ) && ( point.x < ( scaleX * 0.3f ) ) )
+        {
+          mRoughness += ( mStartTouch.y - point.y ) / ( scaleY * 0.9f );
+
+          //Clamp Roughness to 0.0 to 1.0
+          mRoughness = std::max( 0.f, std::min( 1.f, mRoughness ) );
+
+          mShader.SetProperty( mShader.GetPropertyIndex( "uRoughness" ), mRoughness );
+          std::ostringstream oss;
+          oss.precision(2);
+          oss << " R:" << mRoughness<< "," << " M:" << mMetalness;
+          mLabel.SetProperty( TextLabel::Property::TEXT, oss.str() );
+          mStartTouch = point;
+          process = true;
+        }
+        if( ( mStartTouch.x > ( scaleX * 0.7f ) ) && ( point.x > ( scaleX * 0.7f ) ) )
+        {
+          mMetalness += ( mStartTouch.y - point.y ) / ( scaleY * 0.9f );
+
+          //Clamp Metalness to 0.0 to 1.0
+          mMetalness = std::max( 0.f, std::min( 1.f, mMetalness ) );
+
+          mShader.SetProperty( mShader.GetPropertyIndex( "uMetallic" ), mMetalness );
+          std::ostringstream oss;
+          oss.precision(2);
+          oss << " R:" << mRoughness<< "," << " M:" << mMetalness;
+          mLabel.SetProperty( TextLabel::Property::TEXT, oss.str() );
+          mStartTouch = point;
+          process = true;
+        }
+        //If the touch is not processed above, then change the model orientation
+        if( !process )
+        {
+          process = true;
+          const float angle1 = ( ( mPointZ.y - point.y ) / scaleY );
+          const float angle2 = ( ( mPointZ.x - point.x ) / scaleX );
+          Actor actor1 = mModel[0].GetActor();
+          Actor actor2 = mModel[1].GetActor();
+
+          Quaternion modelOrientation = mModelOrientation;
+          modelOrientation.Conjugate();
+          const Quaternion pitchRot(Radian(Degree(angle1 * -200.0f)), modelOrientation.Rotate( Vector3::XAXIS ) );
+          const Quaternion yawRot(Radian(Degree(angle2 * -200.0f)), modelOrientation.Rotate( Vector3::YAXIS ) );
+
+          mModelOrientation = mModelOrientation * yawRot * pitchRot ;
+          mSkybox.GetActor().SetOrientation( mModelOrientation );
+          actor1.SetOrientation( mModelOrientation );
+          actor2.SetOrientation( mModelOrientation );
+
+          mPointZ = point;
+        }
+        break;
+      }
+      case PointState::UP:
+      {
+        mDoubleTapTime.Start();
+        mDoubleTap = true;
+        mAnimation.AnimateTo( Property( mLabel, Actor::Property::COLOR_ALPHA ), 0.0f, TimePeriod( 0.5f, 1.0f ) );
+        mAnimation.Play();
+        break;
+      }
+
+      default:
+      {
+        break;
+      }
+    }
+    return true;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * Creates new main actor
+   */
+  void InitActors()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    mSkybox.Init( SKYBOX_SCALE );
+    mModel[0].Init( mShader, SPHERE_URL, Vector3::ZERO, SPHERE_SCALE );
+    mModel[1].Init( mShader, TEAPOT_URL, Vector3::ZERO, TEAPOT_SCALE );
+
+    // Hide the model according with mTeapotView variable
+    mModel[0].GetActor().SetProperty(Dali::Actor::Property::VISIBLE, !mTeapotView);
+    mModel[1].GetActor().SetProperty(Dali::Actor::Property::VISIBLE,  mTeapotView);
+
+    // Creating root and camera actor for rendertask for 3D Scene rendering
+    mUiRoot = Actor::New();
+    m3dRoot = Actor::New();
+    CameraActor cameraUi = CameraActor::New(stage.GetSize());
+    cameraUi.SetAnchorPoint(AnchorPoint::CENTER);
+    cameraUi.SetParentOrigin(ParentOrigin::CENTER);
+
+    RenderTask rendertask = Stage::GetCurrent().GetRenderTaskList().CreateTask();
+    rendertask.SetCameraActor( cameraUi );
+    rendertask.SetSourceActor( mUiRoot );
+
+    mUiRoot.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+    mUiRoot.SetParentOrigin(ParentOrigin::TOP_LEFT);
+    mUiRoot.SetSize(stage.GetSize());
+
+    m3dRoot.SetAnchorPoint(AnchorPoint::CENTER);
+    m3dRoot.SetParentOrigin(ParentOrigin::CENTER);
+
+    // Setting camera parameters for 3D Scene
+    mSkybox.GetActor().SetPosition( CAMERA_DEFAULT_POSITION );
+    CameraActor camera3d = stage.GetRenderTaskList().GetTask(0).GetCameraActor();
+    camera3d.SetInvertYAxis( true );
+    camera3d.SetPosition( CAMERA_DEFAULT_POSITION );
+    camera3d.SetNearClippingPlane( CAMERA_DEFAULT_NEAR );
+    camera3d.SetFarClippingPlane( CAMERA_DEFAULT_FAR );
+    camera3d.SetFieldOfView( Radian( Degree( CAMERA_DEFAULT_FOV ) ) );
+
+    stage.Add( cameraUi );
+    stage.Add( mUiRoot );
+    stage.Add( m3dRoot );
+
+    m3dRoot.Add( mSkybox.GetActor() );
+    m3dRoot.Add( mModel[0].GetActor() );
+    m3dRoot.Add( mModel[1].GetActor() );
+
+
+    if( (stage.GetSize().x > 360.0f) && (stage.GetSize().y > 360.0f) )
+    {
+      mUiRoot.Add( mLabel );
+    }
+
+  }
+
+  /**
+   * Creates a shader using file path
+   */
+  void CreateModelShader()
+  {
+    const std::string mCurrentVShaderFile( VERTEX_SHADER_URL );
+    const std::string mCurrentFShaderFile( FRAGMENT_SHADER_URL );
+
+    mShader = LoadShaders( mCurrentVShaderFile, mCurrentFShaderFile );
+
+    // Initialise shader uniforms
+    // Level 8 because the environment texture has 6 levels plus 2 are missing (2x2 and 1x1)
+    mShader.RegisterProperty( "uMaxLOD", 8.0f );
+    mShader.RegisterProperty( "uRoughness", 1.0f );
+    mShader.RegisterProperty( "uMetallic" , 0.0f );
+  }
+
+  /**
+   * Create Textures
+   */
+  void CreateTexture()
+  {
+    PixelData albeldoPixelData = SyncImageLoader::Load( ALBEDO_METAL_TEXTURE_URL );
+    Texture textureAlbedoMetal = Texture::New( TextureType::TEXTURE_2D, albeldoPixelData.GetPixelFormat(), albeldoPixelData.GetWidth(), albeldoPixelData.GetHeight() );
+    textureAlbedoMetal.Upload( albeldoPixelData, 0, 0, 0, 0, albeldoPixelData.GetWidth(), albeldoPixelData.GetHeight() );
+
+    PixelData normalPixelData = SyncImageLoader::Load( NORMAL_ROUGH_TEXTURE_URL );
+    Texture textureNormalRough = Texture::New( TextureType::TEXTURE_2D, normalPixelData.GetPixelFormat(), normalPixelData.GetWidth(), normalPixelData.GetHeight() );
+    textureNormalRough.Upload( normalPixelData, 0, 0, 0, 0, normalPixelData.GetWidth(), normalPixelData.GetHeight() );
+
+    // This texture should have 6 faces and only one mipmap
+    PbrDemo::CubeData diffuse;
+    PbrDemo::LoadCubeMapFromKtxFile( CUBEMAP_DIFFUSE_TEXTURE_URL, diffuse );
+
+    Texture diffuseTexture = Texture::New( TextureType::TEXTURE_CUBE, diffuse.img[0][0].GetPixelFormat(), diffuse.img[0][0].GetWidth(), diffuse.img[0][0].GetHeight() );
+    for( unsigned int midmapLevel = 0; midmapLevel < diffuse.img[0].size(); ++midmapLevel )
+    {
+      for( unsigned int i = 0; i < diffuse.img.size(); ++i )
+      {
+        diffuseTexture.Upload( diffuse.img[i][midmapLevel], CubeMapLayer::POSITIVE_X + i, midmapLevel, 0, 0, diffuse.img[i][midmapLevel].GetWidth(), diffuse.img[i][midmapLevel].GetHeight() );
+      }
+    }
+
+    // This texture should have 6 faces and 6 mipmaps
+    PbrDemo::CubeData specular;
+    PbrDemo::LoadCubeMapFromKtxFile( CUBEMAP_SPECULAR_TEXTURE_URL, specular);
+
+    Texture specularTexture = Texture::New( TextureType::TEXTURE_CUBE, specular.img[0][0].GetPixelFormat(), specular.img[0][0].GetWidth(), specular.img[0][0].GetHeight() );
+    for( unsigned int midmapLevel = 0; midmapLevel < specular.img[0].size(); ++midmapLevel )
+    {
+      for( unsigned int i = 0; i < specular.img.size(); ++i )
+      {
+        specularTexture.Upload( specular.img[i][midmapLevel], CubeMapLayer::POSITIVE_X + i, midmapLevel, 0, 0, specular.img[i][midmapLevel].GetWidth(), specular.img[i][midmapLevel].GetHeight() );
+      }
+    }
+
+    mModel[0].InitTexture( textureAlbedoMetal, textureNormalRough, diffuseTexture, specularTexture );
+    mModel[1].InitTexture( textureAlbedoMetal, textureNormalRough, diffuseTexture, specularTexture );
+    mSkybox.InitTexture( specularTexture );
+  }
+
+  /**
+  * @brief Load a shader source file
+  * @param[in] The path of the source file
+  * @param[out] The contents of file
+  * @return True if the source was read successfully
+  */
+  bool LoadShaderCode( const std::string& fullpath, std::vector<char>& output )
+  {
+    Dali::FileStream fileStream( fullpath, FileStream::READ | FileStream::BINARY );
+    FILE* file = fileStream.GetFile();
+    if( NULL == file )
+    {
+      return false;
+    }
+
+    bool retValue = false;
+    if( ! fseek( file, 0, SEEK_END ) )
+    {
+      long int size = ftell( file );
+
+      if( ( size != -1L ) &&
+        ( ! fseek( file, 0, SEEK_SET ) ) )
+      {
+        output.resize( size + 1 );
+        std::fill( output.begin(), output.end(), 0 );
+        ssize_t result = fread( output.data(), size, 1, file );
+
+        retValue = ( result >= 0 );
+      }
+    }
+
+    return retValue;
+  }
+
+  /**
+  * @brief Load vertex and fragment shader source
+  * @param[in] shaderVertexFileName is the filepath of Vertex shader
+  * @param[in] shaderFragFileName is the filepath of Fragment shader
+  * @return the Dali::Shader object
+  */
+  Shader LoadShaders( const std::string& shaderVertexFileName, const std::string& shaderFragFileName )
+  {
+    Shader shader;
+    std::vector<char> bufV, bufF;
+
+    if( LoadShaderCode( shaderVertexFileName.c_str(), bufV ) )
+    {
+      if( LoadShaderCode( shaderFragFileName.c_str(), bufF ) )
+      {
+        shader = Shader::New( bufV.data() , bufF.data() );
+      }
+    }
+    return shader;
+  }
+
+private:
+  Application& mApplication;
+  TextLabel mLabel;
+  Actor m3dRoot;
+  Actor mUiRoot;
+  Shader mShader;
+  Animation mAnimation;
+  Timer mDoubleTapTime;
+
+  ModelSkybox mSkybox;
+  ModelPbr mModel[2];
+
+  Vector2 mPointZ;
+  Vector2 mStartTouch;
+
+  Quaternion mModelOrientation;
+  float mRoughness;
+  float mMetalness;
+  bool mDoubleTap;
+  bool mTeapotView;
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv);
+  BasicPbrController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/rendering-cube/rendering-cube.cpp b/examples/rendering-cube/rendering-cube.cpp
new file mode 100644 (file)
index 0000000..d8b24d9
--- /dev/null
@@ -0,0 +1,287 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+
+/*
+ * Vertex shader
+ */
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+attribute mediump vec3 aPosition;\n // DALi shader builtin
+attribute mediump vec3 aColor;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+\n
+varying mediump vec4 vColor;\n
+\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  vColor = vec4( aColor, 1.0 );\n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shader
+ */
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+varying mediump vec4 vColor;\n
+\n
+void main()\n
+{\n
+  gl_FragColor = vColor;\n
+}\n
+);
+
+}
+
+// This example shows how to create a cube with colors on each side
+//
+class DrawCubeController : public ConnectionTracker
+{
+public:
+
+  DrawCubeController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &DrawCubeController::Create );
+  }
+
+  ~DrawCubeController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Step 1. Create shader
+    CreateCubeShader();
+
+    // Step 2. Prepare geometry
+    CreateCubeGeometry();
+
+    // Step 3. Create a renderer
+    CreateRenderer();
+
+    // Step 4. Create an Actor
+    CreateActor();
+
+    // Step 5. Play animation to rotate the cube
+    PlayAnimation();
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &DrawCubeController::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &DrawCubeController::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * This function creates a cube geometry including texture coordinates.
+   * Also it demonstrates using the indexed draw feature by setting an index array.
+   */
+  void CreateCubeGeometry()
+  {
+    struct Vertex
+    {
+      Vector3 aPosition;
+      Vector3 aColor;
+    };
+
+    const Vector3 COLOR0( 1.0f, 1.0f, 0.0f );
+    const Vector3 COLOR1( 0.0f, 1.0f, 1.0f );
+    const Vector3 COLOR2( 1.0f, 0.0f, 1.0f );
+    const Vector3 COLOR3( 0.0f, 1.0f, 0.0f );
+    const Vector3 COLOR4( 0.0f, 0.0f, 1.0f );
+    const Vector3 COLOR5( 1.0f, 0.0f, 0.0f );
+
+    Vertex vertices[] = {
+      { Vector3(  1.0f,-1.0f,-1.0f ), COLOR5 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), COLOR5 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), COLOR5 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), COLOR3 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), COLOR3 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), COLOR3 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), COLOR4 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), COLOR4 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), COLOR4 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), COLOR1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), COLOR1 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), COLOR1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), COLOR0 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), COLOR0 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), COLOR0 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), COLOR2 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), COLOR2 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), COLOR2 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), COLOR5 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), COLOR5 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), COLOR5 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), COLOR3 },
+      { Vector3( -1.0f,-1.0f, 1.0f ), COLOR3 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), COLOR3 },
+      { Vector3(  1.0f, 1.0f, 1.0f ), COLOR4 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), COLOR4 },
+      { Vector3(  1.0f,-1.0f,-1.0f ), COLOR4 },
+      { Vector3(  1.0f,-1.0f, 1.0f ), COLOR1 },
+      { Vector3( -1.0f,-1.0f, 1.0f ), COLOR1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), COLOR1 },
+      { Vector3( -1.0f,-1.0f,-1.0f ), COLOR0 },
+      { Vector3( -1.0f,-1.0f, 1.0f ), COLOR0 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), COLOR0 },
+      { Vector3(  1.0f, 1.0f,-1.0f ), COLOR2 },
+      { Vector3( -1.0f, 1.0f,-1.0f ), COLOR2 },
+      { Vector3( -1.0f, 1.0f, 1.0f ), COLOR2 },
+    };
+
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+                                                       .Add( "aPosition", Property::VECTOR3 )
+                                                       .Add( "aColor", Property::VECTOR3 ) );
+    vertexBuffer.SetData( vertices, sizeof(vertices) / sizeof(Vertex) );
+
+    // create indices
+    const unsigned short INDEX_CUBE[] = {
+      2, 1, 0,
+      5, 4, 3,
+      8, 7, 6,
+      11, 10, 9,
+      14, 13, 12,
+      17, 16, 15,
+      20, 19, 18,
+      23, 22, 21,
+      26, 25, 24,
+      29, 28, 27,
+      32, 31, 30,
+      35, 34, 33
+    };
+    mGeometry = Geometry::New();
+    mGeometry.AddVertexBuffer( vertexBuffer );
+    mGeometry.SetIndexBuffer( INDEX_CUBE,
+                              sizeof(INDEX_CUBE)/sizeof(INDEX_CUBE[0])
+        );
+    mGeometry.SetType( Geometry::TRIANGLES );
+  }
+
+  /**
+   * Creates a shader using inlined variable VERTEX_SHADER and FRAGMENT_SHADER
+   *
+   * Shaders are very basic and all they do is transforming vertices and interpolating
+   * input per-vertex color.
+   */
+  void CreateCubeShader()
+  {
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+  }
+
+  /**
+   * Function creates renderer. It turns on depth test and depth write.
+   */
+  void CreateRenderer()
+  {
+    mRenderer = Renderer::New( mGeometry, mShader );
+
+    // Face culling is enabled to hide the backwards facing sides of the cube
+    // This is sufficient to render a single object; for more complex scenes depth-testing might be required
+    mRenderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+  }
+
+  /**
+   * Creates new actor and attaches renderer.
+   */
+  void CreateActor()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    float quarterStageWidth = stage.GetSize().x * 0.25f;
+    mActor = Actor::New();
+    mActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mActor.SetParentOrigin( ParentOrigin::CENTER );
+    mActor.SetPosition( Vector3( 0.0f, 0.0f, 0.0f ) );
+    mActor.SetSize( Vector3( quarterStageWidth, quarterStageWidth, quarterStageWidth ) );
+    mActor.AddRenderer( mRenderer );
+    stage.Add( mActor );
+  }
+
+  /**
+   * Plays animation
+   */
+  void PlayAnimation()
+  {
+    mAnimation = Animation::New( 5.0f );
+    mAnimation.SetLooping( true );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::ZAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::YAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::XAXIS ) );
+    mAnimation.Play();
+  }
+
+private:
+  Application&  mApplication;
+
+  Renderer mRenderer;
+  Shader mShader;
+  Geometry mGeometry;
+  Actor mActor;
+  Animation mAnimation;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  DrawCubeController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/rendering-line/rendering-line.cpp b/examples/rendering-line/rendering-line.cpp
new file mode 100644 (file)
index 0000000..1bbaf84
--- /dev/null
@@ -0,0 +1,195 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+
+/*
+ * Vertex shader
+ */
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+attribute mediump vec2 aPosition;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shader
+ */
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+uniform mediump vec4 uColor;\n
+\n
+void main()\n
+{\n
+  gl_FragColor = uColor;\n
+}\n
+);
+
+}
+
+// This example shows how to draw a line in actor's color
+//
+class DrawLineController : public ConnectionTracker
+{
+public:
+
+  DrawLineController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &DrawLineController::Create );
+  }
+
+  ~DrawLineController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Step 1. Create shader
+    CreateLineShader();
+
+    // Step 2. Prepare geometry
+    CreateLineGeometry();
+
+    // Step 3. Create a renderer
+    CreateRenderer();
+
+    // Step 4. Create an Actor
+    CreateActor();
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &DrawLineController::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &DrawLineController::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * This function creates a line geometry made of two vertices in order
+   * to draw a diagonal line.
+   */
+  void CreateLineGeometry()
+  {
+    Vector2 vertices[] = {
+      Vector2( -1.0f, -1.0f ),
+      Vector2(  1.0f,  1.0f )
+    };
+
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+                                                       .Add( "aPosition", Property::VECTOR2 ) );
+    vertexBuffer.SetData( vertices, sizeof(vertices) / sizeof(Vector2) );
+
+    mGeometry = Geometry::New();
+    mGeometry.AddVertexBuffer( vertexBuffer );
+    mGeometry.SetType( Geometry::LINES );
+  }
+
+  /**
+   * Creates a shader using inlined variable VERTEX_SHADER and FRAGMENT_SHADER
+   *
+   * Shaders are very basic and all they do is transforming vertices and applying actor's colour.
+   */
+  void CreateLineShader()
+  {
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+  }
+
+  /**
+   * Function creates renderer.
+   */
+  void CreateRenderer()
+  {
+    mRenderer = Renderer::New( mGeometry, mShader );
+  }
+
+  /**
+   * Creates new actor and attaches renderer.
+   */
+  void CreateActor()
+  {
+    Stage stage = Stage::GetCurrent();
+    Size size = stage.GetSize() * 0.25f;
+    mActor = Actor::New();
+    mActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mActor.SetParentOrigin( ParentOrigin::CENTER );
+    mActor.SetPosition( Vector3( 0.0f, 0.0f, 0.0f ) );
+    mActor.SetColor( Color::BLACK );
+    mActor.SetSize( Vector3( size.x, size.x, size.x ) );
+    mActor.AddRenderer( mRenderer );
+    stage.Add( mActor );
+  }
+
+private:
+  Application&  mApplication;
+
+  Renderer mRenderer;
+  Shader mShader;
+  Geometry mGeometry;
+  Actor mActor;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  DrawLineController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/rendering-radial-progress/radial-progress.cpp b/examples/rendering-radial-progress/radial-progress.cpp
new file mode 100644 (file)
index 0000000..eb0fb7e
--- /dev/null
@@ -0,0 +1,319 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+
+namespace // unnamed namespace
+{
+
+const char* TEXTURE_URL = DEMO_IMAGE_DIR "RadialEffect-280x280.png";
+const unsigned int TEXTURE_WIDTH = 280;
+const unsigned int TEXTURE_HEIGHT = 280;
+
+const int NUMBER_OF_SIDES( 64 ); // number of sides of the polygon used as a stencil
+const float INITIAL_DELAY( 2.0f ); // initial delay before showing the circle
+const float PROGRESS_DURATION( 0.5f ); // number of seconds to fully show the circle
+
+
+/*
+ * Vertex shader for textured quad
+ */
+const char* VERTEX_SHADER_TEXTURED = DALI_COMPOSE_SHADER(
+attribute mediump vec2 aPosition;\n
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+\n
+varying mediump vec2 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  vTexCoord = vec2(1.0, 1.0)*(aPosition + vec2(0.5) );\n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shaderfor textured quad
+ */
+const char* FRAGMENT_SHADER_TEXTURED = DALI_COMPOSE_SHADER(
+uniform sampler2D uTexture;\n
+\n
+varying mediump vec2 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 texColor = texture2D( uTexture, vTexCoord );\n
+  gl_FragColor = texColor;\n
+}\n
+);
+
+/*
+ * Vertex shader for polygon
+ */
+const char* VERTEX_SHADER_BASIC = DALI_COMPOSE_SHADER(
+attribute mediump vec3 aPosition;\n
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+uniform   mediump float uProgress;\n
+\n
+varying mediump vec2 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition.x, aPosition.y, 0.0, 1.0);\n
+\n
+  float index = aPosition.z;\n
+  if( uProgress < index )\n
+  {\n
+    vertexPosition = vec4(0.0, 0.0, 0.0, 1.0);\n
+  }\n
+\n
+  vertexPosition.xyz *= uSize;\n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shader for polygon
+ */
+const char* FRAGMENT_SHADER_BASIC = DALI_COMPOSE_SHADER(
+
+void main()\n
+{\n
+  gl_FragColor = vec4( 1.0, 1.0, 1.0, 1.0 );\n
+}\n
+);
+
+} // unnamed namespace
+
+
+// This example shows how to render a radial progress indicator
+//
+class RadialProgressController : public ConnectionTracker
+{
+public:
+
+  RadialProgressController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &RadialProgressController::Create );
+  }
+
+  ~RadialProgressController()
+  {
+    // Nothing to do here
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::BLACK );
+
+    // Connect to the stage's key signal to allow Back and Escape to exit.
+    stage.KeyEventSignal().Connect( this, &RadialProgressController::OnKeyEvent );
+
+    // 1. Create actor to show the effect
+    mActor = Actor::New();
+    mActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mActor.SetParentOrigin( ParentOrigin::CENTER );
+    mActor.SetSize( Vector2( TEXTURE_WIDTH, TEXTURE_HEIGHT ) );
+    mActor.RegisterProperty("uProgress", float(1.0f) );
+    stage.Add( mActor );
+
+    // 1. Create stencil renderer i.e. a triangle fan in the shape of a circle
+    Renderer stencilRenderer = CreatePolygon( NUMBER_OF_SIDES );
+    mActor.AddRenderer( stencilRenderer );
+
+    // 2. Create textured quad renderer
+    Renderer texturedQuad = CreateTexturedQuad( TEXTURE_URL );
+    mActor.AddRenderer( texturedQuad );
+
+    // 5. Animate the progress uniform
+    Animation animation = Animation::New( PROGRESS_DURATION + INITIAL_DELAY );
+    animation.AnimateTo( Property(mActor,"uProgress"), float(NUMBER_OF_SIDES+1), TimePeriod(INITIAL_DELAY, PROGRESS_DURATION) );
+    animation.Play();
+
+    // 6. Exit the application when touched
+    stage.GetRootLayer().TouchSignal().Connect( this, &RadialProgressController::OnTouch );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * Generates stencil mask geometry. Geometry is rendered as
+   * a triangle fan and occupies square 2.0x2.0.
+   * @param[in] numberOfSides The more subdivisions the more smooth mask animation.
+   */
+  Renderer CreatePolygon( unsigned int numberOfSides )
+  {
+    float count( numberOfSides );
+
+    // compute radial step in radians
+    const float STEP( (2.0f * M_PI) / count );
+    float angle( 0.0f );
+
+    std::vector< Vector3 > vertices;
+    vertices.push_back( Vector3::ZERO );
+
+    for( size_t i = 0; i <= numberOfSides; ++i )
+    {
+      vertices.push_back( Vector3( -0.5f * cos( angle ), -0.5f * sin( angle ), i+1 ) );
+      angle += STEP;
+    }
+
+    Property::Map vertexFormat;
+    vertexFormat[ "aPosition" ] = Property::VECTOR3;
+
+    // describe vertex format ( only 2-dimensional positions )
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( vertexFormat );
+    vertexBuffer.SetData( vertices.data(), vertices.size() );
+
+    // create geometry
+    Geometry geometry = Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    geometry.SetType( Geometry::TRIANGLE_FAN );
+
+    Shader shader = Shader::New( VERTEX_SHADER_BASIC, FRAGMENT_SHADER_BASIC );
+    Renderer renderer = Renderer::New( geometry, shader );
+
+    // Setting stencil data. We don't want to render to the color buffer so
+    // with use of RenderMode property we specify that only stencil buffer will
+    // be affected.
+    renderer.SetProperty( Renderer::Property::RENDER_MODE, RenderMode::STENCIL );
+
+    // Set stencil function
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION, StencilFunction::ALWAYS );
+
+    // Stencil function reference
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_REFERENCE, 1 );
+
+    // Stencil function mask
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_MASK, 0xFF );
+
+    // Set stencil operations
+    renderer.SetProperty( Renderer::Property::STENCIL_OPERATION_ON_FAIL, StencilOperation::KEEP );
+    renderer.SetProperty( Renderer::Property::STENCIL_OPERATION_ON_Z_FAIL, StencilOperation::KEEP );
+    renderer.SetProperty( Renderer::Property::STENCIL_OPERATION_ON_Z_PASS, StencilOperation::REPLACE );
+
+    // Stencil mask to write
+    renderer.SetProperty( Renderer::Property::STENCIL_MASK, 0xFF );
+
+    // Set depth index lower than textured quad renderer, so stencil will render first
+    renderer.SetProperty( Renderer::Property::DEPTH_INDEX, 1 );
+
+    return renderer;
+  }
+
+  /**
+   * Creates textured quad renderer
+   */
+  Renderer CreateTexturedQuad( const char* url )
+  {
+    // Create shader & geometry needed by Renderer
+
+    Shader shader = Shader::New( VERTEX_SHADER_TEXTURED, FRAGMENT_SHADER_TEXTURED );
+
+    Property::Map vertexFormat;
+    vertexFormat["aPosition"] = Property::VECTOR2;
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( vertexFormat );
+
+    const float P( 0.5f );
+    const Vector2 vertices[] = {
+      Vector2( -P, -P ),
+      Vector2( +P, -P ),
+      Vector2( -P, +P ),
+      Vector2( +P, +P )
+    };
+
+    vertexBuffer.SetData( vertices, 4 );
+
+    // Instantiate quad geometry
+    Geometry geometry = Geometry::New();
+    geometry.AddVertexBuffer( vertexBuffer );
+    geometry.SetType( Geometry::TRIANGLE_STRIP );
+
+    // Load texture
+    PixelData pixelData = Toolkit::SyncImageLoader::Load( url );
+    Texture texture = Texture::New( TextureType::TEXTURE_2D, pixelData.GetPixelFormat(), pixelData.GetWidth(), pixelData.GetHeight() );
+    texture.Upload( pixelData );
+    texture.GenerateMipmaps();
+
+    // Create texture set
+    TextureSet textureSet = TextureSet::New();
+    textureSet.SetTexture( 0, texture  );
+
+    // Create renderer
+    Renderer renderer = Renderer::New( geometry, shader );
+    renderer.SetTextures( textureSet );
+
+    // Set mode indicating we will use both stencil and color buffers
+    renderer.SetProperty( Renderer::Property::RENDER_MODE, RenderMode::COLOR_STENCIL );
+
+    // Stencil function - expecing drawing only when function mask matches exactly
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION, StencilFunction::EQUAL );
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_REFERENCE, 1 );
+    renderer.SetProperty( Renderer::Property::STENCIL_FUNCTION_MASK, 0xFF );
+
+    // We don't want to draw to the stencil, so setting stencil draw mask to 0
+    renderer.SetProperty( Renderer::Property::STENCIL_MASK, 0x00 );
+
+    // Make sure the quad will render after drawing to stencil buffer
+    renderer.SetProperty( Renderer::Property::DEPTH_INDEX, 2 );
+
+    return renderer;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;
+
+  Actor mActor;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  RadialProgressController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/rendering-skybox/look-camera.cpp b/examples/rendering-skybox/look-camera.cpp
new file mode 100644 (file)
index 0000000..9e6cf00
--- /dev/null
@@ -0,0 +1,181 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "look-camera.h"
+
+#include <dali/public-api/common/stage.h>
+#include <dali/public-api/render-tasks/render-task-list.h>
+#include <dali/public-api/render-tasks/render-task.h>
+#include <dali/public-api/events/touch-data.h>
+#include <dali/public-api/events/touch-event.h>
+
+using namespace Dali;
+
+namespace
+{
+// Input sensitivity, the larger value, the more sensitive input
+// Default value has been chosen empirically
+const float   CAMERA_SENSITIVITY        ( 90.0f );
+
+// Vertical angle limit of the camera
+const float   CAMERA_VERTICAL_LIMIT     ( 80.0f );
+
+// Position where camera is instantiated by default
+const Vector3 CAMERA_DEFAULT_POSITION   ( 0.0f, 0.0f, 3.0f );
+
+// Field-of-View in degrees
+const float   CAMERA_DEFAULT_FOV        ( 60.0f );
+
+// Near plane
+const float   CAMERA_DEFAULT_NEAR       ( 0.1f );
+
+// Far plane
+const float   CAMERA_DEFAULT_FAR        ( 100.0f );
+
+// Default forward vector
+const Vector3 CAMERA_FORWARD            ( 0.0f, 0.0f, 1.0f );
+
+// Default up vector
+const Vector3 CAMERA_UP                 ( Vector3::YAXIS );
+}
+
+LookCamera::LookCamera()
+: mCameraYawPitch( 0.0f, 180.0f ),
+  mFovY( CAMERA_DEFAULT_FOV ),
+  mNear( CAMERA_DEFAULT_NEAR ),
+  mFar( CAMERA_DEFAULT_FAR ),
+  mCameraPosition( CAMERA_DEFAULT_POSITION )
+{
+}
+
+LookCamera::~LookCamera()
+{
+  mTimer.Stop();
+  mCameraActor.Remove( mInterceptorActor );
+}
+
+void LookCamera::Initialise( const Vector3& position, float fovY, float near, float far )
+{
+  mFovY = fovY;
+  mNear = near;
+  mFar = far;
+
+  // Camera position is shadowed in order to avoid using GetCurrentPosition()
+  mCameraPosition = position;
+
+  // Initialise default camera
+  InitialiseDefaultCamera();
+
+  // Create input interceptor actor
+  CreateInterceptorActor();
+
+  // Start timer
+  mTimer = Timer::New( 16 );
+  mTimer.TickSignal().Connect( this, &LookCamera::OnTick );
+  mTimer.Start();
+}
+
+bool LookCamera::OnTick()
+{
+  Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+  // ---------------------------------------------------------------------
+  // update rotation
+  Vector2 tmp( mScreenLookDelta );
+  mScreenLookDelta = Vector2::ZERO;
+
+  float yaw = ( (tmp.y / stageSize.x ) * CAMERA_SENSITIVITY );
+  float pitch = ( (tmp.x / stageSize.y ) * CAMERA_SENSITIVITY );
+  mCameraYawPitch.x -= yaw;
+  mCameraYawPitch.y -= pitch;
+  if( abs( mCameraYawPitch.x ) > CAMERA_VERTICAL_LIMIT )
+  {
+    mCameraYawPitch.x = CAMERA_VERTICAL_LIMIT * ((mCameraYawPitch.x < 0) ? -1.0f : 1.0f );
+  }
+
+  Quaternion rotation;
+  Quaternion rotX( Degree( mCameraYawPitch.x), Vector3( 1.0f, 0.0f, 0.0f ) );
+  Quaternion rotY( Degree( mCameraYawPitch.y), Vector3( 0.0f, 1.0f, 0.0f ) );
+  rotation = ( rotY * rotX );
+
+  mCameraActor.SetOrientation( rotation );
+
+  return true;
+}
+
+void LookCamera::InitialiseDefaultCamera()
+{
+  Stage stage = Stage::GetCurrent();
+  mCameraActor = stage.GetRenderTaskList().GetTask(0).GetCameraActor();
+  mCameraActor.SetName( "LookCamera" );
+  mCameraActor.SetAnchorPoint( AnchorPoint::CENTER );
+  mCameraActor.SetParentOrigin( ParentOrigin::CENTER );
+  mCameraActor.SetFieldOfView( Radian( Degree( mFovY ) ) );
+
+  // should be read from file
+  mCameraActor.SetNearClippingPlane( mNear );
+  mCameraActor.SetFarClippingPlane( mFar );
+  mCameraActor.SetPosition( mCameraPosition );
+}
+
+void LookCamera::CreateInterceptorActor()
+{
+  Stage stage = Stage::GetCurrent();
+
+  mInterceptorActor = Actor::New();
+  mInterceptorActor.SetName( "InputInterceptor" );
+  mInterceptorActor.SetSize( Vector3( stage.GetSize().x, stage.GetSize().y, 1 ) );
+  mInterceptorActor.SetPosition( Vector3( 0.0, 0.0, 1.0  ) );
+  mInterceptorActor.SetAnchorPoint( AnchorPoint::CENTER );
+  mInterceptorActor.SetParentOrigin( ParentOrigin::CENTER );
+  mCameraActor.Add( mInterceptorActor );
+
+  // Connect TouchSignal to interceptor actor
+  mInterceptorActor.TouchSignal().Connect( this, &LookCamera::OnTouch );
+}
+
+bool LookCamera::OnTouch( Actor actor, const TouchData& touch )
+{
+  Stage stage = Stage::GetCurrent();
+
+  for( int i = 0; i < (int)touch.GetPointCount() && i < 3; ++i )
+  {
+    Vector2 position( touch.GetScreenPosition( i ) );
+
+    // touch started
+    if( touch.GetState( i ) == PointState::STARTED )
+    {
+      mOldTouchLookPosition = position;
+    }
+    else if( touch.GetState( i ) == PointState::FINISHED ||
+             touch.GetState( i ) == PointState::LEAVE ||
+             touch.GetState( i ) == PointState::INTERRUPTED
+             )
+    {
+      mScreenLookDelta = Vector2::ZERO;
+      mOldTouchLookPosition = Vector2::ZERO;
+    }
+    else // on motion
+    {
+      mScreenLookDelta.x += ( position.x - mOldTouchLookPosition.x );
+      mScreenLookDelta.y += ( position.y - mOldTouchLookPosition.y );
+      mOldTouchLookPosition = position;
+    }
+  }
+
+  return true;
+}
diff --git a/examples/rendering-skybox/look-camera.h b/examples/rendering-skybox/look-camera.h
new file mode 100644 (file)
index 0000000..6cd3a60
--- /dev/null
@@ -0,0 +1,105 @@
+#ifndef LOOK_CAMERA_H
+#define LOOK_CAMERA_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/public-api/actors/camera-actor.h>
+#include <dali/public-api/adaptor-framework/timer.h>
+#include <dali/public-api/math/vector2.h>
+
+/**
+ * @brief The LookCamera class
+ *
+ * LookCamera handles user input to change the orientation of the default camera.
+ */
+class LookCamera : public Dali::ConnectionTracker
+{
+public:
+
+  /**
+   * Creates an instance of LookCamera
+   */
+  LookCamera();
+
+  /**
+   * Destroys an instance of LookCamera
+   */
+  ~LookCamera();
+
+  /**
+   * Initialise with given position, fovY, near, far
+   * @param[in] position Position of the camera.
+   * @param[in] fovY Field of view in degrees
+   * @param[in] near Near plane
+   * @param[in] far Far Plane
+   */
+  void Initialise( const Dali::Vector3& position, float fov, float near, float far );
+
+  /**
+   * Retrieves actor associated with camera object
+   * @return Returns camera actor
+   */
+  Dali::CameraActor GetCameraActor();
+
+private:
+
+  /**
+   * Sets up a perspective camera using Dali default camera
+   */
+  void InitialiseDefaultCamera();
+
+  /**
+   * Creates 'interceptor' actor. Interceptor actor is always parallel
+   * to the camera and positioned little bit in front of it in order to
+   * intercept user input.
+   */
+  void CreateInterceptorActor();
+
+  /**
+   * Handles onTouch signal on the 'interceptor' actor
+   * @param[in] actor Actor receiving signal
+   * @param[in] touch Touch data
+   */
+  bool OnTouch( Dali::Actor actor, const Dali::TouchData& touch );
+
+  /**
+   * Handles camera tick() update
+   * @return true if continue running timer, false otherwise
+   */
+  bool OnTick();
+
+private:
+
+  Dali::CameraActor mCameraActor; /// Camera actor
+  Dali::Actor mInterceptorActor; /// Actor intercepting user input
+
+  Dali::Timer mTimer; /// Per-frame timer
+
+  Dali::Vector2 mScreenLookDelta; /// Look delta vector in screen space
+  Dali::Vector2 mOldTouchLookPosition; /// Previous look vector in screen space
+
+  Dali::Vector2 mCameraYawPitch; /// Camera yaw-pitch angles
+
+  float mFovY; /// Camera field-of-view
+  float mNear; /// Near plane
+  float mFar; /// Far plane
+
+  Dali::Vector3 mCameraPosition; /// Current camera position ( shadowing the actor position )
+};
+
+#endif
diff --git a/examples/rendering-skybox/rendering-skybox.cpp b/examples/rendering-skybox/rendering-skybox.cpp
new file mode 100644 (file)
index 0000000..cb8590d
--- /dev/null
@@ -0,0 +1,493 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+#include "look-camera.h"
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+
+/*
+ * Vertex shader for a textured cube
+ */
+const char* VERTEX_SHADER_CUBE = DALI_COMPOSE_SHADER(
+attribute mediump vec3 aPosition;\n // DALi shader builtin
+attribute mediump vec2 aTexCoord;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+\n
+varying mediump vec2 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  vTexCoord = aTexCoord;\n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shader for a textured cube
+ */
+const char* FRAGMENT_SHADER_CUBE = DALI_COMPOSE_SHADER(
+uniform sampler2D uTexture;\n
+\n
+varying mediump vec2 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 texColor = texture2D( uTexture, vTexCoord );\n
+  gl_FragColor = texColor;\n
+}\n
+);
+
+/*
+ * Vertex shader for a skybox
+ */
+const char* VERTEX_SHADER_SKYBOX = DALI_COMPOSE_SHADER(
+attribute mediump vec3 aPosition;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+\n
+varying mediump vec3 vTexCoord;\n
+void main()\n
+{\n
+  vTexCoord.x =  aPosition.x;\n
+  vTexCoord.y = -aPosition.y;\n // convert to GL coords
+  vTexCoord.z =  aPosition.z;\n
+
+  mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n
+  vec4 clipSpacePosition = uMvpMatrix * vertexPosition;\n
+  gl_Position = clipSpacePosition.xyww;\n // Writes 1.0, the maximum depth value, into the depth buffer.
+                                          // This is an optimization to avoid running the fragment shader
+                                          // for the pixels hidden by the scene's objects.
+}\n
+);
+
+/*
+ * Fragment shader for a skybox
+ */
+const char* FRAGMENT_SHADER_SKYBOX = DALI_COMPOSE_SHADER(
+uniform samplerCube uSkyBoxTexture;\n
+\n
+varying mediump vec3 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 texColor = textureCube( uSkyBoxTexture, vTexCoord );\n
+  gl_FragColor = texColor;\n
+}\n
+);
+
+const float CAMERA_DEFAULT_FOV(    60.0f );
+const float CAMERA_DEFAULT_NEAR(    0.1f );
+const float CAMERA_DEFAULT_FAR(  1000.0f );
+const Vector3 CAMERA_DEFAULT_POSITION( 0.0f, 0.0f, 100.0f );
+
+const char* TEXTURE_URL = DEMO_IMAGE_DIR "wood.png";
+
+const unsigned int SKYBOX_FACE_COUNT = 6;
+const unsigned int SKYBOX_FACE_WIDTH  = 2048;
+const unsigned int SKYBOX_FACE_HEIGHT = 2048;
+
+/*
+ * Credit to Joey do Vries for the following cubemap images
+ * Take from git://github.com/JoeyDeVries/LearnOpenGL.git
+ * The images are licensed under the terms of the CC BY 4.0 license:
+ * https://creativecommons.org/licenses/by/4.0/
+ */
+const char* SKYBOX_FACES[ SKYBOX_FACE_COUNT ] =
+{
+  DEMO_IMAGE_DIR "lake_right.jpg",
+  DEMO_IMAGE_DIR "lake_left.jpg",
+  DEMO_IMAGE_DIR "lake_top.jpg",
+  DEMO_IMAGE_DIR "lake_bottom.jpg",
+  DEMO_IMAGE_DIR "lake_back.jpg",
+  DEMO_IMAGE_DIR "lake_front.jpg"
+};
+
+}
+
+// This example shows how to create a skybox
+//
+// Recommended screen size on desktop: 1280x720
+//
+class TexturedCubeController : public ConnectionTracker
+{
+public:
+
+  TexturedCubeController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TexturedCubeController::Create );
+  }
+
+  ~TexturedCubeController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Disable indicator.
+    // It avoids reposition the camera to fit with the indicator height.
+    Dali::Window winHandle = application.GetWindow();
+    winHandle.ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Step 1. Setup camera
+    SetupCamera();
+
+    // Step 2. Create shaders
+    CreateShaders();
+
+    // Step 3. Create geometry
+    CreateCubeGeometry();
+    CreateSkyboxGeometry();
+
+    // Step 4. Display first a cube at the world origin.
+    //         The write on the depth buffer is enabled.
+    DisplayCube();
+
+    // Step 5. Display last the skybox surrounding the camera.
+    //         The depth test is enabled, the shader sets 1.0, which is the maximum depth and
+    //         the depth function is set to LESS or EQUAL so the fragment shader will run only
+    //         in those pixels that any other object has written on them.
+    DisplaySkybox();
+
+    // Step 6. Play animation to rotate the cube
+    PlayAnimation();
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &TexturedCubeController::OnKeyEvent );
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * @brief Setup a perspective camera pointing in the negative Z direction
+   */
+  void SetupCamera()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    RenderTask renderTask = stage.GetRenderTaskList().GetTask( 0 );
+    renderTask.SetCullMode( false ); // avoid frustum culling affecting the skybox
+
+    mCamera.Initialise( CAMERA_DEFAULT_POSITION, CAMERA_DEFAULT_FOV, CAMERA_DEFAULT_NEAR, CAMERA_DEFAULT_FAR );
+  }
+
+  /**
+   * Creates a shader using inlined variable VERTEX_SHADER and FRAGMENT_SHADER
+   *
+   * Shaders are very basic and all they do is transforming vertices and sampling
+   * a texture.
+   */
+  void CreateShaders()
+  {
+    mShaderCube   = Shader::New( VERTEX_SHADER_CUBE, FRAGMENT_SHADER_CUBE );
+    mShaderSkybox = Shader::New( VERTEX_SHADER_SKYBOX, FRAGMENT_SHADER_SKYBOX );
+  }
+
+  /**
+   * @brief CreateCubeGeometry
+   * This function creates a cube geometry including texture coordinates.
+   * Also it demonstrates using the indexed draw feature by setting an index array.
+   */
+  void CreateCubeGeometry()
+  {
+    struct Vertex
+    {
+      Vector3 aPosition;
+      Vector2 aTexCoord;
+    };
+
+    Vertex vertices[] = {
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+    };
+
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+                                                       .Add( "aPosition", Property::VECTOR3 )
+                                                       .Add( "aTexCoord", Property::VECTOR2 ) );
+    vertexBuffer.SetData( vertices, sizeof(vertices) / sizeof(Vertex) );
+
+    // create indices
+    const unsigned short INDEX_CUBE[] = {
+      2, 1, 0,
+      5, 4, 3,
+      8, 7, 6,
+      11, 10, 9,
+      14, 13, 12,
+      17, 16, 15,
+      20, 19, 18,
+      23, 22, 21,
+      26, 25, 24,
+      29, 28, 27,
+      32, 31, 30,
+      35, 34, 33
+    };
+
+    mGeometry = Geometry::New();
+    mGeometry.AddVertexBuffer( vertexBuffer );
+    mGeometry.SetIndexBuffer( INDEX_CUBE,
+                              sizeof(INDEX_CUBE)/sizeof(INDEX_CUBE[0]) );
+    mGeometry.SetType( Geometry::TRIANGLES );
+  }
+
+  /**
+   * @brief CreateCubeGeometry
+   * This function creates a cube geometry including texture coordinates.
+   * Also it demonstrates using the indexed draw feature by setting an index array.
+   */
+  void CreateSkyboxGeometry()
+  {
+    struct Vertex
+    {
+      Vector3 aPosition;
+    };
+
+    Vertex skyboxVertices[] = {
+        // back
+        { Vector3(  -1.0f,  1.0f, -1.0f ) },
+        { Vector3(  -1.0f, -1.0f, -1.0f ) },
+        { Vector3(   1.0f, -1.0f, -1.0f ) },
+        { Vector3(   1.0f, -1.0f, -1.0f ) },
+        { Vector3(   1.0f,  1.0f, -1.0f ) },
+        { Vector3(  -1.0f,  1.0f, -1.0f ) },
+
+        // left
+        { Vector3(  -1.0f, -1.0f,  1.0f ) },
+        { Vector3(  -1.0f, -1.0f, -1.0f ) },
+        { Vector3(  -1.0f,  1.0f, -1.0f ) },
+        { Vector3(  -1.0f,  1.0f, -1.0f ) },
+        { Vector3(  -1.0f,  1.0f,  1.0f ) },
+        { Vector3(  -1.0f, -1.0f,  1.0f ) },
+
+        // right
+        { Vector3(   1.0f, -1.0f, -1.0f ) },
+        { Vector3(   1.0f, -1.0f,  1.0f ) },
+        { Vector3(   1.0f,  1.0f,  1.0f ) },
+        { Vector3(   1.0f,  1.0f,  1.0f ) },
+        { Vector3(   1.0f,  1.0f, -1.0f ) },
+        { Vector3(   1.0f, -1.0f, -1.0f ) },
+
+        // front
+        { Vector3(  -1.0f, -1.0f,  1.0f ) },
+        { Vector3(  -1.0f,  1.0f,  1.0f ) },
+        { Vector3(   1.0f,  1.0f,  1.0f ) },
+        { Vector3(   1.0f,  1.0f,  1.0f ) },
+        { Vector3(   1.0f, -1.0f,  1.0f ) },
+        { Vector3(  -1.0f, -1.0f,  1.0f ) },
+
+        // botton
+        { Vector3(  -1.0f,  1.0f, -1.0f ) },
+        { Vector3(   1.0f,  1.0f, -1.0f ) },
+        { Vector3(   1.0f,  1.0f,  1.0f ) },
+        { Vector3(   1.0f,  1.0f,  1.0f ) },
+        { Vector3(  -1.0f,  1.0f,  1.0f ) },
+        { Vector3(  -1.0f,  1.0f, -1.0f ) },
+
+        // top
+        { Vector3(  -1.0f, -1.0f, -1.0f ) },
+        { Vector3(  -1.0f, -1.0f,  1.0f ) },
+        { Vector3(   1.0f, -1.0f, -1.0f ) },
+        { Vector3(   1.0f, -1.0f, -1.0f ) },
+        { Vector3(  -1.0f, -1.0f,  1.0f ) },
+        { Vector3(   1.0f, -1.0f,  1.0f ) }
+    };
+
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+                                                       .Add( "aPosition", Property::VECTOR3 ) );
+    vertexBuffer.SetData( skyboxVertices, sizeof(skyboxVertices) / sizeof(Vertex) );
+
+    mSkyboxGeometry = Geometry::New();
+    mSkyboxGeometry.AddVertexBuffer( vertexBuffer );
+    mSkyboxGeometry.SetType( Geometry::TRIANGLES );
+  }
+
+  /**
+   * Display a cube at the world origin
+   */
+  void DisplayCube()
+  {
+    // Load image from file
+    PixelData pixels = SyncImageLoader::Load( TEXTURE_URL );
+
+    Texture texture = Texture::New( TextureType::TEXTURE_2D, pixels.GetPixelFormat(), pixels.GetWidth(), pixels.GetHeight() );
+    texture.Upload( pixels, 0, 0, 0, 0, pixels.GetWidth(), pixels.GetHeight() );
+
+    // create TextureSet
+    mTextureSet = TextureSet::New();
+    mTextureSet.SetTexture( 0, texture );
+
+    mRenderer = Renderer::New( mGeometry, mShaderCube );
+    mRenderer.SetTextures( mTextureSet );
+    mRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, 1.0f );
+
+    // A further optimization would be to enable debug testing instead
+    mRenderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+
+    // Enables the write on the depth buffer.
+    mRenderer.SetProperty( Renderer::Property::DEPTH_WRITE_MODE, DepthWriteMode::ON );
+
+    mActor = Actor::New();
+    mActor.SetName( "Cube" );
+    mActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mActor.SetParentOrigin( ParentOrigin::CENTER );
+    mActor.AddRenderer( mRenderer );
+
+    mActor.SetSize( 10.f, 10.f, 10.f );
+
+    Stage stage = Stage::GetCurrent();
+    stage.Add( mActor );
+  }
+
+  /**
+   * Display a skybox surrounding the camera
+   */
+  void DisplaySkybox()
+  {
+    // Load skybox faces from file
+    Texture texture = Texture::New( TextureType::TEXTURE_CUBE, Pixel::RGBA8888, SKYBOX_FACE_WIDTH, SKYBOX_FACE_HEIGHT );
+    for (unsigned int i = 0; i < SKYBOX_FACE_COUNT; i++)
+    {
+      PixelData pixels = SyncImageLoader::Load( SKYBOX_FACES[i] );
+      texture.Upload( pixels, CubeMapLayer::POSITIVE_X + i, 0, 0, 0, SKYBOX_FACE_WIDTH, SKYBOX_FACE_HEIGHT );
+    }
+
+    // create TextureSet
+    mSkyboxTextures = TextureSet::New();
+    mSkyboxTextures.SetTexture( 0, texture );
+
+    mSkyboxRenderer = Renderer::New( mSkyboxGeometry, mShaderSkybox );
+    mSkyboxRenderer.SetTextures( mSkyboxTextures );
+    mSkyboxRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, 2.0f );
+
+    // Enables the depth test.
+    mSkyboxRenderer.SetProperty( Renderer::Property::DEPTH_TEST_MODE, DepthTestMode::ON );
+
+    // The fragment shader will run only is those pixels that have the max depth value.
+    mSkyboxRenderer.SetProperty( Renderer::Property::DEPTH_FUNCTION, DepthFunction::LESS_EQUAL );
+
+    Stage stage = Stage::GetCurrent();
+
+    mSkyboxActor = Actor::New();
+    mSkyboxActor.SetName( "SkyBox" );
+    mSkyboxActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mSkyboxActor.SetParentOrigin( ParentOrigin::CENTER );
+    mSkyboxActor.SetPosition( CAMERA_DEFAULT_POSITION );
+    mSkyboxActor.AddRenderer( mSkyboxRenderer );
+    stage.Add( mSkyboxActor );
+  }
+
+  /**
+   * Plays animation
+   */
+  void PlayAnimation()
+  {
+    mAnimation = Animation::New( 5.0f );
+    mAnimation.SetLooping( true );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::ZAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::YAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::XAXIS ) );
+    mAnimation.Play();
+  }
+
+private:
+  Application&  mApplication;
+
+  LookCamera mCamera;
+
+  Shader mShaderCube;
+  Shader mShaderSkybox;
+
+  Geometry mGeometry;
+  TextureSet mTextureSet;
+  Renderer mRenderer;
+  Actor mActor;
+  Animation mAnimation;
+
+  Geometry mSkyboxGeometry;
+  TextureSet mSkyboxTextures;
+  Renderer mSkyboxRenderer;
+  Actor mSkyboxActor;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  TexturedCubeController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/rendering-textured-cube/rendering-textured-cube.cpp b/examples/rendering-textured-cube/rendering-textured-cube.cpp
new file mode 100644 (file)
index 0000000..3434d63
--- /dev/null
@@ -0,0 +1,306 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+
+/*
+ * Vertex shader
+ */
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+attribute mediump vec3 aPosition;\n // DALi shader builtin
+attribute mediump vec2 aTexCoord;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+\n
+varying mediump vec2 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  vTexCoord = aTexCoord;\n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shader
+ */
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+uniform sampler2D uTexture;\n
+\n
+varying mediump vec2 vTexCoord;\n
+void main()\n
+{\n
+  mediump vec4 texColor = texture2D( uTexture, vTexCoord );\n
+  gl_FragColor = texColor;\n
+}\n
+);
+
+const char* TEXTURE_URL = DEMO_IMAGE_DIR "wood.png";
+
+}
+
+// This example shows how to create textured cube
+//
+class TexturedCubeController : public ConnectionTracker
+{
+public:
+
+  TexturedCubeController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TexturedCubeController::Create );
+  }
+
+  ~TexturedCubeController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Step 1. Create shader
+    CreateCubeShader();
+
+    // Step 2. Load a texture
+    CreateTexture();
+
+    // Step 3. Prepare geometry
+    CreateCubeGeometry();
+
+    // Step 4. Create a renderer
+    CreateRenderer();
+
+    // Step 5. Create an Actor
+    CreateActor();
+
+    // Step 6. Play animation to rotate the cube
+    PlayAnimation();
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &TexturedCubeController::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &TexturedCubeController::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * @brief CreateCubeGeometry
+   * This function creates a cube geometry including texture coordinates.
+   * Also it demonstrates using the indexed draw feature by setting an index array.
+   */
+  void CreateCubeGeometry()
+  {
+    struct Vertex
+    {
+      Vector3 aPosition;
+      Vector2 aTexCoord;
+    };
+
+    Vertex vertices[] = {
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 0.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f,-1.0f, 1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3( -1.0f,-1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f,-1.0f, 1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+      { Vector3(  1.0f, 1.0f,-1.0f ), Vector2( 1.0, 1.0 ) },
+      { Vector3( -1.0f, 1.0f,-1.0f ), Vector2( 1.0, 0.0 ) },
+      { Vector3( -1.0f, 1.0f, 1.0f ), Vector2( 0.0, 0.0 ) },
+    };
+
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+                                                       .Add( "aPosition", Property::VECTOR3 )
+                                                       .Add( "aTexCoord", Property::VECTOR2 ) );
+    vertexBuffer.SetData( vertices, sizeof(vertices) / sizeof(Vertex) );
+
+    // create indices
+    const unsigned short INDEX_CUBE[] = {
+      2, 1, 0,
+      5, 4, 3,
+      8, 7, 6,
+      11, 10, 9,
+      14, 13, 12,
+      17, 16, 15,
+      20, 19, 18,
+      23, 22, 21,
+      26, 25, 24,
+      29, 28, 27,
+      32, 31, 30,
+      35, 34, 33
+    };
+    mGeometry = Geometry::New();
+    mGeometry.AddVertexBuffer( vertexBuffer );
+    mGeometry.SetIndexBuffer( INDEX_CUBE,
+                              sizeof(INDEX_CUBE)/sizeof(INDEX_CUBE[0]) );
+    mGeometry.SetType( Geometry::TRIANGLES );
+  }
+
+  /**
+   * Creates a shader using inlined variable VERTEX_SHADER and FRAGMENT_SHADER
+   *
+   * Shaders are very basic and all they do is transforming vertices and sampling
+   * a texture.
+   */
+  void CreateCubeShader()
+  {
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+  }
+
+  /**
+   * This function loads a pixel data from a file. In order to load it we use SyncImageLoader utility.
+   * If loading succeeds returned PixelData object can be used to create a texture.
+   * Texture must be uploaded. In the end the texture must be set on the TextureSet object.
+   */
+  void CreateTexture()
+  {
+    // Load image from file
+    PixelData pixels = SyncImageLoader::Load( TEXTURE_URL );
+
+    Texture texture = Texture::New( TextureType::TEXTURE_2D, pixels.GetPixelFormat(), pixels.GetWidth(), pixels.GetHeight() );
+    texture.Upload( pixels, 0, 0, 0, 0, pixels.GetWidth(), pixels.GetHeight() );
+
+    // create TextureSet
+    mTextureSet = TextureSet::New();
+    mTextureSet.SetTexture( 0, texture );
+  }
+
+  /**
+   * Function creates renderer. It turns on depth test and depth write.
+   */
+  void CreateRenderer()
+  {
+    mRenderer = Renderer::New( mGeometry, mShader );
+    mRenderer.SetTextures( mTextureSet );
+
+    // Face culling is enabled to hide the backwards facing sides of the cube
+    // This is sufficient to render a single object; for more complex scenes depth-testing might be required
+    mRenderer.SetProperty( Renderer::Property::FACE_CULLING_MODE, FaceCullingMode::BACK );
+  }
+
+  /**
+   * Creates new actor and attaches renderer.
+   */
+  void CreateActor()
+  {
+    Stage stage = Stage::GetCurrent();
+
+    float quarterStageWidth = stage.GetSize().x * 0.25f;
+    mActor = Actor::New();
+    mActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mActor.SetParentOrigin( ParentOrigin::CENTER );
+    mActor.SetPosition( Vector3( 0.0f, 0.0f, 0.0f ) );
+    mActor.SetSize( Vector3( quarterStageWidth, quarterStageWidth, quarterStageWidth ) );
+    mActor.AddRenderer( mRenderer );
+    stage.Add( mActor );
+  }
+
+  /**
+   * Plays animation
+   */
+  void PlayAnimation()
+  {
+    mAnimation = Animation::New( 5.0f );
+    mAnimation.SetLooping( true );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::ZAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::YAXIS ) );
+    mAnimation.AnimateBy( Property( mActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 )), Vector3::XAXIS ) );
+    mAnimation.Play();
+  }
+
+private:
+  Application&  mApplication;
+
+  Renderer mRenderer;
+  Shader mShader;
+  Geometry mGeometry;
+  TextureSet mTextureSet;
+  Actor mActor;
+  Animation mAnimation;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  TexturedCubeController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/rendering-triangle/rendering-triangle.cpp b/examples/rendering-triangle/rendering-triangle.cpp
new file mode 100644 (file)
index 0000000..76fae81
--- /dev/null
@@ -0,0 +1,196 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+
+/*
+ * Vertex shader
+ */
+const char* VERTEX_SHADER = DALI_COMPOSE_SHADER(
+attribute mediump vec2 aPosition;\n // DALi shader builtin
+uniform   mediump mat4 uMvpMatrix;\n // DALi shader builtin
+uniform   mediump vec3 uSize;\n // DALi shader builtin
+\n
+void main()\n
+{\n
+  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n
+  vertexPosition.xyz *= uSize;\n
+  gl_Position = uMvpMatrix * vertexPosition;\n
+}\n
+);
+
+/*
+ * Fragment shader
+ */
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+uniform mediump vec4 uColor;\n
+\n
+void main()\n
+{\n
+  gl_FragColor = uColor;\n
+}\n
+);
+
+}
+
+// This example shows how to draw a triangle in actor's color
+//
+class DrawTriangleController : public ConnectionTracker
+{
+public:
+
+  DrawTriangleController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &DrawTriangleController::Create );
+  }
+
+  ~DrawTriangleController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Step 1. Create shader
+    CreateTriangleShader();
+
+    // Step 2. Prepare geometry
+    CreateTriangleGeometry();
+
+    // Step 3. Create a renderer
+    CreateRenderer();
+
+    // Step 4. Create an Actor
+    CreateActor();
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &DrawTriangleController::OnTouch );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &DrawTriangleController::OnKeyEvent );
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * This function creates a triangle geometry made of three vertices in order
+   * to draw a coloured triangle.
+   */
+  void CreateTriangleGeometry()
+  {
+    Vector2 vertices[] = {
+      Vector2( -1.0f, -1.0f ),
+      Vector2(  1.0f,  1.0f ),
+      Vector2( -1.0f,  1.0f )
+    };
+
+    PropertyBuffer vertexBuffer = PropertyBuffer::New( Property::Map()
+                                                       .Add( "aPosition", Property::VECTOR2 ) );
+    vertexBuffer.SetData( vertices, sizeof(vertices) / sizeof(Vector2) );
+
+    mGeometry = Geometry::New();
+    mGeometry.AddVertexBuffer( vertexBuffer );
+    mGeometry.SetType( Geometry::TRIANGLES );
+  }
+
+  /**
+   * Creates a shader using inlined variable VERTEX_SHADER and FRAGMENT_SHADER
+   *
+   * Shaders are very basic and all they do is transforming vertices and applying actor's colour.
+   */
+  void CreateTriangleShader()
+  {
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+  }
+
+  /**
+   * Function creates renderer.
+   */
+  void CreateRenderer()
+  {
+    mRenderer = Renderer::New( mGeometry, mShader );
+  }
+
+  /**
+   * Creates new actor and attaches renderer.
+   */
+  void CreateActor()
+  {
+    Stage stage = Stage::GetCurrent();
+    Size size = stage.GetSize() * 0.25f;
+    mActor = Actor::New();
+    mActor.SetAnchorPoint( AnchorPoint::CENTER );
+    mActor.SetParentOrigin( ParentOrigin::CENTER );
+    mActor.SetPosition( Vector3( 0.0f, 0.0f, 0.0f ) );
+    mActor.SetColor( Color::RED );
+    mActor.SetSize( Vector3( size.x, size.x, size.x ) );
+    mActor.AddRenderer( mRenderer );
+    stage.Add( mActor );
+  }
+
+private:
+  Application&  mApplication;
+
+  Renderer mRenderer;
+  Shader mShader;
+  Geometry mGeometry;
+  Actor mActor;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  DrawTriangleController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/scroll-view/scroll-view-example.cpp b/examples/scroll-view/scroll-view-example.cpp
new file mode 100644 (file)
index 0000000..05d3fcd
--- /dev/null
@@ -0,0 +1,600 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <sstream>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char * const BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-default.png" );
+const char * const TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char * const APPLICATION_TITLE( "ScrollView" );
+const char * const EFFECT_CAROUSEL_IMAGE( DEMO_IMAGE_DIR "icon-scroll-view-carousel.png" );
+const char * const EFFECT_CAROUSEL_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-scroll-view-carousel-selected.png" );
+const char * const EFFECT_CUBE_IMAGE( DEMO_IMAGE_DIR "icon-scroll-view-inner-cube.png" );
+const char * const EFFECT_CUBE_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-scroll-view-inner-cube-selected.png" );
+const char * const EFFECT_SPIRAL_IMAGE( DEMO_IMAGE_DIR "icon-scroll-view-spiral.png" );
+const char * const EFFECT_SPIRAL_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-scroll-view-spiral-selected.png" );
+const char * const EFFECT_WAVE_IMAGE( DEMO_IMAGE_DIR "icon-effect-wave.png" );
+const char * const EFFECT_WAVE_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-effect-wave-selected.png" );
+
+const Vector3 ICON_SIZE(100.0f, 100.0f, 0.0f);
+
+const char* EFFECT_MODE_NAME[] = {
+    "PageCarousel",
+    "PageCube",
+    "PageSpiral",
+    "PageWave"
+};
+
+const char * const IMAGE_PATHS[] = {
+    DEMO_IMAGE_DIR "gallery-medium-1.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-2.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-3.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-4.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-5.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-6.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-7.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-8.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-9.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-10.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-11.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-12.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-13.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-14.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-15.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-16.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-17.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-18.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-19.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-20.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-21.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-22.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-23.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-24.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-25.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-26.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-27.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-28.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-29.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-30.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-31.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-32.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-33.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-34.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-35.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-36.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-37.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-38.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-39.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-40.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-41.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-42.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-43.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-44.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-45.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-46.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-47.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-48.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-49.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-50.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-51.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-52.jpg",
+    DEMO_IMAGE_DIR "gallery-medium-53.jpg",
+
+    NULL
+};
+
+const char * const GetNextImagePath()
+{
+  static const char * const * imagePtr = &IMAGE_PATHS[0];
+
+  if ( *(++imagePtr) == NULL )
+  {
+    imagePtr = &IMAGE_PATHS[0];
+  }
+
+  return *imagePtr;
+}
+
+const int PAGE_COLUMNS = 10;                                                ///< Number of Pages going across (columns)
+const int PAGE_ROWS = 1;                                                    ///< Number of Pages going down (rows)
+const int IMAGE_ROWS = 5;                                                   ///< Number of Images going down (rows) with a Page
+
+const unsigned int IMAGE_THUMBNAIL_WIDTH  = 256;                            ///< Width of Thumbnail Image in texels
+const unsigned int IMAGE_THUMBNAIL_HEIGHT = 256;                            ///< Height of Thumbnail Image in texels
+
+const float SPIN_DURATION = 1.0f;                                           ///< Times to spin an Image by upon touching, each spin taking a second.
+
+const float EFFECT_SNAP_DURATION(0.66f);                                    ///< Scroll Snap Duration for Effects
+const float EFFECT_FLICK_DURATION(0.5f);                                    ///< Scroll Flick Duration for Effects
+
+} // unnamed namespace
+
+/**
+ * This example shows how to do custom Scroll Effects
+ */
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  ExampleController( Application& application )
+  : mApplication( application ),
+    mView(),
+    mScrolling(false),
+    mEffectMode(PageCarouselEffect)
+  {
+    // Connect to the Application's Init and orientation changed signal
+    mApplication.InitSignal().Connect(this, &ExampleController::OnInit);
+  }
+
+  ~ExampleController()
+  {
+    // Nothing to do here; everything gets deleted automatically
+  }
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit(Application& app)
+  {
+    Stage stage = Dali::Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    // Hide the indicator bar
+    mApplication.GetWindow().ShowIndicator(Dali::Window::INVISIBLE);
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( app,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            "" );
+
+    mEffectIcon[ PageCarouselEffect ] = EFFECT_CAROUSEL_IMAGE;
+    mEffectIconSelected[ PageCarouselEffect ] = EFFECT_CAROUSEL_IMAGE_SELECTED;
+    mEffectIcon[ PageCubeEffect ]     = EFFECT_CUBE_IMAGE;
+    mEffectIconSelected[ PageCubeEffect ]     = EFFECT_CUBE_IMAGE_SELECTED;
+    mEffectIcon[ PageSpiralEffect ]   = EFFECT_SPIRAL_IMAGE;
+    mEffectIconSelected[ PageSpiralEffect ]   = EFFECT_SPIRAL_IMAGE_SELECTED;
+    mEffectIcon[ PageWaveEffect ]     = EFFECT_WAVE_IMAGE;
+    mEffectIconSelected[ PageWaveEffect ]     = EFFECT_WAVE_IMAGE_SELECTED;
+
+    // Create a effect change button. (right of toolbar)
+    mEffectChangeButton = Toolkit::PushButton::New();
+    mEffectChangeButton.ClickedSignal().Connect( this, &ExampleController::OnEffectTouched );
+    mToolBar.AddControl( mEffectChangeButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    // Create the content layer.
+    AddContentLayer();
+
+    // Hack to force screen refresh.
+    Animation animation = Animation::New(1.0f);
+    animation.AnimateTo(Property(mContentLayer, Actor::Property::POSITION), Vector3::ZERO );
+    animation.Play();
+  }
+
+private:
+
+  /**
+   * Adds content to the ContentLayer. This is everything we see
+   * excluding the toolbar at the top.
+   */
+  void AddContentLayer()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    mScrollView = ScrollView::New();
+    mScrollView.SetAnchorPoint(AnchorPoint::CENTER);
+    mScrollView.SetParentOrigin(ParentOrigin::CENTER);
+    mContentLayer.Add( mScrollView );
+    mScrollView.SetSize( stageSize );
+    mScrollView.SetAxisAutoLock( true );
+    mScrollView.SetAxisAutoLockGradient( 1.0f );
+
+    mScrollView.ScrollStartedSignal().Connect( this, &ExampleController::OnScrollStarted );
+    mScrollView.ScrollCompletedSignal().Connect( this, &ExampleController::OnScrollCompleted );
+
+    for(int row = 0;row<PAGE_ROWS;row++)
+    {
+      for(int column = 0;column<PAGE_COLUMNS;column++)
+      {
+        Actor page = CreatePage();
+
+        page.SetPosition( column * stageSize.x, row * stageSize.y );
+        mScrollView.Add( page );
+
+        mPages.push_back(page);
+      }
+    }
+
+    Update();
+  }
+
+  /**
+   * Updates the ScrollView and it's children based
+   * on the current effect.
+   */
+  void Update()
+  {
+    std::stringstream ss(APPLICATION_TITLE);
+    ss << APPLICATION_TITLE << ": " << EFFECT_MODE_NAME[mEffectMode];
+    SetTitle(ss.str());
+
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, mEffectIcon[ mEffectMode ] );
+    mEffectChangeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, mEffectIconSelected[ mEffectMode ] );
+
+    // remove old Effect if exists.
+    if(mScrollViewEffect)
+    {
+      mScrollView.RemoveEffect(mScrollViewEffect);
+    }
+
+    // apply new Effect to ScrollView
+    ApplyEffectToScrollView();
+    unsigned int pageCount(0);
+    for( std::vector< Actor >::iterator pageIter = mPages.begin(); pageIter != mPages.end(); ++pageIter)
+    {
+      Actor page = *pageIter;
+      ApplyEffectToPage( page, pageCount++ );
+    }
+  }
+
+  /**
+   * Creates a page using a source of images.
+   */
+  Actor CreatePage()
+  {
+    Actor page = Actor::New();
+    page.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    page.SetParentOrigin( ParentOrigin::CENTER );
+    page.SetAnchorPoint( AnchorPoint::CENTER );
+
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    const float margin = 10.0f;
+
+    // Calculate the number of images going across (columns) within a page, according to the screen resolution and dpi.
+    int imageColumns = round(IMAGE_ROWS * (stageSize.x / stage.GetDpi().x) / (stageSize.y / stage.GetDpi().y));
+    const Vector3 imageSize((stageSize.x / imageColumns) - margin, (stageSize.y / IMAGE_ROWS) - margin, 0.0f);
+
+    for(int row = 0;row<IMAGE_ROWS;row++)
+    {
+      for(int column = 0;column<imageColumns;column++)
+      {
+        ImageView image = CreateImage( GetNextImagePath(), imageSize.x, imageSize.y );
+
+        image.SetParentOrigin( ParentOrigin::CENTER );
+        image.SetAnchorPoint( AnchorPoint::CENTER );
+
+        Vector3 position( margin * 0.5f + (imageSize.x + margin) * column - stageSize.width * 0.5f,
+                         margin * 0.5f + (imageSize.y + margin) * row - stageSize.height * 0.5f,
+                          0.0f);
+        image.SetPosition( position + imageSize * 0.5f );
+        image.SetSize( imageSize );
+        page.Add(image);
+      }
+    }
+
+    return page;
+  }
+
+  /**
+   * [ScrollView]
+   * Applies effect to scrollView
+   */
+  void ApplyEffectToScrollView()
+  {
+    bool snap(true);
+
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    RulerPtr rulerX = CreateRuler(snap ? stageSize.width : 0.0f);
+    RulerPtr rulerY = new DefaultRuler;
+    rulerX->SetDomain(RulerDomain(0.0f, stageSize.x * PAGE_COLUMNS, false));
+    rulerY->Disable();
+
+    Dali::Path path = Dali::Path::New();
+    Dali::Property::Array points;
+        points.Resize(3);
+    Dali::Property::Array controlPoints;
+        controlPoints.Resize(4);
+    Vector3 forward;
+    if( mEffectMode == PageCarouselEffect)
+    {
+
+      points[0] = Vector3( stageSize.x*0.75, 0.0f,  -stageSize.x*0.75f);
+      points[1] = Vector3( 0.0f, 0.0f, 0.0f );
+      points[2] = Vector3( -stageSize.x*0.75f, 0.0f,  -stageSize.x*0.75f);
+      path.SetProperty( Path::Property::POINTS, points );
+
+      controlPoints[0] = Vector3( stageSize.x*0.5f, 0.0f, 0.0f );
+      controlPoints[1] = Vector3( stageSize.x*0.5f, 0.0f, 0.0f );
+      controlPoints[2] = Vector3(-stageSize.x*0.5f, 0.0f, 0.0f );
+      controlPoints[3] = Vector3(-stageSize.x*0.5f, 0.0f, 0.0f );
+      path.SetProperty( Path::Property::CONTROL_POINTS, controlPoints );
+
+      forward = Vector3::ZERO;
+    }
+    else if( mEffectMode == PageCubeEffect)
+    {
+      points[0] = Vector3( stageSize.x*0.5, 0.0f,  stageSize.x*0.5f);
+      points[1] = Vector3( 0.0f, 0.0f, 0.0f );
+      points[2] = Vector3( -stageSize.x*0.5f, 0.0f, stageSize.x*0.5f);
+      path.SetProperty( Path::Property::POINTS, points );
+
+      controlPoints[0] = Vector3( stageSize.x*0.5f, 0.0f, stageSize.x*0.3f );
+      controlPoints[1] = Vector3( stageSize.x*0.3f, 0.0f, 0.0f );
+      controlPoints[2] = Vector3(-stageSize.x*0.3f, 0.0f, 0.0f );
+      controlPoints[3] = Vector3(-stageSize.x*0.5f, 0.0f,  stageSize.x*0.3f );
+      path.SetProperty( Path::Property::CONTROL_POINTS, controlPoints );
+
+      forward = Vector3(-1.0f,0.0f,0.0f);
+    }
+    else if( mEffectMode == PageSpiralEffect)
+    {
+      points[0] = Vector3( stageSize.x*0.5, 0.0f,  -stageSize.x*0.5f);
+      points[1] = Vector3( 0.0f, 0.0f, 0.0f );
+      points[2] = Vector3( -stageSize.x*0.5f, 0.0f, -stageSize.x*0.5f);
+      path.SetProperty( Path::Property::POINTS, points );
+
+      controlPoints[0] = Vector3( stageSize.x*0.5f, 0.0f, 0.0f );
+      controlPoints[1] = Vector3( stageSize.x*0.5f, 0.0f, 0.0f );
+      controlPoints[2] = Vector3(-stageSize.x*0.5f, 0.0f, 0.0f );
+      controlPoints[3] = Vector3(-stageSize.x*0.5f, 0.0f, 0.0f );
+      path.SetProperty( Path::Property::CONTROL_POINTS, controlPoints );
+
+      forward = Vector3(-1.0f,0.0f,0.0f);
+    }
+    else if( mEffectMode == PageWaveEffect)
+    {
+      points[0] = Vector3( stageSize.x, 0.0f,  -stageSize.x);
+      points[1] = Vector3( 0.0f, 0.0f, 0.0f );
+      points[2] = Vector3( -stageSize.x, 0.0f, -stageSize.x);
+      path.SetProperty( Path::Property::POINTS, points );
+
+      controlPoints[0] = Vector3( 0.0f, 0.0f, -stageSize.x );
+      controlPoints[1] = Vector3( stageSize.x*0.5f, 0.0f, 0.0f );
+      controlPoints[2] = Vector3( -stageSize.x*0.5f, 0.0f, 0.0f);
+      controlPoints[3] = Vector3(0.0f, 0.0f,-stageSize.x  );
+      path.SetProperty( Path::Property::CONTROL_POINTS, controlPoints );
+
+      forward = Vector3(-1.0f,0.0f,0.0f);
+    }
+
+    mScrollViewEffect = ScrollViewPagePathEffect::New(path, forward,Toolkit::ScrollView::Property::SCROLL_FINAL_X, Vector3(stageSize.x,stageSize.y,0.0f),PAGE_COLUMNS);
+    mScrollView.SetScrollSnapDuration(EFFECT_SNAP_DURATION);
+    mScrollView.SetScrollFlickDuration(EFFECT_FLICK_DURATION);
+    mScrollView.SetScrollSnapAlphaFunction(AlphaFunction::EASE_OUT);
+    mScrollView.SetScrollFlickAlphaFunction(AlphaFunction::EASE_OUT);
+    mScrollView.RemoveConstraintsFromChildren();
+
+    rulerX = CreateRuler(snap ? stageSize.width * 0.5f : 0.0f);
+    rulerX->SetDomain( RulerDomain( 0.0f, stageSize.x * 0.5f * PAGE_COLUMNS, false ) );
+
+    unsigned int currentPage = mScrollView.GetCurrentPage();
+    if( mScrollViewEffect )
+    {
+      mScrollView.ApplyEffect(mScrollViewEffect);
+    }
+
+    mScrollView.SetWrapMode( true );
+    mScrollView.SetRulerX( rulerX );
+    mScrollView.SetRulerY( rulerY );
+
+    mScrollView.ScrollTo( currentPage, 0.0f );
+  }
+
+  /**
+   * Creates a Ruler that snaps to a specified grid size.
+   * If that grid size is 0.0 then this ruler does not
+   * snap.
+   *
+   * @param[in] gridSize (optional) The grid size for the ruler,
+   * (Default = 0.0 i.e. no snapping)
+   * @return The ruler is returned.
+   */
+  RulerPtr CreateRuler(float gridSize = 0.0f)
+  {
+    if(gridSize <= Math::MACHINE_EPSILON_0)
+    {
+        return new DefaultRuler();
+    }
+    return new FixedRuler(gridSize);
+  }
+  // end switch
+  /**
+    * [Page]
+    * Applies effect to the pages within scroll view.
+    *
+    * @param[in] page The page Actor to apply effect to.
+    */
+   void ApplyEffectToPage(Actor page, unsigned int pageOrder )
+   {
+     page.RemoveConstraints();
+     page.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+     ScrollViewPagePathEffect effect = ScrollViewPagePathEffect::DownCast( mScrollViewEffect );
+     effect.ApplyToPage( page, pageOrder );
+   }
+
+  /**
+   * Creates an Image (Helper)
+   *
+   * @param[in] filename the path of the image.
+   * @param[in] width the width of the image in texels
+   * @param[in] height the height of the image in texels.
+   */
+  ImageView CreateImage( const std::string& filename, int width = IMAGE_THUMBNAIL_WIDTH, int height = IMAGE_THUMBNAIL_HEIGHT )
+  {
+    ImageView actor = ImageView::New();
+    Property::Map map;
+    map[Visual::Property::TYPE] = Visual::IMAGE;
+    map[ImageVisual::Property::URL] = filename;
+    map[ImageVisual::Property::DESIRED_WIDTH] = width;
+    map[ImageVisual::Property::DESIRED_HEIGHT] = height;
+    map[ImageVisual::Property::FITTING_MODE] = FittingMode::SCALE_TO_FILL;
+    map[ImageVisual::Property::SAMPLING_MODE] = SamplingMode::BOX_THEN_LINEAR;
+    actor.SetProperty( ImageView::Property::IMAGE, map );
+
+    actor.SetName( filename );
+    actor.SetParentOrigin(ParentOrigin::CENTER);
+    actor.SetAnchorPoint(AnchorPoint::CENTER);
+
+    actor.TouchSignal().Connect( this, &ExampleController::OnTouchImage );
+    return actor;
+  }
+
+  /**
+   * When scroll starts (i.e. user starts to drag scrollview),
+   * note this state (mScrolling = true)
+   * @param[in] position Current Scroll Position
+   */
+  void OnScrollStarted( const Vector2& position )
+  {
+    mScrolling = true;
+  }
+
+  /**
+   * When scroll starts (i.e. user stops dragging scrollview, and scrollview has snapped to destination),
+   * note this state (mScrolling = false)
+   * @param[in] position Current Scroll Position
+   */
+  void OnScrollCompleted( const Vector2& position )
+  {
+    mScrolling = false;
+  }
+
+  /**
+   * Upon Touching an image (Release), make it spin
+   * (provided we're not scrolling).
+   * @param[in] actor The actor touched
+   * @param[in] event The touch information.
+   */
+  bool OnTouchImage( Actor actor, const TouchData& event )
+  {
+    if( (event.GetPointCount() > 0) && (!mScrolling) )
+    {
+      if( event.GetState( 0 ) == PointState::UP )
+      {
+        // Spin the Image a few times.
+        Animation animation = Animation::New(SPIN_DURATION);
+        animation.AnimateBy( Property( actor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(360.0f * SPIN_DURATION) ), Vector3::XAXIS ), AlphaFunction::EASE_OUT );
+        animation.Play();
+      }
+    }
+    return false;
+  }
+
+  /**
+   * Signal handler, called when the 'Effect' button has been touched.
+   *
+   * @param[in] button The button that was pressed.
+   */
+  bool OnEffectTouched(Button button)
+  {
+    mEffectMode = static_cast<EffectMode>((static_cast<int>(mEffectMode) + 1) % static_cast<int>(Total));
+    Update();
+    return true;
+  }
+
+  /**
+   * Sets/Updates the title of the View
+   * @param[in] title The new title for the view.
+   */
+  void SetTitle(const std::string& title)
+  {
+    if(!mTitleActor)
+    {
+      mTitleActor = DemoHelper::CreateToolBarLabel( "" );
+      // Add title to the tool bar.
+      mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Alignment::HorizontalCenter );
+    }
+
+    mTitleActor.SetProperty( Toolkit::TextLabel::Property::TEXT, title );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;                            ///< Application instance
+  Toolkit::Control mView;                               ///< The View instance.
+  Toolkit::ToolBar mToolBar;                            ///< The View's Toolbar.
+  TextLabel mTitleActor;                                ///< The Toolbar's Title.
+  Layer mContentLayer;                                  ///< The content layer (contains game actors)
+  ScrollView mScrollView;                               ///< ScrollView UI Component
+  bool mScrolling;                                      ///< ScrollView scrolling state (true = scrolling, false = stationary)
+  ScrollViewEffect mScrollViewEffect;                   ///< ScrollView Effect instance.
+  std::vector< Actor > mPages;                          ///< Keeps track of all the pages for applying effects.
+
+  /**
+   * Enumeration of different effects this scrollview can operate under.
+   */
+  enum EffectMode
+  {
+    PageCarouselEffect,                                 ///< Page carousel effect
+    PageCubeEffect,                                     ///< Page cube effect
+    PageSpiralEffect,                                   ///< Page spiral effect
+    PageWaveEffect,                                     ///< Page wave effect
+
+    Total
+  };
+
+  EffectMode mEffectMode;                               ///< Current Effect mode
+
+  std::string mEffectIcon[Total];                       ///< Icons for the effect button
+  std::string mEffectIconSelected[Total];               ///< Icons for the effect button when its selected
+  Toolkit::PushButton mEffectChangeButton;              ///< Effect Change Button
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  ExampleController test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/shadows-and-lights/shadows-and-lights-example.cpp b/examples/shadows-and-lights/shadows-and-lights-example.cpp
new file mode 100644 (file)
index 0000000..740a283
--- /dev/null
@@ -0,0 +1,519 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/shadow-view/shadow-view.h>
+
+#include <iostream>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using std::string;
+using namespace DemoHelper;
+
+namespace
+{
+const char* BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-default.png" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+
+const char* APPLICATION_TITLE_PAN_LIGHT( "Lighting: Pan Light" );
+const char* APPLICATION_TITLE_ROTATE_OBJECT( "Lighting: Rotate Object" );
+const char* APPLICATION_TITLE_PAN_SCENE( "Lighting: Pan Scene" );
+const char* APPLICATION_TITLE_ROTATE_SCENE( "Lighting: Rotate Scene" );
+const char* CHANGE_EFFECT_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
+const char* CHANGE_EFFECT_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char* RESET_ICON( DEMO_IMAGE_DIR "icon-reset.png" );
+const char* RESET_ICON_SELECTED( DEMO_IMAGE_DIR "icon-reset-selected.png" );
+
+const char* SCENE_IMAGE_1( DEMO_IMAGE_DIR "gallery-small-10.jpg");
+const char* SCENE_IMAGE_2( DEMO_IMAGE_DIR "gallery-small-42.jpg");
+const char* SCENE_IMAGE_3( DEMO_IMAGE_DIR "gallery-small-48.jpg");
+
+const float MIN_PINCH_SCALE( 0.3f );
+const float MAX_PINCH_SCALE( 2.05f );
+
+const float R3_2(0.8660254);
+const Vector3 TOP_POINT(  0.0f, -1.0f,  0.0f);
+const Vector3 LEFT_POINT( -R3_2, 0.5f,  0.0f);
+const Vector3 RIGHT_POINT( R3_2, 0.5f,  0.0f);
+const Vector3 FRONT_POINT( 0.0f, 0.0f, 20.0f);
+
+const Vector2 DEFAULT_STAGE_SIZE( 480.0f, 800.0f );
+
+const float X_ROTATION_DISPLACEMENT_FACTOR = 60.f;
+const float Y_ROTATION_DISPLACEMENT_FACTOR = 60.f;
+const float LIGHT_PAN_X_DISPLACEMENT_FACTOR = 1/360.f;
+const float LIGHT_PAN_Y_DISPLACEMENT_FACTOR = 1/360.f;
+
+}
+
+/**
+ * This example shows a fixed point light onto an animating set of images
+ * casting a shadow onto a wall. The whole scene can be rotated.
+ */
+
+class TestApp : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  TestApp(Application &app)
+  : mApp(app),
+    mView(),
+    mContents(),
+    mSceneActor(),
+    mAnimation(),
+    mSceneAnimation(),
+    mPaused( false ),
+    mShadowView(),
+    mShadowPlaneBg(),
+    mShadowPlane(),
+    mCastingLight(),
+    mLightAnchor(),
+    mImageActor1(),
+    mImageActor2(),
+    mImageActor3(),
+    mPanGestureDetector(),
+    mPinchGestureDetector(),
+    mTapGestureDetector(),
+    mTranslation( 22.0f, -1.0f, 0.0f ),
+    mSceneXRotation( Degree(-6.0f) ), // Initial values give a reasonable off-straight view.
+    mSceneYRotation( Degree(20.0f) ),
+    mLightXRotation( Degree(-1.5f) ),
+    mLightYRotation( Degree(-9.5f) ),
+    mObjectXRotation(0.0f),
+    mObjectYRotation(0.0f),
+    mPinchScale(0.6f),
+    mScaleAtPinchStart(0.6f),
+    mAngle1Index( Property::INVALID_INDEX ),
+    mAngle3Index( Property::INVALID_INDEX ),
+    mTitleActor(),
+    mPanState( PAN_LIGHT )
+  {
+    app.InitSignal().Connect(this, &TestApp::Create);
+    app.TerminateSignal().Connect(this, &TestApp::Terminate);
+  }
+
+  ~TestApp()
+  {
+    // Nothing to do here; All the members of this class get deleted automatically and they delete their children
+  }
+
+public:
+
+  struct RotationConstraint
+  {
+    RotationConstraint(float sign)
+    : mSign(sign)
+    {
+    }
+
+    void operator()( Quaternion& current, const PropertyInputContainer& inputs )
+    {
+      Radian angle( inputs[0]->GetFloat() );
+      current = Quaternion( angle * mSign, Vector3::YAXIS );
+    }
+
+    float mSign;
+  };
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void Create(Application& app)
+  {
+    srand(0); // Want repeatable path
+
+    Stage::GetCurrent().KeyEventSignal().Connect(this, &TestApp::OnKeyEvent);
+
+    CreateToolbarAndView(app);
+    CreateShadowViewAndLights();
+    CreateScene();
+  }
+
+  void CreateToolbarAndView(Application& app)
+  {
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    Toolkit::ToolBar toolBar;
+    mContents = DemoHelper::CreateView( app,
+                                        mView,
+                                        toolBar,
+                                        BACKGROUND_IMAGE,
+                                        TOOLBAR_IMAGE,
+                                        "" );
+
+    // Add an effect-changing button on the right of the tool bar.
+    Toolkit::PushButton effectChangeButton = Toolkit::PushButton::New();
+    effectChangeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CHANGE_EFFECT_IMAGE );
+    effectChangeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CHANGE_EFFECT_IMAGE_SELECTED );
+    effectChangeButton.ClickedSignal().Connect( this, &TestApp::OnEffectButtonClicked );
+    toolBar.AddControl( effectChangeButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalRight, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Add title to the tool bar.
+    mTitleActor = DemoHelper::CreateToolBarLabel( "" );
+    toolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter );
+
+    // Set Title text
+    mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_LIGHT) );
+
+    //Add a reset button
+    Toolkit::PushButton resetButton = Toolkit::PushButton::New();
+    resetButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, RESET_ICON );
+    resetButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, RESET_ICON_SELECTED );
+    resetButton.ClickedSignal().Connect( this, &TestApp::OnResetPressed );
+    toolBar.AddControl( resetButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalCenter, DemoHelper::DEFAULT_PLAY_PADDING );
+
+    // Setup
+    mView.SetPosition(Vector3(0.0f, 0.0f, 0.0f));
+
+    mContents.SetBehavior(Layer::LAYER_3D);
+    mContents.SetPosition(mTranslation);
+    mContents.SetOrientation( CalculateWorldRotation( mSceneXRotation, mSceneYRotation ) );
+    mContents.SetScale(mPinchScale, mPinchScale, mPinchScale);
+
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.Attach( mView );
+    mPanGestureDetector.DetectedSignal().Connect(this, &TestApp::OnPan);
+
+    mPinchGestureDetector = PinchGestureDetector::New();
+    mPinchGestureDetector.Attach( mView );
+    mPinchGestureDetector.DetectedSignal().Connect(this, &TestApp::OnPinch);
+
+    mTapGestureDetector = TapGestureDetector::New();
+    mTapGestureDetector.Attach( mView );
+    mTapGestureDetector.DetectedSignal().Connect(this, &TestApp::OnTap);
+  }
+
+
+
+  void CreateShadowViewAndLights()
+  {
+    mShadowView = Toolkit::ShadowView::New();
+    mShadowView.SetName("Container");
+    mShadowView.SetParentOrigin(ParentOrigin::CENTER);
+    mShadowView.SetAnchorPoint(AnchorPoint::CENTER);
+    mShadowView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mShadowView.SetPointLightFieldOfView( Math::PI / 2.0f);
+    mContents.Add(mShadowView);
+
+    mShadowPlaneBg = ImageView::New( DEMO_IMAGE_DIR "brick-wall.jpg" );
+    mShadowPlaneBg.SetParentOrigin(ParentOrigin::CENTER);
+    mShadowPlaneBg.SetAnchorPoint(AnchorPoint::CENTER);
+    mShadowPlaneBg.SetName("Plane");
+    mShadowPlaneBg.SetSize(1000.0f, 1000.0f);
+    mContents.Add(mShadowPlaneBg);
+    mShadowPlaneBg.SetPosition(Vector3(50.0f, 50.0f, -200.0f));
+
+    mShadowView.SetShadowPlaneBackground(mShadowPlaneBg);
+    mShadowView.Activate();
+
+    mLightAnchor = Actor::New();
+    mLightAnchor.SetParentOrigin(ParentOrigin::CENTER);
+    mLightAnchor.SetAnchorPoint(AnchorPoint::CENTER);
+    mLightAnchor.SetOrientation( CalculateWorldRotation( mLightXRotation, mLightYRotation ) );
+
+    // Work out a scaling factor as the initial light position was calculated for desktop
+    // Need to scale light position as scene actor size is based on stage size (i.e. much bigger on device)
+    Vector2 stageSize( Stage::GetCurrent().GetSize() );
+    float scaleFactor = stageSize.x / DEFAULT_STAGE_SIZE.x;
+
+    mCastingLight = Actor::New();
+    mCastingLight.SetParentOrigin(ParentOrigin::CENTER);
+    mCastingLight.SetAnchorPoint(AnchorPoint::CENTER);
+    mCastingLight.SetPosition( Vector3( 0.0f, 0.0f, 800.0f ) * scaleFactor );
+
+    TextLabel text = TextLabel::New( "Light" );
+    text.SetProperty( TextLabel::Property::POINT_SIZE, 20.0f );
+    text.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    text.SetColor( Color::BLUE );
+
+    mCastingLight.Add(text);
+    mLightAnchor.Add(mCastingLight);
+    mShadowPlaneBg.Add(mLightAnchor);
+
+    text.SetParentOrigin(ParentOrigin::CENTER);
+    mShadowView.SetPointLight(mCastingLight);
+  }
+
+  void CreateScene()
+  {
+    mSceneActor = Actor::New();
+    mSceneActor.SetParentOrigin(ParentOrigin::CENTER);
+
+    // Create and add images to the scene actor:
+    mImageActor1 = ImageView::New( SCENE_IMAGE_1 );
+    mImageActor2 = ImageView::New( SCENE_IMAGE_2 );
+    mImageActor3 = ImageView::New( SCENE_IMAGE_3 );
+
+    mImageActor1.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mImageActor2.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mImageActor3.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+
+    mImageActor2.SetParentOrigin(ParentOrigin::CENTER);
+
+    mImageActor1.SetParentOrigin(ParentOrigin::CENTER_LEFT);
+    mImageActor1.SetAnchorPoint(AnchorPoint::CENTER_RIGHT);
+
+    mImageActor3.SetParentOrigin(ParentOrigin::CENTER_RIGHT);
+    mImageActor3.SetAnchorPoint(AnchorPoint::CENTER_LEFT);
+
+    mSceneActor.Add(mImageActor2);
+    mImageActor2.Add(mImageActor1);
+    mImageActor2.Add(mImageActor3);
+
+    Property::Index angleIndex = mImageActor2.RegisterProperty("angle", Property::Value( Dali::ANGLE_30 ) );
+    Source angleSrc( mImageActor2, angleIndex );
+
+    Constraint constraint = Constraint::New<Quaternion>( mImageActor1, Actor::Property::ORIENTATION, RotationConstraint(-1.0f) );
+    constraint.AddSource( angleSrc );
+    constraint.Apply();
+
+    constraint = Constraint::New<Quaternion>( mImageActor3, Actor::Property::ORIENTATION, RotationConstraint(+1.0f) );
+    constraint.AddSource( angleSrc );
+    constraint.Apply();
+
+    mSceneAnimation = Animation::New(2.5f);
+
+    // Want to animate angle from 30 => -30 and back again smoothly.
+
+    mSceneAnimation.AnimateTo( Property( mImageActor2, angleIndex ), Property::Value(-Dali::ANGLE_30), AlphaFunction::SIN );
+
+    mSceneAnimation.SetLooping(true);
+    mSceneAnimation.Play();
+
+    mSceneActor.SetSize(250.0f, 250.0f);
+    mSceneActor.SetPosition(0.0f, 0.0f, 130.0f);
+    mShadowView.Add(mSceneActor);
+  }
+
+
+  Quaternion CalculateWorldRotation( Radian XRotation, Radian YRotation )
+  {
+    Quaternion p( XRotation, Vector3::XAXIS );
+    Quaternion q( YRotation, Vector3::YAXIS );
+    return p*q;
+  }
+
+  void OnTap(Dali::Actor actor, const TapGesture& gesture)
+  {
+    if( mSceneAnimation )
+    {
+      if( ! mPaused )
+      {
+        mSceneAnimation.Pause();
+        mPaused = true;
+      }
+      else
+      {
+        mSceneAnimation.Play();
+        mPaused = false;
+      }
+    }
+  }
+
+  void OnPan(Actor actor, const PanGesture& gesture)
+  {
+    switch (gesture.state)
+    {
+      case Gesture::Continuing:
+      {
+        switch(mPanState)
+        {
+          case PAN_LIGHT:
+          {
+            mLightXRotation = mLightXRotation - gesture.displacement.y * LIGHT_PAN_X_DISPLACEMENT_FACTOR; // X displacement rotates around Y axis
+            mLightXRotation = Clamp(mLightXRotation, -Dali::ANGLE_45, Dali::ANGLE_45 );
+            mLightYRotation = mLightYRotation + gesture.displacement.x * LIGHT_PAN_Y_DISPLACEMENT_FACTOR; // Y displacement rotates around X axis
+            mLightYRotation = Clamp(mLightYRotation, -Dali::ANGLE_45, Dali::ANGLE_45 );
+            mLightAnchor.SetOrientation( CalculateWorldRotation( mLightXRotation, mLightYRotation ) );
+            break;
+          }
+
+          case PAN_SCENE:
+          {
+            mTranslation += Vector3(gesture.displacement.x, gesture.displacement.y, 0.f);
+            mContents.SetPosition(mTranslation);
+            break;
+          }
+
+          case ROTATE_SCENE:
+          {
+            mSceneXRotation = mSceneXRotation - gesture.displacement.y / X_ROTATION_DISPLACEMENT_FACTOR; // X displacement rotates around Y axis
+            mSceneXRotation = Clamp( mSceneXRotation, -Dali::ANGLE_90, Dali::ANGLE_90 );
+            mSceneYRotation = mSceneYRotation + gesture.displacement.x / Y_ROTATION_DISPLACEMENT_FACTOR; // Y displacement rotates around X axis
+            mSceneYRotation = Clamp( mSceneYRotation, -Dali::ANGLE_90, Dali::ANGLE_90 );
+            mContents.SetOrientation( CalculateWorldRotation( mSceneXRotation, mSceneYRotation ) );
+            break;
+          }
+
+          case ROTATE_OBJECT:
+          {
+            mObjectXRotation = mObjectXRotation - gesture.displacement.y / X_ROTATION_DISPLACEMENT_FACTOR; // X displacement rotates around Y axis
+            mObjectYRotation = mObjectYRotation + gesture.displacement.x / Y_ROTATION_DISPLACEMENT_FACTOR; // Y displacement rotates around X axis
+            mSceneActor.SetOrientation( CalculateWorldRotation( mObjectXRotation, mObjectYRotation ) );
+            break;
+          }
+        }
+      }
+      break;
+
+      case Gesture::Finished:
+        // Start animation at last known speed
+        break;
+
+      default:
+        break;
+    }
+  }
+
+  void OnPinch(Actor actor, const PinchGesture& gesture)
+  {
+    if (gesture.state == Gesture::Started)
+    {
+      mScaleAtPinchStart = mContents.GetCurrentScale().x;
+    }
+    mPinchScale = Clamp(mScaleAtPinchStart * gesture.scale, MIN_PINCH_SCALE, MAX_PINCH_SCALE);
+
+    mContents.SetScale(mPinchScale, mPinchScale, mPinchScale);
+  }
+
+  void Terminate(Application& app)
+  {
+    if( mSceneActor )
+    {
+      Stage::GetCurrent().Remove(mSceneActor);
+    }
+    if( mView )
+    {
+      Stage::GetCurrent().Remove(mView);
+    }
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApp.Quit();
+      }
+    }
+  }
+
+  bool OnEffectButtonClicked( Toolkit::Button button )
+  {
+    switch(mPanState)
+    {
+      case PAN_LIGHT:
+        mPanState = ROTATE_OBJECT;
+        mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_ROTATE_OBJECT) );
+        break;
+      case ROTATE_OBJECT:
+        mPanState = ROTATE_SCENE;
+        mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_ROTATE_SCENE) );
+        break;
+      case ROTATE_SCENE:
+        mPanState = PAN_SCENE;
+        mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_SCENE) );
+        break;
+      case PAN_SCENE:
+        mPanState = PAN_LIGHT;
+        mTitleActor.SetProperty( TextLabel::Property::TEXT, std::string(APPLICATION_TITLE_PAN_LIGHT) );
+        break;
+      default:
+        break;
+    }
+
+    return true;
+  }
+
+  bool OnResetPressed( Toolkit::Button button )
+  {
+    // Reset translation
+    mTranslation = Vector3::ZERO;
+    mContents.SetPosition(mTranslation);
+
+    // Align scene so that light anchor orientation is Z Axis
+    mSceneXRotation = -mLightXRotation;
+    mSceneYRotation = -mLightYRotation;
+    mContents.SetOrientation( CalculateWorldRotation( mSceneXRotation, mSceneYRotation ) );
+
+    return true;
+  }
+
+private:
+  Application&              mApp;
+  Toolkit::Control          mView;
+  Layer                     mContents;
+  Actor                     mSceneActor;
+  Animation                 mAnimation;
+  Animation                 mSceneAnimation;
+  bool                      mPaused;
+  Toolkit::ShadowView       mShadowView;
+  ImageView                 mShadowPlaneBg;
+  ImageView                 mShadowPlane;
+  Actor                     mCastingLight;
+  Actor                     mLightAnchor;
+  ImageView                 mImageActor1;
+  ImageView                 mImageActor2;
+  ImageView                 mImageActor3;
+  PanGestureDetector        mPanGestureDetector;
+  PinchGestureDetector      mPinchGestureDetector;
+  TapGestureDetector        mTapGestureDetector;
+  Vector3                   mTranslation;
+  Radian                    mSceneXRotation;
+  Radian                    mSceneYRotation;
+  Radian                    mLightXRotation;
+  Radian                    mLightYRotation;
+  Radian                    mObjectXRotation;
+  Radian                    mObjectYRotation;
+  float                     mPinchScale;
+  float                     mScaleAtPinchStart;
+
+  Property::Index           mAngle1Index;
+  Property::Index           mAngle3Index;
+
+  Toolkit::TextLabel         mTitleActor;
+
+  enum PanState
+  {
+    PAN_SCENE,
+    ROTATE_SCENE,
+    PAN_LIGHT,
+    ROTATE_OBJECT
+  };
+
+  PanState                  mPanState;
+};
+
+/*****************************************************************************/
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  TestApp theApp(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/simple-bitmap-font-text-label/simple-text-label-example.cpp b/examples/simple-bitmap-font-text-label/simple-text-label-example.cpp
new file mode 100644 (file)
index 0000000..51845bb
--- /dev/null
@@ -0,0 +1,204 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file simple-text-label-example.cpp
+ * @brief Basic usage of SimpleTextLabel control
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+#include <dali/devel-api/text-abstraction/font-client.h>
+#include <dali/devel-api/text-abstraction/bitmap-font.h>
+#include <dali-toolkit/devel-api/text/bitmap-font.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+/**
+ * @brief The main class of the demo.
+ */
+class SimpleTextLabelExample : public ConnectionTracker
+{
+public:
+
+  SimpleTextLabelExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &SimpleTextLabelExample::Create );
+  }
+
+  ~SimpleTextLabelExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    stage.KeyEventSignal().Connect(this, &SimpleTextLabelExample::OnKeyEvent);
+
+    TextAbstraction::FontClient fontClient = TextAbstraction::FontClient::Get();
+
+    DevelText::BitmapFontDescription fontDescription;
+    fontDescription.name = "Digits";
+    fontDescription.underlinePosition = 0.f;
+    fontDescription.underlineThickness = 0.f;
+
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0030.png", "0", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0031.png", "1", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0032.png", "2", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0033.png", "3", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0034.png", "4", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0035.png", "5", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0036.png", "6", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0037.png", "7", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0038.png", "8", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0039.png", "9", 34.f, 0.f } );
+    fontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u003a.png", ":", 34.f, 0.f } );
+
+
+    DevelText::BitmapFontDescription colorFontDescription;
+    colorFontDescription.name = "DigitsColor";
+    colorFontDescription.underlinePosition = 0.f;
+    colorFontDescription.underlineThickness = 0.f;
+    colorFontDescription.isColorFont = true;
+
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0030_color.png", "0", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0031_color.png", "1", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0032_color.png", "2", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0033_color.png", "3", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0034_color.png", "4", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0035_color.png", "5", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0036_color.png", "6", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0037_color.png", "7", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0038_color.png", "8", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u0039_color.png", "9", 34.f, 0.f } );
+    colorFontDescription.glyphs.push_back( { DEMO_IMAGE_DIR "u003a_color.png", ":", 34.f, 0.f } );
+
+    TextAbstraction::BitmapFont bitmapFont;
+    TextAbstraction::BitmapFont bitmapColorFont;
+
+    DevelText::CreateBitmapFont( fontDescription, bitmapFont );
+    DevelText::CreateBitmapFont( colorFontDescription, bitmapColorFont );
+
+    fontClient.GetFontId( bitmapFont );
+    fontClient.GetFontId( bitmapColorFont );
+
+    TextLabel label01 = TextLabel::New();
+    label01.SetAnchorPoint( AnchorPoint::CENTER );
+    label01.SetParentOrigin( ParentOrigin::CENTER );
+    label01.SetSize( 400.f, 50.f );
+    label01.SetPosition( 0.f, -100.f );
+    label01.SetProperty( TextLabel::Property::MULTI_LINE, true );
+
+    label01.SetProperty( TextLabel::Property::ENABLE_MARKUP, true );
+    label01.SetProperty( TextLabel::Property::TEXT, "012<color 'value'='green'>345</color>6789:" );
+    label01.SetProperty( TextLabel::Property::TEXT_COLOR, Color::RED );
+    label01.SetProperty( TextLabel::Property::FONT_FAMILY, "Digits" );
+
+    label01.SetBackgroundColor( Color::BLACK );
+
+    stage.Add( label01 );
+
+
+    TextLabel  label02 = TextLabel::New();
+    label02.SetAnchorPoint( AnchorPoint::CENTER );
+    label02.SetParentOrigin( ParentOrigin::CENTER );
+    label02.SetSize( 400.f, 50.f );
+    label02.SetPosition( 0.f, -50.f );
+    label02.SetProperty( TextLabel::Property::MULTI_LINE, true );
+
+    label02.SetProperty( TextLabel::Property::TEXT, "0123456789:" );
+    label02.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    label02.SetProperty( TextLabel::Property::FONT_FAMILY, "DigitsColor" );
+
+    label02.SetBackgroundColor( Color::BLACK );
+
+    stage.Add( label02 );
+
+    TextLabel  label03 = TextLabel::New();
+    label03.SetAnchorPoint( AnchorPoint::CENTER );
+    label03.SetParentOrigin( ParentOrigin::CENTER );
+    label03.SetSize( 400.f, 50.f );
+    label03.SetPosition( 0.f, 0.f );
+    label03.SetProperty( TextLabel::Property::MULTI_LINE, true );
+
+    label03.SetProperty( TextLabel::Property::TEXT, "0123456789:" );
+    label03.SetProperty( TextLabel::Property::FONT_FAMILY, "Digits" );
+
+    label03.SetBackgroundColor( Color::WHITE );
+
+    stage.Add( label03 );
+
+    TextLabel  label04 = TextLabel::New();
+    label04.SetAnchorPoint( AnchorPoint::CENTER );
+    label04.SetParentOrigin( ParentOrigin::CENTER );
+    label04.SetSize( 400.f, 50.f );
+    label04.SetPosition( 0.f, 50.f );
+    label04.SetProperty( TextLabel::Property::MULTI_LINE, true );
+
+    label04.SetProperty( TextLabel::Property::TEXT, "0123456789:" );
+    label04.SetProperty( TextLabel::Property::FONT_FAMILY, "Digits" );
+    label04.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+
+    label04.SetBackgroundColor( Color::BLACK );
+
+    stage.Add( label04 );
+ }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+};
+
+void RunTest( Application& application )
+{
+  SimpleTextLabelExample test( application );
+
+  application.MainLoop();
+}
+
+/** Entry point for Linux & Tizen applications */
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  RunTest( application );
+
+  return 0;
+}
diff --git a/examples/simple-scroll-view/simple-scroll-view-example.cpp b/examples/simple-scroll-view/simple-scroll-view-example.cpp
new file mode 100644 (file)
index 0000000..a19d795
--- /dev/null
@@ -0,0 +1,171 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const int NUMBER_OF_PAGES = 9; ///< Number of Pages going across
+const int ROWS_PER_PAGE   = 5; ///< Number of Images going down (rows) within a Page
+
+const float DISTANCE_BETWEEN_IMAGES = 6.0f; ///< The distance between the images
+
+} // unnamed namespace
+
+/**
+ * An example showing how to create a very simple scroll view
+ */
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * Constructor
+   * @param application class, stored as reference
+   */
+  ExampleController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init and orientation changed signal
+    mApplication.InitSignal().Connect(this, &ExampleController::OnInit);
+  }
+
+  ~ExampleController() = default;
+
+private:
+
+  /**
+   * This method gets called once the main loop of application is up and running
+   */
+  void OnInit(Application& app)
+  {
+    Stage stage = Dali::Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    stage.KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    // Make the scroll view's size a certain percentage of the stage
+    const Vector2 pageSize = stage.GetSize() * 0.75f;
+
+    // Create a scroll view and set our desired properties
+    ScrollView scrollView = ScrollView::New();
+    scrollView.SetAnchorPoint( AnchorPoint::CENTER );
+    scrollView.SetParentOrigin( ParentOrigin::CENTER );
+    scrollView.SetSize( pageSize );
+    scrollView.SetAxisAutoLock( true );
+    stage.Add( scrollView );
+
+    // We want to the scroll-view so only one page is shown
+    scrollView.SetProperty( Actor::Property::CLIPPING_MODE, ClippingMode::CLIP_TO_BOUNDING_BOX );
+
+    // Create rulers for the X and Y domains, we want to disable vertical scrolling but enable horizontal scrolling
+    RulerPtr rulerX = new FixedRuler( pageSize.width ); // Snaps to a multiple of this when flicking
+    RulerPtr rulerY = new DefaultRuler;
+    rulerX->SetDomain( RulerDomain( 0.0f, pageSize.width * NUMBER_OF_PAGES, true ) ); // Set the domain to equal the number of pages used
+    rulerY->Disable();
+
+    scrollView.SetRulerX( rulerX );
+    scrollView.SetRulerY( rulerY );
+
+    // Populate the Pages
+    for( int column = 0, textNumber = 0; column < NUMBER_OF_PAGES; column++ )
+    {
+      Actor page = CreatePage( pageSize, textNumber );
+      page.SetPosition( column * pageSize.x, 0.0f );
+      scrollView.Add( page );
+    }
+
+    // Do a little animation from the last page to the first page on load
+    scrollView.ScrollTo( NUMBER_OF_PAGES - 1, 0.0f );
+    scrollView.ScrollTo( 0 );
+  }
+
+  /**
+   * Creates a page using a source of images.
+   */
+  Actor CreatePage( const Vector2& pageSize, int& textNumber )
+  {
+    Actor page = Actor::New();
+    page.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    page.SetParentOrigin( ParentOrigin::CENTER );
+    page.SetAnchorPoint( AnchorPoint::CENTER );
+
+    Stage stage = Stage::GetCurrent();
+
+    // Calculate the number of images going across (columns) within a page, the image size and the size of the text
+    const int imageColumns = round( ROWS_PER_PAGE * ( pageSize.width ) / ( pageSize.height ) );
+    const Vector3 imageSize( ( pageSize.width  / imageColumns ) - DISTANCE_BETWEEN_IMAGES,
+                             ( pageSize.height / ROWS_PER_PAGE) - DISTANCE_BETWEEN_IMAGES,
+                             0.0f);
+    const float textPixelSize = imageSize.width / 3.0f;
+
+    // Populate the page
+    for( int row = 0; row < ROWS_PER_PAGE; row++ )
+    {
+      for( int column = 0; column < imageColumns; column++ )
+      {
+        const Vector3 position( DISTANCE_BETWEEN_IMAGES * 0.5f + ( imageSize.x + DISTANCE_BETWEEN_IMAGES ) * column - pageSize.width  * 0.5f,
+                                DISTANCE_BETWEEN_IMAGES * 0.5f + ( imageSize.y + DISTANCE_BETWEEN_IMAGES ) * row    - pageSize.height * 0.5f,
+                                0.0f);
+
+        Control item = TextLabel::New( std::to_string( textNumber++ ) );
+        item.SetProperty( Actor::Property::POSITION, position + imageSize * 0.5f );
+        item.SetProperty( Actor::Property::SIZE, imageSize );
+        item.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER );
+        item.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER );
+        item.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLACK );
+        item.SetProperty( TextLabel::Property::PIXEL_SIZE, textPixelSize );
+        item.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, HorizontalAlignment::CENTER );
+        item.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, VerticalAlignment::CENTER );
+        item.SetProperty( TextLabel::Property::OUTLINE, Property::Map{ { "width", 2 }, { "color", Color::WHITE } } );
+        item.SetProperty( Control::Property::BACKGROUND, Vector4( Random::Range( 0.0f, 1.0f ), Random::Range( 0.0f, 1.0f ), Random::Range( 0.0f, 1.0f ), 0.7f ) );
+        page.Add(item);
+      }
+    }
+
+    return page;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application& mApplication; ///< Application instance
+};
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  Application app = Application::New(&argc, &argv, DEMO_THEME_PATH);
+  ExampleController test(app);
+  app.MainLoop();
+  return 0;
+}
diff --git a/examples/simple-text-field/simple-text-field.cpp b/examples/simple-text-field/simple-text-field.cpp
new file mode 100644 (file)
index 0000000..45fa17d
--- /dev/null
@@ -0,0 +1,107 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file simple-text-field-example.cpp
+ * @brief Very basic usage of TextField control
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <iostream>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+
+/**
+ * @brief The main class of the demo.
+ */
+class SimpleTextFieldExample : public ConnectionTracker
+{
+public:
+
+  SimpleTextFieldExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &SimpleTextFieldExample::Create );
+  }
+
+  ~SimpleTextFieldExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &SimpleTextFieldExample::OnKeyEvent);
+    stage.SetBackgroundColor( Vector4( 0.04f, 0.345f, 0.392f, 1.0f ) );
+
+    TextField field = TextField::New();
+    field.SetParentOrigin( ParentOrigin::CENTER );
+    field.SetSize( 300.f, 60.f );
+    field.SetBackgroundColor( Color::WHITE );
+    field.SetBackgroundColor( Vector4( 1.f, 1.f, 1.f, 0.15f ) );
+
+    field.SetProperty( TextField::Property::TEXT_COLOR, Color::BLACK );
+    field.SetProperty( TextField::Property::PLACEHOLDER_TEXT, "Unnamed folder" );
+    field.SetProperty( TextField::Property::PLACEHOLDER_TEXT_FOCUSED, "Enter folder name." );
+
+    stage.Add( field );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+};
+
+void RunTest( Application& application )
+{
+  SimpleTextFieldExample test( application );
+
+  application.MainLoop();
+}
+
+/** Entry point for Linux & Tizen applications */
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  // DALI_DEMO_THEME_PATH not passed to Application so TextField example uses default Toolkit style sheet.
+  Application application = Application::New( &argc, &argv );
+
+  RunTest( application );
+
+  return 0;
+}
diff --git a/examples/simple-text-label/simple-text-label-example.cpp b/examples/simple-text-label/simple-text-label-example.cpp
new file mode 100644 (file)
index 0000000..89c079d
--- /dev/null
@@ -0,0 +1,105 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file simple-text-label-example.cpp
+ * @brief Basic usage of SimpleTextLabel control
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+/**
+ * @brief The main class of the demo.
+ */
+class SimpleTextLabelExample : public ConnectionTracker
+{
+public:
+
+  SimpleTextLabelExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &SimpleTextLabelExample::Create );
+  }
+
+  ~SimpleTextLabelExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    stage.KeyEventSignal().Connect(this, &SimpleTextLabelExample::OnKeyEvent);
+
+    mLabel = TextLabel::New( "A Quick Brown Fox Jumps Over The Lazy Dog" );
+    mLabel.SetName( "SimpleTextLabel" );
+    mLabel.SetAnchorPoint( AnchorPoint::CENTER );
+    mLabel.SetParentOrigin( ParentOrigin::CENTER );
+    mLabel.SetSize( 400.f, 400.f );
+    mLabel.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    mLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLACK );
+    mLabel.SetBackgroundColor( Color::WHITE );
+
+    stage.Add( mLabel );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+
+  TextLabel mLabel;
+};
+
+void RunTest( Application& application )
+{
+  SimpleTextLabelExample test( application );
+
+  application.MainLoop();
+}
+
+/** Entry point for Linux & Tizen applications */
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  RunTest( application );
+
+  return 0;
+}
diff --git a/examples/simple-text-renderer/simple-text-renderer-example.cpp b/examples/simple-text-renderer/simple-text-renderer-example.cpp
new file mode 100644 (file)
index 0000000..4180c2b
--- /dev/null
@@ -0,0 +1,354 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file simple-text-renderer-example.cpp
+ * @brief Basic usage of Text Renderer utility.
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/text/text-utils-devel.h>
+#include <dali/devel-api/adaptor-framework/image-loading.h>
+
+using namespace std;
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const std::string IMAGE1 = DEMO_IMAGE_DIR "application-icon-1.png";
+const std::string IMAGE2 = DEMO_IMAGE_DIR "application-icon-6.png";
+
+#define MAKE_SHADER(A)#A
+
+const std::string VERSION_3_ES = "#version 300 es\n";
+
+const char* VERTEX_SHADER = MAKE_SHADER(
+  precision mediump float;
+
+  in vec2 aPosition;
+  in vec2 aTexCoord;
+
+  out vec2 vUV;
+
+  uniform vec3 uSize;
+  uniform mat4 uMvpMatrix;
+
+  void main()
+  {
+    vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+    vertexPosition.xyz *= uSize;
+    gl_Position = uMvpMatrix * vertexPosition;
+
+    vUV = aTexCoord;
+  }
+);
+
+const char* FRAGMENT_SHADER = MAKE_SHADER(
+  precision mediump float;
+
+  in vec2 vUV;
+
+  out vec4 FragColor;
+
+  uniform sampler2D sAlbedo;
+  uniform vec4 uColor;
+
+  void main()
+  {
+    vec4 color = texture( sAlbedo, vUV );
+    FragColor = vec4( color.rgb, uColor.a * color.a );
+  }
+);
+
+Renderer CreateRenderer()
+{
+  // Create the geometry.
+  struct Vertex
+  {
+    Dali::Vector2 position;
+    Dali::Vector2 texCoord;
+  };
+
+  static const Vertex vertices[] = {{ Dali::Vector2( -0.5f, -0.5f ), Dali::Vector2( 0.0f, 0.0f ) },
+                                    { Dali::Vector2(  0.5f, -0.5f ), Dali::Vector2( 1.0f, 0.0f ) },
+                                    { Dali::Vector2( -0.5f,  0.5f ), Dali::Vector2( 0.0f, 1.0f ) },
+                                    { Dali::Vector2(  0.5f,  0.5f ), Dali::Vector2( 1.0f, 1.0f ) }};
+
+  Property::Map property;
+  property.Add("aPosition", Property::VECTOR2).Add("aTexCoord", Property::VECTOR2);
+
+  PropertyBuffer vertexBuffer = PropertyBuffer::New(property);
+
+  vertexBuffer.SetData(vertices, sizeof(vertices) / sizeof(Vertex));
+
+  Geometry geometry = Geometry::New();
+  geometry.AddVertexBuffer(vertexBuffer);
+
+  geometry.SetType(Geometry::TRIANGLE_STRIP);
+
+  // Create the shader
+  Shader shader = Shader::New( VERSION_3_ES + VERTEX_SHADER, VERSION_3_ES + FRAGMENT_SHADER );
+
+  // Create the renderer
+
+  Renderer renderer = Renderer::New( geometry, shader );
+
+  return renderer;
+}
+
+TextureSet CreateTextureSet( const Dali::Toolkit::DevelText::RendererParameters& textParameters, const std::vector<std::string>& embeddedItems )
+{
+
+  Dali::Vector<Dali::Toolkit::DevelText::EmbeddedItemInfo> embeddedItemLayout;
+
+  Devel::PixelBuffer pixelBuffer = Toolkit::DevelText::Render( textParameters, embeddedItemLayout );
+
+
+  const int dstWidth = static_cast<int>( pixelBuffer.GetWidth() );
+  const int dstHeight = static_cast<int>( pixelBuffer.GetHeight() );
+
+  unsigned int index = 0u;
+  for( const auto& itemLayout : embeddedItemLayout )
+  {
+    int width = static_cast<int>( itemLayout.size.width );
+    int height = static_cast<int>( itemLayout.size.height );
+    int x = static_cast<int>( itemLayout.position.x );
+    int y = static_cast<int>( itemLayout.position.y );
+
+    Dali::Devel::PixelBuffer itemPixelBuffer = Dali::LoadImageFromFile( embeddedItems[index++] );
+    itemPixelBuffer.Resize( width, height );
+    itemPixelBuffer.Rotate( itemLayout.angle );
+
+    width = static_cast<int>( itemPixelBuffer.GetWidth() );
+    height = static_cast<int>( itemPixelBuffer.GetHeight() );
+
+    Dali::Pixel::Format itemPixelFormat = itemPixelBuffer.GetPixelFormat();
+
+    // Check if the item is out of the buffer.
+
+    if( ( x + width < 0 ) ||
+        ( x > dstWidth ) ||
+        ( y < 0 ) ||
+        ( y - height > dstHeight ) )
+    {
+      // The embedded item is completely out of the buffer.
+      continue;
+    }
+
+    // Crop if it exceeds the boundaries of the destination buffer.
+    int layoutX = 0;
+    int layoutY = 0;
+    int cropX = 0;
+    int cropY = 0;
+    int newWidth = width;
+    int newHeight = height;
+
+    bool crop = false;
+
+    if( 0 > x )
+    {
+      newWidth += x;
+      cropX = std::abs( x );
+      crop = true;
+    }
+    else
+    {
+      layoutX = x;
+    }
+
+    if( cropX + newWidth > dstWidth )
+    {
+      crop = true;
+      newWidth -= ( ( cropX + newWidth ) - dstWidth );
+    }
+
+    layoutY = y;
+    if( 0.f > layoutY )
+    {
+      newHeight += layoutY;
+      cropY = std::abs(layoutY);
+      crop = true;
+    }
+
+    if( cropY + newHeight > dstHeight )
+    {
+      crop = true;
+      newHeight -= ( ( cropY + newHeight ) - dstHeight );
+    }
+
+    uint16_t uiCropX = static_cast<uint16_t>(cropX);
+    uint16_t uiCropY = static_cast<uint16_t>(cropY);
+    uint16_t uiNewWidth = static_cast<uint16_t>(newWidth);
+    uint16_t uiNewHeight = static_cast<uint16_t>(newHeight);
+
+    if( crop )
+    {
+      itemPixelBuffer.Crop( uiCropX, uiCropY, uiNewWidth, uiNewHeight );
+    }
+
+    // Blend the item pixel buffer with the text's color according its blending mode.
+    if( Dali::TextAbstraction::ColorBlendingMode::MULTIPLY == itemLayout.colorBlendingMode )
+    {
+      Dali::Devel::PixelBuffer buffer = Dali::Devel::PixelBuffer::New( uiNewWidth,
+                                                                       uiNewHeight,
+                                                                       itemPixelFormat );
+
+      unsigned char* bufferPtr = buffer.GetBuffer();
+      const unsigned char* itemBufferPtr = itemPixelBuffer.GetBuffer();
+      const unsigned int bytesPerPixel = Dali::Pixel::GetBytesPerPixel(itemPixelFormat);
+      const unsigned int size = uiNewWidth * uiNewHeight * bytesPerPixel;
+
+      for (unsigned int i = 0u; i < size; i += bytesPerPixel)
+      {
+        *(bufferPtr + 0u) = static_cast<unsigned char>( static_cast<float>( *(itemBufferPtr + 0u) ) * textParameters.textColor.r );
+        *(bufferPtr + 1u) = static_cast<unsigned char>( static_cast<float>( *(itemBufferPtr + 1u) ) * textParameters.textColor.g );
+        *(bufferPtr + 2u) = static_cast<unsigned char>( static_cast<float>( *(itemBufferPtr + 2u) ) * textParameters.textColor.b );
+        *(bufferPtr + 3u) = static_cast<unsigned char>( static_cast<float>( *(itemBufferPtr + 3u) ) * textParameters.textColor.a );
+
+        itemBufferPtr += bytesPerPixel;
+        bufferPtr += bytesPerPixel;
+      }
+
+      itemPixelBuffer = buffer;
+    }
+
+    Dali::Toolkit::DevelText::UpdateBuffer(itemPixelBuffer, pixelBuffer, layoutX, layoutY, true);
+  }
+
+  PixelData pixelData = Devel::PixelBuffer::Convert( pixelBuffer );
+
+  Texture texture = Texture::New( TextureType::TEXTURE_2D,
+                                  pixelData.GetPixelFormat(),
+                                  pixelData.GetWidth(),
+                                  pixelData.GetHeight() );
+  texture.Upload(pixelData);
+
+  TextureSet textureSet = TextureSet::New();
+  textureSet.SetTexture( 0u, texture );
+
+  return textureSet;
+}
+
+} // namespace
+
+
+/**
+ * @brief The main class of the demo.
+ */
+class SimpleTextRendererExample : public ConnectionTracker
+{
+public:
+
+  SimpleTextRendererExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &SimpleTextRendererExample::Create );
+  }
+
+  ~SimpleTextRendererExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    stage.SetBackgroundColor( Vector4( 0.04f, 0.345f, 0.392f, 1.0f ) );
+
+    stage.KeyEventSignal().Connect(this, &SimpleTextRendererExample::OnKeyEvent);
+
+    const std::string image1 = "<item 'width'=26 'height'=26 'url'='" + IMAGE1 + "'/>";
+    const std::string image2 = "<item 'width'=26 'height'=26/>";
+
+    Dali::Toolkit::DevelText::RendererParameters textParameters;
+    textParameters.text = "Hello " + image1 + " world " + image2 + " this " + image1 + " is " + image2 + " a " + image1 + " demo " + image2 + " of " + image1 + " circular " + image2 + " text " + image1 + " width " + image2 + " icons.";
+    textParameters.horizontalAlignment = "center";
+    textParameters.verticalAlignment = "center";
+    textParameters.circularAlignment = "center";
+    textParameters.fontFamily = "SamsungUI";
+    textParameters.fontWeight = "";
+    textParameters.fontWidth = "";
+    textParameters.fontSlant = "";
+    textParameters.layout = "circular";
+    textParameters.textColor = Color::BLACK;
+    textParameters.fontSize = 25.f;
+    textParameters.textWidth = 360u;
+    textParameters.textHeight = 360u;
+    textParameters.radius = 180u;
+    textParameters.beginAngle = 15.f;
+    textParameters.incrementAngle = 360.f;
+    textParameters.ellipsisEnabled = true;
+    textParameters.markupEnabled = true;
+
+    std::vector<std::string> embeddedItems = { IMAGE2, IMAGE2, IMAGE2, IMAGE2, IMAGE2 };
+
+    TextureSet textureSet = CreateTextureSet( textParameters, embeddedItems );
+
+    Renderer renderer = CreateRenderer();
+    renderer.SetTextures( textureSet );
+
+    Actor actor = Actor::New();
+    actor.SetAnchorPoint( AnchorPoint::CENTER );
+    actor.SetParentOrigin( ParentOrigin::CENTER );
+    actor.SetPosition( 0.f, 0.f);
+    actor.SetSize( 360.f, 360.f );
+    actor.SetColor( Color::WHITE );
+
+    actor.AddRenderer( renderer );
+
+    stage.Add( actor );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+};
+
+/** Entry point for Linux & Tizen applications */
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  SimpleTextRendererExample test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/simple-text-visual/simple-text-visual-example.cpp b/examples/simple-text-visual/simple-text-visual-example.cpp
new file mode 100644 (file)
index 0000000..5964010
--- /dev/null
@@ -0,0 +1,114 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file text-visual-example.cpp
+ * @brief Basic usage of Text Visual.
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+/**
+ * @brief The main class of the demo.
+ */
+class TextVisualExample : public ConnectionTracker
+{
+public:
+
+  TextVisualExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextVisualExample::Create );
+  }
+
+  ~TextVisualExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    stage.KeyEventSignal().Connect(this, &TextVisualExample::OnKeyEvent);
+    stage.SetBackgroundColor( Color::WHITE );
+
+    Dali::Toolkit::Control control = Dali::Toolkit::ImageView::New();
+    control.SetParentOrigin( ParentOrigin::CENTER );
+
+    const std::string markupText( "<color value='blue'><font size='50'>H</font></color>ello <color value='blue'><font size='50'>w</font></color>orld" );
+
+    Dali::Property::Map map;
+    map.Add( Dali::Toolkit::Visual::Property::TYPE, Dali::Toolkit::Visual::TEXT ).
+      Add( Dali::Toolkit::TextVisual::Property::ENABLE_MARKUP, true ).
+      Add( Dali::Toolkit::TextVisual::Property::TEXT, markupText ).
+      Add( Dali::Toolkit::TextVisual::Property::TEXT_COLOR, Dali::Vector4( 0.25f, 0.25f, 0.5f, 1.f ) ).
+      Add( Dali::Toolkit::TextVisual::Property::FONT_FAMILY, "TizenSansRegular" ).
+      Add( Dali::Toolkit::TextVisual::Property::POINT_SIZE, 30.f ).
+      Add( Dali::Toolkit::TextVisual::Property::HORIZONTAL_ALIGNMENT, "END" ).
+      Add( Dali::Toolkit::TextVisual::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+    control.SetProperty( Dali::Toolkit::Control::Property::BACKGROUND, map );
+
+    stage.Add( control );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+
+  TextLabel mLabel;
+};
+
+void RunTest( Application& application )
+{
+  TextVisualExample test( application );
+
+  application.MainLoop();
+}
+
+/** Entry point for Linux & Tizen applications */
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  RunTest( application );
+
+  return 0;
+}
diff --git a/examples/simple-visuals-control/my-control-impl.cpp b/examples/simple-visuals-control/my-control-impl.cpp
new file mode 100644 (file)
index 0000000..b297aea
--- /dev/null
@@ -0,0 +1,143 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// CLASS HEADER
+
+#include "my-control-impl.h"
+
+// EXTERNAL INCLUDES
+
+#include <dali/devel-api/scripting/enum-helper.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/focus-manager/keyinput-focus-manager.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+namespace Internal
+{
+
+namespace
+{
+
+
+Dali::BaseHandle Create()
+{
+  return Demo::MyControl::New();
+}
+
+// Required code for Property set up.
+
+DALI_TYPE_REGISTRATION_BEGIN( MyControl, Dali::Toolkit::Control, Create );
+
+DALI_PROPERTY_REGISTRATION( Demo, MyControl, "iconVisual", MAP, ICON_VISUAL )
+
+DALI_TYPE_REGISTRATION_END();
+
+// Add an enum to string conversion entry for the control's visuals.  In this case just the icon visual.
+// Enables Setting of the property using enums or strings.
+DALI_ENUM_TO_STRING_TABLE_BEGIN( VISUAL_PROPERTIES )
+{ "iconVisual", Demo::MyControl::Property::ICON_VISUAL },
+DALI_ENUM_TO_STRING_TABLE_END( VISUAL_PROPERTIES )
+
+
+} // anonymous namespace
+
+
+Internal::MyControl::MyControl()
+: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) )
+{
+}
+
+Demo::MyControl Internal::MyControl::New()
+{
+  IntrusivePtr<Internal::MyControl> impl = new Internal::MyControl();
+  Demo::MyControl handle = Demo::MyControl( *impl );
+  impl->Initialize();
+  return handle;
+}
+
+void MyControl::OnInitialize()
+{
+  Dali::Actor self = Self();
+  self.SetKeyboardFocusable( true );
+}
+
+void MyControl::SetProperty( BaseObject* object, Property::Index index, const Property::Value& value )
+{
+  Demo::MyControl myControl = Demo::MyControl::DownCast( Dali::BaseHandle( object ) );
+
+  if( myControl )
+  {
+    MyControl& impl = GetImpl( myControl );
+    switch ( index )
+    {
+      case Demo::MyControl::Property::ICON_VISUAL:
+      {
+        Toolkit::Visual::Base iconVisual;
+        Toolkit::VisualFactory visualFactory = Toolkit::VisualFactory::Get();
+        Property::Map *map = value.GetMap();
+        if( map && !map->Empty() )
+        {
+          iconVisual = visualFactory.CreateVisual( *map );
+        }
+
+        if ( iconVisual )
+        {
+          DevelControl::RegisterVisual( impl, index, iconVisual );
+        }
+        break;
+      }
+    }
+  }
+}
+
+Property::Value MyControl::GetProperty( BaseObject* object, Property::Index propertyIndex )
+{
+  Property::Value value;
+
+  Demo::MyControl myControl = Demo::MyControl::DownCast( Dali::BaseHandle( object ) );
+
+  if ( myControl )
+  {
+    switch ( propertyIndex )
+    {
+      case Demo::MyControl::Property::ICON_VISUAL:
+      {
+        Property::Map map;
+        MyControl& impl = GetImpl( myControl );
+        Toolkit::Visual::Base visual =  DevelControl::GetVisual( impl, propertyIndex );
+        if ( visual )
+        {
+          visual.CreatePropertyMap( map ); // Creates a Property map containing the Visual that ICON_VISUAL currently is. Can change if state changes.
+          value = map;
+        }
+        break;
+      }
+      default:
+        break;
+    }
+  }
+
+  return value;
+}
+
+} // Internal
+} // Demo
diff --git a/examples/simple-visuals-control/my-control-impl.h b/examples/simple-visuals-control/my-control-impl.h
new file mode 100644 (file)
index 0000000..76d8428
--- /dev/null
@@ -0,0 +1,103 @@
+#ifndef DALI_DEMO_INTERNAL_MY_CONTROL_IMPL_H
+#define DALI_DEMO_INTERNAL_MY_CONTROL_IMPL_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// CLASS HEADER
+#include "my-control.h"
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-base.h>
+
+namespace Demo
+{
+
+namespace Internal // To use TypeRegistry, handle and body classes need the same name
+{
+
+/**
+ * @brief A Simple Control to show use of visuals with a style sheet and changing visuals with a state change
+ */
+
+class MyControl : public Dali::Toolkit::Internal::Control
+{
+public:
+  /**
+   * @brief Instantiate a new ContentView object
+   */
+  static Demo::MyControl New();
+
+  /**
+   * @brief Default constructor
+   */
+  MyControl();
+
+public:  // Properties
+  /**
+   * @brief Called when a property of an object of this type is set.
+   *
+   * @param[in] object The object whose property is set.
+   * @param[in] index The property index.
+   * @param[in] value The new property value.
+   */
+  static void SetProperty( Dali::BaseObject* object, Dali::Property::Index index, const Dali::Property::Value& value );
+
+  /**
+   * @brief Called to retrieve a property of an object of this type.
+   *
+   * @param[in] object The object whose property is to be retrieved.
+   * @param[in] index The property index.
+   * @return The current value of the property.
+   */
+  static Dali::Property::Value GetProperty( Dali::BaseObject* object, Dali::Property::Index propertyIndex );
+
+private: // From Control
+  /**
+   * @copydoc Toolkit::Control::OnInitialize()
+   */
+  virtual void OnInitialize();
+
+private:
+  /**
+   *  undefined constructor and operator=
+   */
+  MyControl( const MyControl& );
+  MyControl& operator=( const MyControl& );
+
+private:
+};
+
+} // Internal
+
+inline Internal::MyControl& GetImpl( Demo::MyControl& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<Internal::MyControl&>(object);
+}
+
+inline const Internal::MyControl& GetImpl( const Demo::MyControl& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  const Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<const Internal::MyControl&>(object);
+}
+
+} // Demo
+
+#endif //  DALI_DEMO_INTERNAL_MY_CONTROL_IMPL_H
diff --git a/examples/simple-visuals-control/my-control.cpp b/examples/simple-visuals-control/my-control.cpp
new file mode 100644 (file)
index 0000000..65f5c28
--- /dev/null
@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// CLASS HEADER
+#include "my-control.h"
+
+// INTERNAL INCLUDES
+#include "my-control-impl.h"
+
+namespace Demo
+{
+
+MyControl::MyControl()
+{
+}
+
+MyControl::MyControl( const MyControl& control )
+: Control( control )
+{
+}
+
+MyControl& MyControl::operator= ( const MyControl& rhs )
+{
+  if( &rhs != this )
+  {
+    Control::operator=( rhs );
+  }
+  return *this;
+}
+
+MyControl::~MyControl()
+{
+}
+
+MyControl MyControl::New()
+{
+  MyControl control = Internal::MyControl::New();
+  return control;
+}
+
+MyControl MyControl::DownCast( BaseHandle handle )
+{
+  return Control::DownCast< MyControl, Internal::MyControl > ( handle );
+}
+
+MyControl::MyControl( Internal::MyControl& implementation )
+: Control( implementation )
+{
+}
+
+MyControl::MyControl( Dali::Internal::CustomActor* internal )
+: Control( internal )
+{
+  VerifyCustomActorPointer< Internal::MyControl >( internal ) ;
+}
+
+
+} //namespace Demo
diff --git a/examples/simple-visuals-control/my-control.h b/examples/simple-visuals-control/my-control.h
new file mode 100644 (file)
index 0000000..3517b81
--- /dev/null
@@ -0,0 +1,135 @@
+#ifndef DALI_DEMO_MY_CONTROL_H
+#define DALI_DEMO_MY_CONTROL_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <string>
+
+namespace Demo
+{
+
+namespace Internal
+{
+class MyControl;
+}
+
+/**
+ * @brief MyControl is an example control,
+ *
+ * @details It's purpose is to show how to create a simple control to work with the style sheet and state changes.
+ * States changes includes Normal, Focused and Disabled, this example uses the style sheet to set visuals for Normal and Focused states.
+ * When the Focus manager changes the control to be focused the visual displayed is changed and vice versa.
+ *
+ * The visual has the property name ICON_VISUAL with the style sheet string equivalent of "iconVisual"
+ *
+ */
+
+class MyControl : public Dali::Toolkit::Control
+{
+public:
+
+  /**
+   * The start and end property ranges for this Control
+   * My control can use properties from Toolkit::Control as it is derived from it. As control is derived from Actor, MyControl can also use Dali::Actor Properties.
+   *
+   * To ensure that the Property indexes from MyControl do not shadow any from Control we start it's index from the end of Toolkit::Control's indexes.
+   *
+   * Toolkit::Control would have done the same with Actor.
+   *
+   * The end index for this control is set to the start index + 1000 hence MyControl can have 1000 property indexes.
+   *
+   * PROPERTY_END_INDEX for MyControl is public, if another control is derived from it then if can specify MyControl::PROPERTY_END_INDEX+1 to start it's
+   * indexing after MyControls last index.
+   */
+  enum PropertyRange
+  {
+    PROPERTY_START_INDEX = Dali::Toolkit::Control::CONTROL_PROPERTY_END_INDEX + 1,
+    PROPERTY_END_INDEX   = PROPERTY_START_INDEX + 1000,
+    ANIMATABLE_PROPERTY_START_INDEX = Dali::ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX,
+    ANIMATABLE_PROPERTY_END_INDEX = ANIMATABLE_PROPERTY_START_INDEX+1000
+  };
+
+  struct Property
+  {
+    enum
+    {
+      /**
+       * @brief name "iconVisual", type string if it is a url, map otherwise
+       * @details Sets the icon visual to be displayed by the control
+       */
+      ICON_VISUAL = PROPERTY_START_INDEX
+    };
+  };
+
+public: // Construction / destruction
+
+  /**
+   * @brief Create an uninitialized handle
+   */
+  MyControl();
+
+  /**
+   * @brief Create a new MyControl
+   */
+  static MyControl New();
+
+  /**
+   * @brief Destructor. This is non-virtual since derived Handle types must not contain data or virtual methods
+   */
+  ~MyControl();
+
+  /**
+   * @brief Copy Constructor
+   *
+   * @param[in] shadowButton the handle of the control to copy
+   */
+  MyControl( const MyControl& shadowButton );
+
+  /**
+   * @brief Assignment Operator
+   *
+   * @param[in] shadowButton the source of the assignment
+   */
+  MyControl& operator=( const MyControl& shadowButton );
+
+  /**
+   * @brief Downcast
+   *
+   * @param[in] shadowButton the handle of control to downcast to MyControl
+   */
+  static MyControl DownCast( BaseHandle handle );
+
+
+public: //  // Not intended for application developers
+
+  /// @cond internal
+  /**
+   * @brief Create a handle from an implementation
+   */
+  MyControl( Internal::MyControl& implementation );
+
+  /**
+   * @brief Allow the creation of an ShadowButton handle from an internal CustomActor pointer
+   */
+  MyControl( Dali::Internal::CustomActor* internal );
+  /// @endcond
+};
+
+} // namespace Demo
+
+#endif // DALI_DEMO_MY_CONTROL_H
diff --git a/examples/simple-visuals-control/simple-visuals-application.cpp b/examples/simple-visuals-control/simple-visuals-application.cpp
new file mode 100644 (file)
index 0000000..2b9d93c
--- /dev/null
@@ -0,0 +1,141 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// CLASS HEADER
+#include "my-control.h"
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/focus-manager/keyinput-focus-manager.h>
+#include <dali/integration-api/events/touch-event-integ.h>
+#include <cstdio>
+#include <sstream>
+
+// INTERNAL INCLUDES
+#include "simple-visuals-application.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+}
+
+namespace Demo
+{
+
+const char* ICON_IMAGE( DEMO_IMAGE_DIR  "application-icon-13.png" );
+
+SimpleVisualsApplication::SimpleVisualsApplication( Application& application )
+: mApplication( application ),
+  mMyControl()
+{
+  application.InitSignal().Connect( this, &SimpleVisualsApplication::Create );
+}
+
+Dali::Actor SimpleVisualsApplication::OnKeyboardPreFocusChange( Dali::Actor current, Dali::Actor proposed, Dali::Toolkit::Control::KeyboardFocus::Direction direction )
+{
+  Actor nextFocusActor = proposed;
+
+  if( !current && !proposed  )
+  {
+    // Set the initial focus to the first tile in the current page should be focused.
+    nextFocusActor = mMyControl;
+  }
+  else
+  {
+    if ( current == mMyControl )
+    {
+      nextFocusActor = mMyControl2;
+    }
+    else
+    {
+      nextFocusActor = mMyControl;
+    }
+  }
+
+  return nextFocusActor;
+}
+
+
+void SimpleVisualsApplication::OnKeyEvent( const KeyEvent& keyEvent )
+{
+  static int keyPressed = 0;
+
+  if( keyEvent.state == KeyEvent::Down)
+  {
+    if( keyPressed == 0 ) // Is this the first down event?
+    {
+      printf("Key pressed: %s %d\n", keyEvent.keyPressedName.c_str(), keyEvent.keyCode );
+
+      if( IsKey( keyEvent, DALI_KEY_ESCAPE) || IsKey( keyEvent, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else if( keyEvent.keyPressedName.compare("Return") == 0 )
+      {
+      }
+    }
+    keyPressed = 1;
+  }
+  else if( keyEvent.state == KeyEvent::Up )
+  {
+    keyPressed = 0;
+  }
+}
+
+void SimpleVisualsApplication::Create( Application& application )
+{
+  Stage stage = Stage::GetCurrent();
+  stage.SetBackgroundColor( Vector4( 0.1f, 0.1f, 0.1f, 1.0f ) );
+
+  // Connect to key events so can quit application
+  stage.KeyEventSignal().Connect(this, &SimpleVisualsApplication::OnKeyEvent);
+
+  // Hide the indicator bar
+  application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+  // Create a table view to parent the 2 MyControls
+  TableView contentLayout = TableView::New( 2, 2 );
+  contentLayout.SetName("ContentLayout");
+  contentLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  contentLayout.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::HEIGHT );
+  contentLayout.SetSizeModeFactor( Vector3( 1.0f, .5f, 1.0f ) );
+  contentLayout.SetAnchorPoint( AnchorPoint::CENTER );
+  contentLayout.SetParentOrigin( ParentOrigin::CENTER );
+  contentLayout.SetCellPadding( Vector2( 50.0f, 15.0f ) );
+  contentLayout.SetBackgroundColor( Vector4(0.949, 0.949, 0.949, 1.0) );
+
+  // Listen to focus change so can see Visual change from NORMAL to FOCUSED state
+  KeyboardFocusManager::Get().PreFocusChangeSignal().Connect( this, &SimpleVisualsApplication::OnKeyboardPreFocusChange );
+
+  stage.Add( contentLayout );
+
+  // Create 2 MyControls and add to table view.
+  mMyControl = MyControl::New();
+  mMyControl.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  mMyControl.SetParentOrigin(ParentOrigin::TOP_LEFT);
+
+  mMyControl2 = MyControl::New();
+  mMyControl2.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  mMyControl2.SetParentOrigin(ParentOrigin::CENTER);
+
+  contentLayout.AddChild( mMyControl2, TableView::CellPosition(0, 0) );
+  contentLayout.AddChild( mMyControl, TableView::CellPosition(0, 1) );
+}
+
+} // namespace Demo
diff --git a/examples/simple-visuals-control/simple-visuals-application.h b/examples/simple-visuals-control/simple-visuals-application.h
new file mode 100644 (file)
index 0000000..b0e5982
--- /dev/null
@@ -0,0 +1,89 @@
+#ifndef DALI_DEMO_SIMPLE_VISUALS_APPLICATION_H
+#define DALI_DEMO_SIMPLE_VISUALS_APPLICATION_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <cstdio>
+#include <sstream>
+
+// INTERNAL INCLUDES
+#include "my-control.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+
+/**
+ * @brief An application that uses the my-control to display 2 icons, if focus is allowed ( by using a keyboard or remote ) then the icons will change
+ * depending on which one is focused.
+ *
+ * Inherits from connection tracker to manage connection and disconnection of signals,  In this case PreFocusChangeSignal
+ */
+class SimpleVisualsApplication : public ConnectionTracker
+{
+
+public:
+
+  /**
+   * @brief Constructor.
+   *
+   * @param[in]  application A reference to the Application class.
+   */
+  SimpleVisualsApplication( Application& application );
+
+
+private:
+  /**
+   *  @brief Listen to Focus change signal
+   *  @param[in] current  Current focused Actor
+   *  @param[in] proposed New actor that is requesting to be focused
+   *  @param[in] direction The direction of the focus event from current actor
+   */
+  Dali::Actor OnKeyboardPreFocusChange( Dali::Actor current, Dali::Actor proposed, Dali::Toolkit::Control::KeyboardFocus::Direction direction );
+
+  /**
+   * @brief Derived from control, enables capture of key presses
+   *
+   * @param[in] event In incoming key event
+   */
+  void OnKeyEvent( const KeyEvent& event );
+
+  /**
+   * @brief Called to initialise the application content
+   *
+   * @param[in] application A reference to the Application class.
+   */
+  void Create( Application& application );
+
+
+private:
+
+  Application& mApplication;  // Handle to the application that is created and passed in.
+
+  MyControl mMyControl;  //  Handle to first instance of MyControl
+  MyControl mMyControl2; //  Handle to second instance of MyControl
+
+};
+
+} // Namespace Demo
+
+
+#endif // DALI_DEMO_SIMPLE_VISUALS_APPLICATION_H
diff --git a/examples/simple-visuals-control/simple-visuals-example.cpp b/examples/simple-visuals-control/simple-visuals-example.cpp
new file mode 100644 (file)
index 0000000..4c20557
--- /dev/null
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file transition-example.cpp
+ * @brief Example of a control built with visuals
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+
+// INTERNAL INCLUDES
+#include "simple-visuals-application.h"
+
+namespace
+{
+// Style sheet to be used by this application
+const char* SIMPLE_DEMO_THEME( DEMO_STYLE_DIR "simple-example-theme.json" );
+}
+
+int DALI_EXPORT_API main( int argc, char** argv )
+{
+  Application application = Application::New( &argc, &argv, SIMPLE_DEMO_THEME ); // Use the above defined style sheet for this application.
+  Demo::SimpleVisualsApplication simpleVisualsApplication( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/size-negotiation/size-negotiation-example.cpp b/examples/size-negotiation/size-negotiation-example.cpp
new file mode 100644 (file)
index 0000000..4856360
--- /dev/null
@@ -0,0 +1,828 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "shared/view.h"
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+#include <dali-toolkit/devel-api/focus-manager/keyinput-focus-manager.h>
+
+using namespace Dali;
+
+using Dali::Toolkit::TextLabel;
+
+struct ButtonItem
+{
+  const char* name;
+  const char* text;
+};
+
+namespace
+{
+
+const char* const BACKGROUND_IMAGE = DEMO_IMAGE_DIR "background-gradient.jpg";
+const char* const TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png";
+const char* const IMAGE = DEMO_IMAGE_DIR "background-magnifier.jpg";
+
+const char* const TOOLBAR_TITLE = "Negotiate Size";
+
+// This example contains size negotiation tests for TableView and Popup.
+const char* const TABLEVIEW_BUTTON_1CELL_ID = "TABLEVIEW_BUTTON_1CELL";
+const char* const TABLEVIEW_BUTTON_3CELL_ID = "TABLEVIEW_BUTTON_3CELL";
+const char* const TABLEVIEW_BUTTON_3X3CELL_ID = "TABLEVIEW_BUTTON_3X3CELL";
+const char* const TABLEVIEW_BUTTON_FIXED1_ID = "TABLEVIEW_BUTTON_FIXED1";
+const char* const TABLEVIEW_BUTTON_FIXED2_ID = "TABLEVIEW_BUTTON_FIXED2";
+const char* const TABLEVIEW_BUTTON_FIT1_ID = "TABLEVIEW_BUTTON_FIT1";
+const char* const TABLEVIEW_BUTTON_FIT2_ID = "TABLEVIEW_BUTTON_FIT2";
+const char* const TABLEVIEW_BUTTON_NATURAL1_ID = "TABLEVIEW_BUTTON_NATURAL1";
+const char* const TABLEVIEW_BUTTON_NATURAL2_ID = "TABLEVIEW_BUTTON_NATURAL2";
+const char* const TABLEVIEW_BUTTON_NATURAL3_ID = "TABLEVIEW_BUTTON_NATURAL3";
+const char* const POPUP_BUTTON_CONTENT_IMAGE_SCALE_ID = "POPUP_BUTTON_CONTENT_IMAGE_SCALE";
+const char* const POPUP_BUTTON_CONTENT_IMAGE_FIT_ID = "POPUP_BUTTON_CONTENT_IMAGE_FIT";
+const char* const POPUP_BUTTON_CONTENT_IMAGE_FILL_ID = "POPUP_BUTTON_CONTENT_IMAGE_FILL";
+
+const ButtonItem TABLEVIEW_BUTTON_ITEMS[] = {
+    { TABLEVIEW_BUTTON_1CELL_ID,                    "1 Cell" },
+    { TABLEVIEW_BUTTON_3CELL_ID,                    "3 Cell" },
+    { TABLEVIEW_BUTTON_3X3CELL_ID,                  "3x3 Cells" },
+    { TABLEVIEW_BUTTON_FIXED1_ID,                   "Fixed 1" },
+    { TABLEVIEW_BUTTON_FIXED2_ID,                   "Fixed 2" },
+    { TABLEVIEW_BUTTON_FIT1_ID,                     "Fit Top Bottom" },
+    { TABLEVIEW_BUTTON_FIT2_ID,                     "Fit Middle" },
+    { TABLEVIEW_BUTTON_NATURAL1_ID,                 "Natural 1" },
+    { TABLEVIEW_BUTTON_NATURAL2_ID,                 "Natural 2" },
+    { TABLEVIEW_BUTTON_NATURAL3_ID,                 "Natural 3" },
+    { POPUP_BUTTON_CONTENT_IMAGE_SCALE_ID,          "Image Scale" },
+    { POPUP_BUTTON_CONTENT_IMAGE_FIT_ID,            "Image Fit" },
+    { POPUP_BUTTON_CONTENT_IMAGE_FILL_ID,           "Image Fill" },
+};
+
+const unsigned int TABLEVIEW_BUTTON_ITEMS_COUNT = sizeof( TABLEVIEW_BUTTON_ITEMS ) / sizeof( TABLEVIEW_BUTTON_ITEMS[0] );
+
+
+Actor CreateSolidColor( Vector4 color )
+{
+  Toolkit::Control control = Toolkit::Control::New();
+
+  Property::Map map;
+  map[ Toolkit::Visual::Property::TYPE ] = Toolkit::Visual::COLOR;
+  map[ Toolkit::ColorVisual::Property::MIX_COLOR ] = color;
+  control.SetProperty( Toolkit::Control::Property::BACKGROUND, map );
+
+  return control;
+}
+
+}  // anonymous namespace
+
+
+/**
+ * This example shows the usage of size negotiation.
+ */
+class SizeNegotiationController: public ConnectionTracker, public Toolkit::ItemFactory
+{
+public:
+
+  SizeNegotiationController( Application& application )
+    : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &SizeNegotiationController::Create );
+  }
+
+  ~SizeNegotiationController()
+  {
+    // Nothing to do here
+  }
+
+  void Create( Application& application )
+  {
+    // The Init signal is received once (only) during the Application lifetime
+    Stage stage = Stage::GetCurrent();
+
+    // Respond to key events if not handled
+    stage.KeyEventSignal().Connect(this, &SizeNegotiationController::OnKeyEvent);
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+    mContentLayer = DemoHelper::CreateView( application,
+                                            mView,
+                                            mToolBar,
+                                            BACKGROUND_IMAGE,
+                                            TOOLBAR_IMAGE,
+                                            std::string("") );
+
+    mTitleActor = DemoHelper::CreateToolBarLabel( "CUSTOM_TOOLBAR_TITLE" );
+    mTitleActor.SetProperty( Toolkit::TextLabel::Property::TEXT, TOOLBAR_TITLE );
+
+    // Add title to the tool bar.
+    const float padding( DemoHelper::DEFAULT_VIEW_STYLE.mToolBarPadding );
+    mToolBar.AddControl( mTitleActor, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Toolkit::Alignment::HorizontalCenter, Toolkit::Alignment::Padding( padding, padding, padding, padding ) );
+
+    mItemView = Toolkit::ItemView::New( *this );
+    mItemView.SetParentOrigin( ParentOrigin::CENTER );
+    mItemView.SetAnchorPoint( AnchorPoint::CENTER );
+    mItemView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+    // Use a grid layout for tests
+    Vector2 stageSize = stage.GetSize();
+    Toolkit::ItemLayoutPtr gridLayout = Toolkit::DefaultItemLayout::New( Toolkit::DefaultItemLayout::LIST );
+    Vector3 itemSize;
+    gridLayout->GetItemSize( 0, Vector3( stageSize ), itemSize );
+    itemSize.height = stageSize.y / 10;
+    gridLayout->SetItemSize( itemSize );
+    mItemView.AddLayout( *gridLayout );
+
+    mItemView.ActivateLayout( 0, Vector3(stageSize.x, stageSize.y, stageSize.x), 0.0f );
+
+    mContentLayer.Add( mItemView );
+  }
+
+  void StagePopup( Toolkit::Popup popup )
+  {
+    Stage::GetCurrent().Add( popup );
+    popup.SetDisplayState( Toolkit::Popup::SHOWN );
+  }
+
+  void OnPopupOutsideTouched()
+  {
+    if( mPopup )
+    {
+      mPopup.SetDisplayState( Toolkit::Popup::HIDDEN );
+    }
+  }
+
+  void PopupHidden()
+  {
+    if( mPopup )
+    {
+      mPopup.Unparent();
+      mPopup.Reset();
+    }
+  }
+
+  Toolkit::Popup CreatePopup()
+  {
+    Stage stage = Stage::GetCurrent();
+    const float POPUP_WIDTH_DP = stage.GetSize().width * 0.75f;
+
+    Toolkit::Popup popup = Toolkit::Popup::New();
+    popup.SetName( "popup" );
+    popup.SetParentOrigin( ParentOrigin::CENTER );
+    popup.SetAnchorPoint( AnchorPoint::CENTER );
+    popup.SetSize( POPUP_WIDTH_DP, 0.0f );
+    popup.SetProperty( Toolkit::Popup::Property::TAIL_VISIBILITY, false );
+
+    popup.OutsideTouchedSignal().Connect( this, &SizeNegotiationController::OnPopupOutsideTouched );
+    popup.HiddenSignal().Connect( this, &SizeNegotiationController::PopupHidden );
+
+    return popup;
+  }
+
+  bool OnButtonClicked( Toolkit::Button button )
+  {
+    if( button.GetName() == TABLEVIEW_BUTTON_1CELL_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 0, 0 );
+      table.SetName( "TABLEVIEW_BUTTON_1CELL_ID" );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+      Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+      backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      table.Add( backing );
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_3CELL_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 0, 0 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 1, 0 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 2, 0 ) );
+      }
+
+      mPopup.SetContent( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_3X3CELL_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 3 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+      // Column 0
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 0, 0 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 1, 0 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 2, 0 ) );
+      }
+
+      // Column 1
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 1.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 0, 1 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 1.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 1, 1 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 0.0f, 1.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 2, 1 ) );
+      }
+
+      // Column 2
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 0, 2 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.5f, 0.5f, 0.5f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 1, 2 ) );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.5f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        table.AddChild( backing, Toolkit::TableView::CellPosition( 2, 2 ) );
+      }
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_FIXED1_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      table.SetFixedHeight( 0, 50.0f );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fixed" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+        backing.Add( text );
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fill" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+        backing.Add( text );
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fill" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+        backing.Add( text );
+        table.Add( backing );
+      }
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_FIXED2_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      table.SetFixedHeight( 0, 50.0f );
+      table.SetFixedHeight( 2, 50.0f );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fixed" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fill" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fixed" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+        table.Add( backing );
+      }
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_FIT1_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      table.SetFitHeight( 0 );
+      table.SetFitHeight( 2 );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 100.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fill" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 100.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_FIT2_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      table.SetFitHeight( 1 );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fill" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 200.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fill" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_NATURAL1_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::WIDTH );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 1.0f, 1.0f ) );
+      mPopup.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      table.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      table.SetFitHeight( 0 );
+      table.SetFitHeight( 1 );
+      table.SetFitHeight( 2 );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 100.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 200.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 300.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_NATURAL2_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::WIDTH );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 1.0f, 1.0f ) );
+      mPopup.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      table.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      table.SetFitHeight( 0 );
+      table.SetFitHeight( 1 );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT );
+        backing.SetSize( 0.0f, 100.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 200.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == TABLEVIEW_BUTTON_NATURAL3_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::WIDTH );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 1.0f, 1.0f ) );
+      mPopup.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+
+      Toolkit::TableView table = Toolkit::TableView::New( 3, 1 );
+      table.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+      table.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+      table.SetFixedHeight( 0, 20.0f );
+      table.SetFitHeight( 1 );
+
+      {
+        Actor backing = CreateSolidColor( Vector4( 1.0f, 0.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fixed" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      {
+        Actor backing = CreateSolidColor( Vector4( 0.0f, 1.0f, 0.0f, 1.0f ) );
+        backing.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+        backing.SetSize( 0.0f, 200.0f );
+
+        Toolkit::TextLabel text = Toolkit::TextLabel::New( "Fit" );
+        text.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+        text.SetAnchorPoint( AnchorPoint::CENTER );
+        text.SetParentOrigin( ParentOrigin::CENTER );
+        text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+        text.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+        text.SetProperty( Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+        backing.Add( text );
+
+        table.Add( backing );
+      }
+      mPopup.Add( table );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == POPUP_BUTTON_CONTENT_IMAGE_SCALE_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::ImageView image = Toolkit::ImageView::New( IMAGE );
+      image.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+      mPopup.Add( image );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == POPUP_BUTTON_CONTENT_IMAGE_FIT_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::ImageView image = Toolkit::ImageView::New( IMAGE );
+      image.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      image.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+
+      mPopup.Add( image );
+
+      StagePopup( mPopup );
+    }
+    else if( button.GetName() == POPUP_BUTTON_CONTENT_IMAGE_FILL_ID )
+    {
+      mPopup = CreatePopup();
+      mPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mPopup.SetSizeModeFactor( Vector3( 0.75f, 0.5f, 1.0f ) );
+
+      Toolkit::ImageView image = Toolkit::ImageView::New( IMAGE );
+      image.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      image.SetSizeScalePolicy( SizeScalePolicy::FILL_WITH_ASPECT_RATIO );
+
+      mPopup.Add( image );
+
+      StagePopup( mPopup );
+    }
+
+    return true;
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        // Exit application when click back or escape.
+        mApplication.Quit();
+      }
+    }
+  }
+
+public: // From ItemFactory
+
+  /**
+   * @brief Return the number of items to display in the item view
+   *
+   * @return Return the number of items to display
+   */
+  virtual unsigned int GetNumberOfItems()
+  {
+    return TABLEVIEW_BUTTON_ITEMS_COUNT;
+  }
+
+  /**
+   * @brief Create a new item to populate the item view with
+   *
+   * @param[in] itemId The index of the item to create
+   * @return Return the created actor for the given ID
+   */
+  virtual Actor NewItem(unsigned int itemId)
+  {
+    Toolkit::PushButton popupButton = Toolkit::PushButton::New();
+    popupButton.SetName( TABLEVIEW_BUTTON_ITEMS[ itemId ].name );
+    popupButton.SetProperty( Toolkit::Button::Property::LABEL, TABLEVIEW_BUTTON_ITEMS[ itemId ].text );
+    popupButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+
+    popupButton.ClickedSignal().Connect( this, &SizeNegotiationController::OnButtonClicked );
+
+    return popupButton;
+  }
+
+private:
+
+  Application&       mApplication;
+  Toolkit::Control   mView;                  ///< The View instance.
+  Toolkit::ToolBar   mToolBar;               ///< The View's Toolbar.
+  Layer              mContentLayer;          ///< Content layer.
+
+  Toolkit::TextLabel mTitleActor;            ///< Title text.
+  Toolkit::Popup     mMenu;                  ///< The navigation menu.
+  Toolkit::Popup     mPopup;                 ///< The current example popup.
+
+  Toolkit::ItemView  mItemView;              ///< ItemView to hold test images.
+
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  SizeNegotiationController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/sparkle/sparkle-effect-example.cpp b/examples/sparkle/sparkle-effect-example.cpp
new file mode 100644 (file)
index 0000000..9cb180a
--- /dev/null
@@ -0,0 +1,558 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+#include <sstream>
+#include <algorithm>
+#include <map>
+
+#include "shared/utility.h"
+#include "sparkle-effect.h"
+
+using namespace Dali;
+using Dali::Toolkit::ImageView;
+
+using namespace SparkleEffect;
+
+namespace // unnamed namespace
+{
+
+//background image for normal status
+const char * const CIRCLE_BACKGROUND_IMAGE( DEMO_IMAGE_DIR "sparkle_normal_background.png" );
+//particle shape image
+const char * const PARTICLE_IMAGE( DEMO_IMAGE_DIR "sparkle_particle.png" );
+
+float EaseOutSquare( float progress )
+{
+  return 1.0f - (1.0f-progress) * (1.0f-progress);
+}
+
+float CustomBounce( float progress )
+{
+  float p = 1.f-progress;
+  p *=p;
+  return 17.68f*p*p*p*progress;
+}
+
+float Mix( const Vector2& range, float a )
+{
+  return range.x * a + range.y*(1.f-a)-0.001f;
+}
+
+const Vector4 BACKGROUND_COLOR( 0.f, 0.f, 0.05f, 1.f );
+
+} // unnamed namespace
+
+// This example shows a sparkle particle effect
+//
+class SparkleEffectExample : public ConnectionTracker
+{
+public:
+
+  /**
+   * Create the SparkleEffectExample
+   * @param[in] application The DALi application instance
+   */
+  SparkleEffectExample( Application& application )
+  : mApplication( application ),
+    mAnimationIndex( 0u ),
+    mShaking( false )
+  {
+    mApplication.InitSignal().Connect( this, &SparkleEffectExample::OnInit );
+  }
+
+private:
+
+  /**
+   * Initialize the SparkleEffectExample
+   * @param[in] application The DALi application instance
+   */
+  void OnInit( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &SparkleEffectExample::OnKeyEvent);
+    stage.SetBackgroundColor( BACKGROUND_COLOR );
+
+    mCircleBackground = ImageView::New( CIRCLE_BACKGROUND_IMAGE );
+    mCircleBackground.SetParentOrigin( ParentOrigin::CENTER );
+    mCircleBackground.SetAnchorPoint( AnchorPoint::CENTER );
+
+    stage.Add( mCircleBackground );
+
+    mEffect = SparkleEffect::New();
+
+    mMeshActor = CreateMeshActor();
+
+    stage.Add( mMeshActor );
+
+    mMeshActor.SetPosition( ACTOR_POSITION );
+    mMeshActor.SetScale( ACTOR_SCALE );
+
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.Attach(mCircleBackground);
+    mTapDetector.DetectedSignal().Connect( this, &SparkleEffectExample::OnTap );
+
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.DetectedSignal().Connect( this, &SparkleEffectExample::OnPan );
+    mPanGestureDetector.Attach( mCircleBackground );
+
+    PlayWanderAnimation( 35.f );
+  }
+
+  /**
+   * Create the mesh representing all the particles
+   */
+  Actor CreateMeshActor()
+  {
+    // shuffling to assign the color in random order
+    unsigned int* shuffleArray = new unsigned int[NUM_PARTICLE];
+    for( unsigned int i = 0; i<NUM_PARTICLE; i++ )
+    {
+      shuffleArray[i] = i;
+    }
+    std::random_shuffle(&shuffleArray[0],&shuffleArray[NUM_PARTICLE]);
+
+    // Create vertices
+
+    std::vector< Vertex > vertices;
+    std::vector< unsigned short > faces;
+
+    for( unsigned int i = 0; i<NUM_PARTICLE; i++ )
+    {
+      float colorIndex = GetColorIndex( shuffleArray[i] );
+      AddParticletoMesh( vertices, faces, PATHS[i], colorIndex );
+    }
+
+    delete [] shuffleArray;
+
+    Property::Map vertexFormat;
+    vertexFormat["aTexCoord"] = Property::VECTOR2;
+    vertexFormat["aParticlePath0"] = Property::VECTOR2;
+    vertexFormat["aParticlePath1"] = Property::VECTOR2;
+    vertexFormat["aParticlePath2"] = Property::VECTOR2;
+    vertexFormat["aParticlePath3"] = Property::VECTOR2;
+    vertexFormat["aParticlePath4"] = Property::VECTOR2;
+    vertexFormat["aParticlePath5"] = Property::VECTOR2;
+
+    PropertyBuffer propertyBuffer = PropertyBuffer::New( vertexFormat );
+    propertyBuffer.SetData( &vertices[0], vertices.size() );
+
+    Geometry geometry = Geometry::New();
+    geometry.AddVertexBuffer( propertyBuffer );
+    geometry.SetIndexBuffer( &faces[0], faces.size() );
+    geometry.SetType( Geometry::TRIANGLES );
+
+    Texture particleTexture = DemoHelper::LoadTexture( PARTICLE_IMAGE );
+    TextureSet textureSet = TextureSet::New();
+    textureSet.SetTexture( 0u, particleTexture );
+
+    Renderer renderer = Renderer::New( geometry, mEffect );
+    renderer.SetTextures( textureSet );
+
+    Actor meshActor = Actor::New();
+    meshActor.SetParentOrigin( ParentOrigin::CENTER );
+    meshActor.SetSize( 1, 1 );
+    meshActor.AddRenderer( renderer );
+
+    return meshActor;
+  }
+
+  /**
+   * Defines a rule to assign particle with a color according to its index
+   */
+  float GetColorIndex( unsigned int particleIndex )
+  {
+    unsigned int thereshold = 0;
+    for( unsigned int i = 0; i<NUM_COLOR; i++ )
+    {
+      thereshold += PARTICLE_COLORS[i].numParticle;
+      if( particleIndex < thereshold)
+      {
+        return i + Mix( PARTICLE_COLORS[i].AlphaRange, static_cast<float>(thereshold-particleIndex)/PARTICLE_COLORS[i].numParticle );
+      }
+    }
+    return NUM_COLOR-1;
+  }
+
+  /**
+   * All a particle to the mesh by giving the moving path and color index
+   *
+   * Two triangles per particle
+   *  0---------3
+   *   |\      |
+   *   |  \    |
+   *   |    \  |
+   *   |      \|
+   *  1---------2
+   *
+   * The information we need to pass in through attribute include:
+   *
+   *   path which contains 12 integer
+   *          ---- passed in 6 Vector2 attributes
+   *
+   *   color index, particle index and textureCoor( (0,0) or (1,0) or (0,1) or (1,1)  )
+   *          ---- package these info into texCood attribute as: (+-colorIndex, +-particleIndex)
+   */
+  void AddParticletoMesh( std::vector< Vertex >& vertices,
+                          std::vector< unsigned short >& faces,
+                          MovingPath& movingPath,
+                          float colorIndex )
+  {
+    unsigned int idx = vertices.size();
+
+    // store the path into position and normal, which would be decoded inside the shader
+    Vector2 particlePath0( movingPath[0],  movingPath[1] );
+    Vector2 particlePath1( movingPath[2],  movingPath[3] );
+    Vector2 particlePath2( movingPath[4],  movingPath[5] );
+    Vector2 particlePath3( movingPath[6],  movingPath[7] );
+    Vector2 particlePath4( movingPath[8],  movingPath[9] );
+    Vector2 particlePath5( movingPath[10], movingPath[11] );
+
+    float particleIdx = static_cast<float>(idx/4 + 1); // count from 1
+    float colorIdx = colorIndex+1.f; // count from 1
+    vertices.push_back( Vertex( Vector2(-colorIdx, -particleIdx), particlePath0, particlePath1, particlePath2, particlePath3, particlePath4, particlePath5 ) );
+    vertices.push_back( Vertex( Vector2(-colorIdx,  particleIdx), particlePath0, particlePath1, particlePath2, particlePath3, particlePath4, particlePath5 ) );
+    vertices.push_back( Vertex( Vector2( colorIdx,  particleIdx), particlePath0, particlePath1, particlePath2, particlePath3, particlePath4, particlePath5 ) );
+    vertices.push_back( Vertex( Vector2( colorIdx, -particleIdx), particlePath0, particlePath1, particlePath2, particlePath3, particlePath4, particlePath5 ) );
+
+    faces.push_back(idx);
+    faces.push_back(idx+1);
+    faces.push_back(idx+2);
+
+    faces.push_back(idx);
+    faces.push_back(idx+2);
+    faces.push_back(idx+3);
+  }
+
+  /*
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * Callback of the TapGesture
+   */
+  void OnTap( Actor actor, const TapGesture& tap )
+  {
+    {
+      PlayTapAnimation(5.f, tap.localPoint);
+    }
+  }
+
+  /**
+   * Callback of the PanGesture
+   */
+  void OnPan( Actor actor, const PanGesture& gesture )
+  {
+    if( gesture.state == Gesture::Finished )
+    {
+      switch(mAnimationIndex)
+      {
+      case 0:
+      {
+        PlayParticleFadeAnimation(0, NUM_PARTICLE, 0.f, 3.f );
+        break;
+      }
+      case 1:
+      {
+        PlayBreakAnimation(2.0f);
+        break;
+      }
+      case 2:
+      {
+        PlayShakeAnimation(0.5f, 2.5f);
+        break;
+      }
+      default:
+      {
+        break;
+      }
+     }
+
+      mAnimationIndex = (mAnimationIndex+1)%3;
+    }
+  }
+
+  /**
+   * Animate the particle position to make them wandering on the screen with 'seemingly' random fade in/out
+   * @param[in] duration The duration for the particle to move a cycle on the path. the bigger this value the slower the floating movement.
+   * @param[in] looping Infinite playing or not
+   */
+  void PlayWanderAnimation( float duration, bool looping = true )
+  {
+    Animation wanderAnimation= Animation::New(duration);
+    wanderAnimation.AnimateTo( Property( mEffect, PERCENTAGE_UNIFORM_NAME ), 1.f );
+    wanderAnimation.SetLooping(looping); // infinite playing
+
+    wanderAnimation.Play();
+  }
+
+  /**
+   * Accelerate the particle moving speed
+   * @param[in] cycle How many extra cycles to move during the animation
+   * @param[in] duration The duration for the animation
+   */
+  void PlayShakeAnimation(  float cycle, float duration )
+  {
+    if( mShaking )
+    {
+      return;
+    }
+    DestroyAnimation( mTapAnimationAux );
+
+    float accelaration = GetFloatUniformValue( ACCELARATION_UNIFORM_NAME );
+    mEffect.SetProperty( mEffect.GetPropertyIndex(ACCELARATION_UNIFORM_NAME), accelaration - int( accelaration) ); // Set the value as its fractional part
+    Animation shakeAnimation = Animation::New(duration);
+    shakeAnimation.AnimateBy( Property( mEffect, ACCELARATION_UNIFORM_NAME ), cycle, AlphaFunction::EASE_OUT );
+    shakeAnimation.FinishedSignal().Connect( this, &SparkleEffectExample::OnShakeAnimationFinished );
+
+    shakeAnimation.Play();
+    mShaking = true;
+  }
+
+  /**
+   * Animate the particles to appear from center and spread all over around
+   * @param[in] duration The duration for the animation
+   */
+  void PlayBreakAnimation( float duration )
+  {
+    if( GetFloatUniformValue(BREAK_UNIFORM_NAME) > 0.f )
+    {
+      return;
+    }
+
+    // Stop the fading / tap animation before the breaking
+    DestroyAnimation( mFadeAnimation);
+    mTapIndices.x = mTapIndices.y;
+    mEffect.SetProperty( mEffect.GetPropertyIndex( TAP_INDICES_UNIFORM_NAME ), mTapIndices );
+    mEffect.SetProperty( mEffect.GetPropertyIndex( ACCELARATION_UNIFORM_NAME ), 0.f );
+
+    // prepare the animation by setting the uniform to the required value
+    mEffect.SetProperty( mEffect.GetPropertyIndex( BREAK_UNIFORM_NAME ), 1.f );
+    mMeshActor.SetScale(0.01f);
+    mEffect.SetProperty( mEffect.GetPropertyIndex( "uScale" ), 0.01f );
+    mMeshActor.SetPosition( 0.f, 0.f, 1.f );
+
+    Animation breakAnimation = Animation::New(duration*1.5f);
+    breakAnimation.AnimateTo( Property(mMeshActor, Actor::Property::SCALE), Vector3(ACTOR_SCALE,ACTOR_SCALE,ACTOR_SCALE), EaseOutSquare);
+    breakAnimation.AnimateTo( Property( mEffect, "uScale" ), ACTOR_SCALE, EaseOutSquare);
+    breakAnimation.AnimateTo( Property(mMeshActor, Actor::Property::POSITION), ACTOR_POSITION, EaseOutSquare);
+    breakAnimation.FinishedSignal().Connect( this, &SparkleEffectExample::OnBreakAnimationFinished );
+
+    float timeUnit = duration/ (NUM_PARTICLE+1) /(NUM_PARTICLE+1) ;
+    std::ostringstream oss;
+    for(unsigned int i = 0; i<NUM_PARTICLE; i++)
+    {
+      oss.str("");
+      oss<< OPACITY_UNIFORM_NAME<< i << "]";
+      mEffect.SetProperty( mEffect.GetPropertyIndex( oss.str() ), 0.01f);
+      float timeSlice = timeUnit*i*i;
+      breakAnimation.AnimateTo( Property( mEffect, oss.str() ), 1.f, AlphaFunction::EASE_IN_OUT_SINE, TimePeriod( timeSlice*0.5f, timeSlice ) );
+    }
+
+    breakAnimation.Play();
+  }
+
+  /**
+   * Animate the particle opacity
+   * Particles with index between startIndex ~ startIndex+numParticle-1 fade to the target opacity one after another
+   * @param[in] startIndex The index of the first particle
+   * @param[in] numParticle The number of particle to change opacity
+   * @param[in] targetValue The final opacity
+   * @param[in] duration The duration for the animation
+   */
+  void PlayParticleFadeAnimation( unsigned int startIndex, unsigned int numParticle, float targetValue, float duration )
+  {
+    if( GetFloatUniformValue(BREAK_UNIFORM_NAME) > 0.f )
+    {
+      return;
+    }
+
+    // start the opacity animation one particle after another gradually
+    float timeSlice = duration / (numParticle+1);
+    float fadeDuration = timeSlice>0.5f ? timeSlice : 0.5f;
+
+    Animation fadeAnimation= Animation::New(duration+fadeDuration*2.f);
+    std::ostringstream oss;
+    for(unsigned int i = startIndex; i<numParticle; i++)
+    {
+      if( i>=NUM_PARTICLE ) break; // out of bound
+
+      oss.str("");
+      oss<< OPACITY_UNIFORM_NAME<< i << "]";
+      fadeAnimation.AnimateTo(Property( mEffect, oss.str()), targetValue, TimePeriod( timeSlice*i, fadeDuration*2.f ));
+    }
+
+    fadeAnimation.Play();
+    mFadeAnimation = fadeAnimation;
+    mFadeAnimation.FinishedSignal().Connect( this, &SparkleEffectExample::OnFadeAnimationFinished );
+  }
+
+  /**
+   * Push the particles to the edge all around the circle then bounce back
+   * @param[in] duration The duration for the animation
+   * @param[in] tapPoint The position of the tap point
+   */
+  void PlayTapAnimation(float duration, const Vector2& tapPoint )
+  {
+    if( mTapIndices.y > mTapIndices.x && mTapAnimation.GetCurrentProgress() < 0.2f)
+    {
+      return;
+    }
+
+    Animation animation= Animation::New(duration);
+    int idx = int(mTapIndices.y)%MAXIMUM_ANIMATION_COUNT;
+    mTapIndices.y += 1.f;
+
+    std::ostringstream oss;
+    oss<< TAP_OFFSET_UNIFORM_NAME<< idx << "]";
+    mEffect.SetProperty( mEffect.GetPropertyIndex( oss.str() ), 0.f);
+    animation.AnimateTo( Property( mEffect, oss.str() ), 0.75f, CustomBounce);
+
+    oss.str("");
+    oss<< TAP_POINT_UNIFORM_NAME<< idx << "]";
+    mEffect.SetProperty( mEffect.GetPropertyIndex( oss.str() ), tapPoint/ACTOR_SCALE);
+
+    mEffect.SetProperty( mEffect.GetPropertyIndex( TAP_INDICES_UNIFORM_NAME ), mTapIndices);
+
+    if(!mShaking)
+    {
+      mTapAnimationAux = Animation::New(duration*0.2f);
+      mTapAnimationAux.AnimateBy( Property( mEffect, ACCELARATION_UNIFORM_NAME ), 0.15f, AlphaFunction::EASE_IN_OUT );
+      mTapAnimationAux.Play();
+    }
+    animation.Play();
+    mTapAnimationIndexPair[animation] = static_cast<int>(mTapIndices.y -1.f);
+    animation.FinishedSignal().Connect( this, &SparkleEffectExample::OnTapAnimationFinished );
+    mTapAnimation = animation;
+  }
+
+  /**
+   * Callback of the animation finished signal
+   */
+  void OnShakeAnimationFinished( Animation& animation)
+  {
+    mShaking = false;
+  }
+
+  /**
+   * Callback of the animation finished signal
+   */
+  void OnFadeAnimationFinished( Animation& animation)
+  {
+    mFadeAnimation.Clear();
+    mFadeAnimation.Reset();
+  }
+
+  /**
+   * Callback of the animation finished signal
+   */
+  void OnBreakAnimationFinished( Animation& animation)
+  {
+    mEffect.SetProperty( mEffect.GetPropertyIndex( BREAK_UNIFORM_NAME ), 0.f );
+  }
+
+  /**
+   * Callback of the animation finished signal
+   */
+  void OnTapAnimationFinished( Animation& animation )
+  {
+    if( mTapAnimationIndexPair[animation] ==  static_cast<int>(mTapIndices.x) )
+    {
+      mTapIndices.x += 1.f;
+      if( mTapIndices.x >= mTapIndices.y )
+      {
+        mTapIndices = Vector2::ZERO;
+      }
+      mEffect.SetProperty( mEffect.GetPropertyIndex( TAP_INDICES_UNIFORM_NAME ), mTapIndices);
+    }
+
+    mTapAnimationIndexPair.erase( animation );
+    if( mTapAnimationIndexPair.size() < 1 && mTapIndices != Vector2::ZERO)
+    {
+      mTapIndices = Vector2::ZERO;
+      mEffect.SetProperty( mEffect.GetPropertyIndex( TAP_INDICES_UNIFORM_NAME ), mTapIndices);
+    }
+
+    animation.Clear();
+    animation.Reset();
+  }
+
+  /**
+   * Helper retrieve a uniform value from the Sparkle effect shader
+   * @param[in] uniformName The uniform
+   * @return The float value
+   */
+  float GetFloatUniformValue( const std::string& uniformName )
+  {
+    float value;
+    mEffect.GetProperty(mEffect.GetPropertyIndex(uniformName)).Get(value);
+    return value;
+  }
+
+  /**
+   * Terminate the given animation
+   */
+  void DestroyAnimation( Animation& animation )
+  {
+    if( animation )
+    {
+      animation.Clear();
+      animation.Reset();
+    }
+  }
+
+private:
+
+  Application&       mApplication;
+  Shader             mEffect;
+  ImageView          mCircleBackground;
+  Actor              mMeshActor;
+
+  PanGestureDetector mPanGestureDetector;
+  TapGestureDetector mTapDetector;
+
+  Animation          mFadeAnimation;
+  Animation          mTapAnimation;
+  Animation          mTapAnimationAux;
+
+  Vector2            mTapIndices;
+  unsigned int       mAnimationIndex;
+  bool               mShaking;
+
+  std::map< Animation, int > mTapAnimationIndexPair;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  SparkleEffectExample theApp( application );
+  application.MainLoop();
+  return 0;
+}
+
diff --git a/examples/sparkle/sparkle-effect.h b/examples/sparkle/sparkle-effect.h
new file mode 100644 (file)
index 0000000..f37e1e6
--- /dev/null
@@ -0,0 +1,393 @@
+#ifndef DALI_SPARKLE_EFFECT_H
+#define DALI_SPARKLE_EFFECT_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using Dali::Toolkit::ImageView;
+
+/************************************************************/
+/* Custom sparkle effect shader******************************/
+/************************************************************/
+
+namespace SparkleEffect
+{
+  // uniform which controls the position of particle on the path
+  const std::string PERCENTAGE_UNIFORM_NAME( "uPercentage" );
+  // uniform array of particle color, set their value as the PARTICLE_COLORS given below
+  const std::string PARTICLE_COLOR_UNIFORM_NAME("uParticleColors[");
+  // uniform array of particle opacity
+  const std::string OPACITY_UNIFORM_NAME("uOpacity[");
+  // uniform which offsets the path control point, with this values >=0, the paths are squeezed towards the GatheringPoint
+  const std::string ACCELARATION_UNIFORM_NAME("uAcceleration");
+  // uniform which indicates the ongoing tap animations
+  const std::string TAP_INDICES_UNIFORM_NAME("uTapIndices");
+  // uniform which controls how much the offset of the midpoints relative to the start/end points of the cubic bezier curve when the path is squeezed for tap animation
+  const std::string TAP_OFFSET_UNIFORM_NAME("uTapOffset[");
+  // uniform which gives the position of the tapping, in this way the particles will be pushed away from this point
+  const std::string TAP_POINT_UNIFORM_NAME("uTapPoint[");
+  // uniform which trigger the break animation, set to 1.0 when break animation is playing, otherwise set to 0.0
+  const std::string BREAK_UNIFORM_NAME("uBreak");
+
+  /****************particle colors******************/
+
+  struct ParticleColor
+  {
+    Vector3 RGB;
+    Vector2 AlphaRange;
+    unsigned int numParticle;
+  };
+
+  ParticleColor PARTICLE_COLORS[]=
+  {
+    { Vector3( 0.f,   240.f, 255.f )/255.f, Vector2( 0.2f, 1.f ),  22 }, // 00f0ff, opacity 20%~100%
+    { Vector3( 89.f,  151.f, 239.f )/255.f, Vector2( 0.2f, 0.5f ), 12 }, // 5997ef, opacity 20%~50%
+    { Vector3( 181.f, 181.f, 207.f )/255.f, Vector2( 0.5f, 1.f ),  22 }, // b5b5cf, opacity 50%~100%
+    { Vector3( 147.f, 147.f, 170.f )/255.f, Vector2( 0.5f, 0.5f ), 22 }, // 9393aa, opacity 50%~50%
+    { Vector3( 145.f, 145.f, 201.f )/255.f, Vector2( 1.f, 1.f ),   12 }, // 91bdc9, opacity 100%~100%
+    { Vector3( 145.f, 145.f, 201.f )/255.f, Vector2( 0.2f, 0.2f ), 21 }  // 91bdc9, opacity 20%~20%
+  };
+  const unsigned int NUM_COLOR( sizeof( PARTICLE_COLORS ) / sizeof( PARTICLE_COLORS[0] ) );
+
+  /***************particle moving paths********************/
+
+  typedef int MovingPath[12];
+
+  // these paths are defined inside the circle which has the center at (250, 250) and the radius as 250
+  MovingPath PATHS[]=
+  { // each path is composed of two cubic b-curves: (p0, p1, p2, p3) & (p3, p4, p5, p0)
+    // p0        p1        p2       p3        p4        p5
+    { 280,273,  386,41,  489,141,  491,199,  494,256,  230,394  },
+    { 129,226,  357,120, 150,491,  291,406,  433,320,  47,283   },
+    { 96,264,   356,133, 446,196,  370,297,  294,399,  -169,384 },
+    { 345,110,  359,186,  14,393,  4,247,  -6,101,  321,-28 },
+    { 166,161,  128,353,  566,200,  487,304,  413,403,  203,-32 },
+    { 193,286,  106,331,  206,569,  334,477,  462,385,  279,240 },
+    { 336,247,  293,232,  301,465,  346,479,  390,493,  374,261 },
+    { 250,72,  314,72,  332,495,  250,497,  168,499,  161,72 },
+    { 48,387,  32,241,  452,558,  433,358,  411,121,  62,523 },
+    { 300,32,  159,27,  442,568,  186,492,  -70,415,  551,41 },
+    { 479,150,  503,203,  216,403,  163,298,  110,193,  448,78 },
+    { 346,75,  311,97,  336,196,  389,160,  442,123,  383,51 },
+    { 90,61,  54,96,  218,373,  294,300,  370,227,  141,11 },
+    { 126,225,  240,280,  378,29,  221,16,  64,4,  11,170 },
+    { 308,101,  243,22,  -10,271,  22,352,  49,422,  396,208 },
+    { 193,188,  174,302,  502,389,  500,250,  498,111,  212,72 },
+    { 227,3,  16,35,  577,309,  428,423,  279,537,  438,-28 },
+    { 410,58,  387,18,  22,179,  154,277,  286,374,  459,142 },
+    { 178,272,  109,299,  144,429,  218,396,  293,362,  221,254 },
+    { 247,46,  98,5,  -91,357,  160,431,  412,505,  397,88 },
+    { 41,112,  22,144,  123,273,  158,187,  192,101,  75,56 },
+    { 8,300,  23,340,  267,294,  238,218,  209,142,  -20,226 },
+    { 112,256,  24,270,  -1,470,  154,433,  308,396,  201,242 },
+    { 212,277,  267,346,  509,202,  452,103,  398,8,  150,199 },
+    { 154,205,  146,287,  496,282,  492,194,  488,107,  160,140 },
+    { 281,350,  365,318,  415,476,  332,482,  248,489,  204,379 },
+    { 327,23,  346,81,  154,319,  123,207,  92,95,  313,-21 },
+    { 323,233,  283,307,  454,420,  478,354,  501,288,  374,136 },
+    { 318,186,  311,252,  488,248,  481,168,  474,87,  328,76 },
+    { 7,192,  -10,270,  249,398,  269,307,  290,216,  25,111 },
+    { 148,22,  98,22,  25,458,  125,458,  225,458,  198,22 },
+    { 349,32,  307,39,  492,416,  399,446,  305,477,  460,16 },
+    { 147,474,  222,554,  392,154,  486,240,  581,325,  73,394 },
+    { 57,186,  13,200,  51,398,  114,374,  178,349,  97,174 },
+    { 257,192,  198,188,  162,345,  240,349,  319,354,  316,197 },
+    { 242,4,  283,21,  30,172,  81,215,  133,257,  209,-10 },
+    { 149,408,  165,442,  472,340,  444,275,  416,210,  120,348 },
+    { 106,271,  136,359,  483,370,  422,186,  360,2,  76,186 },
+    { 120,146,  29,224,  469,262,  346,390,  222,518,  393,-87 },
+    { 318,265,  415,280,  398,537,  247,491,  96,446,  222,249 },
+    { 171,275,  207,246,  274,469,  237,497,  199,525,  139,300 },
+    { 196,84,  135,105,  256,510,  334,486,  412,462,  280,55 },
+    { 485,314,  452,170,  158,606,  111,411,  55,179,  515,446 },
+    { 134,54,  266,4,  175,607,  392,451,  609,296,  -100,144 },
+    { 3,229,  -1,287,  334,383,  350,267,  366,150,  10,151 },
+    { 105,115,  146,125,  154,227,  92,209,  30,192,  62,105 },
+    { 343,20,  388,42,  323,357,  228,313,  132,269,  278,-10 },
+    { 362,186,  271,274,  60,82,  204,19,  349,-44,  453,97 },
+    { 145,128,  181,32,  501,185,  498,272,  495,347,  97,257 },
+    { 286,172,  342,274,  59,463,  16,331,  -27,198,  231,69 },
+    { 194,7,  404,-32,  -38,410,  140,469,  317,528,  -16,45 },
+    { 39,120,  48,74,  445,109,  352,244,  259,379,  20,215 },
+    { 328,247,  402,250,  411,384,  330,377,  248,370,  281,244 },
+    { 189,56,  317,-31,  610,240,  396,392,  183,543,  61,144 },
+    { 402,53,  430,77,  376,231,  315,161,  255,91,  351,10 },
+    { 496,218,  494,260,  249,296,  251,214,  254,133,  498,139 },
+    { 381,210,  469,195,  557,376,  399,391,  241,407,  292,226 },
+    { 297,263,  267,346,  -8,289,  14,176,  35,69,  331,168 },
+    { 329,187,  363,263,  30,371,  5,287,  -19,203,  302,128 },
+    { 257,354,  168,351,  171,516,  252,496,  333,475,  340,356 },
+    { 106,60,  107,121,  366,284,  359,168,  352,52,  105,14 },
+    { 178,257,  240,314,  115,476,  71,421,  28,367,  98,182 },
+    { 163,213,  191,273,  22,327,  3,248,  -17,170,  118,113 },
+    { 459,117,  500,185,  297,390,  248,311,  199,232,  416,46 },
+    { 270,3,  317,-14,  528,375,  434,407,  339,440,  223,19 },
+    { 88,76,  130,68,  78,485,  176,483,  274,482,  -22,96 },
+    { 422,428,  378,528,  88,205,  26,317,  -36,428,  467,328 },
+    { 414,127,  460,125,  489,325,  421,322,  353,320,  372,128 },
+    { 227,197,  281,174,  367,311,  294,340,  221,370,  173,220 },
+    { 180,14,  147,44,  436,104,  401,161,  366,219,  207,-10 },
+    { 400,367,  395,404,  71,406,  77,336,  82,265,  407,300 },
+    { 396,222,  396,316,  71,439,  70,245,  68,51,  396,132 },
+    { 342,109,  454,153,  49,332,  208,413,  367,494,  8,-23 },
+    { 147,167,  222,137,  266,169,  231,199,  197,229,  129,178 },
+    { 227,272,  310,243,  277,313,  322,266,  367,219,  207,313 },
+    { 279,192,  339,233,  396,211,  367,182,  338,152,  228,194 },
+    { 236,20,  283,75,  346,26,  338,71,  330,116,  207,17 },
+    { 129,83,  164,23,  158,14,  179,11,  200,8,  91,78 },
+    { 86,231,  129,293,  164,421,  104,348,  44,275,  66,200 },
+    { 193,328,  197,278,  240,348,  276,305,  311,263,  199,354 },
+    { 231,364,  241,209,  309,104,  326,236,  342,367,  225,424 },
+    { 414,230,  398,328,  446,445,  467,363,  489,281,  373,254 },
+    { 289,122,  332,123,  348,161,  322,158,  297,156,  275,125 },
+    { 142,235,  199,308,  402,229,  283,218,  164,206,  130,206 },
+    { 174,396,  210,387,  328,501,  246,455,  165,409,  138,394 },
+    { 288,388,  366,357,  372,458,  393,400,  414,343,  249,431 },
+    { 351,278,  409,369,  497,316,  437,288,  376,260,  351,243 },
+    { 87,134,  181,77,  311,121,  206,140,  101,160,  61,159 },
+    { 95,195,  126,208,  133,258,  110,236,  88,215,  95,195 },
+    { 140,293,  158,330,  169,275,  184,299,  198,323,  126,313 },
+    { 336,319,  383,357,  388,278,  393,333,  397,388,  311,325 },
+    { 338,107,  434,209,  -37,469,  151,287,  338,104,  285,50 },
+    { 403,134,  446,182,  378,318,  386,233,  393,149,  360,98 },
+    { 366,82,  413,93,  416,158,  390,118,  364,78,  336,75 },
+    { 448,188,  448,230,  465,269,  470,225,  474,181,  448,177 },
+    { 121,398,  142,418,  126,475,  111,436,  96,396,  100,382 },
+    { 40,296,  90,352,  170,310,  143,350,  116,391,  7,300 },
+    { 25,203,  45,241,  70,204,  45,248,  19,293,  4,204 },
+    { 243,222,  225,275,  345,256,  296,237,  247,218,  249,199 },
+    { 159,149,  282,133,  284,199,  226,191,  169,184,  147,160 },
+    { 149,257,  290,322,  151,374,  166,338,  182,302,  116,263 },
+    { 255,285,  354,327,  234,287,  279,327,  323,367,  193,290 },
+    { 188,220,  353,190,  290,354,  348,293,  407,231,  152,248 },
+    { 305,122,  382,174,  402,229,  366,198,  329,167,  297,127 },
+    { 378,260,  406,267,  390,330,  384,293,  377,257,  366,263 },
+    { 178,396,  357,365,  273,461,  248,431,  223,401,  157,412 },
+    { 180,89,  258,88,  302,94,  255,115,  207,136,  166,96 },
+    { 81,197,  139,232,  39,257,  94,259,  150,261,  58,200 },
+    { 314,89,  378,40,  383,38,  389,42,  395,45,  267,90 },
+    { 371,141,  482,233,  508,244,  498,272,  488,299,  307,157 },
+    { 339,348,  361,465,  382,477,  406,442,  430,406,  269,369 }
+  };
+  const unsigned int NUM_PARTICLE( sizeof( PATHS ) / sizeof( PATHS[0] ) );
+
+  const float PARTICLE_SIZE = 13.f;
+
+  const float ACTOR_SCALE = 0.704f; // resize 500*500 to 352*352, a bit smaller than 360*360
+  const Vector3 ACTOR_POSITION( -176.f, -176.f, 1.f);
+
+  const int MAXIMUM_ANIMATION_COUNT = 30;
+
+  // Geometry format used by the SparkeEffect
+  struct Vertex
+  {
+    Vertex( const Vector2& texCoord,
+            const Vector2& aParticlePath0,
+            const Vector2& aParticlePath1,
+            const Vector2& aParticlePath2,
+            const Vector2& aParticlePath3,
+            const Vector2& aParticlePath4,
+            const Vector2& aParticlePath5 )
+    : aTexCoord( texCoord ),
+      aParticlePath0( aParticlePath0 ),
+      aParticlePath1( aParticlePath1 ),
+      aParticlePath2( aParticlePath2 ),
+      aParticlePath3( aParticlePath3 ),
+      aParticlePath4( aParticlePath4 ),
+      aParticlePath5( aParticlePath5 )
+    {
+    }
+
+    Vector2 aTexCoord;
+    Vector2 aParticlePath0;
+    Vector2 aParticlePath1;
+    Vector2 aParticlePath2;
+    Vector2 aParticlePath3;
+    Vector2 aParticlePath4;
+    Vector2 aParticlePath5;
+  };
+
+  /**
+   * Create a SparkleEffect object.
+   * @return A handle to a newly allocated SparkleEffect
+   */
+  Shader New()
+  {
+    std::string vertexShader = DALI_COMPOSE_SHADER(
+      precision highp float;\n
+      \n
+      attribute vec2  aTexCoord;\n
+      uniform   mat4  uMvpMatrix;\n
+      varying   vec2  vTexCoord;\n
+      \n
+      attribute vec2  aParticlePath0;\n
+      attribute vec2  aParticlePath1;\n
+      attribute vec2  aParticlePath2;\n
+      attribute vec2  aParticlePath3;\n
+      attribute vec2  aParticlePath4;\n
+      attribute vec2  aParticlePath5;\n
+      \n
+      uniform float uPercentage;\n
+      uniform float uPercentageMarked;\n
+      uniform vec3  uParticleColors[NUM_COLOR];\n
+      uniform float uOpacity[NUM_PARTICLE];\n
+      uniform vec2  uTapIndices;
+      uniform float uTapOffset[MAXIMUM_ANIMATION_COUNT];\n
+      uniform vec2  uTapPoint[MAXIMUM_ANIMATION_COUNT];\n
+      uniform float uAcceleration;\n
+      uniform float uRadius;\n
+      uniform float uScale;\n
+      uniform float uBreak;\n
+      \n
+      varying lowp vec4 vColor;\n
+      \n
+      void main()\n
+      {\n
+        // we store the particle index inside texCoord attribute
+        float idx = abs(aTexCoord.y)-1.0;\n
+        \n
+        // early out if the particle is invisible
+        if(uOpacity[int(idx)]<1e-5)\n
+        {\n
+          gl_Position = vec4(0.0);\n
+          vColor = vec4(0.0);\n
+          return;\n
+        }\n
+        \n
+        // As the movement along the b-curve has nonuniform speed with a uniform increasing parameter 'uPercentage'
+        // we give different particles the different 'percentage' to make them looks more random
+        float increment = idx / float(NUM_PARTICLE)*5.0;
+        float percentage = mod(uPercentage +uAcceleration+increment, 1.0);
+        \n
+        vec2 p0; vec2 p1; vec2 p2; vec2 p3;
+        // calculate the particle position by using the cubic b-curve equation
+        if(percentage<0.5)\n // particle on the first b-curve
+        {\n
+          p0 = aParticlePath0;\n
+          p1 = aParticlePath1;\n
+          p2 = aParticlePath2;\n
+          p3 = aParticlePath3;\n
+        }\n
+        else\n
+        {\n
+          p0 = aParticlePath3;\n
+          p1 = aParticlePath4;\n
+          p2 = aParticlePath5;\n
+          p3 = aParticlePath0;\n
+        }\n
+        float t = mod( percentage*2.0, 1.0);\n
+        vec2 position = (1.0-t)*(1.0-t)*(1.0-t)*p0 + 3.0*(1.0-t)*(1.0-t)*t*p1+3.0*(1.0-t)*t*t*p2 + t*t*t*p3;\n
+        \n
+        vec2 referencePoint = mix(p0,p3,0.5);\n
+        float maxAnimationCount = float(MAXIMUM_ANIMATION_COUNT);\n
+        \n
+        for( float i=uTapIndices.x; i<uTapIndices.y; i+=1.0 )\n
+        {
+          int id = int( mod(i+0.5,maxAnimationCount ) );\n
+          vec2 edgePoint = normalize(referencePoint-uTapPoint[id])*uRadius+vec2(uRadius);\n
+          position = mix( position, edgePoint, uTapOffset[id] ) ;\n
+        }\n
+        \n
+        position = mix( position, vec2( 250.0,250.0 ),uBreak*(1.0-uOpacity[int(idx)]) ) ;
+        \n
+        // vertex position on the mesh: (sign(aTexCoord.x), sign(aTexCoord.y))*PARTICLE_HALF_SIZE
+        gl_Position = uMvpMatrix * vec4( position.x+sign(aTexCoord.x)*PARTICLE_HALF_SIZE/uScale,
+                                         position.y+sign(aTexCoord.y)*PARTICLE_HALF_SIZE/uScale,
+                                         0.0, 1.0 );\n
+        \n
+        // we store the color index inside texCoord attribute
+        float colorIndex = abs(aTexCoord.x);
+        vColor.rgb = uParticleColors[int(colorIndex)-1];\n
+        vColor.a = fract(colorIndex) * uOpacity[int(idx)];\n
+        \n
+        // produce a 'seemingly' random fade in/out
+        percentage = mod(uPercentage+increment+0.15, 1.0);\n
+        float ramdomOpacity = (min(percentage, 0.25)-0.15+0.9-max(percentage,0.9))*10.0;\n
+        vColor.a *=ramdomOpacity;\n
+        \n
+        vTexCoord = clamp(aTexCoord, 0.0, 1.0);\n
+      }\n
+    );
+
+    std::string fragmentShader = DALI_COMPOSE_SHADER(
+        precision highp float;\n
+        uniform sampler2D sTexture;\n
+        varying vec2      vTexCoord;\n
+        \n
+        varying lowp vec4 vColor;\n
+        \n
+        void main()\n
+        {\n
+          gl_FragColor = vColor;\n
+          gl_FragColor.a *= texture2D(sTexture, vTexCoord).a;\n
+        }\n
+    );
+
+    std::ostringstream vertexShaderStringStream;
+    vertexShaderStringStream<< "#define NUM_COLOR "<< NUM_COLOR << "\n"
+                            << "#define NUM_PARTICLE "<< NUM_PARTICLE << "\n"
+                            << "#define PARTICLE_HALF_SIZE "<< PARTICLE_SIZE*ACTOR_SCALE/2.f << "\n"
+                            << "#define MAXIMUM_ANIMATION_COUNT "<<MAXIMUM_ANIMATION_COUNT<<"\n"
+                            << vertexShader;
+
+    Shader handle = Shader::New( vertexShaderStringStream.str(), fragmentShader );
+
+    // set the particle colors
+    std::ostringstream oss;
+    for( unsigned int i = 0; i < NUM_COLOR; i++ )
+    {
+      oss.str("");
+      oss<< PARTICLE_COLOR_UNIFORM_NAME<< i << "]";
+      handle.RegisterProperty(oss.str(), PARTICLE_COLORS[i].RGB);
+    }
+    handle.RegisterProperty( "uRadius", 250.f );
+    handle.RegisterProperty( "uScale", ACTOR_SCALE );
+
+    // set the initial uniform values
+
+    for( unsigned int i = 0; i < NUM_PARTICLE; i++ )
+    {
+      oss.str("");
+      oss<< OPACITY_UNIFORM_NAME << i << "]";
+      handle.RegisterProperty(oss.str(), 1.f);
+    }
+    handle.RegisterProperty( PERCENTAGE_UNIFORM_NAME, 0.f );
+    handle.RegisterProperty( ACCELARATION_UNIFORM_NAME, 0.f );
+    handle.RegisterProperty( BREAK_UNIFORM_NAME, 0.f);
+    handle.RegisterProperty( TAP_INDICES_UNIFORM_NAME, Vector2::ZERO);
+
+    for( int i = 0; i < MAXIMUM_ANIMATION_COUNT; i++ )
+    {
+      oss.str("");
+      oss<< TAP_OFFSET_UNIFORM_NAME << i << "]";
+      handle.RegisterProperty(oss.str(), 0.f);
+
+      oss.str("");
+      oss<< TAP_POINT_UNIFORM_NAME << i << "]";
+      handle.RegisterProperty(oss.str(), Vector2( 250.0f,250.0f ));
+    }
+
+    return handle;
+  }
+
+}; // namespace SparkleEffect
+
+#endif // DALI_SPARKLE_EFFECT_H
diff --git a/examples/styling/image-channel-control-impl.cpp b/examples/styling/image-channel-control-impl.cpp
new file mode 100644 (file)
index 0000000..c7dde4f
--- /dev/null
@@ -0,0 +1,332 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "image-channel-control-impl.h"
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+
+#include <cstdio>
+
+
+using namespace Dali; // Needed for macros
+
+namespace Demo
+{
+namespace Internal
+{
+
+namespace
+{
+
+const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER(
+  varying mediump vec2 vTexCoord;\n
+  uniform sampler2D sTexture;\n
+  uniform mediump vec4 uColor;\n
+  uniform mediump vec3 mixColor;\n
+  uniform mediump vec3 uChannels;\n
+  \n
+  void main()\n
+  {\n
+      gl_FragColor = texture2D( sTexture, vTexCoord ) * vec4(mixColor,1.0) * uColor * vec4(uChannels, 1.0) ;\n
+  }\n
+);
+
+Dali::BaseHandle Create()
+{
+  return Demo::ImageChannelControl::New();
+}
+
+DALI_TYPE_REGISTRATION_BEGIN( ImageChannelControl, Dali::Toolkit::Control, Create );
+
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "url", STRING, RESOURCE_URL );
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "redChannel", FLOAT, RED_CHANNEL );
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "greenChannel", FLOAT, GREEN_CHANNEL );
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "blueChannel", FLOAT, BLUE_CHANNEL );
+
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "visibility", BOOLEAN, VISIBILITY );
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "enableVisibilityTransition", ARRAY, ENABLE_VISIBILITY_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "disableVisibilityTransition", ARRAY, DISABLE_VISIBILITY_TRANSITION );
+
+DALI_PROPERTY_REGISTRATION( Demo, ImageChannelControl, "imageVisual", MAP, IMAGE_VISUAL );
+DALI_TYPE_REGISTRATION_END();
+
+} // anonymous namespace
+
+
+Internal::ImageChannelControl::ImageChannelControl()
+: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ),
+  mChannels( 1.0f, 1.0f, 1.0f ),
+  mChannelIndex( Property::INVALID_INDEX ),
+  mVisibility(true),
+  mTargetVisibility(true)
+{
+}
+
+Internal::ImageChannelControl::~ImageChannelControl()
+{
+}
+
+Demo::ImageChannelControl Internal::ImageChannelControl::New()
+{
+  IntrusivePtr<Internal::ImageChannelControl> impl = new Internal::ImageChannelControl();
+  Demo::ImageChannelControl handle = Demo::ImageChannelControl( *impl );
+  impl->Initialize();
+  return handle;
+}
+
+void ImageChannelControl::SetImage( const std::string& url )
+{
+  mUrl = url;
+
+  Actor self = Self();
+
+  Property::Map properties;
+  Property::Map shader;
+  shader[Dali::Toolkit::Visual::Shader::Property::FRAGMENT_SHADER] = FRAGMENT_SHADER;
+  properties[Dali::Toolkit::Visual::Property::TYPE] = Dali::Toolkit::Visual::IMAGE;
+  properties[Dali::Toolkit::Visual::Property::SHADER]=shader;
+  properties[Dali::Toolkit::ImageVisual::Property::URL] = url;
+
+  mVisual = Toolkit::VisualFactory::Get().CreateVisual( properties );
+  Toolkit::DevelControl::RegisterVisual( *this, Demo::ImageChannelControl::Property::IMAGE_VISUAL, mVisual );
+  mVisual.SetName("imageVisual");
+
+  RelayoutRequest();
+}
+
+void ImageChannelControl::SetVisibility( bool visibility )
+{
+  printf("ImageChannelControl %s: SetVisibility( %s )\n", Self().GetName().c_str(), visibility?"T":"F" );
+
+  if( mAnimation )
+  {
+    mAnimation.Stop();
+    mAnimation.FinishedSignal().Disconnect( this, &ImageChannelControl::OnStateChangeAnimationFinished );
+    OnStateChangeAnimationFinished(mAnimation);
+  }
+
+  if( mVisibility != visibility )
+  {
+    if( mVisibility )
+    {
+      if( mDisableVisibilityTransition.Count() > 0 )
+      {
+        mAnimation = Toolkit::DevelControl::CreateTransition( *this, mDisableVisibilityTransition );
+      }
+    }
+    else
+    {
+      if( mEnableVisibilityTransition.Count() > 0 )
+      {
+        mAnimation = Toolkit::DevelControl::CreateTransition( *this, mEnableVisibilityTransition );
+      }
+    }
+  }
+
+  if( mAnimation )
+  {
+    mAnimation.FinishedSignal().Connect( this, &ImageChannelControl::OnStateChangeAnimationFinished );
+    mAnimation.Play();
+    mTargetVisibility = visibility;
+  }
+  else
+  {
+    mVisibility = visibility;
+  }
+}
+
+void ImageChannelControl::OnStateChangeAnimationFinished( Animation& src )
+{
+  mVisibility = mTargetVisibility;
+}
+
+void ImageChannelControl::OnInitialize()
+{
+  Actor self = Self();
+  mChannelIndex = self.RegisterProperty( "uChannels", Vector3(1.0f, 1.0f, 1.0f) );
+}
+
+void ImageChannelControl::OnStageConnection( int depth )
+{
+  Control::OnStageConnection( depth );
+}
+
+void ImageChannelControl::OnStageDisconnection()
+{
+  Control::OnStageDisconnection();
+}
+
+void ImageChannelControl::OnSizeSet( const Vector3& targetSize )
+{
+  Control::OnSizeSet( targetSize );
+
+  if( mVisual )
+  {
+    Vector2 size( targetSize );
+    Property::Map transformMap;
+    transformMap
+      .Add( Toolkit::Visual::Transform::Property::OFFSET, Vector2(0.0f, 0.0f) )
+      .Add( Toolkit::Visual::Transform::Property::SIZE, Vector2(1.0f, 1.0f) )
+      .Add( Toolkit::Visual::Transform::Property::ORIGIN, Toolkit::Align::CENTER )
+      .Add( Toolkit::Visual::Transform::Property::ANCHOR_POINT, Toolkit::Align::CENTER )
+      .Add( Toolkit::Visual::Transform::Property::OFFSET_POLICY, Vector2( Toolkit::Visual::Transform::Policy::RELATIVE, Toolkit::Visual::Transform::Policy::RELATIVE ) )
+      .Add( Toolkit::Visual::Transform::Property::SIZE_POLICY, Vector2( Toolkit::Visual::Transform::Policy::RELATIVE, Toolkit::Visual::Transform::Policy::RELATIVE ) );
+
+    mVisual.SetTransformAndSize( transformMap, size );
+  }
+}
+
+Vector3 ImageChannelControl::GetNaturalSize()
+{
+  if( mVisual )
+  {
+    Vector2 naturalSize;
+    mVisual.GetNaturalSize(naturalSize);
+    return Vector3(naturalSize);
+  }
+  return Vector3::ZERO;
+}
+
+void ImageChannelControl::OnStyleChange( Toolkit::StyleManager styleManager, StyleChange::Type change )
+{
+  // Chain up.
+  Control::OnStyleChange( styleManager, change );
+}
+
+
+///////////////////////////////////////////////////////////
+//
+// Properties
+//
+
+void ImageChannelControl::SetProperty( BaseObject* object, Property::Index index, const Property::Value& value )
+{
+  Demo::ImageChannelControl imageChannelControl = Demo::ImageChannelControl::DownCast( Dali::BaseHandle( object ) );
+
+  if( imageChannelControl )
+  {
+    ImageChannelControl& impl = GetImpl( imageChannelControl );
+    Actor self = impl.Self();
+    switch ( index )
+    {
+      case Demo::ImageChannelControl::Property::RESOURCE_URL:
+      {
+        impl.SetImage( value.Get<std::string>() );
+        break;
+      }
+      case Demo::ImageChannelControl::Property::IMAGE_VISUAL:
+      {
+        Property::Map* map = value.GetMap();
+        if( map )
+        {
+          impl.mVisual = Toolkit::VisualFactory::Get().CreateVisual( *map );
+          Toolkit::DevelControl::RegisterVisual( impl, Demo::ImageChannelControl::Property::IMAGE_VISUAL, impl.mVisual );
+        }
+        break;
+      }
+      case Demo::ImageChannelControl::Property::VISIBILITY:
+      {
+        impl.SetVisibility( value.Get<bool>() );
+        break;
+      }
+      case Demo::ImageChannelControl::Property::ENABLE_VISIBILITY_TRANSITION:
+      {
+        if( value.GetType() == Property::ARRAY )
+        {
+          impl.mEnableVisibilityTransition = Toolkit::TransitionData::New( *value.GetArray());
+        }
+        else if( value.GetType() == Property::MAP )
+        {
+          impl.mEnableVisibilityTransition = Toolkit::TransitionData::New( *value.GetMap() );
+        }
+        break;
+      }
+      case Demo::ImageChannelControl::Property::DISABLE_VISIBILITY_TRANSITION:
+      {
+        if( value.GetType() == Property::ARRAY )
+        {
+          impl.mDisableVisibilityTransition = Toolkit::TransitionData::New( *value.GetArray());
+        }
+        else if( value.GetType() == Property::MAP )
+        {
+          impl.mDisableVisibilityTransition = Toolkit::TransitionData::New( *value.GetMap() );
+        }
+        break;
+      }
+      case Demo::ImageChannelControl::Property::RED_CHANNEL:
+      {
+        impl.mChannels[0] = value.Get<float>();
+        self.SetProperty( impl.mChannelIndex, impl.mChannels );
+        break;
+      }
+      case Demo::ImageChannelControl::Property::GREEN_CHANNEL:
+      {
+        impl.mChannels[1] = value.Get<float>();
+        self.SetProperty( impl.mChannelIndex, impl.mChannels );
+        break;
+      }
+      case Demo::ImageChannelControl::Property::BLUE_CHANNEL:
+      {
+        impl.mChannels[2] = value.Get<float>();
+        self.SetProperty( impl.mChannelIndex, impl.mChannels );
+        break;
+      }
+    }
+  }
+}
+
+Property::Value ImageChannelControl::GetProperty( BaseObject* object, Property::Index propertyIndex )
+{
+  Property::Value value;
+
+  Demo::ImageChannelControl imageChannelControl = Demo::ImageChannelControl::DownCast( Dali::BaseHandle( object ) );
+
+  if ( imageChannelControl )
+  {
+    ImageChannelControl& impl = GetImpl( imageChannelControl );
+    switch ( propertyIndex )
+    {
+      case Demo::ImageChannelControl::Property::RED_CHANNEL:
+      {
+        value = impl.mChannels[0];
+        break;
+      }
+      case Demo::ImageChannelControl::Property::GREEN_CHANNEL:
+      {
+        value = impl.mChannels[1];
+        break;
+      }
+      case Demo::ImageChannelControl::Property::BLUE_CHANNEL:
+      {
+        value = impl.mChannels[2];
+        break;
+      }
+      case Demo::ImageChannelControl::Property::VISIBILITY:
+      {
+        value = impl.mVisibility;
+        break;
+      }
+      default:
+        break;
+    }
+  }
+
+  return value;
+}
+
+} // Internal
+} // Demo
diff --git a/examples/styling/image-channel-control-impl.h b/examples/styling/image-channel-control-impl.h
new file mode 100644 (file)
index 0000000..bcfa9ea
--- /dev/null
@@ -0,0 +1,140 @@
+#ifndef DALI_DEMO_INTERNAL_IMAGE_CHANNEL_CONTROL_IMPL_H
+#define DALI_DEMO_INTERNAL_IMAGE_CHANNEL_CONTROL_IMPL_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "image-channel-control.h"
+#include <dali/public-api/animation/animation.h>
+#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-base.h>
+#include <dali-toolkit/devel-api/visual-factory/transition-data.h>
+
+namespace Demo
+{
+
+namespace Internal // To use TypeRegistry, handle and body classes need the same name
+{
+
+class ImageChannelControl : public Dali::Toolkit::Internal::Control
+{
+public:
+  /**
+   * Instantiate a new ImageChannelControl object
+   */
+  static Demo::ImageChannelControl New();
+  ImageChannelControl();
+  ~ImageChannelControl();
+
+public: // API
+  /**
+   * @copydoc ImageChannelControl::SetImage
+   */
+  void SetImage( const std::string& url );
+
+  /**
+   * @copydoc ImageChannelControl::SetVisibility
+   */
+  void SetVisibility( bool visibility );
+
+public:  // Properties
+  /**
+   * Called when a property of an object of this type is set.
+   * @param[in] object The object whose property is set.
+   * @param[in] index The property index.
+   * @param[in] value The new property value.
+   */
+  static void SetProperty( Dali::BaseObject* object, Dali::Property::Index index, const Dali::Property::Value& value );
+
+  /**
+   * Called to retrieve a property of an object of this type.
+   * @param[in] object The object whose property is to be retrieved.
+   * @param[in] index The property index.
+   * @return The current value of the property.
+   */
+  static Dali::Property::Value GetProperty( Dali::BaseObject* object, Dali::Property::Index propertyIndex );
+
+private: // From Control
+  /**
+   * @copydoc Toolkit::Control::OnInitialize()
+   */
+  virtual void OnInitialize();
+
+  /**
+   * @copydoc Toolkit::Control::OnStageConnect()
+   */
+  virtual void OnStageConnection( int depth );
+
+  /**
+   * @copydoc Toolkit::Control::OnStageDisconnection()
+   */
+  virtual void OnStageDisconnection();
+
+  /**
+   * @copydoc Toolkit::Control::OnSizeSet()
+   */
+  virtual void OnSizeSet( const Dali::Vector3& targetSize );
+
+  /**
+   * @copydoc Toolkit::Control::GetNaturalSize
+   */
+  virtual Dali::Vector3 GetNaturalSize();
+
+  /**
+   * @copydoc Toolkit::Control::OnStyleChange
+   */
+  virtual void OnStyleChange( Dali::Toolkit::StyleManager styleManager, Dali::StyleChange::Type change );
+
+private:
+  void OnStateChangeAnimationFinished(Dali::Animation& handle);
+
+private:
+  //undefined
+  ImageChannelControl( const ImageChannelControl& );
+  ImageChannelControl& operator=( const ImageChannelControl& );
+
+private:
+  // Implementation details
+  std::string mUrl;
+  Dali::Toolkit::Visual::Base mVisual;
+  Dali::Vector3 mChannels;
+  Dali::Toolkit::TransitionData mEnableVisibilityTransition;
+  Dali::Toolkit::TransitionData mDisableVisibilityTransition;
+  Dali::Animation mAnimation;
+  Dali::Property::Index mChannelIndex;
+  bool mVisibility:1;
+  bool mTargetVisibility:1;
+};
+
+} // Internal
+
+inline Internal::ImageChannelControl& GetImpl( Demo::ImageChannelControl& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<Internal::ImageChannelControl&>(object);
+}
+
+inline const Internal::ImageChannelControl& GetImpl( const Demo::ImageChannelControl& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  const Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<const Internal::ImageChannelControl&>(object);
+}
+
+} // Demo
+
+#endif //  DALI_DEMO_IMAGE_CHANNEL_CONTROL_IMPL_H
diff --git a/examples/styling/image-channel-control.cpp b/examples/styling/image-channel-control.cpp
new file mode 100644 (file)
index 0000000..45a0b29
--- /dev/null
@@ -0,0 +1,85 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "image-channel-control.h"
+#include "image-channel-control-impl.h"
+
+namespace Demo
+{
+
+ImageChannelControl::ImageChannelControl()
+{
+}
+
+ImageChannelControl::ImageChannelControl( const ImageChannelControl& imageChannelControl )
+: Control( imageChannelControl )
+{
+}
+
+ImageChannelControl& ImageChannelControl::operator= ( const ImageChannelControl& rhs )
+{
+  if( &rhs != this )
+  {
+    Control::operator=( rhs );
+  }
+  return *this;
+}
+
+ImageChannelControl::~ImageChannelControl()
+{
+}
+
+ImageChannelControl ImageChannelControl::New()
+{
+  ImageChannelControl imageChannelControl = Internal::ImageChannelControl::New();
+  return imageChannelControl;
+}
+
+ImageChannelControl ImageChannelControl::New( const std::string& url )
+{
+  ImageChannelControl imageChannelControl = Internal::ImageChannelControl::New();
+  imageChannelControl.SetImage( url );
+  return imageChannelControl;
+}
+
+ImageChannelControl ImageChannelControl::DownCast( BaseHandle handle )
+{
+  return Control::DownCast< ImageChannelControl, Internal::ImageChannelControl > ( handle );
+}
+
+void ImageChannelControl::SetImage( const std::string& url )
+{
+  GetImpl( *this ).SetImage( url );
+}
+
+void ImageChannelControl::SetVisibility( bool visibility )
+{
+  GetImpl( *this ).SetVisibility( visibility );
+}
+
+ImageChannelControl::ImageChannelControl( Internal::ImageChannelControl& implementation )
+: Control( implementation )
+{
+}
+
+ImageChannelControl::ImageChannelControl( Dali::Internal::CustomActor* internal )
+: Control( internal )
+{
+  VerifyCustomActorPointer< Internal::ImageChannelControl >( internal ) ;
+}
+
+
+} //namespace Demo
diff --git a/examples/styling/image-channel-control.h b/examples/styling/image-channel-control.h
new file mode 100644 (file)
index 0000000..e48c21d
--- /dev/null
@@ -0,0 +1,130 @@
+#ifndef DALI_DEMO_IMAGE_CHANNEL_CONTROL_H
+#define DALI_DEMO_IMAGE_CHANNEL_CONTROL_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <string>
+
+namespace Demo
+{
+
+namespace Internal
+{
+// All type registered types need to have the same name for the body and the handle
+class ImageChannelControl;
+}
+
+/**
+ * Control that allows the RGB channels of an image to be altered.
+ */
+class ImageChannelControl : public Dali::Toolkit::Control
+{
+public:
+  /**
+   * The start and end property ranges for this control
+   */
+  enum PropertyRange
+  {
+    PROPERTY_START_INDEX = Dali::Toolkit::Control::CONTROL_PROPERTY_END_INDEX + 1,
+    PROPERTY_END_INDEX   = PROPERTY_START_INDEX + 1000,
+    ANIMATABLE_PROPERTY_START_INDEX = Dali::ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX,
+    ANIMATABLE_PROPERTY_END_INDEX = ANIMATABLE_PROPERTY_START_INDEX+1000
+  };
+
+  struct Property
+  {
+    enum
+    {
+      RESOURCE_URL = PROPERTY_START_INDEX,
+      RED_CHANNEL,
+      GREEN_CHANNEL,
+      BLUE_CHANNEL,
+      VISIBILITY,
+      ENABLE_VISIBILITY_TRANSITION,
+      DISABLE_VISIBILITY_TRANSITION,
+      IMAGE_VISUAL
+    };
+  };
+
+public: // Construction / destruction
+
+  /**
+   * Create an uninitialized handle
+   */
+  ImageChannelControl();
+
+  /**
+   * Create a new image channel control without an image. Use
+   * SetImage to give this control an image
+   */
+  static ImageChannelControl New();
+
+  /**
+   * Create a new image channel control from a given URL
+   */
+  static ImageChannelControl New( const std::string& url );
+
+  /**
+   * Destructor. This is non-virtual since derived Handle types must not
+   * contain data or virtual methods
+   */
+  ~ImageChannelControl();
+
+  /**
+   * Copy Constructor
+   */
+  ImageChannelControl( const ImageChannelControl& imageChannelControl );
+
+  /**
+   * Assignment Operator
+   */
+  ImageChannelControl& operator=( const ImageChannelControl& imageChannelControl );
+
+  /**
+   * Downcast
+   */
+  static ImageChannelControl DownCast( BaseHandle handle );
+
+public: // API
+
+  /**
+   * Set the image for this ImageChannelControl
+   * @param[in] url The url of the image resource
+   */
+  void SetImage( const std::string& url );
+
+  /**
+   * Set the visibility of this control
+   */
+  void SetVisibility( bool visibility );
+
+public: // Not for public use
+  /**
+   * Create a handle from an implementation
+   */
+  ImageChannelControl( Internal::ImageChannelControl& implementation );
+
+  /**
+   * Allow the creation of an ImageChannelControl handle from an internal CustomActor pointer
+   */
+  ImageChannelControl( Dali::Internal::CustomActor* internal );
+};
+
+} // namespace Demo
+
+#endif // DALI_DEMO_IMAGE_CHANNEL_CONTROL_H
diff --git a/examples/styling/style-example.cpp b/examples/styling/style-example.cpp
new file mode 100644 (file)
index 0000000..dfd2d11
--- /dev/null
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file style-example.cpp
+ * @brief Example of styling Toolkit controls.
+ */
+
+// External includes
+#include <dali/dali.h>
+
+// Internal includes
+#include "styling-application.h"
+
+
+int DALI_EXPORT_API main( int argc, char** argv )
+{
+  const char* themeName = Demo::StylingApplication::DEMO_THEME_ONE_PATH;
+
+  if( argc > 1 )
+  {
+    int theme = atoi(argv[1]);
+    if( theme == 2 )
+    {
+      themeName = Demo::StylingApplication::DEMO_THEME_TWO_PATH;
+    }
+    else if( theme == 3 )
+    {
+      themeName = Demo::StylingApplication::DEMO_THEME_THREE_PATH;
+    }
+  }
+
+  Application application = Application::New( &argc, &argv, themeName );
+  {
+    Demo::StylingApplication stylingApplication( application );
+    application.MainLoop();
+  }
+  return 0;
+}
diff --git a/examples/styling/styling-application.cpp b/examples/styling/styling-application.cpp
new file mode 100644 (file)
index 0000000..ff88750
--- /dev/null
@@ -0,0 +1,686 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file style-example.cpp
+ * @brief Example of styling Toolkit controls.
+ */
+
+// Class include
+#include "styling-application.h"
+
+// External includes
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+#include "image-channel-control.h"
+#include <cstdio>
+#include <sstream>
+
+// Internal includes
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+
+const char* StylingApplication::DEMO_THEME_ONE_PATH( DEMO_STYLE_DIR "style-example-theme-one.json" );
+const char* StylingApplication::DEMO_THEME_TWO_PATH( DEMO_STYLE_DIR "style-example-theme-two.json" );
+const char* StylingApplication::DEMO_THEME_THREE_PATH( DEMO_STYLE_DIR "style-example-theme-three.json" );
+
+namespace
+{
+#define DP(x) x
+
+const char* DEFAULT_CONTROL_AREA_IMAGE_PATH( DEMO_IMAGE_DIR "popup_button_background.9.png" );
+
+const char* POPUP_CONTROL_OK_NAME( "PopupControlOk" );
+const char* POPUP_CONTROL_CANCEL_NAME( "PopupControlCancel" );
+const char* BORDER_IMAGE( DEMO_IMAGE_DIR "border-4px.9.png" );
+const char* RESIZE_HANDLE_IMAGE( DEMO_IMAGE_DIR "resize-handle.png" );
+
+const int NUMBER_OF_THEMES(3); // The default theme is considered.
+
+const Vector4 BACKGROUND_COLOUR( 1.0f, 1.0f, 1.0f, 0.15f );
+const int BORDER_WIDTH( 4 );
+
+const char* const SMALL_IMAGE_1 = DEMO_IMAGE_DIR "gallery-small-14.jpg";
+const char* const BIG_IMAGE_1   = DEMO_IMAGE_DIR "gallery-large-4.jpg";
+
+const char* const SMALL_IMAGE_2 = DEMO_IMAGE_DIR "gallery-small-39.jpg";
+const char* const BIG_IMAGE_2   = DEMO_IMAGE_DIR "gallery-large-7.jpg";
+
+const char* const SMALL_IMAGE_3 = DEMO_IMAGE_DIR "gallery-small-20.jpg";
+const char* const BIG_IMAGE_3   = DEMO_IMAGE_DIR "gallery-large-11.jpg";
+
+// Layout
+const int MARGIN_SIZE = 10;
+
+const int RADIO_LABEL_THUMBNAIL_SIZE = 60;
+const int RADIO_LABEL_THUMBNAIL_SIZE_SMALL = 40;
+const int RADIO_IMAGE_SPACING = 8;
+const int BUTTON_HEIGHT = 48;
+
+Property::Index GetChannelProperty( int index )
+{
+  Property::Index channelIndex = Property::INVALID_INDEX;
+  switch(index)
+  {
+    case 0: { channelIndex = ImageChannelControl::Property::RED_CHANNEL; break; }
+    case 1: { channelIndex = ImageChannelControl::Property::GREEN_CHANNEL; break; }
+    case 2: { channelIndex = ImageChannelControl::Property::BLUE_CHANNEL; break; }
+  }
+  return channelIndex;
+}
+
+} // anonymous namespace
+
+
+
+StylingApplication::StylingApplication( Application& application )
+: mApplication( application ),
+  mCurrentTheme( 0 )
+{
+  application.InitSignal().Connect( this, &StylingApplication::Create );
+}
+
+StylingApplication::~StylingApplication()
+{
+}
+
+void StylingApplication::Create( Application& application )
+{
+  Stage stage = Stage::GetCurrent();
+  stage.KeyEventSignal().Connect(this, &StylingApplication::OnKeyEvent);
+  stage.SetBackgroundColor( Vector4( 0.1f, 0.1f, 0.1f, 1.0f ) );
+
+  // Hide the indicator bar
+  application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+  mContentPane = CreateContentPane();
+  stage.Add( mContentPane );
+  mContentPane.SetSize( stage.GetSize() );
+
+  // Content panes:
+  TableView contentLayout = TableView::New( 5, 1 );
+  contentLayout.SetName("ContentLayout");
+  contentLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  contentLayout.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  contentLayout.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  contentLayout.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+
+  // Assign all rows the size negotiation property of fitting to children
+  for( unsigned int i = 0; i < contentLayout.GetRows(); ++i )
+  {
+    if( i != 1 )
+    {
+      contentLayout.SetFitHeight(i); // Row 1 should fill
+    }
+  }
+
+  mContentPane.Add( contentLayout );
+
+  mTitle = TextLabel::New( "Styling Example" );
+  mTitle.SetName( "Title" );
+  mTitle.SetStyleName("Title");
+  mTitle.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+  mTitle.SetParentOrigin( ParentOrigin::TOP_CENTER );
+  mTitle.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  mTitle.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+  mTitle.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  contentLayout.Add( mTitle );
+
+  // Buttons:
+
+  TableView imageSelectLayout = TableView::New( 1, 2 );
+  imageSelectLayout.SetName("ImageSelectLayout");
+
+  imageSelectLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  imageSelectLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+  imageSelectLayout.SetAnchorPoint( AnchorPoint::CENTER );
+  imageSelectLayout.SetParentOrigin( ParentOrigin::CENTER );
+  imageSelectLayout.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+
+  // Fit radio button column to child width, leave image to fill remainder
+  imageSelectLayout.SetFitWidth( 0 );
+
+  contentLayout.Add( imageSelectLayout );
+
+  TableView radioButtonsLayout = TableView::New( 3, 2 );
+  radioButtonsLayout.SetName("RadioButtonsLayout");
+  radioButtonsLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+  // Leave each row to fill to parent height
+  // Set each column to fit to child width
+  radioButtonsLayout.SetFitWidth(0);
+  radioButtonsLayout.SetFitWidth(1);
+  radioButtonsLayout.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+  imageSelectLayout.AddChild( radioButtonsLayout, TableView::CellPosition(0, 0) );
+  imageSelectLayout.SetCellAlignment( TableView::CellPosition( 0, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+  const char* images[] = { SMALL_IMAGE_1, SMALL_IMAGE_2, SMALL_IMAGE_3 };
+
+  for( int i=0; i<3; ++i )
+  {
+    std::ostringstream thumbnailName; thumbnailName << "thumbnail" << i+1;
+    ImageView image = ImageView::New( images[i] );
+    image.SetName( thumbnailName.str() );
+    image.SetSize( DP(RADIO_LABEL_THUMBNAIL_SIZE), DP(RADIO_LABEL_THUMBNAIL_SIZE) );
+
+    std::ostringstream label; label << (i+1);
+    std::ostringstream radioButtonStyleName;
+    radioButtonStyleName << "imageSelectButton" << i+1;
+    mRadioButtons[i] = RadioButton::New( label.str() );
+    mRadioButtons[i].SetName( radioButtonStyleName.str() );
+    mRadioButtons[i].SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mRadioButtons[i].SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mRadioButtons[i].SetProperty( Button::Property::SELECTED, false );
+    mRadioButtons[i].StateChangedSignal().Connect( this, &StylingApplication::OnButtonStateChange );
+
+    radioButtonsLayout.AddChild( mRadioButtons[i], TableView::CellPosition( i, 0 ) );
+    radioButtonsLayout.AddChild( image, TableView::CellPosition( i, 1 ) );
+    radioButtonsLayout.SetCellAlignment( TableView::CellPosition( i, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+    radioButtonsLayout.SetCellAlignment( TableView::CellPosition( i, 1 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+  }
+
+  mRadioButtons[0].SetProperty( Button::Property::SELECTED, true );
+
+  mImagePlacement = Actor::New();
+  mImagePlacement.SetParentOrigin( ParentOrigin::CENTER );
+  mImagePlacement.SetAnchorPoint( AnchorPoint::CENTER );
+  mImagePlacement.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  imageSelectLayout.AddChild( mImagePlacement, TableView::CellPosition( 0, 1 ) );
+  imageSelectLayout.SetCellAlignment( TableView::CellPosition( 0, 1 ), HorizontalAlignment::RIGHT, VerticalAlignment::CENTER );
+
+  mIcc1 = ImageChannelControl::New( BIG_IMAGE_1 );
+  mIcc1.SetName("ICC1");
+  mIcc1.SetResizePolicy( ResizePolicy::FILL_TO_PARENT , Dimension::ALL_DIMENSIONS );
+  mIcc1.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+  mIcc1.SetParentOrigin( ParentOrigin::CENTER );
+  mIcc1.SetVisibility( true );
+
+  mImagePlacement.Add( mIcc1 );
+
+  mIcc2 = ImageChannelControl::New( BIG_IMAGE_2 );
+  mIcc2.SetName("ICC2");
+  mIcc2.SetResizePolicy( ResizePolicy::FILL_TO_PARENT , Dimension::ALL_DIMENSIONS );
+  mIcc2.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+  mIcc2.SetParentOrigin( ParentOrigin::CENTER );
+  mIcc2.SetVisibility( false );
+
+  mImagePlacement.Add( mIcc2 );
+
+  mIcc3 = ImageChannelControl::New( BIG_IMAGE_3 );
+  mIcc3.SetName("ICC3");
+  mIcc3.SetResizePolicy( ResizePolicy::FILL_TO_PARENT , Dimension::ALL_DIMENSIONS );
+  mIcc3.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+  mIcc3.SetParentOrigin( ParentOrigin::CENTER );
+  mIcc3.SetVisibility( false );
+
+  mImagePlacement.Add( mIcc3 );
+
+  mImageChannelControl = mIcc1;
+
+  TableView channelSliderLayout = TableView::New( 3, 3 );
+  channelSliderLayout.SetName("ChannelSliderLayout");
+
+  // Contains a column of check buttons and a column of sliders for R/G/B
+  channelSliderLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  channelSliderLayout.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+  channelSliderLayout.SetAnchorPoint( AnchorPoint::CENTER );
+  channelSliderLayout.SetParentOrigin( ParentOrigin::CENTER );
+  channelSliderLayout.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+
+  // Set each row to fit to child height
+  channelSliderLayout.SetFitHeight( 0 );
+  channelSliderLayout.SetFitHeight( 1 );
+  channelSliderLayout.SetFitHeight( 2 );
+
+  // Set each column to fit to child width
+  channelSliderLayout.SetFitWidth( 0 );
+  channelSliderLayout.SetFitWidth( 1 );
+
+  contentLayout.Add( channelSliderLayout );
+  const char *checkboxLabels[3] = {"R", "G", "B"};
+
+  for( int i=0; i<3; ++i )
+  {
+    std::ostringstream checkBoxStyleName;
+    checkBoxStyleName << "channelActiveCheckBox" << i+1;
+    mCheckButtons[i] = CheckBoxButton::New();
+    mCheckButtons[i].SetName( checkBoxStyleName.str() );
+    mCheckButtons[i].SetParentOrigin( ParentOrigin::CENTER );
+    mCheckButtons[i].SetAnchorPoint( AnchorPoint::CENTER );
+    mCheckButtons[i].SetProperty( Button::Property::SELECTED, true );
+
+    mCheckButtons[i].StateChangedSignal().Connect( this, &StylingApplication::OnCheckButtonChange );
+    mCheckButtons[i].RegisterProperty( "channel", i, Property::READ_WRITE );
+
+    channelSliderLayout.AddChild( mCheckButtons[i], TableView::CellPosition( i, 0 ) );
+    channelSliderLayout.SetCellAlignment( TableView::CellPosition( i, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+    TextLabel label = TextLabel::New( checkboxLabels[i] );
+    std::ostringstream labelStyleName; labelStyleName << "ColorLabel" << i+1;
+    label.SetName( labelStyleName.str() );
+    label.SetStyleName( labelStyleName.str() );
+    label.SetParentOrigin( ParentOrigin::CENTER );
+    label.SetAnchorPoint ( AnchorPoint::CENTER );
+    label.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::WIDTH );
+    label.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+
+    channelSliderLayout.AddChild( label, TableView::CellPosition( i, 1 ) );
+    channelSliderLayout.SetCellAlignment( TableView::CellPosition( i, 1 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+    mChannelSliders[i] = Slider::New();
+    std::ostringstream sliderStyleName; sliderStyleName << "ColorSlider" << i+1;
+    mChannelSliders[i].SetName( sliderStyleName.str() );
+    mChannelSliders[i].SetStyleName( sliderStyleName.str() );
+    mChannelSliders[i].SetParentOrigin( ParentOrigin::CENTER );
+    mChannelSliders[i].SetAnchorPoint ( AnchorPoint::CENTER );
+    mChannelSliders[i].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mChannelSliders[i].SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN , Dimension::HEIGHT );
+    mChannelSliders[i].SetProperty( Slider::Property::LOWER_BOUND, 0.0f );
+    mChannelSliders[i].SetProperty( Slider::Property::UPPER_BOUND, 100.0f );
+    mChannelSliders[i].SetProperty( Slider::Property::VALUE_PRECISION, 0 );
+    mChannelSliders[i].SetProperty( Slider::Property::VALUE, 100.0f );
+    mChannelSliders[i].SetProperty( Slider::Property::SHOW_POPUP, true );
+    mChannelSliders[i].SetProperty( Slider::Property::SHOW_VALUE, true );
+
+    mChannelSliders[i].RegisterProperty( "channel", i, Property::READ_WRITE );
+
+    channelSliderLayout.AddChild( mChannelSliders[i], TableView::CellPosition( i, 2 ) );
+    channelSliderLayout.SetCellAlignment( TableView::CellPosition( i, 2 ), HorizontalAlignment::RIGHT, VerticalAlignment::CENTER );
+
+    mChannelSliders[i].ValueChangedSignal().Connect( this, &StylingApplication::OnSliderChanged );
+  }
+
+  mResetButton = PushButton::New();
+  mResetButton.SetProperty( Toolkit::Button::Property::LABEL, "Reset" );
+  mResetButton.SetName("ResetButton");
+  mResetButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  mResetButton.ClickedSignal().Connect( this, &StylingApplication::OnResetClicked );
+
+  contentLayout.Add( mResetButton );
+  contentLayout.SetCellAlignment( TableView::CellPosition( 3, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+
+  TableView themeButtonLayout = TableView::New( 1, 4 );
+  themeButtonLayout.SetName("ThemeButtonsLayout");
+  themeButtonLayout.SetCellPadding( Vector2( 6.0f, 0.0f ) );
+
+  themeButtonLayout.SetAnchorPoint( AnchorPoint::CENTER );
+  themeButtonLayout.SetParentOrigin( ParentOrigin::CENTER );
+  themeButtonLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  themeButtonLayout.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+  themeButtonLayout.SetCellPadding( Size( MARGIN_SIZE, MARGIN_SIZE ) );
+  themeButtonLayout.SetFitHeight( 0 );
+
+  TextLabel label = TextLabel::New( "Theme: ");
+  label.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  label.SetStyleName("ThemeLabel");
+  label.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+  label.SetParentOrigin( ParentOrigin::TOP_CENTER );
+  themeButtonLayout.AddChild( label, TableView::CellPosition( 0, 0 ) );
+  themeButtonLayout.SetCellAlignment( TableView::CellPosition( 0, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+  for( int i=0; i<3; ++i )
+  {
+    mThemeButtons[i] = PushButton::New();
+    mThemeButtons[i].SetName("ThemeButton");
+    mThemeButtons[i].SetStyleName("ThemeButton");
+    mThemeButtons[i].SetParentOrigin( ParentOrigin::CENTER );
+    mThemeButtons[i].SetAnchorPoint( ParentOrigin::CENTER );
+    mThemeButtons[i].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mThemeButtons[i].SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mThemeButtons[i].RegisterProperty( "theme", i, Property::READ_WRITE );
+    mThemeButtons[i].ClickedSignal().Connect( this, &StylingApplication::OnThemeButtonClicked );
+    themeButtonLayout.AddChild( mThemeButtons[i], TableView::CellPosition( 0, 1+i ) );
+  }
+  mThemeButtons[0].SetProperty( Toolkit::Button::Property::LABEL, "Lite" ); // Lightweight changes on top of Dali
+  mThemeButtons[1].SetProperty( Toolkit::Button::Property::LABEL, "App1" ); // Different application style
+  mThemeButtons[2].SetProperty( Toolkit::Button::Property::LABEL, "App2" );
+
+  contentLayout.Add( themeButtonLayout );
+}
+
+Actor StylingApplication::CreateContentPane()
+{
+  Toolkit::ImageView contentPane = Toolkit::ImageView::New( BORDER_IMAGE );
+  contentPane.SetName("ContentPane");
+  contentPane.SetParentOrigin( ParentOrigin::CENTER );
+  contentPane.SetAnchorPoint( AnchorPoint::CENTER );
+  contentPane.SetPadding( Padding( BORDER_WIDTH, BORDER_WIDTH, BORDER_WIDTH, BORDER_WIDTH ) );
+  return contentPane;
+}
+
+Actor StylingApplication::CreateResizableContentPane()
+{
+  Toolkit::ImageView contentPane = Toolkit::ImageView::New( BORDER_IMAGE );
+  contentPane.SetName("ContentPane");
+  contentPane.SetParentOrigin( ParentOrigin::CENTER );
+  contentPane.SetAnchorPoint( AnchorPoint::CENTER );
+  contentPane.SetPadding( Padding( BORDER_WIDTH, BORDER_WIDTH, BORDER_WIDTH, BORDER_WIDTH ) );
+
+  Toolkit::ImageView grabHandle = Toolkit::ImageView::New( RESIZE_HANDLE_IMAGE );
+  grabHandle.SetName("GrabHandle");
+  grabHandle.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  grabHandle.SetParentOrigin( ParentOrigin::BOTTOM_RIGHT );
+  grabHandle.SetAnchorPoint( AnchorPoint::BOTTOM_RIGHT );
+  grabHandle.SetPosition( -BORDER_WIDTH, -BORDER_WIDTH );
+  grabHandle.SetOpacity( 0.6f );
+
+  Layer grabCornerLayer = Layer::New();
+  grabCornerLayer.SetName("GrabCornerLayer");
+  grabCornerLayer.SetParentOrigin( ParentOrigin::BOTTOM_RIGHT );
+  grabCornerLayer.SetAnchorPoint( AnchorPoint::BOTTOM_RIGHT );
+  grabCornerLayer.Add( grabHandle );
+  contentPane.Add( grabCornerLayer );
+
+  mPanGestureDetector = PanGestureDetector::New();
+  mPanGestureDetector.Attach( grabHandle );
+  mPanGestureDetector.DetectedSignal().Connect( this, &StylingApplication::OnPan );
+
+  return contentPane;
+}
+
+Popup StylingApplication::CreateResetPopup()
+{
+  Stage stage = Stage::GetCurrent();
+
+  Popup popup= Popup::New();
+  popup.SetName("ResetPopup");
+  popup.SetStyleName("ResetPopup");
+  popup.SetParentOrigin( ParentOrigin::CENTER );
+  popup.SetAnchorPoint( AnchorPoint::CENTER );
+  popup.SetSize( stage.GetSize().width * 0.75f, 0.0f );
+  popup.SetProperty( Popup::Property::TAIL_VISIBILITY, false );
+  popup.OutsideTouchedSignal().Connect( this, &StylingApplication::HidePopup );
+  popup.HiddenSignal().Connect( this, &StylingApplication::PopupHidden );
+
+  popup.SetTitle( CreateTitle( "Reset channels" ) );
+
+  TextLabel text = TextLabel::New( "This will reset the channel data to full value. Are you sure?" );
+  text.SetName( "PopupContentText" );
+  text.SetStyleName( "PopupBody" );
+  text.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  text.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+  text.SetProperty( TextLabel::Property::MULTI_LINE, true );
+  text.SetPadding( Padding( 10.0f, 10.0f, 20.0f, 0.0f ) );
+  popup.SetContent( text );
+
+  ImageView footer = ImageView::New( DEFAULT_CONTROL_AREA_IMAGE_PATH );
+  footer.SetName( "PopupFooter" );
+  footer.SetStyleName( "PopupFooter" );
+  footer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  footer.SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT );
+  footer.SetSize( 0.0f, 80.0f );
+  footer.SetAnchorPoint( AnchorPoint::CENTER );
+  footer.SetParentOrigin( ParentOrigin::CENTER );
+
+  TableView footerLayout = TableView::New( 1, 2 );
+  footerLayout.SetParentOrigin( ParentOrigin::CENTER );
+  footerLayout.SetAnchorPoint ( AnchorPoint::CENTER );
+  footerLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+
+  PushButton okayButton = PushButton::New();
+  okayButton.SetName( POPUP_CONTROL_OK_NAME );
+  okayButton.SetStyleName( POPUP_CONTROL_OK_NAME );
+  okayButton.SetProperty( Toolkit::Button::Property::LABEL, "Ok!" );
+  okayButton.ClickedSignal().Connect( this, &StylingApplication::OnReset );
+  okayButton.SetParentOrigin( ParentOrigin::CENTER );
+  okayButton.SetAnchorPoint( AnchorPoint::CENTER );
+  okayButton.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT, Dimension::ALL_DIMENSIONS );
+  okayButton.SetSizeModeFactor( Vector3( -20.0f, -20.0f, 0.0f ) );
+
+  PushButton cancelButton = PushButton::New();
+  cancelButton.SetName( POPUP_CONTROL_CANCEL_NAME );
+  cancelButton.SetStyleName( POPUP_CONTROL_CANCEL_NAME );
+  cancelButton.SetProperty( Toolkit::Button::Property::LABEL, "Cancel" );
+  cancelButton.ClickedSignal().Connect( this, &StylingApplication::OnResetCancelled );
+  cancelButton.SetParentOrigin( ParentOrigin::CENTER );
+  cancelButton.SetAnchorPoint( AnchorPoint::CENTER );
+  cancelButton.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT, Dimension::ALL_DIMENSIONS );
+  cancelButton.SetSizeModeFactor( Vector3( -20.0f, -20.0f, 0.0f ) );
+
+  footerLayout.SetCellAlignment( TableView::CellPosition( 0, 0 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+  footerLayout.SetCellAlignment( TableView::CellPosition( 0, 1 ), HorizontalAlignment::CENTER, VerticalAlignment::CENTER );
+  footerLayout.AddChild( okayButton, TableView::CellPosition( 0, 0 ) );
+  footerLayout.AddChild( cancelButton, TableView::CellPosition( 0, 1 ) );
+  footerLayout.SetCellPadding( Size( 10.f, 10.f ) );
+  footer.Add( footerLayout );
+
+  popup.SetFooter( footer );
+  return popup;
+}
+
+TextLabel StylingApplication::CreateTitle( std::string title )
+{
+  TextLabel titleActor = TextLabel::New( title );
+  titleActor.SetName( "titleActor" );
+  titleActor.SetStyleName( "PopupTitle" );
+  titleActor.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  titleActor.SetProperty( TextLabel::Property::MULTI_LINE, false );
+
+  return titleActor;
+}
+
+bool StylingApplication::OnButtonStateChange( Button button )
+{
+  // On button press, called twice, once to tell new button it's selected,
+  // once to tell old button it isn't selected?
+
+// Todo: save / restore slider states per image
+
+  if( button.GetProperty<bool>(Button::Property::SELECTED) )
+  {
+
+    ImageChannelControl prevIcc = mImageChannelControl;
+
+    if( mRadioButtons[0].GetProperty<bool>(Button::Property::SELECTED) )
+    {
+      mImageChannelControl = mIcc1;
+    }
+    else if( mRadioButtons[1].GetProperty<bool>(Button::Property::SELECTED) )
+    {
+      mImageChannelControl = mIcc2;
+    }
+    else if( mRadioButtons[2].GetProperty<bool>(Button::Property::SELECTED) )
+    {
+      mImageChannelControl = mIcc3;
+    }
+
+    if( prevIcc )
+    {
+      prevIcc.SetVisibility( false );
+    }
+
+    if( mImageChannelControl )
+    {
+      mImageChannelControl.SetVisibility( true );
+    }
+  }
+
+  return true;
+}
+
+bool StylingApplication::OnCheckButtonChange( Button button )
+{
+  Property::Index index = button.GetPropertyIndex("channel");
+  if( index != Property::INVALID_INDEX )
+  {
+    int channel = button.GetProperty<int>( index );
+    float value = mChannelSliders[channel].GetProperty<float>( Slider::Property::VALUE );
+    if( !button.GetProperty<bool>(Button::Property::SELECTED) )
+    {
+      // "Turn off" the channel's contribution
+      value = 0.0f;
+    }
+    Property::Index channelIndex = GetChannelProperty( channel );
+    mImageChannelControl.SetProperty(channelIndex, value/100.0f);
+  }
+  return true;
+}
+
+bool StylingApplication::OnThemeButtonClicked( Button button )
+{
+  int theme = button.GetProperty<int>(button.GetPropertyIndex("theme"));
+  const char* themePath=NULL;
+
+  switch( theme )
+  {
+    case 0:
+    {
+      themePath = DEMO_THEME_ONE_PATH;
+      break;
+    }
+    case 1:
+    {
+      themePath = DEMO_THEME_TWO_PATH;
+      break;
+    }
+    case 2:
+    {
+      themePath = DEMO_THEME_THREE_PATH;
+      break;
+    }
+  }
+
+  StyleManager::Get().ApplyTheme( themePath );
+
+  return true;
+}
+
+bool StylingApplication::OnResetClicked( Button button )
+{
+  if( ! mResetPopup )
+  {
+    mResetPopup = CreateResetPopup ();
+  }
+
+  Stage::GetCurrent().Add( mResetPopup );
+
+  mResetPopup.SetDisplayState( Popup::SHOWN );
+  return true;
+}
+
+bool StylingApplication::OnReset( Button button )
+{
+  // todo: Reset the sliders for this image
+  for( int i=0; i<3; ++i )
+  {
+    mChannelSliders[i].SetProperty( Slider::Property::VALUE, 100.0f );
+  }
+  HidePopup();
+  return true;
+}
+
+bool StylingApplication::OnResetCancelled( Button button )
+{
+  HidePopup();
+  return true;
+}
+
+bool StylingApplication::OnSliderChanged( Slider slider, float value )
+{
+  // todo - change color channel's saturation
+  Property::Index index = slider.GetPropertyIndex("channel");
+  if( index != Property::INVALID_INDEX )
+  {
+    int channel = slider.GetProperty<int>( index );
+    if( mCheckButtons[channel].GetProperty<bool>(Button::Property::SELECTED) )
+    {
+      Property::Index channelIndex = GetChannelProperty( channel );
+      mImageChannelControl.SetProperty(channelIndex, value/100.0f);
+    }
+  }
+  return true;
+}
+
+void StylingApplication::HidePopup()
+{
+  if( mResetPopup )
+  {
+    mResetPopup.SetDisplayState( Popup::HIDDEN );
+  }
+}
+
+void StylingApplication::PopupHidden()
+{
+  if( mResetPopup )
+  {
+    // Clear down resources
+    mResetPopup.Unparent();
+    mResetPopup.Reset();
+  }
+}
+
+void StylingApplication::OnPan( Actor actor, const PanGesture& gesture )
+{
+  Vector3 size = mContentPane.GetTargetSize();
+  mContentPane.SetSize( size.GetVectorXY() + gesture.displacement * 2.0f );
+}
+
+void StylingApplication::OnKeyEvent( const KeyEvent& keyEvent )
+{
+  static int keyPressed = 0;
+
+  if( keyEvent.state == KeyEvent::Down)
+  {
+    if( keyPressed == 0 ) // Is this the first down event?
+    {
+      printf("Key pressed: %s %d\n", keyEvent.keyPressedName.c_str(), keyEvent.keyCode );
+
+      if( IsKey( keyEvent, DALI_KEY_ESCAPE) || IsKey( keyEvent, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else if( keyEvent.keyPressedName.compare("Return") == 0 )
+      {
+        mCurrentTheme++;
+        mCurrentTheme %= NUMBER_OF_THEMES;
+
+        StyleManager styleManager = StyleManager::Get();
+        switch( mCurrentTheme )
+        {
+          case 0:
+          {
+            styleManager.ApplyTheme( DEMO_THEME_ONE_PATH );
+            printf("Changing to theme One\n");
+            break;
+          }
+          case 1:
+          {
+            styleManager.ApplyTheme( DEMO_THEME_TWO_PATH );
+            printf("Changing to theme Two\n");
+            break;
+          }
+          case 2:
+          {
+            styleManager.ApplyDefaultTheme();
+            printf("Changing to Toolkit theme\n");
+            break;
+          }
+        }
+      }
+    }
+    keyPressed = 1;
+  }
+  else if( keyEvent.state == KeyEvent::Up )
+  {
+    keyPressed = 0;
+  }
+}
+
+} // namespace Demo
diff --git a/examples/styling/styling-application.h b/examples/styling/styling-application.h
new file mode 100644 (file)
index 0000000..ad7af1b
--- /dev/null
@@ -0,0 +1,101 @@
+#ifndef DALI_DEMO_STYLING_APPLICATION_H
+#define DALI_DEMO_STYLING_APPLICATION_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// External includes
+#include <dali-toolkit/dali-toolkit.h>
+//#include <dali-toolkit/devel-api/controls/slider/slider.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+#include "image-channel-control.h"
+#include <cstdio>
+#include <sstream>
+
+// Internal includes
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+
+class StylingApplication : public ConnectionTracker
+{
+public:
+  // Constructor
+  StylingApplication( Application& application );
+
+  // Destructor
+  ~StylingApplication();
+
+  // Init signal handler
+  void Create( Application& application );
+
+  // Create the GUI components
+  Actor CreateContentPane();
+  Actor CreateResizableContentPane();
+  Toolkit::Popup CreateResetPopup();
+  Toolkit::TextLabel CreateTitle( std::string title );
+
+  // Key event handler
+  void OnKeyEvent( const KeyEvent& event );
+
+  // Button event handlers
+  bool OnButtonStateChange( Toolkit::Button button );
+  bool OnCheckButtonChange( Toolkit::Button button );
+  bool OnResetClicked( Toolkit::Button button );
+  bool OnThemeButtonClicked( Toolkit::Button button );
+
+  // Slider event handler
+  bool OnSliderChanged( Toolkit::Slider slider, float value );
+
+  // Popup event handlers
+  void HidePopup();
+  void PopupHidden();
+  bool OnReset(Button button);
+  bool OnResetCancelled(Button button);
+
+  // Grab handle handler
+  void OnPan( Actor actor, const PanGesture& gesture );
+
+  static const char* DEMO_THEME_ONE_PATH;
+  static const char* DEMO_THEME_TWO_PATH;
+  static const char* DEMO_THEME_THREE_PATH;
+
+private:
+  Application& mApplication;
+  int mCurrentTheme;
+  Actor mContentPane;
+  TextLabel mTitle;
+  RadioButton mRadioButtons[3]; // 3 demo images
+  CheckBoxButton mCheckButtons[3]; // rgb buttons
+  Slider mChannelSliders[3]; // rgb sliders
+  PushButton mThemeButtons[3];
+  PushButton mResetButton;
+  ImageChannelControl mImageChannelControl;
+  ImageChannelControl mIcc1;
+  ImageChannelControl mIcc2;
+  ImageChannelControl mIcc3;
+  Actor mImagePlacement;
+  Popup mResetPopup;
+  PanGestureDetector mPanGestureDetector;
+};
+
+} // Namespace Demo
+
+
+#endif // DALI_DEMO_STYLING_APPLICATION_H
diff --git a/examples/super-blur-view/super-blur-view-example.cpp b/examples/super-blur-view/super-blur-view-example.cpp
new file mode 100644 (file)
index 0000000..c687de3
--- /dev/null
@@ -0,0 +1,124 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/super-blur-view/super-blur-view.h>
+
+using namespace Dali;
+using Dali::Toolkit::Button;
+using Dali::Toolkit::PushButton;
+using Dali::Toolkit::SuperBlurView;
+
+namespace
+{
+
+const char* const BACKGROUND_IMAGE( DEMO_IMAGE_DIR "background-4.jpg" );
+
+const unsigned int DEFAULT_BLUR_LEVEL(5u); ///< The default blur level when creating SuperBlurView from the type registry
+
+}
+
+/**
+ * This example shows a background image which is "super blurred" while the push-button control is pressed.
+ */
+class SuperBlurViewExample : public ConnectionTracker
+{
+public:
+
+  SuperBlurViewExample( Application& application )
+  : mApplication( application )
+  {
+    mApplication.InitSignal().Connect( this, &SuperBlurViewExample::Create );
+  }
+
+  ~SuperBlurViewExample() = default;
+
+private:
+
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect( this, &SuperBlurViewExample::OnKeyEvent );
+
+    mSuperBlurView = SuperBlurView::New( DEFAULT_BLUR_LEVEL );
+    mSuperBlurView.SetParentOrigin( ParentOrigin::CENTER );
+    mSuperBlurView.SetAnchorPoint( AnchorPoint::CENTER );
+    mSuperBlurView.SetSize( 800, 1280 );
+    mSuperBlurView.SetProperty( SuperBlurView::Property::IMAGE_URL, BACKGROUND_IMAGE );
+    stage.Add( mSuperBlurView );
+
+    mBlurAnimation = Animation::New(1.0f);
+    mBlurAnimation.AnimateTo( Property(mSuperBlurView, mSuperBlurView.GetBlurStrengthPropertyIndex()), 1.0f );
+
+    mClearAnimation = Animation::New(1.0f);
+    mClearAnimation.AnimateTo( Property(mSuperBlurView, mSuperBlurView.GetBlurStrengthPropertyIndex()), 0.0f );
+
+    mPushButton = PushButton::New();
+    mPushButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mPushButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    mPushButton.SetProperty( Button::Property::LABEL, "Blur" );
+    mPushButton.PressedSignal().Connect( this, &SuperBlurViewExample::OnButtonPressed );
+    mPushButton.ReleasedSignal().Connect( this, &SuperBlurViewExample::OnButtonReleased );
+    stage.Add( mPushButton );
+  }
+
+  bool OnButtonPressed( Button button )
+  {
+    mBlurAnimation.Play();
+    return true;
+  }
+
+  bool OnButtonReleased( Button button )
+  {
+    mClearAnimation.Play();
+    return true;
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if ( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;
+
+  SuperBlurView mSuperBlurView;
+
+  PushButton mPushButton;
+
+  Animation mBlurAnimation;
+  Animation mClearAnimation;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+
+  SuperBlurViewExample test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/text-editor/text-editor-example.cpp b/examples/text-editor/text-editor-example.cpp
new file mode 100644 (file)
index 0000000..c775f19
--- /dev/null
@@ -0,0 +1,304 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file simple-text-editor-example.cpp
+ * @brief Very basic usage of TextEditor control
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <sstream>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+const char * const THEME_PATH( DEMO_STYLE_DIR "text-editor-example-theme.json" ); ///< The theme used for this example
+const Vector4 BACKGROUND_COLOR( 0.04f, 0.345f, 0.392f, 1.0f );      ///< The background color.
+const char*   TOOLBAR_IMAGE = DEMO_IMAGE_DIR "top-bar.png";         ///< The tool-bar image.
+const float   TOOLBAR_BUTTON_PERCENTAGE = 0.1f;                     ///< The button's space width as a percentage of the toolbar's width.
+const float   TOOLBAR_TITLE_PERCENTAGE = 0.7f;                      ///< The title's width as a percentage of the toolbar's width.
+const float   TOOLBAR_HEIGHT_PERCENTAGE = 0.05f;                    ///< The toolbar's height as a percentage of the stage's height.
+const float   TOOLBAR_PADDING = 4.f;                                ///< The padding in pixels.
+const float   BUTTON_PERCENTAGE = 0.8f;                             ///< The button's height as a percentage of the space for the buttons in the toolbar.
+const Vector3 TEXT_EDITOR_RELATIVE_SIZE( 0.9f, 0.5f, 1.0f );        ///< The size of the text editor as a percentage of the stage's size.
+const Vector4 TEXT_EDITOR_BACKGROUND_COLOR( 1.f, 1.f, 1.f, 0.15f ); ///< The background color of the text editor.
+
+const Vector4 COLORS[] = { Color::RED,
+                           Color::GREEN,
+                           Color::BLUE,
+                           Color::YELLOW,
+                           Color::CYAN,
+                           Color::MAGENTA,
+                           Color::WHITE,
+                           Color::BLACK };
+const unsigned int NUMBER_OF_COLORS = sizeof( COLORS ) / sizeof( Vector4 );
+
+} // Unnamed namespace
+
+/**
+ * @brief The main class of the demo.
+ */
+class TextEditorExample : public ConnectionTracker
+{
+public:
+  TextEditorExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextEditorExample::Create );
+  }
+
+  ~TextEditorExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect(this, &TextEditorExample::OnKeyEvent);
+
+    // Set a background color.
+    stage.SetBackgroundColor( BACKGROUND_COLOR );
+
+    // The stage size.
+    const Vector2 stageSize = stage.GetSize();
+
+    // Creates a default view with a default tool bar.
+    // The view is added to the stage.
+
+    // Set the toolbar style
+    const float toolBarHeight = TOOLBAR_HEIGHT_PERCENTAGE * stageSize.height;
+    const DemoHelper::ViewStyle viewStyle( TOOLBAR_BUTTON_PERCENTAGE,
+                                           TOOLBAR_TITLE_PERCENTAGE,
+                                           toolBarHeight,
+                                           TOOLBAR_PADDING );
+
+    Layer contents = DemoHelper::CreateView( mApplication,
+                                             mView,
+                                             mToolBar,
+                                             "",
+                                             TOOLBAR_IMAGE,
+                                             "",
+                                             viewStyle );
+
+    // Create a label for the color selection button.
+    // The button will be a child of this, so as to be placed next to it.
+    TextLabel colorLabel = TextLabel::New( "Text Color: " );
+    colorLabel.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::WIDTH );
+    colorLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+    colorLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+
+    // Create a container for the color button, to layout the drop-down list below it.
+    mColorContainer = Control::New();
+    mColorContainer.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::WIDTH );
+    mColorContainer.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::HEIGHT );
+    mColorContainer.SetSizeModeFactor( Vector3( 0.0f, BUTTON_PERCENTAGE, 0.0f ) );
+
+    // Place to right of parent.
+    mColorContainer.SetParentOrigin( ParentOrigin::CENTER_RIGHT );
+    mColorContainer.SetAnchorPoint( AnchorPoint::CENTER_LEFT );
+    colorLabel.Add( mColorContainer );
+
+    // Add border to highlight harder-to-see colors.
+    // We use a color rather than border visual as the container will always be behind the button.
+    Property::Map colorMap;
+    colorMap.Insert( Toolkit::Visual::Property::TYPE, Visual::COLOR);
+    colorMap.Insert( ColorVisual::Property::MIX_COLOR, Color::BLACK );
+    mColorContainer.SetProperty( Control::Property::BACKGROUND, colorMap );
+
+    // Create a 'select color' button.
+    mColorButtonOption = Toolkit::PushButton::New();
+    mColorButtonOption.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mColorButtonOption.SetSizeModeFactor( Vector3( 0.9f, 0.9f, 0.0f ) ); // Smaller than container to show border.
+    mColorButtonOption.SetParentOrigin( ParentOrigin::CENTER );
+    mColorButtonOption.SetAnchorPoint( AnchorPoint::CENTER );
+
+    SetButtonColor( mColorButtonOption, Color::BLACK );
+
+    mColorButtonOption.ClickedSignal().Connect( this, &TextEditorExample::OnChangeColorButtonClicked );
+    mColorContainer.Add( mColorButtonOption );
+
+    //Add label to toolbar, which will also add the color button next to it.
+    mToolBar.AddControl( colorLabel, viewStyle.mToolBarButtonPercentage, Toolkit::Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING  );
+
+    // Create the text editor.
+    mEditor = TextEditor::New();
+    mEditor.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mEditor.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mEditor.SetPosition( 0.f, toolBarHeight * 2.0f, 0.f );
+    mEditor.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mEditor.SetSizeModeFactor( TEXT_EDITOR_RELATIVE_SIZE );
+
+    mEditor.SetBackgroundColor( TEXT_EDITOR_BACKGROUND_COLOR );
+
+    const Size boundingBoxSize( stageSize * TEXT_EDITOR_RELATIVE_SIZE.GetVectorXY() );
+    Rect<int> boundingBox( 0,
+                           static_cast<int>( toolBarHeight ),
+                           static_cast<int>( boundingBoxSize.width ),
+                           static_cast<int>( boundingBoxSize.height - toolBarHeight ) );
+
+    mEditor.SetProperty( TextEditor::Property::DECORATION_BOUNDING_BOX, boundingBox );
+    mEditor.SetProperty( TextEditor::Property::TEXT_COLOR, Color::BLACK );
+    mEditor.SetProperty( TextEditor::Property::TEXT,
+                         "Lorem ipsum dolor sit amet, aeque definiebas ea mei, posse iracundia ne cum.\n"
+                         "Usu ne nisl maiorum iudicabit, veniam epicurei oporteat eos an.\n"
+                         "Ne nec nulla regione albucius, mea doctus delenit ad!\n"
+                         "Et everti blandit adversarium mei, eam porro neglegentur suscipiantur an.\n"
+                         "Quidam corpora at duo. An eos possim scripserit?\n\n"
+                         "Aťqui dicant sěnťenťíae aň vel!\n"
+                         "Vis viris médiocrem elaboraret ét, verear civibus moderatius ex duo!\n"
+                         "Án veri laborě iňtěgré quó, mei aď poššit lobortis, mei prompťa čonsťitůťó eů.\n"
+                         "Aliquip sanctůs delicáta quí ěá, et natum aliquam est?\n"
+                         "Asšúm sapěret usu ůť.\n"
+                         "Síť ut apeirián laboramúš percipitur, sůas hařum ín éos?\n" );
+
+    mEditor.InputStyleChangedSignal().Connect( this, &TextEditorExample::OnTextInputStyleChanged );
+
+    contents.Add( mEditor );
+    StyleManager styleManager = StyleManager::Get();
+    styleManager.ApplyTheme( THEME_PATH );
+  }
+
+  void CreateButtonContainer()
+  {
+    mButtonContainer = Toolkit::TableView::New( NUMBER_OF_COLORS, 1u );
+    mButtonContainer.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mButtonContainer.SetSizeModeFactor( Vector3( 1.0f, NUMBER_OF_COLORS, 1.0f ) );
+
+    // Place below color selection button.
+    mButtonContainer.SetParentOrigin( ParentOrigin::BOTTOM_CENTER  );
+    mButtonContainer.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mButtonContainer.SetPosition( 0.0f, 2.f * TOOLBAR_PADDING, 0.f );
+    mColorContainer.Add( mButtonContainer );
+
+    const Vector3 buttonPercentage( 1.f, 0.8f / static_cast<float>( NUMBER_OF_COLORS ), 1.f );
+    for( unsigned int index = 0u; index < NUMBER_OF_COLORS; ++index )
+    {
+      Toolkit::PushButton button = Toolkit::PushButton::New();
+      button.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      button.SetSizeModeFactor( buttonPercentage );
+
+      std::ostringstream s;
+      s << "color" << index;
+      button.SetName( s.str() );
+
+      SetButtonColor( button, COLORS[index] );
+
+      button.ClickedSignal().Connect( this, &TextEditorExample::OnColorButtonClicked );
+
+      mButtonContainer.Add( button );
+    }
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        // Exit application when click back or escape.
+        mApplication.Quit();
+      }
+    }
+  }
+
+  bool OnChangeColorButtonClicked( Button button )
+  {
+    if( !mButtonContainer )
+    {
+      CreateButtonContainer();
+    }
+
+    mButtonContainer.SetVisible( true );
+    mButtonContainer.SetSensitive( true );
+    return true;
+  }
+
+  bool OnColorButtonClicked( Button button )
+  {
+    const std::string& name = button.GetName();
+
+    Vector4 color;
+    if( "color" == name.substr( 0u, 5u ) )
+    {
+      const unsigned int index = strtoul( name.substr( 5u, 1u ).c_str(), NULL, 10u );
+      color = COLORS[index];
+      mEditor.SetProperty( TextEditor::Property::INPUT_COLOR, color );
+    }
+
+    SetButtonColor( mColorButtonOption, color  );
+
+    mButtonContainer.SetVisible( false );
+    mButtonContainer.SetSensitive( false );
+
+    return true;
+  }
+
+  void OnTextInputStyleChanged( TextEditor editor, TextEditor::InputStyle::Mask mask )
+  {
+    if( TextEditor::InputStyle::NONE != static_cast<TextEditor::InputStyle::Mask>( mask & TextEditor::InputStyle::COLOR ) )
+    {
+      const Vector4 color = editor.GetProperty( TextEditor::Property::INPUT_COLOR ).Get<Vector4>();
+      SetButtonColor( mColorButtonOption, color  );
+    }
+
+    editor.Reset();
+  }
+
+  void SetButtonColor( Button& button, const Vector4& color )
+  {
+    Property::Map colorVisualMap;
+    colorVisualMap.Add( Toolkit::Visual::Property::TYPE, Visual::COLOR )
+                  .Add( ColorVisual::Property::MIX_COLOR, color );
+
+    button.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, colorVisualMap );
+    button.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, colorVisualMap );
+  }
+
+private:
+
+  Application& mApplication;
+
+  Toolkit::Control    mView;
+  Toolkit::ToolBar    mToolBar;
+  Toolkit::TextEditor mEditor;
+  Toolkit::Control    mColorContainer;
+  Toolkit::PushButton mColorButtonOption;
+  Toolkit::TableView  mButtonContainer;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  // DALI_DEMO_THEME_PATH not passed to Application so TextEditor example uses default Toolkit style sheet.
+  Application application = Application::New( &argc, &argv );
+  TextEditorExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/text-field/text-field-example.cpp b/examples/text-field/text-field-example.cpp
new file mode 100644 (file)
index 0000000..4b9b7e2
--- /dev/null
@@ -0,0 +1,220 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file text-field-example.cpp
+ * @brief Basic usage of TextField control
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+#include <iostream>
+
+// INTERNAL INCLUDES
+#include "shared/multi-language-strings.h"
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace MultiLanguageStrings;
+
+namespace
+{
+
+  const char* const FOLDER_ICON_IMAGE = DEMO_IMAGE_DIR "folder_appicon_empty_bg.png";
+  const char* const FOLDER_OPEN_ICON_IMAGE = DEMO_IMAGE_DIR "folder_appicon_empty_open_bg.png";
+
+  const float BORDER_WIDTH = 4.0f;
+
+} // unnamed namespace
+
+/**
+ * @brief The main class of the demo.
+ */
+class TextFieldExample : public ConnectionTracker
+{
+public:
+
+  TextFieldExample( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextFieldExample::Create );
+  }
+
+  ~TextFieldExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    stage.SetBackgroundColor( Vector4( 0.04f, 0.345f, 0.392f, 1.0f ) );
+    stage.KeyEventSignal().Connect(this, &TextFieldExample::OnKeyEvent);
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    mButton = CreateFolderButton();
+    mButton.ClickedSignal().Connect( this, &TextFieldExample::OnButtonClicked );
+    stage.Add( mButton );
+  }
+
+  PushButton CreateFolderButton()
+  {
+    PushButton button = PushButton::New();
+    button.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, FOLDER_ICON_IMAGE );
+    button.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, FOLDER_OPEN_ICON_IMAGE );
+    button.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    return button;
+  }
+
+  bool OnButtonClicked( Toolkit::Button button )
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    // Remove previously hidden pop-up
+    UnparentAndReset(mPopup);
+
+    // Launch a pop-up containing TextField
+    mField = CreateTextField( stageSize, mButtonLabel );
+    mPopup = CreatePopup();
+    mPopup.Add( mField );
+    mPopup.OutsideTouchedSignal().Connect( this, &TextFieldExample::OnPopupOutsideTouched );
+    stage.Add( mPopup );
+    mPopup.SetDisplayState( Popup::SHOWN );
+
+    return true;
+  }
+
+  TextField CreateTextField( const Vector2& stageSize, const std::string& text )
+  {
+    TextField field = TextField::New();
+    field.SetName("textField");
+    field.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    field.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    field.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+    field.SetProperty( TextField::Property::TEXT, text );
+    field.SetProperty( TextField::Property::TEXT_COLOR, Vector4( 0.0f, 1.0f, 1.0f, 1.0f ) ); // CYAN
+    field.SetProperty( TextField::Property::PLACEHOLDER_TEXT, "Unnamed folder" );
+    field.SetProperty( TextField::Property::PLACEHOLDER_TEXT_FOCUSED, "Enter folder name." );
+    field.SetProperty( TextField::Property::DECORATION_BOUNDING_BOX, Rect<int>( BORDER_WIDTH, BORDER_WIDTH, stageSize.width - BORDER_WIDTH*2, stageSize.height - BORDER_WIDTH*2 ) );
+
+    return field;
+  }
+
+  Popup CreatePopup()
+  {
+    Popup popup = Popup::New();
+    popup.SetParentOrigin( ParentOrigin::CENTER );
+    popup.SetAnchorPoint( AnchorPoint::CENTER );
+    popup.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::WIDTH );
+    popup.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+    popup.TouchSignal().Connect( this, &TextFieldExample::OnPopupTouched );
+
+    return popup;
+  }
+
+  void OnPopupOutsideTouched()
+  {
+    // Update the folder text
+    if( mButton && mField )
+    {
+      Property::Value text = mField.GetProperty( TextField::Property::TEXT );
+      mButtonLabel = text.Get< std::string >();
+      mButton.SetProperty( Toolkit::Button::Property::LABEL, mButtonLabel );
+    }
+
+    // Hide & discard the pop-up
+    if( mPopup )
+    {
+      mPopup.SetDisplayState( Popup::HIDDEN );
+    }
+    mField.Reset();
+  }
+
+  bool OnPopupTouched( Actor actor, const TouchData& event )
+  {
+    // End edit mode for TextField if parent Popup touched.
+    if(event.GetPointCount() > 0)
+    {
+      switch( event.GetState( 0 ) )
+      {
+        case PointState::DOWN:
+        {
+          // Update the folder text and lose focus for Key events
+          if( mButton && mField )
+          {
+            Property::Value text = mField.GetProperty( TextField::Property::TEXT );
+            mButtonLabel = text.Get< std::string >();
+            mButton.SetProperty( Toolkit::Button::Property::LABEL, mButtonLabel );
+            mField.ClearKeyInputFocus();
+          }
+          break;
+        }
+        default:
+        {
+          break;
+        }
+      } // end switch
+    }
+
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+
+  // This button launches a pop-up containing TextField
+  PushButton mButton;
+  std::string mButtonLabel;
+
+  // Pop-up contents
+  TextField mField;
+  Popup mPopup;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  // DALI_DEMO_THEME_PATH not passed to Application so TextField example uses default Toolkit style sheet.
+  Application application = Application::New( &argc, &argv );
+  TextFieldExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/text-fonts/text-fonts-example.cpp b/examples/text-fonts/text-fonts-example.cpp
new file mode 100644 (file)
index 0000000..cd20814
--- /dev/null
@@ -0,0 +1,256 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file text-fonts-example.cpp
+ * @brief Example of various TextLabel each with different font set ups,
+ *        enables Testing of Font when the system font changes.
+          The first label is free, with no font family set, it could use the default system font and change as it changes.
+          The second label has it's font family set via the demo json file. It should not change when the system font changes.
+          The third label has it's font family set in code via SetProperty. It also should not change when the system font changes.
+          The forth label is not shown until the button along the bottom is pressed, it has no font set so the newly created label should use the system font,
+          Pressing the button again resets and unparents that button and then re-adds it.
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <iostream>
+
+// INTERNAL INCLUDES
+#include "shared/multi-language-strings.h"
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace MultiLanguageStrings;
+
+namespace
+{
+  const char* const LABEL_TEXT = "A Quick Fox";
+  const char* const LABEL_TEXT_MIXED = "Fox 구미호";
+  const char* const LABEL_TEXT_KOREAN = "구미호";
+}
+
+/**
+ * @brief The main class of the demo.
+ */
+class TextFontsExample : public ConnectionTracker
+{
+public:
+
+  TextFontsExample( Application& application )
+  : mApplication( application ),
+    mToggle(true)
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextFontsExample::Create );
+  }
+
+  ~TextFontsExample()
+  {
+    // Nothing to do here.
+  }
+
+  void CreateTextLabel( TextLabel& textLabel, std::string textString, const Vector4& color, bool infoLabel=false )
+  {
+    textLabel = TextLabel::New( textString );
+    textLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    textLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    textLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+    textLabel.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    if ( infoLabel )
+    {
+      textLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+      textLabel.SetProperty( TextLabel::Property::POINT_SIZE, 12.0f );
+      textLabel.SetProperty( TextLabel::Property::FONT_FAMILY, "SamsungOneUI" );
+    }
+    else
+    {
+      Property::Map shadowMap;
+      shadowMap.Insert( "color", Color::BLACK );
+      shadowMap.Insert( "offset", Vector2( 0.3f, 0.3f ) );
+      textLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+      textLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLUE );
+    }
+    textLabel.SetBackgroundColor( color );
+  }
+
+  void CreateContainer( Control& container, const Vector2 size )
+  {
+    container = Control::New();
+    container.SetSize( size );
+    container.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    container.SetDrawMode( DrawMode::OVERLAY_2D );
+  }
+
+  void CreateFolderButton( PushButton& button )
+  {
+    button = PushButton::New();
+    button.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    button.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    button.SetSize( 50.0f, 50.0f );
+  }
+
+  bool OnButtonClicked( Toolkit::Button button )
+  {
+    if ( mLabel4 )
+    {
+      UnparentAndReset( mLabel4 );
+    }
+
+    if ( !mContainer4 )
+    {
+      CreateContainer ( mContainer4 , mLayoutSize);
+      Stage stage = Stage::GetCurrent();
+      Vector2 stageSize = stage.GetSize();
+      mContainer4.SetPosition( 0, stageSize.height*0.25f*3 );
+      stage.Add( mContainer4 );
+      // Info
+      CreateContainer ( mContainer4Info , mLayoutSize );
+      mContainer4Info.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+      mContainer4.Add( mContainer4Info );
+      CreateTextLabel ( mLabel4Info, "system free", Color::BLACK, true  );
+      mContainer4Info.Add ( mLabel4Info );
+    }
+
+    if ( mToggle )
+    {
+      CreateTextLabel ( mLabel4, LABEL_TEXT_KOREAN, Color::WHITE );
+      mToggle = false;
+    }
+    else
+    {
+      CreateTextLabel ( mLabel4, LABEL_TEXT_MIXED, Color::WHITE );
+      mToggle = true;
+    }
+
+    mContainer4.Add( mLabel4 );
+
+    return true;
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    stage.KeyEventSignal().Connect(this, &TextFontsExample::OnKeyEvent);
+
+    CreateFolderButton ( mButton );
+    mButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mButton.ClickedSignal().Connect( this, &TextFontsExample::OnButtonClicked );
+    stage.Add( mButton );
+
+    mLayoutSize = Vector2( stageSize.width*0.5f, stageSize.height*0.10f );
+    CreateContainer ( mContainer , mLayoutSize);
+    CreateContainer ( mContainer2 , mLayoutSize );
+    CreateContainer ( mContainer3 , mLayoutSize );
+
+    // Info about Text Label and if font should be fixed or free to change with system
+    CreateContainer ( mContainerInfo , mLayoutSize );
+    CreateContainer ( mContainer2Info , mLayoutSize );
+    CreateContainer ( mContainer3Info , mLayoutSize );
+    mContainerInfo.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    mContainer2Info.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    mContainer3Info.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    mContainer.Add( mContainerInfo );
+    mContainer2.Add( mContainer2Info );
+    mContainer3.Add( mContainer3Info );
+    CreateTextLabel ( mLabelInfo, "system free", Color::BLACK, true  );
+    CreateTextLabel ( mLabel2Info, "json fixed", Color::BLACK, true  );
+    CreateTextLabel ( mLabel3Info, "SetProp fixed", Color::BLACK, true  );
+    mContainerInfo.Add( mLabelInfo );
+    mContainer2Info.Add( mLabel2Info );
+    mContainer3Info.Add( mLabel3Info );
+
+    stage.Add( mContainer );
+    stage.Add( mContainer2 );
+    stage.Add( mContainer3 );
+
+    CreateTextLabel ( mLabel, LABEL_TEXT, Color::WHITE  );
+
+    CreateTextLabel ( mLabel2, LABEL_TEXT, Color::WHITE  );
+    mLabel2.SetStyleName("TextLabelRosemary");
+
+    CreateTextLabel ( mLabel3, LABEL_TEXT, Color::WHITE  );
+    mLabel3.SetProperty( TextLabel::Property::FONT_FAMILY, "SamsungOneUI" );
+
+    mContainer.SetPosition( 0, 0 );
+    mContainer2.SetPosition( 0, stageSize.height*0.25f );
+    mContainer3.SetPosition( 0, stageSize.height*0.25f*2 );
+
+    mContainer.Add( mLabel );
+    mContainer2.Add( mLabel2 );
+    mContainer3.Add( mLabel3 );
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+
+  PushButton mButton;
+
+  TextLabel mLabel;
+  TextLabel mLabel2;
+  TextLabel mLabel3;
+
+  TextLabel mLabel4;
+
+  Control mContainer;
+  Control mContainer2;
+  Control mContainer3;
+  Control mContainer4;
+
+  Control mContainerInfo;
+  Control mContainer2Info;
+  Control mContainer3Info;
+  Control mContainer4Info;
+
+  TextLabel mLabelInfo;
+  TextLabel mLabel2Info;
+  TextLabel mLabel3Info;
+  TextLabel mLabel4Info;
+
+  Vector2 mLayoutSize;
+
+  bool mToggle;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  TextFontsExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/text-label-emojis/emoji-strings.h b/examples/text-label-emojis/emoji-strings.h
new file mode 100644 (file)
index 0000000..99822a8
--- /dev/null
@@ -0,0 +1,103 @@
+#ifndef DALI_DEMO_EMOJI_STRINGS_H
+#define DALI_DEMO_EMOJI_STRINGS_H
+
+/*
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <string>
+
+namespace EmojiStrings
+{
+  struct Emoji
+  {
+    uint32_t mUnicode;
+    std::string mUTF8;
+    std::string mDescription;
+  };
+
+  const Emoji EMOJIS[] = {
+
+    { 0x1F601,"\xF0\x9F\x98\x81","grinning face with smiling eyes" },
+    { 0x1F602,"\xF0\x9F\x98\x82","face with tears of joy" },
+    //{ 0x1F603,"\xF0\x9F\x98\x83","smiling face with open mouth" },
+    //{ 0x1F604,"\xF0\x9F\x98\x84","smiling face with open mouth and smiling eyes" },
+    { 0x1F605,"\xF0\x9F\x98\x85","smiling face with open mouth and cold sweat" },
+    //{ 0x1F606,"\xF0\x9F\x98\x86","smiling face with open mouth and tightly-closed eyes" },
+    { 0x1F609,"\xF0\x9F\x98\x89","winking face" },
+    { 0x1F60A,"\xF0\x9F\x98\x8A","smiling face with smiling eyes" },
+    { 0x1F60B,"\xF0\x9F\x98\x8B","face savouring delicious food" },
+    { 0x1F60C,"\xF0\x9F\x98\x8C","relieved face" },
+    { 0x1F60D,"\xF0\x9F\x98\x8D","smiling face with heart-shaped eyes" },
+    { 0x1F60F,"\xF0\x9F\x98\x8F","smirking face" },
+    //{ 0x1F612,"\xF0\x9F\x98\x92","unamused face" },
+    //{ 0x1F613,"\xF0\x9F\x98\x93","face with cold sweat" },
+    //{ 0x1F614,"\xF0\x9F\x98\x94","pensive face" },
+    //{ 0x1F616,"\xF0\x9F\x98\x96","confounded face" },
+    { 0x1F618,"\xF0\x9F\x98\x98","face throwing a kiss" },
+    { 0x1F61A,"\xF0\x9F\x98\x9A","kissing face with closed eyes" },
+    //{ 0x1F61C,"\xF0\x9F\x98\x9C","face with stuck-out tongue and winking eye" },
+    //{ 0x1F61D,"\xF0\x9F\x98\x9D","face with stuck-out tongue and tightly-closed eyes" },
+    //{ 0x1F61E,"\xF0\x9F\x98\x9E","disappointed face" },
+    { 0x1F620,"\xF0\x9F\x98\xA0","angry face" },
+
+    /*
+    { "POUTING FACE",
+    { "CRYING FACE",
+    { "PERSEVERING FACE",
+    { "FACE WITH LOOK OF TRIUMPH",
+    { "DISAPPOINTED BUT RELIEVED FACE",
+    { "FEARFUL FACE",
+    { "WEARY FACE",
+    { "SLEEPY FACE",
+    { "TIRED FACE",
+    { "LOUDLY CRYING FACE",
+    { "FACE WITH OPEN MOUTH AND COLD SWEAT",
+    { "FACE SCREAMING IN FEAR",
+    { "ASTONISHED FACE",
+    { "FLUSHED FACE",
+    { "DIZZY FACE",
+    { "FACE WITH MEDICAL MASK",
+    { "GRINNING CAT FACE WITH SMILING EYES",
+    { "CAT FACE WITH TEARS OF JOY",
+    { "SMILING CAT FACE WITH OPEN MOUTH",
+    { "SMILING CAT FACE WITH HEART-SHAPED EYES",
+    { "CAT FACE WITH WRY SMILE",
+    { "KISSING CAT FACE WITH CLOSED EYES",
+    { "POUTING CAT FACE",
+    { "CRYING CAT FACE",
+    { "WEARY CAT FACE",
+    { "FACE WITH NO GOOD GESTURE",
+    { "FACE WITH OK GESTURE",
+    { "PERSON BOWING DEEPLY",
+    { "SEE-NO-EVIL MONKEY",
+    { "HEAR-NO-EVIL MONKEY",
+    { "SPEAK-NO-EVIL MONKEY",
+    { "HAPPY PERSON RAISING ONE HAND",
+    { "PERSON RAISING BOTH HANDS IN CELEBRATION",
+    { "PERSON FROWNING",
+    { "PERSON WITH POUTING FACE",
+    { "PERSON WITH FOLDED HANDS",
+  */
+
+  };
+
+  const unsigned int NUMBER_OF_EMOJIS = 12;
+
+} // EmojiStrings
+
+#endif // DALI_DEMO_EMOJI_STRINGS_H
diff --git a/examples/text-label-emojis/text-label-emojis.cpp b/examples/text-label-emojis/text-label-emojis.cpp
new file mode 100644 (file)
index 0000000..c98e206
--- /dev/null
@@ -0,0 +1,141 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+#include <iostream>
+
+// INTERNAL INCLUDES
+#include "emoji-strings.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace EmojiStrings;
+
+ // TODO Need to expose Text::RENDER.....
+const int ATLAS_RENDERER = 0;
+
+// This example shows how to create and display Hello World! using a simple TextActor
+//
+class EmojiExample : public ConnectionTracker
+{
+public:
+
+  typedef uint32_t SizeType;
+
+  EmojiExample( Application& application )
+  : mApplication( application ),
+    mLastPoint( 0.0f )
+  {
+    std::cout << "EmoticonController::EmoticonController" << std::endl;
+
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &EmojiExample::Create );
+  }
+
+  ~EmojiExample()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+    stage.KeyEventSignal().Connect(this, &EmojiExample::OnKeyEvent);
+
+    mTableView = Toolkit::TableView::New( NUMBER_OF_EMOJIS, 1 );
+    mTableView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mTableView.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mTableView.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mTableView.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mTableView.TouchSignal().Connect( this, &EmojiExample::OnTouch );
+    stage.Add( mTableView );
+
+    for( unsigned int index = 0u; index < NUMBER_OF_EMOJIS; ++index )
+    {
+      const Emoji& emoji = EMOJIS[index];
+      const std::string text = emoji.mUTF8 + " " + emoji.mDescription;
+
+      TextLabel label = TextLabel::New( text );
+      label.SetParentOrigin( ParentOrigin::TOP_CENTER );
+      label.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+      label.SetProperty( TextLabel::Property::MULTI_LINE, true );
+
+      mTableView.SetFitHeight( index );
+      mTableView.AddChild( label, Toolkit::TableView::CellPosition( index, 0 ) );
+    }
+  }
+
+  bool OnTouch( Actor actor, const TouchData& event )
+  {
+    if( 1u == event.GetPointCount() )
+    {
+      const PointState::Type state = event.GetState( 0 );
+
+      // Clamp to integer values; this is to reduce flicking due to pixel misalignment
+      const float localPoint = static_cast<float>( static_cast<int>( event.GetLocalPosition( 0 ).y ) );
+
+      if( PointState::DOWN == state )
+      {
+        mLastPoint = localPoint;
+        mAnimation = Animation::New( 0.25f );
+      }
+      else if( PointState::MOTION == state )
+      {
+        if( mAnimation )
+        {
+          mAnimation.AnimateBy( Property(mTableView, Actor::Property::POSITION), Vector3( 0.f, localPoint - mLastPoint, 0.f ), AlphaFunction::LINEAR );
+          mAnimation.Play();
+          mLastPoint = localPoint;
+        }
+      }
+    }
+
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+
+private:
+  Application&  mApplication;
+  TableView      mTableView;
+  Animation      mAnimation;
+  float          mLastPoint;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  EmojiExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/text-label-multi-language/text-label-multi-language-example.cpp b/examples/text-label-multi-language/text-label-multi-language-example.cpp
new file mode 100644 (file)
index 0000000..ba54b57
--- /dev/null
@@ -0,0 +1,143 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file text-label-example.cpp
+ * @brief Basic usage of TextLabel control
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "shared/multi-language-strings.h"
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace MultiLanguageStrings;
+
+/**
+ * @brief The main class of the demo.
+ */
+class TextLabelMultiLanguageExample : public ConnectionTracker
+{
+public:
+
+  TextLabelMultiLanguageExample( Application& application )
+  : mApplication( application ),
+    mLastPoint( 0.f )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextLabelMultiLanguageExample::Create );
+  }
+
+  ~TextLabelMultiLanguageExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    stage.KeyEventSignal().Connect(this, &TextLabelMultiLanguageExample::OnKeyEvent);
+    stage.SetBackgroundColor( Color::WHITE );
+
+    mTableView = Toolkit::TableView::New( NUMBER_OF_LANGUAGES, 1 );
+    mTableView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mTableView.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mTableView.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mTableView.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mTableView.TouchSignal().Connect( this, &TextLabelMultiLanguageExample::OnTouch );
+    stage.Add( mTableView );
+
+    for( unsigned int index = 0u; index < NUMBER_OF_LANGUAGES; ++index )
+    {
+      const Language& language = LANGUAGES[index];
+
+      TextLabel label = TextLabel::New();
+      label.SetProperty( TextLabel::Property::MULTI_LINE, true );
+
+      const std::string text = language.languageName + " " + language.languageRomanName + " " + language.text;
+      label.SetProperty( TextLabel::Property::TEXT, text );
+
+      mTableView.SetFitHeight( index );
+      mTableView.AddChild( label, Toolkit::TableView::CellPosition( index, 0 ) );
+    }
+  }
+
+  bool OnTouch( Actor actor, const TouchData& event )
+  {
+    if( 1u == event.GetPointCount() )
+    {
+      const PointState::Type state = event.GetState( 0 );
+
+      // Clamp to integer values; this is to reduce flicking due to pixel misalignment
+      const float localPoint = static_cast<float>( static_cast<int>( event.GetLocalPosition( 0 ).y ) );
+
+      if( PointState::DOWN == state )
+      {
+        mLastPoint = localPoint;
+        mAnimation = Animation::New( 0.25f );
+      }
+      else if( PointState::MOTION == state )
+      {
+        if( mAnimation )
+        {
+          mAnimation.AnimateBy( Property(mTableView, Actor::Property::POSITION), Vector3( 0.f, localPoint - mLastPoint, 0.f ), AlphaFunction::LINEAR );
+          mAnimation.Play();
+          mLastPoint = localPoint;
+        }
+      }
+    }
+
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&   mApplication;
+  TableView      mTableView;
+  Animation      mAnimation;
+  float          mLastPoint;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  TextLabelMultiLanguageExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/text-label/expanding-buttons-impl.cpp b/examples/text-label/expanding-buttons-impl.cpp
new file mode 100644 (file)
index 0000000..ee2f87f
--- /dev/null
@@ -0,0 +1,177 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali/public-api/animation/animation.h>
+
+#include "expanding-buttons-impl.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+namespace Internal
+{
+
+namespace
+{
+
+const unsigned int GAP_BETWEEN_BUTTONS = 3;
+
+const char* const STYLES_IMAGE = DEMO_IMAGE_DIR "FontStyleButton_Main.png";
+const char* const TICK_IMAGE_IMAGE = DEMO_IMAGE_DIR "FontStyleButton_OK_02.png";
+
+/**
+ * Unparent the given number of registered controls from the supplied Vector of controls.
+ */
+void ResetControls( std::vector< WeakHandle< Control > > controls, unsigned int numberOfButtons )
+{
+  for( unsigned int index = 0; index < numberOfButtons; index++)
+  {
+    Dali::Toolkit::Control control = controls[index].GetHandle();
+    UnparentAndReset( control );
+  }
+}
+
+} // anonymous namespace
+
+
+Internal::ExpandingButtons::ExpandingButtons()
+: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ),
+  mStyleButtonsHidden( false )
+{
+}
+
+Internal::ExpandingButtons::~ExpandingButtons()
+{
+}
+
+Demo::ExpandingButtons Internal::ExpandingButtons::New()
+{
+  IntrusivePtr<Internal::ExpandingButtons> impl = new Internal::ExpandingButtons();
+  Demo::ExpandingButtons handle = Demo::ExpandingButtons( *impl );
+  impl->Initialize();
+  return handle;
+}
+
+void ExpandingButtons::OnInitialize()
+{
+  mExpandButton = PushButton::New();
+
+  mExpandButton.ClickedSignal().Connect( this, &ExpandingButtons::OnExpandButtonClicked );
+  mExpandButton.SetProperty( Button::Property::TOGGLABLE, true );
+  mExpandButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, STYLES_IMAGE ); // Default for Styles
+  mExpandButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, TICK_IMAGE_IMAGE );
+  mExpandButton.SetProperty( Dali::Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT );
+  Self().Add( mExpandButton );
+}
+
+void ExpandingButtons::OnRelayout( const Dali::Vector2& targetSize, Dali::RelayoutContainer& container )
+{
+  mButtonSize = targetSize;
+  mExpandButton.SetSize( targetSize );
+}
+
+void ExpandingButtons::RegisterButton( Dali::Toolkit::Control& control )
+{
+  mExpandingControls.push_back( control );
+}
+
+void ExpandingButtons::Expand()
+{
+  if ( !mExpandCollapseAnimation )
+  {
+    mExpandCollapseAnimation = Animation::New( 0.2f );
+    mExpandCollapseAnimation.FinishedSignal().Connect( this, &ExpandingButtons::OnExpandAnimationFinished );
+  }
+
+  unsigned int numberOfControls = mExpandingControls.size();
+
+  for( unsigned int index = 0; index < numberOfControls; index++ )
+  {
+    Dali::Toolkit::Control control = mExpandingControls[index].GetHandle();
+    if ( control )
+    {
+      Self().Add( control );
+      AlphaFunction focusedAlphaFunction = AlphaFunction( Vector2 ( 0.32f, 0.08f ), Vector2( 0.38f, 1.72f ) );
+      mExpandCollapseAnimation.AnimateTo( Property( control, Actor::Property::POSITION_X ), mButtonSize.width + ( mButtonSize.width + GAP_BETWEEN_BUTTONS ) * (index) , focusedAlphaFunction );
+    }
+  }
+  Self().RaiseToTop();
+  mStyleButtonsHidden = false;
+  mExpandCollapseAnimation.Play();
+}
+
+void ExpandingButtons::OnExpandAnimationFinished( Animation& animation )
+{
+  if ( mStyleButtonsHidden )
+  {
+    unsigned int numberOfControls = mExpandingControls.size();
+    ResetControls( mExpandingControls, numberOfControls );
+    animation.Clear();
+    animation.Reset();
+  }
+}
+
+void ExpandingButtons::Collapse()
+{
+  Demo::ExpandingButtons handle( GetOwner() );
+  mCollapsedSignal.Emit( handle );
+
+  mStyleButtonsHidden = true;
+  mExpandButton.SetProperty(Button::Property::SELECTED, false );
+
+  if ( mExpandCollapseAnimation )
+  {
+    unsigned int numberOfControls = mExpandingControls.size();
+
+    for ( unsigned int index = 0; index < numberOfControls; index++ )
+    {
+      Dali::Toolkit::Control control = mExpandingControls[index].GetHandle();
+      if ( control )
+      {
+        mExpandCollapseAnimation.AnimateTo( Property( control, Actor::Property::POSITION_X ), 0.0f );
+      }
+    }
+    mExpandCollapseAnimation.Play();
+  }
+}
+
+// Hide or show (expand) buttons if expand button pressed
+bool ExpandingButtons::OnExpandButtonClicked( Toolkit::Button button )
+{
+  if ( button.GetProperty( Toolkit::Button::Property::SELECTED ).Get<bool>() )
+  {
+    Expand();
+  }
+  else
+  {
+    Collapse();
+  }
+
+  return true;
+}
+
+
+Demo::ExpandingButtons::ExpandingButtonsSignalType& ExpandingButtons::CollapsingSignal()
+{
+  return mCollapsedSignal;
+}
+
+} // Internal
+} // Demo
diff --git a/examples/text-label/expanding-buttons-impl.h b/examples/text-label/expanding-buttons-impl.h
new file mode 100644 (file)
index 0000000..a432914
--- /dev/null
@@ -0,0 +1,124 @@
+#ifndef DALI_DEMO_INTERNAL_EXPANDING_BUTTONS_IMPL_H
+#define DALI_DEMO_INTERNAL_EXPANDING_BUTTONS_IMPL_H
+
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "expanding-buttons.h"
+#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali/public-api/object/weak-handle.h>
+
+namespace Demo
+{
+
+namespace Internal // To use TypeRegistry, handle and body classes need the same name
+{
+
+class ExpandingButtons : public Dali::Toolkit::Internal::Control
+{
+public:
+
+  /**
+   * Instantiate a new ExpandingButtons object
+   */
+  static Demo::ExpandingButtons New();
+
+  /**
+   * Constructor
+   */
+  ExpandingButtons();
+
+  /**
+   * Destructor
+   */
+  ~ExpandingButtons();
+
+public: // API
+
+  void RegisterButton( Dali::Toolkit::Control& control );
+
+  void Expand();
+
+  void Collapse();
+
+public: // Signals
+
+  Demo::ExpandingButtons::ExpandingButtonsSignalType& CollapsingSignal();
+
+private: // From Control
+
+  /**
+   * @copydoc Toolkit::Control::OnInitialize()
+   */
+  virtual void OnInitialize() override;
+
+  /**
+   * @copydoc Toolkit::Control::OnRelayout()
+   */
+  virtual void OnRelayout( const Dali::Vector2& targetSize, Dali::RelayoutContainer& container ) override;
+
+private:
+
+  /**
+   * Callback when expand or collapse animation ends.
+   */
+  void OnExpandAnimationFinished( Dali::Animation& animation );
+
+  /**
+   * Called when the main button clicked.
+   */
+  bool OnExpandButtonClicked( Dali::Toolkit::Button button );
+
+
+private:
+  //undefined
+  ExpandingButtons( const ExpandingButtons& );
+  ExpandingButtons& operator=( const ExpandingButtons& );
+
+private:
+
+  std::vector< Dali::WeakHandle< Dali::Toolkit::Control> > mExpandingControls;
+
+  Dali::Animation mExpandCollapseAnimation;
+
+  bool mStyleButtonsHidden;
+
+  Dali::Size mButtonSize; // Size of the buttons, used in animation calculations.
+
+  Dali::Toolkit::PushButton mExpandButton; // Main button that is clicked to expand/collapse.
+
+  Demo::ExpandingButtons::ExpandingButtonsSignalType mCollapsedSignal;
+};
+
+} // Internal
+
+inline Internal::ExpandingButtons& GetImpl( Demo::ExpandingButtons& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<Internal::ExpandingButtons&>(object);
+}
+
+inline const Internal::ExpandingButtons& GetImpl( const Demo::ExpandingButtons& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  const Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<const Internal::ExpandingButtons&>(object);
+}
+
+} // Demo
+
+#endif //  DALI_DEMO_INTERNAL_EXPANDING_BUTTONS_IMPL_H
diff --git a/examples/text-label/expanding-buttons.cpp b/examples/text-label/expanding-buttons.cpp
new file mode 100644 (file)
index 0000000..d733182
--- /dev/null
@@ -0,0 +1,87 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "expanding-buttons-impl.h"
+#include "expanding-buttons.h"
+
+namespace Demo
+{
+
+ExpandingButtons::ExpandingButtons()
+{
+}
+
+ExpandingButtons::ExpandingButtons( const ExpandingButtons& expandingButtons )
+: Control( expandingButtons )
+{
+}
+
+ExpandingButtons& ExpandingButtons::operator= ( const ExpandingButtons& rhs )
+{
+  if( &rhs != this )
+  {
+    Control::operator=( rhs );
+  }
+  return *this;
+}
+
+ExpandingButtons::~ExpandingButtons()
+{
+}
+
+ExpandingButtons ExpandingButtons::New()
+{
+  ExpandingButtons expandingButtons = Internal::ExpandingButtons::New();
+  return expandingButtons;
+}
+
+ExpandingButtons ExpandingButtons::DownCast( BaseHandle handle )
+{
+  return Control::DownCast< ExpandingButtons, Internal::ExpandingButtons > ( handle );
+}
+
+void ExpandingButtons::RegisterButton( Control& control )
+{
+  GetImpl(*this).RegisterButton( control );
+}
+
+void ExpandingButtons::Expand()
+{
+  GetImpl(*this).Expand();
+}
+void ExpandingButtons::Collapse()
+{
+  GetImpl(*this).Collapse();
+}
+
+Demo::ExpandingButtons::ExpandingButtonsSignalType& ExpandingButtons::CollapsingSignal()
+{
+  return GetImpl(*this).CollapsingSignal();
+}
+
+ExpandingButtons::ExpandingButtons( Internal::ExpandingButtons& implementation )
+: Control( implementation )
+{
+}
+
+ExpandingButtons::ExpandingButtons( Dali::Internal::CustomActor* internal )
+: Control( internal )
+{
+  VerifyCustomActorPointer< Internal::ExpandingButtons >( internal ) ;
+}
+
+
+} //namespace Demo
diff --git a/examples/text-label/expanding-buttons.h b/examples/text-label/expanding-buttons.h
new file mode 100644 (file)
index 0000000..1ccede8
--- /dev/null
@@ -0,0 +1,114 @@
+#ifndef DALI_DEMO_EXPANDING_BUTTONS_CONTROL_H
+#define DALI_DEMO_EXPANDING_BUTTONS_CONTROL_H
+
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+
+namespace Demo
+{
+
+namespace Internal
+{
+class ExpandingButtons;
+}
+
+/**
+ * Control which toggles between showing and hiding a set of buttons.
+ */
+class ExpandingButtons : public Dali::Toolkit::Control
+{
+
+
+public: // Construction / destruction
+
+  /**
+   * Create an uninitialized handle
+   */
+  ExpandingButtons();
+
+  /**
+   * Create an ExpandingButton control with the default pressed and released visual.
+   */
+  static ExpandingButtons New();
+
+  /**
+   * Destructor. This is non-virtual since derived Handle types must not
+   * contain data or virtual methods
+   */
+  ~ExpandingButtons();
+
+  /**
+   * Copy Constructor
+   */
+  ExpandingButtons( const ExpandingButtons& expandingButtons );
+
+  /**
+   * Assignment Operator
+   */
+  ExpandingButtons& operator=( const ExpandingButtons& expandingButtons );
+
+  /**
+   * Downcast
+   */
+  static ExpandingButtons DownCast( BaseHandle handle );
+
+public: // API
+
+  /**
+   * Add a control (button) to the Expanding button bar. Will be displayed in order of addition.
+   */
+  void RegisterButton( Control& control );
+
+  /**
+   * Expand the registered buttons out from the main button.
+   */
+  void Expand();
+
+  /**
+   * Collapse the expanded buttons back behind the main button.
+   */
+  void Collapse();
+
+public: // Signals
+
+  /**
+   * ExpandingButtons signal type
+   */
+   typedef Dali::Signal< bool ( ExpandingButtons ) > ExpandingButtonsSignalType;
+
+  /**
+   * This signal is emitted when the button is going to collapse.
+   */
+  ExpandingButtonsSignalType& CollapsingSignal();
+
+public: // Not for public use
+
+  /**
+   * Create a handle from an implementation
+   */
+  ExpandingButtons( Internal::ExpandingButtons& implementation );
+
+  /**
+   * Allow the creation of an ExpandingButtons handle from an internal CustomActor pointer
+   */
+  ExpandingButtons( Dali::Internal::CustomActor* internal );
+};
+
+} // namespace Demo
+
+#endif // DALI_DEMO_EXPANDING_BUTTONS_CONTROL_H
diff --git a/examples/text-label/text-label-example.cpp b/examples/text-label/text-label-example.cpp
new file mode 100644 (file)
index 0000000..8fd1668
--- /dev/null
@@ -0,0 +1,797 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file text-label-example.cpp
+ * @brief Usage of TextLabel control with style application.
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/devel-api/object/handle-devel.h>
+#include <dali/devel-api/actors/actor-devel.h>
+#include <dali-toolkit/devel-api/controls/text-controls/text-label-devel.h>
+#include <dali-toolkit/devel-api/text/text-enumerations-devel.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <iostream>
+
+// INTERNAL INCLUDES
+#include "shared/multi-language-strings.h"
+#include "shared/view.h"
+#include "expanding-buttons.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+using namespace MultiLanguageStrings;
+
+namespace
+{
+const char* const BACKGROUND_IMAGE = DEMO_IMAGE_DIR "grab-handle.png";
+const char* const STYLE_SELECTED_IMAGE = DEMO_IMAGE_DIR "FontStyleButton_OK_03.png";
+
+const char* BUTTON_IMAGES[] =
+{
+  DEMO_IMAGE_DIR "FontStyleButton_Colour.png",
+  DEMO_IMAGE_DIR "FontStyleButton_Outline.png",
+  DEMO_IMAGE_DIR "FontStyleButton_Shadow.png",
+  DEMO_IMAGE_DIR "FontStyleButton_Background.png"
+};
+
+const unsigned int KEY_ZERO = 10;
+const unsigned int KEY_ONE = 11;
+const unsigned int KEY_A = 38;
+const unsigned int KEY_F = 41;
+const unsigned int KEY_H = 43;
+const unsigned int KEY_U = 30;
+const unsigned int KEY_V = 55;
+const unsigned int KEY_M = 58;
+const unsigned int KEY_L = 46;
+const unsigned int KEY_S = 39;
+const unsigned int KEY_PLUS = 21;
+const unsigned int KEY_MINUS = 20;
+
+const char* H_ALIGNMENT_STRING_TABLE[] =
+{
+  "BEGIN",
+  "CENTER",
+  "END"
+};
+
+const unsigned int H_ALIGNMENT_STRING_COUNT = sizeof( H_ALIGNMENT_STRING_TABLE ) / sizeof( H_ALIGNMENT_STRING_TABLE[0u] );
+
+const char* V_ALIGNMENT_STRING_TABLE[] =
+{
+  "TOP",
+  "CENTER",
+  "BOTTOM"
+};
+
+const unsigned int V_ALIGNMENT_STRING_COUNT = sizeof( V_ALIGNMENT_STRING_TABLE ) / sizeof( V_ALIGNMENT_STRING_TABLE[0u] );
+
+enum StyleType
+{
+  TEXT_COLOR = 0,
+  OUTLINE,
+  SHADOW,
+  BACKGROUND,
+  NUMBER_OF_STYLES
+};
+
+const Vector4 AVAILABLE_COLORS[] =
+{
+  Color::GREEN,
+  Color::BLUE,
+  Color::RED,
+  Color::CYAN,
+  Color::WHITE // Used as clear
+};
+
+const unsigned int NUMBER_OF_COLORS = sizeof( AVAILABLE_COLORS ) / sizeof( AVAILABLE_COLORS[0u] );
+
+int ConvertToEven(int value)
+{
+  return (value % 2 == 0) ? value : (value + 1);
+}
+
+struct HSVColorConstraint
+{
+  HSVColorConstraint(float hue, float saturation, float value)
+  : hue(hue),
+    saturation(saturation),
+    value(value)
+  {
+  }
+
+  void operator()(Vector3& current, const PropertyInputContainer& inputs )
+  {
+    current = hsv2rgb(Vector3(inputs[0]->GetFloat(), saturation, value));
+  }
+
+  Vector3 hsv2rgb(Vector3 colorHSV)
+  {
+    float r=colorHSV.z*(1+colorHSV.y*(cos(colorHSV.x)-1));
+    float g=colorHSV.z*(1+colorHSV.y*(cos(colorHSV.x-2.09439)-1));
+    float b=colorHSV.z*(1+colorHSV.y*(cos(colorHSV.x+2.09439)-1));
+    return Vector3(r, g, b);
+  }
+  float hue;
+  float saturation;
+  float value;
+};
+
+const float STYLE_BUTTON_POSTION_RELATIVE_TO_STAGE = 0.9f;
+const float BUTTON_SIZE_RATIO_TO_STAGE = 0.1f;
+const float OUTLINE_WIDTH = 2.0f;
+const Vector2 SHADOW_OFFSET = Vector2( 2.0f, 2.0f );
+const int GAP_BETWEEN_BUTTONS = 3;
+
+
+} // anonymous namespace
+
+/**
+ * @brief The main class of the demo.
+ */
+class TextLabelExample : public ConnectionTracker
+{
+public:
+
+  TextLabelExample( Application& application )
+  : mApplication( application ),
+    mLabel(),
+    mSelectedColor(AVAILABLE_COLORS[0]),
+    mStyleActivatedForColor( NUMBER_OF_STYLES ),
+    mContainer(),
+    mGrabCorner(),
+    mBorder(),
+    mPanGestureDetector(),
+    mLayoutSize(),
+    mLanguageId( 0u ),
+    mAlignment( 0u ),
+    mHueAngleIndex( Property::INVALID_INDEX ),
+    mOverrideMixColorIndex( Property::INVALID_INDEX ),
+    mColorButtonsHidden( true ),
+    mCollapseColorsAndStyles( false )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextLabelExample::Create );
+
+    // Set Style flags to inactive
+    for ( unsigned int i = TEXT_COLOR; i < NUMBER_OF_STYLES; i++ )
+    {
+      mStyleActiveState[ i ] = false;
+      mCurrentStyleColor[i] = AVAILABLE_COLORS[ NUMBER_OF_COLORS - 1 ];
+    }
+  }
+
+  ~TextLabelExample()
+  {
+    // Nothing to do here.
+  }
+
+  // Clicking the expanding button shows the registered style buttons.
+  void SetUpExpandingStyleButtons( Vector2 position )
+  {
+    mExpandingButtons = Demo::ExpandingButtons::New();
+    mExpandingButtons.SetPosition( mButtonSize.width, mStageSize.height * STYLE_BUTTON_POSTION_RELATIVE_TO_STAGE );
+    mExpandingButtons.CollapsingSignal().Connect( this, &TextLabelExample::OnExpandingButtonCollapsing );
+    mExpandingButtons.SetSize( mButtonSize );
+    // Creates the buttons to be expanded
+    CreateStyleButtons();
+
+    // Register the created buttons with the ExpandingButtons.
+    for ( unsigned int index = 0; index < NUMBER_OF_STYLES; index++ )
+    {
+      mExpandingButtons.RegisterButton( mStyleButtons[index] );
+    }
+  }
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    stage.KeyEventSignal().Connect(this, &TextLabelExample::OnKeyEvent);
+    mStageSize = stage.GetSize();
+    mButtonSize = Size( mStageSize.height * 0.1, mStageSize.height * 0.1 ); // Button size 1/10 of stage height
+
+    mContainer = Control::New();
+    mContainer.SetName( "Container" );
+    mContainer.SetParentOrigin( ParentOrigin::CENTER );
+    mLayoutSize = Vector2(mStageSize.width*0.6f, mStageSize.width*0.6f);
+    mContainer.SetSize( mLayoutSize );
+    stage.Add( mContainer );
+
+    // Resize the center layout when the corner is grabbed
+    mGrabCorner = ImageView::New( BACKGROUND_IMAGE );
+    mGrabCorner.SetName( "GrabCorner" );
+    mGrabCorner.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    mGrabCorner.SetParentOrigin( ParentOrigin::BOTTOM_RIGHT );
+    mGrabCorner.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mContainer.Add( mGrabCorner );
+
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.Attach( mGrabCorner );
+    mPanGestureDetector.DetectedSignal().Connect( this, &TextLabelExample::OnPan );
+
+    mLabel = TextLabel::New( "\xF0\x9F\x98\x89 A Quick Brown Fox Jumps Over The Lazy Dog" );
+
+    mLabel.SetName( "TextLabel" );
+    mLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mLabel.SetSize(mLayoutSize);
+    mLabel.SetProperty( TextLabel::Property::MULTI_LINE, true );
+    mLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::GREEN );
+    mLabel.SetBackgroundColor( Color::WHITE );
+    mContainer.Add( mLabel );
+
+    // Clicking ExpandingButton shows the Registered Style buttons, clicking again hides them.
+    Vector2 expandingButtonPosition( mButtonSize.width, mStageSize.height * STYLE_BUTTON_POSTION_RELATIVE_TO_STAGE );
+    SetUpExpandingStyleButtons( expandingButtonPosition );
+    stage.Add( mExpandingButtons );
+
+    // Add a border for the container so you can see the container is being resized while grabbing the handle.
+    mBorder = Control::New();
+    mBorder.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mBorder.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mBorder.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+
+    Dali::Property::Map border;
+    border.Insert( Toolkit::Visual::Property::TYPE,  Visual::BORDER );
+    border.Insert( BorderVisual::Property::COLOR,  Color::WHITE );
+    border.Insert( BorderVisual::Property::SIZE,  3.f );
+    mBorder.SetProperty( Control::Property::BACKGROUND, border );
+    mContainer.Add( mBorder );
+    mBorder.SetVisible(false);
+    mGrabCorner.RaiseToTop();
+
+    mHueAngleIndex = mLabel.RegisterProperty( "hue", 0.0f );
+    Renderer bgRenderer = mLabel.GetRendererAt(0);
+    mOverrideMixColorIndex = DevelHandle::GetPropertyIndex( bgRenderer, ColorVisual::Property::MIX_COLOR );
+
+    Constraint constraint = Constraint::New<Vector3>( bgRenderer, mOverrideMixColorIndex, HSVColorConstraint(0.0f, 0.5f, 0.8f));
+    constraint.AddSource( Source( mLabel, mHueAngleIndex ) );
+    constraint.SetRemoveAction( Constraint::Discard );
+    constraint.Apply();
+
+    Animation anim = Animation::New(50.0f);
+    anim.AnimateTo(Property(mLabel, mHueAngleIndex), 6.28318f);
+    anim.SetLooping(true);
+    anim.Play();
+
+    mContainer.RaiseToTop();
+    mGrabCorner.RaiseToTop();
+
+    Property::Value labelText = mLabel.GetProperty( TextLabel::Property::TEXT );
+    std::cout << "Displaying text: \"" << labelText.Get< std::string >() << "\"" << std::endl;
+  }
+
+  // If the styling buttons should colapse (hide) then the color buttons should also hide.
+  bool OnExpandingButtonCollapsing( Demo::ExpandingButtons button )
+  {
+    mCollapseColorsAndStyles = true;
+    HideColorButtons();
+    return true;
+  }
+
+  // Get the style type from the given button
+  StyleType GetStyleTypeFromButton( Toolkit::Button button )
+  {
+    StyleType style = StyleType::TEXT_COLOR;
+
+    if( button == mStyleButtons[ StyleType::OUTLINE ] )
+    {
+      style = StyleType::OUTLINE;
+    }
+    else if( button == mStyleButtons[ StyleType::SHADOW ] )
+    {
+      style = StyleType::SHADOW;
+    }
+    else if( button == mStyleButtons[ StyleType::BACKGROUND ] )
+    {
+      style = StyleType::BACKGROUND;
+    }
+    return style;
+  }
+
+  // Style selected, show color buttons
+  bool OnStyleButtonClicked( Toolkit::Button button )
+  {
+    StyleType selectedStyle = GetStyleTypeFromButton( button );
+    if ( mStyleActivatedForColor == selectedStyle )
+    {
+      HideColorButtons();
+    }
+    else
+    {
+      ResetColorButtons( mColorButtons, NUMBER_OF_COLORS );
+      ShowColorButtons( selectedStyle);
+    }
+    return true;
+  }
+
+  // Set style to selected color
+  bool OnColorSelected( Toolkit::Button button )
+  {
+    for( unsigned int index = 0; index < NUMBER_OF_COLORS; index++)
+    {
+      if ( mColorButtons[index] == button )
+      {
+        mSelectedColor = AVAILABLE_COLORS[ index ];
+      }
+    }
+
+    switch ( mStyleActivatedForColor )
+    {
+      case TEXT_COLOR :
+      {
+        Animation animation = Animation::New( 1.f );
+        animation.AnimateTo( Property( mLabel, TextLabel::Property::TEXT_COLOR ), mSelectedColor, AlphaFunction::LINEAR );
+        mCurrentStyleColor[ TEXT_COLOR ] = mSelectedColor;
+        animation.Play();
+        break;
+      }
+      case OUTLINE :
+      {
+        Property::Map outlineMap;
+        float outlineWidth = OUTLINE_WIDTH;
+
+        if( mStyleActiveState[ OUTLINE ] )
+        {
+          outlineWidth = ( Color::WHITE == mSelectedColor ) ? 0.0f : OUTLINE_WIDTH ;  // toggles outline on/off
+        }
+        mStyleActiveState[ OUTLINE ] = ( outlineWidth > 0.0f ) ? true : false;
+
+        outlineMap["color"] = mSelectedColor;
+        outlineMap["width"] = outlineWidth;
+        mCurrentStyleColor[ OUTLINE ] = mSelectedColor;
+        mLabel.SetProperty( TextLabel::Property::OUTLINE, outlineMap );
+        break;
+      }
+      case SHADOW :
+      {
+        Vector2 shadowOffset( SHADOW_OFFSET ); // Will be set to zeros if color already set
+        Property::Value value = mLabel.GetProperty( TextLabel::Property::SHADOW );
+        Vector4 currentShadowColor;
+        value.Get( currentShadowColor );
+
+        if ( mStyleActiveState[ SHADOW ] )
+        {
+          // toggle shadow off ( zero offset ) if color is already set
+          shadowOffset = (  Color::WHITE == mSelectedColor ) ? Vector2::ZERO : Vector2( SHADOW_OFFSET );
+        }
+
+        mStyleActiveState[ SHADOW ] = ( shadowOffset == Vector2::ZERO ) ? false : true;
+        mCurrentStyleColor[ SHADOW ] = mSelectedColor;
+
+        Property::Map shadowMap;
+        shadowMap.Insert( "offset", shadowOffset );
+        shadowMap.Insert( "color", mSelectedColor );
+        mLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+
+        break;
+      }
+      case BACKGROUND :
+      {
+        Property::Map backgroundMap;
+        auto backgroundEnabled(true);
+
+        if( mStyleActiveState[ BACKGROUND ] )
+        {
+          backgroundEnabled = ( Color::WHITE != mSelectedColor );  // toggles background on/off
+        }
+        mStyleActiveState[ BACKGROUND ] = backgroundEnabled;
+
+        backgroundMap["color"] = mSelectedColor;
+        backgroundMap["enable"] = backgroundEnabled;
+        mCurrentStyleColor[ BACKGROUND ] = mSelectedColor;
+        mLabel.SetProperty( DevelTextLabel::Property::BACKGROUND, backgroundMap );
+
+        break;
+      }
+      default :
+        break;
+    }
+
+    return true;
+  }
+
+  // Set the inital color button that should be be selected.
+  // If the style already has a color set then that should be used
+  void SetInitialSelectedColorButton( StyleType styleButtonIndex )
+  {
+    Vector4 selectedColor = mCurrentStyleColor[ styleButtonIndex ];
+
+    for ( unsigned int i = 0; i < NUMBER_OF_COLORS; i++ )
+    {
+      if ( AVAILABLE_COLORS[i] == selectedColor )
+      {
+        if ( mColorButtons[i] )
+        {
+          mColorButtons[ i ].SetProperty( Toolkit::Button::Property::SELECTED, true );
+        }
+        break;
+      }
+    }
+  }
+
+  // Create a bar of color buttons that the user can select.
+  void ShowColorButtons( StyleType styleButtonIndex )
+  {
+    mCollapseColorsAndStyles = false; // Request to show colors so reset flag
+    mStyleActivatedForColor = styleButtonIndex;
+
+    for( unsigned int index = 0; index < NUMBER_OF_COLORS; index++)
+    {
+      if( !mColorButtonsAnimation )
+      {
+        mColorButtonsAnimation = Animation::New( 0.15f );
+        mColorButtonsAnimation.FinishedSignal().Connect( this, &TextLabelExample::OnColorButtonAnimationFinished );
+      }
+
+      // Create a color button
+      if ( ! mColorButtons[index] )
+      {
+        mColorButtons[index] = RadioButton::New();
+        mColorButtons[index].SetSize( mButtonSize );
+        mColorButtons[index].ClickedSignal().Connect( this, &TextLabelExample::OnColorSelected );
+        mColorButtons[index].SetProperty( Button::Property::TOGGLABLE, true );
+        Property::Map propertyMap;
+        propertyMap.Insert(Visual::Property::TYPE,  Visual::COLOR);
+        propertyMap.Insert(ColorVisual::Property::MIX_COLOR, AVAILABLE_COLORS[ index ]);
+        mColorButtons[index].SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, propertyMap );
+        mColorButtons[index].SetProperty( Toolkit::Button::Property::UNSELECTED_VISUAL, propertyMap );
+        mColorButtons[index].SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_CENTER );
+        mColorButtons[index].SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::BOTTOM_CENTER );
+
+
+        propertyMap.Insert(Visual::Property::TYPE,  Visual::COLOR);
+        propertyMap.Insert(ColorVisual::Property::MIX_COLOR, AVAILABLE_COLORS[ index ]);
+        mColorButtons[index].SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, propertyMap );
+
+        mColorButtons[index].SetProperty( Toolkit::Button::Property::SELECTED_VISUAL,
+                            Property::Map().Add( Visual::Property::TYPE, Visual::BORDER )
+                                           .Add( BorderVisual::Property::COLOR, Color::WHITE )
+                                           .Add( BorderVisual::Property::SIZE, 4.0f )
+                                           .Add( BorderVisual::Property::ANTI_ALIASING, true ) );
+
+        // Use a white button with 50% transparency as a clear color button
+        if ( Color::WHITE == AVAILABLE_COLORS[ index ] && styleButtonIndex != StyleType::TEXT_COLOR )
+        {
+          mColorButtons[index].SetOpacity(0.5f);
+
+          mColorButtons[index].SetProperty( Toolkit::Button::Property::LABEL,
+                                            Property::Map().Add( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT )
+                                                           .Add( Toolkit::TextVisual::Property::HORIZONTAL_ALIGNMENT, HorizontalAlignment::CENTER )
+                                                           .Add( Toolkit::TextVisual::Property::TEXT, "off") );
+
+        }
+      }
+
+      SetInitialSelectedColorButton( mStyleActivatedForColor );
+
+      mColorButtons[index].Unparent();
+
+      mStyleButtons[styleButtonIndex].Add( mColorButtons[index] );
+      mColorButtons[index].Lower();
+
+      // Position button using nice animation
+      mColorButtons[index].SetY( -GAP_BETWEEN_BUTTONS );
+      float desiredPosition = -( mButtonSize.height + GAP_BETWEEN_BUTTONS ) * (index);
+      AlphaFunction focusedAlphaFunction = AlphaFunction( Vector2 ( 0.32f, 0.08f ), Vector2( 0.38f, 1.72f ) );
+      mColorButtonsAnimation.AnimateBy( Property( mColorButtons[index], Actor::Property::POSITION_Y ), desiredPosition, focusedAlphaFunction );
+    }
+
+    mColorButtonsHidden = false;
+    mColorButtonsAnimation.Play();
+  }
+
+  // Remove the color buttons when not being shown.
+  void ResetColorButtons( Button buttons[], unsigned int numberOfButtons )
+  {
+    for( unsigned int index = 0; index < numberOfButtons; index++)
+    {
+      UnparentAndReset( buttons[index] );
+    }
+  }
+
+  void OnColorButtonAnimationFinished( Animation& animation )
+  {
+    animation.Clear();
+    if ( mColorButtonsHidden )
+    {
+      ResetColorButtons( mColorButtons, NUMBER_OF_COLORS );
+      animation.Reset(); // Handle reset
+      if ( mCollapseColorsAndStyles )
+      {
+        mExpandingButtons.Collapse();
+      }
+    }
+  }
+
+  // Create the style buttons that will expand from the expanding button.
+  void CreateStyleButtons()
+  {
+    for ( unsigned int index = 0; index < NUMBER_OF_STYLES; index++ )
+    {
+      if ( ! mStyleButtons[index] )
+      {
+        mStyleButtons[index] = PushButton::New();
+        mStyleButtons[index].SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, BUTTON_IMAGES[ index ] );
+        mStyleButtons[index].SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, STYLE_SELECTED_IMAGE );
+        mStyleButtons[index].SetProperty( Dali::Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT );
+        mStyleButtons[index].SetSize( mButtonSize );
+        mStyleButtons[index].ClickedSignal().Connect( this, &TextLabelExample::OnStyleButtonClicked );
+      }
+    }
+  }
+
+  // Animate away the color bar.
+  void HideColorButtons()
+  {
+    if ( ! mColorButtonsHidden )
+    {
+      for( unsigned int index = 0; index < NUMBER_OF_COLORS; index++)
+      {
+        mColorButtonsAnimation.AnimateTo( Property( mColorButtons[index], Actor::Property::POSITION_Y ), 0.0f );
+      }
+      mColorButtonsHidden = true;
+      mColorButtonsAnimation.Play();
+    }
+    mStyleActivatedForColor = NUMBER_OF_STYLES;
+  }
+
+  //  Request the expanding button to collapse.
+  void HideStyleAndColorButtons()
+  {
+    mCollapseColorsAndStyles = true;
+    if ( mColorButtonsHidden )
+    {
+      mExpandingButtons.Collapse();
+    }
+    else
+    {
+      HideColorButtons();
+    }
+  }
+
+  // Resize the text-label with pan gesture
+  void OnPan( Actor actor, const PanGesture& gesture )
+  {
+    // Reset mLayoutSize when the pan starts
+    if( gesture.state == Gesture::Started )
+    {
+      if( mLayoutSize.x < 2.0f )
+      {
+        mLayoutSize.x = 2.0f;
+      }
+
+      if( mLayoutSize.y < 2.0f )
+      {
+        mLayoutSize.y = 2.0f;
+      }
+
+      // Only show the border during the panning
+      mBorder.SetVisible(true);
+
+      HideStyleAndColorButtons();
+    }
+
+    mLayoutSize.x += gesture.displacement.x * 2.0f;
+    mLayoutSize.y += gesture.displacement.y * 2.0f;
+
+    if( mLayoutSize.x >= 2.0f ||
+        mLayoutSize.y >= 2.0f )
+    {
+      mLayoutSize.x = std::min ( mLayoutSize.x, mStageSize.width );
+      mLayoutSize.y = std::min ( mLayoutSize.y, mStageSize.height*.9f );
+
+      // Avoid pixel mis-alignment issue
+      Vector2 clampedSize = Vector2( std::max( ConvertToEven( static_cast<int>( mLayoutSize.x )), 2 ),
+                                     std::max( ConvertToEven( static_cast<int>( mLayoutSize.y )), 2 ) );
+
+      mContainer.SetSize( clampedSize );
+    }
+
+    if( gesture.state == Gesture::Cancelled || gesture.state == Gesture::Finished )
+    {
+      // Resize the text label to match the container size when panning is finished
+      mLabel.SetSize(mLayoutSize);
+      mBorder.SetVisible(false);
+    }
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else if( event.IsCtrlModifier() )
+      {
+        switch( event.keyCode )
+        {
+          // Select rendering back-end
+          case KEY_ZERO: // fall through
+          case KEY_ONE:
+          {
+            mLabel.SetProperty( TextLabel::Property::RENDERING_BACKEND, event.keyCode - 10 );
+            break;
+          }
+          case KEY_A: // Animate text colour
+          {
+            Animation animation = Animation::New( 2.f );
+            animation.AnimateTo( Property( mLabel, TextLabel::Property::TEXT_COLOR ), Color::RED, AlphaFunction::SIN );
+            animation.SetLoopCount( 3 );
+            animation.Play();
+            break;
+          }
+          case KEY_F: // Fill vertically
+          {
+            if( ResizePolicy::DIMENSION_DEPENDENCY == mLabel.GetResizePolicy(Dimension::HEIGHT) )
+            {
+              mLabel.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+            }
+            else
+            {
+              mLabel.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+            }
+            break;
+          }
+          case KEY_H: // Horizontal alignment
+          {
+            if( ++mAlignment >= H_ALIGNMENT_STRING_COUNT )
+            {
+              mAlignment = 0u;
+            }
+
+            mLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, H_ALIGNMENT_STRING_TABLE[ mAlignment ] );
+            break;
+          }
+          case KEY_V: // Vertical alignment
+          {
+            if( ++mAlignment >= V_ALIGNMENT_STRING_COUNT )
+            {
+              mAlignment = 0u;
+            }
+
+            mLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, V_ALIGNMENT_STRING_TABLE[ mAlignment ] );
+            break;
+          }
+          case KEY_M: // Multi-line
+          {
+            bool multiLine = mLabel.GetProperty<bool>( TextLabel::Property::MULTI_LINE );
+            mLabel.SetProperty( TextLabel::Property::MULTI_LINE, !multiLine );
+            break;
+          }
+          case KEY_L: // Language
+          {
+            const Language& language = LANGUAGES[ mLanguageId ];
+
+            mLabel.SetProperty( TextLabel::Property::TEXT, language.text );
+
+            if( ++mLanguageId >= NUMBER_OF_LANGUAGES )
+            {
+              mLanguageId = 0u;
+            }
+            break;
+          }
+          case KEY_S: // Shadow color
+          {
+            Property::Value value = mLabel.GetProperty( TextLabel::Property::SHADOW );
+            Vector4 shadowColor;
+            value.Get( shadowColor );
+            Property::Map shadowMap;
+            if( Color::BLACK == shadowColor )
+            {
+              shadowMap.Insert( "color", Color::RED );
+              mLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+            }
+            else
+            {
+              shadowMap.Insert( "color", Color::BLACK );
+              mLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+            }
+            break;
+          }
+          case KEY_U: // Markup
+          {
+            mLabel.SetProperty( TextLabel::Property::ENABLE_MARKUP, true );
+            mLabel.SetProperty( TextLabel::Property::TEXT, "<font family='DejaVuSerif' size='18'>H<color value='blue'>ello</color> <font weight='bold'>world</font> demo</font>" );
+            break;
+          }
+          case KEY_PLUS: // Increase shadow offset
+          {
+            Property::Value value = mLabel.GetProperty( TextLabel::Property::SHADOW );
+            Vector2 shadowOffset;
+            value.Get( shadowOffset );
+            shadowOffset += Vector2( 1.0f, 1.0f );
+
+            Property::Map shadowMap;
+            shadowMap.Insert( "offset", shadowOffset );
+            mLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+            break;
+          }
+          case KEY_MINUS: // Decrease shadow offset
+          {
+            Property::Value value = mLabel.GetProperty( TextLabel::Property::SHADOW );
+            Vector2 shadowOffset;
+            value.Get( shadowOffset );
+            shadowOffset -= Vector2( 1.0f, 1.0f );
+
+            Property::Map shadowMap;
+            shadowMap.Insert( "offset", shadowOffset );
+            mLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+            break;
+          }
+
+        }
+      }
+    }
+  }
+
+private:
+
+  Application& mApplication;
+
+  TextLabel mLabel;
+
+  Demo::ExpandingButtons mExpandingButtons;
+  PushButton mStyleButtons[ NUMBER_OF_STYLES ];
+  bool mStyleActiveState[ NUMBER_OF_STYLES ];
+
+  Vector4 mCurrentStyleColor[NUMBER_OF_STYLES ];
+
+  Vector4 mSelectedColor;
+
+  Button mColorButtons[ NUMBER_OF_COLORS ];
+
+  StyleType mStyleActivatedForColor; // The style that the color bar is connected to
+
+  Control mContainer;
+  Control mGrabCorner;
+  Control mBorder;
+
+  PanGestureDetector mPanGestureDetector;
+
+  Vector2 mLayoutSize;
+
+  Animation mColorButtonsAnimation;
+
+  Size mStageSize;
+  Size mButtonSize;
+
+  unsigned int mLanguageId;
+  unsigned int mAlignment;
+  Property::Index mHueAngleIndex;
+  Property::Index mOverrideMixColorIndex;
+
+  bool mColorButtonsHidden;
+  bool mCollapseColorsAndStyles;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  TextLabelExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/text-memory-profiling/text-memory-profiling-example.cpp b/examples/text-memory-profiling/text-memory-profiling-example.cpp
new file mode 100644 (file)
index 0000000..2fb3d2d
--- /dev/null
@@ -0,0 +1,456 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file text-memory-profiling-example.cpp
+ * @brief Memory consumption profiling for TextLabel
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/navigation-view/navigation-view.h>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+enum TextType
+{
+  SINGLE_COLOR_TEXT,
+  SINGLE_COLOR_TEXT_WITH_STYLE,
+  SINGLE_COLOR_TEXT_WITH_EMOJI,
+  SINGLE_COLOR_TEXT_WITH_STYLE_EMOJI,
+  MULTI_COLOR_TEXT,
+  MULTI_COLOR_TEXT_WITH_STYLE,
+  MULTI_COLOR_TEXT_WITH_EMOJI,
+  MULTI_COLOR_TEXT_WITH_STYLE_EMOJI,
+  SMALL_TEXT_IN_LARGE_TEXT_LABEL,
+  NUMBER_OF_TYPES
+};
+
+std::string TEXT_TYPE_STRING[ NUMBER_OF_TYPES ] =
+{
+  "Single color text",
+  "Single color text with style",
+  "Single color text with emoji",
+  "Single color text with style and emoji",
+  "Multi color text",
+  "Multi color text with style",
+  "Multi color text with emoji",
+  "Multi color text with style and emoji",
+  "Small text in large Text Label"
+};
+
+const int NUMBER_OF_LABELS = 500;
+
+const char* BACKGROUND_IMAGE( "" );
+const char* TOOLBAR_IMAGE( DEMO_IMAGE_DIR "top-bar.png" );
+const char* BACK_IMAGE( DEMO_IMAGE_DIR "icon-change.png" );
+const char* BACK_IMAGE_SELECTED( DEMO_IMAGE_DIR "icon-change-selected.png" );
+const char* INDICATOR_IMAGE( DEMO_IMAGE_DIR "loading.png" );
+
+} // anonymous namespace
+
+/**
+ * @brief The main class of the demo.
+ */
+class TextMemoryProfilingExample : public ConnectionTracker, public Toolkit::ItemFactory
+{
+public:
+
+  TextMemoryProfilingExample( Application& application )
+  : mApplication( application ),
+    mCurrentTextStyle( SINGLE_COLOR_TEXT )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextMemoryProfilingExample::Create );
+  }
+
+  ~TextMemoryProfilingExample()
+  {
+    // Nothing to do here.
+  }
+
+  /**
+   * @brief Create a text label in the given type
+   */
+  TextLabel SetupTextLabel( int type )
+  {
+    TextLabel label = TextLabel::New();
+    label.SetAnchorPoint( ParentOrigin::TOP_LEFT );
+    label.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    label.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLACK );
+    label.SetProperty( TextLabel::Property::POINT_SIZE, 12.0f );
+    Property::Map shadowMap;
+    shadowMap.Insert( "color", Color::YELLOW );
+    label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+    label.SetProperty( TextLabel::Property::ENABLE_MARKUP, true );
+
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+    label.SetPosition( Vector3( Random::Range( 0.0f, stageSize.x ), Random::Range( 0.0f, stageSize.y ), 0.0f) );
+
+    switch ( type )
+    {
+      case SINGLE_COLOR_TEXT:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, "A Quick Brown Fox Jumps Over The Lazy Dog" );
+
+        shadowMap.Insert( "offset", Vector2( 0.0f, 0.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case SINGLE_COLOR_TEXT_WITH_STYLE:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, "A Quick Brown Fox Jumps Over The Lazy Dog" );
+
+        shadowMap.Insert( "offset", Vector2( 2.0f, 2.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case SINGLE_COLOR_TEXT_WITH_EMOJI:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, "\xF0\x9F\x98\x81 A Quick Brown Fox Jumps Over The Lazy Dog" );
+
+        shadowMap.Insert( "offset", Vector2( 0.0f, 0.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case SINGLE_COLOR_TEXT_WITH_STYLE_EMOJI:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, "\xF0\x9F\x98\x81 A Quick Brown Fox Jumps Over The Lazy Dog" );
+
+        shadowMap.Insert( "offset", Vector2( 2.0f, 2.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case MULTI_COLOR_TEXT:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, "A <color value='cyan'>Quick Brown Fox</color> Jumps Over The <color value='yellow'>Lazy Dog</color>" );
+
+        shadowMap.Insert( "offset", Vector2( 0.0f, 0.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case MULTI_COLOR_TEXT_WITH_STYLE:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, "A <color value='cyan'>Quick Brown Fox</color> Jumps Over The <color value='yellow'>Lazy Dog</color>" );
+
+        shadowMap.Insert( "offset", Vector2( 2.0f, 2.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case MULTI_COLOR_TEXT_WITH_EMOJI:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, " \xF0\x9F\x98\x81 A <color value='cyan'>Quick Brown Fox</color> Jumps Over The <color value='yellow'>Lazy Dog</color>" );
+
+        shadowMap.Insert( "offset", Vector2( 0.0f, 0.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case MULTI_COLOR_TEXT_WITH_STYLE_EMOJI:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, " \xF0\x9F\x98\x81 A <color value='cyan'>Quick Brown Fox</color> Jumps Over The <color value='yellow'>Lazy Dog</color>" );
+
+        shadowMap.Insert( "offset", Vector2( 2.0f, 2.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        break;
+      }
+      case SMALL_TEXT_IN_LARGE_TEXT_LABEL:
+      {
+        label.SetProperty( TextLabel::Property::TEXT, "A Quick Brown Fox Jumps Over The Lazy Dog" );
+
+        shadowMap.Insert( "offset", Vector2( 0.0f, 0.0f ) );
+        label.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+        label.SetSize(stageSize.x, stageSize.y * 0.25f); // Set the text label in larger size
+        break;
+      }
+      default:
+        break;
+    }
+
+    return label;
+  }
+
+  /**
+   * @brief Create the main menu
+   */
+  void CreateMainMenu()
+  {
+    Stage stage = Stage::GetCurrent();
+    Vector2 stageSize = stage.GetSize();
+
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.DetectedSignal().Connect( this, &TextMemoryProfilingExample::OnTap );
+
+    // Create an item view for the main menu
+    mItemView = ItemView::New( *this );
+
+    mItemView.SetParentOrigin( ParentOrigin::CENTER );
+    mItemView.SetAnchorPoint( AnchorPoint::CENTER );
+
+    mLayout = DefaultItemLayout::New( DefaultItemLayout::LIST );
+    mLayout->SetItemSize( Vector3( stageSize.width, 60.0f, 0.0f ) );
+
+    mItemView.AddLayout( *mLayout );
+
+    // Activate the layout
+    mItemView.ActivateLayout( 0, Vector3( stageSize ), 0.0f );
+  }
+
+  /**
+   * @brief Return the number of items in the main menu
+   */
+  virtual unsigned int GetNumberOfItems()
+  {
+    return NUMBER_OF_TYPES;
+  }
+
+  /**
+   * @brief Create new item for the main menu
+   */
+  virtual Actor NewItem( unsigned int itemId )
+  {
+    TextLabel label = TextLabel::New( TEXT_TYPE_STRING[itemId] );
+    label.SetStyleName( "BuilderLabel" );
+    label.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+
+    // Hook up tap detector
+    mTapDetector.Attach( label );
+
+    return label;
+  }
+
+  /**
+   * @brief Create text labels for memory profiling
+   */
+  void CreateTextLabels( int type )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    // Render tasks may have been setup last load so remove them
+    RenderTaskList taskList = stage.GetRenderTaskList();
+    if( taskList.GetTaskCount() > 1 )
+    {
+      typedef std::vector<RenderTask> Collection;
+      typedef Collection::iterator ColIter;
+      Collection tasks;
+
+      for( unsigned int i = 1; i < taskList.GetTaskCount(); ++i )
+      {
+        tasks.push_back( taskList.GetTask(i) );
+      }
+
+      for( ColIter iter = tasks.begin(); iter != tasks.end(); ++iter )
+      {
+        taskList.RemoveTask(*iter);
+      }
+
+      RenderTask defaultTask = taskList.GetTask( 0 );
+      defaultTask.SetSourceActor( stage.GetRootLayer() );
+      defaultTask.SetTargetFrameBuffer( FrameBufferImage() );
+    }
+
+    // Delete any existing text labels
+    unsigned int numChildren = mLayer.GetChildCount();
+
+    for( unsigned int i = 0; i < numChildren; ++i )
+    {
+      mLayer.Remove( mLayer.GetChildAt( 0 ) );
+    }
+
+    mLayer.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mLayer.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    mLayer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mLayer.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT, Dimension::HEIGHT );
+    mLayer.SetSizeModeFactor( Vector3( 0.0f, -DemoHelper::DEFAULT_VIEW_STYLE.mToolBarHeight, 0.0f ) );
+
+    mNavigationView.Push( mLayer );
+
+    // Create new text labels
+    for ( int i = 0; i < NUMBER_OF_LABELS; i++ )
+    {
+      TextLabel label = SetupTextLabel( type );
+      mLayer.Add( label );
+    }
+
+    mTitle.SetProperty( TextLabel::Property::TEXT, "Run memps on target" );
+  }
+
+  /**
+   * @brief One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+
+    stage.KeyEventSignal().Connect(this, &TextMemoryProfilingExample::OnKeyEvent);
+
+    Layer contents = DemoHelper::CreateView( mApplication,
+                                             mView,
+                                             mToolBar,
+                                             BACKGROUND_IMAGE,
+                                             TOOLBAR_IMAGE,
+                                             "" );
+
+    mTitle = DemoHelper::CreateToolBarLabel( "" );
+    mTitle.SetProperty( TextLabel::Property::TEXT, "Select the type of text" );
+
+    // Add title to the tool bar.
+    mToolBar.AddControl( mTitle, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarTitlePercentage, Alignment::HorizontalCenter );
+
+    // Create a layer to contain dynamically created text labels
+    mLayer = Layer::New();
+
+    mIndicator = Toolkit::ImageView::New(INDICATOR_IMAGE);
+    mIndicator.SetParentOrigin( ParentOrigin::CENTER );
+    mIndicator.SetAnchorPoint( AnchorPoint::CENTER );
+    mIndicator.SetProperty( Actor::Property::VISIBLE, false );
+
+    // Create a back button in the left of toolbar
+    PushButton backButton = PushButton::New();
+    backButton.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, BACK_IMAGE );
+    backButton.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, BACK_IMAGE_SELECTED );
+    backButton.ClickedSignal().Connect( this, &TextMemoryProfilingExample::OnBackButtonPressed );
+    backButton.SetLeaveRequired( true );
+    mToolBar.AddControl( backButton, DemoHelper::DEFAULT_VIEW_STYLE.mToolBarButtonPercentage, Alignment::HorizontalLeft, DemoHelper::DEFAULT_MODE_SWITCH_PADDING );
+
+    // Create a navigation view to navigate different types of text labels
+    mNavigationView = NavigationView::New();
+    mNavigationView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mNavigationView.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mNavigationView.SetBackgroundColor( Color::WHITE );
+    stage.Add( mNavigationView );
+
+    CreateMainMenu();
+    mNavigationView.Push( mItemView );
+
+    mItemView.Add(mIndicator);
+
+    PropertyNotification notification = mIndicator.AddPropertyNotification( Actor::Property::VISIBLE, GreaterThanCondition(0.01f) );
+    notification.NotifySignal().Connect( this, &TextMemoryProfilingExample::OnIndicatorVisible );
+  }
+
+  /**
+   * @brief Main key event handler
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        ReturnToPreviousScreen();
+      }
+    }
+  }
+
+  /**
+   * @brief Tap gesture handler
+   */
+  void OnTap( Actor actor, const TapGesture& tap )
+  {
+    mCurrentTextStyle = mItemView.GetItemId( actor );
+
+    // Show the loading indicator
+    mIndicator.SetProperty( Actor::Property::VISIBLE, true );
+
+    if ( mAnimation )
+    {
+      mAnimation.Clear();
+      mAnimation.Reset();
+    }
+
+    mAnimation = Animation::New( 0.8f );
+    mAnimation.AnimateBy( Property( mIndicator, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree(180.0f) ), Vector3::ZAXIS ) );
+    mAnimation.SetLooping( true );
+    mAnimation.Play();
+  }
+
+  /**
+   * @brief Property notification handler
+   */
+  void OnIndicatorVisible( PropertyNotification& source )
+  {
+    CreateTextLabels( mCurrentTextStyle );
+
+    // Hide the loading indicator
+    mAnimation.Stop();
+    mIndicator.SetProperty( Actor::Property::VISIBLE, false );
+  }
+
+  /**
+   * @brief Button signal handler
+   */
+  bool OnBackButtonPressed( Toolkit::Button button )
+  {
+    ReturnToPreviousScreen();
+    return true;
+  }
+
+  /**
+   * @brief Returns to the previous screen
+   */
+  void ReturnToPreviousScreen()
+  {
+    if ( mItemView.OnStage() )
+    {
+      // Quit the application if it is in the main menu
+      mApplication.Quit();
+    }
+    else
+    {
+      // Return to the main menu
+      mNavigationView.Pop();
+
+      mTitle.SetProperty( TextLabel::Property::TEXT, "Select type of text to test" );
+    }
+  }
+
+private:
+
+  Application& mApplication;
+
+  ItemLayoutPtr mLayout;
+  ItemView mItemView;
+  NavigationView mNavigationView;
+
+  Control mView;
+  ToolBar mToolBar;
+  TextLabel mTitle;
+  ImageView mIndicator;
+  Animation mAnimation;
+
+  Layer mLayer;
+
+  TapGestureDetector mTapDetector;
+
+  unsigned int mCurrentTextStyle;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  TextMemoryProfilingExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/text-overlap/text-overlap-example.cpp b/examples/text-overlap/text-overlap-example.cpp
new file mode 100644 (file)
index 0000000..85d12db
--- /dev/null
@@ -0,0 +1,148 @@
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/actors/actor-devel.h>
+#include "text-overlap-example.h"
+
+#include <iostream>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+static const int NUMBER_OF_LABELS(2);
+
+
+
+namespace Demo
+{
+
+TextOverlapController::TextOverlapController( Application& app )
+: mApplication( app ),
+  mTopmostLabel( 1 )
+{
+  app.InitSignal().Connect( this, &TextOverlapController::Create );
+  app.TerminateSignal().Connect( this, &TextOverlapController::Destroy );
+}
+
+void TextOverlapController::Create( Application& app )
+{
+  Stage stage = Stage::GetCurrent();
+  stage.KeyEventSignal().Connect( this, &TextOverlapController::OnKeyEvent );
+
+  Vector2 stageSize = stage.GetSize();
+
+  mLabels[0] = TextLabel::New("Text Label 1");
+  mLabels[1] = TextLabel::New("Text Label 2");
+
+  mLabels[0].SetName("Label1");
+  mLabels[1].SetName("Label2");
+
+  mLabels[0].SetProperty( DevelActor::Property::SIBLING_ORDER, 1 );
+  mLabels[1].SetProperty( DevelActor::Property::SIBLING_ORDER, 2 );
+
+  mLabels[0].SetProperty( Control::Property::BACKGROUND, Color::RED );
+  mLabels[1].SetProperty( Control::Property::BACKGROUND, Color::YELLOW );
+
+  for(int i=0; i<NUMBER_OF_LABELS; ++i )
+  {
+    mLabels[i].SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mLabels[i].SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mLabels[i].SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mLabels[i].SetPosition( 0, (i*2+1) * stageSize.height * 0.25f );
+  }
+
+  stage.Add( mLabels[0] );
+  stage.Add( mLabels[1] );
+
+  mSwapButton = PushButton::New();
+  mSwapButton.SetProperty( Button::Property::LABEL, "Swap depth order");
+  mSwapButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+  mSwapButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+  mSwapButton.ClickedSignal().Connect( this, &TextOverlapController::OnClicked );
+  mSwapButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  mSwapButton.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+  stage.Add( mSwapButton );
+
+
+  Layer rootLayer = stage.GetRootLayer();
+  rootLayer.SetName("RootLayer");
+
+  mPanDetector = PanGestureDetector::New();
+  mPanDetector.Attach( rootLayer );
+  mPanDetector.AddAngle( Radian(-0.5f * Math::PI ));
+  mPanDetector.AddAngle( Radian( 0.5f * Math::PI ));
+  mPanDetector.DetectedSignal().Connect( this, &TextOverlapController::OnPan );
+}
+
+void TextOverlapController::OnPan( Actor actor, const PanGesture& gesture )
+{
+  if( ! mGrabbedActor || gesture.state == PanGesture::Started )
+  {
+    for( int i=0; i<NUMBER_OF_LABELS; ++i )
+    {
+      Vector3 position = mLabels[i].GetCurrentPosition();
+      Vector3 size = mLabels[i].GetCurrentSize();
+      if( gesture.position.y > position.y - size.y * 0.5f &&
+          gesture.position.y <= position.y + size.y * 0.5f )
+      {
+        mGrabbedActor = mLabels[i];
+        break;
+      }
+    }
+  }
+  else if( mGrabbedActor && gesture.state == PanGesture::Continuing )
+  {
+    Vector2 stageSize = Stage::GetCurrent().GetSize();
+    Vector3 size = mGrabbedActor.GetCurrentSize();
+    float y = Clamp( gesture.position.y, size.y * 0.5f, stageSize.y - size.y*0.5f );
+    mGrabbedActor.SetPosition( 0, y );
+  }
+  else
+  {
+    mGrabbedActor.Reset();
+  }
+}
+
+void TextOverlapController::Destroy( Application& app )
+{
+  mPanDetector.DetachAll();
+  UnparentAndReset(mLabels[0]);
+  UnparentAndReset(mLabels[1]);
+  mGrabbedActor.Reset();
+}
+
+bool TextOverlapController::OnClicked( Button button )
+{
+  mTopmostLabel = 1-mTopmostLabel; // toggles between 0 and 1
+  mLabels[mTopmostLabel].RaiseToTop();
+  return false;
+}
+
+
+void TextOverlapController::OnKeyEvent( const KeyEvent& keyEvent )
+{
+  if( keyEvent.state == KeyEvent::Down &&
+      ( IsKey( keyEvent, DALI_KEY_BACK ) ||
+        IsKey( keyEvent, DALI_KEY_ESCAPE ) ) )
+  {
+    mApplication.Quit();
+  }
+  else
+  {
+    Dali::Layer l = Dali::Stage::GetCurrent().GetRootLayer();
+    int so = l.GetProperty<int>(Dali::DevelActor::Property::SIBLING_ORDER);
+    l.SetProperty(Dali::DevelActor::Property::SIBLING_ORDER, so+1);
+  }
+}
+
+
+} // namespace Demo
+
+int DALI_EXPORT_API main( int argc, char** argv )
+{
+  {
+    Application app = Application::New( &argc, &argv );
+    Demo::TextOverlapController controller( app );
+    app.MainLoop();
+  }
+  exit( 0 );
+}
diff --git a/examples/text-overlap/text-overlap-example.h b/examples/text-overlap/text-overlap-example.h
new file mode 100644 (file)
index 0000000..b15f67d
--- /dev/null
@@ -0,0 +1,28 @@
+#pragma once
+
+namespace Demo
+{
+
+class TextOverlapController : public Dali::ConnectionTracker
+{
+public:
+  TextOverlapController( Dali::Application& app );
+
+private:
+  void Create( Dali::Application& app );
+  void Create2();
+  void Destroy( Dali::Application& app );
+  void OnPan( Dali::Actor actor, const Dali::PanGesture& gesture );
+  void OnKeyEvent( const Dali::KeyEvent& keyEvent );
+  bool OnClicked( Dali::Toolkit::Button button );
+
+private:
+  Dali::Application& mApplication;
+  Dali::Toolkit::TextLabel mLabels[2];
+  Dali::PanGestureDetector mPanDetector;
+  Dali::Actor mGrabbedActor;
+  Dali::Toolkit::Button mSwapButton;
+  int mTopmostLabel;
+};
+
+}
diff --git a/examples/text-scrolling/text-scrolling-example.cpp b/examples/text-scrolling/text-scrolling-example.cpp
new file mode 100644 (file)
index 0000000..e886331
--- /dev/null
@@ -0,0 +1,415 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/**
+ * @file text-scrolling-example.cpp
+ * @brief Shows text labels with scrolling text and allows a text label and text field control to be scrolled vertically
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const float STAGE_HEIGHT_MULTIPLIER( 1.5f );
+const Vector2 BOX_SIZE( Vector2(330.0f, 80.0f ) );
+const Vector2 SCROLLING_BOX_SIZE( Vector2(330.0f, 40.0f ) );
+const float MAX_OFFSCREEN_RENDERING_SIZE = 2048.f;
+const float SCREEN_BORDER = 5.0f; // Border around screen that Popups and handles will not exceed
+
+const char * ALIGNMENT_TABLE[] =
+{
+  "BEGIN",
+  "CENTER",
+  "END"
+};
+const unsigned int ALIGNMENT_TABLE_COUNT = sizeof( ALIGNMENT_TABLE ) / sizeof( ALIGNMENT_TABLE[ 0 ] );
+
+enum Labels
+{
+  SMALL = 1u,
+  RTL = 1u << 1,
+  LARGE = 1u << 2,
+  RTL_LONG = 1u << 4,
+  NONE = 1u << 6,
+};
+}
+/**
+ * @brief The main class of the demo.
+ */
+class TextScrollingExample : public ConnectionTracker
+{
+public:
+
+  TextScrollingExample( Application& application )
+  : mApplication( application ),
+    mTargetActorPosition(),
+    mTargetActorSize(),
+    mToggleColor( false )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TextScrollingExample::Create );
+  }
+
+  ~TextScrollingExample()
+  {
+    // Nothing to do here.
+  }
+
+
+  void CreateBox( const std::string& name, Actor& box, Actor parent, const Vector2& size )
+  {
+    box.SetName(name);
+    box.SetAnchorPoint( AnchorPoint::CENTER );
+    box.SetParentOrigin( ParentOrigin::CENTER );
+    box.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+    box.SetResizePolicy( ResizePolicy::FIXED, Dimension::WIDTH );
+    box.SetSize( size.width, 0.f );
+    parent.Add( box );
+
+    Dali::Property::Map border;
+    border.Insert( Toolkit::Visual::Property::TYPE,  Visual::BORDER );
+    border.Insert( BorderVisual::Property::COLOR,  Color::BLUE );
+    border.Insert( BorderVisual::Property::SIZE,  1.f );
+    box.SetProperty( Control::Property::BACKGROUND, border );
+  }
+
+  void CreateLabel( Actor& label, const std::string text, Actor parent, bool scrollOnStart, PushButton button )
+  {
+    label = TextLabel::New( text );
+    label.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    label.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::HEIGHT );
+    label.SetPadding( Padding( 1.0f, 1.0f, 1.0f, 1.0f ) );
+    label.SetAnchorPoint( AnchorPoint::CENTER );
+    label.SetParentOrigin( ParentOrigin::CENTER );
+    parent.Add( label );
+
+    if ( scrollOnStart )
+    {
+      label.SetProperty(TextLabel::Property::ENABLE_AUTO_SCROLL, true);
+    }
+
+    button.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    button.SetSize(BOX_SIZE.height,BOX_SIZE.height);
+    button.SetParentOrigin( ParentOrigin::TOP_RIGHT );
+    button.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    parent.Add(button);
+  }
+
+
+  /**
+   * One-time setup in response to Application InitSignal.
+   */
+  void Create( Application& application )
+  {
+    Stage stage = Stage::GetCurrent();
+    mStageSize = stage.GetSize();
+
+    stage.KeyEventSignal().Connect(this, &TextScrollingExample::OnKeyEvent);
+
+    // Create Root actor
+    Actor rootActor = Actor::New();
+    rootActor.SetName("rootActor");
+    rootActor.SetResizePolicy( ResizePolicy::FIXED,  Dimension::ALL_DIMENSIONS );
+    rootActor.SetSize( mStageSize );
+    rootActor.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+
+    stage.Add( rootActor );
+
+    mAnimation = Animation::New( 1.0f );
+
+    const Size mTargetActorSize( mStageSize.width, mStageSize.height * STAGE_HEIGHT_MULTIPLIER );
+
+    // Create Desktop
+    Control desktop = Control::New();
+    desktop.SetBackgroundColor( Color::WHITE );
+    desktop.SetName("desktopActor");
+    desktop.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    desktop.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    desktop.SetSize( mTargetActorSize );
+
+    rootActor.Add( desktop ); // Add desktop (content) to offscreen actor
+
+    // Create Boxes
+    Control boxA = Control::New();
+    Control boxB = Control::New();
+    Control boxC = Control::New();
+    Control boxD = Control::New();
+    Control boxE = Control::New();
+
+    CreateBox( "boxA", boxA, desktop, BOX_SIZE );
+    boxA.SetPosition( 0.0f, -500.0f, 1.0f );
+
+    // Create TextField
+    TextField field = TextField::New();
+    field.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    field.SetPadding( Padding( 1.0f, 1.0f, 1.0f, 1.0f ) );
+    field.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    field.SetProperty( TextField::Property::PLACEHOLDER_TEXT, "Enter Folder Name" );
+    field.SetProperty( TextField::Property::DECORATION_BOUNDING_BOX, Rect<int>( SCREEN_BORDER, SCREEN_BORDER, mStageSize.width - SCREEN_BORDER*2, mStageSize.height - SCREEN_BORDER*2 ) );
+    boxA.Add( field );
+    boxA.SetSize(BOX_SIZE);
+
+    CreateBox( "boxB", boxB, desktop, SCROLLING_BOX_SIZE );
+    boxB.SetPosition( 0.0f, -400.0f, 1.0f );
+    Toolkit::PushButton scrollLargeButton = Toolkit::PushButton::New();
+    scrollLargeButton.ClickedSignal().Connect( this, &TextScrollingExample::OnButtonClickedLarge );
+    CreateLabel( mLargeLabel, "A Quick Brown Fox Jumps Over The Lazy Dog", boxB, false ,scrollLargeButton );
+
+    CreateBox( "boxC", boxC, desktop, SCROLLING_BOX_SIZE );
+    boxC.SetPosition( 0.0f, -300.0f, 1.0f );
+    Toolkit::PushButton scrollSmallButton = Toolkit::PushButton::New();
+    scrollSmallButton.ClickedSignal().Connect( this, &TextScrollingExample::OnButtonClickedSmall );
+    CreateLabel( mSmallLabel, "Hello Text", boxC , true, scrollSmallButton );
+    mSmallLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLACK );
+    Property::Map shadowMap;
+    shadowMap.Insert( "color", Color::CYAN );
+    shadowMap.Insert( "offset", Vector2( 1.0f, 1.0f ) );
+    mSmallLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+
+    CreateBox( "boxD", boxD, desktop, SCROLLING_BOX_SIZE );
+    boxD.SetPosition( 0.0f, -200.0f, 1.0f );
+    Toolkit::PushButton scrollRtlButton = Toolkit::PushButton::New();
+    scrollRtlButton.ClickedSignal().Connect( this, &TextScrollingExample::OnButtonClickedRtl );
+    CreateLabel( mRtlLabel, "مرحبا بالعالم", boxD , true, scrollRtlButton );
+    mRtlLabel.SetProperty(TextLabel::Property::AUTO_SCROLL_STOP_MODE, TextLabel::AutoScrollStopMode::IMMEDIATE );
+    mRtlLabel.SetProperty(TextLabel::Property::AUTO_SCROLL_LOOP_DELAY, 0.3f );
+
+    CreateBox( "boxE", boxE, desktop, SCROLLING_BOX_SIZE );
+    boxE.SetPosition( 0.0f, -100.0f, 1.0f );
+    Toolkit::PushButton scrollRtlLongButton = Toolkit::PushButton::New();
+    scrollRtlLongButton.ClickedSignal().Connect( this, &TextScrollingExample::OnButtonClickedRtlLong );
+    CreateLabel( mRtlLongLabel, " مرحبا بالعالم مرحبا بالعالم مرحبا بالعالم مرحبا بالعالم مرحبا بالعالم مرحبا بالعالم مرحبا بالعالم مرحبا بالعالم مرحبا بالعالم", boxE , false, scrollRtlLongButton );
+    mRtlLongLabel.SetProperty(TextLabel::Property::AUTO_SCROLL_SPEED, 500);
+    mRtlLongLabel.SetProperty(TextLabel::Property::AUTO_SCROLL_GAP, 500);
+    mRtlLongLabel.SetProperty(TextLabel::Property::AUTO_SCROLL_LOOP_COUNT, 3);
+    mRtlLongLabel.SetProperty(TextLabel::Property::AUTO_SCROLL_STOP_MODE, TextLabel::AutoScrollStopMode::FINISH_LOOP );
+
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.DetectedSignal().Connect(this, &TextScrollingExample::OnPanGesture );
+    mPanGestureDetector.Attach( desktop );
+
+    Toolkit::PushButton colorButton = Toolkit::PushButton::New();
+    colorButton.SetProperty( Button::Property::TOGGLABLE, true );
+    colorButton.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, Property::Map().Add ( Toolkit::Visual::Property::TYPE, Visual::COLOR ).Add( ColorVisual::Property::MIX_COLOR, Color::RED ) );
+    colorButton.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, Property::Map().Add ( Toolkit::Visual::Property::TYPE, Visual::COLOR ).Add( ColorVisual::Property::MIX_COLOR, Color::BLACK ) );
+    colorButton.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    colorButton.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    colorButton.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    colorButton.SetSize(BOX_SIZE.height,BOX_SIZE.height);
+    colorButton.ClickedSignal().Connect( this, &TextScrollingExample::OnColorButtonClicked );
+    rootActor.Add( colorButton );
+
+    for( unsigned int i = 0; i < ALIGNMENT_TABLE_COUNT; ++i )
+    {
+      Toolkit::RadioButton alignButton = Toolkit::RadioButton::New( ALIGNMENT_TABLE[ i ] );
+      alignButton.ClickedSignal().Connect( this, &TextScrollingExample::OnAlignButtonClicked );
+      alignButton.SetName( ALIGNMENT_TABLE[ i ] );
+
+      // Place first button to left aligned, second center aligned and third right aligned
+      alignButton.SetAnchorPoint( Vector3( i * 0.5f, 0.0f, 0.5f ) );
+      alignButton.SetParentOrigin( Vector3( i * 0.5f, 0.0f, 0.5f ) );
+
+      rootActor.Add( alignButton );
+
+      if( i == 0 )
+      {
+        // Set the first button as selected
+        alignButton.SetProperty( Button::Property::SELECTED, true );
+      }
+    }
+  }
+
+  void EnableScrolling( Labels labels )
+    {
+      Actor label;
+      switch( labels )
+      {
+        case LARGE:
+        {
+          label = mLargeLabel;
+          break;
+        }
+        case RTL:
+        {
+          label = mRtlLabel;
+          break;
+        }
+        case SMALL:
+        {
+          label = mSmallLabel;
+          break;
+        }
+        case RTL_LONG:
+        {
+          label = mRtlLongLabel;
+          break;
+        }
+        case NONE:
+        {
+          return;
+        }
+      }
+
+      if ( labels != NONE )
+      {
+        Property::Value value = label.GetProperty( TextLabel::Property::ENABLE_AUTO_SCROLL);
+        if (value.Get< bool >())
+        {
+          label.SetProperty( TextLabel::Property::ENABLE_AUTO_SCROLL, false  );
+        }
+        else
+        {
+          label.SetProperty( TextLabel::Property::ENABLE_AUTO_SCROLL, true  );
+        }
+      }
+    }
+
+  bool OnButtonClickedSmall( Toolkit::Button button )
+  {
+    EnableScrolling( SMALL );
+    return true;
+  }
+
+  bool OnButtonClickedLarge( Toolkit::Button button )
+  {
+    EnableScrolling( LARGE );
+    return true;
+  }
+
+  bool OnButtonClickedRtl( Toolkit::Button button )
+  {
+    EnableScrolling( RTL );
+    return true;
+  }
+
+  bool OnButtonClickedRtlLong( Toolkit::Button button )
+  {
+    EnableScrolling( RTL_LONG );
+    return true;
+  }
+
+  bool OnColorButtonClicked( Toolkit::Button button )
+  {
+    Vector4 color = Color::RED;
+
+    if ( mToggleColor )
+    {
+      color = Color::BLACK;
+      mToggleColor = false;
+    }
+    else
+    {
+      mToggleColor = true;
+    }
+
+    Property::Map shadowMap;
+    shadowMap.Insert( "color", Color::BLACK );
+    mSmallLabel.SetProperty( TextLabel::Property::SHADOW, shadowMap );
+    mSmallLabel.SetProperty( TextLabel::Property::TEXT_COLOR, color );
+    mRtlLabel.SetProperty( TextLabel::Property::TEXT_COLOR, color );
+    mLargeLabel.SetProperty( TextLabel::Property::TEXT_COLOR, color );
+    mRtlLongLabel.SetProperty( TextLabel::Property::TEXT_COLOR, color );
+
+    return true;
+  }
+
+  bool OnAlignButtonClicked( Toolkit::Button button )
+  {
+    for( unsigned int index = 0; index < ALIGNMENT_TABLE_COUNT; ++index )
+    {
+      const std::string& buttonName = button.GetName();
+      if( buttonName == ALIGNMENT_TABLE[ index ] )
+      {
+        mSmallLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, ALIGNMENT_TABLE[ index ] );
+        mRtlLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, ALIGNMENT_TABLE[ index ] );
+        mLargeLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, ALIGNMENT_TABLE[ index ] );
+        mRtlLongLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, ALIGNMENT_TABLE[ index ] );
+        break;
+      }
+    }
+
+    return true;
+  }
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else
+      {
+        if ( event.keyPressedName == "2" )
+        {
+          mAnimation.AnimateTo( Property( mSmallLabel, Actor::Property::SCALE ), Vector3(1.2f, 1.2f, 0.0f), AlphaFunction::BOUNCE, TimePeriod( 1.0f, 1.0f ) );
+          mAnimation.AnimateTo( Property( mLargeLabel, Actor::Property::SCALE ), Vector3(1.2f, 1.2f, 0.0f), AlphaFunction::BOUNCE, TimePeriod( 1.0f, 1.0f ) );
+          mAnimation.AnimateTo( Property( mRtlLabel, Actor::Property::SCALE ), Vector3(1.2f, 1.2f, 0.0f), AlphaFunction::BOUNCE, TimePeriod( 1.0f, 1.0f ) );
+          mAnimation.AnimateTo( Property( mRtlLongLabel, Actor::Property::SCALE ), Vector3(1.2f, 1.2f, 0.0f), AlphaFunction::BOUNCE, TimePeriod( 1.0f, 1.0f ) );
+
+          mAnimation.Play();
+        }
+      }
+    }
+  }
+
+  void OnPanGesture( Actor actor, const PanGesture& gesture )
+  {
+    if( gesture.state == Gesture::Continuing )
+    {
+      Vector2 position = Vector2( gesture.displacement );
+      mTargetActorPosition.y = mTargetActorPosition.y + position.y;
+      mTargetActorPosition.y = std::min( mTargetActorPosition.y, -mTargetActorSize.height );
+      mTargetActorPosition.y = std::max( mTargetActorPosition.y, ( mTargetActorSize.height - mStageSize.height*0.25f ) );
+      actor.SetPosition( 0.0f, mTargetActorPosition.y );
+    }
+  }
+
+private:
+
+  Application& mApplication;
+  PanGestureDetector mPanGestureDetector;
+
+  Vector2 mTargetActorPosition;
+  Vector2 mTargetActorSize;
+  Vector2 mStageSize;
+
+  TextLabel mLargeLabel;
+  TextLabel mSmallLabel;
+  TextLabel mRtlLabel;
+  TextLabel mRtlLongLabel;
+
+  Animation mAnimation;
+
+  bool mToggleColor;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  TextScrollingExample test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/textured-mesh/textured-mesh-example.cpp b/examples/textured-mesh/textured-mesh-example.cpp
new file mode 100644 (file)
index 0000000..19dd3a6
--- /dev/null
@@ -0,0 +1,220 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali-toolkit/dali-toolkit.h>
+
+// INTERNAL INCLUDES
+#include "shared/view.h"
+#include "shared/utility.h"
+
+using namespace Dali;
+
+namespace
+{
+const char* MATERIAL_SAMPLE( DEMO_IMAGE_DIR "gallery-small-48.jpg" );
+const char* MATERIAL_SAMPLE2( DEMO_IMAGE_DIR "gallery-medium-19.jpg" );
+
+#define MAKE_SHADER(A)#A
+
+const char* VERTEX_SHADER = MAKE_SHADER(
+attribute mediump vec2    aPosition;
+attribute highp   vec2    aTexCoord;
+varying   mediump vec2    vTexCoord;
+uniform   mediump mat4    uMvpMatrix;
+uniform   mediump vec3    uSize;
+uniform   lowp    vec4    uFadeColor;
+
+void main()
+{
+  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  vertexPosition.xyz *= uSize;
+  vertexPosition = uMvpMatrix * vertexPosition;
+  vTexCoord = aTexCoord;
+  gl_Position = vertexPosition;
+}
+);
+
+const char* FRAGMENT_SHADER = MAKE_SHADER(
+varying mediump vec2  vTexCoord;
+uniform lowp    vec4  uColor;
+uniform sampler2D     sTexture;
+uniform lowp    vec4  uFadeColor;
+
+void main()
+{
+  gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor * uFadeColor;
+}
+);
+
+/**
+ * Sinusoidal curve starting at zero with 2 cycles
+ */
+float AlphaFunctionSineX2(float progress)
+{
+  return 0.5f - cosf(progress * 4.0f * Math::PI) * 0.5f;
+}
+
+} // anonymous namespace
+
+// This example shows how to use a simple mesh
+//
+class ExampleController : public ConnectionTracker
+{
+public:
+
+  /**
+   * The example controller constructor.
+   * @param[in] application The application instance
+   */
+  ExampleController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &ExampleController::Create );
+  }
+
+  /**
+   * The example controller destructor
+   */
+  ~ExampleController()
+  {
+    // Nothing to do here;
+  }
+
+  /**
+   * Invoked upon creation of application
+   * @param[in] application The application instance
+   */
+  void Create( Application& application )
+  {
+    // The Init signal is received once (only) during the Application lifetime
+
+    Stage stage = Stage::GetCurrent();
+    stage.KeyEventSignal().Connect(this, &ExampleController::OnKeyEvent);
+
+    mStageSize = stage.GetSize();
+
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    Texture texture1 = DemoHelper::LoadTexture( MATERIAL_SAMPLE );
+    Texture texture2 = DemoHelper::LoadTexture( MATERIAL_SAMPLE2 );
+
+    mShader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER );
+    mTextureSet1 = TextureSet::New();
+    mTextureSet1.SetTexture( 0u, texture1 );
+
+    mTextureSet2 = TextureSet::New();
+    mTextureSet2.SetTexture( 0u, texture2 );
+
+    mGeometry = DemoHelper::CreateTexturedQuad();
+
+    mRenderer = Renderer::New( mGeometry, mShader );
+    mRenderer.SetTextures( mTextureSet1 );
+
+    mMeshActor = Actor::New();
+    mMeshActor.AddRenderer( mRenderer );
+    mMeshActor.SetSize(400, 400);
+
+    Property::Index fadeColorIndex = mRenderer.RegisterProperty( "uFadeColor", Color::MAGENTA );
+    mRenderer.SetProperty( Renderer::Property::DEPTH_INDEX, 0 );
+
+    mMeshActor.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    mMeshActor.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    stage.Add( mMeshActor );
+
+    mRenderer2 = Renderer::New( mGeometry, mShader );
+    mRenderer2.SetTextures( mTextureSet2 );
+
+    mMeshActor2 = Actor::New();
+    mMeshActor2.AddRenderer( mRenderer2 );
+    mMeshActor2.SetSize(400, 400);
+
+    mMeshActor2.RegisterProperty( "anotherProperty",    Color::GREEN );
+
+    mRenderer2.RegisterProperty( "anotherProperty",    Vector3::ZERO );
+    mRenderer2.RegisterProperty( "aCoefficient",  0.008f );
+    Property::Index fadeColorIndex2 = mRenderer2.RegisterProperty( "uFadeColor", Color::BLUE );
+    mRenderer2.SetProperty( Renderer::Property::DEPTH_INDEX, 0 );
+
+    mMeshActor2.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
+    mMeshActor2.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+    stage.Add( mMeshActor2 );
+
+    Animation  animation = Animation::New(5);
+    KeyFrames keyFrames = KeyFrames::New();
+    keyFrames.Add(0.0f, Vector4::ZERO);
+    keyFrames.Add(1.0f, Vector4( Color::GREEN ));
+
+    KeyFrames keyFrames2 = KeyFrames::New();
+    keyFrames2.Add(0.0f, Vector4::ZERO);
+    keyFrames2.Add(1.0f, Color::MAGENTA);
+
+    animation.AnimateBetween( Property( mRenderer, fadeColorIndex ), keyFrames, AlphaFunction(AlphaFunction::SIN) );
+    animation.AnimateBetween( Property( mRenderer2, fadeColorIndex2 ), keyFrames2, AlphaFunction(AlphaFunctionSineX2) );
+    animation.SetLooping(true);
+    animation.Play();
+
+    stage.SetBackgroundColor(Vector4(0.0f, 0.2f, 0.2f, 1.0f));
+  }
+
+  /**
+   * Invoked whenever the quit button is clicked
+   * @param[in] button the quit button
+   */
+  bool OnQuitButtonClicked( Toolkit::Button button )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+
+  Application&  mApplication;                             ///< Application instance
+  Vector3 mStageSize;                                     ///< The size of the stage
+
+  Shader   mShader;
+  TextureSet mTextureSet1;
+  TextureSet mTextureSet2;
+  Geometry mGeometry;
+  Renderer mRenderer;
+  Actor    mMeshActor;
+  Renderer mRenderer2;
+  Actor    mMeshActor2;
+  Timer    mChangeImageTimer;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  ExampleController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/tilt/tilt-example.cpp b/examples/tilt/tilt-example.cpp
new file mode 100644 (file)
index 0000000..dec8078
--- /dev/null
@@ -0,0 +1,122 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/adaptor-framework/tilt-sensor.h>
+
+using namespace Dali;
+using Dali::Toolkit::TextLabel;
+
+// This example shows how to use sensor using a simple TextLabel
+//
+class TiltController : public ConnectionTracker
+{
+public:
+  TiltController( Application& application )
+  : mApplication( application )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TiltController::Create );
+  }
+
+  ~TiltController()
+  {
+    // Nothing to do here;
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::BLUE);
+
+    mTextLabel = TextLabel::New( "Tilt Sensor Demo" );
+    mTextLabel.SetParentOrigin( ParentOrigin::CENTER );
+    mTextLabel.SetAnchorPoint( AnchorPoint::CENTER );
+    mTextLabel.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    mTextLabel.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    mTextLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    mTextLabel.SetProperty( TextLabel::Property::POINT_SIZE, 15.0f );
+    mTextLabel.SetName( "tiltLabel" );
+    stage.Add( mTextLabel );
+
+    // Respond to a click anywhere on the stage
+    stage.GetRootLayer().TouchSignal().Connect( this, &TiltController::OnTouch );
+
+    CreateSensor();
+
+    // Connect signals to allow Back and Escape to exit.
+    stage.KeyEventSignal().Connect( this, &TiltController::OnKeyEvent );
+  }
+
+  void CreateSensor()
+  {
+    mTiltSensor = TiltSensor::Get();
+    if ( mTiltSensor.Start() )
+    {
+      // Get notifications when the device is tilted
+      mTiltSensor.TiltedSignal().Connect( this, &TiltController::OnTilted );
+    }
+  }
+
+  bool OnTouch( Actor actor, const TouchData& touch )
+  {
+    // quit the application
+    mApplication.Quit();
+    return true;
+  }
+
+  void OnTilted(const TiltSensor& sensor)
+  {
+    Quaternion pitchRot(Radian(Degree(sensor.GetPitch() * 90.0f)), Vector3(1, 0, 0));
+    Quaternion rollRot(Radian(Degree(sensor.GetRoll() * 90.0f)), Vector3(0, 1, 0));
+
+    mTextLabel.SetOrientation(Quaternion());
+    mTextLabel.RotateBy(rollRot);
+    mTextLabel.RotateBy(pitchRot);;
+  }
+
+  /**
+   * @brief OnKeyEvent signal handler.
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+  TiltSensor mTiltSensor;
+  TextLabel mTextLabel;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  TiltController test( application );
+
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/tooltip/tooltip-example.cpp b/examples/tooltip/tooltip-example.cpp
new file mode 100644 (file)
index 0000000..9068d2b
--- /dev/null
@@ -0,0 +1,178 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali-toolkit/devel-api/controls/tooltip/tooltip-properties.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const Vector4 STAGE_COLOR( 211.0f / 255.0f, 211.0f / 255.0f, 211.0f / 255.0f, 1.0f ); ///< The color of the stage
+const char * const THEME_PATH( DEMO_STYLE_DIR "tooltip-example-theme.json" ); ///< The theme used for this example
+const float POSITION_INCREMENTER( 0.2f ); ///< The position difference between the controls along the Y-Axis.
+} // unnamed namespace
+
+/**
+ * @brief Creates a controller which demonstrates the tooltip functionality in control.
+ *
+ * The Control base class supports tooltip functionality. However, the Toolkit Tooltip style is only set on Buttons by default.
+ * This example portrays the different ways in which a tooltip can be displayed and customised.
+ */
+class TooltipController : public ConnectionTracker
+{
+public:
+
+  TooltipController( Application& application )
+  : mApplication( application ),
+    previousPosition( 0.0f )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &TooltipController::Create );
+  }
+
+private:
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Hide the indicator bar
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    // Set the stage background color and connect to the stage's key signal to allow Back and Escape to exit.
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( STAGE_COLOR );
+    stage.KeyEventSignal().Connect( this, &TooltipController::OnKeyEvent );
+    const Vector2 stageSize = stage.GetSize();
+
+    // Add a text label at the top for information purposes
+    Control label = TextLabel::New( "Hover over buttons to see tooltip" );
+    label.SetParentOrigin( ParentOrigin::TOP_CENTER );
+    label.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+    label.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "Center" );
+    stage.Add( label );
+
+    // Simple tooltip from stylesheet
+    Control simple = PushButton::New();
+    simple.SetStyleName( "TooltipTextOnly" );
+    SetLabel( simple, "Simple" );
+    Layout( simple, stageSize );
+    stage.Add( simple );
+
+    // Tooltip with icon and text, from stylesheet
+    Control iconWithText = PushButton::New();
+    iconWithText.SetStyleName( "TooltipArray" );
+    SetLabel( iconWithText, "Icon with Text" );
+    Layout( iconWithText, stageSize );
+    stage.Add( iconWithText );
+
+    // Tooltip with custom style, from stylesheet
+    Control customFromStylesheet = PushButton::New();
+    customFromStylesheet.SetStyleName( "TooltipCustom" );
+    SetLabel( customFromStylesheet, "Custom From Stylesheet" );
+    Layout( customFromStylesheet, stageSize );
+    stage.Add( customFromStylesheet );
+
+    // Tooltip with custom style, from code
+    Control customFromCode = PushButton::New();
+    SetLabel( customFromCode, "Custom From Code" );
+    Layout( customFromCode, stageSize );
+    customFromCode.SetProperty( DevelControl::Property::TOOLTIP,
+                                { { Tooltip::Property::CONTENT,
+                                    Property::Array{ { { { Toolkit::Visual::Property::TYPE, Visual::IMAGE },
+                                                         { ImageVisual::Property::URL, DEMO_IMAGE_DIR "Logo-for-demo.png" } } },
+                                                     { { { Toolkit::Visual::Property::TYPE, Visual::TEXT },
+                                                         { TextVisual::Property::TEXT_COLOR, Color::WHITE },
+                                                         { TextVisual::Property::TEXT, "Custom coded style\nat hover point" },
+                                                         { TextVisual::Property::MULTI_LINE, true },
+                                                         { TextVisual::Property::HORIZONTAL_ALIGNMENT, "CENTER" },
+                                                         { TextVisual::Property::POINT_SIZE, 16 } } } } },
+                                  { Tooltip::Property::LAYOUT, Vector2( 2, 1 ) },
+                                  { Tooltip::Property::POSITION, Tooltip::Position::HOVER_POINT },
+                                  { Tooltip::Property::BACKGROUND,
+                                    { { Tooltip::Background::Property::VISUAL, DEMO_IMAGE_DIR "tooltip.9.png" },
+                                      { Tooltip::Background::Property::BORDER, Rect< int >( 1, 5, 5, 1 ) } } }
+                                } );
+    stage.Add( customFromCode );
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if Back or the Escape key is received
+   * @param[in]  event  The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+  /**
+   * @brief Sets the label on the control.
+   * @param[in]  label  The label to set.
+   */
+  void SetLabel( Control control, std::string label )
+  {
+    if( control )
+    {
+      control.SetProperty( Button::Property::LABEL,
+                           Property::Map().Add( Toolkit::Visual::Property::TYPE, Visual::TEXT )
+                                          .Add( TextVisual::Property::TEXT, label ) );
+    }
+  }
+
+  /**
+   * @brief Lays out the control in the appropriate location.
+   * @param[in]  control    The control to layout.
+   * @param[in]  stageSize  The size of the stage, passing it in so we don't have to retrieve it every time.
+   */
+  void Layout( Control control, const Vector2& stageSize )
+  {
+    if( control )
+    {
+      previousPosition += POSITION_INCREMENTER;
+      control.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      control.SetSizeModeFactor( Vector3( 0.75, 0.1, 1.0 ) );
+      control.SetAnchorPoint( AnchorPoint::CENTER );
+      control.SetParentOrigin( ParentOrigin::TOP_CENTER );
+      control.SetY( stageSize.height * previousPosition );
+    }
+  }
+
+private:
+  Application&  mApplication;
+  float previousPosition;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, THEME_PATH );
+
+  TooltipController test( application );
+
+  application.MainLoop();
+
+  return 0;
+}
diff --git a/examples/transitions/shadow-button-impl.cpp b/examples/transitions/shadow-button-impl.cpp
new file mode 100644 (file)
index 0000000..c0117d0
--- /dev/null
@@ -0,0 +1,563 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "shadow-button-impl.h"
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali/devel-api/scripting/enum-helper.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+
+#include <cstdio>
+
+using namespace Dali; // Needed for macros
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+namespace Internal
+{
+
+namespace
+{
+
+
+Dali::BaseHandle Create()
+{
+  return Demo::ShadowButton::New();
+}
+
+DALI_TYPE_REGISTRATION_BEGIN( ShadowButton, Dali::Toolkit::Button, Create );
+
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "activeTransition", ARRAY, ACTIVE_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "inactiveTransition", ARRAY, INACTIVE_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "checkTransition", ARRAY, CHECK_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "uncheckTransition", ARRAY, UNCHECK_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "backgroundVisual", MAP, BACKGROUND_VISUAL );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "checkboxBgVisual", MAP, CHECKBOX_BG_VISUAL );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "checkboxFgVisual", MAP, CHECKBOX_FG_VISUAL );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "labelVisual", MAP, LABEL_VISUAL );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "checkState", BOOLEAN, ACTIVE_STATE );
+DALI_PROPERTY_REGISTRATION( Demo, ShadowButton, "checkState", BOOLEAN, CHECK_STATE );
+
+DALI_TYPE_REGISTRATION_END();
+
+DALI_ENUM_TO_STRING_TABLE_BEGIN( VISUAL_PROPERTIES )
+{ "backgroundVisual", Demo::ShadowButton::Property::BACKGROUND_VISUAL },
+{ "checkboxBgVisual", Demo::ShadowButton::Property::CHECKBOX_BG_VISUAL},
+{ "checkboxFgVisual", Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL},
+{ "labelVisual",      Demo::ShadowButton::Property::LABEL_VISUAL}
+DALI_ENUM_TO_STRING_TABLE_END( VISUAL_PROPERTIES )
+
+Toolkit::TransitionData ConvertPropertyToTransition( const Property::Value& value )
+{
+  Toolkit::TransitionData transitionData;
+
+  if( value.GetType() == Property::ARRAY )
+  {
+    transitionData = Toolkit::TransitionData::New( *value.GetArray());
+  }
+  else if( value.GetType() == Property::MAP )
+  {
+    transitionData = Toolkit::TransitionData::New( *value.GetMap() );
+  }
+  return transitionData;
+}
+
+} // anonymous namespace
+
+
+Internal::ShadowButton::ShadowButton()
+: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ),
+  mCheckState(false),
+  mActiveState(false)
+{
+}
+
+Internal::ShadowButton::~ShadowButton()
+{
+}
+
+Demo::ShadowButton Internal::ShadowButton::New()
+{
+  IntrusivePtr<Internal::ShadowButton> impl = new Internal::ShadowButton();
+  Demo::ShadowButton handle = Demo::ShadowButton( *impl );
+  impl->Initialize();
+  return handle;
+}
+
+void ShadowButton::SetActiveState( bool active )
+{
+  if( active != mActiveState )
+  {
+    mActiveState = active;
+    if( active )
+    {
+      StartTransition( Demo::ShadowButton::Property::ACTIVE_TRANSITION );
+    }
+    else
+    {
+      StartTransition( Demo::ShadowButton::Property::INACTIVE_TRANSITION );
+    }
+  }
+}
+
+bool ShadowButton::GetActiveState()
+{
+  return mActiveState;
+}
+
+void ShadowButton::SetCheckState( bool checkState )
+{
+  mCheckState = checkState;
+  DevelControl::EnableVisual( *this, Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL, true );
+  if( Self().OnStage() )
+  {
+    if( checkState )
+    {
+      StartTransition( Demo::ShadowButton::Property::CHECK_TRANSITION );
+    }
+    else
+    {
+      StartTransition( Demo::ShadowButton::Property::UNCHECK_TRANSITION );
+    }
+  }
+  RelayoutRequest();
+}
+
+bool ShadowButton::GetCheckState()
+{
+  return mCheckState;
+}
+
+void ShadowButton::StartTransition( Property::Index transitionId )
+{
+  Transitions::iterator iter = FindTransition( transitionId );
+  if( iter != mTransitions.end() )
+  {
+    if( iter->mAnimation )
+    {
+      iter->mAnimation.Stop();
+      iter->mPlaying = false;
+
+      iter->mAnimation.FinishedSignal().Disconnect( this, &ShadowButton::OnTransitionFinished );
+    }
+
+    iter->mAnimation = DevelControl::CreateTransition( *this, iter->mTransitionData );
+    StoreTargetLayouts( iter->mTransitionData );
+
+    iter->mAnimation.FinishedSignal().Connect( this, &ShadowButton::OnTransitionFinished );
+    iter->mAnimation.Play();
+    iter->mPlaying = true;
+  }
+}
+
+void ShadowButton::OnTransitionFinished( Animation& src )
+{
+  ShadowButton::Transitions::iterator iter = mTransitions.begin();
+  for( ; iter != mTransitions.end(); ++iter )
+  {
+    if( iter->mAnimation == src )
+    {
+      iter->mPlaying = false;
+      iter->mAnimation.Reset(); // Remove the animation when it's finished.
+      switch( iter->mTransitionId )
+      {
+        case Demo::ShadowButton::Property::ACTIVE_TRANSITION:
+        {
+          // Consider relayouting the text.
+          break;
+        }
+        case Demo::ShadowButton::Property::INACTIVE_TRANSITION:
+        {
+          // Consider relayouting the text.
+          break;
+        }
+        case Demo::ShadowButton::Property::UNCHECK_TRANSITION:
+        {
+          DevelControl::EnableVisual( *this, Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL, false );
+          break;
+        }
+      }
+      break;
+    }
+  }
+}
+
+void ShadowButton::OnInitialize()
+{
+  Actor self = Self();
+}
+
+void ShadowButton::OnStageConnection( int depth )
+{
+  Control::OnStageConnection( depth );
+}
+
+void ShadowButton::OnStageDisconnection()
+{
+  Control::OnStageDisconnection();
+}
+
+void ShadowButton::OnSizeSet( const Vector3& targetSize )
+{
+  Control::OnSizeSet( targetSize );
+  RelayoutVisuals( Vector2( targetSize ) );
+}
+
+void ShadowButton::OnRelayout( const Vector2& targetSize, RelayoutContainer& container )
+{
+  RelayoutVisuals( targetSize );
+}
+
+void ShadowButton::RelayoutVisuals( const Vector2& targetSize )
+{
+  bool transitioning = false;
+  ShadowButton::Transitions::iterator iter = mTransitions.begin();
+  for( ; iter != mTransitions.end(); ++iter )
+  {
+    if( iter->mPlaying == true )
+    {
+      transitioning = true;
+      break;
+    }
+  }
+
+  if( ! transitioning )
+  {
+    for( ShadowButton::Transforms::iterator iter = mTransforms.begin();
+         iter != mTransforms.end(); ++iter )
+    {
+      switch( iter->mTransformId )
+      {
+        case Demo::ShadowButton::Property::BACKGROUND_VISUAL:
+        {
+          mBackgroundVisual.SetTransformAndSize( iter->mTransform, targetSize );
+          break;
+        }
+        case Demo::ShadowButton::Property::CHECKBOX_BG_VISUAL:
+        {
+          mCheckboxBgVisual.SetTransformAndSize( iter->mTransform, targetSize );
+          break;
+        }
+        case Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL:
+        {
+          mCheckboxFgVisual.SetTransformAndSize( iter->mTransform, targetSize );
+          break;
+        }
+        case Demo::ShadowButton::Property::LABEL_VISUAL:
+        {
+          mLabelVisual.SetTransformAndSize( iter->mTransform, targetSize );
+          break;
+        }
+      }
+    }
+  }
+}
+
+Vector3 ShadowButton::GetNaturalSize()
+{
+  int width;
+  int height;
+
+  Vector2 checkboxBgSize;
+  Vector2 checkboxFgSize;
+  Vector2 labelSize;
+  mCheckboxBgVisual.GetNaturalSize( checkboxBgSize );
+  mCheckboxFgVisual.GetNaturalSize( checkboxFgSize );
+  mLabelVisual.GetNaturalSize( labelSize );
+
+  width = std::max( checkboxBgSize.x, checkboxFgSize.x ) + labelSize.x;
+  height = std::max( std::max( checkboxFgSize.y, checkboxBgSize.y ), labelSize.y );
+
+  return Vector3( width, height, height );
+}
+
+void ShadowButton::OnStyleChange( Toolkit::StyleManager styleManager, StyleChange::Type change )
+{
+  // Chain up.
+  Control::OnStyleChange( styleManager, change );
+}
+
+ShadowButton::Transitions::iterator ShadowButton::FindTransition( Property::Index index )
+{
+  bool found = false;
+  ShadowButton::Transitions::iterator iter = mTransitions.begin();
+  for( ; iter != mTransitions.end(); ++iter )
+  {
+    if( iter->mTransitionId == index )
+    {
+      found = true;
+      break;
+    }
+  }
+  if( ! found )
+  {
+    iter = mTransitions.end();
+  }
+  return iter;
+}
+
+ShadowButton::Transforms::iterator ShadowButton::FindTransform( Property::Index index )
+{
+  bool found = false;
+  ShadowButton::Transforms::iterator iter = mTransforms.begin();
+  for( ; iter != mTransforms.end(); ++iter )
+  {
+    if( iter->mTransformId == index )
+    {
+      found = true;
+      break;
+    }
+  }
+  if( ! found )
+  {
+    iter = mTransforms.end();
+  }
+  return iter;
+}
+
+void ShadowButton::ResetVisual(
+  Property::Index        index,
+  Visual::Base&          visual,
+  const Property::Value& value )
+{
+  if( visual )
+  {
+    // we are replacing an existing visual, so force relayout
+    RelayoutRequest();
+  }
+  Property::Map* map = value.GetMap();
+  if( map )
+  {
+    visual = Toolkit::VisualFactory::Get().CreateVisual( *map );
+
+    // Set the appropriate depth index.
+    // @todo Should be able to set this from the style sheet
+    switch( index )
+    {
+      case Demo::ShadowButton::Property::BACKGROUND_VISUAL:
+      {
+        DevelControl::RegisterVisual( *this, index, visual, 0 );
+        break;
+      }
+      case Demo::ShadowButton::Property::CHECKBOX_BG_VISUAL:
+      {
+        DevelControl::RegisterVisual( *this, index, visual, 1 );
+        break;
+      }
+      case Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL:
+      {
+        DevelControl::RegisterVisual( *this, index, visual, mCheckState, 2 );
+        break;
+      }
+      case Demo::ShadowButton::Property::LABEL_VISUAL:
+      {
+        DevelControl::RegisterVisual( *this, index, visual, 1 );
+        break;
+      }
+    }
+
+    // Extract transform maps out of the visual definition and store them
+    Property::Value* value = map->Find( Visual::Property::TRANSFORM, "transform");
+    if( value )
+    {
+      Property::Map* transformMap = value->GetMap();
+      if( transformMap )
+      {
+        ShadowButton::Transforms::iterator iter = FindTransform( index );
+        if( iter != mTransforms.end() )
+        {
+          iter->mTransform = *transformMap;
+        }
+        else
+        {
+          mTransforms.push_back( Transform( index, *transformMap ) );
+        }
+      }
+    }
+  }
+}
+
+bool IsTransformProperty( const std::string& property )
+{
+  const char* transformProperties[]= { "size", "offset", "origin", "anchorPoint", "offsetPolicy", "sizePolicy" };
+  const int NUM_TRANSFORM_PROPERTIES = sizeof( transformProperties ) / sizeof( const char * );
+
+  bool found=false;
+  for( int i=0; i<NUM_TRANSFORM_PROPERTIES; ++i )
+  {
+    if( property == transformProperties[i] )
+    {
+      found = true;
+      break;
+    }
+  }
+  return found;
+}
+
+void ShadowButton::StoreTargetLayouts( TransitionData transitionData )
+{
+  // Pseudo code
+  // foreach animator in transitionData
+  //   if animator{"property"} in [ "size", "offset", "origin", "anchorPoint", "offsetPolicy", "sizePolicy" ]
+  //     transforms{ animator{"target"} }->{animator{"property"}} = animator{"targetValue"}
+
+
+  for( unsigned int i=0; i < transitionData.Count(); ++i )
+  {
+    Property::Map animator = transitionData.GetAnimatorAt(i);
+    Property::Value* target = animator.Find( "target" );
+    if( target )
+    {
+      // Convert to index
+      Property::Index index = Property::INVALID_INDEX;
+      if( Scripting::GetEnumerationProperty( *target, VISUAL_PROPERTIES_TABLE, VISUAL_PROPERTIES_TABLE_COUNT, index ) )
+      {
+        ShadowButton::Transforms::iterator iter = FindTransform( index );
+        if( iter != mTransforms.end() )
+        {
+          Property::Value* property = animator.Find( "property" );
+          if( property )
+          {
+            std::string propertyString;
+            property->Get(propertyString);
+            if( IsTransformProperty( propertyString ) )
+            {
+              Property::Value* targetValue = animator.Find( "targetValue" );
+              if( targetValue )
+              {
+                iter->mTransform[ propertyString ] = *targetValue;
+              }
+            }
+          }
+        }
+      }
+    }
+  }
+}
+
+void ShadowButton::ResetTransition(
+  Property::Index        index,
+  const Property::Value& value)
+{
+  ShadowButton::Transitions::iterator iter = FindTransition( index );
+  if( iter != mTransitions.end() )
+  {
+    // Already exists
+    iter->mTransitionData = ConvertPropertyToTransition( value );
+    iter->mAnimation.Stop();
+    iter->mAnimation.Clear();
+  }
+  else
+  {
+    mTransitions.push_back( Transition( index, ConvertPropertyToTransition( value ) ) );
+  }
+}
+
+
+void ShadowButton::SetProperty( BaseObject* object, Property::Index index, const Property::Value& value )
+{
+  Demo::ShadowButton shadowButton = Demo::ShadowButton::DownCast( Dali::BaseHandle( object ) );
+
+  if( shadowButton )
+  {
+    ShadowButton& impl = GetImpl( shadowButton );
+    switch ( index )
+    {
+      case Demo::ShadowButton::Property::BACKGROUND_VISUAL:
+      {
+        impl.ResetVisual( index, impl.mBackgroundVisual, value );
+        break;
+      }
+      case Demo::ShadowButton::Property::CHECKBOX_BG_VISUAL:
+      {
+        impl.ResetVisual( index, impl.mCheckboxBgVisual, value );
+        break;
+      }
+      case Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL:
+      {
+        impl.ResetVisual( index, impl.mCheckboxFgVisual, value );
+        DevelControl::EnableVisual( impl, Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL, impl.mCheckState );
+        break;
+      }
+      case Demo::ShadowButton::Property::LABEL_VISUAL:
+      {
+        impl.ResetVisual( index, impl.mLabelVisual, value );
+        break;
+      }
+      case Demo::ShadowButton::Property::ACTIVE_TRANSITION:
+      case Demo::ShadowButton::Property::INACTIVE_TRANSITION:
+      case Demo::ShadowButton::Property::CHECK_TRANSITION:
+      case Demo::ShadowButton::Property::UNCHECK_TRANSITION:
+      {
+        impl.ResetTransition( index, value );
+        break;
+      }
+    }
+  }
+}
+
+Property::Value ShadowButton::GetProperty( BaseObject* object, Property::Index propertyIndex )
+{
+  Property::Value value;
+
+  Demo::ShadowButton shadowButton = Demo::ShadowButton::DownCast( Dali::BaseHandle( object ) );
+
+  if ( shadowButton )
+  {
+    ShadowButton& impl = GetImpl( shadowButton );
+    switch ( propertyIndex )
+    {
+      case Demo::ShadowButton::Property::BACKGROUND_VISUAL:
+      {
+        Property::Map map;
+        impl.mBackgroundVisual.CreatePropertyMap(map);
+        value = map;
+        break;
+      }
+      case Demo::ShadowButton::Property::CHECKBOX_BG_VISUAL:
+      {
+        Property::Map map;
+        impl.mCheckboxBgVisual.CreatePropertyMap(map);
+        value = map;
+        break;
+      }
+      case Demo::ShadowButton::Property::CHECKBOX_FG_VISUAL:
+      {
+        Property::Map map;
+        impl.mCheckboxFgVisual.CreatePropertyMap(map);
+        value = map;
+        break;
+      }
+      case Demo::ShadowButton::Property::LABEL_VISUAL:
+      {
+        Property::Map map;
+        impl.mLabelVisual.CreatePropertyMap(map);
+        value = map;
+        break;
+      }
+
+      default:
+        break;
+    }
+  }
+
+  return value;
+}
+
+
+} // Internal
+} // Demo
diff --git a/examples/transitions/shadow-button-impl.h b/examples/transitions/shadow-button-impl.h
new file mode 100644 (file)
index 0000000..cbf146e
--- /dev/null
@@ -0,0 +1,220 @@
+#ifndef DALI_DEMO_INTERNAL_SHADOW_BUTTON_IMPL_H
+#define DALI_DEMO_INTERNAL_SHADOW_BUTTON_IMPL_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "shadow-button.h"
+#include <dali/public-api/animation/animation.h>
+#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-base.h>
+#include <dali-toolkit/devel-api/visual-factory/transition-data.h>
+
+namespace Demo
+{
+
+namespace Internal // To use TypeRegistry, handle and body classes need the same name
+{
+
+class ShadowButton : public Dali::Toolkit::Internal::Control
+{
+public:
+  /**
+   * Instantiate a new ShadowButton object
+   */
+  static Demo::ShadowButton New();
+  ShadowButton();
+  ~ShadowButton();
+
+public: // API
+  /**
+   * @brief Set the button to be active or inactive.
+   *
+   * The button will perform a transition if there is a state change.
+   * @param[in] active The active state
+   */
+  void SetActiveState( bool active );
+
+  /**
+   * Get the active state
+   * @return the active state
+   */
+  bool GetActiveState();
+
+  /**
+   * Set the check state
+   * @param[in] checkState The state of the checkbox
+   */
+  void SetCheckState( bool checkState );
+
+  /**
+   * Get the check state
+   * @return the check state
+   */
+  bool GetCheckState();
+
+public:  // Properties
+  /**
+   * Called when a property of an object of this type is set.
+   * @param[in] object The object whose property is set.
+   * @param[in] index The property index.
+   * @param[in] value The new property value.
+   */
+  static void SetProperty( Dali::BaseObject* object, Dali::Property::Index index, const Dali::Property::Value& value );
+
+  /**
+   * Called to retrieve a property of an object of this type.
+   * @param[in] object The object whose property is to be retrieved.
+   * @param[in] index The property index.
+   * @return The current value of the property.
+   */
+  static Dali::Property::Value GetProperty( Dali::BaseObject* object, Dali::Property::Index propertyIndex );
+
+private: // From Control
+  /**
+   * @copydoc Toolkit::Button::OnInitialize()
+   */
+  virtual void OnInitialize();
+
+  /**
+   * @copydoc Toolkit::Button::OnStageConnect()
+   */
+  virtual void OnStageConnection( int depth );
+
+  /**
+   * @copydoc Toolkit::Button::OnStageDisconnection()
+   */
+  virtual void OnStageDisconnection();
+
+  /**
+   * @copydoc Toolkit::Button::OnSizeSet()
+   */
+  virtual void OnSizeSet( const Dali::Vector3& targetSize );
+
+  /**
+   * @copydoc Toolkit::Button::OnRelayout()
+   */
+  virtual void OnRelayout( const Dali::Vector2& targetSize, Dali::RelayoutContainer& container );
+  /**
+   * @copydoc Toolkit::Button::GetNaturalSize
+   */
+  virtual Dali::Vector3 GetNaturalSize();
+
+  /**
+   * @copydoc Toolkit::Button::OnStyleChange
+   */
+  virtual void OnStyleChange( Dali::Toolkit::StyleManager styleManager, Dali::StyleChange::Type change );
+
+private:
+  struct Transition
+  {
+    Dali::Property::Index mTransitionId;
+    Dali::Toolkit::TransitionData mTransitionData;
+    Dali::Animation mAnimation;
+    bool mPlaying;
+
+    Transition( Dali::Property::Index index, Dali::Toolkit::TransitionData transitionData )
+    : mTransitionId( index ),
+      mTransitionData( transitionData ),
+      mPlaying(false)
+    {
+    }
+  private:
+    Transition();
+  };
+
+  typedef std::vector<Transition> Transitions;
+
+  struct Transform
+  {
+    Dali::Property::Index mTransformId;
+    Dali::Property::Map   mTransform;
+
+    Transform( Dali::Property::Index index, Dali::Property::Map& map )
+    : mTransformId(index),
+      mTransform( map )
+    {
+    }
+  };
+  typedef std::vector<Transform> Transforms;
+
+private:
+  void StartTransition( Dali::Property::Index transitionId );
+
+  void OnTransitionFinished( Dali::Animation& handle );
+
+  Transitions::iterator FindTransition( Dali::Property::Index index );
+
+  Transforms::iterator FindTransform( Dali::Property::Index index );
+
+  /**
+   * Relayout the visuals as a result of size negotiation using
+   * the transforms provided in the stylesheet
+   */
+  void RelayoutVisuals( const Dali::Vector2& targetSize );
+
+  /**
+   * Relayout the visuals as a result of size negotiation using
+   * programmatically generated transforms
+   */
+  void RelayoutVisualsManually( const Dali::Vector2& targetSize );
+
+  void ResetVisual( Dali::Property::Index        index,
+                    Dali::Toolkit::Visual::Base& visual,
+                    const Dali::Property::Value& value );
+
+  void ResetTransition( Dali::Property::Index        index,
+                        const Dali::Property::Value& value );
+
+  void StoreTargetLayouts( Dali::Toolkit::TransitionData transitionData );
+
+private:
+  // undefined
+  ShadowButton( const ShadowButton& );
+  ShadowButton& operator=( const ShadowButton& );
+
+private:
+  // Data
+  Dali::Toolkit::Visual::Base mBackgroundVisual;
+  Dali::Toolkit::Visual::Base mCheckboxBgVisual;
+  Dali::Toolkit::Visual::Base mCheckboxFgVisual;
+  Dali::Toolkit::Visual::Base mLabelVisual;
+
+  Transitions mTransitions;
+  Transforms  mTransforms;
+  bool        mCheckState;
+  bool        mActiveState;
+};
+
+} // Internal
+
+inline Internal::ShadowButton& GetImpl( Demo::ShadowButton& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<Internal::ShadowButton&>(object);
+}
+
+inline const Internal::ShadowButton& GetImpl( const Demo::ShadowButton& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  const Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<const Internal::ShadowButton&>(object);
+}
+
+} // Demo
+
+#endif //  DALI_DEMO_SHADOW_BUTTON_IMPL_H
diff --git a/examples/transitions/shadow-button.cpp b/examples/transitions/shadow-button.cpp
new file mode 100644 (file)
index 0000000..13de599
--- /dev/null
@@ -0,0 +1,94 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "shadow-button.h"
+#include "shadow-button-impl.h"
+
+namespace Demo
+{
+
+ShadowButton::ShadowButton()
+{
+}
+
+ShadowButton::ShadowButton( const ShadowButton& control )
+: Control( control )
+{
+}
+
+ShadowButton& ShadowButton::operator= ( const ShadowButton& rhs )
+{
+  if( &rhs != this )
+  {
+    Control::operator=( rhs );
+  }
+  return *this;
+}
+
+ShadowButton::~ShadowButton()
+{
+}
+
+ShadowButton ShadowButton::New()
+{
+  ShadowButton control = Internal::ShadowButton::New();
+  return control;
+}
+
+ShadowButton ShadowButton::New( const std::string& url )
+{
+  ShadowButton control = Internal::ShadowButton::New();
+  return control;
+}
+
+ShadowButton ShadowButton::DownCast( BaseHandle handle )
+{
+  return Control::DownCast< ShadowButton, Internal::ShadowButton > ( handle );
+}
+
+void ShadowButton::SetActiveState( bool active )
+{
+  GetImpl(*this).SetActiveState( active );
+}
+
+bool ShadowButton::GetActiveState()
+{
+  return GetImpl(*this).GetActiveState();
+}
+
+void ShadowButton::SetCheckState( bool checkState )
+{
+  GetImpl(*this).SetCheckState( checkState );
+}
+
+bool ShadowButton::GetCheckState()
+{
+  return GetImpl(*this).GetCheckState();
+}
+
+ShadowButton::ShadowButton( Internal::ShadowButton& implementation )
+: Control( implementation )
+{
+}
+
+ShadowButton::ShadowButton( Dali::Internal::CustomActor* internal )
+: Control( internal )
+{
+  VerifyCustomActorPointer< Internal::ShadowButton >( internal ) ;
+}
+
+
+} //namespace Demo
diff --git a/examples/transitions/shadow-button.h b/examples/transitions/shadow-button.h
new file mode 100644 (file)
index 0000000..e06b3db
--- /dev/null
@@ -0,0 +1,149 @@
+#ifndef DALI_DEMO_SHADOW_BUTTON_H
+#define DALI_DEMO_SHADOW_BUTTON_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <string>
+
+namespace Demo
+{
+
+// All type registered controls need to have the same name for the body
+// and the handle
+namespace Internal
+{
+class ShadowButton;
+}
+
+/**
+ * Button that allows the RGB channels of an image to be altered.
+ */
+class ShadowButton : public Dali::Toolkit::Control
+{
+public:
+  /**
+   * The start and end property ranges for this Control
+   */
+  enum PropertyRange
+  {
+    PROPERTY_START_INDEX = Dali::Toolkit::Control::CONTROL_PROPERTY_END_INDEX + 1,
+    PROPERTY_END_INDEX   = PROPERTY_START_INDEX + 1000,
+    ANIMATABLE_PROPERTY_START_INDEX = Dali::ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX,
+    ANIMATABLE_PROPERTY_END_INDEX = ANIMATABLE_PROPERTY_START_INDEX+1000
+  };
+
+  struct Property
+  {
+    enum
+    {
+      ACTIVE_TRANSITION = PROPERTY_START_INDEX,
+      INACTIVE_TRANSITION,
+      CHECK_TRANSITION,
+      UNCHECK_TRANSITION,
+      BACKGROUND_VISUAL,
+      CHECKBOX_BG_VISUAL,
+      CHECKBOX_FG_VISUAL,
+      LABEL_VISUAL,
+      ACTIVE_STATE,
+      CHECK_STATE,
+    };
+  };
+
+public: // Construction / destruction
+
+  /**
+   * Create an uninitialized handle
+   */
+  ShadowButton();
+
+  /**
+   * Create a new image channel button without an image. Use
+   * SetImage to give this button an image
+   */
+  static ShadowButton New();
+
+  /**
+   * Create a new image channel button from a given URL
+   */
+  static ShadowButton New( const std::string& url );
+
+  /**
+   * Destructor. This is non-virtual since derived Handle types must not
+   * contain data or virtual methods
+   */
+  ~ShadowButton();
+
+  /**
+   * Copy Constructor
+   */
+  ShadowButton( const ShadowButton& shadowButton );
+
+  /**
+   * Assignment Operator
+   */
+  ShadowButton& operator=( const ShadowButton& shadowButton );
+
+  /**
+   * Downcast
+   */
+  static ShadowButton DownCast( BaseHandle handle );
+
+public: // API
+
+  /**
+   * @brief Set the button to be active or inactive.
+   *
+   * The button will perform a transition if there is a state change.
+   * @param[in] active The active state
+   */
+  void SetActiveState( bool active );
+
+  /**
+   * @brief Get the button's active state
+   *
+   * @return The active state
+   */
+  bool GetActiveState();
+
+  /**
+   * Set the check state
+   * @param[in] checkState The state of the checkbox
+   */
+  void SetCheckState( bool checkState );
+
+  /**
+   * Get the check state
+   * @return the check state
+   */
+  bool GetCheckState();
+
+public: // Not for public use
+  /**
+   * Create a handle from an implementation
+   */
+  ShadowButton( Internal::ShadowButton& implementation );
+
+  /**
+   * Allow the creation of an ShadowButton handle from an internal CustomActor pointer
+   */
+  ShadowButton( Dali::Internal::CustomActor* internal );
+};
+
+} // namespace Demo
+
+#endif // DALI_DEMO_SHADOW_BUTTON_H
diff --git a/examples/transitions/transition-application.cpp b/examples/transitions/transition-application.cpp
new file mode 100644 (file)
index 0000000..d2697d5
--- /dev/null
@@ -0,0 +1,225 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file transition-application.cpp
+ * @brief Application class for showing stylable transitions
+ */
+
+// Class include
+#include "transition-application.h"
+
+// External includes
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include "shadow-button.h"
+#include <cstdio>
+#include <sstream>
+
+// Internal includes
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+void SetLabelText( Button button, const char* label )
+{
+  button.SetProperty( Toolkit::Button::Property::LABEL, label );
+}
+
+}
+
+namespace Demo
+{
+
+const char* TransitionApplication::DEMO_THEME_ONE_PATH( DEMO_STYLE_DIR "style-example-theme-one.json" );
+const char* TransitionApplication::DEMO_THEME_TWO_PATH( DEMO_STYLE_DIR "style-example-theme-two.json" );
+
+
+TransitionApplication::TransitionApplication( Application& application )
+: mApplication( application ),
+  mTitle(),
+  mShadowButton(),
+  mActionButtons(),
+  mVisualIndex( Property::INVALID_INDEX ),
+  mActionIndex( Property::INVALID_INDEX )
+{
+  application.InitSignal().Connect( this, &TransitionApplication::Create );
+}
+
+TransitionApplication::~TransitionApplication()
+{
+}
+
+void TransitionApplication::Create( Application& application )
+{
+  Stage stage = Stage::GetCurrent();
+  stage.KeyEventSignal().Connect(this, &TransitionApplication::OnKeyEvent);
+  stage.SetBackgroundColor( Vector4( 0.1f, 0.1f, 0.1f, 1.0f ) );
+
+  // Hide the indicator bar
+  application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+  // Content panes:
+  TableView contentLayout = TableView::New( 3, 1 );
+  contentLayout.SetName("ContentLayout");
+  contentLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  contentLayout.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  contentLayout.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  contentLayout.SetCellPadding( Vector2( 0.0f, 5.0f ) );
+  contentLayout.SetBackgroundColor( Vector4(0.949, 0.949, 0.949, 1.0) );
+  // Assign all rows the size negotiation property of fitting to children
+
+  stage.Add( contentLayout );
+
+  mTitle = TextLabel::New( "Custom Control Transition Example" );
+  mTitle.SetName( "Title" );
+  mTitle.SetStyleName("Title");
+  mTitle.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  mTitle.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+  mTitle.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  contentLayout.Add( mTitle );
+  contentLayout.SetFitHeight(0); // Fill width
+
+  // Provide some padding around the center cell
+  TableView buttonLayout = TableView::New( 3, 3 );
+  buttonLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  buttonLayout.SetFixedHeight(1, 100 );
+  buttonLayout.SetFixedWidth(1, 350 );
+  contentLayout.Add( buttonLayout );
+
+  mShadowButton = ShadowButton::New();
+  mShadowButton.SetName("ShadowButton");
+  mShadowButton.SetActiveState( false );
+  mShadowButton.SetAnchorPoint( AnchorPoint::CENTER );
+  mShadowButton.SetParentOrigin( ParentOrigin::CENTER );
+  mShadowButton.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  mShadowButton.SetProperty( DevelControl::Property::STATE, DevelControl::DISABLED );
+  mShadowButton.SetProperty( DevelControl::Property::SUB_STATE, "UNCHECKED" );
+
+  buttonLayout.AddChild( mShadowButton, TableView::CellPosition(1, 1) );
+
+  TableView actionButtonLayout = TableView::New( 1, NUMBER_OF_ACTION_BUTTONS+1 );
+  actionButtonLayout.SetName("ThemeButtonsLayout");
+  actionButtonLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  actionButtonLayout.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+  actionButtonLayout.SetFitHeight( 0 );
+
+  TextLabel label = TextLabel::New( "Action: ");
+  label.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  label.SetStyleName("ActionLabel");
+  actionButtonLayout.AddChild( label, TableView::CellPosition( 0, 0 ) );
+  actionButtonLayout.SetCellAlignment( TableView::CellPosition( 0, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+  for( int i=0; i<NUMBER_OF_ACTION_BUTTONS; ++i )
+  {
+    mActionButtons[i] = PushButton::New();
+    mActionButtons[i].SetName("ActionButton");
+    mActionButtons[i].SetStyleName("ActionButton");
+    mActionButtons[i].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mActionButtons[i].SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mActionIndex = mActionButtons[i].RegisterProperty( "actionId", i, Property::READ_WRITE );
+    mActionButtons[i].ClickedSignal().Connect( this, &TransitionApplication::OnActionButtonClicked );
+    actionButtonLayout.AddChild( mActionButtons[i], TableView::CellPosition( 0, 1+i ) );
+  }
+  SetLabelText( mActionButtons[0], "Enable" );
+  SetLabelText( mActionButtons[1], "Check" );
+  mActionButtons[1].SetProperty( Button::Property::DISABLED, true );
+
+  contentLayout.Add( actionButtonLayout );
+  contentLayout.SetFitHeight(2);
+}
+
+bool TransitionApplication::OnActionButtonClicked( Button button )
+{
+  int action = button.GetProperty<int>( mActionIndex );
+  switch( action )
+  {
+    case 0:
+    {
+      bool activeState = mShadowButton.GetActiveState();
+      mShadowButton.SetActiveState( ! activeState );
+      if( activeState )
+      {
+        SetLabelText( button, "Enable" );
+        mShadowButton.SetProperty( DevelControl::Property::STATE, DevelControl::DISABLED );
+      }
+      else
+      {
+        SetLabelText( button, "Disable" );
+        mShadowButton.SetProperty( DevelControl::Property::STATE, DevelControl::NORMAL );
+      }
+      mActionButtons[1].SetProperty( Button::Property::DISABLED, activeState );
+      break;
+    }
+    case 1:
+    {
+      bool checkState = mShadowButton.GetCheckState();
+      mShadowButton.SetCheckState( ! checkState );
+      if( checkState )
+      {
+        SetLabelText( button, "Check" );
+        mShadowButton.SetProperty( DevelControl::Property::SUB_STATE, "UNCHECKED" );
+      }
+      else
+      {
+        SetLabelText( button, "Uncheck" );
+        mShadowButton.SetProperty( DevelControl::Property::SUB_STATE, "CHECKED" );
+      }
+      break;
+    }
+    case 2:
+    {
+      break;
+    }
+    case 3:
+    {
+      break;
+    }
+  }
+
+  return true;
+}
+
+void TransitionApplication::OnKeyEvent( const KeyEvent& keyEvent )
+{
+  static int keyPressed = 0;
+
+  if( keyEvent.state == KeyEvent::Down)
+  {
+    if( keyPressed == 0 ) // Is this the first down event?
+    {
+      printf("Key pressed: %s %d\n", keyEvent.keyPressedName.c_str(), keyEvent.keyCode );
+
+      if( IsKey( keyEvent, DALI_KEY_ESCAPE) || IsKey( keyEvent, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else if( keyEvent.keyPressedName.compare("Return") == 0 )
+      {
+      }
+    }
+    keyPressed = 1;
+  }
+  else if( keyEvent.state == KeyEvent::Up )
+  {
+    keyPressed = 0;
+  }
+}
+
+} // namespace Demo
diff --git a/examples/transitions/transition-application.h b/examples/transitions/transition-application.h
new file mode 100644 (file)
index 0000000..f694c8d
--- /dev/null
@@ -0,0 +1,80 @@
+#ifndef DALI_DEMO_TRANSITION_APPLICATION_H
+#define DALI_DEMO_TRANSITION_APPLICATION_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// External includes
+#include <dali-toolkit/dali-toolkit.h>
+#include "shadow-button.h"
+#include <cstdio>
+#include <sstream>
+
+// Internal includes
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+
+class TransitionApplication : public ConnectionTracker
+{
+public:
+  static const int NUMBER_OF_ACTION_BUTTONS=2;
+
+public:
+  // Constructor
+  TransitionApplication( Application& application );
+
+  // Destructor
+  ~TransitionApplication();
+
+  // Init signal handler
+  void Create( Application& application );
+
+  // Create the GUI components
+  Toolkit::TextLabel CreateTitle( std::string title );
+  Actor CreateContentPane();
+
+  // Key event handler
+  void OnKeyEvent( const KeyEvent& event );
+
+  bool OnActionButtonClicked( Button button );
+
+  static const char* DEMO_THEME_ONE_PATH;
+  static const char* DEMO_THEME_TWO_PATH;
+
+private:
+
+  /** Create a visual map
+   *
+   * @param[in] index The index of the visual to create
+   * @param[out] map The map to generate
+   */
+
+  Application& mApplication;
+  TextLabel mTitle;
+  ShadowButton mShadowButton;
+  PushButton mActionButtons[NUMBER_OF_ACTION_BUTTONS];
+  Property::Index mVisualIndex;
+  Property::Index mActionIndex;
+};
+
+} // Namespace Demo
+
+
+#endif // DALI_DEMO_TRANSITION_APPLICATION_H
diff --git a/examples/transitions/transition-example.cpp b/examples/transitions/transition-example.cpp
new file mode 100644 (file)
index 0000000..0047bfb
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file transition-example.cpp
+ * @brief Example of stylable transitions.
+ */
+
+// External includes
+#include <dali/dali.h>
+
+// Internal includes
+#include "transition-application.h"
+
+
+int DALI_EXPORT_API main( int argc, char** argv )
+{
+  const char* themeName = Demo::TransitionApplication::DEMO_THEME_ONE_PATH;
+
+  Application application = Application::New( &argc, &argv, themeName );
+  Demo::TransitionApplication transitionApplication( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/video-view/video-view-example.cpp b/examples/video-view/video-view-example.cpp
new file mode 100644 (file)
index 0000000..d900456
--- /dev/null
@@ -0,0 +1,307 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace Dali;
+using namespace Toolkit;
+
+namespace
+{
+  const int SEEK_POS( 5000 );
+  const int INIT_WIDTH( 600 );
+  const int INIT_HEIGHT( 400 );
+  const int BUTTON_SIZE( 80 );
+
+  const char* const PLAY_FILE = DEMO_VIDEO_DIR "demoVideo.mp4";
+  const char* const PLAY_IMAGE = DEMO_IMAGE_DIR "icon-play.png";
+  const char* const PAUSE_IMAGE = DEMO_IMAGE_DIR "Pause.png";
+  const char* const CHANGE_IMAGE = DEMO_IMAGE_DIR "icon-change.png";
+  const char* const FORWARD_IMAGE = DEMO_IMAGE_DIR "Forward.png";
+  const char* const BACKWARD_IMAGE = DEMO_IMAGE_DIR "Backward.png";
+
+}  // namespace
+
+class VideoViewController: public ConnectionTracker
+{
+ public:
+
+  VideoViewController( Application& application )
+    : mApplication( application ),
+      mIsPlay( false ),
+      mIsFullScreen( false ),
+      mScale( 1.f ),
+      mPinchStartScale( 1.0f )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &VideoViewController::Create );
+  }
+
+  ~VideoViewController()
+  {
+    mVideoView.Stop();
+  }
+
+  void Create( Application& application )
+  {
+    application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+    mStageSize = Stage::GetCurrent().GetSize();
+
+    mVideoView = Toolkit::VideoView::New();
+    Stage::GetCurrent().Add( mVideoView );
+    mVideoView.SetParentOrigin( ParentOrigin::CENTER );
+    mVideoView.SetAnchorPoint( AnchorPoint::CENTER );
+    mVideoView.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+    mVideoView.SetSize( INIT_WIDTH, INIT_HEIGHT );
+    mVideoView.SetProperty( VideoView::Property::LOOPING, true );
+    mVideoView.SetProperty( VideoView::Property::MUTED, false );
+    mVideoView.SetProperty( VideoView::Property::VIDEO, PLAY_FILE );
+
+    mMenu = Layer::New();
+    mMenu.SetParentOrigin( ParentOrigin::BOTTOM_LEFT );
+    mMenu.SetAnchorPoint( AnchorPoint::BOTTOM_LEFT );
+    mMenu.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    mMenu.SetSize( INIT_WIDTH, 120 );
+    mVideoView.Add( mMenu );
+
+    mPlayButton = PushButton::New();
+    mPlayButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mPlayButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mPlayButton.SetName( "Play" );
+    mPlayButton.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    mPlayButton.SetSize( BUTTON_SIZE, BUTTON_SIZE );
+    mPlayButton.SetPosition( 40, 10 );
+    mPlayButton.ClickedSignal().Connect( this, &VideoViewController::OnButtonClicked );
+
+    mPauseButton = PushButton::New();
+    mPauseButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mPauseButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mPauseButton.SetName( "Pause" );
+    mPauseButton.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    mPauseButton.SetSize( BUTTON_SIZE, BUTTON_SIZE );
+    mPauseButton.SetPosition( 40, 10 );
+    mPauseButton.ClickedSignal().Connect( this, &VideoViewController::OnButtonClicked );
+
+    mChangeButton = PushButton::New();
+    mChangeButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mChangeButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mChangeButton.SetName( "Change" );
+    mChangeButton.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    mChangeButton.SetSize( BUTTON_SIZE, BUTTON_SIZE );
+    mChangeButton.SetPosition( 140, 10 );
+    mChangeButton.ClickedSignal().Connect( this, &VideoViewController::OnButtonClicked );
+
+    mBackwardButton = PushButton::New();
+    mBackwardButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mBackwardButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mBackwardButton.SetName( "Backward" );
+    mBackwardButton.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    mBackwardButton.SetSize( BUTTON_SIZE, BUTTON_SIZE );
+    mBackwardButton.SetPosition( 240, 10 );
+    mBackwardButton.ClickedSignal().Connect( this, &VideoViewController::OnButtonClicked );
+
+    mForwardButton = PushButton::New();
+    mForwardButton.SetParentOrigin( ParentOrigin::TOP_LEFT );
+    mForwardButton.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mForwardButton.SetName( "Forward" );
+    mForwardButton.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS );
+    mForwardButton.SetSize( BUTTON_SIZE, BUTTON_SIZE );
+    mForwardButton.SetPosition( 340, 10 );
+    mForwardButton.ClickedSignal().Connect( this, &VideoViewController::OnButtonClicked );
+
+    mMenu.Add( mPlayButton );
+    mMenu.Add( mPauseButton );
+    mMenu.Add( mChangeButton );
+    mMenu.Add( mBackwardButton );
+    mMenu.Add( mForwardButton );
+
+    mPauseButton.SetVisible( false );
+    mPauseButton.SetProperty( Button::Property::DISABLED, true );
+    mPlayButton.SetVisible( true );
+    mPlayButton.SetProperty( Button::Property::DISABLED, false );
+    mChangeButton.SetVisible( true );
+    mChangeButton.SetProperty( Button::Property::DISABLED, false );
+
+    mPlayButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, PLAY_IMAGE );
+    mPlayButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, PLAY_IMAGE );
+    mPauseButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, PAUSE_IMAGE );
+    mPauseButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, PAUSE_IMAGE );
+
+    mChangeButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, CHANGE_IMAGE );
+    mChangeButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, CHANGE_IMAGE );
+
+    mBackwardButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, BACKWARD_IMAGE );
+    mBackwardButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, BACKWARD_IMAGE );
+    mForwardButton.SetProperty( Toolkit::Button::Property::UNSELECTED_BACKGROUND_VISUAL, FORWARD_IMAGE );
+    mForwardButton.SetProperty( Toolkit::Button::Property::SELECTED_BACKGROUND_VISUAL, FORWARD_IMAGE );
+
+    mPanGestureDetector = PanGestureDetector::New();
+    mPanGestureDetector.Attach( mVideoView );
+    mPanGestureDetector.DetectedSignal().Connect( this, &VideoViewController::OnPan );
+
+    mPinchGestureDetector = PinchGestureDetector::New();
+    mPinchGestureDetector.Attach( mVideoView );
+    mPinchGestureDetector.DetectedSignal().Connect( this, &VideoViewController::OnPinch );
+
+    mTapGestureDetector = TapGestureDetector::New();
+    mTapGestureDetector.Attach( mVideoView );
+    mTapGestureDetector.DetectedSignal().Connect( this, &VideoViewController::OnTap );
+
+    mRotationAnimation = Animation::New(2.f);
+    mRotationAnimation.AnimateBy( Property(mVideoView, Actor::Property::ORIENTATION), Quaternion(Degree(0.f), Degree(360.f), Degree(0.f)) );
+    mRotationAnimation.SetLooping(false);
+
+    Stage::GetCurrent().KeyEventSignal().Connect( this, &VideoViewController::OnKeyEvent );
+
+  }
+
+  bool OnButtonClicked( Button button )
+  {
+    if( mPauseButton.GetId() == button.GetId())
+    {
+       if( mIsPlay )
+      {
+        mPauseButton.SetVisible( false );
+        mPauseButton.SetProperty( Button::Property::DISABLED, true );
+        mPlayButton.SetVisible( true );
+        mPlayButton.SetProperty( Button::Property::DISABLED, false );
+
+        mIsPlay = false;
+        mVideoView.Pause();
+      }
+    }
+    else if( mPlayButton.GetId() == button.GetId())
+    {
+      mPauseButton.SetVisible( true );
+      mPauseButton.SetProperty( Button::Property::DISABLED, false );
+      mPlayButton.SetVisible( false );
+      mPlayButton.SetProperty( Button::Property::DISABLED, true );
+
+      mIsPlay = true;
+      mVideoView.Play();
+    }
+    else if( mChangeButton.GetId() == button.GetId())
+    {
+      bool underlay = false;
+      underlay = mVideoView.GetProperty( Toolkit::VideoView::Property::UNDERLAY ).Get< bool >();
+      if( underlay )
+      {
+        mVideoView.SetProperty( Toolkit::VideoView::Property::UNDERLAY, false );
+      }
+      else
+      {
+        mVideoView.SetProperty( Toolkit::VideoView::Property::UNDERLAY, true );
+      }
+    }
+    else if( mBackwardButton.GetId() == button.GetId())
+    {
+      mVideoView.Backward( SEEK_POS );
+    }
+    else if( mForwardButton.GetId() == button.GetId())
+    {
+      mVideoView.Forward( SEEK_POS );
+    }
+
+    return true;
+  }
+
+  void OnPan( Actor actor, const PanGesture& gesture )
+  {
+    if( !mIsFullScreen && gesture.state == Gesture::Continuing )
+    {
+      mVideoView.TranslateBy( Vector3( gesture.displacement ) );
+    }
+  }
+
+  void OnPinch( Actor actor, const PinchGesture& gesture )
+  {
+    if( gesture.state == Gesture::Started )
+    {
+      mPinchStartScale = mScale;
+    }
+
+    if( gesture.state == Gesture::Finished )
+    {
+      mScale = mPinchStartScale * gesture.scale;
+      mVideoView.SetScale( mScale );
+    }
+  }
+
+  void OnTap( Actor actor, const TapGesture& tapGesture )
+  {
+    if( !mIsFullScreen )
+    {
+      mVideoView.SetSize( mStageSize.x, mStageSize.y );
+      mIsFullScreen = true;
+    }
+    else
+    {
+      mVideoView.SetSize( INIT_WIDTH, INIT_HEIGHT );
+      mIsFullScreen = false;
+    }
+  }
+
+private:
+
+  /**
+   * Main key event handler
+   */
+  void OnKeyEvent(const KeyEvent& event)
+  {
+    if(event.state == KeyEvent::Down)
+    {
+      if( IsKey( event, DALI_KEY_ESCAPE) || IsKey( event, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+  VideoView mVideoView;
+  Layer mMenu;
+  Vector2 mStageSize;
+
+  bool mIsPlay;
+  bool mIsFullScreen;
+
+  PushButton mPlayButton;
+  PushButton mPauseButton;
+  PushButton mChangeButton;
+  PushButton mResetButton;
+  PushButton mBackwardButton;
+  PushButton mForwardButton;
+
+  PanGestureDetector mPanGestureDetector;
+  PinchGestureDetector mPinchGestureDetector;
+  TapGestureDetector mTapGestureDetector;
+  float mScale;
+  float mPinchStartScale;
+
+  Animation mRotationAnimation;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv, DEMO_THEME_PATH );
+  VideoViewController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/visual-fitting-mode/visual-fitting-mode-example.cpp b/examples/visual-fitting-mode/visual-fitting-mode-example.cpp
new file mode 100644 (file)
index 0000000..7873d32
--- /dev/null
@@ -0,0 +1,228 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/devel-api/object/handle-devel.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+const char * const IMAGE_NAME = DEMO_IMAGE_DIR "gallery-medium-1.jpg"; ///< The image to use.
+const Vector3 IMAGE_SIZE = Vector3( 300, 200, 0 ); ///< The size of the image-views.
+
+const float BORDER_SIZE = 2.0f; ///< The size of the border.
+const Property::Value BORDER ///< The border to use for each image-view.
+{
+  { Visual::Property::TYPE, Visual::BORDER },
+  { BorderVisual::Property::COLOR, Color::RED },
+  { BorderVisual::Property::SIZE, BORDER_SIZE }
+};
+const Extents LARGE_PADDING( 100.0f, 100.0f, 2.0f, 2.0f ); ///< The large padding extents.
+const Extents BORDER_ONLY_PADDING( BORDER_SIZE, BORDER_SIZE, BORDER_SIZE, BORDER_SIZE ); ///< The border only padding extents.
+
+const std::string INSTRUCTIONS_TEXT = "\n(Tap or Key Press To Change)"; ///< Instructions on how to change the padding mode.
+const std::string LARGE_PADDING_TEXT( "Padding: Left/Right Large" + INSTRUCTIONS_TEXT ); ///< Label to shown when large padding enabled.
+const std::string BORDER_ONLY_PADDING_TEXT( "Padding: Border Only" + INSTRUCTIONS_TEXT ); ///< Label to shown when border-only padding enabled.
+const std::string FILL_LABEL( "FILL" );
+const std::string FIT_KEEP_ASPECT_LABEL( "FIT\nKEEP ASPECT" );
+
+const Property::Map TEXT_LABEL_PROPERTIES ///< All the properties of the Large Text Label shown in the example.
+{
+  { Actor::Property::ANCHOR_POINT, AnchorPoint::CENTER },
+  { Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER },
+  { Actor::Property::WIDTH_RESIZE_POLICY, ResizePolicy::FILL_TO_PARENT },
+  { Actor::Property::HEIGHT_RESIZE_POLICY, ResizePolicy::FILL_TO_PARENT },
+  { Control::Property::BACKGROUND,
+    {
+      { Toolkit::Visual::Property::TYPE, Visual::GRADIENT },
+      { GradientVisual::Property::STOP_COLOR,  Property::Array{ Vector4( 167.0f, 207.0f, 223.0f, 255.0f ) / 255.0f,
+                                                                Vector4(   0.0f,  64.0f, 137.0f, 255.0f ) / 255.0f } },
+      { GradientVisual::Property::START_POSITION, Vector2( 0.0f, -0.5f ) },
+      { GradientVisual::Property::END_POSITION,   Vector2( 0.0f,  0.5f ) }
+    }
+  },
+  { TextLabel::Property::HORIZONTAL_ALIGNMENT, HorizontalAlignment::CENTER },
+  { TextLabel::Property::VERTICAL_ALIGNMENT, VerticalAlignment::CENTER },
+  { TextLabel::Property::MULTI_LINE, true }
+};
+
+const Property::Map FILL_IMAGE_PROPERTIES ///< The basic properties of the Fill image view.
+{
+  { Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_CENTER },
+  { Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_CENTER },
+  { Actor::Property::SIZE, IMAGE_SIZE },
+  { Control::Property::BACKGROUND, BORDER }
+};
+
+const Property::Map FIT_KEEP_ASPECT_RATIO_IMAGE_BASIC_PROPERTIES ///< The basic properties of the Fit Keep Aspect image view.
+{
+  { Actor::Property::ANCHOR_POINT, AnchorPoint::BOTTOM_CENTER },
+  { Actor::Property::PARENT_ORIGIN, ParentOrigin::BOTTOM_CENTER },
+  { Actor::Property::SIZE, IMAGE_SIZE },
+  { Control::Property::BACKGROUND, BORDER }
+};
+
+const Property::Map OVERLAY_LABEL_PROPERTIES ///< The image view overlay label properties
+{
+  { TextLabel::Property::TEXT_COLOR, Color::WHITE },
+  { TextLabel::Property::OUTLINE, { { "color", Color::BLACK }, { "width", 1.0f } } },
+  { TextLabel::Property::HORIZONTAL_ALIGNMENT, HorizontalAlignment::CENTER },
+  { TextLabel::Property::VERTICAL_ALIGNMENT, VerticalAlignment::CENTER },
+  { TextLabel::Property::MULTI_LINE, true },
+};
+} // unnamed namespace
+
+/**
+ * @brief This example shows how to use the Dali::Toolkit::DevelVisual::Property::VISUAL_FITTING_MODE property.
+ */
+class VisualFittingModeController : public ConnectionTracker
+{
+public:
+
+  /**
+   * @brief Constructor.
+   * @param[in]  application A reference to the Application class.
+   */
+  VisualFittingModeController( Application& application )
+  : mApplication( application ),
+    mLargePadding( true )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &VisualFittingModeController::Create );
+  }
+
+private:
+
+  /**
+   * @brief Called to initialise the application content
+   * @param[in] application A reference to the Application class.
+   */
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Color::WHITE );
+
+    // Text Label filling the entire screen, with a background
+    mTextLabel = DevelHandle::New< TextLabel >( TEXT_LABEL_PROPERTIES );
+    stage.Add( mTextLabel );
+
+    // We want to change the padding when tapping
+    mTapDetector = TapGestureDetector::New();
+    mTapDetector.Attach( mTextLabel );
+    mTapDetector.DetectedSignal().Connect( this, &VisualFittingModeController::OnTap );
+
+    // Create an ImageView with the default behaviour, i.e. image fills to control size
+    mFillImage = ImageView::New( IMAGE_NAME );
+    DevelHandle::SetProperties( mFillImage, FILL_IMAGE_PROPERTIES );
+    stage.Add( mFillImage );
+
+    // Create an ImageView that Keeps the aspect ratio while fitting within the given size
+    mFitKeepAspectRatioImage = DevelHandle::New< ImageView >( FIT_KEEP_ASPECT_RATIO_IMAGE_BASIC_PROPERTIES );
+    mFitKeepAspectRatioImage.SetProperty( ImageView::Property::IMAGE,
+                                          Property::Map
+                                          {
+                                            { Visual::Property::TYPE, Visual::IMAGE },
+                                            { ImageVisual::Property::URL, IMAGE_NAME },
+                                            { DevelVisual::Property::VISUAL_FITTING_MODE, DevelVisual::FIT_KEEP_ASPECT_RATIO }
+                                          } );
+    stage.Add( mFitKeepAspectRatioImage );
+
+    // Create an overlay label for fill image
+    Actor fillLabel = TextLabel::New( FILL_LABEL );
+    DevelHandle::SetProperties( fillLabel, FILL_IMAGE_PROPERTIES );
+    DevelHandle::SetProperties( fillLabel, OVERLAY_LABEL_PROPERTIES );
+    stage.Add( fillLabel );
+
+    // Create an overlay label for the Fit/Keep Aspect image
+    Actor fitLabel = TextLabel::New( FIT_KEEP_ASPECT_LABEL );
+    DevelHandle::SetProperties( fitLabel, FIT_KEEP_ASPECT_RATIO_IMAGE_BASIC_PROPERTIES );
+    DevelHandle::SetProperties( fitLabel, OVERLAY_LABEL_PROPERTIES );
+    stage.Add( fitLabel );
+
+    // Respond to key events, exit if ESC/Back, change the padding if anything else
+    stage.KeyEventSignal().Connect( this, &VisualFittingModeController::OnKeyEvent );
+
+    // Set the initial padding
+    ChangePadding();
+  }
+
+  /**
+   * @brief Changes the padding of both image-views to show how the VisualFittingMode is applied.
+   */
+  void ChangePadding()
+  {
+    mLargePadding = !mLargePadding;
+
+    const Extents padding( mLargePadding ? LARGE_PADDING : BORDER_ONLY_PADDING );
+    mFitKeepAspectRatioImage.SetProperty( Control::Property::PADDING, padding );
+    mFillImage.SetProperty( Control::Property::PADDING, padding );
+
+    mTextLabel.SetProperty( TextLabel::Property::TEXT, mLargePadding ? LARGE_PADDING_TEXT : BORDER_ONLY_PADDING_TEXT );
+  }
+
+  /**
+   * @brief Called when the main text-label is tapped.
+   *
+   * We just want to change the padding when this happens.
+   */
+  void OnTap( Actor /* actor */, const TapGesture& /* tap */ )
+  {
+    ChangePadding();
+  }
+
+  /**
+   * @brief Called when any key event is received
+   *
+   * Will use this to quit the application if we receive the Back or the Escape key & change
+   * the padding if any other key.
+   * @param[in] event The key event information
+   */
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else
+      {
+        ChangePadding();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication; ///< Reference to the application class.
+  Actor mFillImage; ///< An image-view that fills to the control size.
+  Actor mFitKeepAspectRatioImage; ///< An image-view that fits within the given size & keeps the aspect ratio.
+  Actor mTextLabel; ///< A text label to show the current padding mode.
+  TapGestureDetector mTapDetector; ///< A tap detector to change the padding mode.
+  bool mLargePadding; ///< If true, the large padding values are used. When false, only the border padding is applied.
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  VisualFittingModeController visualFittingModeController( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/visual-transitions/beat-control-impl.cpp b/examples/visual-transitions/beat-control-impl.cpp
new file mode 100644 (file)
index 0000000..dc88985
--- /dev/null
@@ -0,0 +1,381 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "beat-control-impl.h"
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/control-devel.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+
+using namespace Dali; // Needed for macros
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+namespace Internal
+{
+
+namespace
+{
+
+const int BOUNCE_ANIMATION_RUNNING(0x0001);
+const int FADE_ANIMATION_RUNNING  (0x0002);
+const int X_ANIMATION_RUNNING     (0x0004);
+const int Y_ANIMATION_RUNNING     (0x0008);
+
+
+Dali::BaseHandle Create()
+{
+  return Demo::BeatControl::New();
+}
+
+DALI_TYPE_REGISTRATION_BEGIN( BeatControl, Dali::Toolkit::Control, Create );
+
+DALI_PROPERTY_REGISTRATION( Demo, BeatControl, "bounceTransition", STRING, BOUNCE_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, BeatControl, "leftTransition", STRING, LEFT_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, BeatControl, "upTransition", STRING, UP_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, BeatControl, "fadeTransition", STRING, FADE_TRANSITION );
+DALI_PROPERTY_REGISTRATION( Demo, BeatControl, "beatVisual", MAP, BEAT_VISUAL );
+DALI_TYPE_REGISTRATION_END();
+
+
+Toolkit::TransitionData ConvertPropertyToTransition( const Property::Value& value )
+{
+  Toolkit::TransitionData transitionData;
+
+  const Property::Array* array = value.GetArray();
+  if( array )
+  {
+    transitionData = Toolkit::TransitionData::New( *array );
+  }
+  else
+  {
+    const Property::Map* map = value.GetMap();
+    if( map )
+    {
+      transitionData = Toolkit::TransitionData::New( *map );
+    }
+  }
+  return transitionData;
+}
+
+} // anonymous namespace
+
+
+Internal::BeatControl::BeatControl()
+: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ),
+  mTransformSize(1.0f, 1.0f),
+  mTransformOrigin(Align::CENTER),
+  mTransformAnchorPoint(Align::CENTER),
+  mAnimationPlaying(0)
+{
+}
+
+Internal::BeatControl::~BeatControl()
+{
+}
+
+Demo::BeatControl Internal::BeatControl::New()
+{
+  IntrusivePtr<Internal::BeatControl> impl = new Internal::BeatControl();
+  Demo::BeatControl handle = Demo::BeatControl( *impl );
+  impl->Initialize();
+  return handle;
+}
+
+
+void BeatControl::StartBounceAnimation()
+{
+  if( mAnimation )
+  {
+    mAnimation.Stop();
+    mAnimation.FinishedSignal().Disconnect( this, &BeatControl::OnBounceAnimationFinished );
+    OnBounceAnimationFinished(mAnimation);
+  }
+
+  mAnimation = DevelControl::CreateTransition( *this, mBounceTransition );
+  mAnimation.FinishedSignal().Connect( this, &BeatControl::OnBounceAnimationFinished );
+  mAnimation.Play();
+  mAnimationPlaying |= BOUNCE_ANIMATION_RUNNING;
+}
+
+
+void BeatControl::StartXAnimation()
+{
+  if( mXAnimation )
+  {
+    mXAnimation.Stop();
+    mXAnimation.FinishedSignal().Disconnect( this, &BeatControl::OnXAnimationFinished );
+    OnXAnimationFinished(mXAnimation);
+  }
+
+  mXAnimation = DevelControl::CreateTransition( *this, mLeftTransition );
+  mXAnimation.FinishedSignal().Connect( this, &BeatControl::OnXAnimationFinished );
+  mXAnimation.Play();
+  mAnimationPlaying |= X_ANIMATION_RUNNING;
+}
+
+void BeatControl::StartYAnimation()
+{
+  if( mYAnimation )
+  {
+    mYAnimation.Stop();
+    mYAnimation.FinishedSignal().Disconnect( this, &BeatControl::OnYAnimationFinished );
+    OnYAnimationFinished(mYAnimation);
+  }
+
+  mYAnimation = DevelControl::CreateTransition( *this, mUpTransition );
+  mYAnimation.FinishedSignal().Connect( this, &BeatControl::OnYAnimationFinished );
+  mYAnimation.Play();
+  mAnimationPlaying |= Y_ANIMATION_RUNNING;
+}
+
+void BeatControl::StartFadeAnimation()
+{
+  if( mFadeAnimation )
+  {
+    mFadeAnimation.Stop();
+    mFadeAnimation.FinishedSignal().Disconnect( this, &BeatControl::OnFadeAnimationFinished );
+    OnFadeAnimationFinished(mFadeAnimation);
+  }
+
+  mFadeAnimation = DevelControl::CreateTransition( *this, mFadeTransition );
+  mFadeAnimation.FinishedSignal().Connect( this, &BeatControl::OnFadeAnimationFinished );
+  mFadeAnimation.Play();
+  mAnimationPlaying |= FADE_ANIMATION_RUNNING;
+}
+
+void BeatControl::OnBounceAnimationFinished( Animation& src )
+{
+  mAnimationPlaying &= ~BOUNCE_ANIMATION_RUNNING;
+}
+void BeatControl::OnXAnimationFinished( Animation& src )
+{
+  mAnimationPlaying &= ~X_ANIMATION_RUNNING;
+}
+void BeatControl::OnYAnimationFinished( Animation& src )
+{
+  mAnimationPlaying &= ~Y_ANIMATION_RUNNING;
+}
+void BeatControl::OnFadeAnimationFinished( Animation& src )
+{
+  mAnimationPlaying &= ~FADE_ANIMATION_RUNNING;
+}
+
+void BeatControl::OnInitialize()
+{
+  Actor self = Self();
+}
+
+void BeatControl::OnStageConnection( int depth )
+{
+  Control::OnStageConnection( depth );
+}
+
+void BeatControl::OnStageDisconnection()
+{
+  Control::OnStageDisconnection();
+}
+
+void BeatControl::OnSizeSet( const Vector3& targetSize )
+{
+  Control::OnSizeSet( targetSize );
+  RelayoutVisuals( Vector2( targetSize ) );
+}
+
+void BeatControl::OnRelayout( const Vector2& targetSize, RelayoutContainer& container )
+{
+  RelayoutVisuals( targetSize );
+}
+
+void BeatControl::RelayoutVisuals( const Vector2& targetSize )
+{
+  if( mVisual )
+  {
+    if( (mAnimationPlaying & (X_ANIMATION_RUNNING | Y_ANIMATION_RUNNING)) == 0)
+    {
+      Vector2 size( targetSize );
+      Property::Map transformMap;
+      // Make the visual half the size of the control, but leave
+      // origin and anchor point at center, position is relative, but Zer0
+      transformMap[ Visual::Transform::Property::SIZE ] = mTransformSize;
+      transformMap[ Visual::Transform::Property::ORIGIN ] = mTransformOrigin;
+      transformMap[ Visual::Transform::Property::ANCHOR_POINT ] = mTransformAnchorPoint;
+      mVisual.SetTransformAndSize( transformMap, size );
+    }
+  }
+}
+
+Vector3 BeatControl::GetNaturalSize()
+{
+  if( mVisual )
+  {
+    Vector2 naturalSize;
+    mVisual.GetNaturalSize(naturalSize);
+    return Vector3(naturalSize);
+  }
+  return Vector3::ZERO;
+}
+
+void BeatControl::OnStyleChange( Toolkit::StyleManager styleManager, StyleChange::Type change )
+{
+  // Chain up.
+  Control::OnStyleChange( styleManager, change );
+}
+
+
+///////////////////////////////////////////////////////////
+//
+// Properties
+//
+
+void BeatControl::SetProperty( BaseObject* object, Property::Index index, const Property::Value& value )
+{
+  Demo::BeatControl beatControl = Demo::BeatControl::DownCast( Dali::BaseHandle( object ) );
+
+  if( beatControl )
+  {
+    BeatControl& impl = GetImpl( beatControl );
+    Actor self = impl.Self();
+    switch ( index )
+    {
+      case Demo::BeatControl::Property::BEAT_VISUAL:
+      {
+        bool sizeAndPositionOnly = false;
+
+        // Determine if a transform.size property exists in the map, and
+        // save it.
+        Property::Map* map = value.GetMap();
+        if( map )
+        {
+          Property::Value* value = map->Find( Visual::Property::TRANSFORM, "transform" );
+          if( value )
+          {
+            Property::Map* transformMap = value->GetMap();
+            if( transformMap )
+            {
+              // We'll increment this whenever SIZE, ORIGIN or ANCHOR_POINT's are modified as we won't need to create a new visual if only these properties are used
+              // If there are more properties in the transform map, then we need to create a new visual
+              unsigned int sizeAndPositionPropertyCount = 0;
+
+              Property::Value* sizeValue = transformMap->Find( Visual::Transform::Property::SIZE, "size" );
+              if( sizeValue )
+              {
+                sizeValue->Get( impl.mTransformSize );
+                ++sizeAndPositionPropertyCount;
+              }
+
+              Property::Value* originValue = transformMap->Find( Visual::Transform::Property::ORIGIN, "origin" );
+              if( originValue )
+              {
+                int intValue = 0;
+                if( originValue->Get( intValue ) )
+                {
+                  impl.mTransformOrigin = static_cast< Toolkit::Align::Type >( intValue );
+                  ++sizeAndPositionPropertyCount;
+                }
+              }
+
+              Property::Value* anchorPointValue = transformMap->Find( Visual::Transform::Property::ANCHOR_POINT, "anchorPoint" );
+              if( anchorPointValue )
+              {
+                int intValue = 0;
+                if( anchorPointValue->Get( intValue ) )
+                {
+                  impl.mTransformAnchorPoint = static_cast< Toolkit::Align::Type >( intValue );
+                  ++sizeAndPositionPropertyCount;
+                }
+              }
+
+              // If the only properties that the application is overriding are the size and the position properties, then we do not need to create another visual.
+              if( map->Count() == 1 && transformMap->Count() == sizeAndPositionPropertyCount )
+              {
+                sizeAndPositionOnly = true;
+              }
+            }
+          }
+          if( ! sizeAndPositionOnly )
+          {
+            // Only register a visual if there is more than just a size setting
+            impl.mVisual = Toolkit::VisualFactory::Get().CreateVisual( *map );
+            DevelControl::RegisterVisual( impl, Demo::BeatControl::Property::BEAT_VISUAL, impl.mVisual );
+
+            // We have registered a new visual: must trigger size negotiation
+            // in order to call SetTransformAndSize on the visual with the right size:
+            impl.RelayoutRequest();
+          }
+        }
+        break;
+      }
+      case Demo::BeatControl::Property::BOUNCE_TRANSITION:
+      {
+        impl.mBounceTransition = ConvertPropertyToTransition( value );
+        break;
+      }
+      case Demo::BeatControl::Property::LEFT_TRANSITION:
+      {
+        impl.mLeftTransition = ConvertPropertyToTransition( value );
+        break;
+      }
+      case Demo::BeatControl::Property::UP_TRANSITION:
+      {
+        impl.mUpTransition = ConvertPropertyToTransition( value );
+        break;
+      }
+      case Demo::BeatControl::Property::FADE_TRANSITION:
+      {
+        impl.mFadeTransition = ConvertPropertyToTransition( value );
+        break;
+      }
+    }
+  }
+}
+
+Property::Value BeatControl::GetProperty( BaseObject* object, Property::Index propertyIndex )
+{
+  Property::Value value;
+
+  Demo::BeatControl beatControl = Demo::BeatControl::DownCast( Dali::BaseHandle( object ) );
+
+  if ( beatControl )
+  {
+    BeatControl& impl = GetImpl( beatControl );
+    switch ( propertyIndex )
+    {
+      case Demo::BeatControl::Property::BEAT_VISUAL:
+      {
+        if( impl.mVisual )
+        {
+          Property::Map map;
+          impl.mVisual.CreatePropertyMap(map);
+          value = map;
+        }
+        break;
+      }
+      case Demo::BeatControl::Property::BOUNCE_TRANSITION:
+      case Demo::BeatControl::Property::LEFT_TRANSITION:
+      case Demo::BeatControl::Property::UP_TRANSITION:
+      case Demo::BeatControl::Property::FADE_TRANSITION:
+      default:
+        break;
+    }
+  }
+
+  return value;
+}
+
+
+} // Internal
+} // Demo
diff --git a/examples/visual-transitions/beat-control-impl.h b/examples/visual-transitions/beat-control-impl.h
new file mode 100644 (file)
index 0000000..95596a3
--- /dev/null
@@ -0,0 +1,155 @@
+#ifndef DALI_DEMO_INTERNAL_BEAT_CONTROL_IMPL_H
+#define DALI_DEMO_INTERNAL_BEAT_CONTROL_IMPL_H
+
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "beat-control.h"
+#include <dali/public-api/animation/animation.h>
+#include <dali-toolkit/public-api/controls/control-impl.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-base.h>
+#include <dali-toolkit/devel-api/visual-factory/transition-data.h>
+#include <dali-toolkit/public-api/align-enumerations.h>
+
+namespace Demo
+{
+
+namespace Internal // To use TypeRegistry, handle and body classes need the same name
+{
+
+class BeatControl : public Dali::Toolkit::Internal::Control
+{
+public:
+  /**
+   * Instantiate a new BeatControl object
+   */
+  static Demo::BeatControl New();
+  BeatControl();
+  ~BeatControl();
+
+public: // API
+  void StartBounceAnimation();
+
+  void StartXAnimation();
+
+  void StartYAnimation();
+
+  void StartFadeAnimation();
+
+public:  // Properties
+  /**
+   * Called when a property of an object of this type is set.
+   * @param[in] object The object whose property is set.
+   * @param[in] index The property index.
+   * @param[in] value The new property value.
+   */
+  static void SetProperty( Dali::BaseObject* object, Dali::Property::Index index, const Dali::Property::Value& value );
+
+  /**
+   * Called to retrieve a property of an object of this type.
+   * @param[in] object The object whose property is to be retrieved.
+   * @param[in] index The property index.
+   * @return The current value of the property.
+   */
+  static Dali::Property::Value GetProperty( Dali::BaseObject* object, Dali::Property::Index propertyIndex );
+
+private: // From Control
+  /**
+   * @copydoc Toolkit::Control::OnInitialize()
+   */
+  virtual void OnInitialize();
+
+  /**
+   * @copydoc Toolkit::Control::OnStageConnect()
+   */
+  virtual void OnStageConnection( int depth );
+
+  /**
+   * @copydoc Toolkit::Control::OnStageDisconnection()
+   */
+  virtual void OnStageDisconnection();
+
+  /**
+   * @copydoc Toolkit::Control::OnSizeSet()
+   */
+  virtual void OnSizeSet( const Dali::Vector3& targetSize );
+
+  /**
+   * @copydoc Toolkit::Control::OnRelayout()
+   */
+  virtual void OnRelayout( const Dali::Vector2& targetSize, Dali::RelayoutContainer& container );
+  /**
+   * @copydoc Toolkit::Control::GetNaturalSize
+   */
+  virtual Dali::Vector3 GetNaturalSize();
+
+  /**
+   * @copydoc Toolkit::Control::OnStyleChange
+   */
+  virtual void OnStyleChange( Dali::Toolkit::StyleManager styleManager, Dali::StyleChange::Type change );
+
+private:
+  void OnBounceAnimationFinished( Dali::Animation& handle );
+  void OnXAnimationFinished( Dali::Animation& src );
+  void OnYAnimationFinished( Dali::Animation& src );
+  void OnFadeAnimationFinished( Dali::Animation& src );
+
+  /**
+   * Relayout the visuals as a result of size negotiation
+   */
+  void RelayoutVisuals( const Dali::Vector2& targetSize );
+
+private:
+  //undefined
+  BeatControl( const BeatControl& );
+  BeatControl& operator=( const BeatControl& );
+
+private:
+  // Implementation details
+  Dali::Toolkit::Visual::Base mVisual;
+  Dali::Toolkit::TransitionData mBounceTransition;
+  Dali::Toolkit::TransitionData mLeftTransition;
+  Dali::Toolkit::TransitionData mUpTransition;
+  Dali::Toolkit::TransitionData mFadeTransition;
+  Dali::Animation mAnimation;
+  Dali::Animation mXAnimation;
+  Dali::Animation mYAnimation;
+  Dali::Animation mFadeAnimation;
+  Dali::Vector2 mTransformSize;
+  Dali::Toolkit::Align::Type mTransformOrigin;
+  Dali::Toolkit::Align::Type mTransformAnchorPoint;
+  int mAnimationPlaying;
+};
+
+} // Internal
+
+inline Internal::BeatControl& GetImpl( Demo::BeatControl& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<Internal::BeatControl&>(object);
+}
+
+inline const Internal::BeatControl& GetImpl( const Demo::BeatControl& handle )
+{
+  DALI_ASSERT_ALWAYS( handle );
+  const Dali::RefObject& object = handle.GetImplementation();
+  return static_cast<const Internal::BeatControl&>(object);
+}
+
+} // Demo
+
+#endif //  DALI_DEMO_BEAT_CONTROL_IMPL_H
diff --git a/examples/visual-transitions/beat-control.cpp b/examples/visual-transitions/beat-control.cpp
new file mode 100644 (file)
index 0000000..2dc16fd
--- /dev/null
@@ -0,0 +1,92 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "beat-control.h"
+#include "beat-control-impl.h"
+
+namespace Demo
+{
+
+BeatControl::BeatControl()
+{
+}
+
+BeatControl::BeatControl( const BeatControl& beatControl )
+: Control( beatControl )
+{
+}
+
+BeatControl& BeatControl::operator= ( const BeatControl& rhs )
+{
+  if( &rhs != this )
+  {
+    Control::operator=( rhs );
+  }
+  return *this;
+}
+
+BeatControl::~BeatControl()
+{
+}
+
+BeatControl BeatControl::New()
+{
+  BeatControl beatControl = Internal::BeatControl::New();
+  return beatControl;
+}
+
+BeatControl BeatControl::New( const std::string& url )
+{
+  BeatControl beatControl = Internal::BeatControl::New();
+  return beatControl;
+}
+
+BeatControl BeatControl::DownCast( BaseHandle handle )
+{
+  return Control::DownCast< BeatControl, Internal::BeatControl > ( handle );
+}
+
+void BeatControl::StartBounceAnimation()
+{
+  GetImpl(*this).StartBounceAnimation();
+}
+
+void BeatControl::StartXAnimation()
+{
+  GetImpl(*this).StartXAnimation();
+}
+void BeatControl::StartYAnimation()
+{
+  GetImpl(*this).StartYAnimation();
+}
+void BeatControl::StartFadeAnimation()
+{
+  GetImpl(*this).StartFadeAnimation();
+}
+
+BeatControl::BeatControl( Internal::BeatControl& implementation )
+: Control( implementation )
+{
+}
+
+BeatControl::BeatControl( Dali::Internal::CustomActor* internal )
+: Control( internal )
+{
+  VerifyCustomActorPointer< Internal::BeatControl >( internal ) ;
+}
+
+
+} //namespace Demo
diff --git a/examples/visual-transitions/beat-control.h b/examples/visual-transitions/beat-control.h
new file mode 100644 (file)
index 0000000..f0e6e00
--- /dev/null
@@ -0,0 +1,124 @@
+#ifndef DALI_DEMO_BEAT_CONTROL_H
+#define DALI_DEMO_BEAT_CONTROL_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <string>
+
+namespace Demo
+{
+
+namespace Internal
+{
+// All type registered types need to have the same name for the body and the handle
+class BeatControl;
+}
+
+/**
+ * Control that allows the RGB channels of an image to be altered.
+ */
+class BeatControl : public Dali::Toolkit::Control
+{
+public:
+  /**
+   * The start and end property ranges for this control
+   */
+  enum PropertyRange
+  {
+    PROPERTY_START_INDEX = Dali::Toolkit::Control::CONTROL_PROPERTY_END_INDEX + 1,
+    PROPERTY_END_INDEX   = PROPERTY_START_INDEX + 1000,
+    ANIMATABLE_PROPERTY_START_INDEX = Dali::ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX,
+    ANIMATABLE_PROPERTY_END_INDEX = ANIMATABLE_PROPERTY_START_INDEX+1000
+  };
+
+  struct Property
+  {
+    enum
+    {
+      BOUNCE_TRANSITION = PROPERTY_START_INDEX,
+      LEFT_TRANSITION,
+      UP_TRANSITION,
+      FADE_TRANSITION,
+      BEAT_VISUAL
+    };
+  };
+
+public: // Construction / destruction
+
+  /**
+   * Create an uninitialized handle
+   */
+  BeatControl();
+
+  /**
+   * Create a new image channel control without an image. Use
+   * SetImage to give this control an image
+   */
+  static BeatControl New();
+
+  /**
+   * Create a new image channel control from a given URL
+   */
+  static BeatControl New( const std::string& url );
+
+  /**
+   * Destructor. This is non-virtual since derived Handle types must not
+   * contain data or virtual methods
+   */
+  ~BeatControl();
+
+  /**
+   * Copy Constructor
+   */
+  BeatControl( const BeatControl& beatControl );
+
+  /**
+   * Assignment Operator
+   */
+  BeatControl& operator=( const BeatControl& beatControl );
+
+  /**
+   * Downcast
+   */
+  static BeatControl DownCast( BaseHandle handle );
+
+public: // API
+
+  void StartBounceAnimation();
+
+  void StartXAnimation();
+
+  void StartYAnimation();
+
+  void StartFadeAnimation();
+
+public: // Not for public use
+  /**
+   * Create a handle from an implementation
+   */
+  BeatControl( Internal::BeatControl& implementation );
+
+  /**
+   * Allow the creation of an BeatControl handle from an internal CustomActor pointer
+   */
+  BeatControl( Dali::Internal::CustomActor* internal );
+};
+
+} // namespace Demo
+
+#endif // DALI_DEMO_BEAT_CONTROL_H
diff --git a/examples/visual-transitions/transition-application.cpp b/examples/visual-transitions/transition-application.cpp
new file mode 100644 (file)
index 0000000..5192396
--- /dev/null
@@ -0,0 +1,351 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file transition-application.cpp
+ * @brief Application class for showing stylable transitions
+ */
+
+// Class include
+#include "transition-application.h"
+
+// External includes
+#include <dali-toolkit/dali-toolkit.h>
+#include "beat-control.h"
+#include <cstdio>
+#include <sstream>
+
+// Internal includes
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace
+{
+
+void SetLabelText( Button button, const char* label )
+{
+  button.SetProperty( Toolkit::Button::Property::LABEL, label );
+}
+
+}
+
+namespace Demo
+{
+
+const char* TransitionApplication::DEMO_THEME_ONE_PATH( DEMO_STYLE_DIR "style-example-theme-one.json" );
+const char* DALI_LOGO_PATH( DEMO_IMAGE_DIR "Logo-for-demo.png" );
+const char* DALI_ROBOT_MODEL_PATH( DEMO_MODEL_DIR "ToyRobot-Metal.obj" );
+const char* DALI_ROBOT_MATERIAL_PATH( DEMO_MODEL_DIR "ToyRobot-Metal.mtl" );
+
+TransitionApplication::TransitionApplication( Application& application )
+: mApplication( application ),
+  mTitle(),
+  mBeatControl(),
+  mActionButtons(),
+  mVisualIndex( Property::INVALID_INDEX ),
+  mActionIndex( Property::INVALID_INDEX )
+{
+  application.InitSignal().Connect( this, &TransitionApplication::Create );
+}
+
+TransitionApplication::~TransitionApplication()
+{
+}
+
+void TransitionApplication::Create( Application& application )
+{
+  Stage stage = Stage::GetCurrent();
+  stage.KeyEventSignal().Connect(this, &TransitionApplication::OnKeyEvent);
+  stage.SetBackgroundColor( Vector4( 0.1f, 0.1f, 0.1f, 1.0f ) );
+
+  // Hide the indicator bar
+  application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+  // Content panes:
+  TableView contentLayout = TableView::New( 4, 1 );
+  contentLayout.SetName("ContentLayout");
+  contentLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  contentLayout.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+  contentLayout.SetParentOrigin( ParentOrigin::TOP_LEFT );
+  contentLayout.SetCellPadding( Vector2( 0.0f, 5.0f ) );
+
+  // Assign all rows the size negotiation property of fitting to children
+
+  stage.Add( contentLayout );
+
+  mTitle = TextLabel::New( "Custom Control Transition Example" );
+  mTitle.SetName( "Title" );
+  mTitle.SetStyleName("Title");
+  mTitle.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  mTitle.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+  mTitle.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  contentLayout.Add( mTitle );
+  contentLayout.SetFitHeight(0); // Fill width
+
+  mBeatControl = BeatControl::New();
+  mBeatControl.SetName("BeatControl");
+  mBeatControl.SetProperty( BeatControl::Property::BEAT_VISUAL, Property::Map()
+                            .Add( Visual::Property::TRANSFORM, Property::Map()
+                                  .Add( Visual::Transform::Property::SIZE, Vector2(0.5f, 0.5f) ) ) );
+
+  mBeatControl.SetAnchorPoint( AnchorPoint::CENTER );
+  mBeatControl.SetParentOrigin( ParentOrigin::CENTER );
+  mBeatControl.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  contentLayout.Add( mBeatControl );
+  // beat control should fill the tableview cell, so no change to default parameters
+
+  TableView visualTypeLayout = TableView::New( 1, NUMBER_OF_VISUAL_BUTTONS );
+  visualTypeLayout.SetName("VisualTypeLayout");
+  visualTypeLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  visualTypeLayout.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+  visualTypeLayout.SetFitHeight( 0 );
+
+  contentLayout.Add( visualTypeLayout );
+  contentLayout.SetFitHeight(2);
+
+  for( int i=0; i<NUMBER_OF_VISUAL_BUTTONS; ++i )
+  {
+    Property::Map map;
+    CreateVisualMap( i, map );
+    map.Add( Visual::Property::TRANSFORM, Property::Map()
+             .Add( Visual::Transform::Property::SIZE, Vector2(0.8f, 0.8f) )  );
+    mVisualButtons[i] = BeatControl::New();
+    mVisualButtons[i].SetProperty( BeatControl::Property::BEAT_VISUAL, map );
+    mVisualButtons[i].SetName("VisualButton");
+    mVisualButtons[i].SetStyleName("VisualButton");
+    mVisualButtons[i].SetSize(0, 50);
+    mVisualButtons[i].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mVisualButtons[i].SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT );
+    mVisualIndex = mVisualButtons[i].RegisterProperty( "visualId", i, Property::READ_WRITE );
+    mVisualButtons[i].TouchSignal().Connect( this, &TransitionApplication::OnVisualButtonClicked );
+    visualTypeLayout.AddChild( mVisualButtons[i], TableView::CellPosition( 0, i ) );
+  }
+
+  TableView actionButtonLayout = TableView::New( 1, NUMBER_OF_ACTION_BUTTONS+1 );
+  actionButtonLayout.SetName("ThemeButtonsLayout");
+  actionButtonLayout.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  actionButtonLayout.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+  actionButtonLayout.SetFitHeight( 0 );
+
+  TextLabel label = TextLabel::New( "Action: ");
+  label.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  label.SetStyleName("ActionLabel");
+  actionButtonLayout.AddChild( label, TableView::CellPosition( 0, 0 ) );
+  actionButtonLayout.SetCellAlignment( TableView::CellPosition( 0, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+  for( int i=0; i<NUMBER_OF_ACTION_BUTTONS; ++i )
+  {
+    mActionButtons[i] = PushButton::New();
+    mActionButtons[i].SetName("ActionButton");
+    mActionButtons[i].SetStyleName("ActionButton");
+    mActionButtons[i].SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+    mActionButtons[i].SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+    mActionIndex = mActionButtons[i].RegisterProperty( "actionId", i, Property::READ_WRITE );
+    mActionButtons[i].ClickedSignal().Connect( this, &TransitionApplication::OnActionButtonClicked );
+    actionButtonLayout.AddChild( mActionButtons[i], TableView::CellPosition( 0, 1+i ) );
+  }
+
+  SetLabelText( mActionButtons[0], "Bounce" );
+  SetLabelText( mActionButtons[1], "X" );
+  SetLabelText( mActionButtons[2], "Y" );
+  SetLabelText( mActionButtons[3], "Fade" );
+
+  contentLayout.Add( actionButtonLayout );
+  contentLayout.SetFitHeight(3);
+}
+
+void TransitionApplication::CreateVisualMap( int index, Property::Map& map )
+{
+  switch(index)
+  {
+    case 0:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::COLOR;
+      map[ ColorVisual::Property::MIX_COLOR ] = Color::YELLOW;
+      break;
+    }
+    case 1:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::BORDER;
+      map[ BorderVisual::Property::COLOR ] = Color::GREEN;
+      map[ BorderVisual::Property::SIZE ] = 5;
+      break;
+    }
+    case 2:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::GRADIENT;
+
+      Property::Array stopOffsets;
+      stopOffsets.PushBack( 0.0f );
+      stopOffsets.PushBack( 0.3f );
+      stopOffsets.PushBack( 0.6f );
+      stopOffsets.PushBack( 0.8f );
+      stopOffsets.PushBack( 1.0f );
+      map[ GradientVisual::Property::STOP_OFFSET ] = stopOffsets;
+
+      Property::Array stopColors;
+      stopColors.PushBack( Vector4( 129.f, 198.f, 193.f, 255.f )/255.f );
+      stopColors.PushBack( Vector4( 196.f, 198.f, 71.f, 122.f )/255.f );
+      stopColors.PushBack( Vector4( 214.f, 37.f, 139.f, 191.f )/255.f );
+      stopColors.PushBack( Vector4( 129.f, 198.f, 193.f, 150.f )/255.f );
+      stopColors.PushBack( Color::YELLOW );
+      map[ GradientVisual::Property::STOP_COLOR ] = stopColors;
+      map[ GradientVisual::Property::START_POSITION ] = Vector2(-0.5f, -0.5f );
+      map[ GradientVisual::Property::END_POSITION ] = Vector2( 0.5f,  0.5f );
+      break;
+    }
+    case 3:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::IMAGE;
+      map[ ImageVisual::Property::URL ] = DALI_LOGO_PATH;
+      break;
+    }
+    case 4:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::IMAGE;
+      map[ ImageVisual::Property::URL ] = DEMO_IMAGE_DIR "preMultAlpha.png";
+      map[ Visual::Property::PREMULTIPLIED_ALPHA ] = true;
+      break;
+    }
+
+    case 5:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::MESH;
+      map[ MeshVisual::Property::OBJECT_URL ] = DALI_ROBOT_MODEL_PATH;
+      map[ MeshVisual::Property::MATERIAL_URL ] = DALI_ROBOT_MATERIAL_PATH;
+      map[ MeshVisual::Property::TEXTURES_PATH ] = DEMO_IMAGE_DIR;
+      map[ MeshVisual::Property::SHADING_MODE ] = MeshVisual::ShadingMode::TEXTURED_WITH_DETAILED_SPECULAR_LIGHTING;
+      break;
+    }
+
+    case 6:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::PRIMITIVE;
+
+      map[ PrimitiveVisual::Property::SHAPE ] = PrimitiveVisual::Shape::BEVELLED_CUBE;
+      map[ PrimitiveVisual::Property::BEVEL_PERCENTAGE ] = 0.3f;
+      map[ PrimitiveVisual::Property::BEVEL_SMOOTHNESS ] = 0.0f;
+      map[ PrimitiveVisual::Property::SCALE_DIMENSIONS ] = Vector3(1.0f,1.0f,0.3f);
+      map[ PrimitiveVisual::Property::MIX_COLOR ]        = Vector4(0.7f, 0.5f, 0.05f, 1.0f);
+
+      break;
+    }
+
+    case 7:
+    {
+      // NPatch
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::IMAGE;
+      map[ ImageVisual::Property::URL ] = DEMO_IMAGE_DIR "button-up-16.9.png";
+      break;
+    }
+    case 8:
+    {
+      // SVG
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::IMAGE;
+      map[ ImageVisual::Property::URL ] = DEMO_IMAGE_DIR "Kid1.svg";
+      break;
+    }
+
+    case 9:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::TEXT;
+      map[ TextVisual::Property::TEXT ] = "Text";
+      map[ TextVisual::Property::TEXT_COLOR ] = Color::CYAN;
+      map[ TextVisual::Property::POINT_SIZE ] = 10;
+      break;
+    }
+
+    default:
+    {
+      map[ Toolkit::Visual::Property::TYPE ] = Visual::COLOR;
+      map[ ColorVisual::Property::MIX_COLOR ] = Color::MAGENTA;
+      break;
+    }
+  }
+}
+
+bool TransitionApplication::OnVisualButtonClicked( Actor actor, const TouchData& touchData )
+{
+  if( touchData.GetState(0) == PointState::FINISHED )
+  {
+    int visual = actor.GetProperty<int>( mVisualIndex );
+    Property::Map map;
+    CreateVisualMap( visual, map );
+    map.Add( Visual::Property::TRANSFORM, Property::Map()
+             .Add( Visual::Transform::Property::SIZE, Vector2( 0.5f, 0.5f ) ) );
+    mBeatControl.SetProperty( BeatControl::Property::BEAT_VISUAL, map );
+  }
+  return true;
+}
+
+bool TransitionApplication::OnActionButtonClicked( Button button )
+{
+  int action = button.GetProperty<int>( mActionIndex );
+  switch( action )
+  {
+    case 0:
+    {
+      mBeatControl.StartBounceAnimation();
+      break;
+    }
+    case 1:
+    {
+      mBeatControl.StartXAnimation();
+      break;
+    }
+    case 2:
+    {
+      mBeatControl.StartYAnimation();
+      break;
+    }
+    case 3:
+    {
+      mBeatControl.StartFadeAnimation();
+      break;
+    }
+  }
+
+  return true;
+}
+
+void TransitionApplication::OnKeyEvent( const KeyEvent& keyEvent )
+{
+  static int keyPressed = 0;
+
+  if( keyEvent.state == KeyEvent::Down)
+  {
+    if( keyPressed == 0 ) // Is this the first down event?
+    {
+      printf("Key pressed: %s %d\n", keyEvent.keyPressedName.c_str(), keyEvent.keyCode );
+
+      if( IsKey( keyEvent, DALI_KEY_ESCAPE) || IsKey( keyEvent, DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+      else if( keyEvent.keyPressedName.compare("Return") == 0 )
+      {
+      }
+    }
+    keyPressed = 1;
+  }
+  else if( keyEvent.state == KeyEvent::Up )
+  {
+    keyPressed = 0;
+  }
+}
+
+} // namespace Demo
diff --git a/examples/visual-transitions/transition-application.h b/examples/visual-transitions/transition-application.h
new file mode 100644 (file)
index 0000000..9846c11
--- /dev/null
@@ -0,0 +1,85 @@
+#ifndef DALI_DEMO_TRANSITION_APPLICATION_H
+#define DALI_DEMO_TRANSITION_APPLICATION_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// External includes
+#include <dali-toolkit/dali-toolkit.h>
+//#include <dali-toolkit/devel-api/controls/slider/slider.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+#include "beat-control.h"
+#include <cstdio>
+#include <sstream>
+
+// Internal includes
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+namespace Demo
+{
+
+class TransitionApplication : public ConnectionTracker
+{
+public:
+  static const int NUMBER_OF_ACTION_BUTTONS=4;
+  static const int NUMBER_OF_VISUAL_BUTTONS=10;
+
+public:
+  // Constructor
+  TransitionApplication( Application& application );
+
+  // Destructor
+  ~TransitionApplication();
+
+  // Init signal handler
+  void Create( Application& application );
+
+  // Create the GUI components
+  Toolkit::TextLabel CreateTitle( std::string title );
+  Actor CreateContentPane();
+
+  // Key event handler
+  void OnKeyEvent( const KeyEvent& event );
+
+  bool OnActionButtonClicked( Button button );
+  bool OnVisualButtonClicked( Actor actor, const TouchData& touchData );
+
+  static const char* DEMO_THEME_ONE_PATH;
+
+private:
+
+  /** Create a visual map
+   *
+   * @param[in] index The index of the visual to create
+   * @param[out] map The map to generate
+   */
+  void CreateVisualMap( int index, Property::Map& map );
+
+  Application& mApplication;
+  TextLabel mTitle;
+  BeatControl mBeatControl;
+  PushButton mActionButtons[NUMBER_OF_ACTION_BUTTONS];
+  BeatControl mVisualButtons[NUMBER_OF_VISUAL_BUTTONS];
+  Property::Index mVisualIndex;
+  Property::Index mActionIndex;
+};
+
+} // Namespace Demo
+
+
+#endif // DALI_DEMO_TRANSITION_APPLICATION_H
diff --git a/examples/visual-transitions/transition-example.cpp b/examples/visual-transitions/transition-example.cpp
new file mode 100644 (file)
index 0000000..0047bfb
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @file transition-example.cpp
+ * @brief Example of stylable transitions.
+ */
+
+// External includes
+#include <dali/dali.h>
+
+// Internal includes
+#include "transition-application.h"
+
+
+int DALI_EXPORT_API main( int argc, char** argv )
+{
+  const char* themeName = Demo::TransitionApplication::DEMO_THEME_ONE_PATH;
+
+  Application application = Application::New( &argc, &argv, themeName );
+  Demo::TransitionApplication transitionApplication( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/examples/web-view/web-view-example.cpp b/examples/web-view/web-view-example.cpp
new file mode 100644 (file)
index 0000000..eb9af25
--- /dev/null
@@ -0,0 +1,139 @@
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include "dali-toolkit/devel-api/controls/web-view/web-view.h"
+#include <dali/integration-api/debug.h>
+
+using namespace Dali;
+
+namespace{
+
+}
+
+class WebViewController : public ConnectionTracker
+{
+public:
+
+  WebViewController( Application& application )
+  : mApplication( application )
+  , mUrlPointer( 0 )
+  {
+    // Connect to the Application's Init signal
+    mApplication.InitSignal().Connect( this, &WebViewController::Create );
+  }
+
+  ~WebViewController()
+  {
+    // Nothing to do here;
+  }
+
+  const char* GetNextUrl()
+  {
+    static const unsigned int kUrlSize = 3;
+    static const char* kUrls[kUrlSize] = {
+      "https://webkit.org/blog-files/3d-transforms/poster-circle.html",
+      "https://www.amazon.com",
+      "https://www.google.com"
+    };
+    mUrlPointer %= kUrlSize;
+    return kUrls[mUrlPointer++];
+  }
+
+  // The Init signal is received once (only) during the Application lifetime
+  void Create( Application& application )
+  {
+    // Get a handle to the stage
+    Stage stage = Stage::GetCurrent();
+    stage.SetBackgroundColor( Vector4(0.2, 0.6, 1, 1) );
+
+    float width = stage.GetSize().width;
+    float height = stage.GetSize().height;
+    float fontSize = width * 0.02f;
+
+    mWebView = Toolkit::WebView::New( "ko-KR", "Asia/Seoul" );
+    mWebView.SetParentOrigin( Dali::ParentOrigin::CENTER );
+    mWebView.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+    mWebView.SetPosition( 0, 0 );
+    mWebView.SetSize( width, height );
+    mWebView.PageLoadStartedSignal().Connect( this, &WebViewController::OnPageLoadStarted );
+    mWebView.PageLoadFinishedSignal().Connect( this, &WebViewController::OnPageLoadFinished );
+
+    std::string url = GetNextUrl();
+    mWebView.LoadUrl( url );
+    stage.Add(mWebView);
+
+    mAddressLabel = Toolkit::TextLabel::New( url );
+    mAddressLabel.SetAnchorPoint( AnchorPoint::TOP_LEFT );
+    mAddressLabel.SetProperty( Toolkit::TextLabel::Property::POINT_SIZE, fontSize );
+    mAddressLabel.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+    mAddressLabel.SetBackgroundColor( Vector4( 0, 0, 0, 0.5f ) );
+    mAddressLabel.TouchedSignal().Connect( this, &WebViewController::OnTouchText );
+    stage.Add( mAddressLabel );
+
+    // Respond to key events
+    stage.KeyEventSignal().Connect( this, &WebViewController::OnKeyEvent );
+    Toolkit::KeyboardFocusManager::Get().SetCurrentFocusActor( mWebView );
+  }
+
+  void OnPageLoadStarted( Toolkit::WebView view, const std::string& url )
+  {
+    mAddressLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, "Loading" );
+  }
+
+  void OnPageLoadFinished( Toolkit::WebView view, const std::string& url )
+  {
+    mAddressLabel.SetProperty( Toolkit::TextLabel::Property::TEXT, url.c_str() );
+  }
+
+  bool OnTouchText( Actor actor, const TouchEvent& event )
+  {
+    if ( event.GetPoint( 0 ).state == TouchPoint::Up )
+    {
+      std::string url = GetNextUrl();
+      mAddressLabel.SetProperty(Toolkit::TextLabel::Property::TEXT, "Waiting" );
+      mWebView.LoadUrl( url );
+    }
+
+    return true;
+  }
+
+  void OnKeyEvent( const KeyEvent& event )
+  {
+    if( event.state == KeyEvent::Down )
+    {
+      if ( IsKey( event, Dali::DALI_KEY_ESCAPE ) || IsKey( event, Dali::DALI_KEY_BACK ) )
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+
+private:
+  Application&  mApplication;
+  Toolkit::WebView mWebView;
+  Toolkit::TextLabel mAddressLabel;
+  unsigned int mUrlPointer;
+};
+
+int DALI_EXPORT_API main( int argc, char **argv )
+{
+  Application application = Application::New( &argc, &argv );
+  WebViewController test( application );
+  application.MainLoop();
+  return 0;
+}
diff --git a/packaging/com.samsung.dali-demo.spec b/packaging/com.samsung.dali-demo.spec
new file mode 100755 (executable)
index 0000000..a703602
--- /dev/null
@@ -0,0 +1,139 @@
+%bcond_with wayland
+
+Name:       com.samsung.dali-demo
+Summary:    The OpenGLES Canvas Core Demo
+Version:    1.5.8
+Release:    1
+Group:      System/Libraries
+License:    Apache-2.0
+URL:        https://review.tizen.org/git/?p=platform/core/uifw/dali-demo.git;a=summary
+Source0:    %{name}-%{version}.tar.gz
+
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+
+BuildRequires:  cmake
+BuildRequires:  pkgconfig
+BuildRequires:  pkgconfig(capi-appfw-application)
+BuildRequires:  pkgconfig(capi-media-player)
+BuildRequires:  pkgconfig(dlog)
+BuildRequires:  gettext-tools
+BuildRequires:  pkgconfig(dali-core)
+BuildRequires:  pkgconfig(dali-adaptor)
+BuildRequires:  pkgconfig(dali-toolkit)
+BuildRequires:  pkgconfig(libtzplatform-config)
+
+%description
+The OpenGLES Canvas Core Demo is a collection of examples and demonstrations
+of the capability of the toolkit.
+
+##############################
+# Preparation
+##############################
+%prep
+%setup -q
+
+%define dali_app_ro_dir       %TZ_SYS_RO_APP/com.samsung.dali-demo/
+%define dali_xml_file_dir     %TZ_SYS_RO_PACKAGES
+%define dali_icon_dir         %TZ_SYS_RO_ICONS
+%define smack_rule_dir        %TZ_SYS_SMACK/accesses2.d/
+
+%define dali_app_res_dir      %{dali_app_ro_dir}/res/
+%define dali_app_exe_dir      %{dali_app_ro_dir}/bin/
+%define locale_dir            %{dali_app_res_dir}/locale
+%define local_style_dir       ../../resources/style/mobile
+
+##############################
+# Build
+##############################
+%build
+PREFIX="/usr"
+CXXFLAGS+=" -Wall -g -O2"
+LDFLAGS+=" -Wl,--rpath=$PREFIX/lib -Wl,--as-needed"
+
+%ifarch %{arm}
+CXXFLAGS+=" -D_ARCH_ARM_"
+%endif
+
+cd %{_builddir}/%{name}-%{version}/build/tizen
+
+cmake -DDALI_APP_DIR=%{dali_app_ro_dir}/bin \
+      -DLOCALE_DIR=%{locale_dir} \
+      -DDALI_APP_RES_DIR=%{dali_app_res_dir} \
+%if 0%{?enable_debug}
+      -DCMAKE_BUILD_TYPE=Debug \
+%endif
+      -DLOCAL_STYLE_DIR=%{local_style_dir} \
+      -DINTERNATIONALIZATION:BOOL=OFF \
+      .
+
+make %{?jobs:-j%jobs}
+
+##############################
+# Installation
+##############################
+%install
+rm -rf %{buildroot}
+cd build/tizen
+%make_install DALI_APP_DIR=%{dali_app_ro_dir}/bin
+%make_install DDALI_APP_RES_DIR=%{dali_app_res_dir}
+
+mkdir -p %{buildroot}%{dali_xml_file_dir}
+cp -f %{_builddir}/%{name}-%{version}/%{name}.xml %{buildroot}%{dali_xml_file_dir}
+
+mkdir -p %{buildroot}%{dali_icon_dir}
+mv %{buildroot}/%{dali_app_res_dir}/images/%{name}.png %{buildroot}%{dali_icon_dir}
+mv %{buildroot}/%{dali_app_res_dir}/images/dali-examples.png %{buildroot}%{dali_icon_dir}
+mv %{buildroot}/%{dali_app_res_dir}/images/dali-tests.png %{buildroot}%{dali_icon_dir}
+
+%if 0%{?enable_dali_smack_rules} && !%{with wayland}
+mkdir -p %{buildroot}%{smack_rule_dir}
+cp -f %{_builddir}/%{name}-%{version}/%{name}.rule %{buildroot}%{smack_rule_dir}
+%endif
+
+
+##############################
+# Post Install
+##############################
+%post
+/sbin/ldconfig
+exit 0
+
+##############################
+# Post Uninstall
+##############################
+%postun
+/sbin/ldconfig
+exit 0
+
+##############################
+# Files in Binary Packages
+##############################
+
+%files
+%if 0%{?enable_dali_smack_rules}
+%manifest com.samsung.dali-demo.manifest-smack
+%else
+%manifest com.samsung.dali-demo.manifest
+%endif
+%defattr(-,root,root,-)
+%{dali_app_exe_dir}/dali-demo
+%{dali_app_exe_dir}/dali-examples
+%{dali_app_exe_dir}/dali-tests
+%{dali_app_exe_dir}/*.example
+%{dali_app_exe_dir}/dali-builder
+%{dali_app_res_dir}/images/*
+%{dali_app_res_dir}/game/*
+%{dali_app_res_dir}/videos/*
+%{dali_app_res_dir}/models/*
+%{dali_app_res_dir}/scripts/*
+%{dali_app_res_dir}/shaders/*
+%{dali_app_res_dir}/style/*
+%{dali_app_res_dir}/style/images/*
+%{dali_xml_file_dir}/%{name}.xml
+%{dali_icon_dir}/*
+%{locale_dir}/*
+%if 0%{?enable_dali_smack_rules} && !%{with wayland}
+%config %{smack_rule_dir}/%{name}.rule
+%endif
+%license LICENSE
diff --git a/resources/game/Cube.mod b/resources/game/Cube.mod
new file mode 100644 (file)
index 0000000..ccba5e7
Binary files /dev/null and b/resources/game/Cube.mod differ
diff --git a/resources/game/lm_back_wall.png b/resources/game/lm_back_wall.png
new file mode 100644 (file)
index 0000000..7342ba6
Binary files /dev/null and b/resources/game/lm_back_wall.png differ
diff --git a/resources/game/lm_corridor_0.png b/resources/game/lm_corridor_0.png
new file mode 100644 (file)
index 0000000..98f37f0
Binary files /dev/null and b/resources/game/lm_corridor_0.png differ
diff --git a/resources/game/lm_corridor_1.png b/resources/game/lm_corridor_1.png
new file mode 100644 (file)
index 0000000..f3e89f7
Binary files /dev/null and b/resources/game/lm_corridor_1.png differ
diff --git a/resources/game/lm_crate.001.png b/resources/game/lm_crate.001.png
new file mode 100644 (file)
index 0000000..146dfe2
Binary files /dev/null and b/resources/game/lm_crate.001.png differ
diff --git a/resources/game/lm_crate.002.png b/resources/game/lm_crate.002.png
new file mode 100644 (file)
index 0000000..3f80497
Binary files /dev/null and b/resources/game/lm_crate.002.png differ
diff --git a/resources/game/lm_crate.003.png b/resources/game/lm_crate.003.png
new file mode 100644 (file)
index 0000000..6c7fb29
Binary files /dev/null and b/resources/game/lm_crate.003.png differ
diff --git a/resources/game/lm_crate.004.png b/resources/game/lm_crate.004.png
new file mode 100644 (file)
index 0000000..cfd845f
Binary files /dev/null and b/resources/game/lm_crate.004.png differ
diff --git a/resources/game/lm_crate.005.png b/resources/game/lm_crate.005.png
new file mode 100644 (file)
index 0000000..69dd2a0
Binary files /dev/null and b/resources/game/lm_crate.005.png differ
diff --git a/resources/game/lm_crate.006.png b/resources/game/lm_crate.006.png
new file mode 100644 (file)
index 0000000..c5e42de
Binary files /dev/null and b/resources/game/lm_crate.006.png differ
diff --git a/resources/game/lm_crate.007.png b/resources/game/lm_crate.007.png
new file mode 100644 (file)
index 0000000..e87d584
Binary files /dev/null and b/resources/game/lm_crate.007.png differ
diff --git a/resources/game/lm_crate.008.png b/resources/game/lm_crate.008.png
new file mode 100644 (file)
index 0000000..bf66627
Binary files /dev/null and b/resources/game/lm_crate.008.png differ
diff --git a/resources/game/lm_crate.009.png b/resources/game/lm_crate.009.png
new file mode 100644 (file)
index 0000000..f1c6131
Binary files /dev/null and b/resources/game/lm_crate.009.png differ
diff --git a/resources/game/lm_crate.010.png b/resources/game/lm_crate.010.png
new file mode 100644 (file)
index 0000000..d185de4
Binary files /dev/null and b/resources/game/lm_crate.010.png differ
diff --git a/resources/game/lm_crate.011.png b/resources/game/lm_crate.011.png
new file mode 100644 (file)
index 0000000..708590a
Binary files /dev/null and b/resources/game/lm_crate.011.png differ
diff --git a/resources/game/lm_left_corridor.png b/resources/game/lm_left_corridor.png
new file mode 100644 (file)
index 0000000..e83ac9c
Binary files /dev/null and b/resources/game/lm_left_corridor.png differ
diff --git a/resources/game/lm_right_corridor.png b/resources/game/lm_right_corridor.png
new file mode 100644 (file)
index 0000000..2d4d175
Binary files /dev/null and b/resources/game/lm_right_corridor.png differ
diff --git a/resources/game/lm_side_wall_floor.png b/resources/game/lm_side_wall_floor.png
new file mode 100644 (file)
index 0000000..ed7901d
Binary files /dev/null and b/resources/game/lm_side_wall_floor.png differ
diff --git a/resources/game/lm_slope.png b/resources/game/lm_slope.png
new file mode 100644 (file)
index 0000000..3e0c679
Binary files /dev/null and b/resources/game/lm_slope.png differ
diff --git a/resources/game/reflection.bin b/resources/game/reflection.bin
new file mode 100644 (file)
index 0000000..510c7af
Binary files /dev/null and b/resources/game/reflection.bin differ
diff --git a/resources/game/reflection.gltf b/resources/game/reflection.gltf
new file mode 100644 (file)
index 0000000..713f818
--- /dev/null
@@ -0,0 +1,1426 @@
+{
+    "asset" : {
+        "generator" : "Khronos glTF Blender I/O v1.1.46",
+        "version" : "2.0"
+    },
+    "scene" : 0,
+    "scenes" : [
+        {
+            "name" : "Scene",
+            "nodes" : [
+                4,
+                26
+            ]
+        }
+    ],
+    "nodes" : [
+        {
+            "mesh" : 0,
+            "name" : "background",
+            "rotation" : [
+                0.2561876177787781,
+                0,
+                0,
+                0.9666270613670349
+            ],
+            "scale" : [
+                41.288753509521484,
+                41.288753509521484,
+                41.288753509521484
+            ],
+            "translation" : [
+                0.6707069277763367,
+                -66.81024932861328,
+                -2.4491214752197266
+            ]
+        },
+        {
+            "camera" : 0,
+            "name" : "CameraReflection_Orientation",
+            "rotation" : [
+                -0.7071067690849304,
+                0,
+                0,
+                0.7071067690849304
+            ]
+        },
+        {
+            "children" : [
+                1
+            ],
+            "name" : "CameraReflection"
+        },
+        {
+            "camera" : 1,
+            "name" : "Camera_Orientation",
+            "rotation" : [
+                -0.7071067690849304,
+                0,
+                0,
+                0.7071067690849304
+            ]
+        },
+        {
+            "children" : [
+                0,
+                2,
+                3
+            ],
+            "name" : "Camera",
+            "rotation" : [
+                0.3552197515964508,
+                0.6114072799682617,
+                -0.3552197515964508,
+                0.6114073395729065
+            ],
+            "translation" : [
+                25.934219360351562,
+                18.4041748046875,
+                0
+            ]
+        },
+        {
+            "mesh" : 1,
+            "name" : "Cylinder",
+            "scale" : [
+                6.3863205909729,
+                1.160239815711975,
+                6.3863205909729
+            ],
+            "translation" : [
+                0,
+                -2.19092059135437,
+                0
+            ]
+        },
+        {
+            "name" : "Empty",
+            "rotation" : [
+                0,
+                -0.3826834261417389,
+                0.9238795042037964,
+                -1.672762550697371e-08
+            ],
+            "scale" : [
+                8.46078109741211,
+                8.46078109741211,
+                8.46078109741211
+            ],
+            "translation" : [
+                -10.59361743927002,
+                -9.98163890838623,
+                -0.23785686492919922
+            ]
+        },
+        {
+            "name" : "Empty.001",
+            "rotation" : [
+                0,
+                1,
+                0,
+                -4.371138828673793e-08
+            ],
+            "scale" : [
+                8.46078109741211,
+                8.46078109741211,
+                8.46078109741211
+            ],
+            "translation" : [
+                -10.59361743927002,
+                -9.98163890838623,
+                -0.23785686492919922
+            ]
+        },
+        {
+            "name" : "Light",
+            "rotation" : [
+                0.16907575726509094,
+                0.7558803558349609,
+                -0.27217137813568115,
+                0.570947527885437
+            ],
+            "translation" : [
+                -1.473832130432129,
+                4.775537014007568,
+                -8.020967483520508
+            ]
+        },
+        {
+            "mesh" : 2,
+            "name" : "Plane",
+            "scale" : [
+                6.463212966918945,
+                1.1742093563079834,
+                6.463212966918945
+            ],
+            "translation" : [
+                0,
+                -2.19092059135437,
+                0
+            ]
+        },
+        {
+            "mesh" : 3,
+            "name" : "column_0.000",
+            "translation" : [
+                4.034352779388428,
+                0,
+                3.406787395477295
+            ]
+        },
+        {
+            "mesh" : 3,
+            "name" : "column_0.001",
+            "translation" : [
+                4.034352779388428,
+                0,
+                -3.546769142150879
+            ]
+        },
+        {
+            "mesh" : 3,
+            "name" : "column_0.002",
+            "translation" : [
+                -0.7669124603271484,
+                0,
+                -5.243768215179443
+            ]
+        },
+        {
+            "mesh" : 3,
+            "name" : "column_0.003",
+            "translation" : [
+                -0.7669124603271484,
+                0,
+                5.600468158721924
+            ]
+        },
+        {
+            "mesh" : 3,
+            "name" : "column_0.004",
+            "translation" : [
+                -5.40261697769165,
+                0,
+                1.7097878456115723
+            ]
+        },
+        {
+            "mesh" : 3,
+            "name" : "column_0.005",
+            "translation" : [
+                -5.40261697769165,
+                0,
+                -2.0567219257354736
+            ]
+        },
+        {
+            "mesh" : 4,
+            "name" : "dome",
+            "translation" : [
+                0,
+                10.846502304077148,
+                0
+            ]
+        },
+        {
+            "mesh" : 5,
+            "name" : "milkyway",
+            "scale" : [
+                5.861281394958496,
+                -0.5747091174125671,
+                5.861281394958496
+            ],
+            "translation" : [
+                0,
+                10.332517623901367,
+                0
+            ]
+        },
+        {
+            "mesh" : 6,
+            "name" : "earth",
+            "scale" : [
+                0.3868779242038727,
+                0.3868779242038727,
+                0.3868779242038727
+            ],
+            "translation" : [
+                0.046428680419921875,
+                4.758791923522949,
+                1.4374182224273682
+            ]
+        },
+        {
+            "mesh" : 7,
+            "name" : "saturn",
+            "scale" : [
+                0.8631472587585449,
+                0.8631472587585449,
+                0.8631472587585449
+            ],
+            "translation" : [
+                0.7704035043716431,
+                4.758791923522949,
+                3.2832906246185303
+            ]
+        },
+        {
+            "mesh" : 8,
+            "name" : "saturn.001",
+            "scale" : [
+                0.630012571811676,
+                0.630012571811676,
+                0.630012571811676
+            ],
+            "translation" : [
+                -2.5262279510498047,
+                3.7848119735717773,
+                2.0928404331207275
+            ]
+        },
+        {
+            "mesh" : 9,
+            "name" : "saturn.002",
+            "scale" : [
+                0.5450682640075684,
+                0.5450682640075684,
+                0.5450682640075684
+            ],
+            "translation" : [
+                0.22096490859985352,
+                5.8246612548828125,
+                -2.989466428756714
+            ]
+        },
+        {
+            "mesh" : 10,
+            "name" : "saturn.003",
+            "scale" : [
+                0.9573714733123779,
+                0.9573714733123779,
+                0.9573714733123779
+            ],
+            "translation" : [
+                2.654115915298462,
+                1.1106147766113281,
+                -0.8603012561798096
+            ]
+        },
+        {
+            "children" : [
+                18,
+                19,
+                20,
+                21,
+                22
+            ],
+            "name" : "solar_root"
+        },
+        {
+            "mesh" : 11,
+            "name" : "sun",
+            "scale" : [
+                1.3610559701919556,
+                1.3610559701919556,
+                1.3610559701919556
+            ],
+            "translation" : [
+                0,
+                2.0611612796783447,
+                0
+            ]
+        },
+        {
+            "children" : [
+                10,
+                11,
+                12,
+                13,
+                14,
+                15,
+                16,
+                17,
+                23,
+                24
+            ],
+            "name" : "RenderTaskSource"
+        },
+        {
+            "children" : [
+                5,
+                6,
+                7,
+                8,
+                9,
+                25
+            ],
+            "name" : "center"
+        }
+    ],
+    "cameras" : [
+        {
+            "name" : "Camera.002",
+            "perspective" : {
+                "yfov" : 0.6911112070083618,
+                "zfar" : 1000,
+                "znear" : 0.0010000000474974513
+            },
+            "type" : "perspective"
+        },
+        {
+            "name" : "Camera.001",
+            "perspective" : {
+                "yfov" : 0.6911112070083618,
+                "zfar" : 1000,
+                "znear" : 0.0010000000474974513
+            },
+            "type" : "perspective"
+        }
+    ],
+    "materials" : [
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "background",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 0,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "sides",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 1,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "top",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 2,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0.8947368264198303,
+                "roughnessFactor" : 0.0964912474155426
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "marble2",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 3,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "marble",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 4,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "milkyway",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 5,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "mat_earth",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 6,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "mat_saturn",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 7,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0.11403506994247437,
+                "roughnessFactor" : 0.34210526943206787
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "mat_mars",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 8,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "mat_venus",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 9,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                0,
+                0,
+                0
+            ],
+            "name" : "mat_jupiter",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 10,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.5
+            }
+        },
+        {
+            "doubleSided" : true,
+            "emissiveFactor" : [
+                1,
+                1,
+                1
+            ],
+            "name" : "mat_sun2",
+            "pbrMetallicRoughness" : {
+                "baseColorTexture" : {
+                    "index" : 11,
+                    "texCoord" : 0
+                },
+                "metallicFactor" : 0,
+                "roughnessFactor" : 0.7368420958518982
+            }
+        }
+    ],
+    "meshes" : [
+        {
+            "name" : "Plane",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 0,
+                        "NORMAL" : 1,
+                        "TEXCOORD_0" : 2
+                    },
+                    "indices" : 3,
+                    "material" : 0
+                }
+            ]
+        },
+        {
+            "name" : "Cylinder",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 4,
+                        "NORMAL" : 5,
+                        "TEXCOORD_0" : 6
+                    },
+                    "indices" : 7,
+                    "material" : 1
+                }
+            ]
+        },
+        {
+            "name" : "Cylinder.001",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 8,
+                        "NORMAL" : 9,
+                        "TEXCOORD_0" : 10
+                    },
+                    "indices" : 11,
+                    "material" : 2
+                }
+            ]
+        },
+        {
+            "name" : "Cylinder.002",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 12,
+                        "NORMAL" : 13,
+                        "TEXCOORD_0" : 14
+                    },
+                    "indices" : 15,
+                    "material" : 3
+                }
+            ]
+        },
+        {
+            "name" : "Cylinder.003",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 16,
+                        "NORMAL" : 17,
+                        "TEXCOORD_0" : 18
+                    },
+                    "indices" : 19,
+                    "material" : 4
+                }
+            ]
+        },
+        {
+            "name" : "Cylinder.004",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 20,
+                        "NORMAL" : 21,
+                        "TEXCOORD_0" : 22
+                    },
+                    "indices" : 23,
+                    "material" : 5
+                }
+            ]
+        },
+        {
+            "name" : "Sphere",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 24,
+                        "NORMAL" : 25,
+                        "TEXCOORD_0" : 26
+                    },
+                    "indices" : 27,
+                    "material" : 6
+                }
+            ]
+        },
+        {
+            "name" : "Sphere.002",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 28,
+                        "NORMAL" : 29,
+                        "TEXCOORD_0" : 30
+                    },
+                    "indices" : 27,
+                    "material" : 7
+                }
+            ]
+        },
+        {
+            "name" : "Sphere.003",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 31,
+                        "NORMAL" : 32,
+                        "TEXCOORD_0" : 33
+                    },
+                    "indices" : 27,
+                    "material" : 8
+                }
+            ]
+        },
+        {
+            "name" : "Sphere.004",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 34,
+                        "NORMAL" : 35,
+                        "TEXCOORD_0" : 36
+                    },
+                    "indices" : 27,
+                    "material" : 9
+                }
+            ]
+        },
+        {
+            "name" : "Sphere.005",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 37,
+                        "NORMAL" : 38,
+                        "TEXCOORD_0" : 39
+                    },
+                    "indices" : 40,
+                    "material" : 10
+                }
+            ]
+        },
+        {
+            "name" : "Sphere.001",
+            "primitives" : [
+                {
+                    "attributes" : {
+                        "POSITION" : 41,
+                        "NORMAL" : 42,
+                        "TEXCOORD_0" : 43
+                    },
+                    "indices" : 44,
+                    "material" : 11
+                }
+            ]
+        }
+    ],
+    "textures" : [
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        },
+        {
+            "source" : 0
+        }
+    ],
+    "images" : [
+        {
+            "mimeType" : "image/png",
+            "name" : "texture-atlas",
+            "uri" : "texture-atlas.jpg"
+        }
+    ],
+    "accessors" : [
+        {
+            "bufferView" : 0,
+            "componentType" : 5126,
+            "count" : 4,
+            "max" : [
+                1,
+                0,
+                1
+            ],
+            "min" : [
+                -1,
+                0,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 1,
+            "componentType" : 5126,
+            "count" : 4,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 2,
+            "componentType" : 5126,
+            "count" : 4,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 3,
+            "componentType" : 5123,
+            "count" : 6,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 4,
+            "componentType" : 5126,
+            "count" : 72,
+            "max" : [
+                1,
+                1,
+                1
+            ],
+            "min" : [
+                -1,
+                -1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 5,
+            "componentType" : 5126,
+            "count" : 72,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 6,
+            "componentType" : 5126,
+            "count" : 72,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 7,
+            "componentType" : 5123,
+            "count" : 192,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 8,
+            "componentType" : 5126,
+            "count" : 32,
+            "max" : [
+                1,
+                1,
+                1
+            ],
+            "min" : [
+                -1,
+                1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 9,
+            "componentType" : 5126,
+            "count" : 32,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 10,
+            "componentType" : 5126,
+            "count" : 32,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 11,
+            "componentType" : 5123,
+            "count" : 90,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 12,
+            "componentType" : 5126,
+            "count" : 800,
+            "max" : [
+                0.9250403642654419,
+                10.267958641052246,
+                0.9250403642654419
+            ],
+            "min" : [
+                -0.9250403642654419,
+                -0.9530067443847656,
+                -0.9250403642654419
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 13,
+            "componentType" : 5126,
+            "count" : 800,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 14,
+            "componentType" : 5126,
+            "count" : 800,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 15,
+            "componentType" : 5123,
+            "count" : 1428,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 16,
+            "componentType" : 5126,
+            "count" : 716,
+            "max" : [
+                6.96999979019165,
+                1.0763102769851685,
+                6.67748498916626
+            ],
+            "min" : [
+                -6.970000267028809,
+                -1,
+                -6.677481651306152
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 17,
+            "componentType" : 5126,
+            "count" : 716,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 18,
+            "componentType" : 5126,
+            "count" : 716,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 19,
+            "componentType" : 5123,
+            "count" : 3444,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 20,
+            "componentType" : 5126,
+            "count" : 89,
+            "max" : [
+                1,
+                1,
+                1
+            ],
+            "min" : [
+                -1,
+                1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 21,
+            "componentType" : 5126,
+            "count" : 89,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 22,
+            "componentType" : 5126,
+            "count" : 89,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 23,
+            "componentType" : 5123,
+            "count" : 90,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 24,
+            "componentType" : 5126,
+            "count" : 541,
+            "max" : [
+                1.000000238418579,
+                1,
+                1.0000003576278687
+            ],
+            "min" : [
+                -0.9999998211860657,
+                -1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 25,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 26,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 27,
+            "componentType" : 5123,
+            "count" : 2880,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 28,
+            "componentType" : 5126,
+            "count" : 541,
+            "max" : [
+                1.000000238418579,
+                1,
+                1.0000003576278687
+            ],
+            "min" : [
+                -0.9999998211860657,
+                -1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 29,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 30,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 31,
+            "componentType" : 5126,
+            "count" : 541,
+            "max" : [
+                1.000000238418579,
+                1,
+                1.0000003576278687
+            ],
+            "min" : [
+                -0.9999998211860657,
+                -1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 32,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 33,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 34,
+            "componentType" : 5126,
+            "count" : 541,
+            "max" : [
+                1.000000238418579,
+                1,
+                1.0000003576278687
+            ],
+            "min" : [
+                -0.9999998211860657,
+                -1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 35,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 36,
+            "componentType" : 5126,
+            "count" : 541,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 37,
+            "componentType" : 5126,
+            "count" : 539,
+            "max" : [
+                1.000000238418579,
+                1,
+                1.0000003576278687
+            ],
+            "min" : [
+                -0.9999998211860657,
+                -1,
+                -1
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 38,
+            "componentType" : 5126,
+            "count" : 539,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 39,
+            "componentType" : 5126,
+            "count" : 539,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 40,
+            "componentType" : 5123,
+            "count" : 2880,
+            "type" : "SCALAR"
+        },
+        {
+            "bufferView" : 41,
+            "componentType" : 5126,
+            "count" : 559,
+            "max" : [
+                1.0000001192092896,
+                1,
+                1.0000001192092896
+            ],
+            "min" : [
+                -0.9999999403953552,
+                -1,
+                -1.000000238418579
+            ],
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 42,
+            "componentType" : 5126,
+            "count" : 559,
+            "type" : "VEC3"
+        },
+        {
+            "bufferView" : 43,
+            "componentType" : 5126,
+            "count" : 559,
+            "type" : "VEC2"
+        },
+        {
+            "bufferView" : 44,
+            "componentType" : 5123,
+            "count" : 2880,
+            "type" : "SCALAR"
+        }
+    ],
+    "bufferViews" : [
+        {
+            "buffer" : 0,
+            "byteLength" : 48,
+            "byteOffset" : 0
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 48,
+            "byteOffset" : 48
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 32,
+            "byteOffset" : 96
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 12,
+            "byteOffset" : 128
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 864,
+            "byteOffset" : 140
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 864,
+            "byteOffset" : 1004
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 576,
+            "byteOffset" : 1868
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 384,
+            "byteOffset" : 2444
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 384,
+            "byteOffset" : 2828
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 384,
+            "byteOffset" : 3212
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 256,
+            "byteOffset" : 3596
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 180,
+            "byteOffset" : 3852
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 9600,
+            "byteOffset" : 4032
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 9600,
+            "byteOffset" : 13632
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6400,
+            "byteOffset" : 23232
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 2856,
+            "byteOffset" : 29632
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 8592,
+            "byteOffset" : 32488
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 8592,
+            "byteOffset" : 41080
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 5728,
+            "byteOffset" : 49672
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6888,
+            "byteOffset" : 55400
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 1068,
+            "byteOffset" : 62288
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 1068,
+            "byteOffset" : 63356
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 712,
+            "byteOffset" : 64424
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 180,
+            "byteOffset" : 65136
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 65316
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 71808
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 4328,
+            "byteOffset" : 78300
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 5760,
+            "byteOffset" : 82628
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 88388
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 94880
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 4328,
+            "byteOffset" : 101372
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 105700
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 112192
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 4328,
+            "byteOffset" : 118684
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 123012
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6492,
+            "byteOffset" : 129504
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 4328,
+            "byteOffset" : 135996
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6468,
+            "byteOffset" : 140324
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6468,
+            "byteOffset" : 146792
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 4312,
+            "byteOffset" : 153260
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 5760,
+            "byteOffset" : 157572
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6708,
+            "byteOffset" : 163332
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 6708,
+            "byteOffset" : 170040
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 4472,
+            "byteOffset" : 176748
+        },
+        {
+            "buffer" : 0,
+            "byteLength" : 5760,
+            "byteOffset" : 181220
+        }
+    ],
+    "buffers" : [
+        {
+            "byteLength" : 186980,
+            "uri" : "reflection.bin"
+        }
+    ]
+}
diff --git a/resources/game/scene.json b/resources/game/scene.json
new file mode 100644 (file)
index 0000000..2f0b2d5
--- /dev/null
@@ -0,0 +1,164 @@
+{
+  "crate.011" : {
+    "uid" : 140636849641992,
+    "location" : [ 2.929080, 32.407696, -0.438286 ],
+    "rotation" : [ -0.000000, -0.000000, 0.210321, 0.977632 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.011.png"
+  },
+  "crate.010" : {
+    "uid" : 140636849640456,
+    "location" : [ 1.141492, 31.771614, -0.438286 ],
+    "rotation" : [ -0.000000, 0.000000, -0.275506, 0.961299 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.010.png"
+  },
+  "crate.009" : {
+    "uid" : 140636847323656,
+    "location" : [ -0.631420, 31.771614, -0.438286 ],
+    "rotation" : [ -0.000000, -0.000000, 0.101605, 0.994825 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.009.png"
+  },
+  "crate.008" : {
+    "uid" : 140636847322120,
+    "location" : [ -3.485219, 30.717421, -0.438286 ],
+    "rotation" : [ -0.000000, -0.000000, 0.651881, 0.758321 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.008.png"
+  },
+  "crate.007" : {
+    "uid" : 140636847320584,
+    "location" : [ -2.265040, 31.771614, -0.438286 ],
+    "rotation" : [ -0.000000, -0.000000, 0.466266, 0.884644 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.007.png"
+  },
+  "crate.006" : {
+    "uid" : 140636847319048,
+    "location" : [ -2.962721, 31.168840, 0.717751 ],
+    "rotation" : [ -0.000000, -0.000000, 0.466266, 0.884644 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.006.png"
+  },
+  "back_wall" : {
+    "uid" : 140636847303688,
+    "location" : [ -0.927336, 23.381512, 4.328736 ],
+    "rotation" : [ -0.000000, 0.000000, -0.000000, 1.000000 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 16.032043, 23.978968, 11.872409 ],
+    "model" : "tile_1.011.mod",
+    "texture" : "lm_back_wall.png"
+  },
+  "side_wall_floor" : {
+    "uid" : 140636849654280,
+    "location" : [ -0.911298, 25.371010, 4.919888 ],
+    "rotation" : [ -0.000000, 0.000000, -0.000000, 1.000000 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 20.064106, 20.000000, 11.872391 ],
+    "model" : "tile_1.010.mod",
+    "texture" : "lm_side_wall_floor.png"
+  },
+  "slope" : {
+    "uid" : 140636849655816,
+    "location" : [ -0.879243, 13.510683, -0.510011 ],
+    "rotation" : [ -0.000000, 0.000000, -0.000000, 1.000000 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 19.999998, 3.720652, 1.012590 ],
+    "model" : "tile_1.009.mod",
+    "texture" : "lm_slope.png"
+  },
+  "left_corridor" : {
+    "uid" : 140636849645064,
+    "location" : [ -12.219622, 24.306738, 2.417727 ],
+    "rotation" : [ -0.061628, 0.061629, -0.704416, 0.704416 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 6.548267, 8.015736, 5.146265 ],
+    "model" : "tile_1.005.mod",
+    "texture" : "lm_left_corridor.png"
+  },
+  "right_corridor" : {
+    "uid" : 140636849652744,
+    "location" : [ 11.361787, 24.607277, 2.269830 ],
+    "rotation" : [ -0.061628, -0.061629, 0.704416, 0.704416 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 6.548267, 8.015736, 5.146265 ],
+    "model" : "tile_1.005.mod",
+    "texture" : "lm_right_corridor.png"
+  },
+  "crate.005" : {
+    "uid" : 140636847317512,
+    "location" : [ 0.990019, 8.702949, 1.887937 ],
+    "rotation" : [ -0.020922, 0.250372, -0.080603, 0.964562 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.005.png"
+  },
+  "crate.004" : {
+    "uid" : 140636847315976,
+    "location" : [ 0.269215, 8.675555, 0.574302 ],
+    "rotation" : [ -0.000000, 0.000000, -0.295460, 0.955355 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.004.png"
+  },
+  "crate.003" : {
+    "uid" : 140636847314440,
+    "location" : [ -1.762900, 0.681778, 1.730339 ],
+    "rotation" : [ -0.000000, -0.000000, 0.055911, 0.998436 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.003.png"
+  },
+  "crate.002" : {
+    "uid" : 140636847312904,
+    "location" : [ -1.762900, 1.603783, 0.574302 ],
+    "rotation" : [ -0.000000, -0.000000, 0.055911, 0.998436 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.002.png"
+  },
+  "crate.001" : {
+    "uid" : 140636847311368,
+    "location" : [ -1.762900, -0.008718, 0.574302 ],
+    "rotation" : [ -0.000000, -0.000000, 0.277257, 0.960796 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 1.156036, 1.156036, 1.156036 ],
+    "model" : "Cube.mod",
+    "texture" : "lm_crate.001.png"
+  },
+  "corridor_1" : {
+    "uid" : 140636847308296,
+    "location" : [ -0.732166, 6.650357, 2.804132 ],
+    "rotation" : [ -0.000000, 0.000000, -0.000000, 1.000000 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 6.548267, 8.015736, 5.146265 ],
+    "model" : "tile_1.005.mod",
+    "texture" : "lm_corridor_1.png"
+  },
+  "corridor_0" : {
+    "uid" : 140636847306760,
+    "location" : [ -0.728281, -1.365378, 2.804132 ],
+    "rotation" : [ -0.000000, 0.000000, -0.000000, 1.000000 ],
+    "scale" : [ 1.000000, 1.000000, 1.000000 ],
+    "size" : [ 6.548267, 8.015736, 5.146265 ],
+    "model" : "tile_1.005.mod",
+    "texture" : "lm_corridor_0.png"
+  }
+}
diff --git a/resources/game/texture-atlas-license.txt b/resources/game/texture-atlas-license.txt
new file mode 100644 (file)
index 0000000..9603efa
--- /dev/null
@@ -0,0 +1,6 @@
+Texture Atlas contains images under Attribution 4.0 International license (CC By 4.0)
+
+https://creativecommons.org/licenses/by/4.0/
+
+https://creativecommons.org/licenses/by/4.0/legalcode
+
diff --git a/resources/game/texture-atlas.jpg b/resources/game/texture-atlas.jpg
new file mode 100644 (file)
index 0000000..21b46a7
Binary files /dev/null and b/resources/game/texture-atlas.jpg differ
diff --git a/resources/game/tile_1.005.mod b/resources/game/tile_1.005.mod
new file mode 100644 (file)
index 0000000..c7e5f8e
Binary files /dev/null and b/resources/game/tile_1.005.mod differ
diff --git a/resources/game/tile_1.009.mod b/resources/game/tile_1.009.mod
new file mode 100644 (file)
index 0000000..2144893
Binary files /dev/null and b/resources/game/tile_1.009.mod differ
diff --git a/resources/game/tile_1.010.mod b/resources/game/tile_1.010.mod
new file mode 100644 (file)
index 0000000..d1c6d72
Binary files /dev/null and b/resources/game/tile_1.010.mod differ
diff --git a/resources/game/tile_1.011.mod b/resources/game/tile_1.011.mod
new file mode 100644 (file)
index 0000000..55efc44
Binary files /dev/null and b/resources/game/tile_1.011.mod differ
diff --git a/resources/images/00_popup_bg.9.png b/resources/images/00_popup_bg.9.png
new file mode 100644 (file)
index 0000000..3b4e792
Binary files /dev/null and b/resources/images/00_popup_bg.9.png differ
diff --git a/resources/images/Backward.png b/resources/images/Backward.png
new file mode 100755 (executable)
index 0000000..5950716
Binary files /dev/null and b/resources/images/Backward.png differ
diff --git a/resources/images/Call_Accept.png b/resources/images/Call_Accept.png
new file mode 100644 (file)
index 0000000..e640a41
Binary files /dev/null and b/resources/images/Call_Accept.png differ
diff --git a/resources/images/Call_Battery.png b/resources/images/Call_Battery.png
new file mode 100644 (file)
index 0000000..06f1e35
Binary files /dev/null and b/resources/images/Call_Battery.png differ
diff --git a/resources/images/Call_Decline.png b/resources/images/Call_Decline.png
new file mode 100644 (file)
index 0000000..6998322
Binary files /dev/null and b/resources/images/Call_Decline.png differ
diff --git a/resources/images/Call_Decline_wh.png b/resources/images/Call_Decline_wh.png
new file mode 100644 (file)
index 0000000..7022548
Binary files /dev/null and b/resources/images/Call_Decline_wh.png differ
diff --git a/resources/images/Camera.svg b/resources/images/Camera.svg
new file mode 100755 (executable)
index 0000000..a820260
--- /dev/null
@@ -0,0 +1,247 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 195.688 195.687"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="Camera.svg"><metadata
+     id="metadata111"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs109" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1855"
+     inkscape:window-height="1056"
+     id="namedview107"
+     showgrid="false"
+     inkscape:zoom="6.342955"
+     inkscape:cx="95.823553"
+     inkscape:cy="77.789068"
+     inkscape:window-x="1985"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="Layer_1"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><g
+     id="g3"
+     transform="translate(-199.60801,-323.454)"><linearGradient
+       id="SVGID_1_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.4512"
+       y1="324.3956"
+       x2="297.4512"
+       y2="518.1626"><stop
+         offset="0"
+         style="stop-color:#FFFFFF;stop-opacity:0.7"
+         id="stop6" /><stop
+         offset="0.9987"
+         style="stop-color:#D8D9D8;stop-opacity:0.7"
+         id="stop8" /></linearGradient><path
+       style="fill:url(#SVGID_1_);fill-rule:evenodd"
+       d="m 209.231,518.642 c -5.031,0 -9.124,-4.093 -9.124,-9.124 v -176.44 c 0,-5.031 4.093,-9.124 9.124,-9.124 h 176.441 c 5.03,0 9.123,4.093 9.123,9.124 v 176.44 c 0,5.031 -4.093,9.124 -9.123,9.124 H 209.231 z"
+       id="path10"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d8d8d7"
+       d="m 385.671,324.454 c 4.755,0 8.624,3.868 8.624,8.623 v 176.441 c 0,4.755 -3.868,8.623 -8.624,8.623 h -176.44 c -4.755,0 -8.623,-3.868 -8.623,-8.623 V 333.077 c 0,-4.755 3.868,-8.623 8.623,-8.623 h 176.44 m 0,-1 h -176.44 c -5.315,0 -9.623,4.309 -9.623,9.623 v 176.441 c 0,5.315 4.309,9.623 9.623,9.623 h 176.441 c 5.315,0 9.624,-4.308 9.624,-9.623 V 333.077 c -10e-4,-5.315 -4.31,-9.623 -9.625,-9.623 l 0,0 z"
+       id="path12"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:none"
+     d="M 41.644991,57.106 H 161.45399 c 3.472,0 6.287,2.815 6.287,6.287 v 79.809 c 0,3.472 -2.815,6.287 -6.287,6.287 H 41.644991 c -3.472,0 -6.287,-2.815 -6.287,-6.287 V 63.393 c 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path14"
+     inkscape:connector-curvature="0" /><g
+     id="g16"
+     transform="translate(-199.60801,-323.454)"><g
+       id="g18"><linearGradient
+         id="SVGID_2_"
+         gradientUnits="userSpaceOnUse"
+         x1="301.3562"
+         y1="382.27881"
+         x2="301.3562"
+         y2="473.1604"><stop
+           offset="0"
+           style="stop-color:#756A80"
+           id="stop21" /><stop
+           offset="1"
+           style="stop-color:#60576B"
+           id="stop23" /></linearGradient><path
+         style="fill:url(#SVGID_2_);fill-rule:evenodd"
+         d="m 235.238,406.51 v -19.725 c 0,-3.178 2.586,-5.764 5.765,-5.764 H 361.71 c 3.179,0 5.765,2.586 5.765,5.764 V 406.51 H 235.238 z"
+         id="path25"
+         inkscape:connector-curvature="0" /><path
+         style="fill:#5c5264"
+         d="m 361.71,381.271 c 3.041,0 5.515,2.474 5.515,5.515 v 19.475 H 235.488 v -19.475 c 0,-3.041 2.474,-5.515 5.515,-5.515 H 361.71 m 0,-0.5 H 241.002 c -3.322,0 -6.015,2.693 -6.015,6.015 v 19.975 h 132.737 v -19.975 c 0,-3.322 -2.693,-6.015 -6.014,-6.015 l 0,0 z"
+         id="path27"
+         inkscape:connector-curvature="0" /></g><g
+       id="g29"><linearGradient
+         id="SVGID_3_"
+         gradientUnits="userSpaceOnUse"
+         x1="301.3562"
+         y1="382.50409"
+         x2="301.3562"
+         y2="474.47351"><stop
+           offset="0"
+           style="stop-color:#756A80"
+           id="stop32" /><stop
+           offset="1"
+           style="stop-color:#60576B"
+           id="stop34" /></linearGradient><path
+         style="fill:url(#SVGID_3_);fill-rule:evenodd"
+         d="m 241.002,475.249 c -3.179,0 -5.765,-2.586 -5.765,-5.765 v -60.45 h 132.237 v 60.45 c 0,3.179 -2.586,5.765 -5.765,5.765 H 241.002 z"
+         id="path36"
+         inkscape:connector-curvature="0" /><path
+         style="fill:#5c5264"
+         d="m 367.224,409.284 v 60.2 c 0,3.041 -2.474,5.515 -5.515,5.515 H 241.002 c -3.041,0 -5.515,-2.474 -5.515,-5.515 v -60.2 h 131.737 m 0.5,-0.5 H 234.988 v 60.7 c 0,3.322 2.693,6.015 6.015,6.015 H 361.71 c 3.322,0 6.015,-2.693 6.015,-6.015 v -60.7 l -0.001,0 z"
+         id="path38"
+         inkscape:connector-curvature="0" /></g></g><g
+     id="g40"
+     transform="translate(-199.60801,-323.454)"><linearGradient
+       id="SVGID_4_"
+       gradientUnits="userSpaceOnUse"
+       x1="300.84109"
+       y1="399.01071"
+       x2="300.84109"
+       y2="458.10779"><stop
+         offset="0"
+         style="stop-color:#756A80"
+         id="stop43" /><stop
+         offset="1"
+         style="stop-color:#60576B"
+         id="stop45" /></linearGradient><path
+       style="fill:url(#SVGID_4_);fill-rule:evenodd"
+       d="m 300.841,461.131 c -17.485,0 -31.71,-14.226 -31.71,-31.711 0,-17.485 14.225,-31.71 31.71,-31.71 17.485,0 31.711,14.225 31.711,31.71 0,17.485 -14.226,31.711 -31.711,31.711 z"
+       id="path47"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#5c5264"
+       d="m 300.841,398.21 c 17.237,0 31.21,13.973 31.21,31.21 0,17.237 -13.973,31.211 -31.21,31.211 -17.237,0 -31.211,-13.973 -31.211,-31.211 0,-17.237 13.974,-31.21 31.211,-31.21 m 0,-1 c -17.761,0 -32.211,14.45 -32.211,32.21 0,17.761 14.45,32.211 32.211,32.211 17.761,0 32.21,-14.45 32.21,-32.211 0,-17.761 -14.449,-32.21 -32.21,-32.21 l 0,0 z"
+       id="path49"
+       inkscape:connector-curvature="0" /></g><g
+     id="g51"
+     transform="translate(-199.60801,-323.454)"><linearGradient
+       id="SVGID_5_"
+       gradientUnits="userSpaceOnUse"
+       x1="300.84109"
+       y1="399.9697"
+       x2="300.84109"
+       y2="457.20319"><stop
+         offset="0"
+         style="stop-color:#E7E7E7"
+         id="stop54" /><stop
+         offset="1"
+         style="stop-color:#E2E2E2"
+         id="stop56" /></linearGradient><path
+       style="fill:url(#SVGID_5_);fill-rule:evenodd"
+       d="m 300.841,460.131 c -16.934,0 -30.71,-13.777 -30.71,-30.711 0,-16.934 13.777,-30.71 30.71,-30.71 16.933,0 30.711,13.777 30.711,30.71 0,16.933 -13.778,30.711 -30.711,30.711 z m 0.002,-48.728 c -9.935,0 -18.017,8.083 -18.017,18.017 0,9.934 8.083,18.017 18.017,18.017 9.934,0 18.017,-8.082 18.017,-18.017 0,-9.935 -8.083,-18.017 -18.017,-18.017 z"
+       id="path58"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#f2f2f2"
+       d="m 300.841,399.21 c 16.658,0 30.21,13.552 30.21,30.21 0,16.658 -13.552,30.211 -30.21,30.211 -16.658,0 -30.211,-13.552 -30.211,-30.211 0,-16.658 13.553,-30.21 30.211,-30.21 m 0.002,48.726 c 10.21,0 18.517,-8.307 18.517,-18.517 0,-10.21 -8.307,-18.517 -18.517,-18.517 -10.21,0 -18.517,8.307 -18.517,18.517 0,10.21 8.306,18.517 18.517,18.517 m -0.002,-49.726 c -17.237,0 -31.211,13.973 -31.211,31.21 0,17.237 13.973,31.211 31.211,31.211 17.237,0 31.21,-13.973 31.21,-31.211 0,-17.237 -13.973,-31.21 -31.21,-31.21 l 0,0 z m 0.002,48.726 c -9.674,0 -17.517,-7.842 -17.517,-17.517 0,-9.674 7.843,-17.517 17.517,-17.517 9.674,0 17.517,7.843 17.517,17.517 -0.001,9.675 -7.843,17.517 -17.517,17.517 l 0,0 z"
+       id="path60"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:#5c5264;fill-rule:evenodd"
+     d="m 162.10099,57.106 -120.727999,0 c -4.82917,1.06976 -6.015,3.82683 -6.015,7.746 0,-3.322 2.693,-6.015 6.015,-6.015 l 120.728999,0 c 3.322,0 6.015,2.693 6.015,6.015 l 0,-1.731 c -10e-4,-3.322 -2.694,-6.015 -6.016,-6.015 z"
+     id="path62"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sccssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 41.372991,153.312 120.728999,0 c 5.14448,-0.12383 6.015,-3.82683 6.015,-7.746 0,3.322 -2.693,6.015 -6.015,6.015 l -120.728999,0 c -3.322,0 -6.015,-2.693 -6.015,-6.015 l 0,1.731 c 0,3.322 2.693,6.015 6.015,6.015 z"
+     id="path64"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sccsscss" /><linearGradient
+     id="SVGID_6_"
+     gradientUnits="userSpaceOnUse"
+     x1="300.8425"
+     y1="413.8396"
+     x2="300.8425"
+     y2="445.65921"
+     gradientTransform="translate(-199.60801,-323.454)"><stop
+       offset="0"
+       style="stop-color:#595A5B"
+       id="stop67" /><stop
+       offset="1"
+       style="stop-color:#4C4C4C"
+       id="stop69" /></linearGradient><path
+     style="fill:url(#SVGID_6_);fill-rule:evenodd"
+     d="m 101.23499,88.449 c 9.674,0 17.517,7.842 17.517,17.517 0,9.674 -7.842,17.517 -17.517,17.517 -9.674999,0 -17.516999,-7.842 -17.516999,-17.517 0,-9.675 7.842,-17.517 17.516999,-17.517 z"
+     id="path71"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_7_"
+     gradientUnits="userSpaceOnUse"
+     x1="300.8425"
+     y1="413.8396"
+     x2="300.8425"
+     y2="445.65921"
+     gradientTransform="translate(-199.60801,-323.454)"><stop
+       offset="0"
+       style="stop-color:#595A5B"
+       id="stop74" /><stop
+       offset="1"
+       style="stop-color:#4C4C4C"
+       id="stop76" /></linearGradient><path
+     style="fill:url(#SVGID_7_);fill-rule:evenodd"
+     d="m 101.23499,88.449 c 9.674,0 17.517,7.842 17.517,17.517 0,9.674 -7.842,17.517 -17.517,17.517 -9.674999,0 -17.516999,-7.842 -17.516999,-17.517 0,-9.675 7.842,-17.517 17.516999,-17.517 z"
+     id="path78"
+     inkscape:connector-curvature="0" /><g
+     id="g80"
+     transform="translate(-199.60801,-323.454)"><g
+       id="g82"><path
+         style="fill:#5c5264;fill-rule:evenodd"
+         d="m 331.184,388.309 h 25.81 c 1.657,0 3,1.343 3,3 v 10.016 c 0,1.657 -1.343,3 -3,3 h -25.81 c -1.657,0 -3,-1.343 -3,-3 v -10.016 c 0,-1.657 1.343,-3 3,-3 z"
+         id="path84"
+         inkscape:connector-curvature="0" /></g></g><g
+     id="g86"
+     transform="translate(-199.60801,-323.454)"><g
+       id="g88"><linearGradient
+         id="SVGID_8_"
+         gradientUnits="userSpaceOnUse"
+         x1="344.0889"
+         y1="387.94641"
+         x2="344.0889"
+         y2="401.42691"><stop
+           offset="0"
+           style="stop-color:#E7E7E7"
+           id="stop91" /><stop
+           offset="1"
+           style="stop-color:#E2E2E2"
+           id="stop93" /></linearGradient><path
+         style="fill:url(#SVGID_8_);fill-rule:evenodd"
+         d="m 331.184,402.124 c -1.379,0 -2.5,-1.122 -2.5,-2.5 v -10.017 c 0,-1.378 1.121,-2.5 2.5,-2.5 h 25.811 c 1.379,0 2.5,1.122 2.5,2.5 v 10.017 c 0,1.378 -1.121,2.5 -2.5,2.5 h -25.811 z"
+         id="path95"
+         inkscape:connector-curvature="0" /></g><g
+       id="g97"><path
+         style="fill:#f2f2f2"
+         d="m 356.994,387.608 c 1.103,0 2,0.897 2,2 v 10.016 c 0,1.103 -0.897,2 -2,2 h -25.81 c -1.103,0 -2,-0.897 -2,-2 v -10.016 c 0,-1.103 0.897,-2 2,-2 h 25.81 m 0,-1 h -25.81 c -1.657,0 -3,1.343 -3,3 v 10.016 c 0,1.657 1.343,3 3,3 h 25.81 c 1.657,0 3,-1.343 3,-3 v -10.016 c 0,-1.657 -1.343,-3 -3,-3 l 0,0 z"
+         id="path99"
+         inkscape:connector-curvature="0" /></g></g><path
+     style="fill:#e0e1e0;fill-rule:evenodd"
+     d="m 94.535991,95.709 c 1.819,0 3.293,1.474 3.293,3.293 0,1.819 -1.474,3.293 -3.293,3.293 -1.819,0 -3.293,-1.475 -3.293,-3.293 -0.001,-1.819 1.474,-3.293 3.293,-3.293 z"
+     id="path101"
+     inkscape:connector-curvature="0" /><g
+     id="g103"
+     transform="translate(-199.60801,-323.454)"><path
+       style="fill:#353535;fill-rule:evenodd"
+       d="m 300.843,412.903 c 9.505,0 17.224,7.576 17.491,17.017 0.005,-0.168 0.025,-0.331 0.025,-0.5 0,-9.674 -7.842,-17.517 -17.517,-17.517 -9.675,0 -17.517,7.843 -17.517,17.517 0,0.169 0.021,0.332 0.025,0.5 0.268,-9.441 7.987,-17.017 17.493,-17.017 z"
+       id="path105"
+       inkscape:connector-curvature="0" /></g></svg>
\ No newline at end of file
diff --git a/resources/images/Card_01.png b/resources/images/Card_01.png
new file mode 100644 (file)
index 0000000..799cb12
Binary files /dev/null and b/resources/images/Card_01.png differ
diff --git a/resources/images/Card_02.png b/resources/images/Card_02.png
new file mode 100644 (file)
index 0000000..796705a
Binary files /dev/null and b/resources/images/Card_02.png differ
diff --git a/resources/images/Card_03.png b/resources/images/Card_03.png
new file mode 100644 (file)
index 0000000..33fcb24
Binary files /dev/null and b/resources/images/Card_03.png differ
diff --git a/resources/images/Card_Add_Button.png b/resources/images/Card_Add_Button.png
new file mode 100644 (file)
index 0000000..a0f9d53
Binary files /dev/null and b/resources/images/Card_Add_Button.png differ
diff --git a/resources/images/Contacts.svg b/resources/images/Contacts.svg
new file mode 100755 (executable)
index 0000000..ced240f
--- /dev/null
@@ -0,0 +1,152 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 196.243 197.727"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="Contacts.svg"><metadata
+     id="metadata59"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs57" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1476"
+     inkscape:window-height="1005"
+     id="namedview55"
+     showgrid="false"
+     inkscape:zoom="1.5857388"
+     inkscape:cx="98.059987"
+     inkscape:cy="54.586379"
+     inkscape:window-x="75"
+     inkscape:window-y="34"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="Layer_1"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><g
+     id="g3"
+     transform="translate(-199.58001,-322.396)"><linearGradient
+       id="SVGID_1_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.7009"
+       y1="325.1676"
+       x2="297.7009"
+       y2="517.5647"><stop
+         offset="0"
+         style="stop-color:#FFFFFF;stop-opacity:0.7"
+         id="stop6" /><stop
+         offset="0.9987"
+         style="stop-color:#D8D9D8;stop-opacity:0.7"
+         id="stop8" /></linearGradient><path
+       style="fill:url(#SVGID_1_);fill-rule:evenodd"
+       d="m 210.25,519.623 c -5.608,0 -10.17,-4.562 -10.17,-10.171 V 333.066 c 0,-5.608 4.562,-10.17 10.17,-10.17 h 174.902 c 5.607,0 10.17,4.562 10.17,10.17 v 176.386 c 0,5.608 -4.562,10.171 -10.17,10.171 H 210.25 z"
+       id="path10"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d8d8d7"
+       d="m 385.152,323.396 c 5.332,0 9.67,4.338 9.67,9.67 v 176.387 c 0,5.332 -4.338,9.67 -9.67,9.67 H 210.25 c -5.332,0 -9.67,-4.338 -9.67,-9.67 V 333.066 c 0,-5.332 4.338,-9.67 9.67,-9.67 h 174.902 m 0,-1 H 210.25 c -5.893,0 -10.67,4.777 -10.67,10.67 v 176.387 c 0,5.893 4.777,10.67 10.67,10.67 h 174.903 c 5.893,0 10.67,-4.777 10.67,-10.67 V 333.066 c 0,-5.893 -4.778,-10.67 -10.671,-10.67 l 0,0 z"
+       id="path12"
+       inkscape:connector-curvature="0" /></g><g
+     id="g14"
+     transform="translate(-199.58001,-322.396)"><linearGradient
+       id="SVGID_2_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.23581"
+       y1="364.1608"
+       x2="297.23581"
+       y2="475.73239"><stop
+         offset="0.0049"
+         style="stop-color:#F48347"
+         id="stop17" /><stop
+         offset="1"
+         style="stop-color:#E4773B"
+         id="stop19" /></linearGradient><path
+       style="fill:url(#SVGID_2_);fill-rule:evenodd"
+       d="m 344.71,476.058 c -0.364,0 -0.589,-0.024 -0.603,-0.026 l -95.657,-0.003 c -3.342,0 -6.062,-2.719 -6.062,-6.062 V 369.656 c 0,-3.342 2.719,-6.062 6.062,-6.062 h 90.311 c 3.343,0 6.062,2.719 6.062,6.062 v 90.311 c 0,3.343 -2.719,6.062 -6.062,6.062 l -89.272,0.153 -0.402,5.875 0.537,-0.002 c 0.718,-0.002 71.989,-0.204 91.555,-0.204 4.732,0 7.132,-2.618 7.132,-7.782 0,-19.79 -0.299,-85.429 -0.329,-92.176 1.185,0.195 3.999,1.104 3.999,5.334 0,0.901 0.076,90.378 0.104,90.752 l -0.012,-0.107 c -0.002,7.388 -5.15,8.186 -7.363,8.186 z"
+       id="path21"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#cf6a38"
+       d="m 338.761,364.095 c 3.067,0 5.561,2.495 5.561,5.561 v 90.311 c 0,3.067 -2.495,5.561 -5.563,5.561 l -88.806,0.152 -0.932,0.002 -0.064,0.93 -0.333,4.874 -0.073,1.071 1.074,-0.003 c 0.718,-0.002 71.989,-0.204 91.553,-0.204 3.482,0 7.632,-1.437 7.632,-8.282 0,-19.292 -0.284,-82.148 -0.327,-91.557 1.203,0.355 2.997,1.434 2.997,4.715 0,0.879 0.062,85.883 0.11,90.645 h -0.018 c 0,2.311 -0.669,7.685 -6.862,7.685 -0.338,0 -0.544,-0.022 -0.544,-0.022 l 0,0 -0.058,-0.007 h -0.058 -95.6 c -3.067,0 -5.561,-2.495 -5.561,-5.561 v -100.31 c 0,-3.067 2.495,-5.561 5.561,-5.561 h 90.311 m 0,-1 H 248.45 c -3.624,0 -6.561,2.938 -6.561,6.561 v 100.311 c 0,3.624 2.938,6.561 6.561,6.561 h 95.6 c 0,0 0.248,0.029 0.66,0.029 2.001,0 7.862,-0.683 7.862,-8.685 -0.002,-0.008 -0.092,-84.82 -0.092,-90.645 0,-5.825 -5.002,-5.888 -5.002,-5.888 0,0 0.332,71.724 0.332,92.73 0,5.221 -2.548,7.282 -6.632,7.282 -19.792,0 -91.556,0.204 -91.556,0.204 l 0.333,-4.874 88.806,-0.152 c 3.624,0 6.561,-2.938 6.561,-6.561 v -90.311 c 0,-3.624 -2.937,-6.562 -6.561,-6.562 l 0,0 z"
+       id="path23"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:#b27b2e;fill-rule:evenodd"
+     d="m 147.89799,48.943 -2.156,-1.683 c 0,-3.624 -2.938,-6.561 -6.562,-6.561 l -90.309999,0 c -3.624,0 -6.561,2.938 -6.561,6.561 l 0,1.5 c 0,-3.624 2.938,-6.561 6.561,-6.561 l 90.309999,0 c 3.624,0 6.562,2.938 6.562,6.561 l 2.156,1.683"
+     id="path25"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="ccssscsscc" /><g
+     id="g27"
+     transform="translate(-199.58001,-322.396)"><path
+       style="fill:#e1dfe2;fill-rule:evenodd"
+       d="m 344.05,476.528 -95.6,0 c -3.624,0 -6.561,-2.938 -6.561,-6.562 l 0,1.663 c 0,3.624 2.938,6.255 6.561,6.255 l 95.6,0 c 0,0 8.521,1.299 8.521,-8.35 0.0282,-3.61847 0.67639,7.26515 -8.521,6.994 z"
+       id="path29"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="cscssccc" /></g><path
+     style="fill:#bf602e;fill-rule:evenodd"
+     d="m 126.68499,130.366 v -1.605 c 0,0 -16.147,-13.713 -24.628,-13.713 v -8.251 c 0,0 13.161,-2.772 13.161,-15.726 0,-8.241 3.257,-31.365 -20.096999,-31.365 -0.624,0 -0.624,0 -1.247,0 -23.354,0 -20.097,23.123 -20.097,31.365 0,12.675 13.161,15.726 13.161,15.726 v 8.251 c -8.332,0 -24.628,13.713 -24.628,13.713 v 1.605 h 64.374999 z"
+     id="path31"
+     inkscape:connector-curvature="0" /><g
+     id="g33"
+     transform="translate(-199.58001,-322.396)"><linearGradient
+       id="SVGID_3_"
+       gradientUnits="userSpaceOnUse"
+       x1="298.7244"
+       y1="371.77979"
+       x2="298.7244"
+       y2="472.5517"><stop
+         offset="0"
+         style="stop-color:#F9F3D9"
+         id="stop36" /><stop
+         offset="1"
+         style="stop-color:#EAE3CA"
+         id="stop38" /></linearGradient><path
+       style="fill:url(#SVGID_3_);fill-rule:evenodd"
+       d="m 250.188,466.931 88.572,-0.152 c 3.756,0 6.812,-3.056 6.812,-6.812 v -88.86 l 1.66,1.191 c 0.016,3.412 0.327,71.541 0.327,91.771 0,4.732 -2.088,7.032 -6.382,7.032 -18.957,0 -86.452,0.189 -91.289,0.203 l 0.3,-4.373 z"
+       id="path40"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#fffcf3"
+       d="m 345.822,371.593 1.161,0.833 c 0.039,8.466 0.327,72.223 0.327,91.643 0,4.563 -2.006,6.782 -6.132,6.782 -18.664,0 -84.381,0.183 -91.02,0.202 l 0.265,-3.873 88.339,-0.151 c 3.894,0 7.061,-3.168 7.061,-7.061 v -88.375 m -0.501,-0.974 v 89.348 c 0,3.624 -2.938,6.561 -6.561,6.561 l -88.806,0.152 -0.333,4.874 c 0,0 71.764,-0.204 91.556,-0.204 4.084,0 6.632,-2.061 6.632,-7.282 0,-19.678 -0.291,-83.869 -0.328,-91.9 l -2.16,-1.549 0,0 z"
+       id="path42"
+       inkscape:connector-curvature="0" /></g><g
+     id="g44"
+     transform="translate(-199.58001,-322.396)"><linearGradient
+       id="SVGID_4_"
+       gradientUnits="userSpaceOnUse"
+       x1="294.0769"
+       y1="380.8504"
+       x2="294.0769"
+       y2="450.2294"><stop
+         offset="0"
+         style="stop-color:#F9F3D9"
+         id="stop47" /><stop
+         offset="1"
+         style="stop-color:#EAE3CA"
+         id="stop49" /></linearGradient><path
+       style="fill:url(#SVGID_4_);fill-rule:evenodd"
+       d="m 262.494,450.906 c 2.504,-2.468 15.465,-14.817 24.024,-14.817 h 0.25 v -8.699 l -0.193,-0.045 c -0.13,-0.03 -12.968,-3.158 -12.968,-15.483 0,-0.8 -0.031,-1.741 -0.064,-2.787 -0.207,-6.352 -0.554,-16.984 5.473,-23.21 3.287,-3.396 8.145,-5.118 14.438,-5.118 h 1.247 c 6.293,0 11.152,1.722 14.439,5.118 6.026,6.226 5.68,16.858 5.473,23.21 -0.034,1.046 -0.064,1.986 -0.064,2.787 0,12.606 -12.833,15.455 -12.963,15.481 l -0.198,0.042 v 8.704 h 0.25 c 8.56,0 21.521,12.35 24.023,14.817 h -63.167 z"
+       id="path51"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#fffcf3"
+       d="m 294.701,380.997 c 6.223,0 11.02,1.696 14.259,5.042 5.953,6.15 5.609,16.716 5.403,23.028 -0.035,1.067 -0.065,1.988 -0.065,2.795 0,12.388 -12.243,15.126 -12.764,15.237 l -0.397,0.084 v 0.405 8.251 0.5 h 0.5 c 8.051,0 20.11,11.121 23.41,14.318 h -61.94 c 3.3,-3.197 15.36,-14.318 23.41,-14.318 h 0.5 v -0.5 -8.251 l 0,-0.397 -0.386,-0.09 c -0.522,-0.122 -12.774,-3.118 -12.774,-15.239 0,-0.806 -0.03,-1.728 -0.065,-2.795 -0.206,-6.313 -0.55,-16.878 5.403,-23.029 3.238,-3.345 8.036,-5.042 14.259,-5.042 h 1.247 m 0,-0.499 c -0.624,0 -0.624,0 -1.247,0 -23.354,0 -20.097,23.123 -20.097,31.365 0,12.675 13.161,15.726 13.161,15.726 v 8.251 c -9.677,0 -24.628,15.318 -24.628,15.318 h 64.376 c 0,0 -14.952,-15.318 -24.628,-15.318 v -8.251 c 0,0 13.161,-2.772 13.161,-15.726 -10e-4,-8.242 3.256,-31.365 -20.098,-31.365 l 0,0 z"
+       id="path53"
+       inkscape:connector-curvature="0" /></g></svg>
\ No newline at end of file
diff --git a/resources/images/DarkStyleDisabledArrowButton.png b/resources/images/DarkStyleDisabledArrowButton.png
new file mode 100644 (file)
index 0000000..7d7d271
Binary files /dev/null and b/resources/images/DarkStyleDisabledArrowButton.png differ
diff --git a/resources/images/DarkStyleGreenArrowButton.png b/resources/images/DarkStyleGreenArrowButton.png
new file mode 100755 (executable)
index 0000000..4149109
Binary files /dev/null and b/resources/images/DarkStyleGreenArrowButton.png differ
diff --git a/resources/images/DarkStyleGreyArrowButton.png b/resources/images/DarkStyleGreyArrowButton.png
new file mode 100755 (executable)
index 0000000..204f3ec
Binary files /dev/null and b/resources/images/DarkStyleGreyArrowButton.png differ
diff --git a/resources/images/Dino-Painted_lambert2SG_color.png b/resources/images/Dino-Painted_lambert2SG_color.png
new file mode 100644 (file)
index 0000000..3930181
Binary files /dev/null and b/resources/images/Dino-Painted_lambert2SG_color.png differ
diff --git a/resources/images/Dino-Painted_lambert2SG_gloss.png b/resources/images/Dino-Painted_lambert2SG_gloss.png
new file mode 100644 (file)
index 0000000..0e6c958
Binary files /dev/null and b/resources/images/Dino-Painted_lambert2SG_gloss.png differ
diff --git a/resources/images/Dino-Painted_lambert2SG_nmap.png b/resources/images/Dino-Painted_lambert2SG_nmap.png
new file mode 100644 (file)
index 0000000..c2d4bf4
Binary files /dev/null and b/resources/images/Dino-Painted_lambert2SG_nmap.png differ
diff --git a/resources/images/Dino2_lambert2SG_color.png b/resources/images/Dino2_lambert2SG_color.png
new file mode 100644 (file)
index 0000000..5ee5d2c
Binary files /dev/null and b/resources/images/Dino2_lambert2SG_color.png differ
diff --git a/resources/images/Dino2_lambert2SG_nmap.png b/resources/images/Dino2_lambert2SG_nmap.png
new file mode 100644 (file)
index 0000000..361603c
Binary files /dev/null and b/resources/images/Dino2_lambert2SG_nmap.png differ
diff --git a/resources/images/FontStyleButton_Background.png b/resources/images/FontStyleButton_Background.png
new file mode 100644 (file)
index 0000000..2bcd03e
Binary files /dev/null and b/resources/images/FontStyleButton_Background.png differ
diff --git a/resources/images/FontStyleButton_Colour.png b/resources/images/FontStyleButton_Colour.png
new file mode 100755 (executable)
index 0000000..f7f5afc
Binary files /dev/null and b/resources/images/FontStyleButton_Colour.png differ
diff --git a/resources/images/FontStyleButton_Main.png b/resources/images/FontStyleButton_Main.png
new file mode 100755 (executable)
index 0000000..b2b76c8
Binary files /dev/null and b/resources/images/FontStyleButton_Main.png differ
diff --git a/resources/images/FontStyleButton_OK_02.png b/resources/images/FontStyleButton_OK_02.png
new file mode 100755 (executable)
index 0000000..07f2dc7
Binary files /dev/null and b/resources/images/FontStyleButton_OK_02.png differ
diff --git a/resources/images/FontStyleButton_OK_03.png b/resources/images/FontStyleButton_OK_03.png
new file mode 100755 (executable)
index 0000000..d5255e1
Binary files /dev/null and b/resources/images/FontStyleButton_OK_03.png differ
diff --git a/resources/images/FontStyleButton_Outline.png b/resources/images/FontStyleButton_Outline.png
new file mode 100755 (executable)
index 0000000..7f1bfdf
Binary files /dev/null and b/resources/images/FontStyleButton_Outline.png differ
diff --git a/resources/images/FontStyleButton_Shadow.png b/resources/images/FontStyleButton_Shadow.png
new file mode 100755 (executable)
index 0000000..a1defbe
Binary files /dev/null and b/resources/images/FontStyleButton_Shadow.png differ
diff --git a/resources/images/Forward.png b/resources/images/Forward.png
new file mode 100755 (executable)
index 0000000..dc3b200
Binary files /dev/null and b/resources/images/Forward.png differ
diff --git a/resources/images/Kid1.svg b/resources/images/Kid1.svg
new file mode 100755 (executable)
index 0000000..b7d5476
--- /dev/null
@@ -0,0 +1,491 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 306.90988 416.79828"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="Kid1.svg"><metadata
+     id="metadata185"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs183" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="640"
+     inkscape:window-height="480"
+     id="namedview181"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="0.28032166"
+     inkscape:cx="152.20465"
+     inkscape:cy="184.87264"
+     inkscape:window-x="75"
+     inkscape:window-y="34"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="Layer_1" /><path
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 192.28065,343.14765 c 0,0 -4.5,75.5 37.5,71 42,-4.5 11.5,-75.5 11.5,-75.5 l -49,4.5 z"
+     id="path3"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 229.78065,414.14765 c 24.024,-2.574 24.325,-26.903 20.184,-47.259 l -56.117,5.805 c 3.172,20.614 12.003,44.018 35.933,41.454 z"
+     id="path5"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 113.60765,343.14765 c 0,0 -23.087995,69 14,73 37.088,4 48,-73 48,-73 h -62 z"
+     id="path7"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 169.15465,370.76265 -60.625,-7.118 c -3.745,20.685 -4.689,49.94 19.078,52.503 21.993,2.372 34.78,-23.738 41.547,-45.385 z"
+     id="path9"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 117.10565,371.73465 39.895,2.68 c 0,0 -7.065,27.803 -23.798,24.788 -16.733,-3.015 -16.097,-27.468 -16.097,-27.468 z"
+     id="path11"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 206.27865,381.65765 35.399,-5.164 c 0,0 2.531,26.234 -10.49,26.241 -18.543,0.011 -24.909,-21.077 -24.909,-21.077 z"
+     id="path13"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 121.49165,210.92765 c -24.560995,5.263 -52.631995,5.263 -52.631995,5.263 l 5.354,60.772 25.859995,-5.032 c 0,0 64.328,-18.197 62.574,-34.16 -2.104,-19.138 -16.595,-32.106 -41.156,-26.843 z"
+     id="path15"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 231.14065,228.64765 c -10.143,-34.251 -65.789,-51.053 -65.789,-51.053 0,0 -19.298,28.07 -43.86,33.333 -1.209,0.259 -2.428,0.502 -3.65,0.736 l -20.035995,60.709 2.267995,-0.441 -16.300995,80.54 184.714995,-4.731 c 0,10e-4 -25.566,-79.313 -37.347,-119.093 z"
+     id="path17"
+     inkscape:connector-curvature="0" /><line
+     style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="110.72466"
+     y1="311.29565"
+     x2="104.40065"
+     y2="352.30963"
+     id="line19" /><polygon
+     style="fill:#666666;stroke:#000000;stroke-miterlimit:10"
+     points="390.823,464.081 392.798,470.374 237.225,476.667 237.225,468.729 "
+     id="polygon21"
+     transform="translate(-145.43535,-189.01935)" /><linearGradient
+     id="SVGID_1_"
+     gradientUnits="userSpaceOnUse"
+     x1="317.35651"
+     y1="383.66669"
+     x2="317.35651"
+     y2="199.5519"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0"
+       style="stop-color:#402A04"
+       id="stop24" /><stop
+       offset="1"
+       style="stop-color:#7F5100"
+       id="stop26" /></linearGradient><path
+     style="fill:url(#SVGID_1_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="M 172.97165,196.01565 H 63.267655 c 0,0 -54.6040005,-192.1050008 109.704995,-188.5960008 164.309,3.5089998 106.414,188.5960008 106.414,188.5960008 h -106.415 z"
+     id="path28"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_2_"
+     gradientUnits="userSpaceOnUse"
+     x1="317.6879"
+     y1="298.16669"
+     x2="317.6879"
+     y2="399.66791"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0.0019"
+       style="stop-color:#FFCA94"
+       id="stop31" /><stop
+       offset="1"
+       style="stop-color:#E2A380"
+       id="stop33" /></linearGradient><path
+     style="fill:url(#SVGID_2_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 93.798655,65.647649 c 0,0 -48.605,145.281001 77.692995,145.281001 126.298,0 80.202,-145.281001 80.202,-145.281001 H 93.798655 z"
+     id="path35"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_3_"
+     gradientUnits="userSpaceOnUse"
+     x1="316.33801"
+     y1="383.66669"
+     x2="316.33801"
+     y2="199.5519"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0"
+       style="stop-color:#402A04"
+       id="stop38" /><stop
+       offset="1"
+       style="stop-color:#7F5100"
+       id="stop40" /></linearGradient><path
+     style="fill:url(#SVGID_3_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 108.82665,29.573649 c 0,0 -37.535995,22.859 -34.316995,82.359001 h 62.920995 c 0,0 7.255,-35.965001 7.255,-31.786001 0,4.179 3.509,31.786001 3.509,31.786001 h 48.246 V 87.833649 l 8.772,24.099001 h 62.281 c 0,0 0,-53.553001 -28.63,-82.359001 -28.072,0.877 -130.037,0 -130.037,0 z"
+     id="path42"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_4_"
+     gradientUnits="userSpaceOnUse"
+     x1="195.0862"
+     y1="372.3811"
+     x2="217.894"
+     y2="516.99213"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0"
+       style="stop-color:#006178"
+       id="stop45" /><stop
+       offset="1"
+       style="stop-color:#00495C"
+       id="stop47" /></linearGradient><path
+     style="fill:url(#SVGID_4_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 111.64765,331.69965 -70.387995,13.196 c -6.487,1.216 -12.79,-3.096 -14.006,-9.583 L 1.8536545,199.83065 c -1.21599995,-6.487 3.096,-12.79 9.5830005,-14.006 l 70.388,-13.196 c 6.487,-1.216 12.79,3.096 14.006,9.583 l 25.399995,135.482 c 1.217,6.487 -3.096,12.79 -9.583,14.006 z"
+     id="path49"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_5_"
+     gradientUnits="userSpaceOnUse"
+     x1="197.17931"
+     y1="393.6586"
+     x2="218.5313"
+     y2="505.75641"><stop
+       offset="0"
+       style="stop-color:#6BBBD0"
+       id="stop52" /><stop
+       offset="1"
+       style="stop-color:#ACCCD4"
+       id="stop54" /></linearGradient><polygon
+     style="fill:url(#SVGID_5_);stroke:#000000;stroke-miterlimit:10"
+     points="179.836,514.167 159.336,399.948 236.336,387.667 254.336,498.167 "
+     id="polygon56"
+     transform="translate(-145.43535,-189.01935)" /><linearGradient
+     id="SVGID_6_"
+     gradientUnits="userSpaceOnUse"
+     x1="207.9456"
+     y1="466.41"
+     x2="201.4173"
+     y2="399.4946"><stop
+       offset="0"
+       style="stop-color:#FBCA51"
+       id="stop59" /><stop
+       offset="1"
+       style="stop-color:#FFECBF"
+       id="stop61" /></linearGradient><ellipse
+     style="fill:url(#SVGID_6_);stroke:#000000;stroke-miterlimit:10"
+     cx="205.43201"
+     cy="440.64801"
+     rx="28.959"
+     ry="28.080999"
+     id="ellipse63"
+     sodipodi:cx="205.43201"
+     sodipodi:cy="440.64801"
+     sodipodi:rx="28.959"
+     sodipodi:ry="28.080999"
+     transform="translate(-145.43535,-189.01935)" /><linearGradient
+     id="SVGID_7_"
+     gradientUnits="userSpaceOnUse"
+     x1="190.9269"
+     y1="427.96649"
+     x2="192.52139"
+     y2="436.33749"><stop
+       offset="0"
+       style="stop-color:#6BBBD0"
+       id="stop66" /><stop
+       offset="1"
+       style="stop-color:#ACCCD4"
+       id="stop68" /></linearGradient><line
+     style="fill:url(#SVGID_7_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="44.983662"
+     y1="238.97565"
+     x2="47.595661"
+     y2="247.29865"
+     id="line70" /><linearGradient
+     id="SVGID_8_"
+     gradientUnits="userSpaceOnUse"
+     x1="211.39799"
+     y1="423.5397"
+     x2="213.01559"
+     y2="432.0325"><stop
+       offset="0"
+       style="stop-color:#6BBBD0"
+       id="stop73" /><stop
+       offset="1"
+       style="stop-color:#ACCCD4"
+       id="stop75" /></linearGradient><line
+     style="fill:url(#SVGID_8_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="66.200653"
+     y1="234.40564"
+     x2="67.343658"
+     y2="243.13666"
+     id="line77" /><path
+     style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 47.595655,260.51865 c 0,0 0.653,13.22 15.831,9.14 15.178,-4.08 11.229,-15.994 11.229,-15.994"
+     id="path79"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_9_"
+     gradientUnits="userSpaceOnUse"
+     x1="247.2587"
+     y1="416.16669"
+     x2="247.2587"
+     y2="464.19009"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0.0019"
+       style="stop-color:#FFCA94"
+       id="stop82" /><stop
+       offset="1"
+       style="stop-color:#E2A380"
+       id="stop84" /></linearGradient><path
+     style="fill:url(#SVGID_9_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 125.03565,225.81865 c 0,0 -54.844995,-4.046 -54.589995,5.391 0.255,9.437 21.359,3.668 20.849,8.259 -0.51,4.591 -10.173,3.424 -8.763,9.166 1.335,5.436 9.891,0.337 10.485,4.399 0.594,4.062 -7.944,4.738 -7.2,9.587 0.744,4.849 9.437,1.275 9.947,4.081 0.51,2.806 -5.959,4.099 -3.664,7.415 2.296,3.316 25.481995,4.532 36.820995,-0.784 11.531,-5.406 -3.885,-47.514 -3.885,-47.514 z"
+     id="path86"
+     inkscape:connector-curvature="0" /><path
+     style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 108.82665,147.75265 c 0,0 0.464,-21.64 21.464,-21.14 21,0.5 22,21.14 22,21.14"
+     id="path88"
+     inkscape:connector-curvature="0" /><path
+     style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 194.78965,147.75265 c 0,0 5.5,-23.64 25,-23.64 19.5,0 21.571,21 21.571,21"
+     id="path90"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="M 154.28965,177.59465"
+     id="path92"
+     inkscape:connector-curvature="0" /><path
+     style="fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 154.28965,177.59465 c 0,0 0.715,18.789 16.607,18.421 15.893,-0.368 12.893,-18.421 12.893,-18.421"
+     id="path94"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 228.94765,254.13365 c -2.38,6.629 -9.604,20.319 -44.933,26.513 -37.922,6.649 -56.122,-3.11 -56.122,-3.11 l -10.787,-59.329 c 0,0 37.312,5.696 53.792,4.439 16.48,-1.257 33.346,-5.764 33.346,-5.764 0,0 18.324,-4.366 23.904,8.074 5.579,12.439 3.538,21.552 0.8,29.177 z"
+     id="path96"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_10_"
+     gradientUnits="userSpaceOnUse"
+     x1="316.32571"
+     y1="383.66669"
+     x2="316.32571"
+     y2="199.5519"><stop
+       offset="0"
+       style="stop-color:#402A04"
+       id="stop99" /><stop
+       offset="1"
+       style="stop-color:#7F5100"
+       id="stop101" /></linearGradient><polygon
+     style="fill:url(#SVGID_10_)"
+     points="408.426,250.667 394.198,218.593 358.725,207.167 262.541,210.167 237.725,225.136 224.225,247.667 "
+     id="polygon103"
+     transform="translate(-145.43535,-189.01935)" /><polygon
+     style="fill:#c1272d;stroke:#000000;stroke-miterlimit:10"
+     points="399.167,290.713 428.616,269.855 394.694,225.136 365.225,225.136 354.191,247.667 404.225,254.667 "
+     id="polygon105"
+     transform="translate(-145.43535,-189.01935)" /><path
+     style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 245.96865,0.64764917 c -6.811,-2.50199997 -41.178,27.49999983 -36.678,36.49999983 4.5,9 39,21.5 39,21.5 l 13.209,-17.558 c -10e-4,0 -4.031,-36.2179998 -15.531,-40.44199983 z"
+     id="path107"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 272.19765,55.502649 -13.408,15.144 c 0,0 9,36.500001 17.5,35.500001 8.5,-1 32,-21.720001 30,-31.408001 -2,-9.688 -34.092,-19.236 -34.092,-19.236 z"
+     id="path109"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 243.78965,58.647649 c 0,0 13.418,-23.5 17.709,-22.5 4.291,1 15.093,16.043 15.791,19.356 0.698,3.313 -13,20.644 -18.5,19.144 -5.5,-1.5 -12.5,-10 -15,-16 z"
+     id="path111"
+     inkscape:connector-curvature="0" /><line
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="215.78966"
+     y1="36.11665"
+     x2="245.96864"
+     y2="54.967648"
+     id="line113" /><line
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="262.99066"
+     y1="73.483643"
+     x2="277.31567"
+     y2="96.647644"
+     id="line115" /><circle
+     style="opacity:0.2;fill:#d86d44"
+     cx="262.54099"
+     cy="357.16699"
+     r="19.249001"
+     id="circle117"
+     sodipodi:cx="262.54099"
+     sodipodi:cy="357.16699"
+     sodipodi:rx="19.249001"
+     sodipodi:ry="19.249001"
+     transform="translate(-145.43535,-189.01935)" /><circle
+     style="opacity:0.2;fill:#d86d44"
+     cx="372.72501"
+     cy="357.16699"
+     r="19.249001"
+     id="circle119"
+     sodipodi:cx="372.72501"
+     sodipodi:cy="357.16699"
+     sodipodi:rx="19.249001"
+     sodipodi:ry="19.249001"
+     transform="translate(-145.43535,-189.01935)" /><path
+     style="fill:#c1272d;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="M 231.14065,228.64765"
+     id="path121"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_11_"
+     gradientUnits="userSpaceOnUse"
+     x1="218.8582"
+     y1="511.4505"
+     x2="220.60651"
+     y2="520.62927"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0"
+       style="stop-color:#006178"
+       id="stop124" /><stop
+       offset="1"
+       style="stop-color:#00495C"
+       id="stop126" /></linearGradient><path
+     style="fill:url(#SVGID_11_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 61.249655,330.25265 c 0.7,3.23 4.623,2.704 4.623,2.704 0,0 14.196,-2.268 16.856,-2.704 2.66,-0.436 5.413,-2.183 4.802,-5.501 -0.611,-3.318 -2.578,-4.334 -4.977,-4.104 -2.143,0.206 -17.811,4.016 -17.811,4.016 0,0 -4.628,0.35 -3.493,5.589 z"
+     id="path128"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_12_"
+     gradientUnits="userSpaceOnUse"
+     x1="196.34351"
+     y1="377.0275"
+     x2="197.17529"
+     y2="381.39441"><stop
+       offset="0"
+       style="stop-color:#006178"
+       id="stop131" /><stop
+       offset="1"
+       style="stop-color:#00495C"
+       id="stop133" /></linearGradient><polygon
+     style="fill:url(#SVGID_12_);stroke:#000000;stroke-miterlimit:10"
+     points="186.437,382.911 186.437,379.506 206.978,374.966 207.302,379.506 "
+     id="polygon135"
+     transform="translate(-145.43535,-189.01935)" /><linearGradient
+     id="SVGID_13_"
+     gradientUnits="userSpaceOnUse"
+     x1="152.85809"
+     y1="432.1676"
+     x2="155.30721"
+     y2="445.02539"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0.0019"
+       style="stop-color:#FFCA94"
+       id="stop138" /><stop
+       offset="1"
+       style="stop-color:#E2A380"
+       id="stop140" /></linearGradient><path
+     style="fill:url(#SVGID_13_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 2.5626545,251.52265 c 0.949,7.344 13.9770005,5.843 12.4400005,-2.53 -1.537,-8.373 -13.8540005,-8.404 -12.4400005,2.53 z"
+     id="path142"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_14_"
+     gradientUnits="userSpaceOnUse"
+     x1="150.90849"
+     y1="418.1373"
+     x2="153.3576"
+     y2="430.99509"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0.0019"
+       style="stop-color:#FFCA94"
+       id="stop145" /><stop
+       offset="1"
+       style="stop-color:#E2A380"
+       id="stop147" /></linearGradient><path
+     style="fill:url(#SVGID_14_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 0.61265455,237.49265 c 0.94899995,7.344 13.97700045,5.843 12.44000045,-2.53 -1.537,-8.373 -13.85300045,-8.404 -12.44000045,2.53 z"
+     id="path149"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_15_"
+     gradientUnits="userSpaceOnUse"
+     x1="155.52521"
+     y1="446.19681"
+     x2="157.7338"
+     y2="457.79221"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0.0019"
+       style="stop-color:#FFCA94"
+       id="stop152" /><stop
+       offset="1"
+       style="stop-color:#E2A380"
+       id="stop154" /></linearGradient><path
+     style="fill:url(#SVGID_15_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 5.7066545,264.72965 c 0.856,6.623 12.6050005,5.269 11.2180005,-2.281 -1.387,-7.55 -12.4920005,-7.58 -11.2180005,2.281 z"
+     id="path156"
+     inkscape:connector-curvature="0" /><linearGradient
+     id="SVGID_16_"
+     gradientUnits="userSpaceOnUse"
+     x1="153.2876"
+     y1="459.8923"
+     x2="155.15581"
+     y2="469.70059"
+     gradientTransform="translate(-145.43535,-189.01935)"><stop
+       offset="0.0019"
+       style="stop-color:#FFCA94"
+       id="stop159" /><stop
+       offset="1"
+       style="stop-color:#E2A380"
+       id="stop161" /></linearGradient><path
+     style="fill:url(#SVGID_16_);stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     d="m 14.738655,269.81365 c 0,0 -14.45200045,0.644 -13.0900005,6.785 1.362,6.141 15.1240005,2.806 15.1240005,2.806 l -2.034,-9.591 z"
+     id="path163"
+     inkscape:connector-curvature="0" /><line
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="103.19666"
+     y1="134.52966"
+     x2="111.07164"
+     y2="138.28766"
+     id="line165" /><line
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="116.44066"
+     y1="121.91666"
+     x2="119.95366"
+     y2="128.63864"
+     id="line167" /><line
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="231.53465"
+     y1="117.39664"
+     x2="227.96065"
+     y2="125.27765"
+     id="line169" /><line
+     style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="249.61266"
+     y1="127.38266"
+     x2="237.84065"
+     y2="134.52966"
+     id="line171" /><line
+     style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="243.72664"
+     y1="311.64764"
+     x2="251.97566"
+     y2="348.16364"
+     id="line173" /><line
+     style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="184.01564"
+     y1="310.31366"
+     x2="184.01564"
+     y2="349.90466"
+     id="line175" /><line
+     style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="146.45665"
+     y1="311.64764"
+     x2="143.12267"
+     y2="350.95166"
+     id="line177" /><line
+     style="fill:#666666;stroke:#000000;stroke-width:1;stroke-miterlimit:10"
+     x1="218.07564"
+     y1="311.29565"
+     x2="222.05864"
+     y2="348.93066"
+     id="line179" /></svg>
diff --git a/resources/images/Logo-for-demo.png b/resources/images/Logo-for-demo.png
new file mode 100644 (file)
index 0000000..ab8c2a4
Binary files /dev/null and b/resources/images/Logo-for-demo.png differ
diff --git a/resources/images/Mail.svg b/resources/images/Mail.svg
new file mode 100755 (executable)
index 0000000..63fdd1f
--- /dev/null
@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 195.689 195.688"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="Mail.svg"><metadata
+     id="metadata68"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs66" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1508"
+     inkscape:window-height="982"
+     id="namedview64"
+     showgrid="false"
+     inkscape:zoom="8.970293"
+     inkscape:cx="97.257987"
+     inkscape:cy="98.235009"
+     inkscape:window-x="75"
+     inkscape:window-y="34"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="Layer_1"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><g
+     id="g3"
+     transform="translate(-200.38201,-323.492)"><linearGradient
+       id="SVGID_1_"
+       gradientUnits="userSpaceOnUse"
+       x1="298.22559"
+       y1="324.43469"
+       x2="298.22559"
+       y2="518.20068"><stop
+         offset="0"
+         style="stop-color:#FFFFFF;stop-opacity:0.7"
+         id="stop6" /><stop
+         offset="0.9987"
+         style="stop-color:#D8D9D8;stop-opacity:0.7"
+         id="stop8" /></linearGradient><path
+       style="fill:url(#SVGID_1_);fill-rule:evenodd"
+       d="m 210.005,518.68 c -5.031,0 -9.124,-4.093 -9.124,-9.123 v -176.44 c 0,-5.031 4.093,-9.124 9.124,-9.124 h 176.441 c 5.03,0 9.123,4.093 9.123,9.124 v 176.44 c 0,5.03 -4.093,9.123 -9.123,9.123 H 210.005 z"
+       id="path10"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d8d8d7"
+       d="m 386.446,324.492 c 4.755,0 8.624,3.868 8.624,8.624 v 176.441 c 0,4.755 -3.868,8.623 -8.624,8.623 h -176.44 c -4.755,0 -8.624,-3.868 -8.624,-8.623 V 333.116 c 0,-4.755 3.868,-8.624 8.624,-8.624 h 176.44 m 0,-1 h -176.44 c -5.315,0 -9.624,4.309 -9.624,9.624 v 176.441 c 0,5.315 4.309,9.623 9.624,9.623 h 176.441 c 5.315,0 9.624,-4.308 9.624,-9.623 V 333.116 c -0.001,-5.315 -4.31,-9.624 -9.625,-9.624 l 0,0 z"
+       id="path12"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="M 43.775991,58.85 H 148.48299 c 3.322,0 6.015,2.693 6.015,6.015 v 81.128 c 0,3.322 -2.693,6.015 -6.015,6.015 H 43.775991 c -3.322,0 -6.015,-2.693 -6.015,-6.015 V 64.865 c 0,-3.323 2.693,-6.015 6.015,-6.015 z"
+     id="path14"
+     inkscape:connector-curvature="0" /><g
+     id="g16"
+     transform="translate(-200.38201,-323.492)"><linearGradient
+       id="SVGID_2_"
+       gradientUnits="userSpaceOnUse"
+       x1="296.51169"
+       y1="381.51559"
+       x2="296.51169"
+       y2="474.0015"><stop
+         offset="0.0032"
+         style="stop-color:#E6C71E"
+         id="stop19" /><stop
+         offset="1"
+         style="stop-color:#E1BB23"
+         id="stop21" /></linearGradient><path
+       style="fill:url(#SVGID_2_);fill-rule:evenodd"
+       d="m 244.158,474.999 c -3.041,0 -5.515,-2.474 -5.515,-5.515 v -82.699 c 0,-3.041 2.474,-5.515 5.515,-5.515 h 104.707 c 3.041,0 5.515,2.474 5.515,5.515 v 82.699 c 0,3.041 -2.474,5.515 -5.515,5.515 H 244.158 z"
+       id="path23"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d6b429"
+       d="m 348.865,381.771 c 2.765,0 5.015,2.25 5.015,5.015 v 82.699 c 0,2.765 -2.25,5.015 -5.015,5.015 H 244.158 c -2.765,0 -5.015,-2.25 -5.015,-5.015 v -82.699 c 0,-2.765 2.25,-5.015 5.015,-5.015 h 104.707 m 0,-1 H 244.158 c -3.322,0 -6.015,2.693 -6.015,6.015 v 82.699 c 0,3.322 2.693,6.015 6.015,6.015 h 104.707 c 3.322,0 6.015,-2.693 6.015,-6.015 v -82.699 c 0,-3.322 -2.693,-6.015 -6.015,-6.015 l 0,0 z"
+       id="path25"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:#c9af2d;fill-rule:evenodd"
+     d="m 39.744991,60.112 -1.026,1.112 58.106,56.862 v -2.652 l -57.08,-55.322 z"
+     id="path27"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#9e8831;fill-rule:evenodd"
+     d="m 39.867991,60.294 0.589,-0.666 56.368,55.16 v 0.646 l -56.957,-55.14 z"
+     id="path29"
+     inkscape:connector-curvature="0" /><polygon
+     style="fill:#eecf32;fill-rule:evenodd"
+     points="239.625,471.413 240.152,471.976 296.94,421.926 296.94,420.907 "
+     id="polygon31"
+     transform="translate(-200.38201,-323.492)" /><path
+     style="fill:#c9af2d;fill-rule:evenodd"
+     d="m 97.159431,118.6434 56.403999,-56.915 -1.09844,-1.5594 -55.638999,55.265 0,2.652 z"
+     id="path33"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="cccccc" /><path
+     style="fill:#968330;fill-rule:evenodd"
+     d="m 96.824991,114.788 55.097999,-55.103 0.542,0.485 -55.638999,55.265 v -0.647 z"
+     id="path35"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#9e8831;fill-rule:evenodd"
+     d="m 148.48299,57.119 -104.706999,0 c -4.82917,1.06976 -6.015,3.82683 -6.015,7.746 0,-3.322 2.693,-6.015 6.015,-6.015 l 104.706999,0 c 3.322,0 6.015,2.693 6.015,6.015 l 0,-1.731 c 0,-3.322 -2.693,-6.015 -6.015,-6.015 z"
+     id="path37"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sccsscss" /><path
+     style="fill:#bba330;fill-rule:evenodd"
+     d="m 38.470991,146.961 c 0,0 0.246,0.5 0.772,0.959 l 57.316,-50.505 0.02,-1.375 -58.108,50.921 z"
+     id="path39"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#bba330;fill-rule:evenodd"
+     d="m 96.557991,95.891 v 1.524 l 55.750999,51.174 c 0.466,-0.33 0.768,-0.716 0.768,-0.716 L 96.557991,95.891 z"
+     id="path41"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#eecf32;fill-rule:evenodd"
+     d="M 152.30999,148.589 96.558991,97.415 v 0.761 l 55.114999,50.925 c 0.32,-0.151 0.213,-0.212 0.636,-0.512 z"
+     id="path43"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#ac9431;fill-rule:evenodd"
+     d="m 88.629991,88.999 c -3.192,1.17 -4.69,6.312 -6.235,7.829 -1.544,1.517 -4.703,1.544 -6.273,5.029 -1.57,3.485 1.75,4.183 1.675,7.319 -0.076,3.136 -2.91,3.923 -2.368,7.185 0.541,3.262 3.454,2.5 4.846,4.564 1.391,2.064 -0.81,5.496 2.281,6.831 3.091,1.335 5.185,-0.25 8.327,0.084 3.142,0.334 2.986,4.66 7.796,4.18 5.496999,-0.548 4.266999,-4.183 7.267999,-5.811 3.001,-1.628 6.925,1.166 8.397,-2.402 1.472,-3.568 -0.258,-5.944 0.469,-9.521 0.727,-3.577 4.949,-4.005 4.769,-7.767 -0.18,-3.762 -4.779,-6.555 -7.659,-7.681 -1.814,-0.709 -0.625,-7.017 -4.299,-8.084 -3.673,-1.067 -5.597,0.229 -10.023999,0.635 -4.428,0.407 -3.247,-4.488 -8.97,-2.39 z"
+     id="path45"
+     inkscape:connector-curvature="0" /><g
+     id="g47"
+     transform="translate(-200.38201,-323.492)"><linearGradient
+       id="SVGID_3_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.85461"
+       y1="413.6799"
+       x2="297.85461"
+       y2="452.90948"><stop
+         offset="0"
+         style="stop-color:#F9F3D9"
+         id="stop50" /><stop
+         offset="1"
+         style="stop-color:#EAE3CA"
+         id="stop52" /></linearGradient><path
+       style="fill:url(#SVGID_3_);fill-rule:evenodd"
+       d="m 298.342,453.3 c -2.136,0 -3.101,-1.126 -4.034,-2.215 -0.778,-0.908 -1.583,-1.848 -3.018,-2.001 -0.322,-0.034 -0.633,-0.049 -0.936,-0.049 -0.919,0 -1.754,0.136 -2.561,0.267 -0.764,0.124 -1.484,0.241 -2.238,0.241 -0.892,0 -1.693,-0.166 -2.52,-0.523 -1.686,-0.729 -1.654,-2.082 -1.617,-3.649 0.025,-1.077 0.051,-2.191 -0.556,-3.092 -0.607,-0.901 -1.469,-1.292 -2.303,-1.669 -1.183,-0.535 -2.205,-0.997 -2.503,-2.797 -0.275,-1.657 0.375,-2.643 1.063,-3.687 0.625,-0.949 1.272,-1.931 1.309,-3.452 0.034,-1.415 -0.597,-2.379 -1.154,-3.229 -0.744,-1.137 -1.387,-2.118 -0.542,-3.992 0.985,-2.186 2.632,-2.966 4.084,-3.653 0.806,-0.382 1.567,-0.742 2.136,-1.301 0.559,-0.549 1.086,-1.504 1.698,-2.61 1.089,-1.973 2.445,-4.427 4.448,-5.162 0.936,-0.343 1.715,-0.51 2.382,-0.51 1.299,0 1.967,0.656 2.675,1.35 0.759,0.745 1.619,1.589 3.318,1.589 0.167,0 0.344,-0.008 0.53,-0.025 1.51,-0.139 2.74,-0.381 3.824,-0.596 1.225,-0.242 2.282,-0.451 3.415,-0.451 0.894,0 1.749,0.127 2.693,0.402 2.02,0.587 2.468,2.9 2.862,4.941 0.291,1.5 0.542,2.794 1.414,3.136 2.703,1.057 7.325,3.818 7.5,7.46 0.092,1.901 -1.027,2.912 -2.212,3.982 -1.081,0.977 -2.199,1.986 -2.552,3.724 -0.326,1.603 -0.171,2.965 -0.021,4.281 0.189,1.669 0.369,3.246 -0.435,5.193 -0.609,1.478 -1.646,1.78 -3.018,1.78 -0.382,0 -0.779,-0.023 -1.184,-0.047 -0.431,-0.024 -0.869,-0.05 -1.309,-0.05 -1.16,0 -2.017,0.184 -2.774,0.595 -1.227,0.665 -1.782,1.648 -2.319,2.599 -0.832,1.471 -1.617,2.86 -4.854,3.183 -0.242,0.025 -0.472,0.037 -0.691,0.037 z"
+       id="path54"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#fffcf3"
+       d="m 291.481,410.466 c 1.197,0 1.8,0.593 2.499,1.279 0.793,0.778 1.692,1.661 3.493,1.661 0.175,0 0.359,-0.008 0.553,-0.026 1.523,-0.14 2.759,-0.384 3.849,-0.599 1.212,-0.239 2.258,-0.446 3.366,-0.446 0.869,0 1.703,0.125 2.623,0.392 1.873,0.544 2.306,2.778 2.688,4.749 0.305,1.572 0.568,2.93 1.568,3.321 2.647,1.035 7.173,3.725 7.341,7.24 0.085,1.784 -0.941,2.711 -2.13,3.785 -1.059,0.957 -2.26,2.041 -2.629,3.859 -0.334,1.642 -0.176,3.023 -0.024,4.36 0.186,1.636 0.362,3.181 -0.417,5.07 -0.558,1.354 -1.48,1.626 -2.787,1.626 -0.373,0 -0.76,-0.022 -1.17,-0.046 -0.43,-0.025 -0.874,-0.051 -1.323,-0.051 -1.204,0 -2.096,0.193 -2.893,0.625 -1.29,0.7 -1.863,1.714 -2.418,2.695 -0.833,1.474 -1.553,2.748 -4.661,3.058 -0.23,0.023 -0.455,0.035 -0.667,0.035 -2.022,0 -2.907,-1.033 -3.845,-2.128 -0.81,-0.946 -1.648,-1.923 -3.181,-2.087 -0.318,-0.034 -0.633,-0.05 -0.962,-0.05 -0.94,0 -1.784,0.137 -2.601,0.27 -0.753,0.122 -1.464,0.238 -2.198,0.238 -0.857,0 -1.626,-0.16 -2.421,-0.503 -1.457,-0.629 -1.507,-1.707 -1.466,-3.414 0.026,-1.116 0.053,-2.271 -0.598,-3.238 -0.647,-0.96 -1.582,-1.383 -2.408,-1.757 -1.164,-0.527 -2.083,-0.943 -2.359,-2.61 -0.259,-1.561 0.336,-2.463 1.025,-3.508 0.615,-0.933 1.312,-1.99 1.35,-3.584 0.036,-1.493 -0.618,-2.491 -1.195,-3.373 -0.733,-1.12 -1.312,-2.004 -0.524,-3.753 0.947,-2.102 2.48,-2.828 3.963,-3.53 0.826,-0.391 1.606,-0.76 2.205,-1.348 0.585,-0.575 1.121,-1.545 1.741,-2.668 1.069,-1.936 2.4,-4.346 4.315,-5.048 0.909,-0.334 1.66,-0.496 2.298,-0.496 m 0,-0.5 c -0.651,0 -1.451,0.152 -2.468,0.525 -3.192,1.17 -4.69,6.312 -6.235,7.829 -1.544,1.517 -4.703,1.544 -6.273,5.029 -1.57,3.485 1.75,4.183 1.675,7.319 -0.076,3.136 -2.91,3.923 -2.368,7.185 0.541,3.262 3.454,2.5 4.846,4.564 1.391,2.064 -0.81,5.496 2.281,6.831 0.947,0.409 1.801,0.544 2.619,0.544 1.587,0 3.044,-0.507 4.799,-0.507 0.294,0 0.597,0.014 0.91,0.048 2.977,0.317 2.994,4.217 7.079,4.217 0.226,0 0.465,-0.012 0.717,-0.037 5.497,-0.548 4.267,-4.183 7.268,-5.811 0.837,-0.454 1.747,-0.564 2.655,-0.564 0.853,0 1.704,0.097 2.493,0.097 1.382,0 2.574,-0.298 3.249,-1.935 1.472,-3.568 -0.258,-5.944 0.469,-9.521 0.727,-3.577 4.949,-4.005 4.769,-7.767 -0.18,-3.762 -4.779,-6.555 -7.659,-7.681 -1.814,-0.709 -0.625,-7.017 -4.299,-8.084 -1.027,-0.298 -1.917,-0.412 -2.763,-0.412 -2.181,0 -4.071,0.755 -7.261,1.047 -0.178,0.016 -0.347,0.024 -0.507,0.024 -3.128,0 -3.132,-2.939 -5.996,-2.94 l 0,0 z"
+       id="path56"
+       inkscape:connector-curvature="0" /></g><g
+     id="g58"
+     transform="translate(-200.38201,-323.492)"><path
+       style="fill:#2c2c2c"
+       d="m 295.754,427.07 c -0.707,0.492 -1.312,1.11 -1.816,1.854 -0.506,0.744 -0.9,1.554 -1.189,2.43 -0.287,0.876 -0.432,1.71 -0.432,2.502 0,1.008 0.289,1.842 0.863,2.502 0.576,0.66 1.32,0.99 2.232,0.99 0.793,0 1.523,-0.258 2.197,-0.774 0.67,-0.516 1.26,-1.163 1.764,-1.943 0.504,-0.78 0.9,-1.614 1.188,-2.502 0.288,-0.888 0.432,-1.704 0.432,-2.448 0,-0.433 -0.078,-0.852 -0.234,-1.26 -0.156,-0.408 -0.371,-0.762 -0.646,-1.062 -0.277,-0.3 -0.59,-0.546 -0.938,-0.738 -0.348,-0.191 -0.713,-0.288 -1.098,-0.288 -0.84,-0.001 -1.614,0.246 -2.323,0.737 z m 6.157,8.676 c -0.084,0.324 -0.125,0.618 -0.125,0.883 0,0.744 0.287,1.115 0.863,1.115 0.553,0 1.121,-0.252 1.711,-0.756 0.588,-0.504 1.121,-1.151 1.602,-1.943 0.479,-0.792 0.875,-1.68 1.188,-2.664 0.313,-0.984 0.469,-1.956 0.469,-2.916 0,-1.416 -0.271,-2.7 -0.811,-3.853 -0.541,-1.151 -1.266,-2.13 -2.178,-2.934 -0.912,-0.804 -1.951,-1.422 -3.115,-1.854 -1.164,-0.432 -2.381,-0.647 -3.652,-0.647 -1.537,0 -2.971,0.306 -4.303,0.918 -1.332,0.611 -2.49,1.446 -3.475,2.502 -0.984,1.057 -1.758,2.28 -2.322,3.672 -0.562,1.393 -0.846,2.88 -0.846,4.464 0,1.608 0.295,3.108 0.883,4.5 0.588,1.393 1.391,2.599 2.412,3.618 1.02,1.021 2.201,1.824 3.545,2.412 1.344,0.588 2.773,0.882 4.285,0.882 1.727,0 3.389,-0.396 4.986,-1.188 1.596,-0.792 2.908,-1.848 3.941,-3.168 h 2.268 c -0.576,1.009 -1.271,1.902 -2.088,2.683 -0.817,0.781 -1.709,1.439 -2.682,1.98 -0.973,0.54 -2.01,0.948 -3.115,1.225 -1.104,0.275 -2.23,0.414 -3.383,0.414 -1.896,0 -3.666,-0.349 -5.311,-1.044 -1.645,-0.696 -3.072,-1.65 -4.283,-2.862 -1.213,-1.212 -2.166,-2.64 -2.863,-4.284 -0.695,-1.644 -1.043,-3.426 -1.043,-5.346 0,-1.848 0.354,-3.582 1.062,-5.202 0.707,-1.62 1.668,-3.036 2.879,-4.248 1.213,-1.212 2.629,-2.166 4.248,-2.862 1.621,-0.695 3.342,-1.044 5.166,-1.044 1.656,0 3.229,0.276 4.717,0.828 1.488,0.553 2.789,1.314 3.906,2.286 1.115,0.972 1.998,2.137 2.645,3.492 0.648,1.355 0.973,2.85 0.973,4.481 0,1.561 -0.283,2.982 -0.846,4.267 -0.564,1.284 -1.266,2.382 -2.105,3.294 -0.842,0.912 -1.754,1.62 -2.736,2.124 -0.984,0.504 -1.896,0.756 -2.736,0.756 -0.625,0 -1.152,-0.192 -1.584,-0.576 -0.432,-0.384 -0.672,-0.972 -0.721,-1.764 h -0.107 c -0.553,0.624 -1.213,1.182 -1.98,1.674 -0.767,0.492 -1.596,0.738 -2.484,0.738 -0.768,0 -1.469,-0.15 -2.105,-0.45 -0.636,-0.3 -1.176,-0.702 -1.619,-1.206 -0.445,-0.504 -0.793,-1.104 -1.045,-1.8 -0.252,-0.696 -0.377,-1.44 -0.377,-2.232 0,-1.248 0.203,-2.484 0.611,-3.708 0.408,-1.224 0.979,-2.315 1.711,-3.276 0.73,-0.959 1.619,-1.739 2.662,-2.34 1.045,-0.6 2.203,-0.899 3.475,-0.899 0.84,0 1.621,0.222 2.34,0.666 0.721,0.444 1.283,1.206 1.693,2.286 l 0.826,-2.269 h 2.27 l -3.025,10.224 c -0.099,0.309 -0.188,0.628 -0.272,0.951 z"
+       id="path60"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="M 148.48299,149.755 H 43.775991 c -3.322,0 -6.015,-2.693 -6.015,-6.015 v 2.253 c 0,3.322 2.693,6.015 6.015,6.015 H 148.48299 c 3.322,0 6.015,-2.693 6.015,-6.015 v -2.253 c 0,3.322 -2.693,6.015 -6.015,6.015 z"
+     id="path62"
+     inkscape:connector-curvature="0" /></svg>
\ No newline at end of file
diff --git a/resources/images/Message.svg b/resources/images/Message.svg
new file mode 100755 (executable)
index 0000000..623ea41
--- /dev/null
@@ -0,0 +1,224 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 195.689 195.688"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="Message.svg"><metadata
+     id="metadata113"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs111" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1365"
+     inkscape:window-height="1008"
+     id="namedview109"
+     showgrid="false"
+     inkscape:zoom="6.342955"
+     inkscape:cx="93.708537"
+     inkscape:cy="72.329172"
+     inkscape:window-x="325"
+     inkscape:window-y="44"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="Layer_1"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><g
+     id="g3"
+     transform="translate(-199.56101,-322.811)"><linearGradient
+       id="SVGID_1_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.405"
+       y1="323.75299"
+       x2="297.405"
+       y2="517.51898"><stop
+         offset="0"
+         style="stop-color:#FFFFFF;stop-opacity:0.7"
+         id="stop6" /><stop
+         offset="0.9987"
+         style="stop-color:#D8D9D8;stop-opacity:0.7"
+         id="stop8" /></linearGradient><path
+       style="fill:url(#SVGID_1_);fill-rule:evenodd"
+       d="m 209.185,517.998 c -5.031,0 -9.124,-4.093 -9.124,-9.123 v -176.44 c 0,-5.031 4.093,-9.124 9.124,-9.124 h 176.44 c 5.031,0 9.124,4.093 9.124,9.124 v 176.44 c 0,5.03 -4.093,9.123 -9.124,9.123 h -176.44 z"
+       id="path10"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d8d8d7"
+       d="m 385.625,323.811 c 4.755,0 8.624,3.868 8.624,8.624 v 176.441 c 0,4.755 -3.868,8.623 -8.624,8.623 h -176.44 c -4.755,0 -8.624,-3.868 -8.624,-8.623 V 332.434 c 0,-4.755 3.868,-8.624 8.624,-8.624 h 176.44 m 0,-0.999 h -176.44 c -5.315,0 -9.624,4.309 -9.624,9.624 v 176.441 c 0,5.315 4.309,9.623 9.624,9.623 h 176.441 c 5.315,0 9.624,-4.309 9.624,-9.623 V 332.434 c -10e-4,-5.314 -4.31,-9.623 -9.625,-9.623 l 0,0 z"
+       id="path12"
+       inkscape:connector-curvature="0" /></g><g
+     id="g14"
+     transform="translate(-199.56101,-322.811)"><linearGradient
+       id="SVGID_2_"
+       gradientUnits="userSpaceOnUse"
+       x1="296.19089"
+       y1="369.73291"
+       x2="296.19089"
+       y2="474.21371"><stop
+         offset="0"
+         style="stop-color:#329AC8"
+         id="stop17" /><stop
+         offset="1"
+         style="stop-color:#2884BC"
+         id="stop19" /></linearGradient><path
+       style="fill:url(#SVGID_2_);fill-rule:evenodd"
+       d="m 307.517,451.043 -0.539,-0.029 h -62.729 c -5.151,0 -9.342,-4.19 -9.342,-9.342 v -62.597 c 0,-5.151 4.191,-9.342 9.342,-9.342 h 103.884 c 5.151,0 9.342,4.191 9.342,9.342 v 62.597 c 0,5.151 -4.19,9.342 -9.342,9.342 h -13.09 l -0.145,0.091 -27.908,25.471 0.527,-25.533 z"
+       id="path21"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#327eab"
+       d="m 348.133,370.233 c 4.876,0 8.842,3.967 8.842,8.842 v 62.597 c 0,4.875 -3.966,8.842 -8.842,8.842 h -12.938 l -0.407,0.007 -0.286,0.261 -26.987,24.637 0.491,-23.859 -10e-4,-0.44 -0.294,-0.299 -0.314,-0.308 h -0.42 -62.728 c -4.875,0 -8.842,-3.966 -8.842,-8.842 v -62.597 c 0,-4.875 3.966,-8.842 8.842,-8.842 h 103.884 m 0,-0.999 H 244.249 c -5.436,0 -9.842,4.406 -9.842,9.842 v 62.597 c 0,5.436 4.406,9.842 9.842,9.842 h 62.728 c 0.016,0 0.029,0.013 0.028,0.029 l -0.538,26.121 c 0,0.017 0.014,0.029 0.029,0.029 0.007,0 0.013,-0.002 0.019,-0.008 l 28.66,-26.165 c 0.005,-0.005 0.012,-0.007 0.019,-0.007 h 12.938 c 5.436,0 9.842,-4.406 9.842,-9.842 v -62.597 c 0.001,-5.435 -4.406,-9.841 -9.841,-9.841 l 0,0 z"
+       id="path23"
+       inkscape:connector-curvature="0" /></g><g
+     id="g25"
+     transform="translate(-199.56101,-322.811)"><g
+       id="g27"><polygon
+         style="fill:#266583;fill-rule:evenodd"
+         points="306.996,452.599 306.984,452.599 306.466,477.73 306.479,477.719 "
+         id="polygon29" /></g><g
+       id="g31"><path
+         style="fill:#266583;fill-rule:evenodd"
+         d="m 348.133,369.233 -103.884,0 c -5.436,0 -9.842,4.406 -9.842,9.842 l 0,0 c 0,0.035 0.051,0.038 0.054,0.003 0.527,-4.888 4.687,-8.404 9.749,-8.404 l 103.912,0 c 8.6778,-0.3713 9.36903,6.45678 9.842,11.47667 0.36195,-7.49834 0.68242,-13.28604 -9.831,-12.91767 z"
+         id="path33"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cscccsccc" /></g></g><g
+     id="g35"
+     transform="translate(-199.56101,-322.811)"><g
+       id="g37"><path
+         style="fill:#e1dfe2;fill-rule:evenodd"
+         d="m 348.161,451.514 -12.967,0 c -0.007,0 -0.014,0.003 -0.019,0.007 l -28.687,26.19 -0.021,1.024 28.709,-26.209 c 0.005,-0.005 0.012,-0.007 0.019,-0.007 l 12.938,0 c 6.67403,-0.41947 9.842,-5.49 9.842,-10.819 0,5.42 -4.394,9.814 -9.814,9.814 z"
+         id="path39"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="ssccccsccs" /></g><g
+       id="g41"><path
+         style="fill:#e1dfe2;fill-rule:evenodd"
+         d="M 307.006,451.514 H 244.22 c -5.42,0 -9.813,-4.394 -9.813,-9.813 v 0.977 c 0,5.436 4.406,9.842 9.842,9.842 h 62.737 l 0.02,-1.006 z"
+         id="path43"
+         inkscape:connector-curvature="0" /></g></g><g
+     id="g45"
+     transform="translate(-199.56101,-322.811)"><g
+       id="g47"><path
+         style="fill:#2f7496"
+         d="m 263.841,407.883 c 0.411,-1.172 1.001,-2.194 1.771,-3.066 0.77,-0.873 1.715,-1.558 2.836,-2.054 1.121,-0.496 2.383,-0.744 3.786,-0.744 1.42,0 2.686,0.248 3.799,0.744 1.112,0.496 2.053,1.181 2.823,2.054 0.77,0.872 1.36,1.895 1.771,3.066 0.411,1.173 0.616,2.443 0.616,3.812 0,1.334 -0.206,2.579 -0.616,3.734 -0.41,1.155 -1.001,2.16 -1.771,3.016 -0.77,0.856 -1.711,1.527 -2.823,2.015 -1.113,0.488 -2.379,0.732 -3.799,0.732 -1.403,0 -2.666,-0.244 -3.786,-0.732 -1.121,-0.487 -2.066,-1.158 -2.836,-2.015 -0.77,-0.855 -1.36,-1.86 -1.771,-3.016 -0.411,-1.156 -0.616,-2.4 -0.616,-3.734 0,-1.369 0.206,-2.639 0.616,-3.812 z m 3.684,6.057 c 0.18,0.728 0.466,1.383 0.86,1.964 0.393,0.582 0.907,1.049 1.54,1.399 0.633,0.351 1.403,0.525 2.31,0.525 0.907,0 1.677,-0.175 2.31,-0.525 0.633,-0.351 1.146,-0.817 1.54,-1.399 0.393,-0.581 0.68,-1.236 0.86,-1.964 0.18,-0.727 0.27,-1.476 0.27,-2.245 0,-0.805 -0.09,-1.583 -0.27,-2.336 -0.18,-0.753 -0.467,-1.425 -0.86,-2.015 -0.394,-0.591 -0.907,-1.062 -1.54,-1.412 -0.633,-0.351 -1.403,-0.526 -2.31,-0.526 -0.907,0 -1.677,0.176 -2.31,0.526 -0.633,0.351 -1.147,0.821 -1.54,1.412 -0.394,0.59 -0.68,1.262 -0.86,2.015 -0.18,0.753 -0.27,1.531 -0.27,2.336 0,0.77 0.09,1.519 0.27,2.245 z"
+         id="path49"
+         inkscape:connector-curvature="0" /></g><g
+       id="g51"><path
+         style="fill:#2f7496"
+         d="m 289.642,402.455 c 0.012,0 0.023,0.008 0.027,0.019 l 4.28,12.583 H 294 l 4.049,-12.583 c 0.004,-0.012 0.015,-0.02 0.027,-0.02 h 5.623 c 0.016,0 0.028,0.013 0.028,0.028 v 18.269 c 0,0.016 -0.013,0.028 -0.028,0.028 h -3.716 c -0.016,0 -0.028,-0.013 -0.028,-0.028 v -12.96 h -0.051 l -4.485,12.969 c -0.004,0.011 -0.015,0.019 -0.027,0.019 h -3.065 c -0.012,0 -0.023,-0.008 -0.027,-0.019 l -4.485,-12.84 h -0.051 v 12.831 c 0,0.016 -0.013,0.028 -0.028,0.028 h -3.717 c -0.016,0 -0.028,-0.013 -0.028,-0.028 v -18.269 c 0,-0.016 0.013,-0.028 0.028,-0.028 h 5.623 z"
+         id="path53"
+         inkscape:connector-curvature="0" /></g><g
+       id="g55"><path
+         style="fill:#2f7496"
+         d="m 318.128,420.64 c -0.873,0.368 -1.754,0.553 -2.644,0.553 -1.403,0 -2.666,-0.244 -3.786,-0.732 -1.121,-0.487 -2.066,-1.158 -2.836,-2.015 -0.77,-0.855 -1.36,-1.86 -1.771,-3.016 -0.411,-1.156 -0.616,-2.4 -0.616,-3.734 0,-1.369 0.205,-2.64 0.616,-3.812 0.411,-1.172 1.001,-2.194 1.771,-3.066 0.77,-0.873 1.715,-1.558 2.836,-2.054 1.121,-0.496 2.383,-0.744 3.786,-0.744 0.941,0 1.852,0.141 2.733,0.423 0.881,0.282 1.677,0.698 2.387,1.245 0.71,0.548 1.296,1.224 1.758,2.028 0.457,0.795 0.738,1.709 0.843,2.738 0.002,0.017 -0.012,0.033 -0.029,0.033 h -3.796 c -0.013,0 -0.024,-0.009 -0.027,-0.022 -0.241,-1.016 -0.701,-1.779 -1.381,-2.288 -0.685,-0.514 -1.515,-0.771 -2.49,-0.771 -0.907,0 -1.677,0.176 -2.31,0.526 -0.633,0.351 -1.147,0.821 -1.54,1.412 -0.394,0.59 -0.68,1.262 -0.86,2.015 -0.18,0.753 -0.27,1.531 -0.27,2.336 0,0.77 0.09,1.519 0.27,2.245 0.18,0.728 0.466,1.383 0.86,1.964 0.393,0.582 0.907,1.049 1.54,1.399 0.633,0.351 1.403,0.525 2.31,0.525 1.334,0 2.365,-0.337 3.093,-1.014 0.721,-0.67 1.143,-1.638 1.267,-2.905 0.002,-0.017 -0.012,-0.034 -0.029,-0.034 h -3.995 c -0.016,0 -0.028,-0.013 -0.028,-0.028 v -2.946 c 0,-0.016 0.013,-0.028 0.028,-0.028 h 7.644 c 0.016,0 0.028,0.013 0.028,0.028 v 9.85 c 0,0.016 -0.013,0.028 -0.028,0.028 h -2.515 c -0.014,0 -0.025,-0.01 -0.028,-0.023 l -0.406,-2.056 c -0.716,0.926 -1.512,1.572 -2.385,1.94 z"
+         id="path57"
+         inkscape:connector-curvature="0" /></g><g
+       id="g59"><path
+         style="fill:#2f7496"
+         d="m 330.577,416.857 v 3.896 c 0,0.016 -0.013,0.028 -0.028,0.028 h -3.973 c -0.016,0 -0.028,-0.013 -0.028,-0.028 v -3.896 c 0,-0.016 0.013,-0.028 0.028,-0.028 h 3.973 c 0.015,-0.001 0.028,0.012 0.028,0.028 z m -1.155,-1.569 h -1.773 c -0.014,0 -0.026,-0.011 -0.028,-0.025 l -0.972,-7.879 c 0,-0.001 0,-0.002 0,-0.004 v -4.898 c 0,-0.016 0.013,-0.028 0.028,-0.028 h 3.742 c 0.016,0 0.028,0.013 0.028,0.028 v 4.897 c 0,10e-4 0,0.002 0,0.004 l -0.998,7.879 c 0,0.015 -0.013,0.026 -0.027,0.026 z"
+         id="path61"
+         inkscape:connector-curvature="0" /></g></g><g
+     id="g63"
+     transform="translate(-199.56101,-322.811)"><g
+       id="g65"><linearGradient
+         id="SVGID_3_"
+         gradientUnits="userSpaceOnUse"
+         x1="272.23489"
+         y1="401.85071"
+         x2="272.23489"
+         y2="419.34131"><stop
+           offset="0"
+           style="stop-color:#E2EEF4"
+           id="stop68" /><stop
+           offset="1"
+           style="stop-color:#CDE5F3"
+           id="stop70" /></linearGradient><path
+         style="fill:url(#SVGID_3_)"
+         d="m 272.235,419.826 c -1.362,0 -2.603,-0.239 -3.686,-0.711 -1.084,-0.471 -2.009,-1.128 -2.75,-1.953 -0.745,-0.828 -1.324,-1.814 -1.722,-2.932 -0.399,-1.123 -0.601,-2.351 -0.601,-3.651 0,-1.334 0.203,-2.589 0.602,-3.73 0.398,-1.136 0.978,-2.14 1.723,-2.983 0.743,-0.842 1.668,-1.512 2.75,-1.991 1.083,-0.479 2.323,-0.723 3.685,-0.723 1.378,0 2.622,0.243 3.697,0.723 1.074,0.479 1.995,1.149 2.737,1.991 0.745,0.843 1.324,1.847 1.723,2.983 0.399,1.141 0.602,2.396 0.602,3.73 0,1.299 -0.203,2.527 -0.602,3.651 -0.398,1.118 -0.977,2.104 -1.722,2.932 -0.741,0.825 -1.662,1.482 -2.738,1.953 -1.076,0.471 -2.32,0.711 -3.698,0.711 z m 0,-15.786 c -0.945,0 -1.763,0.188 -2.431,0.558 -0.666,0.369 -1.214,0.871 -1.627,1.492 -0.408,0.61 -0.709,1.315 -0.895,2.095 -0.184,0.769 -0.276,1.574 -0.276,2.394 0,0.787 0.093,1.562 0.277,2.305 0.187,0.755 0.488,1.443 0.896,2.044 0.414,0.612 0.96,1.11 1.626,1.478 0.667,0.369 1.485,0.557 2.431,0.557 0.946,0 1.764,-0.188 2.431,-0.557 0.664,-0.368 1.211,-0.865 1.626,-1.478 0.408,-0.604 0.709,-1.292 0.896,-2.044 0.184,-0.743 0.277,-1.519 0.277,-2.305 0,-0.82 -0.093,-1.625 -0.276,-2.394 -0.186,-0.777 -0.487,-1.482 -0.895,-2.095 -0.415,-0.622 -0.962,-1.124 -1.627,-1.492 -0.67,-0.371 -1.488,-0.558 -2.433,-0.558 z"
+         id="path72"
+         inkscape:connector-curvature="0" /><path
+         style="fill:#f5fbfd"
+         d="m 272.235,401.402 c 1.343,0 2.552,0.236 3.595,0.701 1.041,0.465 1.934,1.113 2.652,1.928 0.723,0.819 1.286,1.795 1.674,2.901 0.39,1.115 0.588,2.342 0.588,3.647 0,1.27 -0.198,2.47 -0.587,3.567 -0.387,1.087 -0.949,2.046 -1.672,2.849 -0.717,0.798 -1.61,1.434 -2.652,1.891 -1.044,0.458 -2.254,0.69 -3.598,0.69 -1.328,0 -2.534,-0.232 -3.587,-0.691 -1.05,-0.457 -1.947,-1.093 -2.664,-1.891 -0.723,-0.803 -1.285,-1.761 -1.672,-2.849 -0.389,-1.096 -0.587,-2.296 -0.587,-3.567 0,-1.306 0.198,-2.534 0.588,-3.647 0.387,-1.106 0.951,-2.082 1.674,-2.901 0.718,-0.815 1.615,-1.463 2.664,-1.927 1.051,-0.465 2.257,-0.701 3.584,-0.701 m 0,15.811 c 0.989,0 1.848,-0.198 2.552,-0.588 0.699,-0.387 1.275,-0.911 1.712,-1.557 0.425,-0.628 0.738,-1.343 0.931,-2.124 0.189,-0.762 0.284,-1.558 0.284,-2.365 0,-0.84 -0.095,-1.665 -0.283,-2.452 -0.192,-0.806 -0.505,-1.538 -0.93,-2.176 -0.437,-0.655 -1.014,-1.184 -1.714,-1.572 -0.706,-0.391 -1.565,-0.589 -2.552,-0.589 -0.988,0 -1.847,0.198 -2.552,0.589 -0.702,0.388 -1.278,0.917 -1.714,1.572 -0.424,0.635 -0.737,1.367 -0.93,2.176 -0.188,0.787 -0.283,1.612 -0.283,2.452 0,0.807 0.096,1.603 0.284,2.365 0.194,0.784 0.507,1.499 0.931,2.124 0.436,0.646 1.012,1.169 1.712,1.557 0.704,0.39 1.562,0.588 2.552,0.588 m 0,-16.311 c -1.403,0 -2.666,0.248 -3.786,0.744 -1.121,0.496 -2.066,1.181 -2.836,2.054 -0.77,0.872 -1.36,1.895 -1.771,3.066 -0.411,1.173 -0.616,2.443 -0.616,3.812 0,1.334 0.205,2.579 0.616,3.734 0.411,1.155 1.001,2.16 1.771,3.016 0.77,0.856 1.715,1.527 2.836,2.015 1.121,0.488 2.383,0.732 3.786,0.732 1.42,0 2.686,-0.244 3.799,-0.732 1.112,-0.487 2.053,-1.158 2.823,-2.015 0.77,-0.855 1.36,-1.86 1.771,-3.016 0.411,-1.156 0.616,-2.4 0.616,-3.734 0,-1.369 -0.206,-2.64 -0.616,-3.812 -0.411,-1.172 -1.001,-2.194 -1.771,-3.066 -0.77,-0.873 -1.711,-1.558 -2.823,-2.054 -1.113,-0.496 -2.379,-0.744 -3.799,-0.744 l 0,0 z m 0,15.811 c -0.907,0 -1.677,-0.175 -2.31,-0.525 -0.633,-0.351 -1.147,-0.817 -1.54,-1.399 -0.394,-0.581 -0.68,-1.236 -0.86,-1.964 -0.18,-0.727 -0.27,-1.476 -0.27,-2.245 0,-0.805 0.09,-1.583 0.27,-2.336 0.18,-0.753 0.466,-1.425 0.86,-2.015 0.393,-0.591 0.907,-1.062 1.54,-1.412 0.633,-0.351 1.403,-0.526 2.31,-0.526 0.907,0 1.677,0.176 2.31,0.526 0.633,0.351 1.146,0.821 1.54,1.412 0.393,0.59 0.68,1.262 0.86,2.015 0.18,0.753 0.27,1.531 0.27,2.336 0,0.77 -0.09,1.519 -0.27,2.245 -0.18,0.728 -0.467,1.383 -0.86,1.964 -0.394,0.582 -0.907,1.049 -1.54,1.399 -0.633,0.35 -1.403,0.525 -2.31,0.525 l 0,0 z"
+         id="path74"
+         inkscape:connector-curvature="0" /></g><g
+       id="g76"><linearGradient
+         id="SVGID_4_"
+         gradientUnits="userSpaceOnUse"
+         x1="293.85941"
+         y1="401.86169"
+         x2="293.85941"
+         y2="419.33069"><stop
+           offset="0"
+           style="stop-color:#E2EEF4"
+           id="stop79" /><stop
+           offset="1"
+           style="stop-color:#CDE5F3"
+           id="stop81" /></linearGradient><polygon
+         style="fill:url(#SVGID_4_)"
+         points="299.668,406.595 295.234,419.415 292.484,419.415 287.993,406.555 287.565,406.555 287.514,406.805 287.514,419.415 284.24,419.415 284.24,401.588 289.483,401.588 293.77,414.191 294.131,414.191 294.238,414.018 298.238,401.588 303.479,401.588 303.479,419.415 300.205,419.415 300.205,406.426 299.777,406.426 "
+         id="polygon83" /><path
+         style="fill:#f5fbfd"
+         d="m 303.228,401.839 v 17.326 h -2.773 v -12.488 -0.5 h -0.5 -0.051 -0.356 l -0.116,0.337 -4.375,12.652 h -2.395 l -4.375,-12.524 -0.117,-0.335 h -0.355 -0.051 -0.5 v 0.5 12.359 h -2.773 V 401.84 h 4.814 l 4.171,12.264 0.115,0.339 h 0.358 0.051 0.364 l 0.112,-0.347 3.944,-12.256 h 4.808 m 0.472,-0.501 h -5.623 c -0.012,0 -0.023,0.008 -0.027,0.02 L 294,413.941 h -0.051 l -4.28,-12.583 c -0.004,-0.012 -0.015,-0.019 -0.027,-0.019 h -5.624 c -0.016,0 -0.028,0.013 -0.028,0.028 v 18.269 c 0,0.016 0.013,0.028 0.028,0.028 h 3.717 c 0.016,0 0.028,-0.013 0.028,-0.028 v -12.831 h 0.051 l 4.485,12.84 c 0.004,0.011 0.015,0.019 0.027,0.019 h 3.065 c 0.012,0 0.023,-0.008 0.027,-0.019 l 4.485,-12.969 h 0.051 v 12.96 c 0,0.016 0.013,0.028 0.028,0.028 h 3.716 c 0.016,0 0.028,-0.013 0.028,-0.028 v -18.269 c 0.002,-0.016 -0.01,-0.028 -0.026,-0.028 l 0,0 z"
+         id="path85"
+         inkscape:connector-curvature="0" /></g><g
+       id="g87"><linearGradient
+         id="SVGID_5_"
+         gradientUnits="userSpaceOnUse"
+         x1="314.98441"
+         y1="401.85071"
+         x2="314.98441"
+         y2="419.34131"><stop
+           offset="0"
+           style="stop-color:#E2EEF4"
+           id="stop90" /><stop
+           offset="1"
+           style="stop-color:#CDE5F3"
+           id="stop92" /></linearGradient><path
+         style="fill:url(#SVGID_5_)"
+         d="m 315.484,419.826 c -1.362,0 -2.603,-0.239 -3.687,-0.711 -1.084,-0.471 -2.009,-1.128 -2.75,-1.953 -0.744,-0.826 -1.323,-1.813 -1.722,-2.933 -0.398,-1.123 -0.601,-2.351 -0.601,-3.65 0,-1.334 0.202,-2.589 0.602,-3.73 0.398,-1.137 0.979,-2.141 1.723,-2.983 0.742,-0.842 1.667,-1.512 2.75,-1.991 1.083,-0.479 2.323,-0.723 3.685,-0.723 0.912,0 1.806,0.138 2.657,0.411 0.847,0.271 1.624,0.676 2.312,1.205 0.681,0.525 1.25,1.183 1.693,1.955 0.401,0.698 0.664,1.503 0.783,2.397 h -3.374 c -0.265,-0.985 -0.746,-1.746 -1.431,-2.26 -0.726,-0.544 -1.614,-0.82 -2.641,-0.82 -0.945,0 -1.763,0.188 -2.431,0.558 -0.667,0.369 -1.214,0.871 -1.627,1.493 -0.408,0.609 -0.709,1.314 -0.896,2.095 -0.184,0.769 -0.276,1.574 -0.276,2.394 0,0.787 0.093,1.562 0.276,2.305 0.188,0.755 0.488,1.443 0.896,2.044 0.413,0.612 0.96,1.109 1.626,1.478 0.667,0.369 1.484,0.557 2.431,0.557 1.395,0 2.492,-0.364 3.263,-1.081 0.764,-0.71 1.217,-1.741 1.347,-3.063 l 0.011,-0.109 -0.081,-0.106 -0.074,-0.083 -0.134,-0.01 h -3.773 v -2.503 h 7.201 v 9.407 h -2.111 l -0.477,-2.416 -0.336,0.433 c -0.689,0.886 -1.459,1.512 -2.287,1.86 -0.839,0.353 -1.695,0.533 -2.547,0.533 z"
+         id="path94"
+         inkscape:connector-curvature="0" /><path
+         style="fill:#f5fbfd"
+         d="m 315.485,401.402 c 0.886,0 1.754,0.134 2.581,0.399 0.819,0.262 1.571,0.654 2.234,1.165 0.655,0.505 1.203,1.138 1.63,1.882 0.342,0.596 0.58,1.274 0.709,2.022 h -2.895 c -0.289,-0.953 -0.782,-1.695 -1.469,-2.21 -0.77,-0.578 -1.708,-0.871 -2.79,-0.871 -0.988,0 -1.847,0.198 -2.552,0.589 -0.702,0.388 -1.278,0.917 -1.714,1.572 -0.424,0.635 -0.737,1.367 -0.93,2.176 -0.188,0.787 -0.283,1.612 -0.283,2.452 0,0.807 0.096,1.603 0.284,2.365 0.194,0.784 0.507,1.499 0.931,2.124 0.436,0.646 1.012,1.169 1.712,1.557 0.704,0.39 1.563,0.588 2.552,0.588 1.46,0 2.615,-0.386 3.433,-1.147 0.809,-0.752 1.288,-1.836 1.425,-3.223 l 0.013,-0.244 -0.149,-0.164 -0.17,-0.174 h -0.221 -3.523 v -2.003 h 6.701 v 8.907 h -1.656 l -0.331,-1.676 -0.212,-1.075 -0.673,0.865 c -0.663,0.852 -1.398,1.452 -2.187,1.784 -0.807,0.341 -1.631,0.513 -2.449,0.513 -1.328,0 -2.534,-0.232 -3.587,-0.691 -1.05,-0.457 -1.947,-1.093 -2.664,-1.891 -0.723,-0.803 -1.285,-1.761 -1.672,-2.849 -0.389,-1.096 -0.587,-2.296 -0.587,-3.567 0,-1.306 0.198,-2.534 0.588,-3.647 0.387,-1.106 0.951,-2.082 1.674,-2.901 0.718,-0.815 1.615,-1.463 2.664,-1.927 1.05,-0.464 2.256,-0.7 3.583,-0.7 m 0,-0.5 c -1.403,0 -2.666,0.248 -3.786,0.744 -1.121,0.496 -2.066,1.181 -2.836,2.054 -0.77,0.872 -1.36,1.895 -1.771,3.066 -0.411,1.173 -0.616,2.443 -0.616,3.812 0,1.334 0.205,2.579 0.616,3.734 0.411,1.155 1.001,2.16 1.771,3.016 0.77,0.856 1.715,1.527 2.836,2.015 1.121,0.488 2.383,0.732 3.786,0.732 0.889,0 1.771,-0.185 2.644,-0.553 0.873,-0.367 1.668,-1.014 2.387,-1.938 l 0.406,2.056 c 0.003,0.013 0.014,0.023 0.028,0.023 h 2.515 c 0.016,0 0.028,-0.013 0.028,-0.028 v -9.85 c 0,-0.016 -0.013,-0.028 -0.028,-0.028 h -7.644 c -0.016,0 -0.028,0.013 -0.028,0.028 v 2.946 c 0,0.016 0.013,0.028 0.028,0.028 h 3.995 c 0.017,0 0.031,0.016 0.029,0.034 -0.124,1.267 -0.547,2.235 -1.267,2.905 -0.728,0.677 -1.758,1.014 -3.093,1.014 -0.907,0 -1.677,-0.175 -2.31,-0.525 -0.633,-0.351 -1.147,-0.817 -1.54,-1.399 -0.394,-0.581 -0.68,-1.236 -0.86,-1.964 -0.18,-0.727 -0.27,-1.476 -0.27,-2.245 0,-0.805 0.09,-1.583 0.27,-2.336 0.18,-0.753 0.466,-1.425 0.86,-2.015 0.393,-0.591 0.907,-1.062 1.54,-1.412 0.633,-0.351 1.403,-0.526 2.31,-0.526 0.975,0 1.805,0.257 2.49,0.771 0.679,0.509 1.139,1.272 1.381,2.288 0.003,0.012 0.014,0.022 0.027,0.022 h 3.796 c 0.017,0 0.031,-0.016 0.029,-0.033 -0.105,-1.029 -0.386,-1.943 -0.843,-2.738 -0.462,-0.805 -1.048,-1.48 -1.758,-2.028 -0.71,-0.547 -1.506,-0.963 -2.387,-1.245 -0.881,-0.282 -1.794,-0.425 -2.735,-0.425 l 0,0 z"
+         id="path96"
+         inkscape:connector-curvature="0" /></g><g
+       id="g98"><linearGradient
+         id="SVGID_6_"
+         gradientUnits="userSpaceOnUse"
+         x1="328.56149"
+         y1="401.86169"
+         x2="328.56149"
+         y2="419.33069"><stop
+           offset="0"
+           style="stop-color:#E2EEF4"
+           id="stop101" /><stop
+           offset="1"
+           style="stop-color:#CDE5F3"
+           id="stop103" /></linearGradient><path
+         style="fill:url(#SVGID_6_)"
+         d="m 326.797,419.415 v -3.453 h 3.529 v 3.453 h -3.529 z m 1.048,-5.494 -0.947,-7.684 0.002,-4.649 h 3.299 v 4.676 l -0.972,7.657 h -1.382 z"
+         id="path105"
+         inkscape:connector-curvature="0" /><path
+         style="fill:#f5fbfd"
+         d="m 329.948,401.839 v 4.396 l -0.942,7.437 h -0.94 l -0.917,-7.436 v -4.397 h 2.799 m 0.129,14.373 v 2.953 h -3.03 v -2.953 h 3.03 m 0.343,-14.873 h -3.742 c -0.016,0 -0.028,0.013 -0.028,0.028 v 4.898 c 0,0.001 0,0.002 0,0.003 l 0.972,7.879 c 0.002,0.014 0.014,0.025 0.028,0.025 h 1.773 c 0.014,0 0.026,-0.011 0.028,-0.025 l 0.998,-7.879 c 0,-10e-4 0,-0.002 0,-0.004 v -4.897 c -0.001,-0.016 -0.014,-0.028 -0.029,-0.028 l 0,0 z m 0.128,14.373 h -3.973 c -0.016,0 -0.028,0.013 -0.028,0.028 v 3.896 c 0,0.016 0.013,0.028 0.028,0.028 h 3.973 c 0.016,0 0.028,-0.013 0.028,-0.028 v -3.896 c 10e-4,-0.016 -0.012,-0.028 -0.028,-0.028 l 0,0 z"
+         id="path107"
+         inkscape:connector-curvature="0" /></g></g></svg>
\ No newline at end of file
diff --git a/resources/images/Pause.png b/resources/images/Pause.png
new file mode 100755 (executable)
index 0000000..179bca5
Binary files /dev/null and b/resources/images/Pause.png differ
diff --git a/resources/images/Phone.svg b/resources/images/Phone.svg
new file mode 100755 (executable)
index 0000000..33bb355
--- /dev/null
@@ -0,0 +1,447 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 195.689 195.688"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="Phone.svg"><metadata
+     id="metadata203"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs201" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="919"
+     inkscape:window-height="776"
+     id="namedview199"
+     showgrid="false"
+     inkscape:zoom="25.37182"
+     inkscape:cx="42.537767"
+     inkscape:cy="132.91916"
+     inkscape:window-x="237"
+     inkscape:window-y="230"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="Layer_1"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><g
+     id="g3"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_1_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.405"
+       y1="324.43469"
+       x2="297.405"
+       y2="518.20068"><stop
+         offset="0"
+         style="stop-color:#FFFFFF;stop-opacity:0.7"
+         id="stop6" /><stop
+         offset="0.9987"
+         style="stop-color:#D8D9D8;stop-opacity:0.7"
+         id="stop8" /></linearGradient><path
+       style="fill:url(#SVGID_1_);fill-rule:evenodd"
+       d="m 209.185,518.68 c -5.031,0 -9.124,-4.093 -9.124,-9.123 v -176.44 c 0,-5.031 4.093,-9.124 9.124,-9.124 h 176.44 c 5.031,0 9.124,4.093 9.124,9.124 v 176.44 c 0,5.03 -4.093,9.123 -9.124,9.123 h -176.44 z"
+       id="path10"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d8d8d7"
+       d="m 385.625,324.492 c 4.755,0 8.624,3.868 8.624,8.624 v 176.441 c 0,4.755 -3.868,8.623 -8.624,8.623 h -176.44 c -4.755,0 -8.624,-3.868 -8.624,-8.623 V 333.116 c 0,-4.755 3.868,-8.624 8.624,-8.624 h 176.44 m 0,-1 h -176.44 c -5.315,0 -9.624,4.309 -9.624,9.624 v 176.441 c 0,5.315 4.309,9.623 9.624,9.623 h 176.441 c 5.315,0 9.624,-4.308 9.624,-9.623 V 333.116 c -10e-4,-5.315 -4.31,-9.624 -9.625,-9.624 l 0,0 z"
+       id="path12"
+       inkscape:connector-curvature="0" /></g><g
+     id="g14"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_2_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.5188"
+       y1="379.46899"
+       x2="297.5188"
+       y2="476.5372"><stop
+         offset="0"
+         style="stop-color:#2D8F57"
+         id="stop17" /><stop
+         offset="1"
+         style="stop-color:#247746"
+         id="stop19" /></linearGradient><path
+       style="fill:url(#SVGID_2_);fill-rule:evenodd"
+       d="m 323.719,412.993 v -18.74 H 271.4 v 18.74 H 240.862 V 392.51 l 0.011,-0.25 v -1.15 c 0,-7.968 4.717,-11.841 14.421,-11.841 h 84.879 c 9.554,0 14.003,4.035 14.003,12.698 v 2.287 h -0.103 v 18.74 h -30.354 z"
+       id="path21"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#247746"
+       d="m 340.172,379.518 c 9.383,0 13.753,3.956 13.753,12.448 v 2.037 h -0.102 v 0.5 18.24 h -29.855 v -18.24 -0.5 h -0.5 -51.82 -0.5 v 0.5 18.24 H 241.11 V 392.76 h 0.012 v -0.5 -1.15 c 0,-7.799 4.635,-11.591 14.171,-11.591 h 84.879 m 0,-0.501 c -21.886,0 -63.476,0 -84.878,0 -10.194,0 -14.671,4.359 -14.671,12.091 0,0.439 0,0.816 0,1.15 h -0.012 v 20.984 h 31.038 v -18.74 h 51.82 v 18.74 h 30.855 v -18.74 h 0.102 c 0,0 0,-1.02 0,-2.537 0,-7.571 -3.316,-12.948 -14.254,-12.948 l 0,0 z"
+       id="path23"
+       inkscape:connector-curvature="0" /></g><g
+     id="g25"
+     transform="translate(-199.56101,-323.492)"><g
+       id="g27"><path
+         style="fill:#96baa4;fill-rule:evenodd"
+         d="m 240.623,392.26 h -0.012 v 1 h 0.012 c 0,-0.294 0,-0.628 0,-1 z"
+         id="path29"
+         inkscape:connector-curvature="0" /></g><g
+       id="g31"><path
+         style="fill:#1e6035;fill-rule:evenodd"
+         d="m 340.172,379.018 c -21.886,0 -63.476,0 -84.878,0 -10.56705,0.0408 -15.02572,4.86892 -14.671,13.091 0,-7.732 4.477,-11.901 14.671,-11.901 21.403,0 62.993,-2.1e-4 84.878,0 9.26381,0.32125 14.05593,7.72823 14.253,11.759 10e-4,-7.572 -3.315,-12.949 -14.253,-12.949 z"
+         id="path33"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="sccsccs" /></g></g><g
+     id="g35"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_3_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.4675"
+       y1="379.59189"
+       x2="297.4675"
+       y2="477.47699"><stop
+         offset="0"
+         style="stop-color:#2D8F57"
+         id="stop38" /><stop
+         offset="1"
+         style="stop-color:#247746"
+         id="stop40" /></linearGradient><path
+       style="fill:url(#SVGID_3_);fill-rule:evenodd"
+       d="m 240.862,477.046 c 0.036,-21.582 4.705,-41.18 13.878,-58.254 h 21.99 v -20.309 h 11.143 v 10.237 h 19.348 v -10.237 h 11.473 v 20.309 h 21.113 c 6.505,12.096 14.218,31.972 14.267,58.254 H 240.862 z"
+       id="path42"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#247746"
+       d="m 318.443,398.734 v 19.808 0.5 h 0.5 20.714 c 6.456,12.045 14.069,31.742 14.165,57.754 h -112.71 c 0.071,-21.386 4.706,-40.813 13.777,-57.754 h 21.59 0.5 v -0.5 -19.808 h 10.643 v 9.737 0.5 h 0.5 18.848 0.5 v -0.5 -9.737 h 10.973 m 0.5,-0.5 h -11.972 v 10.237 H 288.123 V 398.234 H 276.48 v 20.308 c 0,0 -11.825,0 -21.889,0 -7.057,13.092 -13.979,32.586 -13.979,58.754 43.235,0 77.889,0 113.712,0 0,-25.693 -7.176,-45.427 -14.367,-58.754 -9.858,0 -21.013,0 -21.013,0 v -20.308 l -0.001,0 z"
+       id="path44"
+       inkscape:connector-curvature="0" /></g><g
+     id="g46"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 272.181,429.65 h 13.338 v 7.738 h -13.338 v -7.738 z"
+       id="path48"
+       inkscape:connector-curvature="0" /></g><g
+     id="g50"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 290.07,429.65 h 13.338 v 7.738 H 290.07 v -7.738 z"
+       id="path52"
+       inkscape:connector-curvature="0" /></g><g
+     id="g54"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 307.959,429.65 h 13.338 v 7.738 h -13.338 v -7.738 z"
+       id="path56"
+       inkscape:connector-curvature="0" /></g><g
+     id="g58"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 272.181,441.099 h 13.338 v 7.738 h -13.338 v -7.738 z"
+       id="path60"
+       inkscape:connector-curvature="0" /></g><g
+     id="g62"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 290.07,441.099 h 13.338 v 7.738 H 290.07 v -7.738 z"
+       id="path64"
+       inkscape:connector-curvature="0" /></g><g
+     id="g66"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 307.959,441.099 h 13.338 v 7.738 h -13.338 v -7.738 z"
+       id="path68"
+       inkscape:connector-curvature="0" /></g><g
+     id="g70"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 272.181,452.548 h 13.338 v 7.738 h -13.338 v -7.738 z"
+       id="path72"
+       inkscape:connector-curvature="0" /></g><g
+     id="g74"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 290.07,452.548 h 13.338 v 7.738 H 290.07 v -7.738 z"
+       id="path76"
+       inkscape:connector-curvature="0" /></g><g
+     id="g78"
+     transform="translate(-199.56101,-323.492)"><path
+       style="fill:#1e6035;fill-rule:evenodd"
+       d="m 307.959,452.548 h 13.338 v 7.738 h -13.338 v -7.738 z"
+       id="path80"
+       inkscape:connector-curvature="0" /></g><g
+     id="g82"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_4_"
+       gradientUnits="userSpaceOnUse"
+       x1="278.8501"
+       y1="429.478"
+       x2="278.8501"
+       y2="455.63269"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop85" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop87" /></linearGradient><rect
+       x="272.681"
+       y="429.14999"
+       style="fill:url(#SVGID_4_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7379999"
+       id="rect89" /><path
+       style="fill:#c3dccb"
+       d="m 284.519,429.65 v 5.738 h -11.338 v -5.738 h 11.338 m 1,-1 h -13.338 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path91"
+       inkscape:connector-curvature="0" /></g><g
+     id="g93"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_5_"
+       gradientUnits="userSpaceOnUse"
+       x1="296.73929"
+       y1="429.478"
+       x2="296.73929"
+       y2="455.63269"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop96" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop98" /></linearGradient><rect
+       x="290.57001"
+       y="429.14999"
+       style="fill:url(#SVGID_5_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7379999"
+       id="rect100" /><path
+       style="fill:#c3dccb"
+       d="m 302.408,429.65 v 5.738 H 291.07 v -5.738 h 11.338 m 1,-1 H 290.07 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path102"
+       inkscape:connector-curvature="0" /></g><g
+     id="g104"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_6_"
+       gradientUnits="userSpaceOnUse"
+       x1="314.6279"
+       y1="429.478"
+       x2="314.6279"
+       y2="455.63269"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop107" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop109" /></linearGradient><rect
+       x="308.45901"
+       y="429.14999"
+       style="fill:url(#SVGID_6_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7379999"
+       id="rect111" /><path
+       style="fill:#c3dccb"
+       d="m 320.297,429.65 v 5.738 h -11.338 v -5.738 h 11.338 m 1,-1 h -13.338 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path113"
+       inkscape:connector-curvature="0" /></g><g
+     id="g115"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_7_"
+       gradientUnits="userSpaceOnUse"
+       x1="278.8501"
+       y1="430.95789"
+       x2="278.8501"
+       y2="457.11221"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop118" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop120" /></linearGradient><rect
+       x="272.681"
+       y="440.60001"
+       style="fill:url(#SVGID_7_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7379999"
+       id="rect122" /><path
+       style="fill:#c3dccb"
+       d="m 284.519,441.099 v 5.738 h -11.338 v -5.738 h 11.338 m 1,-1 h -13.338 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path124"
+       inkscape:connector-curvature="0" /></g><g
+     id="g126"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_8_"
+       gradientUnits="userSpaceOnUse"
+       x1="296.73929"
+       y1="430.95789"
+       x2="296.73929"
+       y2="457.11221"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop129" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop131" /></linearGradient><rect
+       x="290.57001"
+       y="440.60001"
+       style="fill:url(#SVGID_8_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7379999"
+       id="rect133" /><path
+       style="fill:#c3dccb"
+       d="m 302.408,441.099 v 5.738 H 291.07 v -5.738 h 11.338 m 1,-1 H 290.07 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path135"
+       inkscape:connector-curvature="0" /></g><g
+     id="g137"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_9_"
+       gradientUnits="userSpaceOnUse"
+       x1="314.6279"
+       y1="430.95789"
+       x2="314.6279"
+       y2="457.11221"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop140" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop142" /></linearGradient><rect
+       x="308.45901"
+       y="440.60001"
+       style="fill:url(#SVGID_9_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7379999"
+       id="rect144" /><path
+       style="fill:#c3dccb"
+       d="m 320.297,441.099 v 5.738 h -11.338 v -5.738 h 11.338 m 1,-1 h -13.338 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path146"
+       inkscape:connector-curvature="0" /></g><g
+     id="g148"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_10_"
+       gradientUnits="userSpaceOnUse"
+       x1="278.8501"
+       y1="432.43359"
+       x2="278.8501"
+       y2="458.5921"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop151" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop153" /></linearGradient><rect
+       x="272.681"
+       y="452.048"
+       style="fill:url(#SVGID_10_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7389998"
+       id="rect155" /><path
+       style="fill:#c3dccb"
+       d="m 284.519,452.548 v 5.738 h -11.338 v -5.738 h 11.338 m 1,-1 h -13.338 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path157"
+       inkscape:connector-curvature="0" /></g><g
+     id="g159"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_11_"
+       gradientUnits="userSpaceOnUse"
+       x1="296.73929"
+       y1="432.43359"
+       x2="296.73929"
+       y2="458.5921"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop162" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop164" /></linearGradient><rect
+       x="290.57001"
+       y="452.048"
+       style="fill:url(#SVGID_11_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7389998"
+       id="rect166" /><path
+       style="fill:#c3dccb"
+       d="m 302.408,452.548 v 5.738 H 291.07 v -5.738 h 11.338 m 1,-1 H 290.07 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path168"
+       inkscape:connector-curvature="0" /></g><g
+     id="g170"
+     transform="translate(-199.56101,-323.492)"><linearGradient
+       id="SVGID_12_"
+       gradientUnits="userSpaceOnUse"
+       x1="314.6279"
+       y1="432.43359"
+       x2="314.6279"
+       y2="458.5921"><stop
+         offset="0"
+         style="stop-color:#ADCBB8"
+         id="stop173" /><stop
+         offset="1"
+         style="stop-color:#96BAA4"
+         id="stop175" /></linearGradient><rect
+       x="308.45901"
+       y="452.048"
+       style="fill:url(#SVGID_12_);fill-rule:evenodd"
+       width="12.338"
+       height="6.7389998"
+       id="rect177" /><path
+       style="fill:#c3dccb"
+       d="m 320.297,452.548 v 5.738 h -11.338 v -5.738 h 11.338 m 1,-1 h -13.338 v 7.738 h 13.338 v -7.738 l 0,0 z"
+       id="path179"
+       inkscape:connector-curvature="0" /></g><rect
+     x="41.050991"
+     y="153.80399"
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     width="113.712"
+     height="1.527"
+     id="rect181" /><rect
+     x="41.050991"
+     y="89.236"
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     width="31.038"
+     height="1.166"
+     id="rect183" /><rect
+     x="71.567986"
+     y="70.518013"
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     width="52.827999"
+     height="1.166"
+     id="rect185" /><rect
+     x="76.918999"
+     y="74.742012"
+     style="fill:#1e6035;fill-rule:evenodd"
+     width="11.643"
+     height="1.166"
+     id="rect187" /><polygon
+     style="fill:#1e6035;fill-rule:evenodd"
+     points="277.05,418.542 277.05,419.708 254.005,419.708 254.591,418.542 "
+     id="polygon189"
+     transform="translate(-199.56101,-323.492)" /><rect
+     x="107.41"
+     y="74.742012"
+     style="fill:#1e6035;fill-rule:evenodd"
+     width="11.972"
+     height="1.166"
+     id="rect191" /><polygon
+     style="fill:#1e6035;fill-rule:evenodd"
+     points="339.956,418.542 340.577,419.708 318.43,419.708 318.43,418.542 "
+     id="polygon193"
+     transform="translate(-199.56101,-323.492)" /><rect
+     x="88.053001"
+     y="84.978004"
+     style="fill:#1e6035;fill-rule:evenodd"
+     width="19.858999"
+     height="1.166"
+     id="rect195" /><rect
+     x="123.90798"
+     y="89.13401"
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     width="30.855"
+     height="1.166"
+     id="rect197" /></svg>
\ No newline at end of file
diff --git a/resources/images/RadialEffect-280x280.png b/resources/images/RadialEffect-280x280.png
new file mode 100644 (file)
index 0000000..b3423da
Binary files /dev/null and b/resources/images/RadialEffect-280x280.png differ
diff --git a/resources/images/Settings.svg b/resources/images/Settings.svg
new file mode 100755 (executable)
index 0000000..68156cd
--- /dev/null
@@ -0,0 +1,452 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 198.205 197.727"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="Settings.svg"><metadata
+     id="metadata198"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs196" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1855"
+     inkscape:window-height="1056"
+     id="namedview194"
+     showgrid="false"
+     inkscape:zoom="8.970293"
+     inkscape:cx="106.85199"
+     inkscape:cy="108.17733"
+     inkscape:window-x="65"
+     inkscape:window-y="24"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="Layer_1"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><g
+     id="g3"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_1_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.9707"
+       y1="323.84149"
+       x2="297.9707"
+       y2="518.87842"><stop
+         offset="0"
+         style="stop-color:#FFFFFF;stop-opacity:0.7"
+         id="stop6" /><stop
+         offset="0.9987"
+         style="stop-color:#D8D9D8;stop-opacity:0.7"
+         id="stop8" /></linearGradient><path
+       style="fill:url(#SVGID_1_);fill-rule:evenodd"
+       d="m 209.538,519.703 c -5.608,0 -10.17,-4.562 -10.17,-10.17 V 333.146 c 0,-5.608 4.562,-10.17 10.17,-10.17 h 176.865 c 5.607,0 10.17,4.562 10.17,10.17 v 176.387 c 0,5.607 -4.562,10.17 -10.17,10.17 H 209.538 z"
+       id="path10"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d8d8d7"
+       d="m 386.404,323.477 c 5.332,0 9.67,4.338 9.67,9.67 v 176.387 c 0,5.332 -4.338,9.67 -9.67,9.67 H 209.538 c -5.332,0 -9.67,-4.338 -9.67,-9.67 V 333.147 c 0,-5.332 4.338,-9.67 9.67,-9.67 h 176.866 m 0,-1 H 209.538 c -5.893,0 -10.67,4.777 -10.67,10.67 v 176.387 c 0,5.893 4.777,10.67 10.67,10.67 h 176.865 c 5.893,0 10.67,-4.777 10.67,-10.67 V 333.147 c 0.001,-5.893 -4.777,-10.67 -10.669,-10.67 l 0,0 z"
+       id="path12"
+       inkscape:connector-curvature="0" /></g><g
+     id="g14"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_2_"
+       gradientUnits="userSpaceOnUse"
+       x1="245.7205"
+       y1="365.71552"
+       x2="245.7205"
+       y2="468.46078"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop17" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop19" /></linearGradient><path
+       style="fill:url(#SVGID_2_);fill-rule:evenodd"
+       d="m 235.816,397.952 c -3.191,0 -5.788,-2.596 -5.788,-5.787 v -19.809 c 0,-3.191 2.596,-5.788 5.788,-5.788 h 19.809 c 3.191,0 5.787,2.596 5.787,5.788 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path21"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 255.625,367.069 c 2.915,0 5.287,2.372 5.287,5.287 l 0,19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 l -19.809,0 c -2.915,0 -5.287,-2.372 -5.287,-5.287 l 0,-19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 l 19.809,0 m 0,-1 -19.809,0 c -3.472,0 -6.287,2.815 -6.287,6.287 l 0,19.809 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 3.472,0 6.287,-2.92648 6.287,-6.287 l 0,-19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 z"
+       id="path23"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="csssssssccssssssscc" /></g><g
+     id="g25"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_3_"
+       gradientUnits="userSpaceOnUse"
+       x1="281.9429"
+       y1="365.71552"
+       x2="281.9429"
+       y2="468.46078"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop28" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop30" /></linearGradient><path
+       style="fill:url(#SVGID_3_);fill-rule:evenodd"
+       d="m 272.039,397.952 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.788 5.787,-5.788 h 19.809 c 3.191,0 5.787,2.596 5.787,5.788 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path32"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 291.847,367.069 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.814,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path34"
+       inkscape:connector-curvature="0" /></g><g
+     id="g36"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_4_"
+       gradientUnits="userSpaceOnUse"
+       x1="317.79349"
+       y1="365.71552"
+       x2="317.79349"
+       y2="468.46078"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop39" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop41" /></linearGradient><path
+       style="fill:url(#SVGID_4_);fill-rule:evenodd"
+       d="m 307.889,397.952 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.788 5.787,-5.788 h 19.809 c 3.191,0 5.788,2.596 5.788,5.788 v 19.809 c 0,3.191 -2.597,5.787 -5.788,5.787 h -19.809 z"
+       id="path43"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 327.698,367.069 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path45"
+       inkscape:connector-curvature="0" /></g><g
+     id="g47"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_5_"
+       gradientUnits="userSpaceOnUse"
+       x1="354.01559"
+       y1="365.71552"
+       x2="354.01559"
+       y2="468.46078"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop50" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop52" /></linearGradient><path
+       style="fill:url(#SVGID_5_);fill-rule:evenodd"
+       d="m 344.111,397.952 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.788 5.787,-5.788 h 19.809 c 3.191,0 5.787,2.596 5.787,5.788 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path54"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 363.92,367.069 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path56"
+       inkscape:connector-curvature="0" /></g><g
+     id="g58"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_6_"
+       gradientUnits="userSpaceOnUse"
+       x1="245.7205"
+       y1="366.86359"
+       x2="245.7205"
+       y2="469.60889"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop61" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop63" /></linearGradient><path
+       style="fill:url(#SVGID_6_);fill-rule:evenodd"
+       d="m 235.816,435.128 c -3.191,0 -5.788,-2.596 -5.788,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.788,-5.787 h 19.809 c 3.191,0 5.787,2.596 5.787,5.787 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path65"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 255.625,404.244 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path67"
+       inkscape:connector-curvature="0" /></g><g
+     id="g69"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_7_"
+       gradientUnits="userSpaceOnUse"
+       x1="281.9429"
+       y1="366.86359"
+       x2="281.9429"
+       y2="469.60889"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop72" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop74" /></linearGradient><path
+       style="fill:url(#SVGID_7_);fill-rule:evenodd"
+       d="m 272.039,435.128 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.787,-5.787 h 19.809 c 3.191,0 5.787,2.596 5.787,5.787 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path76"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 291.847,404.244 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.814,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path78"
+       inkscape:connector-curvature="0" /></g><g
+     id="g80"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_8_"
+       gradientUnits="userSpaceOnUse"
+       x1="317.79349"
+       y1="366.85529"
+       x2="317.79349"
+       y2="469.599"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop83" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop85" /></linearGradient><path
+       style="fill:url(#SVGID_8_);fill-rule:evenodd"
+       d="m 307.889,434.837 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.787,-5.787 h 19.809 c 3.191,0 5.788,2.596 5.788,5.787 v 19.809 c 0,3.191 -2.597,5.787 -5.788,5.787 h -19.809 z"
+       id="path87"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 327.698,403.954 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path89"
+       inkscape:connector-curvature="0" /></g><g
+     id="g91"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_9_"
+       gradientUnits="userSpaceOnUse"
+       x1="354.01559"
+       y1="366.85529"
+       x2="354.01559"
+       y2="469.599"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop94" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop96" /></linearGradient><path
+       style="fill:url(#SVGID_9_);fill-rule:evenodd"
+       d="m 344.111,434.837 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.787,-5.787 h 19.809 c 3.191,0 5.787,2.596 5.787,5.787 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path98"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 363.92,403.954 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path100"
+       inkscape:connector-curvature="0" /></g><g
+     id="g102"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_10_"
+       gradientUnits="userSpaceOnUse"
+       x1="245.7205"
+       y1="367.98279"
+       x2="245.7205"
+       y2="470.72681"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop105" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop107" /></linearGradient><path
+       style="fill:url(#SVGID_10_);fill-rule:evenodd"
+       d="m 235.816,471.35 c -3.191,0 -5.788,-2.596 -5.788,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.788,-5.787 h 19.809 c 3.191,0 5.787,2.596 5.787,5.787 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path109"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 255.625,440.467 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path111"
+       inkscape:connector-curvature="0" /></g><g
+     id="g113"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_11_"
+       gradientUnits="userSpaceOnUse"
+       x1="281.9429"
+       y1="367.98279"
+       x2="281.9429"
+       y2="470.72681"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop116" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop118" /></linearGradient><path
+       style="fill:url(#SVGID_11_);fill-rule:evenodd"
+       d="m 272.039,471.35 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.787,-5.787 h 19.809 c 3.191,0 5.787,2.596 5.787,5.787 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path120"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 291.847,440.467 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.814,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path122"
+       inkscape:connector-curvature="0" /></g><g
+     id="g124"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_12_"
+       gradientUnits="userSpaceOnUse"
+       x1="317.79349"
+       y1="367.98279"
+       x2="317.79349"
+       y2="470.72681"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop127" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop129" /></linearGradient><path
+       style="fill:url(#SVGID_12_);fill-rule:evenodd"
+       d="m 307.889,471.35 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.787,-5.787 h 19.809 c 3.191,0 5.788,2.596 5.788,5.787 v 19.809 c 0,3.191 -2.597,5.787 -5.788,5.787 h -19.809 z"
+       id="path131"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 327.698,440.467 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path133"
+       inkscape:connector-curvature="0" /></g><g
+     id="g135"
+     transform="translate(-198.86801,-322.477)"><linearGradient
+       id="SVGID_13_"
+       gradientUnits="userSpaceOnUse"
+       x1="354.01559"
+       y1="367.98279"
+       x2="354.01559"
+       y2="470.72681"><stop
+         offset="0.0061"
+         style="stop-color:#EE4748"
+         id="stop138" /><stop
+         offset="1"
+         style="stop-color:#E33C3B"
+         id="stop140" /></linearGradient><path
+       style="fill:url(#SVGID_13_);fill-rule:evenodd"
+       d="m 344.111,471.35 c -3.191,0 -5.787,-2.596 -5.787,-5.787 v -19.809 c 0,-3.191 2.596,-5.787 5.787,-5.787 h 19.809 c 3.191,0 5.787,2.596 5.787,5.787 v 19.809 c 0,3.191 -2.596,5.787 -5.787,5.787 h -19.809 z"
+       id="path142"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#ce3737"
+       d="m 363.92,440.467 c 2.915,0 5.287,2.372 5.287,5.287 v 19.809 c 0,2.915 -2.372,5.287 -5.287,5.287 h -19.809 c -2.915,0 -5.287,-2.372 -5.287,-5.287 v -19.809 c 0,-2.915 2.372,-5.287 5.287,-5.287 h 19.809 m 0,-1 h -19.809 c -3.472,0 -6.287,2.815 -6.287,6.287 v 19.809 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -19.809 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l 0,0 z"
+       id="path144"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 56.756991,75.017 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.26011,-0.22453 6.287,-3.99363 6.287,-8.082 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path146"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 92.978991,75.017 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.14863,0.10991 6.287,-3.99363 6.287,-8.082 0,3.472 -2.814,6.287 -6.287,6.287 z"
+     id="path148"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 128.82999,74.915 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.03715,-0.11305 6.287,-3.993628 6.287,-8.082 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path150"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 165.05199,74.915 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.03715,-0.0016 6.287,-3.993628 6.287,-8.082 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path152"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 56.756991,112.192 h -19.809 c -3.472,0 -6.287,-2.815 -6.287,-6.287 v 1.795 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -1.795 c 0,3.473 -2.815,6.287 -6.287,6.287 z"
+     id="path154"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 92.978991,112.192 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.14863,-0.002 6.287,-3.99363 6.287,-8.082 0,3.473 -2.814,6.287 -6.287,6.287 z"
+     id="path156"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 128.82999,111.902 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.03715,-0.11305 6.287,-3.99363 6.287,-8.082 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path158"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 165.05199,111.902 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.03715,-0.002 6.287,-3.99363 6.287,-8.082 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path160"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 56.756991,148.415 h -19.809 c -3.472,0 -6.287,-2.815 -6.287,-6.287 v 1.795 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -1.795 c 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path162"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 92.978991,148.415 h -19.809 c -3.472,0 -6.287,-2.815 -6.287,-6.287 v 1.795 c 0,3.472 2.815,6.287 6.287,6.287 h 19.809 c 3.472,0 6.287,-2.815 6.287,-6.287 v -1.795 c 0,3.472 -2.814,6.287 -6.287,6.287 z"
+     id="path164"
+     inkscape:connector-curvature="0" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 128.82999,148.415 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.26011,0.10991 6.287,-3.99363 6.287,-8.082 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path166"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#e1dfe2;fill-rule:evenodd"
+     d="m 165.05199,148.415 -19.809,0 c -3.472,0 -6.287,-2.815 -6.287,-6.287 l 0,1.795 c 0,3.472 2.815,6.287 6.287,6.287 l 19.809,0 c 5.37159,0.10991 6.287,-3.99363 6.287,-8.082 0,3.472 -2.815,6.287 -6.287,6.287 z"
+     id="path168"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 145.24299,118.785 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -4.47975,0.11305 -6.287,3.99363 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path170"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 109.02099,118.785 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -5.14863,0.11305 -6.39848,3.21328 -6.287,8.082 0.66887,-3.24904 2.815,-6.287 6.287,-6.287 z"
+     id="path172"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 73.169991,118.887 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -5.037149,0.002 -6.287,3.99363 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path174"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 36.947991,118.887 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -4.59123,0.11305 -6.287,3.99363 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path176"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 145.24299,81.609 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 0.17873,-4.285788 -2.33849,-8.090395 -6.287,-8.082 l -19.809,0 c -5.37159,0.0016 -6.287,3.993628 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path178"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="ssccccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 109.02099,81.609 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -4.92567,0.002 -6.287,3.99363 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path180"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 73.169991,81.9 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -4.81419,0.22453 -6.287,3.99363 -6.287,8.082 1.114791,-3.583479 2.815,-6.287 6.287,-6.287 z"
+     id="path182"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 36.947991,81.9 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -4.92567,0.11305 -6.287,3.993628 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path184"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 145.24299,45.387 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -4.81419,0.002 -6.287,3.99363 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path186"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 109.02099,45.387 19.809,0 c 6.54822,0.694817 6.287,9.093427 6.287,4.492 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -5.48307,0.0016 -6.287,3.993628 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path188"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sccsccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 73.169991,45.387 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -5.37159,0.11305 -6.287,3.99363 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path190"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /><path
+     style="fill:#c02829;fill-rule:evenodd"
+     d="m 36.947991,45.387 19.809,0 c 3.472,0 6.287,2.815 6.287,6.287 l 0,-1.795 c 0,-3.472 -2.815,-6.287 -6.287,-6.287 l -19.809,0 c -4.81419,0.22453 -6.287,3.99363 -6.287,8.082 0,-3.472 2.815,-6.287 6.287,-6.287 z"
+     id="path192"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="sscssccs" /></svg>
\ No newline at end of file
diff --git a/resources/images/TB-gloss.png b/resources/images/TB-gloss.png
new file mode 100644 (file)
index 0000000..9ed4b6c
Binary files /dev/null and b/resources/images/TB-gloss.png differ
diff --git a/resources/images/Test_100_normal_roughness.png b/resources/images/Test_100_normal_roughness.png
new file mode 100644 (file)
index 0000000..e1e86ae
Binary files /dev/null and b/resources/images/Test_100_normal_roughness.png differ
diff --git a/resources/images/Test_wblue_100_albedo_metal.png b/resources/images/Test_wblue_100_albedo_metal.png
new file mode 100644 (file)
index 0000000..0444ef5
Binary files /dev/null and b/resources/images/Test_wblue_100_albedo_metal.png differ
diff --git a/resources/images/Toyrobot-Plastic_lambert3SG_color.png b/resources/images/Toyrobot-Plastic_lambert3SG_color.png
new file mode 100644 (file)
index 0000000..57d997d
Binary files /dev/null and b/resources/images/Toyrobot-Plastic_lambert3SG_color.png differ
diff --git a/resources/images/Toyrobot-Plastic_lambert3SG_gloss.png b/resources/images/Toyrobot-Plastic_lambert3SG_gloss.png
new file mode 100644 (file)
index 0000000..f5aea6a
Binary files /dev/null and b/resources/images/Toyrobot-Plastic_lambert3SG_gloss.png differ
diff --git a/resources/images/Toyrobot-Plastic_lambert3SG_nmap.png b/resources/images/Toyrobot-Plastic_lambert3SG_nmap.png
new file mode 100644 (file)
index 0000000..25a9689
Binary files /dev/null and b/resources/images/Toyrobot-Plastic_lambert3SG_nmap.png differ
diff --git a/resources/images/UI-Leather-DIFF.png b/resources/images/UI-Leather-DIFF.png
new file mode 100644 (file)
index 0000000..b04d0ac
Binary files /dev/null and b/resources/images/UI-Leather-DIFF.png differ
diff --git a/resources/images/World.svg b/resources/images/World.svg
new file mode 100755 (executable)
index 0000000..91aef13
--- /dev/null
@@ -0,0 +1,284 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 195.687 195.688"
+   xml:space="preserve"
+   inkscape:version="0.48.4 r9939"
+   width="100%"
+   height="100%"
+   sodipodi:docname="World.svg"><metadata
+     id="metadata129"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+     id="defs127" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1199"
+     inkscape:window-height="896"
+     id="namedview125"
+     showgrid="false"
+     inkscape:zoom="6.342955"
+     inkscape:cx="97.837987"
+     inkscape:cy="98.236009"
+     inkscape:window-x="75"
+     inkscape:window-y="34"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="Layer_1"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" /><g
+     id="g3"
+     transform="translate(-199.80201,-323.493)"><linearGradient
+       id="SVGID_1_"
+       gradientUnits="userSpaceOnUse"
+       x1="297.64529"
+       y1="324.43469"
+       x2="297.64529"
+       y2="518.20172"><stop
+         offset="0"
+         style="stop-color:#FFFFFF;stop-opacity:0.7"
+         id="stop6" /><stop
+         offset="0.9987"
+         style="stop-color:#D8D9D8;stop-opacity:0.7"
+         id="stop8" /></linearGradient><path
+       style="fill:url(#SVGID_1_);fill-rule:evenodd"
+       d="m 209.425,518.681 c -5.031,0 -9.124,-4.093 -9.124,-9.124 v -176.44 c 0,-5.031 4.093,-9.124 9.124,-9.124 h 176.44 c 5.031,0 9.124,4.093 9.124,9.124 v 176.44 c 0,5.031 -4.093,9.124 -9.124,9.124 h -176.44 z"
+       id="path10"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#d8d8d7"
+       d="m 385.865,324.493 c 4.755,0 8.623,3.868 8.623,8.624 v 176.441 c 0,4.755 -3.868,8.623 -8.623,8.623 h -176.44 c -4.755,0 -8.623,-3.868 -8.623,-8.623 V 333.116 c 0,-4.755 3.868,-8.624 8.623,-8.624 h 176.44 m 0,-0.999 h -176.44 c -5.315,0 -9.623,4.309 -9.623,9.624 v 176.441 c 0,5.315 4.309,9.623 9.623,9.623 h 176.441 c 5.315,0 9.623,-4.309 9.623,-9.623 V 333.116 c 0,-5.315 -4.309,-9.623 -9.624,-9.623 l 0,0 z"
+       id="path12"
+       inkscape:connector-curvature="0" /></g><g
+     id="g14"
+     transform="translate(-199.80201,-323.493)"><linearGradient
+       id="SVGID_2_"
+       gradientUnits="userSpaceOnUse"
+       x1="295.34409"
+       y1="366.51251"
+       x2="295.34409"
+       y2="477.05319"><stop
+         offset="0"
+         style="stop-color:#537FAF"
+         id="stop17" /><stop
+         offset="1"
+         style="stop-color:#436997"
+         id="stop19" /></linearGradient><path
+       style="fill:url(#SVGID_2_);fill-rule:evenodd"
+       d="m 295.344,365.432 c 30.647,0 55.492,24.845 55.492,55.492 0,30.647 -24.845,55.492 -55.492,55.492 -30.647,0 -55.492,-24.845 -55.492,-55.492 0,-30.647 24.845,-55.492 55.492,-55.492 z"
+       id="path21"
+       inkscape:connector-curvature="0" /></g><g
+     id="g23"
+     transform="translate(-199.80201,-323.493)"><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 336.697,448.9 c -1.4466,-17.74544 -6.79574,8.99663 -17.693,-19.639 -0.105,-0.613 -0.158,-1.2 -0.187,-1.775 -0.053,0.99 -0.003,2.033 0.187,3.145 8.478,23.495 15.228,8.439 17.693,18.269 z"
+       id="path25"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccc" /><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 322.35931,469.75845 c 11.4669,-11.09759 23.42214,-27.18821 22.63386,-47.49545 -0.009,-0.23982 5.82483,-0.446 5.82183,-0.686 0.33349,21.63904 -14.73709,38.28161 -28.45569,48.18145 z"
+       id="path27"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="cscc" /></g><path
+     style="fill:#3d5e86;fill-rule:evenodd"
+     d="m 142.99999,70.832 c -0.788,3.617 -1.577,7.235 -2.365,10.852 -4.961,-1.349 -8.753,1.731 -13.289,3.095 -0.653,-2.785 -1.305,-5.572 -1.958,-8.357 -0.113,-0.024 -0.223,-0.043 -0.338,-0.074 0.765,3.266 1.531,6.534 2.296,9.801 4.537,-1.363 8.328,-4.444 13.289,-3.095 0.788,-3.617 1.577,-7.235 2.365,-10.852 0.387,-0.052 0.774,-0.104 1.161,-0.156 -0.238,-0.431 -0.502,-0.844 -0.75,-1.268 -0.137,0.017 -0.274,0.035 -0.411,0.054 z"
+     id="path29"
+     inkscape:connector-curvature="0" /><g
+     id="g31"
+     transform="translate(-199.80201,-323.493)"><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 329.068,380.749 c -0.243,-1.017 -0.486,-2.033 -0.729,-3.05 -0.135,-0.1 -0.264,-0.207 -0.4,-0.306 0.303,1.267 0.606,2.535 0.909,3.802 0.072,-0.148 0.146,-0.297 0.22,-0.446 z"
+       id="path33"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 327.22,389.512 c -0.489,-0.227 -0.978,-0.455 -1.468,-0.682 -0.183,0.371 -0.367,0.742 -0.55,1.114 0.673,0.313 1.345,0.625 2.018,0.938 3.634,-0.915 5.053,-5.373 4.871,-9.558 -0.155,3.741 -1.633,7.372 -4.871,8.188 z"
+       id="path35"
+       inkscape:connector-curvature="0" /></g><path
+     style="fill:#3d5e86;fill-rule:evenodd"
+     d="m 123.30399,61.978 c -0.543,-0.236 -1.087,-0.471 -1.63,-0.707 -0.179,0.379 -0.358,0.758 -0.537,1.136 0.722,0.313 1.445,0.627 2.167,0.94 0.365,-1.137 0.73,-2.275 1.095,-3.413 -0.129,-0.055 -0.257,-0.111 -0.386,-0.166 -0.236,0.737 -0.473,1.474 -0.709,2.21 z"
+     id="path37"
+     inkscape:connector-curvature="0" /><g
+     id="g39"
+     transform="translate(-199.80201,-323.493)"><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 272.087,393.816 c 0.93,-5.339 1.861,-10.68 2.792,-16.019 -0.025,-0.167 -0.072,-0.388 -0.129,-0.63 -0.93,5.334 -1.859,10.669 -2.789,16.003 0.037,0.217 0.085,0.431 0.126,0.646 z"
+       id="path41"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 260.998,417.547 c 0,0.424 0.044,0.842 0.117,1.256 0.455,-0.442 0.911,-0.885 1.366,-1.327 1.956,0 13.993,0.484 15.897,1.198 0,-0.465 -0.021,-0.926 -0.05,-1.385 -2.041,-0.705 -13.906,-1.182 -15.847,-1.182 -0.495,0.479 -0.989,0.96 -1.483,1.44 z"
+       id="path43"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 271.142,443.257 c -0.062,0.322 -0.109,0.664 -0.134,1.038 5.203,13.429 12.196,14.9 12.423,28.805 0.219,-15.067 -6.933,-16.306 -12.289,-29.843 z"
+       id="path45"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#3d5e86;fill-rule:evenodd"
+       d="m 276.572,434.507 c -0.064,-0.093 -8.841,-3.054 -12.462,-5.359 -7.139,-4.544 -14.035,-13.956 -20.542,-26.81 -0.1,0.258 -0.211,0.51 -0.306,0.77 6.597,13.166 13.598,22.794 20.849,27.409 3.571,2.273 12.138,5.178 12.438,5.348 0.136,-0.364 0.169,-0.795 0.023,-1.358 z"
+       id="path49"
+       inkscape:connector-curvature="0" /></g><g
+     id="g51"
+     transform="translate(-217.32904,-322.54707)"><linearGradient
+       id="SVGID_3_"
+       gradientUnits="userSpaceOnUse"
+       x1="334.81161"
+       y1="368.34589"
+       x2="334.81161"
+       y2="475.01251"
+       gradientTransform="translate(17.527034,-0.89641334)"><stop
+         offset="0"
+         style="stop-color:#D1DBE8"
+         id="stop54" /><stop
+         offset="1"
+         style="stop-color:#C4CDDC"
+         id="stop56" /></linearGradient><path
+       style="fill:url(#SVGID_3_);fill-rule:evenodd"
+       d="m 368.20538,422.0761 c 0,-4.224 -0.33035,-10.38051 -1.22335,-14.33451 -9.023,1.521 -33.199,4.524 -30.451,20.622 8.53,23.641 15.312,8.248 17.739,18.45 0.38,4.725 -6.01,12.864 -10.126,19.052 14.62,-9.993 24.06135,-24.74349 24.06135,-43.78949 z"
+       id="path58"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="sccccs" /></g><g
+     id="g60"
+     transform="translate(-199.80201,-323.493)"><linearGradient
+       id="SVGID_4_"
+       gradientUnits="userSpaceOnUse"
+       x1="334.4075"
+       y1="368.34589"
+       x2="334.4075"
+       y2="475.01251"><stop
+         offset="0"
+         style="stop-color:#D1DBE8"
+         id="stop63" /><stop
+         offset="1"
+         style="stop-color:#C4CDDC"
+         id="stop65" /></linearGradient><path
+       style="fill:url(#SVGID_4_);fill-rule:evenodd"
+       d="m 340.438,405.177 c 0.788,-3.617 1.577,-7.235 2.365,-10.852 0.387,-0.052 0.774,-0.104 1.161,-0.156 -2.168,-3.931 -4.798,-7.569 -7.818,-10.845 -1.648,5.677 -4.173,17.083 -11.293,15.147 0.765,3.266 1.531,6.534 2.296,9.801 4.536,-1.364 8.327,-4.444 13.289,-3.095 z"
+       id="path67"
+       inkscape:connector-curvature="0" /></g><g
+     id="g69"
+     transform="translate(-199.80201,-323.493)"><linearGradient
+       id="SVGID_5_"
+       gradientUnits="userSpaceOnUse"
+       x1="328.65619"
+       y1="368.34589"
+       x2="328.65619"
+       y2="475.01251"><stop
+         offset="0"
+         style="stop-color:#D1DBE8"
+         id="stop72" /><stop
+         offset="1"
+         style="stop-color:#C4CDDC"
+         id="stop74" /></linearGradient><path
+       style="fill:url(#SVGID_5_);fill-rule:evenodd"
+       d="m 329.068,380.749 c -1.288,2.608 -2.577,5.217 -3.865,7.824 0.673,0.313 1.345,0.625 2.018,0.938 3.816,-0.96 5.194,-5.829 4.836,-10.184 -1.319,-1.165 -2.692,-2.267 -4.118,-3.304 0.376,1.576 0.752,3.151 1.129,4.726 z"
+       id="path76"
+       inkscape:connector-curvature="0" /></g><linearGradient
+     id="SVGID_6_"
+     gradientUnits="userSpaceOnUse"
+     x1="322.56961"
+     y1="368.34589"
+     x2="322.56961"
+     y2="475.01251"
+     gradientTransform="translate(-199.80201,-323.493)"><stop
+       offset="0"
+       style="stop-color:#D1DBE8"
+       id="stop79" /><stop
+       offset="1"
+       style="stop-color:#C4CDDC"
+       id="stop81" /></linearGradient><path
+     style="fill:url(#SVGID_6_);fill-rule:evenodd"
+     d="m 122.55399,58.04 c -0.472,1 -0.945,1.999 -1.417,2.999 0.722,0.313 1.445,0.627 2.168,0.94 0.365,-1.137 0.73,-2.275 1.095,-3.413 -0.603,-0.26 -1.206,-0.52 -1.809,-0.78 -0.013,0.084 -0.025,0.169 -0.037,0.254 z"
+     id="path83"
+     inkscape:connector-curvature="0" /><g
+     id="g85"
+     transform="translate(-199.80201,-323.493)"><linearGradient
+       id="SVGID_7_"
+       gradientUnits="userSpaceOnUse"
+       x1="272.83749"
+       y1="368.69739"
+       x2="272.83749"
+       y2="474.75171"><stop
+         offset="0"
+         style="stop-color:#D1DBE8"
+         id="stop88" /><stop
+         offset="1"
+         style="stop-color:#C4CDDC"
+         id="stop90" /></linearGradient><path
+       style="fill:url(#SVGID_7_);fill-rule:evenodd"
+       d="m 289.565,475.865 c -1.934,-0.202 -3.929,-0.524 -5.938,-0.96 0.533,-10.776 -2.327,-14.988 -5.941,-20.313 -2.057,-3.029 -4.387,-6.462 -6.424,-11.704 0.232,-3.271 1.997,-4.275 3.555,-5.163 1.275,-0.727 2.479,-1.413 1.998,-3.28 -0.096,-0.164 -0.096,-0.164 -1.222,-0.578 -2.546,-0.935 -8.511,-3.123 -11.348,-4.93 -6.877,-4.377 -13.845,-13.534 -20.711,-27.213 5.141,-13.864 15.829,-25.245 29.361,-31.274 0.786,2.477 1.591,5.021 1.737,6.015 l -1.458,8.292 -1.458,8.372 c 0.583,3.561 1.838,6.961 3.052,10.25 1.614,4.371 3.281,8.887 3.357,13.59 -2.776,-0.693 -14.013,-1.111 -15.644,-1.111 h -0.102 l -1.631,1.585 v 0.105 c 0,6.491 8.881,11.957 14.996,12.867 0.383,0.058 0.781,0.086 1.182,0.086 1.528,0 3.001,-0.416 4.425,-0.817 1.436,-0.405 2.92,-0.824 4.474,-0.824 0.413,0 0.824,0.03 1.22,0.089 13.326,1.986 15.562,6.703 15.026,14.712 -2.567,9.616 -8.209,22.441 -11.942,30.928 l -0.564,1.276 z"
+       id="path92"
+       inkscape:connector-curvature="0" /><path
+       style="fill:#f5fbfd"
+       d="m 272.741,370.792 c 0.736,2.319 1.466,4.644 1.632,5.632 l -2.904,16.661 -0.015,0.084 0.014,0.084 c 0.587,3.499 1.847,6.911 3.065,10.21 1.57,4.253 3.191,8.644 3.335,13.193 -3.276,-0.657 -13.81,-1.05 -15.387,-1.05 h -0.203 l -0.146,0.141 -0.837,0.813 -0.646,0.627 -0.152,0.147 v 0.211 c 0,4.531 5.786,11.712 15.208,13.115 0.395,0.059 0.806,0.089 1.22,0.089 1.563,0 3.053,-0.42 4.493,-0.827 1.419,-0.4 2.886,-0.814 4.405,-0.814 0.401,0 0.799,0.029 1.183,0.086 6.37,0.949 10.356,2.524 12.543,4.956 1.889,2.101 2.57,4.926 2.274,9.443 -2.575,9.637 -8.198,22.421 -11.921,30.884 l -0.492,1.119 c -1.796,-0.194 -3.65,-0.493 -5.523,-0.892 0.49,-10.702 -2.377,-14.926 -5.995,-20.255 -2.042,-3.008 -4.355,-6.415 -6.378,-11.602 0.24,-3.093 1.931,-4.057 3.425,-4.908 1.301,-0.741 2.646,-1.507 2.116,-3.56 l -0.022,-0.087 -0.051,-0.074 c -0.104,-0.149 -0.104,-0.149 -1.306,-0.59 -2.321,-0.852 -8.485,-3.114 -11.299,-4.905 -6.822,-4.343 -13.743,-13.431 -20.573,-27.018 5.101,-13.665 15.618,-24.897 28.937,-30.913 m 0.307,-0.685 c -13.74,6.037 -24.57,17.472 -29.787,31.631 6.597,13.166 13.598,22.794 20.849,27.409 3.621,2.305 12.398,5.266 12.462,5.359 0.955,3.699 -5.15,2.093 -5.564,8.419 5.597,14.445 13.27,15.045 12.359,32.179 2.078,0.457 4.195,0.811 6.354,1.028 3.832,-8.726 9.872,-22.225 12.598,-32.457 0.557,-8.315 -1.871,-12.984 -15.239,-14.975 -0.427,-0.064 -0.846,-0.092 -1.257,-0.092 -3.144,0 -5.88,1.641 -8.898,1.641 -0.377,0 -0.759,-0.026 -1.146,-0.083 -6.077,-0.905 -14.782,-6.232 -14.782,-12.62 0.494,-0.48 0.989,-0.96 1.483,-1.44 1.956,0 13.993,0.484 15.897,1.198 0,-8.417 -5.042,-15.941 -6.416,-24.133 0.972,-5.58 1.945,-11.162 2.918,-16.743 -0.154,-1.05 -1.001,-3.704 -1.831,-6.321 l 0,0 z"
+       id="path94"
+       inkscape:connector-curvature="0" /></g><g
+     id="g96"
+     transform="translate(-199.80201,-323.493)"><linearGradient
+       id="SVGID_8_"
+       gradientUnits="userSpaceOnUse"
+       x1="272.82639"
+       y1="368.33749"
+       x2="272.82639"
+       y2="475.51071"><stop
+         offset="0"
+         style="stop-color:#D1DBE8"
+         id="stop99" /><stop
+         offset="1"
+         style="stop-color:#C4CDDC"
+         id="stop101" /></linearGradient><path
+       style="fill:url(#SVGID_8_);fill-rule:evenodd"
+       d="m 287.081,428.701 c -4.097,-0.61 -7.409,2.046 -11.301,1.466 -6.077,-0.905 -14.782,-6.232 -14.782,-12.62 0.494,-0.48 0.989,-0.96 1.483,-1.44 1.956,0 13.993,0.484 15.897,1.198 0,-8.417 -5.042,-15.941 -6.416,-24.133 0.972,-5.58 1.945,-11.162 2.918,-16.743 -0.154,-1.05 -1.001,-3.704 -1.831,-6.321 -13.74,6.037 -24.57,17.472 -29.787,31.631 6.597,13.166 13.598,22.794 20.849,27.409 3.621,2.305 12.398,5.266 12.462,5.359 0.955,3.699 -5.15,2.093 -5.564,8.419 5.597,14.445 13.187,15.646 12.276,32.78 2.078,0.457 4.047,0.713 6.206,0.93 2.76103,-10.7429 8.89487,-23.77947 12.829,-32.96 0.556,-8.315 -1.871,-12.984 -15.239,-14.975 z"
+       id="path103"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="cccccccccccccccc" /></g><path
+     style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+     d="m 143.92999,71.247 c -2.151,-3.9 -5.028,-7.893 -8.025,-11.143"
+     id="path105"
+     inkscape:connector-curvature="0" /><path
+     style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+     d="m 132.77899,56.97 c -1.308,-1.156 -3.383,-3.07 -4.992,-4.109"
+     id="path107"
+     inkscape:connector-curvature="0" /><path
+     style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+     d="m 73.432991,46.99 c -14.161,6.084 -24.626,17.909 -29.827,32.251"
+     id="path109"
+     inkscape:connector-curvature="0" /><g
+     id="g111"
+     transform="translate(-199.80201,-323.493)"><path
+       style="fill:#e1dfe2;fill-rule:evenodd"
+       d="m 295.344,476.415 c -30.44,0 -55.144,-24.514 -55.476,-54.876 -0.002,0.206 -0.016,0.409 -0.016,0.616 0,30.647 24.844,55.492 55.492,55.492 30.647,0 57.06855,-24.52869 55.492,-55.492 -0.0105,-0.2067 -0.013,-0.41 -0.016,-0.616 -0.48966,30.20434 -25.035,54.876 -55.476,54.876 z"
+       id="path113"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="scssscs" /></g><path
+     style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+     d="M 90.267991,152.213"
+     id="path115"
+     inkscape:connector-curvature="0" /><path
+     style="fill:none;stroke:#436997;stroke-width:1;stroke-miterlimit:10"
+     d="M 83.481991,151.099"
+     id="path117"
+     inkscape:connector-curvature="0" /><g
+     id="g121"
+     transform="translate(-199.80201,-323.493)"><path
+       style="fill:#37577e;fill-rule:evenodd"
+       d="m 295.344,366.659 c 30.441,0 54.98834,24.98797 55.476,54.878 0.002,-0.205 0.0107,-0.40807 0.016,-0.614 0.78828,-30.647 -24.845,-55.492 -55.492,-55.492 -30.647,0 -55.492,24.845 -55.492,55.492 0,0.206 0.013,0.408 0.016,0.614 0.331,-30.363 25.035,-54.878 55.476,-54.878 z"
+       id="path123"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="scssscs" /></g></svg>
\ No newline at end of file
diff --git a/resources/images/add-meta.sh b/resources/images/add-meta.sh
new file mode 100755 (executable)
index 0000000..f5fcb86
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/bash
+#
+# Script to assign meta data to images
+#
+# Usage: add_meta.sh metafile.xmp image-files
+#
+if [ $# -eq 0 ]
+then
+echo "Usage: add_meta metafile.xmp image-files"
+else
+echo "Processing meta information..."
+template_file=$1
+num_files=$#
+xmp_ext=".xmp"
+for (( i=1; i<$num_files; i++ ))
+do
+  file_name=$2
+  echo $file_name
+  base_name="${file_name%.*}"
+  xmp_file=$base_name$xmp_ext
+  cp $template_file $xmp_file
+  exiv2 -ixX $file_name
+  rm $xmp_file
+  shift
+done
+fi
+
diff --git a/resources/images/animatedLoading.gif b/resources/images/animatedLoading.gif
new file mode 100644 (file)
index 0000000..48f65ad
Binary files /dev/null and b/resources/images/animatedLoading.gif differ
diff --git a/resources/images/animation-list.png b/resources/images/animation-list.png
new file mode 100644 (file)
index 0000000..48a7d29
Binary files /dev/null and b/resources/images/animation-list.png differ
diff --git a/resources/images/apache-licence.xmp b/resources/images/apache-licence.xmp
new file mode 100644 (file)
index 0000000..99e688a
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 4.4.0-Exiv2">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+  <rdf:Description rdf:about=""
+    xmlns:xmp="http://ns.adobe.com/xap/1.0/"
+    xmlns:tiff="http://ns.adobe.com/tiff/1.0/"
+    xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmp:CreatorTool="Kipi-plugins-2.5.0"
+   tiff:Software="Kipi-plugins-2.5.0">
+   <dc:rights>
+    <rdf:Alt>
+     <rdf:li xml:lang="x-default">Copyright (c) 2014 Samsung Electronics, under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0</rdf:li>
+    </rdf:Alt>
+   </dc:rights>
+  </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
diff --git a/resources/images/application-icon-0.png b/resources/images/application-icon-0.png
new file mode 100644 (file)
index 0000000..339b19c
Binary files /dev/null and b/resources/images/application-icon-0.png differ
diff --git a/resources/images/application-icon-1.png b/resources/images/application-icon-1.png
new file mode 100644 (file)
index 0000000..2d8ab53
Binary files /dev/null and b/resources/images/application-icon-1.png differ
diff --git a/resources/images/application-icon-10.png b/resources/images/application-icon-10.png
new file mode 100644 (file)
index 0000000..d4f971d
Binary files /dev/null and b/resources/images/application-icon-10.png differ
diff --git a/resources/images/application-icon-100.png b/resources/images/application-icon-100.png
new file mode 100644 (file)
index 0000000..435b66e
Binary files /dev/null and b/resources/images/application-icon-100.png differ
diff --git a/resources/images/application-icon-101.png b/resources/images/application-icon-101.png
new file mode 100644 (file)
index 0000000..71e46dd
Binary files /dev/null and b/resources/images/application-icon-101.png differ
diff --git a/resources/images/application-icon-102.png b/resources/images/application-icon-102.png
new file mode 100644 (file)
index 0000000..0bd01dd
Binary files /dev/null and b/resources/images/application-icon-102.png differ
diff --git a/resources/images/application-icon-103.png b/resources/images/application-icon-103.png
new file mode 100644 (file)
index 0000000..d362cbc
Binary files /dev/null and b/resources/images/application-icon-103.png differ
diff --git a/resources/images/application-icon-104.png b/resources/images/application-icon-104.png
new file mode 100644 (file)
index 0000000..dfb2de9
Binary files /dev/null and b/resources/images/application-icon-104.png differ
diff --git a/resources/images/application-icon-105.png b/resources/images/application-icon-105.png
new file mode 100644 (file)
index 0000000..0240cfa
Binary files /dev/null and b/resources/images/application-icon-105.png differ
diff --git a/resources/images/application-icon-106.png b/resources/images/application-icon-106.png
new file mode 100644 (file)
index 0000000..429467e
Binary files /dev/null and b/resources/images/application-icon-106.png differ
diff --git a/resources/images/application-icon-107.png b/resources/images/application-icon-107.png
new file mode 100644 (file)
index 0000000..fccbfc2
Binary files /dev/null and b/resources/images/application-icon-107.png differ
diff --git a/resources/images/application-icon-108.png b/resources/images/application-icon-108.png
new file mode 100644 (file)
index 0000000..3e1a087
Binary files /dev/null and b/resources/images/application-icon-108.png differ
diff --git a/resources/images/application-icon-109.png b/resources/images/application-icon-109.png
new file mode 100644 (file)
index 0000000..b9893fd
Binary files /dev/null and b/resources/images/application-icon-109.png differ
diff --git a/resources/images/application-icon-11.png b/resources/images/application-icon-11.png
new file mode 100644 (file)
index 0000000..88244f3
Binary files /dev/null and b/resources/images/application-icon-11.png differ
diff --git a/resources/images/application-icon-110.png b/resources/images/application-icon-110.png
new file mode 100644 (file)
index 0000000..e0c805d
Binary files /dev/null and b/resources/images/application-icon-110.png differ
diff --git a/resources/images/application-icon-111.png b/resources/images/application-icon-111.png
new file mode 100644 (file)
index 0000000..d9c37f0
Binary files /dev/null and b/resources/images/application-icon-111.png differ
diff --git a/resources/images/application-icon-112.png b/resources/images/application-icon-112.png
new file mode 100644 (file)
index 0000000..d1fd423
Binary files /dev/null and b/resources/images/application-icon-112.png differ
diff --git a/resources/images/application-icon-113.png b/resources/images/application-icon-113.png
new file mode 100644 (file)
index 0000000..4e92fda
Binary files /dev/null and b/resources/images/application-icon-113.png differ
diff --git a/resources/images/application-icon-114.png b/resources/images/application-icon-114.png
new file mode 100644 (file)
index 0000000..462a8ba
Binary files /dev/null and b/resources/images/application-icon-114.png differ
diff --git a/resources/images/application-icon-115.png b/resources/images/application-icon-115.png
new file mode 100644 (file)
index 0000000..ad63c1d
Binary files /dev/null and b/resources/images/application-icon-115.png differ
diff --git a/resources/images/application-icon-116.png b/resources/images/application-icon-116.png
new file mode 100644 (file)
index 0000000..da8cd95
Binary files /dev/null and b/resources/images/application-icon-116.png differ
diff --git a/resources/images/application-icon-117.png b/resources/images/application-icon-117.png
new file mode 100644 (file)
index 0000000..dc9e2c1
Binary files /dev/null and b/resources/images/application-icon-117.png differ
diff --git a/resources/images/application-icon-118.png b/resources/images/application-icon-118.png
new file mode 100644 (file)
index 0000000..a239cfa
Binary files /dev/null and b/resources/images/application-icon-118.png differ
diff --git a/resources/images/application-icon-119.png b/resources/images/application-icon-119.png
new file mode 100644 (file)
index 0000000..b5c4957
Binary files /dev/null and b/resources/images/application-icon-119.png differ
diff --git a/resources/images/application-icon-12.png b/resources/images/application-icon-12.png
new file mode 100644 (file)
index 0000000..10e1d17
Binary files /dev/null and b/resources/images/application-icon-12.png differ
diff --git a/resources/images/application-icon-120.png b/resources/images/application-icon-120.png
new file mode 100644 (file)
index 0000000..0ec34b6
Binary files /dev/null and b/resources/images/application-icon-120.png differ
diff --git a/resources/images/application-icon-121.png b/resources/images/application-icon-121.png
new file mode 100644 (file)
index 0000000..787bfb4
Binary files /dev/null and b/resources/images/application-icon-121.png differ
diff --git a/resources/images/application-icon-122.png b/resources/images/application-icon-122.png
new file mode 100644 (file)
index 0000000..aed2287
Binary files /dev/null and b/resources/images/application-icon-122.png differ
diff --git a/resources/images/application-icon-123.png b/resources/images/application-icon-123.png
new file mode 100644 (file)
index 0000000..552e6a1
Binary files /dev/null and b/resources/images/application-icon-123.png differ
diff --git a/resources/images/application-icon-124.png b/resources/images/application-icon-124.png
new file mode 100644 (file)
index 0000000..552e6a1
Binary files /dev/null and b/resources/images/application-icon-124.png differ
diff --git a/resources/images/application-icon-125.png b/resources/images/application-icon-125.png
new file mode 100644 (file)
index 0000000..58baa5b
Binary files /dev/null and b/resources/images/application-icon-125.png differ
diff --git a/resources/images/application-icon-126.png b/resources/images/application-icon-126.png
new file mode 100644 (file)
index 0000000..8ee674c
Binary files /dev/null and b/resources/images/application-icon-126.png differ
diff --git a/resources/images/application-icon-127.png b/resources/images/application-icon-127.png
new file mode 100644 (file)
index 0000000..5e7d7ff
Binary files /dev/null and b/resources/images/application-icon-127.png differ
diff --git a/resources/images/application-icon-128.png b/resources/images/application-icon-128.png
new file mode 100644 (file)
index 0000000..0675bdf
Binary files /dev/null and b/resources/images/application-icon-128.png differ
diff --git a/resources/images/application-icon-129.png b/resources/images/application-icon-129.png
new file mode 100644 (file)
index 0000000..5d47c3d
Binary files /dev/null and b/resources/images/application-icon-129.png differ
diff --git a/resources/images/application-icon-13.png b/resources/images/application-icon-13.png
new file mode 100644 (file)
index 0000000..6745ad8
Binary files /dev/null and b/resources/images/application-icon-13.png differ
diff --git a/resources/images/application-icon-130.png b/resources/images/application-icon-130.png
new file mode 100644 (file)
index 0000000..e3e72f5
Binary files /dev/null and b/resources/images/application-icon-130.png differ
diff --git a/resources/images/application-icon-131.png b/resources/images/application-icon-131.png
new file mode 100644 (file)
index 0000000..6fd0bc1
Binary files /dev/null and b/resources/images/application-icon-131.png differ
diff --git a/resources/images/application-icon-132.png b/resources/images/application-icon-132.png
new file mode 100644 (file)
index 0000000..a33ef22
Binary files /dev/null and b/resources/images/application-icon-132.png differ
diff --git a/resources/images/application-icon-133.png b/resources/images/application-icon-133.png
new file mode 100644 (file)
index 0000000..ab9b7af
Binary files /dev/null and b/resources/images/application-icon-133.png differ
diff --git a/resources/images/application-icon-134.png b/resources/images/application-icon-134.png
new file mode 100644 (file)
index 0000000..bfacb62
Binary files /dev/null and b/resources/images/application-icon-134.png differ
diff --git a/resources/images/application-icon-135.png b/resources/images/application-icon-135.png
new file mode 100644 (file)
index 0000000..6b9658d
Binary files /dev/null and b/resources/images/application-icon-135.png differ
diff --git a/resources/images/application-icon-136.png b/resources/images/application-icon-136.png
new file mode 100644 (file)
index 0000000..4c1b4eb
Binary files /dev/null and b/resources/images/application-icon-136.png differ
diff --git a/resources/images/application-icon-137.png b/resources/images/application-icon-137.png
new file mode 100644 (file)
index 0000000..47896fb
Binary files /dev/null and b/resources/images/application-icon-137.png differ
diff --git a/resources/images/application-icon-138.png b/resources/images/application-icon-138.png
new file mode 100644 (file)
index 0000000..431435c
Binary files /dev/null and b/resources/images/application-icon-138.png differ
diff --git a/resources/images/application-icon-139.png b/resources/images/application-icon-139.png
new file mode 100644 (file)
index 0000000..aa949fd
Binary files /dev/null and b/resources/images/application-icon-139.png differ
diff --git a/resources/images/application-icon-14.png b/resources/images/application-icon-14.png
new file mode 100644 (file)
index 0000000..42334b6
Binary files /dev/null and b/resources/images/application-icon-14.png differ
diff --git a/resources/images/application-icon-140.png b/resources/images/application-icon-140.png
new file mode 100644 (file)
index 0000000..616d4c5
Binary files /dev/null and b/resources/images/application-icon-140.png differ
diff --git a/resources/images/application-icon-141.png b/resources/images/application-icon-141.png
new file mode 100644 (file)
index 0000000..7d684f8
Binary files /dev/null and b/resources/images/application-icon-141.png differ
diff --git a/resources/images/application-icon-142.png b/resources/images/application-icon-142.png
new file mode 100644 (file)
index 0000000..b12ced8
Binary files /dev/null and b/resources/images/application-icon-142.png differ
diff --git a/resources/images/application-icon-143.png b/resources/images/application-icon-143.png
new file mode 100644 (file)
index 0000000..de76ed3
Binary files /dev/null and b/resources/images/application-icon-143.png differ
diff --git a/resources/images/application-icon-144.png b/resources/images/application-icon-144.png
new file mode 100644 (file)
index 0000000..bf8071e
Binary files /dev/null and b/resources/images/application-icon-144.png differ
diff --git a/resources/images/application-icon-145.png b/resources/images/application-icon-145.png
new file mode 100644 (file)
index 0000000..12c7c43
Binary files /dev/null and b/resources/images/application-icon-145.png differ
diff --git a/resources/images/application-icon-146.png b/resources/images/application-icon-146.png
new file mode 100644 (file)
index 0000000..74205c0
Binary files /dev/null and b/resources/images/application-icon-146.png differ
diff --git a/resources/images/application-icon-147.png b/resources/images/application-icon-147.png
new file mode 100644 (file)
index 0000000..48839b0
Binary files /dev/null and b/resources/images/application-icon-147.png differ
diff --git a/resources/images/application-icon-15.png b/resources/images/application-icon-15.png
new file mode 100644 (file)
index 0000000..1e4e077
Binary files /dev/null and b/resources/images/application-icon-15.png differ
diff --git a/resources/images/application-icon-16.png b/resources/images/application-icon-16.png
new file mode 100644 (file)
index 0000000..1508e92
Binary files /dev/null and b/resources/images/application-icon-16.png differ
diff --git a/resources/images/application-icon-17.png b/resources/images/application-icon-17.png
new file mode 100644 (file)
index 0000000..5dbb3b3
Binary files /dev/null and b/resources/images/application-icon-17.png differ
diff --git a/resources/images/application-icon-18.png b/resources/images/application-icon-18.png
new file mode 100644 (file)
index 0000000..f2205b8
Binary files /dev/null and b/resources/images/application-icon-18.png differ
diff --git a/resources/images/application-icon-19.png b/resources/images/application-icon-19.png
new file mode 100644 (file)
index 0000000..86f7b24
Binary files /dev/null and b/resources/images/application-icon-19.png differ
diff --git a/resources/images/application-icon-2.png b/resources/images/application-icon-2.png
new file mode 100644 (file)
index 0000000..c10b969
Binary files /dev/null and b/resources/images/application-icon-2.png differ
diff --git a/resources/images/application-icon-20.png b/resources/images/application-icon-20.png
new file mode 100644 (file)
index 0000000..aecb4a6
Binary files /dev/null and b/resources/images/application-icon-20.png differ
diff --git a/resources/images/application-icon-21.png b/resources/images/application-icon-21.png
new file mode 100644 (file)
index 0000000..f5b1418
Binary files /dev/null and b/resources/images/application-icon-21.png differ
diff --git a/resources/images/application-icon-22.png b/resources/images/application-icon-22.png
new file mode 100644 (file)
index 0000000..4221262
Binary files /dev/null and b/resources/images/application-icon-22.png differ
diff --git a/resources/images/application-icon-23.png b/resources/images/application-icon-23.png
new file mode 100644 (file)
index 0000000..4e7507b
Binary files /dev/null and b/resources/images/application-icon-23.png differ
diff --git a/resources/images/application-icon-24.png b/resources/images/application-icon-24.png
new file mode 100644 (file)
index 0000000..680257c
Binary files /dev/null and b/resources/images/application-icon-24.png differ
diff --git a/resources/images/application-icon-25.png b/resources/images/application-icon-25.png
new file mode 100644 (file)
index 0000000..a404573
Binary files /dev/null and b/resources/images/application-icon-25.png differ
diff --git a/resources/images/application-icon-26.png b/resources/images/application-icon-26.png
new file mode 100644 (file)
index 0000000..10138e5
Binary files /dev/null and b/resources/images/application-icon-26.png differ
diff --git a/resources/images/application-icon-27.png b/resources/images/application-icon-27.png
new file mode 100644 (file)
index 0000000..5dbb3b3
Binary files /dev/null and b/resources/images/application-icon-27.png differ
diff --git a/resources/images/application-icon-28.png b/resources/images/application-icon-28.png
new file mode 100644 (file)
index 0000000..1d71a31
Binary files /dev/null and b/resources/images/application-icon-28.png differ
diff --git a/resources/images/application-icon-29.png b/resources/images/application-icon-29.png
new file mode 100644 (file)
index 0000000..040c36b
Binary files /dev/null and b/resources/images/application-icon-29.png differ
diff --git a/resources/images/application-icon-3.png b/resources/images/application-icon-3.png
new file mode 100644 (file)
index 0000000..6d8dd51
Binary files /dev/null and b/resources/images/application-icon-3.png differ
diff --git a/resources/images/application-icon-30.png b/resources/images/application-icon-30.png
new file mode 100644 (file)
index 0000000..445590d
Binary files /dev/null and b/resources/images/application-icon-30.png differ
diff --git a/resources/images/application-icon-31.png b/resources/images/application-icon-31.png
new file mode 100644 (file)
index 0000000..622c6c4
Binary files /dev/null and b/resources/images/application-icon-31.png differ
diff --git a/resources/images/application-icon-32.png b/resources/images/application-icon-32.png
new file mode 100644 (file)
index 0000000..85cbcbc
Binary files /dev/null and b/resources/images/application-icon-32.png differ
diff --git a/resources/images/application-icon-33.png b/resources/images/application-icon-33.png
new file mode 100644 (file)
index 0000000..6d34c4c
Binary files /dev/null and b/resources/images/application-icon-33.png differ
diff --git a/resources/images/application-icon-34.png b/resources/images/application-icon-34.png
new file mode 100644 (file)
index 0000000..5b3a9da
Binary files /dev/null and b/resources/images/application-icon-34.png differ
diff --git a/resources/images/application-icon-35.png b/resources/images/application-icon-35.png
new file mode 100644 (file)
index 0000000..3e01c4b
Binary files /dev/null and b/resources/images/application-icon-35.png differ
diff --git a/resources/images/application-icon-36.png b/resources/images/application-icon-36.png
new file mode 100644 (file)
index 0000000..b4a6e61
Binary files /dev/null and b/resources/images/application-icon-36.png differ
diff --git a/resources/images/application-icon-37.png b/resources/images/application-icon-37.png
new file mode 100644 (file)
index 0000000..93ae9fa
Binary files /dev/null and b/resources/images/application-icon-37.png differ
diff --git a/resources/images/application-icon-38.png b/resources/images/application-icon-38.png
new file mode 100644 (file)
index 0000000..856ca9b
Binary files /dev/null and b/resources/images/application-icon-38.png differ
diff --git a/resources/images/application-icon-39.png b/resources/images/application-icon-39.png
new file mode 100644 (file)
index 0000000..269fb7a
Binary files /dev/null and b/resources/images/application-icon-39.png differ
diff --git a/resources/images/application-icon-4.png b/resources/images/application-icon-4.png
new file mode 100644 (file)
index 0000000..e56f659
Binary files /dev/null and b/resources/images/application-icon-4.png differ
diff --git a/resources/images/application-icon-40.png b/resources/images/application-icon-40.png
new file mode 100644 (file)
index 0000000..c6ad109
Binary files /dev/null and b/resources/images/application-icon-40.png differ
diff --git a/resources/images/application-icon-41.png b/resources/images/application-icon-41.png
new file mode 100644 (file)
index 0000000..72e0063
Binary files /dev/null and b/resources/images/application-icon-41.png differ
diff --git a/resources/images/application-icon-42.png b/resources/images/application-icon-42.png
new file mode 100644 (file)
index 0000000..2d8b20e
Binary files /dev/null and b/resources/images/application-icon-42.png differ
diff --git a/resources/images/application-icon-43.png b/resources/images/application-icon-43.png
new file mode 100644 (file)
index 0000000..792b76c
Binary files /dev/null and b/resources/images/application-icon-43.png differ
diff --git a/resources/images/application-icon-44.png b/resources/images/application-icon-44.png
new file mode 100644 (file)
index 0000000..248fc7c
Binary files /dev/null and b/resources/images/application-icon-44.png differ
diff --git a/resources/images/application-icon-45.png b/resources/images/application-icon-45.png
new file mode 100644 (file)
index 0000000..c39406b
Binary files /dev/null and b/resources/images/application-icon-45.png differ
diff --git a/resources/images/application-icon-46.png b/resources/images/application-icon-46.png
new file mode 100644 (file)
index 0000000..cb5e340
Binary files /dev/null and b/resources/images/application-icon-46.png differ
diff --git a/resources/images/application-icon-47.png b/resources/images/application-icon-47.png
new file mode 100644 (file)
index 0000000..1c95124
Binary files /dev/null and b/resources/images/application-icon-47.png differ
diff --git a/resources/images/application-icon-48.png b/resources/images/application-icon-48.png
new file mode 100644 (file)
index 0000000..d8cb704
Binary files /dev/null and b/resources/images/application-icon-48.png differ
diff --git a/resources/images/application-icon-49.png b/resources/images/application-icon-49.png
new file mode 100644 (file)
index 0000000..f8e86a0
Binary files /dev/null and b/resources/images/application-icon-49.png differ
diff --git a/resources/images/application-icon-5.png b/resources/images/application-icon-5.png
new file mode 100644 (file)
index 0000000..559bd6d
Binary files /dev/null and b/resources/images/application-icon-5.png differ
diff --git a/resources/images/application-icon-50.png b/resources/images/application-icon-50.png
new file mode 100644 (file)
index 0000000..0138610
Binary files /dev/null and b/resources/images/application-icon-50.png differ
diff --git a/resources/images/application-icon-51.png b/resources/images/application-icon-51.png
new file mode 100644 (file)
index 0000000..fae1ab7
Binary files /dev/null and b/resources/images/application-icon-51.png differ
diff --git a/resources/images/application-icon-52.png b/resources/images/application-icon-52.png
new file mode 100644 (file)
index 0000000..6026c78
Binary files /dev/null and b/resources/images/application-icon-52.png differ
diff --git a/resources/images/application-icon-53.png b/resources/images/application-icon-53.png
new file mode 100644 (file)
index 0000000..58d716f
Binary files /dev/null and b/resources/images/application-icon-53.png differ
diff --git a/resources/images/application-icon-54.png b/resources/images/application-icon-54.png
new file mode 100644 (file)
index 0000000..f2632bc
Binary files /dev/null and b/resources/images/application-icon-54.png differ
diff --git a/resources/images/application-icon-55.png b/resources/images/application-icon-55.png
new file mode 100644 (file)
index 0000000..787bfb4
Binary files /dev/null and b/resources/images/application-icon-55.png differ
diff --git a/resources/images/application-icon-56.png b/resources/images/application-icon-56.png
new file mode 100644 (file)
index 0000000..255fc38
Binary files /dev/null and b/resources/images/application-icon-56.png differ
diff --git a/resources/images/application-icon-57.png b/resources/images/application-icon-57.png
new file mode 100644 (file)
index 0000000..1548244
Binary files /dev/null and b/resources/images/application-icon-57.png differ
diff --git a/resources/images/application-icon-58.png b/resources/images/application-icon-58.png
new file mode 100644 (file)
index 0000000..6545c2d
Binary files /dev/null and b/resources/images/application-icon-58.png differ
diff --git a/resources/images/application-icon-59.png b/resources/images/application-icon-59.png
new file mode 100644 (file)
index 0000000..5907fbb
Binary files /dev/null and b/resources/images/application-icon-59.png differ
diff --git a/resources/images/application-icon-6.png b/resources/images/application-icon-6.png
new file mode 100644 (file)
index 0000000..1568377
Binary files /dev/null and b/resources/images/application-icon-6.png differ
diff --git a/resources/images/application-icon-60.png b/resources/images/application-icon-60.png
new file mode 100644 (file)
index 0000000..0b9ee36
Binary files /dev/null and b/resources/images/application-icon-60.png differ
diff --git a/resources/images/application-icon-61.png b/resources/images/application-icon-61.png
new file mode 100644 (file)
index 0000000..840396f
Binary files /dev/null and b/resources/images/application-icon-61.png differ
diff --git a/resources/images/application-icon-62.png b/resources/images/application-icon-62.png
new file mode 100644 (file)
index 0000000..befc036
Binary files /dev/null and b/resources/images/application-icon-62.png differ
diff --git a/resources/images/application-icon-63.png b/resources/images/application-icon-63.png
new file mode 100644 (file)
index 0000000..4a4e3f2
Binary files /dev/null and b/resources/images/application-icon-63.png differ
diff --git a/resources/images/application-icon-64.png b/resources/images/application-icon-64.png
new file mode 100644 (file)
index 0000000..a840b6c
Binary files /dev/null and b/resources/images/application-icon-64.png differ
diff --git a/resources/images/application-icon-65.png b/resources/images/application-icon-65.png
new file mode 100644 (file)
index 0000000..eb7bc1d
Binary files /dev/null and b/resources/images/application-icon-65.png differ
diff --git a/resources/images/application-icon-66.png b/resources/images/application-icon-66.png
new file mode 100644 (file)
index 0000000..096fc50
Binary files /dev/null and b/resources/images/application-icon-66.png differ
diff --git a/resources/images/application-icon-67.png b/resources/images/application-icon-67.png
new file mode 100644 (file)
index 0000000..d45492c
Binary files /dev/null and b/resources/images/application-icon-67.png differ
diff --git a/resources/images/application-icon-68.png b/resources/images/application-icon-68.png
new file mode 100644 (file)
index 0000000..19e9a4c
Binary files /dev/null and b/resources/images/application-icon-68.png differ
diff --git a/resources/images/application-icon-69.png b/resources/images/application-icon-69.png
new file mode 100644 (file)
index 0000000..9de33b2
Binary files /dev/null and b/resources/images/application-icon-69.png differ
diff --git a/resources/images/application-icon-7-RGB565.png b/resources/images/application-icon-7-RGB565.png
new file mode 100644 (file)
index 0000000..bdbc28b
Binary files /dev/null and b/resources/images/application-icon-7-RGB565.png differ
diff --git a/resources/images/application-icon-7.png b/resources/images/application-icon-7.png
new file mode 100644 (file)
index 0000000..33477d9
Binary files /dev/null and b/resources/images/application-icon-7.png differ
diff --git a/resources/images/application-icon-70.png b/resources/images/application-icon-70.png
new file mode 100644 (file)
index 0000000..c04f818
Binary files /dev/null and b/resources/images/application-icon-70.png differ
diff --git a/resources/images/application-icon-71.png b/resources/images/application-icon-71.png
new file mode 100644 (file)
index 0000000..b6d34bb
Binary files /dev/null and b/resources/images/application-icon-71.png differ
diff --git a/resources/images/application-icon-72.png b/resources/images/application-icon-72.png
new file mode 100644 (file)
index 0000000..337a287
Binary files /dev/null and b/resources/images/application-icon-72.png differ
diff --git a/resources/images/application-icon-73.png b/resources/images/application-icon-73.png
new file mode 100644 (file)
index 0000000..7e430da
Binary files /dev/null and b/resources/images/application-icon-73.png differ
diff --git a/resources/images/application-icon-74.png b/resources/images/application-icon-74.png
new file mode 100644 (file)
index 0000000..a873d85
Binary files /dev/null and b/resources/images/application-icon-74.png differ
diff --git a/resources/images/application-icon-75.png b/resources/images/application-icon-75.png
new file mode 100644 (file)
index 0000000..144c862
Binary files /dev/null and b/resources/images/application-icon-75.png differ
diff --git a/resources/images/application-icon-76.png b/resources/images/application-icon-76.png
new file mode 100644 (file)
index 0000000..9280111
Binary files /dev/null and b/resources/images/application-icon-76.png differ
diff --git a/resources/images/application-icon-77.png b/resources/images/application-icon-77.png
new file mode 100644 (file)
index 0000000..d362cbc
Binary files /dev/null and b/resources/images/application-icon-77.png differ
diff --git a/resources/images/application-icon-78.png b/resources/images/application-icon-78.png
new file mode 100644 (file)
index 0000000..a0306f3
Binary files /dev/null and b/resources/images/application-icon-78.png differ
diff --git a/resources/images/application-icon-79.png b/resources/images/application-icon-79.png
new file mode 100644 (file)
index 0000000..754490c
Binary files /dev/null and b/resources/images/application-icon-79.png differ
diff --git a/resources/images/application-icon-8.png b/resources/images/application-icon-8.png
new file mode 100644 (file)
index 0000000..e28eaec
Binary files /dev/null and b/resources/images/application-icon-8.png differ
diff --git a/resources/images/application-icon-80.png b/resources/images/application-icon-80.png
new file mode 100644 (file)
index 0000000..3d75ce2
Binary files /dev/null and b/resources/images/application-icon-80.png differ
diff --git a/resources/images/application-icon-81.png b/resources/images/application-icon-81.png
new file mode 100644 (file)
index 0000000..3b1b58d
Binary files /dev/null and b/resources/images/application-icon-81.png differ
diff --git a/resources/images/application-icon-82.png b/resources/images/application-icon-82.png
new file mode 100644 (file)
index 0000000..5719830
Binary files /dev/null and b/resources/images/application-icon-82.png differ
diff --git a/resources/images/application-icon-83.png b/resources/images/application-icon-83.png
new file mode 100644 (file)
index 0000000..b211532
Binary files /dev/null and b/resources/images/application-icon-83.png differ
diff --git a/resources/images/application-icon-84.png b/resources/images/application-icon-84.png
new file mode 100644 (file)
index 0000000..49d9f65
Binary files /dev/null and b/resources/images/application-icon-84.png differ
diff --git a/resources/images/application-icon-85.png b/resources/images/application-icon-85.png
new file mode 100644 (file)
index 0000000..a249388
Binary files /dev/null and b/resources/images/application-icon-85.png differ
diff --git a/resources/images/application-icon-86.png b/resources/images/application-icon-86.png
new file mode 100644 (file)
index 0000000..96e0405
Binary files /dev/null and b/resources/images/application-icon-86.png differ
diff --git a/resources/images/application-icon-87.png b/resources/images/application-icon-87.png
new file mode 100644 (file)
index 0000000..f0eee47
Binary files /dev/null and b/resources/images/application-icon-87.png differ
diff --git a/resources/images/application-icon-88.png b/resources/images/application-icon-88.png
new file mode 100644 (file)
index 0000000..5b6a331
Binary files /dev/null and b/resources/images/application-icon-88.png differ
diff --git a/resources/images/application-icon-89.png b/resources/images/application-icon-89.png
new file mode 100644 (file)
index 0000000..83f4581
Binary files /dev/null and b/resources/images/application-icon-89.png differ
diff --git a/resources/images/application-icon-9.png b/resources/images/application-icon-9.png
new file mode 100644 (file)
index 0000000..e819ff3
Binary files /dev/null and b/resources/images/application-icon-9.png differ
diff --git a/resources/images/application-icon-90.png b/resources/images/application-icon-90.png
new file mode 100644 (file)
index 0000000..eefd52b
Binary files /dev/null and b/resources/images/application-icon-90.png differ
diff --git a/resources/images/application-icon-91.png b/resources/images/application-icon-91.png
new file mode 100644 (file)
index 0000000..a2735dc
Binary files /dev/null and b/resources/images/application-icon-91.png differ
diff --git a/resources/images/application-icon-92.png b/resources/images/application-icon-92.png
new file mode 100644 (file)
index 0000000..6e875cf
Binary files /dev/null and b/resources/images/application-icon-92.png differ
diff --git a/resources/images/application-icon-93.png b/resources/images/application-icon-93.png
new file mode 100644 (file)
index 0000000..16fdd9c
Binary files /dev/null and b/resources/images/application-icon-93.png differ
diff --git a/resources/images/application-icon-94.png b/resources/images/application-icon-94.png
new file mode 100644 (file)
index 0000000..a9229f3
Binary files /dev/null and b/resources/images/application-icon-94.png differ
diff --git a/resources/images/application-icon-95.png b/resources/images/application-icon-95.png
new file mode 100644 (file)
index 0000000..754490c
Binary files /dev/null and b/resources/images/application-icon-95.png differ
diff --git a/resources/images/application-icon-96.png b/resources/images/application-icon-96.png
new file mode 100644 (file)
index 0000000..6e38c02
Binary files /dev/null and b/resources/images/application-icon-96.png differ
diff --git a/resources/images/application-icon-97.png b/resources/images/application-icon-97.png
new file mode 100644 (file)
index 0000000..46c9344
Binary files /dev/null and b/resources/images/application-icon-97.png differ
diff --git a/resources/images/application-icon-98.png b/resources/images/application-icon-98.png
new file mode 100644 (file)
index 0000000..92d4562
Binary files /dev/null and b/resources/images/application-icon-98.png differ
diff --git a/resources/images/application-icon-99.png b/resources/images/application-icon-99.png
new file mode 100644 (file)
index 0000000..4edb838
Binary files /dev/null and b/resources/images/application-icon-99.png differ
diff --git a/resources/images/background-1.jpg b/resources/images/background-1.jpg
new file mode 100644 (file)
index 0000000..fd3b06b
Binary files /dev/null and b/resources/images/background-1.jpg differ
diff --git a/resources/images/background-2.jpg b/resources/images/background-2.jpg
new file mode 100644 (file)
index 0000000..eeb1470
Binary files /dev/null and b/resources/images/background-2.jpg differ
diff --git a/resources/images/background-3.jpg b/resources/images/background-3.jpg
new file mode 100644 (file)
index 0000000..91a0d4b
Binary files /dev/null and b/resources/images/background-3.jpg differ
diff --git a/resources/images/background-4.jpg b/resources/images/background-4.jpg
new file mode 100644 (file)
index 0000000..63a2ae8
Binary files /dev/null and b/resources/images/background-4.jpg differ
diff --git a/resources/images/background-5.jpg b/resources/images/background-5.jpg
new file mode 100644 (file)
index 0000000..8228802
Binary files /dev/null and b/resources/images/background-5.jpg differ
diff --git a/resources/images/background-blocks.jpg b/resources/images/background-blocks.jpg
new file mode 100644 (file)
index 0000000..d8fed65
Binary files /dev/null and b/resources/images/background-blocks.jpg differ
diff --git a/resources/images/background-default.png b/resources/images/background-default.png
new file mode 100644 (file)
index 0000000..88f9fb7
Binary files /dev/null and b/resources/images/background-default.png differ
diff --git a/resources/images/background-gradient.jpg b/resources/images/background-gradient.jpg
new file mode 100644 (file)
index 0000000..22f16d7
Binary files /dev/null and b/resources/images/background-gradient.jpg differ
diff --git a/resources/images/background-magnifier.jpg b/resources/images/background-magnifier.jpg
new file mode 100644 (file)
index 0000000..10ecd34
Binary files /dev/null and b/resources/images/background-magnifier.jpg differ
diff --git a/resources/images/bevelled-cube-button.png b/resources/images/bevelled-cube-button.png
new file mode 100644 (file)
index 0000000..4fcd084
Binary files /dev/null and b/resources/images/bevelled-cube-button.png differ
diff --git a/resources/images/blocks-ball.png b/resources/images/blocks-ball.png
new file mode 100644 (file)
index 0000000..81e97d6
Binary files /dev/null and b/resources/images/blocks-ball.png differ
diff --git a/resources/images/blocks-brick-1.png b/resources/images/blocks-brick-1.png
new file mode 100644 (file)
index 0000000..3326c5e
Binary files /dev/null and b/resources/images/blocks-brick-1.png differ
diff --git a/resources/images/blocks-brick-2.png b/resources/images/blocks-brick-2.png
new file mode 100644 (file)
index 0000000..d1a910e
Binary files /dev/null and b/resources/images/blocks-brick-2.png differ
diff --git a/resources/images/blocks-brick-3.png b/resources/images/blocks-brick-3.png
new file mode 100644 (file)
index 0000000..0c5ffcf
Binary files /dev/null and b/resources/images/blocks-brick-3.png differ
diff --git a/resources/images/blocks-brick-4.png b/resources/images/blocks-brick-4.png
new file mode 100644 (file)
index 0000000..3451dc9
Binary files /dev/null and b/resources/images/blocks-brick-4.png differ
diff --git a/resources/images/blocks-paddle-handle.png b/resources/images/blocks-paddle-handle.png
new file mode 100644 (file)
index 0000000..615601b
Binary files /dev/null and b/resources/images/blocks-paddle-handle.png differ
diff --git a/resources/images/blocks-paddle.png b/resources/images/blocks-paddle.png
new file mode 100644 (file)
index 0000000..cc4c450
Binary files /dev/null and b/resources/images/blocks-paddle.png differ
diff --git a/resources/images/book-landscape-cover-back.jpg b/resources/images/book-landscape-cover-back.jpg
new file mode 100644 (file)
index 0000000..ca3b822
Binary files /dev/null and b/resources/images/book-landscape-cover-back.jpg differ
diff --git a/resources/images/book-landscape-cover.jpg b/resources/images/book-landscape-cover.jpg
new file mode 100644 (file)
index 0000000..d7039c4
Binary files /dev/null and b/resources/images/book-landscape-cover.jpg differ
diff --git a/resources/images/book-landscape-p1.jpg b/resources/images/book-landscape-p1.jpg
new file mode 100644 (file)
index 0000000..c169348
Binary files /dev/null and b/resources/images/book-landscape-p1.jpg differ
diff --git a/resources/images/book-landscape-p2.jpg b/resources/images/book-landscape-p2.jpg
new file mode 100644 (file)
index 0000000..360cce7
Binary files /dev/null and b/resources/images/book-landscape-p2.jpg differ
diff --git a/resources/images/book-landscape-p3.jpg b/resources/images/book-landscape-p3.jpg
new file mode 100644 (file)
index 0000000..4b914b7
Binary files /dev/null and b/resources/images/book-landscape-p3.jpg differ
diff --git a/resources/images/book-landscape-p4.jpg b/resources/images/book-landscape-p4.jpg
new file mode 100644 (file)
index 0000000..0677e2f
Binary files /dev/null and b/resources/images/book-landscape-p4.jpg differ
diff --git a/resources/images/book-landscape-p5.jpg b/resources/images/book-landscape-p5.jpg
new file mode 100644 (file)
index 0000000..8281d50
Binary files /dev/null and b/resources/images/book-landscape-p5.jpg differ
diff --git a/resources/images/book-landscape-p6.jpg b/resources/images/book-landscape-p6.jpg
new file mode 100644 (file)
index 0000000..e48ccdb
Binary files /dev/null and b/resources/images/book-landscape-p6.jpg differ
diff --git a/resources/images/book-landscape-p7.jpg b/resources/images/book-landscape-p7.jpg
new file mode 100644 (file)
index 0000000..6723821
Binary files /dev/null and b/resources/images/book-landscape-p7.jpg differ
diff --git a/resources/images/book-landscape-p8.jpg b/resources/images/book-landscape-p8.jpg
new file mode 100644 (file)
index 0000000..e8ac64b
Binary files /dev/null and b/resources/images/book-landscape-p8.jpg differ
diff --git a/resources/images/book-portrait-cover.jpg b/resources/images/book-portrait-cover.jpg
new file mode 100644 (file)
index 0000000..acf40c2
Binary files /dev/null and b/resources/images/book-portrait-cover.jpg differ
diff --git a/resources/images/book-portrait-p1.jpg b/resources/images/book-portrait-p1.jpg
new file mode 100644 (file)
index 0000000..40e3491
Binary files /dev/null and b/resources/images/book-portrait-p1.jpg differ
diff --git a/resources/images/book-portrait-p2.jpg b/resources/images/book-portrait-p2.jpg
new file mode 100644 (file)
index 0000000..e785e2d
Binary files /dev/null and b/resources/images/book-portrait-p2.jpg differ
diff --git a/resources/images/book-portrait-p3.jpg b/resources/images/book-portrait-p3.jpg
new file mode 100644 (file)
index 0000000..4f63e92
Binary files /dev/null and b/resources/images/book-portrait-p3.jpg differ
diff --git a/resources/images/book-portrait-p4.jpg b/resources/images/book-portrait-p4.jpg
new file mode 100644 (file)
index 0000000..2b6fcb4
Binary files /dev/null and b/resources/images/book-portrait-p4.jpg differ
diff --git a/resources/images/book-portrait-p5.jpg b/resources/images/book-portrait-p5.jpg
new file mode 100644 (file)
index 0000000..5137786
Binary files /dev/null and b/resources/images/book-portrait-p5.jpg differ
diff --git a/resources/images/book-portrait-p6.jpg b/resources/images/book-portrait-p6.jpg
new file mode 100644 (file)
index 0000000..cf7a5d9
Binary files /dev/null and b/resources/images/book-portrait-p6.jpg differ
diff --git a/resources/images/book-portrait-p7.jpg b/resources/images/book-portrait-p7.jpg
new file mode 100644 (file)
index 0000000..9aa2d7f
Binary files /dev/null and b/resources/images/book-portrait-p7.jpg differ
diff --git a/resources/images/book-portrait-p8.jpg b/resources/images/book-portrait-p8.jpg
new file mode 100644 (file)
index 0000000..6fa109b
Binary files /dev/null and b/resources/images/book-portrait-p8.jpg differ
diff --git a/resources/images/border-4px.9.png b/resources/images/border-4px.9.png
new file mode 100644 (file)
index 0000000..5fc97bb
Binary files /dev/null and b/resources/images/border-4px.9.png differ
diff --git a/resources/images/brick-wall.jpg b/resources/images/brick-wall.jpg
new file mode 100644 (file)
index 0000000..b1dd8ea
Binary files /dev/null and b/resources/images/brick-wall.jpg differ
diff --git a/resources/images/bubble-ball.png b/resources/images/bubble-ball.png
new file mode 100644 (file)
index 0000000..91e898d
Binary files /dev/null and b/resources/images/bubble-ball.png differ
diff --git a/resources/images/button-background.png b/resources/images/button-background.png
new file mode 100644 (file)
index 0000000..196f7df
Binary files /dev/null and b/resources/images/button-background.png differ
diff --git a/resources/images/button-disabled.9.png b/resources/images/button-disabled.9.png
new file mode 100644 (file)
index 0000000..36b3908
Binary files /dev/null and b/resources/images/button-disabled.9.png differ
diff --git a/resources/images/button-down-disabled.9.png b/resources/images/button-down-disabled.9.png
new file mode 100644 (file)
index 0000000..21084b2
Binary files /dev/null and b/resources/images/button-down-disabled.9.png differ
diff --git a/resources/images/button-down.9.png b/resources/images/button-down.9.png
new file mode 100644 (file)
index 0000000..f6e25ab
Binary files /dev/null and b/resources/images/button-down.9.png differ
diff --git a/resources/images/button-up-1.9.png b/resources/images/button-up-1.9.png
new file mode 100644 (file)
index 0000000..a2e2e01
Binary files /dev/null and b/resources/images/button-up-1.9.png differ
diff --git a/resources/images/button-up-10.9.png b/resources/images/button-up-10.9.png
new file mode 100644 (file)
index 0000000..3045787
Binary files /dev/null and b/resources/images/button-up-10.9.png differ
diff --git a/resources/images/button-up-11.9.png b/resources/images/button-up-11.9.png
new file mode 100644 (file)
index 0000000..0f0fd97
Binary files /dev/null and b/resources/images/button-up-11.9.png differ
diff --git a/resources/images/button-up-12.9.png b/resources/images/button-up-12.9.png
new file mode 100644 (file)
index 0000000..114673d
Binary files /dev/null and b/resources/images/button-up-12.9.png differ
diff --git a/resources/images/button-up-13.9.png b/resources/images/button-up-13.9.png
new file mode 100644 (file)
index 0000000..30d9f32
Binary files /dev/null and b/resources/images/button-up-13.9.png differ
diff --git a/resources/images/button-up-14.9.png b/resources/images/button-up-14.9.png
new file mode 100644 (file)
index 0000000..18d42c4
Binary files /dev/null and b/resources/images/button-up-14.9.png differ
diff --git a/resources/images/button-up-15.9.png b/resources/images/button-up-15.9.png
new file mode 100644 (file)
index 0000000..0a99c95
Binary files /dev/null and b/resources/images/button-up-15.9.png differ
diff --git a/resources/images/button-up-16.9.png b/resources/images/button-up-16.9.png
new file mode 100644 (file)
index 0000000..4c6f60e
Binary files /dev/null and b/resources/images/button-up-16.9.png differ
diff --git a/resources/images/button-up-17.9.png b/resources/images/button-up-17.9.png
new file mode 100644 (file)
index 0000000..5f3b4e6
Binary files /dev/null and b/resources/images/button-up-17.9.png differ
diff --git a/resources/images/button-up-2.9.png b/resources/images/button-up-2.9.png
new file mode 100644 (file)
index 0000000..fe5dcac
Binary files /dev/null and b/resources/images/button-up-2.9.png differ
diff --git a/resources/images/button-up-3.9.png b/resources/images/button-up-3.9.png
new file mode 100644 (file)
index 0000000..ba27124
Binary files /dev/null and b/resources/images/button-up-3.9.png differ
diff --git a/resources/images/button-up-4.9.png b/resources/images/button-up-4.9.png
new file mode 100644 (file)
index 0000000..3351201
Binary files /dev/null and b/resources/images/button-up-4.9.png differ
diff --git a/resources/images/button-up-5.9.png b/resources/images/button-up-5.9.png
new file mode 100644 (file)
index 0000000..4632e0b
Binary files /dev/null and b/resources/images/button-up-5.9.png differ
diff --git a/resources/images/button-up-6.9.png b/resources/images/button-up-6.9.png
new file mode 100644 (file)
index 0000000..428348d
Binary files /dev/null and b/resources/images/button-up-6.9.png differ
diff --git a/resources/images/button-up-7.9.png b/resources/images/button-up-7.9.png
new file mode 100644 (file)
index 0000000..ec065d2
Binary files /dev/null and b/resources/images/button-up-7.9.png differ
diff --git a/resources/images/button-up-8.9.png b/resources/images/button-up-8.9.png
new file mode 100644 (file)
index 0000000..b84f6e4
Binary files /dev/null and b/resources/images/button-up-8.9.png differ
diff --git a/resources/images/button-up-9.9.png b/resources/images/button-up-9.9.png
new file mode 100644 (file)
index 0000000..2bfab8b
Binary files /dev/null and b/resources/images/button-up-9.9.png differ
diff --git a/resources/images/button-white-up.9.png b/resources/images/button-white-up.9.png
new file mode 100644 (file)
index 0000000..814426c
Binary files /dev/null and b/resources/images/button-white-up.9.png differ
diff --git a/resources/images/circle1.png b/resources/images/circle1.png
new file mode 100644 (file)
index 0000000..8c0a690
Binary files /dev/null and b/resources/images/circle1.png differ
diff --git a/resources/images/circle2.png b/resources/images/circle2.png
new file mode 100644 (file)
index 0000000..1fc73a6
Binary files /dev/null and b/resources/images/circle2.png differ
diff --git a/resources/images/circle_point.png b/resources/images/circle_point.png
new file mode 100644 (file)
index 0000000..1fa2151
Binary files /dev/null and b/resources/images/circle_point.png differ
diff --git a/resources/images/circle_stroke_point.png b/resources/images/circle_stroke_point.png
new file mode 100644 (file)
index 0000000..c81d7a0
Binary files /dev/null and b/resources/images/circle_stroke_point.png differ
diff --git a/resources/images/cluster-background.png b/resources/images/cluster-background.png
new file mode 100644 (file)
index 0000000..ff72ac5
Binary files /dev/null and b/resources/images/cluster-background.png differ
diff --git a/resources/images/cluster-image-frame.png b/resources/images/cluster-image-frame.png
new file mode 100644 (file)
index 0000000..ca25d64
Binary files /dev/null and b/resources/images/cluster-image-frame.png differ
diff --git a/resources/images/cluster-image-shadow.png b/resources/images/cluster-image-shadow.png
new file mode 100644 (file)
index 0000000..515d0f1
Binary files /dev/null and b/resources/images/cluster-image-shadow.png differ
diff --git a/resources/images/com.samsung.dali-demo.ico b/resources/images/com.samsung.dali-demo.ico
new file mode 100644 (file)
index 0000000..c7a36dd
Binary files /dev/null and b/resources/images/com.samsung.dali-demo.ico differ
diff --git a/resources/images/com.samsung.dali-demo.png b/resources/images/com.samsung.dali-demo.png
new file mode 100644 (file)
index 0000000..6a18f3d
Binary files /dev/null and b/resources/images/com.samsung.dali-demo.png differ
diff --git a/resources/images/cone-button.png b/resources/images/cone-button.png
new file mode 100644 (file)
index 0000000..61d8307
Binary files /dev/null and b/resources/images/cone-button.png differ
diff --git a/resources/images/conical-frustum-button.png b/resources/images/conical-frustum-button.png
new file mode 100644 (file)
index 0000000..c14c7e1
Binary files /dev/null and b/resources/images/conical-frustum-button.png differ
diff --git a/resources/images/contact-cards-mask.png b/resources/images/contact-cards-mask.png
new file mode 100644 (file)
index 0000000..d2866c6
Binary files /dev/null and b/resources/images/contact-cards-mask.png differ
diff --git a/resources/images/contacts-background.png b/resources/images/contacts-background.png
new file mode 100644 (file)
index 0000000..f17835b
Binary files /dev/null and b/resources/images/contacts-background.png differ
diff --git a/resources/images/contacts-image.png b/resources/images/contacts-image.png
new file mode 100644 (file)
index 0000000..7ce7af5
Binary files /dev/null and b/resources/images/contacts-image.png differ
diff --git a/resources/images/cube-button.png b/resources/images/cube-button.png
new file mode 100644 (file)
index 0000000..1e49e09
Binary files /dev/null and b/resources/images/cube-button.png differ
diff --git a/resources/images/cylinder-button.png b/resources/images/cylinder-button.png
new file mode 100644 (file)
index 0000000..d2cc96c
Binary files /dev/null and b/resources/images/cylinder-button.png differ
diff --git a/resources/images/dali-examples.png b/resources/images/dali-examples.png
new file mode 100644 (file)
index 0000000..349b175
Binary files /dev/null and b/resources/images/dali-examples.png differ
diff --git a/resources/images/dali-logo-anim-001.png b/resources/images/dali-logo-anim-001.png
new file mode 100644 (file)
index 0000000..e7831d8
Binary files /dev/null and b/resources/images/dali-logo-anim-001.png differ
diff --git a/resources/images/dali-logo-anim-002.png b/resources/images/dali-logo-anim-002.png
new file mode 100644 (file)
index 0000000..de237d8
Binary files /dev/null and b/resources/images/dali-logo-anim-002.png differ
diff --git a/resources/images/dali-logo-anim-003.png b/resources/images/dali-logo-anim-003.png
new file mode 100644 (file)
index 0000000..db6c8a2
Binary files /dev/null and b/resources/images/dali-logo-anim-003.png differ
diff --git a/resources/images/dali-logo-anim-004.png b/resources/images/dali-logo-anim-004.png
new file mode 100644 (file)
index 0000000..0fa0cd5
Binary files /dev/null and b/resources/images/dali-logo-anim-004.png differ
diff --git a/resources/images/dali-logo-anim-005.png b/resources/images/dali-logo-anim-005.png
new file mode 100644 (file)
index 0000000..cf6f2f3
Binary files /dev/null and b/resources/images/dali-logo-anim-005.png differ
diff --git a/resources/images/dali-logo-anim-006.png b/resources/images/dali-logo-anim-006.png
new file mode 100644 (file)
index 0000000..7a7a4ab
Binary files /dev/null and b/resources/images/dali-logo-anim-006.png differ
diff --git a/resources/images/dali-logo-anim-007.png b/resources/images/dali-logo-anim-007.png
new file mode 100644 (file)
index 0000000..0525ee0
Binary files /dev/null and b/resources/images/dali-logo-anim-007.png differ
diff --git a/resources/images/dali-logo-anim-008.png b/resources/images/dali-logo-anim-008.png
new file mode 100644 (file)
index 0000000..739d968
Binary files /dev/null and b/resources/images/dali-logo-anim-008.png differ
diff --git a/resources/images/dali-logo-anim-009.png b/resources/images/dali-logo-anim-009.png
new file mode 100644 (file)
index 0000000..404610e
Binary files /dev/null and b/resources/images/dali-logo-anim-009.png differ
diff --git a/resources/images/dali-logo-anim-010.png b/resources/images/dali-logo-anim-010.png
new file mode 100644 (file)
index 0000000..a6d4eea
Binary files /dev/null and b/resources/images/dali-logo-anim-010.png differ
diff --git a/resources/images/dali-logo-anim-011.png b/resources/images/dali-logo-anim-011.png
new file mode 100644 (file)
index 0000000..96212b5
Binary files /dev/null and b/resources/images/dali-logo-anim-011.png differ
diff --git a/resources/images/dali-logo-anim-012.png b/resources/images/dali-logo-anim-012.png
new file mode 100644 (file)
index 0000000..df27db5
Binary files /dev/null and b/resources/images/dali-logo-anim-012.png differ
diff --git a/resources/images/dali-logo-anim-013.png b/resources/images/dali-logo-anim-013.png
new file mode 100644 (file)
index 0000000..8a355dd
Binary files /dev/null and b/resources/images/dali-logo-anim-013.png differ
diff --git a/resources/images/dali-logo-anim-014.png b/resources/images/dali-logo-anim-014.png
new file mode 100644 (file)
index 0000000..bfda98c
Binary files /dev/null and b/resources/images/dali-logo-anim-014.png differ
diff --git a/resources/images/dali-logo-anim-015.png b/resources/images/dali-logo-anim-015.png
new file mode 100644 (file)
index 0000000..a1fd13d
Binary files /dev/null and b/resources/images/dali-logo-anim-015.png differ
diff --git a/resources/images/dali-logo-anim.gif b/resources/images/dali-logo-anim.gif
new file mode 100644 (file)
index 0000000..9a085ba
Binary files /dev/null and b/resources/images/dali-logo-anim.gif differ
diff --git a/resources/images/dali-logo-static.gif b/resources/images/dali-logo-static.gif
new file mode 100644 (file)
index 0000000..5f032ed
Binary files /dev/null and b/resources/images/dali-logo-static.gif differ
diff --git a/resources/images/dali-logo.png b/resources/images/dali-logo.png
new file mode 100644 (file)
index 0000000..5c9f1da
Binary files /dev/null and b/resources/images/dali-logo.png differ
diff --git a/resources/images/dali-tests.png b/resources/images/dali-tests.png
new file mode 100644 (file)
index 0000000..42280e0
Binary files /dev/null and b/resources/images/dali-tests.png differ
diff --git a/resources/images/demo-tile-texture-focused.9.png b/resources/images/demo-tile-texture-focused.9.png
new file mode 100644 (file)
index 0000000..3236edd
Binary files /dev/null and b/resources/images/demo-tile-texture-focused.9.png differ
diff --git a/resources/images/demo-tile-texture.9.png b/resources/images/demo-tile-texture.9.png
new file mode 100644 (file)
index 0000000..e7a6a4d
Binary files /dev/null and b/resources/images/demo-tile-texture.9.png differ
diff --git a/resources/images/desktop_background_1440x2560.png b/resources/images/desktop_background_1440x2560.png
new file mode 100644 (file)
index 0000000..738703d
Binary files /dev/null and b/resources/images/desktop_background_1440x2560.png differ
diff --git a/resources/images/dog-anim-001.png b/resources/images/dog-anim-001.png
new file mode 100644 (file)
index 0000000..b8aa79d
Binary files /dev/null and b/resources/images/dog-anim-001.png differ
diff --git a/resources/images/dog-anim-002.png b/resources/images/dog-anim-002.png
new file mode 100644 (file)
index 0000000..e25eca4
Binary files /dev/null and b/resources/images/dog-anim-002.png differ
diff --git a/resources/images/dog-anim-003.png b/resources/images/dog-anim-003.png
new file mode 100644 (file)
index 0000000..a949af8
Binary files /dev/null and b/resources/images/dog-anim-003.png differ
diff --git a/resources/images/dog-anim-004.png b/resources/images/dog-anim-004.png
new file mode 100644 (file)
index 0000000..e232874
Binary files /dev/null and b/resources/images/dog-anim-004.png differ
diff --git a/resources/images/dog-anim-005.png b/resources/images/dog-anim-005.png
new file mode 100644 (file)
index 0000000..d03b442
Binary files /dev/null and b/resources/images/dog-anim-005.png differ
diff --git a/resources/images/dog-anim-006.png b/resources/images/dog-anim-006.png
new file mode 100644 (file)
index 0000000..7d5958d
Binary files /dev/null and b/resources/images/dog-anim-006.png differ
diff --git a/resources/images/dog-anim-007.png b/resources/images/dog-anim-007.png
new file mode 100644 (file)
index 0000000..74ac88e
Binary files /dev/null and b/resources/images/dog-anim-007.png differ
diff --git a/resources/images/dog-anim-008.png b/resources/images/dog-anim-008.png
new file mode 100644 (file)
index 0000000..c291229
Binary files /dev/null and b/resources/images/dog-anim-008.png differ
diff --git a/resources/images/dog-anim.gif b/resources/images/dog-anim.gif
new file mode 100644 (file)
index 0000000..ddc3312
Binary files /dev/null and b/resources/images/dog-anim.gif differ
diff --git a/resources/images/dog-static.gif b/resources/images/dog-static.gif
new file mode 100644 (file)
index 0000000..8fc537e
Binary files /dev/null and b/resources/images/dog-static.gif differ
diff --git a/resources/images/folder_appicon_empty_bg.png b/resources/images/folder_appicon_empty_bg.png
new file mode 100644 (file)
index 0000000..32a47a5
Binary files /dev/null and b/resources/images/folder_appicon_empty_bg.png differ
diff --git a/resources/images/folder_appicon_empty_open_bg.png b/resources/images/folder_appicon_empty_open_bg.png
new file mode 100644 (file)
index 0000000..01764ee
Binary files /dev/null and b/resources/images/folder_appicon_empty_open_bg.png differ
diff --git a/resources/images/frame-128x128.png b/resources/images/frame-128x128.png
new file mode 100644 (file)
index 0000000..c6e5cca
Binary files /dev/null and b/resources/images/frame-128x128.png differ
diff --git a/resources/images/gallery-large-1.jpg b/resources/images/gallery-large-1.jpg
new file mode 100644 (file)
index 0000000..fafd602
Binary files /dev/null and b/resources/images/gallery-large-1.jpg differ
diff --git a/resources/images/gallery-large-10.jpg b/resources/images/gallery-large-10.jpg
new file mode 100644 (file)
index 0000000..11bd590
Binary files /dev/null and b/resources/images/gallery-large-10.jpg differ
diff --git a/resources/images/gallery-large-11.jpg b/resources/images/gallery-large-11.jpg
new file mode 100644 (file)
index 0000000..beb415a
Binary files /dev/null and b/resources/images/gallery-large-11.jpg differ
diff --git a/resources/images/gallery-large-12.jpg b/resources/images/gallery-large-12.jpg
new file mode 100644 (file)
index 0000000..7173b85
Binary files /dev/null and b/resources/images/gallery-large-12.jpg differ
diff --git a/resources/images/gallery-large-13.jpg b/resources/images/gallery-large-13.jpg
new file mode 100644 (file)
index 0000000..c8188c6
Binary files /dev/null and b/resources/images/gallery-large-13.jpg differ
diff --git a/resources/images/gallery-large-14.jpg b/resources/images/gallery-large-14.jpg
new file mode 100644 (file)
index 0000000..382e7fc
Binary files /dev/null and b/resources/images/gallery-large-14.jpg differ
diff --git a/resources/images/gallery-large-14.wbmp b/resources/images/gallery-large-14.wbmp
new file mode 100644 (file)
index 0000000..1b9ac2d
Binary files /dev/null and b/resources/images/gallery-large-14.wbmp differ
diff --git a/resources/images/gallery-large-15.jpg b/resources/images/gallery-large-15.jpg
new file mode 100644 (file)
index 0000000..a18be2d
Binary files /dev/null and b/resources/images/gallery-large-15.jpg differ
diff --git a/resources/images/gallery-large-16.jpg b/resources/images/gallery-large-16.jpg
new file mode 100644 (file)
index 0000000..9c22fc7
Binary files /dev/null and b/resources/images/gallery-large-16.jpg differ
diff --git a/resources/images/gallery-large-17.jpg b/resources/images/gallery-large-17.jpg
new file mode 100644 (file)
index 0000000..4405083
Binary files /dev/null and b/resources/images/gallery-large-17.jpg differ
diff --git a/resources/images/gallery-large-18.jpg b/resources/images/gallery-large-18.jpg
new file mode 100644 (file)
index 0000000..5c1faf1
Binary files /dev/null and b/resources/images/gallery-large-18.jpg differ
diff --git a/resources/images/gallery-large-19.jpg b/resources/images/gallery-large-19.jpg
new file mode 100644 (file)
index 0000000..5a8ba63
Binary files /dev/null and b/resources/images/gallery-large-19.jpg differ
diff --git a/resources/images/gallery-large-2.jpg b/resources/images/gallery-large-2.jpg
new file mode 100644 (file)
index 0000000..7a12aed
Binary files /dev/null and b/resources/images/gallery-large-2.jpg differ
diff --git a/resources/images/gallery-large-20.jpg b/resources/images/gallery-large-20.jpg
new file mode 100644 (file)
index 0000000..78d25eb
Binary files /dev/null and b/resources/images/gallery-large-20.jpg differ
diff --git a/resources/images/gallery-large-21.jpg b/resources/images/gallery-large-21.jpg
new file mode 100644 (file)
index 0000000..fab796d
Binary files /dev/null and b/resources/images/gallery-large-21.jpg differ
diff --git a/resources/images/gallery-large-3.jpg b/resources/images/gallery-large-3.jpg
new file mode 100644 (file)
index 0000000..226f187
Binary files /dev/null and b/resources/images/gallery-large-3.jpg differ
diff --git a/resources/images/gallery-large-4.jpg b/resources/images/gallery-large-4.jpg
new file mode 100644 (file)
index 0000000..b528cdb
Binary files /dev/null and b/resources/images/gallery-large-4.jpg differ
diff --git a/resources/images/gallery-large-5.jpg b/resources/images/gallery-large-5.jpg
new file mode 100644 (file)
index 0000000..8dee462
Binary files /dev/null and b/resources/images/gallery-large-5.jpg differ
diff --git a/resources/images/gallery-large-6.jpg b/resources/images/gallery-large-6.jpg
new file mode 100644 (file)
index 0000000..b441e2b
Binary files /dev/null and b/resources/images/gallery-large-6.jpg differ
diff --git a/resources/images/gallery-large-7.jpg b/resources/images/gallery-large-7.jpg
new file mode 100644 (file)
index 0000000..155ab30
Binary files /dev/null and b/resources/images/gallery-large-7.jpg differ
diff --git a/resources/images/gallery-large-8.jpg b/resources/images/gallery-large-8.jpg
new file mode 100644 (file)
index 0000000..dbd383d
Binary files /dev/null and b/resources/images/gallery-large-8.jpg differ
diff --git a/resources/images/gallery-large-9.jpg b/resources/images/gallery-large-9.jpg
new file mode 100644 (file)
index 0000000..e855ecf
Binary files /dev/null and b/resources/images/gallery-large-9.jpg differ
diff --git a/resources/images/gallery-medium-1.jpg b/resources/images/gallery-medium-1.jpg
new file mode 100644 (file)
index 0000000..f6b9f25
Binary files /dev/null and b/resources/images/gallery-medium-1.jpg differ
diff --git a/resources/images/gallery-medium-10.jpg b/resources/images/gallery-medium-10.jpg
new file mode 100644 (file)
index 0000000..de5e133
Binary files /dev/null and b/resources/images/gallery-medium-10.jpg differ
diff --git a/resources/images/gallery-medium-11.jpg b/resources/images/gallery-medium-11.jpg
new file mode 100644 (file)
index 0000000..57c3d66
Binary files /dev/null and b/resources/images/gallery-medium-11.jpg differ
diff --git a/resources/images/gallery-medium-12.jpg b/resources/images/gallery-medium-12.jpg
new file mode 100644 (file)
index 0000000..74feaec
Binary files /dev/null and b/resources/images/gallery-medium-12.jpg differ
diff --git a/resources/images/gallery-medium-13.jpg b/resources/images/gallery-medium-13.jpg
new file mode 100644 (file)
index 0000000..b846825
Binary files /dev/null and b/resources/images/gallery-medium-13.jpg differ
diff --git a/resources/images/gallery-medium-14.jpg b/resources/images/gallery-medium-14.jpg
new file mode 100644 (file)
index 0000000..5f03bec
Binary files /dev/null and b/resources/images/gallery-medium-14.jpg differ
diff --git a/resources/images/gallery-medium-15.jpg b/resources/images/gallery-medium-15.jpg
new file mode 100644 (file)
index 0000000..9d9a137
Binary files /dev/null and b/resources/images/gallery-medium-15.jpg differ
diff --git a/resources/images/gallery-medium-16.jpg b/resources/images/gallery-medium-16.jpg
new file mode 100644 (file)
index 0000000..39e596d
Binary files /dev/null and b/resources/images/gallery-medium-16.jpg differ
diff --git a/resources/images/gallery-medium-17.jpg b/resources/images/gallery-medium-17.jpg
new file mode 100644 (file)
index 0000000..60acbfa
Binary files /dev/null and b/resources/images/gallery-medium-17.jpg differ
diff --git a/resources/images/gallery-medium-18.jpg b/resources/images/gallery-medium-18.jpg
new file mode 100644 (file)
index 0000000..a7d2add
Binary files /dev/null and b/resources/images/gallery-medium-18.jpg differ
diff --git a/resources/images/gallery-medium-19.jpg b/resources/images/gallery-medium-19.jpg
new file mode 100644 (file)
index 0000000..266269d
Binary files /dev/null and b/resources/images/gallery-medium-19.jpg differ
diff --git a/resources/images/gallery-medium-2.jpg b/resources/images/gallery-medium-2.jpg
new file mode 100644 (file)
index 0000000..6a427ad
Binary files /dev/null and b/resources/images/gallery-medium-2.jpg differ
diff --git a/resources/images/gallery-medium-20.jpg b/resources/images/gallery-medium-20.jpg
new file mode 100644 (file)
index 0000000..c44929d
Binary files /dev/null and b/resources/images/gallery-medium-20.jpg differ
diff --git a/resources/images/gallery-medium-21.jpg b/resources/images/gallery-medium-21.jpg
new file mode 100644 (file)
index 0000000..d6a63fb
Binary files /dev/null and b/resources/images/gallery-medium-21.jpg differ
diff --git a/resources/images/gallery-medium-22.jpg b/resources/images/gallery-medium-22.jpg
new file mode 100644 (file)
index 0000000..cfeba6a
Binary files /dev/null and b/resources/images/gallery-medium-22.jpg differ
diff --git a/resources/images/gallery-medium-23.jpg b/resources/images/gallery-medium-23.jpg
new file mode 100644 (file)
index 0000000..5d13d1c
Binary files /dev/null and b/resources/images/gallery-medium-23.jpg differ
diff --git a/resources/images/gallery-medium-24.jpg b/resources/images/gallery-medium-24.jpg
new file mode 100644 (file)
index 0000000..97319b3
Binary files /dev/null and b/resources/images/gallery-medium-24.jpg differ
diff --git a/resources/images/gallery-medium-25.jpg b/resources/images/gallery-medium-25.jpg
new file mode 100644 (file)
index 0000000..2f2b516
Binary files /dev/null and b/resources/images/gallery-medium-25.jpg differ
diff --git a/resources/images/gallery-medium-26.jpg b/resources/images/gallery-medium-26.jpg
new file mode 100644 (file)
index 0000000..9af5d02
Binary files /dev/null and b/resources/images/gallery-medium-26.jpg differ
diff --git a/resources/images/gallery-medium-27.jpg b/resources/images/gallery-medium-27.jpg
new file mode 100644 (file)
index 0000000..352c1ce
Binary files /dev/null and b/resources/images/gallery-medium-27.jpg differ
diff --git a/resources/images/gallery-medium-28.jpg b/resources/images/gallery-medium-28.jpg
new file mode 100644 (file)
index 0000000..022c8f3
Binary files /dev/null and b/resources/images/gallery-medium-28.jpg differ
diff --git a/resources/images/gallery-medium-29.jpg b/resources/images/gallery-medium-29.jpg
new file mode 100644 (file)
index 0000000..f7d2cc4
Binary files /dev/null and b/resources/images/gallery-medium-29.jpg differ
diff --git a/resources/images/gallery-medium-3.jpg b/resources/images/gallery-medium-3.jpg
new file mode 100644 (file)
index 0000000..30b1a51
Binary files /dev/null and b/resources/images/gallery-medium-3.jpg differ
diff --git a/resources/images/gallery-medium-30.jpg b/resources/images/gallery-medium-30.jpg
new file mode 100644 (file)
index 0000000..49ea26d
Binary files /dev/null and b/resources/images/gallery-medium-30.jpg differ
diff --git a/resources/images/gallery-medium-31.jpg b/resources/images/gallery-medium-31.jpg
new file mode 100644 (file)
index 0000000..eff521e
Binary files /dev/null and b/resources/images/gallery-medium-31.jpg differ
diff --git a/resources/images/gallery-medium-32.jpg b/resources/images/gallery-medium-32.jpg
new file mode 100644 (file)
index 0000000..030e554
Binary files /dev/null and b/resources/images/gallery-medium-32.jpg differ
diff --git a/resources/images/gallery-medium-33.jpg b/resources/images/gallery-medium-33.jpg
new file mode 100644 (file)
index 0000000..863df6d
Binary files /dev/null and b/resources/images/gallery-medium-33.jpg differ
diff --git a/resources/images/gallery-medium-34.jpg b/resources/images/gallery-medium-34.jpg
new file mode 100644 (file)
index 0000000..b533798
Binary files /dev/null and b/resources/images/gallery-medium-34.jpg differ
diff --git a/resources/images/gallery-medium-35.jpg b/resources/images/gallery-medium-35.jpg
new file mode 100644 (file)
index 0000000..ec76ee7
Binary files /dev/null and b/resources/images/gallery-medium-35.jpg differ
diff --git a/resources/images/gallery-medium-36.jpg b/resources/images/gallery-medium-36.jpg
new file mode 100644 (file)
index 0000000..728f528
Binary files /dev/null and b/resources/images/gallery-medium-36.jpg differ
diff --git a/resources/images/gallery-medium-37.jpg b/resources/images/gallery-medium-37.jpg
new file mode 100644 (file)
index 0000000..a3bbd0e
Binary files /dev/null and b/resources/images/gallery-medium-37.jpg differ
diff --git a/resources/images/gallery-medium-38.jpg b/resources/images/gallery-medium-38.jpg
new file mode 100644 (file)
index 0000000..d1da82f
Binary files /dev/null and b/resources/images/gallery-medium-38.jpg differ
diff --git a/resources/images/gallery-medium-39.jpg b/resources/images/gallery-medium-39.jpg
new file mode 100644 (file)
index 0000000..942e37a
Binary files /dev/null and b/resources/images/gallery-medium-39.jpg differ
diff --git a/resources/images/gallery-medium-4.jpg b/resources/images/gallery-medium-4.jpg
new file mode 100644 (file)
index 0000000..2da2ceb
Binary files /dev/null and b/resources/images/gallery-medium-4.jpg differ
diff --git a/resources/images/gallery-medium-40.jpg b/resources/images/gallery-medium-40.jpg
new file mode 100644 (file)
index 0000000..e42dba7
Binary files /dev/null and b/resources/images/gallery-medium-40.jpg differ
diff --git a/resources/images/gallery-medium-41.jpg b/resources/images/gallery-medium-41.jpg
new file mode 100644 (file)
index 0000000..b0a418a
Binary files /dev/null and b/resources/images/gallery-medium-41.jpg differ
diff --git a/resources/images/gallery-medium-42.jpg b/resources/images/gallery-medium-42.jpg
new file mode 100644 (file)
index 0000000..1fe2961
Binary files /dev/null and b/resources/images/gallery-medium-42.jpg differ
diff --git a/resources/images/gallery-medium-43.jpg b/resources/images/gallery-medium-43.jpg
new file mode 100644 (file)
index 0000000..2321c36
Binary files /dev/null and b/resources/images/gallery-medium-43.jpg differ
diff --git a/resources/images/gallery-medium-44.jpg b/resources/images/gallery-medium-44.jpg
new file mode 100644 (file)
index 0000000..61b3bef
Binary files /dev/null and b/resources/images/gallery-medium-44.jpg differ
diff --git a/resources/images/gallery-medium-45.jpg b/resources/images/gallery-medium-45.jpg
new file mode 100644 (file)
index 0000000..beba787
Binary files /dev/null and b/resources/images/gallery-medium-45.jpg differ
diff --git a/resources/images/gallery-medium-46.jpg b/resources/images/gallery-medium-46.jpg
new file mode 100644 (file)
index 0000000..7317ea5
Binary files /dev/null and b/resources/images/gallery-medium-46.jpg differ
diff --git a/resources/images/gallery-medium-47.jpg b/resources/images/gallery-medium-47.jpg
new file mode 100644 (file)
index 0000000..fe28fe0
Binary files /dev/null and b/resources/images/gallery-medium-47.jpg differ
diff --git a/resources/images/gallery-medium-48.jpg b/resources/images/gallery-medium-48.jpg
new file mode 100644 (file)
index 0000000..e8ffed9
Binary files /dev/null and b/resources/images/gallery-medium-48.jpg differ
diff --git a/resources/images/gallery-medium-49.jpg b/resources/images/gallery-medium-49.jpg
new file mode 100644 (file)
index 0000000..7dafa96
Binary files /dev/null and b/resources/images/gallery-medium-49.jpg differ
diff --git a/resources/images/gallery-medium-5.jpg b/resources/images/gallery-medium-5.jpg
new file mode 100644 (file)
index 0000000..902b711
Binary files /dev/null and b/resources/images/gallery-medium-5.jpg differ
diff --git a/resources/images/gallery-medium-50.jpg b/resources/images/gallery-medium-50.jpg
new file mode 100644 (file)
index 0000000..ae6e1b2
Binary files /dev/null and b/resources/images/gallery-medium-50.jpg differ
diff --git a/resources/images/gallery-medium-51.jpg b/resources/images/gallery-medium-51.jpg
new file mode 100644 (file)
index 0000000..69af56d
Binary files /dev/null and b/resources/images/gallery-medium-51.jpg differ
diff --git a/resources/images/gallery-medium-52.jpg b/resources/images/gallery-medium-52.jpg
new file mode 100644 (file)
index 0000000..ac65a2d
Binary files /dev/null and b/resources/images/gallery-medium-52.jpg differ
diff --git a/resources/images/gallery-medium-53.jpg b/resources/images/gallery-medium-53.jpg
new file mode 100644 (file)
index 0000000..ebf58b9
Binary files /dev/null and b/resources/images/gallery-medium-53.jpg differ
diff --git a/resources/images/gallery-medium-6.jpg b/resources/images/gallery-medium-6.jpg
new file mode 100644 (file)
index 0000000..490fb56
Binary files /dev/null and b/resources/images/gallery-medium-6.jpg differ
diff --git a/resources/images/gallery-medium-7.jpg b/resources/images/gallery-medium-7.jpg
new file mode 100644 (file)
index 0000000..607073b
Binary files /dev/null and b/resources/images/gallery-medium-7.jpg differ
diff --git a/resources/images/gallery-medium-8.jpg b/resources/images/gallery-medium-8.jpg
new file mode 100644 (file)
index 0000000..f95a6b8
Binary files /dev/null and b/resources/images/gallery-medium-8.jpg differ
diff --git a/resources/images/gallery-medium-9.jpg b/resources/images/gallery-medium-9.jpg
new file mode 100644 (file)
index 0000000..226dc3a
Binary files /dev/null and b/resources/images/gallery-medium-9.jpg differ
diff --git a/resources/images/gallery-small-1.jpg b/resources/images/gallery-small-1.jpg
new file mode 100644 (file)
index 0000000..9292310
Binary files /dev/null and b/resources/images/gallery-small-1.jpg differ
diff --git a/resources/images/gallery-small-10.jpg b/resources/images/gallery-small-10.jpg
new file mode 100644 (file)
index 0000000..2cdcecd
Binary files /dev/null and b/resources/images/gallery-small-10.jpg differ
diff --git a/resources/images/gallery-small-11.jpg b/resources/images/gallery-small-11.jpg
new file mode 100644 (file)
index 0000000..72505c5
Binary files /dev/null and b/resources/images/gallery-small-11.jpg differ
diff --git a/resources/images/gallery-small-12.jpg b/resources/images/gallery-small-12.jpg
new file mode 100644 (file)
index 0000000..178d096
Binary files /dev/null and b/resources/images/gallery-small-12.jpg differ
diff --git a/resources/images/gallery-small-13.jpg b/resources/images/gallery-small-13.jpg
new file mode 100644 (file)
index 0000000..27fecd2
Binary files /dev/null and b/resources/images/gallery-small-13.jpg differ
diff --git a/resources/images/gallery-small-14.jpg b/resources/images/gallery-small-14.jpg
new file mode 100644 (file)
index 0000000..c3387ab
Binary files /dev/null and b/resources/images/gallery-small-14.jpg differ
diff --git a/resources/images/gallery-small-15.jpg b/resources/images/gallery-small-15.jpg
new file mode 100644 (file)
index 0000000..a42ecef
Binary files /dev/null and b/resources/images/gallery-small-15.jpg differ
diff --git a/resources/images/gallery-small-16.jpg b/resources/images/gallery-small-16.jpg
new file mode 100644 (file)
index 0000000..4424ca6
Binary files /dev/null and b/resources/images/gallery-small-16.jpg differ
diff --git a/resources/images/gallery-small-17.jpg b/resources/images/gallery-small-17.jpg
new file mode 100644 (file)
index 0000000..7558032
Binary files /dev/null and b/resources/images/gallery-small-17.jpg differ
diff --git a/resources/images/gallery-small-18.jpg b/resources/images/gallery-small-18.jpg
new file mode 100644 (file)
index 0000000..60ad785
Binary files /dev/null and b/resources/images/gallery-small-18.jpg differ
diff --git a/resources/images/gallery-small-19.jpg b/resources/images/gallery-small-19.jpg
new file mode 100644 (file)
index 0000000..3712319
Binary files /dev/null and b/resources/images/gallery-small-19.jpg differ
diff --git a/resources/images/gallery-small-2.jpg b/resources/images/gallery-small-2.jpg
new file mode 100644 (file)
index 0000000..ed90569
Binary files /dev/null and b/resources/images/gallery-small-2.jpg differ
diff --git a/resources/images/gallery-small-20.jpg b/resources/images/gallery-small-20.jpg
new file mode 100644 (file)
index 0000000..3cdbb76
Binary files /dev/null and b/resources/images/gallery-small-20.jpg differ
diff --git a/resources/images/gallery-small-21.jpg b/resources/images/gallery-small-21.jpg
new file mode 100644 (file)
index 0000000..b46d34b
Binary files /dev/null and b/resources/images/gallery-small-21.jpg differ
diff --git a/resources/images/gallery-small-22.jpg b/resources/images/gallery-small-22.jpg
new file mode 100644 (file)
index 0000000..15e3e4f
Binary files /dev/null and b/resources/images/gallery-small-22.jpg differ
diff --git a/resources/images/gallery-small-23.jpg b/resources/images/gallery-small-23.jpg
new file mode 100644 (file)
index 0000000..45fcc65
Binary files /dev/null and b/resources/images/gallery-small-23.jpg differ
diff --git a/resources/images/gallery-small-24.jpg b/resources/images/gallery-small-24.jpg
new file mode 100644 (file)
index 0000000..c0fc94b
Binary files /dev/null and b/resources/images/gallery-small-24.jpg differ
diff --git a/resources/images/gallery-small-25.jpg b/resources/images/gallery-small-25.jpg
new file mode 100644 (file)
index 0000000..8010018
Binary files /dev/null and b/resources/images/gallery-small-25.jpg differ
diff --git a/resources/images/gallery-small-26.jpg b/resources/images/gallery-small-26.jpg
new file mode 100644 (file)
index 0000000..17b9c48
Binary files /dev/null and b/resources/images/gallery-small-26.jpg differ
diff --git a/resources/images/gallery-small-27.jpg b/resources/images/gallery-small-27.jpg
new file mode 100644 (file)
index 0000000..83c3e2f
Binary files /dev/null and b/resources/images/gallery-small-27.jpg differ
diff --git a/resources/images/gallery-small-28.jpg b/resources/images/gallery-small-28.jpg
new file mode 100644 (file)
index 0000000..5cc493e
Binary files /dev/null and b/resources/images/gallery-small-28.jpg differ
diff --git a/resources/images/gallery-small-29.jpg b/resources/images/gallery-small-29.jpg
new file mode 100644 (file)
index 0000000..77703a2
Binary files /dev/null and b/resources/images/gallery-small-29.jpg differ
diff --git a/resources/images/gallery-small-3.jpg b/resources/images/gallery-small-3.jpg
new file mode 100644 (file)
index 0000000..a74512c
Binary files /dev/null and b/resources/images/gallery-small-3.jpg differ
diff --git a/resources/images/gallery-small-30.jpg b/resources/images/gallery-small-30.jpg
new file mode 100644 (file)
index 0000000..1a78635
Binary files /dev/null and b/resources/images/gallery-small-30.jpg differ
diff --git a/resources/images/gallery-small-31.jpg b/resources/images/gallery-small-31.jpg
new file mode 100644 (file)
index 0000000..1395bca
Binary files /dev/null and b/resources/images/gallery-small-31.jpg differ
diff --git a/resources/images/gallery-small-32.jpg b/resources/images/gallery-small-32.jpg
new file mode 100644 (file)
index 0000000..661429f
Binary files /dev/null and b/resources/images/gallery-small-32.jpg differ
diff --git a/resources/images/gallery-small-33.jpg b/resources/images/gallery-small-33.jpg
new file mode 100644 (file)
index 0000000..ad02db6
Binary files /dev/null and b/resources/images/gallery-small-33.jpg differ
diff --git a/resources/images/gallery-small-34.jpg b/resources/images/gallery-small-34.jpg
new file mode 100644 (file)
index 0000000..ff15166
Binary files /dev/null and b/resources/images/gallery-small-34.jpg differ
diff --git a/resources/images/gallery-small-35.jpg b/resources/images/gallery-small-35.jpg
new file mode 100644 (file)
index 0000000..6a43598
Binary files /dev/null and b/resources/images/gallery-small-35.jpg differ
diff --git a/resources/images/gallery-small-36.jpg b/resources/images/gallery-small-36.jpg
new file mode 100644 (file)
index 0000000..3c7da64
Binary files /dev/null and b/resources/images/gallery-small-36.jpg differ
diff --git a/resources/images/gallery-small-37.jpg b/resources/images/gallery-small-37.jpg
new file mode 100644 (file)
index 0000000..c0cf509
Binary files /dev/null and b/resources/images/gallery-small-37.jpg differ
diff --git a/resources/images/gallery-small-38.jpg b/resources/images/gallery-small-38.jpg
new file mode 100644 (file)
index 0000000..cff205a
Binary files /dev/null and b/resources/images/gallery-small-38.jpg differ
diff --git a/resources/images/gallery-small-39.jpg b/resources/images/gallery-small-39.jpg
new file mode 100644 (file)
index 0000000..5486c57
Binary files /dev/null and b/resources/images/gallery-small-39.jpg differ
diff --git a/resources/images/gallery-small-4.jpg b/resources/images/gallery-small-4.jpg
new file mode 100644 (file)
index 0000000..e76d1a2
Binary files /dev/null and b/resources/images/gallery-small-4.jpg differ
diff --git a/resources/images/gallery-small-40.jpg b/resources/images/gallery-small-40.jpg
new file mode 100644 (file)
index 0000000..187c4a6
Binary files /dev/null and b/resources/images/gallery-small-40.jpg differ
diff --git a/resources/images/gallery-small-41.jpg b/resources/images/gallery-small-41.jpg
new file mode 100644 (file)
index 0000000..046130c
Binary files /dev/null and b/resources/images/gallery-small-41.jpg differ
diff --git a/resources/images/gallery-small-42.jpg b/resources/images/gallery-small-42.jpg
new file mode 100644 (file)
index 0000000..aa8c47e
Binary files /dev/null and b/resources/images/gallery-small-42.jpg differ
diff --git a/resources/images/gallery-small-43.jpg b/resources/images/gallery-small-43.jpg
new file mode 100644 (file)
index 0000000..c59b841
Binary files /dev/null and b/resources/images/gallery-small-43.jpg differ
diff --git a/resources/images/gallery-small-44.jpg b/resources/images/gallery-small-44.jpg
new file mode 100644 (file)
index 0000000..54a68f9
Binary files /dev/null and b/resources/images/gallery-small-44.jpg differ
diff --git a/resources/images/gallery-small-45.jpg b/resources/images/gallery-small-45.jpg
new file mode 100644 (file)
index 0000000..914f653
Binary files /dev/null and b/resources/images/gallery-small-45.jpg differ
diff --git a/resources/images/gallery-small-46.jpg b/resources/images/gallery-small-46.jpg
new file mode 100644 (file)
index 0000000..dc6c99d
Binary files /dev/null and b/resources/images/gallery-small-46.jpg differ
diff --git a/resources/images/gallery-small-47.jpg b/resources/images/gallery-small-47.jpg
new file mode 100644 (file)
index 0000000..08b826a
Binary files /dev/null and b/resources/images/gallery-small-47.jpg differ
diff --git a/resources/images/gallery-small-48.jpg b/resources/images/gallery-small-48.jpg
new file mode 100644 (file)
index 0000000..65509fc
Binary files /dev/null and b/resources/images/gallery-small-48.jpg differ
diff --git a/resources/images/gallery-small-49.jpg b/resources/images/gallery-small-49.jpg
new file mode 100644 (file)
index 0000000..72ebfa6
Binary files /dev/null and b/resources/images/gallery-small-49.jpg differ
diff --git a/resources/images/gallery-small-5.jpg b/resources/images/gallery-small-5.jpg
new file mode 100644 (file)
index 0000000..6acf956
Binary files /dev/null and b/resources/images/gallery-small-5.jpg differ
diff --git a/resources/images/gallery-small-50.jpg b/resources/images/gallery-small-50.jpg
new file mode 100644 (file)
index 0000000..8d1cd84
Binary files /dev/null and b/resources/images/gallery-small-50.jpg differ
diff --git a/resources/images/gallery-small-51.jpg b/resources/images/gallery-small-51.jpg
new file mode 100644 (file)
index 0000000..df4a295
Binary files /dev/null and b/resources/images/gallery-small-51.jpg differ
diff --git a/resources/images/gallery-small-52.jpg b/resources/images/gallery-small-52.jpg
new file mode 100644 (file)
index 0000000..69fdb59
Binary files /dev/null and b/resources/images/gallery-small-52.jpg differ
diff --git a/resources/images/gallery-small-53.jpg b/resources/images/gallery-small-53.jpg
new file mode 100644 (file)
index 0000000..8538f61
Binary files /dev/null and b/resources/images/gallery-small-53.jpg differ
diff --git a/resources/images/gallery-small-6.jpg b/resources/images/gallery-small-6.jpg
new file mode 100644 (file)
index 0000000..95d0c68
Binary files /dev/null and b/resources/images/gallery-small-6.jpg differ
diff --git a/resources/images/gallery-small-7.jpg b/resources/images/gallery-small-7.jpg
new file mode 100644 (file)
index 0000000..f415104
Binary files /dev/null and b/resources/images/gallery-small-7.jpg differ
diff --git a/resources/images/gallery-small-8.jpg b/resources/images/gallery-small-8.jpg
new file mode 100644 (file)
index 0000000..7347034
Binary files /dev/null and b/resources/images/gallery-small-8.jpg differ
diff --git a/resources/images/gallery-small-9.jpg b/resources/images/gallery-small-9.jpg
new file mode 100644 (file)
index 0000000..e377a70
Binary files /dev/null and b/resources/images/gallery-small-9.jpg differ
diff --git a/resources/images/grab-handle.png b/resources/images/grab-handle.png
new file mode 100644 (file)
index 0000000..61ab852
Binary files /dev/null and b/resources/images/grab-handle.png differ
diff --git a/resources/images/heartsframe.9.png b/resources/images/heartsframe.9.png
new file mode 100644 (file)
index 0000000..9313d47
Binary files /dev/null and b/resources/images/heartsframe.9.png differ
diff --git a/resources/images/icon-change-selected.png b/resources/images/icon-change-selected.png
new file mode 100644 (file)
index 0000000..0f0bfd0
Binary files /dev/null and b/resources/images/icon-change-selected.png differ
diff --git a/resources/images/icon-change.png b/resources/images/icon-change.png
new file mode 100644 (file)
index 0000000..34217ec
Binary files /dev/null and b/resources/images/icon-change.png differ
diff --git a/resources/images/icon-cluster-carousel-selected.png b/resources/images/icon-cluster-carousel-selected.png
new file mode 100644 (file)
index 0000000..a1577dc
Binary files /dev/null and b/resources/images/icon-cluster-carousel-selected.png differ
diff --git a/resources/images/icon-cluster-carousel.png b/resources/images/icon-cluster-carousel.png
new file mode 100644 (file)
index 0000000..500cab6
Binary files /dev/null and b/resources/images/icon-cluster-carousel.png differ
diff --git a/resources/images/icon-cluster-none-selected.png b/resources/images/icon-cluster-none-selected.png
new file mode 100644 (file)
index 0000000..1c09dff
Binary files /dev/null and b/resources/images/icon-cluster-none-selected.png differ
diff --git a/resources/images/icon-cluster-none.png b/resources/images/icon-cluster-none.png
new file mode 100644 (file)
index 0000000..a98eb7e
Binary files /dev/null and b/resources/images/icon-cluster-none.png differ
diff --git a/resources/images/icon-cluster-sphere-selected.png b/resources/images/icon-cluster-sphere-selected.png
new file mode 100644 (file)
index 0000000..5f51216
Binary files /dev/null and b/resources/images/icon-cluster-sphere-selected.png differ
diff --git a/resources/images/icon-cluster-sphere.png b/resources/images/icon-cluster-sphere.png
new file mode 100644 (file)
index 0000000..b815be6
Binary files /dev/null and b/resources/images/icon-cluster-sphere.png differ
diff --git a/resources/images/icon-cluster-wobble-selected.png b/resources/images/icon-cluster-wobble-selected.png
new file mode 100644 (file)
index 0000000..9e2ef63
Binary files /dev/null and b/resources/images/icon-cluster-wobble-selected.png differ
diff --git a/resources/images/icon-cluster-wobble.png b/resources/images/icon-cluster-wobble.png
new file mode 100644 (file)
index 0000000..c74db80
Binary files /dev/null and b/resources/images/icon-cluster-wobble.png differ
diff --git a/resources/images/icon-delete-selected.png b/resources/images/icon-delete-selected.png
new file mode 100644 (file)
index 0000000..fe74bd7
Binary files /dev/null and b/resources/images/icon-delete-selected.png differ
diff --git a/resources/images/icon-delete.png b/resources/images/icon-delete.png
new file mode 100644 (file)
index 0000000..f509cc0
Binary files /dev/null and b/resources/images/icon-delete.png differ
diff --git a/resources/images/icon-edit-selected.png b/resources/images/icon-edit-selected.png
new file mode 100644 (file)
index 0000000..19a1854
Binary files /dev/null and b/resources/images/icon-edit-selected.png differ
diff --git a/resources/images/icon-edit.png b/resources/images/icon-edit.png
new file mode 100644 (file)
index 0000000..ce3e327
Binary files /dev/null and b/resources/images/icon-edit.png differ
diff --git a/resources/images/icon-effect-cross-selected.png b/resources/images/icon-effect-cross-selected.png
new file mode 100644 (file)
index 0000000..d648aa8
Binary files /dev/null and b/resources/images/icon-effect-cross-selected.png differ
diff --git a/resources/images/icon-effect-cross.png b/resources/images/icon-effect-cross.png
new file mode 100644 (file)
index 0000000..1ea88b0
Binary files /dev/null and b/resources/images/icon-effect-cross.png differ
diff --git a/resources/images/icon-effect-fold-selected.png b/resources/images/icon-effect-fold-selected.png
new file mode 100644 (file)
index 0000000..8ef17ac
Binary files /dev/null and b/resources/images/icon-effect-fold-selected.png differ
diff --git a/resources/images/icon-effect-fold.png b/resources/images/icon-effect-fold.png
new file mode 100644 (file)
index 0000000..e5afb9d
Binary files /dev/null and b/resources/images/icon-effect-fold.png differ
diff --git a/resources/images/icon-effect-wave-selected.png b/resources/images/icon-effect-wave-selected.png
new file mode 100644 (file)
index 0000000..4073c51
Binary files /dev/null and b/resources/images/icon-effect-wave-selected.png differ
diff --git a/resources/images/icon-effect-wave.png b/resources/images/icon-effect-wave.png
new file mode 100644 (file)
index 0000000..4de9de0
Binary files /dev/null and b/resources/images/icon-effect-wave.png differ
diff --git a/resources/images/icon-effects-off-selected.png b/resources/images/icon-effects-off-selected.png
new file mode 100644 (file)
index 0000000..055c361
Binary files /dev/null and b/resources/images/icon-effects-off-selected.png differ
diff --git a/resources/images/icon-effects-off.png b/resources/images/icon-effects-off.png
new file mode 100644 (file)
index 0000000..1bcc4e4
Binary files /dev/null and b/resources/images/icon-effects-off.png differ
diff --git a/resources/images/icon-effects-on-selected.png b/resources/images/icon-effects-on-selected.png
new file mode 100644 (file)
index 0000000..88ad57f
Binary files /dev/null and b/resources/images/icon-effects-on-selected.png differ
diff --git a/resources/images/icon-effects-on.png b/resources/images/icon-effects-on.png
new file mode 100644 (file)
index 0000000..339e9ea
Binary files /dev/null and b/resources/images/icon-effects-on.png differ
diff --git a/resources/images/icon-highp-selected.png b/resources/images/icon-highp-selected.png
new file mode 100644 (file)
index 0000000..20d7f4c
Binary files /dev/null and b/resources/images/icon-highp-selected.png differ
diff --git a/resources/images/icon-highp.png b/resources/images/icon-highp.png
new file mode 100644 (file)
index 0000000..9e2e4dc
Binary files /dev/null and b/resources/images/icon-highp.png differ
diff --git a/resources/images/icon-insert-selected.png b/resources/images/icon-insert-selected.png
new file mode 100644 (file)
index 0000000..554597d
Binary files /dev/null and b/resources/images/icon-insert-selected.png differ
diff --git a/resources/images/icon-insert.png b/resources/images/icon-insert.png
new file mode 100644 (file)
index 0000000..712aef3
Binary files /dev/null and b/resources/images/icon-insert.png differ
diff --git a/resources/images/icon-item-view-layout-depth-selected.png b/resources/images/icon-item-view-layout-depth-selected.png
new file mode 100644 (file)
index 0000000..d9190d6
Binary files /dev/null and b/resources/images/icon-item-view-layout-depth-selected.png differ
diff --git a/resources/images/icon-item-view-layout-depth.png b/resources/images/icon-item-view-layout-depth.png
new file mode 100644 (file)
index 0000000..b5baad9
Binary files /dev/null and b/resources/images/icon-item-view-layout-depth.png differ
diff --git a/resources/images/icon-item-view-layout-grid-selected.png b/resources/images/icon-item-view-layout-grid-selected.png
new file mode 100644 (file)
index 0000000..3b7d52f
Binary files /dev/null and b/resources/images/icon-item-view-layout-grid-selected.png differ
diff --git a/resources/images/icon-item-view-layout-grid.png b/resources/images/icon-item-view-layout-grid.png
new file mode 100644 (file)
index 0000000..aee4160
Binary files /dev/null and b/resources/images/icon-item-view-layout-grid.png differ
diff --git a/resources/images/icon-item-view-layout-spiral-selected.png b/resources/images/icon-item-view-layout-spiral-selected.png
new file mode 100644 (file)
index 0000000..fc6bf30
Binary files /dev/null and b/resources/images/icon-item-view-layout-spiral-selected.png differ
diff --git a/resources/images/icon-item-view-layout-spiral.png b/resources/images/icon-item-view-layout-spiral.png
new file mode 100644 (file)
index 0000000..ad7a4e0
Binary files /dev/null and b/resources/images/icon-item-view-layout-spiral.png differ
diff --git a/resources/images/icon-mediump-selected.png b/resources/images/icon-mediump-selected.png
new file mode 100644 (file)
index 0000000..de6d412
Binary files /dev/null and b/resources/images/icon-mediump-selected.png differ
diff --git a/resources/images/icon-mediump.png b/resources/images/icon-mediump.png
new file mode 100644 (file)
index 0000000..eed870f
Binary files /dev/null and b/resources/images/icon-mediump.png differ
diff --git a/resources/images/icon-play-selected.png b/resources/images/icon-play-selected.png
new file mode 100644 (file)
index 0000000..b3d557b
Binary files /dev/null and b/resources/images/icon-play-selected.png differ
diff --git a/resources/images/icon-play.png b/resources/images/icon-play.png
new file mode 100644 (file)
index 0000000..9a3aa12
Binary files /dev/null and b/resources/images/icon-play.png differ
diff --git a/resources/images/icon-replace-selected.png b/resources/images/icon-replace-selected.png
new file mode 100644 (file)
index 0000000..6fd8e0f
Binary files /dev/null and b/resources/images/icon-replace-selected.png differ
diff --git a/resources/images/icon-replace.png b/resources/images/icon-replace.png
new file mode 100644 (file)
index 0000000..4a50c0e
Binary files /dev/null and b/resources/images/icon-replace.png differ
diff --git a/resources/images/icon-reset-selected.png b/resources/images/icon-reset-selected.png
new file mode 100644 (file)
index 0000000..f857e30
Binary files /dev/null and b/resources/images/icon-reset-selected.png differ
diff --git a/resources/images/icon-reset.png b/resources/images/icon-reset.png
new file mode 100644 (file)
index 0000000..0a85f16
Binary files /dev/null and b/resources/images/icon-reset.png differ
diff --git a/resources/images/icon-reverse-selected.png b/resources/images/icon-reverse-selected.png
new file mode 100644 (file)
index 0000000..d53dc21
Binary files /dev/null and b/resources/images/icon-reverse-selected.png differ
diff --git a/resources/images/icon-reverse.png b/resources/images/icon-reverse.png
new file mode 100644 (file)
index 0000000..9e5ed88
Binary files /dev/null and b/resources/images/icon-reverse.png differ
diff --git a/resources/images/icon-rotate-anticlockwise-selected.png b/resources/images/icon-rotate-anticlockwise-selected.png
new file mode 100644 (file)
index 0000000..a0250b1
Binary files /dev/null and b/resources/images/icon-rotate-anticlockwise-selected.png differ
diff --git a/resources/images/icon-rotate-anticlockwise.png b/resources/images/icon-rotate-anticlockwise.png
new file mode 100644 (file)
index 0000000..8c58af4
Binary files /dev/null and b/resources/images/icon-rotate-anticlockwise.png differ
diff --git a/resources/images/icon-scroll-view-carousel-selected.png b/resources/images/icon-scroll-view-carousel-selected.png
new file mode 100644 (file)
index 0000000..28eb53d
Binary files /dev/null and b/resources/images/icon-scroll-view-carousel-selected.png differ
diff --git a/resources/images/icon-scroll-view-carousel.png b/resources/images/icon-scroll-view-carousel.png
new file mode 100644 (file)
index 0000000..05cb29d
Binary files /dev/null and b/resources/images/icon-scroll-view-carousel.png differ
diff --git a/resources/images/icon-scroll-view-depth-selected.png b/resources/images/icon-scroll-view-depth-selected.png
new file mode 100644 (file)
index 0000000..2c127cb
Binary files /dev/null and b/resources/images/icon-scroll-view-depth-selected.png differ
diff --git a/resources/images/icon-scroll-view-depth.png b/resources/images/icon-scroll-view-depth.png
new file mode 100644 (file)
index 0000000..b862fd1
Binary files /dev/null and b/resources/images/icon-scroll-view-depth.png differ
diff --git a/resources/images/icon-scroll-view-inner-cube-selected.png b/resources/images/icon-scroll-view-inner-cube-selected.png
new file mode 100644 (file)
index 0000000..b98ab37
Binary files /dev/null and b/resources/images/icon-scroll-view-inner-cube-selected.png differ
diff --git a/resources/images/icon-scroll-view-inner-cube.png b/resources/images/icon-scroll-view-inner-cube.png
new file mode 100644 (file)
index 0000000..4f078f6
Binary files /dev/null and b/resources/images/icon-scroll-view-inner-cube.png differ
diff --git a/resources/images/icon-scroll-view-outer-cube-selected.png b/resources/images/icon-scroll-view-outer-cube-selected.png
new file mode 100644 (file)
index 0000000..8777471
Binary files /dev/null and b/resources/images/icon-scroll-view-outer-cube-selected.png differ
diff --git a/resources/images/icon-scroll-view-outer-cube.png b/resources/images/icon-scroll-view-outer-cube.png
new file mode 100644 (file)
index 0000000..701eab4
Binary files /dev/null and b/resources/images/icon-scroll-view-outer-cube.png differ
diff --git a/resources/images/icon-scroll-view-spiral-selected.png b/resources/images/icon-scroll-view-spiral-selected.png
new file mode 100644 (file)
index 0000000..1485de8
Binary files /dev/null and b/resources/images/icon-scroll-view-spiral-selected.png differ
diff --git a/resources/images/icon-scroll-view-spiral.png b/resources/images/icon-scroll-view-spiral.png
new file mode 100644 (file)
index 0000000..37fbe2c
Binary files /dev/null and b/resources/images/icon-scroll-view-spiral.png differ
diff --git a/resources/images/icon-stop-selected.png b/resources/images/icon-stop-selected.png
new file mode 100644 (file)
index 0000000..3ee475b
Binary files /dev/null and b/resources/images/icon-stop-selected.png differ
diff --git a/resources/images/icon-stop.png b/resources/images/icon-stop.png
new file mode 100644 (file)
index 0000000..d614e7e
Binary files /dev/null and b/resources/images/icon-stop.png differ
diff --git a/resources/images/image-with-border-1.jpg b/resources/images/image-with-border-1.jpg
new file mode 100644 (file)
index 0000000..8518fc0
Binary files /dev/null and b/resources/images/image-with-border-1.jpg differ
diff --git a/resources/images/image-with-border-2.jpg b/resources/images/image-with-border-2.jpg
new file mode 100644 (file)
index 0000000..1e542ec
Binary files /dev/null and b/resources/images/image-with-border-2.jpg differ
diff --git a/resources/images/image-with-border-3.jpg b/resources/images/image-with-border-3.jpg
new file mode 100644 (file)
index 0000000..2659cbc
Binary files /dev/null and b/resources/images/image-with-border-3.jpg differ
diff --git a/resources/images/image-with-border-4.jpg b/resources/images/image-with-border-4.jpg
new file mode 100644 (file)
index 0000000..7656bb8
Binary files /dev/null and b/resources/images/image-with-border-4.jpg differ
diff --git a/resources/images/image-with-border-5.jpg b/resources/images/image-with-border-5.jpg
new file mode 100644 (file)
index 0000000..b6e3b07
Binary files /dev/null and b/resources/images/image-with-border-5.jpg differ
diff --git a/resources/images/insta_camera.json b/resources/images/insta_camera.json
new file mode 100644 (file)
index 0000000..945c3b2
--- /dev/null
@@ -0,0 +1 @@
+{"v":"5.0.1","fr":30.0000305175781,"ip":0,"op":124.000126139323,"w":800,"h":600,"nm":"Camera_003_render","ddd":0,"assets":[{"id":"comp_4","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"flash ring","parent":19,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[133,-67,0],"ix":2},"a":{"a":0,"k":[74,-135,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":1,"k":[{"i":{"x":[0.09,0.09],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p09_1_0p167_0p167","0p09_1_0p167_0p167"],"t":73,"s":[0,0],"e":[148,148]},{"t":79.0000803629557}],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":1,"k":[{"i":{"x":[0.09],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p09_1_0p167_0p167"],"t":73,"s":[23],"e":[0]},{"t":82.0000834147135}],"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[74,-135],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":73.0000742594401,"op":83.0000844319661,"st":73.0000742594401,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"button lines","parent":19,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-35.5,-60.5,0],"ix":2},"a":{"a":0,"k":[72.5,-149.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[91,-152.25],[108,-160.75]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 5","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[60.25,-161.75],[49,-177.25]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[4.25,2.75],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 6","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[73.75,-162.5],[80.75,-179]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[4.25,2.75],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 4","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[53,-150.5],[34.25,-159.5]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.08],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p08_1_0p167_0p167"],"t":73.539,"s":[0],"e":[100]},{"t":80.0000813802083}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.08],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"n":["0p08_1_0p167_0p167"],"t":71,"s":[0],"e":[100]},{"t":80.0000813802083}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":5,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":71.0000722249349,"op":81.0000823974609,"st":71.0000722249349,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"flash light","parent":19,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":71,"s":[35.264],"e":[102.264]},{"t":80.0000813802083}],"ix":10},"p":{"a":0,"k":[132,-68,0],"ix":2},"a":{"a":0,"k":[-340,-162,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"sr","sy":1,"d":1,"pt":{"a":0,"k":4,"ix":3},"p":{"a":0,"k":[0,0],"ix":4},"r":{"a":0,"k":143.286,"ix":5},"ir":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":71,"s":[0],"e":[25]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":76,"s":[25],"e":[0]},{"t":80.0000813802083}],"ix":6},"is":{"a":0,"k":193,"ix":8},"or":{"a":0,"k":73.6,"ix":7},"os":{"a":0,"k":0,"ix":9},"ix":1,"nm":"Polystar Path 1","mn":"ADBE Vector Shape - Star","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.992156862745,1,0.988235294118,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-340,-162],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Polystar 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":71.0000722249349,"op":81.0000823974609,"st":71.0000722249349,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"face button mask","parent":19,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.45],"y":[0]},"n":["0p833_0p833_0p45_0"],"t":0,"s":[0],"e":[-90]},{"t":17.0000172932943}],"ix":10,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Rotation - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Rotation - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Rotation - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[60,60,0],"ix":2},"a":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-27,"s":[-2,-6.5,0],"e":[-2,-6.5,0],"to":[0,0,0],"ti":[0,0,0]},{"t":56,"s":[-2,-6.5,0],"h":1},{"t":66.0000671386719,"s":[-2,-6.5,0],"h":1}],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Rotation - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":126,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":1,"k":[{"i":{"x":[0.14,0.14],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p14_1_0p167_0p167","0p14_1_0p167_0p167"],"t":-27,"s":[0,0],"e":[200,1]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.45,0.45],"y":[0,0]},"n":["0p833_0p833_0p45_0","0p833_0p833_0p45_0"],"t":0,"s":[200,1],"e":[216,302]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":17,"s":[216,302],"e":[216,302]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":101,"s":[216,302],"e":[0,302]},{"t":110.000111897786}],"ix":2,"x":"var $bm_rt;\n$bm_rt = thisComp.layer('body').content('Rectangle 1').content('Rectangle Path 1').size;"},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.204152006261,0.019608000213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2,-6.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"face button","parent":20,"tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":89.999,"ix":10},"p":{"a":0,"k":[34.724,96.498,0],"ix":2},"a":{"a":0,"k":[3,4,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":1,"k":[{"i":{"x":[0.35,0.35],"y":[1,1]},"o":{"x":[0.54,0.54],"y":[0,0]},"n":["0p35_1_0p54_0","0p35_1_0p54_0"],"t":28,"s":[0,0],"e":[32,32]},{"i":{"x":[0.833,0.833],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0,0]},"n":["0p833_1_0p167_0","0p833_1_0p167_0"],"t":48,"s":[32,32],"e":[32,32]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.53,0.53],"y":[0,0]},"n":["0p833_0p833_0p53_0","0p833_0p833_0p53_0"],"t":97,"s":[32,32],"e":[105,105]},{"t":135.000137329102}],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[3,4],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":28.0000284830729,"op":124.000126139323,"st":28.0000284830729,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":"line mask","parent":19,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.45],"y":[0]},"n":["0p833_0p833_0p45_0"],"t":0,"s":[0],"e":[-90]},{"t":17.0000172932943}],"ix":10,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Rotation - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Rotation - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Rotation - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[60,60,0],"ix":2},"a":{"a":0,"k":[-2,-6.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Rotation - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":126,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":1,"k":[{"i":{"x":[0.14,0.14],"y":[1,1]},"o":{"x":[0.54,0.54],"y":[0,0]},"n":["0p14_1_0p54_0","0p14_1_0p54_0"],"t":-27,"s":[0,0],"e":[200,1]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.45,0.45],"y":[0,0]},"n":["0p833_0p833_0p45_0","0p833_0p833_0p45_0"],"t":0,"s":[200,1],"e":[216,302]},{"t":17.0000172932943}],"ix":2,"x":"var $bm_rt;\n$bm_rt = thisComp.layer('body').content('Rectangle 1').content('Rectangle Path 1').size;"},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.929412004059,0.929412004059,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2,-6.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"line","parent":20,"tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":90.084,"ix":10},"p":{"a":0,"k":[68.999,-5.896,0],"ix":2},"a":{"a":0,"k":[0.5,-56,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-171.5,-56],[165.5,-56]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.59],"y":[1]},"o":{"x":[0.29],"y":[0]},"n":["0p59_1_0p29_0"],"t":16,"s":[50],"e":[0]},{"t":33.0000335693359}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.59],"y":[1]},"o":{"x":[0.29],"y":[0]},"n":["0p59_1_0p29_0"],"t":16,"s":[50],"e":[100]},{"t":33.0000335693359}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.929412004059,0.929412004059,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":16.0000162760417,"op":124.000126139323,"st":16.0000162760417,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":"flash mask","parent":19,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.45],"y":[0]},"n":["0p833_0p833_0p45_0"],"t":0,"s":[0],"e":[-90]},{"t":17.0000172932943}],"ix":10,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Rotation - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Rotation - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Rotation - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[60,60,0],"ix":2},"a":{"a":0,"k":[-2,-6.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Rotation - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":126,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":1,"k":[{"i":{"x":[0.14,0.14],"y":[1,1]},"o":{"x":[0.54,0.54],"y":[0,0]},"n":["0p14_1_0p54_0","0p14_1_0p54_0"],"t":-27,"s":[0,0],"e":[200,1]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.45,0.45],"y":[0,0]},"n":["0p833_0p833_0p45_0","0p833_0p833_0p45_0"],"t":0,"s":[200,1],"e":[216,302]},{"t":17.0000172932943}],"ix":2,"x":"var $bm_rt;\n$bm_rt = thisComp.layer('body').content('Rectangle 1').content('Rectangle Path 1').size;"},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.929412004059,0.929412004059,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2,-6.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"button","parent":20,"tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":90.004,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":29,"s":[70.511],"e":[102.512]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":47,"s":[102.512],"e":[102.512]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":71,"s":[102.512],"e":[92.512]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":74,"s":[92.512],"e":[102.512]},{"i":{"x":[0.823],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p823_1_0p167_0"],"t":77,"s":[102.512],"e":[102.512]},{"i":{"x":[0.745],"y":[1]},"o":{"x":[1],"y":[-0.47]},"n":["0p745_1_1_-0p47"],"t":93,"s":[102.512],"e":[72.512]},{"t":105.000106811523}],"ix":3,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('X Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('X Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('X Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"y":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":29,"s":[-176.891],"e":[-176.421]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":47,"s":[-176.421],"e":[-176.421]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":71,"s":[-176.421],"e":[-176.421]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":74,"s":[-176.421],"e":[-176.421]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":77,"s":[-176.421],"e":[-176.421]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":93,"s":[-176.421],"e":[-176.421]},{"t":105.000106811523}],"ix":4}},"a":{"a":0,"k":[94,-107.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"X Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"X Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"X Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":100,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[26,86],"ix":2},"p":{"a":0,"k":[74,24],"ix":3},"r":{"a":0,"k":24,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[94,-107.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":29.0000295003255,"op":106.000107828776,"st":29.0000295003255,"bm":0},{"ddd":0,"ind":12,"ty":4,"nm":"body mask","parent":19,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.45],"y":[0]},"n":["0p833_0p833_0p45_0"],"t":0,"s":[0],"e":[-90]},{"t":17.0000172932943}],"ix":10,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Rotation - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Rotation - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Rotation - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[60,60,0],"ix":2},"a":{"a":0,"k":[-2,-6.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Rotation - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":126,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":1,"k":[{"i":{"x":[0.14,0.14],"y":[1,1]},"o":{"x":[0.54,0.54],"y":[0,0]},"n":["0p14_1_0p54_0","0p14_1_0p54_0"],"t":-27,"s":[0,0],"e":[200,1]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.45,0.45],"y":[0,0]},"n":["0p833_0p833_0p45_0","0p833_0p833_0p45_0"],"t":0,"s":[200,1],"e":[216,302]},{"t":17.0000172932943}],"ix":2,"x":"var $bm_rt;\n$bm_rt = thisComp.layer('body').content('Rectangle 1').content('Rectangle Path 1').size;"},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.929412004059,0.929412004059,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2,-6.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0},{"ddd":0,"ind":13,"ty":4,"nm":"flash","parent":20,"tt":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":90.004,"ix":10},"p":{"s":true,"x":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":27,"s":[71.498],"e":[129.499]},{"i":{"x":[0.885],"y":[1]},"o":{"x":[0.167],"y":[0]},"n":["0p885_1_0p167_0"],"t":39,"s":[129.499],"e":[129.499]},{"i":{"x":[0.683],"y":[1]},"o":{"x":[0.688],"y":[-0.339]},"n":["0p683_1_0p688_-0p339"],"t":99,"s":[129.499],"e":[69.499]},{"t":110.000111897786}],"ix":3,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('X Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('X Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('X Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"y":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.59],"y":[0]},"n":["0p833_0p833_0p59_0"],"t":27,"s":[-6.965],"e":[-6.42]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":39,"s":[-6.42],"e":[-6.42]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":99,"s":[-6.42],"e":[-6.42]},{"t":110.000111897786}],"ix":4,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Y Position - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Y Position - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Y Position - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"}},"a":{"a":0,"k":[94,-107.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Y Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Y Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Y Position - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":100,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"X Position - Overshoot","np":3,"mn":"ADBE Slider Control","ix":4,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"X Position - Bounce","np":3,"mn":"ADBE Slider Control","ix":5,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"X Position - Friction","np":3,"mn":"ADBE Slider Control","ix":6,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":100,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[79,72.861],"ix":2},"p":{"a":0,"k":[72,22],"ix":3},"r":{"a":0,"k":9,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[94,-107.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":27.0000274658203,"op":107.000108846029,"st":27.0000274658203,"bm":0},{"ddd":0,"ind":14,"ty":4,"nm":"lens mask 2","parent":19,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.45],"y":[0]},"n":["0p833_0p833_0p45_0"],"t":0,"s":[0],"e":[-90]},{"t":17.0000172932943}],"ix":10,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Rotation - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Rotation - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Rotation - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[60,60,0],"ix":2},"a":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-27,"s":[-2,-6.5,0],"e":[-2,-6.5,0],"to":[0,0,0],"ti":[0,0,0]},{"t":56,"s":[-2,-6.5,0],"h":1},{"t":66.0000671386719,"s":[-2,-6.5,0],"h":1}],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Rotation - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":126,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":1,"k":[{"i":{"x":[0.14,0.14],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p14_1_0p167_0p167","0p14_1_0p167_0p167"],"t":-27,"s":[0,0],"e":[200,1]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.45,0.45],"y":[0,0]},"n":["0p833_0p833_0p45_0","0p833_0p833_0p45_0"],"t":0,"s":[200,1],"e":[216,302]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":17,"s":[216,302],"e":[216,302]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":101,"s":[216,302],"e":[0,302]},{"t":110.000111897786}],"ix":2,"x":"var $bm_rt;\n$bm_rt = thisComp.layer('body').content('Rectangle 1').content('Rectangle Path 1').size;"},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.204152006261,0.019608000213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2,-6.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0},{"ddd":0,"ind":15,"ty":4,"nm":"lens","parent":20,"tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":90,"ix":10},"p":{"a":0,"k":[-22,-28.5,0],"ix":2},"a":{"a":0,"k":[3,4,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Size - Ellipse Path 1 - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Size - Ellipse Path 1 - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Size - Ellipse Path 1 - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":100,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":1,"k":[{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.54,0.54],"y":[0,0]},"n":["0p833_0p833_0p54_0","0p833_0p833_0p54_0"],"t":21,"s":[0,0],"e":[94,94]},{"i":{"x":[0.833,0.833],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0,0]},"n":["0p833_1_0p167_0","0p833_1_0p167_0"],"t":41,"s":[94,94],"e":[94,94]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.87,0.87],"y":[0,0]},"n":["0p833_0p833_0p87_0","0p833_0p833_0p87_0"],"t":97,"s":[94,94],"e":[183,183]},{"t":123.00012512207}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Size - Ellipse Path 1 - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Size - Ellipse Path 1 - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Size - Ellipse Path 1 - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[3,4],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":21.0000213623047,"op":124.000126139323,"st":21.0000213623047,"bm":0},{"ddd":0,"ind":16,"ty":4,"nm":"lens mask","parent":19,"td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.45],"y":[0]},"n":["0p833_0p833_0p45_0"],"t":0,"s":[0],"e":[-90]},{"t":17.0000172932943}],"ix":10,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Rotation - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Rotation - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Rotation - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[60,60,0],"ix":2},"a":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-27,"s":[-2,-6.5,0],"e":[-2,-6.5,0],"to":[0,0,0],"ti":[0,0,0]},{"t":56,"s":[-2,-6.5,0],"h":1},{"t":66.0000671386719,"s":[-2,-6.5,0],"h":1}],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Rotation - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":126,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":1,"k":[{"i":{"x":[0.14,0.14],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p14_1_0p167_0p167","0p14_1_0p167_0p167"],"t":-27,"s":[0,0],"e":[200,1]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.45,0.45],"y":[0,0]},"n":["0p833_0p833_0p45_0","0p833_0p833_0p45_0"],"t":0,"s":[200,1],"e":[216,302]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":17,"s":[216,302],"e":[216,302]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p833_0p833_0p167_0p167","0p833_0p833_0p167_0p167"],"t":101,"s":[216,302],"e":[0,302]},{"t":110.000111897786}],"ix":2,"x":"var $bm_rt;\n$bm_rt = thisComp.layer('body').content('Rectangle 1').content('Rectangle Path 1').size;"},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.204152006261,0.019608000213,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2,-6.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0},{"ddd":0,"ind":17,"ty":4,"nm":"lens","parent":20,"tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":90,"ix":10},"p":{"a":0,"k":[-22,-28.5,0],"ix":2},"a":{"a":0,"k":[3,4,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Size - Ellipse Path 1 - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Size - Ellipse Path 1 - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Size - Ellipse Path 1 - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":100,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":1,"k":[{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.54,0.54],"y":[0,0]},"n":["0p833_0p833_0p54_0","0p833_0p833_0p54_0"],"t":15,"s":[0,0],"e":[136,136]},{"i":{"x":[0.833,0.833],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0,0]},"n":["0p833_1_0p167_0","0p833_1_0p167_0"],"t":35,"s":[136,136],"e":[136,136]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.87,0.87],"y":[0,0]},"n":["0p833_0p833_0p87_0","0p833_0p833_0p87_0"],"t":97,"s":[136,136],"e":[212,212]},{"t":123.00012512207}],"ix":2,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Size - Ellipse Path 1 - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Size - Ellipse Path 1 - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Size - Ellipse Path 1 - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[3,4],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":15.0000152587891,"op":124.000126139323,"st":15.0000152587891,"bm":0},{"ddd":0,"ind":18,"ty":4,"nm":".gannon-gram","cl":"gannon-gram","parent":20,"sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":0,"k":90.004,"ix":10},"p":{"a":0,"k":[85.672,-6.451,0],"ix":2},"a":{"a":0,"k":[-0.257,-6.362,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.887],[-4.517,0],[-1.575,1.76],[0,0],[0,0],[0,0],[0,0],[0,0],[1.413,0],[0,2.919],[-2.803,0],[-0.718,-1.089],[0,0],[3.196,0]],"o":[[0,4.864],[2.803,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.672,0.602],[-2.803,0],[0,-2.919],[1.621,0],[0,0],[-1.181,-1.83],[-4.517,0]],"v":[[-101.849,-7.713],[-93.626,0.301],[-87.048,-2.617],[-87.048,-8.524],[-94.414,-8.524],[-94.414,-5.698],[-90.291,-5.698],[-90.291,-3.822],[-93.626,-2.641],[-98.467,-7.713],[-93.626,-12.786],[-89.966,-10.84],[-87.233,-12.323],[-93.626,-15.704]],"c":true},"ix":2},"nm":"G","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"G","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-69.614,0],[-66.024,0],[-71.976,-15.45],[-76.099,-15.45],[-82.075,0],[-78.462,0],[-77.489,-2.664],[-70.587,-2.664]],"c":true},"ix":2},"nm":"A","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-74.038,-12.601],[-71.49,-5.513],[-76.609,-5.513]],"c":true},"ix":2},"nm":"A","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"A","np":5,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-49.766,0],[-46.593,0],[-46.593,-15.45],[-49.882,-15.45],[-49.882,-5.443],[-57.039,-15.45],[-60.421,-15.45],[-60.421,0],[-57.132,0],[-57.132,-10.377]],"c":true},"ix":2},"nm":"N","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"N","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-28.721,0],[-25.548,0],[-25.548,-15.45],[-28.837,-15.45],[-28.837,-5.443],[-35.995,-15.45],[-39.376,-15.45],[-39.376,0],[-36.087,0],[-36.087,-10.377]],"c":true},"ix":2},"nm":"N","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"N","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.656],[-4.656,0],[0,4.656],[4.679,0]],"o":[[0,4.656],[4.679,0],[0,-4.656],[-4.656,0]],"v":[[-19.073,-7.713],[-11.012,0.278],[-2.928,-7.713],[-11.012,-15.704]],"c":true},"ix":2},"nm":"O","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,-2.895],[2.849,0],[0,2.872],[-2.849,0]],"o":[[0,2.872],[-2.849,0],[0,-2.895],[2.849,0]],"v":[[-6.31,-7.713],[-11.012,-2.641],[-15.691,-7.713],[-11.012,-12.786]],"c":true},"ix":2},"nm":"O","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"O","np":5,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[14.196,0],[17.37,0],[17.37,-15.45],[14.081,-15.45],[14.081,-5.443],[6.923,-15.45],[3.541,-15.45],[3.541,0],[6.831,0],[6.831,-10.377]],"c":true},"ix":2},"nm":"N","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"N","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-4.887],[-4.517,0],[-1.575,1.76],[0,0],[0,0],[0,0],[0,0],[0,0],[1.413,0],[0,2.919],[-2.803,0],[-0.718,-1.089],[0,0],[3.196,0]],"o":[[0,4.864],[2.803,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.672,0.602],[-2.803,0],[0,-2.919],[1.621,0],[0,0],[-1.181,-1.83],[-4.517,0]],"v":[[23.845,-7.713],[32.068,0.301],[38.646,-2.617],[38.646,-8.524],[31.28,-8.524],[31.28,-5.698],[35.403,-5.698],[35.403,-3.822],[32.068,-2.641],[27.227,-7.713],[32.068,-12.786],[35.727,-10.84],[38.461,-12.323],[32.068,-15.704]],"c":true},"ix":2},"nm":"G","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"G","np":3,"cix":2,"ix":7,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,2.733],[3.22,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[1.668,-0.394],[0,-2.872],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[54.156,0],[57.932,0],[54.457,-5.883],[57.839,-10.47],[52.651,-15.45],[45.424,-15.45],[45.424,0],[48.713,0],[48.713,-5.536],[51.122,-5.536]],"c":true},"ix":2},"nm":"R","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,-1.297],[1.32,0],[0,0],[0,0],[0,0]],"o":[[0,1.297],[0,0],[0,0],[0,0],[1.32,0]],"v":[[54.48,-10.493],[52.164,-8.362],[48.713,-8.362],[48.713,-12.624],[52.164,-12.624]],"c":true},"ix":2},"nm":"R","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"R","np":5,"cix":2,"ix":8,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[75.308,0],[78.898,0],[72.945,-15.45],[68.822,-15.45],[62.846,0],[66.459,0],[67.432,-2.664],[74.335,-2.664]],"c":true},"ix":2},"nm":"A","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[70.884,-12.601],[73.431,-5.513],[68.312,-5.513]],"c":true},"ix":2},"nm":"A","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"A","np":5,"cix":2,"ix":9,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[97.935,0],[101.247,0],[101.247,-15.45],[96.615,-15.45],[92.862,-5.814],[89.11,-15.45],[84.5,-15.45],[84.5,0],[87.79,0],[87.79,-11.118],[92.144,0],[93.58,0],[97.935,-11.118]],"c":true},"ix":2},"nm":"M","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,0.988235294118,0.976470588235,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"M","np":3,"cix":2,"ix":10,"mn":"ADBE Vector Group","hd":false}],"ip":16.0000162760417,"op":110.000111897786,"st":0,"bm":0},{"ddd":0,"ind":19,"ty":3,"nm":".chris-gannon-lottie-animation","cl":"chris-gannon-lottie-animation","sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.55],"y":[0]},"n":["0p45_1_0p55_0"],"t":72,"s":[0],"e":[-2]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.55],"y":[0]},"n":["0p45_1_0p55_0"],"t":74,"s":[-2],"e":[0]},{"t":84.0000854492187}],"ix":10},"p":{"a":0,"k":[518,386,0],"ix":2},"a":{"a":0,"k":[178,146,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0},{"ddd":0,"ind":20,"ty":4,"nm":"body","parent":19,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.45],"y":[0]},"n":["0p833_0p833_0p45_0"],"t":0,"s":[0],"e":[-90]},{"t":17.0000172932943}],"ix":10,"x":"var $bm_rt;\nvar amp, freq, decay, n, t;\ntry {\n    amp = div(effect('Rotation - Overshoot')('ADBE Slider Control-0001'), 2.5), freq = div(effect('Rotation - Bounce')('ADBE Slider Control-0001'), 20), decay = div(effect('Rotation - Friction')('ADBE Slider Control-0001'), 20), n = 0, 0 < numKeys && (n = nearestKey(time).index, key(n).time > time && n--), t = 0 === n ? 0 : time - key(n).time, $bm_rt = 0 < n ? (v = velocityAtTime(sub(key(n).time, div(thisComp.frameDuration, 10))), sum(value, div(mul(mul(div(v, 100), amp), Math.sin(mul(mul(mul(freq, t), 2), Math.PI))), Math.exp(mul(decay, t))))) : value;\n} catch (e$$4) {\n    $bm_rt = value = value;\n}"},"p":{"a":0,"k":[60,60,0],"ix":2},"a":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-27,"s":[-2,-6.5,0],"e":[-2,-6.5,0],"to":[0,0,0],"ti":[0,0,0]},{"t":56,"s":[-2,-6.5,0],"h":1},{"t":66.0000671386719,"s":[-2,-6.5,0],"h":1}],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Rotation - Overshoot","np":3,"mn":"ADBE Slider Control","ix":1,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":10,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Bounce","np":3,"mn":"ADBE Slider Control","ix":2,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":30,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]},{"ty":5,"nm":"Rotation - Friction","np":3,"mn":"ADBE Slider Control","ix":3,"en":1,"ef":[{"ty":0,"nm":"Slider","mn":"ADBE Slider Control-0001","ix":1,"v":{"a":0,"k":126,"ix":1,"x":"var $bm_rt;\n$bm_rt = clamp(value, 0, 100);"}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":1,"k":[{"i":{"x":[0.14,0.14],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0.167,0.167]},"n":["0p14_1_0p167_0p167","0p14_1_0p167_0p167"],"t":-27,"s":[0,0],"e":[200,1]},{"i":{"x":[0.833,0.833],"y":[0.833,0.833]},"o":{"x":[0.45,0.45],"y":[0,0]},"n":["0p833_0p833_0p45_0","0p833_0p833_0p45_0"],"t":0,"s":[200,1],"e":[216,302]},{"i":{"x":[0.833,0.833],"y":[1,1]},"o":{"x":[0.167,0.167],"y":[0,0]},"n":["0p833_1_0p167_0","0p833_1_0p167_0"],"t":17,"s":[216,302],"e":[216,302]},{"i":{"x":[0.197,0.45],"y":[1,1]},"o":{"x":[0.872,0.59],"y":[-0.522,0]},"n":["0p197_1_0p872_-0p522","0p45_1_0p59_0"],"t":97,"s":[216,302],"e":[0,200]},{"t":123.00012512207}],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.992156982422,1,0.988234994926,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-2,-6.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":-27.0000274658203,"bm":0}]}],"layers":[{"ddd":0,"ind":3,"ty":0,"nm":".chris-gannon-instagram-lottie","cl":"chris-gannon-instagram-lottie","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400,323,0],"ix":2},"a":{"a":0,"k":[400,300,0],"ix":1},"s":{"a":0,"k":[129,129,100],"ix":6}},"ao":0,"w":800,"h":600,"ip":0,"op":124.000126139323,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"blueToPurple","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400,300,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[800,600],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":0,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":5,"k":{"a":0,"k":[0.007,0.298,0.404,0.851,0.307,0.431,0.308,0.735,0.6,0.565,0.212,0.62,0.8,0.565,0.212,0.62,1,0.565,0.212,0.62,0,1,0.199,1,0.397,1,0.592,0.5,0.788,0],"ix":9}},"s":{"a":0,"k":[-258,-522],"ix":5},"e":{"a":0,"k":[-943,-866],"ix":6},"t":2,"h":{"a":0,"k":18.494,"ix":7},"a":{"a":0,"k":-100.276,"ix":8},"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"yellowToOrange","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400,300,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[800,600],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":0,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"gf","o":{"a":0,"k":100,"ix":10},"r":1,"g":{"p":7,"k":{"a":0,"k":[0.007,0.984,0.847,0.482,0.193,0.969,0.657,0.325,0.375,0.953,0.467,0.169,0.545,0.882,0.263,0.314,0.715,0.812,0.059,0.459,0.857,0.688,0.135,0.539,1,0.565,0.212,0.62,0,1,0.259,1,0.517,1,0.75,0.5,0.983,0],"ix":9}},"s":{"a":0,"k":[-140,330],"ix":5},"e":{"a":0,"k":[-637,989],"ix":6},"t":2,"h":{"a":0,"k":0,"ix":7},"a":{"a":0,"k":0,"ix":8},"nm":"Gradient Fill 1","mn":"ADBE Vector Graphic - G-Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"bg","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[400,300,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[800,600],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":0,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811764705882,0.058823529412,0.458823529412,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":124.000126139323,"st":0,"bm":0}]}
\ No newline at end of file
diff --git a/resources/images/item-background-focused.9.png b/resources/images/item-background-focused.9.png
new file mode 100644 (file)
index 0000000..38735d9
Binary files /dev/null and b/resources/images/item-background-focused.9.png differ
diff --git a/resources/images/item-background.9.png b/resources/images/item-background.9.png
new file mode 100644 (file)
index 0000000..93664ca
Binary files /dev/null and b/resources/images/item-background.9.png differ
diff --git a/resources/images/item-select-check.png b/resources/images/item-select-check.png
new file mode 100644 (file)
index 0000000..edfcd8b
Binary files /dev/null and b/resources/images/item-select-check.png differ
diff --git a/resources/images/jolly_walker.json b/resources/images/jolly_walker.json
new file mode 100644 (file)
index 0000000..f220364
--- /dev/null
@@ -0,0 +1 @@
+{"v":"5.1.7","fr":60,"ip":0,"op":64,"w":1000,"h":1000,"nm":"Comp 1","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 18","parent":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[116,48.775,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[29,21],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.874509803922,0.472901018928,0.332656650917,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-61.5,-268.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":-5.37,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 9","parent":10,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[62,-208.226,0],"ix":2},"a":{"a":0,"k":[66,-203,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.75,-10.109],[50.39,14.18]],"o":[[2.75,10.109],[-199.5,-56.141]],"v":[[22.75,-166.25],[187,-207.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.515529318417,0.158323714312,0.56862745098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.295640145096,0.337768345253,0.423529411765,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":3,"nm":"NULL CONTROL","sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[473.375,533.528,0],"ix":2},"a":{"a":0,"k":[60,60,0],"ix":1},"s":{"a":0,"k":[64,64,100],"ix":6}},"ao":0,"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Shape Layer 16","parent":10,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[112,81.633,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[45.25,43.75],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.149019607843,0.138734346278,0.129734727448,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":4,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-26.875,-228.375],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Shape Layer 7","parent":11,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-722.596,-191.386,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[190.549,190.549,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":17.5,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}],"e":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":27.5,"s":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":35,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}],"e":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":42.5,"s":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}],"e":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50,"s":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}],"e":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55,"s":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}],"e":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}]},{"t":62.5}],"ix":2,"x":"var $bm_rt;\n$bm_rt = content('Shape 1').content('Path 1').path;"},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":88,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.980392156863,0.792156862745,0.627450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":38,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-34.433,21.811],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":17.5,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}],"e":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":27.5,"s":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":35,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}],"e":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":42.5,"s":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}],"e":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50,"s":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}],"e":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55,"s":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}],"e":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}]},{"t":62.5}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.3505421358,0.408821913775,0.513725490196,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":38,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-34.433,21.811],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"Shape Layer 13","parent":10,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[114.5,60.633,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[81,-30.5],[1,-55],[4.822,26.865],[12,-3.5]],"o":[[17,0.5],[-1,55],[-3.5,-19.5],[-12.517,3.651]],"v":[[26,-151],[90.5,-115],[134,-114],[103.5,-116]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.980392156863,0.792156862745,0.627450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.333333333333,0.302657961378,0.275817003437,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"Shape Layer 15","parent":6,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-2.5,-15.534,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[7,9],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.980392156863,0.792156862745,0.627450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.066666666667,0.06220479853,0.058300654093,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[29.75,-136.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":"Shape Layer 17","parent":4,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[0,-15.876,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0,0],[-46,-106],[-1,-39],[0.333,-16.457]],"o":[[0,0],[19.372,44.64],[1,39],[-0.264,13.036]],"v":[[-46.5,-199.5],[-26,-73],[-74,-17],[-55,62]],"c":false}],"e":[{"i":[[0,0],[-45,-76.444],[-1,-39],[-7,-11]],"o":[[0,0],[48.57,82.508],[1,39],[7,11]],"v":[[-46.5,-199.5],[-34,-69],[-87,3],[-55,52.667]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":16,"s":[{"i":[[0,0],[-45,-76.444],[-1,-39],[-7,-11]],"o":[[0,0],[48.57,82.508],[1,39],[7,11]],"v":[[-46.5,-199.5],[-34,-69],[-87,3],[-55,52.667]],"c":false}],"e":[{"i":[[0,0],[-45.25,-83.833],[-1,-39],[-7,-11]],"o":[[0,0],[53,114.666],[1,39],[7,11]],"v":[[-46.5,-199.5],[-32,-70],[-83.75,-2],[-56,47]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":28,"s":[{"i":[[0,0],[-45.25,-83.833],[-1,-39],[-7,-11]],"o":[[0,0],[53,114.666],[1,39],[7,11]],"v":[[-46.5,-199.5],[-32,-70],[-83.75,-2],[-56,47]],"c":false}],"e":[{"i":[[0,0],[-46,-106],[-1,-39],[7.333,-21.791]],"o":[[0,0],[19.372,44.64],[1,39],[-4.159,12.357]],"v":[[-46.5,-199.5],[-26,-73],[-74,-17],[-54.667,62]],"c":false}]},{"t":64}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":5,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"Smoke","sr":1,"ks":{"o":{"a":0,"k":80,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[112.981,9.615],[-55.288,-84.135],[31.25,-50.481],[-21.635,-103.365],[0,0],[-60.096,2.404],[36.058,33.654],[-36.058,48.077]],"o":[[-112.981,-9.615],[55.288,84.135],[-31.25,50.481],[21.635,103.365],[0,0],[60.096,-2.404],[-36.058,-33.654],[36.058,-48.077]],"v":[[242.788,-550.481],[55.288,-444.712],[144.231,-322.115],[91.346,-230.769],[114.192,-111.808],[170.673,-230.769],[199.519,-341.346],[225.962,-432.692]],"c":true}],"e":[{"i":[[112.981,9.615],[-96.264,-29.473],[57.824,13.462],[-21.635,-103.365],[0,0],[-48.542,-35.51],[36.058,33.654],[-36.058,48.077]],"o":[[-112.981,-9.615],[80.712,24.712],[-68.231,-15.885],[21.635,103.365],[0,0],[39.327,28.769],[-36.058,-33.654],[36.058,-48.077]],"v":[[242.788,-550.481],[55.288,-444.712],[144.231,-322.115],[91.346,-230.769],[114.192,-80.808],[154.673,-258.769],[201.519,-387.346],[229.962,-470.692]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":8,"s":[{"i":[[112.981,9.615],[-96.264,-29.473],[57.824,13.462],[-21.635,-103.365],[0,0],[-48.542,-35.51],[36.058,33.654],[-36.058,48.077]],"o":[[-112.981,-9.615],[80.712,24.712],[-68.231,-15.885],[21.635,103.365],[0,0],[39.327,28.769],[-36.058,-33.654],[36.058,-48.077]],"v":[[242.788,-550.481],[55.288,-444.712],[144.231,-322.115],[91.346,-230.769],[114.192,-80.808],[154.673,-258.769],[201.519,-387.346],[229.962,-470.692]],"c":true}],"e":[{"i":[[112.981,9.615],[-87.484,-41.186],[41.769,-49.885],[0.654,-89.231],[0,0],[-62.101,24.769],[26.909,45.489],[-2.598,62.232]],"o":[[-112.981,-9.615],[75.264,37.445],[-64.231,34.115],[-0.774,105.602],[0,0],[51.899,-21.231],[-25.112,-42.451],[0.896,-21.451]],"v":[[242.788,-550.481],[33.288,-480.712],[112.231,-358.115],[109.346,-230.769],[114.192,-111.808],[158.101,-346.769],[189.091,-441.489],[297.104,-496.549]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20,"s":[{"i":[[112.981,9.615],[-87.484,-41.186],[41.769,-49.885],[0.654,-89.231],[0,0],[-62.101,24.769],[26.909,45.489],[-2.598,62.232]],"o":[[-112.981,-9.615],[75.264,37.445],[-64.231,34.115],[-0.774,105.602],[0,0],[51.899,-21.231],[-25.112,-42.451],[0.896,-21.451]],"v":[[242.788,-550.481],[33.288,-480.712],[112.231,-358.115],[109.346,-230.769],[114.192,-111.808],[158.101,-346.769],[189.091,-441.489],[297.104,-496.549]],"c":true}],"e":[{"i":[[112.981,9.615],[-78.703,-52.9],[50.042,-32.703],[-3.126,-89.638],[0,0],[-53.494,-19.261],[103.637,2.208],[-57.183,4.784]],"o":[[-112.981,-9.615],[69.816,50.179],[-54.958,42.297],[5.338,104.992],[0,0],[131.178,5.041],[-45.661,-7.411],[49.753,-19.593]],"v":[[118.788,-608.481],[13.288,-504.893],[126.958,-456.297],[102.437,-230.769],[109.192,-104.808],[217.53,-428.769],[217.026,-526.541],[342.247,-542.407]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":32,"s":[{"i":[[112.981,9.615],[-78.703,-52.9],[50.042,-32.703],[-3.126,-89.638],[0,0],[-53.494,-19.261],[103.637,2.208],[-57.183,4.784]],"o":[[-112.981,-9.615],[69.816,50.179],[-54.958,42.297],[5.338,104.992],[0,0],[131.178,5.041],[-45.661,-7.411],[49.753,-19.593]],"v":[[118.788,-608.481],[13.288,-504.893],[126.958,-456.297],[102.437,-230.769],[109.192,-104.808],[217.53,-428.769],[217.026,-526.541],[342.247,-542.407]],"c":true}],"e":[{"i":[[112.981,9.615],[-69.923,-64.613],[36.032,-50.21],[-11.503,-96.941],[0,0],[-55.97,-11.137],[42.808,17.215],[-49.261,21.019]],"o":[[-112.981,-9.615],[34.962,26.325],[-46.241,43.042],[11.449,104.382],[0,0],[59.791,-10.481],[-42.06,-17.252],[46.571,-21.492]],"v":[[242.788,-550.481],[-8.962,-482.325],[146.435,-431.729],[99.528,-230.769],[114.192,-80.808],[174.209,-325.519],[220.711,-395.843],[317.89,-488.764]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44,"s":[{"i":[[112.981,9.615],[-69.923,-64.613],[36.032,-50.21],[-11.503,-96.941],[0,0],[-55.97,-11.137],[42.808,17.215],[-49.261,21.019]],"o":[[-112.981,-9.615],[34.962,26.325],[-46.241,43.042],[11.449,104.382],[0,0],[59.791,-10.481],[-42.06,-17.252],[46.571,-21.492]],"v":[[242.788,-550.481],[-8.962,-482.325],[146.435,-431.729],[99.528,-230.769],[114.192,-80.808],[174.209,-325.519],[220.711,-395.843],[317.89,-488.764]],"c":true}],"e":[{"i":[[112.981,9.615],[-61.142,-76.326],[-60.613,-54.039],[12.381,-73.231],[0,0],[-60.087,14.469],[38.758,27.078],[-33.533,19.121]],"o":[[-112.981,-9.615],[52.912,36.257],[58.387,63.961],[-3.619,30.769],[0,0],[63.913,-24.531],[-27.996,-27.255],[48.467,-34.879]],"v":[[242.788,-550.481],[29.588,-459.757],[157.613,-402.961],[123.619,-244.769],[116.192,-125.808],[208.087,-297.469],[213.496,-414.245],[295.533,-471.121]],"c":true}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":56,"s":[{"i":[[112.981,9.615],[-61.142,-76.326],[-60.613,-54.039],[12.381,-73.231],[0,0],[-60.087,14.469],[38.758,27.078],[-33.533,19.121]],"o":[[-112.981,-9.615],[52.912,36.257],[58.387,63.961],[-3.619,30.769],[0,0],[63.913,-24.531],[-27.996,-27.255],[48.467,-34.879]],"v":[[242.788,-550.481],[29.588,-459.757],[157.613,-402.961],[123.619,-244.769],[116.192,-125.808],[208.087,-297.469],[213.496,-414.245],[295.533,-471.121]],"c":true}],"e":[{"i":[[112.981,9.615],[-55.288,-84.135],[31.25,-50.481],[-21.635,-103.365],[0,0],[-60.096,2.404],[36.058,33.654],[-36.058,48.077]],"o":[[-112.981,-9.615],[55.288,84.135],[-31.25,50.481],[21.635,103.365],[0,0],[60.096,-2.404],[-36.058,-33.654],[36.058,-48.077]],"v":[[242.788,-550.481],[55.288,-444.712],[144.231,-322.115],[91.346,-230.769],[114.192,-120.808],[170.673,-230.769],[199.519,-341.346],[225.962,-432.692]],"c":true}]},{"t":64}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.980392156863,0.792156862745,0.627450980392,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.639215686275,0.572369624119,0.513879274854,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":"Shape Layer 6","parent":11,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[-734.029,-245.947,0],"e":[-734.029,-219.947,0],"to":[0,4.33333349227905,0],"ti":[0,-0.16666667163372,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10,"s":[-734.029,-219.947,0],"e":[-734.029,-244.947,0],"to":[0,0.16666667163372,0],"ti":[0,-0.66666668653488,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25,"s":[-734.029,-244.947,0],"e":[-734.029,-215.947,0],"to":[0,0.66666668653488,0],"ti":[0,0.16666667163372,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":42.5,"s":[-734.029,-215.947,0],"e":[-734.029,-245.947,0],"to":[0,-0.16666667163372,0],"ti":[0,5,0]},{"t":62.5}],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[190.549,190.549,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[86,46],[0,81.5]],"o":[[5.25,65.5],[-13.5,23.75]],"v":[[21.75,-128.617],[187.5,-124.617]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745008282,0.11613999909,0.11613999909,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.839215686275,0.488893965179,0.075693960751,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 5","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"st","c":{"a":0,"k":[0.462745008282,0.11613999909,0.11613999909,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.698039215686,0.369550158931,0.369550158931,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 4","np":2,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[14,12],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745008282,0.11613999909,0.11613999909,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.202591765161,0.294117647059,0.184544417437,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[149,-145.016],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 2","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[26,22],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745008282,0.11613999909,0.11613999909,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.294117647059,0.18431372549,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[83,-147.016],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[90,10],[-112,-29]],"o":[[-76.632,-8.515],[183,31]],"v":[[103,-245],[75,-101]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745008282,0.11613999909,0.11613999909,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.980392156863,0.793133844114,0.6266820571,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[8,10],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[93.244,89.796],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 3","np":3,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"Shape Layer 5","parent":12,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-534,-91.727,0],"ix":2},"a":{"a":0,"k":[-534,-93,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-53.354,-5.716],[11.433,4.764]],"o":[[0,0],[53.354,5.716],[-11.433,-4.764]],"v":[[-593.975,-391.175],[-512.039,-350.208],[-472.024,-394.987]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745098039,0.116139939252,0.116139939252,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.819607843137,0.634472895604,0.472479816512,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 3","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-70.621,-35.311],[0,0],[53.354,102.896]],"o":[[60.976,30.488],[0,0],[-53.354,-102.896]],"v":[[-612.077,-360.852],[-406.285,-183.642],[-432.961,-362.757]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745098039,0.116139939252,0.116139939252,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.820607503255,0.90875453575,0.909803921569,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[156.945,-46.504],[-81.707,-337.869],[-82.422,-4.303],[-8.438,24.609]],"o":[[-47.894,-0.995],[142.121,77.797],[103.681,2.048],[36.658,-97.977]],"v":[[-541.317,-407.522],[-758.009,-69.107],[-472.491,14.264],[-337.506,-50.217]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745098039,0.116139939252,0.116139939252,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.25731640984,0.296602675494,0.36862745098,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0.635],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745098039,0.116139939252,0.116139939252,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.25731640984,0.296602675494,0.36862745098,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":12,"ty":4,"nm":"Shape Layer 4","parent":3,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.64,"y":1},"o":{"x":0.36,"y":0},"n":"0p64_1_0p36_0","t":0,"s":[90.625,22.472,0],"e":[90.625,69.472,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.64,"y":1},"o":{"x":0.36,"y":0},"n":"0p64_1_0p36_0","t":10,"s":[90.625,69.472,0],"e":[90.625,1.14,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.64,"y":1},"o":{"x":0.36,"y":0},"n":"0p64_1_0p36_0","t":25,"s":[90.625,1.14,0],"e":[90.625,22.472,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.64,"y":1},"o":{"x":0.36,"y":0},"n":"0p64_1_0p36_0","t":32.5,"s":[90.625,22.472,0],"e":[90.625,69.472,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.64,"y":1},"o":{"x":0.36,"y":0},"n":"0p64_1_0p36_0","t":40,"s":[90.625,69.472,0],"e":[90.625,1.14,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.64,"y":1},"o":{"x":0.36,"y":0},"n":"0p64_1_0p36_0","t":55,"s":[90.625,1.14,0],"e":[90.625,22.472,0],"to":[0,0,0],"ti":[0,-3.55530524253845,0]},{"t":62.5}],"ix":2},"a":{"a":0,"k":[-534,-71,0],"ix":1},"s":{"a":0,"k":[82,82,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[79.512,-28.718],[128.927,-3.537],[-105.08,0],[-2.52,105.05]],"o":[[-104.42,37.713],[-2.52,105.05],[105.08,0],[-117.463,-15.766]],"v":[[19.512,30.024],[-216.488,6.098],[0,209],[210.39,8.537]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745098039,0.116139939252,0.116139939252,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.698039215686,0.369550158931,0.369550158931,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-544,-76],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":13,"ty":4,"nm":"Shape Layer 2","parent":12,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-632.018,37.043,0],"ix":2},"a":{"a":0,"k":[-60,14,0],"ix":1},"s":{"a":0,"k":[121.951,121.951,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"st","c":{"a":0,"k":[0.698039215686,0.36862745098,0.36862745098,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":60,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 3","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[-211.78,-154.468],[58.25,-115.367]],"o":[[202.25,147.517],[0,0]],"v":[[-90,-8.717],[-32,356.915]],"c":false}],"e":[{"i":[[-133.513,-186.523],[173.558,-170.346]],"o":[[111.25,101.551],[-158.442,143.306]],"v":[[-90,-8.717],[-76.308,313.653]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10,"s":[{"i":[[-133.513,-186.523],[173.558,-170.346]],"o":[[111.25,101.551],[-158.442,143.306]],"v":[[-90,-8.717],[-76.308,313.653]],"c":false}],"e":[{"i":[[-55.245,-218.577],[164.087,-143.863]],"o":[[57.635,179.132],[-150.018,116.536]],"v":[[-90,-8.717],[-170.15,338.802]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20,"s":[{"i":[[-55.245,-218.577],[164.087,-143.863]],"o":[[57.635,179.132],[-150.018,116.536]],"v":[[-90,-8.717],[-170.15,338.802]],"c":false}],"e":[{"i":[[-16.111,-234.604],[138.952,-127.777]],"o":[[21.481,187.035],[-125.216,98.487]],"v":[[-90,-22.8],[-191.59,327.852]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25,"s":[{"i":[[-16.111,-234.604],[138.952,-127.777]],"o":[[21.481,187.035],[-125.216,98.487]],"v":[[-90,-22.8],[-191.59,327.852]],"c":false}],"e":[{"i":[[-65.833,-253.727],[124.101,-98.778]],"o":[[49.727,191.652],[-57.787,45.995]],"v":[[-90,-8.717],[-201.875,297.204]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":32,"s":[{"i":[[-65.833,-253.727],[124.101,-98.778]],"o":[[49.727,191.652],[-57.787,45.995]],"v":[[-90,-8.717],[-201.875,297.204]],"c":false}],"e":[{"i":[[-21.003,-232.601],[107.195,-65.321]],"o":[[99.25,220.522],[-193.086,117.66]],"v":[[-90,-8.717],[-190.937,279.009]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":40,"s":[{"i":[[-21.003,-232.601],[107.195,-65.321]],"o":[[99.25,220.522],[-193.086,117.66]],"v":[[-90,-8.717],[-190.937,279.009]],"c":false}],"e":[{"i":[[-148.188,-180.512],[224.852,-167.321]],"o":[[140.352,98.004],[-61.947,30.61]],"v":[[-90,-8.717],[-40.125,310.123]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55,"s":[{"i":[[-148.188,-180.512],[224.852,-167.321]],"o":[[140.352,98.004],[-61.947,30.61]],"v":[[-90,-8.717],[-40.125,310.123]],"c":false}],"e":[{"i":[[-211.78,-154.468],[58.25,-115.367]],"o":[[202.25,147.517],[0,0]],"v":[[-90,-8.717],[-32,356.915]],"c":false}]},{"t":64}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.698039233685,0.368627458811,0.368627458811,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":84,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[6,-3.125],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,110.951],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[-211.78,-154.468],[58.25,-115.367]],"o":[[202.25,147.517],[0,0]],"v":[[-90,-8.717],[-32,356.915]],"c":false}],"e":[{"i":[[-55.245,-218.577],[164.087,-143.863]],"o":[[57.635,179.132],[-150.018,116.536]],"v":[[-90,-8.717],[-170.15,338.802]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":20,"s":[{"i":[[-55.245,-218.577],[164.087,-143.863]],"o":[[57.635,179.132],[-150.018,116.536]],"v":[[-90,-8.717],[-170.15,338.802]],"c":false}],"e":[{"i":[[-16.111,-234.604],[138.952,-127.777]],"o":[[21.481,187.035],[-125.216,98.487]],"v":[[-90,-22.8],[-191.59,327.852]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25,"s":[{"i":[[-16.111,-234.604],[138.952,-127.777]],"o":[[21.481,187.035],[-125.216,98.487]],"v":[[-90,-22.8],[-191.59,327.852]],"c":false}],"e":[{"i":[[42.589,-258.645],[101.25,-103.65]],"o":[[-32.75,198.891],[-51.609,52.833]],"v":[[-90,-8.717],[-201.875,297.204]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":32,"s":[{"i":[[42.589,-258.645],[101.25,-103.65]],"o":[[-32.75,198.891],[-51.609,52.833]],"v":[[-90,-8.717],[-201.875,297.204]],"c":false}],"e":[{"i":[[-21.003,-232.601],[107.195,-65.321]],"o":[[99.25,220.522],[-193.086,117.66]],"v":[[-90,-8.717],[-190.937,279.009]],"c":false}]},{"t":40}],"ix":2,"x":"var $bm_rt;\n$bm_rt = content('Shape 1').content('Path 1').path;"},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":100,"ix":1},"e":{"a":0,"k":82,"ix":2},"o":{"a":0,"k":3,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.337254901961,0.301545565736,0.301545565736,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":85,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[6,-3.125],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,110.951],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":4,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":14,"ty":4,"nm":"Shape Layer 1","parent":12,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-518.22,-17.104,0],"ix":2},"a":{"a":0,"k":[-15,0,0],"ix":1},"s":{"a":0,"k":[121.951,121.951,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[{"i":[[0,0],[90.037,-113.557]],"o":[[0,0],[-9.963,20.23]],"v":[[-14,-0.605],[-155.438,325.087]],"c":false}],"e":[{"i":[[0,0],[297.769,-151.903]],"o":[[0,0],[-379.918,193.811]],"v":[[-14,-0.605],[-156.769,291.605]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":12,"s":[{"i":[[0,0],[297.769,-151.903]],"o":[[0,0],[-379.918,193.811]],"v":[[-14,-0.605],[-156.769,291.605]],"c":false}],"e":[{"i":[[-90.055,-74.065],[232.29,-219.388]],"o":[[112.662,92.658],[-307.839,225.975]],"v":[[-14,-0.605],[33.559,333.973]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":24,"s":[{"i":[[-90.055,-74.065],[232.29,-219.388]],"o":[[112.662,92.658],[-307.839,225.975]],"v":[[-14,-0.605],[33.559,333.973]],"c":false}],"e":[{"i":[[-38.901,-103.432],[102.224,-185.126]],"o":[[97.037,74.012],[-206.978,304.292]],"v":[[-14,-0.605],[74.562,328.242]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":40,"s":[{"i":[[-38.901,-103.432],[102.224,-185.126]],"o":[[97.037,74.012],[-206.978,304.292]],"v":[[-14,-0.605],[74.562,328.242]],"c":false}],"e":[{"i":[[0,0],[196.5,-285.56]],"o":[[0,0],[-196.5,285.56]],"v":[[-14,-0.605],[-154.125,358.267]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55,"s":[{"i":[[0,0],[196.5,-285.56]],"o":[[0,0],[-196.5,285.56]],"v":[[-14,-0.605],[-154.125,358.267]],"c":false}],"e":[{"i":[[0,0],[128.141,-141.768]],"o":[[0,0],[-72.142,108.673]],"v":[[-14,-0.605],[-160.729,329.106]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":61,"s":[{"i":[[0,0],[128.141,-141.768]],"o":[[0,0],[-72.142,108.673]],"v":[[-14,-0.605],[-160.729,329.106]],"c":false}],"e":[{"i":[[0,0],[90.037,-113.557]],"o":[[0,0],[-9.963,20.23]],"v":[[-14,-0.605],[-155.438,325.087]],"c":false}]},{"t":64}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.564705908298,0.325536340475,0.325536340475,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":84,"ix":5},"lc":1,"lj":1,"ml":1,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,110.951],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-38.901,-103.432],[160.037,-206.954]],"o":[[97.037,74.012],[-206.978,304.292]],"v":[[-14,-0.605],[74.562,328.242]],"c":false},"ix":2,"x":"var $bm_rt;\n$bm_rt = content('Shape 1').content('Path 1').path;"},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":100,"ix":1},"e":{"a":0,"k":82,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.298039227724,0.257131874561,0.257131874561,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":83,"ix":5},"lc":2,"lj":1,"ml":1,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,110.951],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.462745098039,0.116139939252,0.116139939252,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":21,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":15,"ty":4,"nm":"Shape Layer 11","parent":11,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-473.929,-195.197,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[190.549,190.549,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false},"ix":2,"x":"var $bm_rt;\n$bm_rt = content('Shape 1').content('Path 1').path;"},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":87,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.980392158031,0.792156875134,0.627451002598,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":34,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-23,18],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":37.5,"s":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":47.5,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}],"e":[{"i":[[0,0],[-0.628,-24.436],[11.2,-26.205]],"o":[[0,0],[2.298,43.346],[-15.553,37.24]],"v":[[53.75,-76],[33.35,43.5],[152.35,61.2]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":64,"s":[{"i":[[0,0],[-0.628,-24.436],[11.2,-26.205]],"o":[[0,0],[2.298,43.346],[-15.553,37.24]],"v":[[53.75,-76],[33.35,43.5],[152.35,61.2]],"c":false}],"e":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":65,"s":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":72.5,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}],"e":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":80,"s":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}],"e":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":87.5,"s":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}],"e":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":92.5,"s":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}],"e":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}]},{"t":100}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.3505421358,0.408821913775,0.513725490196,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":34,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-23,18],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":98,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":37.5,"op":637.5,"st":37.5,"bm":0},{"ddd":0,"ind":16,"ty":4,"nm":"Shape Layer 10","parent":11,"sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":35,"s":[100],"e":[0]},{"t":37.5}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-467.26,-195.197,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[190.549,190.549,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-25,"s":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-15,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-7.5,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}],"e":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":2.5,"s":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}],"e":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":17.5,"s":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}],"e":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25,"s":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}],"e":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":30,"s":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}],"e":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}]},{"t":37.5}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":89,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.980392158031,0.792156875134,0.627451002598,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":34,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-33.48,18],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-25,"s":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-15,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-3,30],[65,155]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":-7.5,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[21,30],[113,135]],"c":false}],"e":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":2.5,"s":[{"i":[[0,0],[-2.031,-21.152],[10,-25.348]],"o":[[0,0],[4,41.652],[-14.837,37.609]],"v":[[54,-76],[35,45],[157,53]],"c":false}],"e":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":10,"s":[{"i":[[0,0],[12,-54],[22,-33.92]],"o":[[0,0],[-13.019,58.587],[-22,33.92]],"v":[[54,-76],[-2,50],[92,115]],"c":false}],"e":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":17.5,"s":[{"i":[[0,0],[20,-44.091],[22,-33.92]],"o":[[0,0],[-24.793,54.656],[-22,33.92]],"v":[[54,-76],[-27,23],[20,140]],"c":false}],"e":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":25,"s":[{"i":[[0,0],[11.429,-44.49],[36.429,-47.205]],"o":[[0,0],[-14.932,58.129],[-9.825,31.173]],"v":[[54,-76],[-46.429,16.143],[-59.429,144.857]],"c":false}],"e":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":30,"s":[{"i":[[0,0],[11.657,-48.294],[16.257,-68.462]],"o":[[0,0],[-14.167,58.313],[-13.895,29.104]],"v":[[54,-76],[-33.457,16.086],[-17.257,158.114]],"c":false}],"e":[{"i":[[0,0],[12,-54],[0,-36]],"o":[[0,0],[-13.019,58.587],[0,32.803]],"v":[[54,-76],[-36,25],[21,152]],"c":false}]},{"t":37.5}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.3505421358,0.408821913775,0.513725490196,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":34,"ix":5},"lc":2,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-33.48,18],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":-25,"op":575,"st":-25,"bm":0},{"ddd":0,"ind":17,"ty":4,"nm":"Shape Layer 21","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[819.189,10],"ix":2},"p":{"a":0,"k":[0,40],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.498039215686,0.473137260886,0.462883504232,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3,-269],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[214.09,100],"ix":3},"r":{"a":0,"k":17,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 3","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[819.189,25],"ix":2},"p":{"a":0,"k":[0,40],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.364705882353,0.328235312069,0.313218000823,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-1,-263],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[214.09,100],"ix":3},"r":{"a":0,"k":17,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 2","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[819.189,10],"ix":2},"p":{"a":0,"k":[0,40],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.498039215686,0.474509803922,0.462745098039,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-2.5,-175],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[214.09,100],"ix":3},"r":{"a":0,"k":17,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 4","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[819.189,25],"ix":2},"p":{"a":0,"k":[0,40],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.364705882353,0.329411764706,0.313725490196,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-3,-167],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[214.09,100],"ix":3},"r":{"a":0,"k":17,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":18,"ty":4,"nm":"Shape Layer 20","parent":20,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-33.339,76.282,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":2,"s":{"a":0,"k":[53.057,259],"ix":2},"p":{"a":0,"k":[0,14],"ix":3},"r":{"a":0,"k":36,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.4,0.347681681315,0.329411764706,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"rp","c":{"a":0,"k":45,"ix":1},"o":{"a":0,"k":-14,"ix":2},"m":1,"ix":4,"tr":{"ty":"tr","p":{"a":0,"k":[99,30],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":4},"so":{"a":0,"k":100,"ix":5},"eo":{"a":0,"k":100,"ix":6},"nm":"Transform"},"nm":"Repeater 1","mn":"ADBE Vector Filter - Repeater","hd":false},{"ty":"tr","p":{"a":0,"k":[-513,-315],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[75,100],"ix":3},"r":{"a":0,"k":-6,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":4,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 2","np":4,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"rc","d":2,"s":{"a":0,"k":[53.057,259],"ix":2},"p":{"a":0,"k":[0,14],"ix":3},"r":{"a":0,"k":36,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.592156887054,0.511262953281,0.483014255762,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"rp","c":{"a":0,"k":45,"ix":1},"o":{"a":0,"k":-14,"ix":2},"m":1,"ix":4,"tr":{"ty":"tr","p":{"a":0,"k":[99,30],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":4},"so":{"a":0,"k":100,"ix":5},"eo":{"a":0,"k":100,"ix":6},"nm":"Transform"},"nm":"Repeater 1","mn":"ADBE Vector Filter - Repeater","hd":false},{"ty":"tr","p":{"a":0,"k":[-506,-317],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[75,100],"ix":3},"r":{"a":0,"k":-6,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":4,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":4,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":19,"ty":4,"nm":"Shape Layer 12","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[484,827,0],"ix":2},"a":{"a":0,"k":[-55,362,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.859,0.859,1.183]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,-0.183]},"n":["0p833_0p859_0p167_0p167","0p833_0p859_0p167_0p167","0p833_1p183_0p167_-0p183"],"t":0,"s":[83,83,100],"e":[74,74,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.873,0.873,1.796]},"o":{"x":[0.167,0.167,0.167],"y":[0.128,0.128,-0.796]},"n":["0p833_0p873_0p167_0p128","0p833_0p873_0p167_0p128","0p833_1p796_0p167_-0p796"],"t":12,"s":[74,74,100],"e":[85,85,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.856,0.856,0.651]},"o":{"x":[0.167,0.167,0.167],"y":[0.142,0.142,0.349]},"n":["0p833_0p856_0p167_0p142","0p833_0p856_0p167_0p142","0p833_0p651_0p167_0p349"],"t":24,"s":[85,85,100],"e":[75,75,100]},{"i":{"x":[0.77,0.77,0.833],"y":[0.809,0.809,0.97]},"o":{"x":[0.186,0.186,0.167],"y":[0.154,0.154,0.03]},"n":["0p77_0p809_0p186_0p154","0p77_0p809_0p186_0p154","0p833_0p97_0p167_0p03"],"t":40,"s":[75,75,100],"e":[87,87,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.868,0.868,0.607]},"o":{"x":[0.167,0.167,0.167],"y":[0.135,0.135,0.393]},"n":["0p833_0p868_0p167_0p135","0p833_0p868_0p167_0p135","0p833_0p607_0p167_0p393"],"t":56,"s":[87,87,100],"e":[83,83,100]},{"t":64}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[520,178],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.3505421358,0.408821913775,0.513725490196,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.57647061348,0.454901963472,0.411764711142,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-54,361],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[92,92],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":16,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":20,"ty":4,"nm":"Shape Layer 19","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[556.846,775.484,0],"e":[182.5,664.5,0],"to":[-62.3910217285156,-18.4974060058594,0],"ti":[62.3910217285156,18.4974060058594,0]},{"t":64}],"ix":2},"a":{"a":0,"k":[-1035,52,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[46,43.579],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-1430,303],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[67,67],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 6","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[76,72],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-401.563,351.938],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 10","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[76,72],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-776,241],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 5","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[46.444,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-790,-54],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 4","np":3,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[46,43.579],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-1248,296],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 3","np":3,"cix":2,"ix":6,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[76,72],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-1230,134],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[58,58],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 8","np":3,"cix":2,"ix":7,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[69.667,66],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-1502,-247],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 9","np":3,"cix":2,"ix":9,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[69.667,66],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-1127.625,-136.063],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 2","np":3,"cix":2,"ix":10,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[46.444,44],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.576470588235,0.454155117858,0.411441788019,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-415.562,57],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":-46,"ix":4},"sa":{"a":0,"k":18,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":11,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-2416,-620],[-2648,8],[864,1156],[1088,444]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.454901960784,0.416844805549,0.383544802198,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.945098039216,0.739073211072,0.667128020642,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-256,-165],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":12,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600,"st":0,"bm":0},{"ddd":0,"ind":22,"ty":1,"nm":"Medium Turquoise Solid 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[500,500,0],"ix":2},"a":{"a":0,"k":[1750,519,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"sw":3500,"sh":1038,"sc":"#45d28b","ip":0,"op":600,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/resources/images/keyboard-Landscape.jpg b/resources/images/keyboard-Landscape.jpg
new file mode 100644 (file)
index 0000000..47e7e3d
Binary files /dev/null and b/resources/images/keyboard-Landscape.jpg differ
diff --git a/resources/images/keyboard-LandscapeCopy.jpg b/resources/images/keyboard-LandscapeCopy.jpg
new file mode 100644 (file)
index 0000000..c90d87d
Binary files /dev/null and b/resources/images/keyboard-LandscapeCopy.jpg differ
diff --git a/resources/images/lake_back.jpg b/resources/images/lake_back.jpg
new file mode 100644 (file)
index 0000000..4e17b77
Binary files /dev/null and b/resources/images/lake_back.jpg differ
diff --git a/resources/images/lake_bottom.jpg b/resources/images/lake_bottom.jpg
new file mode 100644 (file)
index 0000000..893f394
Binary files /dev/null and b/resources/images/lake_bottom.jpg differ
diff --git a/resources/images/lake_front.jpg b/resources/images/lake_front.jpg
new file mode 100644 (file)
index 0000000..470a679
Binary files /dev/null and b/resources/images/lake_front.jpg differ
diff --git a/resources/images/lake_left.jpg b/resources/images/lake_left.jpg
new file mode 100644 (file)
index 0000000..5750b91
Binary files /dev/null and b/resources/images/lake_left.jpg differ
diff --git a/resources/images/lake_right.jpg b/resources/images/lake_right.jpg
new file mode 100644 (file)
index 0000000..8963037
Binary files /dev/null and b/resources/images/lake_right.jpg differ
diff --git a/resources/images/lake_top.jpg b/resources/images/lake_top.jpg
new file mode 100644 (file)
index 0000000..4db3c2a
Binary files /dev/null and b/resources/images/lake_top.jpg differ
diff --git a/resources/images/landscape_screen_primitive_shapes.gif b/resources/images/landscape_screen_primitive_shapes.gif
new file mode 100644 (file)
index 0000000..adec076
Binary files /dev/null and b/resources/images/landscape_screen_primitive_shapes.gif differ
diff --git a/resources/images/layer1.png b/resources/images/layer1.png
new file mode 100644 (file)
index 0000000..2ec1b39
Binary files /dev/null and b/resources/images/layer1.png differ
diff --git a/resources/images/layer2.png b/resources/images/layer2.png
new file mode 100644 (file)
index 0000000..efe3628
Binary files /dev/null and b/resources/images/layer2.png differ
diff --git a/resources/images/layer3.png b/resources/images/layer3.png
new file mode 100644 (file)
index 0000000..7c6f911
Binary files /dev/null and b/resources/images/layer3.png differ
diff --git a/resources/images/layer4.png b/resources/images/layer4.png
new file mode 100644 (file)
index 0000000..45b1d9b
Binary files /dev/null and b/resources/images/layer4.png differ
diff --git a/resources/images/light-icon-back.png b/resources/images/light-icon-back.png
new file mode 100644 (file)
index 0000000..96b53f1
Binary files /dev/null and b/resources/images/light-icon-back.png differ
diff --git a/resources/images/light-icon-front.png b/resources/images/light-icon-front.png
new file mode 100644 (file)
index 0000000..ff9fcf7
Binary files /dev/null and b/resources/images/light-icon-front.png differ
diff --git a/resources/images/loading.png b/resources/images/loading.png
new file mode 100644 (file)
index 0000000..d794364
Binary files /dev/null and b/resources/images/loading.png differ
diff --git a/resources/images/mask-large.png b/resources/images/mask-large.png
new file mode 100644 (file)
index 0000000..e280f35
Binary files /dev/null and b/resources/images/mask-large.png differ
diff --git a/resources/images/mask.png b/resources/images/mask.png
new file mode 100644 (file)
index 0000000..b3e423c
Binary files /dev/null and b/resources/images/mask.png differ
diff --git a/resources/images/mask.xcf b/resources/images/mask.xcf
new file mode 100644 (file)
index 0000000..b9628d0
Binary files /dev/null and b/resources/images/mask.xcf differ
diff --git a/resources/images/message-field-box.png b/resources/images/message-field-box.png
new file mode 100644 (file)
index 0000000..71cddc6
Binary files /dev/null and b/resources/images/message-field-box.png differ
diff --git a/resources/images/music-libray-main-screen.png b/resources/images/music-libray-main-screen.png
new file mode 100644 (file)
index 0000000..db66fdc
Binary files /dev/null and b/resources/images/music-libray-main-screen.png differ
diff --git a/resources/images/music-libray-record-cover.png b/resources/images/music-libray-record-cover.png
new file mode 100644 (file)
index 0000000..7074b25
Binary files /dev/null and b/resources/images/music-libray-record-cover.png differ
diff --git a/resources/images/new-progress-bar-progress.9.png b/resources/images/new-progress-bar-progress.9.png
new file mode 100644 (file)
index 0000000..aa5aa77
Binary files /dev/null and b/resources/images/new-progress-bar-progress.9.png differ
diff --git a/resources/images/new-progress-bar-secondary-progress.9.png b/resources/images/new-progress-bar-secondary-progress.9.png
new file mode 100644 (file)
index 0000000..279bba6
Binary files /dev/null and b/resources/images/new-progress-bar-secondary-progress.9.png differ
diff --git a/resources/images/new-progress-bar-track.9.png b/resources/images/new-progress-bar-track.9.png
new file mode 100644 (file)
index 0000000..ec0bc90
Binary files /dev/null and b/resources/images/new-progress-bar-track.9.png differ
diff --git a/resources/images/octahedron-button.png b/resources/images/octahedron-button.png
new file mode 100644 (file)
index 0000000..a04a8b0
Binary files /dev/null and b/resources/images/octahedron-button.png differ
diff --git a/resources/images/papermill_E_diffuse-64.ktx b/resources/images/papermill_E_diffuse-64.ktx
new file mode 100644 (file)
index 0000000..c000b61
Binary files /dev/null and b/resources/images/papermill_E_diffuse-64.ktx differ
diff --git a/resources/images/papermill_pmrem.ktx b/resources/images/papermill_pmrem.ktx
new file mode 100644 (file)
index 0000000..62df20e
Binary files /dev/null and b/resources/images/papermill_pmrem.ktx differ
diff --git a/resources/images/people-medium-1.jpg b/resources/images/people-medium-1.jpg
new file mode 100644 (file)
index 0000000..1427b21
Binary files /dev/null and b/resources/images/people-medium-1.jpg differ
diff --git a/resources/images/people-medium-10.jpg b/resources/images/people-medium-10.jpg
new file mode 100644 (file)
index 0000000..f800b1a
Binary files /dev/null and b/resources/images/people-medium-10.jpg differ
diff --git a/resources/images/people-medium-11.jpg b/resources/images/people-medium-11.jpg
new file mode 100644 (file)
index 0000000..92f173a
Binary files /dev/null and b/resources/images/people-medium-11.jpg differ
diff --git a/resources/images/people-medium-12.jpg b/resources/images/people-medium-12.jpg
new file mode 100644 (file)
index 0000000..b70d357
Binary files /dev/null and b/resources/images/people-medium-12.jpg differ
diff --git a/resources/images/people-medium-13.jpg b/resources/images/people-medium-13.jpg
new file mode 100644 (file)
index 0000000..5be8010
Binary files /dev/null and b/resources/images/people-medium-13.jpg differ
diff --git a/resources/images/people-medium-14.jpg b/resources/images/people-medium-14.jpg
new file mode 100644 (file)
index 0000000..9689f9d
Binary files /dev/null and b/resources/images/people-medium-14.jpg differ
diff --git a/resources/images/people-medium-15.jpg b/resources/images/people-medium-15.jpg
new file mode 100644 (file)
index 0000000..c568f7c
Binary files /dev/null and b/resources/images/people-medium-15.jpg differ
diff --git a/resources/images/people-medium-16.jpg b/resources/images/people-medium-16.jpg
new file mode 100644 (file)
index 0000000..315d7f6
Binary files /dev/null and b/resources/images/people-medium-16.jpg differ
diff --git a/resources/images/people-medium-2.jpg b/resources/images/people-medium-2.jpg
new file mode 100644 (file)
index 0000000..f611833
Binary files /dev/null and b/resources/images/people-medium-2.jpg differ
diff --git a/resources/images/people-medium-3.jpg b/resources/images/people-medium-3.jpg
new file mode 100644 (file)
index 0000000..b9937ae
Binary files /dev/null and b/resources/images/people-medium-3.jpg differ
diff --git a/resources/images/people-medium-4.jpg b/resources/images/people-medium-4.jpg
new file mode 100644 (file)
index 0000000..5f641bd
Binary files /dev/null and b/resources/images/people-medium-4.jpg differ
diff --git a/resources/images/people-medium-5.jpg b/resources/images/people-medium-5.jpg
new file mode 100644 (file)
index 0000000..be1ef6c
Binary files /dev/null and b/resources/images/people-medium-5.jpg differ
diff --git a/resources/images/people-medium-6.jpg b/resources/images/people-medium-6.jpg
new file mode 100644 (file)
index 0000000..4b16ee8
Binary files /dev/null and b/resources/images/people-medium-6.jpg differ
diff --git a/resources/images/people-medium-7-masked.png b/resources/images/people-medium-7-masked.png
new file mode 100644 (file)
index 0000000..d94b586
Binary files /dev/null and b/resources/images/people-medium-7-masked.png differ
diff --git a/resources/images/people-medium-7-rgb565.png b/resources/images/people-medium-7-rgb565.png
new file mode 100644 (file)
index 0000000..07fa790
Binary files /dev/null and b/resources/images/people-medium-7-rgb565.png differ
diff --git a/resources/images/people-medium-7.jpg b/resources/images/people-medium-7.jpg
new file mode 100644 (file)
index 0000000..c5936c0
Binary files /dev/null and b/resources/images/people-medium-7.jpg differ
diff --git a/resources/images/people-medium-8.jpg b/resources/images/people-medium-8.jpg
new file mode 100644 (file)
index 0000000..f4a1407
Binary files /dev/null and b/resources/images/people-medium-8.jpg differ
diff --git a/resources/images/people-medium-9.jpg b/resources/images/people-medium-9.jpg
new file mode 100644 (file)
index 0000000..9a2eed4
Binary files /dev/null and b/resources/images/people-medium-9.jpg differ
diff --git a/resources/images/people-small-1.jpg b/resources/images/people-small-1.jpg
new file mode 100644 (file)
index 0000000..ed8ada1
Binary files /dev/null and b/resources/images/people-small-1.jpg differ
diff --git a/resources/images/people-small-10.jpg b/resources/images/people-small-10.jpg
new file mode 100644 (file)
index 0000000..b5d7b4a
Binary files /dev/null and b/resources/images/people-small-10.jpg differ
diff --git a/resources/images/people-small-11.jpg b/resources/images/people-small-11.jpg
new file mode 100644 (file)
index 0000000..95725e3
Binary files /dev/null and b/resources/images/people-small-11.jpg differ
diff --git a/resources/images/people-small-12.jpg b/resources/images/people-small-12.jpg
new file mode 100644 (file)
index 0000000..9cf2583
Binary files /dev/null and b/resources/images/people-small-12.jpg differ
diff --git a/resources/images/people-small-13.jpg b/resources/images/people-small-13.jpg
new file mode 100644 (file)
index 0000000..cb7de04
Binary files /dev/null and b/resources/images/people-small-13.jpg differ
diff --git a/resources/images/people-small-14.jpg b/resources/images/people-small-14.jpg
new file mode 100644 (file)
index 0000000..6473706
Binary files /dev/null and b/resources/images/people-small-14.jpg differ
diff --git a/resources/images/people-small-15.jpg b/resources/images/people-small-15.jpg
new file mode 100644 (file)
index 0000000..10cd58f
Binary files /dev/null and b/resources/images/people-small-15.jpg differ
diff --git a/resources/images/people-small-16.jpg b/resources/images/people-small-16.jpg
new file mode 100644 (file)
index 0000000..07f58d5
Binary files /dev/null and b/resources/images/people-small-16.jpg differ
diff --git a/resources/images/people-small-2.jpg b/resources/images/people-small-2.jpg
new file mode 100644 (file)
index 0000000..caed1c8
Binary files /dev/null and b/resources/images/people-small-2.jpg differ
diff --git a/resources/images/people-small-3.jpg b/resources/images/people-small-3.jpg
new file mode 100644 (file)
index 0000000..6ab338e
Binary files /dev/null and b/resources/images/people-small-3.jpg differ
diff --git a/resources/images/people-small-4.jpg b/resources/images/people-small-4.jpg
new file mode 100644 (file)
index 0000000..b12783f
Binary files /dev/null and b/resources/images/people-small-4.jpg differ
diff --git a/resources/images/people-small-5.jpg b/resources/images/people-small-5.jpg
new file mode 100644 (file)
index 0000000..861d770
Binary files /dev/null and b/resources/images/people-small-5.jpg differ
diff --git a/resources/images/people-small-6.jpg b/resources/images/people-small-6.jpg
new file mode 100644 (file)
index 0000000..3c36890
Binary files /dev/null and b/resources/images/people-small-6.jpg differ
diff --git a/resources/images/people-small-7.jpg b/resources/images/people-small-7.jpg
new file mode 100644 (file)
index 0000000..fb47006
Binary files /dev/null and b/resources/images/people-small-7.jpg differ
diff --git a/resources/images/people-small-7b.jpg b/resources/images/people-small-7b.jpg
new file mode 100644 (file)
index 0000000..dd62dab
Binary files /dev/null and b/resources/images/people-small-7b.jpg differ
diff --git a/resources/images/people-small-8.jpg b/resources/images/people-small-8.jpg
new file mode 100644 (file)
index 0000000..85491f0
Binary files /dev/null and b/resources/images/people-small-8.jpg differ
diff --git a/resources/images/people-small-9.jpg b/resources/images/people-small-9.jpg
new file mode 100644 (file)
index 0000000..4c60ff3
Binary files /dev/null and b/resources/images/people-small-9.jpg differ
diff --git a/resources/images/popup-tail-down.png b/resources/images/popup-tail-down.png
new file mode 100644 (file)
index 0000000..2d60fce
Binary files /dev/null and b/resources/images/popup-tail-down.png differ
diff --git a/resources/images/popup-tail-left.png b/resources/images/popup-tail-left.png
new file mode 100644 (file)
index 0000000..12dfd99
Binary files /dev/null and b/resources/images/popup-tail-left.png differ
diff --git a/resources/images/popup-tail-right.png b/resources/images/popup-tail-right.png
new file mode 100644 (file)
index 0000000..26aca93
Binary files /dev/null and b/resources/images/popup-tail-right.png differ
diff --git a/resources/images/popup-tail-up.png b/resources/images/popup-tail-up.png
new file mode 100644 (file)
index 0000000..b600b6b
Binary files /dev/null and b/resources/images/popup-tail-up.png differ
diff --git a/resources/images/popup.9.png b/resources/images/popup.9.png
new file mode 100644 (file)
index 0000000..3f6875f
Binary files /dev/null and b/resources/images/popup.9.png differ
diff --git a/resources/images/popup_button_background.9.png b/resources/images/popup_button_background.9.png
new file mode 100644 (file)
index 0000000..3ec9c8d
Binary files /dev/null and b/resources/images/popup_button_background.9.png differ
diff --git a/resources/images/portrait_screen_primitive_shapes.gif b/resources/images/portrait_screen_primitive_shapes.gif
new file mode 100644 (file)
index 0000000..622e8e2
Binary files /dev/null and b/resources/images/portrait_screen_primitive_shapes.gif differ
diff --git a/resources/images/preMultAlpha.png b/resources/images/preMultAlpha.png
new file mode 100644 (file)
index 0000000..3cf8ab1
Binary files /dev/null and b/resources/images/preMultAlpha.png differ
diff --git a/resources/images/resize-handle.png b/resources/images/resize-handle.png
new file mode 100644 (file)
index 0000000..4c8a2c2
Binary files /dev/null and b/resources/images/resize-handle.png differ
diff --git a/resources/images/selection-popup-bg.1.9.png b/resources/images/selection-popup-bg.1.9.png
new file mode 100644 (file)
index 0000000..376a3b7
Binary files /dev/null and b/resources/images/selection-popup-bg.1.9.png differ
diff --git a/resources/images/selection-popup-bg.10.9.png b/resources/images/selection-popup-bg.10.9.png
new file mode 100644 (file)
index 0000000..9a7ebf8
Binary files /dev/null and b/resources/images/selection-popup-bg.10.9.png differ
diff --git a/resources/images/selection-popup-bg.11.9.png b/resources/images/selection-popup-bg.11.9.png
new file mode 100644 (file)
index 0000000..1d2aa8f
Binary files /dev/null and b/resources/images/selection-popup-bg.11.9.png differ
diff --git a/resources/images/selection-popup-bg.12.9.png b/resources/images/selection-popup-bg.12.9.png
new file mode 100644 (file)
index 0000000..5c2201b
Binary files /dev/null and b/resources/images/selection-popup-bg.12.9.png differ
diff --git a/resources/images/selection-popup-bg.13.9.png b/resources/images/selection-popup-bg.13.9.png
new file mode 100644 (file)
index 0000000..0f729c8
Binary files /dev/null and b/resources/images/selection-popup-bg.13.9.png differ
diff --git a/resources/images/selection-popup-bg.14.9.png b/resources/images/selection-popup-bg.14.9.png
new file mode 100644 (file)
index 0000000..d1deedf
Binary files /dev/null and b/resources/images/selection-popup-bg.14.9.png differ
diff --git a/resources/images/selection-popup-bg.15.9.png b/resources/images/selection-popup-bg.15.9.png
new file mode 100644 (file)
index 0000000..453a10f
Binary files /dev/null and b/resources/images/selection-popup-bg.15.9.png differ
diff --git a/resources/images/selection-popup-bg.16.9.png b/resources/images/selection-popup-bg.16.9.png
new file mode 100644 (file)
index 0000000..e8becfb
Binary files /dev/null and b/resources/images/selection-popup-bg.16.9.png differ
diff --git a/resources/images/selection-popup-bg.17.9.png b/resources/images/selection-popup-bg.17.9.png
new file mode 100644 (file)
index 0000000..2c924a6
Binary files /dev/null and b/resources/images/selection-popup-bg.17.9.png differ
diff --git a/resources/images/selection-popup-bg.18.9.png b/resources/images/selection-popup-bg.18.9.png
new file mode 100644 (file)
index 0000000..ccd92b2
Binary files /dev/null and b/resources/images/selection-popup-bg.18.9.png differ
diff --git a/resources/images/selection-popup-bg.19.9.png b/resources/images/selection-popup-bg.19.9.png
new file mode 100644 (file)
index 0000000..71258b5
Binary files /dev/null and b/resources/images/selection-popup-bg.19.9.png differ
diff --git a/resources/images/selection-popup-bg.2.9.png b/resources/images/selection-popup-bg.2.9.png
new file mode 100644 (file)
index 0000000..799326f
Binary files /dev/null and b/resources/images/selection-popup-bg.2.9.png differ
diff --git a/resources/images/selection-popup-bg.20.9.png b/resources/images/selection-popup-bg.20.9.png
new file mode 100644 (file)
index 0000000..62a9b4f
Binary files /dev/null and b/resources/images/selection-popup-bg.20.9.png differ
diff --git a/resources/images/selection-popup-bg.21.9.png b/resources/images/selection-popup-bg.21.9.png
new file mode 100644 (file)
index 0000000..281ddf0
Binary files /dev/null and b/resources/images/selection-popup-bg.21.9.png differ
diff --git a/resources/images/selection-popup-bg.22.9.png b/resources/images/selection-popup-bg.22.9.png
new file mode 100644 (file)
index 0000000..f87e3c5
Binary files /dev/null and b/resources/images/selection-popup-bg.22.9.png differ
diff --git a/resources/images/selection-popup-bg.23.9.png b/resources/images/selection-popup-bg.23.9.png
new file mode 100644 (file)
index 0000000..144e1b2
Binary files /dev/null and b/resources/images/selection-popup-bg.23.9.png differ
diff --git a/resources/images/selection-popup-bg.24.9.png b/resources/images/selection-popup-bg.24.9.png
new file mode 100644 (file)
index 0000000..5fa412f
Binary files /dev/null and b/resources/images/selection-popup-bg.24.9.png differ
diff --git a/resources/images/selection-popup-bg.25.9.png b/resources/images/selection-popup-bg.25.9.png
new file mode 100644 (file)
index 0000000..e5d462f
Binary files /dev/null and b/resources/images/selection-popup-bg.25.9.png differ
diff --git a/resources/images/selection-popup-bg.26.9.png b/resources/images/selection-popup-bg.26.9.png
new file mode 100644 (file)
index 0000000..24998f6
Binary files /dev/null and b/resources/images/selection-popup-bg.26.9.png differ
diff --git a/resources/images/selection-popup-bg.27.9.png b/resources/images/selection-popup-bg.27.9.png
new file mode 100644 (file)
index 0000000..f2becae
Binary files /dev/null and b/resources/images/selection-popup-bg.27.9.png differ
diff --git a/resources/images/selection-popup-bg.28.9.png b/resources/images/selection-popup-bg.28.9.png
new file mode 100644 (file)
index 0000000..6235352
Binary files /dev/null and b/resources/images/selection-popup-bg.28.9.png differ
diff --git a/resources/images/selection-popup-bg.29.9.png b/resources/images/selection-popup-bg.29.9.png
new file mode 100644 (file)
index 0000000..75f0a29
Binary files /dev/null and b/resources/images/selection-popup-bg.29.9.png differ
diff --git a/resources/images/selection-popup-bg.3.9.png b/resources/images/selection-popup-bg.3.9.png
new file mode 100644 (file)
index 0000000..016caac
Binary files /dev/null and b/resources/images/selection-popup-bg.3.9.png differ
diff --git a/resources/images/selection-popup-bg.30.9.png b/resources/images/selection-popup-bg.30.9.png
new file mode 100644 (file)
index 0000000..b00aa37
Binary files /dev/null and b/resources/images/selection-popup-bg.30.9.png differ
diff --git a/resources/images/selection-popup-bg.31.9.png b/resources/images/selection-popup-bg.31.9.png
new file mode 100644 (file)
index 0000000..291b24f
Binary files /dev/null and b/resources/images/selection-popup-bg.31.9.png differ
diff --git a/resources/images/selection-popup-bg.32.9.png b/resources/images/selection-popup-bg.32.9.png
new file mode 100644 (file)
index 0000000..ae8f1a9
Binary files /dev/null and b/resources/images/selection-popup-bg.32.9.png differ
diff --git a/resources/images/selection-popup-bg.33.9.png b/resources/images/selection-popup-bg.33.9.png
new file mode 100644 (file)
index 0000000..96c1cbf
Binary files /dev/null and b/resources/images/selection-popup-bg.33.9.png differ
diff --git a/resources/images/selection-popup-bg.4.9.png b/resources/images/selection-popup-bg.4.9.png
new file mode 100644 (file)
index 0000000..fe3ac7b
Binary files /dev/null and b/resources/images/selection-popup-bg.4.9.png differ
diff --git a/resources/images/selection-popup-bg.5.9.png b/resources/images/selection-popup-bg.5.9.png
new file mode 100644 (file)
index 0000000..c8c82bc
Binary files /dev/null and b/resources/images/selection-popup-bg.5.9.png differ
diff --git a/resources/images/selection-popup-bg.6.9.png b/resources/images/selection-popup-bg.6.9.png
new file mode 100644 (file)
index 0000000..9a8a1c3
Binary files /dev/null and b/resources/images/selection-popup-bg.6.9.png differ
diff --git a/resources/images/selection-popup-bg.7.9.png b/resources/images/selection-popup-bg.7.9.png
new file mode 100644 (file)
index 0000000..bf498cd
Binary files /dev/null and b/resources/images/selection-popup-bg.7.9.png differ
diff --git a/resources/images/selection-popup-bg.8.9.png b/resources/images/selection-popup-bg.8.9.png
new file mode 100644 (file)
index 0000000..aad71bc
Binary files /dev/null and b/resources/images/selection-popup-bg.8.9.png differ
diff --git a/resources/images/selection-popup-bg.9.9.png b/resources/images/selection-popup-bg.9.9.png
new file mode 100644 (file)
index 0000000..8452e2d
Binary files /dev/null and b/resources/images/selection-popup-bg.9.9.png differ
diff --git a/resources/images/shape-bubble.png b/resources/images/shape-bubble.png
new file mode 100644 (file)
index 0000000..f100b8e
Binary files /dev/null and b/resources/images/shape-bubble.png differ
diff --git a/resources/images/shape-circle.png b/resources/images/shape-circle.png
new file mode 100644 (file)
index 0000000..7b72827
Binary files /dev/null and b/resources/images/shape-circle.png differ
diff --git a/resources/images/slider-skin.9.png b/resources/images/slider-skin.9.png
new file mode 100644 (file)
index 0000000..e1c2ca0
Binary files /dev/null and b/resources/images/slider-skin.9.png differ
diff --git a/resources/images/sparkle_normal_background.png b/resources/images/sparkle_normal_background.png
new file mode 100755 (executable)
index 0000000..a416be0
Binary files /dev/null and b/resources/images/sparkle_normal_background.png differ
diff --git a/resources/images/sparkle_particle.png b/resources/images/sparkle_particle.png
new file mode 100755 (executable)
index 0000000..836153e
Binary files /dev/null and b/resources/images/sparkle_particle.png differ
diff --git a/resources/images/sphere-button.png b/resources/images/sphere-button.png
new file mode 100644 (file)
index 0000000..5ffc6f8
Binary files /dev/null and b/resources/images/sphere-button.png differ
diff --git a/resources/images/square_primitive_shapes.bmp b/resources/images/square_primitive_shapes.bmp
new file mode 100644 (file)
index 0000000..b7fdf48
Binary files /dev/null and b/resources/images/square_primitive_shapes.bmp differ
diff --git a/resources/images/store_mask_profile_f.png b/resources/images/store_mask_profile_f.png
new file mode 100755 (executable)
index 0000000..299969c
Binary files /dev/null and b/resources/images/store_mask_profile_f.png differ
diff --git a/resources/images/store_mask_profile_n.png b/resources/images/store_mask_profile_n.png
new file mode 100755 (executable)
index 0000000..2cb6a4e
Binary files /dev/null and b/resources/images/store_mask_profile_n.png differ
diff --git a/resources/images/tb-norm.png b/resources/images/tb-norm.png
new file mode 100644 (file)
index 0000000..884cc90
Binary files /dev/null and b/resources/images/tb-norm.png differ
diff --git a/resources/images/tbcol.png b/resources/images/tbcol.png
new file mode 100644 (file)
index 0000000..93d98cd
Binary files /dev/null and b/resources/images/tbcol.png differ
diff --git a/resources/images/tile-focus.9.png b/resources/images/tile-focus.9.png
new file mode 100644 (file)
index 0000000..5d7d91f
Binary files /dev/null and b/resources/images/tile-focus.9.png differ
diff --git a/resources/images/tooltip-tail-above.png b/resources/images/tooltip-tail-above.png
new file mode 100644 (file)
index 0000000..9cbcfa0
Binary files /dev/null and b/resources/images/tooltip-tail-above.png differ
diff --git a/resources/images/tooltip-tail-below.png b/resources/images/tooltip-tail-below.png
new file mode 100644 (file)
index 0000000..f24c92e
Binary files /dev/null and b/resources/images/tooltip-tail-below.png differ
diff --git a/resources/images/tooltip.9.png b/resources/images/tooltip.9.png
new file mode 100644 (file)
index 0000000..9939dfe
Binary files /dev/null and b/resources/images/tooltip.9.png differ
diff --git a/resources/images/top-bar.png b/resources/images/top-bar.png
new file mode 100644 (file)
index 0000000..0a31d0e
Binary files /dev/null and b/resources/images/top-bar.png differ
diff --git a/resources/images/tx-astc-4x4-linear-native.astc b/resources/images/tx-astc-4x4-linear-native.astc
new file mode 100644 (file)
index 0000000..235e6b6
Binary files /dev/null and b/resources/images/tx-astc-4x4-linear-native.astc differ
diff --git a/resources/images/tx-astc-4x4-linear.ktx b/resources/images/tx-astc-4x4-linear.ktx
new file mode 100644 (file)
index 0000000..85379e7
Binary files /dev/null and b/resources/images/tx-astc-4x4-linear.ktx differ
diff --git a/resources/images/tx-astc-4x4-srgb.ktx b/resources/images/tx-astc-4x4-srgb.ktx
new file mode 100644 (file)
index 0000000..607a622
Binary files /dev/null and b/resources/images/tx-astc-4x4-srgb.ktx differ
diff --git a/resources/images/tx-etc1.ktx b/resources/images/tx-etc1.ktx
new file mode 100644 (file)
index 0000000..68f1081
Binary files /dev/null and b/resources/images/tx-etc1.ktx differ
diff --git a/resources/images/u0030.png b/resources/images/u0030.png
new file mode 100644 (file)
index 0000000..1b0cc3c
Binary files /dev/null and b/resources/images/u0030.png differ
diff --git a/resources/images/u0030_color.png b/resources/images/u0030_color.png
new file mode 100644 (file)
index 0000000..e96a6cb
Binary files /dev/null and b/resources/images/u0030_color.png differ
diff --git a/resources/images/u0031.png b/resources/images/u0031.png
new file mode 100644 (file)
index 0000000..2c70e9c
Binary files /dev/null and b/resources/images/u0031.png differ
diff --git a/resources/images/u0031_color.png b/resources/images/u0031_color.png
new file mode 100644 (file)
index 0000000..fe63bea
Binary files /dev/null and b/resources/images/u0031_color.png differ
diff --git a/resources/images/u0032.png b/resources/images/u0032.png
new file mode 100644 (file)
index 0000000..2ed2d75
Binary files /dev/null and b/resources/images/u0032.png differ
diff --git a/resources/images/u0032_color.png b/resources/images/u0032_color.png
new file mode 100644 (file)
index 0000000..c0344a0
Binary files /dev/null and b/resources/images/u0032_color.png differ
diff --git a/resources/images/u0033.png b/resources/images/u0033.png
new file mode 100644 (file)
index 0000000..2cb1673
Binary files /dev/null and b/resources/images/u0033.png differ
diff --git a/resources/images/u0033_color.png b/resources/images/u0033_color.png
new file mode 100644 (file)
index 0000000..50d5d62
Binary files /dev/null and b/resources/images/u0033_color.png differ
diff --git a/resources/images/u0034.png b/resources/images/u0034.png
new file mode 100644 (file)
index 0000000..99d72e1
Binary files /dev/null and b/resources/images/u0034.png differ
diff --git a/resources/images/u0034_color.png b/resources/images/u0034_color.png
new file mode 100644 (file)
index 0000000..2afbbaf
Binary files /dev/null and b/resources/images/u0034_color.png differ
diff --git a/resources/images/u0035.png b/resources/images/u0035.png
new file mode 100644 (file)
index 0000000..2780eae
Binary files /dev/null and b/resources/images/u0035.png differ
diff --git a/resources/images/u0035_color.png b/resources/images/u0035_color.png
new file mode 100644 (file)
index 0000000..7a08e63
Binary files /dev/null and b/resources/images/u0035_color.png differ
diff --git a/resources/images/u0036.png b/resources/images/u0036.png
new file mode 100644 (file)
index 0000000..62e240f
Binary files /dev/null and b/resources/images/u0036.png differ
diff --git a/resources/images/u0036_color.png b/resources/images/u0036_color.png
new file mode 100644 (file)
index 0000000..c4e0df2
Binary files /dev/null and b/resources/images/u0036_color.png differ
diff --git a/resources/images/u0037.png b/resources/images/u0037.png
new file mode 100644 (file)
index 0000000..ae3790a
Binary files /dev/null and b/resources/images/u0037.png differ
diff --git a/resources/images/u0037_color.png b/resources/images/u0037_color.png
new file mode 100644 (file)
index 0000000..0ee53db
Binary files /dev/null and b/resources/images/u0037_color.png differ
diff --git a/resources/images/u0038.png b/resources/images/u0038.png
new file mode 100644 (file)
index 0000000..e2b0d13
Binary files /dev/null and b/resources/images/u0038.png differ
diff --git a/resources/images/u0038_color.png b/resources/images/u0038_color.png
new file mode 100644 (file)
index 0000000..0f7f785
Binary files /dev/null and b/resources/images/u0038_color.png differ
diff --git a/resources/images/u0039.png b/resources/images/u0039.png
new file mode 100644 (file)
index 0000000..2a3f481
Binary files /dev/null and b/resources/images/u0039.png differ
diff --git a/resources/images/u0039_color.png b/resources/images/u0039_color.png
new file mode 100644 (file)
index 0000000..1133735
Binary files /dev/null and b/resources/images/u0039_color.png differ
diff --git a/resources/images/u003a.png b/resources/images/u003a.png
new file mode 100644 (file)
index 0000000..a6ca724
Binary files /dev/null and b/resources/images/u003a.png differ
diff --git a/resources/images/u003a_color.png b/resources/images/u003a_color.png
new file mode 100644 (file)
index 0000000..4922e69
Binary files /dev/null and b/resources/images/u003a_color.png differ
diff --git a/resources/images/wood.png b/resources/images/wood.png
new file mode 100644 (file)
index 0000000..4e6b13d
Binary files /dev/null and b/resources/images/wood.png differ
diff --git a/resources/images/woodEffect.jpg b/resources/images/woodEffect.jpg
new file mode 100644 (file)
index 0000000..cb086be
Binary files /dev/null and b/resources/images/woodEffect.jpg differ
diff --git a/resources/images/you're_in!.json b/resources/images/you're_in!.json
new file mode 100644 (file)
index 0000000..d261bea
--- /dev/null
@@ -0,0 +1 @@
+{"v":"5.2.1","fr":30,"ip":0,"op":231,"w":800,"h":800,"nm":"Code","ddd":0,"assets":[{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Rope Movement","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1920,"h":1080,"ip":136.136136136136,"op":528.528528528529,"st":136.136136136136,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"Rope Movement","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1920,"h":1080,"ip":0,"op":136.136136136136,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":0,"nm":"people line","refId":"comp_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-60,691.205,0],"ix":2},"a":{"a":0,"k":[600,183,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0.792156875134,0.800000011921,0.807843148708,1],"ix":3}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]}],"w":1200,"h":366,"ip":0,"op":528.528528528529,"st":0,"bm":0},{"ddd":0,"ind":8,"ty":0,"nm":"Blue Member 2","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,532,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"s","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1558.356,382.617],[1110,382.617],[1110,982],[1558.356,982]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":1920,"h":1080,"ip":136.136136136136,"op":528.528528528529,"st":136.136136136136,"bm":0},{"ddd":0,"ind":9,"ty":0,"nm":"Blue Member","refId":"comp_5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,532,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"s","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[1558.356,382.617],[1110,382.617],[1110,982],[1558.356,982]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":1920,"h":1080,"ip":0,"op":528.528528528529,"st":0,"bm":0},{"ddd":0,"ind":10,"ty":0,"nm":"people line","refId":"comp_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-4,693.205,0],"ix":2},"a":{"a":0,"k":[600,183,0],"ix":1},"s":{"a":0,"k":[95,95,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0.701960802078,0.709803938866,0.717647075653,1],"ix":3}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]}],"w":1200,"h":366,"ip":-23.023023023023,"op":528.528528528529,"st":-23.023023023023,"bm":0},{"ddd":0,"ind":11,"ty":0,"nm":"pole","refId":"comp_6","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1217,728.37,0],"ix":2},"a":{"a":0,"k":[121,123,0],"ix":1},"s":{"a":0,"k":[80,80,100],"ix":6}},"ao":0,"w":242,"h":246,"ip":0,"op":528.528528528529,"st":0,"bm":0},{"ddd":0,"ind":12,"ty":0,"nm":"pole","refId":"comp_6","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[701,727.37,0],"ix":2},"a":{"a":0,"k":[121,123,0],"ix":1},"s":{"a":0,"k":[80,80,100],"ix":6}},"ao":0,"sy":[{"ty":0,"nm":"Stroke","c":{"a":0,"k":[0.615686297417,0.623529434204,0.631372570992,1],"ix":2},"s":{"a":0,"k":4,"ix":3}}],"w":242,"h":246,"ip":0,"op":528.528528528529,"st":0,"bm":0},{"ddd":0,"ind":13,"ty":0,"nm":"Party","refId":"comp_8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,542,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[-84.071,0],[0,-84.071],[0,0]],"o":[[0,0],[0,-84.071],[84.071,0],[0,0],[0,0]],"v":[[807,820.5],[807,498.467],[959.467,346],[1111.934,498.467],[1111.934,820.5]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":1920,"h":1080,"ip":0,"op":528.528528528529,"st":0,"bm":0},{"ddd":0,"ind":14,"ty":0,"nm":"Party","refId":"comp_8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,544,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[109,109,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[-84.071,0],[0,-84.071],[0,0]],"o":[[0,0],[0,-84.071],[84.071,0],[0,0],[0,0]],"v":[[807,795.729],[807,498.467],[959.467,346],[1111.934,498.467],[1111.934,795.729]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0.792156875134,0.800000011921,0.807843148708,1],"ix":3}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]}],"w":1920,"h":1080,"ip":0,"op":528.528528528529,"st":0,"bm":0}]},{"id":"comp_1","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 10","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[945.75,491,0],"ix":2},"a":{"a":0,"k":[201.25,-332,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.074,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[196.5,-329],[206,-335]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[74.637,-258.274],[93.137,-269.274]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.075,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[74.637,-258.274],[93.137,-269.274]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-12.5,-142.5],[-11.5,-148.5]],"c":false}]},{"t":76.0760760760761}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":8,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":74.0740740740741,"op":77.0770770770771,"st":23.023023023023,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[950.75,472,0],"ix":2},"a":{"a":0,"k":[202.75,-324.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.074,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[198,-321.5],[207.5,-327.5]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[63,-248],[79.5,-258]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.075,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[63,-248],[79.5,-258]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-26.5,-117.5],[-25.5,-125]],"c":false}]},{"t":76.0760760760761}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":74.0740740740741,"op":77.0770770770771,"st":23.023023023023,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[959.75,451.75,0],"ix":2},"a":{"a":0,"k":[197.25,-334.75,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.074,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[206,-340.5],[188.5,-329]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[71,-270.5],[39,-250.5]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.075,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[71,-270.5],[39,-250.5]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-51.5,-122.5],[-54.5,-111.5]],"c":false}]},{"t":76.0760760760761}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":74.0740740740741,"op":77.0770770770771,"st":23.023023023023,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"Shape Layer 7","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[966.5,573,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[196.5,-329],[206,-335]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[260,-323.5],[220,-322.5]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[260,-323.5],[220,-322.5]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[289,-314.5],[277,-322.5]],"c":false}]},{"t":53.053053053053}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":8,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":51.0510510510511,"op":54.0540540540541,"st":0,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":"Shape Layer 6","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,548,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[198,-321.5],[207.5,-327.5]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[260,-323.5],[220,-322.5]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[260,-323.5],[220,-322.5]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[308,-304.5],[296,-312.5]],"c":false}]},{"t":53.053053053053}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":51.0510510510511,"op":54.0540540540541,"st":0,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"Shape Layer 5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[206,-340.5],[188.5,-329]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[263.5,-337.5],[196.5,-337.5]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[263.5,-337.5],[196.5,-337.5]],"c":false}],"e":[{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[327,-304],[304,-322.5]],"c":false}]},{"t":53.053053053053}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":10,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":51.0510510510511,"op":54.0540540540541,"st":0,"bm":0},{"ddd":0,"ind":12,"ty":0,"nm":"Rope","refId":"comp_2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1920,"h":1080,"ip":0,"op":509.509509509509,"st":0,"bm":0}]},{"id":"comp_2","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"ROPE","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":37.037,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":41.041,"s":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}],"e":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44.044,"s":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}],"e":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":46.046,"s":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":48.048,"s":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":49.049,"s":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.05,"s":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":53.053,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":54.054,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55.055,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":69.069,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}],"e":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":71.071,"s":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}],"e":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":73.073,"s":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}],"e":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.95,"s":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.888,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":78.704,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":81.519,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.334,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}]},{"t":88.0880880880881}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":99,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":30,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 5","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":37.037,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":41.041,"s":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}],"e":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44.044,"s":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}],"e":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":46.046,"s":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":48.048,"s":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":49.049,"s":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.05,"s":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":53.053,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":54.054,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55.055,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":69.069,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}],"e":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":71.071,"s":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}],"e":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":73.073,"s":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}],"e":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.95,"s":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.888,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":78.704,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":81.519,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.334,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}]},{"t":88.0880880880881}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":96,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":30,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 4","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":37.037,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":41.041,"s":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}],"e":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44.044,"s":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}],"e":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":46.046,"s":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":48.048,"s":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":49.049,"s":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.05,"s":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":53.053,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":54.054,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55.055,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":69.069,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}],"e":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":71.071,"s":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}],"e":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":73.073,"s":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}],"e":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.95,"s":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.888,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":78.704,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":81.519,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.334,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}]},{"t":88.0880880880881}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":5,"ix":1},"e":{"a":0,"k":1,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":30,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 3","np":3,"cix":2,"ix":3,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":37.037,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":41.041,"s":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}],"e":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44.044,"s":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}],"e":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":46.046,"s":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":48.048,"s":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":49.049,"s":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.05,"s":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":53.053,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":54.054,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55.055,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":69.069,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}],"e":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":71.071,"s":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}],"e":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":73.073,"s":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}],"e":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.95,"s":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.888,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":78.704,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":81.519,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.334,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}]},{"t":88.0880880880881}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":0,"k":2,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.96862745098,0.874509803922,0.549019607843,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":30,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":3,"cix":2,"ix":4,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":37.037,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":41.041,"s":[{"i":[[0,0],[-157.997,69.524],[0,0]],"o":[[0,0],[89.76,-39.498],[0,0]],"v":[[-256,145],[53.997,60.476],[261,144]],"c":false}],"e":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":44.044,"s":[{"i":[[-131,67],[-167.543,-41.544],[0,0]],"o":[[131,-67],[111.003,27.524],[0,0]],"v":[[-85,118],[177.997,-67.524],[261,144]],"c":false}],"e":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":46.046,"s":[{"i":[[-58.242,135.122],[-109.997,-11.476],[0,0]],"o":[[25,-58],[113.747,11.867],[0,0]],"v":[[95,56],[209.997,-128.524],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":48.048,"s":[{"i":[[-19.414,45.041],[-62.35,-12.578],[-16.222,-23.945]],"o":[[11.785,-72.253],[87.466,32.993],[30.606,47.27]],"v":[[156.215,-94.747],[225.35,-195.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":49.049,"s":[{"i":[[0,0],[-63.35,-42.078],[-16.222,-23.945]],"o":[[0,0],[68.058,37.708],[30.606,47.27]],"v":[[161.715,-174.747],[260.35,-234.922],[261,144]],"c":false}],"e":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":50.05,"s":[{"i":[[-19.414,45.041],[-15.35,-48.578],[-16.222,-23.945]],"o":[[47.785,-55.253],[19.448,61.549],[30.606,47.27]],"v":[[163.215,-255.747],[295.35,-226.422],[261,144]],"c":false}],"e":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":51.051,"s":[{"i":[[0,0],[48.063,-75.399],[-16.181,-61.782]],"o":[[0,0],[-55.924,87.73],[0,0]],"v":[[201.995,-337.25],[261.924,-145.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":52.052,"s":[{"i":[[0,0],[25.07,-76.834],[-16.181,-61.782]],"o":[[0,0],[-29.695,91.056],[0,0]],"v":[[262.495,-339.75],[237.924,-129.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":53.053,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[331.995,-309.25],[213.924,-128.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":54.054,"s":[{"i":[[0,0],[2.076,-78.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.383],[0,0]],"v":[[371.495,-284.75],[217.924,-132.23],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":55.055,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[395.995,-254.25],[228.924,-130.73],[261,144]],"c":false}],"e":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":69.069,"s":[{"i":[[0,0],[0,-112.27],[-16.181,-61.782]],"o":[[0,0],[-3.467,94.382],[0,0]],"v":[[407.502,-239.456],[219.061,-134.017],[261,144]],"c":false}],"e":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":71.071,"s":[{"i":[[0,0],[30.019,-141.415],[-16.181,-61.782]],"o":[[0,0],[-30.019,141.415],[0,0]],"v":[[422.296,-193.428],[222.348,-132.373],[261,144]],"c":false}],"e":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":73.073,"s":[{"i":[[0,0],[-32.611,-39.166],[-42.089,-15.667]],"o":[[-66,58],[41.234,49.522],[0,0]],"v":[[114,-144],[87.497,51.476],[261,144]],"c":false}],"e":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":74.95,"s":[{"i":[[-13,-44],[-165.271,-51.701],[-66,8]],"o":[[13,44],[72.003,22.524],[167.916,-20.353]],"v":[[-150,-19],[16.997,141.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":75.888,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[-7.003,178.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":78.704,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[1.997,220.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":81.519,"s":[{"i":[[0,0],[-124.003,0.476],[-66,8]],"o":[[0,0],[124.003,-0.476],[167.916,-20.353]],"v":[[-254,144],[6.997,159.476],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":84.334,"s":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,209.051],[261,144]],"c":false}],"e":[{"i":[[0,0],[-98.003,-3.524],[0,0]],"o":[[0,0],[98.003,3.524],[0,0]],"v":[[-256,145],[12.997,202.476],[261,144]],"c":false}]},{"t":88.0880880880881}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":2,"ix":1},"e":{"a":0,"k":95,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.952941176471,0.541176470588,0.470588235294,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":25,"ix":5},"lc":3,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":5,"mn":"ADBE Vector Group","hd":false}],"ip":-26.026026026026,"op":637.637637637638,"st":37.037037037037,"bm":0}]},{"id":"comp_3","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1052,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[850,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[958,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":" ","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0},{"ddd":0,"ind":4,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[756,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0},{"ddd":0,"ind":5,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[668,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0},{"ddd":0,"ind":6,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[466,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0},{"ddd":0,"ind":7,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[574,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0},{"ddd":0,"ind":8,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[372,212,0],"ix":2},"a":{"a":0,"k":[62,101,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]},{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":2,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":1,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":3,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":3,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0}]},{"id":"comp_4","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"body 8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[60.83,132,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0.023529412225,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0.023529412225,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-8.00800800800801,"op":592.592592592593,"st":-8.00800800800801,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Head 8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[60,45.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0.023529412225,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0.023529412225,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-3.003003003003,"op":597.597597597598,"st":-3.003003003003,"bm":0}]},{"id":"comp_5","layers":[{"ddd":0,"ind":3,"ty":0,"nm":"Person","refId":"comp_4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[-15],"e":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":4.505,"s":[0],"e":[8]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":9.009,"s":[8],"e":[-11]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":13.514,"s":[-11],"e":[13]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":18.018,"s":[13],"e":[13]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":24.024,"s":[13],"e":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":30.03,"s":[0],"e":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"n":["0p667_1_0p333_0"],"t":42.042,"s":[0],"e":[-6]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":55.055,"s":[-6],"e":[-17.016]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":60.06,"s":[-17.016],"e":[17]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":64.064,"s":[17],"e":[-13]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":69.069,"s":[-13],"e":[23]},{"t":75.0750750750751}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":0,"s":[-52.424,794.634,0],"e":[94.576,820.634,0],"to":[62.4243774414062,-102.634155273438,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":4.505,"s":[94.576,820.634,0],"e":[271.576,820.634,0],"to":[0,0,0],"ti":[-93.5756225585938,-156.634155273438,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":9.009,"s":[271.576,820.634,0],"e":[448.576,806.634,0],"to":[2.57562255859375,-2.3658447265625,0],"ti":[-99.5756225585938,-121.634155273438,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":13.514,"s":[448.576,806.634,0],"e":[530.576,821.634,0],"to":[45.5756225585938,-49.3658447265625,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":18.018,"s":[530.576,821.634,0],"e":[603.576,821.634,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.578,"y":0.578},"o":{"x":0.167,"y":0.167},"n":"0p578_0p578_0p167_0p167","t":27.027,"s":[603.576,821.634,0],"e":[603.576,821.634,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.578,"y":1},"o":{"x":0.344,"y":0},"n":"0p578_1_0p344_0","t":42.042,"s":[603.576,821.634,0],"e":[603.576,812.634,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.344,"y":0},"n":"0p833_0p833_0p344_0","t":55.055,"s":[603.576,812.634,0],"e":[797.576,798.634,0],"to":[0,0,0],"ti":[-84,-62.1666679382324,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":60.06,"s":[797.576,798.634,0],"e":[951.576,823.634,0],"to":[23,-36.8333320617676,0],"ti":[-27.4243774414062,-58.3658447265625,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":64.064,"s":[951.576,823.634,0],"e":[1157.576,803.634,0],"to":[61.6717796325684,-103.519493103027,0],"ti":[0,0,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"n":"0p833_0p833_0p167_0p167","t":69.069,"s":[1157.576,803.634,0],"e":[1378.576,825.634,0],"to":[0,0,0],"ti":[-82.5756225585938,-100.634155273438,0]},{"t":75.0750750750751}],"ix":2},"a":{"a":0,"k":[94.308,184.077,0],"ix":1},"s":{"a":0,"k":[130,130,100],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"n","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[-17.31,-0.493],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[17.31,0.493],[0,0],[0,0]],"v":[[128.48,-7.642],[-6.054,-7.642],[-6.054,79.804],[41.173,86.727],[62.708,80.403],[81.173,87.112],[128.48,79.804]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"ef":[{"ty":21,"nm":"Fill","np":9,"mn":"ADBE Fill","ix":1,"en":1,"ef":[{"ty":10,"nm":"Fill Mask","mn":"ADBE Fill-0001","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"nm":"All Masks","mn":"ADBE Fill-0007","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":2,"nm":"Color","mn":"ADBE Fill-0002","ix":3,"v":{"a":0,"k":[0.203921571374,0.701960802078,0.89411765337,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"}},{"ty":7,"nm":"Invert","mn":"ADBE Fill-0006","ix":4,"v":{"a":0,"k":0,"ix":4}},{"ty":0,"nm":"Horizontal Feather","mn":"ADBE Fill-0003","ix":5,"v":{"a":0,"k":0,"ix":5}},{"ty":0,"nm":"Vertical Feather","mn":"ADBE Fill-0004","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Opacity","mn":"ADBE Fill-0005","ix":7,"v":{"a":0,"k":1,"ix":7}}]}],"w":124,"h":202,"ip":-7.00700700700701,"op":593.593593593594,"st":-7.00700700700701,"bm":0}]},{"id":"comp_6","layers":[{"ddd":0,"ind":2,"ty":0,"nm":"ball top","refId":"comp_7","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[123,36,0],"ix":2},"a":{"a":0,"k":[55.5,55.5,0],"ix":1},"s":{"a":0,"k":[53,53,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Change to Color 3","np":13,"mn":"ADBE Change To Color","ix":1,"en":1,"ef":[{"ty":2,"nm":"From","mn":"ADBE Change To Color-0001","ix":1,"v":{"a":0,"k":[0.917647063732,0.921568632126,0.937254905701,1],"ix":1}},{"ty":2,"nm":"To","mn":"ADBE Change To Color-0002","ix":2,"v":{"a":0,"k":[0.792156875134,0.800000011921,0.807843148708,1],"ix":2}},{"ty":7,"nm":"Change","mn":"ADBE Change To Color-0003","ix":3,"v":{"a":0,"k":4,"ix":3}},{"ty":7,"nm":"Change By","mn":"ADBE Change To Color-0004","ix":4,"v":{"a":0,"k":1,"ix":4}},{"ty":6,"nm":"Tolerance","mn":"ADBE Change To Color-0010","ix":5,"v":0},{"ty":0,"nm":"Hue","mn":"ADBE Change To Color-0005","ix":6,"v":{"a":0,"k":0.03,"ix":6}},{"ty":0,"nm":"Lightness","mn":"ADBE Change To Color-0006","ix":7,"v":{"a":0,"k":1,"ix":7}},{"ty":0,"nm":"Saturation","mn":"ADBE Change To Color-0007","ix":8,"v":{"a":0,"k":1,"ix":8}},{"ty":6,"nm":"Saturation","mn":"ADBE Change To Color-0011","ix":9,"v":0},{"ty":0,"nm":"Softness","mn":"ADBE Change To Color-0008","ix":10,"v":{"a":0,"k":0.5,"ix":10}},{"ty":7,"nm":"View Correction Matte","mn":"ADBE Change To Color-0009","ix":11,"v":{"a":0,"k":0,"ix":11}}]},{"ty":5,"nm":"Change to Color 2","np":13,"mn":"ADBE Change To Color","ix":2,"en":1,"ef":[{"ty":2,"nm":"From","mn":"ADBE Change To Color-0001","ix":1,"v":{"a":0,"k":[0.819607853889,0.831372559071,0.858823537827,1],"ix":1}},{"ty":2,"nm":"To","mn":"ADBE Change To Color-0002","ix":2,"v":{"a":0,"k":[0.615686297417,0.623529434204,0.631372570992,1],"ix":2}},{"ty":7,"nm":"Change","mn":"ADBE Change To Color-0003","ix":3,"v":{"a":0,"k":4,"ix":3}},{"ty":7,"nm":"Change By","mn":"ADBE Change To Color-0004","ix":4,"v":{"a":0,"k":1,"ix":4}},{"ty":6,"nm":"Tolerance","mn":"ADBE Change To Color-0010","ix":5,"v":0},{"ty":0,"nm":"Hue","mn":"ADBE Change To Color-0005","ix":6,"v":{"a":0,"k":0.03,"ix":6}},{"ty":0,"nm":"Lightness","mn":"ADBE Change To Color-0006","ix":7,"v":{"a":0,"k":1,"ix":7}},{"ty":0,"nm":"Saturation","mn":"ADBE Change To Color-0007","ix":8,"v":{"a":0,"k":1,"ix":8}},{"ty":6,"nm":"Saturation","mn":"ADBE Change To Color-0011","ix":9,"v":0},{"ty":0,"nm":"Softness","mn":"ADBE Change To Color-0008","ix":10,"v":{"a":0,"k":0.5,"ix":10}},{"ty":7,"nm":"View Correction Matte","mn":"ADBE Change To Color-0009","ix":11,"v":{"a":0,"k":0,"ix":11}}]}],"sy":[{"ty":0,"nm":"Stroke","c":{"a":0,"k":[0.615686297417,0.623529434204,0.631372570992,1],"ix":2},"s":{"a":0,"k":1,"ix":3}}],"w":111,"h":111,"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[123.676,138.221,0],"ix":2},"a":{"a":0,"k":[-349.324,174.221,0],"ix":1},"s":{"a":0,"k":[157.387,91,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[9.352,225.559],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":0,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0.027450980619,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.792156862745,0.8,0.807843137255,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-349.324,174.221],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Shape Layer 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[476,-48,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[54.023,17.809],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":20,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[0.61568627451,0.623529411765,0.63137254902,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.792156862745,0.8,0.807843137255,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-352.988,139.096],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[122.001,225.774,0],"ix":2},"a":{"a":0,"k":[0.001,0.957,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-2.597,0],[0,0],[2.123,1.482],[0,0],[10.938,-7.532],[0,0]],"o":[[0,0],[2.589,0],[0,0],[-10.891,-7.6],[0,0],[-2.139,1.473]],"v":[[-42.541,15.183],[42.544,15.183],[44.058,10.367],[18.4,-7.538],[-17.892,-7.651],[-44.042,10.358]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.61568627451,0.623529411765,0.63137254902,1],"ix":3,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.792156862745,0.8,0.807843137255,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0}]},{"id":"comp_7","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 5","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[55.697,55.697,0],"ix":2},"a":{"a":0,"k":[-325.303,-176.303,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[107.395,107.395],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0.027450980619,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0.027450980619,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-325.303,-176.303],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 3","tt":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[375,232,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[171.367,158.457],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0.023529412225,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.917647058824,0.921568627451,0.937254901961,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-349.512,-215.295],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[55.697,55.697,0],"ix":2},"a":{"a":0,"k":[-325.303,-176.303,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[107.395,107.395],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0,0,0.027450980619,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.819607843137,0.83137254902,0.858823529412,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-325.303,-176.303],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0}]},{"id":"comp_8","layers":[{"ddd":0,"ind":1,"ty":0,"nm":"party thing","refId":"comp_9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[869,465,0],"ix":2},"a":{"a":0,"k":[942,467,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":1920,"h":1080,"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Spotlight 2","sr":1,"ks":{"o":{"a":0,"k":50,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":-17.017,"s":[0],"e":[-39]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":17.017,"s":[-39],"e":[-11]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":53.053,"s":[-11],"e":[-39]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":87.087,"s":[-39],"e":[-11]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":123.123,"s":[-11],"e":[-39]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":152.152,"s":[-39],"e":[-11]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":188.188,"s":[-11],"e":[-39]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":222.222,"s":[-39],"e":[-11]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":258.258,"s":[-11],"e":[-39]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":292.292,"s":[-39],"e":[-11]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":328.328,"s":[-11],"e":[-39]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":357.357,"s":[-39],"e":[-11]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":393.393,"s":[-11],"e":[-39]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":427.427,"s":[-39],"e":[-11]},{"t":463.463463463463}],"ix":10},"p":{"a":0,"k":[1108,378,0],"ix":2},"a":{"a":0,"k":[-158,-162,0],"ix":1},"s":{"a":0,"k":[-100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-166,-182],[-140,416],[296,268]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.639215686275,0.862745098039,0.952941176471,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-17.017017017017,"op":583.583583583584,"st":-17.017017017017,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,508,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[575.859,143.445],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":0,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[25.93,266.277],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"body 13","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[813.83,684,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"body 8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1066.83,674,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"body 7","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[942.83,670,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"body 6","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[910.83,698,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":"body 5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1002.83,730,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"body 4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1066.83,690,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":"body 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[947.17,716,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"body 10","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1092,724,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":12,"ty":4,"nm":"body 9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[875.17,690,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":13,"ty":4,"nm":"body 11","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[985.17,664,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":14,"ty":4,"nm":"body","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[908,686,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":15,"ty":0,"nm":"party thing","refId":"comp_9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[994.5,416.5,0],"ix":2},"a":{"a":0,"k":[942,467,0],"ix":1},"s":{"a":0,"k":[103,103,100],"ix":6}},"ao":0,"w":1920,"h":1080,"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":16,"ty":0,"nm":"party thing","refId":"comp_9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1053,525.5,0],"ix":2},"a":{"a":0,"k":[942,467,0],"ix":1},"s":{"a":0,"k":[47,47,100],"ix":6}},"ao":0,"w":1920,"h":1080,"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":17,"ty":4,"nm":"Head 8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1100,657.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":18,"ty":4,"nm":"Head 12","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[815.305,609.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":19,"ty":4,"nm":"Head 10","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[874.305,608.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":20,"ty":4,"nm":"Head 7","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1013.305,659.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":21,"ty":4,"nm":"Head 9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[961.305,661.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":22,"ty":4,"nm":"Head 6","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[885.305,661.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":24,"ty":4,"nm":"Spotlight","sr":1,"ks":{"o":{"a":0,"k":55,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":0,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":34.034,"s":[41],"e":[0]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":70.07,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":104.104,"s":[41],"e":[0]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":140.14,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":174.174,"s":[41],"e":[0]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":210.21,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":244.244,"s":[41],"e":[0]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":280.28,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":314.314,"s":[41],"e":[0]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":350.35,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":384.384,"s":[41],"e":[0]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":420.42,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":454.454,"s":[41],"e":[0]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":490.49,"s":[0],"e":[41]},{"i":{"x":[0.4],"y":[1]},"o":{"x":[0.4],"y":[0]},"n":["0p4_1_0p4_0"],"t":524.525,"s":[41],"e":[0]},{"t":560.560560560561}],"ix":10},"p":{"a":0,"k":[802,378,0],"ix":2},"a":{"a":0,"k":[-158,-162,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-166,-182],[-140,416],[296,268]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.811764705882,0.929411764706,0.98431372549,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":25,"ty":4,"nm":"Head 11","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[804.305,610.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":26,"ty":4,"nm":"body 12","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[804.17,686,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":27,"ty":4,"nm":"body 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[861.17,686,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[31,31,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[-59,0],[0,-59],[0,0]],"o":[[0,0],[0,-59],[59,0],[0,0],[0,0]],"v":[[-107,166.5],[-107,-59.5],[0,-166.5],[107,-59.5],[107,166.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":28,"ty":4,"nm":"Head 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[1061.305,609.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":29,"ty":4,"nm":"Head 4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[991.305,609.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":30,"ty":4,"nm":"Head 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[919.305,609.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":31,"ty":4,"nm":"Head","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[853.305,609.305,0],"ix":2},"a":{"a":0,"k":[-156.695,39.305,0],"ix":1},"s":{"a":0,"k":[68,68,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Wiggle - position","np":4,"mn":"ADBE CM WigglePosition","ix":1,"en":1,"ef":[{"ty":0,"nm":"Wiggle Speed (wigs/sec)","mn":"ADBE CM WigglePosition-0001","ix":1,"v":{"a":0,"k":2,"ix":1}},{"ty":0,"nm":"Wiggle Amount (pixels)","mn":"ADBE CM WigglePosition-0002","ix":2,"v":{"a":0,"k":15,"ix":2}}]},{"ty":5,"nm":"(Transform)","np":15,"mn":"ADBE Geometry2","ix":2,"en":1,"ef":[{"ty":3,"nm":"Anchor Point","mn":"ADBE Geometry2-0001","ix":1,"v":{"a":0,"k":[0,0],"ix":1}},{"ty":3,"nm":"Position","mn":"ADBE Geometry2-0002","ix":2,"v":{"a":0,"k":[0,0],"ix":2,"x":"var $bm_rt;\n$bm_rt = wiggle(effect('Wiggle - position')('Wiggle Speed (wigs/sec)'), effect('Wiggle - position')('Wiggle Amount (pixels)'));"}},{"ty":7,"nm":"Uniform Scale","mn":"ADBE Geometry2-0011","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":0,"nm":"Scale Height","mn":"ADBE Geometry2-0003","ix":4,"v":{"a":0,"k":100,"ix":4}},{"ty":0,"nm":"Scale Width","mn":"ADBE Geometry2-0004","ix":5,"v":{"a":0,"k":100,"ix":5}},{"ty":0,"nm":"Skew","mn":"ADBE Geometry2-0005","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Skew Axis","mn":"ADBE Geometry2-0006","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":0,"nm":"Rotation","mn":"ADBE Geometry2-0007","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"nm":"Opacity","mn":"ADBE Geometry2-0008","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"nm":"Use Composition’s Shutter Angle","mn":"ADBE Geometry2-0009","ix":10,"v":{"a":0,"k":1,"ix":10}},{"ty":0,"nm":"Shutter Angle","mn":"ADBE Geometry2-0010","ix":11,"v":{"a":0,"k":0,"ix":11}},{"ty":7,"nm":"Sampling","mn":"ADBE Geometry2-0012","ix":12,"v":{"a":0,"k":1,"ix":12}},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":13,"v":{"a":0,"k":1,"ix":13}}]}],"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[105.391,105.391],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.203921568627,0.701960784314,0.894117647059,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-156.695,39.305],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0},{"ddd":0,"ind":32,"ty":4,"nm":"background","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[960,540,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ef":[{"ty":5,"nm":"Gradient Ramp","np":11,"mn":"ADBE Ramp","ix":1,"en":1,"ef":[{"ty":3,"nm":"Start of Ramp","mn":"ADBE Ramp-0001","ix":1,"v":{"a":0,"k":[952,297],"ix":1}},{"ty":2,"nm":"Start Color","mn":"ADBE Ramp-0002","ix":2,"v":{"a":0,"k":[0.811764717102,0.929411768913,0.984313726425,1],"ix":2}},{"ty":3,"nm":"End of Ramp","mn":"ADBE Ramp-0003","ix":3,"v":{"a":0,"k":[953,632],"ix":3}},{"ty":2,"nm":"End Color","mn":"ADBE Ramp-0004","ix":4,"v":{"a":0,"k":[0.423529416323,0.780392169952,0.917647063732,1],"ix":4}},{"ty":7,"nm":"Ramp Shape","mn":"ADBE Ramp-0005","ix":5,"v":{"a":0,"k":1,"ix":5}},{"ty":0,"nm":"Ramp Scatter","mn":"ADBE Ramp-0006","ix":6,"v":{"a":0,"k":0,"ix":6}},{"ty":0,"nm":"Blend With Original","mn":"ADBE Ramp-0007","ix":7,"v":{"a":0,"k":0,"ix":7}},{"ty":6,"nm":"","mn":"ADBE Ramp-0008","ix":8,"v":0},{"ty":7,"nm":"GPU Rendering","mn":"ADBE Force CPU GPU","ix":9,"v":{"a":0,"k":1,"ix":9}}]}],"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[1920,1080],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":0,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.407843137255,0.780392156863,0.925490196078,1],"ix":4,"x":"var $bm_rt;\nvar rayColorPalette, rayColorSwatch;\ntry {\n    rayColorPalette = 'Ray - palette 01';\n    rayColorSwatch = Math.floor(mul(value[2], 255));\n    $bm_rt = comp(rayColorPalette).layer(1)(4)(rayColorSwatch)(1);\n} catch (e) {\n    $bm_rt = value;\n}"},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-2.002002002002,"op":598.598598598599,"st":-2.002002002002,"bm":0}]},{"id":"comp_9","layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Shape Layer 2","sr":1,"ks":{"o":{"a":0,"k":61,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"n":["0p833_0p833_0p167_0p167"],"t":0,"s":[16],"e":[1816]},{"t":463.463463463463}],"ix":10},"p":{"a":0,"k":[944,466,0],"ix":2},"a":{"a":0,"k":[-16,-74,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":0,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":6.006,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":15.015,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":21.021,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":30.03,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":36.036,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":45.045,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":51.051,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":60.06,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":66.066,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":75.075,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":81.081,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":90.09,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":96.096,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":105.105,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":111.111,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":120.12,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":126.126,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":135.135,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":141.141,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":150.15,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":156.156,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":165.165,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":171.171,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":180.18,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":186.186,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":195.195,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":201.201,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":210.21,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":216.216,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":225.225,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":231.231,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":240.24,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":246.246,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":255.255,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":261.261,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":270.27,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":276.276,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":285.285,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":291.291,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":300.3,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":306.306,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":315.315,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":321.321,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":330.33,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":336.336,"s":[131,131,100],"e":[47,47,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":345.345,"s":[47,47,100],"e":[131,131,100]},{"i":{"x":[0.4,0.4,0.4],"y":[1,1,1]},"o":{"x":[0.6,0.6,0.6],"y":[0,0,0]},"n":["0p4_1_0p6_0","0p4_1_0p6_0","0p4_1_0p6_0"],"t":351.351,"s":[131,131,100],"e":[47,47,100]},{"t":360.36036036036}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-28.016,-70.555],[-4.603,-77.788]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.901960784314,0.952941176471,0.98431372549,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":14,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-20,-86],[-13.032,-63.785]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.901960784314,0.952941176471,0.98431372549,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":14,"ix":5},"lc":2,"lj":1,"ml":4,"ml2":{"a":0,"k":4,"ix":8},"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":600.600600600601,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Members First","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[531,420,0],"ix":2},"a":{"a":0,"k":[960,540,0],"ix":1},"s":{"a":0,"k":[64,64,100],"ix":6}},"ao":0,"w":1920,"h":1080,"ip":0,"op":600.600600600601,"st":0,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/resources/models/Album-Cute-COVER-small.png b/resources/models/Album-Cute-COVER-small.png
new file mode 100644 (file)
index 0000000..d58a237
Binary files /dev/null and b/resources/models/Album-Cute-COVER-small.png differ
diff --git a/resources/models/AlbumCute.dae b/resources/models/AlbumCute.dae
new file mode 100644 (file)
index 0000000..1d72c12
--- /dev/null
@@ -0,0 +1,7514 @@
+<?xml version="1.0" encoding="utf-8"?>
+<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1">
+  <asset>
+    <contributor>
+      <author></author>
+      <authoring_tool>FBX COLLADA exporter</authoring_tool>
+      <comments></comments>
+    </contributor>
+    <created>2012-01-13T11:57:30Z</created>
+    <keywords></keywords>
+    <modified>2012-01-13T11:57:30Z</modified>
+    <revision></revision>
+    <subject></subject>
+    <title></title>
+    <unit meter="0.010000" name="centimeter"></unit>
+    <up_axis>Y_UP</up_axis>
+  </asset>
+  <library_images>
+    <image id="file9-image" name="file9">
+      <init_from>file://Album-Cute-COVER-small.png</init_from>
+    </image>
+    <image id="Album_Cute_00011_file3-image" name="Album_Cute_00011_file3">
+      <init_from>file://Kitten.png</init_from>
+    </image>
+  </library_images>
+  <library_materials>
+    <material id="Album_Texture" name="Album_Texture">
+      <instance_effect url="#Album_Texture-fx"/>
+    </material>
+    <material id="Album_Cute_00011_lambert4" name="Album_Cute_00011_lambert4">
+      <instance_effect url="#Album_Cute_00011_lambert4-fx"/>
+    </material>
+    <material id="lambert1" name="lambert1">
+      <instance_effect url="#lambert1-fx"/>
+    </material>
+  </library_materials>
+  <library_effects>
+    <effect id="Album_Texture-fx" name="Album_Texture">
+      <profile_COMMON>
+        <technique sid="standard">
+          <lambert>
+            <emission>
+              <color sid="emission">0.000000  0.000000 0.000000 1.000000</color>
+            </emission>
+            <ambient>
+              <color sid="ambient">0.000000  0.000000 0.000000 1.000000</color>
+            </ambient>
+            <diffuse>
+              <texture texture="file9-image" texcoord="CHANNEL0">
+                <extra>
+                  <technique profile="MAYA">
+                    <wrapU sid="wrapU0">TRUE</wrapU>
+                    <wrapV sid="wrapV0">TRUE</wrapV>
+                    <blend_mode>NONE</blend_mode>
+                  </technique>
+                </extra>
+              </texture>
+              <texture texture="file9-image" texcoord="CHANNEL0">
+                <extra>
+                  <technique profile="MAYA">
+                    <wrapU sid="wrapU0">TRUE</wrapU>
+                    <wrapV sid="wrapV0">TRUE</wrapV>
+                    <blend_mode>NONE</blend_mode>
+                  </technique>
+                </extra>
+              </texture>
+            </diffuse>
+            <transparent opaque="RGB_ZERO">
+              <color sid="transparent">0.000000  0.000000 0.000000 1.000000</color>
+            </transparent>
+            <transparency>
+              <float sid="transparency">1.000000</float>
+            </transparency>
+          </lambert>
+        </technique>
+      </profile_COMMON>
+    </effect>
+    <effect id="Album_Cute_00011_lambert4-fx" name="Album_Cute_00011_lambert4">
+      <profile_COMMON>
+        <technique sid="standard">
+          <lambert>
+            <emission>
+              <color sid="emission">0.000000  0.000000 0.000000 1.000000</color>
+            </emission>
+            <ambient>
+              <color sid="ambient">0.000000  0.000000 0.000000 1.000000</color>
+            </ambient>
+            <diffuse>
+              <texture texture="Album_Cute_00011_file3-image" texcoord="CHANNEL0">
+                <extra>
+                  <technique profile="MAYA">
+                    <wrapU sid="wrapU0">TRUE</wrapU>
+                    <wrapV sid="wrapV0">TRUE</wrapV>
+                    <blend_mode>NONE</blend_mode>
+                  </technique>
+                </extra>
+              </texture>
+            </diffuse>
+            <transparent opaque="RGB_ZERO">
+              <color sid="transparent">0.000000  0.000000 0.000000 1.000000</color>
+            </transparent>
+            <transparency>
+              <float sid="transparency">1.000000</float>
+            </transparency>
+          </lambert>
+        </technique>
+      </profile_COMMON>
+    </effect>
+    <effect id="lambert1-fx" name="lambert1">
+      <profile_COMMON>
+        <technique sid="standard">
+          <lambert>
+            <emission>
+              <color sid="emission">0.000000  0.000000 0.000000 1.000000</color>
+            </emission>
+            <ambient>
+              <color sid="ambient">0.000000  0.000000 0.000000 1.000000</color>
+            </ambient>
+            <diffuse>
+              <color sid="diffuse">0.400000  0.400000 0.400000 1.000000</color>
+            </diffuse>
+            <transparent opaque="RGB_ZERO">
+              <color sid="transparent">0.000000  0.000000 0.000000 1.000000</color>
+            </transparent>
+            <transparency>
+              <float sid="transparency">1.000000</float>
+            </transparency>
+          </lambert>
+        </technique>
+      </profile_COMMON>
+    </effect>
+  </library_effects>
+  <library_geometries>
+    <geometry id="Album_Cute-lib" name="Album_CuteMesh">
+      <mesh>
+        <source id="Album_Cute-POSITION">
+          <float_array id="Album_Cute-POSITION-array" count="2340">
+-3.450536 1.210918 -1.234757
+-3.450536 1.210918 1.104508
+-4.044423 1.140426 1.153060
+-4.044423 1.140426 -1.279406
+-4.699009 1.110540 1.153060
+-4.699009 1.110540 -1.279406
+-4.937440 1.068726 1.153060
+-4.937440 1.068726 -1.279406
+-5.290196 -0.622742 1.153060
+-5.290197 -0.622742 -1.279406
+-5.252836 -2.104159 1.153060
+-5.252836 -2.104159 -1.279406
+-4.816874 -3.225436 1.153481
+-4.816581 -3.225437 -1.279406
+-4.139227 -3.244806 1.153407
+-3.493552 -3.291673 1.104508
+-3.493552 -3.291673 -1.234757
+-4.765473 1.469497 1.153060
+-4.060684 1.498813 -1.279406
+-5.084641 1.418520 1.153060
+-3.493552 -3.557343 -1.234757
+-3.461433 1.476692 -1.234757
+-3.461433 1.476692 1.104508
+-4.060684 1.498813 1.153060
+-4.765473 1.469496 -1.279406
+-5.530613 0.696660 -1.279406
+-5.549091 -2.201693 -1.279406
+-5.593268 -0.604600 -1.279406
+-5.530614 0.696660 1.153060
+-5.593268 -0.604600 1.153060
+-5.549090 -2.201693 1.153060
+-5.345669 1.219004 -1.279406
+-5.084641 1.418520 -1.279406
+-4.921001 -3.584788 1.153131
+-4.146989 -3.603702 1.153118
+-3.493552 -3.557343 1.104508
+-3.266926 1.171858 0.821768
+-3.316000 -3.245182 0.821768
+-3.281636 1.530652 0.821768
+-4.132193 -3.663518 0.821768
+-3.316000 -3.603834 0.821768
+-5.643780 -0.601576 0.821768
+-5.598466 -2.217949 0.821768
+-5.454576 -3.228477 0.821768
+-4.938348 -3.644681 0.821768
+-3.266926 1.171858 -0.971856
+-3.281636 1.530652 -0.971856
+-4.024686 1.081393 -0.971856
+-3.316000 -3.245182 -0.971856
+-4.046368 1.559243 -0.971856
+-3.316000 -3.603834 -0.971856
+-4.687932 1.050714 -0.971856
+-4.912906 1.010427 -0.971856
+-5.072510 0.881862 -0.971856
+-4.799186 -3.165545 -0.971857
+-4.138986 -3.244806 -1.279406
+-4.146949 -3.603702 -1.279406
+-4.024686 1.081393 0.821768
+-4.046368 1.559243 0.821768
+-4.004103 1.082237 0.013636
+-3.114610 -3.245182 -0.285755
+-4.025784 1.560086 0.013636
+-3.114610 -3.603834 -0.285755
+-4.687932 1.050714 0.013636
+-4.912906 1.010427 0.013636
+-5.072510 0.881862 0.013636
+-4.799186 -3.165545 0.013636
+-3.057203 1.180456 -0.285755
+-3.071913 1.539250 -0.285755
+-4.115987 -3.663518 0.013636
+-5.109175 1.476819 0.013636
+-5.598466 -2.217949 0.013636
+-3.542519 1.160559 1.153060
+-4.121576 -3.184990 -0.971856
+-3.589687 -3.245182 -1.279406
+-3.501562 -3.424508 -1.279406
+-3.589687 -3.603834 -1.279406
+-3.465718 1.343406 -1.279406
+-3.465718 1.343406 1.153060
+-3.557230 1.519352 1.153060
+-4.056005 1.319478 1.215484
+-4.056005 1.319478 -1.336813
+-4.132193 -3.663518 -0.971856
+-3.501562 -3.424508 1.153060
+-3.589687 -3.603834 1.153060
+-3.557229 1.519353 -1.279406
+-5.441732 -0.613671 1.215484
+-5.241976 0.514961 1.153060
+-5.111532 0.930025 -1.279406
+-5.072510 0.881862 0.821768
+-5.384692 1.267167 -0.971856
+-5.241976 0.514961 -1.279406
+-5.643780 -0.601576 -0.971856
+-5.441732 -0.613671 -1.336813
+-5.239685 -0.625765 0.821768
+-5.410490 -3.186598 1.153060
+-5.598466 -2.217949 -0.971856
+-5.019206 -3.141151 1.153060
+-5.218710 -3.459960 1.153060
+-5.145970 -2.935324 1.153060
+-4.920953 -3.584789 -1.279406
+-5.454576 -3.228477 -0.971856
+-5.410490 -3.186598 -1.279406
+-4.938348 -3.644681 -0.971856
+-5.218710 -3.459960 -1.279406
+-3.137418 -3.245182 0.313027
+-3.137418 -3.603834 0.313027
+-3.382476 1.107221 0.821768
+-3.234947 1.352868 0.821768
+-3.270597 -3.424508 0.821768
+-4.938348 -3.644681 0.013636
+-3.382476 1.107221 -0.971856
+-3.270597 -3.424508 -0.971856
+-3.234947 1.352867 -0.971856
+-3.542519 1.160559 -1.279406
+-3.589687 -3.245182 1.153060
+-3.452207 -3.185406 0.821768
+-3.452207 -3.663610 0.821768
+-3.402090 1.585613 0.821768
+-3.452207 -3.185406 -0.971856
+-3.402090 1.585613 -0.971856
+-3.452207 -3.663610 -0.971856
+-5.345669 1.219004 1.153060
+-5.011041 1.243623 1.215484
+-4.687932 1.050714 0.821768
+-5.109175 1.476819 -0.971856
+-5.011041 1.243623 -1.336812
+-5.111532 0.930025 1.153060
+-4.912906 1.010427 0.821768
+-5.109175 1.476819 0.821768
+-4.776551 1.529323 0.013636
+-5.454576 -3.228477 0.013636
+-5.643780 -0.601576 0.013636
+-3.081340 1.179467 0.313027
+-3.096051 1.538261 0.313027
+-3.015449 1.361867 -0.285755
+-3.305697 -3.663610 -0.285755
+-3.305697 -3.185406 -0.285755
+-3.050915 -3.424508 -0.285755
+-3.221693 1.593009 -0.285755
+-3.202078 1.114617 -0.285755
+-4.121677 -3.184990 0.821913
+-4.105370 -3.184990 0.013636
+-5.239685 -0.625765 0.013636
+-5.239685 -0.625765 -0.971856
+-5.019206 -3.141151 -1.279406
+-5.145970 -2.935324 -1.279406
+-5.203460 -2.087903 0.821768
+-5.203461 -2.087903 -0.971856
+-5.203460 -2.087903 0.013636
+-4.146324 -3.424254 -1.336813
+-3.618393 -3.424508 1.215485
+-3.582451 1.338620 -1.336813
+-5.386295 0.605810 1.215484
+-5.193870 0.484677 -0.971856
+-5.386295 0.605810 -1.336812
+-5.578719 0.726944 -0.971856
+-5.400964 -2.152926 1.215484
+-5.278230 -3.060961 1.215484
+-5.118958 -3.300555 1.215484
+-5.251961 -3.513095 -0.971856
+-4.868767 -3.405113 -1.336813
+-3.040302 1.360848 0.313027
+-3.322308 -3.663610 0.313027
+-5.193870 0.484677 0.821768
+-5.578720 0.726944 0.821768
+-5.251961 -3.513095 0.821768
+-5.193870 0.484677 0.013636
+-5.251961 -3.513095 0.013636
+-3.618393 -3.424508 -1.336813
+-3.582451 1.338620 1.215485
+-4.146484 -3.424254 1.215716
+-3.224069 1.113715 0.313027
+-5.228601 1.074515 1.215484
+-4.732242 1.290018 1.215484
+-4.732242 1.290018 -1.336813
+-5.228601 1.074514 -1.336812
+-5.384692 1.267167 0.821768
+-5.384692 1.267167 0.013636
+-4.776551 1.529323 -0.971856
+-4.776551 1.529323 0.821768
+-5.578720 0.726944 0.013636
+-3.322308 -3.185406 0.313027
+-3.075788 -3.424508 0.313027
+-3.243683 1.592108 0.313027
+-4.868962 -3.405113 1.215765
+-4.799308 -3.165545 0.821944
+-5.400964 -2.152926 -1.336813
+-5.118958 -3.300555 -1.336813
+-5.278230 -3.060961 -1.336813
+-4.985955 -3.088016 -0.971857
+-5.101883 -2.893445 0.821768
+-4.985955 -3.088016 0.821768
+-5.101883 -2.893445 -0.971857
+-4.985955 -3.088016 0.013636
+-5.101883 -2.893445 0.013636
+-4.729691 1.213925 0.545549
+-4.075570 1.233911 0.804510
+-3.550262 1.262281 0.545549
+-4.750277 1.573251 0.542169
+-4.105802 1.599674 0.792057
+-3.577187 1.621347 0.542169
+-4.708731 1.638452 0.513144
+-4.110566 1.677467 0.695911
+-3.623932 1.682928 0.513144
+-4.816887 1.648866 0.073542
+-4.153309 1.724502 -0.000530
+-3.516991 1.702161 0.073542
+-4.790417 1.647089 -0.399973
+-3.543227 1.698224 -0.399973
+-4.708731 1.638452 -0.617096
+-4.120445 1.677771 -0.805285
+-3.623932 1.682928 -0.617096
+-4.750277 1.573251 -0.646121
+-4.105802 1.599674 -0.896010
+-3.577187 1.621347 -0.646121
+-4.595982 1.579577 0.682214
+-3.731483 1.615021 0.682214
+-4.591244 1.653109 0.603101
+-3.742224 1.687919 0.603101
+-4.591244 1.653109 -0.707053
+-3.742224 1.687919 -0.707053
+-4.595982 1.579577 -0.786166
+-3.731483 1.615021 -0.786166
+-4.741669 1.615526 0.531712
+-3.589227 1.662776 0.531712
+-4.770564 1.645757 0.392981
+-3.562904 1.695271 0.392981
+-4.741669 1.615526 -0.635664
+-3.589227 1.662776 -0.635664
+-4.729691 1.213925 -0.649501
+-4.075570 1.233911 -0.908462
+-3.550262 1.262281 -0.649501
+-3.460776 1.626120 -0.402172
+-3.429586 1.627399 0.076022
+-3.484169 1.625161 0.392420
+-4.866688 1.568478 -0.402172
+-4.897878 1.567199 0.076022
+-4.843296 1.569437 0.392420
+-4.574759 1.220237 0.686521
+-3.705189 1.255889 0.686521
+-4.590089 1.621741 0.669291
+-4.108538 1.641484 0.777202
+-3.740807 1.656561 0.669291
+-4.590089 1.621741 -0.773244
+-4.108538 1.641484 -0.881154
+-3.740807 1.656561 -0.773244
+-4.574759 1.220237 -0.790473
+-3.705189 1.255889 -0.790473
+-3.434399 1.267213 -0.403748
+-3.403574 1.268557 0.076507
+-3.457519 1.266205 0.394602
+-3.474864 1.667465 -0.396008
+-3.444224 1.668721 0.073769
+-3.497845 1.666523 0.384598
+-4.845568 1.209355 -0.403748
+-4.876400 1.208172 0.076507
+-4.822444 1.210243 0.394602
+-4.856031 1.610837 -0.396008
+-4.886672 1.609581 0.073769
+-4.833050 1.611780 0.384598
+0.670915 0.697681 -3.111238
+2.464904 0.697679 -4.502638
+1.931551 0.697679 -4.848246
+2.938086 0.697679 -4.075343
+2.405996 0.697679 -0.882432
+1.776267 0.697679 -0.878326
+1.234187 0.697679 -1.044100
+0.694825 0.697679 -1.436052
+0.278184 0.697679 -0.913731
+-0.197538 0.697679 -0.609161
+-0.800806 0.697679 -0.445125
+-1.423885 0.697679 -0.533089
+-1.964076 0.697679 -0.923689
+-2.349892 0.697679 -1.471775
+-2.456059 0.697679 -2.115633
+-2.372142 0.697679 -2.775901
+-2.116069 0.697679 -3.386115
+-1.767556 0.697679 -3.925257
+-1.342411 0.697679 -4.400331
+-0.887096 0.697679 -4.843967
+-0.463304 0.697679 -5.248489
+-0.132246 0.697679 -5.612033
+0.020886 0.697679 -5.906560
+0.095163 0.697679 -6.152751
+0.221011 0.697679 -5.941100
+0.439464 0.697679 -5.699109
+0.854979 0.697679 -5.435615
+1.373697 0.697679 -5.156410
+2.464904 1.010289 -4.502638
+1.931551 1.010289 -4.848246
+2.938086 1.010288 -4.075343
+3.339495 0.697679 -3.554788
+3.587324 0.697679 -2.939760
+3.647473 0.697679 -2.289627
+3.413241 0.697679 -1.656986
+2.989141 0.697679 -1.134888
+2.405996 1.010289 -0.882432
+1.776267 1.010289 -0.878326
+1.234187 1.010289 -1.044100
+0.694825 1.010289 -1.436052
+0.278183 1.010289 -0.913731
+-0.197538 1.010289 -0.609161
+-0.800806 1.010289 -0.445125
+-1.423885 1.010289 -0.533089
+-1.964076 1.010289 -0.923689
+-2.349892 1.010289 -1.471775
+-2.456059 1.010289 -2.115633
+-2.372142 1.010289 -2.775901
+-2.116069 1.010289 -3.386115
+-1.767556 1.010289 -3.925257
+-1.342411 1.010289 -4.400331
+-0.887096 1.010289 -4.843967
+-0.463304 1.010289 -5.248489
+-0.132246 1.010289 -5.612033
+0.020886 1.010289 -5.906560
+0.095162 1.010289 -6.152752
+0.221011 1.010289 -5.941100
+0.439464 1.010289 -5.699109
+0.854979 1.010289 -5.435615
+1.373697 1.010289 -5.156410
+3.339495 1.010288 -3.554788
+3.587324 1.010288 -2.939760
+3.647473 1.010288 -2.289627
+3.413241 1.010288 -1.656986
+2.989141 1.010288 -1.134888
+-5.054743 1.094466 -6.957500
+6.693733 -2.401945 7.101533
+6.525078 -2.297979 7.138983
+6.356423 -2.194014 7.101534
+6.300205 -2.159359 6.989185
+6.356423 -2.194014 -7.204289
+6.300205 -2.159359 -7.071956
+6.693733 -2.401945 -7.204290
+6.525078 -2.297979 -7.248401
+6.410430 -1.431837 -7.204290
+6.351672 -1.423323 -7.071957
+6.762980 -1.482916 -7.204290
+6.586705 -1.457376 -7.248402
+6.762980 -1.482916 7.101533
+6.586705 -1.457376 7.138983
+6.410430 -1.431837 7.101533
+6.351672 -1.423323 6.989184
+6.749951 -2.436600 -7.064784
+6.749950 -2.436600 6.989184
+6.728960 -2.430624 -2.788947
+6.633911 -2.967022 -3.070582
+6.728960 0.063356 -2.788947
+6.633936 0.599705 -3.070582
+6.315248 1.014670 6.989184
+6.316216 1.013572 -7.064673
+6.633911 0.599755 3.064373
+6.632968 0.600802 6.989184
+-5.054743 0.516432 6.874727
+-5.301433 0.589572 6.788884
+-4.884393 0.516432 0.030057
+-4.958228 0.589572 0.028554
+6.608915 -3.045762 -7.064751
+6.316216 -3.380840 -7.064673
+-5.301433 1.028417 -6.871656
+-4.892531 1.094466 0.031032
+-4.958228 1.028417 0.028554
+-5.301433 -3.395684 -6.871656
+-4.958228 -3.395685 0.028554
+-5.383663 -3.176262 -6.843042
+-4.982840 -3.176262 0.028053
+-5.301433 -2.956840 -6.871656
+-4.958228 -2.956840 0.028554
+-5.054743 -2.883699 -6.957500
+-4.884393 -2.883699 0.030057
+6.315248 -3.381937 6.989184
+-5.054743 -3.468825 6.874727
+-5.301433 -3.395684 6.788884
+-4.884393 -3.468825 0.030057
+-5.301433 1.028417 6.788884
+-5.383663 0.808995 6.760269
+-4.982840 0.808995 0.028053
+6.592632 -2.420662 -3.050668
+6.665987 -2.412693 -2.986480
+6.728960 -2.430624 -3.359554
+6.665987 -2.412693 -3.114856
+6.592632 0.053395 -3.050668
+6.665987 0.045426 -2.986480
+6.728960 0.063356 -3.359554
+6.665987 0.045426 -3.114856
+6.633910 -2.967022 3.064373
+6.592631 -2.420662 3.039065
+6.665987 -2.412693 3.115483
+6.728960 -2.430624 3.400482
+6.728960 -2.430624 2.737587
+6.665987 -2.412693 2.962649
+6.592632 0.053395 3.039065
+6.665987 0.045426 3.115482
+6.728960 0.063356 3.400483
+6.728960 0.063356 2.737587
+6.665987 0.045426 2.962649
+6.633936 0.599705 -7.064751
+5.977817 1.010478 -7.071957
+5.972329 0.940252 -7.204290
+6.289108 0.945338 -7.204290
+6.289109 0.945338 7.101533
+5.977817 1.010478 6.989184
+5.972329 0.940252 7.101534
+5.716468 0.709297 7.101534
+5.715565 0.771828 6.989184
+6.558681 0.626839 -7.204290
+5.715565 0.771828 -7.071957
+5.716468 0.709297 -7.204290
+6.132273 0.529346 -7.204290
+6.106133 0.460014 -7.071957
+5.939401 0.518898 -7.204290
+5.933913 0.448672 -7.071957
+6.558681 0.626839 7.101534
+6.263083 0.310323 -7.204290
+6.213816 0.257571 -7.071957
+6.410881 0.468581 7.138983
+6.263082 0.310323 7.101533
+6.210691 0.737342 7.138983
+6.132273 0.529346 7.101533
+5.955865 0.729576 7.138983
+5.939401 0.518899 7.101534
+5.719176 0.521704 7.138983
+5.721885 0.334112 7.101533
+5.721885 0.334110 -7.204290
+5.722787 0.271580 -7.071957
+5.955865 0.729575 -7.248402
+6.210690 0.737342 -7.248402
+6.410882 0.468581 -7.248402
+5.719176 0.521704 -7.248402
+-4.964557 -3.395684 7.072919
+-5.054743 0.516432 -6.957500
+-5.301433 0.589572 -6.871655
+-4.964557 1.028417 -7.175675
+-4.964557 -2.956840 -7.175676
+-4.964557 0.589572 -7.175676
+-5.197394 0.646460 -7.080958
+-4.964557 1.028417 7.072919
+-4.934495 0.808995 7.138983
+5.307737 1.014697 7.101534
+5.310643 0.797334 7.138983
+-4.964557 0.589572 7.072919
+5.313549 0.579971 7.101533
+-5.054743 1.094466 6.874727
+5.306768 1.094465 6.989184
+-4.964557 -3.395684 -7.175675
+-4.934495 -3.176262 -7.248402
+-5.054743 -3.468825 -6.957499
+-4.934495 0.808995 -7.248402
+-5.271371 0.808995 -7.147061
+-5.197394 0.971529 -7.080959
+-4.934495 -3.176262 7.138983
+-5.271371 -3.176262 7.044305
+-5.197394 -3.338797 6.983383
+-5.197394 -3.013727 6.983384
+-4.964557 -2.956840 7.072919
+-5.054743 -2.883699 6.874727
+-5.301433 -2.956840 6.788884
+5.314518 0.507516 6.989184
+5.977817 -3.377745 6.989184
+5.972329 -3.307519 7.101534
+6.289109 -3.312605 7.101534
+6.356423 -0.173253 7.101533
+6.300205 -0.207909 6.989184
+6.106133 0.460014 6.989184
+6.213816 0.257571 6.989184
+5.722788 0.271581 6.989184
+5.933913 0.448674 6.989184
+5.939401 -2.886165 7.101533
+5.933913 -2.815939 6.989184
+5.721885 -2.701378 7.101534
+5.722788 -2.638846 6.989184
+-5.271371 0.808995 7.044305
+-5.197394 0.971529 6.983383
+-5.197394 0.646460 6.983383
+5.313549 -2.947237 7.101533
+5.314518 -2.874783 6.989184
+6.607947 -3.046859 6.989184
+-5.383663 -3.176262 6.760270
+6.558681 -2.994107 -7.204289
+6.289109 -3.312605 -7.204289
+6.132273 -2.896613 -7.204289
+6.106133 -2.827281 -7.071956
+6.263083 -2.677590 -7.204289
+6.213816 -2.624838 -7.071956
+5.939401 -2.886166 -7.204289
+5.933913 -2.815940 -7.071956
+6.749950 0.069333 -7.064784
+6.693733 0.034678 -7.204290
+6.356423 -0.173253 -7.204290
+6.300205 -0.207909 -7.071957
+5.715565 -3.139095 -7.064675
+5.716468 -3.076564 -7.204290
+-5.271371 -3.176262 -7.147061
+-5.197394 -3.338797 -7.080959
+-5.197394 -3.013727 -7.080959
+5.306768 -3.454419 -7.064675
+5.307737 -3.381965 -7.204290
+-5.383663 0.808995 -6.843041
+5.955865 -3.096842 7.138983
+6.210690 -3.104609 7.138983
+6.132273 -2.896613 7.101534
+6.558681 -2.994107 7.101533
+6.410882 -2.835849 7.138984
+6.263083 -2.677591 7.101534
+6.213816 -2.624838 6.989185
+6.106133 -2.827281 6.989185
+5.977817 -3.377746 -7.064675
+5.972329 -3.307520 -7.204290
+6.210691 -3.104609 -7.248401
+5.955865 -3.096843 -7.248401
+6.410882 -2.835849 -7.248401
+6.749950 0.069333 6.989184
+6.693733 0.034678 7.101533
+5.715565 -3.139095 6.989184
+5.716468 -3.076564 7.101533
+5.719176 -2.888971 -7.248402
+5.721885 -2.701378 -7.204290
+5.722788 -2.638847 -7.071957
+5.306769 -3.454419 6.989184
+5.307737 -3.381965 7.101534
+5.310643 0.797333 -7.248402
+5.313549 0.579970 -7.204290
+5.307737 1.014697 -7.204290
+5.306768 1.094465 -7.071957
+5.719176 -2.888971 7.138983
+5.310643 -3.164601 7.138983
+5.310643 -3.164601 -7.248402
+5.313549 -2.947238 -7.204289
+5.314518 -2.874784 -7.071956
+5.314518 0.507515 -7.071957
+6.643375 -1.491429 3.039066
+6.643375 -1.491429 -3.050668
+6.821739 -1.491428 -7.064785
+6.821739 -1.491428 6.989184
+6.809578 -1.491429 -2.782837
+6.809578 -0.875839 -2.782837
+6.351672 -0.943944 6.989185
+6.351672 -0.943944 -7.071957
+6.724450 -1.491428 -3.120691
+6.724450 -0.875839 -3.120691
+6.643375 -0.875839 -3.050668
+6.797417 -0.875839 -3.370221
+6.797417 -1.491428 -3.370221
+6.724450 -1.491428 -2.980645
+6.724450 -0.875839 -2.980645
+6.724450 -1.491428 2.955702
+6.724450 -0.875839 2.955702
+6.643375 -0.875839 3.039066
+6.797417 -0.875839 2.724978
+6.797417 -1.491428 2.724978
+6.797417 -1.491428 3.413092
+6.724450 -1.491428 3.122429
+6.724450 -0.875839 3.122429
+6.797417 -0.875839 3.413092
+6.821739 -0.875839 -7.064785
+6.410430 -0.935431 7.101534
+6.821739 -0.875839 6.989184
+6.762980 -0.884352 -7.204290
+6.586705 -0.909891 7.138983
+6.762980 -0.884352 7.101533
+6.410430 -0.935431 -7.204289
+6.525078 -0.069288 7.138983
+6.525078 -0.069288 -7.248402
+6.586705 -0.909891 -7.248402
+2.476359 1.050515 -4.518279
+2.501009 1.094466 -4.551934
+1.962256 1.094466 -4.901087
+1.941288 1.051111 -4.865003
+2.945996 1.052259 -4.098500
+2.962641 1.094466 -4.141275
+2.403480 1.094466 -0.821227
+2.400915 1.050118 -0.862224
+1.773068 1.050804 -0.859056
+1.766197 1.094466 -0.817667
+1.226741 1.051389 -1.026158
+1.210733 1.094466 -0.987582
+0.699648 1.055842 -1.396338
+0.714971 1.094466 -1.340315
+0.289987 1.052340 -0.898455
+0.317290 1.094466 -0.880505
+-0.203995 1.056102 -0.582203
+-0.799530 1.053181 -0.425637
+-0.794387 1.094466 -0.402315
+-1.431402 1.053129 -0.514875
+-1.445074 1.094466 -0.494217
+-1.977675 1.053101 -0.909862
+-2.004632 1.094466 -0.896713
+-2.416723 1.094466 -1.492959
+-2.373219 1.054771 -1.474397
+-2.475250 1.053082 -2.115252
+-2.515072 1.094466 -2.124517
+-2.390646 1.053047 -2.781118
+-2.429582 1.094466 -2.798640
+-2.132920 1.053034 -3.395283
+-2.168803 1.094466 -3.417721
+-1.782573 1.053020 -3.937274
+-1.814967 1.094466 -3.962616
+-1.403588 1.094466 -4.420369
+-1.363425 1.054957 -4.407804
+-0.900046 1.053006 -4.858199
+-0.928763 1.094466 -4.882653
+-0.476830 1.053012 -5.262169
+-0.507103 1.094466 -5.282917
+-0.147861 1.053059 -5.623407
+-0.182810 1.094466 -5.636931
+0.003100 1.053036 -5.913707
+-0.036787 1.094466 -5.916535
+0.082052 1.094466 -6.262894
+0.086968 1.051606 -6.195204
+0.236533 1.052950 -5.952604
+0.269841 1.094466 -5.977284
+0.451691 1.052826 -5.714274
+0.477925 1.094466 -5.746813
+0.864545 1.052312 -5.452476
+0.885142 1.094466 -5.488780
+1.382677 1.051746 -5.173584
+1.402029 1.094466 -5.210592
+3.419540 1.094466 -3.538014
+3.368828 1.050633 -3.548641
+3.606029 1.043603 -2.944557
+3.645876 1.094466 -2.954782
+3.666832 1.042365 -2.287097
+3.707907 1.063140 -2.281731
+3.429927 1.043690 -1.647229
+3.465428 1.094466 -1.626467
+3.001008 1.046932 -1.119253
+3.026263 1.094466 -1.085981
+-0.203218 1.094466 -0.546872
+-3.898509 1.618733 -0.543141
+-4.161941 1.607933 -0.652349
+-4.425372 1.597132 -0.543141
+-4.534489 1.592658 -0.279488
+-4.425372 1.597132 -0.015835
+-4.161941 1.607933 0.093374
+-3.898509 1.618733 -0.015835
+-3.789392 1.623207 -0.279488
+-3.908164 1.854233 -0.543141
+-4.171596 1.843432 -0.652349
+-4.435027 1.832632 -0.543141
+-4.544144 1.828158 -0.279488
+-4.435027 1.832632 -0.015835
+-4.171596 1.843432 0.093374
+-3.908164 1.854233 -0.015835
+-3.799047 1.858707 -0.279488
+-4.173205 1.882682 -0.279488
+-4.016245 1.613906 -0.631523
+-4.307636 1.601959 -0.631523
+-4.513680 1.593511 -0.425306
+-4.513680 1.593511 -0.133670
+-4.307636 1.601959 0.072547
+-4.016245 1.613906 0.072547
+-3.810201 1.622354 -0.133670
+-3.810201 1.622354 -0.425306
+-4.025900 1.849406 -0.631523
+-4.317291 1.837459 -0.631523
+-4.523335 1.829011 -0.425306
+-4.523335 1.829011 -0.133670
+-4.317291 1.837459 0.072547
+-4.025900 1.849406 0.072547
+-3.819856 1.857854 -0.133670
+-3.819856 1.857854 -0.425306
+-4.394678 1.602473 0.003833
+-4.520282 1.597323 -0.048238
+-4.645886 1.592174 0.003833
+-4.697913 1.590041 0.129542
+-4.645886 1.592174 0.255252
+-4.520282 1.597323 0.307322
+-4.394678 1.602473 0.255252
+-4.342651 1.604606 0.129542
+-4.403999 1.829821 0.003833
+-4.529603 1.824672 -0.048238
+-4.655208 1.819522 0.003833
+-4.707234 1.817389 0.129542
+-4.655208 1.819522 0.255252
+-4.529603 1.824672 0.307322
+-4.403999 1.829821 0.255252
+-4.351973 1.831954 0.129542
+-4.531157 1.862563 0.129542
+-4.450815 1.600172 -0.038308
+-4.589750 1.594475 -0.038308
+-4.687991 1.590447 0.060016
+-4.687991 1.590447 0.199068
+-4.589750 1.594475 0.297392
+-4.450815 1.600172 0.297392
+-4.352573 1.604199 0.199068
+-4.352573 1.604199 0.060016
+-4.460136 1.827520 -0.038308
+-4.599071 1.821823 -0.038308
+-4.697312 1.817795 0.060016
+-4.697312 1.817795 0.199068
+-4.599071 1.821823 0.297392
+-4.460136 1.827520 0.297392
+-4.361894 1.831547 0.199068
+-4.361894 1.831547 0.060016
+-4.059464 1.616217 0.178475
+-4.185068 1.611067 0.126404
+-4.310671 1.605917 0.178475
+-4.362699 1.603784 0.304184
+-4.310671 1.605917 0.429894
+-4.185068 1.611067 0.481964
+-4.059464 1.616217 0.429894
+-4.007437 1.618350 0.304184
+-4.068785 1.843565 0.178475
+-4.194389 1.838415 0.126404
+-4.319993 1.833265 0.178475
+-4.372020 1.831132 0.304184
+-4.319993 1.833265 0.429894
+-4.194389 1.838415 0.481964
+-4.068785 1.843565 0.429894
+-4.016757 1.845698 0.304184
+-4.195942 1.876306 0.304184
+-4.115600 1.613915 0.136334
+-4.254535 1.608219 0.136334
+-4.352777 1.604191 0.234659
+-4.352777 1.604191 0.373710
+-4.254535 1.608219 0.472034
+-4.115600 1.613915 0.472034
+-4.017358 1.617943 0.373710
+-4.017358 1.617943 0.234659
+-4.124921 1.841263 0.136334
+-4.263856 1.835567 0.136334
+-4.362098 1.831539 0.234659
+-4.362098 1.831539 0.373710
+-4.263856 1.835567 0.472034
+-4.124921 1.841263 0.472034
+-4.026680 1.845291 0.373710
+-4.026680 1.845291 0.234659
+-3.682921 1.631655 0.013024
+-3.808525 1.626505 -0.039046
+-3.934129 1.621356 0.013024
+-3.986156 1.619222 0.138734
+-3.934129 1.621356 0.264443
+-3.808525 1.626505 0.316514
+-3.682921 1.631655 0.264443
+-3.630894 1.633788 0.138734
+-3.692242 1.859003 0.013024
+-3.817846 1.853853 -0.039046
+-3.943450 1.848704 0.013024
+-3.995477 1.846570 0.138734
+-3.943450 1.848704 0.264443
+-3.817846 1.853853 0.316514
+-3.692242 1.859003 0.264443
+-3.640215 1.861136 0.138734
+-3.819400 1.891745 0.138734
+-3.739057 1.629353 -0.029116
+-3.877992 1.623657 -0.029116
+-3.976234 1.619629 0.069208
+-3.976234 1.619629 0.208260
+-3.877992 1.623657 0.306584
+-3.739057 1.629353 0.306584
+-3.640815 1.633381 0.208260
+-3.640815 1.633381 0.069208
+-3.748379 1.856701 -0.029116
+-3.887313 1.851005 -0.029116
+-3.985555 1.846977 0.069208
+-3.985555 1.846977 0.208260
+-3.887313 1.851005 0.306584
+-3.748379 1.856701 0.306584
+-3.650136 1.860729 0.208260
+-3.650137 1.860729 0.069208
+-4.707448 -3.019029 6.593004
+-4.615757 -1.254615 6.593004
+-4.615757 -1.254615 -6.593004
+-4.707448 -3.019029 -6.593004
+-4.707448 0.464933 6.593004
+-4.707448 0.464933 -6.593004
+6.140296 -2.925709 6.593004
+6.282652 -1.254615 6.593004
+6.282560 -1.254615 -6.593004
+6.140049 -2.925709 -6.593004
+-4.646321 -2.131939 6.593004
+-4.646321 -2.131939 -6.593004
+6.140266 0.465005 6.593004
+6.139904 0.465005 -6.593004
+-4.646321 -0.396819 6.593004
+-4.646321 -0.396819 -6.593004
+6.235084 -2.085280 6.593004
+6.235030 -2.085280 -6.593004
+6.235303 -0.443479 6.593004
+6.235032 -0.443479 -6.593004
+</float_array>
+          <technique_common>
+            <accessor source="#Album_Cute-POSITION-array" count="780" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="Album_Cute-Normal0">
+          <float_array id="Album_Cute-Normal0-array" count="13086">
+0.269157 -0.943888 -0.191388
+0.042917 -0.994452 -0.096041
+0.298254 -0.645994 -0.702664
+0.042917 -0.994452 -0.096041
+0.032032 -0.746455 -0.664664
+0.298254 -0.645994 -0.702664
+0.269157 -0.943888 -0.191388
+0.635875 -0.383934 -0.669520
+0.743797 -0.540615 -0.393068
+0.635875 -0.383934 -0.669520
+0.269157 -0.943888 -0.191388
+0.298254 -0.645994 -0.702664
+0.032570 -0.759134 0.650119
+0.082773 -0.752755 0.653076
+0.110463 -0.989738 0.090643
+0.032570 -0.759134 0.650119
+0.110463 -0.989738 0.090643
+0.042942 -0.995076 0.089328
+0.885852 0.036320 0.462543
+0.621984 0.445654 0.643838
+0.681996 0.027962 0.730822
+0.621984 0.445654 0.643838
+0.885852 0.036320 0.462543
+0.696613 0.597924 0.396506
+0.656379 -0.393241 0.643838
+0.885852 0.036320 0.462543
+0.681996 0.027962 0.730822
+0.885852 0.036320 0.462543
+0.656379 -0.393241 0.643838
+0.743222 -0.538891 0.396506
+0.892617 0.000000 -0.450815
+0.611235 -0.435360 -0.660949
+0.656472 0.000001 -0.754350
+0.611235 -0.435360 -0.660949
+0.892617 0.000000 -0.450815
+0.695818 -0.612506 -0.375064
+0.892617 0.000000 -0.450815
+0.611235 0.435362 -0.660948
+0.695818 0.612506 -0.375064
+0.611235 0.435362 -0.660948
+0.892617 0.000000 -0.450815
+0.656472 0.000001 -0.754350
+-0.009220 -0.760060 0.649787
+-0.011778 -0.995949 0.089142
+0.271895 -0.685518 0.675380
+0.271895 -0.685518 0.675380
+-0.011778 -0.995949 0.089142
+0.205755 -0.963895 0.169033
+0.205755 -0.963895 0.169033
+0.630708 -0.445530 0.635382
+0.271895 -0.685518 0.675380
+0.630708 -0.445530 0.635382
+0.205755 -0.963895 0.169033
+0.696833 -0.609640 0.377840
+0.011192 0.759370 0.650563
+0.264902 -0.000197 0.964275
+0.272302 0.685267 0.675470
+0.264902 -0.000197 0.964275
+0.011192 0.759370 0.650563
+0.000420 -0.000658 1.000000
+-0.009220 -0.760060 0.649787
+0.264902 -0.000197 0.964275
+0.000420 -0.000658 1.000000
+0.264902 -0.000197 0.964275
+-0.009220 -0.760060 0.649787
+0.271895 -0.685518 0.675380
+0.264902 -0.000197 0.964275
+0.630708 -0.445530 0.635382
+0.682806 0.000001 0.730600
+0.630708 -0.445530 0.635382
+0.264902 -0.000197 0.964275
+0.271895 -0.685518 0.675380
+0.630708 0.445530 0.635382
+0.264902 -0.000197 0.964275
+0.682806 0.000001 0.730600
+0.264902 -0.000197 0.964275
+0.630708 0.445530 0.635382
+0.272302 0.685267 0.675470
+-0.040792 0.994539 -0.096065
+0.191403 0.962657 -0.191459
+0.244707 0.668139 -0.702644
+-0.040792 0.994539 -0.096065
+0.244707 0.668139 -0.702644
+-0.030754 0.746504 -0.664670
+0.191403 0.962657 -0.191459
+0.602312 0.434699 -0.669520
+0.244707 0.668139 -0.702644
+0.602312 0.434699 -0.669520
+0.191403 0.962657 -0.191459
+0.697045 0.599688 -0.393068
+0.032032 -0.746455 -0.664664
+0.247839 0.010153 -0.968748
+0.298254 -0.645994 -0.702664
+0.247839 0.010153 -0.968748
+0.032032 -0.746455 -0.664664
+0.000133 0.000011 -1.000000
+-0.030754 0.746504 -0.664670
+0.247839 0.010153 -0.968748
+0.000133 0.000011 -1.000000
+0.247839 0.010153 -0.968748
+-0.030754 0.746504 -0.664670
+0.244707 0.668139 -0.702644
+0.247839 0.010153 -0.968748
+0.602312 0.434699 -0.669520
+0.655613 0.026880 -0.754619
+0.602312 0.434699 -0.669520
+0.247839 0.010153 -0.968748
+0.244707 0.668139 -0.702644
+0.635875 -0.383934 -0.669520
+0.247839 0.010153 -0.968748
+0.655613 0.026880 -0.754619
+0.247839 0.010153 -0.968748
+0.635875 -0.383934 -0.669520
+0.298254 -0.645994 -0.702664
+0.000102 0.000168 1.000000
+0.785067 0.060247 0.616473
+0.787754 -0.006770 0.615953
+0.785067 0.060247 0.616473
+0.000102 0.000168 1.000000
+0.000331 -0.000704 1.000000
+0.000331 -0.000704 1.000000
+0.000102 0.000168 1.000000
+-0.787596 0.008047 0.616140
+-0.787596 0.008047 0.616140
+-0.784247 -0.065738 0.616956
+0.000331 -0.000704 1.000000
+0.001250 0.001718 0.999998
+-0.787596 0.008047 0.616140
+0.000102 0.000168 1.000000
+-0.787596 0.008047 0.616140
+0.001250 0.001718 0.999998
+-0.764340 0.149060 0.627348
+0.001250 0.001718 0.999998
+0.000102 0.000168 1.000000
+0.768767 -0.133794 0.625377
+0.768767 -0.133794 0.625377
+0.000102 0.000168 1.000000
+0.787754 -0.006770 0.615953
+0.622852 -0.422367 0.658530
+0.001250 0.001718 0.999998
+0.768767 -0.133794 0.625377
+0.001250 0.001718 0.999998
+0.622852 -0.422367 0.658530
+0.001863 0.001845 0.999997
+-0.610389 0.439650 0.658888
+-0.764340 0.149060 0.627348
+0.001863 0.001845 0.999997
+0.001250 0.001718 0.999998
+0.001863 0.001845 0.999997
+-0.764340 0.149060 0.627348
+0.110391 -0.989100 -0.097446
+0.411549 -0.905730 -0.101397
+0.081422 -0.740100 -0.667549
+0.411549 -0.905730 -0.101397
+0.301071 -0.668114 -0.680426
+0.081422 -0.740100 -0.667549
+0.823775 -0.558699 -0.096176
+0.982130 -0.168573 -0.083692
+0.756334 -0.131556 -0.640822
+0.823775 -0.558699 -0.096176
+0.756334 -0.131556 -0.640822
+0.612079 -0.414994 -0.673156
+-0.599713 0.432128 -0.673505
+-0.977296 0.194183 -0.084769
+-0.803383 0.587534 -0.096853
+-0.977296 0.194183 -0.084769
+-0.599713 0.432128 -0.673505
+-0.751867 0.146706 -0.642785
+0.612079 -0.414994 -0.673156
+0.001163 0.001575 -0.999998
+0.001726 0.001692 -0.999997
+0.001163 0.001575 -0.999998
+0.612079 -0.414994 -0.673156
+0.756334 -0.131556 -0.640822
+-0.751867 0.146706 -0.642785
+-0.599713 0.432128 -0.673505
+0.001726 0.001692 -0.999997
+-0.751867 0.146706 -0.642785
+0.001726 0.001692 -0.999997
+0.001163 0.001575 -0.999998
+-0.996686 0.010364 -0.080686
+-0.771729 -0.064711 -0.632650
+-0.993161 -0.084108 -0.080981
+-0.771729 -0.064711 -0.632650
+-0.996686 0.010364 -0.080686
+-0.775049 0.007924 -0.631851
+-0.996686 0.010364 -0.080686
+-0.977296 0.194183 -0.084769
+-0.751867 0.146706 -0.642785
+-0.996686 0.010364 -0.080686
+-0.751867 0.146706 -0.642785
+-0.775049 0.007924 -0.631851
+0.787754 -0.006770 0.615953
+0.982598 -0.168662 0.077805
+0.768767 -0.133794 0.625377
+0.982598 -0.168662 0.077805
+0.787754 -0.006770 0.615953
+0.997156 -0.008296 0.074909
+-0.775049 0.007924 -0.631851
+0.001163 0.001575 -0.999998
+0.000096 0.000155 -1.000000
+0.001163 0.001575 -0.999998
+-0.775049 0.007924 -0.631851
+-0.751867 0.146706 -0.642785
+0.000096 0.000155 -1.000000
+0.001163 0.001575 -0.999998
+0.756334 -0.131556 -0.640822
+0.000096 0.000155 -1.000000
+0.756334 -0.131556 -0.640822
+0.775213 -0.006655 -0.631665
+-0.784247 -0.065738 0.616956
+0.002375 -0.002364 0.999994
+0.000331 -0.000704 1.000000
+0.002375 -0.002364 0.999994
+-0.784247 -0.065738 0.616956
+-0.714256 -0.277735 0.642418
+0.000331 -0.000704 1.000000
+0.002375 -0.002364 0.999994
+0.726501 0.253491 0.638701
+0.000331 -0.000704 1.000000
+0.726501 0.253491 0.638701
+0.785067 0.060247 0.616473
+0.772559 0.059258 -0.632172
+0.000096 0.000155 -1.000000
+0.775213 -0.006655 -0.631665
+0.000096 0.000155 -1.000000
+0.772559 0.059258 -0.632172
+0.000310 -0.000647 -1.000000
+-0.771729 -0.064711 -0.632650
+-0.775049 0.007924 -0.631851
+0.000310 -0.000647 -1.000000
+0.000310 -0.000647 -1.000000
+-0.775049 0.007924 -0.631851
+0.000096 0.000155 -1.000000
+0.010822 0.746804 -0.664956
+0.208422 0.972952 -0.099621
+0.014477 0.995237 -0.096402
+0.208422 0.972952 -0.099621
+0.010822 0.746804 -0.664956
+0.154398 0.722257 -0.674170
+0.483938 0.564398 0.668774
+-0.000433 -0.000419 1.000000
+0.156782 0.734791 0.659926
+-0.000433 -0.000419 1.000000
+0.483938 0.564398 0.668774
+0.001402 -0.001724 0.999997
+0.002375 -0.002364 0.999994
+0.001402 -0.001724 0.999997
+0.483938 0.564398 0.668774
+0.483938 0.564398 0.668774
+0.726501 0.253491 0.638701
+0.002375 -0.002364 0.999994
+0.001402 -0.001724 0.999997
+-0.714256 -0.277735 0.642418
+-0.469032 -0.579780 0.666231
+-0.714256 -0.277735 0.642418
+0.001402 -0.001724 0.999997
+0.002375 -0.002364 0.999994
+0.001402 -0.001724 0.999997
+-0.156790 -0.735200 0.659468
+-0.000433 -0.000419 1.000000
+-0.156790 -0.735200 0.659468
+0.001402 -0.001724 0.999997
+-0.469032 -0.579780 0.666231
+-0.156790 -0.735200 0.659468
+-0.011778 -0.995949 0.089142
+-0.009220 -0.760060 0.649787
+-0.011778 -0.995949 0.089142
+-0.156790 -0.735200 0.659468
+-0.207874 -0.973794 0.092270
+-0.771729 -0.064711 -0.632650
+-0.702167 -0.273196 -0.657515
+-0.993161 -0.084108 -0.080981
+-0.925337 -0.368222 -0.090355
+-0.993161 -0.084108 -0.080981
+-0.702167 -0.273196 -0.657515
+-0.207716 -0.973143 -0.099233
+-0.622207 -0.776345 -0.100729
+-0.460565 -0.569693 -0.680684
+-0.207716 -0.973143 -0.099233
+-0.460565 -0.569693 -0.680684
+-0.153911 -0.722420 -0.674108
+-0.622207 -0.776345 -0.100729
+-0.925337 -0.368222 -0.090355
+-0.460565 -0.569693 -0.680684
+-0.925337 -0.368222 -0.090355
+-0.702167 -0.273196 -0.657515
+-0.460565 -0.569693 -0.680684
+0.000182 -0.000065 -1.000000
+0.000069 -0.000017 -1.000000
+0.154398 0.722257 -0.674170
+0.000182 -0.000065 -1.000000
+0.154398 0.722257 -0.674170
+0.010822 0.746804 -0.664956
+-0.009138 -0.747147 -0.664596
+0.000069 -0.000017 -1.000000
+0.000182 -0.000065 -1.000000
+0.000069 -0.000017 -1.000000
+-0.009138 -0.747147 -0.664596
+-0.153911 -0.722420 -0.674108
+0.110463 -0.989738 0.090643
+0.111438 -0.993771 0.000003
+0.042942 -0.995076 0.089328
+0.042942 -0.995076 0.089328
+0.111438 -0.993771 0.000003
+0.042630 -0.999091 -0.000005
+0.272302 0.685267 0.675470
+0.014509 0.995868 0.089650
+0.011192 0.759370 0.650563
+0.014509 0.995868 0.089650
+0.272302 0.685267 0.675470
+0.206141 0.963804 0.169080
+0.630708 0.445530 0.635382
+0.206141 0.963804 0.169080
+0.272302 0.685267 0.675470
+0.206141 0.963804 0.169080
+0.630708 0.445530 0.635382
+0.696833 0.609640 0.377840
+0.743222 -0.538891 0.396506
+0.772759 -0.616799 0.149676
+0.885852 0.036320 0.462543
+0.885852 0.036320 0.462543
+0.772759 -0.616799 0.149676
+0.979202 0.040147 0.198877
+0.979202 0.040147 0.198877
+0.778099 -0.620285 -0.099033
+0.990470 0.040609 -0.131605
+0.778099 -0.620285 -0.099033
+0.979202 0.040147 0.198877
+0.772759 -0.616799 0.149676
+0.979202 0.040147 0.198877
+0.990470 0.040609 -0.131605
+0.719673 0.677988 0.149676
+0.719673 0.677988 0.149676
+0.990470 0.040609 -0.131605
+0.724710 0.681900 -0.099033
+0.696613 0.597924 0.396506
+0.979202 0.040147 0.198877
+0.719673 0.677988 0.149676
+0.979202 0.040147 0.198877
+0.696613 0.597924 0.396506
+0.885852 0.036320 0.462543
+0.888582 0.000001 0.458719
+0.630708 0.445530 0.635382
+0.682806 0.000001 0.730600
+0.630708 0.445530 0.635382
+0.888582 0.000001 0.458719
+0.696833 0.609640 0.377840
+0.630708 -0.445530 0.635382
+0.888582 0.000001 0.458719
+0.682806 0.000001 0.730600
+0.888582 0.000001 0.458719
+0.630708 -0.445530 0.635382
+0.696833 -0.609640 0.377840
+-0.011778 -0.995949 0.089142
+0.164891 -0.985879 0.029223
+0.205755 -0.963895 0.169033
+0.164891 -0.985879 0.029223
+-0.011778 -0.995949 0.089142
+-0.009323 -0.999956 -0.000009
+-0.009323 -0.999956 -0.000009
+0.163495 -0.986352 -0.019449
+0.164891 -0.985879 0.029223
+0.164891 -0.985879 0.029223
+0.163495 -0.986352 -0.019449
+0.702342 -0.698679 0.136251
+0.702342 -0.698679 0.136251
+0.163495 -0.986352 -0.019449
+0.705423 -0.703011 -0.090302
+0.164891 -0.985879 0.029223
+0.696833 -0.609640 0.377840
+0.205755 -0.963895 0.169033
+0.696833 -0.609640 0.377840
+0.164891 -0.985879 0.029223
+0.702342 -0.698679 0.136251
+0.254667 0.683393 0.684193
+-0.040818 0.995164 0.089351
+-0.031281 0.759184 0.650124
+-0.040818 0.995164 0.089351
+0.254667 0.683393 0.684193
+0.193164 0.963172 0.187051
+0.621984 0.445654 0.643838
+0.193164 0.963172 0.187051
+0.254667 0.683393 0.684193
+0.193164 0.963172 0.187051
+0.621984 0.445654 0.643838
+0.696613 0.597924 0.396506
+0.411836 -0.906363 0.094322
+0.828362 -0.560193 0.000000
+0.414732 -0.909943 0.000000
+0.828362 -0.560193 0.000000
+0.411836 -0.906363 0.094322
+0.824266 -0.559093 0.089447
+0.768767 -0.133794 0.625377
+0.824266 -0.559093 0.089447
+0.622852 -0.422367 0.658530
+0.824266 -0.559093 0.089447
+0.768767 -0.133794 0.625377
+0.982598 -0.168662 0.077805
+-0.610389 0.439650 0.658888
+-0.977773 0.194288 0.078810
+-0.764340 0.149060 0.627348
+-0.977773 0.194288 0.078810
+-0.610389 0.439650 0.658888
+-0.803872 0.587943 0.090079
+-0.784247 -0.065738 0.616956
+-0.997129 0.010369 0.075004
+-0.993606 -0.084146 0.075279
+-0.997129 0.010369 0.075004
+-0.784247 -0.065738 0.616956
+-0.787596 0.008047 0.616140
+-0.764340 0.149060 0.627348
+-0.997129 0.010369 0.075004
+-0.787596 0.008047 0.616140
+-0.997129 0.010369 0.075004
+-0.764340 0.149060 0.627348
+-0.977773 0.194288 0.078810
+-0.011778 -0.995949 0.089142
+-0.208656 -0.977989 -0.000011
+-0.009323 -0.999956 -0.000009
+-0.208656 -0.977989 -0.000011
+-0.011778 -0.995949 0.089142
+-0.207874 -0.973794 0.092270
+-0.714256 -0.277735 0.642418
+-0.784247 -0.065738 0.616956
+-0.993606 -0.084146 0.075279
+-0.714256 -0.277735 0.642418
+-0.993606 -0.084146 0.075279
+-0.925838 -0.368462 0.084019
+-0.469032 -0.579780 0.666231
+-0.207874 -0.973794 0.092270
+-0.156790 -0.735200 0.659468
+-0.207874 -0.973794 0.092270
+-0.469032 -0.579780 0.666231
+-0.622634 -0.776885 0.093685
+-0.714256 -0.277735 0.642418
+-0.925838 -0.368462 0.084019
+-0.469032 -0.579780 0.666231
+-0.469032 -0.579780 0.666231
+-0.925838 -0.368462 0.084019
+-0.622634 -0.776885 0.093685
+0.163820 0.986298 -0.019460
+0.014477 0.995237 -0.096402
+0.011668 0.999932 0.000016
+0.014477 0.995237 -0.096402
+0.163820 0.986298 -0.019460
+0.203676 0.963429 -0.174128
+0.163820 0.986298 -0.019460
+0.695818 0.612506 -0.375064
+0.203676 0.963429 -0.174128
+0.695818 0.612506 -0.375064
+0.163820 0.986298 -0.019460
+0.705422 0.703011 -0.090301
+0.991508 0.000000 -0.130043
+0.892617 0.000000 -0.450815
+0.705422 0.703011 -0.090301
+0.705422 0.703011 -0.090301
+0.892617 0.000000 -0.450815
+0.695818 0.612506 -0.375064
+0.892617 0.000000 -0.450815
+0.991508 0.000000 -0.130043
+0.705423 -0.703011 -0.090302
+0.705423 -0.703011 -0.090302
+0.695818 -0.612506 -0.375064
+0.892617 0.000000 -0.450815
+0.160800 0.986646 -0.025958
+-0.040792 0.994539 -0.096065
+-0.040920 0.999162 0.000001
+-0.040792 0.994539 -0.096065
+0.160800 0.986646 -0.025958
+0.191403 0.962657 -0.191459
+0.160800 0.986646 -0.025958
+0.697045 0.599688 -0.393068
+0.191403 0.962657 -0.191459
+0.697045 0.599688 -0.393068
+0.160800 0.986646 -0.025958
+0.724710 0.681900 -0.099033
+0.111438 -0.993771 0.000003
+0.411549 -0.905730 -0.101397
+0.110391 -0.989100 -0.097446
+0.411549 -0.905730 -0.101397
+0.111438 -0.993771 0.000003
+0.414732 -0.909943 0.000000
+0.985772 -0.168086 0.000000
+0.982130 -0.168573 -0.083692
+0.828362 -0.560193 0.000000
+0.828362 -0.560193 0.000000
+0.982130 -0.168573 -0.083692
+0.823775 -0.558699 -0.096176
+-0.999945 0.010453 -0.000000
+-0.993161 -0.084108 -0.080981
+-0.996412 -0.084632 -0.000000
+-0.993161 -0.084108 -0.080981
+-0.999945 0.010453 -0.000000
+-0.996686 0.010364 -0.080686
+-0.624666 -0.780892 -0.000000
+-0.622207 -0.776345 -0.100729
+-0.208656 -0.977989 -0.000011
+-0.208656 -0.977989 -0.000011
+-0.622207 -0.776345 -0.100729
+-0.207716 -0.973143 -0.099233
+-0.622207 -0.776345 -0.100729
+-0.624666 -0.780892 -0.000000
+-0.928647 -0.370966 -0.000000
+-0.928647 -0.370966 -0.000000
+-0.925337 -0.368222 -0.090355
+-0.622207 -0.776345 -0.100729
+0.081422 -0.740100 -0.667549
+0.032032 -0.746455 -0.664664
+0.110391 -0.989100 -0.097446
+0.042917 -0.994452 -0.096041
+0.110391 -0.989100 -0.097446
+0.032032 -0.746455 -0.664664
+0.890171 0.036497 -0.454163
+0.635875 -0.383934 -0.669520
+0.655613 0.026880 -0.754619
+0.635875 -0.383934 -0.669520
+0.890171 0.036497 -0.454163
+0.743797 -0.540615 -0.393068
+0.890171 0.036497 -0.454163
+0.602312 0.434699 -0.669520
+0.697045 0.599688 -0.393068
+0.602312 0.434699 -0.669520
+0.890171 0.036497 -0.454163
+0.655613 0.026880 -0.754619
+0.203307 -0.963517 -0.174075
+-0.011773 -0.995324 -0.095870
+0.261790 -0.670890 -0.693810
+-0.011773 -0.995324 -0.095870
+-0.009138 -0.747147 -0.664596
+0.261790 -0.670890 -0.693810
+0.203307 -0.963517 -0.174075
+0.611235 -0.435360 -0.660949
+0.695818 -0.612506 -0.375064
+0.611235 -0.435360 -0.660949
+0.203307 -0.963517 -0.174075
+0.261790 -0.670890 -0.693810
+0.823775 -0.558699 -0.096176
+0.301071 -0.668114 -0.680426
+0.411549 -0.905730 -0.101397
+0.301071 -0.668114 -0.680426
+0.823775 -0.558699 -0.096176
+0.612079 -0.414994 -0.673156
+-0.011773 -0.995324 -0.095870
+-0.207716 -0.973143 -0.099233
+-0.153911 -0.722420 -0.674108
+-0.011773 -0.995324 -0.095870
+-0.153911 -0.722420 -0.674108
+-0.009138 -0.747147 -0.664596
+0.203676 0.963429 -0.174128
+0.611235 0.435362 -0.660948
+0.262079 0.670797 -0.693791
+0.611235 0.435362 -0.660948
+0.203676 0.963429 -0.174128
+0.695818 0.612506 -0.375064
+0.014477 0.995237 -0.096402
+0.203676 0.963429 -0.174128
+0.262079 0.670797 -0.693791
+0.014477 0.995237 -0.096402
+0.262079 0.670797 -0.693791
+0.010822 0.746804 -0.664956
+0.010822 0.746804 -0.664956
+0.246596 -0.000006 -0.969119
+0.000182 -0.000065 -1.000000
+0.246596 -0.000006 -0.969119
+0.010822 0.746804 -0.664956
+0.262079 0.670797 -0.693791
+0.246596 -0.000006 -0.969119
+0.611235 0.435362 -0.660948
+0.656472 0.000001 -0.754350
+0.611235 0.435362 -0.660948
+0.246596 -0.000006 -0.969119
+0.262079 0.670797 -0.693791
+0.611235 -0.435360 -0.660949
+0.246596 -0.000006 -0.969119
+0.656472 0.000001 -0.754350
+0.246596 -0.000006 -0.969119
+0.611235 -0.435360 -0.660949
+0.261790 -0.670890 -0.693810
+-0.009138 -0.747147 -0.664596
+0.246596 -0.000006 -0.969119
+0.261790 -0.670890 -0.693810
+0.246596 -0.000006 -0.969119
+-0.009138 -0.747147 -0.664596
+0.000182 -0.000065 -1.000000
+0.032570 -0.759134 0.650119
+0.266039 0.010899 0.963901
+0.000145 0.000012 1.000000
+0.266039 0.010899 0.963901
+0.032570 -0.759134 0.650119
+0.309422 -0.660382 0.684217
+0.266039 0.010899 0.963901
+0.656379 -0.393241 0.643838
+0.681996 0.027962 0.730822
+0.656379 -0.393241 0.643838
+0.266039 0.010899 0.963901
+0.309422 -0.660382 0.684217
+0.621984 0.445654 0.643838
+0.266039 0.010899 0.963901
+0.681996 0.027962 0.730822
+0.266039 0.010899 0.963901
+0.621984 0.445654 0.643838
+0.254667 0.683393 0.684193
+-0.031281 0.759184 0.650124
+0.266039 0.010899 0.963901
+0.254667 0.683393 0.684193
+0.266039 0.010899 0.963901
+-0.031281 0.759184 0.650124
+0.000145 0.000012 1.000000
+0.270954 -0.944257 0.186982
+0.656379 -0.393241 0.643838
+0.309422 -0.660382 0.684217
+0.656379 -0.393241 0.643838
+0.270954 -0.944257 0.186982
+0.743222 -0.538891 0.396506
+0.032570 -0.759134 0.650119
+0.042942 -0.995076 0.089328
+0.309422 -0.660382 0.684217
+0.309422 -0.660382 0.684217
+0.042942 -0.995076 0.089328
+0.270954 -0.944257 0.186982
+0.042630 -0.999091 -0.000005
+0.240681 -0.970257 -0.025943
+0.241150 -0.969698 0.039156
+0.241150 -0.969698 0.039156
+0.240681 -0.970257 -0.025943
+0.772759 -0.616799 0.149676
+0.772759 -0.616799 0.149676
+0.240681 -0.970257 -0.025943
+0.778099 -0.620285 -0.099033
+0.241150 -0.969698 0.039156
+0.743222 -0.538891 0.396506
+0.270954 -0.944257 0.186982
+0.743222 -0.538891 0.396506
+0.241150 -0.969698 0.039156
+0.772759 -0.616799 0.149676
+0.042942 -0.995076 0.089328
+0.241150 -0.969698 0.039156
+0.270954 -0.944257 0.186982
+0.241150 -0.969698 0.039156
+0.042942 -0.995076 0.089328
+0.042630 -0.999091 -0.000005
+0.082773 -0.752755 0.653076
+0.000145 0.000012 1.000000
+0.000792 0.000199 1.000000
+0.000145 0.000012 1.000000
+0.082773 -0.752755 0.653076
+0.032570 -0.759134 0.650119
+0.000792 0.000199 1.000000
+-0.031281 0.759184 0.650124
+-0.075530 0.753784 0.652767
+-0.031281 0.759184 0.650124
+0.000792 0.000199 1.000000
+0.000145 0.000012 1.000000
+0.081422 -0.740100 -0.667549
+0.000133 0.000011 -1.000000
+0.032032 -0.746455 -0.664664
+0.000133 0.000011 -1.000000
+0.081422 -0.740100 -0.667549
+0.000728 0.000185 -1.000000
+-0.074238 0.741135 -0.667239
+-0.030754 0.746504 -0.664670
+0.000728 0.000185 -1.000000
+0.000133 0.000011 -1.000000
+0.000728 0.000185 -1.000000
+-0.030754 0.746504 -0.664670
+0.001863 0.001845 0.999997
+0.001325 0.000611 0.999999
+-0.610389 0.439650 0.658888
+0.001325 0.000611 0.999999
+-0.294172 0.685526 0.665971
+-0.610389 0.439650 0.658888
+0.306333 -0.679985 0.666169
+0.001863 0.001845 0.999997
+0.622852 -0.422367 0.658530
+0.001863 0.001845 0.999997
+0.306333 -0.679985 0.666169
+0.001325 0.000611 0.999999
+0.001325 0.000611 0.999999
+-0.075530 0.753784 0.652767
+-0.294172 0.685526 0.665971
+-0.075530 0.753784 0.652767
+0.001325 0.000611 0.999999
+0.000792 0.000199 1.000000
+0.306333 -0.679985 0.666169
+0.000792 0.000199 1.000000
+0.001325 0.000611 0.999999
+0.000792 0.000199 1.000000
+0.306333 -0.679985 0.666169
+0.082773 -0.752755 0.653076
+0.000728 0.000185 -1.000000
+0.001219 0.000562 -0.999999
+-0.074238 0.741135 -0.667239
+0.001219 0.000562 -0.999999
+-0.289017 0.673615 -0.680230
+-0.074238 0.741135 -0.667239
+0.301071 -0.668114 -0.680426
+0.000728 0.000185 -1.000000
+0.081422 -0.740100 -0.667549
+0.000728 0.000185 -1.000000
+0.301071 -0.668114 -0.680426
+0.001219 0.000562 -0.999999
+0.001219 0.000562 -0.999999
+-0.599713 0.432128 -0.673505
+-0.289017 0.673615 -0.680230
+-0.599713 0.432128 -0.673505
+0.001219 0.000562 -0.999999
+0.001726 0.001692 -0.999997
+0.301071 -0.668114 -0.680426
+0.001726 0.001692 -0.999997
+0.001219 0.000562 -0.999999
+0.001726 0.001692 -0.999997
+0.301071 -0.668114 -0.680426
+0.612079 -0.414994 -0.673156
+0.306333 -0.679985 0.666169
+0.824266 -0.559093 0.089447
+0.411836 -0.906363 0.094322
+0.824266 -0.559093 0.089447
+0.306333 -0.679985 0.666169
+0.622852 -0.422367 0.658530
+-0.803383 0.587534 -0.096853
+-0.391051 0.914772 -0.101351
+-0.599713 0.432128 -0.673505
+-0.391051 0.914772 -0.101351
+-0.289017 0.673615 -0.680230
+-0.599713 0.432128 -0.673505
+0.306333 -0.679985 0.666169
+0.411836 -0.906363 0.094322
+0.082773 -0.752755 0.653076
+0.082773 -0.752755 0.653076
+0.411836 -0.906363 0.094322
+0.110463 -0.989738 0.090643
+-0.031281 0.759184 0.650124
+-0.098476 0.991021 0.090439
+-0.075530 0.753784 0.652767
+-0.098476 0.991021 0.090439
+-0.031281 0.759184 0.650124
+-0.040818 0.995164 0.089351
+-0.294172 0.685526 0.665971
+-0.391327 0.915409 0.094279
+-0.610389 0.439650 0.658888
+-0.610389 0.439650 0.658888
+-0.391327 0.915409 0.094279
+-0.803872 0.587943 0.090079
+-0.098595 0.995128 0.000000
+-0.040920 0.999162 0.000001
+-0.040792 0.994539 -0.096065
+-0.098595 0.995128 0.000000
+-0.040792 0.994539 -0.096065
+-0.098411 0.990384 -0.097231
+-0.391327 0.915409 0.094279
+-0.392650 0.919688 0.000000
+-0.803872 0.587943 0.090079
+-0.803872 0.587943 0.090079
+-0.392650 0.919688 0.000000
+-0.806509 0.591222 -0.000000
+-0.098411 0.990384 -0.097231
+-0.040792 0.994539 -0.096065
+-0.030754 0.746504 -0.664670
+-0.098411 0.990384 -0.097231
+-0.030754 0.746504 -0.664670
+-0.074238 0.741135 -0.667239
+-0.098411 0.990384 -0.097231
+-0.289017 0.673615 -0.680230
+-0.391051 0.914772 -0.101351
+-0.289017 0.673615 -0.680230
+-0.098411 0.990384 -0.097231
+-0.074238 0.741135 -0.667239
+-0.098476 0.991021 0.090439
+-0.392650 0.919688 0.000000
+-0.391327 0.915409 0.094279
+-0.392650 0.919688 0.000000
+-0.098476 0.991021 0.090439
+-0.098595 0.995128 0.000000
+-0.294172 0.685526 0.665971
+-0.098476 0.991021 0.090439
+-0.391327 0.915409 0.094279
+-0.098476 0.991021 0.090439
+-0.294172 0.685526 0.665971
+-0.075530 0.753784 0.652767
+-0.977296 0.194183 -0.084769
+-0.980683 0.195604 -0.000000
+-0.806509 0.591222 -0.000000
+-0.806509 0.591222 -0.000000
+-0.803383 0.587534 -0.096853
+-0.977296 0.194183 -0.084769
+-0.980683 0.195604 -0.000000
+-0.996686 0.010364 -0.080686
+-0.999945 0.010453 -0.000000
+-0.996686 0.010364 -0.080686
+-0.980683 0.195604 -0.000000
+-0.977296 0.194183 -0.084769
+-0.928647 -0.370966 -0.000000
+-0.996412 -0.084632 -0.000000
+-0.925337 -0.368222 -0.090355
+-0.996412 -0.084632 -0.000000
+-0.993161 -0.084108 -0.080981
+-0.925337 -0.368222 -0.090355
+-0.806509 0.591222 -0.000000
+-0.977773 0.194288 0.078810
+-0.803872 0.587943 0.090079
+-0.977773 0.194288 0.078810
+-0.806509 0.591222 -0.000000
+-0.980683 0.195604 -0.000000
+-0.997129 0.010369 0.075004
+-0.980683 0.195604 -0.000000
+-0.999945 0.010453 -0.000000
+-0.980683 0.195604 -0.000000
+-0.997129 0.010369 0.075004
+-0.977773 0.194288 0.078810
+-0.993606 -0.084146 0.075279
+-0.996412 -0.084632 -0.000000
+-0.925838 -0.368462 0.084019
+-0.925838 -0.368462 0.084019
+-0.996412 -0.084632 -0.000000
+-0.928647 -0.370966 -0.000000
+0.042630 -0.999091 -0.000005
+0.111438 -0.993771 0.000003
+0.042917 -0.994452 -0.096041
+0.111438 -0.993771 0.000003
+0.110391 -0.989100 -0.097446
+0.042917 -0.994452 -0.096041
+0.890171 0.036497 -0.454163
+0.990470 0.040609 -0.131605
+0.778099 -0.620285 -0.099033
+0.778099 -0.620285 -0.099033
+0.743797 -0.540615 -0.393068
+0.890171 0.036497 -0.454163
+0.990470 0.040609 -0.131605
+0.697045 0.599688 -0.393068
+0.724710 0.681900 -0.099033
+0.697045 0.599688 -0.393068
+0.990470 0.040609 -0.131605
+0.890171 0.036497 -0.454163
+0.163495 -0.986352 -0.019449
+-0.011773 -0.995324 -0.095870
+0.203307 -0.963517 -0.174075
+-0.011773 -0.995324 -0.095870
+0.163495 -0.986352 -0.019449
+-0.009323 -0.999956 -0.000009
+0.163495 -0.986352 -0.019449
+0.695818 -0.612506 -0.375064
+0.705423 -0.703011 -0.090302
+0.695818 -0.612506 -0.375064
+0.163495 -0.986352 -0.019449
+0.203307 -0.963517 -0.174075
+0.828362 -0.560193 0.000000
+0.411549 -0.905730 -0.101397
+0.414732 -0.909943 0.000000
+0.411549 -0.905730 -0.101397
+0.828362 -0.560193 0.000000
+0.823775 -0.558699 -0.096176
+-0.208656 -0.977989 -0.000011
+-0.011773 -0.995324 -0.095870
+-0.009323 -0.999956 -0.000009
+-0.011773 -0.995324 -0.095870
+-0.208656 -0.977989 -0.000011
+-0.207716 -0.973143 -0.099233
+0.163820 0.986298 -0.019460
+0.011668 0.999932 0.000016
+0.165217 0.985824 0.029245
+0.014509 0.995868 0.089650
+0.165217 0.985824 0.029245
+0.011668 0.999932 0.000016
+0.165217 0.985824 0.029245
+0.014509 0.995868 0.089650
+0.206141 0.963804 0.169080
+0.696833 0.609640 0.377840
+0.165217 0.985824 0.029245
+0.206141 0.963804 0.169080
+0.165217 0.985824 0.029245
+0.696833 0.609640 0.377840
+0.702341 0.698679 0.136251
+0.163820 0.986298 -0.019460
+0.165217 0.985824 0.029245
+0.702341 0.698679 0.136251
+0.702341 0.698679 0.136251
+0.705422 0.703011 -0.090301
+0.163820 0.986298 -0.019460
+0.980598 0.000001 0.196029
+0.991508 0.000000 -0.130043
+0.702341 0.698679 0.136251
+0.702341 0.698679 0.136251
+0.991508 0.000000 -0.130043
+0.705422 0.703011 -0.090301
+0.696833 0.609640 0.377840
+0.980598 0.000001 0.196029
+0.702341 0.698679 0.136251
+0.980598 0.000001 0.196029
+0.696833 0.609640 0.377840
+0.888582 0.000001 0.458719
+0.696833 -0.609640 0.377840
+0.980598 0.000001 0.196029
+0.888582 0.000001 0.458719
+0.980598 0.000001 0.196029
+0.696833 -0.609640 0.377840
+0.702342 -0.698679 0.136251
+0.991508 0.000000 -0.130043
+0.980598 0.000001 0.196029
+0.702342 -0.698679 0.136251
+0.702342 -0.698679 0.136251
+0.705423 -0.703011 -0.090302
+0.991508 0.000000 -0.130043
+0.160800 0.986646 -0.025958
+-0.040920 0.999162 0.000001
+0.161315 0.986125 0.039186
+-0.040818 0.995164 0.089351
+0.161315 0.986125 0.039186
+-0.040920 0.999162 0.000001
+0.161315 0.986125 0.039186
+-0.040818 0.995164 0.089351
+0.193164 0.963172 0.187051
+0.696613 0.597924 0.396506
+0.161315 0.986125 0.039186
+0.193164 0.963172 0.187051
+0.161315 0.986125 0.039186
+0.696613 0.597924 0.396506
+0.719673 0.677988 0.149676
+0.160800 0.986646 -0.025958
+0.161315 0.986125 0.039186
+0.719673 0.677988 0.149676
+0.719673 0.677988 0.149676
+0.724710 0.681900 -0.099033
+0.160800 0.986646 -0.025958
+0.411836 -0.906363 0.094322
+0.111438 -0.993771 0.000003
+0.110463 -0.989738 0.090643
+0.111438 -0.993771 0.000003
+0.411836 -0.906363 0.094322
+0.414732 -0.909943 0.000000
+0.982598 -0.168662 0.077805
+0.828362 -0.560193 0.000000
+0.824266 -0.559093 0.089447
+0.828362 -0.560193 0.000000
+0.982598 -0.168662 0.077805
+0.985772 -0.168086 0.000000
+-0.622634 -0.776885 0.093685
+-0.208656 -0.977989 -0.000011
+-0.207874 -0.973794 0.092270
+-0.208656 -0.977989 -0.000011
+-0.622634 -0.776885 0.093685
+-0.624666 -0.780892 -0.000000
+-0.925838 -0.368462 0.084019
+-0.928647 -0.370966 -0.000000
+-0.622634 -0.776885 0.093685
+-0.622634 -0.776885 0.093685
+-0.928647 -0.370966 -0.000000
+-0.624666 -0.780892 -0.000000
+0.240681 -0.970257 -0.025943
+0.042917 -0.994452 -0.096041
+0.269157 -0.943888 -0.191388
+0.042917 -0.994452 -0.096041
+0.240681 -0.970257 -0.025943
+0.042630 -0.999091 -0.000005
+0.240681 -0.970257 -0.025943
+0.743797 -0.540615 -0.393068
+0.778099 -0.620285 -0.099033
+0.743797 -0.540615 -0.393068
+0.240681 -0.970257 -0.025943
+0.269157 -0.943888 -0.191388
+-0.040818 0.995164 0.089351
+-0.098595 0.995128 0.000000
+-0.098476 0.991021 0.090439
+-0.098595 0.995128 0.000000
+-0.040818 0.995164 0.089351
+-0.040920 0.999162 0.000001
+-0.803383 0.587534 -0.096853
+-0.806509 0.591222 -0.000000
+-0.392650 0.919688 0.000000
+-0.392650 0.919688 0.000000
+-0.391051 0.914772 -0.101351
+-0.803383 0.587534 -0.096853
+-0.098595 0.995128 0.000000
+-0.098411 0.990384 -0.097231
+-0.392650 0.919688 0.000000
+-0.392650 0.919688 0.000000
+-0.098411 0.990384 -0.097231
+-0.391051 0.914772 -0.101351
+-0.993606 -0.084146 0.075279
+-0.999945 0.010453 -0.000000
+-0.996412 -0.084632 -0.000000
+-0.999945 0.010453 -0.000000
+-0.993606 -0.084146 0.075279
+-0.997129 0.010369 0.075004
+-0.000433 -0.000419 1.000000
+-0.009220 -0.760060 0.649787
+0.000420 -0.000658 1.000000
+-0.009220 -0.760060 0.649787
+-0.000433 -0.000419 1.000000
+-0.156790 -0.735200 0.659468
+0.156782 0.734791 0.659926
+0.000420 -0.000658 1.000000
+0.011192 0.759370 0.650563
+0.000420 -0.000658 1.000000
+0.156782 0.734791 0.659926
+-0.000433 -0.000419 1.000000
+0.011192 0.759370 0.650563
+0.208625 0.973595 0.092674
+0.156782 0.734791 0.659926
+0.208625 0.973595 0.092674
+0.011192 0.759370 0.650563
+0.014509 0.995868 0.089650
+0.209374 0.977836 0.000021
+0.014477 0.995237 -0.096402
+0.208422 0.972952 -0.099621
+0.014477 0.995237 -0.096402
+0.209374 0.977836 0.000021
+0.011668 0.999932 0.000016
+0.014509 0.995868 0.089650
+0.209374 0.977836 0.000021
+0.208625 0.973595 0.092674
+0.209374 0.977836 0.000021
+0.014509 0.995868 0.089650
+0.011668 0.999932 0.000016
+0.997156 -0.008296 0.074909
+0.999966 -0.008233 -0.000000
+0.982598 -0.168662 0.077805
+0.982598 -0.168662 0.077805
+0.999966 -0.008233 -0.000000
+0.985772 -0.168086 0.000000
+0.775213 -0.006655 -0.631665
+0.982130 -0.168573 -0.083692
+0.996713 -0.008292 -0.080583
+0.982130 -0.168573 -0.083692
+0.775213 -0.006655 -0.631665
+0.756334 -0.131556 -0.640822
+0.985772 -0.168086 0.000000
+0.999966 -0.008233 -0.000000
+0.982130 -0.168573 -0.083692
+0.999966 -0.008233 -0.000000
+0.996713 -0.008292 -0.080583
+0.982130 -0.168573 -0.083692
+0.001787 -0.001579 -0.999997
+-0.153911 -0.722420 -0.674108
+-0.460565 -0.569693 -0.680684
+-0.153911 -0.722420 -0.674108
+0.001787 -0.001579 -0.999997
+0.000069 -0.000017 -1.000000
+0.001787 -0.001579 -0.999997
+-0.702167 -0.273196 -0.657515
+0.002196 -0.002165 -0.999995
+-0.702167 -0.273196 -0.657515
+0.001787 -0.001579 -0.999997
+-0.460565 -0.569693 -0.680684
+0.475755 0.554261 -0.682973
+0.002196 -0.002165 -0.999995
+0.714453 0.249178 -0.653809
+0.002196 -0.002165 -0.999995
+0.475755 0.554261 -0.682973
+0.001787 -0.001579 -0.999997
+0.000069 -0.000017 -1.000000
+0.001787 -0.001579 -0.999997
+0.475755 0.554261 -0.682973
+0.475755 0.554261 -0.682973
+0.154398 0.722257 -0.674170
+0.000069 -0.000017 -1.000000
+0.002196 -0.002165 -0.999995
+0.000310 -0.000647 -1.000000
+0.714453 0.249178 -0.653809
+0.714453 0.249178 -0.653809
+0.000310 -0.000647 -1.000000
+0.772559 0.059258 -0.632172
+0.002196 -0.002165 -0.999995
+-0.771729 -0.064711 -0.632650
+0.000310 -0.000647 -1.000000
+-0.771729 -0.064711 -0.632650
+0.002196 -0.002165 -0.999995
+-0.702167 -0.273196 -0.657515
+0.649930 0.753269 -0.100878
+0.154398 0.722257 -0.674170
+0.475755 0.554261 -0.682973
+0.154398 0.722257 -0.674170
+0.649930 0.753269 -0.100878
+0.208422 0.972952 -0.099621
+0.649930 0.753269 -0.100878
+0.714453 0.249178 -0.653809
+0.941248 0.325928 -0.088445
+0.714453 0.249178 -0.653809
+0.649930 0.753269 -0.100878
+0.475755 0.554261 -0.682973
+0.994344 0.075182 0.075013
+0.787754 -0.006770 0.615953
+0.785067 0.060247 0.616473
+0.787754 -0.006770 0.615953
+0.994344 0.075182 0.075013
+0.997156 -0.008296 0.074909
+0.785067 0.060247 0.616473
+0.941740 0.326132 0.082238
+0.994344 0.075182 0.075013
+0.941740 0.326132 0.082238
+0.785067 0.060247 0.616473
+0.726501 0.253491 0.638701
+0.650400 0.753772 0.093847
+0.726501 0.253491 0.638701
+0.483938 0.564398 0.668774
+0.726501 0.253491 0.638701
+0.650400 0.753772 0.093847
+0.941740 0.326132 0.082238
+0.156782 0.734791 0.659926
+0.650400 0.753772 0.093847
+0.483938 0.564398 0.668774
+0.650400 0.753772 0.093847
+0.156782 0.734791 0.659926
+0.208625 0.973595 0.092674
+0.941248 0.325928 -0.088445
+0.772559 0.059258 -0.632172
+0.993902 0.075149 -0.080695
+0.772559 0.059258 -0.632172
+0.941248 0.325928 -0.088445
+0.714453 0.249178 -0.653809
+0.994344 0.075182 0.075013
+0.999966 -0.008233 -0.000000
+0.997156 -0.008296 0.074909
+0.999966 -0.008233 -0.000000
+0.994344 0.075182 0.075013
+0.997181 0.075032 -0.000000
+0.649930 0.753269 -0.100878
+0.654476 0.756083 0.000008
+0.209374 0.977836 0.000021
+0.209374 0.977836 0.000021
+0.208422 0.972952 -0.099621
+0.649930 0.753269 -0.100878
+0.654476 0.756083 0.000008
+0.649930 0.753269 -0.100878
+0.945592 0.325355 -0.000000
+0.945592 0.325355 -0.000000
+0.649930 0.753269 -0.100878
+0.941248 0.325928 -0.088445
+0.772559 0.059258 -0.632172
+0.775213 -0.006655 -0.631665
+0.993902 0.075149 -0.080695
+0.996713 -0.008292 -0.080583
+0.993902 0.075149 -0.080695
+0.775213 -0.006655 -0.631665
+0.999966 -0.008233 -0.000000
+0.993902 0.075149 -0.080695
+0.996713 -0.008292 -0.080583
+0.993902 0.075149 -0.080695
+0.999966 -0.008233 -0.000000
+0.997181 0.075032 -0.000000
+0.941740 0.326132 0.082238
+0.654476 0.756083 0.000008
+0.945592 0.325355 -0.000000
+0.654476 0.756083 0.000008
+0.941740 0.326132 0.082238
+0.650400 0.753772 0.093847
+0.208625 0.973595 0.092674
+0.209374 0.977836 0.000021
+0.650400 0.753772 0.093847
+0.650400 0.753772 0.093847
+0.209374 0.977836 0.000021
+0.654476 0.756083 0.000008
+0.945592 0.325355 -0.000000
+0.993902 0.075149 -0.080695
+0.997181 0.075032 -0.000000
+0.993902 0.075149 -0.080695
+0.945592 0.325355 -0.000000
+0.941248 0.325928 -0.088445
+0.941740 0.326132 0.082238
+0.997181 0.075032 -0.000000
+0.994344 0.075182 0.075013
+0.997181 0.075032 -0.000000
+0.941740 0.326132 0.082238
+0.945592 0.325355 -0.000000
+0.025865 0.178972 0.983514
+-0.463308 -0.007870 0.886162
+0.034482 0.016550 0.999268
+-0.463308 -0.007870 0.886162
+0.025865 0.178972 0.983514
+-0.461295 0.157808 0.873100
+-0.768549 -0.023832 0.639347
+-0.461295 0.157808 0.873100
+-0.763528 0.139969 0.630423
+-0.461295 0.157808 0.873100
+-0.768549 -0.023832 0.639347
+-0.463308 -0.007870 0.886162
+0.749508 0.202001 0.630423
+0.493169 0.032600 0.869322
+0.767921 0.039162 0.639346
+0.493169 0.032600 0.869322
+0.749508 0.202001 0.630423
+0.476119 0.196942 0.857044
+0.034482 0.016550 0.999268
+0.476119 0.196942 0.857044
+0.025865 0.178972 0.983514
+0.476119 0.196942 0.857044
+0.034482 0.016550 0.999268
+0.493169 0.032600 0.869322
+-0.379675 0.644448 0.663727
+0.025865 0.178972 0.983514
+-0.003989 0.679527 0.733640
+0.025865 0.178972 0.983514
+-0.379675 0.644448 0.663727
+-0.461295 0.157808 0.873100
+-0.031106 0.968734 0.246145
+-0.379675 0.644448 0.663727
+-0.003989 0.679527 0.733640
+-0.379675 0.644448 0.663727
+-0.031106 0.968734 0.246145
+-0.176500 0.955167 0.237705
+-0.620842 0.605136 0.498363
+-0.176500 0.955167 0.237705
+-0.330162 0.911115 0.246702
+-0.620842 0.605136 0.498363
+-0.379675 0.644448 0.663727
+-0.176500 0.955167 0.237705
+-0.763528 0.139969 0.630423
+-0.461295 0.157808 0.873100
+-0.620842 0.605136 0.498363
+-0.379675 0.644448 0.663727
+-0.620842 0.605136 0.498363
+-0.461295 0.157808 0.873100
+0.569220 0.653928 0.498364
+0.347249 0.671340 0.654768
+0.476119 0.196942 0.857044
+0.476119 0.196942 0.857044
+0.749508 0.202001 0.630423
+0.569220 0.653928 0.498364
+0.106862 0.965674 0.236760
+0.569220 0.653928 0.498364
+0.255092 0.934777 0.247227
+0.347249 0.671340 0.654768
+0.569220 0.653928 0.498364
+0.106862 0.965674 0.236760
+0.347249 0.671340 0.654768
+-0.031106 0.968734 0.246145
+-0.003989 0.679527 0.733640
+-0.031106 0.968734 0.246145
+0.347249 0.671340 0.654768
+0.106862 0.965674 0.236760
+0.025865 0.178972 0.983514
+0.347249 0.671340 0.654768
+-0.003989 0.679527 0.733640
+0.347249 0.671340 0.654768
+0.025865 0.178972 0.983514
+0.476119 0.196942 0.857044
+-0.176500 0.955167 0.237705
+-0.031106 0.968734 0.246145
+-0.039062 0.999221 0.005563
+-0.039062 0.999221 0.005563
+-0.306057 0.951873 0.016331
+-0.300138 0.947251 0.112395
+-0.176500 0.955167 0.237705
+-0.039062 0.999221 0.005563
+-0.300138 0.947251 0.112395
+-0.176500 0.955167 0.237705
+-0.300138 0.947251 0.112395
+-0.330162 0.911115 0.246702
+0.222901 0.968278 0.112927
+0.106862 0.965674 0.236760
+0.255092 0.934777 0.247227
+-0.039062 0.999221 0.005563
+0.106862 0.965674 0.236760
+0.222901 0.968278 0.112927
+0.222901 0.968278 0.112927
+0.228811 0.973333 0.016397
+-0.039062 0.999221 0.005563
+-0.039062 0.999221 0.005563
+-0.031106 0.968734 0.246145
+0.106862 0.965674 0.236760
+-0.039062 0.999221 0.005563
+-0.302995 0.949892 -0.076803
+-0.306057 0.951873 0.016331
+0.228811 0.973333 0.016397
+0.225605 0.971158 -0.077171
+-0.039062 0.999221 0.005563
+-0.039062 0.999221 0.005563
+-0.032272 0.967795 -0.249663
+-0.178624 0.954402 -0.239189
+-0.302995 0.949892 -0.076803
+-0.039062 0.999221 0.005563
+-0.178624 0.954402 -0.239189
+-0.302995 0.949892 -0.076803
+-0.178624 0.954402 -0.239189
+-0.333153 0.916508 -0.221410
+-0.039062 0.999221 0.005563
+0.225605 0.971158 -0.077171
+0.107695 0.966003 -0.235034
+0.107695 0.966003 -0.235034
+0.225605 0.971158 -0.077171
+0.257645 0.940436 -0.221810
+0.107695 0.966003 -0.235034
+-0.032272 0.967795 -0.249663
+-0.039062 0.999221 0.005563
+-0.032272 0.967795 -0.249663
+-0.380844 0.639488 -0.667842
+-0.178624 0.954402 -0.239189
+-0.380844 0.639488 -0.667842
+-0.032272 0.967795 -0.249663
+-0.004838 0.672799 -0.739809
+0.025865 0.178972 -0.983514
+-0.380844 0.639488 -0.667842
+-0.004838 0.672799 -0.739809
+-0.380844 0.639488 -0.667842
+0.025865 0.178972 -0.983514
+-0.461296 0.157808 -0.873100
+-0.461296 0.157808 -0.873100
+-0.797412 0.137472 -0.587568
+-0.643538 0.611360 -0.460541
+-0.461296 0.157808 -0.873100
+-0.643538 0.611360 -0.460541
+-0.380844 0.639488 -0.667842
+-0.380844 0.639488 -0.667842
+-0.643538 0.611360 -0.460541
+-0.178624 0.954402 -0.239189
+-0.643538 0.611360 -0.460541
+-0.333153 0.916508 -0.221410
+-0.178624 0.954402 -0.239189
+0.591332 0.661987 -0.460543
+0.348176 0.669196 -0.656468
+0.107695 0.966003 -0.235034
+0.591332 0.661987 -0.460543
+0.107695 0.966003 -0.235034
+0.257645 0.940436 -0.221810
+0.476120 0.196942 -0.857044
+0.591332 0.661987 -0.460543
+0.783483 0.202283 -0.587568
+0.591332 0.661987 -0.460543
+0.476120 0.196942 -0.857044
+0.348176 0.669196 -0.656468
+0.025865 0.178972 -0.983514
+0.348176 0.669196 -0.656468
+0.476120 0.196942 -0.857044
+0.348176 0.669196 -0.656468
+0.025865 0.178972 -0.983514
+-0.004838 0.672799 -0.739809
+-0.032272 0.967795 -0.249663
+0.348176 0.669196 -0.656468
+-0.004838 0.672799 -0.739809
+0.348176 0.669196 -0.656468
+-0.032272 0.967795 -0.249663
+0.107695 0.966003 -0.235034
+-0.463308 -0.007870 -0.886162
+0.025865 0.178972 -0.983514
+0.034482 0.016550 -0.999268
+0.025865 0.178972 -0.983514
+-0.463308 -0.007870 -0.886162
+-0.461296 0.157808 -0.873100
+-0.461296 0.157808 -0.873100
+-0.463308 -0.007870 -0.886162
+-0.802659 -0.025477 -0.595894
+-0.802659 -0.025477 -0.595894
+-0.797412 0.137472 -0.587568
+-0.461296 0.157808 -0.873100
+0.493170 0.032600 -0.869322
+0.783483 0.202283 -0.587568
+0.802050 0.040315 -0.595894
+0.783483 0.202283 -0.587568
+0.493170 0.032600 -0.869322
+0.476120 0.196942 -0.857044
+0.493170 0.032600 -0.869322
+0.034482 0.016550 -0.999268
+0.476120 0.196942 -0.857044
+0.034482 0.016550 -0.999268
+0.025865 0.178972 -0.983514
+0.476120 0.196942 -0.857044
+0.966879 0.045058 -0.251226
+0.783483 0.202283 -0.587568
+0.948323 0.197447 -0.248390
+0.783483 0.202283 -0.587568
+0.966879 0.045058 -0.251226
+0.802050 0.040315 -0.595894
+0.997590 0.045467 0.052417
+0.948323 0.197447 -0.248390
+0.979852 0.192850 0.051951
+0.948323 0.197447 -0.248390
+0.997590 0.045467 0.052417
+0.966879 0.045058 -0.251226
+0.915094 0.200981 0.349585
+0.934262 0.044300 0.353825
+0.997590 0.045467 0.052417
+0.915094 0.200981 0.349585
+0.997590 0.045467 0.052417
+0.979852 0.192850 0.051951
+0.749508 0.202001 0.630423
+0.934262 0.044300 0.353825
+0.915094 0.200981 0.349585
+0.934262 0.044300 0.353825
+0.749508 0.202001 0.630423
+0.767921 0.039162 0.639346
+0.591332 0.661987 -0.460543
+0.711345 0.675266 -0.194947
+0.948323 0.197447 -0.248390
+0.948323 0.197447 -0.248390
+0.783483 0.202283 -0.587568
+0.591332 0.661987 -0.460543
+0.257645 0.940436 -0.221810
+0.225605 0.971158 -0.077171
+0.591332 0.661987 -0.460543
+0.711345 0.675266 -0.194947
+0.591332 0.661987 -0.460543
+0.225605 0.971158 -0.077171
+0.711345 0.675266 -0.194947
+0.735028 0.676828 0.040454
+0.979852 0.192850 0.051951
+0.979852 0.192850 0.051951
+0.948323 0.197447 -0.248390
+0.711345 0.675266 -0.194947
+0.735028 0.676828 0.040454
+0.711345 0.675266 -0.194947
+0.228811 0.973333 0.016397
+0.711345 0.675266 -0.194947
+0.225605 0.971158 -0.077171
+0.228811 0.973333 0.016397
+0.687144 0.671565 0.277190
+0.979852 0.192850 0.051951
+0.735028 0.676828 0.040454
+0.979852 0.192850 0.051951
+0.687144 0.671565 0.277190
+0.915094 0.200981 0.349585
+0.687144 0.671565 0.277190
+0.228811 0.973333 0.016397
+0.222901 0.968278 0.112927
+0.228811 0.973333 0.016397
+0.687144 0.671565 0.277190
+0.735028 0.676828 0.040454
+0.569220 0.653928 0.498364
+0.222901 0.968278 0.112927
+0.255092 0.934777 0.247227
+0.222901 0.968278 0.112927
+0.569220 0.653928 0.498364
+0.687144 0.671565 0.277190
+0.749508 0.202001 0.630423
+0.915094 0.200981 0.349585
+0.569220 0.653928 0.498364
+0.569220 0.653928 0.498364
+0.915094 0.200981 0.349585
+0.687144 0.671565 0.277190
+-0.967323 -0.034244 -0.251225
+-0.961304 0.119156 -0.248389
+-0.802659 -0.025477 -0.595894
+-0.961304 0.119156 -0.248389
+-0.797412 0.137472 -0.587568
+-0.802659 -0.025477 -0.595894
+-0.997963 -0.036351 0.052417
+-0.992350 0.111994 0.051950
+-0.967323 -0.034244 -0.251225
+-0.992350 0.111994 0.051950
+-0.961304 0.119156 -0.248389
+-0.967323 -0.034244 -0.251225
+-0.928475 0.125400 0.349585
+-0.768549 -0.023832 0.639347
+-0.763528 0.139969 0.630423
+-0.768549 -0.023832 0.639347
+-0.928475 0.125400 0.349585
+-0.934753 -0.032329 0.353825
+-0.934753 -0.032329 0.353825
+-0.992350 0.111994 0.051950
+-0.997963 -0.036351 0.052417
+-0.992350 0.111994 0.051950
+-0.934753 -0.032329 0.353825
+-0.928475 0.125400 0.349585
+-0.643538 0.611360 -0.460541
+-0.764236 0.614768 -0.194946
+-0.302995 0.949892 -0.076803
+-0.643538 0.611360 -0.460541
+-0.302995 0.949892 -0.076803
+-0.333153 0.916508 -0.221410
+-0.764236 0.614768 -0.194946
+-0.643538 0.611360 -0.460541
+-0.961304 0.119156 -0.248389
+-0.961304 0.119156 -0.248389
+-0.643538 0.611360 -0.460541
+-0.797412 0.137472 -0.587568
+-0.764236 0.614768 -0.194946
+-0.787966 0.614389 0.040454
+-0.306057 0.951873 0.016331
+-0.306057 0.951873 0.016331
+-0.302995 0.949892 -0.076803
+-0.764236 0.614768 -0.194946
+-0.787966 0.614389 0.040454
+-0.764236 0.614768 -0.194946
+-0.992350 0.111994 0.051950
+-0.992350 0.111994 0.051950
+-0.764236 0.614768 -0.194946
+-0.961304 0.119156 -0.248389
+-0.620842 0.605136 0.498363
+-0.928475 0.125400 0.349585
+-0.763528 0.139969 0.630423
+-0.928475 0.125400 0.349585
+-0.620842 0.605136 0.498363
+-0.739811 0.613063 0.277189
+-0.300138 0.947251 0.112395
+-0.620842 0.605136 0.498363
+-0.330162 0.911115 0.246702
+-0.620842 0.605136 0.498363
+-0.300138 0.947251 0.112395
+-0.739811 0.613063 0.277189
+-0.739811 0.613063 0.277189
+-0.306057 0.951873 0.016331
+-0.787966 0.614389 0.040454
+-0.306057 0.951873 0.016331
+-0.739811 0.613063 0.277189
+-0.300138 0.947251 0.112395
+-0.739811 0.613063 0.277189
+-0.992350 0.111994 0.051950
+-0.928475 0.125400 0.349585
+-0.992350 0.111994 0.051950
+-0.739811 0.613063 0.277189
+-0.787966 0.614389 0.040454
+0.000001 1.000000 -0.000001
+0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000001 1.000000 -0.000001
+-0.000000 1.000000 0.000001
+0.000000 1.000000 0.000001
+0.000000 1.000000 -0.000000
+-0.000000 1.000000 0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 0.000002
+-0.000001 1.000000 0.000002
+0.000000 1.000000 -0.000000
+0.000000 1.000000 0.000002
+0.000002 1.000000 0.000002
+0.000000 1.000000 0.000002
+0.000000 1.000000 -0.000000
+0.000001 1.000000 0.000001
+0.000002 1.000000 0.000002
+0.000000 1.000000 -0.000000
+0.000001 1.000000 0.000001
+0.000000 1.000000 -0.000000
+0.000000 1.000000 0.000001
+0.000000 1.000000 0.000001
+0.000000 1.000000 -0.000000
+-0.000000 1.000000 0.000001
+-0.000001 1.000000 0.000001
+-0.000000 1.000000 0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 0.000000
+-0.000001 1.000000 0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 0.000000
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 0.000000
+-0.000001 1.000000 0.000000
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 -0.000000
+-0.000001 1.000000 -0.000001
+-0.000001 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 -0.000001
+-0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 -0.000001
+-0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 -0.000001
+-0.000001 1.000000 -0.000001
+-0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 -0.000001
+-0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+-0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+-0.000002 1.000000 -0.000001
+-0.000002 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000001
+0.000002 1.000000 -0.000001
+0.000000 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000001 1.000000 -0.000001
+0.000002 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000001 1.000000 -0.000001
+0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000001 1.000000 -0.000001
+0.000001 1.000000 -0.000001
+0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+-0.501313 0.219764 0.836893
+-0.608939 0.000000 0.793217
+-0.592396 0.227675 0.772807
+-0.608939 0.000000 0.793217
+-0.501313 0.219764 0.836893
+-0.513987 0.000000 0.857798
+-0.714326 0.229234 0.661204
+-0.592396 0.227675 0.772807
+-0.608939 0.000000 0.793217
+-0.714326 0.229234 0.661204
+-0.608939 0.000000 0.793217
+-0.734005 0.000000 0.679144
+0.000001 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.000001 1.000000 -0.000000
+0.000001 1.000000 -0.000000
+0.000001 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+0.000001 1.000000 0.000000
+0.000001 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+0.000001 1.000000 0.000000
+0.000000 1.000000 -0.000000
+0.000001 1.000000 0.000000
+0.000001 1.000000 0.000000
+0.000000 1.000000 -0.000000
+0.000001 1.000000 0.000001
+0.000000 1.000000 0.000001
+0.000001 1.000000 0.000001
+0.000000 1.000000 -0.000000
+0.141419 0.225313 -0.963968
+-0.200263 0.225466 -0.953446
+0.144621 0.000000 -0.989487
+-0.206054 0.000000 -0.978541
+0.144621 0.000000 -0.989487
+-0.200263 0.225466 -0.953446
+0.446275 0.000000 -0.894896
+0.141419 0.225313 -0.963968
+0.144621 0.000000 -0.989487
+0.141419 0.225313 -0.963968
+0.446275 0.000000 -0.894896
+0.431044 0.238709 -0.870183
+-0.134123 0.000000 -0.990965
+0.431044 0.238709 -0.870183
+0.446275 0.000000 -0.894896
+0.431044 0.238709 -0.870183
+-0.134123 0.000000 -0.990965
+-0.127838 0.334101 -0.933828
+-0.649371 0.228182 -0.725431
+-0.127838 0.334101 -0.933828
+-0.669455 -0.000000 -0.742852
+-0.669455 -0.000000 -0.742852
+-0.127838 0.334101 -0.933828
+-0.134123 0.000000 -0.990965
+-0.669455 -0.000000 -0.742852
+-0.405462 0.000000 -0.914112
+-0.649371 0.228182 -0.725431
+-0.405462 0.000000 -0.914112
+-0.395432 0.217875 -0.892280
+-0.649371 0.228182 -0.725431
+-0.405462 0.000000 -0.914112
+-0.062581 -0.000000 -0.998040
+-0.059515 0.221340 -0.973379
+-0.405462 0.000000 -0.914112
+-0.059515 0.221340 -0.973379
+-0.395432 0.217875 -0.892280
+-0.062581 -0.000000 -0.998040
+0.373842 -0.000000 -0.927492
+0.365100 0.214493 -0.905922
+-0.062581 -0.000000 -0.998040
+0.365100 0.214493 -0.905922
+-0.059515 0.221340 -0.973379
+0.373842 -0.000000 -0.927492
+0.711578 0.000001 -0.702608
+0.365100 0.214493 -0.905922
+0.711578 0.000001 -0.702608
+0.696873 0.205905 -0.687001
+0.365100 0.214493 -0.905922
+0.711578 0.000001 -0.702608
+0.903941 0.214206 -0.370142
+0.696873 0.205905 -0.687001
+0.903941 0.214206 -0.370142
+0.711578 0.000001 -0.702608
+0.925520 0.000001 -0.378700
+0.976199 0.216199 -0.017157
+0.903941 0.214206 -0.370142
+0.925520 0.000001 -0.378700
+0.925520 0.000001 -0.378700
+0.999829 0.000000 -0.018501
+0.976199 0.216199 -0.017157
+0.944422 0.209786 0.253095
+0.976199 0.216199 -0.017157
+0.999829 0.000000 -0.018501
+0.999829 0.000000 -0.018501
+0.965907 0.000000 0.258889
+0.944422 0.209786 0.253095
+0.965907 0.000000 0.258889
+0.884399 0.000000 0.466731
+0.944422 0.209786 0.253095
+0.944422 0.209786 0.253095
+0.884399 0.000000 0.466731
+0.864795 0.209422 0.456369
+0.864795 0.209422 0.456369
+0.884399 0.000000 0.466731
+0.794918 0.000000 0.606717
+0.864795 0.209422 0.456369
+0.794918 0.000000 0.606717
+0.777085 0.211198 0.592903
+0.777085 0.211198 0.592903
+0.794918 0.000000 0.606717
+0.705755 0.211010 0.676302
+0.794918 0.000000 0.606717
+0.721942 0.000000 0.691953
+0.705755 0.211010 0.676302
+0.678746 0.209741 0.703784
+0.705755 0.211010 0.676302
+0.721942 0.000000 0.691953
+0.678746 0.209741 0.703784
+0.721942 0.000000 0.691953
+0.694175 0.000000 0.719806
+0.699419 0.209896 0.683196
+0.694175 0.000000 0.719806
+0.715358 0.000000 0.698759
+0.694175 0.000000 0.719806
+0.699419 0.209896 0.683196
+0.678746 0.209741 0.703784
+0.699419 0.209896 0.683196
+0.715358 0.000000 0.698759
+0.820185 0.000000 0.572098
+0.699419 0.209896 0.683196
+0.820185 0.000000 0.572098
+0.801788 0.210682 0.559240
+0.801788 0.210682 0.559240
+0.820185 0.000000 0.572098
+0.905278 0.213025 0.367549
+0.820185 0.000000 0.572098
+0.926333 0.000000 0.376707
+0.905278 0.213025 0.367549
+0.905278 0.213025 0.367549
+0.957377 0.000000 0.288842
+0.935215 0.215854 0.280677
+0.957377 0.000000 0.288842
+0.905278 0.213025 0.367549
+0.926333 0.000000 0.376707
+-0.787363 0.202216 0.582382
+-0.859532 0.000000 0.511081
+-0.804845 0.000000 0.593485
+-0.859532 0.000000 0.511081
+-0.787363 0.202216 0.582382
+-0.841685 0.192147 0.504624
+-0.787363 0.202216 0.582382
+-0.644836 -0.000000 0.764321
+-0.629946 0.213633 0.746679
+-0.644836 -0.000000 0.764321
+-0.787363 0.202216 0.582382
+-0.804845 0.000000 0.593485
+-0.493243 0.214467 0.843039
+-0.629946 0.213633 0.746679
+-0.644836 -0.000000 0.764321
+-0.493243 0.214467 0.843039
+-0.644836 -0.000000 0.764321
+-0.505071 -0.000000 0.863078
+-0.467256 0.216972 0.857085
+-0.493243 0.214467 0.843039
+-0.505071 -0.000000 0.863078
+-0.467256 0.216972 0.857085
+-0.505071 -0.000000 0.863078
+-0.478757 0.000000 0.877947
+-0.501313 0.219764 0.836893
+-0.478757 0.000000 0.877947
+-0.513987 0.000000 0.857798
+-0.478757 0.000000 0.877947
+-0.501313 0.219764 0.836893
+-0.467256 0.216972 0.857085
+-0.840320 0.247136 0.482478
+-0.734005 0.000000 0.679144
+-0.867836 0.000000 0.496851
+-0.734005 0.000000 0.679144
+-0.840320 0.247136 0.482478
+-0.714326 0.229234 0.661204
+-0.936920 0.266169 0.226572
+-0.867836 0.000000 0.496851
+-0.971893 0.000000 0.235423
+-0.867836 0.000000 0.496851
+-0.936920 0.266169 0.226572
+-0.840320 0.247136 0.482478
+-0.955490 0.266720 -0.126095
+-0.971893 0.000000 0.235423
+-0.991410 0.000000 -0.130795
+-0.971893 0.000000 0.235423
+-0.955490 0.266720 -0.126095
+-0.936920 0.266169 0.226572
+-0.868615 0.000000 -0.495487
+-0.955490 0.266720 -0.126095
+-0.991410 0.000000 -0.130795
+-0.955490 0.266720 -0.126095
+-0.868615 0.000000 -0.495487
+-0.838984 0.256812 -0.479743
+-0.604056 0.000000 -0.796942
+-0.838984 0.256812 -0.479743
+-0.868615 0.000000 -0.495487
+-0.838984 0.256812 -0.479743
+-0.604056 0.000000 -0.796942
+-0.584454 0.238003 -0.775737
+-0.200263 0.225466 -0.953446
+-0.584454 0.238003 -0.775737
+-0.206054 0.000000 -0.978541
+-0.604056 0.000000 -0.796942
+-0.206054 0.000000 -0.978541
+-0.584454 0.238003 -0.775737
+-0.000041 -0.000115 1.000000
+-0.000638 -0.000863 0.999999
+0.603405 -0.022707 0.797112
+0.603405 -0.022707 0.797112
+-0.000638 -0.000863 0.999999
+0.591521 -0.089107 0.801350
+-0.603641 0.021313 0.796972
+-0.962593 0.123470 0.241185
+-0.595755 0.077825 0.799387
+-0.962593 0.123470 0.241185
+-0.603641 0.021313 0.796972
+-0.970442 0.033992 0.238928
+-0.642641 0.022702 -0.765831
+-0.969807 0.124423 -0.209747
+-0.977593 0.034245 -0.207697
+-0.969807 0.124423 -0.209747
+-0.642641 0.022702 -0.765831
+-0.634535 0.082992 -0.768425
+-0.000747 -0.001019 -0.999999
+0.649752 -0.024446 -0.759753
+0.637476 -0.095849 -0.764485
+0.649752 -0.024446 -0.759753
+-0.000747 -0.001019 -0.999999
+-0.000048 -0.000135 -1.000000
+0.553852 -0.274159 -0.786184
+0.969430 -0.140809 -0.200942
+0.872758 -0.435686 -0.220161
+0.969430 -0.140809 -0.200942
+0.553852 -0.274159 -0.786184
+0.637476 -0.095849 -0.764485
+-0.634535 0.082992 -0.768425
+-0.919102 0.328137 -0.218125
+-0.969807 0.124423 -0.209747
+-0.919102 0.328137 -0.218125
+-0.634535 0.082992 -0.768425
+-0.585801 0.219430 -0.780185
+0.637476 -0.095849 -0.764485
+0.980057 -0.036695 -0.195299
+0.969430 -0.140809 -0.200942
+0.980057 -0.036695 -0.195299
+0.637476 -0.095849 -0.764485
+0.649752 -0.024446 -0.759753
+0.510848 -0.252757 0.821674
+0.960263 -0.139604 0.241671
+0.591521 -0.089107 0.801350
+0.960263 -0.139604 0.241671
+0.510848 -0.252757 0.821674
+0.863183 -0.430583 0.263654
+-0.962593 0.123470 0.241185
+-0.911838 0.325323 0.250433
+-0.595755 0.077825 0.799387
+-0.549130 0.205095 0.810181
+-0.595755 0.077825 0.799387
+-0.911838 0.325323 0.250433
+0.960263 -0.139604 0.241671
+0.971097 -0.036349 0.235902
+0.591521 -0.089107 0.801350
+0.603405 -0.022707 0.797112
+0.591521 -0.089107 0.801350
+0.971097 -0.036349 0.235902
+0.974708 -0.223397 0.006105
+0.973299 -0.229452 -0.006333
+0.986613 -0.081445 0.141285
+0.986613 -0.081445 0.141285
+0.973299 -0.229452 -0.006333
+0.982443 -0.083837 -0.166662
+-0.360720 0.898090 0.251626
+0.519507 0.834788 -0.182319
+-0.360405 0.907460 -0.215925
+0.519507 0.834788 -0.182319
+-0.360720 0.898090 0.251626
+0.517121 0.828028 0.216692
+0.878331 0.411641 0.243077
+0.976707 0.214461 0.007109
+0.517121 0.828028 0.216692
+0.517121 0.828028 0.216692
+0.975403 0.220308 -0.007334
+0.519507 0.834788 -0.182319
+0.975403 0.220308 -0.007334
+0.517121 0.828028 0.216692
+0.976707 0.214461 0.007109
+-0.725082 -0.650785 0.225243
+-0.211020 -0.977482 -0.000083
+-0.210355 -0.950796 0.227458
+-0.211020 -0.977482 -0.000083
+-0.725082 -0.650785 0.225243
+-0.768311 -0.640077 -0.000385
+0.872758 -0.435686 -0.220161
+0.973299 -0.229452 -0.006333
+0.497019 -0.845024 -0.197246
+-0.768311 -0.640076 -0.000385
+-0.982510 -0.000001 -0.186211
+-0.725047 -0.656124 -0.209303
+-0.982510 -0.000001 -0.186211
+-0.768311 -0.640076 -0.000385
+-1.000000 0.000000 -0.000555
+-0.768311 0.640076 -0.000386
+-0.982510 -0.000001 -0.186211
+-1.000000 0.000000 -0.000555
+-0.982510 -0.000001 -0.186211
+-0.768311 0.640076 -0.000386
+-0.725048 0.656123 -0.209303
+-0.725048 0.656123 -0.209303
+-0.211020 0.977482 -0.000076
+-0.208725 0.955769 -0.207220
+-0.211020 0.977482 -0.000076
+-0.725048 0.656123 -0.209303
+-0.768311 0.640076 -0.000386
+0.494301 -0.836553 0.236316
+-0.362221 -0.908457 -0.208569
+0.497019 -0.845024 -0.197246
+-0.362221 -0.908457 -0.208569
+0.494301 -0.836553 0.236316
+-0.360720 -0.898090 0.251626
+-0.725082 -0.650785 0.225243
+-0.279642 -0.960104 -0.000105
+-0.209266 -0.951054 0.227386
+-0.279642 -0.960104 -0.000105
+-0.725082 -0.650785 0.225243
+-0.768311 -0.640076 -0.000385
+-0.979975 -0.000000 0.199120
+-0.768311 -0.640077 -0.000385
+-0.725082 -0.650785 0.225243
+-0.768311 -0.640077 -0.000385
+-0.979975 -0.000000 0.199120
+-1.000000 0.000000 -0.000555
+0.655271 0.020219 -0.755123
+0.827744 -0.009343 -0.561027
+0.973299 -0.229452 -0.006333
+0.982443 -0.083837 -0.166662
+0.973299 -0.229452 -0.006333
+0.827744 -0.009343 -0.561027
+0.986595 -0.094661 0.132928
+0.847773 -0.029627 0.529531
+0.973299 -0.229452 -0.006333
+0.973299 -0.229452 -0.006333
+0.847773 -0.029627 0.529531
+0.657075 -0.007104 0.753791
+0.655271 0.020219 -0.755123
+0.655230 -0.018190 -0.755210
+0.827744 -0.009343 -0.561027
+0.827744 -0.009343 -0.561027
+0.655230 -0.018190 -0.755210
+0.813501 -0.026725 -0.580949
+0.827744 -0.009343 -0.561027
+0.981105 -0.037375 -0.189834
+0.982443 -0.083837 -0.166662
+0.981105 -0.037375 -0.189834
+0.827744 -0.009343 -0.561027
+0.813501 -0.026725 -0.580949
+0.986595 -0.094661 0.132928
+0.989339 -0.034695 0.141437
+0.847773 -0.029627 0.529531
+0.843248 -0.025991 0.536896
+0.847773 -0.029627 0.529531
+0.989339 -0.034695 0.141437
+0.655231 -0.018190 0.755210
+0.847773 -0.029627 0.529531
+0.843248 -0.025991 0.536896
+0.847773 -0.029627 0.529531
+0.655231 -0.018190 0.755210
+0.657075 -0.007104 0.753791
+0.655231 0.018190 -0.755210
+0.827746 0.009323 -0.561026
+0.813501 0.026724 -0.580949
+0.827746 0.009323 -0.561026
+0.655231 0.018190 -0.755210
+0.655272 -0.020237 -0.755122
+0.981105 0.037375 -0.189834
+0.827746 0.009323 -0.561026
+0.982445 0.083823 -0.166661
+0.827746 0.009323 -0.561026
+0.981105 0.037375 -0.189834
+0.813501 0.026724 -0.580949
+0.847774 0.029609 0.529530
+0.989339 0.034695 0.141437
+0.986759 0.092584 0.133176
+0.989339 0.034695 0.141437
+0.847774 0.029609 0.529530
+0.843248 0.025992 0.536896
+0.657076 0.007089 0.753791
+0.655231 0.018190 0.755209
+0.847774 0.029609 0.529530
+0.847774 0.029609 0.529530
+0.655231 0.018190 0.755209
+0.843248 0.025992 0.536896
+0.975403 0.220308 -0.007334
+0.827746 0.009323 -0.561026
+0.655272 -0.020237 -0.755122
+0.975403 0.220308 -0.007334
+0.982445 0.083823 -0.166661
+0.827746 0.009323 -0.561026
+0.975403 0.220308 -0.007334
+0.847774 0.029609 0.529530
+0.986759 0.092584 0.133176
+0.975403 0.220308 -0.007334
+0.657076 0.007089 0.753791
+0.847774 0.029609 0.529530
+0.974708 -0.223397 0.006105
+0.720114 -0.008793 -0.693800
+0.878657 -0.030555 -0.476474
+0.974708 -0.223397 0.006105
+0.878657 -0.030555 -0.476474
+0.988802 -0.094858 -0.115209
+0.986613 -0.081445 0.141285
+0.864899 -0.005699 0.501913
+0.974708 -0.223397 0.006105
+0.974708 -0.223397 0.006105
+0.864899 -0.005699 0.501913
+0.718273 0.023185 0.695375
+0.720114 -0.008793 -0.693800
+0.718316 -0.019932 -0.695431
+0.878657 -0.030555 -0.476474
+0.875032 -0.026858 -0.483320
+0.878657 -0.030555 -0.476474
+0.718316 -0.019932 -0.695431
+0.878657 -0.030555 -0.476474
+0.991813 -0.034750 -0.122881
+0.988802 -0.094858 -0.115209
+0.991813 -0.034750 -0.122881
+0.878657 -0.030555 -0.476474
+0.875032 -0.026858 -0.483320
+0.986613 -0.081445 0.141285
+0.988065 -0.035740 0.149836
+0.864899 -0.005699 0.501913
+0.860326 -0.026239 0.509068
+0.864899 -0.005699 0.501913
+0.988065 -0.035740 0.149836
+0.864899 -0.005699 0.501913
+0.718317 -0.019932 0.695431
+0.718273 0.023185 0.695375
+0.718317 -0.019932 0.695431
+0.864899 -0.005699 0.501913
+0.860326 -0.026239 0.509068
+0.878658 0.030554 -0.476473
+0.718317 0.019932 -0.695430
+0.720116 0.008793 -0.693798
+0.718317 0.019932 -0.695430
+0.878658 0.030554 -0.476473
+0.875032 0.026858 -0.483319
+0.991813 0.034751 -0.122880
+0.878658 0.030554 -0.476473
+0.988967 0.092798 -0.115468
+0.878658 0.030554 -0.476473
+0.991813 0.034751 -0.122880
+0.875032 0.026858 -0.483319
+0.864900 0.005698 0.501911
+0.988065 0.035740 0.149836
+0.986613 0.081440 0.141285
+0.988065 0.035740 0.149836
+0.864900 0.005698 0.501911
+0.860327 0.026239 0.509067
+0.718318 0.019932 0.695430
+0.864900 0.005698 0.501911
+0.718275 -0.023186 0.695373
+0.864900 0.005698 0.501911
+0.718318 0.019932 0.695430
+0.860327 0.026239 0.509067
+0.976707 0.214461 0.007109
+0.878658 0.030554 -0.476473
+0.720116 0.008793 -0.693798
+0.976707 0.214461 0.007109
+0.988967 0.092798 -0.115468
+0.878658 0.030554 -0.476473
+0.976707 0.214461 0.007109
+0.864900 0.005698 0.501911
+0.986613 0.081440 0.141285
+0.976707 0.214461 0.007109
+0.718275 -0.023186 0.695373
+0.864900 0.005698 0.501911
+0.973299 -0.229452 -0.006333
+0.872758 -0.435686 -0.220161
+0.986595 -0.094661 0.132928
+0.986595 -0.094661 0.132928
+0.872758 -0.435686 -0.220161
+0.969430 -0.140809 -0.200942
+0.986759 0.092584 0.133176
+0.887039 0.414986 -0.202357
+0.975403 0.220308 -0.007334
+0.887039 0.414986 -0.202357
+0.986759 0.092584 0.133176
+0.968988 0.137063 -0.205612
+0.986613 0.081440 0.141285
+0.975403 0.220308 -0.007334
+0.976707 0.214461 0.007109
+0.975403 0.220308 -0.007334
+0.986613 0.081440 0.141285
+0.982445 0.083823 -0.166661
+-0.360405 0.907460 -0.215925
+0.258576 0.530790 -0.807094
+-0.239807 0.576892 -0.780825
+0.258576 0.530790 -0.807094
+-0.360405 0.907460 -0.215925
+0.519507 0.834788 -0.182319
+0.517121 0.828028 0.216692
+-0.360720 0.898090 0.251626
+0.238961 0.490220 0.838201
+-0.226991 0.537188 0.812345
+0.238961 0.490220 0.838201
+-0.360720 0.898090 0.251626
+0.519507 0.834788 -0.182319
+0.975403 0.220308 -0.007334
+0.887039 0.414986 -0.202357
+0.519507 0.834788 -0.182319
+0.887039 0.414986 -0.202357
+0.258576 0.530790 -0.807094
+0.258576 0.530790 -0.807094
+0.887039 0.414986 -0.202357
+0.570705 0.274463 -0.773929
+0.878331 0.411641 0.243077
+0.238961 0.490220 0.838201
+0.529592 0.255773 0.808772
+0.238961 0.490220 0.838201
+0.878331 0.411641 0.243077
+0.517121 0.828028 0.216692
+-0.919102 -0.328136 -0.218125
+-0.466918 -0.842704 -0.268025
+-0.585801 -0.219429 -0.780184
+-0.466918 -0.842704 -0.268025
+-0.265241 -0.486465 -0.832466
+-0.585801 -0.219429 -0.780184
+0.529592 0.255773 0.808772
+-0.002507 0.001933 0.999995
+-0.003939 0.002865 0.999988
+-0.002507 0.001933 0.999995
+0.529592 0.255773 0.808772
+0.238961 0.490220 0.838201
+-0.003939 0.002865 0.999988
+-0.246814 -0.450798 0.857825
+-0.549131 -0.205096 0.810180
+-0.246814 -0.450798 0.857825
+-0.003939 0.002865 0.999988
+-0.002507 0.001933 0.999995
+-0.000442 -0.000180 1.000000
+-0.246814 -0.450798 0.857825
+-0.002507 0.001933 0.999995
+-0.246814 -0.450798 0.857825
+-0.000442 -0.000180 1.000000
+0.228503 -0.539944 0.810091
+-0.226991 0.537188 0.812345
+-0.002507 0.001933 0.999995
+0.238961 0.490220 0.838201
+-0.002507 0.001933 0.999995
+-0.226991 0.537188 0.812345
+-0.000442 -0.000180 1.000000
+-0.226991 0.537188 0.812345
+-0.041583 0.960502 0.275148
+-0.033609 0.535318 0.843982
+-0.041583 0.960502 0.275148
+-0.226991 0.537188 0.812345
+-0.360720 0.898090 0.251626
+0.002097 -0.000029 0.999998
+-0.000442 -0.000180 1.000000
+-0.033609 0.535318 0.843982
+-0.226991 0.537188 0.812345
+-0.033609 0.535318 0.843982
+-0.000442 -0.000180 1.000000
+0.055055 -0.547112 0.835247
+0.228503 -0.539944 0.810091
+0.002097 -0.000029 0.999998
+-0.000442 -0.000180 1.000000
+0.002097 -0.000029 0.999998
+0.228503 -0.539944 0.810091
+-0.239807 0.576892 -0.780825
+-0.002934 0.002292 -0.999993
+-0.000497 -0.000226 -1.000000
+-0.002934 0.002292 -0.999993
+-0.239807 0.576892 -0.780825
+0.258576 0.530790 -0.807094
+-0.002934 0.002292 -0.999993
+-0.004616 0.003391 -0.999984
+-0.265241 -0.486465 -0.832466
+-0.265241 -0.486465 -0.832466
+-0.004616 0.003391 -0.999984
+-0.585801 -0.219429 -0.780184
+0.570705 0.274463 -0.773929
+-0.002934 0.002292 -0.999993
+0.258576 0.530790 -0.807094
+-0.002934 0.002292 -0.999993
+0.570705 0.274463 -0.773929
+-0.004616 0.003391 -0.999984
+-0.033609 0.535318 0.843982
+0.002684 -0.000028 0.999996
+0.002097 -0.000029 0.999998
+0.002684 -0.000028 0.999996
+-0.033609 0.535318 0.843982
+0.189891 0.573349 0.797002
+0.002097 -0.000029 0.999998
+-0.161073 -0.585034 0.794852
+0.055055 -0.547112 0.835247
+-0.161073 -0.585034 0.794852
+0.002097 -0.000029 0.999998
+0.002684 -0.000028 0.999996
+-0.170231 0.000004 0.985404
+0.189891 0.573349 0.797002
+-0.191496 0.630666 0.752057
+0.189891 0.573349 0.797002
+-0.170231 0.000004 0.985404
+0.002684 -0.000028 0.999996
+-0.170231 0.000004 0.985404
+-0.161073 -0.585034 0.794852
+0.002684 -0.000028 0.999996
+-0.161073 -0.585034 0.794852
+-0.170231 0.000004 0.985404
+-0.195565 -0.625420 0.755383
+-0.180318 -0.000006 -0.983608
+0.204425 -0.613146 -0.763061
+-0.199267 -0.653464 -0.730258
+0.204425 -0.613146 -0.763061
+-0.180318 -0.000006 -0.983608
+0.003258 0.000064 -0.999995
+-0.199844 0.651940 -0.731462
+-0.171465 0.617130 -0.767952
+-0.180318 -0.000006 -0.983608
+0.003258 0.000064 -0.999995
+-0.180318 -0.000006 -0.983608
+-0.171465 0.617130 -0.767952
+0.315353 -0.928386 -0.196601
+-0.207517 -0.956440 -0.205327
+-0.199267 -0.653464 -0.730258
+0.315353 -0.928386 -0.196601
+-0.199267 -0.653464 -0.730258
+0.204425 -0.613146 -0.763061
+-0.551169 -0.542646 0.633836
+-0.170231 -0.000005 0.985404
+-0.660121 -0.000001 0.751159
+-0.170231 -0.000005 0.985404
+-0.551169 -0.542646 0.633836
+-0.194895 -0.625610 0.755399
+-0.551168 0.542646 0.633837
+-0.170231 -0.000005 0.985404
+-0.195564 0.625420 0.755383
+-0.170231 -0.000005 0.985404
+-0.551168 0.542646 0.633837
+-0.660121 -0.000001 0.751159
+-0.210357 0.950795 0.227461
+-0.551168 0.542646 0.633837
+-0.195564 0.625420 0.755383
+-0.551168 0.542646 0.633837
+-0.210357 0.950795 0.227461
+-0.725081 0.650786 0.225243
+-0.195565 -0.625420 0.755383
+-0.202942 -0.961200 0.186841
+-0.161073 -0.585034 0.794852
+-0.202942 -0.961200 0.186841
+-0.195565 -0.625420 0.755383
+-0.210355 -0.950796 0.227458
+-0.360720 -0.898090 0.251626
+0.218182 -0.478963 0.850289
+-0.226991 -0.537188 0.812345
+0.218182 -0.478963 0.850289
+-0.360720 -0.898090 0.251626
+0.494301 -0.836553 0.236316
+-0.962593 -0.123470 0.241184
+-0.603641 -0.021314 0.796971
+-0.595757 -0.077824 0.799386
+-0.603641 -0.021314 0.796971
+-0.962593 -0.123470 0.241184
+-0.970442 -0.033993 0.238928
+-0.246814 -0.450798 0.857825
+-0.462066 -0.832419 0.305898
+-0.549131 -0.205096 0.810180
+-0.549131 -0.205096 0.810180
+-0.462066 -0.832419 0.305898
+-0.911838 -0.325323 0.250432
+0.365180 0.896818 0.249721
+0.055056 0.547111 0.835247
+0.228502 0.539943 0.810091
+0.055056 0.547111 0.835247
+0.365180 0.896818 0.249721
+0.087092 0.960064 0.265881
+-0.551169 -0.542646 0.633836
+-0.209266 -0.951054 0.227386
+-0.194895 -0.625610 0.755399
+-0.209266 -0.951054 0.227386
+-0.551169 -0.542646 0.633836
+-0.725082 -0.650785 0.225243
+-0.979975 -0.000000 0.199120
+-0.551169 -0.542645 0.633836
+-0.660122 -0.000000 0.751159
+-0.551169 -0.542645 0.633836
+-0.979975 -0.000000 0.199120
+-0.725082 -0.650785 0.225243
+0.087092 0.960064 0.265881
+-0.253939 0.938487 0.234004
+0.055056 0.547111 0.835247
+-0.161073 0.585033 0.794853
+0.055056 0.547111 0.835247
+-0.253939 0.938487 0.234004
+-0.253939 0.938487 0.234004
+-0.195564 0.625420 0.755383
+-0.161073 0.585033 0.794853
+-0.195564 0.625420 0.755383
+-0.253939 0.938487 0.234004
+-0.210357 0.950795 0.227461
+0.974708 -0.223397 0.006105
+0.863183 -0.430583 0.263654
+0.494301 -0.836553 0.236316
+0.973299 -0.229452 -0.006333
+0.494301 -0.836553 0.236316
+0.497019 -0.845024 -0.197246
+0.494301 -0.836553 0.236316
+0.973299 -0.229452 -0.006333
+0.974708 -0.223397 0.006105
+0.988802 -0.094858 -0.115209
+0.960263 -0.139604 0.241671
+0.863183 -0.430583 0.263654
+0.863183 -0.430583 0.263654
+0.974708 -0.223397 0.006105
+0.988802 -0.094858 -0.115209
+0.878331 0.411641 0.243077
+0.988967 0.092798 -0.115468
+0.976707 0.214461 0.007109
+0.988967 0.092798 -0.115468
+0.878331 0.411641 0.243077
+0.959475 0.135782 0.246925
+-0.979975 0.000000 0.199120
+-0.768311 -0.640076 -0.000385
+-0.725082 -0.650785 0.225243
+-0.768311 -0.640076 -0.000385
+-0.979975 0.000000 0.199120
+-1.000000 0.000000 -0.000555
+-0.979975 0.000000 0.199120
+-0.768311 0.640076 -0.000386
+-1.000000 0.000000 -0.000555
+-0.768311 0.640076 -0.000386
+-0.979975 0.000000 0.199120
+-0.725081 0.650786 0.225243
+-0.725081 0.650786 0.225243
+-0.211020 0.977482 -0.000076
+-0.768311 0.640076 -0.000386
+-0.211020 0.977482 -0.000076
+-0.725081 0.650786 0.225243
+-0.210357 0.950795 0.227461
+0.239172 -0.524482 -0.817138
+0.872758 -0.435686 -0.220161
+0.497019 -0.845024 -0.197246
+0.872758 -0.435686 -0.220161
+0.239172 -0.524482 -0.817138
+0.553852 -0.274159 -0.786184
+-0.585801 0.219430 -0.780185
+-0.466918 0.842704 -0.268025
+-0.919102 0.328137 -0.218125
+-0.466918 0.842704 -0.268025
+-0.585801 0.219430 -0.780185
+-0.265241 0.486465 -0.832466
+-0.466918 0.842704 -0.268025
+0.242961 0.576536 -0.780113
+0.366990 0.904435 -0.217522
+0.242961 0.576536 -0.780113
+-0.466918 0.842704 -0.268025
+-0.265241 0.486465 -0.832466
+0.980057 0.036695 -0.195299
+0.633899 0.093637 -0.767727
+0.968988 0.137063 -0.205612
+0.633899 0.093637 -0.767727
+0.980057 0.036695 -0.195299
+0.649752 0.024446 -0.759753
+0.968988 0.137063 -0.205612
+0.570705 0.274463 -0.773929
+0.887039 0.414986 -0.202357
+0.570705 0.274463 -0.773929
+0.968988 0.137063 -0.205612
+0.633899 0.093637 -0.767727
+-0.919102 -0.328136 -0.218125
+-0.634535 -0.082993 -0.768425
+-0.969807 -0.124423 -0.209747
+-0.634535 -0.082993 -0.768425
+-0.919102 -0.328136 -0.218125
+-0.585801 -0.219429 -0.780184
+-0.035577 -0.584760 -0.810426
+-0.243213 -0.581592 -0.776272
+-0.043440 -0.974043 -0.222154
+-0.362221 -0.908457 -0.208569
+-0.043440 -0.974043 -0.222154
+-0.243213 -0.581592 -0.776272
+-0.279642 -0.960104 -0.000105
+-0.725047 -0.656124 -0.209303
+-0.207517 -0.956440 -0.205327
+-0.725047 -0.656124 -0.209303
+-0.279642 -0.960104 -0.000105
+-0.768311 -0.640076 -0.000385
+-0.982510 -0.000001 -0.186211
+-0.560097 -0.561397 -0.609200
+-0.725047 -0.656124 -0.209303
+-0.560097 -0.561397 -0.609200
+-0.982510 -0.000001 -0.186211
+-0.679065 -0.000001 -0.734078
+-0.982510 -0.000001 -0.186211
+-0.560098 0.561396 -0.609200
+-0.679065 -0.000001 -0.734078
+-0.560098 0.561396 -0.609200
+-0.982510 -0.000001 -0.186211
+-0.725048 0.656123 -0.209303
+-0.043440 -0.974043 -0.222154
+0.204425 -0.613146 -0.763061
+-0.035577 -0.584760 -0.810426
+0.204425 -0.613146 -0.763061
+-0.043440 -0.974043 -0.222154
+0.315353 -0.928386 -0.196601
+-0.768311 -0.640077 -0.000385
+-0.982510 0.000000 -0.186211
+-0.725048 -0.656123 -0.209303
+-0.982510 0.000000 -0.186211
+-0.768311 -0.640077 -0.000385
+-1.000000 0.000000 -0.000555
+-0.208725 0.955769 -0.207220
+-0.560098 0.561396 -0.609200
+-0.725048 0.656123 -0.209303
+-0.560098 0.561396 -0.609200
+-0.208725 0.955769 -0.207220
+-0.199844 0.651940 -0.731462
+-0.226991 -0.537188 0.812345
+-0.002508 -0.001933 0.999995
+-0.000442 0.000179 1.000000
+-0.002508 -0.001933 0.999995
+-0.226991 -0.537188 0.812345
+0.218182 -0.478963 0.850289
+-0.000442 0.000179 1.000000
+-0.246815 0.450796 0.857826
+0.228502 0.539943 0.810091
+-0.246815 0.450796 0.857826
+-0.000442 0.000179 1.000000
+-0.002508 -0.001933 0.999995
+0.591521 -0.089107 0.801350
+-0.003936 -0.002866 0.999988
+0.510848 -0.252757 0.821674
+-0.003936 -0.002866 0.999988
+0.591521 -0.089107 0.801350
+-0.000638 -0.000863 0.999999
+-0.000638 -0.000863 0.999999
+-0.549130 0.205095 0.810181
+-0.003936 -0.002866 0.999988
+-0.549130 0.205095 0.810181
+-0.000638 -0.000863 0.999999
+-0.595755 0.077825 0.799387
+0.218182 -0.478963 0.850289
+0.510848 -0.252757 0.821674
+-0.002508 -0.001933 0.999995
+-0.002508 -0.001933 0.999995
+0.510848 -0.252757 0.821674
+-0.003936 -0.002866 0.999988
+-0.002508 -0.001933 0.999995
+-0.003936 -0.002866 0.999988
+-0.246815 0.450796 0.857826
+-0.246815 0.450796 0.857826
+-0.003936 -0.002866 0.999988
+-0.549130 0.205095 0.810181
+0.510848 -0.252757 0.821674
+0.218182 -0.478963 0.850289
+0.863183 -0.430583 0.263654
+0.863183 -0.430583 0.263654
+0.218182 -0.478963 0.850289
+0.494301 -0.836553 0.236316
+-0.549130 0.205095 0.810181
+-0.462066 0.832419 0.305899
+-0.246815 0.450796 0.857826
+-0.462066 0.832419 0.305899
+-0.549130 0.205095 0.810181
+-0.911838 0.325323 0.250433
+-0.243213 -0.581592 -0.776272
+0.239172 -0.524482 -0.817138
+-0.362221 -0.908457 -0.208569
+0.497019 -0.845024 -0.197246
+-0.362221 -0.908457 -0.208569
+0.239172 -0.524482 -0.817138
+-0.000495 0.000227 -1.000000
+-0.265241 0.486465 -0.832466
+-0.002934 -0.002292 -0.999993
+-0.265241 0.486465 -0.832466
+-0.000495 0.000227 -1.000000
+0.242961 0.576536 -0.780113
+0.239172 -0.524482 -0.817138
+-0.243213 -0.581592 -0.776272
+-0.002934 -0.002292 -0.999993
+-0.243213 -0.581592 -0.776272
+-0.000495 0.000227 -1.000000
+-0.002934 -0.002292 -0.999993
+-0.002934 -0.002292 -0.999993
+-0.004616 -0.003391 -0.999984
+0.553852 -0.274159 -0.786184
+0.553852 -0.274159 -0.786184
+0.239172 -0.524482 -0.817138
+-0.002934 -0.002292 -0.999993
+-0.585801 0.219430 -0.780185
+-0.004616 -0.003391 -0.999984
+-0.265241 0.486465 -0.832466
+-0.265241 0.486465 -0.832466
+-0.004616 -0.003391 -0.999984
+-0.002934 -0.002292 -0.999993
+-0.246815 0.450796 0.857826
+-0.462066 0.832419 0.305899
+0.228502 0.539943 0.810091
+0.228502 0.539943 0.810091
+-0.462066 0.832419 0.305899
+0.365180 0.896818 0.249721
+-0.000747 -0.001019 -0.999999
+-0.585801 0.219430 -0.780185
+-0.634535 0.082992 -0.768425
+-0.585801 0.219430 -0.780185
+-0.000747 -0.001019 -0.999999
+-0.004616 -0.003391 -0.999984
+-0.004616 -0.003391 -0.999984
+-0.000747 -0.001019 -0.999999
+0.637476 -0.095849 -0.764485
+0.637476 -0.095849 -0.764485
+0.553852 -0.274159 -0.786184
+-0.004616 -0.003391 -0.999984
+-0.634535 -0.082993 -0.768425
+-0.642641 -0.022702 -0.765831
+-0.969807 -0.124423 -0.209747
+-0.977593 -0.034245 -0.207698
+-0.969807 -0.124423 -0.209747
+-0.642641 -0.022702 -0.765831
+0.971097 0.036350 0.235902
+0.587221 0.086819 0.804757
+0.603405 0.022707 0.797112
+0.587221 0.086819 0.804757
+0.971097 0.036350 0.235902
+0.959475 0.135782 0.246925
+0.587221 0.086819 0.804757
+-0.003939 0.002865 0.999988
+-0.000641 0.000863 0.999999
+-0.003939 0.002865 0.999988
+0.587221 0.086819 0.804757
+0.529592 0.255773 0.808772
+-0.000641 0.000863 0.999999
+-0.549131 -0.205096 0.810180
+-0.595757 -0.077824 0.799386
+-0.549131 -0.205096 0.810180
+-0.000641 0.000863 0.999999
+-0.003939 0.002865 0.999988
+0.529592 0.255773 0.808772
+0.959475 0.135782 0.246925
+0.878331 0.411641 0.243077
+0.959475 0.135782 0.246925
+0.529592 0.255773 0.808772
+0.587221 0.086819 0.804757
+-0.911838 -0.325323 0.250432
+-0.595757 -0.077824 0.799386
+-0.549131 -0.205096 0.810180
+-0.595757 -0.077824 0.799386
+-0.911838 -0.325323 0.250432
+-0.962593 -0.123470 0.241184
+0.633899 0.093637 -0.767727
+-0.004616 0.003391 -0.999984
+0.570705 0.274463 -0.773929
+-0.004616 0.003391 -0.999984
+0.633899 0.093637 -0.767727
+-0.000746 0.001019 -0.999999
+-0.000746 0.001019 -0.999999
+-0.585801 -0.219429 -0.780184
+-0.004616 0.003391 -0.999984
+-0.585801 -0.219429 -0.780184
+-0.000746 0.001019 -0.999999
+-0.634535 -0.082993 -0.768425
+-0.043957 -0.962293 0.268439
+-0.226991 -0.537188 0.812345
+-0.033385 -0.539811 0.841124
+-0.226991 -0.537188 0.812345
+-0.043957 -0.962293 0.268439
+-0.360720 -0.898090 0.251626
+0.002473 0.000085 -0.999997
+-0.000495 0.000227 -1.000000
+-0.035577 -0.584760 -0.810426
+-0.243213 -0.581592 -0.776272
+-0.035577 -0.584760 -0.810426
+-0.000495 0.000227 -1.000000
+0.058044 0.585777 -0.808391
+0.242961 0.576536 -0.780113
+0.002473 0.000085 -0.999997
+-0.000495 0.000227 -1.000000
+0.002473 0.000085 -0.999997
+0.242961 0.576536 -0.780113
+0.366990 0.904435 -0.217522
+0.058044 0.585777 -0.808391
+0.086799 0.969060 -0.231060
+0.058044 0.585777 -0.808391
+0.366990 0.904435 -0.217522
+0.242961 0.576536 -0.780113
+-0.551169 -0.542645 0.633836
+-0.170231 0.000004 0.985404
+-0.660122 -0.000000 0.751159
+-0.170231 0.000004 0.985404
+-0.551169 -0.542645 0.633836
+-0.195565 -0.625420 0.755383
+-0.548049 0.550142 0.630068
+-0.170231 0.000004 0.985404
+-0.191496 0.630666 0.752057
+-0.170231 0.000004 0.985404
+-0.548049 0.550142 0.630068
+-0.660122 -0.000000 0.751159
+-0.560098 0.561396 -0.609200
+-0.180318 -0.000006 -0.983608
+-0.679065 -0.000001 -0.734078
+-0.180318 -0.000006 -0.983608
+-0.560098 0.561396 -0.609200
+-0.199844 0.651940 -0.731462
+-0.560097 -0.561397 -0.609200
+-0.180318 -0.000006 -0.983608
+-0.199267 -0.653464 -0.730258
+-0.180318 -0.000006 -0.983608
+-0.560097 -0.561397 -0.609200
+-0.679065 -0.000001 -0.734078
+-0.560097 -0.561397 -0.609200
+-0.207517 -0.956440 -0.205327
+-0.725047 -0.656124 -0.209303
+-0.207517 -0.956440 -0.205327
+-0.560097 -0.561397 -0.609200
+-0.199267 -0.653464 -0.730258
+-0.551168 0.542646 0.633837
+-0.979975 0.000000 0.199120
+-0.660121 -0.000001 0.751159
+-0.979975 0.000000 0.199120
+-0.551168 0.542646 0.633837
+-0.725081 0.650786 0.225243
+-0.979975 0.000000 0.199120
+-0.551169 -0.542646 0.633836
+-0.660121 -0.000001 0.751159
+-0.551169 -0.542646 0.633836
+-0.979975 0.000000 0.199120
+-0.725082 -0.650785 0.225243
+-0.194895 -0.625610 0.755399
+0.312123 -0.921766 0.230058
+0.190808 -0.577529 0.793758
+0.312123 -0.921766 0.230058
+-0.194895 -0.625610 0.755399
+-0.209266 -0.951054 0.227386
+0.312123 -0.921766 0.230058
+-0.043957 -0.962293 0.268439
+0.190808 -0.577529 0.793758
+-0.033385 -0.539811 0.841124
+0.190808 -0.577529 0.793758
+-0.043957 -0.962293 0.268439
+0.002473 0.000085 -0.999997
+-0.171465 0.617130 -0.767952
+0.058044 0.585777 -0.808391
+-0.171465 0.617130 -0.767952
+0.002473 0.000085 -0.999997
+0.003258 0.000064 -0.999995
+0.003258 0.000064 -0.999995
+0.002473 0.000085 -0.999997
+-0.035577 -0.584760 -0.810426
+-0.035577 -0.584760 -0.810426
+0.204425 -0.613146 -0.763061
+0.003258 0.000064 -0.999995
+-0.161073 0.585033 0.794853
+0.002099 0.000028 0.999998
+0.055056 0.547111 0.835247
+0.002685 0.000027 0.999996
+0.002099 0.000028 0.999998
+-0.161073 0.585033 0.794853
+0.002685 0.000027 0.999996
+-0.033385 -0.539811 0.841124
+0.002099 0.000028 0.999998
+-0.033385 -0.539811 0.841124
+0.002685 0.000027 0.999996
+0.190808 -0.577529 0.793758
+-0.000442 0.000179 1.000000
+-0.033385 -0.539811 0.841124
+-0.226991 -0.537188 0.812345
+-0.033385 -0.539811 0.841124
+-0.000442 0.000179 1.000000
+0.002099 0.000028 0.999998
+-0.000442 0.000179 1.000000
+0.228502 0.539943 0.810091
+0.002099 0.000028 0.999998
+0.228502 0.539943 0.810091
+0.055056 0.547111 0.835247
+0.002099 0.000028 0.999998
+-0.982510 0.000000 -0.186211
+-0.560099 -0.561396 -0.609199
+-0.725048 -0.656123 -0.209303
+-0.560099 -0.561396 -0.609199
+-0.982510 0.000000 -0.186211
+-0.679065 -0.000000 -0.734078
+-0.194895 -0.625610 0.755399
+0.190808 -0.577529 0.793758
+-0.170231 -0.000005 0.985404
+0.002685 0.000027 0.999996
+-0.170231 -0.000005 0.985404
+0.190808 -0.577529 0.793758
+-0.170231 -0.000005 0.985404
+-0.161073 0.585033 0.794853
+-0.195564 0.625420 0.755383
+-0.161073 0.585033 0.794853
+-0.170231 -0.000005 0.985404
+0.002685 0.000027 0.999996
+-0.204698 0.964792 -0.165151
+0.058044 0.585777 -0.808391
+-0.171465 0.617130 -0.767952
+0.058044 0.585777 -0.808391
+-0.204698 0.964792 -0.165151
+0.086799 0.969060 -0.231060
+-0.171465 0.617130 -0.767952
+-0.199844 0.651940 -0.731462
+-0.204698 0.964792 -0.165151
+-0.208725 0.955769 -0.207220
+-0.204698 0.964792 -0.165151
+-0.199844 0.651940 -0.731462
+-0.551169 -0.542645 0.633836
+-0.210355 -0.950796 0.227458
+-0.195565 -0.625420 0.755383
+-0.210355 -0.950796 0.227458
+-0.551169 -0.542645 0.633836
+-0.725082 -0.650785 0.225243
+-0.603641 0.021313 0.796972
+-0.595755 0.077825 0.799387
+-0.000041 -0.000115 1.000000
+-0.000041 -0.000115 1.000000
+-0.595755 0.077825 0.799387
+-0.000638 -0.000863 0.999999
+-0.970442 0.033992 0.238928
+-0.969807 0.124423 -0.209747
+-0.962593 0.123470 0.241185
+-0.969807 0.124423 -0.209747
+-0.970442 0.033992 0.238928
+-0.977593 0.034245 -0.207697
+-0.634535 0.082992 -0.768425
+-0.000048 -0.000135 -1.000000
+-0.000747 -0.001019 -0.999999
+-0.000048 -0.000135 -1.000000
+-0.634535 0.082992 -0.768425
+-0.642641 0.022702 -0.765831
+-0.962593 0.123470 0.241185
+-0.919102 0.328137 -0.218125
+-0.911838 0.325323 0.250433
+-0.919102 0.328137 -0.218125
+-0.962593 0.123470 0.241185
+-0.969807 0.124423 -0.209747
+-0.603641 0.021313 0.796972
+-0.970442 -0.033993 0.238928
+-0.970442 0.033992 0.238928
+-0.970442 -0.033993 0.238928
+-0.603641 0.021313 0.796972
+-0.603641 -0.021314 0.796971
+-0.970442 -0.033993 0.238928
+-0.977593 -0.034245 -0.207698
+-0.970442 0.033992 0.238928
+-0.970442 0.033992 0.238928
+-0.977593 -0.034245 -0.207698
+-0.977593 0.034245 -0.207697
+0.649752 -0.024446 -0.759753
+0.649752 0.024446 -0.759753
+0.980057 -0.036695 -0.195299
+0.980057 0.036695 -0.195299
+0.980057 -0.036695 -0.195299
+0.649752 0.024446 -0.759753
+-0.000041 0.000115 1.000000
+0.603405 -0.022707 0.797112
+0.603405 0.022707 0.797112
+0.603405 -0.022707 0.797112
+-0.000041 0.000115 1.000000
+-0.000041 -0.000115 1.000000
+-0.603641 -0.021314 0.796971
+-0.603641 0.021313 0.796972
+-0.000041 0.000115 1.000000
+-0.000041 0.000115 1.000000
+-0.603641 0.021313 0.796972
+-0.000041 -0.000115 1.000000
+-0.977593 0.034245 -0.207697
+-0.642641 -0.022702 -0.765831
+-0.642641 0.022702 -0.765831
+-0.642641 -0.022702 -0.765831
+-0.977593 0.034245 -0.207697
+-0.977593 -0.034245 -0.207698
+0.971097 -0.036349 0.235902
+0.603405 0.022707 0.797112
+0.603405 -0.022707 0.797112
+0.603405 0.022707 0.797112
+0.971097 -0.036349 0.235902
+0.971097 0.036350 0.235902
+-0.000048 0.000135 -1.000000
+0.649752 -0.024446 -0.759753
+-0.000048 -0.000135 -1.000000
+0.649752 -0.024446 -0.759753
+-0.000048 0.000135 -1.000000
+0.649752 0.024446 -0.759753
+-0.642641 -0.022702 -0.765831
+-0.000048 -0.000135 -1.000000
+-0.642641 0.022702 -0.765831
+-0.000048 -0.000135 -1.000000
+-0.642641 -0.022702 -0.765831
+-0.000048 0.000135 -1.000000
+0.986613 -0.081445 0.141285
+0.982443 -0.083837 -0.166662
+0.988065 -0.035740 0.149836
+0.988065 -0.035740 0.149836
+0.982443 -0.083837 -0.166662
+0.981105 -0.037375 -0.189834
+-0.253939 0.938487 0.234004
+-0.211020 0.977482 -0.000076
+-0.210357 0.950795 0.227461
+-0.211020 0.977482 -0.000076
+-0.253939 0.938487 0.234004
+-0.204698 0.964792 -0.165151
+-0.279642 -0.960104 -0.000105
+0.312123 -0.921766 0.230058
+-0.209266 -0.951054 0.227386
+0.315353 -0.928386 -0.196601
+-0.279642 -0.960104 -0.000105
+-0.207517 -0.956440 -0.205327
+-0.279642 -0.960104 -0.000105
+0.315353 -0.928386 -0.196601
+0.312123 -0.921766 0.230058
+-0.911838 0.325323 0.250433
+-0.919102 0.328137 -0.218125
+-0.462066 0.832419 0.305899
+-0.462066 0.832419 0.305899
+-0.919102 0.328137 -0.218125
+-0.466918 0.842704 -0.268025
+-0.462066 0.832419 0.305899
+-0.466918 0.842704 -0.268025
+0.365180 0.896818 0.249721
+0.365180 0.896818 0.249721
+-0.466918 0.842704 -0.268025
+0.366990 0.904435 -0.217522
+-0.043957 -0.962293 0.268439
+-0.362221 -0.908457 -0.208569
+-0.360720 -0.898090 0.251626
+-0.362221 -0.908457 -0.208569
+-0.043957 -0.962293 0.268439
+-0.043440 -0.974043 -0.222154
+0.312123 -0.921766 0.230058
+-0.043440 -0.974043 -0.222154
+-0.043957 -0.962293 0.268439
+-0.043440 -0.974043 -0.222154
+0.312123 -0.921766 0.230058
+0.315353 -0.928386 -0.196601
+-0.977593 -0.034245 -0.207698
+-0.970442 -0.033993 0.238928
+-0.962593 -0.123470 0.241184
+-0.962593 -0.123470 0.241184
+-0.969807 -0.124423 -0.209747
+-0.977593 -0.034245 -0.207698
+-0.462066 -0.832419 0.305898
+-0.466918 -0.842704 -0.268025
+-0.911838 -0.325323 0.250432
+-0.911838 -0.325323 0.250432
+-0.466918 -0.842704 -0.268025
+-0.919102 -0.328136 -0.218125
+0.366990 0.904435 -0.217522
+0.087092 0.960064 0.265881
+0.365180 0.896818 0.249721
+0.087092 0.960064 0.265881
+0.366990 0.904435 -0.217522
+0.086799 0.969060 -0.231060
+0.655231 0.018190 0.755209
+0.843248 -0.025991 0.536896
+0.843248 0.025992 0.536896
+0.843248 -0.025991 0.536896
+0.655231 0.018190 0.755209
+0.655231 -0.018190 0.755210
+0.843248 -0.025991 0.536896
+0.989339 0.034695 0.141437
+0.843248 0.025992 0.536896
+0.989339 0.034695 0.141437
+0.843248 -0.025991 0.536896
+0.989339 -0.034695 0.141437
+0.981105 0.037375 -0.189834
+0.981105 -0.037375 -0.189834
+0.813501 -0.026725 -0.580949
+0.981105 0.037375 -0.189834
+0.813501 -0.026725 -0.580949
+0.813501 0.026724 -0.580949
+0.813501 -0.026725 -0.580949
+0.655231 0.018190 -0.755210
+0.813501 0.026724 -0.580949
+0.655231 0.018190 -0.755210
+0.813501 -0.026725 -0.580949
+0.655230 -0.018190 -0.755210
+0.860326 -0.026239 0.509068
+0.718318 0.019932 0.695430
+0.718317 -0.019932 0.695431
+0.718318 0.019932 0.695430
+0.860326 -0.026239 0.509068
+0.860327 0.026239 0.509067
+0.860326 -0.026239 0.509068
+0.988065 0.035740 0.149836
+0.860327 0.026239 0.509067
+0.988065 0.035740 0.149836
+0.860326 -0.026239 0.509068
+0.988065 -0.035740 0.149836
+0.875032 -0.026858 -0.483320
+0.875032 0.026858 -0.483319
+0.991813 -0.034750 -0.122881
+0.991813 0.034751 -0.122880
+0.991813 -0.034750 -0.122881
+0.875032 0.026858 -0.483319
+0.875032 -0.026858 -0.483320
+0.718317 0.019932 -0.695430
+0.875032 0.026858 -0.483319
+0.718317 0.019932 -0.695430
+0.875032 -0.026858 -0.483320
+0.718316 -0.019932 -0.695431
+0.989339 -0.034695 0.141437
+0.969430 -0.140809 -0.200942
+0.980057 -0.036695 -0.195299
+0.969430 -0.140809 -0.200942
+0.989339 -0.034695 0.141437
+0.986595 -0.094661 0.132928
+0.989339 0.034695 0.141437
+0.968988 0.137063 -0.205612
+0.986759 0.092584 0.133176
+0.968988 0.137063 -0.205612
+0.989339 0.034695 0.141437
+0.980057 0.036695 -0.195299
+0.989339 -0.034695 0.141437
+0.980057 0.036695 -0.195299
+0.989339 0.034695 0.141437
+0.980057 0.036695 -0.195299
+0.989339 -0.034695 0.141437
+0.980057 -0.036695 -0.195299
+0.988065 0.035740 0.149836
+0.982445 0.083823 -0.166661
+0.986613 0.081440 0.141285
+0.982445 0.083823 -0.166661
+0.988065 0.035740 0.149836
+0.981105 0.037375 -0.189834
+0.988065 -0.035740 0.149836
+0.981105 0.037375 -0.189834
+0.988065 0.035740 0.149836
+0.981105 0.037375 -0.189834
+0.988065 -0.035740 0.149836
+0.981105 -0.037375 -0.189834
+-0.204698 0.964792 -0.165151
+-0.208725 0.955769 -0.207220
+-0.211020 0.977482 -0.000076
+0.960263 -0.139604 0.241671
+0.991813 -0.034750 -0.122881
+0.971097 -0.036349 0.235902
+0.991813 -0.034750 -0.122881
+0.960263 -0.139604 0.241671
+0.988802 -0.094858 -0.115209
+0.959475 0.135782 0.246925
+0.991813 0.034751 -0.122880
+0.988967 0.092798 -0.115468
+0.991813 0.034751 -0.122880
+0.959475 0.135782 0.246925
+0.971097 0.036350 0.235902
+0.971097 -0.036349 0.235902
+0.991813 0.034751 -0.122880
+0.971097 0.036350 0.235902
+0.991813 0.034751 -0.122880
+0.971097 -0.036349 0.235902
+0.991813 -0.034750 -0.122881
+-0.911838 -0.325323 0.250432
+-0.969807 -0.124423 -0.209747
+-0.962593 -0.123470 0.241184
+-0.969807 -0.124423 -0.209747
+-0.911838 -0.325323 0.250432
+-0.919102 -0.328136 -0.218125
+-0.202942 -0.961200 0.186841
+-0.210355 -0.950796 0.227458
+-0.211020 -0.977482 -0.000083
+-0.204698 0.964792 -0.165151
+-0.253939 0.938487 0.234004
+0.087092 0.960064 0.265881
+0.087092 0.960064 0.265881
+0.086799 0.969060 -0.231060
+-0.204698 0.964792 -0.165151
+-0.000041 0.000115 1.000000
+-0.000641 0.000863 0.999999
+-0.595757 -0.077824 0.799386
+-0.595757 -0.077824 0.799386
+-0.603641 -0.021314 0.796971
+-0.000041 0.000115 1.000000
+-0.000641 0.000863 0.999999
+0.603405 0.022707 0.797112
+0.587221 0.086819 0.804757
+0.603405 0.022707 0.797112
+-0.000641 0.000863 0.999999
+-0.000041 0.000115 1.000000
+-0.642641 -0.022702 -0.765831
+-0.634535 -0.082993 -0.768425
+-0.000048 0.000135 -1.000000
+-0.000746 0.001019 -0.999999
+-0.000048 0.000135 -1.000000
+-0.634535 -0.082993 -0.768425
+0.649752 0.024446 -0.759753
+-0.000746 0.001019 -0.999999
+0.633899 0.093637 -0.767727
+-0.000746 0.001019 -0.999999
+0.649752 0.024446 -0.759753
+-0.000048 0.000135 -1.000000
+-0.763761 0.616471 0.191397
+-0.840320 0.247136 0.482478
+-0.936920 0.266169 0.226572
+-0.840320 0.247136 0.482478
+-0.763761 0.616471 0.191397
+-0.711682 0.572480 0.407155
+-0.466918 -0.842704 -0.268025
+0.366990 -0.904435 -0.217523
+0.242959 -0.576537 -0.780113
+0.242959 -0.576537 -0.780113
+-0.265241 -0.486465 -0.832466
+-0.466918 -0.842704 -0.268025
+0.086799 -0.969060 -0.231061
+0.058043 -0.585777 -0.808392
+0.366990 -0.904435 -0.217523
+0.366990 -0.904435 -0.217523
+0.058043 -0.585777 -0.808392
+0.242959 -0.576537 -0.780113
+0.242959 -0.576537 -0.780113
+-0.000497 -0.000226 -1.000000
+-0.265241 -0.486465 -0.832466
+-0.265241 -0.486465 -0.832466
+-0.000497 -0.000226 -1.000000
+-0.002934 0.002292 -0.999993
+-0.035294 0.573985 -0.818105
+-0.239807 0.576892 -0.780825
+-0.000497 -0.000226 -1.000000
+-0.000497 -0.000226 -1.000000
+0.002471 -0.000084 -0.999997
+-0.035294 0.573985 -0.818105
+-0.000497 -0.000226 -1.000000
+0.242959 -0.576537 -0.780113
+0.002471 -0.000084 -0.999997
+0.242959 -0.576537 -0.780113
+0.058043 -0.585777 -0.808392
+0.002471 -0.000084 -0.999997
+-0.768311 -0.640077 -0.000385
+-0.725048 -0.656123 -0.209303
+-0.211020 -0.977482 -0.000083
+-0.211020 -0.977482 -0.000083
+-0.725048 -0.656123 -0.209303
+-0.208728 -0.955767 -0.207223
+-0.725048 -0.656123 -0.209303
+-0.560099 -0.561396 -0.609199
+-0.208728 -0.955767 -0.207223
+-0.208728 -0.955767 -0.207223
+-0.560099 -0.561396 -0.609199
+-0.199845 -0.651940 -0.731462
+-0.199845 -0.651940 -0.731462
+-0.560099 -0.561396 -0.609199
+-0.180318 0.000006 -0.983608
+-0.560099 -0.561396 -0.609199
+-0.679065 -0.000000 -0.734078
+-0.180318 0.000006 -0.983608
+0.087094 -0.960063 0.265881
+0.365180 -0.896819 0.249719
+0.055055 -0.547112 0.835247
+0.228503 -0.539944 0.810091
+0.055055 -0.547112 0.835247
+0.365180 -0.896819 0.249719
+0.055055 -0.547112 0.835247
+-0.161073 -0.585034 0.794852
+-0.202942 -0.961200 0.186841
+0.055055 -0.547112 0.835247
+-0.202942 -0.961200 0.186841
+0.087094 -0.960063 0.265881
+0.228503 -0.539944 0.810091
+-0.462066 -0.832419 0.305898
+-0.246814 -0.450798 0.857825
+-0.462066 -0.832419 0.305898
+0.228503 -0.539944 0.810091
+0.365180 -0.896819 0.249719
+-0.202942 -0.961200 0.186841
+-0.211020 -0.977482 -0.000083
+-0.256100 -0.944269 -0.206809
+-0.211020 -0.977482 -0.000083
+-0.208728 -0.955767 -0.207223
+-0.256100 -0.944269 -0.206809
+0.087094 -0.960063 0.265881
+0.366990 -0.904435 -0.217523
+0.365180 -0.896819 0.249719
+0.366990 -0.904435 -0.217523
+0.087094 -0.960063 0.265881
+0.086799 -0.969060 -0.231061
+0.365180 -0.896819 0.249719
+0.366990 -0.904435 -0.217523
+-0.462066 -0.832419 0.305898
+-0.462066 -0.832419 0.305898
+0.366990 -0.904435 -0.217523
+-0.466918 -0.842704 -0.268025
+-0.202942 -0.961200 0.186841
+0.086799 -0.969060 -0.231061
+0.087094 -0.960063 0.265881
+0.086799 -0.969060 -0.231061
+-0.202942 -0.961200 0.186841
+-0.256100 -0.944269 -0.206809
+-0.256100 -0.944269 -0.206809
+-0.208728 -0.955767 -0.207223
+-0.199845 -0.651940 -0.731462
+-0.256100 -0.944269 -0.206809
+-0.199845 -0.651940 -0.731462
+-0.171464 -0.617129 -0.767953
+-0.171464 -0.617129 -0.767953
+-0.199845 -0.651940 -0.731462
+-0.180318 0.000006 -0.983608
+-0.171464 -0.617129 -0.767953
+-0.180318 0.000006 -0.983608
+0.003258 -0.000063 -0.999995
+0.003258 -0.000063 -0.999995
+0.002471 -0.000084 -0.999997
+-0.171464 -0.617129 -0.767953
+0.058043 -0.585777 -0.808392
+-0.171464 -0.617129 -0.767953
+0.002471 -0.000084 -0.999997
+-0.256100 -0.944269 -0.206809
+0.058043 -0.585777 -0.808392
+0.086799 -0.969060 -0.231061
+0.058043 -0.585777 -0.808392
+-0.256100 -0.944269 -0.206809
+-0.171464 -0.617129 -0.767953
+-0.548049 0.550142 0.630068
+-0.979975 -0.000000 0.199120
+-0.660122 -0.000000 0.751159
+-0.979975 -0.000000 0.199120
+-0.548049 0.550142 0.630068
+-0.716909 0.660924 0.221858
+-0.343955 0.514729 -0.785333
+-0.649371 0.228182 -0.725431
+-0.395432 0.217875 -0.892280
+-0.649371 0.228182 -0.725431
+-0.343955 0.514729 -0.785333
+-0.547960 0.555267 -0.625634
+-0.059515 0.221340 -0.973379
+-0.343955 0.514729 -0.785333
+-0.395432 0.217875 -0.892280
+-0.343955 0.514729 -0.785333
+-0.059515 0.221340 -0.973379
+-0.046384 0.487441 -0.871923
+0.365100 0.214493 -0.905922
+-0.046384 0.487441 -0.871923
+-0.059515 0.221340 -0.973379
+-0.046384 0.487441 -0.871923
+0.365100 0.214493 -0.905922
+0.328823 0.466015 -0.821405
+0.625878 0.477377 -0.616755
+0.317192 0.512595 -0.797894
+0.328823 0.466015 -0.821405
+0.317192 0.512595 -0.797894
+0.625878 0.477377 -0.616755
+0.595037 0.548747 -0.587204
+0.696873 0.205905 -0.687001
+0.328823 0.466015 -0.821405
+0.365100 0.214493 -0.905922
+0.328823 0.466015 -0.821405
+0.696873 0.205905 -0.687001
+0.625878 0.477377 -0.616755
+0.696873 0.205905 -0.687001
+0.781723 0.532717 -0.324224
+0.625878 0.477377 -0.616755
+0.781723 0.532717 -0.324224
+0.696873 0.205905 -0.687001
+0.903941 0.214206 -0.370142
+0.141419 0.225313 -0.963968
+-0.169481 0.563188 -0.808761
+-0.200263 0.225466 -0.953446
+-0.169481 0.563188 -0.808761
+0.141419 0.225313 -0.963968
+0.119202 0.572271 -0.811355
+0.431044 0.238709 -0.870183
+0.119202 0.572271 -0.811355
+0.141419 0.225313 -0.963968
+0.119202 0.572271 -0.811355
+0.431044 0.238709 -0.870183
+0.358260 0.585110 -0.727527
+-0.127838 0.334101 -0.933828
+0.358260 0.585110 -0.727527
+0.431044 0.238709 -0.870183
+0.358260 0.585110 -0.727527
+-0.127838 0.334101 -0.933828
+-0.089937 0.711423 -0.696985
+-0.547960 0.555267 -0.625634
+-0.089937 0.711423 -0.696985
+-0.649371 0.228182 -0.725431
+-0.649371 0.228182 -0.725431
+-0.089937 0.711423 -0.696985
+-0.127838 0.334101 -0.933828
+-0.548049 0.550142 0.630068
+-0.191496 0.630666 0.752057
+-0.112545 0.985604 0.126165
+-0.112545 0.985604 0.126165
+-0.716909 0.660924 0.221858
+-0.548049 0.550142 0.630068
+0.328823 0.466015 -0.821405
+-0.039060 0.541933 -0.839514
+-0.046384 0.487441 -0.871923
+-0.039060 0.541933 -0.839514
+0.328823 0.466015 -0.821405
+0.317192 0.512595 -0.797894
+-0.039060 0.541933 -0.839514
+-0.343955 0.514729 -0.785333
+-0.046384 0.487441 -0.871923
+-0.343955 0.514729 -0.785333
+-0.039060 0.541933 -0.839514
+-0.317922 0.599052 -0.734889
+-0.112545 0.985604 0.126165
+0.000000 1.000000 0.000000
+0.000000 1.000000 -0.000000
+-0.112545 0.985604 0.126165
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+-0.169481 0.563188 -0.808761
+-0.584454 0.238003 -0.775737
+-0.200263 0.225466 -0.953446
+-0.584454 0.238003 -0.775737
+-0.169481 0.563188 -0.808761
+-0.496313 0.562933 -0.660893
+-0.758013 0.644539 -0.099928
+-0.936920 0.266169 0.226572
+-0.955490 0.266720 -0.126095
+-0.936920 0.266169 0.226572
+-0.758013 0.644539 -0.099928
+-0.763761 0.616471 0.191397
+-0.838984 0.256812 -0.479743
+-0.758013 0.644539 -0.099928
+-0.955490 0.266720 -0.126095
+-0.758013 0.644539 -0.099928
+-0.838984 0.256812 -0.479743
+-0.688200 0.602349 -0.404421
+-0.496313 0.562933 -0.660893
+-0.611797 0.699017 -0.370244
+-0.688200 0.602349 -0.404421
+-0.611797 0.699017 -0.370244
+-0.496313 0.562933 -0.660893
+-0.454311 0.656210 -0.602487
+-0.496313 0.562933 -0.660893
+-0.688200 0.602349 -0.404421
+-0.584454 0.238003 -0.775737
+-0.584454 0.238003 -0.775737
+-0.688200 0.602349 -0.404421
+-0.838984 0.256812 -0.479743
+-0.151302 0.675602 -0.721574
+-0.496313 0.562933 -0.660893
+-0.169481 0.563188 -0.808761
+-0.496313 0.562933 -0.660893
+-0.151302 0.675602 -0.721574
+-0.454311 0.656210 -0.602487
+0.119202 0.572271 -0.811355
+-0.151302 0.675602 -0.721574
+-0.169481 0.563188 -0.808761
+-0.151302 0.675602 -0.721574
+0.119202 0.572271 -0.811355
+0.104612 0.691827 -0.714445
+0.119202 0.572271 -0.811355
+0.358260 0.585110 -0.727527
+0.318292 0.694721 -0.645022
+0.318292 0.694721 -0.645022
+0.104612 0.691827 -0.714445
+0.119202 0.572271 -0.811355
+0.358260 0.585110 -0.727527
+-0.089937 0.711423 -0.696985
+-0.070399 0.797321 -0.599436
+-0.070399 0.797321 -0.599436
+0.318292 0.694721 -0.645022
+0.358260 0.585110 -0.727527
+-0.089937 0.711423 -0.696985
+-0.547960 0.555267 -0.625634
+-0.070399 0.797321 -0.599436
+-0.070399 0.797321 -0.599436
+-0.547960 0.555267 -0.625634
+-0.491803 0.657209 -0.571144
+-0.317922 0.599052 -0.734889
+-0.547960 0.555267 -0.625634
+-0.343955 0.514729 -0.785333
+-0.547960 0.555267 -0.625634
+-0.317922 0.599052 -0.734889
+-0.491803 0.657209 -0.571144
+-0.040786 0.970142 -0.239085
+-0.360405 0.907460 -0.215925
+-0.239807 0.576892 -0.780825
+-0.040786 0.970142 -0.239085
+-0.239807 0.576892 -0.780825
+-0.035294 0.573985 -0.818105
+-0.360720 0.898090 0.251626
+-0.040786 0.970142 -0.239085
+-0.041583 0.960502 0.275148
+-0.040786 0.970142 -0.239085
+-0.360720 0.898090 0.251626
+-0.360405 0.907460 -0.215925
+-0.495945 0.576879 0.649037
+-0.542444 0.675744 0.499124
+-0.435190 0.696428 0.570611
+-0.542444 0.675744 0.499124
+-0.495945 0.576879 0.649037
+-0.605448 0.566471 0.559057
+-0.495945 0.576879 0.649037
+-0.714326 0.229234 0.661204
+-0.605448 0.566471 0.559057
+-0.714326 0.229234 0.661204
+-0.495945 0.576879 0.649037
+-0.592396 0.227675 0.772807
+-0.422619 0.568577 0.705772
+-0.592396 0.227675 0.772807
+-0.495945 0.576879 0.649037
+-0.592396 0.227675 0.772807
+-0.422619 0.568577 0.705772
+-0.501313 0.219764 0.836893
+-0.370095 0.693547 0.618080
+-0.495945 0.576879 0.649037
+-0.435190 0.696428 0.570611
+-0.495945 0.576879 0.649037
+-0.370095 0.693547 0.618080
+-0.422619 0.568577 0.705772
+-0.711682 0.572480 0.407155
+-0.714326 0.229234 0.661204
+-0.840320 0.247136 0.482478
+-0.714326 0.229234 0.661204
+-0.711682 0.572480 0.407155
+-0.605448 0.566471 0.559057
+-0.841685 0.192147 0.504624
+-0.787363 0.202216 0.582382
+-0.669943 0.547331 0.501602
+-0.669943 0.547331 0.501602
+-0.724169 0.524207 0.448092
+-0.841685 0.192147 0.504624
+-0.669943 0.547331 0.501602
+-0.455250 0.707839 0.540104
+-0.582828 0.682372 0.441225
+-0.455250 0.707839 0.540104
+-0.669943 0.547331 0.501602
+-0.528924 0.571725 0.627192
+-0.787363 0.202216 0.582382
+-0.629946 0.213633 0.746679
+-0.528924 0.571725 0.627192
+-0.528924 0.571725 0.627192
+-0.669943 0.547331 0.501602
+-0.787363 0.202216 0.582382
+-0.528924 0.571725 0.627192
+-0.414820 0.569657 0.709518
+-0.455250 0.707839 0.540104
+-0.455250 0.707839 0.540104
+-0.414820 0.569657 0.709518
+-0.358687 0.703188 0.613898
+-0.629946 0.213633 0.746679
+-0.493243 0.214467 0.843039
+-0.528924 0.571725 0.627192
+-0.414820 0.569657 0.709518
+-0.528924 0.571725 0.627192
+-0.493243 0.214467 0.843039
+-0.414820 0.569657 0.709518
+-0.393394 0.569193 0.721984
+-0.358687 0.703188 0.613898
+-0.358687 0.703188 0.613898
+-0.393394 0.569193 0.721984
+-0.342205 0.698733 0.628226
+-0.414820 0.569657 0.709518
+-0.467256 0.216972 0.857085
+-0.393394 0.569193 0.721984
+-0.467256 0.216972 0.857085
+-0.414820 0.569657 0.709518
+-0.493243 0.214467 0.843039
+-0.370095 0.693547 0.618080
+-0.393394 0.569193 0.721984
+-0.422619 0.568577 0.705772
+-0.393394 0.569193 0.721984
+-0.370095 0.693547 0.618080
+-0.342205 0.698733 0.628226
+-0.393394 0.569193 0.721984
+-0.501313 0.219764 0.836893
+-0.422619 0.568577 0.705772
+-0.501313 0.219764 0.836893
+-0.393394 0.569193 0.721984
+-0.467256 0.216972 0.857085
+-0.711682 0.572480 0.407155
+-0.542444 0.675744 0.499124
+-0.605448 0.566471 0.559057
+-0.654083 0.659067 0.371222
+-0.542444 0.675744 0.499124
+-0.711682 0.572480 0.407155
+-0.680757 0.710479 0.178297
+-0.654083 0.659067 0.371222
+-0.763761 0.616471 0.191397
+-0.763761 0.616471 0.191397
+-0.654083 0.659067 0.371222
+-0.711682 0.572480 0.407155
+-0.763761 0.616471 0.191397
+-0.758013 0.644539 -0.099928
+-0.680757 0.710479 0.178297
+-0.645510 0.759014 -0.084938
+-0.680757 0.710479 0.178297
+-0.758013 0.644539 -0.099928
+-0.758013 0.644539 -0.099928
+-0.688200 0.602349 -0.404421
+-0.611797 0.699017 -0.370244
+-0.611797 0.699017 -0.370244
+-0.645510 0.759014 -0.084938
+-0.758013 0.644539 -0.099928
+0.189891 0.573349 0.797002
+-0.033609 0.535318 0.843982
+-0.041583 0.960502 0.275148
+0.189891 0.573349 0.797002
+-0.041583 0.960502 0.275148
+0.098604 0.992765 0.068512
+-0.041583 0.960502 0.275148
+-0.040786 0.970142 -0.239085
+0.098604 0.992765 0.068512
+0.098604 0.992765 0.068512
+-0.040786 0.970142 -0.239085
+0.086276 0.994635 -0.057081
+-0.191496 0.630666 0.752057
+0.189891 0.573349 0.797002
+0.098604 0.992765 0.068512
+0.098604 0.992765 0.068512
+-0.112545 0.985604 0.126165
+-0.191496 0.630666 0.752057
+0.000000 1.000000 0.000000
+0.098604 0.992765 0.068512
+0.000000 1.000000 0.000000
+-0.000000 1.000000 0.000000
+0.098604 0.992765 0.068512
+0.000000 1.000000 0.000000
+0.098604 0.992765 0.068512
+0.000000 1.000000 0.000000
+-0.112545 0.985604 0.126165
+0.098604 0.992765 0.068512
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+-0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.098604 0.992765 0.068512
+-0.000000 1.000000 0.000000
+0.098604 0.992765 0.068512
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+-0.000000 1.000000 0.000000
+0.098604 0.992765 0.068512
+-0.000000 1.000000 0.000000
+0.040840 0.999128 -0.008728
+0.098604 0.992765 0.068512
+0.034316 0.999382 -0.007639
+0.098604 0.992765 0.068512
+0.040840 0.999128 -0.008728
+0.000000 1.000000 0.000000
+0.581073 0.546846 0.602754
+0.598663 0.558562 0.574118
+0.705755 0.211010 0.676302
+0.581073 0.546846 0.602754
+0.705755 0.211010 0.676302
+0.678746 0.209741 0.703784
+0.601785 0.539948 0.588482
+0.581073 0.546846 0.602754
+0.678746 0.209741 0.703784
+0.601785 0.539948 0.588482
+0.678746 0.209741 0.703784
+0.699419 0.209896 0.683196
+0.601785 0.539948 0.588482
+0.801788 0.210682 0.559240
+0.688210 0.543094 0.481058
+0.801788 0.210682 0.559240
+0.601785 0.539948 0.588482
+0.699419 0.209896 0.683196
+0.688210 0.543094 0.481058
+0.711588 0.637751 0.294815
+0.613668 0.662134 0.430105
+0.711588 0.637751 0.294815
+0.688210 0.543094 0.481058
+0.783863 0.531568 0.320927
+0.801788 0.210682 0.559240
+0.905278 0.213025 0.367549
+0.688210 0.543094 0.481058
+0.688210 0.543094 0.481058
+0.905278 0.213025 0.367549
+0.783863 0.531568 0.320927
+0.905278 0.213025 0.367549
+0.935215 0.215854 0.280677
+0.783863 0.531568 0.320927
+0.817969 0.516792 0.252693
+0.783863 0.531568 0.320927
+0.935215 0.215854 0.280677
+0.783863 0.531568 0.320927
+0.817969 0.516792 0.252693
+0.711588 0.637751 0.294815
+0.757394 0.605997 0.243149
+0.711588 0.637751 0.294815
+0.817969 0.516792 0.252693
+0.201947 0.604950 -0.770229
+-0.035294 0.573985 -0.818105
+0.003258 -0.000063 -0.999995
+-0.035294 0.573985 -0.818105
+0.002471 -0.000084 -0.999997
+0.003258 -0.000063 -0.999995
+-0.679065 -0.000000 -0.734078
+-0.556811 0.568601 -0.605520
+-0.180318 0.000006 -0.983608
+-0.180318 0.000006 -0.983608
+-0.556811 0.568601 -0.605520
+-0.195579 0.656911 -0.728160
+-0.195579 0.656911 -0.728160
+0.201947 0.604950 -0.770229
+-0.180318 0.000006 -0.983608
+0.003258 -0.000063 -0.999995
+-0.180318 0.000006 -0.983608
+0.201947 0.604950 -0.770229
+-0.724169 0.524207 0.448092
+-0.582828 0.682372 0.441225
+-0.636129 0.656986 0.404609
+-0.582828 0.682372 0.441225
+-0.724169 0.524207 0.448092
+-0.669943 0.547331 0.501602
+-0.035294 0.573985 -0.818105
+0.201947 0.604950 -0.770229
+-0.040786 0.970142 -0.239085
+0.086276 0.994635 -0.057081
+-0.040786 0.970142 -0.239085
+0.201947 0.604950 -0.770229
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.098604 0.992765 0.068512
+0.086276 0.994635 -0.057081
+0.034316 0.999382 -0.007639
+0.034316 0.999382 -0.007639
+0.086276 0.994635 -0.057081
+-0.006528 0.999978 0.001090
+-0.006528 0.999978 0.001090
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000001
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000001
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+-0.982510 0.000000 -0.186211
+-0.716876 0.666064 -0.206026
+-0.556811 0.568601 -0.605520
+-0.982510 0.000000 -0.186211
+-0.556811 0.568601 -0.605520
+-0.679065 -0.000000 -0.734078
+0.821652 0.569829 -0.013559
+0.944422 0.209786 0.253095
+0.793508 0.570331 0.212291
+0.944422 0.209786 0.253095
+0.821652 0.569829 -0.013559
+0.976199 0.216199 -0.017157
+0.793508 0.570331 0.212291
+0.864795 0.209422 0.456369
+0.725860 0.570999 0.383519
+0.864795 0.209422 0.456369
+0.793508 0.570331 0.212291
+0.944422 0.209786 0.253095
+0.864795 0.209422 0.456369
+0.777085 0.211198 0.592903
+0.725860 0.570999 0.383519
+0.725860 0.570999 0.383519
+0.777085 0.211198 0.592903
+0.653839 0.568227 0.499612
+-0.716909 0.660924 0.221858
+-0.759288 0.650754 -0.000381
+-0.979975 -0.000000 0.199120
+-0.979975 -0.000000 0.199120
+-0.759288 0.650754 -0.000381
+-1.000000 0.000000 -0.000555
+-0.982510 0.000000 -0.186211
+-1.000000 0.000000 -0.000555
+-0.759288 0.650754 -0.000381
+-0.759288 0.650754 -0.000381
+-0.716876 0.666064 -0.206026
+-0.982510 0.000000 -0.186211
+-0.112114 0.993695 -0.000041
+0.000000 1.000000 0.000000
+0.000000 1.000000 -0.000000
+0.781723 0.532717 -0.324224
+0.595037 0.548747 -0.587204
+0.625878 0.477377 -0.616755
+0.709520 0.638375 -0.298428
+0.595037 0.548747 -0.587204
+0.781723 0.532717 -0.324224
+0.781723 0.532717 -0.324224
+0.821652 0.569829 -0.013559
+0.709520 0.638375 -0.298428
+0.709520 0.638375 -0.298428
+0.821652 0.569829 -0.013559
+0.713218 0.700844 -0.011724
+0.903941 0.214206 -0.370142
+0.976199 0.216199 -0.017157
+0.781723 0.532717 -0.324224
+0.781723 0.532717 -0.324224
+0.976199 0.216199 -0.017157
+0.821652 0.569829 -0.013559
+0.821652 0.569829 -0.013559
+0.793508 0.570331 0.212291
+0.713218 0.700844 -0.011724
+0.679428 0.710964 0.181407
+0.713218 0.700844 -0.011724
+0.793508 0.570331 0.212291
+0.793508 0.570331 0.212291
+0.725860 0.570999 0.383519
+0.679428 0.710964 0.181407
+0.619977 0.712722 0.328110
+0.679428 0.710964 0.181407
+0.725860 0.570999 0.383519
+0.725860 0.570999 0.383519
+0.653839 0.568227 0.499612
+0.619977 0.712722 0.328110
+0.562682 0.705436 0.430986
+0.619977 0.712722 0.328110
+0.653839 0.568227 0.499612
+-0.112545 0.985604 0.126165
+-0.112114 0.993695 -0.000041
+-0.716909 0.660924 0.221858
+-0.716909 0.660924 0.221858
+-0.112114 0.993695 -0.000041
+-0.759288 0.650754 -0.000381
+-0.112545 0.985604 0.126165
+0.000000 1.000000 -0.000000
+-0.112114 0.993695 -0.000041
+0.653839 0.568227 0.499612
+0.705755 0.211010 0.676302
+0.598663 0.558562 0.574118
+0.705755 0.211010 0.676302
+0.653839 0.568227 0.499612
+0.777085 0.211198 0.592903
+0.581073 0.546846 0.602754
+0.601785 0.539948 0.588482
+0.538192 0.657739 0.526999
+0.538192 0.657739 0.526999
+0.514913 0.670271 0.534417
+0.581073 0.546846 0.602754
+0.601785 0.539948 0.588482
+0.688210 0.543094 0.481058
+0.613668 0.662134 0.430105
+0.613668 0.662134 0.430105
+0.538192 0.657739 0.526999
+0.601785 0.539948 0.588482
+-0.716876 0.666064 -0.206026
+-0.759288 0.650754 -0.000381
+-0.112114 0.993695 -0.000041
+-0.112114 0.993695 -0.000041
+-0.064445 0.995715 -0.066315
+-0.716876 0.666064 -0.206026
+-0.716876 0.666064 -0.206026
+-0.064445 0.995715 -0.066315
+-0.556811 0.568601 -0.605520
+-0.064445 0.995715 -0.066315
+-0.195579 0.656911 -0.728160
+-0.556811 0.568601 -0.605520
+0.000000 1.000000 0.000000
+-0.112114 0.993695 -0.000041
+0.000000 1.000000 -0.000000
+0.653839 0.568227 0.499612
+0.598663 0.558562 0.574118
+0.522794 0.688986 0.501981
+0.522794 0.688986 0.501981
+0.562682 0.705436 0.430986
+0.653839 0.568227 0.499612
+0.598663 0.558562 0.574118
+0.581073 0.546846 0.602754
+0.514913 0.670271 0.534417
+0.514913 0.670271 0.534417
+0.522794 0.688986 0.501981
+0.598663 0.558562 0.574118
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 0.000000
+0.000000 1.000000 -0.000000
+0.201947 0.604950 -0.770229
+-0.195579 0.656911 -0.728160
+0.086276 0.994635 -0.057081
+-0.064445 0.995715 -0.066315
+0.086276 0.994635 -0.057081
+-0.195579 0.656911 -0.728160
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 -0.000000
+0.086276 0.994635 -0.057081
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 -0.000000
+0.000000 1.000000 0.000000
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+0.000000 1.000000 -0.000000
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 0.000000
+0.000000 1.000000 -0.000000
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 -0.000000
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 -0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+-0.064445 0.995715 -0.066315
+-0.112114 0.993695 -0.000041
+-0.064445 0.995715 -0.066315
+0.000000 1.000000 0.000000
+0.000000 1.000000 -0.000000
+0.000000 1.000000 0.000000
+-0.112114 0.993695 -0.000041
+0.000000 1.000000 0.000000
+0.382362 0.015677 -0.923879
+-0.027544 0.671807 -0.740214
+0.252364 0.691252 -0.677114
+-0.027544 0.671807 -0.740214
+0.382362 0.015677 -0.923879
+-0.000000 -0.000000 -1.000000
+0.382362 0.015677 -0.923879
+0.495427 0.693249 -0.523410
+0.706514 0.028967 -0.707106
+0.495427 0.693249 -0.523410
+0.382362 0.015677 -0.923879
+0.252364 0.691252 -0.677114
+-0.308105 0.668272 -0.677114
+-0.382363 -0.015677 -0.923879
+-0.706513 -0.028967 -0.707107
+-0.706513 -0.028967 -0.707107
+-0.550515 0.650365 -0.523410
+-0.308105 0.668272 -0.677114
+-0.382363 -0.015677 -0.923879
+-0.308105 0.668272 -0.677114
+-0.000000 -0.000000 -1.000000
+-0.000000 -0.000000 -1.000000
+-0.308105 0.668272 -0.677114
+-0.027544 0.671807 -0.740214
+-0.767137 0.641483 -0.000000
+-0.923104 -0.037848 -0.382684
+-0.999160 -0.040968 -0.000000
+-0.923104 -0.037848 -0.382684
+-0.767137 0.641483 -0.000000
+-0.704416 0.652023 -0.280470
+-0.704416 0.652023 -0.280470
+-0.706513 -0.028967 -0.707107
+-0.923104 -0.037848 -0.382684
+-0.706513 -0.028967 -0.707107
+-0.704416 0.652023 -0.280470
+-0.550515 0.650365 -0.523410
+-0.706513 -0.028967 0.707107
+-0.550515 0.650365 0.523410
+-0.704416 0.652024 0.280470
+-0.706513 -0.028967 0.707107
+-0.704416 0.652024 0.280470
+-0.923104 -0.037848 0.382684
+-0.923104 -0.037848 0.382684
+-0.767137 0.641483 -0.000000
+-0.999160 -0.040968 -0.000000
+-0.767137 0.641483 -0.000000
+-0.923104 -0.037848 0.382684
+-0.704416 0.652024 0.280470
+-0.308105 0.668272 0.677114
+-0.000000 -0.000000 1.000000
+-0.027544 0.671807 0.740214
+-0.000000 -0.000000 1.000000
+-0.308105 0.668272 0.677114
+-0.382363 -0.015677 0.923879
+-0.550515 0.650365 0.523410
+-0.706513 -0.028967 0.707107
+-0.308105 0.668272 0.677114
+-0.308105 0.668272 0.677114
+-0.706513 -0.028967 0.707107
+-0.382363 -0.015677 0.923879
+0.495427 0.693249 0.523410
+0.382362 0.015677 0.923879
+0.706513 0.028967 0.707106
+0.382362 0.015677 0.923879
+0.495427 0.693249 0.523410
+0.252364 0.691252 0.677114
+-0.027544 0.671807 0.740214
+0.382362 0.015677 0.923879
+0.252364 0.691252 0.677114
+0.382362 0.015677 0.923879
+-0.027544 0.671807 0.740214
+-0.000000 -0.000000 1.000000
+0.648675 0.707500 0.280471
+0.923104 0.037847 0.382683
+0.999160 0.040965 -0.000000
+0.648675 0.707500 0.280471
+0.999160 0.040965 -0.000000
+0.712049 0.702130 -0.000000
+0.923104 0.037847 0.382683
+0.495427 0.693249 0.523410
+0.706513 0.028967 0.707106
+0.495427 0.693249 0.523410
+0.923104 0.037847 0.382683
+0.648675 0.707500 0.280471
+0.923104 0.037847 -0.382683
+0.495427 0.693249 -0.523410
+0.648675 0.707500 -0.280471
+0.495427 0.693249 -0.523410
+0.923104 0.037847 -0.382683
+0.706514 0.028967 -0.707106
+0.712049 0.702130 -0.000000
+0.999160 0.040965 -0.000000
+0.648675 0.707500 -0.280471
+0.999160 0.040965 -0.000000
+0.923104 0.037847 -0.382683
+0.648675 0.707500 -0.280471
+0.252364 0.691252 -0.677114
+-0.027544 0.671807 -0.740214
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+0.495427 0.693249 -0.523410
+0.252364 0.691252 -0.677114
+-0.308105 0.668272 -0.677114
+-0.550515 0.650365 -0.523410
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+-0.027544 0.671807 -0.740214
+-0.308105 0.668272 -0.677114
+-0.704416 0.652023 -0.280470
+-0.767137 0.641483 -0.000000
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+-0.550515 0.650365 -0.523410
+-0.704416 0.652023 -0.280470
+-0.704416 0.652024 0.280470
+-0.550515 0.650365 0.523410
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+-0.767137 0.641483 -0.000000
+-0.704416 0.652024 0.280470
+-0.308105 0.668272 0.677114
+-0.027544 0.671807 0.740214
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+-0.550515 0.650365 0.523410
+-0.308105 0.668272 0.677114
+0.252364 0.691252 0.677114
+0.495427 0.693249 0.523410
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+-0.027544 0.671807 0.740214
+0.252364 0.691252 0.677114
+0.648675 0.707500 0.280471
+0.712049 0.702130 -0.000000
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+0.495427 0.693249 0.523410
+0.648675 0.707500 0.280471
+0.648675 0.707500 -0.280471
+0.495427 0.693249 -0.523410
+-0.040965 0.999161 0.000000
+-0.040965 0.999161 0.000000
+0.712049 0.702130 -0.000000
+0.648675 0.707500 -0.280471
+0.267477 0.651792 -0.709665
+0.382362 0.015677 -0.923880
+-0.000000 -0.000000 -1.000000
+-0.000000 -0.000000 -1.000000
+-0.025893 0.631540 -0.774911
+0.267477 0.651792 -0.709665
+0.382362 0.015677 -0.923880
+0.521592 0.653986 -0.547945
+0.706513 0.028967 -0.707107
+0.521592 0.653986 -0.547945
+0.382362 0.015677 -0.923880
+0.267477 0.651792 -0.709665
+-0.319935 0.627707 -0.709666
+-0.382362 -0.015676 -0.923880
+-0.706515 -0.028966 -0.707105
+-0.706515 -0.028966 -0.707105
+-0.573379 0.609093 -0.547943
+-0.319935 0.627707 -0.709666
+-0.382362 -0.015676 -0.923880
+-0.025893 0.631540 -0.774911
+-0.000000 -0.000000 -1.000000
+-0.025893 0.631540 -0.774911
+-0.382362 -0.015676 -0.923880
+-0.319935 0.627707 -0.709666
+-0.800154 0.599795 -0.000000
+-0.923104 -0.037847 -0.382683
+-0.999161 -0.040966 -0.000000
+-0.923104 -0.037847 -0.382683
+-0.800154 0.599795 -0.000000
+-0.735300 0.610677 -0.293952
+-0.735300 0.610677 -0.293952
+-0.706515 -0.028966 -0.707105
+-0.923104 -0.037847 -0.382683
+-0.706515 -0.028966 -0.707105
+-0.735300 0.610677 -0.293952
+-0.573379 0.609093 -0.547943
+-0.706515 -0.028967 0.707105
+-0.573380 0.609093 0.547944
+-0.735300 0.610677 0.293952
+-0.706515 -0.028967 0.707105
+-0.735300 0.610677 0.293952
+-0.923104 -0.037847 0.382683
+-0.923104 -0.037847 0.382683
+-0.800154 0.599795 -0.000000
+-0.999161 -0.040966 -0.000000
+-0.800154 0.599795 -0.000000
+-0.923104 -0.037847 0.382683
+-0.735300 0.610677 0.293952
+-0.025893 0.631540 0.774911
+-0.382362 -0.015677 0.923880
+0.000000 -0.000000 1.000000
+-0.382362 -0.015677 0.923880
+-0.025893 0.631540 0.774911
+-0.319935 0.627707 0.709666
+-0.573380 0.609093 0.547944
+-0.706515 -0.028967 0.707105
+-0.319935 0.627707 0.709666
+-0.319935 0.627707 0.709666
+-0.706515 -0.028967 0.707105
+-0.382362 -0.015677 0.923880
+0.521592 0.653986 0.547945
+0.382362 0.015676 0.923880
+0.706513 0.028966 0.707107
+0.382362 0.015676 0.923880
+0.521592 0.653986 0.547945
+0.267477 0.651792 0.709665
+-0.025893 0.631540 0.774911
+0.000000 -0.000000 1.000000
+0.267477 0.651792 0.709665
+0.267477 0.651792 0.709665
+0.000000 -0.000000 1.000000
+0.382362 0.015676 0.923880
+0.682841 0.668821 0.293952
+0.923104 0.037846 0.382683
+0.999160 0.040965 0.000000
+0.682841 0.668821 0.293952
+0.999160 0.040965 0.000000
+0.748368 0.663284 0.000000
+0.923104 0.037846 0.382683
+0.521592 0.653986 0.547945
+0.706513 0.028966 0.707107
+0.521592 0.653986 0.547945
+0.923104 0.037846 0.382683
+0.682841 0.668821 0.293952
+0.923104 0.037848 -0.382683
+0.521592 0.653986 -0.547945
+0.682840 0.668821 -0.293952
+0.521592 0.653986 -0.547945
+0.923104 0.037848 -0.382683
+0.706513 0.028967 -0.707107
+0.923104 0.037848 -0.382683
+0.682840 0.668821 -0.293952
+0.999160 0.040965 0.000000
+0.748368 0.663284 0.000000
+0.999160 0.040965 0.000000
+0.682840 0.668821 -0.293952
+0.267477 0.651792 -0.709665
+-0.025893 0.631540 -0.774911
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.521592 0.653986 -0.547945
+0.267477 0.651792 -0.709665
+-0.319935 0.627707 -0.709666
+-0.573379 0.609093 -0.547943
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.025893 0.631540 -0.774911
+-0.319935 0.627707 -0.709666
+-0.735300 0.610677 -0.293952
+-0.800154 0.599795 -0.000000
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.573379 0.609093 -0.547943
+-0.735300 0.610677 -0.293952
+-0.735300 0.610677 0.293952
+-0.573380 0.609093 0.547944
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.800154 0.599795 -0.000000
+-0.735300 0.610677 0.293952
+-0.319935 0.627707 0.709666
+-0.025893 0.631540 0.774911
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.573380 0.609093 0.547944
+-0.319935 0.627707 0.709666
+0.267477 0.651792 0.709665
+0.521592 0.653986 0.547945
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.025893 0.631540 0.774911
+0.267477 0.651792 0.709665
+0.682841 0.668821 0.293952
+0.748368 0.663284 0.000000
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.521592 0.653986 0.547945
+0.682841 0.668821 0.293952
+0.682840 0.668821 -0.293952
+0.521592 0.653986 -0.547945
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.748368 0.663284 0.000000
+0.682840 0.668821 -0.293952
+0.267477 0.651792 -0.709665
+0.382362 0.015677 -0.923880
+-0.000001 -0.000000 -1.000000
+-0.000001 -0.000000 -1.000000
+-0.025893 0.631540 -0.774911
+0.267477 0.651792 -0.709665
+0.382362 0.015677 -0.923880
+0.521592 0.653986 -0.547945
+0.706513 0.028967 -0.707107
+0.521592 0.653986 -0.547945
+0.382362 0.015677 -0.923880
+0.267477 0.651792 -0.709665
+-0.319936 0.627707 -0.709666
+-0.382362 -0.015677 -0.923879
+-0.706513 -0.028967 -0.707107
+-0.706513 -0.028967 -0.707107
+-0.573378 0.609092 -0.547945
+-0.319936 0.627707 -0.709666
+-0.382362 -0.015677 -0.923879
+-0.319936 0.627707 -0.709666
+-0.000001 -0.000000 -1.000000
+-0.000001 -0.000000 -1.000000
+-0.319936 0.627707 -0.709666
+-0.025893 0.631540 -0.774911
+-0.800154 0.599795 0.000000
+-0.923103 -0.037848 -0.382686
+-0.999161 -0.040965 0.000000
+-0.923103 -0.037848 -0.382686
+-0.800154 0.599795 0.000000
+-0.735299 0.610677 -0.293954
+-0.735299 0.610677 -0.293954
+-0.706513 -0.028967 -0.707107
+-0.923103 -0.037848 -0.382686
+-0.706513 -0.028967 -0.707107
+-0.735299 0.610677 -0.293954
+-0.573378 0.609092 -0.547945
+-0.706513 -0.028967 0.707107
+-0.573378 0.609093 0.547945
+-0.735299 0.610678 0.293954
+-0.706513 -0.028967 0.707107
+-0.735299 0.610678 0.293954
+-0.923103 -0.037847 0.382686
+-0.923103 -0.037847 0.382686
+-0.800154 0.599795 0.000000
+-0.999161 -0.040965 0.000000
+-0.800154 0.599795 0.000000
+-0.923103 -0.037847 0.382686
+-0.735299 0.610678 0.293954
+-0.319936 0.627707 0.709666
+-0.000000 -0.000000 1.000000
+-0.025893 0.631540 0.774911
+-0.000000 -0.000000 1.000000
+-0.319936 0.627707 0.709666
+-0.382362 -0.015677 0.923879
+-0.573378 0.609093 0.547945
+-0.706513 -0.028967 0.707107
+-0.319936 0.627707 0.709666
+-0.319936 0.627707 0.709666
+-0.706513 -0.028967 0.707107
+-0.382362 -0.015677 0.923879
+0.521591 0.653985 0.547946
+0.382362 0.015677 0.923880
+0.706513 0.028967 0.707107
+0.382362 0.015677 0.923880
+0.521591 0.653985 0.547946
+0.267477 0.651792 0.709664
+-0.025893 0.631540 0.774911
+-0.000000 -0.000000 1.000000
+0.267477 0.651792 0.709664
+0.267477 0.651792 0.709664
+-0.000000 -0.000000 1.000000
+0.382362 0.015677 0.923880
+0.682840 0.668820 0.293955
+0.923104 0.037846 0.382684
+0.999161 0.040963 0.000000
+0.682840 0.668820 0.293955
+0.999161 0.040963 0.000000
+0.748368 0.663283 -0.000003
+0.923104 0.037846 0.382684
+0.521591 0.653985 0.547946
+0.706513 0.028967 0.707107
+0.521591 0.653985 0.547946
+0.923104 0.037846 0.382684
+0.682840 0.668820 0.293955
+0.923104 0.037846 -0.382684
+0.521592 0.653986 -0.547945
+0.682840 0.668820 -0.293956
+0.521592 0.653986 -0.547945
+0.923104 0.037846 -0.382684
+0.706513 0.028967 -0.707107
+0.923104 0.037846 -0.382684
+0.682840 0.668820 -0.293956
+0.999161 0.040963 0.000000
+0.748368 0.663283 -0.000003
+0.999161 0.040963 0.000000
+0.682840 0.668820 -0.293956
+0.267477 0.651792 -0.709665
+-0.025893 0.631540 -0.774911
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.521592 0.653986 -0.547945
+0.267477 0.651792 -0.709665
+-0.319936 0.627707 -0.709666
+-0.573378 0.609092 -0.547945
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.025893 0.631540 -0.774911
+-0.319936 0.627707 -0.709666
+-0.735299 0.610677 -0.293954
+-0.800154 0.599795 0.000000
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.573378 0.609092 -0.547945
+-0.735299 0.610677 -0.293954
+-0.735299 0.610678 0.293954
+-0.573378 0.609093 0.547945
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.800154 0.599795 0.000000
+-0.735299 0.610678 0.293954
+-0.319936 0.627707 0.709666
+-0.025893 0.631540 0.774911
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.573378 0.609093 0.547945
+-0.319936 0.627707 0.709666
+0.267477 0.651792 0.709664
+0.521591 0.653985 0.547946
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.025893 0.631540 0.774911
+0.267477 0.651792 0.709664
+0.682840 0.668820 0.293955
+0.748368 0.663283 -0.000003
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.521591 0.653985 0.547946
+0.682840 0.668820 0.293955
+0.682840 0.668820 -0.293956
+0.521592 0.653986 -0.547945
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.748368 0.663283 -0.000003
+0.682840 0.668820 -0.293956
+0.382362 0.015676 -0.923880
+-0.025893 0.631540 -0.774911
+0.267477 0.651791 -0.709665
+-0.025893 0.631540 -0.774911
+0.382362 0.015676 -0.923880
+-0.000000 -0.000000 -1.000000
+0.382362 0.015676 -0.923880
+0.521593 0.653986 -0.547944
+0.706513 0.028967 -0.707107
+0.521593 0.653986 -0.547944
+0.382362 0.015676 -0.923880
+0.267477 0.651791 -0.709665
+-0.319936 0.627708 -0.709665
+-0.382362 -0.015677 -0.923880
+-0.706513 -0.028967 -0.707107
+-0.706513 -0.028967 -0.707107
+-0.573378 0.609093 -0.547945
+-0.319936 0.627708 -0.709665
+-0.382362 -0.015677 -0.923880
+-0.319936 0.627708 -0.709665
+-0.000000 -0.000000 -1.000000
+-0.000000 -0.000000 -1.000000
+-0.319936 0.627708 -0.709665
+-0.025893 0.631540 -0.774911
+-0.800154 0.599795 -0.000000
+-0.923104 -0.037847 -0.382684
+-0.999161 -0.040964 -0.000000
+-0.923104 -0.037847 -0.382684
+-0.800154 0.599795 -0.000000
+-0.735299 0.610677 -0.293954
+-0.735299 0.610677 -0.293954
+-0.706513 -0.028967 -0.707107
+-0.923104 -0.037847 -0.382684
+-0.706513 -0.028967 -0.707107
+-0.735299 0.610677 -0.293954
+-0.573378 0.609093 -0.547945
+-0.706513 -0.028967 0.707107
+-0.573378 0.609093 0.547945
+-0.735299 0.610677 0.293954
+-0.706513 -0.028967 0.707107
+-0.735299 0.610677 0.293954
+-0.923104 -0.037847 0.382684
+-0.923104 -0.037847 0.382684
+-0.800154 0.599795 -0.000000
+-0.999161 -0.040964 -0.000000
+-0.800154 0.599795 -0.000000
+-0.923104 -0.037847 0.382684
+-0.735299 0.610677 0.293954
+-0.319936 0.627708 0.709665
+-0.000000 -0.000000 1.000000
+-0.025893 0.631540 0.774911
+-0.000000 -0.000000 1.000000
+-0.319936 0.627708 0.709665
+-0.382362 -0.015676 0.923879
+-0.573378 0.609093 0.547945
+-0.706513 -0.028967 0.707107
+-0.319936 0.627708 0.709665
+-0.319936 0.627708 0.709665
+-0.706513 -0.028967 0.707107
+-0.382362 -0.015676 0.923879
+0.521592 0.653986 0.547946
+0.382362 0.015676 0.923879
+0.706513 0.028967 0.707107
+0.382362 0.015676 0.923879
+0.521592 0.653986 0.547946
+0.267477 0.651791 0.709665
+-0.025893 0.631540 0.774911
+0.382362 0.015676 0.923879
+0.267477 0.651791 0.709665
+0.382362 0.015676 0.923879
+-0.025893 0.631540 0.774911
+-0.000000 -0.000000 1.000000
+0.682840 0.668821 0.293952
+0.923104 0.037847 0.382684
+0.999161 0.040964 -0.000001
+0.682840 0.668821 0.293952
+0.999161 0.040964 -0.000001
+0.748368 0.663283 -0.000002
+0.923104 0.037847 0.382684
+0.521592 0.653986 0.547946
+0.706513 0.028967 0.707107
+0.521592 0.653986 0.547946
+0.923104 0.037847 0.382684
+0.682840 0.668821 0.293952
+0.923104 0.037847 -0.382684
+0.521593 0.653986 -0.547944
+0.682840 0.668821 -0.293953
+0.521593 0.653986 -0.547944
+0.923104 0.037847 -0.382684
+0.706513 0.028967 -0.707107
+0.923104 0.037847 -0.382684
+0.682840 0.668821 -0.293953
+0.999161 0.040964 -0.000001
+0.748368 0.663283 -0.000002
+0.999161 0.040964 -0.000001
+0.682840 0.668821 -0.293953
+0.267477 0.651791 -0.709665
+-0.025893 0.631540 -0.774911
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.521593 0.653986 -0.547944
+0.267477 0.651791 -0.709665
+-0.319936 0.627708 -0.709665
+-0.573378 0.609093 -0.547945
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.025893 0.631540 -0.774911
+-0.319936 0.627708 -0.709665
+-0.735299 0.610677 -0.293954
+-0.800154 0.599795 -0.000000
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.573378 0.609093 -0.547945
+-0.735299 0.610677 -0.293954
+-0.735299 0.610677 0.293954
+-0.573378 0.609093 0.547945
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.800154 0.599795 -0.000000
+-0.735299 0.610677 0.293954
+-0.319936 0.627708 0.709665
+-0.025893 0.631540 0.774911
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.573378 0.609093 0.547945
+-0.319936 0.627708 0.709665
+0.267477 0.651791 0.709665
+0.521592 0.653986 0.547946
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+-0.025893 0.631540 0.774911
+0.267477 0.651791 0.709665
+0.682840 0.668821 0.293952
+0.748368 0.663283 -0.000002
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.521592 0.653986 0.547946
+0.682840 0.668821 0.293952
+0.682840 0.668821 -0.293953
+0.521593 0.653986 -0.547944
+-0.040965 0.999161 -0.000000
+-0.040965 0.999161 -0.000000
+0.748368 0.663283 -0.000002
+0.682840 0.668821 -0.293953
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.993687 -0.112187 -0.000011
+0.996406 -0.084700 -0.000008
+0.996406 -0.084700 -0.000008
+0.996406 -0.084700 -0.000008
+0.993687 -0.112187 -0.000011
+0.993687 -0.112187 -0.000011
+0.996406 -0.084700 -0.000008
+0.996406 -0.084700 -0.000008
+1.000000 0.000619 -0.000010
+1.000000 0.000619 -0.000010
+0.996406 -0.084700 -0.000008
+1.000000 0.000619 -0.000010
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+-0.998658 0.051788 0.000000
+-0.997634 0.068744 0.000000
+-0.997634 0.068744 0.000000
+-0.997634 0.068744 0.000000
+-0.998658 0.051788 0.000000
+-0.998658 0.051788 0.000000
+-0.998658 0.051788 0.000000
+-0.998658 0.051788 0.000000
+-1.000000 -0.000396 0.000000
+-1.000000 -0.000396 0.000000
+-1.000000 -0.000396 0.000000
+-0.998658 0.051788 0.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+-0.000000 0.000000 1.000000
+1.000000 0.000619 -0.000010
+0.996693 0.081259 -0.000019
+0.996693 0.081259 -0.000019
+0.996693 0.081259 -0.000019
+1.000000 0.000619 -0.000010
+1.000000 0.000619 -0.000010
+0.996693 0.081259 -0.000019
+0.994568 0.104092 -0.000024
+0.994568 0.104092 -0.000024
+0.994568 0.104092 -0.000024
+0.996693 0.081259 -0.000019
+0.996693 0.081259 -0.000019
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+-0.998584 -0.053190 0.000000
+-0.998584 -0.053190 0.000000
+-1.000000 -0.000396 0.000000
+-1.000000 -0.000396 0.000000
+-0.998584 -0.053190 0.000000
+-1.000000 -0.000396 0.000000
+-0.998584 -0.053190 0.000000
+-0.998584 -0.053190 0.000000
+-0.997494 -0.070756 0.000000
+-0.997494 -0.070756 0.000000
+-0.997494 -0.070756 0.000000
+-0.998584 -0.053190 0.000000
+</float_array>
+          <technique_common>
+            <accessor source="#Album_Cute-Normal0-array" count="4362" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="Album_Cute-UV0">
+          <float_array id="Album_Cute-UV0-array" count="2294">
+0.838327 0.609806
+0.838840 0.610393
+0.856012 0.610099
+0.855249 0.609480
+0.838840 0.609480
+0.838327 0.609480
+0.889394 0.605720
+0.888712 0.605720
+0.889394 0.605720
+0.889011 0.605720
+0.855535 0.665926
+0.854772 0.666545
+0.859689 0.577408
+0.854562 0.579732
+0.855380 0.578542
+0.808575 0.603340
+0.809387 0.604530
+0.808575 0.605720
+0.808053 0.605720
+0.808053 0.604530
+0.808053 0.603340
+0.854562 0.636467
+0.855380 0.635277
+0.855380 0.634192
+0.860111 0.605553
+0.892227 0.605720
+0.893122 0.605609
+0.865630 0.577353
+0.835977 0.579732
+0.835178 0.578542
+0.835977 0.577353
+0.836420 0.577353
+0.836420 0.578542
+0.836420 0.579732
+0.836493 0.641728
+0.854903 0.641833
+0.836493 0.643273
+0.835943 0.642460
+0.835943 0.641938
+0.836493 0.639559
+0.836493 0.640749
+0.835943 0.640749
+0.835943 0.639559
+0.836970 0.605496
+0.855380 0.606563
+0.836970 0.606962
+0.836420 0.606163
+0.836420 0.605720
+0.836970 0.603340
+0.854562 0.603340
+0.855380 0.604530
+0.836970 0.604530
+0.836420 0.604530
+0.836420 0.603340
+0.893155 0.587331
+0.893155 0.591799
+0.893155 0.594434
+0.893068 0.596244
+0.893068 0.604836
+0.893155 0.598807
+0.893155 0.602215
+0.893155 0.601962
+0.893155 0.603841
+0.869167 0.605720
+0.868873 0.605720
+0.868548 0.605720
+0.868548 0.605720
+0.868873 0.605720
+0.869167 0.605720
+0.868548 0.605720
+0.868548 0.605720
+0.864861 0.602834
+0.866030 0.605564
+0.864861 0.605150
+0.864787 0.599421
+0.864787 0.601314
+0.866030 0.594931
+0.864861 0.594581
+0.866030 0.603436
+0.889011 0.605720
+0.888712 0.605720
+0.889394 0.605720
+0.889394 0.605720
+0.864787 0.593776
+0.864787 0.592492
+0.893068 0.580148
+0.893155 0.583183
+0.893068 0.577897
+0.893155 0.579531
+0.893155 0.581640
+0.864861 0.582608
+0.866030 0.581779
+0.864787 0.587720
+0.869167 0.577353
+0.868873 0.577353
+0.868548 0.577353
+0.868548 0.577353
+0.893155 0.579732
+0.893155 0.580383
+0.893155 0.578868
+0.893068 0.577731
+0.893068 0.577660
+0.891820 0.577353
+0.893138 0.577408
+0.864824 0.577659
+0.866032 0.577353
+0.864861 0.577731
+0.866030 0.577353
+0.866032 0.577353
+0.864861 0.577660
+0.864787 0.578583
+0.864787 0.579732
+0.864787 0.579732
+0.864787 0.578542
+0.856012 0.629645
+0.855249 0.630327
+0.880107 0.605720
+0.880104 0.605720
+0.838363 0.646679
+0.838363 0.645699
+0.837850 0.645699
+0.837850 0.646082
+0.815598 0.603340
+0.815598 0.604530
+0.825793 0.603340
+0.825773 0.604530
+0.825793 0.605720
+0.815598 0.605720
+0.880517 0.605720
+0.892227 0.577353
+0.809387 0.578542
+0.808575 0.579732
+0.808053 0.579732
+0.808053 0.578542
+0.808053 0.577353
+0.808575 0.577353
+0.836493 0.649483
+0.854903 0.654576
+0.836493 0.659658
+0.835943 0.659678
+0.835943 0.649483
+0.836970 0.632753
+0.855380 0.633159
+0.836970 0.634298
+0.836420 0.634087
+0.836420 0.633565
+0.880107 0.605720
+0.880104 0.605720
+0.889011 0.605720
+0.888712 0.605720
+0.889394 0.605720
+0.889394 0.605720
+0.891820 0.596760
+0.891820 0.605607
+0.891820 0.579256
+0.880524 0.577353
+0.891822 0.577353
+0.891822 0.577353
+0.856012 0.621040
+0.838363 0.665632
+0.838363 0.658721
+0.837850 0.658735
+0.837850 0.666220
+0.880517 0.577353
+0.825793 0.579732
+0.825773 0.578542
+0.825793 0.577353
+0.855380 0.621450
+0.836970 0.616367
+0.836420 0.616347
+0.880107 0.605720
+0.880104 0.605720
+0.880107 0.605720
+0.880104 0.605720
+0.880522 0.595959
+0.880538 0.577353
+0.880541 0.577353
+0.869167 0.605720
+0.868873 0.605720
+0.868548 0.605720
+0.868548 0.605720
+0.835178 0.604530
+0.835977 0.603340
+0.836420 0.603340
+0.836420 0.604530
+0.835977 0.605720
+0.865630 0.605720
+0.836493 0.669063
+0.854085 0.670306
+0.836493 0.670306
+0.835943 0.670306
+0.835943 0.669863
+0.869167 0.605720
+0.868548 0.605720
+0.868548 0.605720
+0.868873 0.605720
+0.837850 0.666545
+0.838363 0.666545
+0.836970 0.579732
+0.836970 0.578542
+0.836420 0.579732
+0.836420 0.578542
+0.836970 0.577353
+0.836970 0.636467
+0.836970 0.635277
+0.836420 0.636467
+0.836420 0.635277
+0.854903 0.642866
+0.854903 0.640749
+0.854085 0.639559
+0.838840 0.629346
+0.838327 0.629943
+0.838327 0.630327
+0.838840 0.630327
+0.838840 0.617305
+0.838840 0.624782
+0.838327 0.617290
+0.838327 0.624782
+0.854903 0.669463
+0.893155 0.604530
+0.893155 0.603340
+0.893155 0.604540
+0.893155 0.603359
+0.893111 0.605571
+0.864787 0.603359
+0.864787 0.604540
+0.864787 0.603340
+0.864787 0.604530
+0.864824 0.605571
+0.893155 0.604449
+0.893068 0.605402
+0.893111 0.605531
+0.893155 0.604043
+0.893155 0.602367
+0.893155 0.603340
+0.893155 0.604530
+0.893155 0.603340
+0.864787 0.604449
+0.864861 0.605402
+0.864787 0.604530
+0.864787 0.603340
+0.864787 0.603340
+0.864787 0.603925
+0.864787 0.602363
+0.889394 0.605720
+0.888712 0.605720
+0.889011 0.605720
+0.889394 0.605720
+0.866030 0.605720
+0.889011 0.605720
+0.888712 0.605720
+0.889394 0.605720
+0.889394 0.605720
+0.891820 0.605720
+0.891820 0.605712
+0.880522 0.605720
+0.880522 0.605720
+0.880522 0.605647
+0.866030 0.605720
+0.891820 0.605720
+0.880522 0.604656
+0.880523 0.580361
+0.838363 0.651243
+0.837850 0.651243
+0.815598 0.579732
+0.815598 0.578542
+0.815598 0.577353
+0.836970 0.626542
+0.836420 0.626542
+0.893155 0.578583
+0.893155 0.578542
+0.893155 0.579732
+0.889011 0.577353
+0.888712 0.577353
+0.889394 0.577353
+0.889394 0.577353
+0.880104 0.577353
+0.880107 0.577353
+0.855535 0.646381
+0.854772 0.645699
+0.855535 0.654986
+0.880107 0.605720
+0.880104 0.605720
+0.869167 0.605720
+0.868873 0.605720
+0.868548 0.605720
+0.868548 0.605720
+0.864787 0.584758
+0.864787 0.578867
+0.864787 0.579191
+0.864787 0.581030
+0.864787 0.580381
+0.864787 0.581686
+0.864787 0.579519
+0.868548 0.577353
+0.868548 0.577353
+0.869461 0.577353
+0.868548 0.577353
+0.868873 0.577353
+0.868873 0.577353
+0.888712 0.598628
+0.889394 0.598628
+0.889394 0.577353
+0.889011 0.577353
+0.888995 0.577353
+0.888712 0.577353
+0.889394 0.577353
+0.889394 0.577353
+0.889011 0.577353
+0.888414 0.577353
+0.889011 0.577353
+0.889394 0.577353
+0.889394 0.577353
+0.889394 0.577353
+0.868873 0.577353
+0.868873 0.577353
+0.868548 0.577353
+0.868548 0.577353
+0.881333 0.577353
+0.879265 0.596264
+0.880104 0.577353
+0.880111 0.577353
+0.880104 0.577353
+0.868900 0.577353
+0.868548 0.577353
+0.868548 0.598628
+0.869167 0.598628
+0.880718 0.577574
+0.868927 0.577353
+0.876358 0.577353
+0.880718 0.577353
+0.183517 0.346879
+0.183517 0.345959
+0.184897 0.345959
+0.184897 0.346879
+0.185511 0.345959
+0.185511 0.346879
+0.181830 0.346879
+0.181830 0.345959
+0.182443 0.345959
+0.182443 0.346879
+0.183517 0.345345
+0.184897 0.345345
+0.183517 0.344732
+0.184897 0.344732
+0.185511 0.344732
+0.185511 0.345345
+0.181830 0.345345
+0.182443 0.345345
+0.181830 0.344732
+0.182443 0.344732
+0.183939 0.343889
+0.185511 0.343199
+0.185511 0.344119
+0.181830 0.344119
+0.181830 0.343199
+0.183364 0.342462
+0.185511 0.341972
+0.181830 0.341972
+0.183517 0.341052
+0.184897 0.341052
+0.185511 0.341052
+0.181830 0.341052
+0.182443 0.341052
+0.183517 0.340438
+0.184897 0.340438
+0.183517 0.339825
+0.184897 0.339825
+0.185511 0.339825
+0.185511 0.340438
+0.181830 0.340438
+0.182443 0.340438
+0.181830 0.339825
+0.182443 0.339825
+0.183517 0.338905
+0.184897 0.338905
+0.185511 0.338905
+0.181830 0.338905
+0.182443 0.338905
+0.178150 0.346879
+0.178150 0.345959
+0.179070 0.345959
+0.179070 0.346879
+0.180297 0.345959
+0.180297 0.346879
+0.181217 0.345959
+0.181217 0.346879
+0.178150 0.345345
+0.179070 0.345345
+0.178150 0.344732
+0.179070 0.344732
+0.180297 0.345345
+0.180297 0.344732
+0.181217 0.345345
+0.181217 0.344732
+0.188271 0.345959
+0.189191 0.345959
+0.189191 0.346879
+0.188271 0.346879
+0.187044 0.345959
+0.187044 0.346879
+0.186124 0.345959
+0.186124 0.346879
+0.188271 0.344732
+0.189191 0.344732
+0.189191 0.345345
+0.188271 0.345345
+0.187044 0.344732
+0.187044 0.345345
+0.186124 0.345345
+0.186124 0.344732
+0.478477 0.381137
+0.506672 0.362867
+0.573315 0.454693
+0.453463 0.403726
+0.514881 0.572734
+0.481591 0.572517
+0.543538 0.563971
+0.572051 0.543251
+0.594077 0.570863
+0.619225 0.586964
+0.651117 0.595635
+0.684055 0.590985
+0.712612 0.570336
+0.733008 0.541362
+0.738620 0.507325
+0.734184 0.472420
+0.720647 0.440162
+0.702223 0.411660
+0.679748 0.386546
+0.655678 0.363093
+0.633275 0.341709
+0.615773 0.322490
+0.607678 0.306920
+0.603752 0.293905
+0.597099 0.305094
+0.585551 0.317887
+0.563585 0.331816
+0.536163 0.346576
+0.478477 0.381137
+0.506672 0.362867
+0.453463 0.403726
+0.432242 0.431245
+0.419141 0.463758
+0.415961 0.498127
+0.428344 0.531571
+0.450763 0.559171
+0.514881 0.572734
+0.481591 0.572517
+0.543538 0.563971
+0.572051 0.543251
+0.594077 0.570863
+0.619225 0.586964
+0.651117 0.595635
+0.684055 0.590985
+0.712612 0.570336
+0.733008 0.541362
+0.738620 0.507325
+0.734184 0.472420
+0.720647 0.440162
+0.702223 0.411660
+0.679748 0.386546
+0.655678 0.363093
+0.633275 0.341709
+0.615773 0.322490
+0.607678 0.306920
+0.603752 0.293905
+0.597099 0.305094
+0.585551 0.317887
+0.563585 0.331816
+0.536163 0.346576
+0.432242 0.431245
+0.419141 0.463758
+0.415961 0.498127
+0.428344 0.531571
+0.450763 0.559171
+0.839870 0.639265
+0.839323 0.638377
+0.844158 0.638013
+0.844293 0.638940
+0.925635 0.562566
+0.925453 0.561975
+0.929463 0.561975
+0.929508 0.562566
+0.925453 0.637251
+0.925635 0.636554
+0.929508 0.636554
+0.929463 0.637251
+0.827693 0.638377
+0.827146 0.639265
+0.822723 0.638940
+0.822857 0.638013
+0.836537 0.707249
+0.835803 0.707067
+0.835803 0.703861
+0.836537 0.704133
+0.922908 0.637251
+0.923186 0.636554
+0.836537 0.712085
+0.835803 0.712040
+0.838626 0.705309
+0.838035 0.705492
+0.838035 0.702376
+0.838626 0.702098
+0.923186 0.562566
+0.922908 0.561975
+0.838626 0.710283
+0.838035 0.710328
+0.086447 0.468433
+0.114084 0.499200
+0.114084 0.753757
+0.086447 0.783991
+0.858938 0.562566
+0.858943 0.636516
+0.857162 0.636554
+0.857162 0.562566
+0.247542 0.958488
+0.270218 0.783991
+0.266929 0.958488
+0.292978 0.263741
+0.270216 0.468433
+0.929105 0.712095
+0.927807 0.711643
+0.929613 0.676071
+0.930001 0.676079
+0.083828 0.263737
+0.066564 0.263740
+0.862025 0.711237
+0.862025 0.674929
+0.863179 0.674932
+0.863179 0.711086
+0.864334 0.711237
+0.864334 0.674929
+0.861659 0.635952
+0.860361 0.635501
+0.862167 0.599192
+0.862555 0.599184
+0.926636 0.638747
+0.926631 0.712697
+0.924855 0.712697
+0.924855 0.638747
+0.866803 0.712095
+0.865505 0.711643
+0.867311 0.676071
+0.867699 0.676079
+0.858544 0.639357
+0.859699 0.639507
+0.859699 0.674932
+0.858544 0.674929
+0.114597 0.470609
+0.115008 0.477621
+0.115522 0.438304
+0.115008 0.463597
+0.162474 0.470609
+0.162474 0.478258
+0.162474 0.499867
+0.163912 0.437138
+0.162474 0.462959
+0.242068 0.470609
+0.241658 0.477621
+0.194191 0.478258
+0.194191 0.470609
+0.242581 0.499200
+0.194191 0.499867
+0.244020 0.438304
+0.241658 0.463597
+0.194191 0.462959
+0.195629 0.437138
+0.114597 0.781649
+0.115008 0.788719
+0.105538 0.802733
+0.115008 0.774579
+0.162474 0.781649
+0.162474 0.789362
+0.149534 0.803794
+0.162474 0.752590
+0.162474 0.773937
+0.242068 0.781649
+0.241658 0.788719
+0.194191 0.789362
+0.194191 0.781649
+0.222366 0.802733
+0.178370 0.803794
+0.242581 0.753757
+0.241658 0.774579
+0.194191 0.773937
+0.194191 0.752590
+0.115214 0.263735
+0.271654 0.263737
+0.244327 0.263735
+0.857133 0.637251
+0.858800 0.637251
+0.856936 0.640506
+0.857300 0.640369
+0.857278 0.642144
+0.856909 0.642173
+0.836537 0.724862
+0.835803 0.725221
+0.835803 0.723043
+0.836537 0.723186
+0.838626 0.723469
+0.838035 0.723105
+0.838035 0.721429
+0.838626 0.721292
+0.939418 0.636554
+0.939783 0.637251
+0.938630 0.637251
+0.938353 0.636554
+0.854427 0.639866
+0.855260 0.639088
+0.855841 0.640919
+0.853594 0.640643
+0.854747 0.641332
+0.855800 0.642260
+0.854692 0.642346
+0.855782 0.562566
+0.855787 0.561975
+0.857133 0.561975
+0.855693 0.643520
+0.854706 0.643505
+0.853719 0.643491
+0.811216 0.642260
+0.810107 0.642173
+0.810080 0.640506
+0.811175 0.640919
+0.812269 0.641332
+0.812589 0.639866
+0.813422 0.640643
+0.811756 0.639088
+0.857301 0.645670
+0.856157 0.645655
+0.855013 0.645640
+0.857373 0.699722
+0.856218 0.699564
+0.855064 0.699722
+0.832922 0.699722
+0.831768 0.699564
+0.831706 0.645655
+0.832850 0.645670
+0.830613 0.699722
+0.830563 0.645640
+0.921324 0.638747
+0.866803 0.639311
+0.867278 0.638163
+0.921329 0.638013
+0.835248 0.701336
+0.834393 0.700947
+0.834094 0.699722
+0.835248 0.699564
+0.836403 0.699722
+0.836103 0.700947
+0.860361 0.563620
+0.860908 0.562597
+0.862133 0.562126
+0.861659 0.563169
+0.983667 0.712697
+0.983662 0.713288
+0.929580 0.713138
+0.834557 0.642173
+0.834188 0.642144
+0.834166 0.640369
+0.834531 0.640506
+0.936086 0.561975
+0.935903 0.562566
+0.932030 0.562566
+0.932075 0.561975
+0.938630 0.561975
+0.939783 0.561975
+0.939418 0.562566
+0.938353 0.562566
+0.919509 0.561975
+0.919480 0.562566
+0.918369 0.562566
+0.918364 0.561975
+0.867278 0.713138
+0.866053 0.712667
+0.859699 0.638013
+0.858843 0.638333
+0.916221 0.562566
+0.916215 0.561975
+0.076671 0.958488
+0.060975 0.958488
+0.105258 0.958488
+0.222646 0.958488
+0.862025 0.639357
+0.863179 0.639507
+0.864334 0.639357
+0.835803 0.702098
+0.836537 0.702457
+0.921756 0.637251
+0.922120 0.636554
+0.919509 0.637251
+0.919480 0.636554
+0.920386 0.636554
+0.920523 0.637251
+0.836537 0.720070
+0.835803 0.720253
+0.835803 0.715279
+0.836537 0.715234
+0.936086 0.637251
+0.935903 0.636554
+0.923475 0.638747
+0.923480 0.638013
+0.924826 0.638013
+0.865505 0.639763
+0.863179 0.712686
+0.862324 0.712338
+0.864034 0.712338
+0.858544 0.711237
+0.859699 0.711086
+0.862133 0.637100
+0.860908 0.636602
+0.835666 0.642260
+0.835625 0.640919
+0.836775 0.642346
+0.836720 0.641332
+0.837039 0.639866
+0.836207 0.639088
+0.840417 0.640152
+0.837872 0.640643
+0.835929 0.638829
+0.921756 0.561975
+0.922120 0.562566
+0.926493 0.638013
+0.830241 0.642346
+0.830296 0.641332
+0.831391 0.640919
+0.831350 0.642260
+0.832458 0.642173
+0.832485 0.640506
+0.830809 0.639088
+0.829976 0.639866
+0.829144 0.640643
+0.837084 0.641469
+0.837144 0.642375
+0.826599 0.640152
+0.932075 0.637251
+0.932030 0.636554
+0.838626 0.718495
+0.838035 0.718313
+0.838035 0.713477
+0.838626 0.713522
+0.851597 0.639265
+0.852144 0.638377
+0.851050 0.640152
+0.814872 0.638377
+0.815419 0.639265
+0.815966 0.640152
+0.923480 0.713288
+0.923475 0.712697
+0.924826 0.713288
+0.831243 0.643520
+0.830256 0.643505
+0.829269 0.643491
+0.918364 0.637251
+0.918369 0.636554
+0.856218 0.701336
+0.855363 0.700947
+0.857073 0.700947
+0.831768 0.701336
+0.830912 0.700947
+0.832623 0.700947
+0.866053 0.638662
+0.863179 0.638013
+0.864034 0.638333
+0.862324 0.638333
+0.921324 0.712697
+0.921329 0.713288
+0.836760 0.643505
+0.837747 0.643491
+0.836453 0.645640
+0.835310 0.645655
+0.834166 0.645670
+0.835773 0.643520
+0.859699 0.712686
+0.858843 0.712338
+0.916215 0.637251
+0.916221 0.636554
+0.928355 0.712667
+0.844427 0.639868
+0.822589 0.639868
+0.847308 0.638013
+0.847174 0.638940
+0.847039 0.639868
+0.855248 0.730359
+0.855212 0.724067
+0.872896 0.723707
+0.874657 0.730356
+0.819977 0.639868
+0.819842 0.638940
+0.920386 0.562566
+0.163912 0.263735
+0.195629 0.263735
+0.149534 0.958488
+0.178370 0.958488
+0.268029 0.670718
+0.344946 0.669869
+0.343682 0.619097
+0.819708 0.638013
+0.430691 0.431570
+0.418152 0.463504
+0.986955 0.638013
+0.987970 0.638013
+0.987832 0.638709
+0.986926 0.638709
+0.985815 0.638709
+0.985811 0.638013
+0.812324 0.642346
+0.812309 0.643505
+0.811322 0.643520
+0.813296 0.643491
+0.927807 0.639763
+0.929105 0.639311
+0.928355 0.638662
+0.929580 0.638163
+0.811653 0.700947
+0.810798 0.701336
+0.810798 0.699564
+0.811952 0.699722
+0.985811 0.713288
+0.985815 0.712697
+0.986926 0.712697
+0.986955 0.713288
+0.854382 0.641469
+0.854322 0.642375
+0.344946 0.567265
+0.268029 0.566416
+0.987832 0.712697
+0.983667 0.638709
+0.983662 0.638013
+0.810859 0.645655
+0.812003 0.645640
+0.860554 0.638333
+0.860853 0.639357
+0.593453 0.571670
+0.619567 0.588389
+0.651049 0.596666
+0.684453 0.591948
+0.685175 0.593040
+0.713331 0.571067
+0.714756 0.571762
+0.734241 0.541223
+0.481860 0.573586
+0.515050 0.573753
+0.543932 0.564919
+0.571796 0.545350
+0.799110 0.563169
+0.797812 0.563620
+0.798360 0.562597
+0.799585 0.562126
+0.650777 0.597898
+0.619525 0.590257
+0.875998 0.982595
+0.450136 0.559998
+0.414938 0.498261
+0.427462 0.532087
+0.425585 0.533184
+0.448801 0.561757
+0.481724 0.575753
+0.515414 0.575941
+0.544778 0.566959
+0.570986 0.548312
+0.592009 0.572619
+0.855787 0.637251
+0.855782 0.636554
+0.452164 0.400241
+0.476568 0.378532
+0.477871 0.380311
+0.453044 0.402502
+0.506157 0.361981
+0.505049 0.360074
+0.596278 0.304486
+0.604185 0.291661
+0.583517 0.315365
+0.594518 0.303181
+0.584904 0.317085
+0.563079 0.330925
+0.561990 0.329006
+0.535688 0.345668
+0.534665 0.343712
+0.428011 0.432132
+0.416046 0.462964
+0.412766 0.498544
+0.853636 0.561975
+0.853631 0.562566
+0.853631 0.636554
+0.328244 0.988645
+0.656363 0.362341
+0.680859 0.386151
+0.633990 0.340985
+0.616599 0.321889
+0.610727 0.306393
+0.618447 0.321174
+0.608619 0.306542
+0.604445 0.288083
+0.809715 0.645670
+0.809942 0.700947
+0.809643 0.699722
+0.853636 0.637251
+0.328244 0.245312
+0.860554 0.712338
+0.860853 0.711237
+0.735163 0.472145
+0.739635 0.507345
+0.721538 0.439677
+0.703017 0.411025
+0.860853 0.674929
+0.867423 0.620807
+0.736541 0.540242
+0.741740 0.506855
+0.737221 0.471218
+0.723435 0.438491
+0.704730 0.409685
+0.799964 0.599179
+0.799618 0.599192
+0.635590 0.339889
+0.657881 0.361048
+0.799110 0.635952
+0.797812 0.635501
+0.799585 0.637100
+0.798360 0.636602
+0.682982 0.385487
+0.875998 0.251363
+0.718529 0.850373
+0.718529 0.853203
+0.718411 0.853203
+0.718411 0.850373
+0.718294 0.850373
+0.718294 0.853203
+0.718764 0.850373
+0.718764 0.853203
+0.718647 0.853203
+0.718647 0.850373
+0.718999 0.850373
+0.718999 0.853203
+0.718882 0.853203
+0.718882 0.850373
+0.719235 0.850373
+0.719235 0.853203
+0.719117 0.853203
+0.719117 0.850373
+0.719470 0.850373
+0.719470 0.853203
+0.719352 0.853203
+0.719352 0.850373
+0.719705 0.850373
+0.719705 0.853203
+0.719587 0.853203
+0.719587 0.850373
+0.719940 0.850373
+0.719940 0.853203
+0.719823 0.853203
+0.719823 0.850373
+0.720175 0.850373
+0.720175 0.853203
+0.720058 0.853203
+0.720058 0.850373
+0.719650 0.855375
+0.719235 0.855548
+0.719235 0.854353
+0.720066 0.855203
+0.718819 0.855375
+0.718403 0.855203
+0.718231 0.854787
+0.718059 0.854372
+0.718231 0.853956
+0.718403 0.853540
+0.718819 0.853368
+0.719235 0.853196
+0.719650 0.853368
+0.720066 0.853540
+0.720238 0.853956
+0.720411 0.854372
+0.720238 0.854787
+0.718529 0.850373
+0.718529 0.853203
+0.718411 0.853203
+0.718411 0.850373
+0.718294 0.850373
+0.718294 0.853203
+0.718764 0.850373
+0.718764 0.853203
+0.718647 0.853203
+0.718647 0.850373
+0.718999 0.850373
+0.718999 0.853203
+0.718882 0.853203
+0.718882 0.850373
+0.719235 0.850373
+0.719235 0.853203
+0.719117 0.853203
+0.719117 0.850373
+0.719470 0.850373
+0.719470 0.853203
+0.719352 0.853203
+0.719352 0.850373
+0.719705 0.850373
+0.719705 0.853203
+0.719587 0.853203
+0.719587 0.850373
+0.719940 0.850373
+0.719940 0.853203
+0.719823 0.853203
+0.719823 0.850373
+0.720175 0.850373
+0.720175 0.853203
+0.720058 0.853203
+0.720058 0.850373
+0.719650 0.855375
+0.719235 0.855548
+0.719235 0.854353
+0.720066 0.855203
+0.718819 0.855375
+0.718403 0.855203
+0.718231 0.854787
+0.718059 0.854372
+0.718231 0.853956
+0.718403 0.853540
+0.718819 0.853368
+0.719235 0.853196
+0.719650 0.853368
+0.720066 0.853540
+0.720238 0.853956
+0.720411 0.854372
+0.720238 0.854787
+0.718529 0.850373
+0.718529 0.853203
+0.718411 0.853203
+0.718411 0.850373
+0.718294 0.850373
+0.718294 0.853203
+0.718764 0.850373
+0.718764 0.853203
+0.718647 0.853203
+0.718647 0.850373
+0.718999 0.850373
+0.718999 0.853203
+0.718882 0.853203
+0.718882 0.850373
+0.719235 0.850373
+0.719235 0.853203
+0.719117 0.853203
+0.719117 0.850373
+0.719470 0.850373
+0.719470 0.853203
+0.719352 0.853203
+0.719352 0.850373
+0.719705 0.850373
+0.719705 0.853203
+0.719587 0.853203
+0.719587 0.850373
+0.719940 0.850373
+0.719940 0.853203
+0.719823 0.853203
+0.719823 0.850373
+0.720175 0.850373
+0.720175 0.853203
+0.720058 0.853203
+0.720058 0.850373
+0.719650 0.855375
+0.719235 0.855548
+0.719235 0.854353
+0.720066 0.855203
+0.718819 0.855375
+0.718403 0.855203
+0.718231 0.854787
+0.718059 0.854372
+0.718231 0.853956
+0.718403 0.853540
+0.718819 0.853368
+0.719235 0.853196
+0.719650 0.853368
+0.720066 0.853540
+0.720238 0.853956
+0.720411 0.854372
+0.720238 0.854787
+0.718529 0.850373
+0.718529 0.853203
+0.718411 0.853203
+0.718411 0.850373
+0.718294 0.850373
+0.718294 0.853203
+0.718764 0.850373
+0.718764 0.853203
+0.718647 0.853203
+0.718647 0.850373
+0.718999 0.850373
+0.718999 0.853203
+0.718882 0.853203
+0.718882 0.850373
+0.719235 0.850373
+0.719235 0.853203
+0.719117 0.853203
+0.719117 0.850373
+0.719470 0.850373
+0.719470 0.853203
+0.719352 0.853203
+0.719352 0.850373
+0.719705 0.850373
+0.719705 0.853203
+0.719587 0.853203
+0.719587 0.850373
+0.719940 0.850373
+0.719940 0.853203
+0.719823 0.853203
+0.719823 0.850373
+0.720175 0.850373
+0.720175 0.853203
+0.720058 0.853203
+0.720058 0.850373
+0.719650 0.855375
+0.719235 0.855548
+0.719235 0.854353
+0.720066 0.855203
+0.718819 0.855375
+0.718403 0.855203
+0.718231 0.854787
+0.718059 0.854372
+0.718231 0.853956
+0.718403 0.853540
+0.718819 0.853368
+0.719235 0.853196
+0.719650 0.853368
+0.720066 0.853540
+0.720238 0.853956
+0.720411 0.854372
+0.720238 0.854787
+0.094943 0.120840
+0.094943 0.066940
+0.094943 0.069806
+0.094943 0.120840
+0.094943 0.012439
+0.094943 0.018172
+0.905057 0.069806
+0.905057 0.018172
+0.905057 0.120840
+0.905057 0.012439
+0.905057 0.066940
+0.905057 0.120840
+0.094943 0.226489
+0.094943 0.226485
+0.094943 0.173541
+0.094943 0.170674
+0.905057 0.170674
+0.905057 0.226489
+0.905057 0.173541
+0.905057 0.226485
+</float_array>
+          <technique_common>
+            <accessor source="#Album_Cute-UV0-array" count="1147" stride="2">
+              <param name="S" type="float"/>
+              <param name="T" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <vertices id="Album_Cute-VERTEX">
+          <input semantic="POSITION" source="#Album_Cute-POSITION"/>
+        </vertices>
+        <triangles count="1454" material="Album_Texture">
+          <input semantic="VERTEX" offset="0" source="#Album_Cute-VERTEX"/>
+          <input semantic="NORMAL" offset="1" source="#Album_Cute-Normal0"/>
+          <input semantic="TEXCOORD" offset="2" set="0" source="#Album_Cute-UV0"/>
+          <p> 111 0 1 47 1 2 114 2 4 47 3 2 3 4 3 114 5 4 111 6 1 0 7 5 45 8 0 0 9 5 111 10 1 114 11 4 2 12 6 4 13 8 124 14 9 2 15 6 124 16 9 57 17 7 108 18 16 22 19 18 78 20 19 22 21 18 108 22 16 38 23 17 1 24 20 108 25 16 78 26 19 108 27 16 1 28 20 36 29 15 112 30 29 20 31 31 75 32 32 20 33 31 112 34 29 50 35 30 112 36 29 16 37 33 48 38 28 16 39 33 112 40 29 75 41 32 34 42 35 39 43 207 84 44 34 84 45 34 39 46 207 117 47 36 117 48 36 35 49 38 84 50 34 35 51 38 117 52 36 40 53 37 14 54 209 151 55 40 115 56 39 151 57 40 14 58 209 171 59 208 34 60 35 151 61 40 171 62 208 151 63 40 34 64 35 84 65 34 151 66 40 35 67 38 83 68 41 35 69 38 151 70 40 84 71 34 15 72 42 151 73 40 83 74 41 151 75 40 15 76 42 115 77 39 49 78 44 120 79 45 85 80 43 49 81 44 85 82 43 18 83 24 120 84 45 21 85 47 85 86 43 21 87 47 120 88 45 46 89 46 3 90 49 152 91 51 114 92 48 152 93 51 3 94 49 81 95 50 18 96 24 152 97 51 81 98 50 152 99 51 18 100 24 85 101 43 152 102 51 21 103 47 77 104 52 21 105 47 152 106 51 85 107 43 0 108 53 152 109 51 77 110 52 152 111 51 0 112 53 114 113 48 86 114 56 10 115 54 8 116 55 10 117 54 86 118 56 157 119 86 157 120 86 86 121 56 29 122 57 29 123 57 30 124 85 157 125 86 153 126 60 29 127 57 86 128 56 29 129 57 153 130 60 28 131 58 153 132 60 86 133 56 87 134 59 87 135 59 86 136 56 8 137 55 127 138 61 153 139 60 87 140 59 153 141 60 127 142 61 173 143 62 122 144 231 28 145 58 173 146 62 153 147 60 173 148 62 28 149 58 51 150 63 52 151 64 5 152 66 52 153 64 7 154 65 5 155 66 53 156 67 154 157 68 91 158 69 53 159 67 91 160 69 88 161 70 31 162 73 156 163 78 90 164 72 156 165 78 31 166 73 25 167 71 88 168 243 155 169 75 176 170 242 155 171 75 88 172 243 91 173 74 25 174 71 31 175 73 176 176 242 25 177 71 176 178 242 155 179 75 92 180 76 26 181 90 96 182 91 26 183 90 92 184 76 27 185 77 92 186 76 156 187 78 25 188 71 92 189 76 25 190 71 27 191 77 8 192 82 164 193 80 87 194 81 164 195 80 8 196 82 94 197 79 27 198 77 155 199 75 93 200 83 155 201 75 27 202 77 25 203 71 93 204 83 155 205 75 91 206 74 93 207 83 91 208 74 9 209 84 30 210 85 158 211 88 157 212 86 158 213 88 30 214 85 95 215 87 157 216 86 158 217 88 99 218 89 157 219 86 99 220 89 10 221 54 11 222 92 93 223 83 9 224 84 93 225 83 11 226 92 187 227 287 26 228 90 27 229 77 187 230 287 187 231 287 27 232 77 93 233 83 55 234 95 54 235 93 73 236 94 54 237 93 55 238 95 13 239 96 97 240 98 185 241 269 12 242 97 185 243 269 97 244 98 159 245 99 158 246 88 159 247 99 97 248 98 97 249 98 99 250 89 158 251 88 159 252 99 95 253 87 98 254 100 95 255 87 159 256 99 158 257 88 159 258 99 33 259 101 185 260 269 33 261 101 159 262 99 98 263 100 33 264 101 39 265 129 34 266 103 39 267 129 33 268 101 44 269 102 26 270 90 102 271 104 96 272 91 101 273 105 96 274 91 102 275 104 103 276 107 160 277 108 104 278 106 103 279 107 104 280 106 100 281 109 160 282 108 101 283 105 104 284 106 101 285 105 102 286 104 104 287 106 150 288 113 161 289 110 13 290 111 150 291 113 13 292 111 55 293 112 56 294 12 161 295 110 150 296 113 161 297 110 56 298 12 100 299 109 124 300 9 63 301 117 57 302 7 57 303 7 63 304 117 59 305 116 115 306 119 141 307 278 14 308 279 141 309 278 115 310 119 116 311 118 15 312 120 116 313 118 115 314 119 116 315 118 15 316 120 37 317 121 36 318 15 133 319 122 108 320 16 108 321 16 133 322 122 162 323 123 162 324 123 67 325 124 135 326 125 67 327 124 162 328 123 133 329 122 162 330 123 135 331 125 134 332 127 134 333 127 135 334 125 68 335 126 38 336 17 162 337 123 134 338 127 162 339 123 38 340 17 108 341 16 109 342 130 15 343 132 83 344 133 15 345 132 109 346 130 37 347 131 35 348 134 109 349 130 83 350 133 109 351 130 35 352 134 40 353 135 39 354 207 163 355 136 117 356 36 163 357 136 39 358 207 69 359 137 69 360 137 136 361 138 163 362 136 163 363 136 136 364 138 106 365 140 106 366 140 136 367 138 62 368 139 163 369 136 40 370 37 117 371 36 40 372 37 163 373 136 106 374 140 79 375 143 58 376 142 23 377 23 58 378 142 79 379 143 118 380 141 22 381 144 118 382 141 79 383 143 118 384 141 22 385 144 38 386 145 128 387 246 65 388 146 64 389 147 65 390 146 128 391 246 89 392 245 87 393 151 89 394 148 127 395 150 89 396 148 87 397 151 164 398 149 122 399 231 165 400 153 28 401 58 165 402 153 122 403 231 177 404 254 30 405 85 41 406 152 42 407 154 41 408 152 30 409 85 29 410 57 28 411 58 41 412 152 29 413 57 41 414 152 28 415 58 165 416 153 39 417 129 110 418 155 69 419 163 110 420 155 39 421 129 44 422 102 95 423 87 30 424 85 42 425 154 95 426 87 42 427 154 43 428 156 98 429 100 44 430 102 33 431 101 44 432 102 98 433 100 166 434 157 95 435 87 43 436 156 98 437 100 98 438 100 43 439 156 166 440 157 137 441 160 73 442 10 142 443 280 73 444 10 137 445 160 119 446 159 137 447 160 48 448 162 119 449 159 48 450 162 137 451 160 60 452 161 138 453 165 112 454 29 60 455 164 60 456 164 112 457 29 48 458 28 112 459 29 138 460 165 62 461 166 62 462 166 50 463 30 112 464 29 139 465 168 49 466 44 61 467 167 49 468 44 139 469 168 120 470 45 139 471 168 46 472 46 120 473 45 46 474 46 139 475 168 68 476 169 63 477 170 52 478 64 51 479 63 52 480 64 63 481 170 64 482 171 167 483 172 154 484 68 65 485 173 65 486 173 154 487 68 53 488 67 132 489 174 96 490 91 71 491 261 96 492 91 132 493 174 92 494 76 168 495 175 160 496 108 110 497 155 110 498 155 160 499 108 103 500 107 160 501 108 168 502 175 131 503 176 131 504 176 101 505 105 160 506 108 5 507 179 3 508 180 51 509 178 47 510 177 51 511 178 3 512 180 113 513 181 0 514 183 77 515 184 0 516 183 113 517 181 45 518 182 113 519 181 21 520 47 46 521 185 21 522 47 113 523 181 77 524 184 121 525 187 82 526 218 76 527 189 82 528 218 56 529 188 76 530 189 121 531 187 20 532 190 50 533 191 20 534 190 121 535 187 76 536 189 53 537 192 7 538 194 52 539 195 7 540 194 53 541 192 88 542 193 82 543 27 103 544 107 100 545 109 82 546 27 100 547 109 56 548 12 119 549 159 16 550 196 74 551 197 16 552 196 119 553 159 48 554 162 73 555 10 119 556 159 74 557 197 73 558 10 74 559 197 55 560 11 55 561 13 169 562 199 150 563 14 169 564 199 55 565 13 74 566 198 169 567 199 16 568 200 75 569 201 16 570 200 169 571 199 74 572 198 20 573 31 169 574 199 75 575 201 169 576 199 20 577 31 76 578 202 56 579 12 169 580 199 76 581 202 169 582 199 56 583 12 150 584 14 2 585 21 170 586 204 80 587 22 170 588 204 2 589 21 72 590 203 170 591 204 1 592 205 78 593 206 1 594 205 170 595 204 72 596 203 22 597 144 170 598 204 78 599 206 170 600 204 22 601 144 79 602 143 23 603 23 170 604 204 79 605 143 170 606 204 23 607 23 80 608 22 107 609 210 1 610 212 72 611 213 1 612 212 107 613 210 36 614 211 2 615 115 57 616 114 72 617 213 72 618 213 57 619 114 107 620 210 59 621 158 140 622 214 172 623 215 172 624 215 140 625 214 133 626 217 133 627 217 140 628 214 67 629 216 172 630 215 36 631 211 107 632 210 36 633 211 172 634 215 133 635 217 57 636 114 172 637 215 107 638 210 172 639 215 57 640 114 59 641 158 4 642 220 80 643 221 174 644 219 80 645 221 4 646 220 2 647 222 174 648 219 23 649 26 17 650 223 23 651 26 174 652 219 80 653 221 5 654 226 81 655 225 3 656 224 81 657 225 5 658 226 175 659 227 24 660 228 18 661 24 175 662 227 81 663 225 175 664 227 18 665 24 173 666 232 123 667 229 122 668 231 123 669 229 19 670 230 122 671 231 6 672 234 173 673 232 127 674 233 173 675 232 6 676 234 123 677 229 123 678 229 17 679 223 19 680 230 17 681 223 123 682 229 174 683 235 6 684 234 174 685 235 123 686 229 174 687 235 6 688 234 4 689 236 175 690 239 126 691 237 24 692 228 126 693 237 32 694 238 24 695 228 7 696 241 175 697 239 5 698 240 175 699 239 7 700 241 126 701 237 126 702 237 31 703 73 32 704 238 31 705 73 126 706 237 176 707 242 7 708 241 176 709 242 126 710 237 176 711 242 7 712 241 88 713 243 6 714 247 89 715 245 128 716 246 89 717 245 6 718 247 127 719 244 90 720 72 125 721 248 31 722 73 125 723 248 32 724 238 31 725 73 6 726 252 128 727 249 4 728 251 4 729 251 128 730 249 124 731 250 23 732 26 180 733 259 17 734 223 180 735 259 23 736 26 58 737 25 19 738 230 129 739 253 122 740 231 122 741 231 129 742 253 177 743 254 130 744 255 61 745 128 49 746 186 130 747 255 49 748 186 179 749 258 129 750 253 70 751 256 177 752 254 177 753 254 70 754 256 178 755 257 179 756 258 49 757 186 18 758 24 179 759 258 18 760 24 24 761 228 179 762 258 32 763 238 125 764 248 32 765 238 179 766 258 24 767 228 180 768 259 70 769 256 129 770 253 70 771 256 180 772 259 130 773 255 19 774 230 180 775 259 129 776 253 180 777 259 19 778 230 17 779 223 156 780 78 181 781 260 178 782 257 178 783 257 90 784 72 156 785 78 181 786 260 92 787 76 132 788 174 92 789 76 181 790 260 156 791 78 131 792 176 71 793 261 101 794 105 71 795 261 96 796 91 101 797 105 178 798 257 165 799 153 177 800 254 165 801 153 178 802 257 181 803 260 41 804 152 181 805 260 132 806 174 181 807 260 41 808 152 165 809 153 42 810 154 71 811 261 43 812 156 43 813 156 71 814 261 131 815 176 59 816 116 63 817 117 47 818 177 63 819 117 51 820 178 47 821 177 113 822 181 135 823 125 67 824 124 67 825 124 45 826 182 113 827 181 135 828 125 46 829 185 68 830 126 46 831 185 135 832 125 113 833 181 136 834 138 82 835 218 121 836 187 82 837 218 136 838 138 69 839 137 136 840 138 50 841 191 62 842 139 50 843 191 136 844 138 121 845 187 65 846 146 52 847 195 64 848 147 52 849 195 65 850 146 53 851 192 110 852 155 82 853 27 69 854 163 82 855 27 110 856 155 103 857 107 137 858 160 142 859 280 182 860 262 141 861 278 182 862 262 142 863 280 182 864 262 141 865 278 116 866 118 37 867 121 182 868 262 116 869 118 182 870 262 37 871 121 105 872 263 137 873 160 182 874 262 105 875 263 105 876 263 60 877 161 137 878 160 183 879 265 138 880 165 105 881 264 105 882 264 138 883 165 60 884 164 37 885 131 183 886 265 105 887 264 183 888 265 37 889 131 109 890 130 40 891 135 183 892 265 109 893 130 183 894 265 40 895 135 106 896 266 138 897 165 183 898 265 106 899 266 106 900 266 62 901 166 138 902 165 139 903 168 61 904 167 184 905 267 58 906 142 184 907 267 61 908 167 184 909 267 58 910 142 118 911 141 38 912 145 184 913 267 118 914 141 184 915 267 38 916 145 134 917 268 139 918 168 184 919 267 134 920 268 134 921 268 68 922 169 139 923 168 128 924 249 63 925 170 124 926 250 63 927 170 128 928 249 64 929 171 164 930 149 65 931 173 89 932 148 65 933 173 164 934 149 167 935 172 166 936 157 110 937 155 44 938 102 110 939 155 166 940 157 168 941 175 43 942 156 131 943 176 166 944 157 166 945 157 131 946 176 168 947 175 140 948 214 47 949 2 111 950 1 47 951 2 140 952 214 59 953 158 140 954 214 45 955 0 67 956 216 45 957 0 140 958 214 111 959 1 58 960 25 130 961 255 180 962 259 130 963 255 58 964 25 61 965 128 90 966 72 178 967 257 70 968 256 70 969 256 125 970 248 90 971 72 130 972 255 179 973 258 70 974 256 70 975 256 179 976 258 125 977 248 42 978 154 132 979 174 71 980 261 132 981 174 42 982 154 41 983 152 185 984 269 34 985 103 171 986 270 34 987 103 185 988 269 33 989 101 12 990 97 171 991 270 14 992 271 171 993 270 12 994 97 185 995 269 14 996 275 186 997 273 12 998 274 186 999 273 14 1000 275 141 1001 272 66 1002 277 73 1003 94 54 1004 93 73 1005 94 66 1006 277 142 1007 276 141 1008 272 66 1009 277 186 1010 273 66 1011 277 141 1012 272 142 1013 276 94 1014 79 143 1015 282 164 1016 80 164 1017 80 143 1018 282 167 1019 281 9 1020 285 154 1021 283 144 1022 284 154 1023 283 9 1024 285 91 1025 286 167 1026 281 143 1027 282 154 1028 283 143 1029 282 144 1030 284 154 1031 283 188 1032 288 100 1033 109 104 1034 106 100 1035 109 188 1036 288 161 1037 110 188 1038 288 102 1039 104 189 1040 289 102 1041 104 188 1042 288 104 1043 106 145 1044 291 189 1045 289 146 1046 290 189 1047 289 145 1048 291 188 1049 288 161 1050 110 188 1051 288 145 1052 291 145 1053 291 13 1054 111 161 1055 110 189 1056 293 187 1057 287 146 1058 292 146 1059 292 187 1060 287 11 1061 92 189 1062 293 26 1063 90 187 1064 287 26 1065 90 189 1066 293 102 1067 104 190 1068 296 13 1069 294 145 1070 295 13 1071 294 190 1072 296 54 1073 299 190 1074 296 146 1075 297 193 1076 298 146 1077 297 190 1078 296 145 1079 295 147 1080 303 8 1081 301 10 1082 302 8 1083 301 147 1084 303 94 1085 300 10 1086 306 191 1087 305 147 1088 304 191 1089 305 10 1090 306 99 1091 307 192 1092 309 99 1093 311 97 1094 312 99 1095 311 192 1096 309 191 1097 310 12 1098 313 192 1099 309 97 1100 312 192 1101 309 12 1102 313 186 1103 308 193 1104 315 11 1105 317 148 1106 314 11 1107 317 193 1108 315 146 1109 316 147 1110 303 143 1111 319 94 1112 300 143 1113 319 147 1114 303 149 1115 318 190 1116 296 194 1117 321 66 1118 322 66 1119 322 54 1120 299 190 1121 296 194 1122 321 190 1123 296 195 1124 320 195 1125 320 190 1126 296 193 1127 298 11 1128 324 9 1129 325 148 1130 323 144 1131 326 148 1132 323 9 1133 325 143 1134 319 148 1135 323 144 1136 326 148 1137 323 143 1138 319 149 1139 327 191 1140 310 194 1141 321 195 1142 320 194 1143 321 191 1144 310 192 1145 309 186 1146 308 66 1147 322 192 1148 309 192 1149 309 66 1150 322 194 1151 321 195 1152 329 148 1153 323 149 1154 327 148 1155 323 195 1156 329 193 1157 328 191 1158 305 149 1159 327 147 1160 304 149 1161 327 191 1162 305 195 1163 330 200 1164 332 239 1165 334 197 1166 331 239 1167 334 200 1168 332 216 1169 333 196 1170 336 216 1171 333 199 1172 335 216 1173 333 196 1174 336 239 1175 334 201 1176 338 240 1177 340 198 1178 337 240 1179 340 201 1180 338 217 1181 339 197 1182 331 217 1183 339 200 1184 332 217 1185 339 197 1186 331 240 1187 340 241 1188 342 200 1189 332 242 1190 341 200 1191 332 241 1192 342 216 1193 333 203 1194 343 241 1195 342 242 1196 341 241 1197 342 203 1198 343 218 1199 344 224 1200 346 218 1201 344 202 1202 345 224 1203 346 241 1204 342 218 1205 344 199 1206 335 216 1207 333 224 1208 346 241 1209 342 224 1210 346 216 1211 333 225 1212 347 243 1213 348 217 1214 339 217 1215 339 201 1216 338 225 1217 347 219 1218 350 225 1219 347 204 1220 349 243 1221 348 225 1222 347 219 1223 350 243 1224 348 203 1225 343 242 1226 341 203 1227 343 243 1228 348 219 1229 350 200 1230 332 243 1231 348 242 1232 341 243 1233 348 200 1234 332 217 1235 339 218 1236 344 203 1237 343 206 1238 351 206 1239 351 205 1240 352 226 1241 353 218 1242 344 206 1243 351 226 1244 353 218 1245 344 226 1246 353 202 1247 345 227 1248 354 219 1249 350 204 1250 349 206 1251 351 219 1252 350 227 1253 354 227 1254 354 207 1255 355 206 1256 356 206 1257 351 203 1258 343 219 1259 350 206 1260 356 208 1261 357 205 1262 352 207 1263 355 209 1264 358 206 1265 356 206 1266 356 211 1267 359 220 1268 360 208 1269 357 206 1270 356 220 1271 360 208 1272 357 220 1273 360 210 1274 361 206 1275 356 209 1276 358 221 1277 363 221 1278 363 209 1279 358 212 1280 362 221 1281 363 211 1282 359 206 1283 356 211 1284 359 244 1285 365 220 1286 360 244 1287 365 211 1288 359 245 1289 364 214 1290 366 244 1291 365 245 1292 364 244 1293 365 214 1294 366 222 1295 367 222 1296 367 213 1297 368 228 1298 369 222 1299 367 228 1300 369 244 1301 365 244 1302 365 228 1303 369 220 1304 360 228 1305 369 210 1306 361 220 1307 360 229 1308 370 246 1309 371 221 1310 363 229 1311 370 221 1312 363 212 1313 362 223 1314 373 229 1315 370 215 1316 372 229 1317 370 223 1318 373 246 1319 371 214 1320 366 246 1321 371 223 1322 373 246 1323 371 214 1324 366 245 1325 364 211 1326 359 246 1327 371 245 1328 364 246 1329 371 211 1330 359 221 1331 363 247 1332 375 214 1333 366 231 1334 374 214 1335 366 247 1336 375 222 1337 367 222 1338 367 247 1339 375 230 1340 376 230 1341 376 213 1342 368 222 1343 367 248 1344 378 215 1345 372 232 1346 377 215 1347 372 248 1348 378 223 1349 373 248 1350 378 231 1351 374 223 1352 373 231 1353 374 214 1354 366 223 1355 373 249 1356 382 215 1357 380 233 1358 381 215 1359 380 249 1360 382 232 1361 379 250 1362 384 233 1363 381 234 1364 383 233 1365 381 250 1366 384 249 1367 382 235 1368 385 251 1369 386 250 1370 384 235 1371 385 250 1372 384 234 1373 383 201 1374 338 251 1375 386 235 1376 385 251 1377 386 201 1378 338 198 1379 337 229 1380 387 252 1381 388 233 1382 381 233 1383 381 215 1384 380 229 1385 387 212 1386 389 209 1387 390 229 1388 387 252 1389 388 229 1390 387 209 1391 390 252 1392 388 253 1393 391 234 1394 383 234 1395 383 233 1396 381 252 1397 388 253 1398 391 252 1399 388 207 1400 392 252 1401 388 209 1402 390 207 1403 392 254 1404 393 234 1405 383 253 1406 391 234 1407 383 254 1408 393 235 1409 385 254 1410 393 207 1411 392 227 1412 394 207 1413 392 254 1414 393 253 1415 391 225 1416 347 227 1417 394 204 1418 349 227 1419 394 225 1420 347 254 1421 393 201 1422 338 235 1423 385 225 1424 347 225 1425 347 235 1426 385 254 1427 393 255 1428 398 236 1429 395 230 1430 397 236 1431 395 213 1432 396 230 1433 397 256 1434 400 237 1435 399 255 1436 398 237 1437 399 236 1438 395 255 1439 398 238 1440 401 196 1441 336 199 1442 335 196 1443 336 238 1444 401 257 1445 402 257 1446 402 237 1447 399 256 1448 400 237 1449 399 257 1450 402 238 1451 401 228 1452 405 258 1453 406 208 1454 403 228 1455 405 208 1456 403 210 1457 404 258 1458 406 228 1459 405 236 1460 395 236 1461 395 228 1462 405 213 1463 396 258 1464 406 259 1465 408 205 1466 407 205 1467 407 208 1468 403 258 1469 406 259 1470 408 258 1471 406 237 1472 399 237 1473 399 258 1474 406 236 1475 395 224 1476 346 238 1477 401 199 1478 335 238 1479 401 224 1480 346 260 1481 409 226 1482 410 224 1483 346 202 1484 345 224 1485 346 226 1486 410 260 1487 409 260 1488 409 205 1489 407 259 1490 408 205 1491 407 260 1492 409 226 1493 410 260 1494 409 237 1495 399 238 1496 401 237 1497 399 260 1498 409 259 1499 408 262 1500 411 263 1501 412 261 1502 413 262 1503 411 261 1504 413 264 1505 414 266 1506 415 265 1507 416 261 1508 413 266 1509 415 261 1510 413 267 1511 417 267 1512 417 261 1513 413 268 1514 418 269 1515 419 268 1516 418 261 1517 413 270 1518 420 269 1519 419 261 1520 413 270 1521 420 261 1522 413 271 1523 421 271 1524 421 261 1525 413 272 1526 422 273 1527 423 272 1528 422 261 1529 413 274 1530 424 273 1531 423 261 1532 413 274 1533 424 261 1534 413 275 1535 425 275 1536 425 261 1537 413 276 1538 426 277 1539 427 276 1540 426 261 1541 413 278 1542 428 277 1543 427 261 1544 413 278 1545 428 261 1546 413 279 1547 429 279 1548 429 261 1549 413 280 1550 430 281 1551 431 280 1552 430 261 1553 413 282 1554 432 281 1555 431 261 1556 413 282 1557 432 261 1558 413 283 1559 433 283 1560 433 261 1561 413 284 1562 434 285 1563 435 284 1564 434 261 1565 413 286 1566 436 285 1567 435 261 1568 413 286 1569 436 261 1570 413 287 1571 437 287 1572 437 261 1573 413 288 1574 438 263 1575 412 288 1576 438 261 1577 413 290 1578 440 262 1579 411 289 1580 439 262 1581 411 290 1582 440 263 1583 412 291 1584 441 289 1585 439 262 1586 411 291 1587 441 262 1588 411 264 1589 414 264 1590 414 261 1591 413 292 1592 442 293 1593 443 292 1594 442 261 1595 413 294 1596 444 293 1597 443 261 1598 413 294 1599 444 261 1600 413 295 1601 445 295 1602 445 261 1603 413 296 1604 446 265 1605 416 296 1606 446 261 1607 413 298 1608 447 297 1609 448 266 1610 415 265 1611 416 266 1612 415 297 1613 448 267 1614 417 298 1615 447 266 1616 415 298 1617 447 267 1618 417 299 1619 449 268 1620 418 299 1621 449 267 1622 417 299 1623 449 268 1624 418 300 1625 450 301 1626 451 300 1627 450 269 1628 419 269 1629 419 300 1630 450 268 1631 418 269 1632 419 270 1633 420 301 1634 451 270 1635 420 302 1636 452 301 1637 451 270 1638 420 271 1639 421 303 1640 453 270 1641 420 303 1642 453 302 1643 452 271 1644 421 272 1645 422 304 1646 454 271 1647 421 304 1648 454 303 1649 453 272 1650 422 273 1651 423 304 1652 454 273 1653 423 305 1654 455 304 1655 454 273 1656 423 306 1657 456 305 1658 455 306 1659 456 273 1660 423 274 1661 424 307 1662 457 306 1663 456 274 1664 424 274 1665 424 275 1666 425 307 1667 457 308 1668 458 307 1669 457 275 1670 425 275 1671 425 276 1672 426 308 1673 458 276 1674 426 277 1675 427 308 1676 458 308 1677 458 277 1678 427 309 1679 459 309 1680 459 277 1681 427 278 1682 428 309 1683 459 278 1684 428 310 1685 460 310 1686 460 278 1687 428 311 1688 461 278 1689 428 279 1690 429 311 1691 461 312 1692 462 311 1693 461 279 1694 429 312 1695 462 279 1696 429 280 1697 430 313 1698 463 280 1699 430 281 1700 431 280 1701 430 313 1702 463 312 1703 462 313 1704 463 281 1705 431 282 1706 432 313 1707 463 282 1708 432 314 1709 464 314 1710 464 282 1711 432 315 1712 465 282 1713 432 283 1714 433 315 1715 465 315 1716 465 284 1717 434 316 1718 466 284 1719 434 315 1720 465 283 1721 433 317 1722 467 284 1723 434 285 1724 435 284 1725 434 317 1726 467 316 1727 466 317 1728 467 286 1729 436 318 1730 468 286 1731 436 317 1732 467 285 1733 435 319 1734 469 318 1735 468 286 1736 436 319 1737 469 286 1738 436 287 1739 437 320 1740 470 319 1741 469 287 1742 437 320 1743 470 287 1744 437 288 1745 438 290 1746 440 288 1747 438 263 1748 412 288 1749 438 290 1750 440 320 1751 470 321 1752 471 264 1753 414 292 1754 442 264 1755 414 321 1756 471 291 1757 441 322 1758 472 292 1759 442 293 1760 443 292 1761 442 322 1762 472 321 1763 471 323 1764 473 293 1765 443 294 1766 444 293 1767 443 323 1768 473 322 1769 472 295 1770 445 323 1771 473 294 1772 444 323 1773 473 295 1774 445 324 1775 474 296 1776 446 324 1777 474 295 1778 445 324 1779 474 296 1780 446 325 1781 475 297 1782 448 325 1783 475 265 1784 416 296 1785 446 265 1786 416 325 1787 475 340 1788 479 328 1789 476 339 1790 478 339 1791 478 328 1792 476 327 1793 477 341 1794 482 330 1795 480 329 1796 481 330 1797 480 341 1798 482 342 1799 483 335 1800 487 332 1801 485 336 1802 486 332 1803 485 335 1804 487 331 1805 484 334 1806 489 337 1807 491 333 1808 488 337 1809 491 334 1810 489 338 1811 490 478 1812 495 343 1813 493 357 1814 494 343 1815 493 478 1816 495 333 1817 492 331 1818 484 483 1819 497 332 1820 485 483 1821 497 331 1822 484 482 1823 496 333 1824 492 532 1825 499 343 1826 493 532 1827 499 333 1828 492 337 1829 498 501 1830 502 344 1831 500 327 1832 501 344 1833 500 501 1834 502 476 1835 503 330 1836 480 504 1837 504 329 1838 481 503 1839 505 329 1840 481 504 1841 504 344 1842 500 533 1843 506 327 1844 501 339 1845 507 327 1846 501 533 1847 506 385 1848 511 346 1849 508 389 1850 510 389 1851 510 346 1852 508 345 1853 509 401 1854 515 350 1855 513 397 1856 514 350 1857 513 401 1858 515 349 1859 512 352 1860 516 351 1861 517 349 1862 518 349 1863 518 348 1864 520 350 1865 519 348 1866 520 349 1867 518 351 1868 517 354 1869 522 355 1870 524 353 1871 521 355 1872 524 354 1873 522 356 1874 523 357 1875 525 346 1876 508 358 1877 526 363 1878 528 364 1879 530 362 1880 527 364 1881 530 363 1882 528 365 1883 529 367 1884 532 364 1885 530 365 1886 529 364 1887 530 367 1888 532 366 1889 531 366 1890 534 369 1891 536 368 1892 533 369 1893 536 366 1894 534 367 1895 535 370 1896 538 506 1897 540 358 1898 537 506 1899 540 370 1900 538 458 1901 539 372 1902 542 373 1903 544 371 1904 541 373 1905 544 372 1906 542 363 1907 543 375 1908 546 356 1909 548 354 1910 545 356 1911 548 375 1912 546 376 1913 547 377 1914 549 378 1915 550 346 1916 508 345 1917 509 346 1918 508 378 1919 550 379 1920 551 380 1921 552 346 1922 508 346 1923 508 380 1924 552 377 1925 549 377 1926 549 531 1927 553 378 1928 550 378 1929 550 531 1930 553 543 1931 554 378 1932 550 534 1933 555 345 1934 509 534 1935 555 378 1936 550 543 1937 554 379 1938 551 542 1939 556 380 1940 552 538 1941 557 380 1942 552 542 1943 556 531 1944 553 380 1945 552 538 1946 557 380 1947 552 531 1948 553 377 1949 549 540 1950 561 382 1951 559 544 1952 560 382 1953 559 540 1954 561 381 1955 558 535 1956 563 382 1957 559 347 1958 562 382 1959 559 535 1960 563 544 1961 560 384 1962 565 541 1963 567 383 1964 564 541 1965 567 384 1966 565 539 1967 566 381 1968 558 540 1969 561 384 1970 565 384 1971 565 540 1972 561 539 1973 566 348 1974 520 382 1975 559 381 1976 558 348 1977 520 347 1978 562 382 1979 559 348 1980 520 384 1981 565 383 1982 564 348 1983 520 381 1984 558 384 1985 565 385 1986 511 386 1987 568 387 1988 569 385 1989 511 387 1990 569 388 1991 570 389 1992 510 390 1993 571 385 1994 511 385 1995 511 390 1996 571 386 1997 568 386 1998 568 530 1999 572 387 2000 569 551 2001 573 387 2002 569 530 2003 572 387 2004 569 550 2005 574 388 2006 570 550 2007 574 387 2008 569 551 2009 573 389 2010 510 549 2011 575 390 2012 571 545 2013 576 390 2014 571 549 2015 575 390 2016 571 530 2017 572 386 2018 568 530 2019 572 390 2020 571 545 2021 576 392 2022 578 547 2023 580 391 2024 577 547 2025 580 392 2026 578 552 2027 579 553 2028 582 392 2029 578 393 2030 581 392 2031 578 553 2032 582 552 2033 579 395 2034 584 548 2035 586 394 2036 583 548 2037 586 395 2038 584 546 2039 585 547 2040 580 395 2041 584 391 2042 577 395 2043 584 547 2044 580 546 2045 585 351 2046 517 392 2047 578 391 2048 577 351 2049 517 393 2050 581 392 2051 578 351 2052 517 395 2053 584 394 2054 583 351 2055 517 391 2056 577 395 2057 584 346 2058 508 357 2059 525 379 2060 551 379 2061 551 357 2062 525 343 2063 587 383 2064 564 396 2065 588 348 2066 520 396 2067 588 383 2068 564 486 2069 589 394 2070 583 348 2071 520 351 2072 517 348 2073 520 394 2074 583 347 2075 562 397 2076 514 399 2077 591 398 2078 590 399 2079 591 397 2080 514 350 2081 513 349 2082 593 401 2083 594 400 2084 592 402 2085 595 400 2086 592 401 2087 594 350 2088 519 348 2089 520 396 2090 588 350 2091 597 396 2092 598 399 2093 596 399 2094 596 396 2095 598 405 2096 599 352 2097 603 400 2098 601 412 2099 602 400 2100 601 352 2101 603 349 2102 600 414 2103 607 409 2104 604 413 2105 606 409 2106 604 408 2107 605 413 2108 606 412 2109 609 417 2110 610 415 2111 608 417 2112 610 412 2113 609 400 2114 592 415 2115 608 418 2116 612 416 2117 611 418 2118 612 415 2119 608 417 2120 610 419 2121 613 418 2122 612 417 2123 610 418 2124 612 419 2125 613 420 2126 614 402 2127 595 417 2128 610 400 2129 592 417 2130 610 402 2131 595 419 2132 613 402 2133 617 404 2134 615 403 2135 616 404 2136 615 402 2137 617 401 2138 515 421 2139 619 419 2140 613 403 2141 618 402 2142 595 403 2143 618 419 2144 613 422 2145 620 420 2146 614 421 2147 619 419 2148 613 421 2149 619 420 2150 614 398 2151 622 426 2152 624 425 2153 621 426 2154 624 398 2155 622 399 2156 623 426 2157 624 427 2158 626 408 2159 625 408 2160 625 427 2161 626 413 2162 627 405 2163 628 426 2164 624 399 2165 623 426 2166 624 405 2167 628 427 2168 626 403 2169 618 439 2170 630 421 2171 619 439 2172 630 403 2173 618 438 2174 629 421 2175 619 441 2176 631 422 2177 620 441 2178 631 421 2179 619 439 2180 630 437 2181 633 438 2182 629 436 2183 632 438 2184 629 437 2185 633 439 2186 630 437 2187 633 441 2188 631 439 2189 630 441 2190 631 437 2191 633 440 2192 634 445 2193 636 496 2194 638 444 2195 635 496 2196 638 445 2197 636 526 2198 637 433 2199 639 527 2200 640 445 2201 636 526 2202 637 445 2203 636 527 2204 640 495 2205 641 446 2206 642 444 2207 643 495 2208 641 444 2209 643 496 2210 644 452 2211 646 450 2212 648 451 2213 645 450 2214 648 452 2215 646 429 2216 647 453 2217 650 450 2218 648 454 2219 649 450 2220 648 453 2221 650 451 2222 645 455 2223 654 453 2224 652 454 2225 653 453 2226 652 455 2227 654 456 2228 651 440 2229 657 457 2230 655 441 2231 656 457 2232 655 440 2233 657 353 2234 521 458 2235 659 460 2236 661 459 2237 658 460 2238 661 458 2239 659 370 2240 660 462 2241 663 555 2242 665 461 2243 662 555 2244 665 462 2245 663 536 2246 664 418 2247 667 463 2248 668 416 2249 666 416 2250 666 463 2251 668 464 2252 669 468 2253 671 469 2254 673 467 2255 670 469 2256 673 468 2257 671 470 2258 672 452 2259 675 371 2260 541 429 2261 674 371 2262 541 452 2263 675 372 2264 542 375 2265 546 473 2266 677 471 2267 676 473 2268 677 375 2269 546 354 2270 545 470 2271 672 475 2272 678 469 2273 673 474 2274 679 469 2275 673 475 2276 678 475 2277 678 454 2278 653 474 2279 679 454 2280 653 475 2281 678 455 2282 654 385 2283 511 476 2284 680 370 2285 681 346 2286 508 370 2287 681 358 2288 526 370 2289 681 346 2290 508 385 2291 511 388 2292 570 344 2293 682 476 2294 680 476 2295 680 385 2296 511 388 2297 570 352 2298 516 393 2299 581 351 2300 517 393 2301 581 352 2302 516 511 2303 683 477 2304 685 363 2305 528 372 2306 684 363 2307 528 477 2308 685 365 2309 529 477 2310 685 367 2311 532 365 2312 529 367 2313 532 477 2314 685 456 2315 686 456 2316 651 369 2317 536 367 2318 535 369 2319 536 456 2320 651 455 2321 654 479 2322 688 357 2323 494 358 2324 687 357 2325 494 479 2326 688 478 2327 495 482 2328 496 481 2329 690 483 2330 497 481 2331 690 482 2332 496 480 2333 689 481 2334 693 484 2335 691 485 2336 692 484 2337 691 481 2338 693 480 2339 694 554 2340 697 487 2341 695 486 2342 696 487 2343 695 554 2344 697 557 2345 698 486 2346 696 405 2347 599 396 2348 598 405 2349 599 486 2350 696 487 2351 695 414 2352 607 488 2353 699 489 2354 700 488 2355 699 414 2356 607 413 2357 606 491 2358 702 507 2359 703 490 2360 701 506 2361 540 490 2362 701 507 2363 703 373 2364 544 362 2365 704 446 2366 642 362 2367 704 373 2368 544 363 2369 543 364 2370 530 493 2371 706 362 2372 527 493 2373 706 364 2374 530 492 2375 705 364 2376 530 494 2377 707 492 2378 705 494 2379 707 364 2380 530 366 2381 531 490 2382 701 496 2383 644 491 2384 702 496 2385 644 490 2386 701 495 2387 641 356 2388 548 497 2389 709 431 2390 708 497 2391 709 356 2392 548 376 2393 547 368 2394 533 494 2395 711 366 2396 534 494 2397 711 368 2398 533 433 2399 710 459 2400 658 499 2401 713 498 2402 712 499 2403 713 459 2404 658 460 2405 661 498 2406 712 500 2407 715 467 2408 714 500 2409 715 498 2410 712 499 2411 713 327 2412 477 502 2413 716 501 2414 717 502 2415 716 327 2416 477 328 2417 476 328 2418 476 503 2419 719 502 2420 716 503 2421 719 328 2422 476 329 2423 718 460 2424 661 501 2425 717 499 2426 713 499 2427 713 501 2428 717 502 2429 716 499 2430 713 502 2431 716 500 2432 715 500 2433 715 502 2434 716 503 2435 719 501 2436 717 460 2437 661 476 2438 720 476 2439 720 460 2440 661 370 2441 660 503 2442 505 505 2443 722 500 2444 721 505 2445 722 503 2446 505 504 2447 504 507 2448 703 479 2449 723 506 2450 540 358 2451 537 506 2452 540 479 2453 723 509 2454 727 480 2455 725 508 2456 726 480 2457 725 509 2458 727 484 2459 724 479 2460 729 507 2461 728 508 2462 726 507 2463 728 509 2464 727 508 2465 726 508 2466 726 510 2467 731 478 2468 730 478 2469 730 479 2470 729 508 2471 726 482 2472 732 510 2473 731 480 2474 725 480 2475 725 510 2476 731 508 2477 726 500 2478 715 505 2479 733 467 2480 714 467 2481 714 505 2482 733 468 2483 734 334 2484 489 482 2485 732 331 2486 735 482 2487 732 334 2488 489 510 2489 731 510 2490 731 334 2491 489 333 2492 488 333 2493 488 478 2494 730 510 2495 731 488 2496 699 560 2497 736 489 2498 700 537 2499 737 489 2500 700 560 2501 736 556 2502 741 512 2503 739 559 2504 740 512 2505 739 556 2506 741 511 2507 738 512 2508 743 415 2509 608 561 2510 742 415 2511 608 512 2512 743 412 2513 609 561 2514 742 416 2515 611 461 2516 744 416 2517 611 561 2518 742 415 2519 608 412 2520 602 511 2521 738 352 2522 603 511 2523 738 412 2524 602 512 2525 739 464 2526 669 461 2527 662 416 2528 666 461 2529 662 464 2530 669 462 2531 663 487 2532 745 427 2533 626 405 2534 628 427 2535 626 487 2536 745 562 2537 746 562 2538 746 413 2539 627 427 2540 626 413 2541 627 562 2542 746 488 2543 747 513 2544 749 459 2545 750 514 2546 748 459 2547 750 513 2548 749 458 2549 539 515 2550 752 509 2551 727 491 2552 751 507 2553 728 491 2554 751 509 2555 727 516 2556 753 484 2557 724 515 2558 752 509 2559 727 515 2560 752 484 2561 724 485 2562 692 516 2563 754 517 2564 755 516 2565 754 485 2566 692 484 2567 691 473 2568 757 437 2569 633 471 2570 756 437 2571 633 473 2572 757 440 2573 634 472 2574 758 437 2575 633 436 2576 632 437 2577 633 472 2578 758 471 2579 756 494 2580 760 445 2581 636 492 2582 759 445 2583 636 494 2584 760 433 2585 639 493 2586 761 445 2587 636 444 2588 635 445 2589 636 493 2590 761 492 2591 759 493 2592 762 446 2593 642 362 2594 704 446 2595 642 493 2596 762 444 2597 643 453 2598 764 477 2599 685 451 2600 763 477 2601 685 453 2602 764 456 2603 686 477 2604 685 452 2605 765 451 2606 763 452 2607 765 477 2608 685 372 2609 684 429 2610 674 518 2611 766 519 2612 767 518 2613 766 429 2614 674 371 2615 541 518 2616 766 513 2617 749 519 2618 767 514 2619 748 519 2620 767 513 2621 749 515 2622 752 527 2623 640 516 2624 753 527 2625 640 515 2626 752 526 2627 637 526 2628 637 515 2629 752 491 2630 751 491 2631 751 496 2632 638 526 2633 637 474 2634 770 524 2635 768 469 2636 769 525 2637 771 524 2638 768 474 2639 770 525 2640 771 514 2641 773 524 2642 768 514 2643 773 525 2644 771 519 2645 772 498 2646 712 514 2647 773 459 2648 658 514 2649 773 498 2650 712 524 2651 768 498 2652 712 467 2653 714 524 2654 768 467 2655 714 469 2656 769 524 2657 768 497 2658 709 435 2659 775 431 2660 708 435 2661 775 497 2662 709 448 2663 774 429 2664 647 519 2665 772 450 2666 648 525 2667 771 450 2668 648 519 2669 772 450 2670 648 474 2671 770 454 2672 649 474 2673 770 450 2674 648 525 2675 771 528 2676 777 516 2677 754 527 2678 776 516 2679 754 528 2680 777 517 2681 755 527 2682 776 433 2683 710 528 2684 777 368 2685 533 528 2686 777 433 2687 710 473 2688 778 353 2689 521 440 2690 657 353 2691 521 473 2692 778 354 2693 522 341 2694 779 329 2695 718 340 2696 479 340 2697 479 329 2698 718 328 2699 476 342 2700 483 332 2701 485 330 2702 480 332 2703 485 342 2704 483 336 2705 486 331 2706 735 338 2707 490 334 2708 489 338 2709 490 331 2710 735 335 2711 780 330 2712 480 483 2713 497 504 2714 504 483 2715 497 330 2716 480 332 2717 485 341 2718 482 536 2719 664 342 2720 483 536 2721 664 341 2722 482 555 2723 665 536 2724 664 537 2725 737 342 2726 483 342 2727 483 537 2728 737 336 2729 486 337 2730 498 557 2731 698 532 2732 499 554 2733 697 532 2734 499 557 2735 698 558 2736 782 339 2737 478 559 2738 781 339 2739 478 558 2740 782 340 2741 479 555 2742 783 341 2743 779 558 2744 782 558 2745 782 341 2746 779 340 2747 479 336 2748 486 560 2749 736 335 2750 487 560 2751 736 336 2752 486 537 2753 737 533 2754 506 559 2755 740 339 2756 507 559 2757 740 533 2758 506 556 2759 741 563 2760 786 337 2761 784 338 2762 785 337 2763 784 563 2764 786 557 2765 787 560 2766 788 338 2767 490 335 2768 780 338 2769 490 560 2770 788 563 2771 789 389 2772 510 345 2773 509 549 2774 575 549 2775 575 345 2776 509 534 2777 555 475 2778 678 369 2779 536 455 2780 654 369 2781 536 475 2782 678 528 2783 777 373 2784 544 518 2785 766 371 2786 541 495 2787 641 373 2788 544 446 2789 642 373 2790 544 495 2791 641 518 2792 766 504 2793 504 483 2794 497 505 2795 722 505 2796 722 483 2797 497 481 2798 690 505 2799 790 481 2800 693 468 2801 671 468 2802 671 481 2803 693 485 2804 692 513 2805 749 506 2806 540 458 2807 539 506 2808 540 513 2809 749 490 2810 701 518 2811 766 490 2812 701 513 2813 749 490 2814 701 518 2815 766 495 2816 641 537 2817 737 536 2818 664 462 2819 663 462 2820 663 489 2821 700 537 2822 737 463 2823 668 409 2824 604 464 2825 669 464 2826 669 409 2827 604 414 2828 607 485 2829 692 470 2830 672 468 2831 671 470 2832 672 485 2833 692 517 2834 755 540 2835 561 538 2836 557 539 2837 566 538 2838 557 540 2839 561 531 2840 553 538 2841 557 541 2842 567 539 2843 566 541 2844 567 538 2845 557 542 2846 556 535 2847 563 534 2848 555 543 2849 554 535 2850 563 543 2851 554 544 2852 560 543 2853 554 540 2854 561 544 2855 560 540 2856 561 543 2857 554 531 2858 553 545 2859 576 547 2860 580 530 2861 572 547 2862 580 545 2863 576 546 2864 585 545 2865 576 548 2866 586 546 2867 585 548 2868 586 545 2869 576 549 2870 575 551 2871 573 552 2872 579 550 2873 574 553 2874 582 550 2875 574 552 2876 579 551 2877 573 547 2878 580 552 2879 579 547 2880 580 551 2881 573 530 2882 572 542 2883 556 343 2884 587 532 2885 791 343 2886 587 542 2887 556 379 2888 551 541 2889 567 486 2890 589 383 2891 564 486 2892 589 541 2893 567 554 2894 792 542 2895 556 554 2896 792 541 2897 567 554 2898 792 542 2899 556 532 2900 791 548 2901 586 347 2902 562 394 2903 583 347 2904 562 548 2905 586 535 2906 563 549 2907 575 535 2908 563 548 2909 586 535 2910 563 549 2911 575 534 2912 555 528 2913 777 368 2914 533 369 2915 536 344 2916 682 550 2917 574 533 2918 793 550 2919 574 344 2920 682 388 2921 570 511 2922 683 553 2923 582 393 2924 581 553 2925 582 511 2926 683 556 2927 794 533 2928 793 553 2929 582 556 2930 794 553 2931 582 533 2932 793 550 2933 574 464 2934 669 489 2935 700 462 2936 663 489 2937 700 464 2938 669 414 2939 607 457 2940 795 353 2941 796 355 2942 797 528 2943 777 475 2944 678 470 2945 672 470 2946 672 517 2947 755 528 2948 777 558 2949 782 561 2950 742 461 2951 744 461 2952 744 555 2953 783 558 2954 782 561 2955 742 559 2956 781 512 2957 743 559 2958 781 561 2959 742 558 2960 782 560 2961 788 488 2962 747 563 2963 789 562 2964 746 563 2965 789 488 2966 747 557 2967 798 562 2968 746 487 2969 745 562 2970 746 557 2971 798 563 2972 789 619 2973 800 321 2974 471 322 2975 472 321 2976 471 619 2977 800 618 2978 799 409 2979 803 411 2980 804 410 2981 801 410 2982 801 408 2983 802 409 2984 803 424 2985 805 423 2986 806 411 2987 804 411 2988 804 423 2989 806 410 2990 801 410 2991 807 425 2992 621 408 2993 625 408 2994 625 425 2995 621 426 2996 624 407 2997 809 398 2998 622 425 2999 621 425 3000 621 428 3001 808 407 3002 809 425 3003 621 410 3004 807 428 3005 808 410 3006 807 423 3007 810 428 3008 808 356 3009 523 431 3010 811 355 3011 524 355 3012 524 431 3013 811 430 3014 812 431 3015 811 435 3016 813 430 3017 812 430 3018 812 435 3019 813 434 3020 814 434 3021 818 435 3022 815 447 3023 817 435 3024 815 448 3025 816 447 3026 817 465 3027 820 466 3028 821 422 3029 819 420 3030 822 422 3031 819 466 3032 821 422 3033 819 441 3034 656 457 3035 655 422 3036 819 457 3037 655 465 3038 820 420 3039 614 463 3040 823 418 3041 612 463 3042 823 420 3043 614 466 3044 824 457 3045 795 355 3046 797 529 3047 826 355 3048 797 430 3049 825 529 3050 826 465 3051 820 411 3052 804 466 3053 821 411 3054 804 465 3055 820 424 3056 805 466 3057 821 411 3058 804 463 3059 827 463 3060 827 411 3061 804 409 3062 803 457 3063 655 424 3064 805 465 3065 820 424 3066 805 457 3067 655 529 3068 828 529 3069 828 430 3070 812 434 3071 814 529 3072 828 434 3073 814 521 3074 829 521 3075 831 434 3076 818 447 3077 817 521 3078 831 447 3079 817 520 3080 830 520 3081 830 428 3082 808 521 3083 831 423 3084 810 521 3085 831 428 3086 808 529 3087 828 423 3088 806 424 3089 805 423 3090 806 529 3091 828 521 3092 829 472 3093 832 375 3094 546 471 3095 676 375 3096 546 472 3097 832 374 3098 833 580 3099 835 301 3100 451 302 3101 452 301 3102 451 580 3103 835 578 3104 834 303 3105 453 580 3106 835 302 3107 452 580 3108 835 303 3109 453 581 3110 836 304 3111 454 581 3112 836 303 3113 453 581 3114 836 304 3115 454 583 3116 837 585 3117 839 584 3118 838 583 3119 837 584 3120 838 585 3121 839 586 3122 840 305 3123 455 583 3124 837 304 3125 454 583 3126 837 305 3127 455 585 3128 839 305 3129 455 588 3130 841 585 3131 839 588 3132 841 305 3133 455 306 3134 456 298 3135 447 571 3136 842 297 3137 448 571 3138 842 298 3139 447 572 3140 843 299 3141 449 572 3142 843 298 3143 447 572 3144 843 299 3145 449 574 3146 844 300 3147 450 574 3148 844 299 3149 449 574 3150 844 300 3151 450 576 3152 845 578 3153 834 576 3154 845 301 3155 451 301 3156 451 576 3157 845 300 3158 450 472 3159 848 436 3160 849 442 3161 846 442 3162 846 374 3163 847 472 3164 848 583 3165 837 582 3166 850 581 3167 836 582 3168 850 583 3169 837 584 3170 838 582 3171 850 580 3172 835 581 3173 836 580 3174 835 582 3175 850 627 3176 851 442 3177 852 584 3178 838 586 3179 840 442 3180 852 582 3181 850 584 3182 838 571 3183 842 325 3184 475 297 3185 448 325 3186 475 571 3187 842 625 3188 853 621 3189 854 322 3190 472 323 3191 473 322 3192 472 621 3193 854 619 3194 800 324 3195 474 621 3196 854 323 3197 473 621 3198 854 324 3199 474 623 3200 855 625 3201 853 624 3202 856 623 3203 855 624 3204 856 625 3205 853 626 3206 857 625 3207 853 623 3208 855 325 3209 475 325 3210 475 623 3211 855 324 3212 474 570 3213 858 625 3214 853 571 3215 842 625 3216 853 570 3217 858 626 3218 857 572 3219 843 570 3220 858 571 3221 842 570 3222 858 572 3223 843 573 3224 859 572 3225 843 574 3226 844 575 3227 860 575 3228 860 573 3229 859 572 3230 843 574 3231 844 576 3232 845 577 3233 861 577 3234 861 575 3235 860 574 3236 844 576 3237 845 578 3238 834 577 3239 861 577 3240 861 578 3241 834 579 3242 862 627 3243 851 578 3244 834 580 3245 835 578 3246 834 627 3247 851 579 3248 862 406 3249 864 397 3250 514 398 3251 590 406 3252 864 398 3253 590 407 3254 863 401 3255 515 406 3256 864 404 3257 615 406 3258 864 401 3259 515 397 3260 514 564 3261 867 569 3262 865 565 3263 866 569 3264 865 564 3265 867 568 3266 868 564 3267 867 291 3268 441 568 3269 868 291 3270 441 564 3271 867 289 3272 439 567 3273 869 289 3274 439 564 3275 867 289 3276 439 567 3277 869 290 3278 440 566 3279 870 564 3280 867 565 3281 866 564 3282 867 566 3283 870 567 3284 869 618 3285 799 291 3286 441 321 3287 471 291 3288 441 618 3289 799 568 3290 868 316 3291 466 317 3292 467 609 3293 871 609 3294 871 608 3295 872 316 3296 466 609 3297 871 612 3298 873 610 3299 874 612 3300 873 609 3301 871 611 3302 875 317 3303 467 318 3304 468 611 3305 875 611 3306 875 609 3307 871 317 3308 467 611 3309 875 613 3310 876 612 3311 873 612 3312 873 613 3313 876 614 3314 877 318 3315 468 319 3316 469 611 3317 875 613 3318 876 611 3319 875 319 3320 469 613 3321 876 615 3322 878 614 3323 877 614 3324 877 615 3325 878 616 3326 879 613 3327 876 320 3328 470 615 3329 878 320 3330 470 613 3331 876 319 3332 469 566 3333 870 615 3334 878 567 3335 869 615 3336 878 566 3337 870 616 3338 879 615 3339 878 290 3340 440 567 3341 869 290 3342 440 615 3343 878 320 3344 470 618 3345 799 569 3346 865 568 3347 868 617 3348 880 569 3349 865 618 3350 799 620 3351 881 617 3352 880 619 3353 800 619 3354 800 617 3355 880 618 3356 799 619 3357 800 621 3358 854 620 3359 881 622 3360 882 620 3361 881 621 3362 854 621 3363 854 623 3364 855 624 3365 856 624 3366 856 622 3367 882 621 3368 854 438 3369 883 403 3370 616 404 3371 615 438 3372 883 404 3373 615 443 3374 884 404 3375 615 406 3376 864 443 3377 884 443 3378 884 406 3379 864 523 3380 885 436 3381 849 438 3382 883 443 3383 884 443 3384 884 442 3385 846 436 3386 849 582 3387 850 443 3388 886 627 3389 851 573 3390 859 443 3391 886 570 3392 858 443 3393 886 582 3394 850 442 3395 852 443 3396 886 626 3397 857 570 3398 858 579 3399 862 575 3400 860 577 3401 861 579 3402 862 443 3403 886 575 3404 860 443 3405 886 579 3406 862 627 3407 851 575 3408 860 443 3409 886 573 3410 859 624 3411 856 443 3412 886 622 3413 882 443 3414 886 624 3415 856 626 3416 857 599 3417 887 598 3418 888 311 3419 461 599 3420 887 311 3421 461 312 3422 462 601 3423 889 599 3424 887 312 3425 462 601 3426 889 312 3427 462 313 3428 463 601 3429 889 314 3430 464 603 3431 890 314 3432 464 601 3433 889 313 3434 463 603 3435 890 606 3436 891 604 3437 892 606 3438 891 603 3439 890 605 3440 893 314 3441 464 315 3442 465 603 3443 890 603 3444 890 315 3445 465 605 3446 893 315 3447 465 316 3448 466 605 3449 893 608 3450 872 605 3451 893 316 3452 466 605 3453 893 608 3454 872 606 3455 891 607 3456 894 606 3457 891 608 3458 872 522 3459 895 407 3460 809 520 3461 830 407 3462 809 428 3463 808 520 3464 830 448 3465 816 449 3466 896 447 3467 817 447 3468 817 449 3469 896 432 3470 897 432 3471 897 522 3472 895 447 3473 817 520 3474 830 447 3475 817 522 3476 895 608 3477 872 610 3478 874 607 3479 894 610 3480 874 608 3481 872 609 3482 871 407 3483 863 522 3484 898 406 3485 864 523 3486 885 406 3487 864 522 3488 898 569 3489 865 617 3490 880 523 3491 899 610 3492 874 523 3493 899 607 3494 894 443 3495 886 523 3496 899 622 3497 882 622 3498 882 523 3499 899 620 3500 881 620 3501 881 523 3502 899 617 3503 880 612 3504 873 523 3505 899 610 3506 874 614 3507 877 523 3508 899 612 3509 873 616 3510 879 523 3511 899 614 3512 877 566 3513 870 523 3514 899 616 3515 879 565 3516 866 523 3517 899 566 3518 870 523 3519 899 565 3520 866 569 3521 865 497 3522 709 359 3523 901 449 3524 900 497 3525 709 449 3526 900 448 3527 774 589 3528 903 308 3529 458 591 3530 902 308 3531 458 589 3532 903 307 3533 457 591 3534 902 309 3535 459 593 3536 904 309 3537 459 591 3538 902 308 3539 458 309 3540 459 310 3541 460 593 3542 904 593 3543 904 310 3544 460 595 3545 905 374 3546 833 361 3547 906 375 3548 546 375 3549 546 361 3550 906 376 3551 547 497 3552 709 376 3553 547 361 3554 906 361 3555 906 359 3556 901 497 3557 709 360 3558 907 586 3559 840 587 3560 908 588 3561 841 586 3562 840 585 3563 839 587 3564 908 586 3565 840 588 3566 841 588 3567 841 589 3568 903 587 3569 908 587 3570 908 589 3571 903 590 3572 909 306 3573 456 307 3574 457 588 3575 841 588 3576 841 307 3577 457 589 3578 903 589 3579 903 591 3580 902 590 3581 909 592 3582 910 590 3583 909 591 3584 902 591 3585 902 593 3586 904 592 3587 910 594 3588 911 592 3589 910 593 3590 904 593 3591 904 595 3592 905 594 3593 911 596 3594 912 594 3595 911 595 3596 905 442 3597 846 360 3598 913 374 3599 847 374 3600 847 360 3601 913 361 3602 914 442 3603 852 586 3604 840 360 3605 907 595 3606 905 311 3607 461 598 3608 888 311 3609 461 595 3610 905 310 3611 460 599 3612 887 601 3613 889 602 3614 915 602 3615 915 600 3616 916 599 3617 887 601 3618 889 603 3619 890 604 3620 892 604 3621 892 602 3622 915 601 3623 889 359 3624 918 361 3625 914 360 3626 913 360 3627 913 326 3628 917 359 3629 918 359 3630 918 326 3631 917 449 3632 920 326 3633 917 432 3634 919 449 3635 920 590 3636 909 360 3637 907 587 3638 908 595 3639 905 598 3640 888 597 3641 921 597 3642 921 596 3643 912 595 3644 905 598 3645 888 599 3646 887 600 3647 916 600 3648 916 597 3649 921 598 3650 888 326 3651 922 606 3652 891 607 3653 894 522 3654 898 432 3655 919 523 3656 885 326 3657 917 523 3658 885 432 3659 919 326 3660 922 607 3661 894 523 3662 899 326 3663 922 604 3664 892 606 3665 891 326 3666 922 602 3667 915 604 3668 892 326 3669 922 600 3670 916 602 3671 915 600 3672 916 326 3673 922 597 3674 921 596 3675 912 326 3676 922 594 3677 911 326 3678 922 596 3679 912 597 3680 921 592 3681 910 326 3682 922 360 3683 907 326 3684 922 592 3685 910 594 3686 911 592 3687 910 360 3688 907 590 3689 909 645 3690 926 637 3691 924 653 3692 925 637 3693 924 645 3694 926 629 3695 923 645 3696 926 636 3697 928 628 3698 927 636 3699 928 645 3700 926 653 3701 925 654 3702 931 646 3703 932 630 3704 929 630 3705 929 638 3706 930 654 3707 931 646 3708 932 654 3709 931 629 3710 923 629 3711 923 654 3712 931 637 3713 924 639 3714 934 647 3715 936 631 3716 933 647 3717 936 639 3718 934 655 3719 935 655 3720 935 630 3721 929 647 3722 936 630 3723 929 655 3724 935 638 3725 930 632 3726 937 640 3727 938 656 3728 939 632 3729 937 656 3730 939 648 3731 940 648 3732 940 639 3733 934 631 3734 933 639 3735 934 648 3736 940 656 3737 939 657 3738 943 633 3739 941 641 3740 942 633 3741 941 657 3742 943 649 3743 944 640 3744 938 632 3745 937 657 3746 943 657 3747 943 632 3748 937 649 3749 944 642 3750 946 650 3751 948 634 3752 945 650 3753 948 642 3754 946 658 3755 947 641 3756 942 650 3757 948 658 3758 947 650 3759 948 641 3760 942 633 3761 941 659 3762 951 651 3763 952 635 3764 949 659 3765 951 635 3766 949 643 3767 950 651 3768 952 642 3769 946 634 3770 945 642 3771 946 651 3772 952 659 3773 951 652 3774 956 636 3775 954 660 3776 955 636 3777 954 652 3778 956 628 3779 953 643 3780 950 635 3781 949 660 3782 955 635 3783 949 652 3784 956 660 3785 955 653 3786 957 637 3787 958 644 3788 959 644 3789 959 636 3790 960 653 3791 957 654 3792 961 638 3793 962 644 3794 959 644 3795 959 637 3796 958 654 3797 961 655 3798 963 639 3799 964 644 3800 959 644 3801 959 638 3802 962 655 3803 963 656 3804 965 640 3805 966 644 3806 959 644 3807 959 639 3808 964 656 3809 965 657 3810 967 641 3811 968 644 3812 959 644 3813 959 640 3814 966 657 3815 967 658 3816 969 642 3817 970 644 3818 959 644 3819 959 641 3820 968 658 3821 969 659 3822 971 643 3823 972 644 3824 959 644 3825 959 642 3826 970 659 3827 971 660 3828 973 636 3829 960 644 3830 959 644 3831 959 643 3832 972 660 3833 973 686 3834 976 678 3835 977 662 3836 974 662 3837 974 670 3838 975 686 3839 976 678 3840 977 669 3841 979 661 3842 978 669 3843 979 678 3844 977 686 3845 976 687 3846 982 679 3847 983 663 3848 980 663 3849 980 671 3850 981 687 3851 982 679 3852 983 670 3853 975 662 3854 974 670 3855 975 679 3856 983 687 3857 982 672 3858 985 680 3859 987 664 3860 984 680 3861 987 672 3862 985 688 3863 986 688 3864 986 663 3865 980 680 3866 987 663 3867 980 688 3868 986 671 3869 981 665 3870 988 673 3871 989 689 3872 990 665 3873 988 689 3874 990 681 3875 991 681 3876 991 672 3877 985 664 3878 984 672 3879 985 681 3880 991 689 3881 990 674 3882 993 682 3883 995 666 3884 992 682 3885 995 674 3886 993 690 3887 994 673 3888 989 665 3889 988 690 3890 994 690 3891 994 665 3892 988 682 3893 995 675 3894 997 683 3895 999 667 3896 996 683 3897 999 675 3898 997 691 3899 998 674 3900 993 666 3901 992 691 3902 998 691 3903 998 666 3904 992 683 3905 999 692 3906 1002 684 3907 1003 668 3908 1000 692 3909 1002 668 3910 1000 676 3911 1001 684 3912 1003 675 3913 997 667 3914 996 675 3915 997 684 3916 1003 692 3917 1002 685 3918 1007 669 3919 1005 693 3920 1006 669 3921 1005 685 3922 1007 661 3923 1004 685 3924 1007 693 3925 1006 668 3926 1000 676 3927 1001 668 3928 1000 693 3929 1006 686 3930 1008 670 3931 1009 677 3932 1010 677 3933 1010 669 3934 1011 686 3935 1008 687 3936 1012 671 3937 1013 677 3938 1010 677 3939 1010 670 3940 1009 687 3941 1012 688 3942 1014 672 3943 1015 677 3944 1010 677 3945 1010 671 3946 1013 688 3947 1014 689 3948 1016 673 3949 1017 677 3950 1010 677 3951 1010 672 3952 1015 689 3953 1016 690 3954 1018 674 3955 1019 677 3956 1010 677 3957 1010 673 3958 1017 690 3959 1018 691 3960 1020 675 3961 1021 677 3962 1010 677 3963 1010 674 3964 1019 691 3965 1020 692 3966 1022 676 3967 1023 677 3968 1010 677 3969 1010 675 3970 1021 692 3971 1022 693 3972 1024 669 3973 1011 677 3974 1010 677 3975 1010 676 3976 1023 693 3977 1024 719 3978 1027 711 3979 1028 695 3980 1025 695 3981 1025 703 3982 1026 719 3983 1027 711 3984 1028 702 3985 1030 694 3986 1029 702 3987 1030 711 3988 1028 719 3989 1027 720 3990 1033 712 3991 1034 696 3992 1031 696 3993 1031 704 3994 1032 720 3995 1033 712 3996 1034 720 3997 1033 695 3998 1025 695 3999 1025 720 4000 1033 703 4001 1026 705 4002 1036 713 4003 1038 697 4004 1035 713 4005 1038 705 4006 1036 721 4007 1037 721 4008 1037 696 4009 1031 713 4010 1038 696 4011 1031 721 4012 1037 704 4013 1032 698 4014 1039 706 4015 1040 722 4016 1041 698 4017 1039 722 4018 1041 714 4019 1042 714 4020 1042 705 4021 1036 697 4022 1035 705 4023 1036 714 4024 1042 722 4025 1041 723 4026 1045 699 4027 1043 707 4028 1044 699 4029 1043 723 4030 1045 715 4031 1046 706 4032 1040 698 4033 1039 723 4034 1045 723 4035 1045 698 4036 1039 715 4037 1046 708 4038 1048 716 4039 1050 700 4040 1047 716 4041 1050 708 4042 1048 724 4043 1049 707 4044 1044 699 4045 1043 724 4046 1049 724 4047 1049 699 4048 1043 716 4049 1050 725 4050 1053 717 4051 1054 701 4052 1051 725 4053 1053 701 4054 1051 709 4055 1052 717 4056 1054 708 4057 1048 700 4058 1047 708 4059 1048 717 4060 1054 725 4061 1053 718 4062 1058 702 4063 1056 726 4064 1057 702 4065 1056 718 4066 1058 694 4067 1055 718 4068 1058 726 4069 1057 701 4070 1051 709 4071 1052 701 4072 1051 726 4073 1057 719 4074 1059 703 4075 1060 710 4076 1061 710 4077 1061 702 4078 1062 719 4079 1059 720 4080 1063 704 4081 1064 710 4082 1061 710 4083 1061 703 4084 1060 720 4085 1063 721 4086 1065 705 4087 1066 710 4088 1061 710 4089 1061 704 4090 1064 721 4091 1065 722 4092 1067 706 4093 1068 710 4094 1061 710 4095 1061 705 4096 1066 722 4097 1067 723 4098 1069 707 4099 1070 710 4100 1061 710 4101 1061 706 4102 1068 723 4103 1069 724 4104 1071 708 4105 1072 710 4106 1061 710 4107 1061 707 4108 1070 724 4109 1071 725 4110 1073 709 4111 1074 710 4112 1061 710 4113 1061 708 4114 1072 725 4115 1073 726 4116 1075 702 4117 1062 710 4118 1061 710 4119 1061 709 4120 1074 726 4121 1075 744 4122 1079 736 4123 1077 752 4124 1078 736 4125 1077 744 4126 1079 728 4127 1076 744 4128 1079 735 4129 1081 727 4130 1080 735 4131 1081 744 4132 1079 752 4133 1078 753 4134 1084 745 4135 1085 729 4136 1082 729 4137 1082 737 4138 1083 753 4139 1084 745 4140 1085 753 4141 1084 728 4142 1076 728 4143 1076 753 4144 1084 736 4145 1077 738 4146 1087 746 4147 1089 730 4148 1086 746 4149 1089 738 4150 1087 754 4151 1088 754 4152 1088 729 4153 1082 746 4154 1089 729 4155 1082 754 4156 1088 737 4157 1083 731 4158 1090 739 4159 1091 755 4160 1092 731 4161 1090 755 4162 1092 747 4163 1093 747 4164 1093 738 4165 1087 730 4166 1086 738 4167 1087 747 4168 1093 755 4169 1092 756 4170 1096 732 4171 1094 740 4172 1095 732 4173 1094 756 4174 1096 748 4175 1097 739 4176 1091 731 4177 1090 756 4178 1096 756 4179 1096 731 4180 1090 748 4181 1097 741 4182 1099 749 4183 1101 733 4184 1098 749 4185 1101 741 4186 1099 757 4187 1100 740 4188 1095 749 4189 1101 757 4190 1100 749 4191 1101 740 4192 1095 732 4193 1094 758 4194 1104 750 4195 1105 734 4196 1102 758 4197 1104 734 4198 1102 742 4199 1103 750 4200 1105 741 4201 1099 733 4202 1098 741 4203 1099 750 4204 1105 758 4205 1104 751 4206 1109 735 4207 1107 759 4208 1108 735 4209 1107 751 4210 1109 727 4211 1106 751 4212 1109 759 4213 1108 734 4214 1102 742 4215 1103 734 4216 1102 759 4217 1108 752 4218 1110 736 4219 1111 743 4220 1112 743 4221 1112 735 4222 1113 752 4223 1110 753 4224 1114 737 4225 1115 743 4226 1112 743 4227 1112 736 4228 1111 753 4229 1114 754 4230 1116 738 4231 1117 743 4232 1112 743 4233 1112 737 4234 1115 754 4235 1116 755 4236 1118 739 4237 1119 743 4238 1112 743 4239 1112 738 4240 1117 755 4241 1118 756 4242 1120 740 4243 1121 743 4244 1112 743 4245 1112 739 4246 1119 756 4247 1120 757 4248 1122 741 4249 1123 743 4250 1112 743 4251 1112 740 4252 1121 757 4253 1122 758 4254 1124 742 4255 1125 743 4256 1112 743 4257 1112 741 4258 1123 758 4259 1124 759 4260 1126 735 4261 1113 743 4262 1112 743 4263 1112 742 4264 1125 759 4265 1126 770 4266 1128 776 4267 1129 761 4268 1127 767 4269 1130 761 4270 1127 776 4271 1129 760 4272 1131 766 4273 1132 770 4274 1128 776 4275 1129 770 4276 1128 766 4277 1132 766 4278 1132 777 4279 1133 776 4280 1129 777 4281 1133 766 4282 1132 769 4283 1134 776 4284 1129 777 4285 1133 767 4286 1130 767 4287 1130 777 4288 1133 768 4289 1135 769 4290 1134 763 4291 1136 771 4292 1137 769 4293 1134 771 4294 1137 777 4295 1133 762 4296 1138 777 4297 1133 771 4298 1137 777 4299 1133 762 4300 1138 768 4301 1135 770 4302 1128 763 4303 1136 760 4304 1131 763 4305 1136 770 4306 1128 771 4307 1137 771 4308 1137 770 4309 1128 761 4310 1127 761 4311 1127 762 4312 1138 771 4313 1137 772 4314 1139 764 4315 1140 774 4316 1141 772 4317 1139 774 4318 1141 778 4319 1142 761 4320 1127 778 4321 1142 774 4322 1141 778 4323 1142 761 4324 1127 767 4325 1130 767 4326 1130 779 4327 1143 778 4328 1142 779 4329 1143 767 4330 1130 768 4331 1135 778 4332 1142 773 4333 1144 772 4334 1139 773 4335 1144 778 4336 1142 779 4337 1143 775 4338 1145 779 4339 1143 762 4340 1138 768 4341 1135 762 4342 1138 779 4343 1143 765 4344 1146 773 4345 1144 775 4346 1145 779 4347 1143 775 4348 1145 773 4349 1144 774 4350 1141 775 4351 1145 761 4352 1127 761 4353 1127 775 4354 1145 762 4355 1138 775 4356 1145 774 4357 1141 764 4358 1140 764 4359 1140 765 4360 1146 775 4361 1145</p>
+        </triangles>
+      </mesh>
+    </geometry>
+    <geometry id="page-lib" name="pageMesh">
+      <mesh>
+        <source id="page-POSITION">
+          <float_array id="page-POSITION-array" count="12">
+-5.405307 -0.000000 6.538295
+5.442408 -0.000000 6.538295
+-5.405307 0.000000 -6.647713
+5.442408 0.000000 -6.647713
+</float_array>
+          <technique_common>
+            <accessor source="#page-POSITION-array" count="4" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="page-Normal0">
+          <float_array id="page-Normal0-array" count="12">
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+</float_array>
+          <technique_common>
+            <accessor source="#page-Normal0-array" count="4" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="page-UV0">
+          <float_array id="page-UV0-array" count="8">
+0.413038 0.204575
+0.403514 0.204575
+0.413038 0.195051
+0.403514 0.195051
+</float_array>
+          <technique_common>
+            <accessor source="#page-UV0-array" count="4" stride="2">
+              <param name="S" type="float"/>
+              <param name="T" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <vertices id="page-VERTEX">
+          <input semantic="POSITION" source="#page-POSITION"/>
+          <input semantic="NORMAL" source="#page-Normal0"/>
+        </vertices>
+        <triangles count="2" material="Album_Texture">
+          <input semantic="VERTEX" offset="0" source="#page-VERTEX"/>
+          <input semantic="TEXCOORD" offset="1" set="0" source="#page-UV0"/>
+          <p> 1 1 3 3 0 0 0 0 3 3 2 2</p>
+        </triangles>
+      </mesh>
+    </geometry>
+    <geometry id="cover_image-lib" name="cover_imageMesh">
+      <mesh>
+        <source id="cover_image-POSITION">
+          <float_array id="cover_image-POSITION-array" count="48">
+-3.207907 -6.562253 1.606693
+-1.067386 -6.535131 1.601104
+1.073134 -6.508008 1.595516
+3.213655 -6.480886 1.589928
+-3.235029 -4.421724 1.606737
+-1.094509 -4.394602 1.601149
+1.046012 -4.367480 1.595561
+3.186533 -4.340358 1.589973
+-3.262151 -2.281197 1.606782
+-1.121631 -2.254075 1.601194
+1.018890 -2.226953 1.595605
+3.159411 -2.199830 1.590017
+-3.289273 -0.140668 1.606827
+-1.148753 -0.113546 1.601238
+0.991768 -0.086424 1.595650
+3.132289 -0.059302 1.590062
+</float_array>
+          <technique_common>
+            <accessor source="#cover_image-POSITION-array" count="16" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="cover_image-Normal0">
+          <float_array id="cover_image-Normal0-array" count="48">
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002610 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002610 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+0.002611 0.000012 0.999997
+</float_array>
+          <technique_common>
+            <accessor source="#cover_image-Normal0-array" count="16" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="cover_image-UV0">
+          <float_array id="cover_image-UV0-array" count="32">
+0.000000 0.000000
+0.333333 0.000000
+0.666667 0.000000
+1.000000 0.000000
+0.000000 0.333333
+0.333333 0.333333
+0.666667 0.333333
+1.000000 0.333333
+0.000000 0.666667
+0.333333 0.666667
+0.666667 0.666667
+1.000000 0.666667
+0.000000 1.000000
+0.333333 1.000000
+0.666667 1.000000
+1.000000 1.000000
+</float_array>
+          <technique_common>
+            <accessor source="#cover_image-UV0-array" count="16" stride="2">
+              <param name="S" type="float"/>
+              <param name="T" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <vertices id="cover_image-VERTEX">
+          <input semantic="POSITION" source="#cover_image-POSITION"/>
+          <input semantic="NORMAL" source="#cover_image-Normal0"/>
+        </vertices>
+        <triangles count="18" material="Album_Cute_00011_lambert4">
+          <input semantic="VERTEX" offset="0" source="#cover_image-VERTEX"/>
+          <input semantic="TEXCOORD" offset="1" set="0" source="#cover_image-UV0"/>
+          <p> 4 4 1 1 5 5 1 1 4 4 0 0 6 6 5 5 1 1 6 6 1 1 2 2 6 6 3 3 7 7 3 3 6 6 2 2 8 8 5 5 9 9 5 5 8 8 4 4 9 9 6 6 10 10 6 6 9 9 5 5 10 10 7 7 11 11 7 7 10 10 6 6 12 12 9 9 13 13 9 9 12 12 8 8 14 14 13 13 9 9 14 14 9 9 10 10 14 14 11 11 15 15 11 11 14 14 10 10</p>
+        </triangles>
+      </mesh>
+    </geometry>
+    <geometry id="BBOX-lib" name="BBOXMesh">
+      <mesh>
+        <source id="BBOX-POSITION">
+          <float_array id="BBOX-POSITION-array" count="24">
+-9.381669 -7.673521 3.543655
+9.381669 -7.673521 3.543655
+-9.381669 7.673521 3.543655
+9.381669 7.673521 3.543655
+-9.381669 7.673521 -3.543655
+9.381669 7.673521 -3.543655
+-9.381669 -7.673521 -3.543655
+9.381669 -7.673521 -3.543655
+</float_array>
+          <technique_common>
+            <accessor source="#BBOX-POSITION-array" count="8" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="BBOX-Normal0">
+          <float_array id="BBOX-Normal0-array" count="108">
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 0.000000 1.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 1.000000 0.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 0.000000 -1.000000
+0.000000 -1.000000 0.000000
+0.000000 -1.000000 0.000000
+0.000000 -1.000000 0.000000
+0.000000 -1.000000 0.000000
+0.000000 -1.000000 0.000000
+0.000000 -1.000000 0.000000
+1.000000 0.000000 0.000000
+1.000000 0.000000 0.000000
+1.000000 0.000000 0.000000
+1.000000 0.000000 0.000000
+1.000000 0.000000 0.000000
+1.000000 0.000000 0.000000
+-1.000000 0.000000 0.000000
+-1.000000 0.000000 0.000000
+-1.000000 0.000000 0.000000
+-1.000000 0.000000 0.000000
+-1.000000 0.000000 0.000000
+-1.000000 0.000000 0.000000
+</float_array>
+          <technique_common>
+            <accessor source="#BBOX-Normal0-array" count="36" stride="3">
+              <param name="X" type="float"/>
+              <param name="Y" type="float"/>
+              <param name="Z" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="BBOX-UV0">
+          <float_array id="BBOX-UV0-array" count="28">
+0.375000 0.000000
+0.625000 0.000000
+0.375000 0.250000
+0.625000 0.250000
+0.375000 0.500000
+0.625000 0.500000
+0.375000 0.750000
+0.625000 0.750000
+0.375000 1.000000
+0.625000 1.000000
+0.875000 0.000000
+0.875000 0.250000
+0.125000 0.000000
+0.125000 0.250000
+</float_array>
+          <technique_common>
+            <accessor source="#BBOX-UV0-array" count="14" stride="2">
+              <param name="S" type="float"/>
+              <param name="T" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <vertices id="BBOX-VERTEX">
+          <input semantic="POSITION" source="#BBOX-POSITION"/>
+        </vertices>
+        <triangles count="12" material="lambert1">
+          <input semantic="VERTEX" offset="0" source="#BBOX-VERTEX"/>
+          <input semantic="NORMAL" offset="1" source="#BBOX-Normal0"/>
+          <input semantic="TEXCOORD" offset="2" set="0" source="#BBOX-UV0"/>
+          <p> 3 0 3 2 1 2 0 2 0 3 3 3 0 4 0 1 5 1 2 6 2 3 7 3 5 8 5 2 9 2 5 10 5 4 11 4 7 12 7 6 13 6 4 14 4 7 15 7 4 16 4 5 17 5 1 18 9 0 19 8 6 20 6 1 21 9 6 22 6 7 23 7 7 24 10 5 25 11 1 26 1 3 27 3 1 28 1 5 29 11 2 30 2 6 31 12 0 32 0 6 33 12 2 34 2 4 35 13</p>
+        </triangles>
+      </mesh>
+    </geometry>
+  </library_geometries>
+  <library_controllers>
+    <controller id="Album_CuteController">
+      <skin source="#Album_Cute-lib">
+        <bind_shape_matrix>-1.000000 0.000000 -0.000000 0.588980 -0.000000 0.000000 1.000000 0.054709 0.000000 1.000000 -0.000000 0.818401 0.000000 0.000000 0.000000 1.000000
+</bind_shape_matrix>
+        <source id="Album_CuteController-Joints">
+          <Name_array id="Album_CuteController-Joints-array" count="8">
+ joint1 joint2 joint3 joint4 joint8 joint5 joint6 joint7</Name_array>
+          <technique_common>
+            <accessor source="#Album_CuteController-Joints-array" count="8">
+              <param type="name"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="Album_CuteController-Matrices">
+          <float_array id="Album_CuteController-Matrices-array" count="128">
+
+1.000000 0.000000 0.000000 -0.015813 -0.000000 1.000000 0.000000 -0.000000 0.000000 -0.000000 1.000000 2.335608 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 0.999990 2.253925 0.000000 1.000000 0.000000 0.000000 -0.999990 0.000000 -0.004360 -5.645527 0.000000 0.000000 0.000000 1.000000
+0.126663 -0.000000 0.991946 -0.487129 -0.000000 1.000000 -0.000000 -0.000000 -0.991946 -0.000000 0.126663 -5.758953 0.000000 0.000000 0.000000 1.000000
+0.999966 -0.000000 0.008294 5.572175 -0.000000 1.000000 -0.000000 -0.000000 -0.008294 -0.000000 0.999966 -1.762244 0.000000 0.000000 0.000000 1.000000
+1.000000 -0.000000 0.000000 -2.959492 -0.000000 1.000000 -0.000000 -0.000000 -0.000000 -0.000000 1.000000 -1.786851 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 -5.798358 -0.000000 1.000000 0.000000 -0.000000 0.000000 -0.000000 1.000000 2.378103 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 -5.841162 -0.000000 1.000000 0.000000 -0.000000 0.000000 -0.000000 1.000000 -1.918753 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 -3.408634 -0.000000 1.000000 0.000000 -0.000000 0.000000 -0.000000 1.000000 -2.282387 0.000000 0.000000 0.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#Album_CuteController-Matrices-array" count="8" stride="16">
+              <param type="float4x4"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="Album_CuteController-Weights">
+          <float_array id="Album_CuteController-Weights-array" count="823">
+
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.631068 0.368932 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 0.631068 0.368932 1.000000 1.000000 1.000000 0.631068 0.368932 1.000000 0.631068 0.368932 0.631068 0.368932 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.631068 0.368932 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.631068 0.368932 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.631068 0.368932 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.631068 0.368932 1.000000 0.631068 0.368932 1.000000 0.631068 0.368932 1.000000 0.631068
+0.368932 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.582524 0.417476 0.582524 0.417476 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.407767 0.592233 0.407767 0.592233
+0.582524 0.417476 0.582524 0.417476 0.407767 0.592233 0.407767 0.592233 0.048544 0.951456 0.048544 0.951456 1.000000 0.048544 0.951456 0.048544
+0.951456 0.582524 0.417476 0.582524 0.417476 0.407767 0.592233 0.407767 0.592233 1.000000 1.000000 1.000000 1.000000 1.000000 0.582524 0.417476
+0.582524 0.417476 0.407767 0.592233 0.407767 0.592233 0.048544 0.951456 0.048544 0.951456 0.048544 0.951456 0.048544 0.951456 0.407767 0.592233
+0.582524 0.417476 1.000000 0.048544 0.951456 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 0.582524 0.417476 1.000000 0.048544 0.951456 0.407767 0.592233 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
+1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#Album_CuteController-Weights-array" count="823">
+              <param type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <joints>
+          <input semantic="JOINT" source="#Album_CuteController-Joints"/>
+          <input semantic="INV_BIND_MATRIX" source="#Album_CuteController-Matrices"/>
+        </joints>
+        <vertex_weights count="780">
+          <input semantic="JOINT" offset="0" source="#Album_CuteController-Joints"/>
+          <input semantic="WEIGHT" offset="1" source="#Album_CuteController-Weights"/>
+          <vcount>1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 2 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1</vcount>
+          <v>6 1 6 2 6 3 6 4 6 5 6 6 6 7 6 8 5 9 5 10 5 11 5 12 0 13 0 14 0 15 0 16 0 17 6 18 6 19 6 20 0 21 6 22 6 23 6 24 6 25 5 26 5 27 5 28 5 29 5 30 5 31 5 32 6 33 0 34 0 35 0 36 6 37 0 38 6 39 0 40 0 41 5 42 5 43 0 44 5 45 0 46 6 47 6 48 6 49 0 50 6 51 0 52 6 53 6 54 5 55 0 56 0 57 0 58 6 59 6 60 6 61 0 62 6 63 0 64 6 65 6 66 5 67 0 68 6 69 6 70 0 71 6 72 5 73 6 74 0 75 0 76 0 77 0 78 6 79 6 80 6 81 6 82 6 83 0 84 0 85 0 86 6 87 5 88 5 89 5 90 5 91 5 92 5 93 5 94 5 95 5 96 0 97 5 98 5 99 0 100 0 101 0 102 5 103 0 104 0 105 5 106 0 107 5 108 0 109 0 110 0 111 0 112 6 113 6 114 0 115 0 116 6 117 0 118 6 119 6 120 0 121 0 122 0 123 6 124 0 125 6 126 0 127 5 128 6 129 6 130 6 131 6 132 5 133 6 134 6 135 6 136 0 137 5 138 5 139 6 140 6 141 6 142 0 143 0 144 0 145 6 146 6 147 0 148 0 149 5 150 5 151 0 152 0 153 5 154 5 155 5 156 5 157 0 158 0 159 6 160 5 161 5 162 5 163 5 164 5 165 0 166 5 167 0 168 0 169 0 170 6 171 0 172 5 173 5 174 0 175 5 176 0 177 0 178 6 179 0 180 6 181 5 182 6 183 6 184 5 185 5 186 5 187 6 188 6 189 5 190 0 191 0 192 6 193 0 194 0 195 5 196 0 197 0 198 5 199 0 200 0 201 5 202 0 203 0 204 5 205 0 206 0 207 5 208 6 209 6 210 6 211 6 212 6 213 6 214 6 215 6 216 6 217 6 218 6 219 6 220 6 221 6 222 6 223 6 224 6 225 6 226 6 227 6 228 6 229 6 230 6 231 6 232 6 233 6 234 6 235 6 236 6 237 6 238 6 239 6 240 6 241 6 242 6 243 6 244 6 245 6 246 6 247 6 248 6 249 6 250 6 251 6 252 6 253 6 254 6 255 6 256 6 257 6 258 6 259 6 260 6 261 6 262 6 263 6 264 6 265 6 266 6 267 6 268 6 269 6 270 6 271 6 272 6 273 3 274 3 275 3 276 3 277 3 278 3 279 3 280 3 281 3 282 3 283 3 284 3 285 3 286 3 287 3 288 3 289 3 290 3 291 3 292 3 293 3 294 3 295 3 296 3 297 3 298 3 299 3 300 3 301 3 302 3 303 3 304 3 305 3 306 3 307 3 308 3 309 3 310 3 311 3 312 3 313 3 314 3 315 3 316 3 317 3 318 3 319 3 320 3 321 3 322 3 323 3 324 3 325 3 326 3 327 3 328 3 329 3 330 3 331 3 332 3 333 3 334 3 335 3 336 3 337 3 338 3 339 0 340 0 341 0 342 0 343 0 344 0 345 0 346 0 347 0 348 0 349 0 350 0 351 0 352 0 353 0 354 0 355 0 356 0 357 0 358 0 359 0 360 2 361 2 362 3 363 2 364 3 365 2 366 2 367 3 368 3 369 3 370 3 371 0 372 0 373 3 374 3 375 3 376 0 377 0 378 0 379 0 380 0 381 0 382 0 383 0 384 0 385 0 386 0 387 0 388 3 389 3 390 3 391 0 392 0 393 0 394 0 395 0 396 0 397 0 398 0 399 0 400 0 401 0 402 0 403 0 404 0 405 0 406 0 407 0 408 0 409 0 410 2 411 2 412 3 413 2 414 3 415 2 416 3 417 2 418 3 419 2 420 3 421 2 422 3 423 2 424 3 425 2 426 3 427 2 428 2 429 3 430 2 431 3 432 2 433 3 434 2 435 3 436 2 437 3 438 2 439 3 440 2 441 2 442 2 443 2 444 2 445 2 446 3 447 2 448 3 449 2 450 3 451 2 452 3 453 2 454 3 455 2 456 3 457 2 458 3 459 2 460 3 461 2 462 3 463 2 464 3 465 2 466 2 467 3 468 0 469 3 470 3 471 3 472 0 473 3 474 3 475 3 476 3 477 3 478 3 479 3 480 3 481 3 482 3 483 0 484 0 485 0 486 3 487 3 488 3 489 0 490 0 491 0 492 0 493 0 494 0 495 0 496 3 497 0 498 0 499 0 500 0 501 0 502 2 503 3 504 2 505 2 506 3 507 2 508 3 509 0 510 0 511 0 512 0 513 3 514 3 515 3 516 0 517 0 518 0 519 0 520 0 521 0 522 0 523 0 524 0 525 0 526 0 527 0 528 0 529 0 530 0 531 0 532 0 533 0 534 0 535 0 536 0 537 0 538 0 539 3 540 0 541 0 542 0 543 0 544 0 545 0 546 0 547 0 548 0 549 0 550 0 551 0 552 0 553 0 554 0 555 0 556 0 557 0 558 0 559 0 560 0 561 0 562 3 563 3 564 3 565 3 566 0 567 0 568 0 569 0 570 0 571 3 572 0 573 0 574 0 575 0 576 0 577 0 578 0 579 0 580 0 581 0 582 0 583 0 584 0 585 0 586 0 587 0 588 0 589 0 590 0 591 0 592 0 593 0 594 0 595 0 596 0 597 0 598 0 599 0 600 0 601 0 602 0 603 0 604 0 605 0 606 3 607 3 608 3 609 3 610 3 611 3 612 3 613 3 614 3 615 3 616 3 617 3 618 3 619 3 620 3 621 3 622 3 623 3 624 3 625 3 626 3 627 3 628 3 629 3 630 3 631 3 632 3 633 3 634 3 635 3 636 3 637 3 638 3 639 3 640 3 641 3 642 3 643 3 644 3 645 3 646 3 647 3 648 3 649 3 650 3 651 3 652 3 653 3 654 3 655 3 656 3 657 3 658 3 659 3 660 3 661 3 662 3 663 3 664 3 665 3 666 3 667 3 668 3 669 3 670 6 671 6 672 6 673 6 674 6 675 6 676 6 677 6 678 6 679 6 680 6 681 6 682 6 683 6 684 6 685 6 686 6 687 6 688 6 689 6 690 6 691 6 692 6 693 6 694 6 695 6 696 6 697 6 698 6 699 6 700 6 701 6 702 6 703 6 704 6 705 6 706 6 707 6 708 6 709 6 710 6 711 6 712 6 713 6 714 6 715 6 716 6 717 6 718 6 719 6 720 6 721 6 722 6 723 6 724 6 725 6 726 6 727 6 728 6 729 6 730 6 731 6 732 6 733 6 734 6 735 6 736 6 737 6 738 6 739 6 740 6 741 6 742 6 743 6 744 6 745 6 746 6 747 6 748 6 749 6 750 6 751 6 752 6 753 6 754 6 755 6 756 6 757 6 758 6 759 6 760 6 761 6 762 6 763 6 764 6 765 6 766 6 767 6 768 6 769 6 770 6 771 6 772 6 773 6 774 6 775 6 776 6 777 6 778 6 779 6 780 6 781 6 782 6 783 6 784 6 785 6 786 6 787 6 788 6 789 6 790 6 791 6 792 6 793 6 794 6 795 6 796 6 797 6 798 6 799 6 800 6 801 6 802 0 803 0 804 0 805 0 806 0 807 0 808 0 809 0 810 0 811 0 812 0 813 0 814 0 815 0 816 0 817 0 818 0 819 0 820 0 821 0 822</v>
+        </vertex_weights>
+      </skin>
+    </controller>
+  </library_controllers>
+  <library_animations>
+    <animation id="joint1-anim" name="joint1">
+      <animation>
+        <source id="joint1-Matrix-animation-input">
+          <float_array id="joint1-Matrix-animation-input-array" count="48">
+
+0.041667 0.083333 0.125000 0.166667 0.208333 0.250000 0.291667 0.333333 0.375000 0.416667 0.458333 0.500000 0.541667 0.583333 0.625000 0.666667
+0.708333 0.750000 0.791667 0.833333 0.875000 0.916667 0.958333 1.000000 1.041667 1.083333 1.125000 1.166667 1.208333 1.250000 1.291667 1.333333
+1.375000 1.416667 1.458333 1.500000 1.541667 1.583333 1.625000 1.666667 1.708333 1.750000 1.791667 1.833333 1.875000 1.916667 1.958333 2.000000</float_array>
+          <technique_common>
+            <accessor source="#joint1-Matrix-animation-input-array" count="48">
+              <param name="TIME" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint1-Matrix-animation-output-transform">
+          <float_array id="joint1-Matrix-animation-output-transform-array" count="768">
+
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000
+1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#joint1-Matrix-animation-output-transform-array" count="48" stride="16">
+              <param type="float4x4"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint1-Interpolations">
+          <Name_array id="joint1-Interpolations-array" count="48">
+ LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR</Name_array>
+          <technique_common>
+            <accessor source="#joint1-Interpolations-array" count="48">
+              <param type="name"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <sampler id="joint1-Matrix-animation-transform">
+          <input semantic="INPUT" source="#joint1-Matrix-animation-input"/>
+          <input semantic="OUTPUT" source="#joint1-Matrix-animation-output-transform"/>
+          <input semantic="INTERPOLATION" source="#joint1-Interpolations"/>
+        </sampler>
+        <channel source="#joint1-Matrix-animation-transform" target="joint1/matrix"/>
+      </animation>
+    </animation>
+    <animation id="joint2-anim" name="joint2">
+      <animation>
+        <source id="joint2-Matrix-animation-input">
+          <float_array id="joint2-Matrix-animation-input-array" count="48">
+
+0.041667 0.083333 0.125000 0.166667 0.208333 0.250000 0.291667 0.333333 0.375000 0.416667 0.458333 0.500000 0.541667 0.583333 0.625000 0.666667
+0.708333 0.750000 0.791667 0.833333 0.875000 0.916667 0.958333 1.000000 1.041667 1.083333 1.125000 1.166667 1.208333 1.250000 1.291667 1.333333
+1.375000 1.416667 1.458333 1.500000 1.541667 1.583333 1.625000 1.666667 1.708333 1.750000 1.791667 1.833333 1.875000 1.916667 1.958333 2.000000</float_array>
+          <technique_common>
+            <accessor source="#joint2-Matrix-animation-input-array" count="48">
+              <param name="TIME" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint2-Matrix-animation-output-transform">
+          <float_array id="joint2-Matrix-animation-output-transform-array" count="768">
+
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000
+-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#joint2-Matrix-animation-output-transform-array" count="48" stride="16">
+              <param type="float4x4"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint2-Interpolations">
+          <Name_array id="joint2-Interpolations-array" count="48">
+ LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR</Name_array>
+          <technique_common>
+            <accessor source="#joint2-Interpolations-array" count="48">
+              <param type="name"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <sampler id="joint2-Matrix-animation-transform">
+          <input semantic="INPUT" source="#joint2-Matrix-animation-input"/>
+          <input semantic="OUTPUT" source="#joint2-Matrix-animation-output-transform"/>
+          <input semantic="INTERPOLATION" source="#joint2-Interpolations"/>
+        </sampler>
+        <channel source="#joint2-Matrix-animation-transform" target="joint2/matrix"/>
+      </animation>
+    </animation>
+    <animation id="joint3-anim" name="joint3">
+      <animation>
+        <source id="joint3-Matrix-animation-input">
+          <float_array id="joint3-Matrix-animation-input-array" count="48">
+
+0.041667 0.083333 0.125000 0.166667 0.208333 0.250000 0.291667 0.333333 0.375000 0.416667 0.458333 0.500000 0.541667 0.583333 0.625000 0.666667
+0.708333 0.750000 0.791667 0.833333 0.875000 0.916667 0.958333 1.000000 1.041667 1.083333 1.125000 1.166667 1.208333 1.250000 1.291667 1.333333
+1.375000 1.416667 1.458333 1.500000 1.541667 1.583333 1.625000 1.666667 1.708333 1.750000 1.791667 1.833333 1.875000 1.916667 1.958333 2.000000</float_array>
+          <technique_common>
+            <accessor source="#joint3-Matrix-animation-input-array" count="48">
+              <param name="TIME" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint3-Matrix-animation-output-transform">
+          <float_array id="joint3-Matrix-animation-output-transform-array" count="768">
+
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.992168 -0.000000 0.124908 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.124908 -0.000000 0.992168 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.994206 -0.000000 0.107487 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.107487 -0.000000 0.994206 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.996801 -0.000000 0.079926 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.079926 -0.000000 0.996801 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.999056 -0.000000 0.043437 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.043437 -0.000000 0.999056 -0.000000 0.000000 0.000000 0.000000 1.000000
+1.000000 -0.000000 -0.000717 3.491203 0.000000 1.000000 0.000000 0.000000 0.000717 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.998688 -0.000000 -0.051203 3.491203 0.000000 1.000000 0.000000 0.000000 0.051203 -0.000000 0.998688 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.994302 -0.000000 -0.106602 3.491203 0.000000 1.000000 0.000000 0.000000 0.106602 -0.000000 0.994302 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.986222 -0.000000 -0.165425 3.491203 0.000000 1.000000 0.000000 0.000000 0.165425 -0.000000 0.986222 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.974096 -0.000000 -0.226136 3.491203 0.000000 1.000000 0.000000 0.000000 0.226136 -0.000000 0.974096 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.957872 -0.000000 -0.287194 3.491203 0.000000 1.000000 0.000000 0.000000 0.287194 -0.000000 0.957872 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.937826 -0.000000 -0.347107 3.491203 0.000000 1.000000 0.000000 0.000000 0.347107 -0.000000 0.937826 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.914549 -0.000000 -0.404474 3.491203 0.000000 1.000000 0.000000 0.000000 0.404474 -0.000000 0.914549 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.888932 -0.000000 -0.458039 3.491203 0.000000 1.000000 0.000000 0.000000 0.458039 -0.000000 0.888932 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.862115 -0.000000 -0.506713 3.491203 0.000000 1.000000 0.000000 0.000000 0.506713 -0.000000 0.862115 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.835433 -0.000000 -0.549592 3.491203 0.000000 1.000000 0.000000 0.000000 0.549592 -0.000000 0.835433 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.810352 -0.000000 -0.585943 3.491203 0.000000 1.000000 0.000000 0.000000 0.585943 -0.000000 0.810352 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.788393 -0.000000 -0.615172 3.491203 0.000000 1.000000 0.000000 0.000000 0.615172 -0.000000 0.788393 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.771063 -0.000000 -0.636759 3.491203 0.000000 1.000000 0.000000 0.000000 0.636759 -0.000000 0.771063 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.759776 -0.000000 -0.650185 3.491203 0.000000 1.000000 0.000000 0.000000 0.650185 -0.000000 0.759776 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.755777 -0.000000 -0.654829 3.491203 0.000000 1.000000 0.000000 0.000000 0.654829 -0.000000 0.755777 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.756856 -0.000000 -0.653581 3.491203 0.000000 1.000000 0.000000 0.000000 0.653581 -0.000000 0.756856 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.759546 -0.000000 -0.650453 3.491203 0.000000 1.000000 0.000000 0.000000 0.650453 -0.000000 0.759546 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.763024 -0.000000 -0.646371 3.491203 0.000000 1.000000 0.000000 0.000000 0.646371 -0.000000 0.763024 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.766479 -0.000000 -0.642269 3.491203 0.000000 1.000000 0.000000 0.000000 0.642269 -0.000000 0.766479 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.769122 -0.000000 -0.639101 3.491203 0.000000 1.000000 0.000000 0.000000 0.639101 -0.000000 0.769122 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.770176 -0.000000 -0.637831 3.491203 0.000000 1.000000 0.000000 0.000000 0.637831 -0.000000 0.770176 -0.000000 0.000000 0.000000 0.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#joint3-Matrix-animation-output-transform-array" count="48" stride="16">
+              <param type="float4x4"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint3-Interpolations">
+          <Name_array id="joint3-Interpolations-array" count="48">
+ LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR</Name_array>
+          <technique_common>
+            <accessor source="#joint3-Interpolations-array" count="48">
+              <param type="name"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <sampler id="joint3-Matrix-animation-transform">
+          <input semantic="INPUT" source="#joint3-Matrix-animation-input"/>
+          <input semantic="OUTPUT" source="#joint3-Matrix-animation-output-transform"/>
+          <input semantic="INTERPOLATION" source="#joint3-Interpolations"/>
+        </sampler>
+        <channel source="#joint3-Matrix-animation-transform" target="joint3/matrix"/>
+      </animation>
+    </animation>
+    <animation id="joint4-anim" name="joint4">
+      <animation>
+        <source id="joint4-Matrix-animation-input">
+          <float_array id="joint4-Matrix-animation-input-array" count="48">
+
+0.041667 0.083333 0.125000 0.166667 0.208333 0.250000 0.291667 0.333333 0.375000 0.416667 0.458333 0.500000 0.541667 0.583333 0.625000 0.666667
+0.708333 0.750000 0.791667 0.833333 0.875000 0.916667 0.958333 1.000000 1.041667 1.083333 1.125000 1.166667 1.208333 1.250000 1.291667 1.333333
+1.375000 1.416667 1.458333 1.500000 1.541667 1.583333 1.625000 1.666667 1.708333 1.750000 1.791667 1.833333 1.875000 1.916667 1.958333 2.000000</float_array>
+          <technique_common>
+            <accessor source="#joint4-Matrix-animation-input-array" count="48">
+              <param name="TIME" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint4-Matrix-animation-output-transform">
+          <float_array id="joint4-Matrix-animation-output-transform-array" count="768">
+
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.147905 -0.000000 0.989002 0.507404 0.000000 1.000000 -0.000000 0.000000 -0.989002 -0.000000 0.147905 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.185020 0.000000 0.982735 0.507404 -0.000000 1.000000 -0.000000 -0.000000 -0.982735 -0.000000 0.185020 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.243045 -0.000000 0.970015 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.970015 -0.000000 0.243045 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.318325 -0.000000 0.947982 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.947982 -0.000000 0.318325 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.406617 0.000000 0.913599 0.507404 -0.000000 1.000000 -0.000000 0.000000 -0.913599 -0.000000 0.406617 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.503063 0.000000 0.864250 0.507404 -0.000000 1.000000 -0.000000 0.000000 -0.864250 -0.000000 0.503063 0.000000 0.000000 0.000000 0.000000 1.000000
+0.602328 0.000000 0.798248 0.507404 -0.000000 1.000000 -0.000000 -0.000000 -0.798248 -0.000000 0.602328 0.000000 0.000000 0.000000 0.000000 1.000000
+0.698897 0.000000 0.715223 0.507404 -0.000000 1.000000 -0.000000 -0.000000 -0.715223 -0.000000 0.698897 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.787496 0.000000 0.616320 0.507404 -0.000000 1.000000 -0.000000 0.000000 -0.616320 -0.000000 0.787496 0.000000 0.000000 0.000000 0.000000 1.000000
+0.863585 0.000000 0.504203 0.507404 -0.000000 1.000000 -0.000000 0.000000 -0.504203 -0.000000 0.863585 0.000000 0.000000 0.000000 0.000000 1.000000
+0.923819 0.000000 0.382829 0.507404 -0.000000 1.000000 -0.000000 -0.000000 -0.382829 -0.000000 0.923819 0.000000 0.000000 0.000000 0.000000 1.000000
+0.966396 0.000000 0.257056 0.507404 -0.000000 1.000000 -0.000000 0.000000 -0.257056 -0.000000 0.966396 0.000000 0.000000 0.000000 0.000000 1.000000
+0.991230 0.000000 0.132148 0.507404 -0.000000 1.000000 0.000000 -0.000000 -0.132148 -0.000000 0.991230 0.000000 0.000000 0.000000 0.000000 1.000000
+0.999912 0.000000 0.013260 0.507404 -0.000000 1.000000 0.000000 -0.000000 -0.013260 -0.000000 0.999912 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.995478 0.000000 -0.094988 0.507404 -0.000000 1.000000 0.000000 0.000000 0.094988 -0.000000 0.995478 0.000000 0.000000 0.000000 0.000000 1.000000
+0.982020 0.000000 -0.188777 0.507404 -0.000000 1.000000 0.000000 0.000000 0.188777 -0.000000 0.982020 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.964203 0.000000 -0.265166 0.507404 -0.000000 1.000000 0.000000 -0.000000 0.265166 -0.000000 0.964203 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.946757 0.000000 -0.321948 0.507404 -0.000000 1.000000 0.000000 -0.000000 0.321948 -0.000000 0.946757 0.000000 0.000000 0.000000 0.000000 1.000000
+0.933971 0.000000 -0.357350 0.507404 -0.000000 1.000000 0.000000 0.000000 0.357350 -0.000000 0.933971 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.929190 0.000000 -0.369602 0.507404 -0.000000 1.000000 0.000000 0.000000 0.369602 -0.000000 0.929190 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.930811 0.000000 -0.365500 0.507404 -0.000000 1.000000 0.000000 0.000000 0.365500 -0.000000 0.930811 0.000000 0.000000 0.000000 0.000000 1.000000
+0.934785 0.000000 -0.355213 0.507404 -0.000000 1.000000 0.000000 0.000000 0.355213 -0.000000 0.934785 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.939781 0.000000 -0.341776 0.507404 -0.000000 1.000000 0.000000 -0.000000 0.341776 -0.000000 0.939781 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.944584 0.000000 -0.328269 0.507404 -0.000000 1.000000 0.000000 -0.000000 0.328269 -0.000000 0.944584 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.948147 0.000000 -0.317833 0.507404 -0.000000 1.000000 0.000000 0.000000 0.317833 -0.000000 0.948147 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000
+0.949539 0.000000 -0.313648 0.507404 -0.000000 1.000000 0.000000 0.000000 0.313648 -0.000000 0.949539 -0.000000 0.000000 0.000000 0.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#joint4-Matrix-animation-output-transform-array" count="48" stride="16">
+              <param type="float4x4"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint4-Interpolations">
+          <Name_array id="joint4-Interpolations-array" count="48">
+ LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR</Name_array>
+          <technique_common>
+            <accessor source="#joint4-Interpolations-array" count="48">
+              <param type="name"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <sampler id="joint4-Matrix-animation-transform">
+          <input semantic="INPUT" source="#joint4-Matrix-animation-input"/>
+          <input semantic="OUTPUT" source="#joint4-Matrix-animation-output-transform"/>
+          <input semantic="INTERPOLATION" source="#joint4-Interpolations"/>
+        </sampler>
+        <channel source="#joint4-Matrix-animation-transform" target="joint4/matrix"/>
+      </animation>
+    </animation>
+    <animation id="joint5-anim" name="joint5">
+      <animation>
+        <source id="joint5-Matrix-animation-input">
+          <float_array id="joint5-Matrix-animation-input-array" count="48">
+
+0.041667 0.083333 0.125000 0.166667 0.208333 0.250000 0.291667 0.333333 0.375000 0.416667 0.458333 0.500000 0.541667 0.583333 0.625000 0.666667
+0.708333 0.750000 0.791667 0.833333 0.875000 0.916667 0.958333 1.000000 1.041667 1.083333 1.125000 1.166667 1.208333 1.250000 1.291667 1.333333
+1.375000 1.416667 1.458333 1.500000 1.541667 1.583333 1.625000 1.666667 1.708333 1.750000 1.791667 1.833333 1.875000 1.916667 1.958333 2.000000</float_array>
+          <technique_common>
+            <accessor source="#joint5-Matrix-animation-input-array" count="48">
+              <param name="TIME" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint5-Matrix-animation-output-transform">
+          <float_array id="joint5-Matrix-animation-output-transform-array" count="768">
+
+1.000000 0.000000 0.000000 5.782546 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.999960 0.000000 0.008897 5.782546 0.000000 1.000000 0.000000 0.000000 -0.008897 0.000000 0.999960 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.999429 0.000000 0.033798 5.782546 0.000000 1.000000 0.000000 0.000000 -0.033798 0.000000 0.999429 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.997406 0.000000 0.071988 5.782546 0.000000 1.000000 0.000000 0.000000 -0.071988 0.000000 0.997406 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.992693 0.000000 0.120668 5.782546 0.000000 1.000000 0.000000 0.000000 -0.120668 0.000000 0.992693 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.984222 0.000000 0.176937 5.782546 0.000000 1.000000 0.000000 0.000000 -0.176937 0.000000 0.984222 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.971310 0.000000 0.237816 5.782546 0.000000 1.000000 0.000000 0.000000 -0.237816 0.000000 0.971310 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.953839 0.000000 0.300317 5.782546 0.000000 1.000000 0.000000 0.000000 -0.300317 0.000000 0.953839 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.932351 0.000000 0.361554 5.782546 0.000000 1.000000 0.000000 0.000000 -0.361554 0.000000 0.932351 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.908056 0.000000 0.418848 5.782546 0.000000 1.000000 0.000000 0.000000 -0.418848 0.000000 0.908056 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.882762 0.000000 0.469821 5.782546 0.000000 1.000000 0.000000 0.000000 -0.469821 0.000000 0.882762 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.858735 0.000000 0.512420 5.782546 0.000000 1.000000 0.000000 0.000000 -0.512420 0.000000 0.858735 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.838514 0.000000 0.544880 5.782546 0.000000 1.000000 0.000000 0.000000 -0.544880 0.000000 0.838514 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.824684 0.000000 0.565594 5.782546 0.000000 1.000000 0.000000 0.000000 -0.565594 0.000000 0.824684 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.819619 0.000000 0.572909 5.782546 0.000000 1.000000 0.000000 0.000000 -0.572909 0.000000 0.819619 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.823967 0.000000 0.566638 5.782546 0.000000 1.000000 0.000000 0.000000 -0.566638 0.000000 0.823967 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.834626 0.000000 0.550817 5.782546 0.000000 1.000000 0.000000 0.000000 -0.550817 0.000000 0.834626 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.848028 0.000000 0.529951 5.782546 0.000000 1.000000 0.000000 0.000000 -0.529951 0.000000 0.848028 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.860909 0.000000 0.508759 5.782546 0.000000 1.000000 0.000000 0.000000 -0.508759 0.000000 0.860909 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.870458 0.000000 0.492243 5.782546 0.000000 1.000000 0.000000 0.000000 -0.492243 0.000000 0.870458 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000
+0.874188 0.000000 0.485587 5.782546 0.000000 1.000000 0.000000 0.000000 -0.485587 0.000000 0.874188 -0.042495 0.000000 0.000000 0.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#joint5-Matrix-animation-output-transform-array" count="48" stride="16">
+              <param type="float4x4"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint5-Interpolations">
+          <Name_array id="joint5-Interpolations-array" count="48">
+ LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR</Name_array>
+          <technique_common>
+            <accessor source="#joint5-Interpolations-array" count="48">
+              <param type="name"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <sampler id="joint5-Matrix-animation-transform">
+          <input semantic="INPUT" source="#joint5-Matrix-animation-input"/>
+          <input semantic="OUTPUT" source="#joint5-Matrix-animation-output-transform"/>
+          <input semantic="INTERPOLATION" source="#joint5-Interpolations"/>
+        </sampler>
+        <channel source="#joint5-Matrix-animation-transform" target="joint5/matrix"/>
+      </animation>
+    </animation>
+    <animation id="joint6-anim" name="joint6">
+      <animation>
+        <source id="joint6-Matrix-animation-input">
+          <float_array id="joint6-Matrix-animation-input-array" count="48">
+
+0.041667 0.083333 0.125000 0.166667 0.208333 0.250000 0.291667 0.333333 0.375000 0.416667 0.458333 0.500000 0.541667 0.583333 0.625000 0.666667
+0.708333 0.750000 0.791667 0.833333 0.875000 0.916667 0.958333 1.000000 1.041667 1.083333 1.125000 1.166667 1.208333 1.250000 1.291667 1.333333
+1.375000 1.416667 1.458333 1.500000 1.541667 1.583333 1.625000 1.666667 1.708333 1.750000 1.791667 1.833333 1.875000 1.916667 1.958333 2.000000</float_array>
+          <technique_common>
+            <accessor source="#joint6-Matrix-animation-input-array" count="48">
+              <param name="TIME" type="float"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint6-Matrix-animation-output-transform">
+          <float_array id="joint6-Matrix-animation-output-transform-array" count="768">
+
+1.000000 0.000000 0.000000 0.042804 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 4.296856 0.000000 0.000000 0.000000 1.000000
+0.999987 0.000000 0.005175 0.042804 0.000000 1.000000 0.000000 0.000000 -0.005175 0.000000 0.999987 4.296856 0.000000 0.000000 0.000000 1.000000
+0.999801 0.000000 0.019944 0.042804 0.000000 1.000000 0.000000 0.000000 -0.019944 0.000000 0.999801 4.296856 0.000000 0.000000 0.000000 1.000000
+0.999068 0.000000 0.043166 0.042804 0.000000 1.000000 0.000000 0.000000 -0.043166 0.000000 0.999068 4.296856 0.000000 0.000000 0.000000 1.000000
+0.997282 0.000000 0.073681 0.042804 0.000000 1.000000 0.000000 0.000000 -0.073681 0.000000 0.997282 4.296856 0.000000 0.000000 0.000000 1.000000
+0.993899 0.000000 0.110296 0.042804 0.000000 1.000000 0.000000 0.000000 -0.110296 0.000000 0.993899 4.296856 0.000000 0.000000 0.000000 1.000000
+0.988414 0.000000 0.151780 0.042804 0.000000 1.000000 0.000000 0.000000 -0.151780 0.000000 0.988414 4.296856 0.000000 0.000000 0.000000 1.000000
+0.980430 0.000000 0.196869 0.042804 0.000000 1.000000 0.000000 0.000000 -0.196869 0.000000 0.980430 4.296856 0.000000 0.000000 0.000000 1.000000
+0.969704 0.000000 0.244281 0.042804 0.000000 1.000000 0.000000 0.000000 -0.244281 0.000000 0.969704 4.296856 0.000000 0.000000 0.000000 1.000000
+0.956194 0.000000 0.292733 0.042804 0.000000 1.000000 0.000000 0.000000 -0.292733 0.000000 0.956194 4.296856 0.000000 0.000000 0.000000 1.000000
+0.940073 0.000000 0.340974 0.042804 0.000000 1.000000 0.000000 0.000000 -0.340974 0.000000 0.940073 4.296856 0.000000 0.000000 0.000000 1.000000
+0.921738 0.000000 0.387814 0.042804 0.000000 1.000000 0.000000 0.000000 -0.387814 0.000000 0.921738 4.296856 0.000000 0.000000 0.000000 1.000000
+0.901803 0.000000 0.432148 0.042804 0.000000 1.000000 0.000000 0.000000 -0.432148 0.000000 0.901803 4.296856 0.000000 0.000000 0.000000 1.000000
+0.881074 0.000000 0.472978 0.042804 0.000000 1.000000 0.000000 0.000000 -0.472978 0.000000 0.881074 4.296856 0.000000 0.000000 0.000000 1.000000
+0.860515 0.000000 0.509425 0.042804 0.000000 1.000000 0.000000 0.000000 -0.509425 0.000000 0.860515 4.296856 0.000000 0.000000 0.000000 1.000000
+0.841205 0.000000 0.540717 0.042804 0.000000 1.000000 0.000000 0.000000 -0.540717 0.000000 0.841205 4.296856 0.000000 0.000000 0.000000 1.000000
+0.824285 0.000000 0.566174 0.042804 0.000000 1.000000 0.000000 0.000000 -0.566174 0.000000 0.824285 4.296856 0.000000 0.000000 0.000000 1.000000
+0.810909 0.000000 0.585172 0.042804 0.000000 1.000000 0.000000 0.000000 -0.585172 0.000000 0.810909 4.296856 0.000000 0.000000 0.000000 1.000000
+0.802178 0.000000 0.597085 0.042804 0.000000 1.000000 0.000000 0.000000 -0.597085 0.000000 0.802178 4.296856 0.000000 0.000000 0.000000 1.000000
+0.799078 0.000000 0.601228 0.042804 0.000000 1.000000 0.000000 0.000000 -0.601228 0.000000 0.799078 4.296856 0.000000 0.000000 0.000000 1.000000
+0.806328 0.000000 0.591468 0.042804 0.000000 1.000000 0.000000 0.000000 -0.591468 0.000000 0.806328 4.296856 0.000000 0.000000 0.000000 1.000000
+0.823932 0.000000 0.566689 0.042804 0.000000 1.000000 0.000000 0.000000 -0.566689 0.000000 0.823932 4.296856 0.000000 0.000000 0.000000 1.000000
+0.845676 0.000000 0.533697 0.042804 0.000000 1.000000 0.000000 0.000000 -0.533697 0.000000 0.845676 4.296856 0.000000 0.000000 0.000000 1.000000
+0.866099 0.000000 0.499872 0.042804 0.000000 1.000000 0.000000 0.000000 -0.499872 0.000000 0.866099 4.296856 0.000000 0.000000 0.000000 1.000000
+0.880891 0.000000 0.473319 0.042804 0.000000 1.000000 0.000000 0.000000 -0.473319 0.000000 0.880891 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000
+0.886581 0.000000 0.462574 0.042804 0.000000 1.000000 0.000000 0.000000 -0.462574 0.000000 0.886581 4.296856 0.000000 0.000000 0.000000 1.000000</float_array>
+          <technique_common>
+            <accessor source="#joint6-Matrix-animation-output-transform-array" count="48" stride="16">
+              <param type="float4x4"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <source id="joint6-Interpolations">
+          <Name_array id="joint6-Interpolations-array" count="48">
+ LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR
+LINEAR</Name_array>
+          <technique_common>
+            <accessor source="#joint6-Interpolations-array" count="48">
+              <param type="name"/>
+            </accessor>
+          </technique_common>
+        </source>
+        <sampler id="joint6-Matrix-animation-transform">
+          <input semantic="INPUT" source="#joint6-Matrix-animation-input"/>
+          <input semantic="OUTPUT" source="#joint6-Matrix-animation-output-transform"/>
+          <input semantic="INTERPOLATION" source="#joint6-Interpolations"/>
+        </sampler>
+        <channel source="#joint6-Matrix-animation-transform" target="joint6/matrix"/>
+      </animation>
+    </animation>
+  </library_animations>
+  <library_visual_scenes>
+    <visual_scene id="" name="">
+      <node name="polySurface17" id="polySurface17" sid="polySurface17">
+        <matrix sid="matrix">-1.000000 0.000000 0.000000 0.588980 0.000000 0.000000 1.000000 0.054709 0.000000 1.000000 -0.000000 0.818401 0.000000 0.000000 0.000000 1.000000</matrix>
+        <extra>
+          <technique profile="FCOLLADA">
+            <visibility>1.000000</visibility>
+          </technique>
+        </extra>
+        <node name="Album_Cute" id="Album_Cute" sid="Album_Cute">
+          <instance_controller url="#Album_CuteController">
+            <bind_material>
+              <technique_common>
+                <instance_material symbol="Album_Texture" target="#Album_Texture"/>
+              </technique_common>
+            </bind_material>
+          </instance_controller>
+          <extra>
+            <technique profile="FCOLLADA">
+              <visibility>1.000000</visibility>
+            </technique>
+          </extra>
+        </node>
+      </node>
+      <node name="page" id="page" sid="page">
+        <matrix sid="matrix">1.000000 0.000000 0.000000 -0.145980 0.000000 0.000000 -1.000000 0.000000 -0.000000 1.000000 0.000000 1.283335 0.000000 0.000000 0.000000 1.000000</matrix>
+        <instance_geometry url="#page-lib">
+          <bind_material>
+            <technique_common>
+              <instance_material symbol="Album_Texture" target="#Album_Texture"/>
+            </technique_common>
+          </bind_material>
+        </instance_geometry>
+        <extra>
+          <technique profile="FCOLLADA">
+            <visibility>1.000000</visibility>
+          </technique>
+        </extra>
+      </node>
+      <node name="joint1" id="joint1" sid="joint1" type="JOINT">
+        <matrix sid="matrix">1.000000 0.000000 0.000000 0.015813 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -2.335608 0.000000 0.000000 0.000000 1.000000</matrix>
+        <extra>
+          <technique profile="FCOLLADA">
+            <visibility>1.000000</visibility>
+          </technique>
+        </extra>
+        <node name="joint2" id="joint2" sid="joint2" type="JOINT">
+          <matrix sid="matrix">-0.004360 0.000000 -0.999990 -5.651458 0.000000 1.000000 0.000000 0.000000 0.999990 0.000000 -0.004360 0.057088 0.000000 0.000000 0.000000 1.000000</matrix>
+          <extra>
+            <technique profile="FCOLLADA">
+              <visibility>1.000000</visibility>
+            </technique>
+          </extra>
+          <node name="joint3" id="joint3" sid="joint3" type="JOINT">
+            <matrix sid="matrix">0.991384 -0.000000 0.130987 3.491203 -0.000000 1.000000 0.000000 0.000000 -0.130987 -0.000000 0.991384 -0.000000 0.000000 0.000000 0.000000 1.000000</matrix>
+            <extra>
+              <technique profile="FCOLLADA">
+                <visibility>1.000000</visibility>
+              </technique>
+            </extra>
+            <node name="joint4" id="joint4" sid="joint4" type="JOINT">
+              <matrix sid="matrix">0.134885 0.000000 0.990861 0.507404 -0.000000 1.000000 0.000000 0.000000 -0.990861 -0.000000 0.134885 -0.000000 0.000000 0.000000 0.000000 1.000000</matrix>
+              <extra>
+                <technique profile="FCOLLADA">
+                  <visibility>1.000000</visibility>
+                </technique>
+              </extra>
+              <node name="joint8" id="joint8" sid="joint8" type="JOINT">
+                <matrix sid="matrix">0.999966 -0.000000 0.008294 8.546385 0.000000 1.000000 -0.000000 -0.000000 -0.008294 0.000000 0.999966 -0.000000 0.000000 0.000000 0.000000 1.000000</matrix>
+                <extra>
+                  <technique profile="FCOLLADA">
+                    <visibility>1.000000</visibility>
+                  </technique>
+                </extra>
+              </node>
+              <node name="cover_image" id="cover_image" sid="cover_image">
+                <matrix sid="matrix">0.999966 -0.000000 0.008294 5.572175 -0.000000 1.000000 -0.000000 0.000000 -0.008294 -0.000000 0.999966 -1.762244 0.000000 0.000000 0.000000 1.000000</matrix>
+                <instance_geometry url="#cover_image-lib">
+                  <bind_material>
+                    <technique_common>
+                      <instance_material symbol="Album_Cute_00011_lambert4" target="#Album_Cute_00011_lambert4"/>
+                    </technique_common>
+                  </bind_material>
+                </instance_geometry>
+                <extra>
+                  <technique profile="FCOLLADA">
+                    <visibility>1.000000</visibility>
+                  </technique>
+                </extra>
+              </node>
+            </node>
+          </node>
+        </node>
+        <node name="joint5" id="joint5" sid="joint5" type="JOINT">
+          <matrix sid="matrix">1.000000 0.000000 0.000000 5.782546 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 -0.042495 0.000000 0.000000 0.000000 1.000000</matrix>
+          <extra>
+            <technique profile="FCOLLADA">
+              <visibility>1.000000</visibility>
+            </technique>
+          </extra>
+          <node name="joint6" id="joint6" sid="joint6" type="JOINT">
+            <matrix sid="matrix">1.000000 0.000000 0.000000 0.042804 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 4.296856 0.000000 0.000000 0.000000 1.000000</matrix>
+            <extra>
+              <technique profile="FCOLLADA">
+                <visibility>1.000000</visibility>
+              </technique>
+            </extra>
+            <node name="joint7" id="joint7" sid="joint7" type="JOINT">
+              <matrix sid="matrix">1.000000 0.000000 0.000000 -2.432528 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.363634 0.000000 0.000000 0.000000 1.000000</matrix>
+              <extra>
+                <technique profile="FCOLLADA">
+                  <visibility>1.000000</visibility>
+                </technique>
+              </extra>
+            </node>
+          </node>
+        </node>
+      </node>
+      <extra>
+        <technique profile="MAX3D">
+          <frame_rate>24.000000</frame_rate>
+        </technique>
+        <technique profile="FCOLLADA">
+          <start_time>0.041667</start_time>
+          <end_time>2.000000</end_time>
+        </technique>
+      </extra>
+    </visual_scene>
+  </library_visual_scenes>
+  <scene>
+    <instance_visual_scene url="#"></instance_visual_scene>
+  </scene>
+</COLLADA>
+
diff --git a/resources/models/AlbumCute.dali-bin b/resources/models/AlbumCute.dali-bin
new file mode 100644 (file)
index 0000000..3af03c1
Binary files /dev/null and b/resources/models/AlbumCute.dali-bin differ
diff --git a/resources/models/Dino.mtl b/resources/models/Dino.mtl
new file mode 100644 (file)
index 0000000..049595a
--- /dev/null
@@ -0,0 +1,11 @@
+newmtl lambert2SG
+illum 4
+Kd 0.00 0.00 0.00
+Ka 0.00 0.00 0.00
+Tf 1.00 1.00 1.00
+map_Kd Dino-Painted_lambert2SG_color.png
+bump Dino-Painted_lambert2SG_nmap.png -bm 0.05
+Ni 1.00
+Ks 0.00 0.00 0.00
+map_Ks Dino-Painted_lambert2SG_gloss.png
+Ns 100.00
diff --git a/resources/models/Dino.obj b/resources/models/Dino.obj
new file mode 100644 (file)
index 0000000..7791ca2
--- /dev/null
@@ -0,0 +1,40729 @@
+# This file uses centimeters as units for non-parametric coordinates.
+
+mtllib Dino-Painted-trangulated.mtl
+g default
+v -2.990040 4.546638 1.637447
+v -3.030455 4.597074 1.650190
+v -2.963290 4.600993 1.261707
+v -2.986865 4.613688 2.074133
+v -2.984807 4.561486 1.833176
+v -3.074069 4.692977 1.663944
+v -2.995825 4.692977 1.222233
+v -3.037874 4.692977 2.069571
+v -3.088796 4.792712 1.668587
+v -3.009018 4.792712 1.218222
+v -2.912962 4.709117 1.028547
+v -2.935804 4.642348 1.139036
+v -2.989674 4.692977 2.171791
+v -2.971988 4.660830 2.167292
+v -3.048938 4.771697 2.079508
+v -3.057724 4.785048 2.003756
+v -2.868148 4.791738 0.898626
+v -3.030407 4.903895 1.445206
+v -2.995825 4.892447 1.222233
+v -3.076795 4.873988 1.664803
+v -3.013235 4.743669 2.143333
+v -2.811894 4.907079 0.819860
+v -2.974720 4.944247 1.228645
+v -2.814317 4.968375 0.889671
+v 0.455584 4.547046 2.756721
+v 0.481858 4.597074 2.789532
+v 0.222459 4.616557 3.111761
+v 0.372136 4.557773 2.879383
+v 0.420687 4.540450 2.917933
+v 0.651557 4.597762 2.404856
+v 0.534114 4.546803 2.581911
+v 0.510445 4.692977 2.825228
+v 0.254663 4.692977 3.142117
+v 0.220835 4.619258 3.140612
+v 0.622644 4.529284 2.582747
+v 0.691218 4.692977 2.414677
+v 0.240461 4.764953 3.165817
+v 0.520097 4.792712 2.837280
+v 0.341916 4.794654 3.057560
+v 0.167087 4.691651 3.193762
+v 0.156736 4.666129 3.183384
+v 0.765641 4.629588 2.287937
+v 0.729375 4.692977 2.199276
+v 0.694993 4.644406 2.275637
+v 0.704412 4.792712 2.418686
+v 0.256515 4.787745 3.223396
+v 0.482839 4.851830 2.972919
+v 0.168730 4.713521 3.305191
+v 0.153433 4.671968 3.220102
+v 0.209310 4.621598 3.239428
+v 0.751748 4.747441 2.115835
+v 0.770873 4.792197 2.043095
+v 0.510677 4.868237 2.830769
+v 0.691218 4.892447 2.414677
+v 0.596171 4.898145 2.624561
+v 0.508482 4.934960 3.017540
+v 0.432447 4.836648 2.935291
+v 0.312167 4.527642 3.195509
+v 0.468131 4.474055 2.907187
+v 0.642339 4.461905 2.567822
+v 0.866843 4.784387 2.024237
+v 0.708911 4.913047 2.628614
+v 0.669520 4.936469 2.417770
+v 0.261788 4.841069 3.285316
+v 0.219998 4.570489 3.336966
+v 0.789241 4.543365 2.273237
+v 0.889611 4.637389 2.031778
+v 0.772241 4.871970 1.969259
+v 0.795942 4.978660 2.265333
+v 0.769463 4.892447 1.972963
+v 0.753300 4.926269 1.969049
+v 0.729422 4.961356 2.031981
+v 0.693749 4.956565 2.244970
+v 0.751457 5.013865 2.633951
+v 0.408207 4.999633 3.137053
+v 0.157385 4.742076 3.379255
+v 0.156410 4.648410 3.372192
+v 0.229493 4.511500 3.368607
+v 0.382138 4.417754 3.112616
+v 0.506229 4.368457 2.833979
+v 0.762303 4.413838 2.252232
+v 0.924224 4.662934 1.851789
+v 0.765210 4.897405 1.951271
+v 0.817109 4.998960 1.994362
+v 0.699023 5.145885 2.669857
+v 0.164288 4.867402 3.464420
+v 0.626710 4.348125 2.517887
+v 0.859457 4.484944 2.018017
+v 0.902350 4.560369 1.793125
+v 0.911923 4.765121 1.799110
+v 0.845590 4.924233 1.926987
+v 0.844697 5.067893 2.192581
+v 0.393336 5.101588 2.986498
+v 0.146577 4.979251 3.448448
+v 0.071258 4.748240 3.587563
+v 0.102024 4.632739 3.543339
+v 0.186785 4.399665 3.426092
+v 0.419461 4.253200 2.899746
+v 0.527222 4.236503 2.672653
+v 0.753151 4.285945 2.069679
+v 0.703018 4.264556 2.249393
+v 0.865190 5.052543 1.848772
+v 0.809127 5.166337 2.103058
+v 0.505989 5.178515 2.801128
+v -0.081421 4.842570 3.905304
+v 0.600042 4.195041 2.425415
+v 0.818360 4.418443 1.798864
+v 0.901680 4.697299 1.638012
+v 0.889922 4.923305 1.757860
+v 0.652088 5.222653 2.561951
+v 0.424532 5.196681 2.880194
+v 0.196770 5.068938 3.184803
+v -0.071354 4.943797 3.734213
+v -0.137792 4.722613 4.075380
+v -0.041926 4.586080 3.926401
+v 0.261961 3.894729 3.102314
+v 0.603771 3.931193 2.197435
+v 0.846819 4.634048 1.560886
+v 0.835295 5.101600 1.687571
+v 0.693387 5.223634 2.080078
+v 0.594395 5.285541 2.591530
+v -0.362580 4.872828 4.403009
+v -0.206754 4.293944 4.360867
+v 0.908654 4.115762 1.422665
+v 0.872738 4.911481 1.567692
+v 0.612370 5.288276 2.125343
+v 0.485958 5.274169 2.975882
+v 0.206070 5.085402 3.352097
+v -0.040533 4.963262 3.776821
+v -0.419675 4.751824 4.655651
+v 0.124615 2.864311 3.451979
+v 0.625109 2.656433 1.990156
+v 1.073750 2.754673 0.767452
+v 0.977689 4.555261 1.167225
+v 0.786697 4.904763 1.479681
+v 0.711164 5.133616 1.628370
+v 0.680970 5.408751 2.240541
+v 0.682976 5.418855 2.616066
+v -0.119832 5.024333 4.049026
+v -0.563771 5.148402 4.629547
+v -0.366821 3.006401 4.718588
+v 1.409631 3.530934 0.218189
+v 0.651097 5.213618 1.415319
+v 0.767691 5.434764 1.773457
+v 0.568517 5.431529 3.054033
+v 0.233926 5.183860 3.549667
+v -0.208201 5.291366 4.125612
+v -0.724304 4.922492 5.141321
+v -0.531069 4.225640 5.129166
+v -0.320944 1.906097 4.262461
+v 0.464342 1.374343 2.461773
+v 1.005460 1.341977 0.860397
+v 1.904244 2.964683 -1.195360
+v 1.524641 4.440833 0.056517
+v 0.857457 4.911487 1.090441
+v 0.867795 5.606433 2.262928
+v 0.208008 5.441598 3.614326
+v -0.816905 5.575858 4.293909
+v -1.222739 5.300570 5.093716
+v -1.111336 2.081815 6.148703
+v -0.843238 3.130846 5.879112
+v 1.586324 1.341363 -0.939814
+v 2.020470 4.319388 -1.253695
+v 1.310672 4.939981 -0.003416
+v 0.944071 5.391015 0.838634
+v 1.084799 5.516816 0.593628
+v 0.550461 5.689313 3.080498
+v -0.243570 5.617236 3.926716
+v -1.088509 4.714080 6.106033
+v -0.871260 4.131904 5.997808
+v -1.175763 1.770711 5.966213
+v 0.194945 1.324512 2.733149
+v 0.680304 0.884205 1.881313
+v 1.132243 0.608562 0.483812
+v 1.975448 2.717726 -2.198786
+v 1.997969 4.219544 -2.245869
+v 1.710731 4.989612 -1.258345
+v 1.029792 5.199626 0.202564
+v 0.825845 5.849452 2.161259
+v 0.162411 5.743880 3.435080
+v -1.847071 5.577395 4.027824
+v -0.299525 5.891921 3.154528
+v -1.550822 5.035323 6.024529
+v -2.100235 1.698786 8.119534
+v -0.482822 1.594781 4.113649
+v -1.298672 3.285789 7.022678
+v 0.435926 1.090675 2.275763
+v 1.575565 0.365889 -1.096914
+v 1.809132 1.213356 -2.102665
+v 1.622024 5.059735 -2.130798
+v 1.315239 5.275283 -0.735912
+v 1.040846 5.736957 0.493748
+v 0.468231 5.940673 2.983255
+v -0.163867 5.854817 3.372477
+v -0.733281 5.740264 2.977743
+v -2.078737 5.426599 4.858477
+v -1.314404 3.933066 7.061584
+v -1.646940 4.277703 7.558582
+v -1.554191 1.724760 6.437229
+v -2.110226 1.980695 8.329247
+v -1.595020 2.749145 7.595623
+v 0.187837 1.260801 2.578400
+v -0.049984 1.370219 3.001387
+v 0.436324 0.886145 2.273993
+v 1.076371 0.229618 0.666611
+v 1.631134 1.219631 -2.683949
+v 1.690262 4.079940 -2.974463
+v 1.494689 4.828715 -2.892811
+v 1.278546 5.443246 -1.183214
+v 0.872465 5.957227 0.593445
+v 0.681681 6.070928 2.120993
+v 0.131231 5.975974 2.900934
+v -1.531636 5.694680 2.777596
+v -2.914564 5.300570 4.557446
+v -0.322719 5.877017 2.760509
+v -2.084802 4.538129 7.535072
+v -2.362797 5.142406 5.787764
+v -1.657311 1.713145 6.679090
+v -2.811605 1.593273 9.688974
+v -0.830360 1.608630 4.731524
+v -1.626691 3.423009 7.888271
+v 0.279368 1.161167 2.314341
+v -0.352679 1.447525 3.602535
+v -1.592312 3.771247 7.773996
+v 0.284567 1.016128 2.256865
+v 0.491360 0.672600 2.365932
+v 1.558293 -0.346143 -1.042540
+v 1.753694 0.365514 -2.070625
+v 1.609195 0.456095 -2.627880
+v 1.696950 2.652245 -2.852160
+v 1.032491 5.376510 -2.296043
+v 0.858594 5.732759 -1.155466
+v 0.358269 6.078769 2.690296
+v -0.370833 5.812644 1.627151
+v -2.712164 5.644416 3.188606
+v -3.162978 5.035325 5.512608
+v 0.137091 6.102895 2.001640
+v -2.184335 3.999497 8.854624
+v -1.860075 1.690306 7.154665
+v -1.362345 1.746367 5.987267
+v -2.817795 1.892673 9.822083
+v -2.195858 2.736475 8.927835
+v -0.712426 1.569448 4.452789
+v -1.050337 1.681712 5.251431
+v -1.833240 3.159286 8.369289
+v 0.094873 1.239719 2.626530
+v -0.471043 1.489251 3.882286
+v -0.097778 1.337858 3.020527
+v 0.908753 -0.021426 1.215004
+v 1.130506 -0.635589 0.540497
+v 1.757695 -0.207803 -2.140516
+v 1.084633 0.486288 -2.959242
+v 1.099090 1.221723 -3.023323
+v 1.191175 4.009906 -3.360504
+v 1.221661 4.657718 -3.282688
+v 1.031359 5.101766 -2.908772
+v 0.530401 5.998528 0.490358
+v 0.639906 6.083411 0.947172
+v 0.463268 6.167468 2.019012
+v -1.118419 5.763494 1.277090
+v -2.523887 5.694680 2.368753
+v -3.199463 5.148402 3.798393
+v -3.589910 4.714080 5.315928
+v -0.040622 5.960101 1.792061
+v -1.777683 3.967135 8.132954
+v -2.641439 4.008719 9.161499
+v -2.835413 4.624938 7.333904
+v -3.564820 4.538131 7.063540
+v -2.062828 1.667469 7.630207
+v -1.758317 1.701768 6.915997
+v -1.268388 1.744404 5.766388
+v -2.785246 1.588494 9.322689
+v -3.037239 1.619172 9.876841
+v -3.210586 1.630346 10.245050
+v -0.591395 1.529236 4.166735
+v -0.941417 1.645526 4.994003
+v -1.672823 3.716844 8.061214
+v -1.720861 3.494287 8.214890
+v 0.059092 1.167917 2.601109
+v 0.281853 0.873319 2.303871
+v 0.396870 0.142040 2.606798
+v 1.443335 -1.729705 -0.329977
+v 1.680724 -1.342895 -1.747480
+v 1.604607 -0.135609 -2.660795
+v 1.061661 -0.097718 -2.978884
+v 1.142461 2.630418 -3.215561
+v 0.178714 5.482100 -2.552019
+v -0.109925 5.684011 -1.677275
+v 0.130258 5.808276 0.149406
+v -3.212385 5.291366 3.181831
+v -3.352484 4.922492 4.312464
+v -3.939070 4.277703 6.832439
+v 0.306263 5.926478 0.702667
+v -2.076635 3.916091 8.850494
+v -2.433489 3.759585 9.530678
+v -3.281064 4.107974 8.791744
+v -2.140587 1.658711 7.812580
+v -1.454142 1.736029 6.202568
+v -1.357871 1.652757 5.972706
+v -2.727772 1.593172 9.189312
+v -2.940918 1.574419 9.673973
+v -3.018337 1.565463 9.798004
+v -3.210696 1.863332 10.334526
+v -2.754690 2.605837 9.893169
+v -2.164376 3.216939 9.110569
+v -1.195519 1.663089 5.505184
+v -1.289415 1.661602 5.756945
+v -1.887983 3.338809 8.637421
+v -0.132816 1.277617 3.002419
+v 0.058015 1.056817 2.301720
+v 0.063247 0.996122 2.591085
+v 0.404566 -0.638859 2.463314
+v -0.344768 0.727441 4.114187
+v 1.009445 -2.105568 1.110703
+v 1.769697 -0.888597 -2.350193
+v 0.370040 0.486288 -3.177658
+v 0.390024 1.221723 -3.241737
+v 0.859809 4.798703 -3.306459
+v 0.449976 2.630418 -3.433979
+v 0.335458 5.216281 -3.063990
+v -0.593409 5.768874 -0.304386
+v -2.074691 5.763494 0.834452
+v -3.239524 4.872828 3.498119
+v -3.071935 5.617236 3.036673
+v -3.333416 4.751824 3.739513
+v -3.709393 4.131904 5.104780
+v -3.936789 3.933066 6.234499
+v -1.802945 3.849277 8.353754
+v -2.287709 3.768867 9.371983
+v -2.650314 3.726106 9.700542
+v -3.484226 3.825299 9.456129
+v -4.218194 3.999497 8.207422
+v -2.208982 1.651007 7.972996
+v -1.965451 1.680763 7.401817
+v -1.470772 1.648812 6.184765
+v -1.586272 1.667659 6.428957
+v -2.488410 1.619534 8.628378
+v -2.883988 1.580452 9.556732
+v -3.110366 1.557650 9.909164
+v -3.203115 1.611521 10.084549
+v -3.382319 1.630346 10.278852
+v -3.180602 2.562291 10.218212
+v -2.426599 3.393428 9.562998
+v -0.936967 1.555750 4.978798
+v -1.068476 1.597062 5.233818
+v -1.667831 3.707688 8.150980
+v -1.710697 3.527001 8.285187
+v -0.272390 1.349679 3.315523
+v -0.237417 1.257002 2.953630
+v -0.049983 1.148184 2.537155
+v -0.371695 1.371554 3.582260
+v 0.098440 0.906450 2.612976
+v -0.540077 -0.296350 4.236645
+v -0.339370 0.258249 4.166752
+v 1.456208 -3.682472 0.050482
+v 1.736658 -3.064567 -1.260437
+v 1.590842 -1.052727 -2.759539
+v 0.323785 -0.087349 -3.182938
+v 0.495791 4.209281 -3.580940
+v -0.327919 5.101766 -3.323652
+v -0.678281 5.376510 -2.798590
+v -1.312694 5.755704 -1.427189
+v -3.242789 5.024333 3.068943
+v -3.271432 5.441598 2.525282
+v -2.828225 5.854817 2.532562
+v -3.505760 4.225640 4.194397
+v -4.104706 3.771249 6.980532
+v -2.011109 3.871293 8.845715
+v -2.197199 3.762599 9.290298
+v -2.340444 3.533227 9.518360
+v -3.169327 3.742534 9.678127
+v -4.012457 4.008719 8.722347
+v -4.151750 3.967135 7.381767
+v -2.278270 1.643203 8.135506
+v -1.875711 1.602784 7.138521
+v -1.753919 1.608155 6.901619
+v -1.443473 1.514649 6.076212
+v -1.344688 1.522587 5.929604
+v -2.659464 1.600268 9.029575
+v -3.131376 1.500986 9.844860
+v -3.348227 1.611521 10.134392
+v -3.425001 1.843917 10.352207
+v -3.470072 2.484629 10.238171
+v -3.101342 3.302632 10.007988
+v -2.716179 3.335677 9.887035
+v -2.115115 3.407611 9.151436
+v -0.745962 1.518644 4.438808
+v -0.850236 1.527256 4.716364
+v -1.377668 1.633334 5.666645
+v -1.207268 1.578980 5.259012
+v -1.861339 3.399865 8.659004
+v -0.375567 1.330215 3.273468
+v -0.042146 1.035961 2.524994
+v -0.158343 1.176779 2.471237
+v -0.610016 1.450465 4.147289
+v -0.466920 1.404950 3.866861
+v -0.094508 0.930744 3.007551
+v -0.494024 0.898242 4.101727
+v 0.330969 -2.527024 1.782942
+v -0.288998 -1.294191 2.991552
+v -1.167742 0.761076 5.827059
+v 0.770654 -4.138286 0.695307
+v 1.655533 -2.283554 -2.673096
+v 0.992743 -1.052130 -3.037804
+v -0.344553 0.486288 -3.396074
+v -0.319042 1.221723 -3.460154
+v -0.242510 2.630418 -3.652395
+v 0.423257 4.939692 -3.348560
+v -0.197984 4.009906 -3.806499
+v 0.040033 4.798703 -3.561531
+v -1.590907 5.768874 -0.708443
+v -3.242640 4.722613 3.100830
+v -3.156356 4.963262 2.798918
+v -3.133490 5.743880 2.402134
+v -2.594051 5.891921 2.427652
+v -3.345055 4.293944 3.376093
+v -3.666272 3.130846 4.990700
+v -3.928077 3.285789 6.193445
+v -1.786465 3.816844 8.405735
+v -2.264205 3.586829 9.466030
+v -2.953958 3.659770 9.815735
+v -3.866493 3.742536 9.454391
+v -3.637720 3.325147 9.957787
+v -4.305101 3.916091 8.143810
+v -4.389611 3.759585 8.907238
+v -2.349018 1.635235 8.301443
+v -1.994748 1.620988 7.393299
+v -1.674989 1.625653 6.665260
+v -1.602669 1.618930 6.208096
+v -1.564333 1.510597 6.104424
+v -1.312871 1.529645 5.767187
+v -2.421796 1.627037 8.472141
+v -2.592902 1.605184 8.873459
+v -2.835960 1.584749 9.441299
+v -2.948959 1.490261 9.655094
+v -3.040708 1.508229 9.764891
+v -3.214275 1.498572 9.901592
+v -3.211124 1.555046 9.987785
+v -3.328926 1.555046 10.035122
+v -3.511413 1.611521 10.146606
+v -3.556849 1.630346 10.281462
+v -2.066036 3.451367 9.123074
+v -1.038056 1.451838 5.115887
+v -0.923792 1.426858 4.935480
+v -1.296852 1.643269 5.477173
+v -1.165716 1.458585 5.148041
+v -1.689229 3.681621 8.271044
+v -1.725713 3.548528 8.381817
+v -0.456314 1.334658 3.462767
+v -0.342834 1.276956 2.906929
+v -0.190478 1.077545 2.848600
+v -0.147982 1.010144 2.460539
+v -0.034627 1.044694 2.074642
+v -0.453854 1.277884 3.823467
+v -0.121352 1.040911 2.999779
+v -1.009134 -0.723372 4.301090
+v -1.192414 0.294861 5.809227
+v 1.662404 -5.277057 -0.884420
+v 1.662404 -3.576808 -3.306650
+v 0.936098 -2.150220 -3.273520
+v 0.185020 -1.010651 -3.198771
+v -0.414090 -0.097718 -3.361111
+v -0.268492 4.657718 -3.756172
+v -0.720336 4.828715 -3.567503
+v -1.495051 5.443246 -2.021793
+v -3.194288 4.842570 2.928303
+v -3.256767 5.183860 2.457184
+v -3.107012 4.943797 2.780809
+v -3.256783 5.689311 1.891258
+v -2.809156 5.975972 1.976650
+v -2.413194 5.694680 2.588154
+v -3.412369 3.006401 3.762161
+v -4.140089 3.423009 7.094500
+v -4.198522 3.716844 7.263680
+v -1.974991 3.834632 8.839825
+v -2.141804 3.741212 9.243620
+v -2.200841 3.594239 9.407806
+v -4.305517 3.726106 9.171207
+v -4.421684 3.768867 8.694180
+v -4.254217 3.849277 7.578968
+v -2.304968 1.585549 8.125618
+v -2.223247 1.563297 7.956928
+v -2.136262 1.565098 7.798378
+v -2.081993 1.579387 7.623917
+v -1.753766 1.600907 6.571928
+v -1.999959 1.571529 7.164854
+v -1.845747 1.468685 7.025944
+v -1.740761 1.477986 6.858576
+v -1.682602 1.647030 6.404354
+v -1.529752 1.401818 6.009781
+v -1.442541 1.433727 5.998222
+v -1.365019 1.410810 5.878668
+v -2.540665 1.608933 8.750938
+v -2.809821 1.530227 9.315414
+v -2.880622 1.492448 9.546453
+v -3.192231 1.479749 9.772804
+v -3.130729 1.481511 9.742849
+v -3.472089 1.555046 10.052422
+v -3.596779 1.785670 10.360754
+v -3.619583 2.251643 10.288250
+v -0.933226 1.491570 4.603477
+v -0.750834 1.433393 4.167173
+v -0.876679 1.400576 4.732635
+v -1.392915 1.531056 5.691551
+v -1.399249 1.665035 5.452442
+v -1.295051 1.595897 5.165398
+v -1.856111 3.454583 8.694618
+v -0.480048 1.346413 3.234835
+v -0.191980 1.249965 2.439917
+v -0.079147 1.171531 2.045515
+v -0.577137 1.305500 4.022261
+v -0.398349 1.248709 3.597702
+v -0.232850 1.053457 3.309578
+v -0.237584 0.949108 3.325190
+v -1.234162 0.920566 5.796761
+v -0.127368 -4.325669 0.834579
+v -0.509472 -2.749150 1.860485
+v -1.049739 -1.536999 2.992762
+v -1.367507 -0.217351 5.762156
+v -2.054707 0.219536 7.448586
+v 0.949945 -5.844391 -0.251310
+v 1.899890 -4.400968 -2.114904
+v -0.963389 0.456095 -3.415791
+v -0.950057 1.219631 -3.472754
+v -0.912718 2.652245 -3.641260
+v -1.277464 5.059735 -2.935621
+v -2.222663 5.736957 -0.522911
+v -3.238797 4.586080 2.923725
+v -3.143197 4.748240 2.579512
+v -3.123279 5.085402 2.308926
+v -3.256951 5.431529 1.859226
+v -3.134324 5.940673 1.856581
+v -2.312845 6.102897 1.228968
+v -2.354645 5.877017 2.113899
+v -3.111623 2.864311 2.437267
+v -3.594846 2.081815 5.364063
+v -4.002485 2.749160 6.832422
+v -1.791982 3.762559 8.473642
+v -4.105922 3.302632 9.685499
+v -4.120131 3.659770 9.442261
+v -4.451011 3.762599 8.575867
+v -4.356710 3.871293 8.103230
+v -4.459802 3.533227 8.845022
+v -4.413380 3.393428 8.930185
+v -2.156334 1.552870 7.541454
+v -1.697029 1.485760 6.674068
+v -1.960743 1.463302 7.059055
+v -2.082531 1.599311 7.367496
+v -1.692257 1.648664 6.132317
+v -1.778956 1.669305 6.379808
+v -1.642338 1.511660 6.029417
+v -1.346403 1.444939 5.769131
+v -2.655221 1.506657 9.015560
+v -2.742913 1.504601 9.180626
+v -2.850192 1.500185 9.431257
+v -3.029888 1.457795 9.646273
+v -2.930068 1.372764 9.596039
+v -3.233339 1.430497 9.785454
+v -3.303229 1.460273 9.938210
+v -3.064826 1.486800 9.716106
+v -3.440237 1.449318 9.981821
+v -3.627931 1.555046 10.054707
+v -3.726151 1.630346 10.246914
+v -3.720370 2.406967 10.228016
+v -2.153309 3.595468 9.345490
+v -0.846414 1.499593 4.399670
+v -0.707282 1.312359 4.051426
+v -1.125658 1.338666 5.040648
+v -1.033517 1.362251 5.026033
+v -0.944215 1.314871 4.881227
+v -1.517523 1.662281 5.703449
+v -1.239564 1.448166 5.051476
+v -1.738775 3.654656 8.372093
+v -2.035100 3.491092 9.098112
+v -1.769961 3.561511 8.462414
+v -0.603058 1.367861 3.494867
+v -0.380317 1.338426 2.895077
+v -0.337712 1.059000 2.882711
+v -0.226993 1.173495 2.914169
+v -0.073949 0.883587 2.075682
+v -0.136059 1.023353 1.916386
+v -0.471538 1.237173 3.487614
+v -0.570283 1.215001 3.924606
+v -0.474590 1.165767 3.766949
+v -0.161451 1.165712 3.035553
+v -0.473105 0.979805 3.881729
+v -2.064644 0.731088 7.486109
+v -0.994059 0.995479 5.155415
+v -1.651596 -0.904903 4.230543
+v -1.752350 -0.514831 5.704731
+v -2.172800 -0.182022 7.274693
+v -2.035810 0.601889 7.568626
+v 1.751958 -7.029008 -1.892666
+v 2.002237 -5.803017 -3.038298
+v 1.751958 -4.654113 -4.131132
+v 0.949945 -3.165261 -3.823544
+v 0.046255 -2.072716 -3.387951
+v -0.622702 -1.052130 -3.256218
+v -1.036631 -0.135609 -3.359501
+v -0.839951 4.079940 -3.734962
+v -1.549633 4.219544 -3.176258
+v -1.862203 4.989612 -2.189165
+v -1.776422 5.275283 -1.657738
+v -2.141957 5.957227 -0.343351
+v -3.148659 4.399665 2.381060
+v -3.151441 4.867402 2.425413
+v -3.127844 4.979251 2.422070
+v -3.022085 5.068938 2.175407
+v -2.972505 5.849452 0.976336
+v -3.062969 5.606433 1.036190
+v -2.879515 6.078769 1.675114
+v -1.908651 5.763494 1.163551
+v -3.029990 3.894729 2.070576
+v -3.195468 1.906097 3.358307
+v -4.244610 3.494287 7.417953
+v -4.237804 3.159284 7.608782
+v -4.252822 3.707688 7.335323
+v -1.955514 3.775630 8.832357
+v -2.101369 3.705123 9.189938
+v -4.156716 2.562291 9.900698
+v -4.355286 3.335677 9.363018
+v -4.493712 3.586829 8.759027
+v -4.296918 3.816844 7.612862
+v -2.362853 1.547464 8.285414
+v -2.328990 1.532286 7.957088
+v -2.200979 1.428121 7.864382
+v -2.123129 1.434928 7.755394
+v -2.100691 1.439627 7.627174
+v -1.765796 1.486566 6.589535
+v -2.077402 1.600412 7.081188
+v -2.170286 1.620538 7.341629
+v -1.923222 1.354873 6.957333
+v -1.840175 1.387778 6.941828
+v -1.758235 1.365886 6.806973
+v -1.590452 1.431617 5.963373
+v -1.461087 1.372378 5.840611
+v -2.566396 1.555669 8.742893
+v -2.603967 1.520051 8.853374
+v -2.918671 1.471632 9.373558
+v -2.872559 1.378713 9.520321
+v -3.217793 1.462348 9.660610
+v -3.162727 1.495789 9.658297
+v -3.106171 1.477407 9.606224
+v -3.572989 1.498577 9.969963
+v -3.674589 1.592696 10.078123
+v -3.748053 1.824501 10.318577
+v -3.929709 2.484629 10.084373
+v -0.950471 1.389929 4.633162
+v -0.948112 1.516900 4.364029
+v -0.836010 1.446396 4.057051
+v -0.913961 1.324210 4.741282
+v -1.515814 1.527353 5.719135
+v -1.401189 1.417162 5.700130
+v -1.436106 1.734118 5.452463
+v -1.323663 1.694465 5.180058
+v -1.206704 1.554463 4.891914
+v -1.880354 3.495765 8.721558
+v -0.518739 1.400990 3.230049
+v -0.603664 1.244434 3.518478
+v -0.357301 0.926100 2.873089
+v -0.184500 0.902844 2.443560
+v -0.281732 1.271138 1.969297
+v -0.290502 1.337943 2.448162
+v -0.167238 1.139046 1.892811
+v -0.664662 1.191624 3.937916
+v -0.438434 1.173052 3.610622
+v -0.218343 1.170329 3.262074
+v -0.372461 1.064476 3.584822
+v -0.591102 0.995185 4.160557
+v -0.355534 0.964481 3.603909
+v -1.583574 0.933930 6.424473
+v -0.827122 1.025946 4.718271
+v -1.271548 1.002872 5.787088
+v 0.000000 -6.050869 -0.084101
+v -1.045226 -4.138286 0.628839
+v -1.429257 -2.527024 1.517078
+v -1.929274 -1.294106 2.557816
+v -2.649624 -0.107955 8.210930
+v -2.750652 0.121067 8.696941
+v 1.001119 -7.802956 -1.276796
+v 1.001119 -4.111424 -4.588615
+v 0.000000 -3.062641 -3.913277
+v -1.390712 0.365514 -3.038103
+v -1.424971 1.213356 -3.073717
+v -1.538374 2.717726 -3.171028
+v -2.310954 5.516814 -0.468243
+v -1.801428 5.998528 -0.237272
+v -3.143969 4.632739 2.525646
+v -3.098130 4.742076 2.358652
+v -3.144885 5.274169 1.840559
+v -2.831346 6.070928 1.024208
+v -3.107011 5.418855 1.432102
+v -2.593100 6.167468 1.061409
+v -2.048862 5.960101 1.154818
+v -2.709289 2.656433 0.945444
+v -2.839818 1.374343 1.426479
+v -3.536643 1.765000 5.287889
+v -3.985980 1.980695 7.730371
+v -4.249562 2.736475 8.274569
+v -1.823227 3.711303 8.528324
+v -4.326554 2.605837 9.388773
+v -4.513662 3.594239 8.675341
+v -4.470812 3.741212 8.506205
+v -4.383336 3.834632 8.078159
+v -4.441403 3.407611 8.414852
+v -4.377759 3.216939 8.408493
+v -2.432034 1.519982 8.205334
+v -2.417504 1.533427 8.458014
+v -2.298663 1.423000 7.872681
+v -2.384897 1.563246 8.095554
+v -2.169244 1.438423 7.561188
+v -1.883300 1.481556 6.622379
+v -1.730757 1.400537 6.681099
+v -1.885037 1.624454 6.607737
+v -2.027003 1.463734 6.974789
+v -1.717687 1.752785 6.140873
+v -1.626193 1.654471 5.910946
+v -1.565923 1.408170 5.831244
+v -1.612560 1.519066 5.866371
+v -2.504788 1.531292 8.620079
+v -2.722253 1.368545 9.095213
+v -2.642115 1.376487 8.972637
+v -2.840984 1.471735 9.189718
+v -2.862474 1.380176 9.428936
+v -2.883321 1.506064 9.293068
+v -3.011302 1.363727 9.600288
+v -2.933706 1.301409 9.549339
+v -3.240725 1.282745 9.664074
+v -3.304352 1.282735 9.867195
+v -3.417216 1.282734 9.917707
+v -3.509460 1.282739 9.900215
+v -3.696595 1.555046 10.020947
+v -3.882197 1.630346 10.169243
+v -3.893724 1.785670 10.258282
+v -3.835191 2.251643 10.213833
+v -2.134108 3.594361 9.286167
+v -1.078075 1.396446 4.662411
+v -1.076478 1.524721 4.637888
+v -0.778492 1.300422 3.939636
+v -1.182765 1.359462 4.977461
+v -1.040556 1.275808 4.833225
+v -1.496127 1.443137 5.733723
+v -1.542139 1.761656 5.710051
+v -1.214555 1.655988 4.915733
+v -1.192395 1.421655 4.845722
+v -1.818226 3.642819 8.404816
+v -2.033517 3.521316 9.071796
+v -1.847494 3.568601 8.484615
+v -0.632769 1.448407 3.506298
+v -0.724967 1.271649 3.715570
+v -0.500522 1.414561 2.874556
+v -0.351010 1.185989 2.934700
+v -0.484889 1.071109 3.184353
+v -0.198162 1.238787 3.041716
+v -0.125860 0.877503 1.925007
+v -0.137447 0.803546 2.163452
+v -0.292975 1.031598 2.011322
+v -0.589932 1.169767 3.551435
+v -0.487854 1.135234 3.515059
+v -0.571873 1.126317 3.712143
+v -0.338035 1.181241 3.456558
+v -0.235198 1.265826 3.198467
+v -0.710332 1.010725 4.442295
+v -1.789416 0.914883 6.801050
+v -2.728430 0.505726 8.868849
+v -0.937800 1.040372 4.979809
+v -1.160796 1.069431 5.506756
+v -0.949945 -5.844391 -0.251312
+v -2.372516 -0.723032 3.895460
+v -2.249154 -0.609762 5.601379
+v -2.441555 -0.368838 7.195648
+v -2.739930 0.409233 8.930410
+v 1.848793 -9.078012 -3.172918
+v 2.112906 -7.334826 -4.175535
+v 1.848793 -5.717846 -5.108013
+v 1.056453 -5.002886 -5.469471
+v 0.000000 -3.991637 -4.658518
+v -0.843588 -2.150220 -3.328123
+v -1.253701 -1.052727 -3.193010
+v -1.428503 -0.207803 -3.024197
+v -2.156487 4.319388 -2.270969
+v -2.209246 4.939981 -0.976784
+v -2.057072 5.199626 -0.734478
+v -1.480214 5.768874 -0.489042
+v -2.145678 6.083411 0.078722
+v -3.151912 4.511500 2.309526
+v -3.047255 4.253200 1.814589
+v -3.132117 4.841069 2.222414
+v -3.170549 4.999633 2.017651
+v -3.074092 5.101588 1.901123
+v -3.040528 5.196681 1.795544
+v -2.895490 5.408751 1.121841
+v -1.732658 5.926478 0.062433
+v -2.808733 3.931193 1.132406
+v -2.768171 1.295780 1.801918
+v -3.133375 1.566049 3.325380
+v -3.874907 1.753552 7.626225
+v -4.292314 3.527001 7.470562
+v -4.342299 3.338809 7.861706
+v -4.302194 3.681621 7.446838
+v -1.960253 3.720450 8.820423
+v -2.086783 3.671105 9.137707
+v -4.234222 1.892673 9.363998
+v -4.195463 1.863332 10.009579
+v -4.330297 3.762559 7.672255
+v -2.375393 1.408247 8.275646
+v -2.404382 1.403257 8.415052
+v -2.404794 1.559397 7.887886
+v -2.464781 1.583844 8.065384
+v -2.199307 1.346313 7.793747
+v -2.137682 1.322537 7.702745
+v -2.270152 1.433364 7.573072
+v -2.125975 1.354853 7.619101
+v -2.273277 1.575825 7.564281
+v -1.867993 1.397312 6.642891
+v -1.777012 1.372321 6.605190
+v -1.907809 1.728684 6.611031
+v -2.099844 1.704400 7.086283
+v -1.998936 1.607287 6.833057
+v -1.975182 1.384221 6.903856
+v -1.845732 1.326485 6.766918
+v -1.632016 1.763789 5.929920
+v -1.811105 1.740915 6.371708
+v -2.605620 1.499254 8.623524
+v -2.672169 1.491308 8.783844
+v -2.815180 1.361326 9.117018
+v -2.612241 1.381179 8.834881
+v -2.923514 1.375754 9.377682
+v -2.956761 1.524795 9.270576
+v -2.888463 1.281520 9.486942
+v -3.070588 1.357697 9.548885
+v -3.335826 1.454573 9.648758
+v -3.238059 1.282738 9.760281
+v -3.196017 1.567966 9.617096
+v -3.143498 1.543905 9.614943
+v -3.526131 1.479767 9.843147
+v -3.692067 1.498577 9.911211
+v -3.844026 1.611521 10.030571
+v -4.028898 1.843917 10.147533
+v -1.063160 1.321218 4.690125
+v -0.964224 1.287174 4.654490
+v -0.985385 1.575168 4.360546
+v -0.865156 1.532766 4.069279
+v -0.739476 1.400816 3.761686
+v -1.424004 1.775244 5.158201
+v -1.532934 1.817505 5.431507
+v -1.318295 1.734231 4.892965
+v -1.103543 1.616838 4.646795
+v -1.942124 3.516213 8.717110
+v -0.643844 1.470147 3.200645
+v -0.677925 1.161091 3.686026
+v -0.241685 1.268201 2.937538
+v -0.492136 0.944180 3.208714
+v -0.218357 0.791815 2.439903
+v -0.173593 0.766365 2.048180
+v -0.272480 0.887437 2.017845
+v -0.399740 1.214509 1.807362
+v -0.784912 1.391548 2.236074
+v -0.593520 1.410913 2.500942
+v -0.354605 1.141471 1.992317
+v -0.720021 1.211358 3.863907
+v -0.328621 1.249877 3.354977
+v -0.460893 1.192342 3.481834
+v -0.503969 1.048973 3.868149
+v -1.905457 0.865192 7.062742
+v -1.678144 0.957397 6.556633
+v -1.422713 1.040393 6.050119
+v -1.047360 1.054650 5.238705
+v -1.283962 1.069688 5.778912
+v -1.001119 -7.802956 -1.276796
+v 0.000000 -8.076919 -1.101303
+v -1.662404 -5.277057 -0.884422
+v -1.721640 -3.682472 -0.065653
+v -2.071173 -2.105568 0.646173
+v -2.943701 -0.295841 3.515415
+v -2.760131 -0.514322 5.416531
+v -2.938431 -0.197208 8.455620
+v -3.104656 0.088243 9.166412
+v 1.056453 -10.171596 -2.601040
+v 0.000000 -4.870910 -5.507446
+v -0.949945 -3.165261 -3.823544
+v -1.782038 0.365889 -2.135946
+v -1.881967 1.341363 -1.991684
+v -2.059236 2.964683 -2.240463
+v -2.329989 5.391015 -0.187635
+v -3.093375 4.648410 2.353342
+v -3.135298 4.417754 2.011957
+v -3.066136 4.713521 2.290899
+v -3.019922 5.285541 1.461260
+v -2.706299 5.434764 0.686077
+v -2.409168 2.754673 -0.290644
+v -2.394328 1.341977 -0.202705
+v -2.663507 1.155693 1.289415
+v -4.156692 1.653220 9.288879
+v -1.883932 3.687955 8.540628
+v -4.466208 3.451367 8.363907
+v -4.518208 3.595468 8.597103
+v -4.474306 3.705123 8.439095
+v -4.395297 3.775630 8.061085
+v -2.436055 1.406595 8.203676
+v -2.485537 1.395598 8.536293
+v -2.363992 1.421735 7.803104
+v -2.269332 1.313592 7.790710
+v -2.250547 1.350196 7.577961
+v -2.172269 1.325159 7.557091
+v -2.290796 1.680251 7.558853
+v -1.941999 1.361309 6.755550
+v -1.985779 1.471882 6.790012
+v -2.003334 1.716605 6.847439
+v -2.199499 1.691797 7.332911
+v -1.723830 1.850123 5.913479
+v -1.807462 1.838814 6.126434
+v -2.581376 1.389242 8.553770
+v -2.643279 1.532394 8.718029
+v -2.783893 1.252154 9.030300
+v -2.717618 1.286394 9.023951
+v -2.654094 1.263525 8.922014
+v -2.909831 1.496484 9.131716
+v -3.006500 1.368325 9.382078
+v -2.884155 1.307376 9.425604
+v -3.012211 1.490715 9.378994
+v -2.992520 1.270281 9.546917
+v -3.038313 1.290725 9.514458
+v -3.070093 1.479777 9.482971
+v -2.956997 1.243141 9.454926
+v -3.324884 1.575992 9.611479
+v -3.334737 1.282758 9.645685
+v -3.270051 1.173295 9.674801
+v -3.394390 1.134977 9.842758
+v -3.314102 1.173285 9.817165
+v -3.111601 1.569867 9.577003
+v -3.466833 1.173290 9.842260
+v -3.513894 1.282754 9.803112
+v -3.822626 1.555046 9.926119
+v -4.022634 1.630346 10.060781
+v -2.155733 3.594777 9.236950
+v -1.145667 1.310969 4.813910
+v -0.747929 1.491422 3.785286
+v -1.635928 1.847102 5.690670
+v -1.210721 1.692494 4.623043
+v -1.902282 3.631705 8.489534
+v -2.072499 3.536572 9.039371
+v -1.944100 3.581386 8.551918
+v -0.754371 1.514831 3.477980
+v -0.854102 1.478511 2.801849
+v -0.338232 1.253394 2.968416
+v -0.469543 1.195508 3.133930
+v -0.582132 1.079040 3.486567
+v -0.390984 0.823435 2.873096
+v -0.324549 1.306052 3.134550
+v -0.316207 0.754805 2.415417
+v -1.079306 1.278195 1.648304
+v -0.446054 0.916234 2.380516
+v -0.469440 1.059832 2.374023
+v -0.417110 1.282336 3.363289
+v -0.504460 1.102331 3.599859
+v -2.015982 0.817285 7.311090
+v -1.559842 0.997609 6.312115
+v -2.419269 0.663787 8.182035
+v -2.826934 0.479832 8.979286
+v -3.059445 0.430605 9.388990
+v -1.156014 1.169919 5.491016
+v -1.295789 1.158507 5.760235
+v -1.751958 -7.029008 -1.892668
+v -2.672157 -0.638778 1.593214
+v -3.166348 -0.216587 5.238888
+v -3.093268 -0.368499 7.007542
+v -2.776526 -0.408476 7.132814
+v -3.093804 0.345015 9.440159
+v 2.225711 -11.604720 -4.558300
+v 2.343181 -8.691053 -5.166656
+v 2.179320 -6.547776 -6.227448
+v 1.120079 -5.568252 -6.401737
+v 0.000000 -5.436342 -6.411232
+v -1.001119 -4.111424 -4.588615
+v -1.627967 -2.283554 -2.805674
+v -1.531251 -0.888597 -2.992004
+v -1.848886 -0.346143 -2.007395
+v -2.415063 3.530934 -0.848333
+v -2.443060 4.440833 -0.989691
+v -2.410500 4.911487 0.098049
+v -2.411422 5.213618 0.458828
+v -3.123659 4.527642 2.119793
+v -3.126363 4.570489 2.288597
+v -3.082376 4.368457 1.711567
+v -3.009611 4.236503 1.566065
+v -3.093146 4.787745 2.174019
+v -3.186825 4.934960 1.862513
+v -3.150364 5.145885 1.467739
+v -3.063820 5.178515 1.684462
+v -2.774287 5.288276 1.064657
+v -2.638571 4.115762 0.344913
+v -2.695509 0.884205 0.825537
+v -2.712182 1.090675 1.287989
+v -2.675804 1.260369 1.677574
+v -2.715184 1.369249 2.161215
+v -3.062567 1.660767 4.065578
+v -4.333876 3.548528 7.559078
+v -4.376431 3.399865 7.864712
+v -4.317622 3.654656 7.558317
+v -1.996780 3.695245 8.801128
+v -2.108937 3.655927 9.095387
+v -4.145108 1.630346 9.933865
+v -4.334973 3.711303 7.735058
+v -2.417312 1.290586 8.362938
+v -2.533047 1.400604 8.219231
+v -2.400386 1.323152 8.270210
+v -2.539953 1.542424 8.221304
+v -2.481633 1.313674 8.463852
+v -2.425258 1.663247 7.891617
+v -2.357910 1.561901 7.721453
+v -2.216416 1.282263 7.659557
+v -2.303919 1.316213 7.645056
+v -2.344778 1.426496 7.678473
+v -1.897646 1.825419 6.356043
+v -2.171381 1.785518 7.050322
+v -2.269570 1.769396 7.302097
+v -2.678325 1.525125 8.561926
+v -2.720082 1.552018 8.692966
+v -2.670108 1.378647 8.767532
+v -2.871839 1.358438 9.051451
+v -2.636485 1.295859 8.830585
+v -2.990321 1.298121 9.390852
+v -2.926679 1.279301 9.379963
+v -3.028739 1.590315 9.378675
+v -3.062256 1.360768 9.457647
+v -3.491926 1.576000 9.601978
+v -3.449369 1.282766 9.695301
+v -3.262589 1.134980 9.733078
+v -3.302335 1.650064 9.539896
+v -3.659119 1.479767 9.776949
+v -3.496171 1.503836 9.708929
+v -3.808215 1.449318 9.845396
+v -3.970032 1.611521 9.921581
+v -0.979652 1.602840 4.043251
+v -1.096198 1.648060 4.335686
+v -0.866008 1.558746 3.758097
+v -1.620268 1.797193 4.799389
+v -1.716289 1.839051 5.067543
+v -1.815243 1.882181 5.343840
+v -1.522552 1.754593 4.526478
+v -2.095398 3.559180 8.953745
+v -1.995659 3.545609 8.733253
+v -1.007563 1.530079 3.088161
+v -0.423597 1.284710 3.102360
+v -0.525276 1.198732 3.365194
+v -0.607745 0.959639 3.496780
+v -0.524887 0.848034 3.208843
+v -0.283393 0.805257 2.122236
+v -0.561357 1.211018 1.930347
+v -1.013906 1.239663 1.613125
+v -1.176842 1.353741 1.907782
+v -0.539598 1.167765 2.354548
+v -0.596375 1.078564 3.827026
+v -0.705514 1.119575 4.426483
+v -0.607388 1.098825 4.141735
+v -2.110704 0.780125 7.515478
+v -1.575494 1.085359 6.251493
+v -1.448426 1.083467 6.016392
+v -2.267242 0.721117 7.853455
+v -2.528694 0.629965 8.411736
+v -2.692348 0.588719 8.754807
+v -0.967237 1.094642 4.970181
+v -1.062237 1.145540 5.221157
+v -1.848793 -9.078012 -3.172918
+v -1.056453 -10.171596 -2.601040
+v 0.000000 -10.555984 -2.422785
+v -2.002237 -5.803017 -3.038298
+v -1.899890 -4.400968 -2.114906
+v -2.078008 -1.729705 -0.858782
+v -2.327668 -0.635589 -0.386009
+v -3.348872 0.295370 5.157158
+v -2.875051 0.142125 1.593534
+v -3.361242 -0.181512 6.924885
+v -3.259833 -0.169829 8.718737
+v -3.262585 0.116773 9.257822
+v 1.159389 -12.640322 -4.031254
+v -1.056453 -5.002886 -5.469471
+v -1.662404 -3.576808 -3.306652
+v -1.785967 -1.342895 -2.303076
+v -2.292883 0.608562 -0.582245
+v -3.062998 4.621598 2.213694
+v -3.091728 4.474055 1.793560
+v -2.931767 4.195041 1.320362
+v -3.005914 4.671968 2.228893
+v -3.051182 5.222653 1.404491
+v -2.859799 4.285945 0.939827
+v -2.604058 1.160196 1.407467
+v -2.803017 1.476557 2.736094
+v -2.978133 1.601939 3.633083
+v -3.125997 1.701013 4.447735
+v -3.198858 1.718762 4.866838
+v -3.296703 1.746367 5.370476
+v -4.082931 1.619172 9.531672
+v -1.962057 3.664134 8.592985
+v -4.477884 3.491092 8.325920
+v -4.500962 3.594361 8.537186
+v -4.457200 3.671105 8.387636
+v -4.384702 3.720450 8.053839
+v -2.516825 1.317382 8.228989
+v -2.441067 1.293089 8.204405
+v -2.559932 1.646215 8.224915
+v -2.550058 1.280075 8.466976
+v -2.362228 1.671218 7.735632
+v -2.491347 1.654889 8.055178
+v -2.321013 1.341599 7.749420
+v -2.360158 1.754401 7.534830
+v -1.989873 1.811578 6.590357
+v -2.079634 1.798928 6.817429
+v -1.910501 1.912664 5.611015
+v -1.995436 1.916579 5.851807
+v -2.075756 1.904345 6.079853
+v -2.640885 1.387225 8.483723
+v -2.764243 1.371785 8.787556
+v -2.774670 1.513018 8.799664
+v -2.828780 1.279013 8.991005
+v -2.725107 1.221538 8.884897
+v -2.926324 1.600445 9.130543
+v -2.856276 1.498890 8.954819
+v -2.981160 1.595206 9.262878
+v -3.030736 1.268062 9.439939
+v -3.072784 1.583603 9.490814
+v -3.512313 1.624106 9.547211
+v -3.424353 1.173308 9.699097
+v -3.338281 1.134995 9.657549
+v -3.161156 1.630013 9.567936
+v -3.470083 1.134992 9.767227
+v -3.363122 1.085733 9.739639
+v -3.704821 1.282739 9.814955
+v -3.930208 1.555046 9.827385
+v -2.136772 3.597732 9.093273
+v -1.418516 1.709238 4.235912
+v -2.045565 3.611455 8.767820
+v -1.107971 1.573853 3.368591
+v -1.372455 1.494967 2.547682
+v -0.467661 1.263246 3.285894
+v -0.689587 1.057583 3.788733
+v -0.486369 0.789214 2.852842
+v -0.413592 0.795162 2.389240
+v -1.641560 1.214509 1.426929
+v -1.682377 1.391548 1.951117
+v -0.612606 0.950643 2.822454
+v -0.635306 1.094241 2.815212
+v -0.678593 1.134613 4.022467
+v -0.844137 1.121457 4.704155
+v -2.193249 0.749479 7.691175
+v -1.805353 1.004437 6.757399
+v -1.675633 1.063329 6.509752
+v -2.340107 0.693175 8.013386
+v -3.024093 0.446979 9.229010
+v -2.859524 0.519255 9.023129
+v -3.213894 0.430605 9.447754
+v -1.256213 1.354726 5.640697
+v -1.141490 1.346761 5.443470
+v -1.418539 1.184627 5.790871
+v -2.112906 -7.334826 -4.175535
+v -1.895326 -3.064567 -1.392639
+v -2.524038 -0.021425 0.152992
+v -3.136957 0.258588 3.309980
+v -3.485606 -0.107729 7.953932
+v -3.381932 -0.197123 8.315647
+v -3.256169 0.352147 9.504929
+v 2.417676 -14.381248 -5.508099
+v 2.804344 -9.566360 -5.651705
+v 3.036652 -8.166239 -6.388248
+v 2.310318 -6.129172 -7.278549
+v 0.000000 -5.423817 -7.321046
+v -1.120079 -5.568251 -6.401737
+v -1.751958 -4.654113 -4.131132
+v -2.353328 0.229618 -0.396053
+v -2.558775 4.555261 0.108770
+v -2.557870 4.904765 0.431858
+v -3.058433 4.540450 1.828985
+v -3.046387 4.461905 1.414806
+v -3.005535 4.348125 1.382137
+v -2.918702 4.264556 1.116861
+v -3.140648 4.851830 1.839846
+v -3.173732 5.013865 1.408663
+v -2.578395 5.133616 0.597363
+v -2.816103 5.223634 0.981850
+v -2.762473 4.418443 0.678827
+v -2.762177 0.983489 1.289942
+v -2.576242 1.015573 1.356903
+v -2.625692 1.235836 1.769436
+v -2.889105 1.539909 3.177061
+v -2.718925 1.390140 2.307842
+v -2.925143 1.562177 3.419292
+v -3.028801 1.633813 3.950050
+v -3.143942 1.681712 4.585968
+v -3.090306 1.645526 4.311644
+v -3.251097 1.744404 5.134821
+v -3.714772 1.726956 7.066828
+v -3.389242 1.724760 5.850792
+v -4.030990 1.580452 9.180599
+v -4.054533 1.565463 9.455740
+v -4.342262 3.561511 7.650637
+v -4.400665 3.454583 7.891321
+v -4.270093 3.642819 7.629848
+v -2.027816 3.672210 8.794655
+v -2.113356 3.641929 8.994814
+v -4.291564 3.687955 7.779184
+v -2.491179 1.249470 8.321346
+v -2.573813 1.282578 8.308443
+v -2.613049 1.392580 8.342394
+v -2.626168 1.527983 8.385344
+v -2.489283 1.736531 7.863529
+v -2.553559 1.728108 8.027748
+v -2.429106 1.744370 7.710598
+v -2.157172 1.886379 6.308800
+v -2.479894 1.809642 7.209938
+v -2.386024 1.836324 6.942514
+v -2.568419 1.784296 7.463200
+v -2.694974 1.629137 8.559120
+v -2.748721 1.288795 8.796055
+v -2.675089 1.265145 8.768185
+v -2.796121 1.616346 8.809437
+v -2.804888 1.253774 8.876472
+v -2.843173 1.363486 8.911911
+v -2.860508 1.608203 8.968784
+v -3.032299 1.667395 9.248589
+v -3.556250 1.576000 9.569542
+v -3.609823 1.503836 9.651834
+v -3.461983 1.679837 9.382729
+v -3.268601 1.679837 9.440056
+v -3.646883 1.282754 9.736916
+v -3.896961 1.460273 9.731441
+v -3.791010 1.282734 9.777908
+v -4.061602 1.611521 9.796600
+v -1.209392 1.618068 3.651850
+v -1.312637 1.663079 3.940203
+v -1.936710 1.782254 4.393501
+v -2.021358 1.824854 4.670406
+v -2.104543 1.866712 4.942486
+v -2.190278 1.909842 5.222822
+v -1.846586 1.736899 4.098686
+v -1.490591 1.557740 2.934135
+v -0.722867 0.975032 3.783636
+v -0.639206 0.869076 3.495329
+v -0.616746 0.815985 3.186579
+v -0.732926 1.235340 2.299522
+v -1.017220 1.234200 1.794924
+v -1.928862 1.270983 1.448677
+v -1.491564 1.211018 1.658300
+v -0.581047 0.829571 2.830051
+v -0.703408 1.202174 2.793486
+v -0.810621 1.296227 4.580769
+v -0.690978 1.286608 4.378910
+v -0.631589 1.280481 4.153942
+v -2.089341 0.893536 7.469572
+v -2.017354 0.910462 7.271944
+v -1.925966 0.911134 7.028160
+v -1.662791 1.263310 6.454853
+v -1.626269 1.123880 6.131807
+v -3.166121 0.447006 9.291767
+v -3.010261 0.496100 9.176308
+v -2.626061 0.645979 8.581367
+v -2.798582 0.589688 8.944489
+v -1.130379 1.175752 5.118876
+v -0.971010 1.158181 4.732119
+v -1.369430 1.357471 5.686646
+v -1.083978 1.339572 5.230104
+v -1.527079 1.096138 5.976635
+v -2.346902 -8.855957 -5.216896
+v -2.221169 -11.313633 -4.603817
+v -1.296176 -12.437016 -4.133923
+v -0.034197 -13.022543 -3.900948
+v -1.848793 -5.717847 -5.108013
+v -3.549910 0.219876 6.989889
+v -3.371098 0.761203 5.136202
+v -2.810365 0.672610 1.333464
+v -3.095431 0.727526 3.253860
+v -3.636128 0.088243 8.987997
+v -3.430419 0.145304 9.279285
+v -3.370306 0.202364 9.372004
+v 1.353367 -14.899152 -5.374649
+v 2.810258 -12.911759 -5.167152
+v 2.687846 -11.077540 -5.160954
+v 3.260634 -7.459031 -7.151056
+v 1.196128 -5.536132 -7.321046
+v -3.017323 4.619258 2.125313
+v -3.038412 4.529284 1.438189
+v -3.135506 4.913047 1.428013
+v -3.004314 5.067893 0.990578
+v -2.924818 5.166337 0.936222
+v -2.969398 4.413838 1.086082
+v -2.653054 4.634048 0.465595
+v -2.918989 4.484944 0.837580
+v -2.711522 0.886145 1.286299
+v -2.581845 1.161121 1.768353
+v -2.686288 1.332033 2.203794
+v -2.821048 1.488730 2.886292
+v -2.743722 1.398210 2.539026
+v -2.917941 1.529236 3.430073
+v -3.035617 1.608630 4.031933
+v -2.977541 1.569448 3.734905
+v -3.165486 1.663089 4.877510
+v -3.228402 1.661602 5.138739
+v -3.695400 1.712160 7.395647
+v -3.645296 1.727201 6.730797
+v -3.487705 1.701768 6.361855
+v -3.340981 1.736029 5.600302
+v -3.292274 1.652757 5.355904
+v -3.902246 1.660944 8.368647
+v -3.981991 1.588494 8.931355
+v -4.040419 1.557650 9.599340
+v -4.395637 3.495765 7.927208
+v -4.464489 3.521316 8.303217
+v -4.455544 3.594777 8.508461
+v -4.415198 3.655927 8.364925
+v -4.343664 3.695245 8.058254
+v -2.630451 1.637297 8.399439
+v -2.620941 1.719205 8.200392
+v -2.597047 1.307580 8.424339
+v -2.235984 1.867706 6.528122
+v -2.308495 1.853350 6.727301
+v -2.274297 1.940467 5.497505
+v -2.352334 1.944811 5.752623
+v -2.496261 1.910895 6.223301
+v -2.745570 1.622739 8.684334
+v -2.915105 1.680405 8.953268
+v -2.979056 1.672644 9.115616
+v -3.078619 1.662495 9.365005
+v -3.121797 1.655779 9.477680
+v -3.698145 1.575992 9.478230
+v -3.678155 1.650064 9.410656
+v -3.707744 1.173290 9.743076
+v -4.000892 1.555046 9.720842
+v -1.754866 1.690740 3.798647
+v -1.577571 1.601514 3.218670
+v -1.973619 1.530079 2.780109
+v -0.812607 1.109390 4.059128
+v -1.914526 1.139046 1.365612
+v -1.753761 1.141471 1.592728
+v -1.940467 1.478511 2.455961
+v -2.207306 1.336972 1.838867
+v -0.707805 0.856342 3.161480
+v -0.738158 0.977414 3.153112
+v -0.760426 1.121012 3.145613
+v -0.929903 1.303135 4.620070
+v -0.693069 1.284046 4.045311
+v -2.177310 0.846696 7.644798
+v -1.914985 1.017269 6.769627
+v -1.772452 1.232686 6.633215
+v -1.602301 1.291908 6.249836
+v -2.509466 0.723903 8.356895
+v -2.406165 0.772198 8.173149
+v -3.143214 0.496210 9.242439
+v -2.669041 0.694919 8.675678
+v -2.891618 0.556337 9.053802
+v -2.777658 0.667091 8.910145
+v -3.293042 0.447089 9.293156
+v -3.347980 0.430605 9.446354
+v -1.055543 1.115573 4.941360
+v -1.326505 1.516445 5.570194
+v -1.245071 1.472308 5.546329
+v -1.118069 1.461504 5.241421
+v -1.484305 1.157787 5.707808
+v -1.607898 1.079489 5.952374
+v -2.154722 -6.611860 -6.252206
+v -3.669264 0.121151 8.402172
+v -3.554824 0.116773 9.155989
+v -3.385764 0.373545 9.531782
+v 3.050724 -16.035881 -6.642187
+v 2.811294 -12.117941 -5.135525
+v 2.903868 -14.088450 -5.551931
+v 3.798486 -9.235888 -6.375035
+v 3.481645 -10.059160 -5.813522
+v 4.019506 -8.755458 -6.974242
+v 3.551210 -7.418768 -8.232668
+v 1.257823 -5.430916 -9.240535
+v -1.196128 -5.536132 -7.321046
+v 0.000000 -5.315126 -9.240535
+v -2.678326 4.911481 0.456753
+v -2.992116 4.629588 1.113825
+v -3.004584 4.978662 1.078148
+v -2.714304 5.101600 0.577082
+v -2.828841 4.560369 0.627132
+v -2.413641 1.054875 1.520704
+v -2.647143 1.267424 2.208361
+v -2.858675 1.489251 3.126953
+v -2.800387 1.446554 2.828840
+v -3.119073 1.597062 4.581499
+v -3.085496 1.555750 4.296547
+v -3.711865 1.692336 7.505684
+v -3.647004 1.707484 7.169031
+v -3.587616 1.678437 6.880449
+v -3.536788 1.690306 6.616625
+v -3.438983 1.713145 6.108967
+v -3.358046 1.667659 5.861860
+v -3.317259 1.648812 5.594833
+v -4.049350 1.574419 9.309628
+v -3.987082 1.500986 9.557762
+v -4.290443 3.568601 7.712374
+v -4.247809 3.631705 7.747070
+v -4.256107 3.664134 7.866257
+v -2.690435 1.709926 8.378595
+v -2.740383 1.755229 7.945913
+v -2.681520 1.763844 7.779655
+v -2.804198 1.745638 8.127380
+v -2.629913 1.771282 7.635927
+v -2.846664 1.788174 7.369684
+v -2.764591 1.820401 7.101171
+v -2.679137 1.854098 6.821602
+v -2.598878 1.935962 5.942327
+v -2.753949 1.701446 8.541414
+v -2.803393 1.694940 8.667904
+v -2.852525 1.688548 8.793407
+v -3.137640 1.696710 9.071800
+v -3.185961 1.691458 9.206329
+v -3.708574 1.454573 9.510874
+v -3.650732 1.679837 9.310482
+v -3.425887 1.686555 9.264687
+v -3.228278 1.686555 9.324638
+v -3.640084 1.282766 9.611460
+v -3.663121 1.134992 9.682674
+v -3.856274 1.282735 9.672949
+v -3.950113 1.498572 9.651133
+v -3.768033 1.134977 9.703003
+v -1.665429 1.645729 3.506073
+v -2.350867 1.754593 4.260527
+v -2.422448 1.797193 4.541426
+v -2.492789 1.839051 4.817430
+v -2.565282 1.882181 5.101814
+v -2.635752 1.912637 5.376558
+v -2.274657 1.709238 3.961456
+v -2.047172 1.573853 3.068748
+v -0.838291 0.990466 4.071243
+v -0.753080 0.890030 3.780729
+v -0.727074 0.838889 3.468128
+v -0.898000 1.285509 2.793375
+v -1.125825 1.257866 2.186384
+v -1.537578 1.235340 2.068686
+v -2.135840 1.170560 1.399437
+v -1.787468 1.167765 1.999981
+v -1.987372 1.410913 2.057877
+v -0.827227 1.228945 3.123116
+v -0.885752 1.447845 4.500635
+v -0.799862 1.404291 4.481831
+v -0.706559 1.435449 4.319767
+v -0.667663 1.393051 4.164406
+v -2.153712 1.047890 7.542200
+v -2.070220 1.084810 7.415005
+v -2.074225 0.940589 7.169346
+v -2.269928 0.772599 7.821318
+v -1.874941 1.218788 6.658825
+v -1.999107 0.917521 6.984215
+v -1.759597 1.378242 6.540802
+v -1.673871 1.448588 6.397345
+v -1.647328 1.299730 6.144258
+v -2.340983 0.784903 7.997883
+v -3.257039 0.496540 9.249626
+v -3.127880 0.584466 9.216009
+v -2.727725 0.680932 8.614559
+v -2.699377 0.678851 8.795483
+v -2.610285 0.726021 8.362883
+v -3.007065 0.545220 9.146641
+v -2.862009 0.648080 8.935219
+v -2.867771 0.582907 8.988634
+v -1.142395 1.339157 5.135746
+v -1.144724 1.097743 4.915483
+v -1.044908 1.128401 4.635002
+v -1.425888 1.355636 5.594870
+v -1.155550 1.508413 5.387812
+v -2.882921 -8.566765 -6.542990
+v -2.819231 -10.225972 -5.852654
+v -2.662066 -12.784907 -5.732979
+v -1.900517 -14.085930 -5.785326
+v -0.136787 -15.011072 -5.388191
+v -3.625079 0.601974 7.063282
+v -2.962269 0.898242 3.321754
+v -2.761545 0.801579 1.794250
+v -3.802385 0.409254 8.583010
+v -3.793553 0.345015 9.203125
+v -3.529677 0.202364 9.314774
+v -3.491985 0.359280 9.480730
+v 1.721330 -16.536388 -6.680020
+v 3.261102 -14.768540 -6.052561
+v 3.091331 -12.486153 -5.185661
+v 3.316827 -13.606776 -5.534569
+v 3.172532 -11.233293 -5.275185
+v 4.267865 -8.710279 -7.682971
+v 2.597791 -5.955510 -9.196577
+v -2.280540 -6.219387 -7.297649
+v -3.003451 4.543365 1.088446
+v -2.829154 5.052543 0.694040
+v -2.870689 4.998960 0.841633
+v -2.741600 4.697299 0.498888
+v -2.951658 4.637389 0.832140
+v -2.660867 0.828444 1.282656
+v -2.600263 0.873319 1.397400
+v -2.579686 0.996122 1.757719
+v -2.455751 1.140416 1.776279
+v -2.533229 1.245351 2.226360
+v -2.706502 1.342882 2.545982
+v -2.773306 1.370466 2.822655
+v -2.941949 1.518644 3.742052
+v -3.010682 1.527256 4.030472
+v -3.104832 1.633334 5.113186
+v -3.018181 1.578980 4.679953
+v -3.279106 1.522587 5.312794
+v -3.705086 1.651007 7.490160
+v -3.745209 1.700528 7.654175
+v -3.672094 1.658711 7.318922
+v -3.634586 1.667469 7.124245
+v -3.514816 1.602784 6.611977
+v -3.483314 1.608155 6.347477
+v -3.279206 1.514649 5.489567
+v -3.797123 1.688404 7.923634
+v -3.922379 1.600266 8.618011
+v -4.006266 1.584749 9.058044
+v -4.017497 1.508229 9.440784
+v -4.032139 1.490261 9.298470
+v -4.341982 3.516213 7.958038
+v -4.414078 3.536572 8.298119
+v -4.390959 3.597732 8.378727
+v -4.355333 3.641929 8.284000
+v -4.314335 3.672210 8.070229
+v -2.870657 1.735275 8.316730
+v -2.899212 1.773177 7.541601
+v -2.560747 1.888988 6.434275
+v -2.616447 1.873507 6.616505
+v -2.700025 1.916474 5.623640
+v -2.821490 1.886067 6.092871
+v -3.022105 1.712615 8.746239
+v -3.079303 1.704473 8.907730
+v -3.812597 1.462348 9.453512
+v -3.806694 1.567966 9.406488
+v -3.808433 1.630013 9.347340
+v -3.869417 1.430497 9.565485
+v -2.197096 1.663079 3.657091
+v -2.121466 1.618068 3.360298
+v -2.398826 1.514588 2.952991
+v -2.335395 1.469176 2.661264
+v -0.947394 1.128878 4.336971
+v -1.260402 1.294764 2.605783
+v -1.986341 1.023353 1.366730
+v -1.870879 1.031598 1.570263
+v -1.914186 1.059832 1.966824
+v -2.271816 1.413105 2.310534
+v -2.283783 1.246081 1.775003
+v -0.814127 0.879246 3.438076
+v -0.843145 1.000319 3.428057
+v -0.865123 1.143916 3.420605
+v -0.813758 1.292384 4.080372
+v -0.989976 1.305271 4.515680
+v -0.708128 1.433527 4.069569
+v -2.238250 0.999443 7.570320
+v -2.032995 1.106064 7.270832
+v -2.224370 0.857716 7.659029
+v -1.972400 0.988121 6.670618
+v -2.075195 0.892707 6.956068
+v -1.832985 1.417897 6.550322
+v -1.633394 1.421994 6.256063
+v -1.749258 1.287315 6.167324
+v -1.743212 1.077507 6.160358
+v -2.477454 0.931543 8.254295
+v -2.389794 0.958320 8.130913
+v -3.229200 0.597828 9.232140
+v -2.733794 0.852555 8.612324
+v -2.673506 0.643764 8.503448
+v -2.689716 0.853921 8.769768
+v -2.577207 0.912673 8.276754
+v -3.003622 0.561594 9.055771
+v -2.844693 0.822288 8.867043
+v -2.757833 0.838170 8.856651
+v -2.927060 0.566922 9.014126
+v -3.346958 0.502403 9.227732
+v -3.470071 0.430605 9.409039
+v -1.257570 1.343320 5.179111
+v -1.258020 1.148699 5.164444
+v -1.371336 1.473403 5.511616
+v -1.236519 1.563333 5.347744
+v -1.156229 1.502710 5.157019
+v -1.510654 1.064586 5.720592
+v -1.385744 1.171053 5.429390
+v -3.141520 -7.819892 -7.227461
+v -2.895430 -11.853647 -5.482492
+v -3.552557 0.731088 7.005775
+v -3.296420 0.920566 5.140879
+v -3.695533 0.352147 9.350742
+v 2.346220 -17.140345 -7.996155
+v 3.824750 -14.880322 -6.958536
+v 4.559366 -9.248202 -6.783781
+v 4.548416 -9.608829 -6.337490
+v 4.170288 -11.177142 -5.199188
+v 4.829044 -9.309041 -7.211036
+v 4.451545 -9.147305 -8.671693
+v 3.983298 -8.019485 -9.925621
+v 0.000000 -5.592071 -13.173342
+v 1.278388 -5.776996 -13.173342
+v -1.257823 -5.430917 -9.240535
+v -2.607601 -6.109752 -9.042771
+v -2.798836 4.923305 0.604836
+v -2.840115 4.765121 0.626745
+v -2.879744 4.662934 0.663551
+v -2.455445 1.035961 1.761814
+v -2.329150 1.169983 1.782177
+v -2.597530 1.322447 2.568771
+v -2.891649 1.450465 3.424355
+v -2.853471 1.404950 3.111858
+v -3.078367 1.451840 4.466711
+v -3.072202 1.426858 4.253263
+v -3.214697 1.529645 5.160341
+v -3.065891 1.643269 4.910913
+v -2.990587 1.458585 4.564714
+v -3.738508 1.643203 7.663635
+v -3.772025 1.678287 7.817940
+v -3.558588 1.620988 6.889759
+v -3.416611 1.625653 6.107380
+v -3.221034 1.618930 5.687887
+v -3.194854 1.510597 5.580502
+v -3.890271 1.607765 8.451365
+v -3.865075 1.613648 8.320580
+v -3.955063 1.593172 8.788639
+v -4.028034 1.492448 9.170197
+v -3.957569 1.530227 8.939053
+v -3.896400 1.479749 9.532022
+v -3.930608 1.481511 9.472816
+v -4.248031 3.581386 7.822166
+v -4.284636 3.611455 8.057896
+v -3.050797 1.747215 8.037533
+v -2.993174 1.757264 7.849010
+v -2.941595 1.766008 7.680262
+v -3.111311 1.736129 8.235523
+v -2.878768 1.867343 6.318766
+v -3.171565 1.771282 7.457596
+v -3.125978 1.784270 7.280006
+v -2.986083 1.836118 6.746325
+v -2.930024 1.853040 6.524490
+v -2.761199 1.907001 5.856892
+v -2.931182 1.725833 8.489058
+v -2.977198 1.719007 8.619453
+v -3.347334 1.696710 9.007708
+v -3.296484 1.704473 8.841347
+v -3.389069 1.691458 9.144249
+v -3.707314 1.282758 9.506256
+v -3.795467 1.282745 9.468966
+v -3.619616 1.686555 9.192251
+v -3.790705 1.655779 9.250870
+v -3.662929 1.173308 9.600626
+v -3.736307 1.085733 9.600021
+v -3.820240 1.173285 9.636913
+v -3.851440 1.282738 9.547249
+v -2.722457 1.734231 4.441423
+v -2.660722 1.692494 4.157494
+v -2.783123 1.775244 4.720428
+v -2.845638 1.817505 5.007919
+v -2.905168 1.847062 5.280355
+v -2.956877 1.849965 5.514189
+v -2.594998 1.648059 3.855219
+v -2.462893 1.558746 3.247650
+v -0.954805 1.006045 4.361567
+v -0.931994 1.300573 4.286472
+v -0.867233 0.911038 4.066818
+v -0.837090 0.861696 3.749001
+v -0.938565 1.302836 3.113596
+v -1.175125 1.341057 3.020868
+v -1.904470 1.202174 2.444813
+v -2.204311 1.043939 1.390530
+v -2.024016 1.094241 2.408665
+v -2.382132 1.332601 2.257668
+v -0.931058 1.251849 3.398251
+v -0.802186 1.401444 4.111166
+v -0.933134 1.411414 4.432360
+v -0.792091 1.489717 4.269238
+v -2.216079 1.219403 7.466383
+v -2.149483 1.188862 7.464025
+v -2.081893 1.257255 7.359852
+v -2.087260 1.107511 7.191784
+v -2.315100 0.781817 7.765209
+v -1.920527 1.225126 6.555794
+v -1.743129 1.510413 6.342632
+v -1.662276 1.477352 6.164398
+v -1.742417 1.419996 6.195698
+v -1.640109 1.034596 5.965145
+v -2.395787 0.808620 7.910599
+v -2.354199 0.978306 7.991192
+v -3.306513 0.586621 9.196728
+v -3.198758 0.769818 9.157078
+v -3.062582 0.613540 9.076908
+v -2.823949 0.836120 8.620487
+v -2.671364 0.861423 8.667843
+v -2.750782 0.606586 8.482912
+v -2.635320 0.909835 8.209953
+v -2.679354 0.680406 8.301212
+v -2.903828 0.813973 8.813759
+v -2.949614 0.585829 8.917213
+v -3.417246 0.450040 9.236198
+v -1.246076 1.463860 5.204412
+v -1.176786 1.035726 4.914684
+v -1.068830 1.021291 4.645687
+v -1.370334 1.349866 5.378922
+v -1.393185 1.064651 5.453896
+v -3.753534 -9.269876 -7.181281
+v -3.476463 -9.801279 -6.711079
+v -3.457693 -11.104701 -6.180049
+v -3.056500 -12.505926 -5.758546
+v -3.215024 -14.042873 -6.574084
+v -2.119420 -15.576136 -6.812881
+v -0.172864 -17.073536 -7.423943
+v -3.775431 0.505726 8.523281
+v -2.706352 0.847104 2.147478
+v -3.260046 1.002872 5.153751
+v -2.669826 0.828321 1.666212
+v -3.791906 0.430605 9.139565
+v -3.697701 0.430605 9.277523
+v -3.605273 0.373545 9.452978
+v 1.290138 -17.480043 -8.957268
+v 3.435475 -16.615496 -7.879304
+v 3.970455 -15.517035 -7.649375
+v 3.656670 -14.433051 -6.433687
+v 3.496515 -12.481677 -4.448809
+v 3.347882 -13.185542 -4.631725
+v 4.360331 -10.267878 -5.834957
+v 4.932606 -9.732585 -8.051034
+v 3.556529 -6.995344 -11.654930
+v 2.397960 -6.197948 -13.305439
+v -3.532130 -7.875890 -8.055553
+v -2.928583 4.784387 0.838610
+v -2.856630 4.924233 0.769848
+v -2.621073 0.906450 1.756205
+v -2.331754 1.010144 1.767515
+v -2.513418 1.077545 2.113041
+v -2.419806 1.266762 2.246548
+v -2.636430 1.332716 2.770859
+v -2.840044 1.277884 3.068575
+v -2.786112 1.433393 3.519539
+v -2.878850 1.491570 3.983244
+v -2.997871 1.400576 4.058739
+v -3.106121 1.531056 5.142357
+v -2.967247 1.665035 4.947630
+v -2.893149 1.595897 4.651386
+v -3.236393 1.433727 5.424377
+v -3.233798 1.410810 5.281921
+v -3.710864 1.585549 7.670355
+v -3.684288 1.563297 7.484808
+v -3.667739 1.565098 7.304729
+v -3.615196 1.579387 7.129740
+v -3.426608 1.571528 6.703247
+v -3.476723 1.468685 6.501883
+v -3.470159 1.477986 6.304432
+v -3.299194 1.600907 6.074015
+v -3.264499 1.647030 5.895294
+v -3.170609 1.401818 5.482700
+v -3.772634 1.635234 7.840765
+v -3.839870 1.619534 8.189754
+v -3.807739 1.627037 8.022976
+v -3.918062 1.506656 8.604019
+v -3.937666 1.504601 8.789898
+v -3.988866 1.500185 9.057671
+v -3.960169 1.457795 9.336380
+v -4.014784 1.372764 9.238941
+v -3.970255 1.486800 9.413811
+v -4.347257 3.559180 8.239910
+v -3.209135 1.763844 7.605614
+v -3.057776 1.809538 7.020538
+v -2.923519 1.878040 5.771454
+v -3.114756 1.811035 6.224010
+v -3.060212 1.824952 5.978189
+v -3.246453 1.712615 8.677666
+v -3.207174 1.719007 8.549162
+v -3.553395 1.696710 8.931950
+v -3.588547 1.691458 9.070503
+v -3.856848 1.495789 9.420586
+v -3.853769 1.569867 9.324608
+v -3.837759 1.583603 9.231449
+v -2.528113 1.602840 3.547604
+v -2.575102 1.491422 3.201258
+v -2.514587 1.447436 2.905567
+v -2.454665 1.397107 2.612780
+v -0.947326 0.884562 4.030384
+v -1.341628 1.329004 2.871403
+v -1.684193 1.285509 2.567898
+v -2.167942 0.883587 1.421209
+v -1.909984 0.887437 1.562960
+v -1.956426 0.916234 1.955770
+v -2.063865 0.950643 2.396618
+v -0.920273 0.902053 3.714396
+v -0.948000 1.023126 3.702862
+v -0.969725 1.166723 3.695572
+v -2.305447 1.032644 7.478918
+v -2.274846 0.847420 7.638453
+v -2.058649 1.229021 7.263721
+v -2.183354 1.092868 7.202391
+v -2.184612 0.887152 7.196510
+v -1.993078 0.898110 6.691862
+v -1.874554 1.050089 6.400419
+v -1.869117 1.374925 6.482698
+v -1.821389 1.446661 6.317375
+v -1.859478 1.255208 6.348230
+v -1.768749 0.989806 6.200386
+v -2.542876 1.099829 8.187929
+v -2.471965 1.064379 8.181795
+v -2.402316 1.127129 8.078548
+v -3.248260 0.770148 9.107779
+v -3.125294 0.769487 9.137379
+v -2.803047 0.971156 8.614370
+v -2.831538 0.620233 8.632355
+v -2.692128 0.982514 8.652485
+v -2.754072 0.963204 8.789307
+v -2.700458 1.017013 8.715984
+v -2.588398 1.054864 8.147539
+v -3.042600 0.584579 8.952007
+v -2.999481 0.549814 8.966141
+v -2.862063 0.952337 8.753174
+v -3.394291 0.552295 9.161182
+v -3.408194 0.519107 9.206619
+v -3.588533 0.430605 9.360054
+v -1.327184 1.510742 5.339399
+v -1.283347 1.049971 5.180206
+v -1.417591 1.012005 5.447399
+v -1.535584 1.016721 5.720478
+v -3.538862 -12.440080 -5.870554
+v -3.561612 -13.067352 -6.064956
+v -3.368419 -13.299362 -6.365681
+v -3.685431 0.629965 8.032625
+v -2.796085 0.887347 2.731167
+v -3.120049 1.007771 4.436771
+v 3.155786 -17.419430 -9.107851
+v 4.280141 -14.514027 -8.226232
+v 3.938392 -13.643520 -6.161867
+v 3.641829 -13.785387 -4.983912
+v 5.093268 -9.746372 -6.683663
+v 5.095427 -10.493339 -6.078096
+v 4.153467 -12.288424 -4.353180
+v 4.966973 -11.445198 -5.354500
+v 5.278678 -10.215538 -7.612520
+v 4.909069 -10.213886 -8.836039
+v 4.530416 -9.894007 -9.424498
+v 4.360431 -8.869938 -11.310456
+v -1.278388 -5.776996 -13.173342
+v 0.000000 -6.403301 -17.492580
+v 1.285678 -6.642293 -17.492580
+v -2.478350 -6.371359 -13.253270
+v -3.639059 -7.653692 -10.683542
+v -2.681746 0.930744 2.191208
+v -2.655165 1.040911 2.199764
+v -2.489390 1.339617 2.595127
+v -2.849013 1.305500 3.302307
+v -2.759855 1.248709 2.850353
+v -2.757503 1.312359 3.399221
+v -2.836865 1.499593 3.765736
+v -2.963755 1.338666 4.453279
+v -3.031915 1.362251 4.389669
+v -3.024967 1.314871 4.219692
+v -3.188005 1.444939 5.180691
+v -3.009547 1.662277 5.221859
+v -2.875448 1.448166 4.525915
+v -3.507529 1.552870 7.102907
+v -3.399968 1.463302 6.593605
+v -3.471453 1.599311 6.917421
+v -3.403274 1.485760 6.127003
+v -3.104471 1.648630 5.675110
+v -3.170959 1.669227 5.928764
+v -3.088319 1.511660 5.561901
+v -3.839264 1.555669 8.328289
+v -3.869883 1.520051 8.440893
+v -4.020109 1.378713 9.144020
+v -3.899894 1.471632 9.048096
+v -3.874598 1.477407 9.345802
+v -4.306658 3.545609 8.001343
+v -3.352594 1.735275 8.156651
+v -3.301832 1.745638 7.962502
+v -3.166258 1.726047 8.415295
+v -3.167315 1.798463 6.462526
+v -3.412600 1.736531 7.558958
+v -3.376987 1.744370 7.398521
+v -3.335875 1.754362 7.214247
+v -3.221483 1.785208 6.706991
+v -3.467163 1.712615 8.597431
+v -3.510029 1.704473 8.763302
+v -3.711009 1.134995 9.518074
+v -3.777170 1.173295 9.494247
+v -3.848549 1.543905 9.373892
+v -3.763501 1.662495 9.133314
+v -3.815921 1.134980 9.538403
+v -2.877641 1.694465 4.679531
+v -2.820307 1.655988 4.399384
+v -2.761971 1.616838 4.114346
+v -2.936728 1.734118 4.968246
+v -2.992843 1.761630 5.241083
+v -3.041259 1.763684 5.473598
+v -3.088174 1.752576 5.696363
+v -2.699881 1.575168 3.810959
+v -2.636703 1.532766 3.502254
+v -0.982390 0.932244 4.355366
+v -1.058312 0.907643 4.313478
+v -1.026578 0.924919 3.991058
+v -1.048314 1.326954 3.368006
+v -1.094441 1.344305 3.145031
+v -1.446588 1.381387 3.217113
+v -1.565911 1.341057 2.909845
+v -2.108122 1.121012 2.748043
+v -1.993593 1.228945 2.784668
+v -2.010544 0.877503 1.367844
+v -2.146299 0.977414 2.735832
+v -1.034902 1.274656 3.673704
+v -0.887321 1.445922 4.250437
+v -2.354245 0.814715 7.574970
+v -2.261675 1.181714 7.416382
+v -2.152914 1.314178 7.312191
+v -2.094670 1.278604 7.192432
+v -2.170228 1.222784 7.213785
+v -2.104547 0.845035 6.968885
+v -2.420228 0.741769 7.767229
+v -1.883775 0.945339 6.439159
+v -1.666518 0.990336 5.978634
+v -2.410645 0.976802 7.919714
+v -2.380160 1.099418 7.985493
+v -3.273370 0.615083 9.039406
+v -3.208820 0.885154 9.038082
+v -3.118225 0.884860 9.062222
+v -3.069068 0.769377 9.040874
+v -2.847205 1.008510 8.662540
+v -2.733516 1.026643 8.597902
+v -2.888771 0.820921 8.709602
+v -2.695165 0.591124 8.310848
+v -2.773989 0.558952 8.481621
+v -2.598058 0.931154 8.065556
+v -2.610869 0.728141 8.111988
+v -2.814147 0.998880 8.780621
+v -2.906501 0.617966 8.768814
+v -2.964817 0.501369 8.904743
+v -3.352618 0.563358 9.024860
+v -3.467635 0.502403 9.179668
+v -3.547980 0.447089 9.200861
+v -1.202059 0.972643 4.906000
+v -1.307947 0.992031 5.171780
+v -1.095136 0.952996 4.637913
+v -4.133581 -9.222945 -7.752186
+v -4.028979 -9.867767 -6.907958
+v -4.190089 -11.151975 -6.296322
+v -3.793946 -14.211752 -6.036093
+v -3.760495 -15.058372 -6.984800
+v -2.429810 -16.688824 -8.599585
+v -0.066868 -18.210079 -12.171689
+v -3.647709 0.663787 7.781010
+v -3.351859 0.942526 5.897480
+v -2.901589 0.930947 3.295015
+v -2.712517 0.878554 2.296324
+v -3.022604 0.978092 3.938217
+v -3.195127 1.069431 4.859407
+v -3.649991 0.447006 9.121117
+v 2.096629 -17.748638 -9.963371
+v 4.176260 -16.273643 -9.017170
+v 4.361975 -13.214584 -7.212796
+v 3.692899 -13.496507 -3.488291
+v 3.545807 -13.969369 -3.723587
+v 4.312619 -13.666583 -5.587357
+v 4.211751 -13.331510 -3.407150
+v 5.188031 -10.698091 -8.529448
+v 3.199898 -6.721099 -13.701727
+v 4.421769 -8.117497 -14.160173
+v 2.617403 -7.170758 -17.511280
+v -3.991857 -8.625296 -9.176752
+v -2.410517 1.059000 2.223606
+v -2.519812 1.173495 2.187815
+v -2.532810 1.366773 2.879484
+v -2.637705 1.237173 2.799971
+v -2.800118 1.215001 3.217505
+v -2.791281 1.165767 3.033298
+v -2.654012 1.446396 3.475824
+v -2.732704 1.516900 3.793016
+v -2.881153 1.389929 4.017496
+v -2.971820 1.324210 4.086744
+v -3.104060 1.417162 5.154093
+v -3.019729 1.527353 5.233912
+v -2.813499 1.554463 4.375244
+v -3.132950 1.372378 5.304054
+v -3.752214 1.547464 7.835205
+v -3.596785 1.532286 7.544035
+v -3.651015 1.428121 7.395628
+v -3.654595 1.434928 7.261747
+v -3.601527 1.439627 7.142891
+v -3.315700 1.600379 6.677147
+v -3.384304 1.620512 6.945015
+v -3.374203 1.354873 6.488289
+v -3.434331 1.387778 6.429022
+v -3.426846 1.365886 6.271410
+v -3.299068 1.486566 6.095337
+v -3.094391 1.431617 5.478142
+v -3.803399 1.533427 8.008863
+v -3.821666 1.531292 8.192024
+v -3.861509 1.471735 8.852242
+v -3.907048 1.368545 8.707527
+v -3.904932 1.376487 8.561104
+v -3.977393 1.380176 9.062611
+v -3.884195 1.506064 8.961597
+v -3.949867 1.363727 9.287865
+v -3.985674 1.301409 9.202253
+v -3.398758 1.725833 8.333366
+v -3.253285 1.755229 7.776369
+v -3.280855 1.769241 6.970650
+v -3.246413 1.716295 6.441875
+v -3.193418 1.728323 6.192421
+v -3.433510 1.719007 8.467207
+v -3.736811 1.667395 9.010899
+v -3.706606 1.672644 8.870884
+v -3.835604 1.479777 9.223440
+v -3.811576 1.590315 9.113850
+v -2.568917 1.400816 3.176966
+v -1.133380 0.948000 4.268681
+v -1.224256 1.372067 3.336887
+v -1.846550 1.302836 2.855907
+v -2.292016 0.902844 1.773844
+v -2.039442 0.766365 1.493469
+v -1.966668 0.805257 1.641047
+v -2.104911 0.829571 2.376610
+v -2.186570 0.856342 2.717779
+v -1.052995 1.045991 3.977951
+v -1.074464 1.189590 3.970812
+v -2.288805 0.863999 7.386633
+v -2.271616 1.065849 7.327188
+v -2.232937 1.251678 7.293985
+v -2.210776 0.794136 7.233046
+v -2.511605 0.748504 7.939125
+v -1.906736 0.904414 6.456451
+v -2.012794 0.856496 6.702568
+v -1.795274 0.947888 6.223433
+v -2.508731 0.959265 7.937496
+v -2.558489 1.120636 8.029474
+v -2.475895 1.183599 8.039270
+v -3.232596 0.770258 8.997280
+v -3.165744 0.925324 9.053764
+v -2.768694 1.071208 8.672453
+v -2.613187 0.624586 8.133247
+v -2.847492 0.530744 8.643732
+v -3.053725 0.769487 8.933472
+v -3.033436 0.496915 8.933594
+v -2.913510 0.509170 8.795345
+v -2.994191 0.514474 8.940208
+v -3.481288 0.586621 9.123123
+v -1.601316 1.000766 5.687479
+v -4.091049 -9.501571 -7.229911
+v -4.340962 -12.725185 -5.758205
+v -3.684734 -14.427818 -6.408340
+v -2.765826 -16.114586 -7.645758
+v -1.301537 -17.540363 -11.379889
+v 0.854674 -18.023069 -11.719982
+v -3.590017 0.721117 7.423594
+v -3.741590 0.588719 8.408558
+v -3.447826 0.865192 6.565765
+v -3.281820 1.040393 5.456329
+v -2.816889 0.915545 2.885698
+v -2.740735 0.949108 2.534548
+v -3.085370 1.040372 4.297850
+v -3.139295 1.054650 4.573750
+v -3.245192 1.069688 5.153908
+v -3.731787 0.446979 8.987150
+v 4.077778 -18.082066 -9.799907
+v 4.646818 -13.575301 -9.713284
+v 4.424479 -12.812675 -8.982063
+v 4.745570 -12.737321 -6.915695
+v 3.747838 -14.402936 -4.005667
+v 4.276353 -14.450051 -4.227161
+v 5.341959 -11.036375 -6.905029
+v 5.236117 -12.022042 -5.991919
+v 4.839362 -12.497217 -4.473026
+v 5.236387 -11.558940 -7.752205
+v 4.904712 -10.875801 -8.839834
+v 4.563971 -10.410211 -9.217511
+v 4.486142 -10.239489 -10.173481
+v 3.522126 -7.369809 -15.874384
+v 4.660849 -9.448269 -12.266574
+v -1.285678 -6.642293 -17.492580
+v 0.000000 -7.897473 -20.571358
+v 1.307546 -8.094729 -20.571358
+v -3.521459 -7.414746 -13.493056
+v -4.362571 -9.700236 -10.014812
+v -2.735935 1.053457 2.518959
+v -2.388913 0.926100 2.226574
+v -2.641942 1.165712 2.251839
+v -2.545505 1.244434 2.899401
+v -2.729375 1.191624 3.281282
+v -2.733871 1.173052 2.883469
+v -2.636043 1.300422 3.346323
+v -2.791794 1.396446 4.113058
+v -2.779413 1.524721 4.091833
+v -2.881136 1.359462 4.432800
+v -2.918333 1.275808 4.233728
+v -3.044189 1.443137 5.235004
+v -3.021869 1.519066 5.410065
+v -2.799538 1.421655 4.328947
+v -3.040871 1.408170 5.354874
+v -3.650156 1.519982 7.807465
+v -3.574736 1.423000 7.457096
+v -3.627855 1.563246 7.690094
+v -3.507863 1.438423 7.126486
+v -3.297988 1.463734 6.560757
+v -3.379264 1.400537 6.151682
+v -3.220088 1.481556 6.188236
+v -3.210460 1.624396 6.177050
+v -3.035486 1.654445 5.454638
+v -3.774530 1.491308 8.421354
+v -3.740063 1.499254 8.251228
+v -3.842256 1.361326 8.777538
+v -3.852694 1.381179 8.430183
+v -3.988281 1.281520 9.125231
+v -3.898187 1.375754 9.054220
+v -3.810791 1.524795 8.983994
+v -3.872031 1.357697 9.278374
+v -3.572188 1.701446 8.268961
+v -3.533811 1.709926 8.098459
+v -3.451126 1.728108 7.731047
+v -3.445493 1.671218 7.378981
+v -3.355234 1.691694 6.954115
+v -3.299956 1.704193 6.693909
+v -3.139783 1.740603 5.939943
+v -3.668853 1.680405 8.700527
+v -3.631357 1.688548 8.533001
+v -1.167133 0.930230 4.591198
+v -1.238263 0.970588 4.541557
+v -1.152867 1.352828 3.637100
+v -1.548301 1.428338 3.525547
+v -1.713723 1.372067 3.200981
+v -1.710835 1.344305 2.971956
+v -2.215901 1.000319 3.023029
+v -2.179020 1.143916 3.034935
+v -2.068379 1.251849 3.070646
+v -2.156389 0.803546 1.539095
+v -1.998654 0.795162 1.933861
+v -2.255624 0.879246 3.007023
+v -1.138869 1.297522 3.949394
+v -2.304358 0.753434 7.447151
+v -2.125336 0.800711 6.986660
+v -2.387054 0.719339 7.628460
+v -2.460625 0.688262 7.794231
+v -1.729930 0.975583 5.956535
+v -2.417929 1.147936 7.920094
+v -2.495111 1.091088 7.947079
+v -3.310942 0.551431 8.888542
+v -3.209481 0.585861 8.904581
+v -3.196226 0.925434 8.950613
+v -3.074472 0.925213 8.986229
+v -2.731158 0.543966 8.275181
+v -2.818552 0.519308 8.471771
+v -2.533269 0.657559 7.957987
+v -3.070049 0.884860 8.926403
+v -3.113473 0.596531 8.902655
+v -2.956633 0.462883 8.788589
+v -3.007571 0.458902 8.898464
+v -3.421098 0.615083 8.975090
+v -3.552134 0.496540 9.140266
+v -1.374728 0.972717 5.123081
+v -1.270873 0.951615 4.856461
+v -1.483896 0.994456 5.404875
+v -4.361151 -9.561668 -8.537300
+v -4.387308 -9.407585 -7.641455
+v -4.480674 -9.645700 -7.340717
+v -4.788004 -11.010864 -6.603907
+v -5.050541 -12.776568 -5.859840
+v -4.248182 -13.958399 -5.656813
+v -3.782010 -15.340961 -5.948811
+v -3.831128 -15.615227 -7.974550
+v -3.859580 -16.130009 -9.031269
+v -2.467270 -17.119619 -10.961109
+v -1.122148 -18.063782 -13.591816
+v 0.827467 -18.523451 -14.850253
+v -3.560621 0.749479 7.247684
+v -3.619035 0.693175 7.596928
+v -3.753058 0.519255 8.724470
+v -3.314641 0.997609 5.750206
+v -3.353291 0.957397 6.019072
+v -2.914729 0.995185 3.424788
+v -2.798788 0.964481 2.831575
+v -2.856653 0.979805 3.127645
+v -2.973412 1.010725 3.725033
+v -3.030894 1.025946 4.019135
+v -3.190293 1.169919 4.843687
+v -3.224958 1.158507 5.145031
+v -3.713794 0.496100 8.935720
+v -3.641064 0.496210 9.066319
+v 2.732258 -18.590559 -10.922850
+v 1.621707 -18.176683 -12.271843
+v 5.048706 -16.437634 -9.574749
+v 4.577985 -11.987797 -8.303679
+v 4.247025 -14.036179 -2.471319
+v 3.790406 -14.189162 -2.530540
+v 3.649963 -14.590889 -2.711123
+v 4.889395 -13.490766 -5.416918
+v 5.074823 -12.999486 -4.936539
+v 4.744043 -13.460522 -3.507748
+v 4.915175 -11.722982 -8.056074
+v 4.797453 -10.448000 -9.098315
+v 4.486142 -10.512026 -9.581589
+v 4.486142 -9.578882 -11.467708
+v 5.476848 -9.169221 -13.601950
+v -2.577765 -7.183267 -17.584322
+v 2.444794 -8.442010 -20.348928
+v 3.845688 -7.966028 -16.924498
+v -4.482596 -9.311453 -11.599814
+v -3.581752 -7.656901 -16.203487
+v -2.457170 1.071109 2.555971
+v -2.428554 1.185989 2.274147
+v -2.614976 1.238787 2.277464
+v -2.555164 1.271649 3.130617
+v -2.639527 1.135234 2.831844
+v -2.575297 1.169767 2.919056
+v -2.680067 1.126317 3.042219
+v -2.881680 1.287174 4.042866
+v -2.819638 1.321218 4.127705
+v -3.790260 1.403257 7.965908
+v -3.736367 1.408247 7.834114
+v -3.495321 1.559397 7.529015
+v -3.544822 1.583844 7.709717
+v -3.612926 1.346313 7.336123
+v -3.613118 1.322537 7.226227
+v -3.576071 1.354853 7.150326
+v -3.430917 1.433364 7.192734
+v -3.423416 1.575821 7.187191
+v -3.242030 1.607210 6.427536
+v -3.301275 1.384222 6.472982
+v -3.331981 1.326485 6.287094
+v -3.298528 1.372321 6.114588
+v -3.244230 1.397312 6.196692
+v -3.790789 1.395597 8.111794
+v -3.761681 1.532394 8.350636
+v -3.721165 1.389242 8.179842
+v -3.772064 1.496484 8.842623
+v -3.819711 1.252154 8.688148
+v -3.871063 1.286394 8.645847
+v -3.866718 1.263525 8.525826
+v -3.957572 1.307376 9.071960
+v -3.831902 1.368325 9.104242
+v -3.825446 1.490715 9.104877
+v -3.879526 1.290725 9.231787
+v -3.935600 1.270281 9.233112
+v -3.913618 1.243141 9.136982
+v -3.601920 1.694940 8.401478
+v -3.491789 1.719205 7.911860
+v -3.480452 1.663247 7.543547
+v -3.405872 1.680225 7.192478
+v -3.786278 1.595206 8.991243
+v -3.757748 1.600445 8.850864
+v -1.158403 1.069072 4.253748
+v -1.332961 1.407144 3.585604
+v -1.905953 1.326954 3.127039
+v -2.251466 0.791815 1.800737
+v -2.125340 0.754805 1.868130
+v -2.228050 0.789214 2.316589
+v -2.307383 0.815985 2.663618
+v -2.374793 0.838889 2.959005
+v -1.179570 1.212670 4.246622
+v -2.234537 0.746859 7.263391
+v -1.855311 0.933915 6.209614
+v -1.963033 0.890773 6.444284
+v -2.065654 0.842624 6.689293
+v -3.176051 0.770148 8.897678
+v -3.130188 0.977159 8.951536
+v -2.638895 0.576915 8.092560
+v -2.890376 0.489479 8.635761
+v -3.102906 0.769818 8.881075
+v -3.126084 0.491355 8.904940
+v -3.478344 0.770148 9.011902
+v -1.665916 1.041124 5.650396
+v -1.791365 1.015940 5.926617
+v -4.528235 -9.694925 -8.329797
+v -3.919246 -15.424293 -5.354185
+v -4.019528 -16.597004 -5.546144
+v -4.306890 -14.879189 -7.579360
+v -2.941859 -17.540882 -13.446955
+v -0.102589 -18.906734 -15.866870
+v -2.036315 -17.777822 -13.904502
+v 1.534213 -18.270391 -14.269977
+v -3.530813 0.780125 7.055868
+v -3.699574 0.645979 8.227699
+v -3.759590 0.589688 8.625204
+v -3.495058 0.817285 6.833460
+v -3.397707 0.914883 6.283924
+v -3.267798 1.085359 5.708687
+v -3.241671 1.083467 5.442734
+v -2.774102 1.064476 2.825207
+v -3.055604 1.094642 4.306316
+v -3.117165 1.145540 4.567514
+v 3.925449 -19.432449 -11.417793
+v 5.376694 -18.071728 -10.359677
+v 5.437163 -13.653374 -10.119398
+v 4.470726 -11.212248 -9.554605
+v 3.816875 -14.978310 -2.892435
+v 4.282317 -15.088373 -2.953846
+v 4.775162 -14.289412 -4.127319
+v 5.116167 -12.566482 -6.662100
+v 4.931453 -13.869696 -3.817659
+v 4.586931 -10.945292 -9.021564
+v 4.623662 -10.965946 -10.577785
+v 4.619907 -8.629103 -16.351437
+v 5.184970 -9.489334 -12.285465
+v 5.653653 -9.574806 -15.820564
+v -1.307546 -8.094729 -20.571358
+v 0.000000 -9.340547 -22.970987
+v 1.309463 -9.470577 -22.970984
+v 3.534513 -8.172333 -18.155279
+v -4.444673 -8.648066 -13.954831
+v -4.472454 -10.118191 -9.191871
+v -4.642447 -10.740340 -10.660515
+v -2.721405 1.170329 2.471460
+v -2.464782 0.944180 2.580221
+v -2.520702 1.268201 2.215403
+v -2.671896 1.265826 2.428137
+v -2.577621 1.161091 3.079828
+v -2.642159 1.211358 3.250854
+v -2.820468 1.310969 4.276455
+v -3.645898 1.406595 7.808336
+v -3.481739 1.421735 7.435913
+v -3.553224 1.313592 7.372738
+v -3.503069 1.325159 7.124779
+v -3.449890 1.350196 7.185829
+v -3.228878 1.471882 6.384506
+v -3.245885 1.361309 6.331465
+v -3.767121 1.378647 8.406677
+v -3.684056 1.552018 8.372776
+v -3.645414 1.525125 8.240784
+v -3.758680 1.358438 8.754835
+v -3.830209 1.295859 8.440168
+v -3.896840 1.279301 9.057880
+v -3.850206 1.298121 9.102474
+v -3.827946 1.360768 9.198063
+v -3.658118 1.622739 8.379862
+v -3.630055 1.629137 8.247761
+v -3.594266 1.637297 8.079296
+v -3.517109 1.654889 7.716101
+v -3.441145 1.561901 7.364809
+v -3.721870 1.608204 8.679956
+v -3.686157 1.616346 8.511845
+v -1.338811 0.991972 4.803986
+v -1.261974 1.091660 4.525009
+v -1.254925 1.378690 3.913593
+v -1.772006 1.407144 3.463268
+v -1.431344 1.441991 3.863302
+v -2.324068 0.902053 3.293995
+v -2.284845 1.023126 3.307812
+v -2.249226 1.166723 3.319321
+v -2.142369 1.274656 3.353844
+v -2.350358 0.823435 2.254072
+v -2.441735 0.861696 3.252542
+v -1.243070 1.320603 4.225245
+v -2.330570 0.704741 7.487423
+v -2.175734 0.785936 6.973387
+v -2.416717 0.669638 7.664082
+v -2.496259 0.636832 7.798693
+v -1.912905 0.974272 6.185425
+v -3.398381 0.585861 8.826660
+v -3.228495 0.497649 8.869646
+v -3.160359 0.885154 8.899509
+v -3.104954 0.925324 8.883080
+v -2.766157 0.531182 8.058125
+v -2.902972 0.526511 8.234968
+v -2.959900 0.506093 8.425571
+v -2.570038 0.606023 7.928955
+v -3.023504 0.475724 8.592525
+v -3.082710 0.447454 8.747936
+v -3.564080 0.597828 9.105831
+v -3.429568 0.770258 8.911524
+v -1.549336 1.034813 5.359468
+v -1.440632 1.013074 5.071459
+v -4.566902 -10.152218 -8.957321
+v -4.684922 -9.968154 -8.127892
+v -5.023020 -11.324447 -7.505238
+v -5.299202 -13.078661 -6.756243
+v -5.009529 -14.216314 -5.537343
+v -4.387420 -15.388073 -5.091091
+v -3.852617 -16.487656 -5.118752
+v -4.517408 -15.624834 -6.595522
+v -4.384912 -15.450776 -8.623554
+v -4.668878 -14.620790 -7.475020
+v -4.261207 -15.283923 -7.989812
+v -3.756445 -16.527533 -10.879921
+v -3.896382 -16.621923 -12.790886
+v -1.237824 -18.599977 -16.373146
+v -2.027128 -17.938637 -15.062645
+v 1.790797 -18.259329 -15.426045
+v 0.996155 -18.735231 -16.914036
+v -3.653598 0.772198 7.766319
+v -3.670713 0.723903 7.976410
+v -3.716675 0.694919 8.329922
+v -3.757730 0.667091 8.585037
+v -3.743612 0.556337 8.767839
+v -3.329171 1.063329 5.978794
+v -3.360109 1.004437 6.256634
+v -2.823500 1.048973 3.133631
+v -2.968566 1.119575 3.709227
+v -3.008910 1.121457 4.016937
+v -3.190938 1.354726 5.023796
+v -3.175752 1.346761 4.796144
+v -3.140396 1.184627 5.239031
+v -3.638620 0.584466 9.034607
+v 3.117608 -19.496195 -12.104679
+v 2.213455 -19.344856 -13.862419
+v 5.979264 -16.393253 -10.394150
+v 4.712468 -14.146242 -2.532730
+v 4.254239 -14.444717 -1.652031
+v 3.814775 -14.588894 -1.680984
+v 3.682787 -14.987185 -1.758358
+v 4.738936 -14.935390 -2.894625
+v 5.422725 -10.935276 -11.125690
+v 6.123750 -10.734465 -12.378278
+v 6.466701 -11.161672 -15.087220
+v -3.762630 -8.128601 -17.413021
+v -2.380598 -8.480203 -20.463795
+v 2.641108 -10.186878 -22.575493
+v 3.241444 -8.694821 -19.681631
+v 4.379012 -9.391080 -18.161198
+v -5.311064 -10.315386 -12.194746
+v -4.400787 -8.515989 -16.122650
+v -4.486142 -10.732841 -9.993492
+v -2.730943 1.181241 2.699614
+v -2.441703 1.195508 2.505587
+v -2.545507 1.079040 2.860907
+v -2.457981 1.253394 2.294960
+v -2.562159 1.306052 2.425072
+v -3.753539 1.313674 8.049541
+v -3.750425 1.290586 7.929920
+v -3.712626 1.323152 7.843571
+v -3.574245 1.400604 7.875435
+v -3.569684 1.542424 7.881014
+v -3.523762 1.282263 7.234413
+v -3.443175 1.316213 7.271290
+v -3.428004 1.426496 7.321835
+v -3.698604 1.280075 8.090370
+v -3.700333 1.371785 8.475887
+v -3.698462 1.513018 8.491753
+v -3.632725 1.387225 8.155014
+v -3.717570 1.498890 8.666012
+v -3.760569 1.279013 8.680653
+v -3.787151 1.221538 8.534733
+v -3.844159 1.268062 9.165762
+v -3.555151 1.646215 7.895174
+v -1.641464 1.469175 3.804771
+v -1.978540 1.352828 3.404215
+v -2.427274 0.848034 2.606661
+v -2.493040 0.869076 2.908165
+v -2.558482 0.890030 3.208244
+v -1.282865 1.235257 4.517962
+v -2.283638 0.731100 7.253391
+v -2.017756 0.931130 6.424112
+v -2.117728 0.882982 6.670347
+v -2.224635 0.826293 6.951788
+v -3.365536 0.497649 8.816582
+v -3.297031 0.515650 8.843109
+v -2.721875 0.541553 7.953150
+v -3.122057 0.444820 8.862009
+v -3.546900 0.769817 9.025116
+v -3.472066 0.885154 8.932072
+v -1.811844 1.137012 5.916643
+v -1.687449 1.162196 5.638035
+v -1.932104 1.095345 6.177361
+v -3.993059 -16.455978 -4.629387
+v -4.049222 -17.772629 -4.456699
+v -4.484970 -16.858637 -5.529576
+v -4.306159 -15.490077 -9.680772
+v -4.486831 -14.642684 -8.250269
+v -4.386477 -14.943979 -8.074126
+v -4.646968 -16.799423 -13.627773
+v -2.759115 -18.259476 -15.184810
+v 0.009717 -19.291613 -18.553566
+v 1.999516 -18.967812 -15.072716
+v -3.569832 0.772599 7.398449
+v -3.609646 0.784903 7.584562
+v -3.633907 0.680932 8.312035
+v -3.758497 0.678851 8.446213
+v -3.590542 0.726021 8.037716
+v -3.701869 0.648080 8.652966
+v -3.726946 0.582907 8.700476
+v -3.699863 0.545220 8.909336
+v -3.522855 0.893536 7.005867
+v -3.472045 0.910462 6.801765
+v -3.411510 0.911134 6.548552
+v -3.309128 1.263310 5.926098
+v -3.158851 1.123880 5.637821
+v -2.890721 1.098825 3.418282
+v -2.673162 1.102331 2.911442
+v -2.919440 1.158181 4.111027
+v -3.003560 1.175752 4.520782
+v -3.122832 1.357471 5.125166
+v -3.104156 1.339572 4.587082
+v -3.154299 1.096138 5.453720
+v 5.002934 -19.196106 -12.018473
+v 3.874673 -20.727905 -14.689722
+v 5.917397 -17.709742 -11.865386
+v 6.259753 -13.544988 -11.188015
+v 3.846569 -15.377898 -1.835421
+v 4.732218 -15.357125 -1.838627
+v 4.879379 -14.533663 -2.714043
+v 5.577852 -10.401210 -17.887974
+v -3.206382 -8.004064 -18.404819
+v -1.309463 -9.470577 -22.970987
+v 0.000000 -9.998482 -25.252779
+v 2.207547 -10.932720 -25.051235
+v 3.515371 -9.673038 -20.170444
+v -5.284949 -9.812222 -14.700721
+v -4.503701 -10.724659 -9.371143
+v -4.556378 -10.568093 -9.186411
+v -5.111362 -10.894861 -10.979269
+v -4.486142 -11.651937 -9.538235
+v -2.643296 1.192342 2.789230
+v -2.681973 1.249877 2.610123
+v -2.524777 1.198732 2.728495
+v -2.462120 1.284710 2.453732
+v -2.529999 0.959639 2.883690
+v -3.642154 1.293089 7.811741
+v -3.593137 1.317382 7.874462
+v -3.487339 1.341599 7.367382
+v -3.763360 1.265145 8.410004
+v -3.717941 1.288795 8.474262
+v -3.589938 1.527983 8.065214
+v -3.704445 1.363486 8.623114
+v -3.716353 1.253774 8.572329
+v -1.361457 1.113045 4.786495
+v -1.357184 1.402769 4.190208
+v -1.858620 1.441991 3.744251
+v -2.058467 1.378690 3.686962
+v -1.530193 1.469065 4.142107
+v -2.508879 0.884562 3.546928
+v -2.392736 0.924919 3.581863
+v -2.354023 1.045991 3.593508
+v -2.319682 1.189590 3.604660
+v -2.216659 1.297522 3.638123
+v -2.624101 0.911038 3.509123
+v -1.345538 1.343190 4.496815
+v -2.379733 0.688510 7.486137
+v -2.329966 0.771458 7.230761
+v -2.476670 0.648902 7.652435
+v -2.587098 0.603013 7.733095
+v -2.035997 1.052203 6.417389
+v -3.420747 0.770148 8.797337
+v -3.467915 0.491355 8.781296
+v -3.289510 0.445546 8.818676
+v -2.863795 0.524929 8.008612
+v -2.813163 0.522793 7.872629
+v -2.789660 0.526988 7.965378
+v -3.149639 0.506093 8.361189
+v -2.679379 0.563133 7.807028
+v -3.250264 0.447454 8.690336
+v -3.433617 0.925434 8.852505
+v -1.462600 1.134146 5.054251
+v -1.571149 1.155885 5.344336
+v -4.711500 -10.537411 -8.852173
+v -4.989389 -11.811279 -8.402500
+v -5.270140 -14.545654 -6.175315
+v -4.938575 -15.497462 -5.155422
+v -4.449678 -16.427357 -4.460051
+v -3.885441 -17.484501 -4.210754
+v -4.986040 -15.911541 -6.167372
+v -5.124947 -14.746965 -7.008589
+v -4.848177 -13.526343 -8.115924
+v -4.201169 -15.193763 -10.539911
+v -5.103718 -14.518445 -12.168935
+v -3.917228 -18.086512 -14.773738
+v -0.957288 -19.059048 -18.500135
+v -2.401538 -18.026505 -17.156441
+v -2.497774 -18.189093 -15.666453
+v 2.182411 -18.733326 -15.934093
+v 2.360691 -18.170738 -16.189919
+v 1.483467 -18.511879 -18.129606
+v -3.547908 0.846696 7.200323
+v -3.639894 0.931544 7.873446
+v -3.643558 0.958320 7.722149
+v -3.627630 0.852555 8.313572
+v -3.616725 0.643764 8.189604
+v -3.752129 0.853921 8.419491
+v -3.569811 0.912673 7.947815
+v -3.678115 0.822288 8.586760
+v -3.744258 0.838170 8.529598
+v -3.692079 0.566922 8.754745
+v -3.651930 0.561594 8.832064
+v -3.317963 1.232686 6.135277
+v -3.276127 1.017269 6.328041
+v -3.244665 1.291908 5.722294
+v -2.765086 1.134613 3.359177
+v -2.723973 1.078564 3.151173
+v -2.967721 1.296227 3.895897
+v -2.954022 1.286608 3.661657
+v -2.890874 1.303135 3.995144
+v -2.966348 1.115573 4.331768
+v -3.093311 1.516445 5.004618
+v -3.147431 1.472308 4.939320
+v -3.082240 1.461504 4.615519
+v -3.039500 1.157787 5.206909
+v -3.073793 1.079489 5.478769
+v -3.614901 0.613540 8.882538
+v 2.898387 -20.382143 -14.482897
+v 2.436626 -20.475409 -17.006248
+v 6.294302 -16.281822 -12.694378
+v 4.703747 -14.564198 -1.675934
+v 4.228344 -14.599416 -1.055630
+v 3.791748 -14.724952 -1.045046
+v 3.666714 -15.095341 -1.029308
+v 4.294415 -15.499341 -1.863453
+v 4.865867 -14.956872 -1.757126
+v 6.578827 -13.748240 -13.906740
+v 6.266082 -11.917891 -17.735559
+v -4.338640 -8.809469 -17.337772
+v -3.873507 -8.780760 -18.109459
+v -2.984661 -8.847593 -20.141106
+v -2.583825 -10.475450 -22.677214
+v 1.256895 -10.106104 -25.252779
+v 2.734525 -12.031039 -22.915844
+v 3.290338 -11.589272 -20.998051
+v 4.262107 -11.157269 -18.998280
+v -5.804394 -11.816028 -12.472257
+v -5.049112 -9.535397 -17.188936
+v -5.265757 -12.223587 -11.063880
+v -4.572484 -12.307289 -10.184896
+v -2.613314 1.282336 2.666466
+v -2.528188 1.263246 2.630543
+v -2.625358 1.057583 3.171511
+v -3.665994 1.249470 7.936712
+v -3.590332 1.282578 7.972193
+v -3.576803 1.392580 8.022270
+v -3.635854 1.307580 8.081276
+v -1.735499 1.498246 4.086605
+v -2.594942 0.975032 3.185883
+v -2.660054 0.990466 3.488869
+v -1.382170 1.256642 4.779789
+v -2.425213 0.728868 7.469589
+v -2.135087 1.004054 6.664032
+v -2.240935 0.947365 6.944590
+v -2.345409 0.892529 7.223215
+v -3.475795 0.596531 8.767956
+v -3.448546 0.444820 8.747845
+v -3.085662 0.525987 8.162643
+v -3.201753 0.475724 8.531654
+v -3.596746 0.769487 8.967726
+v -3.516513 0.925324 8.921001
+v -1.949715 1.238942 6.171974
+v -1.830558 1.280610 5.910862
+v -1.591435 1.299483 5.338093
+v -2.052851 1.195800 6.412239
+v -5.195547 -13.404305 -7.743053
+v -4.017429 -17.212259 -3.947371
+v -3.869368 -17.948099 -3.517414
+v -4.497068 -17.920444 -4.499369
+v -4.941589 -17.012449 -5.245625
+v -4.498472 -13.730445 -8.651589
+v -4.400558 -14.565763 -11.587035
+v -5.790842 -14.256640 -13.354607
+v -5.180489 -17.998566 -15.272104
+v -4.131280 -18.852259 -16.648418
+v -1.435424 -18.688499 -19.307005
+v -3.168143 -18.733330 -16.847414
+v 2.252904 -19.754730 -16.592638
+v -0.001341 -19.127056 -21.435316
+v -3.515469 0.808620 7.542814
+v -3.516877 0.857716 7.238420
+v -3.594960 0.978306 7.586403
+v -3.557510 0.836120 8.370722
+v -3.710371 0.861423 8.324720
+v -3.541235 0.606586 8.215759
+v -3.484339 0.909835 7.924900
+v -3.498861 0.680406 8.025179
+v -3.599350 0.813973 8.575623
+v -3.619236 0.585829 8.686991
+v -3.510119 1.047890 7.102062
+v -3.508200 1.084810 6.949934
+v -3.367598 0.940589 6.748474
+v -3.247377 1.218788 6.213787
+v -3.326364 0.917521 6.552986
+v -3.276968 1.378242 6.051464
+v -3.267810 1.448588 5.884604
+v -3.148365 1.299730 5.659914
+v -2.877495 1.280481 3.441927
+v -2.803952 1.128401 4.071796
+v -2.878012 1.097743 4.360149
+v -3.003034 1.339157 4.541487
+v -3.024776 1.355635 5.080616
+v -3.133001 1.508413 4.757851
+v 5.638865 -18.404341 -13.777104
+v 4.798553 -20.499329 -15.224672
+v 3.877667 -21.697708 -17.775438
+v 4.676991 -14.724213 -1.065313
+v 3.834547 -15.468099 -1.025833
+v 4.276551 -15.600740 -1.052032
+v 4.838180 -15.104815 -1.078354
+v 4.706502 -15.483050 -1.079132
+v 6.315798 -14.127770 -16.732990
+v 5.111912 -11.343553 -18.750849
+v -3.473932 -8.602509 -18.673977
+v -3.027694 -10.234321 -21.417757
+v -2.211589 -10.958425 -25.099072
+v -1.256895 -10.106104 -25.252779
+v 1.169165 -10.289432 -27.428160
+v 2.545714 -12.982082 -24.446592
+v 2.048033 -11.057269 -27.346647
+v 3.652482 -10.835378 -20.068048
+v -5.837398 -11.380249 -15.512897
+v -4.522153 -11.430696 -9.200741
+v -4.630184 -11.055757 -9.096251
+v -4.486142 -12.386351 -9.074480
+v -1.457735 1.425356 4.462471
+v -1.946504 1.469065 4.029364
+v -2.139890 1.402769 3.974806
+v -2.292341 1.320603 3.927349
+v -1.627197 1.491653 4.415827
+v -2.690398 0.932244 3.813030
+v -2.576891 0.907643 3.844858
+v -2.462466 0.948000 3.873796
+v -2.424325 1.069072 3.883442
+v -2.391329 1.212670 3.894419
+v -2.725783 1.006045 3.794712
+v -1.444307 1.364575 4.759668
+v -2.440372 0.849940 7.464073
+v -2.541367 0.682858 7.677837
+v -2.690370 0.601515 7.704868
+v -2.151457 1.147651 6.658974
+v -3.434768 0.885154 8.790085
+v -3.472058 0.769818 8.742693
+v -3.559384 0.496915 8.748882
+v -3.001562 0.522831 7.919729
+v -2.902446 0.524315 7.639187
+v -3.275077 0.526511 8.109257
+v -3.380002 0.475724 8.470783
+v -3.417817 0.447454 8.632736
+v -3.560602 0.884860 8.901459
+v -3.488836 0.977159 8.816364
+v -1.483141 1.277744 5.047897
+v -1.707194 1.305793 5.631901
+v -4.781364 -12.189919 -8.697878
+v -5.132272 -15.770517 -5.600760
+v -4.915121 -16.506556 -4.558094
+v -4.456892 -17.112104 -3.852383
+v -3.994401 -17.598593 -3.393806
+v -4.037201 -18.295231 -3.653282
+v -4.559948 -12.401299 -8.789247
+v -4.246165 -14.353775 -10.579421
+v -5.504758 -16.647423 -14.426367
+v -2.839470 -18.236664 -17.252865
+v 2.372510 -19.682272 -17.440157
+v 2.693780 -18.809404 -16.961315
+v 3.213127 -18.031851 -17.011456
+v 1.585609 -17.597321 -21.874037
+v -3.501057 0.781817 7.377169
+v -3.455806 0.999443 7.172621
+v -3.548610 1.099829 7.854977
+v -3.603924 1.064379 7.810261
+v -3.603921 1.127129 7.685726
+v -3.571406 0.971156 8.353970
+v -3.557855 0.620233 8.384804
+v -3.684589 0.982514 8.323589
+v -3.709739 0.963204 8.471657
+v -3.713175 1.017013 8.380898
+v -3.488328 1.054864 7.846924
+v -3.600091 0.952337 8.502045
+v -3.605271 0.549814 8.755428
+v -3.561723 0.584579 8.768040
+v -3.458467 1.106064 6.809586
+v -3.221496 1.417897 6.100370
+v -3.173237 0.988121 6.278030
+v -3.247606 0.892707 6.572168
+v -3.222388 1.421994 5.744833
+v -3.076819 1.287315 5.736002
+v -3.077933 1.077507 5.726849
+v -2.765861 1.284046 3.386211
+v -2.860702 1.447845 3.871439
+v -2.921341 1.404291 3.807846
+v -2.908063 1.435449 3.621323
+v -2.782774 1.305271 3.942160
+v -2.931862 1.343320 4.641809
+v -2.923291 1.148699 4.629900
+v -3.023439 1.473403 4.981096
+v -3.043538 1.563333 4.769875
+v -3.003463 1.502710 4.566856
+v -3.024817 1.064586 5.232235
+v -2.965553 1.171053 4.920969
+v -3.589391 0.769377 8.856285
+v 2.921307 -21.562050 -18.216969
+v 6.000237 -16.766064 -15.815670
+v 4.258381 -14.612415 -0.513508
+v 3.547766 -15.104903 -0.485868
+v 5.336394 -12.704113 -18.806343
+v -4.619647 -9.634929 -18.351143
+v -4.141411 -9.119733 -18.008512
+v -3.723799 -9.564291 -19.280600
+v -3.354230 -9.205942 -19.710855
+v -3.270071 -9.971164 -20.639057
+v -3.265703 -11.739372 -21.030657
+v -2.561881 -13.084896 -24.637943
+v -1.169165 -10.289432 -27.428160
+v 0.000000 -10.184891 -27.428160
+v 3.045569 -12.121562 -21.622208
+v 2.789495 -14.303283 -22.322468
+v 2.346310 -12.942629 -27.102119
+v 3.971157 -12.977036 -19.502113
+v -5.442083 -11.060653 -18.436758
+v -4.426147 -13.135187 -9.407797
+v -2.674560 1.109390 3.464468
+v -1.827495 1.520833 4.362318
+v -2.718178 1.128878 3.770180
+v -2.522470 0.833293 7.677795
+v -2.257028 1.090963 6.939497
+v -2.361254 1.036127 7.218128
+v -2.455828 0.993537 7.459183
+v -3.542080 0.769487 8.758654
+v -3.561500 0.458902 8.706398
+v -3.166233 0.524929 7.906590
+v -3.339378 0.506093 8.296806
+v -3.554377 0.925213 8.813995
+v -2.103412 1.303733 6.396786
+v -2.002550 1.346875 6.155815
+v -1.886702 1.388543 5.893518
+v -1.544763 1.385677 5.028839
+v -1.652293 1.407416 5.319363
+v -2.200569 1.255584 6.643799
+v -4.430997 -17.478174 -3.356781
+v -3.750420 -18.159756 -3.016794
+v -4.479204 -18.408518 -3.727085
+v -4.934871 -17.866180 -4.380289
+v -5.082032 -16.798338 -4.870874
+v -5.897129 -13.825171 -16.173536
+v -5.125870 -18.563734 -17.096643
+v -5.606254 -17.498199 -16.506014
+v -4.205405 -19.179399 -19.811665
+v -2.658425 -17.486631 -19.562254
+v -1.520827 -17.791107 -21.828266
+v -3.338956 -18.854805 -20.018887
+v 2.412130 -17.706881 -18.715240
+v -0.012023 -17.565849 -24.511578
+v -3.508256 0.976802 7.558678
+v -3.415103 0.741769 7.437595
+v -3.463567 0.847420 7.249569
+v -3.570270 1.099418 7.596184
+v -3.561747 1.008510 8.418587
+v -3.619801 1.026643 8.301456
+v -3.553616 0.820921 8.480841
+v -3.491148 0.591124 8.042004
+v -3.521289 0.558952 8.227657
+v -3.434509 0.931154 7.784344
+v -3.449846 0.728141 7.830004
+v -3.655121 0.998880 8.498024
+v -3.572018 0.617966 8.539848
+v -3.599674 0.501369 8.685146
+v -3.416088 1.219403 7.074047
+v -3.469935 1.188862 7.034878
+v -3.467709 1.257255 6.910725
+v -3.369339 1.107511 6.774364
+v -3.152039 1.225126 6.153831
+v -3.179866 1.510413 5.877941
+v -3.098342 1.419996 5.755707
+v -3.147238 1.477352 5.684967
+v -3.054245 1.034596 5.507360
+v -2.853460 1.393051 3.470762
+v -2.790107 1.021291 4.094025
+v -2.955523 1.463860 4.656366
+v -2.851008 1.035726 4.377405
+v -2.950114 1.349866 4.870510
+v -2.973083 1.064651 4.945446
+v 5.326267 -19.813587 -16.829521
+v 4.708159 -21.563734 -18.219650
+v 3.886650 -22.071123 -18.834690
+v 2.562610 -20.631218 -18.946220
+v 4.684436 -14.738305 -0.529955
+v 3.655863 -14.683772 -0.419413
+v 3.731267 -15.445430 -0.253353
+v 4.295041 -15.515339 -0.413219
+v 4.698798 -15.425539 -0.483204
+v 4.829919 -15.087934 -0.520983
+v 5.295169 -16.440598 -17.576029
+v 5.392079 -14.548226 -18.124176
+v -4.132546 -9.761125 -18.833107
+v -3.469275 -10.532671 -20.422359
+v -3.113646 -13.000391 -21.254414
+v -2.350352 -12.968332 -27.149954
+v -2.778682 -13.384315 -22.473423
+v -2.049044 -11.063695 -27.358606
+v 1.864789 -11.019173 -29.487228
+v 1.065594 -10.308676 -29.508547
+v 3.339652 -13.375937 -20.616756
+v 2.979999 -13.494449 -21.627930
+v 2.207547 -15.299158 -24.547668
+v 2.048033 -14.950785 -27.034012
+v 2.131187 -12.769504 -29.423271
+v -1.554665 1.446741 4.725906
+v -2.219106 1.425356 4.254967
+v -2.032202 1.491653 4.307377
+v -2.365996 1.343190 4.209049
+v -2.461159 1.235257 4.177044
+v -1.720043 1.513037 4.678272
+v -2.755247 0.952996 4.110340
+v -2.643328 0.930230 4.136017
+v -2.530491 0.970588 4.158787
+v -2.492879 1.091660 4.166378
+v -2.537581 0.971130 7.673126
+v -2.632082 0.736378 7.861628
+v -2.938259 0.610024 7.767862
+v -2.305304 1.198896 6.924221
+v -3.471480 0.925324 8.745499
+v -3.524607 0.884860 8.761917
+v -3.595159 0.514474 8.730968
+v -3.121891 0.522793 7.768686
+v -3.276511 0.531182 7.886166
+v -3.479725 0.519308 8.247330
+v -3.511875 0.489479 8.423443
+v -3.542399 0.462883 8.587193
+v -1.766429 1.413726 5.613501
+v -4.906400 -17.214035 -3.919140
+v -4.879645 -17.590343 -3.412334
+v -4.461035 -17.692526 -2.858667
+v -3.858516 -17.793842 -2.797995
+v -3.933921 -18.562449 -2.928139
+v -4.497695 -18.567656 -3.102547
+v -5.731097 -16.185112 -16.549091
+v -1.912546 -17.989904 -19.927788
+v -2.983516 -17.886969 -20.637638
+v 2.595861 -19.536968 -18.026705
+v 3.465264 -19.364046 -18.669168
+v 4.089086 -17.203691 -17.303156
+v 1.256895 -16.911358 -24.581360
+v 3.200130 -16.581133 -19.216473
+v -3.436942 0.959265 7.628237
+v -3.362318 0.814715 7.241301
+v -3.435472 0.748504 7.631193
+v -3.447124 1.120636 7.732311
+v -3.521019 1.183597 7.694275
+v -3.632324 1.071208 8.382935
+v -3.459807 0.624586 7.848927
+v -3.550997 0.530744 8.403154
+v -3.581039 0.509170 8.565763
+v -3.349062 1.032644 7.134384
+v -3.433242 1.229021 6.818024
+v -3.295666 1.092868 6.836861
+v -3.291337 0.887152 6.832687
+v -3.153775 1.374925 6.064489
+v -3.167979 0.898110 6.307201
+v -3.103289 1.050089 5.999304
+v -3.100924 1.446661 5.900734
+v -3.086615 1.255208 5.947605
+v -3.079148 0.989806 5.774311
+v -2.685479 1.292384 3.482729
+v -2.766942 1.433527 3.414738
+v -2.783296 1.411414 3.841305
+v -2.808973 1.489717 3.627224
+v -2.702713 1.300573 3.719700
+v -2.963773 1.510742 4.813623
+v -2.911121 1.049971 4.657125
+v -2.940863 1.012005 4.959747
+v -2.996103 1.016721 5.252270
+v 3.094630 -21.963696 -19.240356
+v 2.712909 -21.360857 -20.078457
+v 5.424982 -18.889521 -18.200432
+v 4.433393 -14.595860 0.142944
+v 4.057863 -14.573668 0.214668
+v 3.202958 -14.938513 -0.040464
+v 3.271964 -15.205423 -0.089922
+v 4.379463 -14.900000 -18.681984
+v -4.695763 -11.001632 -19.494793
+v -3.928229 -10.920026 -19.789246
+v -3.781302 -12.913196 -20.116098
+v -2.064072 -14.987968 -26.958744
+v -2.271703 -15.447892 -24.246595
+v -1.864789 -11.019173 -29.487228
+v -1.065594 -10.308676 -29.508547
+v 0.000000 -10.213386 -29.508547
+v 2.521536 -15.975723 -22.019978
+v 3.265449 -15.395545 -20.178827
+v 1.864789 -14.598433 -29.359312
+v 3.849742 -15.073487 -19.008095
+v -5.495056 -13.437280 -18.900530
+v -1.914541 1.542218 4.623184
+v -2.588343 0.856289 7.875023
+v -2.763301 0.647046 7.821442
+v -3.113217 0.647046 7.714283
+v -2.408789 1.144060 7.202858
+v -2.502197 1.101470 7.444508
+v -2.582914 1.074894 7.659117
+v -3.199201 0.526988 7.827425
+v -3.200146 0.563133 7.634254
+v -3.439474 0.543966 8.036198
+v -2.284896 1.337750 6.616282
+v -2.190771 1.385900 6.369123
+v -2.094288 1.429041 6.127407
+v -1.870014 1.495893 5.582081
+v -1.653312 1.467843 4.995670
+v -1.759012 1.489582 5.286907
+v -2.387538 1.281062 6.896353
+v -3.405612 -18.171585 -2.541471
+v -3.474618 -18.400764 -2.686954
+v -4.909156 -18.289215 -3.708313
+v -4.901452 -18.458229 -3.133965
+v -5.068521 -17.548052 -4.140995
+v -5.070100 -18.852423 -20.183529
+v -5.511144 -17.631577 -18.379662
+v -4.210555 -19.272888 -22.678036
+v -2.751413 -16.200703 -21.424038
+v -1.304986 -17.009785 -24.302237
+v -3.393265 -18.984394 -22.941359
+v 4.511966 -18.956387 -18.672670
+v -0.003006 -16.435612 -26.993866
+v -3.453579 1.091088 7.628572
+v -3.502435 1.147936 7.563061
+v -3.365033 0.719339 7.303989
+v -3.396730 0.688262 7.482559
+v -3.428067 0.657559 7.658939
+v -3.350375 1.181714 7.058069
+v -3.382243 1.314178 6.910896
+v -3.312906 1.222784 6.838972
+v -3.363563 1.278604 6.779041
+v -3.230455 0.845035 6.599199
+v -3.117301 0.945339 6.036581
+v -3.032114 0.990336 5.539127
+v -2.712273 1.401444 3.501795
+v -2.816522 0.972643 4.391422
+v -2.877351 0.992031 4.669991
+v 5.075001 -21.159201 -19.550863
+v 4.676363 -21.971680 -19.244778
+v 3.163450 -22.422380 -19.127636
+v 2.826969 -20.148643 -19.545980
+v 4.874684 -15.016675 0.071724
+v 4.778315 -14.718493 0.101065
+v 3.591788 -14.652080 0.167414
+v 3.379123 -15.429614 0.057364
+v 4.072839 -15.336843 0.273022
+v 4.746111 -15.296959 0.082096
+v 5.061866 -17.945946 -18.033571
+v 4.693569 -16.088823 -17.900393
+v -3.618275 -14.825089 -20.366501
+v -3.013664 -14.131717 -21.242569
+v -1.864789 -14.598433 -29.359312
+v -2.131187 -12.769504 -29.423271
+v 1.946164 -12.536846 -31.591909
+v 1.702894 -10.907518 -31.598875
+v 0.973082 -10.249687 -31.601200
+v 3.559533 -15.196174 -19.405909
+v 1.169165 -16.082623 -27.011312
+v 1.065594 -15.544731 -29.337990
+v 1.702894 -14.249395 -31.584938
+v -2.434202 1.364575 4.470753
+v -2.292409 1.446741 4.514669
+v -2.112259 1.513037 4.567064
+v -2.526162 1.256642 4.440998
+v -2.556815 1.113045 4.431080
+v -1.814637 1.534139 4.946980
+v -2.705742 0.951615 4.410089
+v -2.594047 0.991972 4.425831
+v -2.603339 0.976842 7.870426
+v -2.820683 0.727739 8.009178
+v -2.995641 0.690717 7.955599
+v -3.170600 0.727739 7.902020
+v -3.114483 0.601515 7.571861
+v -2.489214 1.226226 7.175186
+v -3.251099 0.541553 7.775423
+v -3.411267 0.576915 7.833328
+v -1.984571 1.470709 5.863655
+v -4.887090 -17.803185 -2.920900
+v -4.260516 -17.928295 -2.168629
+v -3.794442 -17.983410 -2.241728
+v -4.275493 -18.658121 -2.399265
+v -3.581777 -18.663721 -2.633965
+v -5.040834 -17.938593 -3.566454
+v -4.948765 -18.549877 -2.561518
+v -5.435143 -16.011583 -19.487028
+v -3.235932 -16.913441 -22.483007
+v -3.064437 -18.113285 -23.736744
+v 4.883280 -20.639059 -20.900944
+v -3.332212 0.753434 7.107433
+v -3.311276 0.863999 7.048563
+v -3.305779 1.251678 6.940517
+v -3.292295 1.065849 6.989666
+v -3.290081 0.794136 6.877604
+v -3.100365 0.904414 6.068367
+v -3.150170 0.856496 6.331141
+v -3.062376 0.947888 5.813454
+v -2.719581 1.445922 3.664854
+v -2.837055 0.994456 4.979683
+v -2.899209 1.000766 5.280224
+v 4.672076 -22.437908 -19.148418
+v 2.862814 -22.169395 -20.265871
+v 3.922549 -22.513523 -18.757351
+v 2.783607 -21.651876 -20.463036
+v 2.960150 -21.007044 -21.158319
+v 4.321025 -14.591992 0.965080
+v 4.659937 -14.647119 0.827986
+v 3.869668 -14.576805 0.333540
+v 3.232875 -14.808080 0.258120
+v 2.857518 -15.215517 0.279902
+v 2.966332 -15.416633 0.224134
+v 3.694095 -15.392502 0.273903
+v 4.416203 -15.365895 0.159353
+v 4.461820 -16.751169 -17.809332
+v -4.657100 -13.306227 -19.810387
+v -1.065594 -15.544731 -29.337990
+v -1.181187 -16.107227 -26.941528
+v -1.946164 -12.536846 -31.591909
+v -1.702894 -10.907518 -31.598875
+v -0.973082 -10.249687 -31.601200
+v 0.000000 -10.163646 -31.601200
+v 0.973082 -15.156901 -31.582615
+v -2.003372 1.563320 4.890205
+v -2.689465 0.810140 8.049364
+v -2.645726 0.909260 8.062757
+v -3.052266 0.794705 8.140858
+v -3.227224 0.831726 8.087276
+v -3.244436 0.736562 7.674097
+v -2.877308 0.831726 8.194437
+v -2.580441 1.183636 7.418625
+v -2.659383 1.153955 7.635178
+v -2.648328 1.068100 7.856638
+v -3.233802 0.603013 7.522551
+v -3.375753 0.606023 7.660124
+v -2.505503 1.347358 6.853474
+v -2.406912 1.404047 6.574196
+v -2.318019 1.452195 6.327353
+v -2.128463 1.537005 5.820309
+v -1.916881 1.555878 5.239487
+v -2.022811 1.562189 5.536896
+v -2.603728 1.292523 7.132879
+v -5.032573 -18.130913 -3.043041
+v -4.636046 -17.922121 -2.243454
+v -3.435528 -18.161987 -2.215784
+v -3.060172 -18.548126 -2.347610
+v -3.896749 -18.710087 -2.419216
+v -4.618857 -18.642662 -2.515564
+v -3.168986 -18.713905 -2.474396
+v -4.465149 -15.488886 -20.416769
+v -5.025276 -18.978394 -22.987177
+v -5.420276 -17.865534 -21.302036
+v -4.217680 -19.337671 -23.662098
+v -4.081401 -16.489775 -22.432777
+v -3.423342 -19.077028 -23.943369
+v 3.773008 -20.734131 -21.249668
+v 0.000000 -15.797223 -29.337990
+v -3.326464 0.704741 7.159416
+v -3.354240 0.669638 7.354822
+v -3.363707 0.636832 7.511173
+v -3.215877 0.800711 6.629032
+v -2.943856 0.975583 5.573719
+v -2.768772 0.972717 4.685253
+v 4.980463 -21.662872 -20.469362
+v 4.943992 -22.190626 -20.294226
+v 3.038639 -23.578548 -19.652887
+v 3.321621 -23.654984 -18.717924
+v 4.834658 -15.227796 0.631031
+v 4.960490 -15.004500 0.671318
+v 3.955236 -14.561141 0.851522
+v 4.915864 -14.760933 0.756781
+v 3.657543 -14.676002 0.701895
+v 3.320489 -14.833595 0.579428
+v 3.124642 -15.563269 0.314095
+v 3.463666 -15.431876 0.349009
+v 3.903896 -15.323158 0.392628
+v 4.579211 -15.280794 0.695341
+v -3.365662 -15.740166 -21.093288
+v -0.973082 -15.156901 -31.582615
+v -1.702894 -14.249397 -31.584938
+v 1.607429 -13.910974 -33.772270
+v 1.837061 -12.318800 -33.789886
+v 1.607429 -10.811393 -33.807503
+v 0.918530 -10.198311 -33.813374
+v 0.000000 -15.409393 -31.582615
+v 0.918531 -14.778353 -33.766399
+v -2.593184 1.277744 4.710876
+v -2.504372 1.385677 4.738379
+v -2.367610 1.467843 4.780313
+v -2.194153 1.534139 4.832787
+v -2.622787 1.134146 4.701710
+v -2.659284 1.013074 4.697596
+v -2.660722 1.005298 8.058163
+v -3.301818 0.810417 7.861835
+v -3.107251 0.912872 8.320751
+v -3.220094 0.682888 7.466644
+v -2.724205 1.137844 7.833345
+v -2.691524 1.249933 7.380112
+v -2.228607 1.495337 6.085276
+v -5.077338 -18.285965 -2.466553
+v -4.980968 -18.020266 -2.328068
+v -4.523678 -18.225307 -1.479254
+v -4.072321 -17.975559 -2.059511
+v -3.523142 -18.305555 -1.927206
+v -4.106550 -18.690056 -2.283192
+v -4.781865 -18.763706 -1.986534
+v -3.666320 -18.774643 -2.364227
+v -3.327296 -18.883518 -2.445648
+v -5.132016 -16.863173 -22.330631
+v -3.305766 -17.238905 -24.840364
+v -3.099025 -18.266598 -24.811787
+v 4.735350 -21.351316 -21.692364
+v -3.280353 0.746859 6.919353
+v -2.981887 0.933915 5.851173
+v -3.024199 0.890773 6.103598
+v -3.076584 0.842624 6.361805
+v -2.732353 1.034813 4.996746
+v -2.800973 1.041124 5.304161
+v 4.866925 -23.608477 -19.734655
+v 4.664211 -23.677166 -18.778929
+v 3.082472 -21.921715 -21.411198
+v 3.212729 -23.509594 -20.608295
+v 4.006294 -23.690262 -18.433310
+v 3.021799 -21.342800 -21.687298
+v 3.926274 -14.552378 1.531494
+v 4.604486 -14.896525 1.487652
+v 4.844571 -14.863548 1.455879
+v 2.887752 -15.079716 0.497738
+v 2.628531 -15.620112 0.594923
+v 2.757896 -15.758256 0.521902
+v 3.490511 -15.278191 0.617931
+v 3.722696 -15.252090 0.717607
+v 3.976965 -15.242002 0.824003
+v 4.290070 -15.168470 0.884462
+v -1.607429 -13.910974 -33.772270
+v -1.837061 -12.318800 -33.789886
+v -1.607429 -10.811393 -33.807503
+v -0.918531 -10.198311 -33.813374
+v 0.000000 -10.115351 -33.813374
+v 0.000000 -15.030844 -33.766399
+v -2.100723 1.585059 5.184391
+v -2.746089 0.906452 8.234623
+v -2.702350 0.982543 8.248016
+v -3.358443 0.906636 8.047092
+v -3.268669 0.947842 8.271317
+v -3.288176 0.857027 7.660704
+v -3.231417 0.833478 7.458290
+v -2.945832 0.947842 8.370182
+v -2.767901 1.217680 7.600716
+v -2.831867 1.193856 7.800232
+v -2.705710 1.078453 8.044374
+v -3.279680 0.648902 7.392838
+v -2.731944 1.321703 7.085522
+v -2.638577 1.376539 6.805035
+v -2.545545 1.433227 6.526215
+v -2.463443 1.481376 6.279451
+v -2.199990 1.591370 5.484785
+v -2.294570 1.566186 5.770437
+v -2.815054 1.279114 7.337286
+v -4.862590 -18.225296 -1.627016
+v -4.157889 -18.154312 -1.573095
+v -3.860196 -18.205044 -1.754776
+v -3.090406 -18.503416 -2.094833
+v -2.831184 -19.041048 -2.206314
+v -4.179619 -18.775726 -1.852690
+v -3.925350 -18.745384 -1.955166
+v -4.492723 -18.730068 -1.769159
+v -3.693165 -18.732409 -2.057381
+v -2.960550 -19.141966 -2.325607
+v -5.037312 -18.690538 -2.026423
+v -5.003491 -19.055401 -23.961994
+v -5.346392 -18.100546 -23.909164
+v -3.473645 -19.898066 -24.035627
+v -4.171028 -16.920113 -25.044062
+v -3.130943 -19.235470 -24.880356
+v 3.877420 -21.243620 -22.097708
+v -3.213073 0.731100 6.948429
+v -3.265395 0.688510 7.197651
+v -3.144839 0.785936 6.656616
+v -2.852864 1.015940 5.600719
+v 4.695614 -21.938038 -21.432943
+v 4.612567 -23.532305 -20.669941
+v 3.276369 -25.439056 -19.673870
+v 3.109997 -25.345928 -18.924583
+v 3.376719 -25.478844 -17.972162
+v 4.950655 -15.348528 1.177860
+v 5.075350 -15.164885 1.249352
+v 3.692544 -14.661620 1.459137
+v 4.168602 -14.599836 1.581404
+v 4.348029 -14.892138 1.183931
+v 5.054322 -14.961786 1.366236
+v 3.620040 -14.966415 0.842047
+v 3.006772 -15.057892 0.724499
+v 2.936642 -15.842270 0.568190
+v 3.242894 -15.535629 0.533442
+v 4.723239 -15.388410 1.224392
+v -0.918531 -14.778353 -33.766399
+v 0.875392 -14.507343 -35.860916
+v 1.531936 -13.679147 -35.882027
+v 1.750784 -12.204523 -35.945339
+v 1.531936 -10.814666 -36.008652
+v 0.875392 -10.240767 -36.029758
+v 0.000000 -14.759834 -35.860916
+v -2.697452 1.155885 5.002436
+v -2.669069 1.299483 5.011284
+v -2.583921 1.407416 5.037830
+v -2.452515 1.489582 5.078299
+v -2.285358 1.555878 5.128906
+v -2.717347 1.051123 8.243422
+v -3.345558 0.910367 7.848438
+v -3.159713 1.036103 8.492390
+v -3.198848 0.728868 7.221170
+v -2.889250 1.179422 7.987972
+v -2.781587 1.134552 8.021082
+v -2.887981 1.245709 7.562584
+v -2.382906 1.524518 6.036831
+v -5.163144 -18.498405 -1.905722
+v -5.118517 -18.304319 -1.735548
+v -4.128927 -18.399910 -0.938969
+v -4.807140 -18.702845 -1.108063
+v -3.209425 -18.567785 -1.876307
+v -3.822694 -18.526779 -1.733116
+v -4.925892 -19.060965 -1.535852
+v -3.445547 -18.939724 -2.231833
+v -3.139295 -19.237185 -2.314014
+v -5.153309 -19.006599 -1.564138
+v -5.089707 -17.220676 -24.807095
+v -4.970357 -19.869171 -24.116524
+v -4.239357 -20.106258 -23.789894
+v -3.325509 -17.448784 -25.686527
+v -3.307737 -18.562986 -25.752216
+v 3.884257 -21.846500 -21.802746
+v -2.897627 0.974272 5.878933
+v -2.944862 0.931130 6.131311
+v -3.070388 0.826293 6.676462
+v -2.822534 1.137012 5.609720
+v 4.587674 -25.520329 -19.764648
+v 4.879823 -25.417440 -19.075195
+v 4.104342 -25.271294 -17.886124
+v 3.899270 -23.496759 -20.954231
+v 3.911059 -25.512363 -19.959049
+v 3.640695 -14.740166 2.171391
+v 3.862617 -14.648273 2.217241
+v 4.492459 -15.087073 1.430918
+v 4.749331 -15.238773 1.990583
+v 4.970717 -15.213586 1.965912
+v 3.424577 -15.034533 0.697050
+v 2.651247 -15.501897 0.778339
+v 2.531418 -16.080246 0.868687
+v 2.668002 -16.164812 0.776644
+v 3.272360 -15.394012 0.743862
+v 3.731004 -15.138631 1.406551
+v 3.960664 -15.179186 1.441702
+v 4.526155 -15.297075 1.328793
+v -0.875392 -14.507343 -35.860916
+v -1.531936 -13.679147 -35.882027
+v -1.750784 -12.204523 -35.945339
+v -1.531936 -10.814666 -36.008652
+v -0.875392 -10.240767 -36.029758
+v -0.000001 -10.157807 -36.029758
+v -2.824768 1.012591 8.407257
+v -2.784414 1.066958 8.419617
+v -3.402182 0.983280 8.033697
+v -3.389732 1.012638 8.234241
+v -3.280511 1.064920 8.455395
+v -3.215719 0.971406 7.462790
+v -3.272844 0.977948 7.665340
+v -3.176665 0.849940 7.229010
+v -3.038914 1.064920 8.529381
+v -2.950797 1.218429 7.763666
+v -3.008179 1.199051 7.951405
+v -2.762335 1.103317 8.229633
+v -2.853474 1.292523 7.042686
+v -2.766138 1.347358 6.760479
+v -2.679725 1.404047 6.481001
+v -2.605333 1.452196 6.233410
+v -2.534580 1.495337 5.989485
+v -2.376721 1.562189 5.432589
+v -2.459085 1.537005 5.720995
+v -2.930637 1.249933 7.298468
+v -5.047224 -18.660393 -1.125235
+v -3.895197 -18.474264 -1.046864
+v -4.371255 -18.462564 -0.910374
+v -4.550683 -18.585438 -1.388208
+v -2.853901 -18.999813 -1.992035
+v -3.627230 -18.535870 -1.893057
+v -2.734071 -19.570101 -2.124022
+v -3.933657 -18.897198 -1.273645
+v -4.163318 -18.947941 -1.256166
+v -4.728808 -19.015181 -1.404909
+v -3.475013 -18.886854 -1.983765
+v -2.870655 -19.614212 -2.240973
+v -5.208926 -19.195923 -24.988899
+v -5.302229 -18.237080 -24.837078
+v -3.203860 -21.908464 -24.960035
+v -3.588633 -22.212864 -24.228857
+v -5.050165 -17.426138 -25.705841
+v -4.183574 -17.166002 -25.986769
+v -3.265028 -21.601414 -25.768148
+v -3.141031 0.771458 6.965485
+v -3.000479 0.882982 6.387329
+v -2.869540 1.095345 5.888186
+v -2.768228 1.162196 5.312141
+v 4.800494 -25.506334 -18.134523
+v 3.908222 -27.211252 -19.224058
+v 3.137196 -27.042728 -19.003201
+v 2.875801 -26.938128 -18.381462
+v 4.183147 -26.926559 -17.139359
+v 5.047303 -15.601337 1.640253
+v 5.169365 -15.455296 1.732357
+v 3.586201 -14.957232 2.107103
+v 4.252397 -14.819987 1.558270
+v 4.097566 -14.695340 2.224491
+v 5.156694 -15.292066 1.866915
+v 3.634542 -14.911575 1.414927
+v 3.164314 -15.198712 0.807043
+v 2.776668 -15.457731 0.952843
+v 2.545099 -15.987155 1.042425
+v 2.848992 -16.200699 0.791895
+v 3.062062 -15.798104 0.742695
+v 3.084779 -15.679888 0.926109
+v 4.181727 -15.063038 1.499302
+v 4.829084 -15.628252 1.668617
+v 0.817119 -14.442139 -37.837742
+v 1.429958 -13.649906 -37.874901
+v 1.634238 -12.283175 -37.986385
+v 0.817119 -10.463275 -38.135033
+v -2.741353 1.305793 5.320667
+v -2.660728 1.413726 5.346245
+v -2.535975 1.495893 5.384882
+v -2.798250 1.110774 8.415379
+v -2.948314 1.115839 8.557127
+v -3.330226 1.006958 7.853077
+v -3.371110 1.115839 8.427650
+v -3.199603 1.142399 8.622896
+v -3.064805 1.189351 8.136662
+v -2.838212 1.143322 8.206341
+v -2.999135 1.217680 7.527636
+v -5.278004 -18.862896 -1.429287
+v -5.256975 -18.718081 -1.245062
+v -3.843349 -18.812912 -0.415361
+v -4.065270 -18.744762 -0.338535
+v -4.695113 -18.858458 -1.231800
+v -4.951985 -19.208038 -0.769163
+v -2.747753 -19.548559 -1.928095
+v -2.979321 -19.023952 -1.813654
+v -3.366967 -18.729237 -1.852272
+v -3.837195 -18.689669 -1.181150
+v -4.384381 -18.861677 -1.159388
+v -5.249956 -19.413692 -1.229481
+v -5.031737 -19.449244 -1.213209
+v -3.287432 -19.220085 -1.921352
+v -3.264716 -19.261324 -2.135633
+v -3.051646 -19.653198 -2.240213
+v -4.987620 -21.897871 -25.267746
+v -4.891483 -22.205431 -24.459295
+v -4.288164 -22.311142 -24.087471
+v -4.100513 -18.325134 -26.079359
+v -3.903317 -21.495192 -26.140316
+v -2.918416 1.052203 6.140549
+v -2.975110 1.004054 6.395838
+v -3.117017 0.892529 6.971169
+v -3.045571 0.947365 6.683077
+v -2.846465 1.238942 5.894999
+v -2.797568 1.280610 5.617476
+v 4.722398 -27.288315 -19.078354
+v 5.113246 -27.118528 -18.600391
+v 2.925609 -27.028740 -17.641293
+v 3.539516 -27.048538 -17.047943
+v 3.642185 -15.019691 2.707628
+v 3.844101 -14.946583 2.752552
+v 4.191139 -14.895163 2.172983
+v 4.630436 -15.386543 1.902170
+v 5.021799 -15.665661 2.297369
+v 2.591048 -16.448017 1.232492
+v 2.581603 -16.523859 1.065273
+v 2.717994 -16.570816 0.961615
+v 2.955413 -15.541745 0.999130
+v 3.682941 -15.158780 2.059286
+v 3.914723 -15.204123 2.062847
+v 4.646274 -15.551498 1.771303
+v -0.817119 -14.442139 -37.837738
+v -1.429958 -13.649906 -37.874901
+v -1.634238 -12.283175 -37.986389
+v -0.817119 -10.463276 -38.135033
+v 0.000000 -14.694632 -37.837738
+v 1.429958 -11.001209 -38.097874
+v 0.000000 -10.380316 -38.135033
+v -2.918115 1.153330 8.566376
+v -3.386851 1.052230 8.038334
+v -3.430087 1.067143 8.221882
+v -3.334384 1.169971 8.542248
+v -3.279286 1.162486 8.596718
+v -3.159863 0.993537 7.233089
+v -3.168622 1.075079 7.476284
+v -3.226851 1.068838 7.679253
+v -3.118927 1.162486 8.645824
+v -3.042813 1.169971 8.631540
+v -3.060475 1.193856 7.730007
+v -3.117857 1.179422 7.917746
+v -2.945875 1.175339 8.173229
+v -2.839757 1.143868 8.402655
+v -2.879070 1.281062 6.724171
+v -2.960284 1.226226 7.008390
+v -2.799119 1.337750 6.442963
+v -2.732044 1.385900 6.193609
+v -2.670425 1.429041 5.947575
+v -2.606841 1.470709 5.676319
+v -3.031147 1.183636 7.266775
+v -5.173370 -19.175465 -0.782656
+v -3.788854 -18.990313 -0.556004
+v -4.300219 -18.791138 -0.349371
+v -4.455050 -18.658184 -1.013985
+v -2.793702 -20.047062 -1.923725
+v -2.784257 -20.055029 -2.107166
+v -3.885595 -19.159458 -0.675573
+v -4.117376 -19.202854 -0.689190
+v -4.848927 -19.416351 -1.089298
+v -3.158066 -19.119169 -1.802059
+v -2.920647 -20.059914 -2.220860
+v -4.637817 -21.592958 -25.999271
+v -4.927999 -18.532564 -25.834135
+v -3.193817 -24.962013 -25.648413
+v -3.205999 -24.928408 -24.910902
+v -4.410537 -24.926514 -24.175892
+v -3.745924 -25.011972 -26.050293
+v -2.896796 1.195800 6.146519
+v 5.221474 -27.049126 -17.996704
+v 4.804203 -27.059591 -17.295830
+v 3.782427 -28.570312 -18.844564
+v 2.800702 -28.425232 -18.607222
+v 2.584369 -28.154991 -18.033772
+v 4.311724 -28.400969 -16.253956
+v 5.077800 -15.928411 1.935877
+v 5.192636 -15.833213 2.046871
+v 5.185989 -15.722779 2.196304
+v 3.593136 -15.190606 2.609993
+v 4.133478 -15.110501 2.105007
+v 4.059709 -14.983384 2.735476
+v 4.821545 -15.677084 2.311625
+v 2.664639 -15.934216 1.190567
+v 2.895566 -16.572632 0.957457
+v 2.968532 -16.147758 0.940037
+v 2.982213 -16.054668 1.113775
+v 2.845629 -15.970101 1.205818
+v 4.713356 -15.882717 2.051197
+v -1.429958 -11.001210 -38.097874
+v 0.752230 -14.496537 -39.691574
+v 1.316403 -13.739120 -39.744415
+v 1.316403 -11.299308 -40.061440
+v 0.752230 -10.796186 -40.114277
+v 0.000000 -10.713228 -40.114281
+v -2.722669 1.388543 5.640745
+v -2.928469 1.180707 8.563202
+v -3.284234 1.079559 7.866989
+v -3.401309 1.153330 8.418400
+v -3.216874 1.209762 8.679399
+v -3.174483 1.175339 8.103004
+v -3.008361 1.189448 8.348217
+v -2.909579 1.169131 8.380564
+v -3.094852 1.154001 7.498117
+v -5.372018 -19.312565 -1.089533
+v -5.359348 -19.211334 -0.903786
+v -3.844839 -19.272345 -0.022160
+v -4.046755 -19.221277 0.046799
+v -4.393792 -18.957310 -0.471722
+v -4.833090 -19.312143 -0.906330
+v -5.224452 -19.718569 -0.643827
+v -2.867292 -19.554724 -1.770899
+v -4.336132 -19.131727 -0.615141
+v -5.280454 -19.827450 -1.077255
+v -4.916009 -19.828087 -0.953215
+v -3.048283 -19.593712 -1.770142
+v -3.184867 -19.637821 -1.887091
+v -3.171185 -19.659359 -2.083017
+v -3.098219 -20.060049 -2.225395
+v -4.447270 -25.035492 -26.018908
+v -4.882807 -24.989788 -25.456631
+v -3.677798 -25.248104 -24.139078
+v -2.954681 1.147651 6.401005
+v -3.026243 1.090963 6.687426
+v -3.098848 1.036127 6.975037
+v -2.831935 1.303733 6.164425
+v -2.777241 1.346875 5.915436
+v 5.504467 -28.589373 -18.192551
+v 5.592593 -28.336275 -17.734804
+v 3.088197 -27.445837 -17.065132
+v 2.500909 -28.498487 -17.139662
+v 3.545908 -28.691616 -16.086321
+v 4.877546 -15.939837 1.950132
+v 3.855273 -15.364114 3.129417
+v 3.673773 -15.419981 3.074875
+v 4.149835 -15.142199 2.647123
+v 4.706709 -15.772285 2.200630
+v 5.014020 -16.152920 2.465862
+v 2.705148 -16.388433 1.363773
+v 2.704883 -16.748146 1.172771
+v 2.934441 -16.767483 1.086535
+v 3.683261 -15.349421 2.521641
+v 4.100785 -15.313114 2.549486
+v -0.752230 -14.496537 -39.691574
+v -1.316403 -13.739120 -39.744411
+v -1.316403 -11.299310 -40.061440
+v -0.752230 -10.796188 -40.114281
+v 0.000000 -14.749030 -39.691574
+v 1.504460 -12.476831 -39.902927
+v -3.055407 1.213689 8.665279
+v -3.340858 1.104054 8.052248
+v -3.415942 1.111050 8.226162
+v -3.342805 1.213689 8.577263
+v -3.281526 1.220068 8.652493
+v -3.109456 1.101470 7.245331
+v -3.154594 1.138029 7.701218
+v -3.148247 1.220068 8.693306
+v -3.219277 1.189448 8.283424
+v -3.268603 1.143507 8.074211
+v -3.117720 1.198371 8.313280
+v -2.959531 1.201285 8.553682
+v -2.893394 1.255584 6.416504
+v -2.968257 1.198896 6.700472
+v -3.044339 1.144060 6.986643
+v -3.795790 -19.394482 -0.176519
+v -4.262362 -19.249050 0.017223
+v -5.024199 -19.734486 -0.634867
+v -2.907801 -20.040770 -1.779692
+v -2.907537 -20.303226 -2.091125
+v -3.885915 -19.508854 -0.317751
+v -4.303439 -19.485563 -0.278370
+v -5.395288 -19.780544 -0.938755
+v -5.080200 -19.843369 -1.068293
+v -4.909363 -19.781393 -0.773367
+v -3.137094 -20.288988 -2.178349
+v -5.005812 -25.270857 -24.655899
+v -3.090541 -27.042730 -25.307093
+v -3.025581 -26.938131 -24.593010
+v -4.652909 -26.926559 -23.676212
+v 4.998868 -29.105553 -18.525677
+v 5.187792 -27.427338 -17.473806
+v 4.983160 -28.672182 -16.546246
+v 2.784728 -29.425934 -18.792742
+v 2.484024 -28.796347 -17.891758
+v 4.559080 -29.439438 -15.290837
+v 5.163979 -16.249739 2.207628
+v 5.057950 -16.294956 2.083090
+v 5.160759 -16.190823 2.366734
+v 3.629915 -15.544050 2.944637
+v 4.049255 -15.387331 3.099916
+v 4.833011 -16.149727 2.470442
+v 2.794307 -16.650124 1.388830
+v 2.733182 -16.783199 1.325733
+v 2.827360 -16.853830 1.121088
+v 3.009665 -16.513048 1.088737
+v 3.019110 -16.437206 1.255959
+v 2.882720 -16.390249 1.359615
+v 3.898870 -15.386224 2.504566
+v 4.726982 -16.194944 2.345905
+v 4.730202 -16.253862 2.186798
+v -1.504460 -12.476831 -39.902927
+v 1.206177 -13.862658 -41.484055
+v 0.689244 -14.584344 -41.417130
+v 1.378488 -12.707569 -41.684853
+v 0.689244 -11.169857 -41.952579
+v 0.000000 -11.086898 -41.952579
+v -3.062303 1.235725 8.665829
+v -3.211977 1.134828 7.888954
+v -3.390724 1.180707 8.421602
+v -3.281555 1.250628 8.663128
+v -3.221280 1.248054 8.694035
+v -3.306663 1.169177 8.258661
+v -3.011187 1.216950 8.535200
+v -3.083323 1.229590 8.505144
+v -5.388642 -19.733850 -0.758907
+v -4.057926 -19.749277 0.240644
+v -3.876426 -19.780756 0.169193
+v -4.352488 -19.363424 -0.124008
+v -5.216673 -20.233505 -0.669325
+v -2.996960 -20.292908 -1.854094
+v -2.935836 -20.392828 -1.962292
+v -3.030013 -20.381994 -2.178511
+v -4.101523 -19.536629 -0.347326
+v -5.366632 -20.226973 -0.945034
+v -5.260603 -20.222454 -1.077450
+v -4.929635 -20.227734 -0.796301
+v -4.932855 -20.223026 -0.965899
+v -3.085373 -20.040899 -1.784227
+v -3.221763 -20.045788 -1.897921
+v -3.212318 -20.053751 -2.081364
+v -3.782273 -27.211252 -25.689951
+v -5.138977 -27.118532 -25.338570
+v -3.298906 -27.028740 -23.829857
+v -4.060254 -27.048538 -23.409046
+v 3.994952 -29.875256 -18.783493
+v 6.028922 -29.258369 -17.392277
+v 5.990757 -29.707588 -17.733969
+v 5.410607 -28.404066 -17.188078
+v 2.517630 -29.080086 -18.199104
+v 3.425344 -29.566406 -18.915859
+v 2.909442 -28.508247 -16.495966
+v 2.354557 -29.210770 -17.278849
+v 4.053417 -29.607662 -15.213109
+v 4.876941 -16.291765 2.087669
+v 3.880679 -15.817669 3.339828
+v 3.712215 -15.860824 3.280149
+v 4.130558 -15.500517 2.978027
+v 4.963584 -16.608507 2.487000
+v 3.040377 -16.794191 1.203579
+v 3.711219 -15.657236 2.822750
+v 4.086701 -15.624586 2.847792
+v -1.206177 -13.862658 -41.484055
+v -0.689244 -14.584344 -41.417130
+v -0.689244 -11.169858 -41.952579
+v -1.378488 -12.707568 -41.684853
+v 0.000000 -14.836834 -41.417130
+v 1.206177 -11.637245 -41.885654
+v -3.373509 1.144053 8.238997
+v -3.337246 1.235725 8.581608
+v -3.154051 1.250628 8.702187
+v -3.308348 1.216950 8.443974
+v -3.241165 1.229590 8.456657
+v -3.163972 1.235153 8.475100
+v -3.081002 1.250672 8.660982
+v -3.832569 -19.847269 0.002068
+v -4.251908 -19.759808 0.204613
+v -5.035665 -20.232254 -0.663883
+v -3.913872 -19.906796 -0.153252
+v -4.333212 -19.819338 0.049292
+v -4.289354 -19.885849 -0.117834
+v -5.363412 -20.231682 -0.775436
+v -5.079594 -20.221201 -1.072010
+v -3.243031 -20.357443 -2.079725
+v -4.624008 -27.288315 -25.710732
+v -5.411162 -27.049126 -24.788960
+v -5.205751 -27.059591 -23.999563
+v -3.740435 -28.623590 -25.378536
+v -2.827909 -28.432163 -24.961805
+v -2.827655 -28.154991 -24.229359
+v -5.021946 -28.400969 -22.880116
+v 4.828053 -29.871254 -17.974899
+v 5.751837 -30.216282 -17.817257
+v 5.758615 -29.160023 -16.918434
+v 5.032077 -29.603767 -15.516452
+v 2.512292 -29.650707 -18.437490
+v 2.862786 -30.292675 -19.238483
+v 2.493535 -29.640987 -17.584429
+v 2.645552 -29.464909 -15.633814
+v 2.205900 -29.591579 -15.946321
+v 4.889646 -30.086391 -14.208299
+v 3.534255 -29.665771 -15.992339
+v 5.099555 -16.633078 2.390532
+v 5.102212 -16.655981 2.229364
+v 5.003554 -16.666180 2.100254
+v 3.671106 -15.949911 3.132076
+v 4.060425 -15.830544 3.303373
+v 4.795613 -16.594969 2.486708
+v 2.946200 -16.723562 1.408222
+v 2.915587 -16.891418 1.299335
+v 3.023864 -16.669460 1.302593
+v 3.905201 -15.680453 2.793249
+v 4.696956 -16.605167 2.357597
+v 4.699612 -16.628071 2.196430
+v -1.206177 -11.637245 -41.885647
+v 1.094364 -14.054595 -43.064114
+v 0.625351 -14.728170 -42.983315
+v 1.250701 -13.016285 -43.306503
+v 0.625351 -11.629686 -43.629692
+v 0.000000 -11.546726 -43.629692
+v -3.358969 1.201285 8.431208
+v -3.318583 1.250672 8.588137
+v -3.273693 1.267134 8.669041
+v -3.163517 1.267134 8.702824
+v -3.110396 1.260942 8.647209
+v -3.149372 1.268949 8.620977
+v -4.083332 -20.248587 0.266617
+v -3.914869 -20.266356 0.195145
+v -5.166238 -20.664074 -0.819715
+v -3.148853 -20.368280 -1.863506
+v -3.118241 -20.483379 -2.027164
+v -4.107854 -19.917328 -0.189283
+v -5.302209 -20.650877 -0.918385
+v -5.304865 -20.611980 -1.076456
+v -5.206207 -20.573269 -1.200045
+v -4.998266 -20.651405 -0.814936
+v -4.899609 -20.612690 -0.938524
+v -4.902265 -20.573799 -1.096596
+v -3.226518 -20.278669 -1.941319
+v -5.623739 -28.589375 -25.096766
+v -5.851847 -28.336275 -24.689816
+v -3.045064 -28.498487 -23.236021
+v -3.622026 -27.445837 -23.299770
+v -4.343801 -28.691616 -22.499638
+v 4.054360 -30.155613 -18.372272
+v 3.172915 -30.574909 -19.141388
+v 6.639112 -29.895771 -16.804691
+v 6.662358 -30.469410 -17.053610
+v 5.403624 -29.394932 -16.593952
+v 4.982079 -29.592709 -16.607548
+v 2.492153 -30.145489 -19.075787
+v 3.094340 -29.646523 -15.450580
+v 2.081914 -30.027424 -16.202124
+v 4.416976 -30.269001 -14.109136
+v 3.867045 -30.117622 -15.379046
+v 4.835583 -16.652641 2.099964
+v 3.781962 -16.127630 3.311886
+v 4.135386 -15.909537 3.163042
+v 4.034002 -16.105713 3.328695
+v 4.786943 -16.836430 2.406977
+v 5.006942 -16.864014 2.337362
+v 3.746067 -16.028906 2.991745
+v 4.094276 -15.998627 3.014969
+v -1.094364 -14.054595 -43.064114
+v -0.625351 -14.728170 -42.983315
+v -0.625351 -11.629686 -43.629692
+v -1.250701 -13.016285 -43.306503
+v 0.000000 -14.973773 -42.983315
+v 1.094364 -12.059296 -43.548897
+v -3.222579 1.267134 8.698933
+v -3.288050 1.260942 8.592669
+v -3.246882 1.268949 8.591024
+v -3.198208 1.272129 8.599714
+v -3.873760 -20.293756 0.024523
+v -4.263079 -20.246927 0.227989
+v -3.948720 -20.314682 -0.135149
+v -4.338039 -20.267857 0.068316
+v -4.296929 -20.295254 -0.102304
+v -5.038236 -20.560600 -1.195265
+v -5.050006 -29.140644 -25.274099
+v -5.524542 -27.427338 -24.277391
+v -5.620737 -28.672182 -23.350826
+v -2.677499 -29.469254 -25.197472
+v -2.676879 -29.053112 -24.405355
+v -2.777268 -28.796347 -24.042942
+v -5.524313 -29.439438 -22.079287
+v 5.419876 -30.493038 -17.515869
+v 3.877544 -30.303673 -17.885059
+v 6.320920 -29.733910 -16.427116
+v 6.455650 -31.070290 -17.084459
+v 5.120450 -30.091473 -15.794170
+v 5.341671 -30.261753 -14.390916
+v 2.553904 -30.008011 -18.034935
+v 2.296880 -30.288273 -18.681778
+v 2.321790 -31.142185 -19.545126
+v 2.120569 -30.842258 -19.612965
+v 1.914696 -30.321701 -14.805067
+v 2.371086 -30.170410 -14.637800
+v 2.248883 -30.490295 -16.303045
+v 5.267850 -30.386261 -12.964628
+v 3.245733 -30.135529 -15.582595
+v 3.994024 -30.621048 -15.648766
+v 4.938058 -16.871998 2.122835
+v 3.910116 -16.189774 3.383593
+v 3.758374 -16.269205 3.221104
+v 4.895015 -16.934538 2.399490
+v 3.925813 -16.041780 2.955290
+v 4.718060 -16.844414 2.192450
+v -1.094364 -12.059296 -43.548897
+v 0.976045 -14.349008 -44.454861
+v 0.557740 -14.950638 -44.359074
+v 0.976045 -12.609736 -45.029587
+v 0.000000 -12.138118 -45.125374
+v 0.557740 -12.221077 -45.125374
+v -3.260158 1.275265 8.667269
+v -3.174565 1.275265 8.693546
+v -3.185116 1.280704 8.672684
+v -3.984615 -20.525734 0.125029
+v -4.236655 -20.511671 0.148804
+v -4.989597 -20.845676 -0.979006
+v -4.128467 -20.313023 -0.173777
+v -5.209595 -20.845293 -1.053885
+v -5.140712 -20.772648 -1.255898
+v -4.920713 -20.773031 -1.181019
+v -4.039348 -30.191082 -25.339884
+v -6.400191 -29.258369 -24.629314
+v -6.204698 -29.707588 -24.914429
+v -5.864477 -28.404066 -24.108074
+v -3.348484 -29.779530 -25.435276
+v -2.871725 -29.210770 -23.339331
+v -3.631346 -28.508247 -22.712696
+v -5.060347 -29.607662 -21.863714
+v 4.636926 -29.906254 -17.268393
+v 3.186671 -30.837284 -18.756027
+v 7.186625 -30.164413 -15.476364
+v 7.531819 -30.328819 -15.807641
+v 7.609514 -30.871048 -15.980434
+v 5.943491 -29.967041 -16.144720
+v 5.187733 -29.945473 -16.700335
+v 4.895472 -30.585716 -15.968109
+v 2.855428 -30.265141 -17.769899
+v 1.862343 -30.666271 -19.419580
+v 2.312858 -31.407417 -19.174213
+v 2.835240 -30.347195 -14.550544
+v 1.775512 -30.805202 -14.962322
+v 2.877509 -30.067535 -17.166277
+v 4.809195 -30.556160 -12.846150
+v 4.238328 -30.809788 -14.186022
+v 3.106171 -30.597507 -15.869495
+v 3.490851 -29.999546 -16.760578
+v 4.995706 -16.950815 2.208649
+v 4.804029 -16.930435 2.110319
+v 3.805976 -16.235094 3.091927
+v 4.058017 -16.213177 3.108736
+v 4.093325 -16.240078 3.243443
+v 4.703338 -16.914158 2.301161
+v -0.976045 -14.349008 -44.454861
+v -0.557740 -14.950638 -44.359074
+v -0.557740 -12.221078 -45.125374
+v -0.976045 -12.609736 -45.029587
+v 0.000000 -15.175578 -44.359074
+v 1.115480 -13.443878 -44.742226
+v -3.220575 1.275520 8.690395
+v -3.243165 1.280704 8.654852
+v -3.215075 1.281726 8.664719
+v -4.112770 -20.610146 0.168369
+v -3.961028 -20.623207 -0.012024
+v -5.097669 -20.933905 -1.022560
+v -4.008630 -20.543358 -0.119143
+v -4.260670 -20.529295 -0.095369
+v -5.198359 -20.877794 -1.205692
+v -5.006681 -20.822195 -1.289314
+v -4.905991 -20.878305 -1.106182
+v -5.096152 -29.937695 -24.677263
+v -5.977623 -30.216282 -24.869446
+v -5.915693 -29.603767 -22.427784
+v -6.412794 -29.160023 -24.075085
+v -2.498443 -29.542801 -24.688770
+v -2.290256 -30.229088 -25.449360
+v -2.893560 -29.614471 -23.671688
+v -3.175968 -29.591576 -22.016830
+v -3.685295 -29.464909 -21.839231
+v -4.370560 -29.665771 -22.421549
+v -6.139874 -30.086391 -21.186958
+v 5.172599 -30.436550 -17.065123
+v 6.083979 -31.313885 -16.807838
+v 3.045137 -30.937172 -18.219187
+v 4.076650 -30.122803 -16.941221
+v 7.447736 -31.425537 -15.947970
+v 5.458386 -30.794884 -14.564394
+v 5.716020 -30.552483 -13.120538
+v 2.306187 -30.569885 -18.298580
+v 1.700262 -30.772861 -19.006815
+v 1.767854 -31.396748 -19.657490
+v 1.447445 -31.020599 -19.548941
+v 2.160605 -30.479374 -13.667051
+v 1.696230 -30.630051 -13.773374
+v 1.941878 -31.299374 -15.037330
+v 2.682095 -30.698044 -16.150908
+v 5.152139 -30.725212 -12.136088
+v 2.997712 -30.847900 -14.633324
+v 4.364694 -31.346848 -14.357500
+v 3.933384 -16.362947 3.260511
+v 3.941582 -16.319510 3.080956
+v 4.832835 -17.033123 2.242046
+v -1.115480 -13.443878 -44.742226
+v 0.861776 -14.703773 -45.666073
+v 0.492443 -15.227282 -45.557590
+v 0.492444 -12.877151 -46.425385
+v 0.861776 -13.221540 -46.316914
+v 0.000000 -12.796673 -46.425385
+v -4.295978 -20.604521 0.019571
+v -4.144236 -20.617584 -0.160822
+v -4.278041 -30.421375 -24.849009
+v -3.177817 -31.077297 -25.524872
+v -7.104223 -29.895771 -24.606695
+v -6.950076 -30.469410 -24.807293
+v -5.651779 -29.592709 -23.421398
+v -6.289767 -29.394932 -23.610430
+v -2.168287 -30.119732 -24.935087
+v -2.704287 -29.842300 -24.170437
+v -2.719629 -30.643871 -25.659277
+v -2.985604 -30.027420 -22.227943
+v -4.167368 -29.646519 -21.788330
+v -4.835113 -30.117622 -21.971136
+v -5.713568 -30.269001 -20.959995
+v 2.150777 -31.514015 -18.761452
+v 3.291930 -30.356274 -17.610468
+v 3.738477 -30.215622 -17.524715
+v 6.813401 -30.365582 -15.191864
+v 8.015597 -30.627926 -15.060275
+v 7.983611 -31.373634 -15.123764
+v 5.742539 -30.578388 -16.181345
+v 5.270086 -31.331741 -14.643278
+v 5.823914 -30.724571 -12.339245
+v 2.549294 -30.839188 -18.168320
+v 1.589835 -31.700596 -19.471092
+v 1.468031 -31.250156 -19.782660
+v 2.627476 -30.645729 -13.599257
+v 1.544766 -31.102997 -13.860180
+v 4.642327 -31.060951 -12.856565
+v 5.568738 -30.626324 -11.971756
+v 2.854634 -31.337933 -14.798353
+v 4.777736 -31.564514 -12.958443
+v 4.428414 -30.769661 -15.882380
+v -0.861776 -14.703773 -45.666073
+v -0.492443 -15.227282 -45.557590
+v -0.492443 -12.877151 -46.425385
+v -0.861776 -13.221540 -46.316914
+v 0.000000 -15.427171 -45.557590
+v 0.984887 -13.932805 -45.991489
+v -4.136037 -20.724884 -0.010443
+v -5.035488 -20.966619 -1.205421
+v -5.870277 -30.493038 -24.433392
+v -4.267701 -30.462986 -24.259598
+v -3.386230 -31.242615 -25.006178
+v -7.147832 -29.733910 -24.109932
+v -6.792057 -31.070290 -24.689034
+v -6.523097 -30.261753 -21.488316
+v -5.923166 -30.091473 -22.719128
+v -2.335804 -30.292667 -24.426168
+v -1.612741 -30.638203 -25.186213
+v -1.697004 -30.784054 -25.672098
+v -3.188004 -30.209873 -23.903742
+v -3.117832 -30.490292 -22.371395
+v -3.281468 -30.321701 -20.867712
+v -3.766393 -30.170410 -20.834265
+v -4.275970 -30.135529 -21.957310
+v -4.881893 -30.621048 -22.265556
+v -6.848496 -30.386261 -20.116362
+v 5.771543 -31.162491 -16.436035
+v 7.074513 -31.626698 -15.663470
+v 1.641177 -31.672173 -19.076992
+v 7.483723 -30.649490 -14.603292
+v 7.952708 -30.578808 -14.591642
+v 8.303638 -31.040154 -14.925139
+v 5.684562 -31.560841 -13.232826
+v 5.851428 -31.056046 -13.222412
+v 1.892551 -31.338028 -18.568066
+v 1.691330 -31.038097 -18.635904
+v 1.175214 -31.171539 -19.310551
+v 1.713948 -30.799244 -13.208433
+v 2.403759 -30.810852 -13.079457
+v 1.703718 -31.581158 -13.888947
+v 2.402138 -31.482685 -14.957849
+v 5.108764 -31.084507 -11.853992
+v 2.786427 -31.123894 -13.628023
+v 5.225905 -31.730736 -13.114348
+v 4.807068 -31.518280 -14.542115
+v -0.984887 -13.932805 -45.991489
+v 0.762111 -15.076772 -46.707516
+v 0.435492 -15.533634 -46.592087
+v 0.000000 -13.457998 -47.515503
+v 0.435492 -13.531030 -47.515503
+v 0.870984 -14.425527 -47.053799
+v -5.095640 -29.923958 -23.932491
+v -3.425784 -31.124374 -24.326195
+v -2.391005 -31.699940 -25.206335
+v -2.254555 -31.572613 -25.700502
+v -8.047930 -30.164413 -24.144131
+v -8.011974 -30.328819 -24.621216
+v -7.928096 -30.871048 -24.791096
+v -6.078373 -29.945473 -23.594048
+v -5.658627 -30.585716 -22.823477
+v -7.088691 -29.967041 -23.642994
+v -1.723044 -30.757786 -24.705357
+v -2.774889 -30.724785 -24.232300
+v -1.967082 -31.181423 -25.849644
+v -3.410352 -30.053722 -23.345543
+v -3.103972 -30.805202 -20.979948
+v -4.236475 -30.347195 -20.879820
+v -4.061981 -30.597507 -22.193949
+v -5.520570 -30.809792 -20.984049
+v -4.112956 -30.008327 -23.125641
+v -6.441031 -30.556160 -19.874756
+v 6.651623 -30.920067 -15.159398
+v 7.936796 -31.525517 -14.640939
+v 6.015707 -31.085518 -12.128170
+v 1.320769 -31.296024 -18.968441
+v 1.174512 -31.551376 -19.490923
+v 1.297018 -31.621983 -18.998985
+v 2.024379 -30.707684 -12.948930
+v 1.555286 -31.148960 -13.056175
+v 1.713082 -31.480263 -13.260620
+v 5.137038 -31.431709 -12.186537
+v 5.667355 -31.093853 -11.641611
+v 2.170589 -31.747513 -13.821152
+v 2.634964 -31.596836 -13.714829
+v -0.762111 -15.076772 -46.707516
+v -0.435492 -15.533634 -46.592087
+v -0.435492 -13.531030 -47.515503
+v -0.870984 -14.425527 -47.053799
+v 0.000000 -15.713470 -46.592087
+v 0.762111 -13.827682 -47.400082
+v -6.736836 -31.313885 -24.229244
+v -5.898561 -30.436550 -23.907764
+v -3.755195 -30.435337 -23.824524
+v -4.627901 -30.146023 -23.461201
+v -2.332889 -31.561829 -24.707140
+v -7.850214 -31.425529 -24.645626
+v -7.235459 -30.552483 -20.390995
+v -6.586841 -30.794884 -21.687449
+v -2.036664 -31.156723 -24.542906
+v -1.355248 -31.103531 -24.980429
+v -1.161507 -31.111122 -25.374887
+v -1.347409 -31.117073 -25.672012
+v -3.576279 -30.698044 -22.346020
+v -3.242844 -31.299374 -21.098343
+v -3.381553 -30.630051 -19.825369
+v -3.857160 -30.479374 -19.852676
+v -4.369440 -30.847900 -21.004601
+v -5.594141 -31.346848 -21.183949
+v -6.968278 -30.725212 -19.288401
+v 6.729318 -31.462296 -15.332193
+v 7.585865 -31.064167 -14.307444
+v 8.216146 -31.104362 -14.298415
+v 7.451736 -31.395199 -14.666780
+v 5.808813 -31.431068 -12.389692
+v 2.486532 -31.164631 -12.882058
+v 5.555733 -31.543697 -12.010405
+v 2.402894 -31.491871 -13.131645
+v -0.762111 -13.827682 -47.400082
+v 0.676708 -15.484887 -47.623055
+v 0.386690 -15.871074 -47.508846
+v 0.000000 -14.113971 -48.422462
+v 0.386690 -14.176828 -48.422462
+v 0.773380 -14.934712 -47.965652
+v -4.211464 -30.308495 -23.868618
+v -1.715083 -31.649296 -24.978613
+v -1.555858 -31.800480 -25.374044
+v -1.684002 -31.655956 -25.682030
+v -8.029963 -30.365582 -23.675180
+v -8.576690 -30.627926 -24.518951
+v -8.507360 -31.373634 -24.534668
+v -7.556820 -30.724571 -19.670729
+v -6.934592 -30.578388 -23.531887
+v -6.384017 -31.331741 -21.710732
+v -1.363179 -31.450611 -24.916462
+v -1.354185 -31.460991 -25.832474
+v -3.211898 -31.102997 -19.866522
+v -4.324429 -30.645729 -19.917679
+v -4.186038 -31.337936 -21.123220
+v -5.233966 -30.769661 -22.610977
+v -6.379524 -31.564514 -19.973831
+v -6.277873 -31.060951 -19.838251
+v -7.414169 -30.626324 -19.246685
+v 1.972680 -31.171246 -12.710789
+v 2.017439 -31.605907 -12.989304
+v -0.676707 -15.484887 -47.623055
+v -0.386690 -15.871075 -47.508846
+v -0.386690 -14.176828 -48.422462
+v -0.773380 -14.934712 -47.965656
+v 0.000000 -16.023170 -47.508846
+v 0.676708 -14.429156 -48.308258
+v -7.832248 -31.626698 -24.176678
+v -6.784364 -31.162491 -23.739628
+v -8.590857 -30.649490 -23.817863
+v -8.786341 -30.578808 -24.172272
+v -8.752322 -31.040154 -24.655195
+v -7.337111 -31.056046 -20.526571
+v -7.173953 -31.560837 -20.490070
+v -1.144286 -31.551376 -25.433865
+v -3.707019 -31.482685 -21.150284
+v -3.356534 -31.581158 -19.938450
+v -3.556014 -30.799244 -19.287745
+v -4.254440 -30.810852 -19.356123
+v -4.469065 -31.123894 -19.989605
+v -5.967536 -31.518280 -21.484535
+v -6.766488 -31.730736 -20.248465
+v -7.005239 -31.084507 -19.005394
+v -0.676707 -14.429156 -48.308258
+v 0.605223 -15.945004 -48.456543
+v 0.345842 -16.240973 -48.354198
+v 0.000000 -14.756471 -49.172997
+v 0.345842 -14.808669 -49.172997
+v 0.605223 -15.026958 -49.070644
+v -7.952081 -30.920067 -23.529716
+v -8.738186 -31.525517 -24.191359
+v -7.799839 -31.085518 -19.521469
+v -3.540638 -31.480263 -19.337627
+v -3.446071 -31.148960 -19.097305
+v -3.926467 -30.707684 -19.125040
+v -4.299410 -31.596836 -20.030762
+v -3.823802 -31.747513 -20.003452
+v -6.939715 -31.431709 -19.332644
+v -7.600888 -31.093853 -18.957106
+v -0.605223 -15.945004 -48.456543
+v -0.345842 -16.240973 -48.354198
+v -0.345841 -14.808669 -49.172997
+v -0.605223 -15.026957 -49.070648
+v 0.000000 -16.344955 -48.354198
+v 0.691683 -15.473034 -48.763596
+v -7.868202 -31.462296 -23.699594
+v -8.772203 -31.064167 -23.708441
+v -9.036322 -31.104362 -24.188951
+v -8.521523 -31.395199 -23.833580
+v -7.528257 -31.431068 -19.714970
+v -4.388947 -31.164631 -19.189615
+v -4.239065 -31.491871 -19.406006
+v -7.390908 -31.543697 -19.280178
+v -0.691683 -15.473034 -48.763596
+v 0.540626 -16.354780 -49.243664
+v 0.308929 -16.574348 -49.161842
+v 0.000000 -15.291397 -49.816475
+v 0.308929 -15.334400 -49.816483
+v 0.540626 -15.528085 -49.734646
+v -3.908551 -31.605907 -19.161880
+v -3.943185 -31.171246 -18.881927
+v -0.540626 -16.354782 -49.243664
+v -0.308929 -16.574348 -49.161839
+v -0.308929 -15.334400 -49.816475
+v -0.540626 -15.528085 -49.734642
+v 0.000000 -16.634609 -49.161839
+v 0.617858 -15.937119 -49.489159
+v -0.617858 -15.937119 -49.489155
+v 0.475886 -16.611877 -50.020096
+v 0.271935 -16.802216 -49.965496
+v 0.000000 -15.624648 -50.402264
+v 0.271935 -15.661880 -50.402264
+v 0.543870 -16.223591 -50.183884
+v -0.475886 -16.611877 -50.020096
+v -0.271935 -16.802216 -49.965496
+v -0.271935 -15.661880 -50.402264
+v -0.543870 -16.223591 -50.183884
+v 0.000000 -16.847902 -49.965500
+v 0.475886 -15.839538 -50.347672
+v -0.475886 -15.839536 -50.347668
+v 0.420611 -16.751410 -50.724262
+v 0.240349 -16.936008 -50.694969
+v -0.000001 -15.813523 -50.929333
+v 0.240349 -15.847706 -50.929333
+v 0.480698 -16.380352 -50.812153
+v -0.420611 -16.751408 -50.724262
+v -0.240349 -16.936008 -50.694973
+v -0.240349 -15.847706 -50.929333
+v -0.480698 -16.380352 -50.812153
+v 0.000000 -16.981691 -50.694969
+v 0.420610 -16.015049 -50.900040
+v -0.420611 -16.015049 -50.900032
+v 0.384407 -16.808500 -51.294621
+v 0.219661 -16.987148 -51.280048
+v 0.000000 -15.915323 -51.396648
+v 0.219661 -15.948487 -51.396648
+v 0.439322 -16.455299 -51.338348
+v -0.384407 -16.808500 -51.294621
+v -0.219661 -16.987148 -51.280048
+v -0.219661 -15.948489 -51.396645
+v -0.439322 -16.455299 -51.338348
+v 0.000000 -17.032831 -51.280048
+v 0.384407 -16.108358 -51.382072
+v -0.384407 -16.108358 -51.382072
+v 0.192761 -16.914864 -51.858109
+v 0.000000 -16.957006 -51.858727
+v 0.337332 -16.754078 -51.862877
+v 0.000000 -15.967505 -51.702847
+v 0.328423 -16.133892 -51.887840
+v 0.385522 -16.440285 -51.879646
+v -0.192761 -16.914864 -51.858109
+v -0.337332 -16.754078 -51.862873
+v -0.328423 -16.133892 -51.887840
+v -0.385522 -16.440285 -51.879646
+v 0.157127 -15.995308 -51.866882
+v -0.157126 -15.995310 -51.866882
+v 0.000000 -16.709892 -52.569008
+v 0.142539 -16.678383 -52.566536
+v 0.249443 -16.559069 -52.560726
+v 0.285078 -16.327164 -52.553230
+v 0.000000 -16.019251 -52.402718
+v -0.142539 -16.678383 -52.566536
+v -0.249443 -16.559069 -52.560726
+v -0.285078 -16.327162 -52.553226
+v 0.213808 -16.106083 -52.511417
+v -0.213808 -16.106083 -52.511417
+v 0.000000 -16.498852 -52.993443
+v 0.164634 -16.388527 -52.979282
+v 0.130873 -16.108318 -52.938587
+v -0.164634 -16.388527 -52.979282
+v -0.130873 -16.108318 -52.938580
+v 0.075962 -16.402218 -53.137794
+v 0.151925 -16.217007 -53.110874
+v 0.000000 -16.059956 -53.054592
+v -0.075962 -16.402218 -53.137794
+v -0.151925 -16.217007 -53.110874
+v 0.000000 -16.210886 -53.304363
+v -2.434903 1.642859 8.857885
+v -2.372223 1.948102 8.882011
+v -1.761311 1.715637 7.431217
+v -1.731890 2.018994 7.503353
+vt 0.728660 0.086176
+vt 0.729153 0.086051
+vt 0.729191 0.089845
+vt 0.729315 0.081911
+vt 0.728805 0.084264
+vt 0.730089 0.085917
+vt 0.730089 0.090230
+vt 0.730089 0.081956
+vt 0.730089 0.080958
+vt 0.729775 0.081002
+vt 0.730858 0.081859
+vt 0.730988 0.082599
+vt 0.731063 0.085871
+vt 0.730584 0.081236
+vt 0.731063 0.090269
+vt 0.730247 0.092122
+vt 0.729595 0.091043
+vt 0.731053 0.093390
+vt 0.732149 0.088053
+vt 0.732037 0.090230
+vt 0.731857 0.085908
+vt 0.732180 0.094159
+vt 0.732543 0.090168
+vt 0.732778 0.093478
+vt 0.354065 0.549436
+vt 0.354554 0.549756
+vt 0.354744 0.552903
+vt 0.354170 0.550633
+vt 0.354560 0.546000
+vt 0.354063 0.547728
+vt 0.355490 0.550104
+vt 0.355490 0.553199
+vt 0.355490 0.546095
+vt 0.356193 0.553430
+vt 0.356464 0.550222
+vt 0.356483 0.552373
+vt 0.907097 0.963996
+vt 0.907843 0.963682
+vt 0.907831 0.964537
+vt 0.907581 0.964638
+vt 0.355490 0.543992
+vt 0.355016 0.544738
+vt 0.356464 0.546135
+vt 0.355477 0.553703
+vt 0.356022 0.543177
+vt 0.356459 0.542467
+vt 0.357202 0.550159
+vt 0.357438 0.546095
+vt 0.357494 0.548145
+vt 0.357238 0.541746
+vt 0.357438 0.541782
+vt 0.356893 0.551179
+vt 0.389756 0.831805
+vt 0.388989 0.830097
+vt 0.388174 0.828900
+vt 0.388648 0.828523
+vt 0.390621 0.831796
+vt 0.386713 0.826630
+vt 0.386697 0.826349
+vt 0.390903 0.833534
+vt 0.386584 0.825384
+vt 0.392017 0.834675
+vt 0.391327 0.834795
+vt 0.336995 0.836089
+vt 0.336838 0.835527
+vt 0.337829 0.834470
+vt 0.339205 0.833643
+vt 0.355285 0.553961
+vt 0.355228 0.553602
+vt 0.386071 0.825931
+vt 0.386039 0.825573
+vt 0.391881 0.836356
+vt 0.391663 0.835541
+vt 0.356416 0.553993
+vt 0.357041 0.551547
+vt 0.357853 0.551982
+vt 0.356936 0.554597
+vt 0.355691 0.554791
+vt 0.338713 0.833276
+vt 0.386188 0.824742
+vt 0.387589 0.825813
+vt 0.389112 0.828628
+vt 0.353892 0.547737
+vt 0.354001 0.551010
+vt 0.353352 0.550905
+vt 0.353234 0.547591
+vt 0.354871 0.544858
+vt 0.354029 0.544714
+vt 0.393005 0.837250
+vt 0.392068 0.837066
+vt 0.392081 0.837787
+vt 0.341413 0.830281
+vt 0.339477 0.832255
+vt 0.340312 0.830241
+vt 0.357639 0.548185
+vt 0.358624 0.548237
+vt 0.355970 0.555515
+vt 0.386689 0.824431
+vt 0.386068 0.824087
+vt 0.354947 0.542356
+vt 0.356383 0.542283
+vt 0.341028 0.828222
+vt 0.342263 0.826733
+vt 0.341265 0.826535
+vt 0.358485 0.553150
+vt 0.357194 0.556346
+vt 0.355055 0.555446
+vt 0.354793 0.554149
+vt 0.353876 0.553720
+vt 0.354294 0.555102
+vt 0.353718 0.555411
+vt 0.352803 0.552911
+vt 0.352321 0.550190
+vt 0.352123 0.547103
+vt 0.352764 0.544509
+vt 0.355197 0.540599
+vt 0.356195 0.540084
+vt 0.358280 0.544637
+vt 0.359151 0.543927
+vt 0.357768 0.541744
+vt 0.358478 0.541991
+vt 0.358111 0.542358
+vt 0.341613 0.824455
+vt 0.342469 0.824087
+vt 0.359913 0.548587
+vt 0.356030 0.557549
+vt 0.354902 0.557117
+vt 0.353459 0.542222
+vt 0.354195 0.540026
+vt 0.392798 0.838200
+vt 0.392013 0.837963
+vt 0.894621 0.964529
+vt 0.894384 0.963745
+vt 0.895042 0.964023
+vt 0.894795 0.964646
+vt 0.359001 0.540569
+vt 0.360113 0.543052
+vt 0.281241 0.813522
+vt 0.284081 0.818084
+vt 0.281096 0.814992
+vt 0.278686 0.810481
+vt 0.358286 0.556190
+vt 0.356951 0.560652
+vt 0.352626 0.555972
+vt 0.351196 0.550832
+vt 0.351033 0.548615
+vt 0.350628 0.546200
+vt 0.351516 0.542726
+vt 0.351307 0.544481
+vt 0.355532 0.538511
+vt 0.357749 0.541333
+vt 0.357739 0.539681
+vt 0.282196 0.816802
+vt 0.283622 0.819138
+vt 0.355780 0.562312
+vt 0.354446 0.560858
+vt 0.352809 0.540082
+vt 0.359480 0.538995
+vt 0.360663 0.547534
+vt 0.360672 0.542828
+vt 0.359480 0.551679
+vt 0.360232 0.549869
+vt 0.360409 0.550641
+vt 0.359162 0.553616
+vt 0.279176 0.813055
+vt 0.276558 0.807690
+vt 0.357939 0.558981
+vt 0.357246 0.565512
+vt 0.347695 0.552810
+vt 0.348051 0.543974
+vt 0.349854 0.536408
+vt 0.354915 0.537758
+vt 0.357624 0.537825
+vt 0.361277 0.547822
+vt 0.356065 0.567979
+vt 0.351594 0.565100
+vt 0.354145 0.533914
+vt 0.357558 0.536965
+vt 0.255510 0.822836
+vt 0.256641 0.822611
+vt 0.256896 0.826669
+vt 0.255684 0.827247
+vt 0.361303 0.543270
+vt 0.361166 0.551576
+vt 0.362579 0.548062
+vt 0.359322 0.555249
+vt 0.358130 0.559397
+vt 0.358726 0.562055
+vt 0.337633 0.556225
+vt 0.335603 0.541950
+vt 0.336562 0.530010
+vt 0.344143 0.524646
+vt 0.359793 0.538417
+vt 0.360574 0.536337
+vt 0.362480 0.544395
+vt 0.359937 0.567724
+vt 0.357731 0.572721
+vt 0.339021 0.568593
+vt 0.350927 0.572603
+vt 0.353028 0.523068
+vt 0.357624 0.533164
+vt 0.362734 0.539834
+vt 0.362702 0.552339
+vt 0.364410 0.544614
+vt 0.360284 0.557179
+vt 0.361333 0.562803
+vt 0.328276 0.564139
+vt 0.323083 0.546555
+vt 0.322767 0.530918
+vt 0.322761 0.513338
+vt 0.338613 0.510843
+vt 0.362801 0.557810
+vt 0.538182 0.682119
+vt 0.540654 0.678841
+vt 0.544127 0.683762
+vt 0.543781 0.685704
+vt 0.361423 0.572257
+vt 0.364112 0.564446
+vt 0.329992 0.582559
+vt 0.340236 0.579926
+vt 0.350011 0.581085
+vt 0.351842 0.510273
+vt 0.357902 0.522482
+vt 0.362307 0.530705
+vt 0.360438 0.524494
+vt 0.363535 0.528313
+vt 0.365220 0.552597
+vt 0.366783 0.543621
+vt 0.364516 0.560861
+vt 0.365752 0.556060
+vt 0.355696 0.582142
+vt 0.358833 0.581346
+vt 0.326954 0.580777
+vt 0.325236 0.562686
+vt 0.322597 0.549205
+vt 0.318297 0.540887
+vt 0.315605 0.527240
+vt 0.313236 0.511804
+vt 0.336202 0.501044
+vt 0.321511 0.501983
+vt 0.350867 0.500585
+vt 0.358387 0.510228
+vt 0.365685 0.527337
+vt 0.534220 0.674309
+vt 0.528123 0.684717
+vt 0.525861 0.676606
+vt 0.543235 0.693245
+vt 0.544559 0.691117
+vt 0.326252 0.601804
+vt 0.326416 0.595083
+vt 0.329378 0.595787
+vt 0.329004 0.603852
+vt 0.341749 0.591093
+vt 0.336508 0.596688
+vt 0.320313 0.544739
+vt 0.348070 0.591473
+vt 0.318316 0.544722
+vt 0.359072 0.501708
+vt 0.361176 0.515330
+vt 0.367674 0.551648
+vt 0.368946 0.543228
+vt 0.547746 0.690505
+vt 0.547441 0.695721
+vt 0.538999 0.694971
+vt 0.531203 0.696926
+vt 0.543008 0.697093
+vt 0.351435 0.596326
+vt 0.530077 0.650239
+vt 0.535530 0.664423
+vt 0.531016 0.665219
+vt 0.525801 0.650468
+vt 0.523087 0.667531
+vt 0.170472 0.636037
+vt 0.168118 0.640504
+vt 0.168049 0.638993
+vt 0.168943 0.636414
+vt 0.161500 0.653984
+vt 0.165727 0.643123
+vt 0.311905 0.529025
+vt 0.316231 0.545619
+vt 0.306282 0.512335
+vt 0.313232 0.502296
+vt 0.321573 0.496307
+vt 0.335562 0.494664
+vt 0.349504 0.493470
+vt 0.356816 0.494267
+vt 0.362817 0.510962
+vt 0.367836 0.528311
+vt 0.517699 0.679545
+vt 0.519675 0.692912
+vt 0.547498 0.704503
+vt 0.325221 0.617130
+vt 0.325705 0.609014
+vt 0.328686 0.609250
+vt 0.328145 0.618430
+vt 0.336385 0.609697
+vt 0.158106 0.660018
+vt 0.154733 0.672075
+vt 0.155958 0.665095
+vt 0.343089 0.599546
+vt 0.340514 0.604243
+vt 0.090767 0.814846
+vt 0.089238 0.815534
+vt 0.089289 0.814118
+vt 0.162771 0.648993
+vt 0.165260 0.643310
+vt 0.346489 0.598430
+vt 0.090771 0.812849
+vt 0.314116 0.496854
+vt 0.362165 0.500095
+vt 0.359482 0.494111
+vt 0.365644 0.511232
+vt 0.549658 0.697778
+vt 0.550732 0.694917
+vt 0.552816 0.703338
+vt 0.550684 0.704333
+vt 0.542538 0.708160
+vt 0.535238 0.711578
+vt 0.521514 0.700918
+vt 0.515273 0.670218
+vt 0.545763 0.706550
+vt 0.348402 0.601935
+vt 0.524829 0.637583
+vt 0.520366 0.634586
+vt 0.518471 0.652433
+vt 0.151038 0.676675
+vt 0.152911 0.672281
+vt 0.153829 0.670124
+vt 0.159258 0.657296
+vt 0.167141 0.639463
+vt 0.161615 0.651725
+vt 0.309453 0.534380
+vt 0.311050 0.547971
+vt 0.303456 0.527794
+vt 0.307633 0.501613
+vt 0.314411 0.493618
+vt 0.321593 0.492993
+vt 0.335349 0.491115
+vt 0.348820 0.489700
+vt 0.355146 0.490460
+vt 0.554679 0.718254
+vt 0.554544 0.735333
+vt 0.551339 0.719261
+vt 0.552408 0.714800
+vt 0.736022 0.057661
+vt 0.739380 0.071028
+vt 0.734536 0.065074
+vt 0.732330 0.060054
+vt 0.730295 0.050255
+vt 0.733432 0.048334
+vt 0.348718 0.608982
+vt 0.347904 0.608942
+vt 0.511349 0.655073
+vt 0.152015 0.674383
+vt 0.325583 0.622560
+vt 0.327858 0.623434
+vt 0.335109 0.619124
+vt 0.341077 0.611482
+vt 0.160440 0.654503
+vt 0.780635 0.867729
+vt 0.780995 0.866645
+vt 0.780282 0.868793
+vt 0.345958 0.601235
+vt 0.343785 0.602735
+vt 0.342267 0.606861
+vt 0.087437 0.816302
+vt 0.087087 0.815600
+vt 0.089263 0.812724
+vt 0.292772 0.519294
+vt 0.296549 0.505451
+vt 0.300985 0.499566
+vt 0.308339 0.496533
+vt 0.308708 0.493427
+vt 0.556231 0.752454
+vt 0.560755 0.752298
+vt 0.558089 0.756105
+vt 0.554556 0.756337
+vt 0.547905 0.748970
+vt 0.556242 0.746470
+vt 0.549435 0.753970
+vt 0.545086 0.740428
+vt 0.547432 0.722590
+vt 0.549150 0.717188
+vt 0.525900 0.715901
+vt 0.540365 0.727022
+vt 0.735932 0.071094
+vt 0.739115 0.072512
+vt 0.726034 0.035446
+vt 0.728577 0.033189
+vt 0.347251 0.604091
+vt 0.522396 0.630981
+vt 0.520279 0.629322
+vt 0.514120 0.638197
+vt 0.484841 0.786593
+vt 0.484861 0.788750
+vt 0.483947 0.788608
+vt 0.484033 0.786501
+vt 0.136740 0.709493
+vt 0.138759 0.708428
+vt 0.136556 0.710263
+vt 0.135842 0.710579
+vt 0.134863 0.713858
+vt 0.134936 0.712291
+vt 0.484229 0.781565
+vt 0.484047 0.784043
+vt 0.483403 0.781393
+vt 0.164918 0.643133
+vt 0.166792 0.639214
+vt 0.166781 0.636291
+vt 0.168994 0.635853
+vt 0.165727 0.638590
+vt 0.087128 0.813923
+vt 0.087472 0.813047
+vt 0.303424 0.546570
+vt 0.316766 0.562691
+vt 0.312184 0.563205
+vt 0.289102 0.533362
+vt 0.299383 0.495569
+vt 0.342351 0.670553
+vt 0.349329 0.670553
+vt 0.349105 0.676256
+vt 0.341899 0.676154
+vt 0.349470 0.663371
+vt 0.342546 0.663371
+vt 0.349894 0.649615
+vt 0.343132 0.649615
+vt 0.347134 0.628441
+vt 0.350667 0.629818
+vt 0.350369 0.636144
+vt 0.343579 0.634197
+vt 0.731845 0.068006
+vt 0.733325 0.072197
+vt 0.730664 0.065649
+vt 0.724610 0.052317
+vt 0.725525 0.061207
+vt 0.722668 0.041285
+vt 0.347466 0.608895
+vt 0.523820 0.632531
+vt 0.525881 0.637623
+vt 0.512136 0.631709
+vt 0.515211 0.629541
+vt 0.506977 0.638875
+vt 0.723317 0.022019
+vt 0.723407 0.016991
+vt 0.484760 0.790853
+vt 0.483908 0.790679
+vt 0.484650 0.793144
+vt 0.484092 0.793063
+vt 0.137496 0.708282
+vt 0.581676 0.830024
+vt 0.583353 0.830024
+vt 0.583352 0.832299
+vt 0.581259 0.832110
+vt 0.334684 0.622298
+vt 0.342800 0.615900
+vt 0.342236 0.619064
+vt 0.344165 0.615464
+vt 0.342938 0.611881
+vt 0.483516 0.776488
+vt 0.483876 0.779051
+vt 0.482999 0.778902
+vt 0.482721 0.776340
+vt 0.345869 0.602111
+vt 0.344104 0.603422
+vt 0.342863 0.607072
+vt 0.163555 0.646191
+vt 0.163896 0.642657
+vt 0.117693 0.802533
+vt 0.119854 0.805797
+vt 0.117642 0.805359
+vt 0.116664 0.803179
+vt 0.481942 0.765463
+vt 0.481200 0.765265
+vt 0.480987 0.762660
+vt 0.091309 0.810764
+vt 0.318434 0.562570
+vt 0.306769 0.563887
+vt 0.273703 0.523009
+vt 0.279737 0.510207
+vt 0.287363 0.496413
+vt 0.354407 0.676625
+vt 0.354272 0.685581
+vt 0.348432 0.685575
+vt 0.550293 0.756748
+vt 0.542957 0.756505
+vt 0.539536 0.751378
+vt 0.533341 0.737986
+vt 0.530624 0.730967
+vt 0.737399 0.077506
+vt 0.740351 0.078708
+vt 0.518542 0.699319
+vt 0.516162 0.694396
+vt 0.520828 0.700343
+vt 0.726192 0.069197
+vt 0.721088 0.034000
+vt 0.723001 0.030082
+vt 0.346935 0.604599
+vt 0.524704 0.633328
+vt 0.526521 0.637670
+vt 0.346466 0.614034
+vt 0.346376 0.615584
+vt 0.346049 0.617243
+vt 0.517314 0.628197
+vt 0.508403 0.631726
+vt 0.722503 0.022640
+vt 0.484536 0.795506
+vt 0.483682 0.795371
+vt 0.484425 0.797819
+vt 0.484313 0.800150
+vt 0.483458 0.799992
+vt 0.483511 0.797679
+vt 0.482598 0.789619
+vt 0.482675 0.788187
+vt 0.482744 0.786601
+vt 0.139017 0.704851
+vt 0.138052 0.707137
+vt 0.138521 0.706010
+vt 0.135637 0.709951
+vt 0.136522 0.709170
+vt 0.134858 0.711346
+vt 0.133519 0.712778
+vt 0.133186 0.714188
+vt 0.583646 0.839125
+vt 0.580819 0.838366
+vt 0.584420 0.846354
+vt 0.587805 0.839550
+vt 0.588181 0.846677
+vt 0.482740 0.770972
+vt 0.483133 0.773766
+vt 0.482637 0.773629
+vt 0.481971 0.770783
+vt 0.227430 0.809624
+vt 0.226513 0.812082
+vt 0.225652 0.811201
+vt 0.226441 0.809350
+vt 0.227316 0.807220
+vt 0.228671 0.806974
+vt 0.162547 0.645780
+vt 0.164669 0.637946
+vt 0.165877 0.634073
+vt 0.482350 0.768195
+vt 0.481527 0.768044
+vt 0.318752 0.551885
+vt 0.318514 0.548032
+vt 0.319390 0.547818
+vt 0.319827 0.551809
+vt 0.318191 0.545013
+vt 0.284986 0.539926
+vt 0.297025 0.551729
+vt 0.302599 0.564516
+vt 0.317095 0.579418
+vt 0.312542 0.579244
+vt 0.269252 0.529306
+vt 0.340544 0.685170
+vt 0.335373 0.670553
+vt 0.334694 0.676256
+vt 0.335622 0.663371
+vt 0.336369 0.649615
+vt 0.342871 0.627065
+vt 0.339128 0.628441
+vt 0.336804 0.636144
+vt 0.546551 0.758828
+vt 0.730378 0.071885
+vt 0.731550 0.073570
+vt 0.732728 0.074834
+vt 0.732538 0.075011
+vt 0.734883 0.078171
+vt 0.515561 0.700592
+vt 0.518728 0.704747
+vt 0.714835 0.053431
+vt 0.713619 0.065427
+vt 0.716348 0.041686
+vt 0.717688 0.032887
+vt 0.347108 0.608838
+vt 0.718975 0.865886
+vt 0.719630 0.867602
+vt 0.718746 0.867663
+vt 0.718231 0.865362
+vt 0.510637 0.626810
+vt 0.504968 0.643903
+vt 0.503295 0.637069
+vt 0.504116 0.634491
+vt 0.484220 0.802563
+vt 0.483636 0.802480
+vt 0.484090 0.804794
+vt 0.483230 0.804732
+vt 0.138906 0.803503
+vt 0.140194 0.803275
+vt 0.139066 0.805659
+vt 0.138125 0.805419
+vt 0.139280 0.802490
+vt 0.140460 0.802215
+vt 0.483240 0.823606
+vt 0.483182 0.824751
+vt 0.482360 0.824567
+vt 0.482381 0.823506
+vt 0.483094 0.825962
+vt 0.482535 0.825639
+vt 0.134827 0.710505
+vt 0.133707 0.711808
+vt 0.131925 0.712897
+vt 0.131482 0.714214
+vt 0.579972 0.830024
+vt 0.579582 0.831541
+vt 0.579182 0.846574
+vt 0.344688 0.614953
+vt 0.343366 0.611604
+vt 0.481984 0.780241
+vt 0.481741 0.778479
+vt 0.481484 0.776499
+vt 0.483757 0.785619
+vt 0.482758 0.785863
+vt 0.227721 0.806136
+vt 0.228968 0.805822
+vt 0.345614 0.603284
+vt 0.344314 0.604365
+vt 0.343397 0.607420
+vt 0.161759 0.647629
+vt 0.162585 0.648795
+vt 0.162867 0.642201
+vt 0.161527 0.645403
+vt 0.115215 0.800019
+vt 0.115890 0.798542
+vt 0.115630 0.803808
+vt 0.116737 0.807577
+vt 0.480286 0.767620
+vt 0.480001 0.765416
+vt 0.318652 0.579122
+vt 0.307540 0.578784
+vt 0.258132 0.513879
+vt 0.252591 0.520062
+vt 0.266687 0.501863
+vt 0.274735 0.490226
+vt 0.288665 0.490549
+vt 0.299388 0.492851
+vt 0.336116 0.629818
+vt 0.543538 0.760729
+vt 0.539126 0.758886
+vt 0.533685 0.752716
+vt 0.531560 0.743792
+vt 0.729045 0.073615
+vt 0.733921 0.079618
+vt 0.739818 0.083697
+vt 0.742273 0.084036
+vt 0.523574 0.712048
+vt 0.655561 0.787574
+vt 0.654407 0.780143
+vt 0.657327 0.786007
+vt 0.657899 0.790638
+vt 0.712232 0.078365
+vt 0.720557 0.031235
+vt 0.721850 0.028156
+vt 0.346405 0.605262
+vt 0.346405 0.613237
+vt 0.346196 0.612781
+vt 0.344761 0.614384
+vt 0.588824 0.850489
+vt 0.585859 0.849842
+vt 0.515875 0.626320
+vt 0.505926 0.631844
+vt 0.721065 0.017266
+vt 0.720974 0.015185
+vt 0.722065 0.023036
+vt 0.483929 0.808141
+vt 0.483853 0.809728
+vt 0.483290 0.809631
+vt 0.483073 0.807984
+vt 0.484005 0.806575
+vt 0.483091 0.806436
+vt 0.138199 0.807967
+vt 0.137430 0.807056
+vt 0.182461 0.803079
+vt 0.183675 0.802822
+vt 0.182512 0.805310
+vt 0.181655 0.805058
+vt 0.482149 0.798893
+vt 0.482240 0.797259
+vt 0.482316 0.795457
+vt 0.139618 0.801566
+vt 0.140469 0.801453
+vt 0.481808 0.788857
+vt 0.481584 0.787690
+vt 0.481917 0.786620
+vt 0.482750 0.821250
+vt 0.483319 0.821321
+vt 0.483282 0.822479
+vt 0.482457 0.822381
+vt 0.135042 0.709247
+vt 0.135643 0.708954
+vt 0.136286 0.708693
+vt 0.132309 0.711977
+vt 0.579359 0.836091
+vt 0.302462 0.814533
+vt 0.301444 0.817243
+vt 0.300633 0.816140
+vt 0.301481 0.814150
+vt 0.302414 0.811880
+vt 0.303789 0.811686
+vt 0.225441 0.809109
+vt 0.224286 0.811560
+vt 0.226458 0.806306
+vt 0.227000 0.805193
+vt 0.343754 0.611360
+vt 0.160326 0.647942
+vt 0.113777 0.799686
+vt 0.164340 0.637640
+vt 0.162501 0.642085
+vt 0.294381 0.800390
+vt 0.293143 0.800106
+vt 0.294432 0.796233
+vt 0.295147 0.796539
+vt 0.480555 0.769562
+vt 0.480840 0.764098
+vt 0.479888 0.764341
+vt 0.319950 0.554834
+vt 0.318931 0.554987
+vt 0.791404 0.755932
+vt 0.800173 0.757762
+vt 0.795879 0.773496
+vt 0.787672 0.771327
+vt 0.789825 0.785535
+vt 0.782396 0.783164
+vt 0.782793 0.791109
+vt 0.776519 0.789336
+vt 0.304635 0.578223
+vt 0.311807 0.595252
+vt 0.315540 0.596424
+vt 0.278754 0.485178
+vt 0.347879 0.696298
+vt 0.339189 0.695542
+vt 0.332657 0.685575
+vt 0.329330 0.670847
+vt 0.328615 0.676625
+vt 0.329460 0.663391
+vt 0.329825 0.649402
+vt 0.330535 0.635460
+vt 0.524455 0.729156
+vt 0.525243 0.727402
+vt 0.730629 0.076976
+vt 0.731792 0.078481
+vt 0.732885 0.078514
+vt 0.034383 0.807569
+vt 0.033901 0.807746
+vt 0.034224 0.802961
+vt 0.035212 0.801657
+vt 0.737301 0.084010
+vt 0.515553 0.705920
+vt 0.518041 0.707692
+vt 0.704591 0.049785
+vt 0.702875 0.069371
+vt 0.711107 0.035446
+vt 0.718384 0.029728
+vt 0.715112 0.027865
+vt 0.346532 0.608765
+vt 0.506065 0.629469
+vt 0.721004 0.018421
+vt 0.718764 0.015793
+vt 0.717399 0.014961
+vt 0.720647 0.012607
+vt 0.716835 0.010734
+vt 0.483775 0.811348
+vt 0.482918 0.811192
+vt 0.181660 0.807562
+vt 0.180934 0.806756
+vt 0.483440 0.794460
+vt 0.482324 0.794631
+vt 0.182844 0.802046
+vt 0.183967 0.801722
+vt 0.138031 0.802763
+vt 0.138518 0.801758
+vt 0.137184 0.805180
+vt 0.139025 0.801113
+vt 0.483482 0.816934
+vt 0.483434 0.818459
+vt 0.482520 0.818322
+vt 0.482651 0.816738
+vt 0.483365 0.820019
+vt 0.482500 0.819934
+vt 0.136628 0.708011
+vt 0.137418 0.708098
+vt 0.481212 0.823990
+vt 0.481270 0.823251
+vt 0.134641 0.709370
+vt 0.133958 0.710862
+vt 0.132620 0.711288
+vt 0.130788 0.712000
+vt 0.130332 0.712228
+vt 0.129828 0.713877
+vt 0.578318 0.830024
+vt 0.578104 0.831920
+vt 0.578375 0.837608
+vt 0.344773 0.613776
+vt 0.482372 0.775237
+vt 0.481380 0.775527
+vt 0.302840 0.810750
+vt 0.304110 0.810465
+vt 0.228113 0.805088
+vt 0.229012 0.804945
+vt 0.481110 0.779364
+vt 0.480647 0.777950
+vt 0.480738 0.776583
+vt 0.630648 0.857208
+vt 0.632014 0.857491
+vt 0.631865 0.858489
+vt 0.630665 0.858526
+vt 0.481646 0.785946
+vt 0.345351 0.604270
+vt 0.344441 0.605152
+vt 0.343799 0.607683
+vt 0.161149 0.645356
+vt 0.320185 0.550333
+vt 0.321122 0.550973
+vt 0.321046 0.552158
+vt 0.292805 0.796337
+vt 0.291569 0.800095
+vt 0.291757 0.796503
+vt 0.292934 0.801651
+vt 0.294064 0.801881
+vt 0.479672 0.768608
+vt 0.479191 0.767069
+vt 0.479262 0.765542
+vt 0.321091 0.554370
+vt 0.319231 0.560421
+vt 0.319081 0.557708
+vt 0.316802 0.595619
+vt 0.319384 0.572859
+vt 0.319456 0.579027
+vt 0.801924 0.741101
+vt 0.792647 0.739085
+vt 0.307885 0.593554
+vt 0.241024 0.504034
+vt 0.233466 0.510048
+vt 0.252995 0.492846
+vt 0.264215 0.482175
+vt 0.331703 0.628148
+vt 0.725466 0.133182
+vt 0.733670 0.130832
+vt 0.731414 0.137003
+vt 0.724103 0.138638
+vt 0.737416 0.121909
+vt 0.732986 0.123543
+vt 0.735775 0.118353
+vt 0.740284 0.107272
+vt 0.738134 0.106738
+vt 0.729501 0.077502
+vt 0.727225 0.078914
+vt 0.722294 0.081946
+vt 0.735764 0.084192
+vt 0.741382 0.092631
+vt 0.743545 0.092164
+vt 0.739009 0.092047
+vt 0.520838 0.713684
+vt 0.658307 0.799279
+vt 0.660885 0.800003
+vt 0.662254 0.799918
+vt 0.710202 0.092933
+vt 0.697682 0.088236
+vt 0.720468 0.030535
+vt 0.721534 0.027825
+vt 0.345904 0.605796
+vt 0.345844 0.612257
+vt 0.716732 0.004926
+vt 0.716512 0.007585
+vt 0.709283 0.005484
+vt 0.708524 0.003690
+vt 0.720000 0.009961
+vt 0.719287 0.016632
+vt 0.721707 0.023281
+vt 0.027888 0.794547
+vt 0.028921 0.794546
+vt 0.028123 0.796193
+vt 0.027342 0.795900
+vt 0.481753 0.807080
+vt 0.481819 0.806016
+vt 0.481865 0.804764
+vt 0.482971 0.803927
+vt 0.481853 0.804120
+vt 0.136148 0.807405
+vt 0.181705 0.802262
+vt 0.182197 0.801223
+vt 0.180798 0.804805
+vt 0.183211 0.801052
+vt 0.184022 0.800901
+vt 0.481359 0.798072
+vt 0.481145 0.796755
+vt 0.481484 0.795526
+vt 0.140288 0.799914
+vt 0.141226 0.800286
+vt 0.141408 0.799216
+vt 0.140873 0.798542
+vt 0.483622 0.814541
+vt 0.483519 0.815738
+vt 0.482998 0.815659
+vt 0.482760 0.814460
+vt 0.012830 0.806402
+vt 0.012436 0.807533
+vt 0.011767 0.806970
+vt 0.012112 0.806184
+vt 0.481285 0.822358
+vt 0.773137 0.867645
+vt 0.772952 0.868793
+vt 0.772162 0.868476
+vt 0.772344 0.867557
+vt 0.134793 0.708151
+vt 0.135330 0.708129
+vt 0.135883 0.707620
+vt 0.131324 0.711172
+vt 0.576331 0.838366
+vt 0.577254 0.836091
+vt 0.300488 0.813802
+vt 0.299234 0.816477
+vt 0.301582 0.810805
+vt 0.302144 0.809658
+vt 0.227555 0.804471
+vt 0.553631 0.805430
+vt 0.552956 0.805430
+vt 0.552929 0.802979
+vt 0.553900 0.802915
+vt 0.553243 0.808090
+vt 0.552281 0.808233
+vt 0.550838 0.809346
+vt 0.551876 0.810904
+vt 0.550579 0.811355
+vt 0.344049 0.611103
+vt 0.550378 0.827132
+vt 0.549845 0.827086
+vt 0.550054 0.824546
+vt 0.550841 0.824435
+vt 0.739505 0.866765
+vt 0.739511 0.865560
+vt 0.740944 0.865884
+vt 0.740796 0.866836
+vt 0.813404 0.868147
+vt 0.813761 0.869085
+vt 0.812323 0.869265
+vt 0.812193 0.868025
+vt 0.291985 0.792309
+vt 0.293282 0.792215
+vt 0.291510 0.801567
+vt 0.163464 0.633045
+vt 0.165442 0.633789
+vt 0.163378 0.637721
+vt 0.161327 0.641885
+vt 0.303256 0.809641
+vt 0.304177 0.809511
+vt 0.478893 0.764609
+vt 0.320057 0.557522
+vt 0.319381 0.563144
+vt 0.319533 0.565895
+vt 0.318783 0.585252
+vt 0.319681 0.568590
+vt 0.319822 0.571144
+vt 0.782441 0.757762
+vt 0.778691 0.773496
+vt 0.773808 0.785535
+vt 0.321819 0.733307
+vt 0.330407 0.737554
+vt 0.324530 0.749641
+vt 0.317490 0.746369
+vt 0.330804 0.750330
+vt 0.323546 0.764037
+vt 0.318695 0.763027
+vt 0.306061 0.592782
+vt 0.308608 0.602697
+vt 0.310845 0.607443
+vt 0.313659 0.609722
+vt 0.269514 0.477707
+vt 0.348014 0.706210
+vt 0.338737 0.705208
+vt 0.330500 0.696298
+vt 0.326495 0.685581
+vt 0.687831 0.131833
+vt 0.688715 0.135521
+vt 0.682937 0.134971
+vt 0.682232 0.131697
+vt 0.696110 0.132181
+vt 0.696171 0.136077
+vt 0.710161 0.137723
+vt 0.710801 0.133131
+vt 0.726441 0.124342
+vt 0.528569 0.726366
+vt 0.525207 0.723281
+vt 0.742435 0.105518
+vt 0.728317 0.079613
+vt 0.730569 0.079133
+vt 0.731535 0.080463
+vt 0.733084 0.082463
+vt 0.089874 0.802046
+vt 0.090078 0.798542
+vt 0.090907 0.804454
+vt 0.090399 0.807133
+vt 0.733760 0.080922
+vt 0.735008 0.084632
+vt 0.737177 0.088181
+vt 0.518511 0.714048
+vt 0.701497 0.050529
+vt 0.699554 0.069693
+vt 0.703603 0.026677
+vt 0.710984 0.021363
+vt 0.718703 0.029214
+vt 0.716865 0.025395
+vt 0.715675 0.020055
+vt 0.345993 0.608648
+vt 0.709708 0.010483
+vt 0.719360 0.017450
+vt 0.720795 0.019101
+vt 0.717537 0.019993
+vt 0.027557 0.797754
+vt 0.026882 0.796972
+vt 0.482781 0.812877
+vt 0.483695 0.813015
+vt 0.028184 0.793723
+vt 0.029138 0.793642
+vt 0.179792 0.806979
+vt 0.646825 0.857796
+vt 0.646707 0.858913
+vt 0.645560 0.858962
+vt 0.645543 0.857566
+vt 0.481208 0.794784
+vt 0.182703 0.800530
+vt 0.553813 0.798708
+vt 0.552796 0.798791
+vt 0.552998 0.796375
+vt 0.553697 0.796454
+vt 0.551458 0.799796
+vt 0.552853 0.800953
+vt 0.551531 0.801388
+vt 0.139264 0.799823
+vt 0.550677 0.800441
+vt 0.550448 0.801731
+vt 0.481171 0.819100
+vt 0.481249 0.817903
+vt 0.481294 0.816558
+vt 0.012526 0.805175
+vt 0.013483 0.805086
+vt 0.482178 0.821818
+vt 0.481242 0.821858
+vt 0.480516 0.823534
+vt 0.480321 0.822925
+vt 0.527665 0.855801
+vt 0.527698 0.857555
+vt 0.526479 0.857244
+vt 0.526725 0.855801
+vt 0.524988 0.857535
+vt 0.525681 0.855801
+vt 0.341470 0.843377
+vt 0.340132 0.843270
+vt 0.340357 0.841644
+vt 0.341459 0.841644
+vt 0.338836 0.843751
+vt 0.339456 0.841644
+vt 0.130117 0.711670
+vt 0.130161 0.710598
+vt 0.128305 0.713118
+vt 0.128677 0.711764
+vt 0.576682 0.831541
+vt 0.576795 0.830024
+vt 0.344762 0.613196
+vt 0.705462 0.854643
+vt 0.705294 0.855636
+vt 0.704048 0.855572
+vt 0.704063 0.854319
+vt 0.480377 0.775735
+vt 0.228944 0.803062
+vt 0.229884 0.803531
+vt 0.230180 0.802164
+vt 0.229689 0.801317
+vt 0.629720 0.858607
+vt 0.629587 0.857284
+vt 0.630857 0.859348
+vt 0.631784 0.859602
+vt 0.552868 0.810671
+vt 0.107892 0.806587
+vt 0.108196 0.807469
+vt 0.107421 0.807149
+vt 0.107135 0.806370
+vt 0.106814 0.804056
+vt 0.106211 0.804099
+vt 0.548849 0.824316
+vt 0.549115 0.822391
+vt 0.550376 0.821941
+vt 0.159928 0.645069
+vt 0.293401 0.789269
+vt 0.292161 0.789031
+vt 0.321760 0.552219
+vt 0.322047 0.551201
+vt 0.290788 0.799238
+vt 0.290673 0.796539
+vt 0.164582 0.632298
+vt 0.162311 0.631463
+vt 0.422763 0.852659
+vt 0.424295 0.852578
+vt 0.423990 0.853708
+vt 0.422161 0.853732
+vt 0.302715 0.808918
+vt 0.739639 0.867495
+vt 0.740636 0.867832
+vt 0.304162 0.807436
+vt 0.305112 0.807972
+vt 0.305465 0.806445
+vt 0.304982 0.805512
+vt 0.321198 0.556270
+vt 0.322024 0.553749
+vt 0.318597 0.588929
+vt 0.319012 0.586542
+vt 0.314601 0.609121
+vt 0.320106 0.576290
+vt 0.320108 0.578948
+vt 0.783371 0.741101
+vt 0.802423 0.721976
+vt 0.792647 0.719300
+vt 0.316816 0.778596
+vt 0.319441 0.779368
+vt 0.314784 0.788510
+vt 0.311964 0.790899
+vt 0.221015 0.491532
+vt 0.210336 0.497116
+vt 0.238037 0.481741
+vt 0.253827 0.472635
+vt 0.260809 0.469106
+vt 0.338737 0.714280
+vt 0.348513 0.715450
+vt 0.329461 0.706210
+vt 0.732501 0.111704
+vt 0.735037 0.109338
+vt 0.736906 0.103998
+vt 0.666438 0.816056
+vt 0.668073 0.825217
+vt 0.663301 0.813597
+vt 0.663972 0.810671
+vt 0.729654 0.079185
+vt 0.725795 0.084446
+vt 0.722650 0.091107
+vt 0.737079 0.091211
+vt 0.737333 0.095466
+vt 0.711161 0.105004
+vt 0.697366 0.104145
+vt 0.696915 0.084570
+vt 0.701385 0.027694
+vt 0.720213 0.029446
+vt 0.721003 0.027245
+vt 0.303652 0.821193
+vt 0.304428 0.820874
+vt 0.303603 0.822399
+vt 0.303010 0.822519
+vt 0.345511 0.611747
+vt 0.702744 0.010725
+vt 0.702457 0.004421
+vt 0.702268 0.003074
+vt 0.717965 0.020491
+vt 0.721131 0.023448
+vt 0.482650 0.810410
+vt 0.481559 0.811096
+vt 0.481543 0.810394
+vt 0.481510 0.812458
+vt 0.027148 0.793872
+vt 0.027546 0.793044
+vt 0.026562 0.795605
+vt 0.029155 0.792952
+vt 0.028471 0.792923
+vt 0.480954 0.806391
+vt 0.480722 0.805502
+vt 0.481037 0.804685
+vt 0.660868 0.855965
+vt 0.660742 0.857082
+vt 0.659756 0.857132
+vt 0.659726 0.855741
+vt 0.480747 0.804080
+vt 0.645709 0.859784
+vt 0.646598 0.860028
+vt 0.552560 0.794149
+vt 0.553578 0.794117
+vt 0.553340 0.789476
+vt 0.552325 0.789526
+vt 0.552521 0.786982
+vt 0.553217 0.787067
+vt 0.550990 0.790564
+vt 0.552392 0.791949
+vt 0.551070 0.792369
+vt 0.183967 0.799193
+vt 0.184822 0.799584
+vt 0.480760 0.796364
+vt 0.553920 0.800768
+vt 0.139946 0.798871
+vt 0.560323 0.855090
+vt 0.561308 0.855057
+vt 0.560706 0.856256
+vt 0.559955 0.856013
+vt 0.560339 0.857335
+vt 0.559673 0.856656
+vt 0.860313 0.996545
+vt 0.861220 0.996615
+vt 0.861019 0.997944
+vt 0.860061 0.997623
+vt 0.011395 0.805964
+vt 0.010854 0.807023
+vt 0.480574 0.822326
+vt 0.773101 0.866949
+vt 0.772527 0.866645
+vt 0.771765 0.867498
+vt 0.771417 0.868667
+vt 0.205836 0.816518
+vt 0.206989 0.816442
+vt 0.206765 0.818196
+vt 0.205847 0.818196
+vt 0.207526 0.816116
+vt 0.207201 0.815411
+vt 0.207714 0.815646
+vt 0.551124 0.764868
+vt 0.551303 0.764360
+vt 0.551773 0.764783
+vt 0.552027 0.765154
+vt 0.433026 0.851578
+vt 0.433707 0.853685
+vt 0.432469 0.853502
+vt 0.432078 0.851578
+vt 0.128886 0.710744
+vt 0.706249 0.002426
+vt 0.701699 0.001992
+vt 0.704194 0.856307
+vt 0.705160 0.856639
+vt 0.552078 0.816093
+vt 0.551509 0.816059
+vt 0.551586 0.813385
+vt 0.552485 0.813298
+vt 0.551664 0.818937
+vt 0.550821 0.819057
+vt 0.549396 0.820203
+vt 0.227917 0.802874
+vt 0.549972 0.810069
+vt 0.549498 0.811666
+vt 0.630176 0.859689
+vt 0.152309 0.664185
+vt 0.153289 0.664398
+vt 0.152191 0.667058
+vt 0.151246 0.666854
+vt 0.151156 0.669574
+vt 0.150240 0.669384
+vt 0.153341 0.661595
+vt 0.154355 0.661817
+vt 0.550333 0.813145
+vt 0.105318 0.800636
+vt 0.104938 0.800952
+vt 0.160036 0.648054
+vt 0.158848 0.647777
+vt 0.551261 0.821710
+vt 0.548035 0.822680
+vt 0.548120 0.823994
+vt 0.813261 0.867223
+vt 0.812318 0.867367
+vt 0.294522 0.791707
+vt 0.294615 0.789761
+vt 0.290982 0.792308
+vt 0.290425 0.800364
+vt 0.422963 0.851251
+vt 0.424394 0.851154
+vt 0.158550 0.635650
+vt 0.160419 0.638236
+vt 0.157874 0.641175
+vt 0.303126 0.807181
+vt 0.321868 0.555278
+vt 0.315344 0.810478
+vt 0.315680 0.811730
+vt 0.314480 0.811483
+vt 0.314055 0.810331
+vt 0.319906 0.560289
+vt 0.318111 0.591484
+vt 0.319822 0.581596
+vt 0.319961 0.573672
+vt 0.782871 0.721976
+vt 0.632730 0.110802
+vt 0.627190 0.104620
+vt 0.643851 0.096025
+vt 0.648302 0.102807
+vt 0.659585 0.087351
+vt 0.663700 0.095855
+vt 0.671624 0.077188
+vt 0.678024 0.086608
+vt 0.677201 0.064126
+vt 0.681373 0.067837
+vt 0.313705 0.761222
+vt 0.313545 0.777982
+vt 0.307737 0.605086
+vt 0.310524 0.612027
+vt 0.313032 0.614700
+vt 0.349054 0.724155
+vt 0.338737 0.722866
+vt 0.328961 0.715450
+vt 0.322840 0.697600
+vt 0.673982 0.133346
+vt 0.675584 0.131383
+vt 0.687835 0.123023
+vt 0.680881 0.121768
+vt 0.697360 0.121614
+vt 0.713212 0.124044
+vt 0.727627 0.111830
+vt 0.727401 0.082518
+vt 0.728893 0.079817
+vt 0.730290 0.079795
+vt 0.731014 0.080936
+vt 0.732452 0.083978
+vt 0.734079 0.083601
+vt 0.734512 0.087833
+vt 0.734830 0.085716
+vt 0.735875 0.087896
+vt 0.735902 0.091769
+vt 0.695547 0.089574
+vt 0.694912 0.089588
+vt 0.700405 0.011458
+vt 0.718913 0.028350
+vt 0.717462 0.025366
+vt 0.302265 0.825252
+vt 0.301908 0.825063
+vt 0.719372 0.018214
+vt 0.720443 0.019757
+vt 0.025828 0.797128
+vt 0.481435 0.813642
+vt 0.659948 0.857944
+vt 0.660712 0.858189
+vt 0.552085 0.784808
+vt 0.553105 0.784861
+vt 0.551164 0.794006
+vt 0.550342 0.793806
+vt 0.549990 0.792705
+vt 0.553460 0.791808
+vt 0.183027 0.799082
+vt 0.550214 0.791257
+vt 0.149381 0.671560
+vt 0.150278 0.671721
+vt 0.149441 0.673781
+vt 0.148565 0.673640
+vt 0.148529 0.676035
+vt 0.147684 0.675882
+vt 0.653619 0.860020
+vt 0.652635 0.859707
+vt 0.652871 0.858632
+vt 0.653807 0.858694
+vt 0.482370 0.816059
+vt 0.481270 0.815900
+vt 0.013685 0.804252
+vt 0.012778 0.804465
+vt 0.013083 0.803618
+vt 0.013730 0.803556
+vt 0.480369 0.818404
+vt 0.480146 0.817408
+vt 0.480461 0.816516
+vt 0.011853 0.804608
+vt 0.012224 0.803824
+vt 0.682095 0.856503
+vt 0.682048 0.857439
+vt 0.681237 0.857512
+vt 0.681181 0.856317
+vt 0.480300 0.821880
+vt 0.772080 0.866844
+vt 0.549955 0.765428
+vt 0.551147 0.766072
+vt 0.549985 0.766319
+vt 0.853116 0.997214
+vt 0.853428 0.996545
+vt 0.854038 0.996986
+vt 0.854014 0.997561
+vt 0.205943 0.815333
+vt 0.527560 0.854732
+vt 0.526991 0.854358
+vt 0.340580 0.840201
+vt 0.341364 0.840575
+vt 0.526170 0.854732
+vt 0.339872 0.840575
+vt 0.131782 0.709934
+vt 0.130483 0.709287
+vt 0.129027 0.709956
+vt 0.700182 0.002861
+vt 0.700182 0.003921
+vt 0.126933 0.712059
+vt 0.127447 0.710700
+vt 0.104125 0.799023
+vt 0.104336 0.798542
+vt 0.549599 0.812875
+vt 0.228723 0.801665
+vt 0.154392 0.658959
+vt 0.155439 0.659191
+vt 0.344511 0.605369
+vt 0.345235 0.604590
+vt 0.345127 0.605417
+vt 0.344635 0.606026
+vt 0.106191 0.805713
+vt 0.105688 0.803942
+vt 0.548526 0.820943
+vt 0.156376 0.643971
+vt 0.293478 0.786318
+vt 0.292312 0.786218
+vt 0.291222 0.789030
+vt 0.315812 0.814875
+vt 0.316684 0.814250
+vt 0.317046 0.815781
+vt 0.316621 0.816798
+vt 0.423928 0.850069
+vt 0.422856 0.850448
+vt 0.184720 0.786213
+vt 0.184367 0.787339
+vt 0.182974 0.783753
+vt 0.183930 0.783514
+vt 0.237537 0.791566
+vt 0.239367 0.792538
+vt 0.237096 0.793372
+vt 0.235518 0.792171
+vt 0.155675 0.629910
+vt 0.156314 0.629567
+vt 0.154723 0.632444
+vt 0.413803 0.766265
+vt 0.413521 0.762724
+vt 0.414929 0.762660
+vt 0.415205 0.766202
+vt 0.236416 0.787839
+vt 0.238139 0.791381
+vt 0.235731 0.788029
+vt 0.303985 0.805867
+vt 0.315772 0.812722
+vt 0.314908 0.812641
+vt 0.314060 0.807711
+vt 0.313157 0.808112
+vt 0.320393 0.562960
+vt 0.317644 0.593910
+vt 0.317281 0.595905
+vt 0.319405 0.584154
+vt 0.316145 0.602414
+vt 0.315814 0.604657
+vt 0.313868 0.614200
+vt 0.321087 0.576136
+vt 0.320849 0.573501
+vt 0.320976 0.578765
+vt 0.615622 0.120648
+vt 0.608065 0.114634
+vt 0.802964 0.698846
+vt 0.792647 0.695092
+vt 0.682147 0.051007
+vt 0.679239 0.049272
+vt 0.310452 0.776759
+vt 0.308826 0.793469
+vt 0.196341 0.478003
+vt 0.186228 0.483150
+vt 0.224793 0.472063
+vt 0.245723 0.461704
+vt 0.255288 0.460002
+vt 0.338737 0.728388
+vt 0.349675 0.729676
+vt 0.328421 0.724155
+vt 0.661962 0.129563
+vt 0.663264 0.134665
+vt 0.653352 0.139503
+vt 0.649334 0.134455
+vt 0.718742 0.110450
+vt 0.732223 0.101208
+vt 0.735173 0.097685
+vt 0.729392 0.080548
+vt 0.728475 0.081465
+vt 0.726920 0.085452
+vt 0.725632 0.086873
+vt 0.725227 0.089272
+vt 0.735261 0.088450
+vt 0.724452 0.098797
+vt 0.692896 0.094104
+vt 0.690204 0.107851
+vt 0.063209 0.630855
+vt 0.062307 0.632069
+vt 0.063329 0.627065
+vt 0.063909 0.628217
+vt 0.062824 0.635578
+vt 0.058741 0.646946
+vt 0.054803 0.666110
+vt 0.059432 0.654174
+vt 0.058813 0.657906
+vt 0.719950 0.028358
+vt 0.720503 0.026632
+vt 0.345676 0.605916
+vt 0.345443 0.606427
+vt 0.345363 0.611333
+vt 0.345747 0.608460
+vt 0.344766 0.612716
+vt 0.700182 0.005160
+vt 0.718353 0.020862
+vt 0.720592 0.023519
+vt 0.480410 0.811949
+vt 0.480728 0.811043
+vt 0.667871 0.856536
+vt 0.667832 0.857643
+vt 0.666885 0.857701
+vt 0.666818 0.856317
+vt 0.480434 0.810401
+vt 0.480635 0.812934
+vt 0.552939 0.781612
+vt 0.551924 0.781648
+vt 0.552163 0.779915
+vt 0.552857 0.780014
+vt 0.027966 0.792520
+vt 0.550580 0.782476
+vt 0.551949 0.783273
+vt 0.550627 0.783693
+vt 0.028987 0.791642
+vt 0.029756 0.792064
+vt 0.480329 0.805080
+vt 0.550694 0.784722
+vt 0.549882 0.784674
+vt 0.549550 0.784019
+vt 0.553016 0.783135
+vt 0.183750 0.797982
+vt 0.184639 0.797614
+vt 0.147585 0.678372
+vt 0.146783 0.678170
+vt 0.146652 0.680680
+vt 0.145710 0.683013
+vt 0.145011 0.682661
+vt 0.145907 0.680387
+vt 0.144736 0.685421
+vt 0.144052 0.685120
+vt 0.550263 0.775146
+vt 0.551337 0.774464
+vt 0.551590 0.775066
+vt 0.550243 0.775830
+vt 0.559205 0.855769
+vt 0.559613 0.854489
+vt 0.558672 0.856811
+vt 0.012645 0.803234
+vt 0.681395 0.858197
+vt 0.682017 0.858381
+vt 0.551587 0.768146
+vt 0.551254 0.767087
+vt 0.552226 0.767090
+vt 0.552274 0.768221
+vt 0.479947 0.822612
+vt 0.549301 0.765764
+vt 0.549079 0.766492
+vt 0.552161 0.765995
+vt 0.132116 0.707579
+vt 0.133747 0.707672
+vt 0.133640 0.708036
+vt 0.132074 0.708623
+vt 0.204727 0.818196
+vt 0.204270 0.816037
+vt 0.206478 0.819265
+vt 0.205812 0.819639
+vt 0.135005 0.707726
+vt 0.133967 0.706972
+vt 0.135346 0.707246
+vt 0.135830 0.707335
+vt 0.135518 0.707705
+vt 0.432460 0.850509
+vt 0.431727 0.850135
+vt 0.431158 0.853737
+vt 0.431025 0.851578
+vt 0.127836 0.709780
+vt 0.156648 0.653297
+vt 0.157766 0.653551
+vt 0.156592 0.656396
+vt 0.155510 0.656153
+vt 0.157758 0.650513
+vt 0.158911 0.650778
+vt 0.150393 0.660681
+vt 0.149455 0.663299
+vt 0.148489 0.665998
+vt 0.147559 0.668607
+vt 0.151347 0.658016
+vt 0.104714 0.801789
+vt 0.155395 0.646709
+vt 0.315678 0.816497
+vt 0.314845 0.815189
+vt 0.295486 0.790070
+vt 0.295181 0.791378
+vt 0.294647 0.787503
+vt 0.182244 0.779284
+vt 0.181313 0.779481
+vt 0.183295 0.786616
+vt 0.182023 0.784009
+vt 0.152813 0.638693
+vt 0.412719 0.763743
+vt 0.412620 0.766351
+vt 0.294584 0.786364
+vt 0.295463 0.787522
+vt 0.295277 0.788277
+vt 0.293705 0.785212
+vt 0.320595 0.565741
+vt 0.320261 0.583562
+vt 0.320243 0.581267
+vt 0.316704 0.599206
+vt 0.316432 0.600767
+vt 0.201048 0.804549
+vt 0.206127 0.801317
+vt 0.205048 0.802279
+vt 0.202610 0.804204
+vt 0.262923 0.824803
+vt 0.263176 0.823725
+vt 0.263986 0.822611
+vt 0.263308 0.825232
+vt 0.320352 0.571050
+vt 0.320614 0.568452
+vt 0.595614 0.133149
+vt 0.584935 0.127565
+vt 0.782331 0.698846
+vt 0.627594 0.131835
+vt 0.641286 0.122818
+vt 0.654336 0.115765
+vt 0.667371 0.110552
+vt 0.678055 0.105935
+vt 0.687146 0.051805
+vt 0.686787 0.069843
+vt 0.685649 0.086604
+vt 0.682489 0.034543
+vt 0.680663 0.033736
+vt 0.310341 0.797841
+vt 0.308799 0.798733
+vt 0.310447 0.800514
+vt 0.308861 0.801146
+vt 0.327800 0.729676
+vt 0.644113 0.146974
+vt 0.638814 0.142506
+vt 0.671148 0.124655
+vt 0.686504 0.106033
+vt 0.728744 0.101103
+vt 0.727951 0.084651
+vt 0.729884 0.080400
+vt 0.731640 0.084199
+vt 0.733223 0.088410
+vt 0.735271 0.092578
+vt 0.726114 0.092988
+vt 0.727408 0.095537
+vt 0.693865 0.089569
+vt 0.695591 0.088421
+vt 0.694179 0.088915
+vt 0.061967 0.641192
+vt 0.062788 0.637010
+vt 0.060257 0.649951
+vt 0.059762 0.653046
+vt 0.058101 0.661999
+vt 0.057591 0.664615
+vt 0.057146 0.666917
+vt 0.719040 0.027456
+vt 0.717996 0.025106
+vt 0.302247 0.823031
+vt 0.301605 0.825000
+vt 0.719361 0.018799
+vt 0.720110 0.020259
+vt 0.667043 0.858514
+vt 0.667783 0.858751
+vt 0.551759 0.778392
+vt 0.552772 0.778357
+vt 0.653177 0.857566
+vt 0.653845 0.857894
+vt 0.028133 0.791500
+vt 0.028654 0.790845
+vt 0.029419 0.790641
+vt 0.143845 0.687627
+vt 0.143168 0.687393
+vt 0.146729 0.670958
+vt 0.145945 0.673185
+vt 0.145150 0.675420
+vt 0.674910 0.856529
+vt 0.674930 0.857629
+vt 0.674011 0.857696
+vt 0.673909 0.856317
+vt 0.480161 0.815906
+vt 0.013657 0.802198
+vt 0.014351 0.802561
+vt 0.479736 0.817046
+vt 0.552325 0.769513
+vt 0.551310 0.769502
+vt 0.549962 0.770286
+vt 0.551334 0.771229
+vt 0.550011 0.771648
+vt 0.550059 0.767057
+vt 0.549373 0.766971
+vt 0.853697 0.998008
+vt 0.852969 0.997934
+vt 0.131917 0.707044
+vt 0.204971 0.819265
+vt 0.902610 0.959808
+vt 0.902778 0.959142
+vt 0.903347 0.959069
+vt 0.903412 0.960051
+vt 0.896525 0.959375
+vt 0.896521 0.960082
+vt 0.895788 0.960114
+vt 0.895518 0.959069
+vt 0.340885 0.839720
+vt 0.341867 0.840201
+vt 0.130964 0.708066
+vt 0.329510 0.843568
+vt 0.328198 0.843751
+vt 0.329138 0.841644
+vt 0.329901 0.841644
+vt 0.698414 0.006024
+vt 0.699447 0.005236
+vt 0.699447 0.006200
+vt 0.698521 0.007137
+vt 0.348710 0.841744
+vt 0.348834 0.843852
+vt 0.347700 0.843371
+vt 0.347868 0.841744
+vt 0.125737 0.710820
+vt 0.126553 0.709479
+vt 0.344795 0.611313
+vt 0.344198 0.610786
+vt 0.344419 0.609950
+vt 0.152363 0.655178
+vt 0.344929 0.608135
+vt 0.344286 0.607797
+vt 0.151659 0.642466
+vt 0.293268 0.783367
+vt 0.292462 0.783417
+vt 0.291428 0.786232
+vt 0.180937 0.776005
+vt 0.180040 0.776223
+vt 0.233843 0.788566
+vt 0.231099 0.795269
+vt 0.231067 0.793494
+vt 0.150185 0.627748
+vt 0.147379 0.627961
+vt 0.149786 0.632867
+vt 0.414139 0.770581
+vt 0.415541 0.770510
+vt 0.234796 0.783530
+vt 0.234131 0.783743
+vt 0.314414 0.813397
+vt 0.313297 0.811437
+vt 0.312247 0.808486
+vt 0.312355 0.806204
+vt 0.313050 0.805039
+vt 0.316981 0.597621
+vt 0.319471 0.588503
+vt 0.320046 0.586084
+vt 0.315412 0.608008
+vt 0.828149 0.995203
+vt 0.828985 0.994868
+vt 0.828985 0.996376
+vt 0.828219 0.996789
+vt 0.322892 0.577598
+vt 0.322814 0.575672
+vt 0.322744 0.573588
+vt 0.123651 0.813714
+vt 0.125141 0.816216
+vt 0.123942 0.815917
+vt 0.122883 0.814103
+vt 0.612636 0.142940
+vt 0.803969 0.674738
+vt 0.792313 0.671006
+vt 0.684052 0.100671
+vt 0.686409 0.033908
+vt 0.683210 0.024494
+vt 0.682337 0.020962
+vt 0.307633 0.789533
+vt 0.816256 0.657738
+vt 0.814382 0.684851
+vt 0.805863 0.652680
+vt 0.216246 0.467326
+vt 0.201489 0.472118
+vt 0.229918 0.460134
+vt 0.249811 0.451440
+vt 0.255602 0.451025
+vt 0.873449 0.470262
+vt 0.873449 0.461378
+vt 0.884387 0.461285
+vt 0.885130 0.470262
+vt 0.635408 0.155576
+vt 0.628426 0.152046
+vt 0.732157 0.097948
+vt 0.734392 0.096332
+vt 0.051939 0.791395
+vt 0.051908 0.790641
+vt 0.052496 0.791247
+vt 0.052385 0.792258
+vt 0.728600 0.084305
+vt 0.727833 0.088350
+vt 0.726722 0.088669
+vt 0.725905 0.091259
+vt 0.690830 0.089144
+vt 0.063698 0.631752
+vt 0.061126 0.645498
+vt 0.061790 0.642658
+vt 0.060774 0.647863
+vt 0.058637 0.659256
+vt 0.662681 0.830198
+vt 0.662288 0.833929
+vt 0.662139 0.831527
+vt 0.662493 0.828848
+vt 0.053063 0.683482
+vt 0.051499 0.688944
+vt 0.053742 0.680200
+vt 0.056242 0.671607
+vt 0.056713 0.669161
+vt 0.125624 0.704521
+vt 0.126344 0.706892
+vt 0.700073 0.009087
+vt 0.699549 0.009829
+vt 0.699472 0.008427
+vt 0.719834 0.027659
+vt 0.720275 0.026201
+vt 0.345227 0.610351
+vt 0.345522 0.608397
+vt 0.718648 0.021083
+vt 0.045071 0.793754
+vt 0.045557 0.790641
+vt 0.045981 0.791072
+vt 0.045472 0.793797
+vt 0.584526 0.855262
+vt 0.585248 0.855668
+vt 0.584619 0.856654
+vt 0.583951 0.856684
+vt 0.480008 0.811543
+vt 0.550374 0.778412
+vt 0.549561 0.778317
+vt 0.549221 0.777541
+vt 0.550295 0.777210
+vt 0.551618 0.776790
+vt 0.552685 0.776653
+vt 0.143147 0.689354
+vt 0.142532 0.690877
+vt 0.141907 0.690603
+vt 0.142494 0.689109
+vt 0.141886 0.692474
+vt 0.141279 0.692206
+vt 0.549798 0.783000
+vt 0.549197 0.775993
+vt 0.549465 0.776410
+vt 0.144380 0.677562
+vt 0.141998 0.684220
+vt 0.142915 0.681609
+vt 0.143672 0.679507
+vt 0.141134 0.686693
+vt 0.552605 0.775093
+vt 0.551852 0.773786
+vt 0.552543 0.773871
+vt 0.674162 0.858506
+vt 0.674881 0.858737
+vt 0.551472 0.772744
+vt 0.552481 0.772649
+vt 0.012878 0.802116
+vt 0.549186 0.770876
+vt 0.548940 0.771994
+vt 0.552401 0.771093
+vt 0.681721 0.858734
+vt 0.681001 0.858491
+vt 0.136604 0.704128
+vt 0.137103 0.704267
+vt 0.136639 0.705398
+vt 0.136152 0.705265
+vt 0.136209 0.706493
+vt 0.135730 0.706365
+vt 0.131488 0.707262
+vt 0.204525 0.819639
+vt 0.204097 0.818196
+vt 0.132408 0.705438
+vt 0.134297 0.705998
+vt 0.127146 0.708739
+vt 0.154405 0.649475
+vt 0.153397 0.652291
+vt 0.147303 0.656717
+vt 0.146476 0.659421
+vt 0.145664 0.662078
+vt 0.144826 0.664816
+vt 0.144006 0.667498
+vt 0.148183 0.653838
+vt 0.150810 0.645245
+vt 0.180388 0.779704
+vt 0.224970 0.797087
+vt 0.226435 0.794828
+vt 0.412956 0.770655
+vt 0.311046 0.805846
+vt 0.322321 0.567248
+vt 0.322227 0.565276
+vt 0.322167 0.563080
+vt 0.320742 0.561796
+vt 0.322202 0.562019
+vt 0.318388 0.595457
+vt 0.318554 0.593527
+vt 0.318560 0.591147
+vt 0.321999 0.585548
+vt 0.322278 0.583546
+vt 0.121914 0.812587
+vt 0.122410 0.811419
+vt 0.201997 0.805591
+vt 0.200474 0.806057
+vt 0.263082 0.826727
+vt 0.262602 0.827242
+vt 0.315971 0.606314
+vt 0.316732 0.604122
+vt 0.314733 0.610628
+vt 0.315421 0.609860
+vt 0.315095 0.610927
+vt 0.258070 0.808734
+vt 0.258736 0.807735
+vt 0.259663 0.810186
+vt 0.258801 0.810467
+vt 0.260866 0.812784
+vt 0.259627 0.812511
+vt 0.462363 0.850528
+vt 0.462749 0.852445
+vt 0.461644 0.852471
+vt 0.461164 0.850784
+vt 0.597782 0.153109
+vt 0.573783 0.147122
+vt 0.562813 0.142534
+vt 0.779990 0.676724
+vt 0.691695 0.052010
+vt 0.691366 0.070391
+vt 0.685445 0.020117
+vt 0.305151 0.796098
+vt 0.305945 0.797739
+vt 0.307160 0.798943
+vt 0.307747 0.799848
+vt 0.307596 0.801408
+vt 0.820090 0.672088
+vt 0.821004 0.660597
+vt 0.236824 0.452685
+vt 0.862512 0.461285
+vt 0.861769 0.470262
+vt 0.629887 0.164679
+vt 0.619696 0.163219
+vt 0.729514 0.097619
+vt 0.728491 0.088121
+vt 0.727363 0.091560
+vt 0.732238 0.088221
+vt 0.733750 0.092492
+vt 0.734711 0.093023
+vt 0.728058 0.093986
+vt 0.728794 0.096041
+vt 0.594172 0.855948
+vt 0.592845 0.856681
+vt 0.592357 0.855634
+vt 0.592851 0.854684
+vt 0.692915 0.089605
+vt 0.695600 0.084897
+vt 0.696330 0.084887
+vt 0.063106 0.635994
+vt 0.659724 0.848836
+vt 0.660489 0.846912
+vt 0.659645 0.851094
+vt 0.659078 0.852110
+vt 0.661714 0.838153
+vt 0.661325 0.840240
+vt 0.661004 0.840135
+vt 0.661396 0.837159
+vt 0.662025 0.835058
+vt 0.661779 0.834258
+vt 0.700502 0.054536
+vt 0.701045 0.054640
+vt 0.700684 0.057383
+vt 0.699857 0.057427
+vt 0.700487 0.051985
+vt 0.701296 0.052023
+vt 0.053252 0.686693
+vt 0.053725 0.684480
+vt 0.055280 0.676598
+vt 0.055756 0.674128
+vt 0.700401 0.049864
+vt 0.701315 0.049722
+vt 0.048748 0.705180
+vt 0.051232 0.696194
+vt 0.699695 0.012516
+vt 0.699636 0.011256
+vt 0.719109 0.026853
+vt 0.718398 0.024755
+vt 0.044380 0.798194
+vt 0.043936 0.798474
+vt 0.044364 0.797014
+vt 0.044774 0.796792
+vt 0.583719 0.855136
+vt 0.584276 0.854360
+vt 0.585016 0.854120
+vt 0.141217 0.694132
+vt 0.140621 0.693892
+vt 0.583492 0.856268
+vt 0.140533 0.688380
+vt 0.143244 0.669989
+vt 0.140836 0.671842
+vt 0.141838 0.674586
+vt 0.550092 0.772863
+vt 0.549282 0.772780
+vt 0.013427 0.801331
+vt 0.014146 0.801058
+vt 0.137748 0.701244
+vt 0.138282 0.701396
+vt 0.137639 0.702975
+vt 0.137124 0.702829
+vt 0.130102 0.706370
+vt 0.130297 0.705710
+vt 0.205569 0.820120
+vt 0.130565 0.704732
+vt 0.330731 0.843803
+vt 0.331126 0.841644
+vt 0.329840 0.840575
+vt 0.330430 0.840201
+vt 0.696788 0.006683
+vt 0.696788 0.007708
+vt 0.699447 0.007240
+vt 0.698895 0.007921
+vt 0.348681 0.840675
+vt 0.348092 0.840301
+vt 0.149078 0.650908
+vt 0.146942 0.640962
+vt 0.147266 0.637797
+vt 0.293774 0.780727
+vt 0.292613 0.780608
+vt 0.291632 0.783445
+vt 0.179820 0.773207
+vt 0.178962 0.773473
+vt 0.179150 0.776468
+vt 0.232231 0.783744
+vt 0.230006 0.789671
+vt 0.147519 0.627150
+vt 0.145358 0.627480
+vt 0.223874 0.795468
+vt 0.222304 0.797686
+vt 0.146808 0.633910
+vt 0.144660 0.631771
+vt 0.413218 0.773892
+vt 0.414400 0.773810
+vt 0.415802 0.773737
+vt 0.233574 0.780304
+vt 0.232922 0.780524
+vt 0.261193 0.813989
+vt 0.260028 0.813605
+vt 0.317931 0.597168
+vt 0.043518 0.804486
+vt 0.044696 0.807130
+vt 0.043626 0.807010
+vt 0.042804 0.804915
+vt 0.321700 0.587290
+vt 0.320638 0.582394
+vt 0.322355 0.582515
+vt 0.317203 0.602328
+vt 0.317327 0.600616
+vt 0.202479 0.805367
+vt 0.203124 0.804069
+vt 0.316449 0.607235
+vt 0.316292 0.608405
+vt 0.314507 0.612124
+vt 0.314987 0.611834
+vt 0.316177 0.609524
+vt 0.201983 0.806830
+vt 0.200487 0.807367
+vt 0.199915 0.806470
+vt 0.199653 0.807736
+vt 0.321144 0.572502
+vt 0.322740 0.572667
+vt 0.462063 0.854024
+vt 0.462858 0.853593
+vt 0.324040 0.576676
+vt 0.324393 0.575128
+vt 0.323934 0.573699
+vt 0.294247 0.764627
+vt 0.294509 0.763816
+vt 0.296197 0.764834
+vt 0.296179 0.765730
+vt 0.122093 0.814340
+vt 0.123300 0.816728
+vt 0.791312 0.651588
+vt 0.690140 0.033192
+vt 0.685123 0.014397
+vt 0.306191 0.799289
+vt 0.822438 0.641580
+vt 0.809456 0.636693
+vt 0.183578 0.472058
+vt 0.191330 0.472367
+vt 0.829740 0.707983
+vt 0.822301 0.718428
+vt 0.820032 0.704756
+vt 0.826646 0.699944
+vt 0.818895 0.689999
+vt 0.823628 0.688478
+vt 0.224165 0.454411
+vt 0.219473 0.460263
+vt 0.237218 0.442123
+vt 0.251506 0.432710
+vt 0.885732 0.489006
+vt 0.896010 0.469847
+vt 0.898817 0.488577
+vt 0.873449 0.489006
+vt 0.113518 0.814962
+vt 0.113718 0.816578
+vt 0.112542 0.816335
+vt 0.112190 0.815160
+vt 0.051983 0.795152
+vt 0.052702 0.795111
+vt 0.052682 0.792758
+vt 0.052828 0.791849
+vt 0.052651 0.797023
+vt 0.052179 0.798968
+vt 0.729470 0.091289
+vt 0.728628 0.091537
+vt 0.267840 0.813461
+vt 0.268867 0.813629
+vt 0.268414 0.815773
+vt 0.267790 0.817483
+vt 0.732879 0.091637
+vt 0.111196 0.811207
+vt 0.110135 0.811653
+vt 0.196949 0.818042
+vt 0.195881 0.820147
+vt 0.195233 0.818761
+vt 0.196085 0.817424
+vt 0.141003 0.631082
+vt 0.141057 0.627065
+vt 0.142645 0.628664
+vt 0.142234 0.631160
+vt 0.696638 0.080601
+vt 0.697269 0.080645
+vt 0.661108 0.842606
+vt 0.660613 0.843095
+vt 0.660608 0.845445
+vt 0.660196 0.846006
+vt 0.700330 0.060062
+vt 0.699454 0.060209
+vt 0.699970 0.062793
+vt 0.699175 0.062807
+vt 0.053092 0.687767
+vt 0.052766 0.689217
+vt 0.054305 0.681662
+vt 0.054801 0.679085
+vt 0.700546 0.044924
+vt 0.701104 0.045032
+vt 0.701214 0.047478
+vt 0.700362 0.047531
+vt 0.699773 0.014950
+vt 0.699737 0.013713
+vt 0.699998 0.006500
+vt 0.698919 0.008833
+vt 0.698990 0.009975
+vt 0.719726 0.026514
+vt 0.720042 0.025350
+vt 0.096844 0.800827
+vt 0.096488 0.798542
+vt 0.096932 0.798823
+vt 0.097336 0.800877
+vt 0.046327 0.791923
+vt 0.045759 0.793914
+vt 0.140528 0.695836
+vt 0.139942 0.695632
+vt 0.139455 0.691407
+vt 0.140029 0.689784
+vt 0.138831 0.693179
+vt 0.141209 0.676646
+vt 0.138417 0.685780
+vt 0.139218 0.683158
+vt 0.140053 0.680428
+vt 0.140665 0.678425
+vt 0.139898 0.697395
+vt 0.139322 0.697222
+vt 0.139404 0.698618
+vt 0.138839 0.698457
+vt 0.138910 0.699839
+vt 0.138360 0.699683
+vt 0.135575 0.702402
+vt 0.135103 0.703715
+vt 0.134690 0.704871
+vt 0.130000 0.706689
+vt 0.132761 0.704285
+vt 0.149952 0.648052
+vt 0.143258 0.655419
+vt 0.144002 0.652498
+vt 0.142559 0.658162
+vt 0.141872 0.660857
+vt 0.141164 0.663634
+vt 0.140476 0.666317
+vt 0.144760 0.649526
+vt 0.146224 0.643781
+vt 0.225985 0.790820
+vt 0.223545 0.791491
+vt 0.143913 0.631147
+vt 0.535030 0.855886
+vt 0.535172 0.857345
+vt 0.533863 0.857591
+vt 0.533852 0.855804
+vt 0.260459 0.814771
+vt 0.261298 0.814955
+vt 0.323376 0.566281
+vt 0.323680 0.564699
+vt 0.323266 0.563182
+vt 0.323661 0.562256
+vt 0.319895 0.596166
+vt 0.320256 0.594924
+vt 0.320464 0.593516
+vt 0.042071 0.803107
+vt 0.042626 0.802105
+vt 0.317207 0.598892
+vt 0.160166 0.813091
+vt 0.159775 0.811123
+vt 0.160846 0.810998
+vt 0.161167 0.813227
+vt 0.323121 0.586388
+vt 0.323808 0.584987
+vt 0.323549 0.583607
+vt 0.120772 0.812309
+vt 0.202408 0.806479
+vt 0.099037 0.812279
+vt 0.098175 0.812429
+vt 0.098174 0.811131
+vt 0.098654 0.811099
+vt 0.541540 0.856557
+vt 0.540943 0.855984
+vt 0.541864 0.855565
+vt 0.542625 0.856028
+vt 0.544056 0.854426
+vt 0.543998 0.855410
+vt 0.231366 0.815802
+vt 0.231570 0.816558
+vt 0.230747 0.816372
+vt 0.230690 0.815735
+vt 0.517707 0.855267
+vt 0.518775 0.854358
+vt 0.518343 0.855034
+vt 0.518095 0.855613
+vt 0.257930 0.810720
+vt 0.256824 0.808289
+vt 0.293960 0.775103
+vt 0.294251 0.774155
+vt 0.295666 0.775249
+vt 0.295687 0.776268
+vt 0.258905 0.813459
+vt 0.297749 0.765971
+vt 0.297329 0.766543
+vt 0.324337 0.572875
+vt 0.600606 0.166059
+vt 0.584404 0.159317
+vt 0.568509 0.155703
+vt 0.559415 0.158149
+vt 0.546711 0.158660
+vt 0.774089 0.660622
+vt 0.693033 0.069728
+vt 0.693251 0.051964
+vt 0.692089 0.084644
+vt 0.688258 0.018351
+vt 0.687631 0.012296
+vt 0.685402 0.012756
+vt 0.687700 0.010854
+vt 0.306559 0.800910
+vt 0.824492 0.653956
+vt 0.822835 0.676244
+vt 0.820100 0.679839
+vt 0.825037 0.665301
+vt 0.224606 0.447491
+vt 0.861167 0.489006
+vt 0.630201 0.173656
+vt 0.623528 0.173428
+vt 0.196703 0.815333
+vt 0.197879 0.815398
+vt 0.052082 0.805818
+vt 0.051630 0.802650
+vt 0.052363 0.804374
+vt 0.052632 0.805572
+vt 0.268600 0.819083
+vt 0.269119 0.810045
+vt 0.269410 0.811514
+vt 0.733600 0.095388
+vt 0.734079 0.096530
+vt 0.733077 0.093947
+vt 0.729546 0.094039
+vt 0.729796 0.095686
+vt 0.541719 0.850795
+vt 0.541225 0.850760
+vt 0.540260 0.850299
+vt 0.540736 0.845799
+vt 0.593938 0.854559
+vt 0.593346 0.854120
+vt 0.073849 0.805406
+vt 0.072261 0.807006
+vt 0.072228 0.803092
+vt 0.073441 0.803052
+vt 0.141477 0.635555
+vt 0.140365 0.635379
+vt 0.697375 0.077304
+vt 0.697915 0.077372
+vt 0.697644 0.074602
+vt 0.698387 0.074541
+vt 0.699091 0.065624
+vt 0.699587 0.065694
+vt 0.699195 0.068670
+vt 0.698426 0.068726
+vt 0.290868 0.815964
+vt 0.289662 0.816213
+vt 0.290276 0.813662
+vt 0.291249 0.813989
+vt 0.290729 0.810772
+vt 0.291714 0.811733
+vt 0.699130 0.050285
+vt 0.699199 0.051774
+vt 0.700384 0.029023
+vt 0.700787 0.028872
+vt 0.700981 0.029946
+vt 0.700459 0.030695
+vt 0.700935 0.032159
+vt 0.700545 0.032596
+vt 0.701126 0.033157
+vt 0.700652 0.034977
+vt 0.699913 0.037599
+vt 0.700768 0.037553
+vt 0.700880 0.040041
+vt 0.699965 0.040182
+vt 0.700991 0.042511
+vt 0.700136 0.042526
+vt 0.699052 0.048559
+vt 0.052259 0.691849
+vt 0.699819 0.016343
+vt 0.700481 0.020445
+vt 0.699888 0.018009
+vt 0.698814 0.011365
+vt 0.698835 0.012617
+vt 0.719234 0.025781
+vt 0.098544 0.806597
+vt 0.098038 0.807200
+vt 0.097517 0.804499
+vt 0.098040 0.804198
+vt 0.719394 0.020346
+vt 0.719365 0.019079
+vt 0.719962 0.020481
+vt 0.719825 0.021271
+vt 0.720346 0.023476
+vt 0.720121 0.023359
+vt 0.138182 0.695028
+vt 0.137904 0.687459
+vt 0.139849 0.668730
+vt 0.139251 0.671007
+vt 0.138663 0.673312
+vt 0.136704 0.699222
+vt 0.136145 0.700799
+vt 0.332108 0.843322
+vt 0.332153 0.841644
+vt 0.216284 0.815422
+vt 0.216182 0.816607
+vt 0.215166 0.816531
+vt 0.215224 0.815500
+vt 0.129042 0.705670
+vt 0.129025 0.705092
+vt 0.130869 0.703578
+vt 0.129198 0.704150
+vt 0.331231 0.840575
+vt 0.349117 0.840301
+vt 0.348402 0.839820
+vt 0.695345 0.007414
+vt 0.695719 0.008060
+vt 0.698231 0.008757
+vt 0.696788 0.008935
+vt 0.698712 0.009084
+vt 0.145498 0.646628
+vt 0.142790 0.642651
+vt 0.143409 0.639802
+vt 0.144030 0.636377
+vt 0.293965 0.778014
+vt 0.292765 0.777773
+vt 0.568517 0.853992
+vt 0.568367 0.856800
+vt 0.567536 0.856829
+vt 0.567742 0.854035
+vt 0.178708 0.770421
+vt 0.177888 0.770730
+vt 0.178112 0.773767
+vt 0.231835 0.780617
+vt 0.228692 0.785576
+vt 0.551936 0.855913
+vt 0.552638 0.857043
+vt 0.550476 0.857351
+vt 0.549808 0.856114
+vt 0.222731 0.795688
+vt 0.221603 0.797675
+vt 0.222308 0.791815
+vt 0.413441 0.776593
+vt 0.414624 0.776495
+vt 0.416026 0.776422
+vt 0.232552 0.777619
+vt 0.231908 0.777837
+vt 0.297079 0.776415
+vt 0.296724 0.777082
+vt 0.270646 0.822768
+vt 0.270876 0.824733
+vt 0.270051 0.824260
+vt 0.270186 0.822876
+vt 0.318848 0.592525
+vt 0.320478 0.592744
+vt 0.321694 0.822279
+vt 0.322598 0.824002
+vt 0.322139 0.823863
+vt 0.321253 0.822826
+vt 0.292590 0.755225
+vt 0.292875 0.754258
+vt 0.294843 0.755340
+vt 0.294905 0.756346
+vt 0.042061 0.805190
+vt 0.043065 0.807977
+vt 0.160576 0.815036
+vt 0.161293 0.814648
+vt 0.324089 0.582712
+vt 0.354791 0.841771
+vt 0.355787 0.841650
+vt 0.355992 0.843367
+vt 0.354851 0.843820
+vt 0.318759 0.603120
+vt 0.319021 0.601915
+vt 0.319216 0.600551
+vt 0.099168 0.813269
+vt 0.098179 0.813540
+vt 0.316312 0.606638
+vt 0.317988 0.606616
+vt 0.318075 0.607158
+vt 0.318001 0.608154
+vt 0.285972 0.824612
+vt 0.285649 0.822789
+vt 0.286634 0.822768
+vt 0.286947 0.824796
+vt 0.517688 0.856360
+vt 0.516801 0.856394
+vt 0.230916 0.818073
+vt 0.231764 0.818228
+vt 0.317848 0.609002
+vt 0.202622 0.807357
+vt 0.202540 0.808043
+vt 0.200852 0.808559
+vt 0.200152 0.808773
+vt 0.477124 0.853346
+vt 0.478249 0.853386
+vt 0.478366 0.854982
+vt 0.477120 0.855246
+vt 0.763432 0.868590
+vt 0.762553 0.866418
+vt 0.763348 0.866651
+vt 0.764222 0.868199
+vt 0.324929 0.574737
+vt 0.293482 0.762239
+vt 0.293337 0.764502
+vt 0.293044 0.762114
+vt 0.294377 0.767346
+vt 0.296123 0.767839
+vt 0.607899 0.172743
+vt 0.562140 0.158398
+vt 0.790959 0.631447
+vt 0.691401 0.033753
+vt 0.686238 0.011206
+vt 0.687909 0.009856
+vt 0.305452 0.800639
+vt 0.833688 0.457654
+vt 0.820706 0.457285
+vt 0.826808 0.444432
+vt 0.837445 0.445573
+vt 0.165446 0.463412
+vt 0.153070 0.457654
+vt 0.164354 0.454565
+vt 0.168722 0.459690
+vt 0.837170 0.707863
+vt 0.831898 0.712674
+vt 0.837063 0.704341
+vt 0.835227 0.697905
+vt 0.833371 0.689026
+vt 0.218759 0.452099
+vt 0.219353 0.456271
+vt 0.220338 0.437836
+vt 0.231351 0.425591
+vt 0.241352 0.408704
+vt 0.873449 0.527411
+vt 0.885933 0.527411
+vt 0.896866 0.528700
+vt 0.847986 0.487075
+vt 0.851180 0.470034
+vt 0.732223 0.097705
+vt 0.732338 0.096259
+vt 0.052855 0.806651
+vt 0.730982 0.093976
+vt 0.270977 0.808204
+vt 0.270426 0.807735
+vt 0.730794 0.096045
+vt 0.730131 0.097294
+vt 0.693989 0.085001
+vt 0.692790 0.088520
+vt 0.693113 0.085016
+vt 0.143470 0.631217
+vt 0.144689 0.627393
+vt 0.140850 0.638899
+vt 0.139785 0.638676
+vt 0.698804 0.071630
+vt 0.697981 0.071778
+vt 0.698439 0.058547
+vt 0.698195 0.060632
+vt 0.697938 0.062531
+vt 0.688226 0.855614
+vt 0.688092 0.854326
+vt 0.689299 0.854602
+vt 0.689286 0.855601
+vt 0.291984 0.810608
+vt 0.291127 0.809651
+vt 0.700308 0.027329
+vt 0.700867 0.027421
+vt 0.052504 0.690816
+vt 0.700091 0.034886
+vt 0.699684 0.032543
+vt 0.190975 0.802499
+vt 0.191373 0.799891
+vt 0.192313 0.800800
+vt 0.191888 0.802825
+vt 0.699013 0.047671
+vt 0.700071 0.046623
+vt 0.699962 0.019637
+vt 0.700019 0.020914
+vt 0.698911 0.013716
+vt 0.699204 0.014874
+vt 0.494401 0.855279
+vt 0.493877 0.856442
+vt 0.493516 0.855530
+vt 0.494067 0.854701
+vt 0.493219 0.854388
+vt 0.493680 0.854125
+vt 0.719528 0.023479
+vt 0.718797 0.021133
+vt 0.719017 0.021702
+vt 0.137591 0.696711
+vt 0.136423 0.692302
+vt 0.136986 0.690461
+vt 0.137490 0.688813
+vt 0.135832 0.694235
+vt 0.138103 0.675518
+vt 0.135244 0.686639
+vt 0.135689 0.684904
+vt 0.136355 0.682371
+vt 0.137055 0.679693
+vt 0.137603 0.677527
+vt 0.137142 0.697984
+vt 0.133528 0.701776
+vt 0.134024 0.700151
+vt 0.133120 0.703109
+vt 0.215334 0.818285
+vt 0.216195 0.818285
+vt 0.139630 0.657185
+vt 0.140233 0.654413
+vt 0.140874 0.651461
+vt 0.139037 0.659910
+vt 0.138427 0.662717
+vt 0.137845 0.665378
+vt 0.137341 0.667661
+vt 0.141527 0.648457
+vt 0.142164 0.645528
+vt 0.295641 0.778507
+vt 0.295561 0.780519
+vt 0.229525 0.781522
+vt 0.227899 0.782982
+vt 0.224554 0.785945
+vt 0.222403 0.787147
+vt 0.221235 0.787500
+vt 0.142953 0.635861
+vt 0.082711 0.798630
+vt 0.083448 0.802297
+vt 0.082705 0.802367
+vt 0.081474 0.798542
+vt 0.533965 0.854739
+vt 0.534883 0.854426
+vt 0.261374 0.817031
+vt 0.262209 0.816537
+vt 0.324210 0.564205
+vt 0.270267 0.826408
+vt 0.270918 0.826110
+vt 0.321272 0.595403
+vt 0.321940 0.594386
+vt 0.321664 0.593447
+vt 0.040993 0.802842
+vt 0.296787 0.756400
+vt 0.296367 0.757060
+vt 0.162130 0.815335
+vt 0.161453 0.815939
+vt 0.324412 0.584452
+vt 0.354858 0.840476
+vt 0.355641 0.839915
+vt 0.293463 0.760208
+vt 0.292607 0.759817
+vt 0.320465 0.821407
+vt 0.321000 0.820554
+vt 0.099058 0.814024
+vt 0.098236 0.814418
+vt 0.100847 0.812971
+vt 0.100844 0.812254
+vt 0.517482 0.856936
+vt 0.516123 0.857574
+vt 0.294741 0.823169
+vt 0.295621 0.823009
+vt 0.295680 0.824685
+vt 0.294667 0.825278
+vt 0.542826 0.856782
+vt 0.541366 0.857571
+vt 0.290031 0.738700
+vt 0.291853 0.739541
+vt 0.291826 0.740193
+vt 0.289585 0.739302
+vt 0.289228 0.737327
+vt 0.288864 0.737528
+vt 0.289270 0.733111
+vt 0.290971 0.733777
+vt 0.290890 0.734297
+vt 0.288662 0.733287
+vt 0.518865 0.854977
+vt 0.519041 0.855833
+vt 0.477237 0.852169
+vt 0.478114 0.851789
+vt 0.294158 0.769933
+vt 0.293661 0.772364
+vt 0.293055 0.772372
+vt 0.293194 0.769779
+vt 0.292914 0.774999
+vt 0.297694 0.768225
+vt 0.298207 0.768143
+vt 0.293338 0.767107
+vt 0.593740 0.172292
+vt 0.588551 0.167700
+vt 0.575823 0.162514
+vt 0.562783 0.159492
+vt 0.761252 0.661042
+vt 0.766652 0.673326
+vt 0.759754 0.668303
+vt 0.771951 0.646070
+vt 0.689200 0.018935
+vt 0.538776 0.830883
+vt 0.541275 0.842350
+vt 0.541632 0.847050
+vt 0.694055 0.051838
+vt 0.542311 0.849675
+vt 0.688466 0.012916
+vt 0.688466 0.011569
+vt 0.200423 0.809879
+vt 0.201330 0.809716
+vt 0.816496 0.435047
+vt 0.802209 0.450020
+vt 0.158137 0.447819
+vt 0.147410 0.445573
+vt 0.380124 0.809854
+vt 0.392315 0.817923
+vt 0.380081 0.817049
+vt 0.373251 0.811640
+vt 0.369138 0.820456
+vt 0.367394 0.815079
+vt 0.828355 0.657232
+vt 0.831106 0.664942
+vt 0.826791 0.676287
+vt 0.833207 0.678175
+vt 0.214623 0.443896
+vt 0.860966 0.527411
+vt 0.624599 0.190469
+vt 0.607352 0.180829
+vt 0.053292 0.807919
+vt 0.052702 0.808505
+vt 0.732347 0.094648
+vt 0.074649 0.802996
+vt 0.075893 0.806678
+vt 0.072875 0.799622
+vt 0.071491 0.798775
+vt 0.142585 0.635752
+vt 0.141906 0.639156
+vt 0.140470 0.640872
+vt 0.139133 0.641378
+vt 0.696740 0.072200
+vt 0.696455 0.074331
+vt 0.368186 0.832976
+vt 0.368678 0.829873
+vt 0.369708 0.830803
+vt 0.369213 0.833207
+vt 0.368803 0.835331
+vt 0.367515 0.835792
+vt 0.292212 0.814347
+vt 0.291799 0.817025
+vt 0.292935 0.811454
+vt 0.293108 0.810229
+vt 0.698262 0.049196
+vt 0.698038 0.050587
+vt 0.698372 0.051575
+vt 0.699745 0.027263
+vt 0.699527 0.029075
+vt 0.699545 0.030834
+vt 0.700650 0.025822
+vt 0.700230 0.025599
+vt 0.215635 0.808886
+vt 0.216063 0.806174
+vt 0.216924 0.807065
+vt 0.216486 0.809157
+vt 0.698603 0.038674
+vt 0.698694 0.040602
+vt 0.698770 0.042335
+vt 0.191550 0.804571
+vt 0.190403 0.804897
+vt 0.697950 0.048626
+vt 0.700749 0.024790
+vt 0.700150 0.023820
+vt 0.700076 0.022191
+vt 0.698954 0.016331
+vt 0.698974 0.018146
+vt 0.699105 0.019739
+vt 0.493076 0.852998
+vt 0.493779 0.853369
+vt 0.697667 0.011946
+vt 0.697725 0.012873
+vt 0.718598 0.024454
+vt 0.718885 0.024031
+vt 0.097989 0.801445
+vt 0.098385 0.803775
+vt 0.135296 0.695991
+vt 0.134877 0.688084
+vt 0.137666 0.670173
+vt 0.135799 0.674592
+vt 0.136331 0.672192
+vt 0.134513 0.698553
+vt 0.134896 0.697298
+vt 0.131515 0.701036
+vt 0.131939 0.699389
+vt 0.131172 0.702389
+vt 0.332038 0.840201
+vt 0.698542 0.009851
+vt 0.696788 0.009700
+vt 0.214734 0.816205
+vt 0.214815 0.815735
+vt 0.403358 0.818563
+vt 0.403945 0.818785
+vt 0.403339 0.819362
+vt 0.403104 0.819044
+vt 0.129464 0.703002
+vt 0.128739 0.703960
+vt 0.128582 0.704870
+vt 0.331237 0.839720
+vt 0.694864 0.008420
+vt 0.695345 0.009022
+vt 0.698868 0.010172
+vt 0.141069 0.645075
+vt 0.141660 0.642187
+vt 0.142245 0.639328
+vt 0.291837 0.780652
+vt 0.292045 0.777834
+vt 0.176811 0.767983
+vt 0.177593 0.767627
+vt 0.177076 0.771068
+vt 0.230763 0.778132
+vt 0.230313 0.780310
+vt 0.550163 0.854548
+vt 0.551700 0.854489
+vt 0.276031 0.802143
+vt 0.277439 0.802072
+vt 0.277359 0.804059
+vt 0.275934 0.804049
+vt 0.276313 0.798307
+vt 0.277715 0.798199
+vt 0.276649 0.794002
+vt 0.278051 0.793885
+vt 0.084293 0.807010
+vt 0.083650 0.806902
+vt 0.413664 0.779291
+vt 0.414846 0.779178
+vt 0.416249 0.779107
+vt 0.231530 0.774934
+vt 0.230894 0.775147
+vt 0.296626 0.780219
+vt 0.297061 0.778859
+vt 0.259997 0.815438
+vt 0.260444 0.817214
+vt 0.262194 0.818980
+vt 0.261275 0.818574
+vt 0.293025 0.747332
+vt 0.292701 0.746440
+vt 0.294849 0.747454
+vt 0.294481 0.747943
+vt 0.269693 0.822775
+vt 0.322148 0.592751
+vt 0.377851 0.842885
+vt 0.378790 0.842742
+vt 0.378917 0.844372
+vt 0.377839 0.844894
+vt 0.321646 0.824064
+vt 0.291658 0.752438
+vt 0.291711 0.755018
+vt 0.291193 0.752313
+vt 0.293195 0.757864
+vt 0.295198 0.758373
+vt 0.297068 0.758675
+vt 0.296808 0.759863
+vt 0.295512 0.760140
+vt 0.317559 0.599764
+vt 0.319201 0.599853
+vt 0.286308 0.826439
+vt 0.287000 0.826093
+vt 0.320057 0.602412
+vt 0.320669 0.601404
+vt 0.320399 0.600495
+vt 0.100851 0.813455
+vt 0.369742 0.841829
+vt 0.368975 0.840022
+vt 0.370333 0.840306
+vt 0.370685 0.841828
+vt 0.294945 0.821851
+vt 0.295624 0.821309
+vt 0.319257 0.607008
+vt 0.319688 0.606475
+vt 0.319068 0.608344
+vt 0.319594 0.607629
+vt 0.293242 0.740803
+vt 0.293681 0.740408
+vt 0.518701 0.856741
+vt 0.518563 0.856320
+vt 0.292241 0.734889
+vt 0.292695 0.734621
+vt 0.231801 0.819449
+vt 0.231214 0.819798
+vt 0.098723 0.814881
+vt 0.098399 0.815017
+vt 0.097725 0.815105
+vt 0.098236 0.815597
+vt 0.202885 0.809320
+vt 0.297236 0.769543
+vt 0.296059 0.769790
+vt 0.836126 0.994868
+vt 0.836910 0.996730
+vt 0.836033 0.996267
+vt 0.835241 0.994949
+vt 0.292823 0.767170
+vt 0.292869 0.764503
+vt 0.292612 0.761983
+vt 0.594198 0.177867
+vt 0.762800 0.676051
+vt 0.764373 0.682420
+vt 0.758090 0.676694
+vt 0.757868 0.670568
+vt 0.755926 0.651126
+vt 0.690413 0.023726
+vt 0.540399 0.836650
+vt 0.541215 0.840896
+vt 0.694103 0.058840
+vt 0.688466 0.010763
+vt 0.834714 0.433577
+vt 0.824371 0.425222
+vt 0.142285 0.444432
+vt 0.139560 0.433576
+vt 0.150749 0.434462
+vt 0.167931 0.442186
+vt 0.180621 0.452082
+vt 0.176432 0.462344
+vt 0.214488 0.457249
+vt 0.215831 0.460629
+vt 0.842405 0.695704
+vt 0.842384 0.702998
+vt 0.841150 0.686409
+vt 0.209907 0.448179
+vt 0.209923 0.436231
+vt 0.213046 0.430484
+vt 0.223047 0.412068
+vt 0.249139 0.392587
+vt 0.244030 0.388717
+vt 0.230394 0.384240
+vt 0.873449 0.569588
+vt 0.886004 0.569588
+vt 0.899009 0.569771
+vt 0.849248 0.528191
+vt 0.609522 0.206492
+vt 0.600034 0.191778
+vt 0.692350 0.085895
+vt 0.692534 0.081195
+vt 0.693350 0.080768
+vt 0.694426 0.080684
+vt 0.073880 0.798542
+vt 0.141482 0.641933
+vt 0.697010 0.069918
+vt 0.725454 0.866551
+vt 0.725322 0.865362
+vt 0.726659 0.865731
+vt 0.726647 0.866664
+vt 0.697077 0.068972
+vt 0.698259 0.067797
+vt 0.697082 0.855556
+vt 0.696956 0.854319
+vt 0.698244 0.854668
+vt 0.698221 0.855660
+vt 0.697334 0.058679
+vt 0.698505 0.057590
+vt 0.697564 0.059300
+vt 0.697101 0.060960
+vt 0.697193 0.062258
+vt 0.688487 0.856442
+vt 0.689306 0.856713
+vt 0.690229 0.854319
+vt 0.690130 0.855637
+vt 0.699373 0.025654
+vt 0.216134 0.810968
+vt 0.215082 0.811230
+vt 0.698551 0.037778
+vt 0.699608 0.036707
+vt 0.638582 0.858574
+vt 0.638452 0.857208
+vt 0.639598 0.857450
+vt 0.639599 0.858566
+vt 0.193451 0.800675
+vt 0.192568 0.799751
+vt 0.193609 0.799570
+vt 0.192802 0.803152
+vt 0.192805 0.798796
+vt 0.193549 0.798752
+vt 0.699453 0.020839
+vt 0.699215 0.022169
+vt 0.697739 0.013668
+vt 0.079092 0.815654
+vt 0.078223 0.815748
+vt 0.078529 0.814589
+vt 0.079245 0.814809
+vt 0.698497 0.010995
+vt 0.697578 0.011468
+vt 0.494787 0.854191
+vt 0.494614 0.853461
+vt 0.133476 0.693465
+vt 0.133972 0.691569
+vt 0.134446 0.689752
+vt 0.135286 0.676922
+vt 0.132890 0.687628
+vt 0.133238 0.686062
+vt 0.133640 0.684262
+vt 0.134177 0.681884
+vt 0.134757 0.679309
+vt 0.132358 0.697769
+vt 0.132686 0.696498
+vt 0.215512 0.819354
+vt 0.216159 0.819728
+vt 0.128994 0.702812
+vt 0.695719 0.009453
+vt 0.138114 0.659510
+vt 0.138674 0.656775
+vt 0.139244 0.653991
+vt 0.139850 0.651029
+vt 0.137537 0.662330
+vt 0.136989 0.664994
+vt 0.136517 0.667265
+vt 0.136058 0.669440
+vt 0.140467 0.648014
+vt 0.175728 0.765218
+vt 0.176469 0.764809
+vt 0.176037 0.768367
+vt 0.226874 0.779606
+vt 0.225709 0.782606
+vt 0.220414 0.784186
+vt 0.221532 0.783829
+vt 0.222968 0.783133
+vt 0.195419 0.720337
+vt 0.196985 0.720038
+vt 0.196655 0.723719
+vt 0.195607 0.723781
+vt 0.276910 0.790690
+vt 0.278312 0.790571
+vt 0.290897 0.746394
+vt 0.291216 0.745774
+vt 0.271578 0.826778
+vt 0.270884 0.827333
+vt 0.322496 0.593920
+vt 0.377979 0.841617
+vt 0.378717 0.841072
+vt 0.291604 0.750090
+vt 0.290696 0.749733
+vt 0.320226 0.822807
+vt 0.319334 0.821128
+vt 0.292172 0.757485
+vt 0.297690 0.758428
+vt 0.297368 0.760169
+vt 0.292197 0.759592
+vt 0.386314 0.842116
+vt 0.387851 0.841838
+vt 0.386982 0.843630
+vt 0.385903 0.843632
+vt 0.101974 0.813070
+vt 0.102366 0.812649
+vt 0.101971 0.812185
+vt 0.292789 0.735774
+vt 0.292425 0.736244
+vt 0.291106 0.736185
+vt 0.290957 0.735314
+vt 0.288998 0.736069
+vt 0.288976 0.734736
+vt 0.288713 0.739208
+vt 0.288399 0.737541
+vt 0.288124 0.735958
+vt 0.292034 0.741603
+vt 0.293884 0.741956
+vt 0.290051 0.741150
+vt 0.371553 0.840023
+vt 0.371734 0.841829
+vt 0.288310 0.732809
+vt 0.287837 0.733409
+vt 0.287965 0.733062
+vt 0.414553 0.851265
+vt 0.414146 0.849934
+vt 0.415003 0.849587
+vt 0.415327 0.851123
+vt 0.292439 0.772457
+vt 0.292247 0.775075
+vt 0.292628 0.769862
+vt 0.753304 0.701813
+vt 0.758699 0.702462
+vt 0.755994 0.707651
+vt 0.752698 0.705389
+vt 0.758883 0.689734
+vt 0.751731 0.689272
+vt 0.750257 0.673909
+vt 0.755599 0.659393
+vt 0.756665 0.657283
+vt 0.768920 0.635204
+vt 0.765639 0.640812
+vt 0.803244 0.403658
+vt 0.812243 0.408069
+vt 0.690744 0.026183
+vt 0.693465 0.044576
+vt 0.692927 0.075495
+vt 0.693352 0.069989
+vt 0.693202 0.073986
+vt 0.693813 0.063708
+vt 0.694705 0.054713
+vt 0.694707 0.051837
+vt 0.209501 0.811541
+vt 0.203483 0.811702
+vt 0.204972 0.811115
+vt 0.202136 0.810782
+vt 0.203663 0.810316
+vt 0.370215 0.800474
+vt 0.365597 0.802772
+vt 0.361363 0.805527
+vt 0.252260 0.640036
+vt 0.245710 0.645929
+vt 0.242536 0.640551
+vt 0.248606 0.634426
+vt 0.839904 0.676136
+vt 0.833776 0.667989
+vt 0.828709 0.666377
+vt 0.205194 0.439225
+vt 0.860895 0.569588
+vt 0.622044 0.231585
+vt 0.611856 0.233927
+vt 0.692841 0.079742
+vt 0.867152 0.996607
+vt 0.868089 0.996545
+vt 0.868447 0.997929
+vt 0.867228 0.997800
+vt 0.696126 0.070746
+vt 0.695645 0.072545
+vt 0.695717 0.074008
+vt 0.370998 0.830376
+vt 0.369988 0.829628
+vt 0.371174 0.829111
+vt 0.370230 0.833473
+vt 0.369774 0.836391
+vt 0.292246 0.809520
+vt 0.293053 0.809320
+vt 0.404260 0.778499
+vt 0.404287 0.775821
+vt 0.404962 0.776022
+vt 0.405230 0.778687
+vt 0.403612 0.772928
+vt 0.404574 0.773203
+vt 0.403207 0.770232
+vt 0.402169 0.771703
+vt 0.401910 0.769780
+vt 0.193173 0.797052
+vt 0.192163 0.798227
+vt 0.192188 0.796836
+vt 0.192635 0.795847
+vt 0.193455 0.795588
+vt 0.035741 0.795969
+vt 0.036001 0.794157
+vt 0.036855 0.794735
+vt 0.036552 0.796162
+vt 0.698207 0.029946
+vt 0.698274 0.031254
+vt 0.698320 0.032414
+vt 0.622629 0.858573
+vt 0.622496 0.857208
+vt 0.623547 0.857467
+vt 0.623544 0.858585
+vt 0.218007 0.806810
+vt 0.217184 0.805995
+vt 0.218180 0.805674
+vt 0.217337 0.809426
+vt 0.697492 0.038807
+vt 0.697813 0.039385
+vt 0.697600 0.040924
+vt 0.697938 0.042094
+vt 0.192416 0.805577
+vt 0.699236 0.023958
+vt 0.078723 0.813133
+vt 0.079467 0.813742
+vt 0.697626 0.017135
+vt 0.697703 0.018565
+vt 0.697749 0.019844
+vt 0.601333 0.851649
+vt 0.601221 0.850477
+vt 0.602090 0.850756
+vt 0.602107 0.851692
+vt 0.696970 0.012304
+vt 0.696776 0.013056
+vt 0.133026 0.695191
+vt 0.132514 0.689309
+vt 0.134513 0.676720
+vt 0.135031 0.674284
+vt 0.135554 0.671819
+vt 0.129724 0.701807
+vt 0.130019 0.700440
+vt 0.130388 0.698776
+vt 0.402634 0.819500
+vt 0.402455 0.818770
+vt 0.402478 0.817575
+vt 0.403492 0.817653
+vt 0.215911 0.820209
+vt 0.215134 0.819728
+vt 0.402592 0.758767
+vt 0.402995 0.761707
+vt 0.402152 0.761449
+vt 0.401707 0.758530
+vt 0.402162 0.755880
+vt 0.401374 0.755625
+vt 0.401671 0.753021
+vt 0.401109 0.752849
+vt 0.174995 0.765656
+vt 0.229742 0.775505
+vt 0.229045 0.778436
+vt 0.224293 0.782000
+vt 0.166147 0.792756
+vt 0.166429 0.793983
+vt 0.164892 0.793462
+vt 0.165005 0.792310
+vt 0.167411 0.792077
+vt 0.166857 0.791315
+vt 0.275229 0.801381
+vt 0.275130 0.798521
+vt 0.275466 0.794198
+vt 0.275728 0.790866
+vt 0.413887 0.781993
+vt 0.415070 0.781865
+vt 0.416472 0.781795
+vt 0.230508 0.772246
+vt 0.229879 0.772455
+vt 0.291378 0.748233
+vt 0.293349 0.748814
+vt 0.295164 0.749138
+vt 0.295774 0.748960
+vt 0.294882 0.749921
+vt 0.293613 0.750032
+vt 0.320871 0.824684
+vt 0.291773 0.757317
+vt 0.291305 0.754913
+vt 0.290760 0.752139
+vt 0.320872 0.599856
+vt 0.361911 0.841758
+vt 0.362869 0.841587
+vt 0.363014 0.843229
+vt 0.361883 0.843816
+vt 0.294499 0.741860
+vt 0.287680 0.826706
+vt 0.286962 0.827257
+vt 0.321221 0.601020
+vt 0.386301 0.844754
+vt 0.385447 0.845147
+vt 0.100843 0.811705
+vt 0.102365 0.811758
+vt 0.294514 0.821486
+vt 0.295280 0.820874
+vt 0.320123 0.607203
+vt 0.289040 0.740942
+vt 0.232324 0.819975
+vt 0.231658 0.820504
+vt 0.241459 0.827007
+vt 0.241370 0.826151
+vt 0.241791 0.826490
+vt 0.241843 0.826835
+vt 0.293402 0.735677
+vt 0.287913 0.734477
+vt 0.413296 0.850306
+vt 0.413884 0.851751
+vt 0.099058 0.815730
+vt 0.203092 0.808535
+vt 0.203476 0.809360
+vt 0.170425 0.751801
+vt 0.171067 0.751479
+vt 0.172219 0.754145
+vt 0.171572 0.754561
+vt 0.169788 0.748958
+vt 0.169169 0.749174
+vt 0.590891 0.185533
+vt 0.021966 0.804680
+vt 0.021491 0.801384
+vt 0.027066 0.805096
+vt 0.025985 0.807573
+vt 0.751163 0.661867
+vt 0.542217 0.817336
+vt 0.538207 0.827252
+vt 0.536588 0.823493
+vt 0.532101 0.814576
+vt 0.755236 0.645688
+vt 0.791188 0.411390
+vt 0.780170 0.438540
+vt 0.779804 0.415479
+vt 0.792939 0.389790
+vt 0.691303 0.029673
+vt 0.691031 0.027980
+vt 0.690010 0.020055
+vt 0.689332 0.016970
+vt 0.692710 0.038050
+vt 0.694421 0.048884
+vt 0.693530 0.077415
+vt 0.694421 0.060196
+vt 0.694560 0.057502
+vt 0.843717 0.426819
+vt 0.830578 0.415853
+vt 0.819734 0.402680
+vt 0.514412 0.839403
+vt 0.503223 0.849368
+vt 0.496753 0.840364
+vt 0.512811 0.830883
+vt 0.177098 0.427664
+vt 0.184545 0.434805
+vt 0.192600 0.441429
+vt 0.185281 0.454983
+vt 0.176207 0.467955
+vt 0.251906 0.653318
+vt 0.246745 0.655481
+vt 0.201891 0.455087
+vt 0.207194 0.463162
+vt 0.197899 0.470228
+vt 0.192266 0.464004
+vt 0.838974 0.666729
+vt 0.196788 0.446815
+vt 0.203459 0.436194
+vt 0.207637 0.433670
+vt 0.208006 0.432506
+vt 0.209673 0.423170
+vt 0.216124 0.410532
+vt 0.904697 0.532570
+vt 0.907843 0.553787
+vt 0.237696 0.367500
+vt 0.217399 0.402731
+vt 0.848277 0.570484
+vt 0.873449 0.599653
+vt 0.886218 0.599653
+vt 0.897323 0.597481
+vt 0.589538 0.199961
+vt 0.593334 0.215439
+vt 0.694549 0.077568
+vt 0.197132 0.728173
+vt 0.195835 0.728202
+vt 0.197313 0.727093
+vt 0.198250 0.727823
+vt 0.198372 0.728666
+vt 0.401042 0.754565
+vt 0.400180 0.755820
+vt 0.400109 0.754849
+vt 0.695898 0.070123
+vt 0.725708 0.867290
+vt 0.726629 0.867659
+vt 0.697336 0.856302
+vt 0.698216 0.856664
+vt 0.401664 0.767671
+vt 0.401601 0.766738
+vt 0.402593 0.766404
+vt 0.402917 0.767464
+vt 0.292690 0.807376
+vt 0.291580 0.808899
+vt 0.291648 0.807239
+vt 0.292167 0.805940
+vt 0.293047 0.805512
+vt 0.689891 0.856459
+vt 0.402862 0.780337
+vt 0.402943 0.778617
+vt 0.404184 0.780772
+vt 0.404199 0.770467
+vt 0.194072 0.797548
+vt 0.036334 0.797308
+vt 0.035337 0.797579
+vt 0.698157 0.029346
+vt 0.699224 0.028497
+vt 0.216955 0.811791
+vt 0.217436 0.804966
+vt 0.218148 0.804817
+vt 0.638816 0.859406
+vt 0.639605 0.859682
+vt 0.402495 0.787936
+vt 0.402544 0.787028
+vt 0.403661 0.786820
+vt 0.403890 0.787826
+vt 0.404328 0.785402
+vt 0.404127 0.782925
+vt 0.405142 0.783132
+vt 0.405025 0.785511
+vt 0.402789 0.781819
+vt 0.402008 0.781002
+vt 0.401779 0.779798
+vt 0.002743 0.806954
+vt 0.001812 0.807144
+vt 0.002111 0.806045
+vt 0.002869 0.806263
+vt 0.002283 0.804714
+vt 0.003080 0.805292
+vt 0.697555 0.016452
+vt 0.698633 0.015722
+vt 0.697028 0.013577
+vt 0.079962 0.815028
+vt 0.079819 0.816209
+vt 0.821058 0.869004
+vt 0.821158 0.868086
+vt 0.821918 0.868027
+vt 0.821893 0.869196
+vt 0.696666 0.012003
+vt 0.131332 0.694562
+vt 0.131707 0.692897
+vt 0.132117 0.691075
+vt 0.132569 0.685871
+vt 0.132228 0.687478
+vt 0.132956 0.684050
+vt 0.133451 0.681722
+vt 0.133990 0.679181
+vt 0.130754 0.697140
+vt 0.131042 0.695856
+vt 0.403557 0.816505
+vt 0.402585 0.816417
+vt 0.129241 0.701615
+vt 0.403816 0.767684
+vt 0.403409 0.764721
+vt 0.402840 0.764546
+vt 0.405250 0.780957
+vt 0.174665 0.762506
+vt 0.175368 0.762050
+vt 0.173970 0.762991
+vt 0.414113 0.784704
+vt 0.415295 0.784558
+vt 0.225881 0.776594
+vt 0.227983 0.776008
+vt 0.224265 0.779763
+vt 0.277134 0.787885
+vt 0.278536 0.787769
+vt 0.219722 0.781385
+vt 0.220802 0.781036
+vt 0.222388 0.780485
+vt 0.194638 0.721488
+vt 0.194523 0.724043
+vt 0.275951 0.788042
+vt 0.290298 0.747642
+vt 0.289965 0.745872
+vt 0.295427 0.750130
+vt 0.290234 0.749437
+vt 0.290185 0.744517
+vt 0.289662 0.744253
+vt 0.290250 0.742838
+vt 0.289362 0.742654
+vt 0.168531 0.746567
+vt 0.167945 0.746702
+vt 0.362044 0.840471
+vt 0.362798 0.839915
+vt 0.414960 0.852596
+vt 0.415951 0.852440
+vt 0.384998 0.841831
+vt 0.384930 0.843630
+vt 0.386455 0.845146
+vt 0.385456 0.845652
+vt 0.102872 0.812302
+vt 0.288253 0.739556
+vt 0.288575 0.741340
+vt 0.288012 0.737637
+vt 0.287721 0.736035
+vt 0.292308 0.742854
+vt 0.293596 0.742760
+vt 0.371803 0.842955
+vt 0.371218 0.843350
+vt 0.372034 0.840140
+vt 0.372245 0.841832
+vt 0.240678 0.826034
+vt 0.240555 0.827061
+vt 0.287461 0.734543
+vt 0.287422 0.733470
+vt 0.156823 0.720038
+vt 0.157110 0.720384
+vt 0.156693 0.720445
+vt 0.156440 0.720102
+vt 0.172638 0.757312
+vt 0.173290 0.756837
+vt 0.174324 0.759432
+vt 0.173652 0.759916
+vt 0.748893 0.703981
+vt 0.749805 0.706306
+vt 0.745892 0.690650
+vt 0.743328 0.673408
+vt 0.532953 0.825603
+vt 0.526294 0.813762
+vt 0.766208 0.434324
+vt 0.776889 0.447854
+vt 0.766486 0.444643
+vt 0.811978 0.377501
+vt 0.802896 0.367574
+vt 0.691580 0.031391
+vt 0.691880 0.033264
+vt 0.694003 0.046014
+vt 0.693611 0.043388
+vt 0.693980 0.068722
+vt 0.693829 0.071624
+vt 0.693680 0.074515
+vt 0.694131 0.065790
+vt 0.694280 0.062918
+vt 0.695686 0.054866
+vt 0.695448 0.057563
+vt 0.695574 0.051924
+vt 0.279132 0.827298
+vt 0.278558 0.822768
+vt 0.279038 0.823271
+vt 0.279264 0.825333
+vt 0.204199 0.810229
+vt 0.205474 0.810939
+vt 0.149147 0.429017
+vt 0.176336 0.423699
+vt 0.195186 0.443847
+vt 0.435610 0.817352
+vt 0.435265 0.826491
+vt 0.430199 0.827283
+vt 0.431151 0.817931
+vt 0.363451 0.791122
+vt 0.359528 0.792885
+vt 0.355745 0.794656
+vt 0.257893 0.641700
+vt 0.256777 0.654293
+vt 0.256488 0.627065
+vt 0.260107 0.629541
+vt 0.215442 0.643915
+vt 0.224987 0.633609
+vt 0.230619 0.639833
+vt 0.220346 0.648441
+vt 0.207011 0.428950
+vt 0.873910 0.950018
+vt 0.863607 0.955469
+vt 0.865941 0.936978
+vt 0.871059 0.937163
+vt 0.860681 0.599653
+vt 0.239639 0.351516
+vt 0.231873 0.357246
+vt 0.229859 0.345227
+vt 0.599812 0.238436
+vt 0.609491 0.260395
+vt 0.614116 0.273879
+vt 0.585456 0.191925
+vt 0.695645 0.080176
+vt 0.695690 0.078031
+vt 0.197251 0.731418
+vt 0.196011 0.731655
+vt 0.695721 0.080801
+vt 0.696358 0.079926
+vt 0.696646 0.080532
+vt 0.400446 0.758078
+vt 0.370262 0.828476
+vt 0.371114 0.828179
+vt 0.399451 0.756012
+vt 0.399113 0.755160
+vt 0.370744 0.826142
+vt 0.369571 0.827853
+vt 0.369658 0.826055
+vt 0.370218 0.824591
+vt 0.371140 0.824087
+vt 0.400726 0.760184
+vt 0.400930 0.767814
+vt 0.400597 0.766986
+vt 0.401303 0.770794
+vt 0.400829 0.769267
+vt 0.293645 0.807793
+vt 0.194040 0.796378
+vt 0.402120 0.778627
+vt 0.697964 0.024377
+vt 0.698013 0.025664
+vt 0.615559 0.858568
+vt 0.615404 0.857208
+vt 0.616401 0.857476
+vt 0.616442 0.858584
+vt 0.037846 0.794589
+vt 0.037070 0.793887
+vt 0.037979 0.793680
+vt 0.037363 0.796353
+vt 0.697408 0.030527
+vt 0.697089 0.030170
+vt 0.697176 0.031600
+vt 0.697492 0.032342
+vt 0.622878 0.859401
+vt 0.623591 0.859691
+vt 0.402025 0.797745
+vt 0.402074 0.797098
+vt 0.403192 0.796868
+vt 0.403416 0.797691
+vt 0.403852 0.795326
+vt 0.403656 0.792710
+vt 0.404669 0.792874
+vt 0.404547 0.795415
+vt 0.403722 0.790273
+vt 0.402321 0.791573
+vt 0.402401 0.789852
+vt 0.217848 0.803001
+vt 0.216849 0.804387
+vt 0.216922 0.802848
+vt 0.217386 0.801679
+vt 0.218175 0.801317
+vt 0.401673 0.788018
+vt 0.401429 0.787217
+vt 0.404905 0.787977
+vt 0.697890 0.022953
+vt 0.608481 0.851833
+vt 0.608313 0.850477
+vt 0.609244 0.850758
+vt 0.609316 0.851858
+vt 0.697828 0.022288
+vt 0.698902 0.021591
+vt 0.080340 0.813648
+vt 0.079655 0.813012
+vt 0.080471 0.812790
+vt 0.696489 0.017325
+vt 0.696823 0.017738
+vt 0.696600 0.018910
+vt 0.696916 0.019746
+vt 0.601527 0.852360
+vt 0.602120 0.852634
+vt 0.401390 0.816411
+vt 0.401462 0.815922
+vt 0.402398 0.815863
+vt 0.821845 0.867373
+vt 0.821298 0.867173
+vt 0.401286 0.818111
+vt 0.401316 0.817327
+vt 0.696401 0.012942
+vt 0.131870 0.689163
+vt 0.404788 0.790413
+vt 0.129520 0.700244
+vt 0.129870 0.698575
+vt 0.414333 0.787368
+vt 0.415516 0.787207
+vt 0.228745 0.772805
+vt 0.223696 0.777202
+vt 0.194832 0.728470
+vt 0.165308 0.789097
+vt 0.164076 0.789755
+vt 0.166545 0.788455
+vt 0.164305 0.784718
+vt 0.165507 0.784132
+vt 0.163530 0.781329
+vt 0.164710 0.780800
+vt 0.162872 0.778445
+vt 0.164036 0.777976
+vt 0.416697 0.784488
+vt 0.229481 0.769553
+vt 0.228861 0.769761
+vt 0.167443 0.744292
+vt 0.166893 0.744411
+vt 0.166407 0.741888
+vt 0.165891 0.742018
+vt 0.165308 0.739114
+vt 0.164816 0.739244
+vt 0.294151 0.743024
+vt 0.414106 0.853201
+vt 0.384948 0.844754
+vt 0.288859 0.742937
+vt 0.372226 0.843351
+vt 0.098179 0.816422
+vt 0.099168 0.816539
+vt 0.394881 0.843630
+vt 0.393795 0.841838
+vt 0.395240 0.842116
+vt 0.395861 0.843632
+vt 0.169794 0.752163
+vt 0.170933 0.755004
+vt 0.168569 0.749466
+vt 0.589589 0.183507
+vt 0.592395 0.176785
+vt 0.743729 0.659348
+vt 0.754375 0.647552
+vt 0.749804 0.647906
+vt 0.528169 0.802311
+vt 0.523995 0.803378
+vt 0.531777 0.180038
+vt 0.537215 0.170373
+vt 0.538964 0.176179
+vt 0.535012 0.180187
+vt 0.767215 0.416272
+vt 0.775170 0.391205
+vt 0.784012 0.386737
+vt 0.791810 0.362630
+vt 0.784102 0.375427
+vt 0.818879 0.383168
+vt 0.690570 0.021821
+vt 0.691330 0.024275
+vt 0.690020 0.017939
+vt 0.689694 0.016546
+vt 0.693195 0.040802
+vt 0.694860 0.046419
+vt 0.694842 0.049016
+vt 0.694656 0.074577
+vt 0.694951 0.060114
+vt 0.695213 0.062940
+vt 0.842230 0.411020
+vt 0.834341 0.404312
+vt 0.825512 0.387148
+vt 0.133089 0.426818
+vt 0.133190 0.421352
+vt 0.149580 0.421016
+vt 0.200174 0.429214
+vt 0.202579 0.419222
+vt 0.202781 0.434419
+vt 0.834120 0.661107
+vt 0.838665 0.660033
+vt 0.251965 0.665752
+vt 0.247419 0.666352
+vt 0.186949 0.457460
+vt 0.210644 0.639224
+vt 0.219670 0.627065
+vt 0.206944 0.654841
+vt 0.210940 0.657867
+vt 0.133689 0.811967
+vt 0.134737 0.816145
+vt 0.131633 0.816823
+vt 0.131409 0.811598
+vt 0.225398 0.362842
+vt 0.220124 0.389691
+vt 0.216163 0.368026
+vt 0.850203 0.598603
+vt 0.873449 0.623086
+vt 0.886236 0.623086
+vt 0.899240 0.619224
+vt 0.227225 0.323806
+vt 0.224757 0.330322
+vt 0.601102 0.259605
+vt 0.579381 0.206267
+vt 0.579454 0.199753
+vt 0.198465 0.730926
+vt 0.199175 0.728093
+vt 0.199031 0.728869
+vt 0.696622 0.078454
+vt 0.399366 0.757582
+vt 0.371744 0.826509
+vt 0.293653 0.806340
+vt 0.037120 0.798026
+vt 0.401213 0.797677
+vt 0.400968 0.797081
+vt 0.404435 0.797742
+vt 0.401545 0.790716
+vt 0.401321 0.789334
+vt 0.218689 0.803435
+vt 0.003627 0.806479
+vt 0.003486 0.807641
+vt 0.004004 0.805190
+vt 0.003264 0.804595
+vt 0.004128 0.804353
+vt 0.079875 0.812139
+vt 0.080452 0.812066
+vt 0.601956 0.852987
+vt 0.601227 0.852612
+vt 0.400704 0.816394
+vt 0.400520 0.815958
+vt 0.402918 0.815237
+vt 0.403605 0.815307
+vt 0.400632 0.817656
+vt 0.400410 0.817012
+vt 0.130493 0.695645
+vt 0.130767 0.694355
+vt 0.131116 0.692710
+vt 0.131498 0.690912
+vt 0.404347 0.799563
+vt 0.404270 0.801171
+vt 0.403255 0.801029
+vt 0.403280 0.799425
+vt 0.130219 0.696933
+vt 0.172988 0.760428
+vt 0.227023 0.773296
+vt 0.224971 0.773867
+vt 0.276174 0.785239
+vt 0.277356 0.785104
+vt 0.278759 0.784992
+vt 0.219036 0.778608
+vt 0.220079 0.778271
+vt 0.221679 0.777779
+vt 0.162218 0.775578
+vt 0.163367 0.775174
+vt 0.289823 0.747249
+vt 0.289480 0.745524
+vt 0.164242 0.736412
+vt 0.163762 0.736510
+vt 0.289160 0.744209
+vt 0.167382 0.746938
+vt 0.415765 0.852781
+vt 0.415096 0.853040
+vt 0.239740 0.826138
+vt 0.240067 0.824338
+vt 0.240781 0.824342
+vt 0.240220 0.823215
+vt 0.239870 0.822822
+vt 0.240515 0.822317
+vt 0.240761 0.822823
+vt 0.371557 0.843857
+vt 0.159050 0.728651
+vt 0.159392 0.726532
+vt 0.160293 0.728315
+vt 0.159483 0.729676
+vt 0.158539 0.724612
+vt 0.157714 0.726924
+vt 0.157158 0.725063
+vt 0.157837 0.723011
+vt 0.156537 0.723433
+vt 0.239555 0.826999
+vt 0.155536 0.720382
+vt 0.155575 0.720801
+vt 0.157190 0.721518
+vt 0.155959 0.721915
+vt 0.100851 0.815702
+vt 0.100847 0.816371
+vt 0.171994 0.757816
+vt 0.585124 0.189635
+vt 0.586921 0.181535
+vt 0.590070 0.173848
+vt 0.573677 0.175455
+vt 0.576739 0.166653
+vt 0.556547 0.168141
+vt 0.559497 0.159388
+vt 0.519216 0.803688
+vt 0.253800 0.742416
+vt 0.261191 0.738615
+vt 0.258661 0.752664
+vt 0.254116 0.752825
+vt 0.533383 0.186376
+vt 0.526750 0.190357
+vt 0.252320 0.733828
+vt 0.255855 0.732809
+vt 0.521946 0.227070
+vt 0.512973 0.233477
+vt 0.517086 0.209202
+vt 0.522868 0.208409
+vt 0.821385 0.371879
+vt 0.813625 0.357348
+vt 0.803992 0.341338
+vt 0.691802 0.026326
+vt 0.691926 0.028101
+vt 0.691048 0.020823
+vt 0.690891 0.019687
+vt 0.690776 0.018331
+vt 0.689106 0.014907
+vt 0.689586 0.015165
+vt 0.223599 0.820499
+vt 0.223948 0.818327
+vt 0.224409 0.815713
+vt 0.694645 0.043782
+vt 0.694070 0.041069
+vt 0.694505 0.071565
+vt 0.694992 0.068786
+vt 0.695194 0.065944
+vt 0.697491 0.053107
+vt 0.697413 0.055330
+vt 0.697343 0.057372
+vt 0.061738 0.807414
+vt 0.060913 0.808332
+vt 0.060749 0.805425
+vt 0.061603 0.805318
+vt 0.689107 0.013632
+vt 0.689969 0.013941
+vt 0.689110 0.012910
+vt 0.690099 0.013246
+vt 0.856401 0.421352
+vt 0.852752 0.405154
+vt 0.823423 0.375329
+vt 0.764027 0.862488
+vt 0.764253 0.837007
+vt 0.771970 0.836245
+vt 0.771829 0.862787
+vt 0.177394 0.413263
+vt 0.435680 0.809352
+vt 0.431389 0.809635
+vt 0.359547 0.782826
+vt 0.355658 0.783581
+vt 0.351842 0.784334
+vt 0.256423 0.666331
+vt 0.202845 0.651817
+vt 0.204243 0.667388
+vt 0.200460 0.665618
+vt 0.865578 0.920487
+vt 0.873381 0.925837
+vt 0.204839 0.401640
+vt 0.216998 0.402547
+vt 0.202878 0.413872
+vt 0.200668 0.375187
+vt 0.604885 0.272206
+vt 0.606101 0.281891
+vt 0.860662 0.623086
+vt 0.217958 0.345169
+vt 0.583531 0.221249
+vt 0.588444 0.245720
+vt 0.579534 0.193676
+vt 0.577872 0.209379
+vt 0.695796 0.075803
+vt 0.195072 0.731913
+vt 0.197328 0.734396
+vt 0.196162 0.734618
+vt 0.360401 0.835679
+vt 0.359845 0.834207
+vt 0.360917 0.834237
+vt 0.361322 0.836285
+vt 0.399857 0.759252
+vt 0.371767 0.824939
+vt 0.697090 0.023561
+vt 0.696864 0.024729
+vt 0.697182 0.025572
+vt 0.615791 0.859398
+vt 0.616479 0.859692
+vt 0.401705 0.804411
+vt 0.401763 0.803756
+vt 0.402871 0.803748
+vt 0.403090 0.804466
+vt 0.403494 0.802793
+vt 0.404188 0.802856
+vt 0.401911 0.800119
+vt 0.401958 0.799005
+vt 0.037281 0.793063
+vt 0.037924 0.793010
+vt 0.037568 0.791712
+vt 0.036698 0.792705
+vt 0.036696 0.791632
+vt 0.037057 0.790891
+vt 0.037770 0.790641
+vt 0.400881 0.798512
+vt 0.218705 0.802119
+vt 0.696762 0.023162
+vt 0.608700 0.852666
+vt 0.609353 0.852966
+vt 0.401423 0.810275
+vt 0.401490 0.809599
+vt 0.402591 0.809742
+vt 0.402802 0.810430
+vt 0.402641 0.813856
+vt 0.403656 0.813937
+vt 0.402665 0.812131
+vt 0.401293 0.812999
+vt 0.401342 0.811713
+vt 0.696190 0.018823
+vt 0.889204 0.960287
+vt 0.888427 0.960200
+vt 0.888783 0.959364
+vt 0.889436 0.959069
+vt 0.901171 0.964670
+vt 0.900623 0.964683
+vt 0.900838 0.963745
+vt 0.901516 0.964026
+vt 0.403732 0.812268
+vt 0.414542 0.789931
+vt 0.415724 0.789760
+vt 0.416918 0.787138
+vt 0.227747 0.770103
+vt 0.222850 0.774458
+vt 0.163111 0.785329
+vt 0.162359 0.781886
+vt 0.161717 0.778941
+vt 0.161078 0.776011
+vt 0.228473 0.766903
+vt 0.227861 0.767109
+vt 0.166358 0.744608
+vt 0.165382 0.742203
+vt 0.164338 0.739455
+vt 0.396690 0.841831
+vt 0.396976 0.843630
+vt 0.414427 0.853299
+vt 0.158097 0.729135
+vt 0.160965 0.729913
+vt 0.159898 0.731103
+vt 0.395660 0.844754
+vt 0.396437 0.845147
+vt 0.415958 0.800796
+vt 0.414776 0.800894
+vt 0.415022 0.798196
+vt 0.416204 0.798076
+vt 0.414960 0.795355
+vt 0.416143 0.795208
+vt 0.415552 0.803342
+vt 0.414369 0.803421
+vt 0.581362 0.188608
+vt 0.491172 0.834099
+vt 0.488023 0.848158
+vt 0.479269 0.845208
+vt 0.484942 0.830883
+vt 0.744422 0.646838
+vt 0.753655 0.637478
+vt 0.749196 0.637757
+vt 0.517530 0.790831
+vt 0.515128 0.793644
+vt 0.532999 0.196699
+vt 0.541488 0.175160
+vt 0.541274 0.182730
+vt 0.538332 0.181010
+vt 0.765849 0.397611
+vt 0.758519 0.389439
+vt 0.765645 0.378248
+vt 0.776954 0.374234
+vt 0.794549 0.341860
+vt 0.780446 0.354981
+vt 0.779506 0.369531
+vt 0.474649 0.749890
+vt 0.482488 0.756700
+vt 0.471199 0.756808
+vt 0.466238 0.752179
+vt 0.691806 0.029919
+vt 0.692530 0.031853
+vt 0.484378 0.852787
+vt 0.484211 0.851789
+vt 0.485020 0.851964
+vt 0.485187 0.853159
+vt 0.485443 0.854643
+vt 0.484660 0.855241
+vt 0.690590 0.017668
+vt 0.689954 0.017204
+vt 0.574947 0.856160
+vt 0.574628 0.856895
+vt 0.574784 0.855502
+vt 0.575287 0.855630
+vt 0.153047 0.814042
+vt 0.152684 0.811870
+vt 0.153791 0.812358
+vt 0.153957 0.814351
+vt 0.153514 0.816656
+vt 0.153963 0.816824
+vt 0.693159 0.038218
+vt 0.696598 0.044296
+vt 0.696877 0.046287
+vt 0.060494 0.802828
+vt 0.061558 0.803520
+vt 0.359833 0.829488
+vt 0.358847 0.830330
+vt 0.358365 0.827318
+vt 0.359337 0.827147
+vt 0.172260 0.802680
+vt 0.171386 0.803599
+vt 0.170930 0.800773
+vt 0.171802 0.800525
+vt 0.170329 0.798223
+vt 0.171438 0.798679
+vt 0.697517 0.052118
+vt 0.695830 0.051006
+vt 0.841734 0.379069
+vt 0.832200 0.381089
+vt 0.136725 0.406649
+vt 0.150669 0.398554
+vt 0.440155 0.817952
+vt 0.440070 0.809585
+vt 0.247709 0.676674
+vt 0.252083 0.676400
+vt 0.256358 0.676643
+vt 0.196537 0.663854
+vt 0.208094 0.347837
+vt 0.193283 0.349326
+vt 0.598236 0.271471
+vt 0.601451 0.301997
+vt 0.597864 0.298846
+vt 0.605215 0.303047
+vt 0.591780 0.326480
+vt 0.581967 0.323611
+vt 0.873449 0.645368
+vt 0.885723 0.645368
+vt 0.217181 0.298201
+vt 0.210187 0.302063
+vt 0.202903 0.277887
+vt 0.210975 0.275919
+vt 0.215204 0.325549
+vt 0.591147 0.270018
+vt 0.581063 0.191872
+vt 0.570479 0.195308
+vt 0.564079 0.201622
+vt 0.695905 0.074928
+vt 0.695026 0.073735
+vt 0.696467 0.076677
+vt 0.198497 0.733103
+vt 0.199336 0.730420
+vt 0.361934 0.835508
+vt 0.361894 0.833957
+vt 0.359747 0.832430
+vt 0.360417 0.831880
+vt 0.400892 0.804402
+vt 0.400655 0.803789
+vt 0.404103 0.804604
+vt 0.038355 0.792072
+vt 0.400549 0.798152
+vt 0.003485 0.803722
+vt 0.004097 0.803633
+vt 0.400613 0.810259
+vt 0.400382 0.809632
+vt 0.403812 0.810626
+vt 0.403183 0.809268
+vt 0.403874 0.809337
+vt 0.402921 0.807979
+vt 0.403936 0.808047
+vt 0.402949 0.806265
+vt 0.401574 0.807142
+vt 0.401626 0.805845
+vt 0.400517 0.812274
+vt 0.400271 0.811217
+vt 0.080884 0.811008
+vt 0.080193 0.810641
+vt 0.400167 0.816731
+vt 0.404016 0.806402
+vt 0.414748 0.792543
+vt 0.415930 0.792375
+vt 0.220899 0.775018
+vt 0.226057 0.770573
+vt 0.224053 0.771115
+vt 0.161563 0.772704
+vt 0.162697 0.772363
+vt 0.276397 0.782428
+vt 0.277580 0.782315
+vt 0.278982 0.782206
+vt 0.218348 0.775821
+vt 0.219354 0.775495
+vt 0.160437 0.773073
+vt 0.163304 0.734224
+vt 0.162824 0.734237
+vt 0.162463 0.732499
+vt 0.161877 0.732613
+vt 0.163310 0.736731
+vt 0.161686 0.731185
+vt 0.160799 0.731825
+vt 0.415130 0.805686
+vt 0.413948 0.805752
+vt 0.312490 0.823744
+vt 0.312811 0.824606
+vt 0.311811 0.824667
+vt 0.311734 0.823640
+vt 0.154535 0.720727
+vt 0.153940 0.721224
+vt 0.881335 0.959738
+vt 0.881511 0.959069
+vt 0.882020 0.959665
+vt 0.881511 0.960407
+vt 0.158591 0.730463
+vt 0.158821 0.729557
+vt 0.155306 0.725692
+vt 0.155930 0.727631
+vt 0.154797 0.724027
+vt 0.154323 0.722478
+vt 0.691779 0.014034
+vt 0.691776 0.014594
+vt 0.101974 0.815640
+vt 0.102366 0.816074
+vt 0.568923 0.184217
+vt 0.553367 0.177777
+vt 0.512556 0.796303
+vt 0.258371 0.763302
+vt 0.253998 0.762886
+vt 0.249223 0.746597
+vt 0.249657 0.755598
+vt 0.247867 0.738383
+vt 0.552175 0.181418
+vt 0.550182 0.186649
+vt 0.535893 0.205089
+vt 0.542487 0.220997
+vt 0.520213 0.235242
+vt 0.542025 0.215314
+vt 0.826950 0.364419
+vt 0.818384 0.345478
+vt 0.803884 0.313197
+vt 0.692987 0.033752
+vt 0.693358 0.025280
+vt 0.693620 0.026758
+vt 0.693815 0.028083
+vt 0.502810 0.854698
+vt 0.502748 0.856374
+vt 0.501940 0.856238
+vt 0.502002 0.854612
+vt 0.692600 0.019948
+vt 0.692673 0.020874
+vt 0.691351 0.023676
+vt 0.693174 0.024554
+vt 0.692291 0.018315
+vt 0.692446 0.018873
+vt 0.575211 0.854120
+vt 0.575679 0.854875
+vt 0.696299 0.042254
+vt 0.071272 0.815565
+vt 0.070452 0.816262
+vt 0.069950 0.813411
+vt 0.070781 0.813368
+vt 0.695236 0.047111
+vt 0.696954 0.046896
+vt 0.357708 0.824538
+vt 0.358935 0.825116
+vt 0.696919 0.064122
+vt 0.696826 0.066409
+vt 0.696766 0.068555
+vt 0.695571 0.062021
+vt 0.696987 0.063152
+vt 0.471138 0.853757
+vt 0.470028 0.854052
+vt 0.470155 0.852157
+vt 0.471143 0.852161
+vt 0.699070 0.053295
+vt 0.698639 0.053932
+vt 0.698991 0.055704
+vt 0.698533 0.057094
+vt 0.454244 0.852478
+vt 0.454073 0.850791
+vt 0.455058 0.850528
+vt 0.455202 0.852461
+vt 0.062389 0.805073
+vt 0.062724 0.807728
+vt 0.690253 0.015426
+vt 0.689746 0.015919
+vt 0.122210 0.405154
+vt 0.129942 0.387981
+vt 0.850756 0.373845
+vt 0.455768 0.735168
+vt 0.486468 0.746208
+vt 0.459807 0.742205
+vt 0.175409 0.386715
+vt 0.435427 0.803528
+vt 0.431164 0.803424
+vt 0.358219 0.776616
+vt 0.354602 0.776462
+vt 0.350962 0.776428
+vt 0.196328 0.674962
+vt 0.192419 0.674166
+vt 0.200162 0.675755
+vt 0.598516 0.279007
+vt 0.600257 0.284519
+vt 0.861176 0.645368
+vt 0.192178 0.298740
+vt 0.182891 0.283792
+vt 0.196492 0.317467
+vt 0.203854 0.326549
+vt 0.845173 0.937734
+vt 0.846315 0.920487
+vt 0.858022 0.930351
+vt 0.853472 0.939553
+vt 0.568877 0.223959
+vt 0.573132 0.253651
+vt 0.572639 0.192012
+vt 0.576301 0.190991
+vt 0.564897 0.210206
+vt 0.696784 0.076127
+vt 0.199127 0.732146
+vt 0.195278 0.734857
+vt 0.361080 0.829981
+vt 0.361282 0.831274
+vt 0.360125 0.830681
+vt 0.197119 0.737429
+vt 0.196312 0.737569
+vt 0.003803 0.802221
+vt 0.002948 0.803323
+vt 0.002979 0.802155
+vt 0.003348 0.801311
+vt 0.004036 0.801001
+vt 0.400552 0.805356
+vt 0.401129 0.799450
+vt 0.399956 0.810850
+vt 0.417127 0.789695
+vt 0.226765 0.767445
+vt 0.221992 0.771674
+vt 0.195482 0.737788
+vt 0.196463 0.740528
+vt 0.195687 0.740726
+vt 0.227503 0.764346
+vt 0.226896 0.764543
+vt 0.162380 0.734398
+vt 0.414660 0.808095
+vt 0.413478 0.808156
+vt 0.414106 0.810834
+vt 0.412924 0.810905
+vt 0.413571 0.813555
+vt 0.412389 0.813629
+vt 0.397047 0.844754
+vt 0.397263 0.841935
+vt 0.397510 0.843627
+vt 0.152387 0.721916
+vt 0.152198 0.721589
+vt 0.153197 0.721245
+vt 0.156751 0.730003
+vt 0.157719 0.732742
+vt 0.102367 0.815265
+vt 0.102872 0.815804
+vt 0.416954 0.803290
+vt 0.417361 0.800740
+vt 0.417607 0.798016
+vt 0.417545 0.795147
+vt 0.416532 0.805636
+vt 0.540256 0.170605
+vt 0.542221 0.162468
+vt 0.532927 0.152509
+vt 0.545437 0.156238
+vt 0.530261 0.156858
+vt 0.744651 0.636984
+vt 0.753417 0.630093
+vt 0.749125 0.631071
+vt 0.508358 0.789117
+vt 0.509685 0.785727
+vt 0.544095 0.205475
+vt 0.545044 0.232575
+vt 0.521697 0.243041
+vt 0.753309 0.373382
+vt 0.750143 0.381641
+vt 0.763555 0.359942
+vt 0.772960 0.357999
+vt 0.789880 0.333981
+vt 0.776170 0.354039
+vt 0.451531 0.742913
+vt 0.463739 0.757673
+vt 0.456207 0.751437
+vt 0.404821 0.843202
+vt 0.404432 0.841384
+vt 0.405352 0.841792
+vt 0.405492 0.843409
+vt 0.405338 0.844764
+vt 0.405035 0.845136
+vt 0.193441 0.787627
+vt 0.195116 0.787642
+vt 0.194956 0.788200
+vt 0.192848 0.788338
+vt 0.192715 0.786687
+vt 0.193078 0.786431
+vt 0.169677 0.813276
+vt 0.168842 0.813304
+vt 0.168640 0.811481
+vt 0.169535 0.811036
+vt 0.486338 0.854765
+vt 0.485925 0.852904
+vt 0.249420 0.824545
+vt 0.248651 0.824626
+vt 0.248419 0.822925
+vt 0.249226 0.822317
+vt 0.575999 0.856292
+vt 0.575192 0.856624
+vt 0.694494 0.032813
+vt 0.694855 0.034298
+vt 0.693152 0.035745
+vt 0.695062 0.035669
+vt 0.069359 0.810939
+vt 0.070379 0.811459
+vt 0.696163 0.041487
+vt 0.694195 0.040371
+vt 0.697720 0.043072
+vt 0.698407 0.044702
+vt 0.698147 0.046066
+vt 0.062348 0.802650
+vt 0.510258 0.855917
+vt 0.509032 0.856267
+vt 0.509161 0.854493
+vt 0.510251 0.854458
+vt 0.360300 0.826948
+vt 0.172539 0.803812
+vt 0.173388 0.803064
+vt 0.173594 0.804329
+vt 0.172664 0.800248
+vt 0.172222 0.797614
+vt 0.454532 0.854031
+vt 0.455215 0.853611
+vt 0.470369 0.850967
+vt 0.471139 0.850564
+vt 0.691775 0.015683
+vt 0.841763 0.348936
+vt 0.832424 0.344625
+vt 0.827691 0.356448
+vt 0.145940 0.368074
+vt 0.439808 0.803622
+vt 0.251908 0.684324
+vt 0.247592 0.684580
+vt 0.194883 0.681591
+vt 0.191189 0.681583
+vt 0.256107 0.684059
+vt 0.171703 0.359116
+vt 0.198891 0.339411
+vt 0.185605 0.338870
+vt 0.590175 0.281367
+vt 0.595206 0.278021
+vt 0.594364 0.294644
+vt 0.584322 0.311313
+vt 0.577251 0.347261
+vt 0.585574 0.348762
+vt 0.884866 0.666611
+vt 0.873449 0.666611
+vt 0.191294 0.311372
+vt 0.201687 0.255472
+vt 0.209185 0.254676
+vt 0.200711 0.336995
+vt 0.576253 0.282203
+vt 0.563307 0.190779
+vt 0.555995 0.194034
+vt 0.361249 0.832231
+vt 0.004542 0.802568
+vt 0.400229 0.805010
+vt 0.400796 0.806422
+vt 0.417333 0.792313
+vt 0.220104 0.772207
+vt 0.218615 0.772670
+vt 0.225110 0.767900
+vt 0.223154 0.768423
+vt 0.159790 0.770105
+vt 0.160898 0.769794
+vt 0.162016 0.769512
+vt 0.276623 0.779578
+vt 0.277805 0.779483
+vt 0.279207 0.779376
+vt 0.217648 0.772992
+vt 0.196615 0.743515
+vt 0.195895 0.743694
+vt 0.161245 0.732365
+vt 0.413155 0.815907
+vt 0.411973 0.815961
+vt 0.159790 0.732101
+vt 0.416062 0.808045
+vt 0.151304 0.721906
+vt 0.151284 0.722321
+vt 0.310918 0.824613
+vt 0.310895 0.823757
+vt 0.154081 0.728152
+vt 0.153453 0.726321
+vt 0.153056 0.724622
+vt 0.152687 0.723040
+vt 0.692902 0.015242
+vt 0.693297 0.015051
+vt 0.565225 0.187101
+vt 0.528883 0.162391
+vt 0.507151 0.792530
+vt 0.258489 0.771148
+vt 0.254173 0.770427
+vt 0.249723 0.764048
+vt 0.518133 0.153390
+vt 0.520224 0.149730
+vt 0.563161 0.187994
+vt 0.753843 0.355565
+vt 0.745758 0.825669
+vt 0.737434 0.833692
+vt 0.728868 0.814750
+vt 0.737937 0.809032
+vt 0.819381 0.308913
+vt 0.827452 0.339759
+vt 0.447901 0.854436
+vt 0.446981 0.854668
+vt 0.447124 0.852779
+vt 0.447971 0.852794
+vt 0.692637 0.031481
+vt 0.694021 0.032124
+vt 0.695001 0.025461
+vt 0.694655 0.025897
+vt 0.695268 0.027113
+vt 0.694997 0.027988
+vt 0.196275 0.788036
+vt 0.196816 0.787524
+vt 0.502253 0.853429
+vt 0.502886 0.852998
+vt 0.693667 0.019439
+vt 0.694193 0.020325
+vt 0.693856 0.020885
+vt 0.169638 0.814692
+vt 0.169049 0.815131
+vt 0.249413 0.825896
+vt 0.248875 0.826351
+vt 0.694016 0.019181
+vt 0.576135 0.855623
+vt 0.576041 0.854382
+vt 0.576560 0.855500
+vt 0.440909 0.854423
+vt 0.439889 0.854717
+vt 0.440022 0.852808
+vt 0.440892 0.852793
+vt 0.698107 0.042595
+vt 0.711420 0.867615
+vt 0.711139 0.865647
+vt 0.712144 0.865362
+vt 0.712351 0.867677
+vt 0.071550 0.813181
+vt 0.072277 0.816053
+vt 0.197766 0.761513
+vt 0.199483 0.761729
+vt 0.199362 0.762472
+vt 0.197313 0.762382
+vt 0.698688 0.046651
+vt 0.359819 0.824087
+vt 0.698400 0.064360
+vt 0.697975 0.064981
+vt 0.698279 0.066803
+vt 0.787373 0.869368
+vt 0.787433 0.867223
+vt 0.788886 0.867617
+vt 0.788472 0.869087
+vt 0.198272 0.750605
+vt 0.199868 0.750807
+vt 0.199909 0.751787
+vt 0.198008 0.751670
+vt 0.699528 0.055587
+vt 0.698936 0.057570
+vt 0.197187 0.757552
+vt 0.198097 0.757305
+vt 0.197332 0.759960
+vt 0.196894 0.760239
+vt 0.200029 0.756072
+vt 0.198227 0.754513
+vt 0.199973 0.754020
+vt 0.109484 0.373845
+vt 0.116181 0.358173
+vt 0.849873 0.344599
+vt 0.436824 0.733646
+vt 0.198599 0.681718
+vt 0.435721 0.798234
+vt 0.439881 0.798395
+vt 0.429837 0.797315
+vt 0.354508 0.771155
+vt 0.358621 0.770506
+vt 0.351183 0.768885
+vt 0.167597 0.345531
+vt 0.590865 0.290443
+vt 0.586892 0.303708
+vt 0.569625 0.307532
+vt 0.557311 0.309717
+vt 0.556486 0.342758
+vt 0.553562 0.321621
+vt 0.862032 0.666611
+vt 0.169989 0.304534
+vt 0.177888 0.311316
+vt 0.183276 0.257860
+vt 0.182940 0.332075
+vt 0.549257 0.260102
+vt 0.197624 0.740290
+vt 0.225818 0.764872
+vt 0.221155 0.768959
+vt 0.197815 0.743275
+vt 0.226517 0.761728
+vt 0.225915 0.761914
+vt 0.412993 0.817994
+vt 0.411524 0.817994
+vt 0.415509 0.810785
+vt 0.414973 0.813505
+vt 0.414557 0.815859
+vt 0.396790 0.845652
+vt 0.397482 0.845146
+vt 0.311087 0.821951
+vt 0.311770 0.821948
+vt 0.155143 0.730131
+vt 0.693296 0.016096
+vt 0.693804 0.016073
+vt 0.417587 0.805485
+vt 0.418008 0.803132
+vt 0.418415 0.800570
+vt 0.418661 0.797836
+vt 0.225459 0.758894
+vt 0.224865 0.759077
+vt 0.224329 0.756025
+vt 0.223751 0.756205
+vt 0.417116 0.807897
+vt 0.523073 0.146676
+vt 0.744736 0.630075
+vt 0.749378 0.627496
+vt 0.753641 0.626320
+vt 0.503469 0.787050
+vt 0.501333 0.790623
+vt 0.502604 0.783118
+vt 0.526212 0.263769
+vt 0.513389 0.263349
+vt 0.508503 0.251299
+vt 0.762831 0.329052
+vt 0.771292 0.327029
+vt 0.777937 0.331488
+vt 0.785221 0.327918
+vt 0.789046 0.309360
+vt 0.774763 0.320987
+vt 0.650960 0.756631
+vt 0.647001 0.751781
+vt 0.677971 0.750594
+vt 0.684013 0.760046
+vt 0.445803 0.744332
+vt 0.455717 0.759029
+vt 0.439529 0.746020
+vt 0.137823 0.308913
+vt 0.122885 0.313197
+vt 0.138130 0.283157
+vt 0.144521 0.282476
+vt 0.194035 0.779088
+vt 0.194426 0.778498
+vt 0.194687 0.780115
+vt 0.194100 0.780978
+vt 0.176327 0.812996
+vt 0.175731 0.811612
+vt 0.176252 0.811512
+vt 0.405858 0.844655
+vt 0.196639 0.788667
+vt 0.194808 0.789275
+vt 0.192826 0.789852
+vt 0.192563 0.784990
+vt 0.193435 0.784826
+vt 0.192249 0.786803
+vt 0.191974 0.788517
+vt 0.197092 0.783085
+vt 0.195676 0.783846
+vt 0.195884 0.782474
+vt 0.197734 0.781966
+vt 0.193901 0.782920
+vt 0.196091 0.789482
+vt 0.194740 0.790201
+vt 0.192512 0.791288
+vt 0.191687 0.791270
+vt 0.192160 0.791957
+vt 0.191815 0.791718
+vt 0.689970 0.016544
+vt 0.691776 0.016636
+vt 0.696169 0.033086
+vt 0.695871 0.033469
+vt 0.696539 0.034681
+vt 0.696263 0.035587
+vt 0.071123 0.810637
+vt 0.200637 0.766030
+vt 0.198693 0.767137
+vt 0.198755 0.766552
+vt 0.200217 0.765679
+vt 0.699011 0.044767
+vt 0.200658 0.762664
+vt 0.201218 0.761973
+vt 0.196457 0.762846
+vt 0.197871 0.739262
+vt 0.199330 0.739526
+vt 0.199411 0.740468
+vt 0.509395 0.853394
+vt 0.510240 0.852998
+vt 0.172833 0.805020
+vt 0.173589 0.805314
+vt 0.196764 0.746438
+vt 0.197810 0.746220
+vt 0.197511 0.749036
+vt 0.196905 0.749205
+vt 0.199537 0.744955
+vt 0.199491 0.742782
+vt 0.201086 0.751929
+vt 0.201465 0.751055
+vt 0.197044 0.751936
+vt 0.732900 0.867852
+vt 0.732414 0.865560
+vt 0.733096 0.865790
+vt 0.733679 0.867425
+vt 0.201179 0.755100
+vt 0.201544 0.753465
+vt 0.197188 0.754752
+vt 0.841851 0.338593
+vt 0.834117 0.334631
+vt 0.443945 0.724557
+vt 0.425767 0.726521
+vt 0.125204 0.344786
+vt 0.252089 0.690562
+vt 0.246583 0.692123
+vt 0.256031 0.689879
+vt 0.195048 0.687033
+vt 0.198462 0.686946
+vt 0.191751 0.687402
+vt 0.149118 0.350884
+vt 0.576829 0.292535
+vt 0.070234 0.635125
+vt 0.072978 0.627065
+vt 0.074904 0.630094
+vt 0.074990 0.636358
+vt 0.588943 0.286073
+vt 0.581409 0.301592
+vt 0.557624 0.367288
+vt 0.576223 0.369326
+vt 0.583784 0.370005
+vt 0.202059 0.234569
+vt 0.208997 0.234361
+vt 0.883855 0.686926
+vt 0.873449 0.686926
+vt 0.179045 0.321191
+vt 0.160265 0.282805
+vt 0.153658 0.307488
+vt 0.163666 0.258525
+vt 0.184967 0.235194
+vt 0.553045 0.286731
+vt 0.219330 0.769471
+vt 0.217896 0.769920
+vt 0.216966 0.770232
+vt 0.224204 0.765337
+vt 0.222304 0.765875
+vt 0.196097 0.746597
+vt 0.159157 0.767202
+vt 0.160250 0.766951
+vt 0.161352 0.766729
+vt 0.276843 0.776795
+vt 0.278026 0.776720
+vt 0.279428 0.776616
+vt 0.414339 0.817948
+vt 0.249788 0.809034
+vt 0.251243 0.808770
+vt 0.250357 0.810565
+vt 0.249076 0.810172
+vt 0.247367 0.809649
+vt 0.247717 0.808392
+vt 0.416563 0.810635
+vt 0.311257 0.820824
+vt 0.311776 0.820429
+vt 0.151470 0.723485
+vt 0.150955 0.722081
+vt 0.150911 0.722528
+vt 0.310470 0.824096
+vt 0.310568 0.824441
+vt 0.155576 0.731478
+vt 0.154067 0.730330
+vt 0.152475 0.728865
+vt 0.152082 0.726804
+vt 0.151768 0.725084
+vt 0.693297 0.016765
+vt 0.692902 0.016604
+vt 0.744997 0.626401
+vt 0.869559 0.992733
+vt 0.865296 0.992371
+vt 0.865002 0.987507
+vt 0.870886 0.986915
+vt 0.249974 0.770610
+vt 0.253992 0.776526
+vt 0.259497 0.778229
+vt 0.509796 0.144940
+vt 0.512903 0.142603
+vt 0.754387 0.325421
+vt 0.502984 0.269116
+vt 0.512087 0.281645
+vt 0.803780 0.283157
+vt 0.791154 0.285201
+vt 0.754312 0.822821
+vt 0.745632 0.804137
+vt 0.147746 0.334865
+vt 0.136753 0.339759
+vt 0.196330 0.780270
+vt 0.196158 0.780950
+vt 0.447366 0.851596
+vt 0.448028 0.851123
+vt 0.406332 0.842819
+vt 0.406847 0.844736
+vt 0.170040 0.815335
+vt 0.169319 0.815949
+vt 0.695819 0.027030
+vt 0.695471 0.028311
+vt 0.197252 0.788319
+vt 0.694722 0.020305
+vt 0.694287 0.021101
+vt 0.192890 0.783105
+vt 0.249787 0.826445
+vt 0.249098 0.827057
+vt 0.191763 0.790105
+vt 0.176715 0.815144
+vt 0.177370 0.813320
+vt 0.177357 0.814776
+vt 0.195976 0.772359
+vt 0.197606 0.772611
+vt 0.197463 0.773222
+vt 0.195454 0.773181
+vt 0.440268 0.851607
+vt 0.440949 0.851123
+vt 0.195561 0.768049
+vt 0.196440 0.767765
+vt 0.195509 0.770637
+vt 0.195043 0.770901
+vt 0.197045 0.765043
+vt 0.199048 0.764538
+vt 0.200918 0.764080
+vt 0.698809 0.066745
+vt 0.805635 0.868751
+vt 0.805102 0.867280
+vt 0.806069 0.867223
+vt 0.806480 0.869298
+vt 0.202057 0.753037
+vt 0.157344 0.758907
+vt 0.157030 0.759047
+vt 0.156524 0.756246
+vt 0.156805 0.756051
+vt 0.156237 0.753560
+vt 0.156453 0.753250
+vt 0.099090 0.344599
+vt 0.103040 0.331599
+vt 0.849563 0.334588
+vt 0.430967 0.738359
+vt 0.437430 0.791824
+vt 0.440798 0.792233
+vt 0.433763 0.791123
+vt 0.356133 0.766806
+vt 0.353527 0.767289
+vt 0.351337 0.765850
+vt 0.134418 0.346416
+vt 0.164162 0.340084
+vt 0.577626 0.295410
+vt 0.558163 0.298602
+vt 0.539493 0.301047
+vt 0.546264 0.309602
+vt 0.537902 0.365421
+vt 0.533411 0.338937
+vt 0.526060 0.311374
+vt 0.576658 0.390112
+vt 0.583596 0.390320
+vt 0.863044 0.686926
+vt 0.159323 0.325467
+vt 0.161270 0.333015
+vt 0.167107 0.235818
+vt 0.162468 0.336899
+vt 0.224855 0.762238
+vt 0.220373 0.766423
+vt 0.412046 0.819789
+vt 0.413217 0.819920
+vt 0.414394 0.819875
+vt 0.245659 0.809126
+vt 0.245646 0.807735
+vt 0.416027 0.813356
+vt 0.415611 0.815716
+vt 0.415352 0.817812
+vt 0.154822 0.730904
+vt 0.154812 0.732790
+vt 0.154315 0.731412
+vt 0.218688 0.746413
+vt 0.219511 0.746144
+vt 0.220460 0.748556
+vt 0.219607 0.748826
+vt 0.221445 0.750909
+vt 0.220549 0.751186
+vt 0.222576 0.753470
+vt 0.221620 0.753762
+vt 0.222739 0.756512
+vt 0.223823 0.759394
+vt 0.217685 0.743678
+vt 0.218488 0.743405
+vt 0.516164 0.140436
+vt 0.860915 0.992914
+vt 0.860842 0.988115
+vt 0.498828 0.786935
+vt 0.500248 0.784697
+vt 0.499731 0.782129
+vt 0.250049 0.776219
+vt 0.527906 0.292459
+vt 0.762781 0.301062
+vt 0.770762 0.298491
+vt 0.777029 0.313307
+vt 0.691692 0.776512
+vt 0.673512 0.763955
+vt 0.702033 0.769552
+vt 0.706509 0.749329
+vt 0.714276 0.757836
+vt 0.595903 0.781851
+vt 0.596859 0.771447
+vt 0.604392 0.788125
+vt 0.598159 0.796687
+vt 0.614613 0.788159
+vt 0.601930 0.771937
+vt 0.610484 0.774785
+vt 0.816171 0.282476
+vt 0.803868 0.258917
+vt 0.815314 0.258747
+vt 0.197446 0.780953
+vt 0.198001 0.780313
+vt 0.193816 0.777783
+vt 0.194747 0.777171
+vt 0.193512 0.779527
+vt 0.193212 0.781249
+vt 0.177240 0.811192
+vt 0.152277 0.730694
+vt 0.151971 0.728809
+vt 0.152751 0.730846
+vt 0.151676 0.726996
+vt 0.151386 0.725282
+vt 0.151093 0.723694
+vt 0.697095 0.034680
+vt 0.696747 0.035967
+vt 0.198732 0.773242
+vt 0.199277 0.772657
+vt 0.194546 0.773620
+vt 0.201540 0.763858
+vt 0.196022 0.765407
+vt 0.155994 0.750953
+vt 0.156158 0.750571
+vt 0.200476 0.740654
+vt 0.200790 0.739804
+vt 0.173338 0.807405
+vt 0.174211 0.807037
+vt 0.200574 0.743970
+vt 0.200911 0.742247
+vt 0.196289 0.749342
+vt 0.158558 0.764457
+vt 0.158222 0.764594
+vt 0.157635 0.761862
+vt 0.157964 0.761737
+vt 0.108858 0.707881
+vt 0.101124 0.708930
+vt 0.101796 0.704451
+vt 0.109209 0.703561
+vt 0.433952 0.720634
+vt 0.422012 0.723679
+vt 0.415222 0.729976
+vt 0.108120 0.318415
+vt 0.195744 0.692821
+vt 0.198655 0.693108
+vt 0.429211 0.791585
+vt 0.431925 0.789962
+vt 0.358930 0.764776
+vt 0.357407 0.763890
+vt 0.249919 0.697263
+vt 0.253272 0.696153
+vt 0.256493 0.695399
+vt 0.193007 0.692922
+vt 0.686633 0.780143
+vt 0.685687 0.798622
+vt 0.679812 0.795187
+vt 0.676745 0.783578
+vt 0.554325 0.295616
+vt 0.069490 0.648471
+vt 0.076986 0.647674
+vt 0.541706 0.388863
+vt 0.559566 0.389487
+vt 0.187239 0.214017
+vt 0.203149 0.213949
+vt 0.209573 0.213926
+vt 0.882952 0.707361
+vt 0.873449 0.707361
+vt 0.152614 0.258747
+vt 0.157866 0.236027
+vt 0.170516 0.214085
+vt 0.217230 0.767364
+vt 0.218614 0.766935
+vt 0.216332 0.767654
+vt 0.278234 0.774136
+vt 0.279637 0.774039
+vt 0.223280 0.762713
+vt 0.221437 0.763268
+vt 0.159640 0.764275
+vt 0.160731 0.764121
+vt 0.277052 0.774187
+vt 0.248515 0.812005
+vt 0.249797 0.812398
+vt 0.246807 0.811482
+vt 0.245098 0.810959
+vt 0.415285 0.819740
+vt 0.216692 0.740955
+vt 0.217478 0.740685
+vt 0.155649 0.733400
+vt 0.154484 0.733881
+vt 0.512490 0.135487
+vt 0.509089 0.136992
+vt 0.866960 0.980769
+vt 0.863293 0.981500
+vt 0.495901 0.788772
+vt 0.495647 0.787028
+vt 0.256162 0.783393
+vt 0.252809 0.782258
+vt 0.505665 0.138378
+vt 0.249587 0.781809
+vt 0.754825 0.298043
+vt 0.500165 0.299260
+vt 0.509802 0.310183
+vt 0.792363 0.259428
+vt 0.781714 0.285745
+vt 0.618239 0.809918
+vt 0.607397 0.813323
+vt 0.683408 0.813322
+vt 0.678038 0.823189
+vt 0.673909 0.806074
+vt 0.677549 0.801655
+vt 0.749141 0.802287
+vt 0.746269 0.794739
+vt 0.194148 0.775864
+vt 0.195228 0.775289
+vt 0.198349 0.781594
+vt 0.152587 0.732549
+vt 0.153097 0.732538
+vt 0.196875 0.776127
+vt 0.197199 0.774714
+vt 0.177793 0.815459
+vt 0.177046 0.816070
+vt 0.198331 0.775382
+vt 0.199014 0.774234
+vt 0.155787 0.748081
+vt 0.155621 0.748392
+vt 0.155126 0.745749
+vt 0.155300 0.745515
+vt 0.195155 0.768283
+vt 0.194610 0.771192
+vt 0.201338 0.741879
+vt 0.158358 0.758713
+vt 0.159025 0.761588
+vt 0.157751 0.755778
+vt 0.157315 0.752912
+vt 0.095106 0.334588
+vt 0.098122 0.322630
+vt 0.116528 0.704300
+vt 0.116570 0.708853
+vt 0.423937 0.718626
+vt 0.435052 0.716155
+vt 0.436332 0.783795
+vt 0.439642 0.785134
+vt 0.442141 0.785829
+vt 0.353428 0.763677
+vt 0.351464 0.764222
+vt 0.239114 0.696786
+vt 0.242098 0.693719
+vt 0.243145 0.695157
+vt 0.240660 0.697664
+vt 0.246220 0.697272
+vt 0.243970 0.698005
+vt 0.248269 0.698431
+vt 0.619983 0.781918
+vt 0.623529 0.783547
+vt 0.152553 0.347716
+vt 0.146085 0.348605
+vt 0.078420 0.667138
+vt 0.069868 0.670976
+vt 0.530557 0.308144
+vt 0.080012 0.685808
+vt 0.071742 0.692290
+vt 0.532465 0.388655
+vt 0.526972 0.365253
+vt 0.518159 0.339480
+vt 0.561838 0.410664
+vt 0.577748 0.410732
+vt 0.584172 0.410755
+vt 0.863947 0.707361
+vt 0.161654 0.214108
+vt 0.751975 0.806172
+vt 0.757952 0.817878
+vt 0.219574 0.763829
+vt 0.412766 0.821622
+vt 0.413734 0.821753
+vt 0.414672 0.821708
+vt 0.246254 0.813291
+vt 0.244545 0.812768
+vt 0.274558 0.742467
+vt 0.273684 0.742075
+vt 0.274472 0.740242
+vt 0.275279 0.740634
+vt 0.273239 0.743466
+vt 0.274034 0.744493
+vt 0.247962 0.813815
+vt 0.215802 0.738578
+vt 0.216566 0.738325
+vt 0.215031 0.736463
+vt 0.215777 0.736229
+vt 0.216533 0.744096
+vt 0.217496 0.746823
+vt 0.218364 0.749234
+vt 0.219237 0.751598
+vt 0.220215 0.754185
+vt 0.222281 0.759857
+vt 0.221247 0.756953
+vt 0.215574 0.741368
+vt 0.507211 0.131881
+vt 0.510411 0.130688
+vt 0.859925 0.982326
+vt 0.871512 0.981483
+vt 0.868798 0.979703
+vt 0.496935 0.783258
+vt 0.498173 0.781639
+vt 0.259860 0.783199
+vt 0.257812 0.784527
+vt 0.262936 0.781102
+vt 0.262111 0.783736
+vt 0.563805 0.832592
+vt 0.564852 0.830024
+vt 0.567836 0.833082
+vt 0.566290 0.834738
+vt 0.504015 0.132769
+vt 0.503120 0.127179
+vt 0.505697 0.126252
+vt 0.533011 0.301538
+vt 0.519591 0.320227
+vt 0.762711 0.291452
+vt 0.770468 0.288706
+vt 0.088477 0.699241
+vt 0.083746 0.706201
+vt 0.075490 0.702064
+vt 0.082479 0.694744
+vt 0.725053 0.766374
+vt 0.716294 0.748424
+vt 0.724774 0.756338
+vt 0.599460 0.812431
+vt 0.803897 0.236027
+vt 0.814303 0.236027
+vt 0.193673 0.776371
+vt 0.193330 0.778280
+vt 0.153308 0.735519
+vt 0.153202 0.736015
+vt 0.152893 0.734272
+vt 0.153215 0.733992
+vt 0.199624 0.773945
+vt 0.194084 0.774027
+vt 0.156944 0.750202
+vt 0.090554 0.335529
+vt 0.092968 0.324340
+vt 0.429923 0.704865
+vt 0.439053 0.704119
+vt 0.103340 0.692415
+vt 0.110026 0.692070
+vt 0.410057 0.726698
+vt 0.101164 0.310687
+vt 0.193682 0.698283
+vt 0.195862 0.698676
+vt 0.198241 0.699511
+vt 0.432760 0.784904
+vt 0.429853 0.786365
+vt 0.425706 0.790699
+vt 0.426562 0.787561
+vt 0.354754 0.761550
+vt 0.254864 0.701387
+vt 0.252040 0.703234
+vt 0.257358 0.700759
+vt 0.536252 0.410574
+vt 0.545114 0.410596
+vt 0.173820 0.192725
+vt 0.189368 0.192553
+vt 0.204088 0.192381
+vt 0.210075 0.192324
+vt 0.882419 0.728963
+vt 0.873449 0.728963
+vt 0.803897 0.214108
+vt 0.813400 0.214108
+vt 0.165350 0.192783
+vt 0.215677 0.765019
+vt 0.216544 0.764750
+vt 0.217880 0.764341
+vt 0.278441 0.771493
+vt 0.279843 0.771403
+vt 0.277258 0.771533
+vt 0.220486 0.760395
+vt 0.160094 0.761467
+vt 0.249244 0.814207
+vt 0.275487 0.738432
+vt 0.276219 0.738825
+vt 0.245717 0.815048
+vt 0.244141 0.814565
+vt 0.247293 0.815531
+vt 0.214398 0.734528
+vt 0.215139 0.734300
+vt 0.415387 0.821574
+vt 0.214717 0.738954
+vt 0.154618 0.734427
+vt 0.154036 0.735148
+vt 0.508291 0.124899
+vt 0.864391 0.974037
+vt 0.861081 0.975480
+vt 0.494466 0.783694
+vt 0.874161 0.978411
+vt 0.875017 0.981229
+vt 0.870870 0.976728
+vt 0.251217 0.787424
+vt 0.254041 0.789546
+vt 0.248723 0.787034
+vt 0.453487 0.790428
+vt 0.450527 0.762660
+vt 0.459999 0.771739
+vt 0.463746 0.791426
+vt 0.755038 0.288524
+vt 0.498935 0.326638
+vt 0.507507 0.335641
+vt 0.793492 0.236027
+vt 0.472002 0.791916
+vt 0.471320 0.814936
+vt 0.462871 0.816925
+vt 0.616795 0.817646
+vt 0.608417 0.821605
+vt 0.156530 0.747737
+vt 0.156019 0.745216
+vt 0.154659 0.742607
+vt 0.155352 0.742337
+vt 0.159380 0.758546
+vt 0.158710 0.755544
+vt 0.158204 0.752648
+vt 0.079123 0.329804
+vt 0.078452 0.339137
+vt 0.116451 0.692198
+vt 0.412753 0.721044
+vt 0.420593 0.705539
+vt 0.600062 0.817597
+vt 0.432478 0.778264
+vt 0.434844 0.777777
+vt 0.439100 0.778692
+vt 0.441445 0.779003
+vt 0.443493 0.779878
+vt 0.357158 0.760752
+vt 0.354967 0.759336
+vt 0.349477 0.760601
+vt 0.348128 0.761314
+vt 0.237078 0.699694
+vt 0.238824 0.700146
+vt 0.241814 0.699806
+vt 0.244232 0.700631
+vt 0.246500 0.701605
+vt 0.248983 0.702644
+vt 0.794395 0.214108
+vt 0.548419 0.431956
+vt 0.563967 0.432128
+vt 0.578687 0.432300
+vt 0.584674 0.432357
+vt 0.864480 0.728963
+vt 0.803897 0.192783
+vt 0.812867 0.192783
+vt 0.218683 0.760937
+vt 0.413707 0.823432
+vt 0.414450 0.823562
+vt 0.415120 0.823518
+vt 0.275734 0.742598
+vt 0.276255 0.740765
+vt 0.275504 0.744575
+vt 0.213971 0.736799
+vt 0.213346 0.734851
+vt 0.214578 0.732467
+vt 0.213837 0.732695
+vt 0.214322 0.741830
+vt 0.215234 0.744569
+vt 0.216142 0.747292
+vt 0.216944 0.749702
+vt 0.217731 0.752071
+vt 0.219517 0.757462
+vt 0.218593 0.754672
+vt 0.213511 0.739372
+vt 0.858582 0.976540
+vt 0.867963 0.974953
+vt 0.492829 0.785626
+vt 0.492332 0.783066
+vt 0.495555 0.778444
+vt 0.496720 0.777459
+vt 0.257098 0.788731
+vt 0.259581 0.787730
+vt 0.261848 0.786732
+vt 0.265421 0.782941
+vt 0.264266 0.785028
+vt 0.569872 0.837262
+vt 0.568126 0.838192
+vt 0.501746 0.121954
+vt 0.503622 0.120775
+vt 0.516100 0.344410
+vt 0.400291 0.740989
+vt 0.400782 0.749006
+vt 0.393025 0.746461
+vt 0.392813 0.738956
+vt 0.733316 0.764324
+vt 0.725443 0.746877
+vt 0.717195 0.740407
+vt 0.154686 0.739488
+vt 0.154029 0.739771
+vt 0.153579 0.737427
+vt 0.154175 0.737054
+vt 0.157766 0.749931
+vt 0.095435 0.313220
+vt 0.079867 0.320671
+vt 0.429718 0.686697
+vt 0.437035 0.687607
+vt 0.446336 0.686309
+vt 0.103878 0.674605
+vt 0.110984 0.676631
+vt 0.258491 0.706099
+vt 0.256270 0.706553
+vt 0.192503 0.703623
+vt 0.194296 0.704321
+vt 0.196280 0.705462
+vt 0.430195 0.778971
+vt 0.674152 0.849712
+vt 0.669049 0.852686
+vt 0.671187 0.849755
+vt 0.673598 0.847851
+vt 0.807846 0.861027
+vt 0.810682 0.862396
+vt 0.809143 0.863592
+vt 0.807181 0.862443
+vt 0.350632 0.758810
+vt 0.242102 0.701861
+vt 0.254346 0.707573
+vt 0.794928 0.192783
+vt 0.539949 0.431899
+vt 0.167997 0.172329
+vt 0.176084 0.172123
+vt 0.190484 0.171505
+vt 0.204056 0.170887
+vt 0.209660 0.170681
+vt 0.881998 0.750606
+vt 0.873449 0.750606
+vt 0.803897 0.172330
+vt 0.812446 0.172330
+vt 0.278653 0.768556
+vt 0.280055 0.768470
+vt 0.214936 0.762086
+vt 0.215768 0.761826
+vt 0.217051 0.761431
+vt 0.277470 0.768612
+vt 0.248475 0.815893
+vt 0.276967 0.738956
+vt 0.276621 0.736635
+vt 0.277254 0.736997
+vt 0.245205 0.816724
+vt 0.244025 0.816363
+vt 0.274483 0.746890
+vt 0.275665 0.746814
+vt 0.246384 0.817085
+vt 0.212786 0.733018
+vt 0.214465 0.730523
+vt 0.215018 0.732332
+vt 0.214025 0.730658
+vt 0.212798 0.737172
+vt 0.154825 0.736824
+vt 0.505518 0.119113
+vt 0.868245 0.968761
+vt 0.865879 0.968482
+vt 0.861623 0.970412
+vt 0.859278 0.970580
+vt 0.493462 0.778847
+vt 0.647092 0.852954
+vt 0.643801 0.853935
+vt 0.644167 0.850794
+vt 0.646076 0.850705
+vt 0.249811 0.791825
+vt 0.251735 0.793103
+vt 0.263979 0.787451
+vt 0.247590 0.791549
+vt 0.453900 0.814611
+vt 0.385352 0.749218
+vt 0.385675 0.741271
+vt 0.498183 0.336157
+vt 0.506174 0.344703
+vt 0.471128 0.823199
+vt 0.462748 0.826131
+vt 0.733957 0.753444
+vt 0.292149 0.632952
+vt 0.292082 0.627065
+vt 0.300460 0.628116
+vt 0.300072 0.633846
+vt 0.157305 0.747467
+vt 0.156762 0.744967
+vt 0.156079 0.742143
+vt 0.277532 0.765610
+vt 0.278714 0.765532
+vt 0.277286 0.762714
+vt 0.278468 0.762626
+vt 0.060454 0.329512
+vt 0.061458 0.336244
+vt 0.060590 0.345430
+vt 0.117782 0.674336
+vt 0.292296 0.649067
+vt 0.285592 0.649192
+vt 0.284320 0.633686
+vt 0.283727 0.628033
+vt 0.292411 0.668749
+vt 0.286213 0.668034
+vt 0.429689 0.772016
+vt 0.431856 0.771568
+vt 0.703852 0.829745
+vt 0.706783 0.827607
+vt 0.706706 0.833626
+vt 0.704557 0.833400
+vt 0.434150 0.771497
+vt 0.440515 0.773781
+vt 0.442677 0.774022
+vt 0.197239 0.706338
+vt 0.193821 0.711318
+vt 0.193054 0.710351
+vt 0.810823 0.855001
+vt 0.808382 0.855433
+vt 0.555313 0.848896
+vt 0.554297 0.850858
+vt 0.551233 0.848668
+vt 0.552772 0.847293
+vt 0.351063 0.757106
+vt 0.344984 0.757928
+vt 0.344158 0.758827
+vt 0.236201 0.702181
+vt 0.237968 0.702330
+vt 0.240049 0.701850
+vt 0.555957 0.846517
+vt 0.558224 0.846771
+vt 0.557222 0.849561
+vt 0.246581 0.708332
+vt 0.248824 0.708676
+vt 0.250982 0.709238
+vt 0.542596 0.452352
+vt 0.550683 0.452558
+vt 0.565083 0.453176
+vt 0.578655 0.453794
+vt 0.584259 0.454001
+vt 0.864901 0.750606
+vt 0.795349 0.172330
+vt 0.217791 0.757971
+vt 0.414743 0.825117
+vt 0.415274 0.825238
+vt 0.415702 0.825197
+vt 0.276851 0.744531
+vt 0.276915 0.742553
+vt 0.277198 0.740719
+vt 0.212185 0.735208
+vt 0.211625 0.733375
+vt 0.213284 0.730885
+vt 0.213135 0.742249
+vt 0.212382 0.739751
+vt 0.213988 0.745004
+vt 0.214832 0.747734
+vt 0.215559 0.750151
+vt 0.216249 0.752533
+vt 0.216987 0.755155
+vt 0.211713 0.737513
+vt 0.857230 0.971750
+vt 0.870528 0.969815
+vt 0.784908 0.859497
+vt 0.785797 0.863014
+vt 0.782172 0.858351
+vt 0.783381 0.856831
+vt 0.491720 0.778611
+vt 0.650156 0.850393
+vt 0.648617 0.848817
+vt 0.756277 0.858787
+vt 0.756489 0.861929
+vt 0.749576 0.859300
+vt 0.750887 0.857197
+vt 0.494751 0.773278
+vt 0.495893 0.772847
+vt 0.259500 0.794385
+vt 0.257257 0.794556
+vt 0.255099 0.795501
+vt 0.262492 0.788337
+vt 0.260584 0.789898
+vt 0.267257 0.784226
+vt 0.266032 0.785968
+vt 0.570750 0.841873
+vt 0.568982 0.842254
+vt 0.498660 0.117439
+vt 0.500063 0.116123
+vt 0.496811 0.346185
+vt 0.490237 0.337666
+vt 0.514093 0.353186
+vt 0.726222 0.720775
+vt 0.719082 0.717803
+vt 0.399168 0.718385
+vt 0.392337 0.717425
+vt 0.454286 0.823388
+vt 0.734113 0.723773
+vt 0.155390 0.739321
+vt 0.276879 0.759997
+vt 0.278062 0.759907
+vt 0.299261 0.649414
+vt 0.299018 0.668827
+vt 0.292383 0.685339
+vt 0.284854 0.683694
+vt 0.436267 0.671037
+vt 0.442339 0.672058
+vt 0.449567 0.671174
+vt 0.111753 0.660468
+vt 0.105468 0.659276
+vt 0.259435 0.710614
+vt 0.257304 0.710891
+vt 0.190034 0.708138
+vt 0.191460 0.709038
+vt 0.807936 0.848674
+vt 0.810056 0.848046
+vt 0.679064 0.846370
+vt 0.678200 0.844927
+vt 0.672601 0.845800
+vt 0.668262 0.847056
+vt 0.345893 0.756231
+vt 0.407129 0.836370
+vt 0.405074 0.837753
+vt 0.403294 0.834962
+vt 0.405085 0.833807
+vt 0.553827 0.845386
+vt 0.805057 0.862242
+vt 0.806165 0.855515
+vt 0.255519 0.711894
+vt 0.811877 0.153026
+vt 0.803897 0.153026
+vt 0.168633 0.153025
+vt 0.176370 0.152663
+vt 0.189716 0.151574
+vt 0.202235 0.150485
+vt 0.207487 0.150122
+vt 0.881429 0.771165
+vt 0.873449 0.771165
+vt 0.280117 0.765449
+vt 0.214230 0.759064
+vt 0.215018 0.758815
+vt 0.216236 0.758437
+vt 0.247269 0.817356
+vt 0.277641 0.738910
+vt 0.277786 0.737118
+vt 0.278262 0.735109
+vt 0.277764 0.734838
+vt 0.244815 0.817999
+vt 0.244037 0.817743
+vt 0.277067 0.746774
+vt 0.274899 0.749387
+vt 0.276081 0.749331
+vt 0.245603 0.818222
+vt 0.211072 0.731566
+vt 0.212233 0.731209
+vt 0.213675 0.728844
+vt 0.213269 0.728968
+vt 0.211114 0.735537
+vt 0.501477 0.114324
+vt 0.871034 0.963648
+vt 0.868867 0.962898
+vt 0.866573 0.963004
+vt 0.720750 0.859414
+vt 0.715195 0.861731
+vt 0.716084 0.858215
+vt 0.719738 0.857504
+vt 0.860208 0.967103
+vt 0.858046 0.967235
+vt 0.492838 0.773488
+vt 0.751790 0.855170
+vt 0.758445 0.856653
+vt 0.645432 0.848786
+vt 0.647562 0.847278
+vt 0.246646 0.794816
+vt 0.248777 0.794975
+vt 0.250562 0.796185
+vt 0.785071 0.855301
+vt 0.788628 0.858085
+vt 0.433982 0.843250
+vt 0.433373 0.846504
+vt 0.430951 0.845988
+vt 0.431890 0.842847
+vt 0.470426 0.348908
+vt 0.467423 0.341014
+vt 0.386445 0.718457
+vt 0.614535 0.637639
+vt 0.613724 0.626320
+vt 0.622103 0.629081
+vt 0.622277 0.639962
+vt 0.622694 0.669632
+vt 0.616461 0.668595
+vt 0.276458 0.757533
+vt 0.277640 0.757442
+vt 0.275988 0.755033
+vt 0.277170 0.754950
+vt 0.275434 0.752209
+vt 0.276617 0.752145
+vt 0.279464 0.759840
+vt 0.279871 0.762550
+vt 0.300334 0.686092
+vt 0.043189 0.336213
+vt 0.044847 0.340881
+vt 0.045525 0.346776
+vt 0.117818 0.659168
+vt 0.807326 0.842810
+vt 0.805657 0.843763
+vt 0.431675 0.766340
+vt 0.429703 0.766779
+vt 0.702183 0.832824
+vt 0.701154 0.826820
+vt 0.703822 0.839403
+vt 0.705774 0.839906
+vt 0.433781 0.766507
+vt 0.676922 0.843316
+vt 0.443176 0.770785
+vt 0.441220 0.770646
+vt 0.189406 0.714555
+vt 0.188848 0.713568
+vt 0.548986 0.844763
+vt 0.550732 0.843943
+vt 0.346410 0.754785
+vt 0.341393 0.754375
+vt 0.340652 0.756008
+vt 0.340193 0.757020
+vt 0.008812 0.794606
+vt 0.008324 0.790641
+vt 0.010091 0.790992
+vt 0.010546 0.794624
+vt 0.404605 0.829876
+vt 0.406789 0.833376
+vt 0.403158 0.830393
+vt 0.551995 0.842594
+vt 0.246111 0.714706
+vt 0.248375 0.714741
+vt 0.250511 0.715153
+vt 0.795918 0.153026
+vt 0.543232 0.471656
+vt 0.550968 0.472019
+vt 0.564315 0.473107
+vt 0.576833 0.474196
+vt 0.582086 0.474559
+vt 0.865470 0.771165
+vt 0.248870 0.816013
+vt 0.247564 0.817447
+vt 0.416118 0.826671
+vt 0.416385 0.826640
+vt 0.278628 0.735199
+vt 0.278790 0.733990
+vt 0.278717 0.733458
+vt 0.277864 0.744399
+vt 0.277803 0.742417
+vt 0.209489 0.736032
+vt 0.209040 0.736168
+vt 0.208480 0.734335
+vt 0.208929 0.734199
+vt 0.246346 0.818083
+vt 0.210554 0.733704
+vt 0.210001 0.731895
+vt 0.212588 0.729184
+vt 0.212885 0.745359
+vt 0.212092 0.742584
+vt 0.211400 0.740060
+vt 0.213666 0.748105
+vt 0.214321 0.750540
+vt 0.214923 0.752943
+vt 0.215544 0.755591
+vt 0.210778 0.737801
+vt 0.497011 0.109808
+vt 0.502041 0.113154
+vt 0.496660 0.110991
+vt 0.743409 0.855993
+vt 0.744783 0.854261
+vt 0.778863 0.853417
+vt 0.780202 0.852401
+vt 0.491303 0.773428
+vt 0.652403 0.845939
+vt 0.650657 0.845009
+vt 0.492795 0.768620
+vt 0.494587 0.768543
+vt 0.495697 0.768495
+vt 0.259969 0.800225
+vt 0.257706 0.800092
+vt 0.255570 0.800816
+vt 0.712364 0.856802
+vt 0.718318 0.855517
+vt 0.494684 0.114171
+vt 0.495672 0.112805
+vt 0.649394 0.844024
+vt 0.566901 0.838427
+vt 0.567815 0.842314
+vt 0.570261 0.846226
+vt 0.568527 0.846227
+vt 0.473404 0.356052
+vt 0.503289 0.354439
+vt 0.732944 0.690957
+vt 0.725742 0.691285
+vt 0.718205 0.688163
+vt 0.391142 0.691885
+vt 0.398297 0.688745
+vt 0.605262 0.628860
+vt 0.606455 0.639665
+vt 0.736868 0.690469
+vt 0.737747 0.724811
+vt 0.279043 0.757384
+vt 0.291155 0.698611
+vt 0.281568 0.697194
+vt 0.440134 0.657537
+vt 0.445734 0.660176
+vt 0.455361 0.670980
+vt 0.455193 0.667101
+vt 0.454465 0.656821
+vt 0.113009 0.646070
+vt 0.105531 0.643232
+vt 0.259732 0.713501
+vt 0.257777 0.713640
+vt 0.187770 0.712109
+vt 0.186840 0.711025
+vt 0.805968 0.849141
+vt 0.701720 0.838739
+vt 0.702961 0.844896
+vt 0.701410 0.844033
+vt 0.682199 0.842090
+vt 0.681115 0.841160
+vt 0.341974 0.753093
+vt 0.401462 0.831302
+vt 0.549660 0.839760
+vt 0.550993 0.838934
+vt 0.256174 0.714627
+vt 0.811243 0.134923
+vt 0.803897 0.134923
+vt 0.175498 0.134407
+vt 0.168102 0.134923
+vt 0.187825 0.132859
+vt 0.199324 0.131311
+vt 0.204237 0.130795
+vt 0.873449 0.790492
+vt 0.880795 0.790492
+vt 0.214413 0.755939
+vt 0.213681 0.756166
+vt 0.207927 0.732526
+vt 0.208376 0.732390
+vt 0.278215 0.737076
+vt 0.279217 0.733648
+vt 0.244647 0.818550
+vt 0.244015 0.818288
+vt 0.277483 0.749294
+vt 0.278121 0.746654
+vt 0.245317 0.818686
+vt 0.874772 0.997763
+vt 0.874244 0.996840
+vt 0.874610 0.996545
+vt 0.875199 0.997885
+vt 0.211623 0.729500
+vt 0.210555 0.729841
+vt 0.212403 0.727401
+vt 0.212100 0.727494
+vt 0.210195 0.735818
+vt 0.739569 0.851507
+vt 0.741077 0.850314
+vt 0.869048 0.959135
+vt 0.871020 0.959808
+vt 0.866942 0.959424
+vt 0.725034 0.854583
+vt 0.726228 0.856206
+vt 0.781989 0.851383
+vt 0.473688 0.846615
+vt 0.471526 0.846933
+vt 0.471027 0.841630
+vt 0.472983 0.841474
+vt 0.745950 0.852609
+vt 0.491389 0.768682
+vt 0.422696 0.835314
+vt 0.422994 0.831273
+vt 0.425125 0.831620
+vt 0.424652 0.835469
+vt 0.783199 0.851062
+vt 0.780660 0.847363
+vt 0.781784 0.847213
+vt 0.651730 0.840375
+vt 0.650396 0.839944
+vt 0.434317 0.839171
+vt 0.432404 0.838961
+vt 0.439787 0.356243
+vt 0.440233 0.350753
+vt 0.437488 0.342933
+vt 0.440851 0.338246
+vt 0.466390 0.337383
+vt 0.609288 0.669550
+vt 0.617998 0.702937
+vt 0.611149 0.703167
+vt 0.278572 0.754899
+vt 0.278019 0.752102
+vt 0.213204 0.753456
+vt 0.212712 0.751000
+vt 0.213346 0.750825
+vt 0.213880 0.753256
+vt 0.303033 0.703837
+vt 0.030484 0.344863
+vt 0.025443 0.341610
+vt 0.032955 0.349333
+vt 0.045422 0.353620
+vt 0.041831 0.351882
+vt 0.119565 0.643421
+vt 0.431784 0.762660
+vt 0.430012 0.763193
+vt 0.803417 0.839223
+vt 0.802206 0.840495
+vt 0.804106 0.844626
+vt 0.699741 0.843079
+vt 0.433679 0.762948
+vt 0.679655 0.840082
+vt 0.380382 0.832683
+vt 0.380458 0.837441
+vt 0.378502 0.837329
+vt 0.378614 0.832714
+vt 0.184648 0.716200
+vt 0.184278 0.715232
+vt 0.547892 0.840110
+vt 0.338462 0.754958
+vt 0.338120 0.753465
+vt 0.337430 0.755463
+vt 0.010925 0.796527
+vt 0.009880 0.797370
+vt 0.402988 0.826244
+vt 0.401706 0.826826
+vt 0.246115 0.719221
+vt 0.248220 0.719055
+vt 0.250192 0.719493
+vt 0.796552 0.134923
+vt 0.550097 0.490275
+vt 0.542701 0.489759
+vt 0.562424 0.491823
+vt 0.573922 0.493371
+vt 0.578835 0.493886
+vt 0.866104 0.790492
+vt 0.416707 0.827637
+vt 0.416922 0.827642
+vt 0.278895 0.735168
+vt 0.279280 0.732913
+vt 0.210058 0.738015
+vt 0.209635 0.733985
+vt 0.246223 0.818412
+vt 0.209563 0.730133
+vt 0.209082 0.732176
+vt 0.211595 0.727674
+vt 0.212746 0.748363
+vt 0.212015 0.745590
+vt 0.211272 0.742796
+vt 0.210636 0.740270
+vt 0.491707 0.108453
+vt 0.491558 0.109576
+vt 0.729808 0.851734
+vt 0.728429 0.850617
+vt 0.723633 0.852880
+vt 0.777551 0.848276
+vt 0.778904 0.847818
+vt 0.653497 0.840756
+vt 0.742456 0.849197
+vt 0.494430 0.766119
+vt 0.493172 0.765244
+vt 0.495283 0.765350
+vt 0.259966 0.803720
+vt 0.257861 0.803431
+vt 0.255889 0.804104
+vt 0.491102 0.111332
+vt 0.490644 0.112685
+vt 0.567413 0.846166
+vt 0.568148 0.848463
+vt 0.569193 0.849371
+vt 0.729611 0.670638
+vt 0.733349 0.668993
+vt 0.722637 0.671660
+vt 0.715185 0.670775
+vt 0.388775 0.672355
+vt 0.394562 0.671164
+vt 0.212147 0.748515
+vt 0.032293 0.354672
+vt 0.281412 0.706966
+vt 0.287668 0.708338
+vt 0.447121 0.653913
+vt 0.444120 0.651142
+vt 0.101061 0.655397
+vt 0.099315 0.645022
+vt 0.460751 0.656726
+vt 0.453106 0.649866
+vt 0.115424 0.635929
+vt 0.110486 0.634286
+vt 0.183703 0.713679
+vt 0.183261 0.712462
+vt 0.236479 0.801428
+vt 0.238434 0.801317
+vt 0.238240 0.804896
+vt 0.236473 0.804865
+vt 0.699016 0.848454
+vt 0.697911 0.847264
+vt 0.683749 0.837474
+vt 0.682533 0.837033
+vt 0.548288 0.835675
+vt 0.550022 0.835657
+vt 0.339419 0.752849
+vt 0.401728 0.824341
+vt 0.400585 0.824080
+vt 0.400073 0.827566
+vt 0.551354 0.835199
+vt 0.680980 0.836457
+vt 0.678668 0.839524
+vt 0.680012 0.836087
+vt 0.174292 0.117419
+vt 0.167245 0.118072
+vt 0.810628 0.118072
+vt 0.803897 0.118072
+vt 0.185572 0.115458
+vt 0.196023 0.113497
+vt 0.200588 0.112844
+vt 0.873449 0.808443
+vt 0.880180 0.808443
+vt 0.207643 0.730692
+vt 0.208057 0.730567
+vt 0.279432 0.733605
+vt 0.755860 0.867768
+vt 0.755562 0.867768
+vt 0.755461 0.867137
+vt 0.755835 0.867180
+vt 0.278537 0.749180
+vt 0.755562 0.866467
+vt 0.755860 0.866523
+vt 0.208710 0.730375
+vt 0.210891 0.727968
+vt 0.210103 0.728261
+vt 0.211096 0.726398
+vt 0.210914 0.726446
+vt 0.417115 0.845457
+vt 0.415143 0.845956
+vt 0.415034 0.840800
+vt 0.416807 0.840493
+vt 0.737701 0.846542
+vt 0.739333 0.845893
+vt 0.413038 0.845685
+vt 0.413140 0.840697
+vt 0.726922 0.849425
+vt 0.471103 0.836601
+vt 0.472871 0.836614
+vt 0.492115 0.766220
+vt 0.653101 0.836009
+vt 0.651367 0.836008
+vt 0.486743 0.111394
+vt 0.486787 0.112687
+vt 0.422890 0.839171
+vt 0.424657 0.839159
+vt 0.779128 0.843460
+vt 0.780784 0.843506
+vt 0.781820 0.843524
+vt 0.650035 0.835960
+vt 0.434211 0.835187
+vt 0.432420 0.835109
+vt 0.567113 0.849131
+vt 0.617643 0.724413
+vt 0.609423 0.725166
+vt 0.419446 0.349600
+vt 0.417788 0.353234
+vt 0.420123 0.344233
+vt 0.421320 0.333367
+vt 0.420021 0.336524
+vt 0.279073 0.751975
+vt 0.279626 0.754748
+vt 0.293230 0.711354
+vt 0.023951 0.352678
+vt 0.019564 0.349341
+vt 0.014597 0.348528
+vt 0.029675 0.360940
+vt 0.120043 0.634324
+vt 0.438323 0.647765
+vt 0.441792 0.645570
+vt 0.162671 0.802938
+vt 0.162423 0.807367
+vt 0.160651 0.806822
+vt 0.161026 0.802517
+vt 0.799112 0.837219
+vt 0.798242 0.838665
+vt 0.801100 0.841685
+vt 0.696700 0.845992
+vt 0.164318 0.807141
+vt 0.164427 0.802813
+vt 0.379889 0.828234
+vt 0.378249 0.828366
+vt 0.180199 0.716407
+vt 0.179959 0.715465
+vt 0.549159 0.833120
+vt 0.550642 0.832402
+vt 0.337063 0.753722
+vt 0.796575 0.869303
+vt 0.796237 0.868257
+vt 0.797380 0.867223
+vt 0.798315 0.868441
+vt 0.246388 0.722162
+vt 0.248282 0.721874
+vt 0.250054 0.722406
+vt 0.548891 0.507263
+vt 0.541844 0.506609
+vt 0.797167 0.118072
+vt 0.560171 0.509223
+vt 0.575186 0.511838
+vt 0.570622 0.511184
+vt 0.866719 0.808443
+vt 0.755500 0.865560
+vt 0.755715 0.865627
+vt 0.207889 0.728783
+vt 0.208199 0.728690
+vt 0.279578 0.732809
+vt 0.208694 0.728565
+vt 0.209350 0.728441
+vt 0.210627 0.726580
+vt 0.486679 0.108701
+vt 0.486697 0.109738
+vt 0.731638 0.846747
+vt 0.730121 0.846165
+vt 0.777835 0.843416
+vt 0.740850 0.845311
+vt 0.652231 0.833547
+vt 0.650747 0.832811
+vt 0.493805 0.764360
+vt 0.350022 0.824586
+vt 0.352127 0.824315
+vt 0.351854 0.828201
+vt 0.349960 0.828304
+vt 0.728489 0.845516
+vt 0.348188 0.827996
+vt 0.348050 0.824087
+vt 0.568332 0.850361
+vt 0.618052 0.738205
+vt 0.624398 0.722768
+vt 0.626962 0.736336
+vt 0.726239 0.657070
+vt 0.719086 0.659777
+vt 0.709386 0.656423
+vt 0.401997 0.671357
+vt 0.398842 0.667284
+vt 0.385171 0.657957
+vt 0.391793 0.655119
+vt 0.301365 0.711315
+vt 0.293810 0.714091
+vt 0.024911 0.357305
+vt 0.022617 0.360474
+vt 0.282174 0.715430
+vt 0.278555 0.713993
+vt 0.450122 0.645665
+vt 0.096738 0.635680
+vt 0.101121 0.633907
+vt 0.466118 0.646147
+vt 0.469170 0.647384
+vt 0.463620 0.641891
+vt 0.118652 0.629611
+vt 0.114037 0.627828
+vt 0.105417 0.633719
+vt 0.108666 0.629306
+vt 0.179736 0.713891
+vt 0.179636 0.712630
+vt 0.237709 0.808521
+vt 0.236069 0.808389
+vt 0.694688 0.850441
+vt 0.693917 0.849071
+vt 0.683908 0.833126
+vt 0.682648 0.833027
+vt 0.548562 0.831820
+vt 0.550343 0.830763
+vt 0.399618 0.825298
+vt 0.551400 0.832931
+vt 0.681074 0.832803
+vt 0.680132 0.832563
+vt 0.172418 0.101989
+vt 0.165840 0.102778
+vt 0.810004 0.102778
+vt 0.803897 0.102778
+vt 0.182557 0.099622
+vt 0.191902 0.097255
+vt 0.196097 0.096466
+vt 0.873449 0.824821
+vt 0.879556 0.824821
+vt 0.208411 0.727221
+vt 0.208594 0.727157
+vt 0.208955 0.726425
+vt 0.209032 0.726367
+vt 0.756022 0.867692
+vt 0.756022 0.867192
+vt 0.756022 0.866616
+vt 0.210246 0.726836
+vt 0.209769 0.727044
+vt 0.755861 0.865810
+vt 0.414786 0.835924
+vt 0.416431 0.835751
+vt 0.737447 0.841800
+vt 0.739114 0.841533
+vt 0.413031 0.835940
+vt 0.471596 0.832397
+vt 0.473236 0.832521
+vt 0.652828 0.832571
+vt 0.651046 0.831687
+vt 0.482603 0.111134
+vt 0.482983 0.112677
+vt 0.483361 0.113884
+vt 0.423421 0.842597
+vt 0.425061 0.842473
+vt 0.779310 0.839323
+vt 0.780517 0.839701
+vt 0.782060 0.840080
+vt 0.783024 0.840209
+vt 0.649989 0.833686
+vt 0.433787 0.832913
+vt 0.432436 0.832144
+vt 0.605263 0.743254
+vt 0.599661 0.737871
+vt 0.604395 0.723508
+vt 0.416430 0.339237
+vt 0.407554 0.343265
+vt 0.405083 0.347239
+vt 0.406923 0.325593
+vt 0.404274 0.330189
+vt 0.310386 0.714684
+vt 0.307145 0.717386
+vt 0.285203 0.718186
+vt 0.017727 0.358416
+vt 0.012125 0.355985
+vt 0.006257 0.355684
+vt 0.579664 0.777900
+vt 0.588653 0.778499
+vt 0.579556 0.788555
+vt 0.574794 0.785843
+vt 0.795152 0.832578
+vt 0.790533 0.830375
+vt 0.793761 0.819804
+vt 0.798176 0.821587
+vt 0.445723 0.642081
+vt 0.435559 0.640738
+vt 0.439406 0.639344
+vt 0.462635 0.637371
+vt 0.102599 0.629131
+vt 0.161707 0.799911
+vt 0.162959 0.799305
+vt 0.796507 0.836909
+vt 0.795124 0.837795
+vt 0.797471 0.840035
+vt 0.693047 0.847625
+vt 0.164169 0.800125
+vt 0.378164 0.826008
+vt 0.379220 0.825050
+vt 0.177704 0.714945
+vt 0.177015 0.715552
+vt 0.398586 0.824770
+vt 0.399650 0.823131
+vt 0.016847 0.794590
+vt 0.016506 0.790960
+vt 0.018401 0.791187
+vt 0.018602 0.794715
+vt 0.020173 0.790641
+vt 0.020247 0.794294
+vt 0.547017 0.522692
+vt 0.540439 0.521903
+vt 0.797791 0.102778
+vt 0.557156 0.525059
+vt 0.867343 0.824821
+vt 0.570696 0.528215
+vt 0.566501 0.527426
+vt 0.208892 0.727113
+vt 0.209294 0.727129
+vt 0.210108 0.726037
+vt 0.210000 0.726128
+vt 0.482474 0.110170
+vt 0.731866 0.841990
+vt 0.730307 0.841786
+vt 0.740673 0.841328
+vt 0.351514 0.832184
+vt 0.349759 0.832168
+vt 0.728641 0.841518
+vt 0.348114 0.831994
+vt 0.434547 0.832038
+vt 0.432949 0.830914
+vt 0.406892 0.337584
+vt 0.628431 0.746463
+vt 0.621879 0.749493
+vt 0.720805 0.651007
+vt 0.717266 0.653514
+vt 0.710395 0.649467
+vt 0.710009 0.666702
+vt 0.704276 0.656327
+vt 0.398751 0.656909
+vt 0.380266 0.647816
+vt 0.384796 0.646174
+vt 0.021327 0.713774
+vt 0.029354 0.717269
+vt 0.029934 0.721285
+vt 0.021461 0.717537
+vt 0.028208 0.726043
+vt 0.037489 0.725165
+vt 0.035623 0.732064
+vt 0.019307 0.362103
+vt 0.897476 0.938994
+vt 0.903080 0.944485
+vt 0.900786 0.947951
+vt 0.895199 0.942680
+vt 0.907843 0.952057
+vt 0.898854 0.952068
+vt 0.895410 0.950060
+vt 0.276891 0.723725
+vt 0.274926 0.720796
+vt 0.272405 0.719078
+vt 0.825674 0.860491
+vt 0.821381 0.863542
+vt 0.818537 0.852398
+vt 0.822994 0.850765
+vt 0.094058 0.628791
+vt 0.098591 0.627065
+vt 0.477263 0.639017
+vt 0.475727 0.634296
+vt 0.797455 0.807659
+vt 0.789146 0.818835
+vt 0.792976 0.806502
+vt 0.642238 0.802165
+vt 0.648696 0.812945
+vt 0.643716 0.814566
+vt 0.636957 0.802916
+vt 0.638800 0.817199
+vt 0.648129 0.820555
+vt 0.644869 0.828056
+vt 0.176856 0.713688
+vt 0.177626 0.712851
+vt 0.237070 0.810531
+vt 0.235761 0.811102
+vt 0.692001 0.850688
+vt 0.690689 0.849856
+vt 0.683130 0.830769
+vt 0.682096 0.830009
+vt 0.681035 0.830691
+vt 0.680233 0.829850
+vt 0.169543 0.088409
+vt 0.163668 0.089344
+vt 0.809344 0.089344
+vt 0.803897 0.089344
+vt 0.178382 0.085602
+vt 0.186527 0.082796
+vt 0.873449 0.839426
+vt 0.878896 0.839426
+vt 0.190322 0.081861
+vt 0.209164 0.726384
+vt 0.209531 0.726075
+vt 0.209551 0.726159
+vt 0.209897 0.726332
+vt 0.209604 0.726409
+vt 0.415750 0.833218
+vt 0.414499 0.832394
+vt 0.738132 0.839267
+vt 0.739470 0.838315
+vt 0.413289 0.833355
+vt 0.473321 0.830624
+vt 0.472265 0.829762
+vt 0.480705 0.112457
+vt 0.479839 0.112151
+vt 0.480387 0.113939
+vt 0.481414 0.114429
+vt 0.424061 0.844544
+vt 0.425369 0.845028
+vt 0.780912 0.837426
+vt 0.782154 0.837107
+vt 0.782885 0.838135
+vt 0.783942 0.837655
+vt 0.615133 0.753511
+vt 0.398550 0.342674
+vt 0.394163 0.345458
+vt 0.593988 0.748790
+vt 0.596205 0.753758
+vt 0.396782 0.317772
+vt 0.395177 0.321176
+vt 0.728540 0.646943
+vt 0.723573 0.646225
+vt 0.043269 0.729648
+vt 0.040854 0.734049
+vt 0.317259 0.723023
+vt 0.313630 0.725402
+vt 0.020079 0.722780
+vt 0.601198 0.846846
+vt 0.598091 0.843159
+vt 0.606544 0.833875
+vt 0.609915 0.837110
+vt 0.013498 0.368152
+vt 0.008203 0.366465
+vt 0.002788 0.366782
+vt 0.569967 0.784145
+vt 0.576602 0.771447
+vt 0.573131 0.799546
+vt 0.567925 0.797852
+vt 0.801831 0.809181
+vt 0.448311 0.639570
+vt 0.454205 0.641499
+vt 0.443148 0.636594
+vt 0.432201 0.635653
+vt 0.436232 0.634612
+vt 0.012928 0.713454
+vt 0.013015 0.709832
+vt 0.474995 0.629470
+vt 0.012303 0.741491
+vt 0.014693 0.728978
+vt 0.018442 0.733062
+vt 0.016534 0.742977
+vt 0.783183 0.802242
+vt 0.778596 0.806243
+vt 0.774084 0.803441
+vt 0.779923 0.794740
+vt 0.783371 0.807532
+vt 0.776529 0.816321
+vt 0.771639 0.815512
+vt 0.631713 0.804590
+vt 0.795900 0.836209
+vt 0.794209 0.837411
+vt 0.795458 0.839057
+vt 0.690952 0.848541
+vt 0.164748 0.798813
+vt 0.163186 0.797614
+vt 0.377348 0.825249
+vt 0.378612 0.824087
+vt 0.176053 0.714015
+vt 0.017432 0.796603
+vt 0.018756 0.797427
+vt 0.019893 0.796389
+vt 0.544142 0.536273
+vt 0.538267 0.535337
+vt 0.798451 0.089344
+vt 0.552980 0.539079
+vt 0.868003 0.839426
+vt 0.564921 0.542820
+vt 0.561126 0.541885
+vt 0.209330 0.726506
+vt 0.731093 0.839405
+vt 0.729831 0.838498
+vt 0.740516 0.839095
+vt 0.350929 0.834417
+vt 0.349605 0.835142
+vt 0.728709 0.839233
+vt 0.348468 0.834280
+vt 0.604813 0.751037
+vt 0.612802 0.755760
+vt 0.399510 0.337262
+vt 0.397216 0.332724
+vt 0.632213 0.753883
+vt 0.628020 0.757933
+vt 0.713641 0.645525
+vt 0.697481 0.645749
+vt 0.699542 0.641492
+vt 0.403198 0.646331
+vt 0.404476 0.657005
+vt 0.398224 0.647568
+vt 0.393516 0.645794
+vt 0.391532 0.645606
+vt 0.386996 0.641194
+vt 0.374255 0.641499
+vt 0.378418 0.639715
+vt 0.030152 0.735259
+vt 0.026850 0.729561
+vt 0.594405 0.840401
+vt 0.602900 0.831097
+vt 0.889229 0.944642
+vt 0.895792 0.955438
+vt 0.890614 0.950207
+vt 0.562682 0.797082
+vt 0.444420 0.633964
+vt 0.271482 0.726211
+vt 0.276804 0.726315
+vt 0.269744 0.729178
+vt 0.268554 0.724780
+vt 0.268353 0.722538
+vt 0.820938 0.841285
+vt 0.816404 0.842323
+vt 0.827526 0.849912
+vt 0.825497 0.840623
+vt 0.487337 0.636006
+vt 0.486490 0.631388
+vt 0.796325 0.799568
+vt 0.800393 0.797963
+vt 0.639434 0.789832
+vt 0.634504 0.789933
+vt 0.766854 0.813901
+vt 0.029345 0.747880
+vt 0.024431 0.737023
+vt 0.033587 0.745599
+vt 0.237633 0.811301
+vt 0.236042 0.812105
+vt 0.845474 0.996656
+vt 0.844212 0.996192
+vt 0.844105 0.994867
+vt 0.845858 0.994947
+vt 0.681519 0.828848
+vt 0.166078 0.076581
+vt 0.160966 0.077640
+vt 0.808706 0.077640
+vt 0.803897 0.077640
+vt 0.173607 0.073403
+vt 0.183916 0.069166
+vt 0.180553 0.070225
+vt 0.873449 0.852121
+vt 0.878258 0.852121
+vt 0.737709 0.838443
+vt 0.739455 0.837323
+vt 0.412710 0.832448
+vt 0.414271 0.831273
+vt 0.748469 0.866529
+vt 0.747652 0.867771
+vt 0.746597 0.867346
+vt 0.747204 0.865560
+vt 0.479520 0.113937
+vt 0.423498 0.845570
+vt 0.425088 0.846438
+vt 0.783123 0.836245
+vt 0.597253 0.756460
+vt 0.623546 0.762166
+vt 0.585204 0.750628
+vt 0.592079 0.744404
+vt 0.586709 0.756230
+vt 0.588252 0.762097
+vt 0.390464 0.309059
+vt 0.388752 0.312002
+vt 0.395285 0.330878
+vt 0.390414 0.324021
+vt 0.725978 0.640591
+vt 0.731000 0.639523
+vt 0.718511 0.643300
+vt 0.700943 0.636972
+vt 0.712544 0.808524
+vt 0.721869 0.815470
+vt 0.712356 0.814708
+vt 0.707769 0.810175
+vt 0.049754 0.736562
+vt 0.046703 0.740192
+vt 0.053383 0.733860
+vt 0.063071 0.744958
+vt 0.059426 0.747737
+vt 0.011345 0.717484
+vt 0.022489 0.728724
+vt 0.038148 0.744762
+vt 0.614639 0.829812
+vt 0.614025 0.825235
+vt 0.010577 0.375450
+vt 0.006552 0.376770
+vt 0.003295 0.374830
+vt 0.570292 0.811951
+vt 0.565374 0.810957
+vt 0.802885 0.801552
+vt 0.018226 0.727167
+vt 0.439854 0.632022
+vt 0.430938 0.632193
+vt 0.433266 0.630719
+vt 0.486209 0.626719
+vt 0.009305 0.753851
+vt 0.013800 0.754627
+vt 0.020675 0.745725
+vt 0.637783 0.782898
+vt 0.634274 0.780143
+vt 0.773613 0.825610
+vt 0.768944 0.825329
+vt 0.629587 0.790928
+vt 0.032965 0.760490
+vt 0.037284 0.758687
+vt 0.689914 0.848269
+vt 0.689489 0.850023
+vt 0.540677 0.548100
+vt 0.535565 0.547041
+vt 0.799089 0.077640
+vt 0.548206 0.551278
+vt 0.868641 0.852121
+vt 0.558515 0.555515
+vt 0.555152 0.554456
+vt 0.351394 0.835197
+vt 0.349685 0.836189
+vt 0.728070 0.838370
+vt 0.729538 0.837323
+vt 0.087731 0.756435
+vt 0.086054 0.748446
+vt 0.091809 0.748345
+vt 0.095004 0.756430
+vt 0.621510 0.763780
+vt 0.393906 0.337602
+vt 0.392326 0.342453
+vt 0.826904 0.800170
+vt 0.835893 0.799867
+vt 0.828836 0.806400
+vt 0.823459 0.804336
+vt 0.391630 0.333042
+vt 0.721008 0.638902
+vt 0.728430 0.635528
+vt 0.733175 0.634104
+vt 0.638006 0.759302
+vt 0.635369 0.763182
+vt 0.715907 0.639711
+vt 0.710456 0.641236
+vt 0.686259 0.638619
+vt 0.687355 0.633897
+vt 0.402167 0.639201
+vt 0.397432 0.640678
+vt 0.392842 0.638952
+vt 0.851649 0.966011
+vt 0.847236 0.970409
+vt 0.842320 0.967534
+vt 0.848304 0.959135
+vt 0.380302 0.634435
+vt 0.638220 0.848418
+vt 0.634057 0.850634
+vt 0.627137 0.840180
+vt 0.631116 0.837821
+vt 0.331257 0.810743
+vt 0.326189 0.816923
+vt 0.322627 0.812128
+vt 0.328770 0.805039
+vt 0.006369 0.714403
+vt 0.005868 0.710555
+vt 0.015237 0.723276
+vt 0.008824 0.719373
+vt 0.893272 0.930540
+vt 0.891307 0.934185
+vt 0.888535 0.927639
+vt 0.889225 0.923059
+vt 0.885893 0.935765
+vt 0.068304 0.753007
+vt 0.067847 0.757722
+vt 0.041806 0.757699
+vt 0.560445 0.810855
+vt 0.568611 0.819581
+vt 0.565087 0.821642
+vt 0.058409 0.797055
+vt 0.063280 0.790641
+vt 0.065910 0.793015
+vt 0.061338 0.799020
+vt 0.265688 0.727721
+vt 0.428656 0.629951
+vt 0.431505 0.627009
+vt 0.816577 0.836807
+vt 0.819608 0.834273
+vt 0.823313 0.835547
+vt 0.492854 0.634354
+vt 0.494341 0.630939
+vt 0.795901 0.796813
+vt 0.801356 0.794740
+vt 0.018219 0.756185
+vt 0.764326 0.824482
+vt 0.041374 0.772629
+vt 0.036998 0.774152
+vt 0.162436 0.066411
+vt 0.157975 0.067538
+vt 0.808150 0.067538
+vt 0.803897 0.067538
+vt 0.168796 0.063030
+vt 0.873449 0.862766
+vt 0.877702 0.862766
+vt 0.177530 0.058521
+vt 0.174634 0.059648
+vt 0.087616 0.772996
+vt 0.085854 0.765043
+vt 0.090112 0.763995
+vt 0.092106 0.772457
+vt 0.095245 0.764271
+vt 0.091159 0.740124
+vt 0.084519 0.739738
+vt 0.082564 0.730019
+vt 0.079454 0.737703
+vt 0.077739 0.728687
+vt 0.632561 0.767002
+vt 0.445022 0.840281
+vt 0.444688 0.831492
+vt 0.449539 0.831066
+vt 0.449681 0.839930
+vt 0.576339 0.754857
+vt 0.577158 0.760152
+vt 0.577919 0.765566
+vt 0.630315 0.853577
+vt 0.623359 0.842862
+vt 0.383546 0.313946
+vt 0.149572 0.808239
+vt 0.146989 0.803413
+vt 0.149639 0.798542
+vt 0.155070 0.801777
+vt 0.723735 0.634360
+vt 0.719115 0.634683
+vt 0.100735 0.739973
+vt 0.097550 0.734927
+vt 0.110248 0.737117
+vt 0.110496 0.741594
+vt 0.688512 0.629072
+vt 0.705702 0.799653
+vt 0.700813 0.800871
+vt 0.703258 0.812485
+vt 0.709011 0.821583
+vt 0.840477 0.980048
+vt 0.835233 0.978096
+vt 0.056055 0.750972
+vt 0.003008 0.715165
+vt 0.884485 0.926642
+vt 0.011057 0.380027
+vt 0.005925 0.382890
+vt 0.001812 0.379545
+vt 0.045853 0.771472
+vt 0.569571 0.823169
+vt 0.565005 0.826393
+vt 0.436607 0.629503
+vt 0.001812 0.710361
+vt 0.772001 0.830686
+vt 0.768546 0.832614
+vt 0.492344 0.627704
+vt 0.006980 0.765065
+vt 0.011539 0.765727
+vt 0.630884 0.783390
+vt 0.016074 0.766765
+vt 0.040507 0.781689
+vt 0.044595 0.783409
+vt 0.537035 0.558270
+vt 0.532574 0.557143
+vt 0.799645 0.067538
+vt 0.543394 0.561652
+vt 0.869197 0.862766
+vt 0.552129 0.566160
+vt 0.549232 0.565033
+vt 0.096058 0.743341
+vt 0.095627 0.747796
+vt 0.099606 0.751863
+vt 0.087439 0.729452
+vt 0.440128 0.830914
+vt 0.440443 0.840106
+vt 0.818664 0.802580
+vt 0.823670 0.794739
+vt 0.823249 0.814202
+vt 0.817279 0.812697
+vt 0.385588 0.325040
+vt 0.378303 0.314173
+vt 0.523949 0.833945
+vt 0.527845 0.830883
+vt 0.532387 0.836867
+vt 0.528167 0.841154
+vt 0.726421 0.630984
+vt 0.730273 0.630910
+vt 0.733174 0.630852
+vt 0.641420 0.762554
+vt 0.641354 0.765912
+vt 0.524265 0.847510
+vt 0.533195 0.845188
+vt 0.530994 0.850727
+vt 0.095284 0.737802
+vt 0.102883 0.746834
+vt 0.676081 0.635608
+vt 0.676483 0.630989
+vt 0.464469 0.836601
+vt 0.465446 0.846779
+vt 0.460711 0.846453
+vt 0.459825 0.836867
+vt 0.456121 0.846898
+vt 0.455262 0.837502
+vt 0.696027 0.802029
+vt 0.111281 0.754343
+vt 0.107908 0.757781
+vt 0.371314 0.636911
+vt 0.372907 0.631982
+vt 0.625968 0.832095
+vt 0.621613 0.831687
+vt 0.883525 0.944359
+vt 0.880598 0.935006
+vt 0.884093 0.920487
+vt 0.063110 0.757469
+vt 0.561712 0.819088
+vt 0.440517 0.629093
+vt 0.436309 0.626320
+vt 0.495388 0.635248
+vt 0.497714 0.630722
+vt 0.142111 0.811870
+vt 0.145566 0.812679
+vt 0.146573 0.816383
+vt 0.142046 0.816888
+vt 0.007071 0.771201
+vt 0.010043 0.773850
+vt 0.040231 0.784937
+vt 0.045685 0.787011
+vt 0.765351 0.830177
+vt 0.158451 0.057471
+vt 0.154680 0.058586
+vt 0.807673 0.058586
+vt 0.803897 0.058586
+vt 0.163823 0.054125
+vt 0.873449 0.871623
+vt 0.877226 0.871623
+vt 0.171224 0.049664
+vt 0.168760 0.050780
+vt 0.088040 0.783329
+vt 0.092619 0.783154
+vt 0.096887 0.772921
+vt 0.105833 0.761928
+vt 0.519993 0.836838
+vt 0.084788 0.723419
+vt 0.080927 0.721864
+vt 0.077919 0.723115
+vt 0.638133 0.767816
+vt 0.448682 0.845444
+vt 0.445297 0.847492
+vt 0.570825 0.757777
+vt 0.569110 0.761803
+vt 0.571502 0.765059
+vt 0.620220 0.835828
+vt 0.385913 0.301286
+vt 0.380995 0.302610
+vt 0.811575 0.811230
+vt 0.722148 0.630465
+vt 0.725796 0.627595
+vt 0.111981 0.746337
+vt 0.122679 0.738338
+vt 0.122172 0.742870
+vt 0.677185 0.626320
+vt 0.702787 0.790257
+vt 0.698118 0.790960
+vt 0.840869 0.964161
+vt 0.833559 0.975161
+vt 0.833107 0.989913
+vt 0.838025 0.991237
+vt 0.366165 0.635261
+vt 0.365804 0.631752
+vt 0.881253 0.927951
+vt 0.064420 0.760978
+vt 0.070575 0.761067
+vt 0.047067 0.779705
+vt 0.560612 0.822792
+vt 0.494994 0.626477
+vt 0.013807 0.772460
+vt 0.533050 0.567210
+vt 0.529279 0.566095
+vt 0.800121 0.058586
+vt 0.538422 0.570556
+vt 0.869673 0.871623
+vt 0.545823 0.575017
+vt 0.543359 0.573902
+vt 0.089043 0.726559
+vt 0.085395 0.719982
+vt 0.819357 0.823394
+vt 0.813942 0.822633
+vt 0.441836 0.845583
+vt 0.089123 0.789746
+vt 0.092476 0.792000
+vt 0.384232 0.294253
+vt 0.380708 0.292795
+vt 0.376066 0.302254
+vt 0.116699 0.769011
+vt 0.118908 0.764944
+vt 0.730849 0.626611
+vt 0.734741 0.627494
+vt 0.670831 0.633956
+vt 0.668971 0.630541
+vt 0.462765 0.831351
+vt 0.459148 0.829762
+vt 0.455945 0.832018
+vt 0.693499 0.791361
+vt 0.122437 0.747548
+vt 0.121844 0.761298
+vt 0.133660 0.768968
+vt 0.130979 0.772746
+vt 0.361811 0.636226
+vt 0.359988 0.631661
+vt 0.014624 0.774897
+vt 0.009606 0.776570
+vt 0.153958 0.049332
+vt 0.151068 0.050331
+vt 0.807275 0.050331
+vt 0.803897 0.050331
+vt 0.158567 0.046333
+vt 0.873449 0.878952
+vt 0.876827 0.878952
+vt 0.165054 0.042335
+vt 0.162923 0.043335
+vt 0.097278 0.783505
+vt 0.080343 0.717845
+vt 0.076450 0.719895
+vt 0.816585 0.828871
+vt 0.812535 0.830642
+vt 0.130567 0.803072
+vt 0.130088 0.806457
+vt 0.126062 0.807788
+vt 0.125435 0.803235
+vt 0.569248 0.766542
+vt 0.566337 0.762430
+vt 0.385192 0.290112
+vt 0.380626 0.287284
+vt 0.808648 0.821814
+vt 0.128619 0.776725
+vt 0.134006 0.739448
+vt 0.133371 0.744011
+vt 0.671318 0.627305
+vt 0.701175 0.784774
+vt 0.697720 0.783148
+vt 0.133105 0.748655
+vt 0.139922 0.774438
+vt 0.140434 0.778844
+vt 0.366444 0.628361
+vt 0.371914 0.627065
+vt 0.528557 0.575350
+vt 0.525666 0.574350
+vt 0.800520 0.050331
+vt 0.533165 0.578348
+vt 0.870072 0.878952
+vt 0.539653 0.582346
+vt 0.537521 0.581347
+vt 0.125828 0.798542
+vt 0.129877 0.799611
+vt 0.095970 0.789885
+vt 0.377333 0.294685
+vt 0.136188 0.780185
+vt 0.139873 0.741246
+vt 0.141589 0.744838
+vt 0.184813 0.811192
+vt 0.188228 0.812266
+vt 0.189122 0.815883
+vt 0.184595 0.816047
+vt 0.702182 0.782517
+vt 0.697655 0.780143
+vt 0.694524 0.785261
+vt 0.362038 0.627268
+vt 0.149956 0.041645
+vt 0.147812 0.042444
+vt 0.806914 0.042444
+vt 0.803897 0.042444
+vt 0.154035 0.039248
+vt 0.873449 0.885235
+vt 0.876466 0.885235
+vt 0.159920 0.036052
+vt 0.158029 0.036851
+vt 0.809303 0.828194
+vt 0.097192 0.792332
+vt 0.092499 0.794912
+vt 0.376233 0.290439
+vt 0.142220 0.740322
+vt 0.144323 0.745176
+vt 0.139205 0.748066
+vt 0.524555 0.583036
+vt 0.522411 0.582237
+vt 0.800881 0.042444
+vt 0.528634 0.585433
+vt 0.870433 0.885235
+vt 0.534519 0.588630
+vt 0.532628 0.587830
+vt 0.693411 0.782877
+vt 0.147446 0.034063
+vt 0.145587 0.034596
+vt 0.806553 0.034597
+vt 0.803897 0.034596
+vt 0.151237 0.032464
+vt 0.873449 0.890956
+vt 0.876105 0.890956
+vt 0.156722 0.030331
+vt 0.154988 0.030864
+vt 0.522044 0.590618
+vt 0.520186 0.590085
+vt 0.801242 0.034597
+vt 0.525836 0.592217
+vt 0.870794 0.890956
+vt 0.531321 0.594350
+vt 0.529586 0.593817
+vt 0.146083 0.027187
+vt 0.144280 0.027473
+vt 0.806244 0.027473
+vt 0.803897 0.027473
+vt 0.149706 0.026329
+vt 0.873449 0.896103
+vt 0.875796 0.896103
+vt 0.154908 0.025184
+vt 0.153274 0.025470
+vt 0.520682 0.597494
+vt 0.518879 0.597208
+vt 0.801550 0.027473
+vt 0.524305 0.598352
+vt 0.871102 0.896103
+vt 0.529507 0.599497
+vt 0.527873 0.599211
+vt 0.145526 0.021617
+vt 0.143781 0.021760
+vt 0.806042 0.021760
+vt 0.803897 0.021760
+vt 0.148975 0.021190
+vt 0.873449 0.900666
+vt 0.875594 0.900666
+vt 0.153924 0.020621
+vt 0.152363 0.020763
+vt 0.520124 0.603064
+vt 0.518380 0.602922
+vt 0.801752 0.021760
+vt 0.523574 0.603491
+vt 0.871304 0.900666
+vt 0.528523 0.604060
+vt 0.526961 0.603918
+vt 0.144487 0.016115
+vt 0.146057 0.016068
+vt 0.803897 0.016109
+vt 0.805780 0.016115
+vt 0.149121 0.015905
+vt 0.873449 0.903656
+vt 0.874984 0.905258
+vt 0.152113 0.015825
+vt 0.153466 0.016029
+vt 0.519086 0.608566
+vt 0.520656 0.608613
+vt 0.802015 0.016115
+vt 0.523720 0.608777
+vt 0.871915 0.905258
+vt 0.526712 0.608857
+vt 0.528065 0.608652
+vt 0.803897 0.009173
+vt 0.805289 0.009197
+vt 0.146796 0.009197
+vt 0.147961 0.009254
+vt 0.150226 0.009327
+vt 0.873449 0.910490
+vt 0.152385 0.009735
+vt 0.876657 0.905462
+vt 0.875537 0.911552
+vt 0.802505 0.009197
+vt 0.521395 0.615484
+vt 0.522560 0.615428
+vt 0.524825 0.615354
+vt 0.526984 0.614946
+vt 0.870242 0.905462
+vt 0.871362 0.911552
+vt 0.803897 0.005028
+vt 0.804639 0.003619
+vt 0.149627 0.005167
+vt 0.149493 0.003619
+vt 0.151302 0.003881
+vt 0.152363 0.005564
+vt 0.874727 0.915723
+vt 0.873449 0.916856
+vt 0.803156 0.003619
+vt 0.524226 0.619515
+vt 0.524092 0.621063
+vt 0.525900 0.620800
+vt 0.526962 0.619117
+vt 0.872171 0.915723
+vt 0.803897 0.001992
+vt 0.151361 0.001992
+vt 0.152835 0.004431
+vt 0.525960 0.622689
+vt 0.527434 0.620250
+vt 0.139578 0.703549
+vt 0.140245 0.701989
+vt 0.145706 0.693103
+vt 0.143276 0.694879
+vt 0.143967 0.693258
+vt 0.142566 0.696546
+vt 0.141915 0.698071
+vt 0.142438 0.700313
+vt 0.141405 0.699268
+vt 0.140895 0.700465
+vt 0.144644 0.691672
+vt 0.145312 0.690105
+vt 0.146071 0.688324
+vt 0.149015 0.686381
+vt 0.147022 0.686094
+vt 0.148051 0.683680
+vt 0.149045 0.681350
+vt 0.150031 0.679036
+vt 0.357868 0.546126
+vt 0.358064 0.544438
+vt 0.357486 0.541570
+vt 0.855664 0.952839
+vt 0.842332 0.955504
+vn -0.802188 -0.592229 -0.075890
+vn -0.870480 -0.491514 -0.026054
+vn -0.896689 -0.401516 -0.186371
+vn -0.862239 -0.486780 0.139964
+vn -0.870480 -0.491514 -0.026054
+vn -0.817232 -0.568713 0.093265
+vn -0.802188 -0.592229 -0.075890
+vn -0.870480 -0.491514 -0.026054
+vn -0.954874 -0.294230 -0.040541
+vn -0.896689 -0.401516 -0.186371
+vn -0.932402 -0.263024 -0.247880
+vn -0.930305 -0.334221 0.151093
+vn -0.954874 -0.294230 -0.040541
+vn -0.862239 -0.486780 0.139964
+vn -0.870480 -0.491514 -0.026054
+vn -0.846138 -0.353371 0.398974
+vn -0.930305 -0.334221 0.151093
+vn -0.790070 -0.486834 0.372534
+vn -0.862239 -0.486780 0.139964
+vn -0.998287 -0.011119 -0.057444
+vn -0.954874 -0.294230 -0.040541
+vn -0.994880 -0.043471 0.091236
+vn -0.958756 -0.164053 0.232107
+vn -0.930305 -0.334221 0.151093
+vn -0.846138 -0.353371 0.398974
+vn -0.890035 -0.178073 0.419676
+vn -0.930305 -0.334221 0.151093
+vn -0.958756 -0.164053 0.232107
+vn -0.932402 -0.263024 -0.247880
+vn -0.954874 -0.294230 -0.040541
+vn -0.961090 0.006536 -0.276157
+vn -0.998287 -0.011119 -0.057444
+vn -0.896689 -0.401516 -0.186371
+vn -0.932402 -0.263024 -0.247880
+vn -0.841819 -0.396924 -0.365775
+vn -0.901724 -0.172576 -0.396372
+vn -0.932402 -0.263024 -0.247880
+vn -0.961090 0.006536 -0.276157
+vn -0.901724 -0.172576 -0.396372
+vn -0.907909 0.109148 -0.404708
+vn -0.917964 0.233489 -0.320663
+vn -0.961090 0.006536 -0.276157
+vn -0.970288 0.171121 -0.171051
+vn -0.998287 -0.011119 -0.057444
+vn -0.988206 0.149554 -0.032914
+vn -0.961090 0.006536 -0.276157
+vn -0.917964 0.233489 -0.320663
+vn -0.907909 0.109148 -0.404708
+vn -0.886776 0.241453 -0.394118
+vn -0.917964 0.233489 -0.320663
+vn -0.970288 0.171121 -0.171051
+vn -0.869233 0.391531 -0.301891
+vn -0.886776 0.241453 -0.394118
+vn -0.917964 0.233489 -0.320663
+vn -0.842966 0.389407 -0.371174
+vn -0.869233 0.391531 -0.301891
+vn -0.998287 -0.011119 -0.057444
+vn -0.994880 -0.043471 0.091236
+vn -0.988206 0.149554 -0.032914
+vn 0.707002 -0.581892 0.401933
+vn 0.746947 -0.481619 0.458381
+vn 0.634264 -0.565496 0.527184
+vn 0.653410 -0.471389 0.592324
+vn 0.850941 -0.407368 0.331589
+vn 0.746947 -0.481619 0.458381
+vn 0.741072 -0.585674 0.328326
+vn 0.707002 -0.581892 0.401933
+vn 0.746947 -0.481619 0.458381
+vn 0.817988 -0.285301 0.499498
+vn 0.653410 -0.471389 0.592324
+vn 0.700003 -0.310407 0.643151
+vn 0.850941 -0.407368 0.331589
+vn 0.910147 -0.265800 0.317779
+vn 0.746947 -0.481619 0.458381
+vn 0.817988 -0.285301 0.499498
+vn 0.685982 -0.151086 0.711760
+vn 0.700003 -0.310407 0.643151
+vn 0.770530 -0.101576 0.629258
+vn 0.817988 -0.285301 0.499498
+vn 0.867575 -0.013626 0.497119
+vn 0.653410 -0.471389 0.592324
+vn 0.700003 -0.310407 0.643151
+vn 0.449173 -0.486845 0.749150
+vn 0.483310 -0.329464 0.811089
+vn 0.968169 -0.182142 0.171678
+vn 0.910147 -0.265800 0.317779
+vn 0.905803 -0.391739 0.161438
+vn 0.850941 -0.407368 0.331589
+vn 0.910147 -0.265800 0.317779
+vn 0.953514 0.002132 0.301342
+vn 0.817988 -0.285301 0.499498
+vn 0.867575 -0.013626 0.497119
+vn 0.483310 -0.329464 0.811089
+vn 0.700003 -0.310407 0.643151
+vn 0.685982 -0.151086 0.711760
+vn 0.979502 0.103473 0.172827
+vn 0.953514 0.002132 0.301342
+vn 0.975522 -0.135997 0.172806
+vn 0.968169 -0.182142 0.171678
+vn 0.910147 -0.265800 0.317779
+vn 0.867575 -0.013626 0.497119
+vn 0.953514 0.002132 0.301342
+vn 0.868901 0.147170 0.472601
+vn 0.901984 0.166143 0.398523
+vn 0.943025 0.227116 0.243152
+vn 0.953514 0.002132 0.301342
+vn 0.979502 0.103473 0.172827
+vn 0.943025 0.227116 0.243152
+vn 0.938020 0.310128 0.154725
+vn 0.979816 0.137442 0.145153
+vn 0.868901 0.147170 0.472601
+vn 0.769391 0.149514 0.621033
+vn 0.867575 -0.013626 0.497119
+vn 0.770530 -0.101576 0.629258
+vn 0.653166 0.628390 0.422493
+vn 0.199312 0.959119 0.200911
+vn 0.600236 0.763984 0.236738
+vn 0.209769 0.973412 0.092012
+vn 0.314866 0.948571 0.032756
+vn 0.314866 0.948571 0.032756
+vn 0.302435 0.950250 -0.074555
+vn 0.427587 0.903482 -0.029820
+vn 0.653166 0.628390 0.422493
+vn 0.145136 0.915216 0.375920
+vn 0.199312 0.959119 0.200911
+vn 0.314866 0.948571 0.032756
+vn 0.427587 0.903482 -0.029820
+vn 0.600236 0.763984 0.236738
+vn 0.749880 0.641749 0.160742
+vn 0.653166 0.628390 0.422493
+vn 0.682119 0.504826 0.529022
+vn 0.145136 0.915216 0.375920
+vn 0.108725 0.888568 0.445674
+vn 0.584423 -0.793574 0.169384
+vn 0.455070 -0.874693 0.166805
+vn 0.687387 -0.634374 0.353650
+vn 0.697161 -0.615848 0.367013
+vn 0.765922 -0.632535 0.115168
+vn 0.879774 0.458794 -0.124519
+vn 0.686026 0.726536 -0.038912
+vn 0.879774 0.458794 -0.124519
+vn 0.427587 0.903482 -0.029820
+vn 0.686026 0.726536 -0.038912
+vn 0.302435 0.950250 -0.074555
+vn 0.162794 0.819850 0.548948
+vn 0.075822 0.825548 0.559216
+vn 0.682119 0.504826 0.529022
+vn 0.108725 0.888568 0.445674
+vn 0.697161 -0.615848 0.367013
+vn 0.824936 -0.169391 0.539247
+vn 0.687387 -0.634374 0.353650
+vn 0.790295 -0.326492 0.518494
+vn 0.584423 -0.793574 0.169384
+vn 0.687387 -0.634374 0.353650
+vn 0.765922 -0.632535 0.115168
+vn 0.879774 0.458794 -0.124519
+vn 0.906592 -0.352200 0.232478
+vn 0.329559 -0.942149 -0.061203
+vn 0.697161 -0.615848 0.367013
+vn 0.455070 -0.874693 0.166805
+vn 0.427587 0.903482 -0.029820
+vn 0.879774 0.458794 -0.124519
+vn 0.749880 0.641749 0.160742
+vn 0.906592 -0.352200 0.232478
+vn 0.749880 0.641749 0.160742
+vn 0.809541 0.462430 0.361667
+vn 0.600236 0.763984 0.236738
+vn 0.880127 0.212967 0.424290
+vn 0.600236 0.763984 0.236738
+vn 0.880127 0.212967 0.424290
+vn 0.653166 0.628390 0.422493
+vn 0.901600 -0.056841 0.428819
+vn 0.653166 0.628390 0.422493
+vn 0.901600 -0.056841 0.428819
+vn 0.682119 0.504826 0.529022
+vn 0.914435 -0.086336 0.395416
+vn 0.682119 0.504826 0.529022
+vn 0.820743 0.386295 0.420901
+vn 0.162794 0.819850 0.548948
+vn 0.185739 0.745837 0.639709
+vn 0.138987 0.630962 0.763263
+vn 0.185739 0.745837 0.639709
+vn 0.820743 0.386295 0.420901
+vn 0.697161 -0.615848 0.367013
+vn 0.166206 -0.982768 -0.080881
+vn 0.610719 -0.779837 0.137393
+vn 0.139729 -0.984390 -0.107016
+vn 0.697161 -0.615848 0.367013
+vn 0.610719 -0.779837 0.137393
+vn 0.824936 -0.169391 0.539247
+vn 0.937148 0.014000 0.348652
+vn 0.687387 -0.634374 0.353650
+vn 0.790295 -0.326492 0.518494
+vn 0.906592 -0.352200 0.232478
+vn 0.891006 -0.225479 0.394041
+vn 0.166206 -0.982768 -0.080881
+vn 0.697161 -0.615848 0.367013
+vn 0.329559 -0.942149 -0.061203
+vn 0.809541 0.462430 0.361667
+vn 0.749880 0.641749 0.160742
+vn 0.814917 0.476975 0.329250
+vn 0.907248 0.267753 0.324361
+vn 0.820743 0.386295 0.420901
+vn 0.682119 0.504826 0.529022
+vn 0.954316 -0.016602 0.298339
+vn 0.914435 -0.086336 0.395416
+vn 0.689265 -0.722296 0.056597
+vn 0.610719 -0.779837 0.137393
+vn 0.164122 -0.978368 -0.125938
+vn 0.139729 -0.984390 -0.107016
+vn 0.689265 -0.722296 0.056597
+vn 0.164122 -0.978368 -0.125938
+vn 0.216646 -0.975836 -0.028430
+vn 0.824936 -0.169391 0.539247
+vn 0.700436 0.394823 0.594562
+vn 0.790295 -0.326492 0.518494
+vn 0.847619 0.034858 0.529459
+vn 0.749880 0.641749 0.160742
+vn 0.906592 -0.352200 0.232478
+vn 0.907248 0.267753 0.324361
+vn 0.891006 -0.225479 0.394041
+vn 0.814917 0.476975 0.329250
+vn 0.886340 0.017091 0.462720
+vn 0.809541 0.462430 0.361667
+vn 0.874517 -0.120583 0.469765
+vn 0.809541 0.462430 0.361667
+vn 0.874517 -0.120583 0.469765
+vn 0.880127 0.212967 0.424290
+vn 0.878595 -0.236772 0.414742
+vn 0.880127 0.212967 0.424290
+vn 0.878595 -0.236772 0.414742
+vn 0.901600 -0.056841 0.428819
+vn 0.885062 -0.289976 0.364115
+vn 0.914435 -0.086336 0.395416
+vn 0.901600 -0.056841 0.428819
+vn 0.894002 -0.318363 0.315288
+vn 0.885062 -0.289976 0.364115
+vn 0.954316 -0.016602 0.298339
+vn 0.994870 -0.033298 0.095526
+vn 0.820743 0.386295 0.420901
+vn 0.988509 0.139113 0.059146
+vn 0.610719 -0.779837 0.137393
+vn 0.689265 -0.722296 0.056597
+vn 0.937148 0.014000 0.348652
+vn 0.989605 0.030866 0.140460
+vn 0.450007 -0.596988 0.664153
+vn 0.775776 -0.603389 0.184643
+vn 0.380083 -0.923425 0.053136
+vn 0.380083 -0.923425 0.053136
+vn 0.775776 -0.603389 0.184643
+vn 0.689265 -0.722296 0.056597
+vn 0.937148 0.014000 0.348652
+vn 0.746836 0.508101 0.429034
+vn 0.824936 -0.169391 0.539247
+vn 0.700436 0.394823 0.594562
+vn 0.790295 -0.326492 0.518494
+vn 0.847619 0.034858 0.529459
+vn 0.891006 -0.225479 0.394041
+vn 0.910333 0.033014 0.412557
+vn 0.814917 0.476975 0.329250
+vn 0.907248 0.267753 0.324361
+vn 0.886340 0.017091 0.462720
+vn 0.906558 0.137947 0.398903
+vn 0.894002 -0.318363 0.315288
+vn 0.921883 -0.360420 0.142230
+vn 0.914435 -0.086336 0.395416
+vn 0.954316 -0.016602 0.298339
+vn 0.994870 -0.033298 0.095526
+vn 0.954316 -0.016602 0.298339
+vn 0.932439 -0.342330 -0.115621
+vn 0.921883 -0.360420 0.142230
+vn 0.820743 0.386295 0.420901
+vn 0.874237 0.181055 0.450476
+vn 0.138987 0.630962 0.763263
+vn 0.255025 0.001834 0.966933
+vn 0.255025 0.001834 0.966933
+vn 0.874237 0.181055 0.450476
+vn 0.450007 -0.596988 0.664153
+vn 0.775776 -0.603389 0.184643
+vn 0.689265 -0.722296 0.056597
+vn 0.775776 -0.603389 0.184643
+vn 0.989605 0.030866 0.140460
+vn 0.974667 0.210814 0.074709
+vn 0.937148 0.014000 0.348652
+vn 0.989605 0.030866 0.140460
+vn 0.746836 0.508101 0.429034
+vn 0.719698 0.693222 0.038443
+vn 0.746836 0.508101 0.429034
+vn 0.467943 0.725026 0.505339
+vn 0.700436 0.394823 0.594562
+vn 0.655577 0.541425 0.526382
+vn 0.700436 0.394823 0.594562
+vn 0.655577 0.541425 0.526382
+vn 0.847619 0.034858 0.529459
+vn 0.792285 0.410691 0.451239
+vn 0.907248 0.267753 0.324361
+vn 0.891006 -0.225479 0.394041
+vn 0.906558 0.137947 0.398903
+vn 0.910333 0.033014 0.412557
+vn 0.886340 0.017091 0.462720
+vn 0.912630 -0.077822 0.401311
+vn 0.874517 -0.120583 0.469765
+vn 0.883836 -0.245965 0.397913
+vn 0.874517 -0.120583 0.469765
+vn 0.883836 -0.245965 0.397913
+vn 0.878595 -0.236772 0.414742
+vn 0.867442 -0.340718 0.362568
+vn 0.878595 -0.236772 0.414742
+vn 0.867442 -0.340718 0.362568
+vn 0.885062 -0.289976 0.364115
+vn 0.872431 -0.343990 0.347182
+vn 0.921883 -0.360420 0.142230
+vn 0.894002 -0.318363 0.315288
+vn 0.926491 -0.288535 0.241582
+vn 0.882154 -0.357117 0.307038
+vn 0.894002 -0.318363 0.315288
+vn 0.885062 -0.289976 0.364115
+vn 0.882154 -0.357117 0.307038
+vn 0.872431 -0.343990 0.347182
+vn 0.994870 -0.033298 0.095526
+vn 0.932439 -0.342330 -0.115621
+vn 0.988509 0.139113 0.059146
+vn 0.948030 -0.090590 -0.305013
+vn 0.820743 0.386295 0.420901
+vn 0.988509 0.139113 0.059146
+vn 0.874237 0.181055 0.450476
+vn 0.984314 0.175603 0.017026
+vn 0.775776 -0.603389 0.184643
+vn 0.874237 0.181055 0.450476
+vn 0.974667 0.210814 0.074709
+vn 0.984314 0.175603 0.017026
+vn 0.467943 0.725026 0.505339
+vn 0.746836 0.508101 0.429034
+vn 0.588251 0.607970 0.533229
+vn 0.627388 0.757534 0.180351
+vn 0.847619 0.034858 0.529459
+vn 0.792285 0.410691 0.451239
+vn 0.910333 0.033014 0.412557
+vn 0.879206 0.217382 0.423960
+vn 0.886340 0.017091 0.462720
+vn 0.906558 0.137947 0.398903
+vn 0.912630 -0.077822 0.401311
+vn 0.918768 0.025315 0.393985
+vn 0.926491 -0.288535 0.241582
+vn 0.965525 -0.170466 0.196731
+vn 0.921883 -0.360420 0.142230
+vn 0.932439 -0.342330 -0.115621
+vn 0.989605 0.030866 0.140460
+vn 0.974667 0.210814 0.074709
+vn 0.719698 0.693222 0.038443
+vn 0.681637 0.685328 -0.256315
+vn 0.746836 0.508101 0.429034
+vn 0.719698 0.693222 0.038443
+vn 0.627388 0.757534 0.180351
+vn 0.600878 0.799010 -0.022997
+vn 0.588251 0.607970 0.533229
+vn 0.826205 -0.436728 0.355884
+vn 0.467943 0.725026 0.505339
+vn 0.857836 0.191758 0.476808
+vn 0.467943 0.725026 0.505339
+vn 0.857836 0.191758 0.476808
+vn 0.655577 0.541425 0.526382
+vn 0.867426 0.216115 0.448182
+vn 0.655577 0.541425 0.526382
+vn 0.867426 0.216115 0.448182
+vn 0.792285 0.410691 0.451239
+vn 0.841217 0.201283 0.501836
+vn 0.906558 0.137947 0.398903
+vn 0.910333 0.033014 0.412557
+vn 0.918768 0.025315 0.393985
+vn 0.879206 0.217382 0.423960
+vn 0.912630 -0.077822 0.401311
+vn 0.935015 -0.051945 0.350784
+vn 0.883836 -0.245965 0.397913
+vn 0.932396 -0.074789 0.353616
+vn 0.883836 -0.245965 0.397913
+vn 0.932396 -0.074789 0.353616
+vn 0.867442 -0.340718 0.362568
+vn 0.872431 -0.343990 0.347182
+vn 0.926491 -0.288535 0.241582
+vn 0.932396 -0.074789 0.353616
+vn 0.965525 -0.170466 0.196731
+vn 0.926121 -0.049124 0.374014
+vn 0.926491 -0.288535 0.241582
+vn 0.882154 -0.357117 0.307038
+vn 0.932396 -0.074789 0.353616
+vn 0.872431 -0.343990 0.347182
+vn 0.965525 -0.170466 0.196731
+vn 0.989399 0.091871 0.112468
+vn 0.932439 -0.342330 -0.115621
+vn 0.948030 -0.090590 -0.305013
+vn 0.988509 0.139113 0.059146
+vn 0.948030 -0.090590 -0.305013
+vn 0.984314 0.175603 0.017026
+vn 0.877657 0.229455 -0.420796
+vn 0.974667 0.210814 0.074709
+vn 0.984314 0.175603 0.017026
+vn 0.681637 0.685328 -0.256315
+vn 0.877657 0.229455 -0.420796
+vn 0.627388 0.757534 0.180351
+vn 0.943658 -0.261999 0.202153
+vn 0.588251 0.607970 0.533229
+vn 0.826205 -0.436728 0.355884
+vn 0.792285 0.410691 0.451239
+vn 0.841217 0.201283 0.501836
+vn 0.879206 0.217382 0.423960
+vn 0.878165 0.228465 0.420273
+vn 0.918768 0.025315 0.393985
+vn 0.925729 0.017557 0.377780
+vn 0.912630 -0.077822 0.401311
+vn 0.935015 -0.051945 0.350784
+vn 0.965525 -0.170466 0.196731
+vn 0.926121 -0.049124 0.374014
+vn 0.989399 0.091871 0.112468
+vn 0.914822 0.164935 0.368643
+vn 0.948030 -0.090590 -0.305013
+vn 0.989399 0.091871 0.112468
+vn 0.877657 0.229455 -0.420796
+vn 0.928538 0.371235 0.001400
+vn 0.719698 0.693222 0.038443
+vn 0.681637 0.685328 -0.256315
+vn 0.600878 0.799010 -0.022997
+vn 0.726781 0.674125 -0.131701
+vn 0.600878 0.799010 -0.022997
+vn 0.990221 -0.119234 0.072426
+vn 0.627388 0.757534 0.180351
+vn 0.943658 -0.261999 0.202153
+vn 0.826205 -0.436728 0.355884
+vn 0.943658 -0.261999 0.202153
+vn 0.758878 -0.618646 0.203422
+vn 0.797734 -0.590818 0.120642
+vn 0.826205 -0.436728 0.355884
+vn 0.758878 -0.618646 0.203422
+vn 0.857836 0.191758 0.476808
+vn 0.686207 -0.702941 0.187068
+vn 0.857836 0.191758 0.476808
+vn 0.686207 -0.702941 0.187068
+vn 0.867426 0.216115 0.448182
+vn 0.707425 -0.658332 0.257194
+vn 0.867426 0.216115 0.448182
+vn 0.707425 -0.658332 0.257194
+vn 0.841217 0.201283 0.501836
+vn 0.825652 -0.194056 0.529756
+vn 0.918768 0.025315 0.393985
+vn 0.879206 0.217382 0.423960
+vn 0.925729 0.017557 0.377780
+vn 0.878165 0.228465 0.420273
+vn 0.925729 0.017557 0.377780
+vn 0.931467 -0.036296 0.362012
+vn 0.935015 -0.051945 0.350784
+vn 0.943093 -0.019219 0.331974
+vn 0.935015 -0.051945 0.350784
+vn 0.943093 -0.019219 0.331974
+vn 0.932396 -0.074789 0.353616
+vn 0.932173 -0.066736 0.355809
+vn 0.932396 -0.074789 0.353616
+vn 0.932173 -0.066736 0.355809
+vn 0.926121 -0.049124 0.374014
+vn 0.922245 -0.071861 0.379869
+vn 0.681637 0.685328 -0.256315
+vn 0.877657 0.229455 -0.420796
+vn 0.726781 0.674125 -0.131701
+vn 0.928538 0.371235 0.001400
+vn 0.600878 0.799010 -0.022997
+vn 0.726781 0.674125 -0.131701
+vn 0.990221 -0.119234 0.072426
+vn 0.936791 -0.262483 0.231354
+vn 0.990221 -0.119234 0.072426
+vn 0.793535 -0.605829 0.057211
+vn 0.943658 -0.261999 0.202153
+vn 0.797734 -0.590818 0.120642
+vn 0.841217 0.201283 0.501836
+vn 0.651562 0.536727 0.536088
+vn 0.878165 0.228465 0.420273
+vn 0.748815 0.505640 0.428490
+vn 0.931467 -0.036296 0.362012
+vn 0.925729 0.017557 0.377780
+vn 0.921704 -0.058835 0.383406
+vn 0.918903 0.076372 0.387020
+vn 0.926121 -0.049124 0.374014
+vn 0.922245 -0.071861 0.379869
+vn 0.914822 0.164935 0.368643
+vn 0.921182 0.127508 0.367648
+vn 0.989399 0.091871 0.112468
+vn 0.914822 0.164935 0.368643
+vn 0.928538 0.371235 0.001400
+vn 0.859021 0.408454 0.308623
+vn 0.793535 -0.605829 0.057211
+vn 0.990221 -0.119234 0.072426
+vn 0.749104 -0.647509 0.139908
+vn 0.936791 -0.262483 0.231354
+vn 0.758878 -0.618646 0.203422
+vn 0.797734 -0.590818 0.120642
+vn 0.909237 -0.172160 0.379010
+vn 0.969765 -0.158780 0.185321
+vn 0.758878 -0.618646 0.203422
+vn 0.909237 -0.172160 0.379010
+vn 0.686207 -0.702941 0.187068
+vn 0.834475 -0.286291 0.470838
+vn 0.686207 -0.702941 0.187068
+vn 0.834475 -0.286291 0.470838
+vn 0.707425 -0.658332 0.257194
+vn 0.825652 -0.194056 0.529756
+vn 0.825652 -0.194056 0.529756
+vn 0.681197 0.344317 0.646077
+vn 0.841217 0.201283 0.501836
+vn 0.651562 0.536727 0.536088
+vn 0.925729 0.017557 0.377780
+vn 0.878165 0.228465 0.420273
+vn 0.918903 0.076372 0.387020
+vn 0.748815 0.505640 0.428490
+vn 0.921704 -0.058835 0.383406
+vn 0.889115 -0.213203 0.404992
+vn 0.931467 -0.036296 0.362012
+vn 0.934029 -0.047952 0.353964
+vn 0.931467 -0.036296 0.362012
+vn 0.934029 -0.047952 0.353964
+vn 0.943093 -0.019219 0.331974
+vn 0.948771 -0.010789 0.315781
+vn 0.943093 -0.019219 0.331974
+vn 0.948771 -0.010789 0.315781
+vn 0.932173 -0.066736 0.355809
+vn 0.956883 -0.081197 0.278895
+vn 0.922245 -0.071861 0.379869
+vn 0.932173 -0.066736 0.355809
+vn 0.960833 -0.098326 0.259098
+vn 0.956883 -0.081197 0.278895
+vn 0.726781 0.674125 -0.131701
+vn 0.928538 0.371235 0.001400
+vn 0.936791 -0.262483 0.231354
+vn 0.859021 0.408454 0.308623
+vn 0.749104 -0.647509 0.139908
+vn 0.969765 -0.158780 0.185321
+vn 0.793535 -0.605829 0.057211
+vn 0.797734 -0.590818 0.120642
+vn 0.681197 0.344317 0.646077
+vn 0.825652 -0.194056 0.529756
+vn 0.745274 0.235248 0.623879
+vn 0.834475 -0.286291 0.470838
+vn 0.651562 0.536727 0.536088
+vn 0.681197 0.344317 0.646077
+vn 0.084070 0.956916 0.277928
+vn 0.332937 0.791025 0.513257
+vn 0.748815 0.505640 0.428490
+vn 0.651562 0.536727 0.536088
+vn 0.226299 0.908893 0.350290
+vn 0.084070 0.956916 0.277928
+vn 0.889115 -0.213203 0.404992
+vn 0.921704 -0.058835 0.383406
+vn 0.904702 -0.187571 0.382534
+vn 0.921987 -0.072816 0.380312
+vn 0.921704 -0.058835 0.383406
+vn 0.918903 0.076372 0.387020
+vn 0.921987 -0.072816 0.380312
+vn 0.917375 0.091945 0.387260
+vn 0.960833 -0.098326 0.259098
+vn 0.974166 0.105311 0.199777
+vn 0.922245 -0.071861 0.379869
+vn 0.921182 0.127508 0.367648
+vn 0.921182 0.127508 0.367648
+vn 0.833058 0.457105 0.311559
+vn 0.914822 0.164935 0.368643
+vn 0.859021 0.408454 0.308623
+vn 0.749104 -0.647509 0.139908
+vn 0.936791 -0.262483 0.231354
+vn 0.766029 -0.614124 0.189872
+vn 0.941677 0.134673 0.308396
+vn 0.969765 -0.158780 0.185321
+vn 0.749104 -0.647509 0.139908
+vn 0.985135 -0.054273 0.162985
+vn 0.766029 -0.614124 0.189872
+vn 0.909237 -0.172160 0.379010
+vn 0.969765 -0.158780 0.185321
+vn 0.836698 0.294134 0.461977
+vn 0.906339 0.389076 0.164834
+vn 0.834475 -0.286291 0.470838
+vn 0.909237 -0.172160 0.379010
+vn 0.745274 0.235248 0.623879
+vn 0.836698 0.294134 0.461977
+vn 0.681197 0.344317 0.646077
+vn 0.745274 0.235248 0.623879
+vn 0.332937 0.791025 0.513257
+vn 0.407367 0.744171 0.529398
+vn 0.748815 0.505640 0.428490
+vn 0.226299 0.908893 0.350290
+vn 0.729699 0.535175 0.425590
+vn 0.218001 0.907585 0.358839
+vn 0.918903 0.076372 0.387020
+vn 0.748815 0.505640 0.428490
+vn 0.917375 0.091945 0.387260
+vn 0.729699 0.535175 0.425590
+vn 0.904702 -0.187571 0.382534
+vn 0.756582 -0.562955 0.332663
+vn 0.889115 -0.213203 0.404992
+vn 0.702185 -0.585146 0.405637
+vn 0.934029 -0.047952 0.353964
+vn 0.889115 -0.213203 0.404992
+vn 0.493513 -0.759866 0.423141
+vn 0.702185 -0.585146 0.405637
+vn 0.934029 -0.047952 0.353964
+vn 0.940884 -0.008928 0.338610
+vn 0.948771 -0.010789 0.315781
+vn 0.955411 -0.013696 0.294960
+vn 0.948771 -0.010789 0.315781
+vn 0.955411 -0.013696 0.294960
+vn 0.956883 -0.081197 0.278895
+vn 0.970226 -0.023352 0.241073
+vn 0.960833 -0.098326 0.259098
+vn 0.956883 -0.081197 0.278895
+vn 0.991918 -0.085562 -0.093693
+vn 0.994931 -0.100416 0.005306
+vn 0.974166 0.105311 0.199777
+vn 0.960833 -0.098326 0.259098
+vn 0.977571 0.125092 -0.169430
+vn 0.991918 -0.085562 -0.093693
+vn 0.833058 0.457105 0.311559
+vn 0.921182 0.127508 0.367648
+vn 0.851810 0.506183 0.134904
+vn 0.974166 0.105311 0.199777
+vn 0.936791 -0.262483 0.231354
+vn 0.859021 0.408454 0.308623
+vn 0.941677 0.134673 0.308396
+vn 0.833058 0.457105 0.311559
+vn 0.969765 -0.158780 0.185321
+vn 0.985135 -0.054273 0.162985
+vn 0.906339 0.389076 0.164834
+vn 0.851907 0.522626 0.033420
+vn 0.084070 0.956916 0.277928
+vn -0.062903 0.986304 0.152471
+vn 0.226299 0.908893 0.350290
+vn -0.081243 0.966887 0.241930
+vn 0.084070 0.956916 0.277928
+vn 0.332937 0.791025 0.513257
+vn -0.212174 0.967595 0.136906
+vn 0.117166 0.934997 0.334743
+vn 0.808135 -0.482080 0.338403
+vn 0.889527 -0.230052 0.394737
+vn 0.840957 -0.389976 0.375113
+vn 0.888964 -0.221293 0.400965
+vn 0.921987 -0.072816 0.380312
+vn 0.926382 -0.065312 0.370878
+vn 0.904702 -0.187571 0.382534
+vn 0.906734 -0.173320 0.384439
+vn 0.934029 -0.047952 0.353964
+vn 0.493513 -0.759866 0.423141
+vn 0.468518 -0.497213 0.730254
+vn 0.921987 -0.072816 0.380312
+vn 0.917375 0.091945 0.387260
+vn 0.926382 -0.065312 0.370878
+vn 0.914527 0.110118 0.389249
+vn 0.934029 -0.047952 0.353964
+vn 0.468518 -0.497213 0.730254
+vn 0.940884 -0.008928 0.338610
+vn 0.677673 0.173015 0.714721
+vn 0.977571 0.125092 -0.169430
+vn 0.763764 0.616338 -0.191813
+vn 0.974166 0.105311 0.199777
+vn 0.851810 0.506183 0.134904
+vn 0.851810 0.506183 0.134904
+vn 0.867562 0.465070 0.176200
+vn 0.833058 0.457105 0.311559
+vn 0.941677 0.134673 0.308396
+vn 0.766029 -0.614124 0.189872
+vn 0.941677 0.134673 0.308396
+vn 0.985135 -0.054273 0.162985
+vn 0.867562 0.465070 0.176200
+vn 0.836698 0.294134 0.461977
+vn 0.906339 0.389076 0.164834
+vn 0.538008 0.731707 0.418513
+vn 0.656150 0.744291 0.124489
+vn 0.745274 0.235248 0.623879
+vn 0.836698 0.294134 0.461977
+vn 0.407367 0.744171 0.529398
+vn 0.538008 0.731707 0.418513
+vn 0.332937 0.791025 0.513257
+vn 0.407367 0.744171 0.529398
+vn 0.117166 0.934997 0.334743
+vn -0.068081 0.968946 0.237714
+vn 0.084070 0.956916 0.277928
+vn -0.150486 0.986850 0.059007
+vn -0.062903 0.986304 0.152471
+vn -0.036254 0.997522 0.060297
+vn 0.084070 0.956916 0.277928
+vn -0.212174 0.967595 0.136906
+vn -0.150486 0.986850 0.059007
+vn -0.402365 0.915086 -0.026844
+vn 0.917375 0.091945 0.387260
+vn 0.729699 0.535175 0.425590
+vn 0.914527 0.110118 0.389249
+vn 0.647291 0.633765 0.423505
+vn 0.729699 0.535175 0.425590
+vn 0.218001 0.907585 0.358839
+vn 0.647291 0.633765 0.423505
+vn 0.173101 0.917527 0.358023
+vn 0.226299 0.908893 0.350290
+vn -0.081243 0.966887 0.241930
+vn 0.218001 0.907585 0.358839
+vn -0.088536 0.956473 0.278065
+vn 0.493513 -0.759866 0.423141
+vn 0.172984 -0.904044 0.390873
+vn 0.468518 -0.497213 0.730254
+vn 0.315392 -0.716585 0.622121
+vn 0.702185 -0.585146 0.405637
+vn 0.254329 -0.915375 0.312097
+vn 0.493513 -0.759866 0.423141
+vn 0.172984 -0.904044 0.390873
+vn 0.955411 -0.013696 0.294960
+vn 0.940884 -0.008928 0.338610
+vn 0.956089 0.000651 0.293077
+vn 0.912959 0.175891 0.368195
+vn 0.955411 -0.013696 0.294960
+vn 0.956089 0.000651 0.293077
+vn 0.970226 -0.023352 0.241073
+vn 0.974724 0.012417 0.223065
+vn 0.956883 -0.081197 0.278895
+vn 0.970226 -0.023352 0.241073
+vn 0.994931 -0.100416 0.005306
+vn 0.999142 -0.030969 0.027486
+vn 0.994931 -0.100416 0.005306
+vn 0.783087 -0.106289 -0.612762
+vn 0.991918 -0.085562 -0.093693
+vn 0.787073 -0.089423 -0.610344
+vn 0.977571 0.125092 -0.169430
+vn 0.991918 -0.085562 -0.093693
+vn 0.816133 0.055581 -0.575185
+vn 0.787073 -0.089423 -0.610344
+vn 0.763764 0.616338 -0.191813
+vn 0.977571 0.125092 -0.169430
+vn 0.720285 0.505202 -0.475353
+vn 0.816133 0.055581 -0.575185
+vn 0.867562 0.465070 0.176200
+vn 0.851810 0.506183 0.134904
+vn 0.666784 0.743201 -0.055237
+vn 0.763764 0.616338 -0.191813
+vn 0.985135 -0.054273 0.162985
+vn 0.867562 0.465070 0.176200
+vn 0.851907 0.522626 0.033420
+vn 0.666784 0.743201 -0.055237
+vn 0.851907 0.522626 0.033420
+vn 0.514960 0.855058 -0.060761
+vn 0.906339 0.389076 0.164834
+vn 0.656150 0.744291 0.124489
+vn -0.081243 0.966887 0.241930
+vn -0.062903 0.986304 0.152471
+vn -0.377991 0.913137 0.152658
+vn -0.176857 0.968552 0.175009
+vn 0.117166 0.934997 0.334743
+vn -0.068081 0.968946 0.237714
+vn -0.212174 0.967595 0.136906
+vn -0.346466 0.936750 -0.049616
+vn 0.848742 -0.379498 0.368265
+vn 0.884366 -0.195531 0.423869
+vn 0.842209 -0.301714 0.446826
+vn 0.832653 -0.145709 0.534283
+vn 0.889527 -0.230052 0.394737
+vn 0.906734 -0.173320 0.384439
+vn 0.888964 -0.221293 0.400965
+vn 0.877013 -0.196902 0.438267
+vn 0.477147 -0.835609 0.272193
+vn 0.702185 -0.585146 0.405637
+vn 0.395641 -0.878848 0.266635
+vn 0.756582 -0.562955 0.332663
+vn 0.926382 -0.065312 0.370878
+vn 0.936541 -0.065113 0.344459
+vn 0.906734 -0.173320 0.384439
+vn 0.907663 -0.192494 0.372953
+vn 0.468518 -0.497213 0.730254
+vn 0.315392 -0.716585 0.622121
+vn 0.503384 -0.001170 0.864062
+vn 0.702185 -0.585146 0.405637
+vn 0.657204 -0.649103 0.383077
+vn 0.254329 -0.915375 0.312097
+vn 0.628680 -0.653690 0.421249
+vn 0.914527 0.110118 0.389249
+vn 0.923868 0.131166 0.359533
+vn 0.926382 -0.065312 0.370878
+vn 0.936541 -0.065113 0.344459
+vn 0.677673 0.173015 0.714721
+vn 0.468518 -0.497213 0.730254
+vn 0.503384 -0.001170 0.864062
+vn 0.940884 -0.008928 0.338610
+vn 0.677673 0.173015 0.714721
+vn 0.912959 0.175891 0.368195
+vn 0.783087 -0.106289 -0.612762
+vn 0.994931 -0.100416 0.005306
+vn 0.797724 -0.032709 -0.602134
+vn 0.999142 -0.030969 0.027486
+vn 0.763764 0.616338 -0.191813
+vn 0.720285 0.505202 -0.475353
+vn 0.326643 0.907033 -0.265700
+vn 0.346387 0.807287 -0.477811
+vn 0.763764 0.616338 -0.191813
+vn 0.326643 0.907033 -0.265700
+vn 0.666784 0.743201 -0.055237
+vn 0.227816 0.964985 -0.130017
+vn 0.514960 0.855058 -0.060761
+vn 0.851907 0.522626 0.033420
+vn 0.227816 0.964985 -0.130017
+vn 0.666784 0.743201 -0.055237
+vn 0.538008 0.731707 0.418513
+vn 0.656150 0.744291 0.124489
+vn 0.053543 0.977206 0.205432
+vn 0.061706 0.998077 0.005932
+vn 0.407367 0.744171 0.529398
+vn 0.538008 0.731707 0.418513
+vn -0.068081 0.968946 0.237714
+vn 0.053543 0.977206 0.205432
+vn -0.150486 0.986850 0.059007
+vn -0.151694 0.988170 -0.022553
+vn -0.036254 0.997522 0.060297
+vn -0.031613 0.999397 0.014353
+vn -0.062903 0.986304 0.152471
+vn -0.036254 0.997522 0.060297
+vn -0.176857 0.968552 0.175009
+vn -0.017026 0.998531 0.051449
+vn -0.377991 0.913137 0.152658
+vn -0.386377 0.905848 0.173646
+vn -0.081243 0.966887 0.241930
+vn -0.088536 0.956473 0.278065
+vn -0.150486 0.986850 0.059007
+vn -0.402365 0.915086 -0.026844
+vn -0.151694 0.988170 -0.022553
+vn -0.401684 0.909915 -0.103462
+vn -0.212174 0.967595 0.136906
+vn -0.346466 0.936750 -0.049616
+vn -0.402365 0.915086 -0.026844
+vn -0.401684 0.909915 -0.103462
+vn 0.914527 0.110118 0.389249
+vn 0.647291 0.633765 0.423505
+vn 0.923868 0.131166 0.359533
+vn 0.817926 0.436860 0.374366
+vn 0.647291 0.633765 0.423505
+vn 0.173101 0.917527 0.358023
+vn 0.437301 0.807428 0.396015
+vn 0.074358 0.925354 0.371740
+vn 0.218001 0.907585 0.358839
+vn -0.088536 0.956473 0.278065
+vn 0.173101 0.917527 0.358023
+vn -0.092760 0.952071 0.291474
+vn 0.380276 -0.916433 0.124661
+vn 0.857479 -0.370162 0.357365
+vn 0.756582 -0.562955 0.332663
+vn 0.311386 -0.926001 0.213449
+vn 0.690383 -0.617315 0.377218
+vn 0.702185 -0.585146 0.405637
+vn 0.477147 -0.835609 0.272193
+vn 0.395641 -0.878848 0.266635
+vn 0.756582 -0.562955 0.332663
+vn 0.311386 -0.926001 0.213449
+vn 0.254329 -0.915375 0.312097
+vn 0.598745 -0.628037 0.497064
+vn 0.172984 -0.904044 0.390873
+vn 0.315392 -0.716585 0.622121
+vn 0.657204 -0.649103 0.383077
+vn 0.702185 -0.585146 0.405637
+vn 0.761619 -0.509451 0.400496
+vn 0.956089 0.000651 0.293077
+vn 0.912959 0.175891 0.368195
+vn 0.942625 -0.018647 0.333333
+vn 0.910365 -0.050884 0.410665
+vn 0.974724 0.012417 0.223065
+vn 0.956089 0.000651 0.293077
+vn 0.954237 0.031283 0.297411
+vn 0.942625 -0.018647 0.333333
+vn 0.974724 0.012417 0.223065
+vn 0.999607 0.005976 0.027389
+vn 0.970226 -0.023352 0.241073
+vn 0.999142 -0.030969 0.027486
+vn 0.797724 -0.032709 -0.602134
+vn 0.402480 -0.042731 -0.914431
+vn 0.783087 -0.106289 -0.612762
+vn 0.410687 -0.118403 -0.904056
+vn 0.783087 -0.106289 -0.612762
+vn 0.410687 -0.118403 -0.904056
+vn 0.787073 -0.089423 -0.610344
+vn 0.423969 -0.115699 -0.898256
+vn 0.816133 0.055581 -0.575185
+vn 0.787073 -0.089423 -0.610344
+vn 0.436952 -0.023886 -0.899168
+vn 0.423969 -0.115699 -0.898256
+vn 0.720285 0.505202 -0.475353
+vn 0.816133 0.055581 -0.575185
+vn 0.495013 0.316608 -0.809149
+vn 0.436952 -0.023886 -0.899168
+vn 0.227816 0.964985 -0.130017
+vn -0.108249 0.980080 -0.166511
+vn 0.514960 0.855058 -0.060761
+vn 0.130525 0.988780 -0.072643
+vn 0.514960 0.855058 -0.060761
+vn 0.130525 0.988780 -0.072643
+vn 0.656150 0.744291 0.124489
+vn 0.061706 0.998077 0.005932
+vn -0.176857 0.968552 0.175009
+vn -0.817579 0.570888 0.075178
+vn -0.377991 0.913137 0.152658
+vn -0.856440 0.511799 -0.067618
+vn -0.386377 0.905848 0.173646
+vn -0.377991 0.913137 0.152658
+vn -0.843711 0.533893 -0.055760
+vn -0.856440 0.511799 -0.067618
+vn -0.068081 0.968946 0.237714
+vn 0.053543 0.977206 0.205432
+vn -0.346466 0.936750 -0.049616
+vn 0.061706 0.998077 0.005932
+vn 0.647291 0.633765 0.423505
+vn 0.437301 0.807428 0.396015
+vn 0.817926 0.436860 0.374366
+vn 0.645202 0.650333 0.400975
+vn -0.386377 0.905848 0.173646
+vn -0.349020 0.915949 0.198046
+vn -0.088536 0.956473 0.278065
+vn -0.092760 0.952071 0.291474
+vn 0.857479 -0.370162 0.357365
+vn 0.380276 -0.916433 0.124661
+vn 0.876215 -0.257600 0.407295
+vn 0.842209 -0.301714 0.446826
+vn 0.832653 -0.145709 0.534283
+vn 0.635884 -0.450605 0.626583
+vn 0.577370 -0.042831 0.815358
+vn 0.832653 -0.145709 0.534283
+vn 0.884366 -0.195531 0.423869
+vn 0.790614 -0.091590 0.605427
+vn 0.877013 -0.196902 0.438267
+vn 0.906734 -0.173320 0.384439
+vn 0.907663 -0.192494 0.372953
+vn 0.877013 -0.196902 0.438267
+vn 0.837755 -0.275117 0.471675
+vn 0.690383 -0.617315 0.377218
+vn 0.837526 -0.325262 0.439039
+vn 0.702185 -0.585146 0.405637
+vn 0.761619 -0.509451 0.400496
+vn 0.900181 -0.150323 0.408752
+vn 0.477147 -0.835609 0.272193
+vn 0.395641 -0.878848 0.266635
+vn 0.923868 0.131166 0.359533
+vn 0.953022 0.152332 0.261810
+vn 0.936541 -0.065113 0.344459
+vn 0.952226 -0.163208 0.258127
+vn 0.936541 -0.065113 0.344459
+vn 0.952226 -0.163208 0.258127
+vn 0.907663 -0.192494 0.372953
+vn 0.871335 -0.332638 0.360733
+vn 0.628680 -0.653690 0.421249
+vn 0.598745 -0.628037 0.497064
+vn 0.254329 -0.915375 0.312097
+vn 0.598745 -0.628037 0.497064
+vn 0.298728 -0.843237 0.446892
+vn 0.315392 -0.716585 0.622121
+vn 0.503384 -0.001170 0.864062
+vn 0.677673 0.173015 0.714721
+vn 0.503384 -0.001170 0.864062
+vn 0.629364 0.600370 0.493414
+vn 0.954237 0.031283 0.297411
+vn 0.972339 0.049771 0.228211
+vn 0.974724 0.012417 0.223065
+vn 0.995030 0.019825 0.097579
+vn 0.974724 0.012417 0.223065
+vn 0.995030 0.019825 0.097579
+vn 0.999607 0.005976 0.027389
+vn 0.998593 -0.003776 -0.052889
+vn 0.999607 0.005976 0.027389
+vn 0.755256 0.048646 -0.653622
+vn 0.999142 -0.030969 0.027486
+vn 0.797724 -0.032709 -0.602134
+vn 0.402480 -0.042731 -0.914431
+vn 0.797724 -0.032709 -0.602134
+vn 0.361367 0.025418 -0.932077
+vn 0.755256 0.048646 -0.653622
+vn 0.720285 0.505202 -0.475353
+vn 0.495013 0.316608 -0.809149
+vn 0.346387 0.807287 -0.477811
+vn 0.306329 0.460799 -0.832963
+vn 0.326643 0.907033 -0.265700
+vn 0.346387 0.807287 -0.477811
+vn 0.084841 0.944765 -0.316578
+vn 0.156367 0.841284 -0.517485
+vn 0.227816 0.964985 -0.130017
+vn 0.326643 0.907033 -0.265700
+vn 0.029236 0.987915 -0.152214
+vn 0.084841 0.944765 -0.316578
+vn 0.227816 0.964985 -0.130017
+vn -0.115349 0.990075 -0.080283
+vn -0.108249 0.980080 -0.166511
+vn -0.360938 0.921185 -0.145402
+vn -0.036254 0.997522 0.060297
+vn -0.031613 0.999397 0.014353
+vn -0.017026 0.998531 0.051449
+vn -0.008683 0.999765 0.019884
+vn -0.151694 0.988170 -0.022553
+vn -0.115349 0.990075 -0.080283
+vn -0.031613 0.999397 0.014353
+vn -0.004777 0.999637 -0.026527
+vn -0.817579 0.570888 0.075178
+vn -0.176857 0.968552 0.175009
+vn -0.889227 0.409050 0.204827
+vn -0.570309 0.768669 0.289647
+vn -0.843711 0.533893 -0.055760
+vn -0.774743 0.632173 -0.011461
+vn -0.386377 0.905848 0.173646
+vn -0.349020 0.915949 0.198046
+vn -0.401684 0.909915 -0.103462
+vn -0.360938 0.921185 -0.145402
+vn -0.151694 0.988170 -0.022553
+vn -0.115349 0.990075 -0.080283
+vn -0.401684 0.909915 -0.103462
+vn -0.346466 0.936750 -0.049616
+vn -0.360938 0.921185 -0.145402
+vn -0.108249 0.980080 -0.166511
+vn 0.923868 0.131166 0.359533
+vn 0.817926 0.436860 0.374366
+vn 0.953022 0.152332 0.261810
+vn 0.777929 0.561216 0.282600
+vn 0.437301 0.807428 0.396015
+vn 0.074358 0.925354 0.371740
+vn 0.490388 0.596713 0.635179
+vn 0.290203 0.680998 0.672327
+vn 0.074358 0.925354 0.371740
+vn 0.173101 0.917527 0.358023
+vn -0.100016 0.944156 0.313954
+vn -0.092760 0.952071 0.291474
+vn 0.857479 -0.370162 0.357365
+vn 0.909202 -0.127962 0.396203
+vn 0.311386 -0.926001 0.213449
+vn 0.875426 -0.456207 0.159705
+vn 0.842209 -0.301714 0.446826
+vn 0.292632 -0.893583 0.340407
+vn 0.541383 -0.671418 0.506065
+vn 0.505860 -0.693243 0.513341
+vn 0.842209 -0.301714 0.446826
+vn 0.635884 -0.450605 0.626583
+vn 0.292632 -0.893583 0.340407
+vn 0.121910 -0.967245 0.222654
+vn 0.395641 -0.878848 0.266635
+vn 0.424115 -0.858631 0.287889
+vn 0.637751 -0.505036 0.581560
+vn 0.395641 -0.878848 0.266635
+vn 0.311386 -0.926001 0.213449
+vn 0.424115 -0.858631 0.287889
+vn 0.875426 -0.456207 0.159705
+vn 0.628680 -0.653690 0.421249
+vn 0.317683 -0.875433 0.364273
+vn 0.598745 -0.628037 0.497064
+vn 0.298728 -0.843237 0.446892
+vn 0.503384 -0.001170 0.864062
+vn 0.298728 -0.843237 0.446892
+vn -0.499267 -0.140126 0.855042
+vn -0.165009 -0.960561 0.223817
+vn 0.503384 -0.001170 0.864062
+vn 0.593327 0.751956 0.287273
+vn 0.629364 0.600370 0.493414
+vn 0.696406 0.644984 0.314664
+vn 0.954237 0.031283 0.297411
+vn 0.942625 -0.018647 0.333333
+vn 0.861430 -0.166650 0.479756
+vn 0.910365 -0.050884 0.410665
+vn 0.912959 0.175891 0.368195
+vn 0.881885 0.216035 0.419057
+vn 0.910365 -0.050884 0.410665
+vn 0.884957 -0.106552 0.453318
+vn 0.972339 0.049771 0.228211
+vn 0.954237 0.031283 0.297411
+vn 0.892372 -0.061363 0.447110
+vn 0.861430 -0.166650 0.479756
+vn 0.999607 0.005976 0.027389
+vn 0.998593 -0.003776 -0.052889
+vn 0.755256 0.048646 -0.653622
+vn 0.763365 0.027654 -0.645375
+vn 0.402480 -0.042731 -0.914431
+vn 0.361367 0.025418 -0.932077
+vn 0.283454 -0.060886 -0.957051
+vn 0.225123 -0.025806 -0.973989
+vn 0.402480 -0.042731 -0.914431
+vn 0.283454 -0.060886 -0.957051
+vn 0.410687 -0.118403 -0.904056
+vn 0.293818 -0.124253 -0.947751
+vn 0.410687 -0.118403 -0.904056
+vn 0.293818 -0.124253 -0.947751
+vn 0.423969 -0.115699 -0.898256
+vn 0.298407 -0.121963 -0.946614
+vn 0.495013 0.316608 -0.809149
+vn 0.436952 -0.023886 -0.899168
+vn 0.306329 0.460799 -0.832963
+vn 0.303089 0.025829 -0.952612
+vn 0.423969 -0.115699 -0.898256
+vn 0.298407 -0.121963 -0.946614
+vn 0.436952 -0.023886 -0.899168
+vn 0.303089 0.025829 -0.952612
+vn 0.029236 0.987915 -0.152214
+vn -0.004777 0.999637 -0.026527
+vn 0.227816 0.964985 -0.130017
+vn -0.115349 0.990075 -0.080283
+vn -0.108249 0.980080 -0.166511
+vn -0.346466 0.936750 -0.049616
+vn 0.130525 0.988780 -0.072643
+vn 0.061706 0.998077 0.005932
+vn -0.817579 0.570888 0.075178
+vn -0.889227 0.409050 0.204827
+vn -0.978051 0.201139 -0.054407
+vn -0.980755 -0.193934 -0.022584
+vn -0.856440 0.511799 -0.067618
+vn -0.817579 0.570888 0.075178
+vn -0.963090 0.228290 -0.142624
+vn -0.978051 0.201139 -0.054407
+vn -0.843711 0.533893 -0.055760
+vn -0.856440 0.511799 -0.067618
+vn -0.977109 0.091871 -0.191877
+vn -0.978241 0.076310 -0.192930
+vn -0.774743 0.632173 -0.011461
+vn -0.843711 0.533893 -0.055760
+vn -0.975863 0.110029 -0.188638
+vn -0.977109 0.091871 -0.191877
+vn 0.817926 0.436860 0.374366
+vn 0.645202 0.650333 0.400975
+vn 0.777929 0.561216 0.282600
+vn 0.645894 0.674417 0.357747
+vn 0.645202 0.650333 0.400975
+vn 0.437301 0.807428 0.396015
+vn 0.527798 0.602955 0.598226
+vn 0.490388 0.596713 0.635179
+vn -0.100016 0.944156 0.313954
+vn -0.137593 0.892266 0.430035
+vn 0.074358 0.925354 0.371740
+vn -0.099399 0.814121 0.572124
+vn -0.092760 0.952071 0.291474
+vn -0.349020 0.915949 0.198046
+vn -0.100016 0.944156 0.313954
+vn -0.275879 0.924209 0.264062
+vn -0.774743 0.632173 -0.011461
+vn -0.586286 0.805859 0.082823
+vn -0.349020 0.915949 0.198046
+vn -0.275879 0.924209 0.264062
+vn 0.876215 -0.257600 0.407295
+vn 0.683773 -0.500328 0.531156
+vn 0.857479 -0.370162 0.357365
+vn 0.909202 -0.127962 0.396203
+vn 0.380276 -0.916433 0.124661
+vn 0.561667 -0.801058 0.206972
+vn 0.876215 -0.257600 0.407295
+vn 0.683773 -0.500328 0.531156
+vn 0.490732 -0.829858 0.265551
+vn 0.842209 -0.301714 0.446826
+vn 0.541383 -0.671418 0.506065
+vn 0.635884 -0.450605 0.626583
+vn 0.577370 -0.042831 0.815358
+vn 0.093778 -0.672494 0.734137
+vn 0.055526 0.048915 0.997258
+vn 0.577370 -0.042831 0.815358
+vn 0.832653 -0.145709 0.534283
+vn 0.407445 0.114115 0.906072
+vn 0.790614 -0.091590 0.605427
+vn 0.877013 -0.196902 0.438267
+vn 0.800429 -0.094762 0.591890
+vn 0.790614 -0.091590 0.605427
+vn 0.621863 0.084994 0.778500
+vn 0.877013 -0.196902 0.438267
+vn 0.837755 -0.275117 0.471675
+vn 0.800429 -0.094762 0.591890
+vn 0.745238 -0.178444 0.642478
+vn 0.907663 -0.192494 0.372953
+vn 0.871335 -0.332638 0.360733
+vn 0.837755 -0.275117 0.471675
+vn 0.780816 -0.378596 0.496982
+vn 0.900181 -0.150323 0.408752
+vn 0.898501 -0.140233 0.415969
+vn 0.477147 -0.835609 0.272193
+vn 0.883609 -0.421782 0.203311
+vn 0.395641 -0.878848 0.266635
+vn 0.637751 -0.505036 0.581560
+vn 0.900181 -0.150323 0.408752
+vn 0.898501 -0.140233 0.415969
+vn 0.953022 0.152332 0.261810
+vn 0.972400 0.221016 0.074770
+vn 0.952226 -0.163208 0.258127
+vn 0.934023 -0.330209 0.136246
+vn 0.952226 -0.163208 0.258127
+vn 0.934023 -0.330209 0.136246
+vn 0.871335 -0.332638 0.360733
+vn 0.839808 -0.448800 0.305453
+vn 0.317683 -0.875433 0.364273
+vn 0.628680 -0.653690 0.421249
+vn 0.347289 -0.890789 0.293063
+vn 0.657204 -0.649103 0.383077
+vn 0.317683 -0.875433 0.364273
+vn -0.101233 -0.975782 0.193910
+vn 0.298728 -0.843237 0.446892
+vn -0.165009 -0.960561 0.223817
+vn 0.503384 -0.001170 0.864062
+vn -0.499267 -0.140126 0.855042
+vn 0.593327 0.751956 0.287273
+vn 0.064760 0.997897 0.002614
+vn 0.657204 -0.649103 0.383077
+vn 0.896491 -0.388385 0.213214
+vn 0.347289 -0.890789 0.293063
+vn 0.677673 0.173015 0.714721
+vn 0.629364 0.600370 0.493414
+vn 0.912959 0.175891 0.368195
+vn 0.881885 0.216035 0.419057
+vn 0.912959 0.175891 0.368195
+vn 0.736625 0.594721 0.322011
+vn 0.861430 -0.166650 0.479756
+vn 0.910365 -0.050884 0.410665
+vn 0.784441 -0.392370 0.480310
+vn 0.884957 -0.106552 0.453318
+vn 0.892372 -0.061363 0.447110
+vn 0.910978 -0.078204 0.404974
+vn 0.972339 0.049771 0.228211
+vn 0.991808 0.053172 0.116143
+vn 0.972339 0.049771 0.228211
+vn 0.991808 0.053172 0.116143
+vn 0.995030 0.019825 0.097579
+vn 0.954150 0.121652 -0.273494
+vn 0.998593 -0.003776 -0.052889
+vn 0.995030 0.019825 0.097579
+vn 0.763365 0.027654 -0.645375
+vn 0.954150 0.121652 -0.273494
+vn 0.755256 0.048646 -0.653622
+vn 0.763365 0.027654 -0.645375
+vn 0.361367 0.025418 -0.932077
+vn 0.347744 0.080405 -0.934135
+vn 0.346387 0.807287 -0.477811
+vn 0.306329 0.460799 -0.832963
+vn 0.156367 0.841284 -0.517485
+vn 0.236070 0.598759 -0.765348
+vn 0.156367 0.841284 -0.517485
+vn -0.033319 0.812427 -0.582110
+vn 0.084841 0.944765 -0.316578
+vn -0.134495 0.916442 -0.376889
+vn 0.084841 0.944765 -0.316578
+vn -0.134495 0.916442 -0.376889
+vn 0.029236 0.987915 -0.152214
+vn -0.149275 0.955594 -0.254081
+vn 0.029236 0.987915 -0.152214
+vn -0.149275 0.955594 -0.254081
+vn -0.004777 0.999637 -0.026527
+vn 0.010922 0.999895 -0.009504
+vn -0.031613 0.999397 0.014353
+vn -0.004777 0.999637 -0.026527
+vn -0.008683 0.999765 0.019884
+vn 0.010922 0.999895 -0.009504
+vn -0.889227 0.409050 0.204827
+vn -0.570309 0.768669 0.289647
+vn -0.966780 0.235096 0.100329
+vn -0.634000 0.743993 0.210993
+vn -0.570309 0.768669 0.289647
+vn -0.176857 0.968552 0.175009
+vn -0.250080 0.937902 0.240417
+vn 0.216178 0.936259 0.276924
+vn -0.856440 0.511799 -0.067618
+vn -0.963090 0.228290 -0.142624
+vn -0.978241 0.076310 -0.192930
+vn -0.978731 0.017542 -0.204397
+vn -0.975863 0.110029 -0.188638
+vn -0.967001 0.131062 -0.218476
+vn -0.774743 0.632173 -0.011461
+vn -0.887573 0.436584 -0.146999
+vn 0.953022 0.152332 0.261810
+vn 0.777929 0.561216 0.282600
+vn 0.972400 0.221016 0.074770
+vn 0.809982 0.523531 0.264279
+vn 0.527798 0.602955 0.598226
+vn 0.543919 0.653093 0.526899
+vn 0.645202 0.650333 0.400975
+vn 0.645894 0.674417 0.357747
+vn 0.527798 0.602955 0.598226
+vn 0.490388 0.596713 0.635179
+vn 0.745238 -0.178444 0.642478
+vn 0.800429 -0.094762 0.591890
+vn 0.490388 0.596713 0.635179
+vn 0.290203 0.680998 0.672327
+vn 0.800429 -0.094762 0.591890
+vn 0.621863 0.084994 0.778500
+vn 0.074358 0.925354 0.371740
+vn -0.099399 0.814121 0.572124
+vn 0.290203 0.680998 0.672327
+vn 0.068171 0.608701 0.790466
+vn -0.100016 0.944156 0.313954
+vn -0.275879 0.924209 0.264062
+vn -0.137593 0.892266 0.430035
+vn -0.251790 0.813378 0.524421
+vn -0.774743 0.632173 -0.011461
+vn -0.887573 0.436584 -0.146999
+vn -0.586286 0.805859 0.082823
+vn -0.759353 0.650059 -0.028411
+vn 0.380276 -0.916433 0.124661
+vn 0.448239 -0.883399 0.136706
+vn 0.561667 -0.801058 0.206972
+vn 0.922612 -0.362316 0.132343
+vn 0.456586 -0.873470 0.169053
+vn 0.718342 -0.462878 0.519354
+vn 0.492928 -0.853353 0.169739
+vn 0.911958 -0.117287 0.393163
+vn 0.492928 -0.853353 0.169739
+vn 0.911958 -0.117287 0.393163
+vn 0.448239 -0.883399 0.136706
+vn 0.922612 -0.362316 0.132343
+vn 0.683773 -0.500328 0.531156
+vn 0.633327 -0.411993 0.655102
+vn 0.909202 -0.127962 0.396203
+vn 0.897158 -0.236536 0.373039
+vn 0.909202 -0.127962 0.396203
+vn 0.897158 -0.236536 0.373039
+vn 0.875426 -0.456207 0.159705
+vn 0.970536 -0.193496 -0.143597
+vn 0.428649 -0.890211 0.154219
+vn 0.443542 -0.880971 0.164807
+vn 0.926793 -0.207357 0.313142
+vn 0.505860 -0.693243 0.513341
+vn 0.360274 -0.855570 0.371757
+vn 0.541383 -0.671418 0.506065
+vn 0.529528 -0.708771 0.466094
+vn 0.292632 -0.893583 0.340407
+vn 0.121910 -0.967245 0.222654
+vn 0.505860 -0.693243 0.513341
+vn 0.402762 -0.737083 0.542671
+vn 0.121910 -0.967245 0.222654
+vn 0.635884 -0.450605 0.626583
+vn 0.054485 -0.953838 0.295337
+vn 0.093778 -0.672494 0.734137
+vn 0.407445 0.114115 0.906072
+vn -0.048686 0.251827 0.966547
+vn 0.577370 -0.042831 0.815358
+vn 0.055526 0.048915 0.997258
+vn 0.407445 0.114115 0.906072
+vn 0.790614 -0.091590 0.605427
+vn 0.129880 0.321914 0.937818
+vn 0.621863 0.084994 0.778500
+vn 0.690383 -0.617315 0.377218
+vn 0.443850 -0.843770 0.301743
+vn 0.837526 -0.325262 0.439039
+vn 0.604684 -0.562376 0.563995
+vn 0.477147 -0.835609 0.272193
+vn 0.883609 -0.421782 0.203311
+vn 0.690383 -0.617315 0.377218
+vn 0.443850 -0.843770 0.301743
+vn 0.875426 -0.456207 0.159705
+vn 0.078628 -0.926189 -0.368770
+vn 0.424115 -0.858631 0.287889
+vn -0.039106 -0.992443 0.116307
+vn 0.637751 -0.505036 0.581560
+vn 0.424115 -0.858631 0.287889
+vn -0.113172 -0.911127 0.396283
+vn -0.039106 -0.992443 0.116307
+vn 0.347289 -0.890789 0.293063
+vn -0.048070 -0.988869 0.140807
+vn 0.317683 -0.875433 0.364273
+vn -0.101233 -0.975782 0.193910
+vn -0.165009 -0.960561 0.223817
+vn -0.583948 -0.811690 0.012813
+vn -0.499267 -0.140126 0.855042
+vn -0.998278 -0.050278 0.030229
+vn 0.837526 -0.325262 0.439039
+vn 0.604684 -0.562376 0.563995
+vn 0.761619 -0.509451 0.400496
+vn 0.896333 -0.150513 0.417053
+vn 0.761619 -0.509451 0.400496
+vn 0.896333 -0.150513 0.417053
+vn 0.657204 -0.649103 0.383077
+vn 0.896491 -0.388385 0.213214
+vn 0.696406 0.644984 0.314664
+vn 0.593327 0.751956 0.287273
+vn 0.879749 0.299749 0.369042
+vn 0.875275 0.426696 0.227650
+vn 0.629364 0.600370 0.493414
+vn 0.696406 0.644984 0.314664
+vn 0.912959 0.175891 0.368195
+vn 0.736625 0.594721 0.322011
+vn 0.892372 -0.061363 0.447110
+vn 0.861430 -0.166650 0.479756
+vn 0.542857 -0.394506 0.741398
+vn 0.555099 -0.529557 0.641432
+vn 0.861430 -0.166650 0.479756
+vn 0.784441 -0.392370 0.480310
+vn 0.555099 -0.529557 0.641432
+vn 0.450519 -0.771932 0.448502
+vn 0.881885 0.216035 0.419057
+vn 0.889665 0.099200 0.445707
+vn 0.884957 -0.106552 0.453318
+vn 0.869700 -0.202105 0.450306
+vn 0.910978 -0.078204 0.404974
+vn 0.892372 -0.061363 0.447110
+vn 0.542561 -0.359405 0.759246
+vn 0.542857 -0.394506 0.741398
+vn 0.361367 0.025418 -0.932077
+vn 0.347744 0.080405 -0.934135
+vn 0.225123 -0.025806 -0.973989
+vn 0.138026 0.063752 -0.988375
+vn 0.283454 -0.060886 -0.957051
+vn 0.225123 -0.025806 -0.973989
+vn 0.167875 -0.077109 -0.982788
+vn 0.103726 -0.085058 -0.990962
+vn 0.293818 -0.124253 -0.947751
+vn 0.283454 -0.060886 -0.957051
+vn 0.163208 -0.120197 -0.979243
+vn 0.167875 -0.077109 -0.982788
+vn 0.298407 -0.121963 -0.946614
+vn 0.293818 -0.124253 -0.947751
+vn 0.145510 -0.117331 -0.982375
+vn 0.163208 -0.120197 -0.979243
+vn 0.306329 0.460799 -0.832963
+vn 0.303089 0.025829 -0.952612
+vn 0.236070 0.598759 -0.765348
+vn 0.220518 0.469237 -0.855096
+vn 0.303089 0.025829 -0.952612
+vn 0.298407 -0.121963 -0.946614
+vn 0.135145 -0.023843 -0.990539
+vn 0.145510 -0.117331 -0.982375
+vn -0.033319 0.812427 -0.582110
+vn 0.156367 0.841284 -0.517485
+vn 0.220518 0.469237 -0.855096
+vn 0.236070 0.598759 -0.765348
+vn -0.963090 0.228290 -0.142624
+vn -0.978051 0.201139 -0.054407
+vn -0.966008 0.217227 -0.140149
+vn -0.909253 0.410491 -0.068970
+vn -0.969805 0.215842 -0.113534
+vn -0.978051 0.201139 -0.054407
+vn -0.730592 -0.658016 -0.182350
+vn -0.980755 -0.193934 -0.022584
+vn -0.889227 0.409050 0.204827
+vn -0.966780 0.235096 0.100329
+vn -0.980755 -0.193934 -0.022584
+vn -0.955162 -0.286081 -0.076315
+vn -0.570309 0.768669 0.289647
+vn -0.250080 0.937902 0.240417
+vn -0.634000 0.743993 0.210993
+vn -0.076784 0.968887 0.235291
+vn -0.977109 0.091871 -0.191877
+vn -0.978241 0.076310 -0.192930
+vn -0.977047 -0.072753 -0.200217
+vn -0.978542 -0.058784 -0.197483
+vn -0.975863 0.110029 -0.188638
+vn -0.977109 0.091871 -0.191877
+vn -0.975417 -0.065218 -0.210495
+vn -0.977047 -0.072753 -0.200217
+vn -0.975863 0.110029 -0.188638
+vn -0.975417 -0.065218 -0.210495
+vn -0.967001 0.131062 -0.218476
+vn -0.969079 -0.064992 -0.238037
+vn 0.777929 0.561216 0.282600
+vn 0.645894 0.674417 0.357747
+vn 0.809982 0.523531 0.264279
+vn 0.791450 0.484517 0.372626
+vn 0.543919 0.653093 0.526899
+vn 0.527798 0.602955 0.598226
+vn 0.717411 -0.094517 0.690208
+vn 0.745238 -0.178444 0.642478
+vn -0.099399 0.814121 0.572124
+vn -0.137593 0.892266 0.430035
+vn -0.271457 0.460312 0.845236
+vn -0.251790 0.813378 0.524421
+vn -0.586286 0.805859 0.082823
+vn -0.763987 0.594667 0.250389
+vn -0.275879 0.924209 0.264062
+vn -0.623339 0.677973 0.389617
+vn 0.393877 -0.908493 0.139646
+vn 0.599286 -0.768775 0.223253
+vn 0.456586 -0.873470 0.169053
+vn 0.718342 -0.462878 0.519354
+vn 0.393877 -0.908493 0.139646
+vn 0.509438 -0.842490 0.175167
+vn 0.599286 -0.768775 0.223253
+vn 0.918841 -0.380777 0.103632
+vn 0.683773 -0.500328 0.531156
+vn 0.561667 -0.801058 0.206972
+vn -0.077198 -0.938562 0.336366
+vn 0.007229 -0.999114 -0.041451
+vn 0.633327 -0.411993 0.655102
+vn 0.683773 -0.500328 0.531156
+vn -0.158658 -0.696392 0.699905
+vn -0.077198 -0.938562 0.336366
+vn 0.490732 -0.829858 0.265551
+vn 0.659548 -0.381591 0.647599
+vn 0.443542 -0.880971 0.164807
+vn 0.909955 -0.090194 0.404781
+vn 0.541383 -0.671418 0.506065
+vn 0.529528 -0.708771 0.466094
+vn 0.490732 -0.829858 0.265551
+vn 0.659548 -0.381591 0.647599
+vn 0.360274 -0.855570 0.371757
+vn 0.505860 -0.693243 0.513341
+vn 0.451831 -0.776419 0.439343
+vn 0.402762 -0.737083 0.542671
+vn 0.054485 -0.953838 0.295337
+vn 0.197265 -0.747926 0.633793
+vn 0.121910 -0.967245 0.222654
+vn 0.402762 -0.737083 0.542671
+vn 0.054485 -0.953838 0.295337
+vn 0.093778 -0.672494 0.734137
+vn -0.008457 -0.947863 0.318566
+vn -0.042650 -0.731881 0.680096
+vn 0.093778 -0.672494 0.734137
+vn 0.055526 0.048915 0.997258
+vn -0.042650 -0.731881 0.680096
+vn -0.105417 -0.033884 0.993851
+vn -0.048686 0.251827 0.966547
+vn 0.407445 0.114115 0.906072
+vn -0.271457 0.460312 0.845236
+vn 0.129880 0.321914 0.937818
+vn 0.837755 -0.275117 0.471675
+vn 0.780816 -0.378596 0.496982
+vn 0.745238 -0.178444 0.642478
+vn 0.717411 -0.094517 0.690208
+vn 0.780816 -0.378596 0.496982
+vn 0.871335 -0.332638 0.360733
+vn 0.759703 -0.453987 0.465561
+vn 0.839808 -0.448800 0.305453
+vn 0.637751 -0.505036 0.581560
+vn 0.619756 -0.418228 0.664069
+vn 0.898501 -0.140233 0.415969
+vn 0.874979 -0.257565 0.409967
+vn 0.898501 -0.140233 0.415969
+vn 0.874979 -0.257565 0.409967
+vn 0.883609 -0.421782 0.203311
+vn 0.972457 -0.231980 -0.022648
+vn 0.875426 -0.456207 0.159705
+vn 0.970536 -0.193496 -0.143597
+vn 0.078628 -0.926189 -0.368770
+vn 0.227739 -0.196983 -0.953589
+vn -0.113172 -0.911127 0.396283
+vn -0.206217 -0.698260 0.685498
+vn 0.637751 -0.505036 0.581560
+vn 0.619756 -0.418228 0.664069
+vn 0.972400 0.221016 0.074770
+vn 0.949544 0.143209 0.279031
+vn 0.934023 -0.330209 0.136246
+vn 0.937088 -0.126645 0.325311
+vn 0.934023 -0.330209 0.136246
+vn 0.937088 -0.126645 0.325311
+vn 0.839808 -0.448800 0.305453
+vn 0.908721 -0.134690 0.395076
+vn -0.048070 -0.988869 0.140807
+vn 0.347289 -0.890789 0.293063
+vn 0.115542 -0.961895 -0.247806
+vn 0.896491 -0.388385 0.213214
+vn -0.101233 -0.975782 0.193910
+vn -0.048070 -0.988869 0.140807
+vn -0.507819 -0.861261 -0.018711
+vn -0.475821 -0.876649 -0.071279
+vn -0.101233 -0.975782 0.193910
+vn -0.507819 -0.861261 -0.018711
+vn -0.165009 -0.960561 0.223817
+vn -0.583948 -0.811690 0.012813
+vn 0.064760 0.997897 0.002614
+vn 0.188999 0.964282 -0.185578
+vn 0.593327 0.751956 0.287273
+vn 0.875275 0.426696 0.227650
+vn 0.064760 0.997897 0.002614
+vn -0.499267 -0.140126 0.855042
+vn -0.624487 0.742340 -0.242791
+vn -0.998278 -0.050278 0.030229
+vn 0.896333 -0.150513 0.417053
+vn 0.872294 -0.266391 0.410047
+vn 0.896491 -0.388385 0.213214
+vn 0.970849 -0.239689 0.001466
+vn 0.881885 0.216035 0.419057
+vn 0.736625 0.594721 0.322011
+vn 0.889665 0.099200 0.445707
+vn 0.796014 0.459850 0.393574
+vn 0.884957 -0.106552 0.453318
+vn 0.869700 -0.202105 0.450306
+vn 0.784441 -0.392370 0.480310
+vn 0.733455 -0.537073 0.416650
+vn 0.910978 -0.078204 0.404974
+vn 0.542561 -0.359405 0.759246
+vn 0.921431 -0.131090 0.365761
+vn 0.547087 -0.370022 0.750852
+vn 0.910978 -0.078204 0.404974
+vn 0.921431 -0.131090 0.365761
+vn 0.991808 0.053172 0.116143
+vn 0.997172 0.048829 0.057137
+vn 0.954150 0.121652 -0.273494
+vn 0.991808 0.053172 0.116143
+vn 0.923924 0.245794 -0.293172
+vn 0.997172 0.048829 0.057137
+vn 0.954150 0.121652 -0.273494
+vn 0.410631 0.278741 -0.868151
+vn 0.763365 0.027654 -0.645375
+vn 0.347744 0.080405 -0.934135
+vn 0.303089 0.025829 -0.952612
+vn 0.135145 -0.023843 -0.990539
+vn 0.220518 0.469237 -0.855096
+vn 0.029552 0.325226 -0.945174
+vn 0.220518 0.469237 -0.855096
+vn 0.029552 0.325226 -0.945174
+vn -0.033319 0.812427 -0.582110
+vn -0.382851 0.500025 -0.776788
+vn -0.033319 0.812427 -0.582110
+vn -0.382851 0.500025 -0.776788
+vn -0.134495 0.916442 -0.376889
+vn -0.554392 0.602551 -0.574092
+vn -0.149275 0.955594 -0.254081
+vn -0.134495 0.916442 -0.376889
+vn -0.516365 0.751809 -0.410062
+vn -0.554392 0.602551 -0.574092
+vn -0.963090 0.228290 -0.142624
+vn -0.966008 0.217227 -0.140149
+vn -0.978731 0.017542 -0.204397
+vn -0.982018 0.025293 -0.187083
+vn -0.980755 -0.193934 -0.022584
+vn -0.955162 -0.286081 -0.076315
+vn -0.730592 -0.658016 -0.182350
+vn -0.673802 -0.702656 -0.228616
+vn -0.966780 0.235096 0.100329
+vn -0.634000 0.743993 0.210993
+vn -0.952305 0.293224 -0.084471
+vn -0.680264 0.731460 0.046980
+vn -0.250080 0.937902 0.240417
+vn 0.216178 0.936259 0.276924
+vn -0.076784 0.968887 0.235291
+vn 0.315350 0.936708 0.152097
+vn -0.176857 0.968552 0.175009
+vn 0.594136 0.729776 0.338275
+vn 0.216178 0.936259 0.276924
+vn 0.639367 0.713704 0.286070
+vn -0.978241 0.076310 -0.192930
+vn -0.978731 0.017542 -0.204397
+vn -0.978542 -0.058784 -0.197483
+vn -0.974687 -0.036231 -0.220621
+vn -0.967001 0.131062 -0.218476
+vn -0.936566 0.152208 -0.315717
+vn -0.887573 0.436584 -0.146999
+vn -0.803184 0.560908 -0.200693
+vn 0.972400 0.221016 0.074770
+vn 0.809982 0.523531 0.264279
+vn 0.949544 0.143209 0.279031
+vn 0.899422 0.181835 0.397461
+vn 0.543919 0.653093 0.526899
+vn 0.731209 0.476314 0.488321
+vn 0.645894 0.674417 0.357747
+vn 0.791450 0.484517 0.372626
+vn 0.717411 -0.094517 0.690208
+vn 0.746899 -0.083691 0.659650
+vn 0.543919 0.653093 0.526899
+vn 0.731209 0.476314 0.488321
+vn 0.290203 0.680998 0.672327
+vn 0.068171 0.608701 0.790466
+vn 0.621863 0.084994 0.778500
+vn 0.129880 0.321914 0.937818
+vn 0.068171 0.608701 0.790466
+vn -0.099399 0.814121 0.572124
+vn 0.129880 0.321914 0.937818
+vn -0.271457 0.460312 0.845236
+vn -0.275879 0.924209 0.264062
+vn -0.623339 0.677973 0.389617
+vn -0.251790 0.813378 0.524421
+vn -0.513655 0.605345 0.608043
+vn -0.759353 0.650059 -0.028411
+vn -0.772314 0.602702 0.200700
+vn -0.586286 0.805859 0.082823
+vn -0.763987 0.594667 0.250389
+vn -0.887573 0.436584 -0.146999
+vn -0.803184 0.560908 -0.200693
+vn -0.759353 0.650059 -0.028411
+vn -0.735778 0.674132 -0.064625
+vn 0.507272 -0.843656 0.175839
+vn 0.628074 -0.742885 0.231614
+vn 0.573839 -0.786285 0.229052
+vn 0.677706 -0.466604 0.568327
+vn 0.573839 -0.786285 0.229052
+vn 0.677706 -0.466604 0.568327
+vn 0.604403 -0.765261 0.221524
+vn 0.911158 -0.114397 0.395859
+vn 0.604403 -0.765261 0.221524
+vn 0.911158 -0.114397 0.395859
+vn 0.509438 -0.842490 0.175167
+vn 0.918841 -0.380777 0.103632
+vn 0.922612 -0.362316 0.132343
+vn 0.142369 -0.835096 -0.531362
+vn 0.561667 -0.801058 0.206972
+vn 0.007229 -0.999114 -0.041451
+vn 0.718342 -0.462878 0.519354
+vn 0.599286 -0.768775 0.223253
+vn -0.075450 -0.946777 0.312922
+vn 0.019602 -0.999002 -0.040140
+vn 0.718342 -0.462878 0.519354
+vn 0.678955 -0.385612 0.624759
+vn 0.911958 -0.117287 0.393163
+vn 0.900467 -0.221657 0.374203
+vn 0.911958 -0.117287 0.393163
+vn 0.900467 -0.221657 0.374203
+vn 0.922612 -0.362316 0.132343
+vn 0.982394 -0.176128 -0.062291
+vn -0.158658 -0.696392 0.699905
+vn -0.101496 -0.883429 0.457440
+vn 0.633327 -0.411993 0.655102
+vn 0.492740 -0.684301 0.537531
+vn 0.633327 -0.411993 0.655102
+vn 0.492740 -0.684301 0.537531
+vn 0.897158 -0.236536 0.373039
+vn 0.692023 -0.682897 0.234001
+vn 0.897158 -0.236536 0.373039
+vn 0.692023 -0.682897 0.234001
+vn 0.970536 -0.193496 -0.143597
+vn 0.816241 -0.538320 -0.209672
+vn 0.428649 -0.890211 0.154219
+vn 0.926793 -0.207357 0.313142
+vn 0.661869 -0.694565 0.281972
+vn 0.949883 -0.310370 0.037330
+vn 0.443542 -0.880971 0.164807
+vn 0.909955 -0.090194 0.404781
+vn 0.926793 -0.207357 0.313142
+vn 0.949883 -0.310370 0.037330
+vn 0.451831 -0.776419 0.439343
+vn 0.393670 -0.910149 0.129047
+vn 0.360274 -0.855570 0.371757
+vn -0.006916 -0.996373 0.084813
+vn 0.360274 -0.855570 0.371757
+vn -0.006916 -0.996373 0.084813
+vn 0.529528 -0.708771 0.466094
+vn 0.097791 -0.963920 0.247577
+vn 0.197265 -0.747926 0.633793
+vn 0.054485 -0.953838 0.295337
+vn -0.008541 -0.762608 0.646804
+vn -0.008457 -0.947863 0.318566
+vn -0.048686 0.251827 0.966547
+vn -0.095309 0.181604 0.978742
+vn 0.055526 0.048915 0.997258
+vn -0.105417 -0.033884 0.993851
+vn 0.759703 -0.453987 0.465561
+vn 0.746899 -0.083691 0.659650
+vn 0.780816 -0.378596 0.496982
+vn 0.717411 -0.094517 0.690208
+vn 0.883609 -0.421782 0.203311
+vn 0.113199 -0.951421 -0.286330
+vn 0.443850 -0.843770 0.301743
+vn -0.036004 -0.991688 0.123528
+vn 0.604684 -0.562376 0.563995
+vn 0.443850 -0.843770 0.301743
+vn -0.127036 -0.921648 0.366642
+vn -0.036004 -0.991688 0.123528
+vn -0.039106 -0.992443 0.116307
+vn 0.078628 -0.926189 -0.368770
+vn -0.596796 -0.787491 -0.153926
+vn -0.788037 -0.307667 -0.533235
+vn -0.113172 -0.911127 0.396283
+vn -0.858050 -0.511664 -0.044157
+vn -0.206217 -0.698260 0.685498
+vn -0.918771 -0.391387 0.051738
+vn -0.039106 -0.992443 0.116307
+vn -0.596796 -0.787491 -0.153926
+vn -0.113172 -0.911127 0.396283
+vn -0.858050 -0.511664 -0.044157
+vn 0.839808 -0.448800 0.305453
+vn 0.908721 -0.134690 0.395076
+vn 0.759703 -0.453987 0.465561
+vn 0.893294 -0.136227 0.428331
+vn -0.048070 -0.988869 0.140807
+vn 0.115542 -0.961895 -0.247806
+vn -0.475821 -0.876649 -0.071279
+vn -0.786988 -0.365698 -0.496906
+vn 0.064760 0.997897 0.002614
+vn -0.624487 0.742340 -0.242791
+vn 0.188999 0.964282 -0.185578
+vn -0.785424 0.369743 -0.496387
+vn -0.583948 -0.811690 0.012813
+vn -0.507819 -0.861261 -0.018711
+vn -0.716040 -0.691594 -0.094783
+vn -0.656974 -0.739979 -0.144276
+vn -0.998278 -0.050278 0.030229
+vn -0.583948 -0.811690 0.012813
+vn -0.738468 -0.664842 0.112470
+vn -0.716040 -0.691594 -0.094783
+vn 0.604684 -0.562376 0.563995
+vn 0.620805 -0.430386 0.655262
+vn 0.896333 -0.150513 0.417053
+vn 0.872294 -0.266391 0.410047
+vn 0.896491 -0.388385 0.213214
+vn 0.970849 -0.239689 0.001466
+vn 0.115542 -0.961895 -0.247806
+vn 0.343732 -0.343456 -0.874006
+vn 0.875275 0.426696 0.227650
+vn 0.907813 0.140562 0.395117
+vn 0.879749 0.299749 0.369042
+vn 0.800324 0.499302 0.331931
+vn 0.696406 0.644984 0.314664
+vn 0.879749 0.299749 0.369042
+vn 0.736625 0.594721 0.322011
+vn 0.800324 0.499302 0.331931
+vn 0.542561 -0.359405 0.759246
+vn 0.542857 -0.394506 0.741398
+vn -0.028917 -0.503171 0.863703
+vn -0.099121 -0.616412 0.781160
+vn 0.542857 -0.394506 0.741398
+vn 0.555099 -0.529557 0.641432
+vn -0.099121 -0.616412 0.781160
+vn -0.134596 -0.812903 0.566633
+vn 0.555099 -0.529557 0.641432
+vn 0.450519 -0.771932 0.448502
+vn -0.134596 -0.812903 0.566633
+vn -0.085630 -0.957204 0.276455
+vn 0.784441 -0.392370 0.480310
+vn 0.733455 -0.537073 0.416650
+vn 0.450519 -0.771932 0.448502
+vn 0.363986 -0.885661 0.288303
+vn 0.869700 -0.202105 0.450306
+vn 0.889665 0.099200 0.445707
+vn 0.848098 -0.300589 0.436321
+vn 0.887800 -0.043966 0.458124
+vn 0.954150 0.121652 -0.273494
+vn 0.923924 0.245794 -0.293172
+vn 0.410631 0.278741 -0.868151
+vn 0.428777 0.505097 -0.749018
+vn 0.347744 0.080405 -0.934135
+vn 0.410631 0.278741 -0.868151
+vn 0.138026 0.063752 -0.988375
+vn 0.047257 0.309060 -0.949868
+vn 0.225123 -0.025806 -0.973989
+vn 0.138026 0.063752 -0.988375
+vn 0.103726 -0.085058 -0.990962
+vn -0.060961 -0.011486 -0.998074
+vn 0.167875 -0.077109 -0.982788
+vn 0.103726 -0.085058 -0.990962
+vn -0.313272 -0.059824 -0.947777
+vn -0.291871 -0.063247 -0.954364
+vn 0.163208 -0.120197 -0.979243
+vn 0.167875 -0.077109 -0.982788
+vn -0.331759 -0.098515 -0.938206
+vn -0.313272 -0.059824 -0.947777
+vn 0.145510 -0.117331 -0.982375
+vn 0.163208 -0.120197 -0.979243
+vn -0.366958 -0.079679 -0.926819
+vn -0.331759 -0.098515 -0.938206
+vn 0.145510 -0.117331 -0.982375
+vn -0.366958 -0.079679 -0.926819
+vn 0.135145 -0.023843 -0.990539
+vn -0.423454 0.059899 -0.903935
+vn -0.516365 0.751809 -0.410062
+vn -0.711335 0.539379 -0.450636
+vn -0.149275 0.955594 -0.254081
+vn -0.400099 0.846628 -0.350915
+vn -0.966008 0.217227 -0.140149
+vn -0.909253 0.410491 -0.068970
+vn -0.985407 0.033000 -0.166987
+vn -0.998777 0.034826 -0.035103
+vn -0.978051 0.201139 -0.054407
+vn -0.969805 0.215842 -0.113534
+vn -0.909253 0.410491 -0.068970
+vn -0.837964 0.541254 0.069717
+vn -0.730592 -0.658016 -0.182350
+vn -0.673802 -0.702656 -0.228616
+vn -0.969805 0.215842 -0.113534
+vn -0.977824 0.191661 -0.084419
+vn -0.955162 -0.286081 -0.076315
+vn -0.966780 0.235096 0.100329
+vn -0.965690 -0.172620 -0.194025
+vn -0.952305 0.293224 -0.084471
+vn -0.634000 0.743993 0.210993
+vn -0.076784 0.968887 0.235291
+vn -0.680264 0.731460 0.046980
+vn -0.159431 0.977102 0.140904
+vn -0.977047 -0.072753 -0.200217
+vn -0.978542 -0.058784 -0.197483
+vn -0.970168 -0.157522 -0.184286
+vn -0.975435 -0.133253 -0.175414
+vn -0.977047 -0.072753 -0.200217
+vn -0.970168 -0.157522 -0.184286
+vn -0.975417 -0.065218 -0.210495
+vn -0.966883 -0.171468 -0.189039
+vn -0.967001 0.131062 -0.218476
+vn -0.969079 -0.064992 -0.238037
+vn -0.936566 0.152208 -0.315717
+vn -0.933850 -0.163072 -0.318327
+vn -0.975417 -0.065218 -0.210495
+vn -0.966883 -0.171468 -0.189039
+vn -0.969079 -0.064992 -0.238037
+vn -0.961088 -0.192310 -0.198309
+vn 0.809982 0.523531 0.264279
+vn 0.791450 0.484517 0.372626
+vn 0.899422 0.181835 0.397461
+vn 0.911558 0.102936 0.398079
+vn -0.271457 0.460312 0.845236
+vn -0.251790 0.813378 0.524421
+vn -0.646748 0.316906 0.693749
+vn -0.513655 0.605345 0.608043
+vn -0.772314 0.602702 0.200700
+vn -0.759353 0.650059 -0.028411
+vn -0.745801 0.652845 0.132566
+vn -0.735778 0.674132 -0.064625
+vn -0.772314 0.602702 0.200700
+vn -0.977136 -0.178361 0.115729
+vn -0.763987 0.594667 0.250389
+vn -0.994635 -0.094553 0.041970
+vn -0.763987 0.594667 0.250389
+vn -0.994635 -0.094553 0.041970
+vn -0.623339 0.677973 0.389617
+vn -0.952677 0.083444 0.292306
+vn 0.507272 -0.843656 0.175839
+vn 0.591405 -0.783039 0.192587
+vn 0.628074 -0.742885 0.231614
+vn 0.953432 -0.280121 0.111805
+vn 0.918841 -0.380777 0.103632
+vn 0.174904 -0.827820 -0.533031
+vn 0.599286 -0.768775 0.223253
+vn 0.019602 -0.999002 -0.040140
+vn 0.922612 -0.362316 0.132343
+vn 0.982394 -0.176128 -0.062291
+vn 0.142369 -0.835096 -0.531362
+vn 0.266202 -0.207285 -0.941366
+vn -0.075450 -0.946777 0.312922
+vn -0.176086 -0.714934 0.676656
+vn 0.718342 -0.462878 0.519354
+vn 0.678955 -0.385612 0.624759
+vn -0.077198 -0.938562 0.336366
+vn -0.862566 -0.494272 -0.108052
+vn -0.158658 -0.696392 0.699905
+vn -0.908397 -0.409745 0.083207
+vn 0.007229 -0.999114 -0.041451
+vn -0.601439 -0.743988 -0.291125
+vn -0.077198 -0.938562 0.336366
+vn -0.862566 -0.494272 -0.108052
+vn -0.158658 -0.696392 0.699905
+vn -0.908397 -0.409745 0.083207
+vn -0.101496 -0.883429 0.457440
+vn -0.707839 -0.700247 0.092836
+vn 0.339167 -0.935837 0.095790
+vn 0.912404 -0.099385 0.397041
+vn 0.578108 -0.792663 0.193589
+vn 0.971366 -0.217390 0.095859
+vn 0.557730 -0.797058 0.231595
+vn 0.722685 -0.375372 0.580364
+vn 0.339167 -0.935837 0.095790
+vn 0.912404 -0.099385 0.397041
+vn 0.428649 -0.890211 0.154219
+vn 0.661869 -0.694565 0.281972
+vn 0.557730 -0.797058 0.231595
+vn 0.722685 -0.375372 0.580364
+vn 0.659548 -0.381591 0.647599
+vn 0.529528 -0.708771 0.466094
+vn -0.107433 -0.745979 0.657247
+vn 0.097791 -0.963920 0.247577
+vn 0.659548 -0.381591 0.647599
+vn 0.534660 -0.336065 0.775370
+vn 0.909955 -0.090194 0.404781
+vn 0.909476 -0.184061 0.372793
+vn 0.393670 -0.910149 0.129047
+vn 0.451831 -0.776419 0.439343
+vn 0.902999 -0.310798 0.296643
+vn 0.503862 -0.471831 0.723532
+vn 0.451831 -0.776419 0.439343
+vn 0.402762 -0.737083 0.542671
+vn 0.503862 -0.471831 0.723532
+vn 0.197265 -0.747926 0.633793
+vn -0.008541 -0.762608 0.646804
+vn 0.055991 -0.480399 0.875261
+vn 0.197265 -0.747926 0.633793
+vn 0.503862 -0.471831 0.723532
+vn -0.008541 -0.762608 0.646804
+vn -0.008457 -0.947863 0.318566
+vn -0.157961 -0.798827 0.580452
+vn -0.094885 -0.961402 0.258269
+vn -0.042650 -0.731881 0.680096
+vn -0.215893 -0.748799 0.626650
+vn -0.008457 -0.947863 0.318566
+vn -0.094885 -0.961402 0.258269
+vn -0.042650 -0.731881 0.680096
+vn -0.105417 -0.033884 0.993851
+vn -0.215893 -0.748799 0.626650
+vn -0.325877 0.032928 0.944839
+vn -0.095309 0.181604 0.978742
+vn -0.048686 0.251827 0.966547
+vn -0.306590 0.273647 0.911658
+vn -0.271457 0.460312 0.845236
+vn 0.746899 -0.083691 0.659650
+vn 0.759703 -0.453987 0.465561
+vn 0.849802 -0.028698 0.526320
+vn 0.893294 -0.136227 0.428331
+vn 0.883609 -0.421782 0.203311
+vn 0.972457 -0.231980 -0.022648
+vn 0.113199 -0.951421 -0.286330
+vn 0.317021 -0.316497 -0.894051
+vn -0.127036 -0.921648 0.366642
+vn -0.248715 -0.715748 0.652569
+vn 0.604684 -0.562376 0.563995
+vn 0.620805 -0.430386 0.655262
+vn -0.206217 -0.698260 0.685498
+vn -0.146565 -0.858898 0.490726
+vn 0.619756 -0.418228 0.664069
+vn 0.444409 -0.694478 0.565863
+vn 0.619756 -0.418228 0.664069
+vn 0.444409 -0.694478 0.565863
+vn 0.874979 -0.257565 0.409967
+vn 0.622759 -0.707250 0.334617
+vn 0.874979 -0.257565 0.409967
+vn 0.622759 -0.707250 0.334617
+vn 0.972457 -0.231980 -0.022648
+vn 0.771371 -0.636153 -0.017202
+vn 0.078628 -0.926189 -0.368770
+vn 0.227739 -0.196983 -0.953589
+vn -0.788037 -0.307667 -0.533235
+vn -0.655254 -0.107502 -0.747720
+vn 0.970536 -0.193496 -0.143597
+vn 0.816241 -0.538320 -0.209672
+vn 0.227739 -0.196983 -0.953589
+vn 0.189514 -0.671000 -0.716829
+vn 0.949544 0.143209 0.279031
+vn 0.822722 0.025690 0.567864
+vn 0.937088 -0.126645 0.325311
+vn 0.617964 0.564679 0.547044
+vn 0.937088 -0.126645 0.325311
+vn 0.617964 0.564679 0.547044
+vn 0.908721 -0.134690 0.395076
+vn 0.618940 0.715661 0.323638
+vn -0.507819 -0.861261 -0.018711
+vn -0.475821 -0.876649 -0.071279
+vn -0.656974 -0.739979 -0.144276
+vn -0.613800 -0.779392 -0.125688
+vn 0.188999 0.964282 -0.185578
+vn 0.448681 0.488052 -0.748660
+vn 0.875275 0.426696 0.227650
+vn 0.958577 0.279520 0.054764
+vn -0.998278 -0.050278 0.030229
+vn -0.942665 0.330435 -0.046852
+vn -0.624487 0.742340 -0.242791
+vn -0.898697 0.287244 -0.331414
+vn -0.998278 -0.050278 0.030229
+vn -0.738468 -0.664842 0.112470
+vn -0.318873 0.125716 0.939423
+vn -0.324191 -0.104786 0.940170
+vn 0.620805 -0.430386 0.655262
+vn 0.437664 -0.710965 0.550435
+vn 0.872294 -0.266391 0.410047
+vn 0.609376 -0.719071 0.334061
+vn 0.872294 -0.266391 0.410047
+vn 0.609376 -0.719071 0.334061
+vn 0.970849 -0.239689 0.001466
+vn 0.753036 -0.657686 0.019653
+vn 0.875275 0.426696 0.227650
+vn 0.958577 0.279520 0.054764
+vn 0.907813 0.140562 0.395117
+vn 0.883652 0.284201 0.372008
+vn 0.817261 0.479919 0.319001
+vn 0.736625 0.594721 0.322011
+vn 0.887958 0.226039 0.400546
+vn 0.800324 0.499302 0.331931
+vn 0.796014 0.459850 0.393574
+vn 0.795508 0.414516 0.441977
+vn 0.889665 0.099200 0.445707
+vn 0.887800 -0.043966 0.458124
+vn 0.736625 0.594721 0.322011
+vn 0.854483 0.373172 0.361389
+vn 0.796014 0.459850 0.393574
+vn 0.849454 0.325787 0.415079
+vn 0.542561 -0.359405 0.759246
+vn -0.028917 -0.503171 0.863703
+vn 0.547087 -0.370022 0.750852
+vn -0.000641 -0.460155 0.887838
+vn 0.733455 -0.537073 0.416650
+vn 0.869700 -0.202105 0.450306
+vn 0.706591 -0.591199 0.388861
+vn 0.848098 -0.300589 0.436321
+vn 0.921431 -0.131090 0.365761
+vn 0.547087 -0.370022 0.750852
+vn 0.925691 -0.156523 0.344379
+vn 0.569062 -0.382400 0.727969
+vn 0.997172 0.048829 0.057137
+vn 0.921431 -0.131090 0.365761
+vn 0.997926 0.041849 0.048905
+vn 0.925691 -0.156523 0.344379
+vn 0.923924 0.245794 -0.293172
+vn 0.997172 0.048829 0.057137
+vn 0.920132 0.292555 -0.260326
+vn 0.997926 0.041849 0.048905
+vn 0.135145 -0.023843 -0.990539
+vn -0.423454 0.059899 -0.903935
+vn 0.029552 0.325226 -0.945174
+vn -0.382851 0.500025 -0.776788
+vn -0.554392 0.602551 -0.574092
+vn -0.382851 0.500025 -0.776788
+vn -0.746345 0.123247 -0.654049
+vn -0.423454 0.059899 -0.903935
+vn -0.554392 0.602551 -0.574092
+vn -0.785298 0.498689 -0.366901
+vn -0.516365 0.751809 -0.410062
+vn -0.818184 0.464244 -0.339193
+vn -0.516365 0.751809 -0.410062
+vn -0.818184 0.464244 -0.339193
+vn -0.711335 0.539379 -0.450636
+vn -0.908154 -0.059141 -0.414437
+vn -0.966008 0.217227 -0.140149
+vn -0.985407 0.033000 -0.166987
+vn -0.982018 0.025293 -0.187083
+vn -0.974658 0.137836 -0.176192
+vn -0.982018 0.025293 -0.187083
+vn -0.981045 -0.077715 -0.177511
+vn -0.978731 0.017542 -0.204397
+vn -0.971448 -0.051914 -0.231503
+vn -0.955162 -0.286081 -0.076315
+vn -0.965690 -0.172620 -0.194025
+vn -0.673802 -0.702656 -0.228616
+vn -0.743116 -0.618402 -0.255649
+vn -0.952305 0.293224 -0.084471
+vn -0.680264 0.731460 0.046980
+vn -0.845137 0.386342 -0.369436
+vn -0.614751 0.743723 -0.262598
+vn -0.965690 -0.172620 -0.194025
+vn -0.952305 0.293224 -0.084471
+vn -0.907508 -0.160824 -0.388028
+vn -0.845137 0.386342 -0.369436
+vn -0.076784 0.968887 0.235291
+vn 0.315350 0.936708 0.152097
+vn -0.159431 0.977102 0.140904
+vn -0.054445 0.998082 -0.029477
+vn 0.216178 0.936259 0.276924
+vn 0.639367 0.713704 0.286070
+vn 0.315350 0.936708 0.152097
+vn 0.634769 0.744948 0.205234
+vn 0.594136 0.729776 0.338275
+vn 0.791440 0.557881 0.249783
+vn 0.639367 0.713704 0.286070
+vn 0.634769 0.744948 0.205234
+vn -0.978731 0.017542 -0.204397
+vn -0.971448 -0.051914 -0.231503
+vn -0.974687 -0.036231 -0.220621
+vn -0.967810 -0.019463 -0.250927
+vn -0.978542 -0.058784 -0.197483
+vn -0.974687 -0.036231 -0.220621
+vn -0.975435 -0.133253 -0.175414
+vn -0.972146 -0.049385 -0.229116
+vn -0.936566 0.152208 -0.315717
+vn -0.848153 0.220849 -0.481521
+vn -0.803184 0.560908 -0.200693
+vn -0.819506 0.523218 -0.233781
+vn 0.949544 0.143209 0.279031
+vn 0.899422 0.181835 0.397461
+vn 0.822722 0.025690 0.567864
+vn 0.761767 -0.468906 0.447033
+vn 0.731209 0.476314 0.488321
+vn 0.901475 0.158933 0.402595
+vn 0.791450 0.484517 0.372626
+vn 0.911558 0.102936 0.398079
+vn 0.746899 -0.083691 0.659650
+vn 0.849802 -0.028698 0.526320
+vn 0.731209 0.476314 0.488321
+vn 0.901475 0.158933 0.402595
+vn -0.646748 0.316906 0.693749
+vn -0.850599 0.109163 0.514358
+vn -0.271457 0.460312 0.845236
+vn -0.528002 0.245371 0.813023
+vn -0.623339 0.677973 0.389617
+vn -0.952677 0.083444 0.292306
+vn -0.513655 0.605345 0.608043
+vn -0.646748 0.316906 0.693749
+vn -0.745801 0.652845 0.132566
+vn -0.980757 -0.094483 0.170845
+vn -0.772314 0.602702 0.200700
+vn -0.977136 -0.178361 0.115729
+vn -0.803184 0.560908 -0.200693
+vn -0.819506 0.523218 -0.233781
+vn -0.735778 0.674132 -0.064625
+vn -0.864681 0.484214 -0.133654
+vn 0.677706 -0.466604 0.568327
+vn 0.628074 -0.742885 0.231614
+vn -0.147100 -0.880891 0.449881
+vn 0.027569 -0.999161 -0.030274
+vn 0.677706 -0.466604 0.568327
+vn 0.581385 -0.404435 0.705991
+vn 0.911158 -0.114397 0.395859
+vn 0.900453 -0.211708 0.379952
+vn 0.911158 -0.114397 0.395859
+vn 0.900453 -0.211708 0.379952
+vn 0.918841 -0.380777 0.103632
+vn 0.975908 -0.136873 -0.169911
+vn 0.918841 -0.380777 0.103632
+vn 0.975908 -0.136873 -0.169911
+vn 0.174904 -0.827820 -0.533031
+vn 0.305975 -0.098441 -0.946936
+vn 0.007229 -0.999114 -0.041451
+vn 0.142369 -0.835096 -0.531362
+vn -0.601439 -0.743988 -0.291125
+vn -0.786560 -0.255997 -0.561951
+vn -0.075450 -0.946777 0.312922
+vn -0.886378 -0.440307 -0.143050
+vn -0.176086 -0.714934 0.676656
+vn -0.931724 -0.363157 0.002664
+vn 0.019602 -0.999002 -0.040140
+vn -0.622505 -0.724949 -0.294851
+vn -0.075450 -0.946777 0.312922
+vn -0.886378 -0.440307 -0.143050
+vn -0.176086 -0.714934 0.676656
+vn -0.103744 -0.896023 0.431718
+vn 0.678955 -0.385612 0.624759
+vn 0.540813 -0.667962 0.511223
+vn 0.678955 -0.385612 0.624759
+vn 0.540813 -0.667962 0.511223
+vn 0.900467 -0.221657 0.374203
+vn 0.713174 -0.655088 0.249485
+vn 0.900467 -0.221657 0.374203
+vn 0.713174 -0.655088 0.249485
+vn 0.982394 -0.176128 -0.062291
+vn 0.831272 -0.544267 -0.112961
+vn -0.101496 -0.883429 0.457440
+vn 0.025128 -0.997713 -0.062747
+vn 0.492740 -0.684301 0.537531
+vn 0.692023 -0.682897 0.234001
+vn 0.692023 -0.682897 0.234001
+vn 0.025128 -0.997713 -0.062747
+vn 0.816241 -0.538320 -0.209672
+vn 0.189514 -0.671000 -0.716829
+vn 0.493956 -0.855310 0.156371
+vn 0.648589 -0.720568 0.245181
+vn 0.356900 -0.929141 0.096533
+vn 0.705533 -0.390467 0.591405
+vn 0.493956 -0.855310 0.156371
+vn 0.578108 -0.792663 0.193589
+vn 0.648589 -0.720568 0.245181
+vn 0.971366 -0.217390 0.095859
+vn 0.949883 -0.310370 0.037330
+vn 0.270165 -0.607246 -0.747170
+vn 0.661869 -0.694565 0.281972
+vn 0.041970 -0.999079 0.008960
+vn 0.909955 -0.090194 0.404781
+vn 0.909476 -0.184061 0.372793
+vn 0.949883 -0.310370 0.037330
+vn 0.948681 -0.105760 -0.298024
+vn 0.659548 -0.381591 0.647599
+vn -0.107433 -0.745979 0.657247
+vn 0.534660 -0.336065 0.775370
+vn -0.214804 -0.512800 0.831201
+vn 0.902999 -0.310798 0.296643
+vn 0.592912 -0.331623 -0.733813
+vn 0.393670 -0.910149 0.129047
+vn -0.014163 -0.913923 -0.405640
+vn 0.393670 -0.910149 0.129047
+vn -0.014163 -0.913923 -0.405640
+vn -0.006916 -0.996373 0.084813
+vn -0.829931 -0.554033 -0.065290
+vn -0.006916 -0.996373 0.084813
+vn -0.829931 -0.554033 -0.065290
+vn 0.097791 -0.963920 0.247577
+vn -0.107433 -0.745979 0.657247
+vn 0.055991 -0.480399 0.875261
+vn -0.008541 -0.762608 0.646804
+vn -0.420919 -0.758097 0.498112
+vn -0.157961 -0.798827 0.580452
+vn -0.105417 -0.033884 0.993851
+vn -0.095309 0.181604 0.978742
+vn -0.325877 0.032928 0.944839
+vn -0.306590 0.273647 0.911658
+vn -0.271457 0.460312 0.845236
+vn -0.528002 0.245371 0.813023
+vn -0.306590 0.273647 0.911658
+vn -0.514300 0.177769 0.838984
+vn -0.036004 -0.991688 0.123528
+vn 0.113199 -0.951421 -0.286330
+vn -0.542331 -0.832427 -0.113765
+vn -0.791405 -0.341715 -0.506861
+vn -0.127036 -0.921648 0.366642
+vn -0.843069 -0.536840 -0.032206
+vn -0.248715 -0.715748 0.652569
+vn -0.921698 -0.387143 0.024357
+vn -0.036004 -0.991688 0.123528
+vn -0.542331 -0.832427 -0.113765
+vn -0.127036 -0.921648 0.366642
+vn -0.843069 -0.536840 -0.032206
+vn -0.206217 -0.698260 0.685498
+vn -0.918771 -0.391387 0.051738
+vn -0.146565 -0.858898 0.490726
+vn -0.705810 -0.699427 0.112402
+vn -0.596796 -0.787491 -0.153926
+vn -0.788037 -0.307667 -0.533235
+vn -0.747637 -0.624367 -0.226285
+vn -0.786892 -0.537806 -0.302599
+vn -0.858050 -0.511664 -0.044157
+vn -0.596796 -0.787491 -0.153926
+vn -0.782189 -0.584991 -0.214396
+vn -0.747637 -0.624367 -0.226285
+vn -0.858050 -0.511664 -0.044157
+vn -0.930567 -0.077426 -0.357841
+vn -0.918771 -0.391387 0.051738
+vn -0.918787 -0.186450 -0.347946
+vn 0.908721 -0.134690 0.395076
+vn 0.618940 0.715661 0.323638
+vn 0.893294 -0.136227 0.428331
+vn 0.667076 0.726133 0.166556
+vn -0.475821 -0.876649 -0.071279
+vn -0.786988 -0.365698 -0.496906
+vn -0.613800 -0.779392 -0.125688
+vn -0.685739 -0.704123 -0.184318
+vn -0.786988 -0.365698 -0.496906
+vn 0.115542 -0.961895 -0.247806
+vn -0.690506 -0.163857 -0.704523
+vn 0.343732 -0.343456 -0.874006
+vn 0.188999 0.964282 -0.185578
+vn -0.785424 0.369743 -0.496387
+vn 0.448681 0.488052 -0.748660
+vn -0.709144 0.200082 -0.676079
+vn -0.785424 0.369743 -0.496387
+vn -0.624487 0.742340 -0.242791
+vn -0.892706 0.226722 -0.389452
+vn -0.898697 0.287244 -0.331414
+vn -0.998278 -0.050278 0.030229
+vn -0.318873 0.125716 0.939423
+vn -0.942665 0.330435 -0.046852
+vn -0.243176 0.451407 0.858544
+vn -0.738468 -0.664842 0.112470
+vn -0.716040 -0.691594 -0.094783
+vn -0.244472 -0.940516 0.235930
+vn -0.325619 -0.942848 0.070779
+vn -0.716040 -0.691594 -0.094783
+vn -0.656974 -0.739979 -0.144276
+vn -0.325619 -0.942848 0.070779
+vn -0.295110 -0.955075 0.027248
+vn -0.248715 -0.715748 0.652569
+vn -0.170589 -0.868492 0.465425
+vn 0.620805 -0.430386 0.655262
+vn 0.437664 -0.710965 0.550435
+vn 0.970849 -0.239689 0.001466
+vn 0.753036 -0.657686 0.019653
+vn 0.343732 -0.343456 -0.874006
+vn 0.200186 -0.850849 -0.485780
+vn 0.907813 0.140562 0.395117
+vn 0.720772 0.503611 0.476303
+vn 0.800324 0.499302 0.331931
+vn 0.887958 0.226039 0.400546
+vn 0.817261 0.479919 0.319001
+vn 0.918597 0.203312 0.338885
+vn 0.736625 0.594721 0.322011
+vn 0.864811 0.363047 0.346842
+vn 0.795508 0.414516 0.441977
+vn 0.796014 0.459850 0.393574
+vn 0.782682 0.437018 0.443197
+vn 0.849454 0.325787 0.415079
+vn 0.736625 0.594721 0.322011
+vn 0.860493 0.345141 0.374740
+vn 0.854483 0.373172 0.361389
+vn 0.856696 0.377049 0.352003
+vn -0.028917 -0.503171 0.863703
+vn -0.099121 -0.616412 0.781160
+vn -0.578644 -0.450482 0.679880
+vn -0.641622 -0.561115 0.522945
+vn -0.099121 -0.616412 0.781160
+vn -0.134596 -0.812903 0.566633
+vn -0.641622 -0.561115 0.522945
+vn -0.629255 -0.724739 0.280699
+vn -0.134596 -0.812903 0.566633
+vn -0.085630 -0.957204 0.276455
+vn -0.629255 -0.724739 0.280699
+vn -0.485335 -0.869509 0.091679
+vn 0.450519 -0.771932 0.448502
+vn 0.363986 -0.885661 0.288303
+vn -0.085630 -0.957204 0.276455
+vn -0.043392 -0.989535 0.137614
+vn 0.733455 -0.537073 0.416650
+vn 0.706591 -0.591199 0.388861
+vn 0.363986 -0.885661 0.288303
+vn 0.309959 -0.919579 0.241455
+vn 0.706591 -0.591199 0.388861
+vn 0.848098 -0.300589 0.436321
+vn 0.668401 -0.635665 0.386226
+vn 0.787558 -0.427864 0.443492
+vn 0.848098 -0.300589 0.436321
+vn 0.887800 -0.043966 0.458124
+vn 0.787558 -0.427864 0.443492
+vn 0.840771 -0.242574 0.484007
+vn 0.920132 0.292555 -0.260326
+vn 0.433943 0.610832 -0.662252
+vn 0.923924 0.245794 -0.293172
+vn 0.428777 0.505097 -0.749018
+vn 0.428777 0.505097 -0.749018
+vn 0.005051 0.550804 -0.834619
+vn 0.410631 0.278741 -0.868151
+vn 0.047257 0.309060 -0.949868
+vn 0.138026 0.063752 -0.988375
+vn 0.047257 0.309060 -0.949868
+vn -0.060961 -0.011486 -0.998074
+vn -0.320254 0.237018 -0.917202
+vn 0.103726 -0.085058 -0.990962
+vn -0.060961 -0.011486 -0.998074
+vn -0.291871 -0.063247 -0.954364
+vn -0.478081 -0.040997 -0.877358
+vn -0.313272 -0.059824 -0.947777
+vn -0.291871 -0.063247 -0.954364
+vn -0.843336 -0.016951 -0.537119
+vn -0.855965 0.044644 -0.515102
+vn -0.331759 -0.098515 -0.938206
+vn -0.313272 -0.059824 -0.947777
+vn -0.832354 -0.091256 -0.546680
+vn -0.843336 -0.016951 -0.537119
+vn -0.331759 -0.098515 -0.938206
+vn -0.832354 -0.091256 -0.546680
+vn -0.366958 -0.079679 -0.926819
+vn -0.787978 -0.074546 -0.611174
+vn -0.366958 -0.079679 -0.926819
+vn -0.787978 -0.074546 -0.611174
+vn -0.423454 0.059899 -0.903935
+vn -0.746345 0.123247 -0.654049
+vn -0.554392 0.602551 -0.574092
+vn -0.746345 0.123247 -0.654049
+vn -0.785298 0.498689 -0.366901
+vn -0.923249 0.104826 -0.369625
+vn -0.149275 0.955594 -0.254081
+vn -0.400099 0.846628 -0.350915
+vn 0.318734 0.946409 -0.052149
+vn -0.066587 0.988486 -0.135877
+vn -0.711335 0.539379 -0.450636
+vn -0.845137 0.386342 -0.369436
+vn -0.400099 0.846628 -0.350915
+vn -0.614751 0.743723 -0.262598
+vn -0.982018 0.025293 -0.187083
+vn -0.974658 0.137836 -0.176192
+vn -0.981045 -0.077715 -0.177511
+vn -0.993558 0.017081 -0.112031
+vn -0.985407 0.033000 -0.166987
+vn -0.998777 0.034826 -0.035103
+vn -0.959072 -0.225294 -0.171535
+vn -0.945198 -0.326270 -0.012155
+vn -0.909253 0.410491 -0.068970
+vn -0.837964 0.541254 0.069717
+vn -0.998777 0.034826 -0.035103
+vn -0.913248 0.394656 0.101116
+vn -0.969805 0.215842 -0.113534
+vn -0.977824 0.191661 -0.084419
+vn -0.837964 0.541254 0.069717
+vn -0.670772 0.724816 0.157185
+vn -0.673802 -0.702656 -0.228616
+vn -0.743116 -0.618402 -0.255649
+vn -0.977824 0.191661 -0.084419
+vn -0.884137 -0.436393 -0.166923
+vn -0.907508 -0.160824 -0.388028
+vn -0.729060 -0.590593 -0.345936
+vn -0.965690 -0.172620 -0.194025
+vn -0.743116 -0.618402 -0.255649
+vn -0.680264 0.731460 0.046980
+vn -0.159431 0.977102 0.140904
+vn -0.614751 0.743723 -0.262598
+vn -0.054445 0.998082 -0.029477
+vn -0.970168 -0.157522 -0.184286
+vn -0.975435 -0.133253 -0.175414
+vn -0.931025 -0.328896 -0.158175
+vn -0.883420 -0.456587 -0.105348
+vn -0.970168 -0.157522 -0.184286
+vn -0.961160 -0.225268 -0.159456
+vn -0.966883 -0.171468 -0.189039
+vn -0.972194 -0.196287 -0.127713
+vn -0.936566 0.152208 -0.315717
+vn -0.933850 -0.163072 -0.318327
+vn -0.848153 0.220849 -0.481521
+vn -0.850713 -0.329971 -0.409153
+vn -0.969079 -0.064992 -0.238037
+vn -0.961088 -0.192310 -0.198309
+vn -0.933850 -0.163072 -0.318327
+vn -0.924186 -0.332393 -0.188138
+vn -0.966883 -0.171468 -0.189039
+vn -0.972194 -0.196287 -0.127713
+vn -0.961088 -0.192310 -0.198309
+vn -0.958342 -0.274919 -0.077462
+vn 0.899422 0.181835 0.397461
+vn 0.911558 0.102936 0.398079
+vn 0.761767 -0.468906 0.447033
+vn 0.796369 -0.520620 0.307817
+vn -0.850599 0.109163 0.514358
+vn -0.646748 0.316906 0.693749
+vn -0.993838 -0.096222 0.055027
+vn -0.952677 0.083444 0.292306
+vn -0.980757 -0.094483 0.170845
+vn -0.745801 0.652845 0.132566
+vn -0.988105 -0.083632 0.129050
+vn -0.879423 0.476024 -0.004130
+vn -0.745801 0.652845 0.132566
+vn -0.735778 0.674132 -0.064625
+vn -0.879423 0.476024 -0.004130
+vn -0.864681 0.484214 -0.133654
+vn -0.980757 -0.094483 0.170845
+vn -0.925336 -0.378346 -0.024668
+vn -0.977136 -0.178361 0.115729
+vn -0.958342 -0.274919 -0.077462
+vn -0.977136 -0.178361 0.115729
+vn -0.958342 -0.274919 -0.077462
+vn -0.994635 -0.094553 0.041970
+vn -0.972194 -0.196287 -0.127713
+vn -0.952677 0.083444 0.292306
+vn -0.994635 -0.094553 0.041970
+vn -0.993838 -0.096222 0.055027
+vn -0.972194 -0.196287 -0.127713
+vn 0.953432 -0.280121 0.111805
+vn 0.269719 -0.665956 -0.695524
+vn 0.628074 -0.742885 0.231614
+vn 0.027569 -0.999161 -0.030274
+vn 0.953432 -0.280121 0.111805
+vn 0.591405 -0.783039 0.192587
+vn 0.912421 -0.104054 0.395803
+vn 0.621329 -0.749180 0.229523
+vn -0.147100 -0.880891 0.449881
+vn -0.254096 -0.630711 0.733238
+vn 0.677706 -0.466604 0.568327
+vn 0.581385 -0.404435 0.705991
+vn 0.019602 -0.999002 -0.040140
+vn 0.174904 -0.827820 -0.533031
+vn -0.622505 -0.724949 -0.294851
+vn -0.756108 -0.287422 -0.587953
+vn 0.142369 -0.835096 -0.531362
+vn 0.266202 -0.207285 -0.941366
+vn -0.786560 -0.255997 -0.561951
+vn -0.691598 -0.099463 -0.715402
+vn 0.982394 -0.176128 -0.062291
+vn 0.831272 -0.544267 -0.112961
+vn 0.266202 -0.207285 -0.941366
+vn 0.208853 -0.709160 -0.673404
+vn -0.176086 -0.714934 0.676656
+vn -0.931724 -0.363157 0.002664
+vn -0.103744 -0.896023 0.431718
+vn -0.737123 -0.675476 0.019550
+vn -0.862566 -0.494272 -0.108052
+vn -0.601439 -0.743988 -0.291125
+vn -0.801629 -0.501355 -0.325629
+vn -0.757556 -0.560224 -0.335048
+vn -0.862566 -0.494272 -0.108052
+vn -0.928137 -0.068478 -0.365886
+vn -0.908397 -0.409745 0.083207
+vn -0.913202 -0.168189 -0.371180
+vn -0.707839 -0.700247 0.092836
+vn -0.682442 -0.657038 -0.320271
+vn -0.101496 -0.883429 0.457440
+vn 0.025128 -0.997713 -0.062747
+vn -0.908397 -0.409745 0.083207
+vn -0.913202 -0.168189 -0.371180
+vn -0.707839 -0.700247 0.092836
+vn -0.682442 -0.657038 -0.320271
+vn 0.356900 -0.929141 0.096533
+vn 0.705533 -0.390467 0.591405
+vn 0.621329 -0.749180 0.229523
+vn 0.912421 -0.104054 0.395803
+vn 0.722685 -0.375372 0.580364
+vn 0.651249 -0.350142 0.673258
+vn 0.912404 -0.099385 0.397041
+vn 0.906341 -0.187288 0.378773
+vn 0.912404 -0.099385 0.397041
+vn 0.906341 -0.187288 0.378773
+vn 0.971366 -0.217390 0.095859
+vn 0.988176 -0.068884 -0.136976
+vn 0.722685 -0.375372 0.580364
+vn 0.661869 -0.694565 0.281972
+vn -0.116165 -0.821097 0.558844
+vn 0.041970 -0.999079 0.008960
+vn 0.949883 -0.310370 0.037330
+vn 0.948681 -0.105760 -0.298024
+vn 0.270165 -0.607246 -0.747170
+vn 0.314999 -0.071118 -0.946424
+vn 0.534660 -0.336065 0.775370
+vn 0.456720 -0.588096 0.667495
+vn 0.909476 -0.184061 0.372793
+vn 0.748091 -0.613011 0.254121
+vn 0.592912 -0.331623 -0.733813
+vn 0.902999 -0.310798 0.296643
+vn 0.758102 -0.112102 -0.642429
+vn 0.937682 -0.189876 0.291033
+vn 0.503862 -0.471831 0.723532
+vn 0.647767 -0.281365 0.707977
+vn 0.902999 -0.310798 0.296643
+vn 0.937682 -0.189876 0.291033
+vn 0.055991 -0.480399 0.875261
+vn 0.120983 -0.399556 0.908690
+vn 0.503862 -0.471831 0.723532
+vn 0.647767 -0.281365 0.707977
+vn -0.420919 -0.758097 0.498112
+vn -0.761033 -0.385958 0.521408
+vn 0.055991 -0.480399 0.875261
+vn 0.120983 -0.399556 0.908690
+vn -0.157961 -0.798827 0.580452
+vn -0.257101 -0.814461 0.520147
+vn -0.420919 -0.758097 0.498112
+vn 0.030858 -0.786884 0.616329
+vn -0.094885 -0.961402 0.258269
+vn -0.257101 -0.814461 0.520147
+vn -0.157961 -0.798827 0.580452
+vn -0.215893 -0.748799 0.626650
+vn -0.380646 -0.730377 0.567149
+vn -0.094885 -0.961402 0.258269
+vn -0.184102 -0.948965 0.256071
+vn -0.325877 0.032928 0.944839
+vn -0.516709 -0.034468 0.855467
+vn -0.215893 -0.748799 0.626650
+vn -0.380646 -0.730377 0.567149
+vn -0.306590 0.273647 0.911658
+vn -0.514300 0.177769 0.838984
+vn -0.325877 0.032928 0.944839
+vn -0.516709 -0.034468 0.855467
+vn 0.849802 -0.028698 0.526320
+vn 0.893294 -0.136227 0.428331
+vn 0.956113 0.228267 0.183692
+vn 0.667076 0.726133 0.166556
+vn 0.317021 -0.316497 -0.894051
+vn -0.689404 -0.152706 -0.708098
+vn 0.113199 -0.951421 -0.286330
+vn -0.791405 -0.341715 -0.506861
+vn 0.972457 -0.231980 -0.022648
+vn 0.771371 -0.636153 -0.017202
+vn 0.317021 -0.316497 -0.894051
+vn 0.195111 -0.826471 -0.528089
+vn -0.146565 -0.858898 0.490726
+vn -0.017130 -0.994907 0.099333
+vn 0.444409 -0.694478 0.565863
+vn 0.622759 -0.707250 0.334617
+vn 0.622759 -0.707250 0.334617
+vn -0.017130 -0.994907 0.099333
+vn 0.771371 -0.636153 -0.017202
+vn 0.195111 -0.826471 -0.528089
+vn -0.655254 -0.107502 -0.747720
+vn -0.913202 -0.168189 -0.371180
+vn -0.788037 -0.307667 -0.533235
+vn -0.928137 -0.068478 -0.365886
+vn -0.655254 -0.107502 -0.747720
+vn 0.227739 -0.196983 -0.953589
+vn -0.519780 -0.472822 -0.711525
+vn 0.189514 -0.671000 -0.716829
+vn -0.782189 -0.584991 -0.214396
+vn -0.798464 -0.552104 -0.240075
+vn -0.858050 -0.511664 -0.044157
+vn -0.930567 -0.077426 -0.357841
+vn 0.822722 0.025690 0.567864
+vn 0.514789 -0.210957 0.830957
+vn 0.617964 0.564679 0.547044
+vn 0.374980 0.782137 0.497646
+vn 0.617964 0.564679 0.547044
+vn 0.374980 0.782137 0.497646
+vn 0.618940 0.715661 0.323638
+vn 0.351063 0.914438 0.201390
+vn -0.690506 -0.163857 -0.704523
+vn -0.917206 -0.194525 -0.347696
+vn -0.786988 -0.365698 -0.496906
+vn -0.930521 -0.089169 -0.355218
+vn -0.656974 -0.739979 -0.144276
+vn -0.613800 -0.779392 -0.125688
+vn -0.295110 -0.955075 0.027248
+vn -0.270240 -0.961654 0.046827
+vn -0.785424 0.369743 -0.496387
+vn -0.892706 0.226722 -0.389452
+vn -0.927941 0.065783 -0.366875
+vn -0.910466 0.175059 -0.374709
+vn 0.958577 0.279520 0.054764
+vn 0.448681 0.488052 -0.748660
+vn 0.776505 0.629572 -0.026050
+vn 0.320268 0.803586 -0.501675
+vn -0.942665 0.330435 -0.046852
+vn -0.729401 0.667596 -0.149298
+vn -0.898697 0.287244 -0.331414
+vn -0.693852 0.665241 -0.275725
+vn -0.738468 -0.664842 0.112470
+vn -0.244472 -0.940516 0.235930
+vn -0.324191 -0.104786 0.940170
+vn -0.215515 -0.093260 0.972037
+vn -0.318873 0.125716 0.939423
+vn -0.324191 -0.104786 0.940170
+vn 0.772469 0.304211 0.557447
+vn 0.453986 0.837894 0.303035
+vn -0.248715 -0.715748 0.652569
+vn -0.921698 -0.387143 0.024357
+vn -0.170589 -0.868492 0.465425
+vn -0.705925 -0.702991 0.086449
+vn -0.690506 -0.163857 -0.704523
+vn 0.343732 -0.343456 -0.874006
+vn -0.553698 -0.632669 -0.541432
+vn 0.200186 -0.850849 -0.485780
+vn -0.170589 -0.868492 0.465425
+vn -0.021225 -0.994698 0.100629
+vn 0.437664 -0.710965 0.550435
+vn 0.609376 -0.719071 0.334061
+vn 0.609376 -0.719071 0.334061
+vn -0.021225 -0.994698 0.100629
+vn 0.753036 -0.657686 0.019653
+vn 0.200186 -0.850849 -0.485780
+vn 0.883652 0.284201 0.372008
+vn 0.664139 0.466885 0.583899
+vn 0.907813 0.140562 0.395117
+vn 0.720772 0.503611 0.476303
+vn 0.883652 0.284201 0.372008
+vn 0.958577 0.279520 0.054764
+vn 0.649670 0.723388 0.233749
+vn 0.776505 0.629572 -0.026050
+vn 0.795508 0.414516 0.441977
+vn 0.782682 0.437018 0.443197
+vn 0.770135 0.450087 0.452011
+vn 0.816796 0.364210 0.447433
+vn 0.795508 0.414516 0.441977
+vn 0.810652 0.329945 0.483715
+vn 0.887800 -0.043966 0.458124
+vn 0.840771 -0.242574 0.484007
+vn 0.860493 0.345141 0.374740
+vn 0.736625 0.594721 0.322011
+vn 0.864811 0.363047 0.346842
+vn 0.854483 0.373172 0.361389
+vn 0.906882 0.140344 0.397326
+vn 0.849454 0.325787 0.415079
+vn 0.851439 0.258052 0.456576
+vn -0.000641 -0.460155 0.887838
+vn -0.028917 -0.503171 0.863703
+vn -0.547923 -0.390550 0.739764
+vn -0.578644 -0.450482 0.679880
+vn 0.547087 -0.370022 0.750852
+vn -0.000641 -0.460155 0.887838
+vn 0.569062 -0.382400 0.727969
+vn 0.000000 -0.467254 0.884123
+vn 0.706591 -0.591199 0.388861
+vn 0.668401 -0.635665 0.386226
+vn 0.309959 -0.919579 0.241455
+vn 0.323910 -0.894552 0.307993
+vn 0.925691 -0.156523 0.344379
+vn 0.569062 -0.382400 0.727969
+vn 0.913404 -0.135144 0.383965
+vn 0.549038 -0.388357 0.740092
+vn 0.997926 0.041849 0.048905
+vn 0.925691 -0.156523 0.344379
+vn 0.991823 0.054135 0.115572
+vn 0.913404 -0.135144 0.383965
+vn 0.920132 0.292555 -0.260326
+vn 0.997926 0.041849 0.048905
+vn 0.933516 0.327922 -0.144967
+vn 0.991823 0.054135 0.115572
+vn 0.433943 0.610832 -0.662252
+vn 0.920132 0.292555 -0.260326
+vn 0.445607 0.711802 -0.542930
+vn 0.933516 0.327922 -0.144967
+vn 0.005051 0.550804 -0.834619
+vn 0.428777 0.505097 -0.749018
+vn 0.000000 0.665411 -0.746477
+vn 0.433943 0.610832 -0.662252
+vn 0.047257 0.309060 -0.949868
+vn 0.005051 0.550804 -0.834619
+vn -0.320254 0.237018 -0.917202
+vn -0.418344 0.500828 -0.757733
+vn -0.785298 0.498689 -0.366901
+vn -0.859713 0.470849 -0.197977
+vn -0.818184 0.464244 -0.339193
+vn -0.951730 0.154665 -0.265122
+vn -0.711335 0.539379 -0.450636
+vn -0.908154 -0.059141 -0.414437
+vn -0.845137 0.386342 -0.369436
+vn -0.907508 -0.160824 -0.388028
+vn -0.818184 0.464244 -0.339193
+vn -0.951730 0.154665 -0.265122
+vn -0.908154 -0.059141 -0.414437
+vn -0.741958 -0.613541 -0.270305
+vn -0.149275 0.955594 -0.254081
+vn 0.318734 0.946409 -0.052149
+vn 0.654078 0.748934 0.106210
+vn 0.662120 0.732355 0.158912
+vn -0.985407 0.033000 -0.166987
+vn -0.959072 -0.225294 -0.171535
+vn -0.974658 0.137836 -0.176192
+vn -0.933599 0.267552 -0.238346
+vn -0.981045 -0.077715 -0.177511
+vn -0.955410 -0.245476 -0.164111
+vn -0.971448 -0.051914 -0.231503
+vn -0.971708 -0.076275 -0.223530
+vn -0.729060 -0.590593 -0.345936
+vn -0.907508 -0.160824 -0.388028
+vn -0.690060 -0.605676 -0.396199
+vn -0.699390 -0.647625 -0.302384
+vn -0.054445 0.998082 -0.029477
+vn 0.315350 0.936708 0.152097
+vn -0.066587 0.988486 -0.135877
+vn 0.318734 0.946409 -0.052149
+vn 0.634769 0.744948 0.205234
+vn 0.662120 0.732355 0.158912
+vn 0.315350 0.936708 0.152097
+vn 0.318734 0.946409 -0.052149
+vn 0.634769 0.744948 0.205234
+vn 0.791440 0.557881 0.249783
+vn 0.662120 0.732355 0.158912
+vn 0.654078 0.748934 0.106210
+vn -0.971448 -0.051914 -0.231503
+vn -0.971708 -0.076275 -0.223530
+vn -0.967810 -0.019463 -0.250927
+vn -0.972946 -0.072729 -0.219289
+vn -0.974687 -0.036231 -0.220621
+vn -0.967810 -0.019463 -0.250927
+vn -0.972146 -0.049385 -0.229116
+vn -0.963656 -0.010663 -0.266933
+vn -0.972146 -0.049385 -0.229116
+vn -0.785295 -0.618877 -0.017411
+vn -0.975435 -0.133253 -0.175414
+vn -0.883420 -0.456587 -0.105348
+vn -0.931025 -0.328896 -0.158175
+vn -0.925617 -0.343807 -0.158211
+vn -0.970168 -0.157522 -0.184286
+vn -0.961160 -0.225268 -0.159456
+vn -0.848153 0.220849 -0.481521
+vn -0.943303 0.143090 -0.299509
+vn -0.819506 0.523218 -0.233781
+vn -0.967949 0.181684 -0.173395
+vn 0.822722 0.025690 0.567864
+vn 0.761767 -0.468906 0.447033
+vn 0.514789 -0.210957 0.830957
+vn 0.472752 -0.810538 0.345736
+vn 0.901475 0.158933 0.402595
+vn 0.875041 -0.440339 0.201008
+vn 0.911558 0.102936 0.398079
+vn 0.796369 -0.520620 0.307817
+vn 0.849802 -0.028698 0.526320
+vn 0.956113 0.228267 0.183692
+vn 0.901475 0.158933 0.402595
+vn 0.875041 -0.440339 0.201008
+vn -0.993838 -0.096222 0.055027
+vn -0.981794 -0.181018 -0.057567
+vn -0.850599 0.109163 0.514358
+vn -0.937010 -0.052806 0.345289
+vn -0.850599 0.109163 0.514358
+vn -0.937010 -0.052806 0.345289
+vn -0.528002 0.245371 0.813023
+vn -0.627405 0.042834 0.777514
+vn -0.980757 -0.094483 0.170845
+vn -0.988105 -0.083632 0.129050
+vn -0.925336 -0.378346 -0.024668
+vn -0.890305 -0.453699 -0.038909
+vn -0.819506 0.523218 -0.233781
+vn -0.967949 0.181684 -0.173395
+vn -0.864681 0.484214 -0.133654
+vn -0.978337 0.102847 -0.179665
+vn 0.953432 -0.280121 0.111805
+vn 0.986743 -0.100599 -0.127350
+vn 0.269719 -0.665956 -0.695524
+vn 0.340808 -0.052396 -0.938672
+vn 0.912421 -0.104054 0.395803
+vn 0.903912 -0.197307 0.379490
+vn 0.953432 -0.280121 0.111805
+vn 0.986743 -0.100599 -0.127350
+vn -0.147100 -0.880891 0.449881
+vn -0.900189 -0.429462 -0.072267
+vn -0.254096 -0.630711 0.733238
+vn -0.917922 -0.374675 0.130530
+vn 0.027569 -0.999161 -0.030274
+vn -0.649067 -0.697779 -0.303013
+vn -0.147100 -0.880891 0.449881
+vn -0.900189 -0.429462 -0.072267
+vn 0.581385 -0.404435 0.705991
+vn -0.254096 -0.630711 0.733238
+vn 0.467116 -0.645343 0.604429
+vn -0.157699 -0.848006 0.505982
+vn 0.581385 -0.404435 0.705991
+vn 0.467116 -0.645343 0.604429
+vn 0.900453 -0.211708 0.379952
+vn 0.731152 -0.631689 0.257655
+vn 0.900453 -0.211708 0.379952
+vn 0.731152 -0.631689 0.257655
+vn 0.975908 -0.136873 -0.169911
+vn 0.873332 -0.417770 -0.250518
+vn 0.305975 -0.098441 -0.946936
+vn -0.603114 -0.063343 -0.795136
+vn 0.174904 -0.827820 -0.533031
+vn -0.756108 -0.287422 -0.587953
+vn 0.975908 -0.136873 -0.169911
+vn 0.873332 -0.417770 -0.250518
+vn 0.305975 -0.098441 -0.946936
+vn 0.280028 -0.562874 -0.777661
+vn -0.691598 -0.099463 -0.715402
+vn 0.266202 -0.207285 -0.941366
+vn -0.560375 -0.492426 -0.665956
+vn 0.208853 -0.709160 -0.673404
+vn -0.786560 -0.255997 -0.561951
+vn -0.796147 -0.479872 -0.368610
+vn -0.601439 -0.743988 -0.291125
+vn -0.757556 -0.560224 -0.335048
+vn -0.886378 -0.440307 -0.143050
+vn -0.622505 -0.724949 -0.294851
+vn -0.814934 -0.474782 -0.332363
+vn -0.771174 -0.538661 -0.339316
+vn -0.886378 -0.440307 -0.143050
+vn -0.927712 -0.061842 -0.368140
+vn -0.931724 -0.363157 0.002664
+vn -0.914836 -0.154517 -0.373095
+vn -0.103744 -0.896023 0.431718
+vn 0.036664 -0.997736 -0.056381
+vn 0.540813 -0.667962 0.511223
+vn 0.713174 -0.655088 0.249485
+vn 0.713174 -0.655088 0.249485
+vn 0.036664 -0.997736 -0.056381
+vn 0.831272 -0.544267 -0.112961
+vn 0.208853 -0.709160 -0.673404
+vn -0.801629 -0.501355 -0.325629
+vn -0.818493 -0.465510 -0.336705
+vn -0.862566 -0.494272 -0.108052
+vn -0.928137 -0.068478 -0.365886
+vn -0.682442 -0.657038 -0.320271
+vn -0.519780 -0.472822 -0.711525
+vn 0.025128 -0.997713 -0.062747
+vn 0.189514 -0.671000 -0.716829
+vn 0.705533 -0.390467 0.591405
+vn 0.648589 -0.720568 0.245181
+vn -0.156125 -0.805922 0.571065
+vn 0.035742 -0.999124 -0.021757
+vn 0.971366 -0.217390 0.095859
+vn 0.286450 -0.420658 -0.860810
+vn 0.648589 -0.720568 0.245181
+vn 0.035742 -0.999124 -0.021757
+vn 0.651249 -0.350142 0.673258
+vn 0.722685 -0.375372 0.580364
+vn -0.187775 -0.614480 0.766260
+vn -0.116165 -0.821097 0.558844
+vn 0.041970 -0.999079 0.008960
+vn 0.270165 -0.607246 -0.747170
+vn -0.683429 -0.663239 -0.305023
+vn -0.727160 -0.230704 -0.646541
+vn 0.909476 -0.184061 0.372793
+vn 0.748091 -0.613011 0.254121
+vn 0.948681 -0.105760 -0.298024
+vn 0.857976 -0.396462 -0.326641
+vn 0.534660 -0.336065 0.775370
+vn -0.214804 -0.512800 0.831201
+vn 0.456720 -0.588096 0.667495
+vn -0.128503 -0.791293 0.597781
+vn -0.214804 -0.512800 0.831201
+vn -0.107433 -0.745979 0.657247
+vn -0.894559 -0.368544 0.252862
+vn -0.829931 -0.554033 -0.065290
+vn 0.592912 -0.331623 -0.733813
+vn 0.758102 -0.112102 -0.642429
+vn -0.156553 -0.202637 -0.966659
+vn -0.146490 -0.053141 -0.987784
+vn 0.592912 -0.331623 -0.733813
+vn -0.012407 -0.510539 -0.859765
+vn -0.014163 -0.913923 -0.405640
+vn -0.307365 -0.466673 -0.829303
+vn -0.014163 -0.913923 -0.405640
+vn -0.307365 -0.466673 -0.829303
+vn -0.829931 -0.554033 -0.065290
+vn -0.782265 -0.349168 -0.515890
+vn -0.420919 -0.758097 0.498112
+vn -0.765020 -0.607620 -0.213406
+vn -0.761033 -0.385958 0.521408
+vn -0.949731 -0.173993 -0.260263
+vn -0.094885 -0.961402 0.258269
+vn -0.184102 -0.948965 0.256071
+vn -0.257101 -0.814461 0.520147
+vn -0.360213 -0.778225 0.514404
+vn -0.528002 0.245371 0.813023
+vn -0.627405 0.042834 0.777514
+vn -0.514300 0.177769 0.838984
+vn -0.516709 -0.034468 0.855467
+vn -0.689404 -0.152706 -0.708098
+vn 0.317021 -0.316497 -0.894051
+vn -0.555604 -0.603860 -0.571540
+vn 0.195111 -0.826471 -0.528089
+vn -0.542331 -0.832427 -0.113765
+vn -0.791405 -0.341715 -0.506861
+vn -0.675974 -0.716362 -0.172871
+vn -0.750752 -0.617361 -0.235026
+vn -0.843069 -0.536840 -0.032206
+vn -0.542331 -0.832427 -0.113765
+vn -0.709273 -0.683694 -0.171739
+vn -0.675974 -0.716362 -0.172871
+vn -0.843069 -0.536840 -0.032206
+vn -0.930521 -0.089169 -0.355218
+vn -0.921698 -0.387143 0.024357
+vn -0.917206 -0.194525 -0.347696
+vn -0.146565 -0.858898 0.490726
+vn -0.705810 -0.699427 0.112402
+vn -0.017130 -0.994907 0.099333
+vn -0.685996 -0.696640 -0.210007
+vn -0.918771 -0.391387 0.051738
+vn -0.918787 -0.186450 -0.347946
+vn -0.705810 -0.699427 0.112402
+vn -0.685996 -0.696640 -0.210007
+vn -0.913202 -0.168189 -0.371180
+vn -0.655254 -0.107502 -0.747720
+vn -0.682442 -0.657038 -0.320271
+vn -0.519780 -0.472822 -0.711525
+vn -0.782189 -0.584991 -0.214396
+vn -0.747637 -0.624367 -0.226285
+vn -0.348701 -0.937204 0.007528
+vn -0.358364 -0.933465 -0.014767
+vn -0.747637 -0.624367 -0.226285
+vn -0.786892 -0.537806 -0.302599
+vn -0.358364 -0.933465 -0.014767
+vn -0.356174 -0.931418 -0.074842
+vn -0.788037 -0.307667 -0.533235
+vn -0.928137 -0.068478 -0.365886
+vn -0.786892 -0.537806 -0.302599
+vn -0.818493 -0.465510 -0.336705
+vn -0.798464 -0.552104 -0.240075
+vn -0.782189 -0.584991 -0.214396
+vn -0.332849 -0.942866 0.014694
+vn -0.348701 -0.937204 0.007528
+vn -0.798464 -0.552104 -0.240075
+vn -0.750752 -0.617361 -0.235026
+vn -0.930567 -0.077426 -0.357841
+vn -0.791405 -0.341715 -0.506861
+vn -0.930567 -0.077426 -0.357841
+vn -0.791405 -0.341715 -0.506861
+vn -0.918787 -0.186450 -0.347946
+vn -0.689404 -0.152706 -0.708098
+vn 0.618940 0.715661 0.323638
+vn 0.351063 0.914438 0.201390
+vn 0.667076 0.726133 0.166556
+vn 0.503027 0.862869 0.049203
+vn -0.613800 -0.779392 -0.125688
+vn -0.685739 -0.704123 -0.184318
+vn -0.270240 -0.961654 0.046827
+vn -0.269835 -0.961780 0.046569
+vn -0.786988 -0.365698 -0.496906
+vn -0.930521 -0.089169 -0.355218
+vn -0.685739 -0.704123 -0.184318
+vn -0.733127 -0.651070 -0.196555
+vn -0.917206 -0.194525 -0.347696
+vn -0.690506 -0.163857 -0.704523
+vn -0.677223 -0.706078 -0.206935
+vn -0.553698 -0.632669 -0.541432
+vn 0.448681 0.488052 -0.748660
+vn -0.709144 0.200082 -0.676079
+vn 0.320268 0.803586 -0.501675
+vn -0.463405 0.671133 -0.578650
+vn -0.785424 0.369743 -0.496387
+vn -0.927941 0.065783 -0.366875
+vn -0.709144 0.200082 -0.676079
+vn -0.908286 0.201027 -0.366885
+vn -0.898697 0.287244 -0.331414
+vn -0.693852 0.665241 -0.275725
+vn -0.892706 0.226722 -0.389452
+vn -0.664493 0.677853 -0.314587
+vn -0.243176 0.451407 0.858544
+vn -0.088852 0.931517 0.352679
+vn -0.942665 0.330435 -0.046852
+vn -0.729401 0.667596 -0.149298
+vn -0.243176 0.451407 0.858544
+vn -0.318873 0.125716 0.939423
+vn 0.769916 0.269538 0.578428
+vn 0.772469 0.304211 0.557447
+vn -0.244472 -0.940516 0.235930
+vn -0.325619 -0.942848 0.070779
+vn -0.104857 -0.976024 0.190739
+vn -0.155071 -0.980670 0.119330
+vn -0.325619 -0.942848 0.070779
+vn -0.295110 -0.955075 0.027248
+vn -0.155071 -0.980670 0.119330
+vn -0.130056 -0.984880 0.114441
+vn -0.170589 -0.868492 0.465425
+vn -0.705925 -0.702991 0.086449
+vn -0.021225 -0.994698 0.100629
+vn -0.677223 -0.706078 -0.206935
+vn 0.664139 0.466885 0.583899
+vn 0.883652 0.284201 0.372008
+vn 0.495230 0.752978 0.433327
+vn 0.649670 0.723388 0.233749
+vn 0.664139 0.466885 0.583899
+vn -0.197210 0.810252 0.551906
+vn 0.720772 0.503611 0.476303
+vn -0.044261 0.969750 0.240052
+vn 0.720772 0.503611 0.476303
+vn 0.636768 0.739562 0.218115
+vn 0.887958 0.226039 0.400546
+vn 0.817261 0.479919 0.319001
+vn 0.809248 0.406397 0.424215
+vn 0.795508 0.414516 0.441977
+vn 0.770135 0.450087 0.452011
+vn 0.782682 0.437018 0.443197
+vn 0.849454 0.325787 0.415079
+vn 0.806561 0.373690 0.458057
+vn 0.851439 0.258052 0.456576
+vn 0.856696 0.377049 0.352003
+vn 0.917007 0.215450 0.335678
+vn 0.854483 0.373172 0.361389
+vn 0.906882 0.140344 0.397326
+vn -0.547923 -0.390550 0.739764
+vn -0.569063 -0.382400 0.727968
+vn -0.000641 -0.460155 0.887838
+vn 0.000000 -0.467254 0.884123
+vn -0.547923 -0.390550 0.739764
+vn -0.578644 -0.450482 0.679880
+vn -0.926266 -0.169677 0.336513
+vn -0.935928 -0.241420 0.256429
+vn -0.578644 -0.450482 0.679880
+vn -0.641622 -0.561115 0.522945
+vn -0.935928 -0.241420 0.256429
+vn -0.932708 -0.341960 0.114538
+vn -0.641622 -0.561115 0.522945
+vn -0.629255 -0.724739 0.280699
+vn -0.932708 -0.341960 0.114538
+vn -0.905144 -0.425075 0.005000
+vn -0.485335 -0.869509 0.091679
+vn -0.806532 -0.590230 -0.033683
+vn -0.629255 -0.724739 0.280699
+vn -0.905144 -0.425075 0.005000
+vn -0.485335 -0.869509 0.091679
+vn -0.085630 -0.957204 0.276455
+vn -0.406451 -0.913557 0.014560
+vn -0.043392 -0.989535 0.137614
+vn 0.363986 -0.885661 0.288303
+vn 0.309959 -0.919579 0.241455
+vn -0.043392 -0.989535 0.137614
+vn -0.037079 -0.991725 0.122909
+vn 0.668401 -0.635665 0.386226
+vn 0.787558 -0.427864 0.443492
+vn 0.323910 -0.894552 0.307993
+vn 0.548966 -0.674209 0.494042
+vn 0.787558 -0.427864 0.443492
+vn 0.840771 -0.242574 0.484007
+vn 0.548966 -0.674209 0.494042
+vn 0.626996 -0.451095 0.635129
+vn 0.445607 0.711802 -0.542930
+vn 0.000000 0.775287 -0.631609
+vn 0.433943 0.610832 -0.662252
+vn 0.000000 0.665411 -0.746477
+vn 0.005051 0.550804 -0.834619
+vn 0.000000 0.665411 -0.746477
+vn -0.418344 0.500828 -0.757733
+vn -0.433943 0.610831 -0.662253
+vn -0.060961 -0.011486 -0.998074
+vn -0.320254 0.237018 -0.917202
+vn -0.478081 -0.040997 -0.877358
+vn -0.898766 0.082448 -0.430606
+vn -0.291871 -0.063247 -0.954364
+vn -0.478081 -0.040997 -0.877358
+vn -0.855965 0.044644 -0.515102
+vn -0.864621 0.042310 -0.500640
+vn -0.843336 -0.016951 -0.537119
+vn -0.855965 0.044644 -0.515102
+vn -0.940556 -0.006223 -0.339582
+vn -0.952529 0.001944 -0.304441
+vn -0.843336 -0.016951 -0.537119
+vn -0.940556 -0.006223 -0.339582
+vn -0.832354 -0.091256 -0.546680
+vn -0.949358 -0.081767 -0.303370
+vn -0.832354 -0.091256 -0.546680
+vn -0.949358 -0.081767 -0.303370
+vn -0.787978 -0.074546 -0.611174
+vn -0.942764 -0.102519 -0.317311
+vn -0.787978 -0.074546 -0.611174
+vn -0.942764 -0.102519 -0.317311
+vn -0.746345 0.123247 -0.654049
+vn -0.923249 0.104826 -0.369625
+vn -0.785298 0.498689 -0.366901
+vn -0.923249 0.104826 -0.369625
+vn -0.859713 0.470849 -0.197977
+vn -0.972357 0.129605 -0.194228
+vn -0.400099 0.846628 -0.350915
+vn -0.614751 0.743723 -0.262598
+vn -0.066587 0.988486 -0.135877
+vn -0.054445 0.998082 -0.029477
+vn -0.993558 0.017081 -0.112031
+vn -0.987710 -0.120460 -0.099592
+vn -0.981045 -0.077715 -0.177511
+vn -0.955410 -0.245476 -0.164111
+vn -0.974658 0.137836 -0.176192
+vn -0.933599 0.267552 -0.238346
+vn -0.993558 0.017081 -0.112031
+vn -0.859870 0.476695 -0.182719
+vn -0.959072 -0.225294 -0.171535
+vn -0.945198 -0.326270 -0.012155
+vn -0.877018 -0.348924 -0.330291
+vn -0.721475 -0.684345 -0.105572
+vn -0.998777 0.034826 -0.035103
+vn -0.913248 0.394656 0.101116
+vn -0.945198 -0.326270 -0.012155
+vn -0.985465 -0.169274 -0.014311
+vn -0.837964 0.541254 0.069717
+vn -0.670772 0.724816 0.157185
+vn -0.913248 0.394656 0.101116
+vn -0.859231 0.507821 -0.061970
+vn -0.977824 0.191661 -0.084419
+vn -0.884137 -0.436393 -0.166923
+vn -0.670772 0.724816 0.157185
+vn -0.786047 0.607746 0.113031
+vn -0.729060 -0.590593 -0.345936
+vn -0.895500 -0.261819 -0.359904
+vn -0.743116 -0.618402 -0.255649
+vn -0.884137 -0.436393 -0.166923
+vn -0.907508 -0.160824 -0.388028
+vn -0.908154 -0.059141 -0.414437
+vn -0.699390 -0.647625 -0.302384
+vn -0.741958 -0.613541 -0.270305
+vn -0.729060 -0.590593 -0.345936
+vn -0.690060 -0.605676 -0.396199
+vn -0.895500 -0.261819 -0.359904
+vn -0.861513 -0.117649 -0.493918
+vn -0.871994 -0.281463 0.400506
+vn -0.616294 -0.722155 0.314124
+vn -0.972146 -0.049385 -0.229116
+vn -0.785295 -0.618877 -0.017411
+vn -0.925617 -0.343807 -0.158211
+vn -0.919469 -0.372453 -0.125921
+vn -0.961160 -0.225268 -0.159456
+vn -0.981794 -0.181018 -0.057567
+vn -0.961160 -0.225268 -0.159456
+vn -0.981794 -0.181018 -0.057567
+vn -0.972194 -0.196287 -0.127713
+vn -0.993838 -0.096222 0.055027
+vn -0.848153 0.220849 -0.481521
+vn -0.850713 -0.329971 -0.409153
+vn -0.943303 0.143090 -0.299509
+vn -0.958837 -0.126537 -0.254205
+vn -0.933850 -0.163072 -0.318327
+vn -0.924186 -0.332393 -0.188138
+vn -0.850713 -0.329971 -0.409153
+vn -0.867206 -0.448506 -0.216327
+vn -0.961088 -0.192310 -0.198309
+vn -0.958342 -0.274919 -0.077462
+vn -0.924186 -0.332393 -0.188138
+vn -0.925336 -0.378346 -0.024668
+vn 0.761767 -0.468906 0.447033
+vn 0.796369 -0.520620 0.307817
+vn 0.472752 -0.810538 0.345736
+vn 0.484165 -0.861827 0.151122
+vn -0.988105 -0.083632 0.129050
+vn -0.879423 0.476024 -0.004130
+vn -0.998830 -0.028674 -0.038940
+vn -0.972515 0.158791 -0.170296
+vn -0.879423 0.476024 -0.004130
+vn -0.864681 0.484214 -0.133654
+vn -0.972515 0.158791 -0.170296
+vn -0.978337 0.102847 -0.179665
+vn 0.027569 -0.999161 -0.030274
+vn 0.269719 -0.665956 -0.695524
+vn -0.649067 -0.697779 -0.303013
+vn -0.774425 -0.205804 -0.598256
+vn 0.903912 -0.197307 0.379490
+vn 0.912421 -0.104054 0.395803
+vn 0.625645 -0.366092 0.688873
+vn 0.705533 -0.390467 0.591405
+vn -0.603114 -0.063343 -0.795136
+vn 0.305975 -0.098441 -0.946936
+vn -0.480688 -0.367266 -0.796276
+vn 0.280028 -0.562874 -0.777661
+vn -0.756108 -0.287422 -0.587953
+vn -0.804316 -0.460970 -0.374943
+vn -0.622505 -0.724949 -0.294851
+vn -0.771174 -0.538661 -0.339316
+vn -0.560375 -0.492426 -0.665956
+vn -0.700799 -0.633925 -0.327139
+vn -0.691598 -0.099463 -0.715402
+vn -0.914836 -0.154517 -0.373095
+vn -0.691598 -0.099463 -0.715402
+vn -0.914836 -0.154517 -0.373095
+vn -0.786560 -0.255997 -0.561951
+vn -0.927712 -0.061842 -0.368140
+vn -0.786560 -0.255997 -0.561951
+vn -0.927712 -0.061842 -0.368140
+vn -0.796147 -0.479872 -0.368610
+vn -0.830021 -0.429284 -0.356063
+vn -0.814934 -0.474782 -0.332363
+vn -0.830021 -0.429284 -0.356063
+vn -0.886378 -0.440307 -0.143050
+vn -0.927712 -0.061842 -0.368140
+vn -0.103744 -0.896023 0.431718
+vn -0.737123 -0.675476 0.019550
+vn 0.036664 -0.997736 -0.056381
+vn -0.700799 -0.633925 -0.327139
+vn -0.931724 -0.363157 0.002664
+vn -0.914836 -0.154517 -0.373095
+vn -0.737123 -0.675476 0.019550
+vn -0.700799 -0.633925 -0.327139
+vn -0.818493 -0.465510 -0.336705
+vn -0.801629 -0.501355 -0.325629
+vn -0.351445 -0.923768 -0.152117
+vn -0.352481 -0.916215 -0.190544
+vn -0.801629 -0.501355 -0.325629
+vn -0.757556 -0.560224 -0.335048
+vn -0.352481 -0.916215 -0.190544
+vn -0.348989 -0.916303 -0.196456
+vn -0.156125 -0.805922 0.571065
+vn -0.227156 -0.610856 0.758456
+vn 0.705533 -0.390467 0.591405
+vn 0.625645 -0.366092 0.688873
+vn 0.971366 -0.217390 0.095859
+vn 0.988176 -0.068884 -0.136976
+vn 0.286450 -0.420658 -0.860810
+vn 0.301654 0.003045 -0.953413
+vn -0.187775 -0.614480 0.766260
+vn -0.099761 -0.859535 0.501246
+vn 0.651249 -0.350142 0.673258
+vn 0.553528 -0.603486 0.573944
+vn 0.651249 -0.350142 0.673258
+vn 0.553528 -0.603486 0.573944
+vn 0.906341 -0.187288 0.378773
+vn 0.762735 -0.585831 0.273930
+vn 0.906341 -0.187288 0.378773
+vn 0.762735 -0.585831 0.273930
+vn 0.988176 -0.068884 -0.136976
+vn 0.892933 -0.421394 -0.158423
+vn -0.116165 -0.821097 0.558844
+vn -0.929741 -0.357324 -0.088893
+vn -0.187775 -0.614480 0.766260
+vn -0.941527 -0.330074 0.067668
+vn 0.041970 -0.999079 0.008960
+vn -0.683429 -0.663239 -0.305023
+vn -0.116165 -0.821097 0.558844
+vn -0.929741 -0.357324 -0.088893
+vn 0.314999 -0.071118 -0.946424
+vn -0.530711 -0.063166 -0.845196
+vn 0.270165 -0.607246 -0.747170
+vn -0.727160 -0.230704 -0.646541
+vn 0.948681 -0.105760 -0.298024
+vn 0.857976 -0.396462 -0.326641
+vn 0.314999 -0.071118 -0.946424
+vn 0.303259 -0.548269 -0.779382
+vn -0.894559 -0.368544 0.252862
+vn -0.732578 -0.632526 0.251477
+vn -0.214804 -0.512800 0.831201
+vn -0.128503 -0.791293 0.597781
+vn -0.829931 -0.554033 -0.065290
+vn -0.927399 -0.065924 -0.368218
+vn -0.894559 -0.368544 0.252862
+vn -0.917804 -0.157366 -0.364517
+vn 0.748091 -0.613011 0.254121
+vn 0.456720 -0.588096 0.667495
+vn 0.095502 -0.994536 -0.042165
+vn -0.128503 -0.791293 0.597781
+vn -0.156553 -0.202637 -0.966659
+vn -0.027400 -0.588294 -0.808183
+vn 0.592912 -0.331623 -0.733813
+vn -0.012407 -0.510539 -0.859765
+vn 0.758102 -0.112102 -0.642429
+vn 0.937682 -0.189876 0.291033
+vn 0.672524 -0.362643 -0.645137
+vn 0.786087 -0.586142 0.196225
+vn 0.120983 -0.399556 0.908690
+vn 0.104481 -0.677233 0.728313
+vn 0.647767 -0.281365 0.707977
+vn 0.586827 -0.460547 0.665981
+vn 0.647767 -0.281365 0.707977
+vn 0.586827 -0.460547 0.665981
+vn 0.937682 -0.189876 0.291033
+vn 0.786087 -0.586142 0.196225
+vn -0.761033 -0.385958 0.521408
+vn -0.597416 -0.595190 0.537441
+vn 0.120983 -0.399556 0.908690
+vn 0.104481 -0.677233 0.728313
+vn -0.420919 -0.758097 0.498112
+vn 0.030858 -0.786884 0.616329
+vn -0.765020 -0.607620 -0.213406
+vn 0.760049 -0.605931 0.234890
+vn -0.257101 -0.814461 0.520147
+vn -0.360213 -0.778225 0.514404
+vn 0.030858 -0.786884 0.616329
+vn -0.538699 -0.492147 0.683809
+vn -0.516709 -0.034468 0.855467
+vn -0.627405 0.042834 0.777514
+vn -0.380646 -0.730377 0.567149
+vn -0.503101 -0.673966 0.540979
+vn -0.380646 -0.730377 0.567149
+vn -0.503101 -0.673966 0.540979
+vn -0.184102 -0.948965 0.256071
+vn -0.218060 -0.953013 0.210278
+vn 0.956113 0.228267 0.183692
+vn 0.667076 0.726133 0.166556
+vn 0.921778 0.351266 -0.164125
+vn 0.503027 0.862869 0.049203
+vn -0.555604 -0.603860 -0.571540
+vn -0.685996 -0.696640 -0.210007
+vn -0.689404 -0.152706 -0.708098
+vn -0.918787 -0.186450 -0.347946
+vn -0.709273 -0.683694 -0.171739
+vn -0.733127 -0.651070 -0.196555
+vn -0.843069 -0.536840 -0.032206
+vn -0.930521 -0.089169 -0.355218
+vn 0.195111 -0.826471 -0.528089
+vn -0.017130 -0.994907 0.099333
+vn -0.555604 -0.603860 -0.571540
+vn -0.685996 -0.696640 -0.210007
+vn -0.332849 -0.942866 0.014694
+vn -0.317555 -0.947995 0.021553
+vn -0.798464 -0.552104 -0.240075
+vn -0.750752 -0.617361 -0.235026
+vn 0.514789 -0.210957 0.830957
+vn 0.739087 -0.147687 0.657221
+vn 0.374980 0.782137 0.497646
+vn 0.745048 0.480136 0.463004
+vn 0.374980 0.782137 0.497646
+vn 0.745048 0.480136 0.463004
+vn 0.351063 0.914438 0.201390
+vn 0.660942 0.696302 0.279855
+vn -0.677223 -0.706078 -0.206935
+vn -0.705925 -0.702991 0.086449
+vn -0.917206 -0.194525 -0.347696
+vn -0.921698 -0.387143 0.024357
+vn -0.295110 -0.955075 0.027248
+vn -0.270240 -0.961654 0.046827
+vn -0.130056 -0.984880 0.114441
+vn -0.133961 -0.985096 0.107888
+vn -0.927941 0.065783 -0.366875
+vn -0.910466 0.175059 -0.374709
+vn -0.882668 0.438279 -0.169732
+vn -0.905073 0.233972 -0.355106
+vn -0.892706 0.226722 -0.389452
+vn -0.664493 0.677853 -0.314587
+vn -0.910466 0.175059 -0.374709
+vn -0.652734 0.690653 -0.311347
+vn 0.649670 0.723388 0.233749
+vn 0.776505 0.629572 -0.026050
+vn 0.098435 0.995105 -0.008726
+vn 0.320268 0.803586 -0.501675
+vn -0.243176 0.451407 0.858544
+vn 0.769916 0.269538 0.578428
+vn -0.088852 0.931517 0.352679
+vn 0.662335 0.644683 0.381701
+vn -0.088852 0.931517 0.352679
+vn 0.020977 0.999715 -0.011373
+vn -0.729401 0.667596 -0.149298
+vn -0.693852 0.665241 -0.275725
+vn -0.324191 -0.104786 0.940170
+vn -0.215515 -0.093260 0.972037
+vn 0.453986 0.837894 0.303035
+vn 0.123346 0.991752 0.034829
+vn -0.244472 -0.940516 0.235930
+vn -0.093739 -0.947012 0.307215
+vn -0.215515 -0.093260 0.972037
+vn -0.118433 0.940539 0.318370
+vn -0.244472 -0.940516 0.235930
+vn -0.104857 -0.976024 0.190739
+vn -0.093739 -0.947012 0.307215
+vn -0.071333 -0.971644 0.225431
+vn 0.769916 0.269538 0.578428
+vn 0.772469 0.304211 0.557447
+vn 0.903175 0.218732 0.369366
+vn 0.871024 0.349071 0.345640
+vn 0.772469 0.304211 0.557447
+vn 0.453986 0.837894 0.303035
+vn 0.871024 0.349071 0.345640
+vn 0.525423 0.836534 0.155378
+vn -0.677223 -0.706078 -0.206935
+vn -0.553698 -0.632669 -0.541432
+vn -0.021225 -0.994698 0.100629
+vn 0.200186 -0.850849 -0.485780
+vn 0.495230 0.752978 0.433327
+vn -0.080856 0.937857 0.337470
+vn 0.664139 0.466885 0.583899
+vn -0.197210 0.810252 0.551906
+vn 0.649670 0.723388 0.233749
+vn 0.098435 0.995105 -0.008726
+vn 0.495230 0.752978 0.433327
+vn -0.080856 0.937857 0.337470
+vn 0.720772 0.503611 0.476303
+vn -0.044261 0.969750 0.240052
+vn 0.636768 0.739562 0.218115
+vn 0.066068 0.997241 -0.033852
+vn 0.817261 0.479919 0.319001
+vn 0.636768 0.739562 0.218115
+vn 0.918597 0.203312 0.338885
+vn 0.943703 0.282237 0.172532
+vn 0.809248 0.406397 0.424215
+vn 0.899009 0.188535 0.395269
+vn 0.795508 0.414516 0.441977
+vn 0.873071 0.210883 0.439632
+vn 0.816796 0.364210 0.447433
+vn 0.782682 0.437018 0.443197
+vn 0.817221 0.389627 0.424666
+vn 0.806561 0.373690 0.458057
+vn 0.795508 0.414516 0.441977
+vn 0.888767 0.109499 0.445087
+vn 0.810652 0.329945 0.483715
+vn 0.854091 0.235960 0.463521
+vn 0.810652 0.329945 0.483715
+vn 0.637316 0.546541 0.543251
+vn 0.840771 -0.242574 0.484007
+vn 0.626996 -0.451095 0.635129
+vn 0.906882 0.140344 0.397326
+vn 0.917007 0.215450 0.335678
+vn 0.912883 0.085352 0.399200
+vn 0.949250 0.273132 0.155960
+vn 0.851439 0.258052 0.456576
+vn 0.906882 0.140344 0.397326
+vn 0.705844 0.363153 0.608197
+vn 0.912883 0.085352 0.399200
+vn -0.569063 -0.382400 0.727968
+vn -0.547923 -0.390550 0.739764
+vn -0.925691 -0.156523 0.344379
+vn -0.926266 -0.169677 0.336513
+vn 0.569062 -0.382400 0.727969
+vn 0.000000 -0.467254 0.884123
+vn 0.549038 -0.388357 0.740092
+vn -0.019772 -0.497438 0.867274
+vn -0.806532 -0.590230 -0.033683
+vn -0.485335 -0.869509 0.091679
+vn -0.789505 -0.608855 -0.077309
+vn -0.406451 -0.913557 0.014560
+vn -0.406451 -0.913557 0.014560
+vn -0.043392 -0.989535 0.137614
+vn -0.379515 -0.924915 0.022367
+vn -0.037079 -0.991725 0.122909
+vn 0.309959 -0.919579 0.241455
+vn 0.323910 -0.894552 0.307993
+vn -0.037079 -0.991725 0.122909
+vn -0.090938 -0.953848 0.286191
+vn 0.913404 -0.135144 0.383965
+vn 0.549038 -0.388357 0.740092
+vn 0.747838 -0.184592 0.637702
+vn 0.422025 -0.418765 0.804071
+vn 0.991823 0.054135 0.115572
+vn 0.913404 -0.135144 0.383965
+vn 0.933480 0.115488 0.339526
+vn 0.747838 -0.184592 0.637702
+vn 0.933516 0.327922 -0.144967
+vn 0.991823 0.054135 0.115572
+vn 0.879170 0.425879 0.213748
+vn 0.933480 0.115488 0.339526
+vn 0.445607 0.711802 -0.542930
+vn 0.933516 0.327922 -0.144967
+vn 0.456374 0.875676 -0.157844
+vn 0.879170 0.425879 0.213748
+vn 0.000000 0.775287 -0.631609
+vn 0.445607 0.711802 -0.542930
+vn 0.000000 0.959054 -0.283225
+vn 0.456374 0.875676 -0.157844
+vn 0.000000 0.665411 -0.746477
+vn 0.000000 0.775287 -0.631609
+vn -0.433943 0.610831 -0.662253
+vn -0.448858 0.707847 -0.545416
+vn -0.320254 0.237018 -0.917202
+vn -0.418344 0.500828 -0.757733
+vn -0.898766 0.082448 -0.430606
+vn -0.917223 0.235908 -0.321013
+vn -0.942764 -0.102519 -0.317311
+vn -0.978900 -0.081638 -0.187321
+vn -0.923249 0.104826 -0.369625
+vn -0.972357 0.129605 -0.194228
+vn -0.859713 0.470849 -0.197977
+vn -0.881325 0.421686 -0.213182
+vn -0.951730 0.154665 -0.265122
+vn -0.908976 -0.253874 -0.330622
+vn -0.951730 0.154665 -0.265122
+vn -0.908976 -0.253874 -0.330622
+vn -0.741958 -0.613541 -0.270305
+vn -0.699390 -0.647625 -0.302384
+vn -0.959072 -0.225294 -0.171535
+vn -0.877018 -0.348924 -0.330291
+vn -0.933599 0.267552 -0.238346
+vn -0.710961 0.642216 -0.286519
+vn -0.987710 -0.120460 -0.099592
+vn -0.993558 0.017081 -0.112031
+vn -0.873537 0.462139 -0.152843
+vn -0.859870 0.476695 -0.182719
+vn -0.987710 -0.120460 -0.099592
+vn -0.960357 -0.236587 -0.147445
+vn -0.955410 -0.245476 -0.164111
+vn -0.922183 -0.339876 -0.184560
+vn -0.955410 -0.245476 -0.164111
+vn -0.922183 -0.339876 -0.184560
+vn -0.971708 -0.076275 -0.223530
+vn -0.917954 -0.342492 -0.200148
+vn -0.884137 -0.436393 -0.166923
+vn -0.895500 -0.261819 -0.359904
+vn -0.786047 0.607746 0.113031
+vn -0.621296 0.757265 -0.201348
+vn -0.690060 -0.605676 -0.396199
+vn -0.699390 -0.647625 -0.302384
+vn -0.861513 -0.117649 -0.493918
+vn -0.908976 -0.253874 -0.330622
+vn -0.971708 -0.076275 -0.223530
+vn -0.979621 -0.054501 -0.193319
+vn -0.972946 -0.072729 -0.219289
+vn -0.978900 -0.081638 -0.187321
+vn -0.967810 -0.019463 -0.250927
+vn -0.972946 -0.072729 -0.219289
+vn -0.963656 -0.010663 -0.266933
+vn -0.949358 -0.081767 -0.303370
+vn -0.972146 -0.049385 -0.229116
+vn -0.963656 -0.010663 -0.266933
+vn -0.968187 0.003180 -0.250209
+vn -0.957609 -0.004583 -0.288036
+vn -0.785295 -0.618877 -0.017411
+vn -0.616294 -0.722155 0.314124
+vn -0.409416 -0.894418 0.179985
+vn -0.767465 -0.594058 0.241024
+vn -0.883420 -0.456587 -0.105348
+vn -0.785295 -0.618877 -0.017411
+vn -0.038404 -0.981796 0.186016
+vn -0.409416 -0.894418 0.179985
+vn -0.931025 -0.328896 -0.158175
+vn -0.883420 -0.456587 -0.105348
+vn -0.042785 -0.994782 0.092622
+vn -0.042987 -0.994540 0.095090
+vn -0.943303 0.143090 -0.299509
+vn -0.999614 0.025663 0.010608
+vn -0.967949 0.181684 -0.173395
+vn -0.881667 -0.468607 -0.055410
+vn 0.514789 -0.210957 0.830957
+vn 0.472752 -0.810538 0.345736
+vn 0.739087 -0.147687 0.657221
+vn 0.765222 -0.515868 0.385117
+vn 0.875041 -0.440339 0.201008
+vn 0.693608 -0.718405 0.052936
+vn 0.796369 -0.520620 0.307817
+vn 0.484165 -0.861827 0.151122
+vn 0.956113 0.228267 0.183692
+vn 0.921778 0.351266 -0.164125
+vn 0.875041 -0.440339 0.201008
+vn 0.693608 -0.718405 0.052936
+vn -0.937010 -0.052806 0.345289
+vn -0.981794 -0.181018 -0.057567
+vn -0.869798 -0.471178 0.146433
+vn -0.919469 -0.372453 -0.125921
+vn -0.627405 0.042834 0.777514
+vn -0.937010 -0.052806 0.345289
+vn -0.503101 -0.673966 0.540979
+vn -0.869798 -0.471178 0.146433
+vn -0.988105 -0.083632 0.129050
+vn -0.998830 -0.028674 -0.038940
+vn -0.890305 -0.453699 -0.038909
+vn -0.980114 -0.136108 -0.144401
+vn -0.925336 -0.378346 -0.024668
+vn -0.890305 -0.453699 -0.038909
+vn -0.924186 -0.332393 -0.188138
+vn -0.867206 -0.448506 -0.216327
+vn -0.967949 0.181684 -0.173395
+vn -0.881667 -0.468607 -0.055410
+vn -0.978337 0.102847 -0.179665
+vn -0.832557 -0.520297 -0.190105
+vn 0.903912 -0.197307 0.379490
+vn 0.748591 -0.606403 0.268119
+vn 0.986743 -0.100599 -0.127350
+vn 0.885697 -0.431979 -0.170102
+vn 0.340808 -0.052396 -0.938672
+vn -0.635003 -0.036998 -0.771623
+vn 0.269719 -0.665956 -0.695524
+vn -0.774425 -0.205804 -0.598256
+vn 0.986743 -0.100599 -0.127350
+vn 0.885697 -0.431979 -0.170102
+vn 0.340808 -0.052396 -0.938672
+vn 0.290112 -0.607986 -0.739046
+vn 0.625645 -0.366092 0.688873
+vn 0.524221 -0.625753 0.577603
+vn 0.903912 -0.197307 0.379490
+vn 0.748591 -0.606403 0.268119
+vn -0.900189 -0.429462 -0.072267
+vn -0.649067 -0.697779 -0.303013
+vn -0.833203 -0.446542 -0.326148
+vn -0.789096 -0.509883 -0.342561
+vn -0.254096 -0.630711 0.733238
+vn -0.917922 -0.374675 0.130530
+vn -0.157699 -0.848006 0.505982
+vn -0.750619 -0.645715 0.140084
+vn -0.900189 -0.429462 -0.072267
+vn -0.928961 -0.059490 -0.365367
+vn -0.917922 -0.374675 0.130530
+vn -0.917768 -0.144613 -0.369850
+vn -0.157699 -0.848006 0.505982
+vn 0.050852 -0.996691 -0.063420
+vn 0.467116 -0.645343 0.604429
+vn 0.731152 -0.631689 0.257655
+vn 0.731152 -0.631689 0.257655
+vn 0.050852 -0.996691 -0.063420
+vn 0.873332 -0.417770 -0.250518
+vn 0.280028 -0.562874 -0.777661
+vn -0.480688 -0.367266 -0.796276
+vn -0.713462 -0.614501 -0.336690
+vn -0.603114 -0.063343 -0.795136
+vn -0.917768 -0.144613 -0.369850
+vn -0.603114 -0.063343 -0.795136
+vn -0.917768 -0.144613 -0.369850
+vn -0.756108 -0.287422 -0.587953
+vn -0.928961 -0.059490 -0.365367
+vn -0.756108 -0.287422 -0.587953
+vn -0.928961 -0.059490 -0.365367
+vn -0.804316 -0.460970 -0.374943
+vn -0.842655 -0.401147 -0.359185
+vn -0.700799 -0.633925 -0.327139
+vn -0.560375 -0.492426 -0.665956
+vn 0.036664 -0.997736 -0.056381
+vn 0.208853 -0.709160 -0.673404
+vn -0.757556 -0.560224 -0.335048
+vn -0.796147 -0.479872 -0.368610
+vn -0.348989 -0.916303 -0.196456
+vn -0.342836 -0.919276 -0.193377
+vn -0.814934 -0.474782 -0.332363
+vn -0.324274 -0.926258 -0.192072
+vn -0.830021 -0.429284 -0.356063
+vn -0.337097 -0.922114 -0.189927
+vn -0.771174 -0.538661 -0.339316
+vn -0.308663 -0.931768 -0.191145
+vn -0.814934 -0.474782 -0.332363
+vn -0.324274 -0.926258 -0.192072
+vn -0.351445 -0.923768 -0.152117
+vn -0.356174 -0.931418 -0.074842
+vn -0.818493 -0.465510 -0.336705
+vn -0.786892 -0.537806 -0.302599
+vn -0.156125 -0.805922 0.571065
+vn -0.931120 -0.357538 -0.071983
+vn -0.227156 -0.610856 0.758456
+vn -0.938536 -0.335461 0.081343
+vn 0.035742 -0.999124 -0.021757
+vn -0.678312 -0.661425 -0.320015
+vn -0.156125 -0.805922 0.571065
+vn -0.931120 -0.357538 -0.071983
+vn 0.035742 -0.999124 -0.021757
+vn 0.286450 -0.420658 -0.860810
+vn -0.678312 -0.661425 -0.320015
+vn -0.778847 -0.133758 -0.612786
+vn -0.187775 -0.614480 0.766260
+vn -0.941527 -0.330074 0.067668
+vn -0.099761 -0.859535 0.501246
+vn -0.776225 -0.626090 0.074066
+vn -0.530711 -0.063166 -0.845196
+vn 0.314999 -0.071118 -0.946424
+vn -0.419319 -0.386580 -0.821418
+vn 0.303259 -0.548269 -0.779382
+vn -0.727160 -0.230704 -0.646541
+vn -0.844068 -0.363039 -0.394654
+vn -0.683429 -0.663239 -0.305023
+vn -0.826920 -0.435431 -0.355813
+vn 0.748091 -0.613011 0.254121
+vn 0.095502 -0.994536 -0.042165
+vn 0.857976 -0.396462 -0.326641
+vn 0.303259 -0.548269 -0.779382
+vn -0.894559 -0.368544 0.252862
+vn -0.917804 -0.157366 -0.364517
+vn -0.732578 -0.632526 0.251477
+vn -0.694724 -0.646599 -0.315069
+vn -0.829931 -0.554033 -0.065290
+vn -0.782265 -0.349168 -0.515890
+vn -0.927399 -0.065924 -0.368218
+vn -0.858577 -0.322304 -0.398705
+vn -0.027400 -0.588294 -0.808183
+vn -0.156553 -0.202637 -0.966659
+vn 0.002517 -0.690720 -0.723118
+vn -0.443399 -0.530395 -0.722550
+vn -0.146490 -0.053141 -0.987784
+vn -0.671725 -0.072145 -0.737280
+vn -0.156553 -0.202637 -0.966659
+vn -0.443399 -0.530395 -0.722550
+vn 0.758102 -0.112102 -0.642429
+vn 0.672524 -0.362643 -0.645137
+vn -0.146490 -0.053141 -0.987784
+vn -0.100748 -0.465088 -0.879513
+vn -0.027400 -0.588294 -0.808183
+vn 0.037679 -0.870593 -0.490558
+vn -0.012407 -0.510539 -0.859765
+vn -0.225282 -0.804133 -0.550108
+vn -0.307365 -0.466673 -0.829303
+vn -0.012407 -0.510539 -0.859765
+vn -0.782265 -0.349168 -0.515890
+vn -0.225282 -0.804133 -0.550108
+vn -0.761033 -0.385958 0.521408
+vn -0.949731 -0.173993 -0.260263
+vn -0.597416 -0.595190 0.537441
+vn -0.778473 -0.592045 -0.208475
+vn -0.765020 -0.607620 -0.213406
+vn -0.443399 -0.530395 -0.722550
+vn -0.949731 -0.173993 -0.260263
+vn -0.671725 -0.072145 -0.737280
+vn -0.184102 -0.948965 0.256071
+vn -0.218060 -0.953013 0.210278
+vn -0.360213 -0.778225 0.514404
+vn -0.523743 -0.749646 0.404628
+vn -0.709273 -0.683694 -0.171739
+vn -0.675974 -0.716362 -0.172871
+vn -0.289490 -0.956578 0.033967
+vn -0.303331 -0.952478 0.027864
+vn -0.675974 -0.716362 -0.172871
+vn -0.750752 -0.617361 -0.235026
+vn -0.303331 -0.952478 0.027864
+vn -0.317555 -0.947995 0.021553
+vn -0.733127 -0.651070 -0.196555
+vn -0.709273 -0.683694 -0.171739
+vn -0.277067 -0.960002 0.040382
+vn -0.289490 -0.956578 0.033967
+vn -0.332849 -0.942866 0.014694
+vn -0.348701 -0.937204 0.007528
+vn -0.157133 -0.982914 0.095860
+vn -0.162098 -0.982293 0.093935
+vn -0.348701 -0.937204 0.007528
+vn -0.358364 -0.933465 -0.014767
+vn -0.162098 -0.982293 0.093935
+vn -0.161359 -0.984100 0.074239
+vn -0.358364 -0.933465 -0.014767
+vn -0.356174 -0.931418 -0.074842
+vn -0.161359 -0.984100 0.074239
+vn -0.148219 -0.988869 0.012982
+vn -0.317555 -0.947995 0.021553
+vn -0.332849 -0.942866 0.014694
+vn -0.152404 -0.983479 0.097685
+vn -0.157133 -0.982914 0.095860
+vn 0.503027 0.862869 0.049203
+vn 0.351063 0.914438 0.201390
+vn 0.815660 0.530039 0.231859
+vn 0.660942 0.696302 0.279855
+vn -0.270240 -0.961654 0.046827
+vn -0.269835 -0.961780 0.046569
+vn -0.133961 -0.985096 0.107888
+vn -0.137064 -0.985042 0.104428
+vn -0.685739 -0.704123 -0.184318
+vn -0.733127 -0.651070 -0.196555
+vn -0.269835 -0.961780 0.046569
+vn -0.277067 -0.960002 0.040382
+vn 0.320268 0.803586 -0.501675
+vn -0.463405 0.671133 -0.578650
+vn 0.098435 0.995105 -0.008726
+vn -0.583171 0.761337 -0.283333
+vn -0.463405 0.671133 -0.578650
+vn -0.709144 0.200082 -0.676079
+vn -0.583171 0.761337 -0.283333
+vn -0.908286 0.201027 -0.366885
+vn -0.908286 0.201027 -0.366885
+vn -0.927941 0.065783 -0.366875
+vn -0.910544 0.410715 -0.047139
+vn -0.882668 0.438279 -0.169732
+vn -0.693852 0.665241 -0.275725
+vn 0.020977 0.999715 -0.011373
+vn -0.664493 0.677853 -0.314587
+vn 0.049739 0.996975 -0.059731
+vn -0.088852 0.931517 0.352679
+vn 0.662335 0.644683 0.381701
+vn 0.020977 0.999715 -0.011373
+vn 0.716043 0.644706 0.267652
+vn -0.155071 -0.980670 0.119330
+vn -0.130056 -0.984880 0.114441
+vn -0.104857 -0.976024 0.190739
+vn -0.052897 -0.984633 0.166435
+vn 0.769916 0.269538 0.578428
+vn 0.903175 0.218732 0.369366
+vn 0.662335 0.644683 0.381701
+vn 0.716043 0.644706 0.267652
+vn -0.197210 0.810252 0.551906
+vn -0.080856 0.937857 0.337470
+vn -0.910544 0.410715 -0.047139
+vn -0.627650 0.778346 -0.015279
+vn -0.044261 0.969750 0.240052
+vn -0.197210 0.810252 0.551906
+vn -0.882668 0.438279 -0.169732
+vn -0.910544 0.410715 -0.047139
+vn 0.864811 0.363047 0.346842
+vn 0.918597 0.203312 0.338885
+vn 0.915480 0.097194 0.390449
+vn 0.943703 0.282237 0.172532
+vn 0.817221 0.389627 0.424666
+vn 0.806561 0.373690 0.458057
+vn 0.897190 0.353851 0.264272
+vn 0.459765 0.802024 0.381279
+vn 0.806561 0.373690 0.458057
+vn 0.851439 0.258052 0.456576
+vn 0.459765 0.802024 0.381279
+vn 0.705844 0.363153 0.608197
+vn 0.888767 0.109499 0.445087
+vn 0.795508 0.414516 0.441977
+vn 0.917574 0.063432 0.392471
+vn 0.837214 0.330625 0.435613
+vn 0.810652 0.329945 0.483715
+vn 0.547451 0.646025 0.531929
+vn 0.637316 0.546541 0.543251
+vn 0.058930 0.963107 0.262588
+vn 0.547451 0.646025 0.531929
+vn 0.810652 0.329945 0.483715
+vn 0.781498 0.095534 0.616550
+vn 0.885750 0.132304 0.444908
+vn 0.856696 0.377049 0.352003
+vn 0.603402 0.765643 0.222926
+vn 0.917007 0.215450 0.335678
+vn 0.949250 0.273132 0.155960
+vn 0.856696 0.377049 0.352003
+vn 0.860493 0.345141 0.374740
+vn 0.603402 0.765643 0.222926
+vn 0.744588 0.399487 0.534788
+vn -0.925691 -0.156523 0.344379
+vn -0.915094 -0.140570 0.377947
+vn -0.569063 -0.382400 0.727968
+vn -0.571060 -0.391939 0.721301
+vn -0.569063 -0.382400 0.727968
+vn -0.571060 -0.391939 0.721301
+vn 0.000000 -0.467254 0.884123
+vn -0.019772 -0.497438 0.867274
+vn -0.925691 -0.156523 0.344379
+vn -0.926266 -0.169677 0.336513
+vn -0.997926 0.041849 0.048905
+vn -0.999548 0.023118 0.019198
+vn -0.926266 -0.169677 0.336513
+vn -0.935928 -0.241420 0.256429
+vn -0.999548 0.023118 0.019198
+vn -0.996693 -0.053587 -0.061087
+vn -0.932708 -0.341960 0.114538
+vn -0.981104 -0.131706 -0.141736
+vn -0.935928 -0.241420 0.256429
+vn -0.996693 -0.053587 -0.061087
+vn -0.905144 -0.425075 0.005000
+vn -0.968203 -0.146101 -0.203068
+vn -0.932708 -0.341960 0.114538
+vn -0.981104 -0.131706 -0.141736
+vn -0.789505 -0.608855 -0.077309
+vn -0.968581 -0.219421 -0.117069
+vn -0.806532 -0.590230 -0.033683
+vn -0.978694 -0.166150 -0.120636
+vn -0.905144 -0.425075 0.005000
+vn -0.806532 -0.590230 -0.033683
+vn -0.978314 -0.131880 -0.159717
+vn -0.978694 -0.166150 -0.120636
+vn -0.789505 -0.608855 -0.077309
+vn -0.406451 -0.913557 0.014560
+vn -0.793876 -0.603153 -0.077246
+vn -0.379515 -0.924915 0.022367
+vn 0.323910 -0.894552 0.307993
+vn 0.548966 -0.674209 0.494042
+vn -0.090938 -0.953848 0.286191
+vn 0.095008 -0.832948 0.545134
+vn 0.548966 -0.674209 0.494042
+vn 0.626996 -0.451095 0.635129
+vn 0.095008 -0.832948 0.545134
+vn 0.210153 -0.514817 0.831143
+vn 0.000000 0.775287 -0.631609
+vn 0.000000 0.959054 -0.283225
+vn -0.448858 0.707847 -0.545416
+vn -0.479972 0.861385 -0.166261
+vn -0.418344 0.500828 -0.757733
+vn -0.433943 0.610831 -0.662253
+vn -0.917223 0.235908 -0.321013
+vn -0.920132 0.292555 -0.260326
+vn -0.898766 0.082448 -0.430606
+vn -0.952609 -0.024791 -0.303187
+vn -0.478081 -0.040997 -0.877358
+vn -0.864621 0.042310 -0.500640
+vn -0.855965 0.044644 -0.515102
+vn -0.864621 0.042310 -0.500640
+vn -0.952529 0.001944 -0.304441
+vn -0.952609 -0.024791 -0.303187
+vn -0.940556 -0.006223 -0.339582
+vn -0.952529 0.001944 -0.304441
+vn -0.957609 -0.004583 -0.288036
+vn -0.958827 -0.010003 -0.283815
+vn -0.940556 -0.006223 -0.339582
+vn -0.957609 -0.004583 -0.288036
+vn -0.949358 -0.081767 -0.303370
+vn -0.963656 -0.010663 -0.266933
+vn -0.949358 -0.081767 -0.303370
+vn -0.972946 -0.072729 -0.219289
+vn -0.942764 -0.102519 -0.317311
+vn -0.978900 -0.081638 -0.187321
+vn -0.859713 0.470849 -0.197977
+vn -0.972357 0.129605 -0.194228
+vn -0.881325 0.421686 -0.213182
+vn -0.967307 0.168449 -0.189585
+vn -0.873537 0.462139 -0.152843
+vn -0.966956 0.212806 -0.140393
+vn -0.987710 -0.120460 -0.099592
+vn -0.960357 -0.236587 -0.147445
+vn -0.933599 0.267552 -0.238346
+vn -0.710961 0.642216 -0.286519
+vn -0.859870 0.476695 -0.182719
+vn -0.873537 0.462139 -0.152843
+vn -0.721475 -0.684345 -0.105572
+vn -0.595825 -0.765339 -0.243411
+vn -0.877018 -0.348924 -0.330291
+vn -0.719955 -0.583521 -0.375723
+vn -0.719301 0.322660 -0.615221
+vn -0.945198 -0.326270 -0.012155
+vn -0.985465 -0.169274 -0.014311
+vn -0.721475 -0.684345 -0.105572
+vn -0.702382 -0.701925 -0.118157
+vn -0.913248 0.394656 0.101116
+vn -0.859231 0.507821 -0.061970
+vn -0.985465 -0.169274 -0.014311
+vn -0.971918 0.013991 -0.234903
+vn -0.670772 0.724816 0.157185
+vn -0.786047 0.607746 0.113031
+vn -0.859231 0.507821 -0.061970
+vn -0.621296 0.757265 -0.201348
+vn -0.895500 -0.261819 -0.359904
+vn -0.861513 -0.117649 -0.493918
+vn -0.621296 0.757265 -0.201348
+vn -0.484706 0.799449 -0.354883
+vn -0.971708 -0.076275 -0.223530
+vn -0.904228 -0.286690 -0.316513
+vn -0.979621 -0.054501 -0.193319
+vn -0.910993 -0.169075 -0.376171
+vn -0.972146 -0.049385 -0.229116
+vn -0.968187 0.003180 -0.250209
+vn -0.871994 -0.281463 0.400506
+vn -0.986450 -0.065619 0.150367
+vn -0.616294 -0.722155 0.314124
+vn -0.871994 -0.281463 0.400506
+vn -0.767465 -0.594058 0.241024
+vn -0.901134 0.005281 0.433509
+vn -0.038404 -0.981796 0.186016
+vn -0.618927 -0.784531 0.037952
+vn -0.883420 -0.456587 -0.105348
+vn -0.059870 -0.983918 0.168291
+vn -0.042987 -0.994540 0.095090
+vn -0.883420 -0.456587 -0.105348
+vn -0.724991 -0.687474 -0.042043
+vn -0.232468 -0.968908 0.084706
+vn -0.931025 -0.328896 -0.158175
+vn -0.347841 -0.937468 -0.012650
+vn -0.297484 -0.954727 -0.000477
+vn -0.372270 -0.923749 -0.090019
+vn -0.931025 -0.328896 -0.158175
+vn -0.297484 -0.954727 -0.000477
+vn -0.943303 0.143090 -0.299509
+vn -0.958837 -0.126537 -0.254205
+vn -0.999614 0.025663 0.010608
+vn -0.818426 0.564397 0.107863
+vn -0.850713 -0.329971 -0.409153
+vn -0.867206 -0.448506 -0.216327
+vn -0.958837 -0.126537 -0.254205
+vn -0.974313 -0.134578 -0.180565
+vn 0.472752 -0.810538 0.345736
+vn 0.484165 -0.861827 0.151122
+vn 0.765222 -0.515868 0.385117
+vn 0.720931 -0.650826 0.238084
+vn -0.998830 -0.028674 -0.038940
+vn -0.972515 0.158791 -0.170296
+vn -0.895528 0.228039 -0.382137
+vn -0.838046 -0.440034 -0.322567
+vn -0.972515 0.158791 -0.170296
+vn -0.978337 0.102847 -0.179665
+vn -0.838046 -0.440034 -0.322567
+vn -0.832557 -0.520297 -0.190105
+vn -0.635003 -0.036998 -0.771623
+vn 0.340808 -0.052396 -0.938672
+vn -0.530346 -0.396897 -0.749137
+vn 0.290112 -0.607986 -0.739046
+vn -0.774425 -0.205804 -0.598256
+vn -0.823146 -0.419946 -0.382200
+vn -0.649067 -0.697779 -0.303013
+vn -0.789096 -0.509883 -0.342561
+vn 0.524221 -0.625753 0.577603
+vn 0.625645 -0.366092 0.688873
+vn -0.128714 -0.861957 0.490371
+vn -0.227156 -0.610856 0.758456
+vn -0.833203 -0.446542 -0.326148
+vn -0.842655 -0.401147 -0.359185
+vn -0.900189 -0.429462 -0.072267
+vn -0.928961 -0.059490 -0.365367
+vn 0.050852 -0.996691 -0.063420
+vn -0.157699 -0.848006 0.505982
+vn -0.713462 -0.614501 -0.336690
+vn -0.750619 -0.645715 0.140084
+vn -0.713462 -0.614501 -0.336690
+vn -0.480688 -0.367266 -0.796276
+vn 0.050852 -0.996691 -0.063420
+vn 0.280028 -0.562874 -0.777661
+vn -0.804316 -0.460970 -0.374943
+vn -0.295316 -0.937940 -0.181818
+vn -0.771174 -0.538661 -0.339316
+vn -0.308663 -0.931768 -0.191145
+vn -0.796147 -0.479872 -0.368610
+vn -0.830021 -0.429284 -0.356063
+vn -0.342836 -0.919276 -0.193377
+vn -0.337097 -0.922114 -0.189927
+vn -0.356174 -0.931418 -0.074842
+vn -0.351445 -0.923768 -0.152117
+vn -0.148219 -0.988869 0.012982
+vn -0.127716 -0.989450 -0.068391
+vn -0.351445 -0.923768 -0.152117
+vn -0.352481 -0.916215 -0.190544
+vn -0.127716 -0.989450 -0.068391
+vn -0.100201 -0.989691 -0.102335
+vn -0.352481 -0.916215 -0.190544
+vn -0.348989 -0.916303 -0.196456
+vn -0.100201 -0.989691 -0.102335
+vn -0.110692 -0.987127 -0.115447
+vn 0.301654 0.003045 -0.953413
+vn -0.644314 -0.006942 -0.764730
+vn 0.286450 -0.420658 -0.860810
+vn -0.778847 -0.133758 -0.612786
+vn 0.988176 -0.068884 -0.136976
+vn 0.892933 -0.421394 -0.158423
+vn 0.301654 0.003045 -0.953413
+vn 0.270627 -0.605593 -0.748344
+vn -0.099761 -0.859535 0.501246
+vn 0.072370 -0.995928 -0.053753
+vn 0.553528 -0.603486 0.573944
+vn 0.762735 -0.585831 0.273930
+vn 0.762735 -0.585831 0.273930
+vn 0.072370 -0.995928 -0.053753
+vn 0.892933 -0.421394 -0.158423
+vn 0.270627 -0.605593 -0.748344
+vn -0.929741 -0.357324 -0.088893
+vn -0.683429 -0.663239 -0.305023
+vn -0.866716 -0.367761 -0.336980
+vn -0.826920 -0.435431 -0.355813
+vn -0.929741 -0.357324 -0.088893
+vn -0.929303 -0.045595 -0.366492
+vn -0.941527 -0.330074 0.067668
+vn -0.919521 -0.122314 -0.373525
+vn -0.530711 -0.063166 -0.845196
+vn -0.419319 -0.386580 -0.821418
+vn -0.917804 -0.157366 -0.364517
+vn -0.694724 -0.646599 -0.315069
+vn -0.530711 -0.063166 -0.845196
+vn -0.917804 -0.157366 -0.364517
+vn -0.727160 -0.230704 -0.646541
+vn -0.927399 -0.065924 -0.368218
+vn -0.844068 -0.363039 -0.394654
+vn -0.727160 -0.230704 -0.646541
+vn -0.858577 -0.322304 -0.398705
+vn -0.927399 -0.065924 -0.368218
+vn -0.128503 -0.791293 0.597781
+vn -0.732578 -0.632526 0.251477
+vn 0.095502 -0.994536 -0.042165
+vn -0.694724 -0.646599 -0.315069
+vn 0.002517 -0.690720 -0.723118
+vn 0.149042 -0.890663 -0.429541
+vn -0.027400 -0.588294 -0.808183
+vn 0.037679 -0.870593 -0.490558
+vn -0.671725 -0.072145 -0.737280
+vn -0.146490 -0.053141 -0.987784
+vn -0.612315 -0.286782 -0.736767
+vn -0.100748 -0.465088 -0.879513
+vn 0.672524 -0.362643 -0.645137
+vn 0.786087 -0.586142 0.196225
+vn -0.100748 -0.465088 -0.879513
+vn 0.000461 -0.999617 -0.027682
+vn -0.597416 -0.595190 0.537441
+vn -0.778473 -0.592045 -0.208475
+vn 0.104481 -0.677233 0.728313
+vn 0.000461 -0.999617 -0.027682
+vn 0.104481 -0.677233 0.728313
+vn 0.000461 -0.999617 -0.027682
+vn 0.586827 -0.460547 0.665981
+vn 0.786087 -0.586142 0.196225
+vn -0.765020 -0.607620 -0.213406
+vn 0.760049 -0.605931 0.234890
+vn -0.443399 -0.530395 -0.722550
+vn 0.802470 -0.489340 -0.341449
+vn 0.030858 -0.786884 0.616329
+vn 0.340433 -0.390379 0.855400
+vn 0.760049 -0.605931 0.234890
+vn 0.933228 -0.173674 0.314521
+vn -0.360213 -0.778225 0.514404
+vn -0.523743 -0.749646 0.404628
+vn -0.538699 -0.492147 0.683809
+vn -0.822891 -0.473898 0.313481
+vn 0.030858 -0.786884 0.616329
+vn -0.538699 -0.492147 0.683809
+vn 0.340433 -0.390379 0.855400
+vn -0.609602 -0.402393 0.682982
+vn -0.503101 -0.673966 0.540979
+vn -0.869798 -0.471178 0.146433
+vn -0.218060 -0.953013 0.210278
+vn -0.372100 -0.923865 0.089524
+vn 0.921778 0.351266 -0.164125
+vn 0.503027 0.862869 0.049203
+vn 0.976953 0.176690 0.119764
+vn 0.815660 0.530039 0.231859
+vn -0.152404 -0.983479 0.097685
+vn -0.147970 -0.983985 0.099390
+vn -0.317555 -0.947995 0.021553
+vn -0.303331 -0.952478 0.027864
+vn 0.739087 -0.147687 0.657221
+vn 0.765222 -0.515868 0.385117
+vn 0.745048 0.480136 0.463004
+vn 0.934066 0.034281 0.355452
+vn 0.745048 0.480136 0.463004
+vn 0.934066 0.034281 0.355452
+vn 0.660942 0.696302 0.279855
+vn 0.815660 0.530039 0.231859
+vn -0.130056 -0.984880 0.114441
+vn -0.133961 -0.985096 0.107888
+vn -0.052897 -0.984633 0.166435
+vn -0.045168 -0.988906 0.141512
+vn -0.583171 0.761337 -0.283333
+vn -0.908286 0.201027 -0.366885
+vn -0.627650 0.778346 -0.015279
+vn -0.910544 0.410715 -0.047139
+vn -0.882668 0.438279 -0.169732
+vn -0.905073 0.233972 -0.355106
+vn -0.626797 0.720927 -0.295619
+vn -0.883035 0.286433 -0.371759
+vn -0.910466 0.175059 -0.374709
+vn -0.652734 0.690653 -0.311347
+vn -0.905073 0.233972 -0.355106
+vn -0.639404 0.704805 -0.307266
+vn -0.664493 0.677853 -0.314587
+vn 0.049739 0.996975 -0.059731
+vn -0.652734 0.690653 -0.311347
+vn 0.061678 0.996517 -0.056122
+vn 0.453986 0.837894 0.303035
+vn 0.123346 0.991752 0.034829
+vn 0.525423 0.836534 0.155378
+vn 0.157810 0.987285 -0.019085
+vn -0.215515 -0.093260 0.972037
+vn -0.118433 0.940539 0.318370
+vn 0.123346 0.991752 0.034829
+vn 0.008645 0.999683 -0.023639
+vn -0.118433 0.940539 0.318370
+vn -0.093739 -0.947012 0.307215
+vn -0.387097 0.099215 0.916685
+vn 0.056771 -0.927933 0.368398
+vn -0.071333 -0.971644 0.225431
+vn -0.023970 -0.975888 0.216954
+vn -0.093739 -0.947012 0.307215
+vn 0.056771 -0.927933 0.368398
+vn -0.104857 -0.976024 0.190739
+vn -0.052897 -0.984633 0.166435
+vn -0.071333 -0.971644 0.225431
+vn -0.023970 -0.975888 0.216954
+vn 0.903175 0.218732 0.369366
+vn 0.871024 0.349071 0.345640
+vn 0.920220 0.207544 0.331843
+vn 0.883368 0.356229 0.304569
+vn 0.871024 0.349071 0.345640
+vn 0.525423 0.836534 0.155378
+vn 0.883368 0.356229 0.304569
+vn 0.568419 0.812165 0.131485
+vn -0.080856 0.937857 0.337470
+vn 0.098435 0.995105 -0.008726
+vn -0.627650 0.778346 -0.015279
+vn -0.583171 0.761337 -0.283333
+vn -0.882668 0.438279 -0.169732
+vn -0.626797 0.720927 -0.295619
+vn -0.044261 0.969750 0.240052
+vn 0.066068 0.997241 -0.033852
+vn 0.066068 0.997241 -0.033852
+vn 0.256967 0.822843 -0.506850
+vn 0.636768 0.739562 0.218115
+vn 0.943703 0.282237 0.172532
+vn 0.915480 0.097194 0.390449
+vn 0.744588 0.399487 0.534788
+vn 0.864811 0.363047 0.346842
+vn 0.860493 0.345141 0.374740
+vn 0.873071 0.210883 0.439632
+vn 0.873318 0.138874 0.466937
+vn 0.795508 0.414516 0.441977
+vn 0.837214 0.330625 0.435613
+vn 0.770135 0.450087 0.452011
+vn 0.816796 0.364210 0.447433
+vn 0.618192 0.465754 0.633177
+vn 0.882906 0.164551 0.439772
+vn 0.816796 0.364210 0.447433
+vn 0.817221 0.389627 0.424666
+vn 0.882906 0.164551 0.439772
+vn 0.897190 0.353851 0.264272
+vn 0.810652 0.329945 0.483715
+vn 0.854091 0.235960 0.463521
+vn 0.885750 0.132304 0.444908
+vn 0.637316 0.546541 0.543251
+vn 0.144508 0.870488 0.470498
+vn 0.626996 -0.451095 0.635129
+vn 0.210153 -0.514817 0.831143
+vn 0.705844 0.363153 0.608197
+vn 0.912883 0.085352 0.399200
+vn 0.731628 0.262222 0.629254
+vn 0.911048 0.152329 0.383129
+vn 0.912883 0.085352 0.399200
+vn 0.949250 0.273132 0.155960
+vn 0.911048 0.152329 0.383129
+vn 0.991989 0.125216 0.016666
+vn 0.705844 0.363153 0.608197
+vn -0.158063 0.837533 0.523025
+vn 0.459765 0.802024 0.381279
+vn -0.065800 0.986868 0.147521
+vn -0.915094 -0.140570 0.377947
+vn -0.925691 -0.156523 0.344379
+vn -0.992579 0.053652 0.109128
+vn -0.997926 0.041849 0.048905
+vn 0.549038 -0.388357 0.740092
+vn -0.019772 -0.497438 0.867274
+vn 0.422025 -0.418765 0.804071
+vn -0.110736 -0.544383 0.831496
+vn -0.968203 -0.146101 -0.203068
+vn -0.905144 -0.425075 0.005000
+vn -0.968799 -0.101861 -0.225949
+vn -0.978314 -0.131880 -0.159717
+vn -0.789505 -0.608855 -0.077309
+vn -0.793876 -0.603153 -0.077246
+vn -0.968581 -0.219421 -0.117069
+vn -0.948806 -0.294816 -0.113362
+vn -0.793876 -0.603153 -0.077246
+vn -0.379515 -0.924915 0.022367
+vn -0.773028 -0.632231 -0.052076
+vn -0.439820 -0.894792 0.076847
+vn -0.379515 -0.924915 0.022367
+vn -0.037079 -0.991725 0.122909
+vn -0.439820 -0.894792 0.076847
+vn -0.090938 -0.953848 0.286191
+vn 0.747838 -0.184592 0.637702
+vn 0.422025 -0.418765 0.804071
+vn 0.380430 -0.398983 0.834317
+vn 0.192164 -0.545087 0.816060
+vn 0.933480 0.115488 0.339526
+vn 0.747838 -0.184592 0.637702
+vn 0.645057 0.246483 0.723289
+vn 0.615938 0.147243 0.773912
+vn 0.879170 0.425879 0.213748
+vn 0.933480 0.115488 0.339526
+vn 0.718219 0.366144 0.591693
+vn 0.645057 0.246483 0.723289
+vn 0.879170 0.425879 0.213748
+vn 0.651063 0.725739 0.222305
+vn 0.456374 0.875676 -0.157844
+vn 0.289055 0.951868 0.101959
+vn 0.000000 0.959054 -0.283225
+vn 0.456374 0.875676 -0.157844
+vn 0.000000 0.998845 0.048052
+vn 0.289055 0.951868 0.101959
+vn -0.433943 0.610831 -0.662253
+vn -0.448858 0.707847 -0.545416
+vn -0.920132 0.292555 -0.260326
+vn -0.934054 0.322641 -0.153119
+vn -0.898766 0.082448 -0.430606
+vn -0.917223 0.235908 -0.321013
+vn -0.996693 -0.053587 -0.061087
+vn -0.999548 0.023118 0.019198
+vn -0.898766 0.082448 -0.430606
+vn -0.996693 -0.053587 -0.061087
+vn -0.952609 -0.024791 -0.303187
+vn -0.981104 -0.131706 -0.141736
+vn -0.978900 -0.081638 -0.187321
+vn -0.979621 -0.054501 -0.193319
+vn -0.972357 0.129605 -0.194228
+vn -0.967307 0.168449 -0.189585
+vn -0.881325 0.421686 -0.213182
+vn -0.763542 0.371400 -0.528266
+vn -0.908976 -0.253874 -0.330622
+vn -0.525775 0.675552 -0.516905
+vn -0.877018 -0.348924 -0.330291
+vn -0.719301 0.322660 -0.615221
+vn -0.710961 0.642216 -0.286519
+vn -0.336812 0.899029 -0.279828
+vn -0.966956 0.212806 -0.140393
+vn -0.873537 0.462139 -0.152843
+vn -0.597964 0.789451 -0.138585
+vn -0.710961 0.642216 -0.286519
+vn -0.966956 0.212806 -0.140393
+vn -0.987261 -0.056786 -0.148629
+vn -0.960357 -0.236587 -0.147445
+vn -0.937438 -0.289760 -0.192998
+vn -0.960357 -0.236587 -0.147445
+vn -0.937438 -0.289760 -0.192998
+vn -0.922183 -0.339876 -0.184560
+vn -0.917954 -0.342492 -0.200148
+vn -0.917954 -0.342492 -0.200148
+vn -0.903270 -0.356599 -0.238623
+vn -0.971708 -0.076275 -0.223530
+vn -0.904228 -0.286690 -0.316513
+vn -0.908976 -0.253874 -0.330622
+vn -0.525775 0.675552 -0.516905
+vn -0.861513 -0.117649 -0.493918
+vn -0.484706 0.799449 -0.354883
+vn -0.957609 -0.004583 -0.288036
+vn -0.958827 -0.010003 -0.283815
+vn -0.968187 0.003180 -0.250209
+vn -0.975180 0.086182 -0.203952
+vn -0.767465 -0.594058 0.241024
+vn -0.789984 -0.609310 0.068315
+vn -0.409416 -0.894418 0.179985
+vn -0.038404 -0.981796 0.186016
+vn -0.059870 -0.983918 0.168291
+vn -0.695055 -0.717909 -0.038797
+vn -0.883420 -0.456587 -0.105348
+vn -0.228454 -0.969042 0.093633
+vn -0.232468 -0.968908 0.084706
+vn -0.883420 -0.456587 -0.105348
+vn -0.650231 -0.759373 -0.023512
+vn -0.228454 -0.969042 0.093633
+vn -0.042785 -0.994782 0.092622
+vn -0.832150 -0.547646 -0.087241
+vn -0.931025 -0.328896 -0.158175
+vn -0.347841 -0.937468 -0.012650
+vn -0.042987 -0.994540 0.095090
+vn -0.967668 -0.198866 -0.155148
+vn -0.042785 -0.994782 0.092622
+vn -0.832150 -0.547646 -0.087241
+vn -0.925617 -0.343807 -0.158211
+vn -0.931025 -0.328896 -0.158175
+vn -0.392390 -0.918642 -0.046114
+vn -0.332518 -0.940908 -0.064226
+vn -0.259364 -0.961304 -0.092867
+vn -0.931025 -0.328896 -0.158175
+vn -0.337379 -0.936649 -0.094150
+vn -0.931025 -0.328896 -0.158175
+vn -0.372270 -0.923749 -0.090019
+vn -0.337379 -0.936649 -0.094150
+vn -0.919469 -0.372453 -0.125921
+vn -0.581520 -0.811935 0.050947
+vn -0.869798 -0.471178 0.146433
+vn -0.372100 -0.923865 0.089524
+vn -0.919469 -0.372453 -0.125921
+vn -0.791373 -0.607305 0.070062
+vn -0.581520 -0.811935 0.050947
+vn -0.715641 -0.685515 0.133892
+vn -0.867206 -0.448506 -0.216327
+vn -0.890305 -0.453699 -0.038909
+vn -0.974313 -0.134578 -0.180565
+vn -0.980114 -0.136108 -0.144401
+vn -0.999614 0.025663 0.010608
+vn -0.891557 -0.210875 0.400822
+vn -0.881667 -0.468607 -0.055410
+vn -0.585553 -0.810330 0.022216
+vn 0.693608 -0.718405 0.052936
+vn 0.893642 -0.389885 0.222246
+vn 0.484165 -0.861827 0.151122
+vn 0.720931 -0.650826 0.238084
+vn 0.921778 0.351266 -0.164125
+vn 0.976953 0.176690 0.119764
+vn 0.693608 -0.718405 0.052936
+vn 0.893642 -0.389885 0.222246
+vn -0.998830 -0.028674 -0.038940
+vn -0.895528 0.228039 -0.382137
+vn -0.980114 -0.136108 -0.144401
+vn -0.646494 0.725846 -0.234933
+vn -0.881667 -0.468607 -0.055410
+vn -0.585553 -0.810330 0.022216
+vn -0.832557 -0.520297 -0.190105
+vn -0.486219 -0.861643 -0.145472
+vn 0.748591 -0.606403 0.268119
+vn 0.524221 -0.625753 0.577603
+vn 0.063261 -0.996421 -0.056074
+vn -0.128714 -0.861957 0.490371
+vn 0.748591 -0.606403 0.268119
+vn 0.063261 -0.996421 -0.056074
+vn 0.885697 -0.431979 -0.170102
+vn 0.290112 -0.607986 -0.739046
+vn -0.530346 -0.396897 -0.749137
+vn -0.728110 -0.595436 -0.339576
+vn -0.635003 -0.036998 -0.771623
+vn -0.918801 -0.131504 -0.372172
+vn -0.635003 -0.036998 -0.771623
+vn -0.918801 -0.131504 -0.372172
+vn -0.774425 -0.205804 -0.598256
+vn -0.929075 -0.049714 -0.366536
+vn -0.774425 -0.205804 -0.598256
+vn -0.929075 -0.049714 -0.366536
+vn -0.823146 -0.419946 -0.382200
+vn -0.857690 -0.364702 -0.362436
+vn -0.833203 -0.446542 -0.326148
+vn -0.296960 -0.940538 -0.164931
+vn -0.842655 -0.401147 -0.359185
+vn -0.292369 -0.941223 -0.169175
+vn -0.789096 -0.509883 -0.342561
+vn -0.304065 -0.937819 -0.167451
+vn -0.833203 -0.446542 -0.326148
+vn -0.296960 -0.940538 -0.164931
+vn -0.917922 -0.374675 0.130530
+vn -0.917768 -0.144613 -0.369850
+vn -0.750619 -0.645715 0.140084
+vn -0.713462 -0.614501 -0.336690
+vn -0.227156 -0.610856 0.758456
+vn -0.938536 -0.335461 0.081343
+vn -0.128714 -0.861957 0.490371
+vn -0.768531 -0.634865 0.079413
+vn -0.842655 -0.401147 -0.359185
+vn -0.292369 -0.941223 -0.169175
+vn -0.804316 -0.460970 -0.374943
+vn -0.295316 -0.937940 -0.181818
+vn -0.348989 -0.916303 -0.196456
+vn -0.342836 -0.919276 -0.193377
+vn -0.110692 -0.987127 -0.115447
+vn -0.103879 -0.987796 -0.116055
+vn -0.308663 -0.931768 -0.191145
+vn -0.055507 -0.991435 -0.118220
+vn -0.324274 -0.926258 -0.192072
+vn -0.076621 -0.990163 -0.117075
+vn -0.324274 -0.926258 -0.192072
+vn -0.076621 -0.990163 -0.117075
+vn -0.337097 -0.922114 -0.189927
+vn -0.095182 -0.989377 -0.109883
+vn -0.295316 -0.937940 -0.181818
+vn -0.039881 -0.993825 -0.103548
+vn -0.308663 -0.931768 -0.191145
+vn -0.055507 -0.991435 -0.118220
+vn -0.931120 -0.357538 -0.071983
+vn -0.678312 -0.661425 -0.320015
+vn -0.854968 -0.400583 -0.329488
+vn -0.810453 -0.470158 -0.349453
+vn -0.931120 -0.357538 -0.071983
+vn -0.929075 -0.049714 -0.366536
+vn -0.938536 -0.335461 0.081343
+vn -0.918801 -0.131504 -0.372172
+vn -0.644314 -0.006942 -0.764730
+vn 0.301654 0.003045 -0.953413
+vn -0.557123 -0.381628 -0.737546
+vn 0.270627 -0.605593 -0.748344
+vn -0.778847 -0.133758 -0.612786
+vn -0.839837 -0.375641 -0.391878
+vn -0.678312 -0.661425 -0.320015
+vn -0.810453 -0.470158 -0.349453
+vn -0.776225 -0.626090 0.074066
+vn -0.740591 -0.579173 -0.340710
+vn -0.099761 -0.859535 0.501246
+vn 0.072370 -0.995928 -0.053753
+vn -0.941527 -0.330074 0.067668
+vn -0.919521 -0.122314 -0.373525
+vn -0.776225 -0.626090 0.074066
+vn -0.740591 -0.579173 -0.340710
+vn -0.866716 -0.367761 -0.336980
+vn -0.870067 -0.330244 -0.365953
+vn -0.929741 -0.357324 -0.088893
+vn -0.929303 -0.045595 -0.366492
+vn 0.303259 -0.548269 -0.779382
+vn 0.095502 -0.994536 -0.042165
+vn -0.419319 -0.386580 -0.821418
+vn -0.694724 -0.646599 -0.315069
+vn -0.826920 -0.435431 -0.355813
+vn -0.844068 -0.363039 -0.394654
+vn -0.373356 -0.908875 -0.185883
+vn -0.380290 -0.904368 -0.193644
+vn -0.782265 -0.349168 -0.515890
+vn -0.225282 -0.804133 -0.550108
+vn -0.858577 -0.322304 -0.398705
+vn -0.351339 -0.894871 -0.275256
+vn 0.486060 -0.647369 -0.587076
+vn 0.149042 -0.890663 -0.429541
+vn 0.002517 -0.690720 -0.723118
+vn -0.443399 -0.530395 -0.722550
+vn 0.802470 -0.489340 -0.341449
+vn 0.002517 -0.690720 -0.723118
+vn 0.486060 -0.647369 -0.587076
+vn -0.612315 -0.286782 -0.736767
+vn -0.778473 -0.592045 -0.208475
+vn -0.671725 -0.072145 -0.737280
+vn -0.949731 -0.173993 -0.260263
+vn 0.149042 -0.890663 -0.429541
+vn 0.065297 -0.979397 -0.191099
+vn 0.037679 -0.870593 -0.490558
+vn -0.014492 -0.983844 -0.178439
+vn 0.037679 -0.870593 -0.490558
+vn -0.014492 -0.983844 -0.178439
+vn -0.225282 -0.804133 -0.550108
+vn -0.351339 -0.894871 -0.275256
+vn -0.218060 -0.953013 0.210278
+vn -0.372100 -0.923865 0.089524
+vn -0.523743 -0.749646 0.404628
+vn -0.638696 -0.736622 0.222384
+vn -0.277067 -0.960002 0.040382
+vn -0.289490 -0.956578 0.033967
+vn -0.139879 -0.984828 0.102701
+vn -0.143719 -0.984449 0.101022
+vn -0.289490 -0.956578 0.033967
+vn -0.303331 -0.952478 0.027864
+vn -0.143719 -0.984449 0.101022
+vn -0.147970 -0.983985 0.099390
+vn -0.269835 -0.961780 0.046569
+vn -0.277067 -0.960002 0.040382
+vn -0.137064 -0.985042 0.104428
+vn -0.139879 -0.984828 0.102701
+vn -0.152404 -0.983479 0.097685
+vn -0.157133 -0.982914 0.095860
+vn -0.044064 -0.989561 0.137214
+vn -0.044102 -0.989568 0.137153
+vn -0.157133 -0.982914 0.095860
+vn -0.162098 -0.982293 0.093935
+vn -0.044102 -0.989568 0.137153
+vn -0.044140 -0.989575 0.137090
+vn -0.162098 -0.982293 0.093935
+vn -0.161359 -0.984100 0.074239
+vn -0.044140 -0.989575 0.137090
+vn -0.038249 -0.992206 0.118591
+vn -0.161359 -0.984100 0.074239
+vn -0.148219 -0.988869 0.012982
+vn -0.038249 -0.992206 0.118591
+vn -0.018708 -0.998138 0.058054
+vn -0.147970 -0.983985 0.099390
+vn -0.152404 -0.983479 0.097685
+vn -0.044005 -0.989554 0.137281
+vn -0.044064 -0.989561 0.137214
+vn 0.976953 0.176690 0.119764
+vn 0.815660 0.530039 0.231859
+vn 0.893642 -0.389885 0.222246
+vn 0.934066 0.034281 0.355452
+vn -0.133961 -0.985096 0.107888
+vn -0.137064 -0.985042 0.104428
+vn -0.045168 -0.988906 0.141512
+vn -0.043874 -0.989536 0.137451
+vn 0.020977 0.999715 -0.011373
+vn 0.716043 0.644706 0.267652
+vn 0.049739 0.996975 -0.059731
+vn 0.746375 0.622667 0.234969
+vn -0.387097 0.099215 0.916685
+vn -0.110315 0.993626 -0.023198
+vn -0.118433 0.940539 0.318370
+vn 0.008645 0.999683 -0.023639
+vn 0.716043 0.644706 0.267652
+vn 0.903175 0.218732 0.369366
+vn 0.746375 0.622667 0.234969
+vn 0.920220 0.207544 0.331843
+vn 0.066068 0.997241 -0.033852
+vn -0.626797 0.720927 -0.295619
+vn 0.256967 0.822843 -0.506850
+vn -0.806119 0.223585 -0.547888
+vn 0.744588 0.399487 0.534788
+vn 0.915480 0.097194 0.390449
+vn 0.716867 0.315835 0.621571
+vn 0.908201 0.177409 0.379074
+vn 0.915480 0.097194 0.390449
+vn 0.943703 0.282237 0.172532
+vn 0.908201 0.177409 0.379074
+vn 0.988993 0.146786 0.018605
+vn 0.943703 0.282237 0.172532
+vn 0.256967 0.822843 -0.506850
+vn 0.988993 0.146786 0.018605
+vn 0.376736 0.219302 -0.899987
+vn 0.873071 0.210883 0.439632
+vn 0.899009 0.188535 0.395269
+vn 0.901963 0.075734 0.425121
+vn 0.941141 0.268917 0.204786
+vn 0.899009 0.188535 0.395269
+vn 0.809248 0.406397 0.424215
+vn 0.941141 0.268917 0.204786
+vn 0.441062 0.832340 0.335669
+vn 0.809248 0.406397 0.424215
+vn 0.770135 0.450087 0.452011
+vn 0.441062 0.832340 0.335669
+vn 0.618192 0.465754 0.633177
+vn 0.882906 0.164551 0.439772
+vn 0.897190 0.353851 0.264272
+vn 0.889965 0.156240 0.428429
+vn 0.988010 0.132106 0.079899
+vn 0.897190 0.353851 0.264272
+vn 0.459765 0.802024 0.381279
+vn 0.263531 0.794277 -0.547426
+vn -0.065800 0.986868 0.147521
+vn 0.058930 0.963107 0.262588
+vn 0.062893 0.952951 0.296527
+vn 0.637316 0.546541 0.543251
+vn 0.144508 0.870488 0.470498
+vn 0.058930 0.963107 0.262588
+vn 0.547451 0.646025 0.531929
+vn 0.604424 0.300817 0.737686
+vn 0.781498 0.095534 0.616550
+vn 0.885750 0.132304 0.444908
+vn 0.854091 0.235960 0.463521
+vn 0.499960 0.825332 0.262424
+vn 0.607271 0.371053 0.702525
+vn 0.885750 0.132304 0.444908
+vn 0.764281 0.043164 0.643437
+vn 0.781498 0.095534 0.616550
+vn 0.440859 0.687631 0.576895
+vn 0.949250 0.273132 0.155960
+vn 0.603402 0.765643 0.222926
+vn 0.192458 0.771155 -0.606861
+vn 0.027086 0.999287 -0.026318
+vn 0.744588 0.399487 0.534788
+vn -0.098549 0.917156 0.386151
+vn 0.603402 0.765643 0.222926
+vn 0.027086 0.999287 -0.026318
+vn 0.731628 0.262222 0.629254
+vn -0.211060 0.592966 0.777075
+vn 0.705844 0.363153 0.608197
+vn -0.158063 0.837533 0.523025
+vn -0.992579 0.053652 0.109128
+vn -0.950417 0.109946 0.290893
+vn -0.915094 -0.140570 0.377947
+vn -0.830154 -0.149428 0.537137
+vn -0.915094 -0.140570 0.377947
+vn -0.830154 -0.149428 0.537137
+vn -0.571060 -0.391939 0.721301
+vn -0.543633 -0.436225 0.717057
+vn -0.571060 -0.391939 0.721301
+vn -0.543633 -0.436225 0.717057
+vn -0.019772 -0.497438 0.867274
+vn -0.110736 -0.544383 0.831496
+vn -0.992579 0.053652 0.109128
+vn -0.997926 0.041849 0.048905
+vn -0.934054 0.322641 -0.153119
+vn -0.920132 0.292555 -0.260326
+vn -0.997926 0.041849 0.048905
+vn -0.999548 0.023118 0.019198
+vn -0.920132 0.292555 -0.260326
+vn -0.917223 0.235908 -0.321013
+vn -0.968203 -0.146101 -0.203068
+vn -0.952529 0.001944 -0.304441
+vn -0.981104 -0.131706 -0.141736
+vn -0.952609 -0.024791 -0.303187
+vn -0.968799 -0.101861 -0.225949
+vn -0.958827 -0.010003 -0.283815
+vn -0.968203 -0.146101 -0.203068
+vn -0.952529 0.001944 -0.304441
+vn -0.968581 -0.219421 -0.117069
+vn -0.985514 0.112173 -0.127195
+vn -0.978694 -0.166150 -0.120636
+vn -0.961202 0.233711 -0.146529
+vn -0.978314 -0.131880 -0.159717
+vn -0.975180 0.086182 -0.203952
+vn -0.968799 -0.101861 -0.225949
+vn -0.958827 -0.010003 -0.283815
+vn -0.978694 -0.166150 -0.120636
+vn -0.961202 0.233711 -0.146529
+vn -0.978314 -0.131880 -0.159717
+vn -0.975180 0.086182 -0.203952
+vn -0.793876 -0.603153 -0.077246
+vn -0.773028 -0.632231 -0.052076
+vn -0.948806 -0.294816 -0.113362
+vn -0.905511 -0.418410 -0.070588
+vn -0.439820 -0.894792 0.076847
+vn -0.090938 -0.953848 0.286191
+vn -0.736859 -0.667587 0.106619
+vn -0.406715 -0.824997 0.392382
+vn -0.090938 -0.953848 0.286191
+vn 0.095008 -0.832948 0.545134
+vn -0.171816 -0.853652 0.491689
+vn -0.065597 -0.743575 0.665427
+vn 0.095008 -0.832948 0.545134
+vn 0.210153 -0.514817 0.831143
+vn -0.065597 -0.743575 0.665427
+vn -0.122063 -0.289144 0.949472
+vn 0.747838 -0.184592 0.637702
+vn 0.380430 -0.398983 0.834317
+vn 0.341445 -0.218627 0.914121
+vn 0.323050 -0.342541 0.882216
+vn 0.718219 0.366144 0.591693
+vn 0.772783 0.530088 0.349017
+vn 0.879170 0.425879 0.213748
+vn 0.651063 0.725739 0.222305
+vn 0.000000 0.959054 -0.283225
+vn 0.000000 0.998845 0.048052
+vn -0.479972 0.861385 -0.166261
+vn -0.326604 0.939810 0.100434
+vn -0.448858 0.707847 -0.545416
+vn -0.479972 0.861385 -0.166261
+vn -0.934054 0.322641 -0.153119
+vn -0.913101 0.366703 0.178258
+vn -0.881325 0.421686 -0.213182
+vn -0.967307 0.168449 -0.189585
+vn -0.763542 0.371400 -0.528266
+vn -0.879418 0.086518 -0.468122
+vn -0.597964 0.789451 -0.138585
+vn -0.823378 0.567320 -0.014012
+vn -0.966956 0.212806 -0.140393
+vn -0.987261 -0.056786 -0.148629
+vn -0.917954 -0.342492 -0.200148
+vn -0.937438 -0.289760 -0.192998
+vn -0.903270 -0.356599 -0.238623
+vn -0.917571 -0.318130 -0.238448
+vn -0.719301 0.322660 -0.615221
+vn -0.719955 -0.583521 -0.375723
+vn -0.569276 0.704780 -0.423333
+vn -0.595825 -0.765339 -0.243411
+vn -0.721475 -0.684345 -0.105572
+vn -0.507802 -0.856539 -0.092077
+vn -0.702382 -0.701925 -0.118157
+vn -0.425435 -0.892724 -0.148491
+vn -0.702382 -0.701925 -0.118157
+vn -0.985465 -0.169274 -0.014311
+vn -0.584334 -0.779974 -0.224040
+vn -0.971918 0.013991 -0.234903
+vn -0.971918 0.013991 -0.234903
+vn -0.859231 0.507821 -0.061970
+vn -0.899082 0.030829 -0.436694
+vn -0.618492 0.692953 -0.370519
+vn -0.859231 0.507821 -0.061970
+vn -0.621296 0.757265 -0.201348
+vn -0.618492 0.692953 -0.370519
+vn -0.484706 0.799449 -0.354883
+vn -0.903270 -0.356599 -0.238623
+vn -0.917571 -0.318130 -0.238448
+vn -0.904228 -0.286690 -0.316513
+vn -0.843997 -0.360174 -0.397421
+vn -0.910993 -0.169075 -0.376171
+vn -0.879418 0.086518 -0.468122
+vn -0.979621 -0.054501 -0.193319
+vn -0.967307 0.168449 -0.189585
+vn -0.904228 -0.286690 -0.316513
+vn -0.843997 -0.360174 -0.397421
+vn -0.910993 -0.169075 -0.376171
+vn -0.708697 -0.342127 -0.617007
+vn -0.871994 -0.281463 0.400506
+vn -0.986450 -0.065619 0.150367
+vn -0.901134 0.005281 0.433509
+vn -0.876786 0.216671 0.429301
+vn -0.975180 0.086182 -0.203952
+vn -0.876786 0.216671 0.429301
+vn -0.968187 0.003180 -0.250209
+vn -0.986450 -0.065619 0.150367
+vn -0.901134 0.005281 0.433509
+vn -0.510408 -0.838540 0.190615
+vn -0.767465 -0.594058 0.241024
+vn -0.789984 -0.609310 0.068315
+vn -0.789984 -0.609310 0.068315
+vn -0.838175 -0.545384 -0.004330
+vn -0.038404 -0.981796 0.186016
+vn -0.618927 -0.784531 0.037952
+vn -0.059870 -0.983918 0.168291
+vn -0.618927 -0.784531 0.037952
+vn -0.883334 -0.461086 -0.084381
+vn -0.838175 -0.545384 -0.004330
+vn -0.650231 -0.759373 -0.023512
+vn -0.935161 -0.335587 -0.113379
+vn -0.232468 -0.968908 0.084706
+vn -0.916637 -0.378705 -0.127901
+vn -0.724991 -0.687474 -0.042043
+vn -0.936961 -0.302148 -0.175528
+vn -0.042987 -0.994540 0.095090
+vn -0.967668 -0.198866 -0.155148
+vn -0.232468 -0.968908 0.084706
+vn -0.916637 -0.378705 -0.127901
+vn -0.724991 -0.687474 -0.042043
+vn -0.936961 -0.302148 -0.175528
+vn -0.347841 -0.937468 -0.012650
+vn -0.832150 -0.547646 -0.087241
+vn -0.572533 -0.819831 -0.009127
+vn -0.842639 -0.523999 0.124035
+vn -0.297484 -0.954727 -0.000477
+vn -0.347841 -0.937468 -0.012650
+vn -0.821413 -0.438804 -0.364325
+vn -0.572533 -0.819831 -0.009127
+vn -0.925617 -0.343807 -0.158211
+vn -0.392390 -0.918642 -0.046114
+vn -0.472854 -0.877505 -0.079964
+vn -0.564443 -0.820611 -0.089450
+vn -0.525489 -0.844271 -0.105205
+vn -0.931025 -0.328896 -0.158175
+vn -0.341527 -0.932084 -0.120741
+vn -0.931025 -0.328896 -0.158175
+vn -0.259364 -0.961304 -0.092867
+vn -0.341527 -0.932084 -0.120741
+vn -0.372270 -0.923749 -0.090019
+vn -0.297484 -0.954727 -0.000477
+vn -0.975339 -0.127857 -0.179905
+vn -0.821413 -0.438804 -0.364325
+vn -0.919469 -0.372453 -0.125921
+vn -0.925617 -0.343807 -0.158211
+vn -0.466750 -0.874062 -0.134761
+vn -0.791373 -0.607305 0.070062
+vn -0.919469 -0.372453 -0.125921
+vn -0.938827 -0.343231 -0.028231
+vn -0.807013 -0.568975 -0.158104
+vn -0.999614 0.025663 0.010608
+vn -0.818426 0.564397 0.107863
+vn -0.891557 -0.210875 0.400822
+vn -0.589392 0.781975 0.202809
+vn -0.958837 -0.126537 -0.254205
+vn -0.974313 -0.134578 -0.180565
+vn -0.818426 0.564397 0.107863
+vn -0.694378 0.715389 -0.077827
+vn 0.765222 -0.515868 0.385117
+vn 0.720931 -0.650826 0.238084
+vn 0.934066 0.034281 0.355452
+vn 0.893642 -0.389885 0.222246
+vn -0.974313 -0.134578 -0.180565
+vn -0.980114 -0.136108 -0.144401
+vn -0.694378 0.715389 -0.077827
+vn -0.646494 0.725846 -0.234933
+vn -0.895528 0.228039 -0.382137
+vn -0.838046 -0.440034 -0.322567
+vn -0.672746 0.351110 -0.651256
+vn -0.604987 -0.718132 -0.343914
+vn -0.838046 -0.440034 -0.322567
+vn -0.832557 -0.520297 -0.190105
+vn -0.604987 -0.718132 -0.343914
+vn -0.486219 -0.861643 -0.145472
+vn -0.728110 -0.595436 -0.339576
+vn -0.530346 -0.396897 -0.749137
+vn 0.063261 -0.996421 -0.056074
+vn 0.290112 -0.607986 -0.739046
+vn -0.823146 -0.419946 -0.382200
+vn -0.311828 -0.934650 -0.170861
+vn -0.789096 -0.509883 -0.342561
+vn -0.304065 -0.937819 -0.167451
+vn -0.128714 -0.861957 0.490371
+vn -0.768531 -0.634865 0.079413
+vn 0.063261 -0.996421 -0.056074
+vn -0.728110 -0.595436 -0.339576
+vn -0.295316 -0.937940 -0.181818
+vn -0.292369 -0.941223 -0.169175
+vn -0.039881 -0.993825 -0.103548
+vn -0.036097 -0.996303 -0.077961
+vn -0.342836 -0.919276 -0.193377
+vn -0.337097 -0.922114 -0.189927
+vn -0.103879 -0.987796 -0.116055
+vn -0.095182 -0.989377 -0.109883
+vn -0.148219 -0.988869 0.012982
+vn -0.127716 -0.989450 -0.068391
+vn -0.018708 -0.998138 0.058054
+vn -0.001405 -0.999846 -0.017474
+vn -0.127716 -0.989450 -0.068391
+vn -0.100201 -0.989691 -0.102335
+vn -0.001405 -0.999846 -0.017474
+vn 0.030174 -0.997690 -0.060856
+vn -0.110692 -0.987127 -0.115447
+vn 0.018786 -0.996057 -0.086702
+vn -0.100201 -0.989691 -0.102335
+vn 0.030174 -0.997690 -0.060856
+vn -0.854968 -0.400583 -0.329488
+vn -0.857690 -0.364702 -0.362436
+vn -0.931120 -0.357538 -0.071983
+vn -0.929075 -0.049714 -0.366536
+vn -0.557123 -0.381628 -0.737546
+vn -0.740591 -0.579173 -0.340710
+vn -0.644314 -0.006942 -0.764730
+vn -0.919521 -0.122314 -0.373525
+vn -0.644314 -0.006942 -0.764730
+vn -0.919521 -0.122314 -0.373525
+vn -0.778847 -0.133758 -0.612786
+vn -0.929303 -0.045595 -0.366492
+vn -0.778847 -0.133758 -0.612786
+vn -0.929303 -0.045595 -0.366492
+vn -0.839837 -0.375641 -0.391878
+vn -0.870067 -0.330244 -0.365953
+vn -0.740591 -0.579173 -0.340710
+vn -0.557123 -0.381628 -0.737546
+vn 0.072370 -0.995928 -0.053753
+vn 0.270627 -0.605593 -0.748344
+vn -0.870067 -0.330244 -0.365953
+vn -0.866716 -0.367761 -0.336980
+vn -0.352852 -0.917427 -0.183911
+vn -0.363166 -0.913269 -0.184527
+vn -0.866716 -0.367761 -0.336980
+vn -0.826920 -0.435431 -0.355813
+vn -0.363166 -0.913269 -0.184527
+vn -0.373356 -0.908875 -0.185883
+vn -0.844068 -0.363039 -0.394654
+vn -0.858577 -0.322304 -0.398705
+vn -0.380290 -0.904368 -0.193644
+vn -0.351339 -0.894871 -0.275256
+vn 0.486060 -0.647369 -0.587076
+vn 0.510987 -0.550436 -0.660237
+vn 0.149042 -0.890663 -0.429541
+vn 0.274724 -0.859240 -0.431548
+vn -0.778473 -0.592045 -0.208475
+vn -0.612315 -0.286782 -0.736767
+vn 0.000461 -0.999617 -0.027682
+vn -0.100748 -0.465088 -0.879513
+vn 0.149042 -0.890663 -0.429541
+vn 0.274724 -0.859240 -0.431548
+vn 0.065297 -0.979397 -0.191099
+vn 0.121404 -0.983190 -0.136374
+vn 0.760049 -0.605931 0.234890
+vn 0.933228 -0.173674 0.314521
+vn 0.802470 -0.489340 -0.341449
+vn 0.969185 -0.068137 -0.236725
+vn 0.340433 -0.390379 0.855400
+vn 0.195122 -0.595091 0.779612
+vn 0.933228 -0.173674 0.314521
+vn 0.762164 -0.591805 0.262436
+vn -0.538699 -0.492147 0.683809
+vn -0.822891 -0.473898 0.313481
+vn -0.609602 -0.402393 0.682982
+vn -0.933105 -0.281921 0.223241
+vn -0.523743 -0.749646 0.404628
+vn -0.638696 -0.736622 0.222384
+vn -0.822891 -0.473898 0.313481
+vn -0.620815 -0.776146 0.110393
+vn 0.340433 -0.390379 0.855400
+vn -0.609602 -0.402393 0.682982
+vn 0.195122 -0.595091 0.779612
+vn -0.493985 -0.677213 0.545308
+vn -0.044005 -0.989554 0.137281
+vn -0.043951 -0.989548 0.137346
+vn -0.147970 -0.983985 0.099390
+vn -0.143719 -0.984449 0.101022
+vn -0.045168 -0.988906 0.141512
+vn 0.048215 -0.985265 0.164097
+vn -0.052897 -0.984633 0.166435
+vn 0.041623 -0.985069 0.167053
+vn -0.626797 0.720927 -0.295619
+vn -0.883035 0.286433 -0.371759
+vn -0.806119 0.223585 -0.547888
+vn -0.891138 0.225811 -0.393552
+vn -0.905073 0.233972 -0.355106
+vn -0.639404 0.704805 -0.307266
+vn -0.883035 0.286433 -0.371759
+vn -0.623470 0.721125 -0.302101
+vn -0.652734 0.690653 -0.311347
+vn 0.061678 0.996517 -0.056122
+vn -0.639404 0.704805 -0.307266
+vn 0.074690 0.995882 -0.051381
+vn 0.049739 0.996975 -0.059731
+vn 0.746375 0.622667 0.234969
+vn 0.061678 0.996517 -0.056122
+vn 0.753045 0.613120 0.238761
+vn 0.525423 0.836534 0.155378
+vn 0.157810 0.987285 -0.019085
+vn 0.568419 0.812165 0.131485
+vn 0.189945 0.980784 -0.044542
+vn 0.123346 0.991752 0.034829
+vn 0.008645 0.999683 -0.023639
+vn 0.157810 0.987285 -0.019085
+vn 0.020693 0.997322 -0.070146
+vn -0.387097 0.099215 0.916685
+vn 0.056771 -0.927933 0.368398
+vn -0.359266 0.170549 0.917519
+vn 0.492528 -0.640531 0.589183
+vn -0.110315 0.993626 -0.023198
+vn -0.387097 0.099215 0.916685
+vn -0.422014 0.905641 0.041466
+vn -0.359266 0.170549 0.917519
+vn -0.052897 -0.984633 0.166435
+vn 0.041623 -0.985069 0.167053
+vn -0.023970 -0.975888 0.216954
+vn 0.060265 -0.980668 0.186166
+vn 0.056771 -0.927933 0.368398
+vn -0.023970 -0.975888 0.216954
+vn 0.235928 -0.939625 0.247878
+vn 0.060265 -0.980668 0.186166
+vn 0.746375 0.622667 0.234969
+vn 0.920220 0.207544 0.331843
+vn 0.753045 0.613120 0.238761
+vn 0.920417 0.203118 0.334031
+vn 0.920220 0.207544 0.331843
+vn 0.883368 0.356229 0.304569
+vn 0.920417 0.203118 0.334031
+vn 0.884674 0.351131 0.306689
+vn 0.883368 0.356229 0.304569
+vn 0.568419 0.812165 0.131485
+vn 0.884674 0.351131 0.306689
+vn 0.656988 0.733284 0.175102
+vn 0.716867 0.315835 0.621571
+vn -0.227944 0.655141 0.720300
+vn 0.744588 0.399487 0.534788
+vn -0.098549 0.917156 0.386151
+vn 0.901963 0.075734 0.425121
+vn 0.758863 0.242243 0.604521
+vn 0.873071 0.210883 0.439632
+vn 0.873318 0.138874 0.466937
+vn 0.618192 0.465754 0.633177
+vn -0.341354 0.804062 0.486787
+vn 0.441062 0.832340 0.335669
+vn -0.181963 0.974661 0.130100
+vn 0.618192 0.465754 0.633177
+vn 0.882906 0.164551 0.439772
+vn 0.671998 0.273879 0.688047
+vn 0.889965 0.156240 0.428429
+vn 0.897190 0.353851 0.264272
+vn 0.263531 0.794277 -0.547426
+vn 0.988010 0.132106 0.079899
+vn 0.470354 0.160181 -0.867819
+vn 0.854091 0.235960 0.463521
+vn 0.888767 0.109499 0.445087
+vn 0.607271 0.371053 0.702525
+vn 0.893729 0.046777 0.446161
+vn 0.888767 0.109499 0.445087
+vn 0.917574 0.063432 0.392471
+vn 0.893729 0.046777 0.446161
+vn 0.966846 0.175841 0.185170
+vn 0.062893 0.952951 0.296527
+vn 0.058930 0.963107 0.262588
+vn 0.279997 0.432151 0.857232
+vn 0.604424 0.300817 0.737686
+vn 0.499960 0.825332 0.262424
+vn 0.986963 0.138516 -0.081960
+vn 0.885750 0.132304 0.444908
+vn 0.891937 0.010518 0.452038
+vn 0.781498 0.095534 0.616550
+vn 0.440859 0.687631 0.576895
+vn 0.604424 0.300817 0.737686
+vn 0.544712 0.619209 0.565570
+vn 0.764281 0.043164 0.643437
+vn 0.885750 0.132304 0.444908
+vn 0.599339 0.159111 0.784523
+vn 0.891937 0.010518 0.452038
+vn 0.062893 0.952951 0.296527
+vn -0.053117 0.956841 0.285717
+vn 0.144508 0.870488 0.470498
+vn -0.029299 0.931464 0.362651
+vn 0.144508 0.870488 0.470498
+vn -0.029299 0.931464 0.362651
+vn 0.210153 -0.514817 0.831143
+vn -0.122063 -0.289144 0.949472
+vn 0.949250 0.273132 0.155960
+vn 0.192458 0.771155 -0.606861
+vn 0.991989 0.125216 0.016666
+vn 0.280785 0.171397 -0.944342
+vn -0.211060 0.592966 0.777075
+vn 0.731628 0.262222 0.629254
+vn -0.138722 0.848449 0.510775
+vn 0.642878 0.524679 0.558050
+vn 0.731628 0.262222 0.629254
+vn 0.911048 0.152329 0.383129
+vn 0.642878 0.524679 0.558050
+vn 0.803177 0.511688 0.305094
+vn 0.991989 0.125216 0.016666
+vn 0.908742 0.416178 -0.031357
+vn 0.911048 0.152329 0.383129
+vn 0.803177 0.511688 0.305094
+vn -0.158063 0.837533 0.523025
+vn -0.211060 0.592966 0.777075
+vn -0.918798 0.377105 -0.116629
+vn -0.965739 0.253693 -0.054669
+vn -0.065800 0.986868 0.147521
+vn -0.158063 0.837533 0.523025
+vn -0.601103 0.767031 -0.224364
+vn -0.918798 0.377105 -0.116629
+vn -0.950417 0.109946 0.290893
+vn -0.992579 0.053652 0.109128
+vn -0.913101 0.366703 0.178258
+vn -0.934054 0.322641 -0.153119
+vn 0.422025 -0.418765 0.804071
+vn -0.110736 -0.544383 0.831496
+vn 0.192164 -0.545087 0.816060
+vn -0.205759 -0.609408 0.765693
+vn -0.968581 -0.219421 -0.117069
+vn -0.948806 -0.294816 -0.113362
+vn -0.985514 0.112173 -0.127195
+vn -0.992917 -0.028422 -0.115357
+vn -0.773028 -0.632231 -0.052076
+vn -0.439820 -0.894792 0.076847
+vn -0.905511 -0.418410 -0.070588
+vn -0.736859 -0.667587 0.106619
+vn -0.090938 -0.953848 0.286191
+vn -0.171816 -0.853652 0.491689
+vn -0.406715 -0.824997 0.392382
+vn -0.365642 -0.737204 0.568187
+vn 0.380430 -0.398983 0.834317
+vn 0.192164 -0.545087 0.816060
+vn 0.466307 -0.586330 0.662401
+vn 0.104444 -0.751368 0.651566
+vn 0.341445 -0.218627 0.914121
+vn 0.405442 0.025298 0.913771
+vn 0.747838 -0.184592 0.637702
+vn 0.615938 0.147243 0.773912
+vn 0.718219 0.366144 0.591693
+vn 0.645057 0.246483 0.723289
+vn 0.432553 0.485351 0.759824
+vn 0.251400 0.417122 0.873388
+vn 0.645057 0.246483 0.723289
+vn 0.615938 0.147243 0.773912
+vn 0.251400 0.417122 0.873388
+vn -0.027477 0.395664 0.917984
+vn 0.772783 0.530088 0.349017
+vn 0.718219 0.366144 0.591693
+vn 0.673136 0.578805 0.460297
+vn 0.432553 0.485351 0.759824
+vn 0.772783 0.530088 0.349017
+vn 0.836779 0.534955 0.116720
+vn 0.651063 0.725739 0.222305
+vn 0.620138 0.783797 0.033018
+vn 0.289055 0.951868 0.101959
+vn 0.651063 0.725739 0.222305
+vn 0.252414 0.967270 -0.026009
+vn 0.620138 0.783797 0.033018
+vn 0.000000 0.998845 0.048052
+vn 0.289055 0.951868 0.101959
+vn -0.000000 0.999418 -0.034114
+vn 0.252414 0.967270 -0.026009
+vn -0.763542 0.371400 -0.528266
+vn -0.492777 0.229384 -0.839377
+vn -0.525775 0.675552 -0.516905
+vn -0.422204 0.685127 -0.593587
+vn -0.710961 0.642216 -0.286519
+vn -0.336812 0.899029 -0.279828
+vn -0.597964 0.789451 -0.138585
+vn -0.266857 0.952171 -0.148853
+vn -0.213563 0.948600 -0.233558
+vn -0.336812 0.899029 -0.279828
+vn -0.569276 0.704780 -0.423333
+vn -0.719301 0.322660 -0.615221
+vn -0.823378 0.567320 -0.014012
+vn -0.597964 0.789451 -0.138585
+vn -0.346091 0.938139 -0.010774
+vn -0.266857 0.952171 -0.148853
+vn -0.823378 0.567320 -0.014012
+vn -0.891911 0.451637 0.022796
+vn -0.987261 -0.056786 -0.148629
+vn -0.979233 -0.086264 -0.183472
+vn -0.937438 -0.289760 -0.192998
+vn -0.987261 -0.056786 -0.148629
+vn -0.917571 -0.318130 -0.238448
+vn -0.979233 -0.086264 -0.183472
+vn -0.062268 -0.982330 -0.176494
+vn -0.155012 -0.971466 -0.179516
+vn -0.584334 -0.779974 -0.224040
+vn -0.702382 -0.701925 -0.118157
+vn -0.584334 -0.779974 -0.224040
+vn -0.971918 0.013991 -0.234903
+vn -0.558064 -0.765306 -0.320737
+vn -0.899082 0.030829 -0.436694
+vn -0.525775 0.675552 -0.516905
+vn -0.422204 0.685127 -0.593587
+vn -0.484706 0.799449 -0.354883
+vn -0.618492 0.692953 -0.370519
+vn -0.910993 -0.169075 -0.376171
+vn -0.708697 -0.342127 -0.617007
+vn -0.879418 0.086518 -0.468122
+vn -0.615787 -0.090537 -0.782694
+vn -0.901134 0.005281 0.433509
+vn -0.070932 -0.139365 0.987697
+vn -0.510408 -0.838540 0.190615
+vn 0.011519 -0.963341 0.268032
+vn -0.510408 -0.838540 0.190615
+vn -0.496921 -0.859704 0.118234
+vn -0.789984 -0.609310 0.068315
+vn -0.838175 -0.545384 -0.004330
+vn -0.650231 -0.759373 -0.023512
+vn -0.228454 -0.969042 0.093633
+vn -0.935161 -0.335587 -0.113379
+vn -0.959632 -0.235936 -0.153106
+vn -0.228454 -0.969042 0.093633
+vn -0.695055 -0.717909 -0.038797
+vn -0.959632 -0.235936 -0.153106
+vn -0.937247 -0.310869 -0.157888
+vn -0.695055 -0.717909 -0.038797
+vn -0.059870 -0.983918 0.168291
+vn -0.937247 -0.310869 -0.157888
+vn -0.883334 -0.461086 -0.084381
+vn -0.832150 -0.547646 -0.087241
+vn -0.967668 -0.198866 -0.155148
+vn -0.842639 -0.523999 0.124035
+vn -0.977520 -0.140118 -0.157547
+vn -0.967668 -0.198866 -0.155148
+vn -0.936961 -0.302148 -0.175528
+vn -0.977520 -0.140118 -0.157547
+vn -0.846452 -0.421426 -0.325451
+vn -0.472854 -0.877505 -0.079964
+vn -0.860415 -0.473391 -0.188647
+vn -0.925617 -0.343807 -0.158211
+vn -0.630466 -0.760388 -0.155958
+vn -0.392390 -0.918642 -0.046114
+vn -0.332518 -0.940908 -0.064226
+vn -0.685167 -0.714300 -0.142556
+vn -0.720172 -0.682171 -0.126476
+vn -0.332518 -0.940908 -0.064226
+vn -0.931025 -0.328896 -0.158175
+vn -0.720172 -0.682171 -0.126476
+vn -0.525489 -0.844271 -0.105205
+vn -0.259364 -0.961304 -0.092867
+vn -0.337379 -0.936649 -0.094150
+vn -0.581695 -0.800826 -0.142508
+vn -0.864060 -0.500048 0.057902
+vn -0.337379 -0.936649 -0.094150
+vn -0.372270 -0.923749 -0.090019
+vn -0.864060 -0.500048 0.057902
+vn -0.975339 -0.127857 -0.179905
+vn -0.725160 -0.670116 -0.158389
+vn -0.944810 -0.202508 -0.257535
+vn -0.919469 -0.372453 -0.125921
+vn -0.807013 -0.568975 -0.158104
+vn -0.581520 -0.811935 0.050947
+vn -0.715641 -0.685515 0.133892
+vn -0.372100 -0.923865 0.089524
+vn -0.638696 -0.736622 0.222384
+vn -0.715641 -0.685515 0.133892
+vn -0.791373 -0.607305 0.070062
+vn -0.506814 -0.855429 0.106680
+vn -0.699881 -0.708541 0.090200
+vn -0.891557 -0.210875 0.400822
+vn -0.980278 -0.147602 0.131407
+vn -0.585553 -0.810330 0.022216
+vn -0.849919 -0.515590 -0.108646
+vn -0.895528 0.228039 -0.382137
+vn -0.672746 0.351110 -0.651256
+vn -0.646494 0.725846 -0.234933
+vn -0.444883 0.862691 -0.240507
+vn -0.585553 -0.810330 0.022216
+vn -0.849919 -0.515590 -0.108646
+vn -0.486219 -0.861643 -0.145472
+vn -0.731082 -0.650534 -0.205731
+vn -0.728110 -0.595436 -0.339576
+vn -0.768531 -0.634865 0.079413
+vn -0.918801 -0.131504 -0.372172
+vn -0.938536 -0.335461 0.081343
+vn -0.857690 -0.364702 -0.362436
+vn -0.319472 -0.931458 -0.174137
+vn -0.823146 -0.419946 -0.382200
+vn -0.311828 -0.934650 -0.170861
+vn -0.304065 -0.937819 -0.167451
+vn -0.038738 -0.997019 -0.066732
+vn -0.296960 -0.940538 -0.164931
+vn -0.038038 -0.997093 -0.066023
+vn -0.296960 -0.940538 -0.164931
+vn -0.038038 -0.997093 -0.066023
+vn -0.292369 -0.941223 -0.169175
+vn -0.036097 -0.996303 -0.077961
+vn -0.311828 -0.934650 -0.170861
+vn -0.038853 -0.996918 -0.068157
+vn -0.304065 -0.937819 -0.167451
+vn -0.038738 -0.997019 -0.066732
+vn -0.110692 -0.987127 -0.115447
+vn -0.103879 -0.987796 -0.116055
+vn 0.018786 -0.996057 -0.086702
+vn 0.026307 -0.996487 -0.079514
+vn -0.039881 -0.993825 -0.103548
+vn 0.029287 -0.995570 -0.089351
+vn -0.055507 -0.991435 -0.118220
+vn 0.032724 -0.994484 -0.099650
+vn -0.055507 -0.991435 -0.118220
+vn 0.032724 -0.994484 -0.099650
+vn -0.076621 -0.990163 -0.117075
+vn 0.029927 -0.995448 -0.090491
+vn -0.076621 -0.990163 -0.117075
+vn 0.029927 -0.995448 -0.090491
+vn -0.095182 -0.989377 -0.109883
+vn 0.025121 -0.996827 -0.075536
+vn -0.857690 -0.364702 -0.362436
+vn -0.854968 -0.400583 -0.329488
+vn -0.319472 -0.931458 -0.174137
+vn -0.326022 -0.928794 -0.176213
+vn -0.854968 -0.400583 -0.329488
+vn -0.810453 -0.470158 -0.349453
+vn -0.326022 -0.928794 -0.176213
+vn -0.334607 -0.925298 -0.178500
+vn -0.810453 -0.470158 -0.349453
+vn -0.839837 -0.375641 -0.391878
+vn -0.334607 -0.925298 -0.178500
+vn -0.344207 -0.921151 -0.181665
+vn -0.352852 -0.917427 -0.183911
+vn -0.344207 -0.921151 -0.181665
+vn -0.870067 -0.330244 -0.365953
+vn -0.839837 -0.375641 -0.391878
+vn -0.363166 -0.913269 -0.184527
+vn -0.373356 -0.908875 -0.185883
+vn -0.046892 -0.997013 -0.061368
+vn -0.049702 -0.997015 -0.059087
+vn -0.373356 -0.908875 -0.185883
+vn -0.380290 -0.904368 -0.193644
+vn -0.049702 -0.997015 -0.059087
+vn -0.049180 -0.996467 -0.068084
+vn 0.802470 -0.489340 -0.341449
+vn 0.679415 -0.181743 -0.710890
+vn 0.486060 -0.647369 -0.587076
+vn 0.510987 -0.550436 -0.660237
+vn 0.065297 -0.979397 -0.191099
+vn 0.015048 -0.998898 -0.044453
+vn -0.014492 -0.983844 -0.178439
+vn -0.049180 -0.996467 -0.068084
+vn -0.014492 -0.983844 -0.178439
+vn -0.049180 -0.996467 -0.068084
+vn -0.351339 -0.894871 -0.275256
+vn -0.380290 -0.904368 -0.193644
+vn -0.137064 -0.985042 0.104428
+vn -0.139879 -0.984828 0.102701
+vn -0.043874 -0.989536 0.137451
+vn -0.043911 -0.989542 0.137400
+vn -0.139879 -0.984828 0.102701
+vn -0.143719 -0.984449 0.101022
+vn -0.043911 -0.989542 0.137400
+vn -0.043951 -0.989548 0.137346
+vn -0.044064 -0.989561 0.137214
+vn 0.068010 -0.983897 0.165292
+vn -0.044005 -0.989554 0.137281
+vn 0.063511 -0.984371 0.164254
+vn -0.044102 -0.989568 0.137153
+vn 0.072864 -0.983362 0.166404
+vn -0.044064 -0.989561 0.137214
+vn 0.068010 -0.983897 0.165292
+vn -0.044140 -0.989575 0.137090
+vn 0.077973 -0.982771 0.167575
+vn -0.044102 -0.989568 0.137153
+vn 0.072864 -0.983362 0.166404
+vn -0.038249 -0.992206 0.118591
+vn 0.088800 -0.984542 0.150966
+vn -0.044140 -0.989575 0.137090
+vn 0.077973 -0.982771 0.167575
+vn -0.018708 -0.998138 0.058054
+vn 0.114025 -0.989094 0.093229
+vn -0.038249 -0.992206 0.118591
+vn 0.088800 -0.984542 0.150966
+vn -0.044005 -0.989554 0.137281
+vn 0.063511 -0.984371 0.164254
+vn -0.043951 -0.989548 0.137346
+vn 0.059193 -0.984806 0.163256
+vn -0.043874 -0.989536 0.137451
+vn 0.052197 -0.985280 0.162782
+vn -0.045168 -0.988906 0.141512
+vn 0.048215 -0.985265 0.164097
+vn -0.110315 0.993626 -0.023198
+vn -0.104486 0.989519 -0.099671
+vn 0.008645 0.999683 -0.023639
+vn 0.020693 0.997322 -0.070146
+vn -0.422014 0.905641 0.041466
+vn -0.391884 0.909101 -0.141291
+vn -0.110315 0.993626 -0.023198
+vn -0.104486 0.989519 -0.099671
+vn 0.056771 -0.927933 0.368398
+vn 0.235928 -0.939625 0.247878
+vn 0.492528 -0.640531 0.589183
+vn 0.645078 -0.686499 0.335549
+vn 0.256967 0.822843 -0.506850
+vn -0.806119 0.223585 -0.547888
+vn 0.376736 0.219302 -0.899987
+vn -0.724986 0.091669 -0.682636
+vn -0.227944 0.655141 0.720300
+vn 0.716867 0.315835 0.621571
+vn -0.133853 0.871060 0.472587
+vn 0.609352 0.581618 0.538898
+vn 0.716867 0.315835 0.621571
+vn 0.908201 0.177409 0.379074
+vn 0.609352 0.581618 0.538898
+vn 0.774241 0.560817 0.293318
+vn 0.908201 0.177409 0.379074
+vn 0.988993 0.146786 0.018605
+vn 0.774241 0.560817 0.293318
+vn 0.885786 0.463452 -0.024392
+vn 0.988993 0.146786 0.018605
+vn 0.376736 0.219302 -0.899987
+vn 0.885786 0.463452 -0.024392
+vn 0.291312 0.701788 -0.650101
+vn 0.758863 0.242243 0.604521
+vn 0.901963 0.075734 0.425121
+vn 0.631599 0.283331 0.721669
+vn 0.886943 0.152452 0.435994
+vn 0.901963 0.075734 0.425121
+vn 0.941141 0.268917 0.204786
+vn 0.886943 0.152452 0.435994
+vn 0.994419 0.101777 -0.027806
+vn 0.941141 0.268917 0.204786
+vn 0.441062 0.832340 0.335669
+vn 0.135942 0.812547 -0.566822
+vn -0.181963 0.974661 0.130100
+vn 0.758863 0.242243 0.604521
+vn 0.591108 0.715864 0.371659
+vn 0.873318 0.138874 0.466937
+vn 0.837214 0.330625 0.435613
+vn -0.341354 0.804062 0.486787
+vn 0.618192 0.465754 0.633177
+vn -0.423497 0.513106 0.746574
+vn 0.671998 0.273879 0.688047
+vn 0.671998 0.273879 0.688047
+vn 0.889965 0.156240 0.428429
+vn 0.572969 0.470599 0.671002
+vn 0.779859 0.470915 0.412383
+vn 0.889965 0.156240 0.428429
+vn 0.988010 0.132106 0.079899
+vn 0.779859 0.470915 0.412383
+vn 0.926149 0.371794 0.063377
+vn -0.065800 0.986868 0.147521
+vn -0.601103 0.767031 -0.224364
+vn 0.263531 0.794277 -0.547426
+vn -0.792755 0.117460 -0.598116
+vn 0.917574 0.063432 0.392471
+vn 0.837214 0.330625 0.435613
+vn 0.966846 0.175841 0.185170
+vn 0.591108 0.715864 0.371659
+vn 0.279997 0.432151 0.857232
+vn -0.096116 0.460741 0.882315
+vn 0.062893 0.952951 0.296527
+vn -0.053117 0.956841 0.285717
+vn 0.279997 0.432151 0.857232
+vn 0.604424 0.300817 0.737686
+vn 0.503934 0.350364 0.789491
+vn 0.544712 0.619209 0.565570
+vn 0.986963 0.138516 -0.081960
+vn 0.499960 0.825332 0.262424
+vn 0.029962 0.502337 -0.864153
+vn -0.324806 0.943977 0.058374
+vn 0.607271 0.371053 0.702525
+vn -0.410419 0.714202 0.566985
+vn 0.499960 0.825332 0.262424
+vn -0.324806 0.943977 0.058374
+vn 0.599339 0.159111 0.784523
+vn -0.244006 0.480836 0.842175
+vn 0.764281 0.043164 0.643437
+vn -0.095742 0.764929 0.636960
+vn 0.764281 0.043164 0.643437
+vn -0.095742 0.764929 0.636960
+vn 0.440859 0.687631 0.576895
+vn -0.196073 0.950882 0.239541
+vn 0.027086 0.999287 -0.026318
+vn -0.611116 0.738824 -0.284036
+vn 0.192458 0.771155 -0.606861
+vn -0.807551 0.197927 -0.555595
+vn -0.098549 0.917156 0.386151
+vn -0.227944 0.655141 0.720300
+vn -0.918524 0.369469 -0.140736
+vn -0.959192 0.278469 -0.049058
+vn 0.027086 0.999287 -0.026318
+vn -0.098549 0.917156 0.386151
+vn -0.611116 0.738824 -0.284036
+vn -0.918524 0.369469 -0.140736
+vn -0.211060 0.592966 0.777075
+vn -0.138722 0.848449 0.510775
+vn -0.965739 0.253693 -0.054669
+vn -0.856351 0.515742 -0.025951
+vn 0.991989 0.125216 0.016666
+vn 0.280785 0.171397 -0.944342
+vn 0.908742 0.416178 -0.031357
+vn 0.223846 0.666060 -0.711518
+vn -0.913101 0.366703 0.178258
+vn -0.830644 0.258861 0.492972
+vn -0.950417 0.109946 0.290893
+vn -0.799532 0.188345 0.570329
+vn -0.950417 0.109946 0.290893
+vn -0.799532 0.188345 0.570329
+vn -0.830154 -0.149428 0.537137
+vn -0.721186 0.050329 0.690911
+vn -0.830154 -0.149428 0.537137
+vn -0.582326 -0.365791 0.726012
+vn -0.543633 -0.436225 0.717057
+vn -0.447090 -0.486635 0.750531
+vn -0.543633 -0.436225 0.717057
+vn -0.447090 -0.486635 0.750531
+vn -0.110736 -0.544383 0.831496
+vn -0.205759 -0.609408 0.765693
+vn -0.961202 0.233711 -0.146529
+vn -0.985514 0.112173 -0.127195
+vn -0.766765 0.625850 -0.142770
+vn -0.874268 0.470853 -0.118123
+vn -0.975180 0.086182 -0.203952
+vn -0.961202 0.233711 -0.146529
+vn -0.590953 0.799017 -0.111109
+vn -0.766765 0.625850 -0.142770
+vn -0.948806 -0.294816 -0.113362
+vn -0.905511 -0.418410 -0.070588
+vn -0.992917 -0.028422 -0.115357
+vn -0.971500 -0.227361 -0.067045
+vn -0.905511 -0.418410 -0.070588
+vn -0.736859 -0.667587 0.106619
+vn -0.971500 -0.227361 -0.067045
+vn -0.882004 -0.436449 0.177710
+vn -0.736859 -0.667587 0.106619
+vn -0.406715 -0.824997 0.392382
+vn -0.882004 -0.436449 0.177710
+vn -0.665132 -0.496929 0.557369
+vn -0.171816 -0.853652 0.491689
+vn -0.065597 -0.743575 0.665427
+vn -0.306264 -0.429540 0.849528
+vn -0.122063 -0.289144 0.949472
+vn 0.466307 -0.586330 0.662401
+vn 0.585391 -0.404108 0.702862
+vn 0.380430 -0.398983 0.834317
+vn 0.323050 -0.342541 0.882216
+vn 0.405442 0.025298 0.913771
+vn 0.341445 -0.218627 0.914121
+vn -0.726381 -0.086132 0.681874
+vn 0.096040 -0.696629 0.710974
+vn 0.341445 -0.218627 0.914121
+vn 0.323050 -0.342541 0.882216
+vn 0.096040 -0.696629 0.710974
+vn 0.585391 -0.404108 0.702862
+vn 0.615938 0.147243 0.773912
+vn 0.405442 0.025298 0.913771
+vn -0.027477 0.395664 0.917984
+vn -0.726381 -0.086132 0.681874
+vn 0.673136 0.578805 0.460297
+vn 0.830554 0.550776 0.082621
+vn 0.772783 0.530088 0.349017
+vn 0.836779 0.534955 0.116720
+vn 0.000000 0.998845 0.048052
+vn -0.000000 0.999418 -0.034114
+vn -0.326604 0.939810 0.100434
+vn -0.305994 0.951636 -0.027497
+vn -0.326604 0.939810 0.100434
+vn -0.720467 0.650295 0.240923
+vn -0.479972 0.861385 -0.166261
+vn -0.913101 0.366703 0.178258
+vn -0.763542 0.371400 -0.528266
+vn -0.879418 0.086518 -0.468122
+vn -0.492777 0.229384 -0.839377
+vn -0.615787 -0.090537 -0.782694
+vn -0.444924 0.879663 0.168035
+vn -0.823378 0.567320 -0.014012
+vn -0.346091 0.938139 -0.010774
+vn -0.823378 0.567320 -0.014012
+vn -0.444924 0.879663 0.168035
+vn -0.891911 0.451637 0.022796
+vn -0.345378 0.880022 0.325999
+vn -0.425435 -0.892724 -0.148491
+vn -0.702382 -0.701925 -0.118157
+vn -0.155012 -0.971466 -0.179516
+vn -0.062268 -0.982330 -0.176494
+vn -0.584334 -0.779974 -0.224040
+vn -0.121513 -0.973517 -0.193647
+vn -0.558064 -0.765306 -0.320737
+vn -0.899082 0.030829 -0.436694
+vn -0.618492 0.692953 -0.370519
+vn -0.849995 0.210669 -0.482832
+vn -0.422204 0.685127 -0.593587
+vn -0.558064 -0.765306 -0.320737
+vn -0.899082 0.030829 -0.436694
+vn -0.734818 -0.613106 -0.290075
+vn -0.849995 0.210669 -0.482832
+vn -0.917571 -0.318130 -0.238448
+vn -0.979233 -0.086264 -0.183472
+vn -0.843997 -0.360174 -0.397421
+vn -0.958033 -0.016588 -0.286177
+vn -0.843997 -0.360174 -0.397421
+vn -0.958033 -0.016588 -0.286177
+vn -0.708697 -0.342127 -0.617007
+vn -0.878348 -0.033268 -0.476863
+vn -0.590953 0.799017 -0.111109
+vn -0.668008 0.731536 0.136459
+vn -0.975180 0.086182 -0.203952
+vn -0.876786 0.216671 0.429301
+vn -0.901134 0.005281 0.433509
+vn -0.876786 0.216671 0.429301
+vn -0.846683 0.520260 0.111612
+vn -0.668008 0.731536 0.136459
+vn -0.901134 0.005281 0.433509
+vn -0.651299 0.752889 -0.094702
+vn -0.070932 -0.139365 0.987697
+vn -0.055674 0.997814 -0.035604
+vn -0.496921 -0.859704 0.118234
+vn -0.510408 -0.838540 0.190615
+vn -0.024760 -0.975816 0.217187
+vn 0.011519 -0.963341 0.268032
+vn -0.496921 -0.859704 0.118234
+vn -0.502369 -0.863565 0.043364
+vn -0.838175 -0.545384 -0.004330
+vn -0.883334 -0.461086 -0.084381
+vn -0.937247 -0.310869 -0.157888
+vn -0.883334 -0.461086 -0.084381
+vn -0.855805 -0.419793 -0.302279
+vn -0.502369 -0.863565 0.043364
+vn -0.916637 -0.378705 -0.127901
+vn -0.935161 -0.335587 -0.113379
+vn -0.536977 -0.843595 0.001909
+vn -0.816887 -0.562111 0.129333
+vn -0.936961 -0.302148 -0.175528
+vn -0.916637 -0.378705 -0.127901
+vn -0.846452 -0.421426 -0.325451
+vn -0.536977 -0.843595 0.001909
+vn -0.821413 -0.438804 -0.364325
+vn -0.572533 -0.819831 -0.009127
+vn 0.140983 -0.926201 -0.349679
+vn -0.032599 -0.992443 0.118295
+vn -0.842639 -0.523999 0.124035
+vn -0.127715 -0.911141 0.391805
+vn -0.572533 -0.819831 -0.009127
+vn -0.032599 -0.992443 0.118295
+vn -0.975339 -0.127857 -0.179905
+vn -0.821413 -0.438804 -0.364325
+vn -0.952431 -0.236371 -0.192363
+vn -0.724632 -0.193368 -0.661451
+vn -0.860415 -0.473391 -0.188647
+vn -0.472854 -0.877505 -0.079964
+vn -0.968372 -0.192260 -0.159033
+vn -0.974059 -0.117059 -0.193666
+vn -0.472854 -0.877505 -0.079964
+vn -0.564443 -0.820611 -0.089450
+vn -0.974059 -0.117059 -0.193666
+vn -0.894513 -0.403731 -0.191959
+vn -0.564443 -0.820611 -0.089450
+vn -0.392390 -0.918642 -0.046114
+vn -0.894513 -0.403731 -0.191959
+vn -0.685167 -0.714300 -0.142556
+vn -0.720172 -0.682171 -0.126476
+vn -0.525489 -0.844271 -0.105205
+vn -0.885584 -0.463600 0.028557
+vn -0.975923 -0.117195 -0.183956
+vn -0.525489 -0.844271 -0.105205
+vn -0.341527 -0.932084 -0.120741
+vn -0.975923 -0.117195 -0.183956
+vn -0.839099 -0.362025 -0.406018
+vn -0.259364 -0.961304 -0.092867
+vn -0.581695 -0.800826 -0.142508
+vn -0.341527 -0.932084 -0.120741
+vn -0.839099 -0.362025 -0.406018
+vn -0.864060 -0.500048 0.057902
+vn -0.975339 -0.127857 -0.179905
+vn -0.891507 -0.411789 0.188797
+vn -0.952431 -0.236371 -0.192363
+vn -0.466750 -0.874062 -0.134761
+vn -0.925617 -0.343807 -0.158211
+vn -0.425595 -0.892406 -0.149937
+vn -0.725160 -0.670116 -0.158389
+vn -0.919469 -0.372453 -0.125921
+vn -0.843922 -0.505240 -0.180356
+vn -0.919469 -0.372453 -0.125921
+vn -0.466750 -0.874062 -0.134761
+vn -0.843922 -0.505240 -0.180356
+vn -0.922892 -0.327770 -0.202082
+vn -0.791373 -0.607305 0.070062
+vn -0.938827 -0.343231 -0.028231
+vn -0.699881 -0.708541 0.090200
+vn -0.909029 -0.381411 0.167902
+vn -0.938827 -0.343231 -0.028231
+vn -0.807013 -0.568975 -0.158104
+vn -0.909029 -0.381411 0.167902
+vn -0.980753 -0.090124 -0.173211
+vn -0.506814 -0.855429 0.106680
+vn -0.620815 -0.776146 0.110393
+vn -0.715641 -0.685515 0.133892
+vn -0.638696 -0.736622 0.222384
+vn -0.891557 -0.210875 0.400822
+vn -0.589392 0.781975 0.202809
+vn -0.980278 -0.147602 0.131407
+vn -0.876732 0.479858 -0.032832
+vn -0.818426 0.564397 0.107863
+vn -0.694378 0.715389 -0.077827
+vn -0.589392 0.781975 0.202809
+vn -0.403926 0.914320 -0.029379
+vn -0.694378 0.715389 -0.077827
+vn -0.646494 0.725846 -0.234933
+vn -0.403926 0.914320 -0.029379
+vn -0.444883 0.862691 -0.240507
+vn -0.672746 0.351110 -0.651256
+vn -0.604987 -0.718132 -0.343914
+vn -0.877050 0.176574 -0.446772
+vn -0.865299 -0.389639 -0.315339
+vn -0.604987 -0.718132 -0.343914
+vn -0.486219 -0.861643 -0.145472
+vn -0.865299 -0.389639 -0.315339
+vn -0.731082 -0.650534 -0.205731
+vn -0.319472 -0.931458 -0.174137
+vn -0.038599 -0.996869 -0.069010
+vn -0.311828 -0.934650 -0.170861
+vn -0.038853 -0.996918 -0.068157
+vn -0.036097 -0.996303 -0.077961
+vn 0.020252 -0.997895 -0.061605
+vn -0.039881 -0.993825 -0.103548
+vn 0.029287 -0.995570 -0.089351
+vn -0.103879 -0.987796 -0.116055
+vn -0.095182 -0.989377 -0.109883
+vn 0.026307 -0.996487 -0.079514
+vn 0.025121 -0.996827 -0.075536
+vn -0.001405 -0.999846 -0.017474
+vn 0.136782 -0.989664 0.043074
+vn -0.018708 -0.998138 0.058054
+vn 0.114025 -0.989094 0.093229
+vn -0.001405 -0.999846 -0.017474
+vn 0.030174 -0.997690 -0.060856
+vn 0.136782 -0.989664 0.043074
+vn 0.174581 -0.984471 -0.018378
+vn 0.018786 -0.996057 -0.086702
+vn 0.178552 -0.982056 -0.060704
+vn 0.030174 -0.997690 -0.060856
+vn 0.174581 -0.984471 -0.018378
+vn -0.344207 -0.921151 -0.181665
+vn -0.352852 -0.917427 -0.183911
+vn -0.042014 -0.996923 -0.066179
+vn -0.043886 -0.996896 -0.065357
+vn -0.352852 -0.917427 -0.183911
+vn -0.363166 -0.913269 -0.184527
+vn -0.043886 -0.996896 -0.065357
+vn -0.046892 -0.997013 -0.061368
+vn 0.802470 -0.489340 -0.341449
+vn 0.969185 -0.068137 -0.236725
+vn 0.679415 -0.181743 -0.710890
+vn 0.675495 -0.049075 -0.735730
+vn 0.679415 -0.181743 -0.710890
+vn -0.071201 -0.323241 -0.943634
+vn 0.510987 -0.550436 -0.660237
+vn 0.515643 -0.489821 -0.702985
+vn 0.510987 -0.550436 -0.660237
+vn 0.515643 -0.489821 -0.702985
+vn 0.274724 -0.859240 -0.431548
+vn 0.511762 -0.794876 -0.325992
+vn 0.065297 -0.979397 -0.191099
+vn 0.121404 -0.983190 -0.136374
+vn 0.015048 -0.998898 -0.044453
+vn 0.081743 -0.996257 -0.028120
+vn 0.274724 -0.859240 -0.431548
+vn 0.511762 -0.794876 -0.325992
+vn 0.121404 -0.983190 -0.136374
+vn 0.451201 -0.891973 -0.028309
+vn 0.933228 -0.173674 0.314521
+vn 0.762164 -0.591805 0.262436
+vn 0.969185 -0.068137 -0.236725
+vn 0.919732 -0.286632 -0.268208
+vn 0.195122 -0.595091 0.779612
+vn -0.493985 -0.677213 0.545308
+vn 0.762164 -0.591805 0.262436
+vn 0.015108 -0.999616 -0.023220
+vn -0.609602 -0.402393 0.682982
+vn -0.933105 -0.281921 0.223241
+vn -0.493985 -0.677213 0.545308
+vn -0.859069 -0.460334 0.223815
+vn -0.822891 -0.473898 0.313481
+vn -0.914625 -0.310624 -0.258795
+vn -0.933105 -0.281921 0.223241
+vn -0.940159 -0.189701 -0.283046
+vn -0.822891 -0.473898 0.313481
+vn -0.620815 -0.776146 0.110393
+vn -0.914625 -0.310624 -0.258795
+vn -0.398701 -0.910060 -0.113263
+vn -0.043951 -0.989548 0.137346
+vn 0.059193 -0.984806 0.163256
+vn -0.043911 -0.989542 0.137400
+vn 0.055194 -0.985146 0.162605
+vn 0.052197 -0.985280 0.162782
+vn -0.043874 -0.989536 0.137451
+vn 0.055194 -0.985146 0.162605
+vn -0.043911 -0.989542 0.137400
+vn 0.052197 -0.985280 0.162782
+vn 0.196660 -0.961737 0.190755
+vn 0.048215 -0.985265 0.164097
+vn 0.200693 -0.960655 0.192003
+vn 0.048215 -0.985265 0.164097
+vn 0.200693 -0.960655 0.192003
+vn 0.041623 -0.985069 0.167053
+vn 0.236305 -0.953288 0.188152
+vn -0.806119 0.223585 -0.547888
+vn -0.891138 0.225811 -0.393552
+vn -0.928797 0.046399 -0.367673
+vn -0.909549 0.181723 -0.373762
+vn -0.883035 0.286433 -0.371759
+vn -0.623470 0.721125 -0.302101
+vn -0.891138 0.225811 -0.393552
+vn -0.605392 0.738726 -0.296286
+vn -0.639404 0.704805 -0.307266
+vn 0.074690 0.995882 -0.051381
+vn -0.623470 0.721125 -0.302101
+vn 0.089615 0.994940 -0.045418
+vn 0.061678 0.996517 -0.056122
+vn 0.753045 0.613120 0.238761
+vn 0.074690 0.995882 -0.051381
+vn 0.758440 0.605260 0.241721
+vn 0.568419 0.812165 0.131485
+vn 0.189945 0.980784 -0.044542
+vn 0.656988 0.733284 0.175102
+vn 0.351733 0.935639 0.029398
+vn 0.189945 0.980784 -0.044542
+vn 0.157810 0.987285 -0.019085
+vn 0.029236 0.994249 -0.103030
+vn 0.020693 0.997322 -0.070146
+vn -0.359266 0.170549 0.917519
+vn 0.492528 -0.640531 0.589183
+vn -0.381866 0.198247 0.902705
+vn 0.734740 -0.059798 0.675708
+vn -0.422014 0.905641 0.041466
+vn -0.359266 0.170549 0.917519
+vn -0.855993 0.507206 0.100087
+vn -0.381866 0.198247 0.902705
+vn -0.391884 0.909101 -0.141291
+vn -0.422014 0.905641 0.041466
+vn -0.805213 0.562594 -0.187401
+vn -0.855993 0.507206 0.100087
+vn 0.041623 -0.985069 0.167053
+vn 0.236305 -0.953288 0.188152
+vn 0.060265 -0.980668 0.186166
+vn 0.235928 -0.939625 0.247878
+vn 0.753045 0.613120 0.238761
+vn 0.920417 0.203118 0.334031
+vn 0.758440 0.605260 0.241721
+vn 0.920795 0.199488 0.335173
+vn 0.920417 0.203118 0.334031
+vn 0.884674 0.351131 0.306689
+vn 0.920795 0.199488 0.335173
+vn 0.886101 0.346277 0.308087
+vn 0.884674 0.351131 0.306689
+vn 0.656988 0.733284 0.175102
+vn 0.886101 0.346277 0.308087
+vn 0.669183 0.716926 0.195479
+vn -0.227944 0.655141 0.720300
+vn -0.133853 0.871060 0.472587
+vn -0.959192 0.278469 -0.049058
+vn -0.812433 0.582578 -0.023559
+vn 0.631599 0.283331 0.721669
+vn -0.360027 0.481171 0.799284
+vn 0.758863 0.242243 0.604521
+vn -0.145504 0.712163 0.686770
+vn 0.941141 0.268917 0.204786
+vn 0.135942 0.812547 -0.566822
+vn 0.994419 0.101777 -0.027806
+vn 0.405171 0.090301 -0.909770
+vn 0.758863 0.242243 0.604521
+vn -0.145504 0.712163 0.686770
+vn 0.591108 0.715864 0.371659
+vn -0.232211 0.962155 0.142606
+vn -0.341354 0.804062 0.486787
+vn -0.423497 0.513106 0.746574
+vn -0.949285 0.301478 -0.089275
+vn -0.980045 0.183574 -0.076239
+vn -0.181963 0.974661 0.130100
+vn -0.341354 0.804062 0.486787
+vn -0.688383 0.711300 -0.142061
+vn -0.949285 0.301478 -0.089275
+vn -0.423497 0.513106 0.746574
+vn 0.671998 0.273879 0.688047
+vn -0.324088 0.750836 0.575510
+vn 0.572969 0.470599 0.671002
+vn 0.988010 0.132106 0.079899
+vn 0.470354 0.160181 -0.867819
+vn 0.926149 0.371794 0.063377
+vn 0.325997 0.701144 -0.634131
+vn 0.470354 0.160181 -0.867819
+vn 0.263531 0.794277 -0.547426
+vn -0.703832 0.043324 -0.709044
+vn -0.792755 0.117460 -0.598116
+vn 0.607271 0.371053 0.702525
+vn 0.893729 0.046777 0.446161
+vn 0.596299 0.272006 0.755275
+vn 0.881927 0.147555 0.447697
+vn 0.893729 0.046777 0.446161
+vn 0.966846 0.175841 0.185170
+vn 0.881927 0.147555 0.447697
+vn 0.994058 0.094277 -0.054410
+vn -0.096116 0.460741 0.882315
+vn 0.279997 0.432151 0.857232
+vn -0.114575 0.382509 0.916820
+vn 0.503934 0.350364 0.789491
+vn 0.029962 0.502337 -0.864153
+vn 0.305928 -0.033757 -0.951456
+vn 0.986963 0.138516 -0.081960
+vn 0.971412 0.037108 -0.234482
+vn 0.891937 0.010518 0.452038
+vn 0.986963 0.138516 -0.081960
+vn 0.888322 0.136932 0.438330
+vn 0.971412 0.037108 -0.234482
+vn -0.410419 0.714202 0.566985
+vn 0.607271 0.371053 0.702525
+vn -0.319456 0.461858 0.827427
+vn 0.596299 0.272006 0.755275
+vn 0.544712 0.619209 0.565570
+vn 0.440859 0.687631 0.576895
+vn 0.313292 0.940327 0.132789
+vn -0.196073 0.950882 0.239541
+vn -0.244006 0.480836 0.842175
+vn 0.599339 0.159111 0.784523
+vn -0.267682 0.425816 0.864307
+vn 0.513321 0.267859 0.815324
+vn 0.599339 0.159111 0.784523
+vn 0.891937 0.010518 0.452038
+vn 0.513321 0.267859 0.815324
+vn 0.888322 0.136932 0.438330
+vn -0.096116 0.460741 0.882315
+vn -0.304910 0.527539 0.792927
+vn -0.053117 0.956841 0.285717
+vn -0.116961 0.942945 0.311730
+vn -0.029299 0.931464 0.362651
+vn -0.053117 0.956841 0.285717
+vn -0.101416 0.953274 0.284577
+vn -0.116961 0.942945 0.311730
+vn -0.029299 0.931464 0.362651
+vn -0.101416 0.953274 0.284577
+vn -0.122063 -0.289144 0.949472
+vn -0.306264 -0.429540 0.849528
+vn 0.280785 0.171397 -0.944342
+vn 0.192458 0.771155 -0.606861
+vn -0.741881 0.067106 -0.667165
+vn -0.807551 0.197927 -0.555595
+vn -0.138722 0.848449 0.510775
+vn 0.642878 0.524679 0.558050
+vn 0.025568 0.998352 -0.051380
+vn 0.803177 0.511688 0.305094
+vn 0.803177 0.511688 0.305094
+vn 0.908742 0.416178 -0.031357
+vn 0.025568 0.998352 -0.051380
+vn 0.223846 0.666060 -0.711518
+vn -0.918798 0.377105 -0.116629
+vn -0.880925 0.283832 -0.378695
+vn -0.601103 0.767031 -0.224364
+vn -0.853169 0.302731 -0.424802
+vn -0.918798 0.377105 -0.116629
+vn -0.965739 0.253693 -0.054669
+vn -0.925794 0.046841 -0.375115
+vn -0.921733 0.103795 -0.373678
+vn -0.830644 0.258861 0.492972
+vn -0.913101 0.366703 0.178258
+vn -0.819676 0.406927 0.403165
+vn -0.720467 0.650295 0.240923
+vn -0.830154 -0.149428 0.537137
+vn -0.721186 0.050329 0.690911
+vn -0.582326 -0.365791 0.726012
+vn -0.313161 -0.416093 0.853696
+vn 0.192164 -0.545087 0.816060
+vn -0.205759 -0.609408 0.765693
+vn 0.104444 -0.751368 0.651566
+vn -0.172553 -0.866668 0.468094
+vn -0.992917 -0.028422 -0.115357
+vn -0.901224 0.426557 -0.076456
+vn -0.985514 0.112173 -0.127195
+vn -0.874268 0.470853 -0.118123
+vn -0.406715 -0.824997 0.392382
+vn -0.365642 -0.737204 0.568187
+vn -0.665132 -0.496929 0.557369
+vn -0.487867 -0.282658 0.825888
+vn -0.171816 -0.853652 0.491689
+vn -0.306264 -0.429540 0.849528
+vn -0.365642 -0.737204 0.568187
+vn -0.487867 -0.282658 0.825888
+vn 0.104444 -0.751368 0.651566
+vn 0.207803 -0.895607 0.393328
+vn 0.466307 -0.586330 0.662401
+vn 0.633609 -0.641534 0.432405
+vn 0.466307 -0.586330 0.662401
+vn 0.866830 -0.309536 0.390888
+vn 0.585391 -0.404108 0.702862
+vn 0.800010 -0.344410 0.491290
+vn 0.673136 0.578805 0.460297
+vn 0.432553 0.485351 0.759824
+vn 0.504363 0.731326 0.459109
+vn 0.366036 0.589347 0.720200
+vn 0.432553 0.485351 0.759824
+vn 0.251400 0.417122 0.873388
+vn 0.366036 0.589347 0.720200
+vn 0.240164 0.515637 0.822459
+vn -0.027477 0.395664 0.917984
+vn 0.107366 0.547452 0.829921
+vn 0.251400 0.417122 0.873388
+vn 0.240164 0.515637 0.822459
+vn 0.830554 0.550776 0.082621
+vn 0.673136 0.578805 0.460297
+vn 0.786980 0.616668 0.019582
+vn 0.504363 0.731326 0.459109
+vn 0.830554 0.550776 0.082621
+vn 0.906052 0.418072 -0.065465
+vn 0.836779 0.534955 0.116720
+vn 0.900688 0.432132 0.044983
+vn 0.836779 0.534955 0.116720
+vn 0.900688 0.432132 0.044983
+vn 0.620138 0.783797 0.033018
+vn 0.800030 0.599577 0.021432
+vn -0.000000 0.999418 -0.034114
+vn 0.252414 0.967270 -0.026009
+vn -0.000000 0.990579 -0.136942
+vn 0.241607 0.961016 -0.134443
+vn 0.252414 0.967270 -0.026009
+vn 0.620138 0.783797 0.033018
+vn 0.241607 0.961016 -0.134443
+vn 0.446569 0.886516 -0.121102
+vn -0.720467 0.650295 0.240923
+vn -0.326604 0.939810 0.100434
+vn -0.685176 0.727463 0.036492
+vn -0.305994 0.951636 -0.027497
+vn -0.492777 0.229384 -0.839377
+vn -0.825765 0.175481 -0.536022
+vn -0.422204 0.685127 -0.593587
+vn -0.849995 0.210669 -0.482832
+vn -0.336812 0.899029 -0.279828
+vn -0.213563 0.948600 -0.233558
+vn -0.266857 0.952171 -0.148853
+vn -0.434685 0.820874 0.370424
+vn -0.891911 0.451637 0.022796
+vn -0.345378 0.880022 0.325999
+vn -0.979233 -0.086264 -0.183472
+vn -0.891911 0.451637 0.022796
+vn -0.958033 -0.016588 -0.286177
+vn -0.920084 0.373295 -0.118730
+vn -0.374665 -0.921367 -0.103490
+vn -0.558064 -0.765306 -0.320737
+vn -0.734818 -0.613106 -0.290075
+vn -0.615787 -0.090537 -0.782694
+vn -0.708697 -0.342127 -0.617007
+vn -0.852762 0.139011 -0.503462
+vn -0.878348 -0.033268 -0.476863
+vn -0.901134 0.005281 0.433509
+vn -0.846683 0.520260 0.111612
+vn -0.651299 0.752889 -0.094702
+vn -0.888375 0.447471 -0.102761
+vn 0.011519 -0.963341 0.268032
+vn -0.070932 -0.139365 0.987697
+vn 0.473880 -0.814007 0.335904
+vn 0.734740 -0.059798 0.675708
+vn -0.024760 -0.975816 0.217187
+vn -0.041824 -0.986543 0.158062
+vn -0.496921 -0.859704 0.118234
+vn -0.502369 -0.863565 0.043364
+vn -0.935161 -0.335587 -0.113379
+vn -0.959632 -0.235936 -0.153106
+vn -0.816887 -0.562111 0.129333
+vn -0.976356 -0.150530 -0.155144
+vn -0.959632 -0.235936 -0.153106
+vn -0.937247 -0.310869 -0.157888
+vn -0.976356 -0.150530 -0.155144
+vn -0.855805 -0.419793 -0.302279
+vn -0.842639 -0.523999 0.124035
+vn -0.977520 -0.140118 -0.157547
+vn -0.885280 -0.418015 0.203818
+vn -0.954697 -0.257375 -0.149373
+vn -0.977520 -0.140118 -0.157547
+vn -0.846452 -0.421426 -0.325451
+vn -0.954697 -0.257375 -0.149373
+vn -0.793786 -0.231813 -0.562287
+vn -0.821413 -0.438804 -0.364325
+vn 0.140983 -0.926201 -0.349679
+vn -0.724632 -0.193368 -0.661451
+vn 0.344350 -0.196976 -0.917945
+vn -0.127715 -0.911141 0.391805
+vn -0.842639 -0.523999 0.124035
+vn -0.212274 -0.698256 0.683651
+vn -0.885280 -0.418015 0.203818
+vn -0.968372 -0.192260 -0.159033
+vn -0.955835 -0.221164 -0.193561
+vn -0.860415 -0.473391 -0.188647
+vn -0.630466 -0.760388 -0.155958
+vn -0.630466 -0.760388 -0.155958
+vn -0.864004 -0.468195 -0.185178
+vn -0.925617 -0.343807 -0.158211
+vn -0.425595 -0.892406 -0.149937
+vn -0.685167 -0.714300 -0.142556
+vn -0.614441 -0.774807 -0.148781
+vn -0.894513 -0.403731 -0.191959
+vn -0.819586 -0.381630 -0.427361
+vn -0.685167 -0.714300 -0.142556
+vn -0.720172 -0.682171 -0.126476
+vn -0.614441 -0.774807 -0.148781
+vn -0.885584 -0.463600 0.028557
+vn -0.864060 -0.500048 0.057902
+vn -0.124220 -0.938585 0.321912
+vn -0.581695 -0.800826 -0.142508
+vn 0.016879 -0.999116 -0.038497
+vn -0.891507 -0.411789 0.188797
+vn -0.259810 -0.696394 0.668980
+vn -0.864060 -0.500048 0.057902
+vn -0.124220 -0.938585 0.321912
+vn -0.466750 -0.874062 -0.134761
+vn -0.925299 -0.303396 -0.227536
+vn -0.922892 -0.327770 -0.202082
+vn -0.466750 -0.874062 -0.134761
+vn -0.903476 -0.383756 -0.190951
+vn -0.925299 -0.303396 -0.227536
+vn -0.807013 -0.568975 -0.158104
+vn -0.944810 -0.202508 -0.257535
+vn -0.980753 -0.090124 -0.173211
+vn -0.808615 -0.310134 -0.499959
+vn -0.725160 -0.670116 -0.158389
+vn -0.706684 -0.694262 -0.136374
+vn -0.944810 -0.202508 -0.257535
+vn -0.808615 -0.310134 -0.499959
+vn -0.620815 -0.776146 0.110393
+vn -0.506814 -0.855429 0.106680
+vn -0.398701 -0.910060 -0.113263
+vn -0.041693 -0.996374 0.074169
+vn -0.506814 -0.855429 0.106680
+vn -0.699881 -0.708541 0.090200
+vn -0.041693 -0.996374 0.074169
+vn -0.219594 -0.963903 0.150567
+vn -0.980278 -0.147602 0.131407
+vn -0.876732 0.479858 -0.032832
+vn -0.849919 -0.515590 -0.108646
+vn -0.973164 0.034248 -0.227548
+vn -0.672746 0.351110 -0.651256
+vn -0.877050 0.176574 -0.446772
+vn -0.444883 0.862691 -0.240507
+vn -0.806088 0.529740 -0.263813
+vn -0.849919 -0.515590 -0.108646
+vn -0.973164 0.034248 -0.227548
+vn -0.731082 -0.650534 -0.205731
+vn -0.865299 -0.389639 -0.315339
+vn -0.319472 -0.931458 -0.174137
+vn -0.326022 -0.928794 -0.176213
+vn -0.038599 -0.996869 -0.069010
+vn -0.038684 -0.996927 -0.068117
+vn -0.038853 -0.996918 -0.068157
+vn 0.016216 -0.998669 -0.048962
+vn -0.038738 -0.997019 -0.066732
+vn 0.015665 -0.998754 -0.047386
+vn -0.038738 -0.997019 -0.066732
+vn 0.015665 -0.998754 -0.047386
+vn -0.038038 -0.997093 -0.066023
+vn 0.015432 -0.998787 -0.046762
+vn -0.038038 -0.997093 -0.066023
+vn 0.015432 -0.998787 -0.046762
+vn -0.036097 -0.996303 -0.077961
+vn 0.020252 -0.997895 -0.061605
+vn -0.038599 -0.996869 -0.069010
+vn 0.016589 -0.998612 -0.049989
+vn -0.038853 -0.996918 -0.068157
+vn 0.016216 -0.998669 -0.048962
+vn 0.026307 -0.996487 -0.079514
+vn 0.154597 -0.987276 -0.037227
+vn 0.018786 -0.996057 -0.086702
+vn 0.178552 -0.982056 -0.060704
+vn 0.020252 -0.997895 -0.061605
+vn 0.076082 -0.996137 -0.043857
+vn 0.029287 -0.995570 -0.089351
+vn 0.094259 -0.993576 -0.062620
+vn 0.029287 -0.995570 -0.089351
+vn 0.094259 -0.993576 -0.062620
+vn 0.032724 -0.994484 -0.099650
+vn 0.116014 -0.991077 -0.065624
+vn 0.029927 -0.995448 -0.090491
+vn 0.032724 -0.994484 -0.099650
+vn 0.132909 -0.989727 -0.052681
+vn 0.116014 -0.991077 -0.065624
+vn 0.025121 -0.996827 -0.075536
+vn 0.029927 -0.995448 -0.090491
+vn 0.143872 -0.988920 -0.036592
+vn 0.132909 -0.989727 -0.052681
+vn -0.326022 -0.928794 -0.176213
+vn -0.334607 -0.925298 -0.178500
+vn -0.038684 -0.996927 -0.068117
+vn -0.040098 -0.996986 -0.066414
+vn -0.334607 -0.925298 -0.178500
+vn -0.344207 -0.921151 -0.181665
+vn -0.040098 -0.996986 -0.066414
+vn -0.042014 -0.996923 -0.066179
+vn 0.013074 -0.999158 -0.038890
+vn 0.014644 -0.998939 -0.043667
+vn -0.046892 -0.997013 -0.061368
+vn -0.043886 -0.996896 -0.065357
+vn 0.012101 -0.999283 -0.035869
+vn 0.013074 -0.999158 -0.038890
+vn -0.049702 -0.997015 -0.059087
+vn -0.046892 -0.997013 -0.061368
+vn -0.049702 -0.997015 -0.059087
+vn -0.049180 -0.996467 -0.068084
+vn 0.012101 -0.999283 -0.035869
+vn 0.015048 -0.998898 -0.044453
+vn -0.071201 -0.323241 -0.943634
+vn 0.679415 -0.181743 -0.710890
+vn -0.267624 -0.109878 -0.957238
+vn 0.675495 -0.049075 -0.735730
+vn 0.072864 -0.983362 0.166404
+vn 0.264825 -0.943802 0.197753
+vn 0.068010 -0.983897 0.165292
+vn 0.248270 -0.948887 0.194874
+vn 0.068010 -0.983897 0.165292
+vn 0.248270 -0.948887 0.194874
+vn 0.063511 -0.984371 0.164254
+vn 0.233034 -0.953294 0.192159
+vn 0.077973 -0.982771 0.167575
+vn 0.282043 -0.938174 0.200702
+vn 0.072864 -0.983362 0.166404
+vn 0.264825 -0.943802 0.197753
+vn 0.088800 -0.984542 0.150966
+vn 0.302828 -0.934354 0.187822
+vn 0.077973 -0.982771 0.167575
+vn 0.282043 -0.938174 0.200702
+vn 0.114025 -0.989094 0.093229
+vn 0.336004 -0.931821 0.137151
+vn 0.088800 -0.984542 0.150966
+vn 0.302828 -0.934354 0.187822
+vn 0.136782 -0.989664 0.043074
+vn 0.377394 -0.923249 0.072008
+vn 0.114025 -0.989094 0.093229
+vn 0.336004 -0.931821 0.137151
+vn 0.063511 -0.984371 0.164254
+vn 0.233034 -0.953294 0.192159
+vn 0.059193 -0.984806 0.163256
+vn 0.218222 -0.957327 0.189485
+vn 0.055194 -0.985146 0.162605
+vn 0.204558 -0.960582 0.188252
+vn 0.052197 -0.985280 0.162782
+vn 0.196660 -0.961737 0.190755
+vn -0.928797 0.046399 -0.367673
+vn -0.920539 0.121613 -0.371240
+vn -0.806119 0.223585 -0.547888
+vn -0.724986 0.091669 -0.682636
+vn 0.189945 0.980784 -0.044542
+vn 0.029236 0.994249 -0.103030
+vn 0.092455 0.989955 -0.106965
+vn 0.039232 0.989827 -0.136760
+vn 0.020693 0.997322 -0.070146
+vn -0.104486 0.989519 -0.099671
+vn 0.029236 0.994249 -0.103030
+vn -0.116098 0.983350 -0.139797
+vn -0.391884 0.909101 -0.141291
+vn -0.407571 0.893440 -0.188816
+vn -0.104486 0.989519 -0.099671
+vn -0.116098 0.983350 -0.139797
+vn -0.805213 0.562594 -0.187401
+vn -0.795458 0.555488 -0.242240
+vn -0.391884 0.909101 -0.141291
+vn -0.407571 0.893440 -0.188816
+vn 0.645078 -0.686499 0.335549
+vn 0.235928 -0.939625 0.247878
+vn 0.645540 -0.722207 0.248387
+vn 0.236305 -0.953288 0.188152
+vn 0.645078 -0.686499 0.335549
+vn 0.473880 -0.814007 0.335904
+vn 0.492528 -0.640531 0.589183
+vn 0.734740 -0.059798 0.675708
+vn -0.724986 0.091669 -0.682636
+vn -0.613442 0.448630 -0.649938
+vn 0.376736 0.219302 -0.899987
+vn 0.291312 0.701788 -0.650101
+vn -0.133853 0.871060 0.472587
+vn 0.609352 0.581618 0.538898
+vn 0.063570 0.997479 -0.031542
+vn 0.774241 0.560817 0.293318
+vn 0.774241 0.560817 0.293318
+vn 0.885786 0.463452 -0.024392
+vn 0.063570 0.997479 -0.031542
+vn 0.291312 0.701788 -0.650101
+vn -0.360027 0.481171 0.799284
+vn 0.631599 0.283331 0.721669
+vn -0.327236 0.664878 0.671456
+vn 0.482448 0.470448 0.738866
+vn 0.631599 0.283331 0.721669
+vn 0.886943 0.152452 0.435994
+vn 0.482448 0.470448 0.738866
+vn 0.743007 0.512749 0.430150
+vn 0.886943 0.152452 0.435994
+vn 0.994419 0.101777 -0.027806
+vn 0.743007 0.512749 0.430150
+vn 0.938986 0.336222 -0.072530
+vn -0.181963 0.974661 0.130100
+vn -0.688383 0.711300 -0.142061
+vn 0.135942 0.812547 -0.566822
+vn -0.808208 0.196704 -0.555074
+vn -0.423497 0.513106 0.746574
+vn -0.324088 0.750836 0.575510
+vn -0.980045 0.183574 -0.076239
+vn -0.913912 0.405711 -0.012766
+vn 0.572969 0.470599 0.671002
+vn 0.779859 0.470915 0.412383
+vn -0.324088 0.750836 0.575510
+vn -0.056337 0.995732 0.073106
+vn 0.779859 0.470915 0.412383
+vn 0.926149 0.371794 0.063377
+vn -0.056337 0.995732 0.073106
+vn 0.325997 0.701144 -0.634131
+vn -0.703832 0.043324 -0.709044
+vn -0.663853 0.330084 -0.671077
+vn 0.470354 0.160181 -0.867819
+vn 0.325997 0.701144 -0.634131
+vn -0.601103 0.767031 -0.224364
+vn -0.853169 0.302731 -0.424802
+vn -0.792755 0.117460 -0.598116
+vn -0.883471 0.139515 -0.447230
+vn 0.966846 0.175841 0.185170
+vn 0.591108 0.715864 0.371659
+vn 0.090343 0.693688 -0.714588
+vn -0.232211 0.962155 0.142606
+vn -0.114575 0.382509 0.916820
+vn -0.685253 0.600743 0.411748
+vn -0.096116 0.460741 0.882315
+vn -0.304910 0.527539 0.792927
+vn -0.114575 0.382509 0.916820
+vn 0.503934 0.350364 0.789491
+vn -0.167939 0.503622 0.847444
+vn 0.638011 0.316162 0.702128
+vn 0.503934 0.350364 0.789491
+vn 0.544712 0.619209 0.565570
+vn 0.884197 0.342850 0.317255
+vn 0.313292 0.940327 0.132789
+vn 0.305928 -0.033757 -0.951456
+vn 0.029962 0.502337 -0.864153
+vn -0.547829 -0.020511 -0.836339
+vn -0.773106 0.147549 -0.616876
+vn -0.324806 0.943977 0.058374
+vn -0.726293 0.643639 -0.241304
+vn 0.029962 0.502337 -0.864153
+vn -0.773106 0.147549 -0.616876
+vn -0.319456 0.461858 0.827427
+vn -0.974246 0.218956 0.053883
+vn -0.410419 0.714202 0.566985
+vn -0.942966 0.328893 -0.051430
+vn -0.410419 0.714202 0.566985
+vn -0.942966 0.328893 -0.051430
+vn -0.324806 0.943977 0.058374
+vn -0.726293 0.643639 -0.241304
+vn -0.267682 0.425816 0.864307
+vn -0.933889 0.275011 0.228519
+vn -0.244006 0.480836 0.842175
+vn -0.917144 0.393661 0.062275
+vn -0.244006 0.480836 0.842175
+vn -0.917144 0.393661 0.062275
+vn -0.095742 0.764929 0.636960
+vn -0.196073 0.950882 0.239541
+vn -0.741881 0.067106 -0.667165
+vn -0.661940 0.368027 -0.652987
+vn 0.280785 0.171397 -0.944342
+vn 0.223846 0.666060 -0.711518
+vn -0.611116 0.738824 -0.284036
+vn -0.867942 0.332868 -0.368612
+vn -0.807551 0.197927 -0.555595
+vn -0.882892 0.255982 -0.393669
+vn -0.918524 0.369469 -0.140736
+vn -0.899468 0.259937 -0.351269
+vn -0.611116 0.738824 -0.284036
+vn -0.867942 0.332868 -0.368612
+vn -0.918524 0.369469 -0.140736
+vn -0.959192 0.278469 -0.049058
+vn -0.928797 0.046399 -0.367673
+vn -0.920539 0.121613 -0.371240
+vn -0.965739 0.253693 -0.054669
+vn -0.856351 0.515742 -0.025951
+vn -0.921733 0.103795 -0.373678
+vn -0.805637 0.480655 -0.346294
+vn -0.138722 0.848449 0.510775
+vn 0.025568 0.998352 -0.051380
+vn -0.856351 0.515742 -0.025951
+vn -0.805637 0.480655 -0.346294
+vn -0.880925 0.283832 -0.378695
+vn -0.918798 0.377105 -0.116629
+vn -0.902309 0.200725 -0.381508
+vn -0.925794 0.046841 -0.375115
+vn -0.819676 0.406927 0.403165
+vn -0.714737 0.390191 0.580433
+vn -0.830644 0.258861 0.492972
+vn -0.594467 0.322654 0.736549
+vn -0.830644 0.258861 0.492972
+vn -0.594467 0.322654 0.736549
+vn -0.799532 0.188345 0.570329
+vn -0.453260 0.289351 0.843108
+vn -0.799532 0.188345 0.570329
+vn -0.453260 0.289351 0.843108
+vn -0.721186 0.050329 0.690911
+vn -0.189793 0.110222 0.975618
+vn -0.447090 -0.486635 0.750531
+vn -0.582326 -0.365791 0.726012
+vn -0.206447 -0.389705 0.897502
+vn 0.020534 -0.362323 0.931827
+vn -0.447090 -0.486635 0.750531
+vn -0.354162 -0.610805 0.708157
+vn -0.205759 -0.609408 0.765693
+vn -0.172553 -0.866668 0.468094
+vn -0.901224 0.426557 -0.076456
+vn -0.992917 -0.028422 -0.115357
+vn -0.936551 0.346598 -0.052362
+vn -0.971500 -0.227361 -0.067045
+vn -0.766765 0.625850 -0.142770
+vn -0.442109 0.890776 -0.105156
+vn -0.590953 0.799017 -0.111109
+vn -0.645759 0.760130 -0.072088
+vn -0.910979 0.392972 -0.125262
+vn -0.766765 0.625850 -0.142770
+vn -0.874268 0.470853 -0.118123
+vn -0.590953 0.799017 -0.111109
+vn -0.645759 0.760130 -0.072088
+vn -0.668008 0.731536 0.136459
+vn -0.846683 0.520260 0.111612
+vn -0.882004 -0.436449 0.177710
+vn -0.825399 0.556664 0.094032
+vn -0.971500 -0.227361 -0.067045
+vn -0.936551 0.346598 -0.052362
+vn -0.665132 -0.496929 0.557369
+vn -0.390002 0.871248 0.298035
+vn -0.882004 -0.436449 0.177710
+vn -0.825399 0.556664 0.094032
+vn -0.306264 -0.429540 0.849528
+vn -0.101416 0.953274 0.284577
+vn -0.487867 -0.282658 0.825888
+vn -0.205704 0.930379 0.303449
+vn 0.207803 -0.895607 0.393328
+vn 0.104444 -0.751368 0.651566
+vn 0.019986 -0.964498 0.263333
+vn -0.172553 -0.866668 0.468094
+vn 0.866830 -0.309536 0.390888
+vn 0.466307 -0.586330 0.662401
+vn 0.872869 -0.327596 0.361636
+vn 0.633609 -0.641534 0.432405
+vn -0.027477 0.395664 0.917984
+vn -0.726381 -0.086132 0.681874
+vn -0.618416 0.394530 0.679638
+vn -0.968361 -0.143253 0.204340
+vn -0.726381 -0.086132 0.681874
+vn 0.096040 -0.696629 0.710974
+vn -0.968361 -0.143253 0.204340
+vn -0.619942 -0.744190 -0.248703
+vn 0.585391 -0.404108 0.702862
+vn 0.800010 -0.344410 0.491290
+vn 0.096040 -0.696629 0.710974
+vn 0.746015 -0.630487 0.214355
+vn -0.027477 0.395664 0.917984
+vn -0.618416 0.394530 0.679638
+vn 0.107366 0.547452 0.829921
+vn 0.047614 0.626643 0.777851
+vn 0.786980 0.616668 0.019582
+vn 0.857583 0.472502 -0.203208
+vn 0.830554 0.550776 0.082621
+vn 0.906052 0.418072 -0.065465
+vn -0.000000 0.999418 -0.034114
+vn -0.000000 0.990579 -0.136942
+vn -0.305994 0.951636 -0.027497
+vn -0.286394 0.949265 -0.129902
+vn -0.685176 0.727463 0.036492
+vn -0.863418 0.470071 0.183145
+vn -0.720467 0.650295 0.240923
+vn -0.819676 0.406927 0.403165
+vn -0.492777 0.229384 -0.839377
+vn -0.615787 -0.090537 -0.782694
+vn -0.825765 0.175481 -0.536022
+vn -0.852762 0.139011 -0.503462
+vn -0.511053 0.743467 0.431371
+vn -0.920084 0.373295 -0.118730
+vn -0.434685 0.820874 0.370424
+vn -0.891911 0.451637 0.022796
+vn -0.121513 -0.973517 -0.193647
+vn -0.558064 -0.765306 -0.320737
+vn -0.374665 -0.921367 -0.103490
+vn -0.734818 -0.613106 -0.290075
+vn -0.849995 0.210669 -0.482832
+vn -0.971551 0.180680 -0.153115
+vn -0.825765 0.175481 -0.536022
+vn -0.374665 -0.921367 -0.103490
+vn -0.734818 -0.613106 -0.290075
+vn -0.720939 0.192790 0.665641
+vn -0.958033 -0.016588 -0.286177
+vn -0.920084 0.373295 -0.118730
+vn -0.878348 -0.033268 -0.476863
+vn -0.852762 0.139011 -0.503462
+vn -0.055674 0.997814 -0.035604
+vn 0.645302 0.748698 0.151779
+vn -0.070932 -0.139365 0.987697
+vn 0.734740 -0.059798 0.675708
+vn -0.055674 0.997814 -0.035604
+vn -0.651299 0.752889 -0.094702
+vn -0.053053 0.964277 -0.259530
+vn -0.853143 0.426345 -0.300628
+vn -0.024760 -0.975816 0.217187
+vn 0.011519 -0.963341 0.268032
+vn 0.452676 -0.849781 0.270105
+vn 0.473880 -0.814007 0.335904
+vn -0.024760 -0.975816 0.217187
+vn 0.452676 -0.849781 0.270105
+vn -0.041824 -0.986543 0.158062
+vn 0.446607 -0.867010 0.220987
+vn -0.041824 -0.986543 0.158062
+vn 0.037107 -0.968444 -0.246454
+vn -0.502369 -0.863565 0.043364
+vn -0.855805 -0.419793 -0.302279
+vn -0.976356 -0.150530 -0.155144
+vn -0.855805 -0.419793 -0.302279
+vn -0.952495 -0.266329 -0.147725
+vn -0.806005 -0.240815 -0.540707
+vn -0.816887 -0.562111 0.129333
+vn -0.099631 -0.921662 0.374984
+vn -0.536977 -0.843595 0.001909
+vn -0.039211 -0.991687 0.122550
+vn -0.846452 -0.421426 -0.325451
+vn -0.536977 -0.843595 0.001909
+vn 0.066193 -0.951432 -0.300660
+vn -0.039211 -0.991687 0.122550
+vn -0.032599 -0.992443 0.118295
+vn 0.581163 -0.787255 0.206106
+vn 0.140983 -0.926201 -0.349679
+vn 0.951558 -0.307468 -0.001356
+vn -0.127715 -0.911141 0.391805
+vn -0.212274 -0.698256 0.683651
+vn 0.736359 -0.511340 0.443066
+vn 0.733073 -0.391150 0.556423
+vn -0.032599 -0.992443 0.118295
+vn -0.127715 -0.911141 0.391805
+vn 0.581163 -0.787255 0.206106
+vn 0.736359 -0.511340 0.443066
+vn -0.891507 -0.411789 0.188797
+vn -0.952431 -0.236371 -0.192363
+vn -0.709316 -0.684087 0.169990
+vn -0.704827 -0.682631 -0.192961
+vn -0.952431 -0.236371 -0.192363
+vn -0.724632 -0.193368 -0.661451
+vn -0.704827 -0.682631 -0.192961
+vn -0.559847 -0.538119 -0.630079
+vn -0.955835 -0.221164 -0.193561
+vn -0.968372 -0.192260 -0.159033
+vn -0.650532 -0.742604 -0.159211
+vn -0.879794 -0.466353 0.092075
+vn -0.968372 -0.192260 -0.159033
+vn -0.974059 -0.117059 -0.193666
+vn -0.879794 -0.466353 0.092075
+vn -0.976764 -0.114313 -0.181285
+vn -0.630466 -0.760388 -0.155958
+vn -0.955835 -0.221164 -0.193561
+vn -0.864004 -0.468195 -0.185178
+vn -0.957074 -0.178079 -0.228688
+vn -0.974059 -0.117059 -0.193666
+vn -0.894513 -0.403731 -0.191959
+vn -0.976764 -0.114313 -0.181285
+vn -0.819586 -0.381630 -0.427361
+vn -0.885584 -0.463600 0.028557
+vn -0.112520 -0.946791 0.301539
+vn -0.614441 -0.774807 -0.148781
+vn 0.006059 -0.999002 -0.044250
+vn -0.885584 -0.463600 0.028557
+vn -0.975923 -0.117195 -0.183956
+vn -0.912353 -0.385396 0.138140
+vn -0.955822 -0.221498 -0.193245
+vn -0.975923 -0.117195 -0.183956
+vn -0.839099 -0.362025 -0.406018
+vn -0.955822 -0.221498 -0.193245
+vn -0.779873 -0.176014 -0.600681
+vn -0.839099 -0.362025 -0.406018
+vn -0.581695 -0.800826 -0.142508
+vn 0.178670 -0.835190 -0.520130
+vn 0.016879 -0.999116 -0.038497
+vn -0.259810 -0.696394 0.668980
+vn -0.891507 -0.411789 0.188797
+vn -0.171632 -0.883416 0.436026
+vn -0.709316 -0.684087 0.169990
+vn -0.864004 -0.468195 -0.185178
+vn -0.957074 -0.178079 -0.228688
+vn -0.425595 -0.892406 -0.149937
+vn -0.964560 -0.168096 -0.203390
+vn -0.466750 -0.874062 -0.134761
+vn -0.955096 -0.239839 -0.173981
+vn -0.903476 -0.383756 -0.190951
+vn -0.466750 -0.874062 -0.134761
+vn -0.425595 -0.892406 -0.149937
+vn -0.955096 -0.239839 -0.173981
+vn -0.964560 -0.168096 -0.203390
+vn -0.725160 -0.670116 -0.158389
+vn -0.843922 -0.505240 -0.180356
+vn -0.706684 -0.694262 -0.136374
+vn -0.923771 -0.375143 0.076903
+vn -0.922892 -0.327770 -0.202082
+vn -0.925299 -0.303396 -0.227536
+vn -0.978463 -0.098985 -0.181141
+vn -0.861018 -0.213942 -0.461386
+vn -0.843922 -0.505240 -0.180356
+vn -0.922892 -0.327770 -0.202082
+vn -0.923771 -0.375143 0.076903
+vn -0.978463 -0.098985 -0.181141
+vn -0.909029 -0.381411 0.167902
+vn -0.278440 -0.745981 0.604965
+vn -0.699881 -0.708541 0.090200
+vn -0.219594 -0.963903 0.150567
+vn -0.909029 -0.381411 0.167902
+vn -0.980753 -0.090124 -0.173211
+vn -0.876963 -0.335922 0.343646
+vn -0.962493 -0.183926 -0.199445
+vn -0.589392 0.781975 0.202809
+vn -0.403926 0.914320 -0.029379
+vn -0.876732 0.479858 -0.032832
+vn -0.704723 0.696012 -0.137598
+vn -0.444883 0.862691 -0.240507
+vn -0.806088 0.529740 -0.263813
+vn -0.403926 0.914320 -0.029379
+vn -0.704723 0.696012 -0.137598
+vn -0.877050 0.176574 -0.446772
+vn -0.865299 -0.389639 -0.315339
+vn -0.806088 0.529740 -0.263813
+vn -0.973164 0.034248 -0.227548
+vn -0.038599 -0.996869 -0.069010
+vn -0.038684 -0.996927 -0.068117
+vn 0.016589 -0.998612 -0.049989
+vn 0.016242 -0.998675 -0.048830
+vn 0.015432 -0.998787 -0.046762
+vn 0.070809 -0.996949 -0.032848
+vn 0.020252 -0.997895 -0.061605
+vn 0.076082 -0.996137 -0.043857
+vn 0.025121 -0.996827 -0.075536
+vn 0.143872 -0.988920 -0.036592
+vn 0.026307 -0.996487 -0.079514
+vn 0.154597 -0.987276 -0.037227
+vn 0.174581 -0.984471 -0.018378
+vn 0.402563 -0.914334 0.044008
+vn 0.136782 -0.989664 0.043074
+vn 0.377394 -0.923249 0.072008
+vn 0.154597 -0.987276 -0.037227
+vn 0.395179 -0.918045 0.032035
+vn 0.178552 -0.982056 -0.060704
+vn 0.403901 -0.914399 0.027168
+vn 0.178552 -0.982056 -0.060704
+vn 0.403901 -0.914399 0.027168
+vn 0.174581 -0.984471 -0.018378
+vn 0.402563 -0.914334 0.044008
+vn 0.015089 -0.998868 -0.045103
+vn 0.015412 -0.998813 -0.046200
+vn -0.042014 -0.996923 -0.066179
+vn -0.040098 -0.996986 -0.066414
+vn 0.014644 -0.998939 -0.043667
+vn 0.015089 -0.998868 -0.045103
+vn -0.043886 -0.996896 -0.065357
+vn -0.042014 -0.996923 -0.066179
+vn 0.013074 -0.999158 -0.038890
+vn 0.075427 -0.996860 -0.024096
+vn 0.014644 -0.998939 -0.043667
+vn 0.075587 -0.996719 -0.028955
+vn 0.012101 -0.999283 -0.035869
+vn 0.076462 -0.996859 -0.020610
+vn 0.013074 -0.999158 -0.038890
+vn 0.075427 -0.996860 -0.024096
+vn 0.969185 -0.068137 -0.236725
+vn 0.919732 -0.286632 -0.268208
+vn 0.675495 -0.049075 -0.735730
+vn 0.575437 -0.465085 -0.672732
+vn -0.071201 -0.323241 -0.943634
+vn -0.267624 -0.109878 -0.957238
+vn -0.914625 -0.310624 -0.258795
+vn -0.940159 -0.189701 -0.283046
+vn -0.071201 -0.323241 -0.943634
+vn 0.243703 -0.912889 -0.327479
+vn 0.515643 -0.489821 -0.702985
+vn 0.728763 -0.456531 -0.510377
+vn 0.511762 -0.794876 -0.325992
+vn 0.515643 -0.489821 -0.702985
+vn 0.938634 -0.344693 0.012360
+vn 0.728763 -0.456531 -0.510377
+vn 0.015048 -0.998898 -0.044453
+vn 0.081743 -0.996257 -0.028120
+vn 0.012101 -0.999283 -0.035869
+vn 0.076462 -0.996859 -0.020610
+vn 0.121404 -0.983190 -0.136374
+vn 0.451201 -0.891973 -0.028309
+vn 0.081743 -0.996257 -0.028120
+vn 0.426977 -0.902699 0.053160
+vn 0.451201 -0.891973 -0.028309
+vn 0.511762 -0.794876 -0.325992
+vn 0.935295 -0.320290 0.150459
+vn 0.938634 -0.344693 0.012360
+vn 0.762164 -0.591805 0.262436
+vn 0.015108 -0.999616 -0.023220
+vn 0.919732 -0.286632 -0.268208
+vn 0.575437 -0.465085 -0.672732
+vn -0.493985 -0.677213 0.545308
+vn -0.859069 -0.460334 0.223815
+vn 0.015108 -0.999616 -0.023220
+vn -0.761637 -0.585885 -0.276854
+vn -0.933105 -0.281921 0.223241
+vn -0.940159 -0.189701 -0.283046
+vn -0.859069 -0.460334 0.223815
+vn -0.761637 -0.585885 -0.276854
+vn -0.914625 -0.310624 -0.258795
+vn -0.398701 -0.910060 -0.113263
+vn -0.071201 -0.323241 -0.943634
+vn 0.243703 -0.912889 -0.327479
+vn 0.059193 -0.984806 0.163256
+vn 0.218222 -0.957327 0.189485
+vn 0.055194 -0.985146 0.162605
+vn 0.204558 -0.960582 0.188252
+vn 0.204558 -0.960582 0.188252
+vn 0.717438 -0.651090 0.247719
+vn 0.196660 -0.961737 0.190755
+vn 0.673594 -0.700959 0.234368
+vn 0.196660 -0.961737 0.190755
+vn 0.673594 -0.700959 0.234368
+vn 0.200693 -0.960655 0.192003
+vn 0.593727 -0.766750 0.244097
+vn 0.200693 -0.960655 0.192003
+vn 0.593727 -0.766750 0.244097
+vn 0.236305 -0.953288 0.188152
+vn 0.645540 -0.722207 0.248387
+vn -0.891138 0.225811 -0.393552
+vn -0.605392 0.738726 -0.296286
+vn -0.909549 0.181723 -0.373762
+vn -0.585146 0.757448 -0.289616
+vn -0.928797 0.046399 -0.367673
+vn -0.909549 0.181723 -0.373762
+vn -0.918524 0.369469 -0.140736
+vn -0.899468 0.259937 -0.351269
+vn -0.605392 0.738726 -0.296286
+vn -0.623470 0.721125 -0.302101
+vn 0.105398 0.993655 -0.039249
+vn 0.089615 0.994940 -0.045418
+vn 0.074690 0.995882 -0.051381
+vn 0.758440 0.605260 0.241721
+vn 0.089615 0.994940 -0.045418
+vn 0.764939 0.595692 0.244988
+vn 0.656988 0.733284 0.175102
+vn 0.351733 0.935639 0.029398
+vn 0.669183 0.716926 0.195479
+vn 0.377869 0.923681 0.063466
+vn 0.189945 0.980784 -0.044542
+vn 0.092455 0.989955 -0.106965
+vn 0.351733 0.935639 0.029398
+vn 0.174245 0.983951 -0.038455
+vn 0.734740 -0.059798 0.675708
+vn 0.713387 0.402805 0.573435
+vn -0.381866 0.198247 0.902705
+vn -0.391752 0.482567 0.783364
+vn -0.855993 0.507206 0.100087
+vn -0.381866 0.198247 0.902705
+vn -0.923253 0.366629 0.114836
+vn -0.391752 0.482567 0.783364
+vn -0.805213 0.562594 -0.187401
+vn -0.855993 0.507206 0.100087
+vn -0.925868 0.325622 -0.191675
+vn -0.923253 0.366629 0.114836
+vn -0.795458 0.555488 -0.242240
+vn -0.805213 0.562594 -0.187401
+vn -0.917295 0.311465 -0.248113
+vn -0.925868 0.325622 -0.191675
+vn 0.645540 -0.722207 0.248387
+vn 0.452676 -0.849781 0.270105
+vn 0.645078 -0.686499 0.335549
+vn 0.473880 -0.814007 0.335904
+vn 0.758440 0.605260 0.241721
+vn 0.920795 0.199488 0.335173
+vn 0.764939 0.595692 0.244988
+vn 0.921379 0.196008 0.335622
+vn 0.920795 0.199488 0.335173
+vn 0.886101 0.346277 0.308087
+vn 0.921379 0.196008 0.335622
+vn 0.887345 0.342400 0.308839
+vn 0.886101 0.346277 0.308087
+vn 0.669183 0.716926 0.195479
+vn 0.887345 0.342400 0.308839
+vn 0.670189 0.717069 0.191462
+vn -0.724986 0.091669 -0.682636
+vn -0.920539 0.121613 -0.371240
+vn -0.613442 0.448630 -0.649938
+vn -0.761642 0.553882 -0.336328
+vn -0.959192 0.278469 -0.049058
+vn -0.812433 0.582578 -0.023559
+vn -0.920539 0.121613 -0.371240
+vn -0.761642 0.553882 -0.336328
+vn -0.133853 0.871060 0.472587
+vn 0.063570 0.997479 -0.031542
+vn -0.812433 0.582578 -0.023559
+vn -0.761642 0.553882 -0.336328
+vn 0.291312 0.701788 -0.650101
+vn -0.613442 0.448630 -0.649938
+vn 0.063570 0.997479 -0.031542
+vn -0.761642 0.553882 -0.336328
+vn -0.360027 0.481171 0.799284
+vn -0.327236 0.664878 0.671456
+vn -0.960507 0.248267 0.125658
+vn -0.896428 0.411928 0.163498
+vn -0.522860 0.683012 0.510011
+vn -0.145504 0.712163 0.686770
+vn -0.360027 0.481171 0.799284
+vn 0.994419 0.101777 -0.027806
+vn 0.405171 0.090301 -0.909770
+vn 0.938986 0.336222 -0.072530
+vn 0.305411 0.600304 -0.739161
+vn 0.405171 0.090301 -0.909770
+vn 0.135942 0.812547 -0.566822
+vn -0.629770 0.039992 -0.775751
+vn -0.808208 0.196704 -0.555074
+vn -0.232211 0.962155 0.142606
+vn -0.145504 0.712163 0.686770
+vn -0.522860 0.683012 0.510011
+vn -0.949285 0.301478 -0.089275
+vn -0.920277 0.238157 -0.310438
+vn -0.688383 0.711300 -0.142061
+vn -0.907158 0.275212 -0.318311
+vn -0.949285 0.301478 -0.089275
+vn -0.980045 0.183574 -0.076239
+vn -0.917357 -0.000430 -0.398065
+vn -0.917552 0.069779 -0.391444
+vn -0.663853 0.330084 -0.671077
+vn -0.703832 0.043324 -0.709044
+vn -0.851841 0.411833 -0.323669
+vn -0.917552 0.069779 -0.391444
+vn -0.703832 0.043324 -0.709044
+vn -0.792755 0.117460 -0.598116
+vn -0.917552 0.069779 -0.391444
+vn -0.917357 -0.000430 -0.398065
+vn 0.966846 0.175841 0.185170
+vn 0.090343 0.693688 -0.714588
+vn 0.994058 0.094277 -0.054410
+vn 0.321551 0.060504 -0.944957
+vn -0.319456 0.461858 0.827427
+vn 0.596299 0.272006 0.755275
+vn -0.254406 0.707770 0.659044
+vn 0.496661 0.464438 0.733229
+vn 0.596299 0.272006 0.755275
+vn 0.881927 0.147555 0.447697
+vn 0.496661 0.464438 0.733229
+vn 0.752780 0.504079 0.423352
+vn 0.881927 0.147555 0.447697
+vn 0.994058 0.094277 -0.054410
+vn 0.752780 0.504079 0.423352
+vn 0.935110 0.341224 -0.095579
+vn -0.685253 0.600743 0.411748
+vn -0.114575 0.382509 0.916820
+vn -0.904156 0.374720 0.205152
+vn -0.167939 0.503622 0.847444
+vn 0.503934 0.350364 0.789491
+vn 0.884197 0.342850 0.317255
+vn 0.638011 0.316162 0.702128
+vn 0.930790 0.156349 0.330433
+vn -0.547829 -0.020511 -0.836339
+vn -0.492045 0.139474 -0.859325
+vn 0.305928 -0.033757 -0.951456
+vn 0.275514 0.413209 -0.867958
+vn 0.971412 0.037108 -0.234482
+vn 0.305928 -0.033757 -0.951456
+vn 0.929783 0.232288 -0.285562
+vn 0.275514 0.413209 -0.867958
+vn 0.513321 0.267859 0.815324
+vn 0.888322 0.136932 0.438330
+vn 0.404322 0.474989 0.781607
+vn 0.749611 0.527970 0.399164
+vn 0.888322 0.136932 0.438330
+vn 0.971412 0.037108 -0.234482
+vn 0.749611 0.527970 0.399164
+vn 0.929783 0.232288 -0.285562
+vn -0.974246 0.218956 0.053883
+vn -0.319456 0.461858 0.827427
+vn -0.899160 0.419380 0.125028
+vn -0.254406 0.707770 0.659044
+vn 0.884197 0.342850 0.317255
+vn 0.313292 0.940327 0.132789
+vn 0.901895 0.174351 -0.395204
+vn -0.010853 0.950486 -0.310579
+vn 0.313292 0.940327 0.132789
+vn -0.196073 0.950882 0.239541
+vn -0.010853 0.950486 -0.310579
+vn -0.917144 0.393661 0.062275
+vn -0.933889 0.275011 0.228519
+vn -0.267682 0.425816 0.864307
+vn -0.868880 0.426990 0.250452
+vn -0.289202 0.679932 0.673836
+vn 0.513321 0.267859 0.815324
+vn 0.404322 0.474989 0.781607
+vn -0.267682 0.425816 0.864307
+vn -0.289202 0.679932 0.673836
+vn -0.685253 0.600743 0.411748
+vn -0.166226 0.921341 0.351426
+vn -0.304910 0.527539 0.792927
+vn -0.311741 0.563550 0.765003
+vn -0.304910 0.527539 0.792927
+vn -0.311741 0.563550 0.765003
+vn -0.116961 0.942945 0.311730
+vn -0.278617 0.557459 0.782056
+vn -0.101416 0.953274 0.284577
+vn -0.116961 0.942945 0.311730
+vn -0.205704 0.930379 0.303449
+vn -0.137752 0.956264 0.258036
+vn -0.661940 0.368027 -0.652987
+vn -0.741881 0.067106 -0.667165
+vn -0.805637 0.480655 -0.346294
+vn -0.921733 0.103795 -0.373678
+vn -0.741881 0.067106 -0.667165
+vn -0.807551 0.197927 -0.555595
+vn -0.921733 0.103795 -0.373678
+vn -0.925794 0.046841 -0.375115
+vn 0.223846 0.666060 -0.711518
+vn -0.661940 0.368027 -0.652987
+vn 0.025568 0.998352 -0.051380
+vn -0.805637 0.480655 -0.346294
+vn -0.902309 0.200725 -0.381508
+vn -0.514184 0.820920 -0.248405
+vn -0.880925 0.283832 -0.378695
+vn -0.526449 0.822507 -0.215252
+vn -0.880925 0.283832 -0.378695
+vn -0.526449 0.822507 -0.215252
+vn -0.853169 0.302731 -0.424802
+vn -0.535664 0.827524 -0.168129
+vn -0.902309 0.200725 -0.381508
+vn -0.925794 0.046841 -0.375115
+vn -0.882892 0.255982 -0.393669
+vn -0.807551 0.197927 -0.555595
+vn -0.819676 0.406927 0.403165
+vn -0.863418 0.470071 0.183145
+vn -0.714737 0.390191 0.580433
+vn -0.845257 0.486039 0.222053
+vn -0.721186 0.050329 0.690911
+vn -0.189793 0.110222 0.975618
+vn -0.313161 -0.416093 0.853696
+vn 0.327918 -0.202227 0.922808
+vn -0.313161 -0.416093 0.853696
+vn 0.327918 -0.202227 0.922808
+vn -0.582326 -0.365791 0.726012
+vn 0.020534 -0.362323 0.931827
+vn -0.447090 -0.486635 0.750531
+vn -0.206447 -0.389705 0.897502
+vn -0.354162 -0.610805 0.708157
+vn -0.003133 -0.878618 0.477514
+vn -0.953078 0.288863 -0.090558
+vn -0.901224 0.426557 -0.076456
+vn -0.936551 0.346598 -0.052362
+vn -0.874268 0.470853 -0.118123
+vn -0.901224 0.426557 -0.076456
+vn -0.910979 0.392972 -0.125262
+vn -0.766765 0.625850 -0.142770
+vn -0.742114 0.648121 -0.170896
+vn -0.442109 0.890776 -0.105156
+vn -0.831764 0.527148 -0.174022
+vn -0.893314 0.414719 -0.173203
+vn -0.766765 0.625850 -0.142770
+vn -0.910979 0.392972 -0.125262
+vn -0.390002 0.871248 0.298035
+vn -0.665132 -0.496929 0.557369
+vn -0.205704 0.930379 0.303449
+vn -0.487867 -0.282658 0.825888
+vn 0.207803 -0.895607 0.393328
+vn 0.019986 -0.964498 0.263333
+vn 0.244953 -0.798283 0.550221
+vn -0.162026 -0.928527 0.334045
+vn 0.207803 -0.895607 0.393328
+vn 0.244953 -0.798283 0.550221
+vn 0.633609 -0.641534 0.432405
+vn 0.747892 -0.256115 0.612424
+vn 0.872869 -0.327596 0.361636
+vn 0.970140 -0.146616 0.193214
+vn 0.866830 -0.309536 0.390888
+vn 0.952970 -0.300804 0.036952
+vn 0.800010 -0.344410 0.491290
+vn 0.866830 -0.309536 0.390888
+vn 0.746015 -0.630487 0.214355
+vn 0.952970 -0.300804 0.036952
+vn 0.786980 0.616668 0.019582
+vn 0.504363 0.731326 0.459109
+vn 0.857758 0.429569 0.282350
+vn 0.366036 0.589347 0.720200
+vn 0.240164 0.515637 0.822459
+vn 0.806009 0.323683 0.495559
+vn 0.366036 0.589347 0.720200
+vn 0.857758 0.429569 0.282350
+vn 0.107366 0.547452 0.829921
+vn 0.734046 0.366383 0.571787
+vn 0.240164 0.515637 0.822459
+vn 0.806009 0.323683 0.495559
+vn 0.857583 0.472502 -0.203208
+vn 0.786980 0.616668 0.019582
+vn 0.974830 0.213126 -0.065456
+vn 0.857758 0.429569 0.282350
+vn 0.857583 0.472502 -0.203208
+vn 0.875741 0.309345 -0.370652
+vn 0.906052 0.418072 -0.065465
+vn 0.970288 0.228515 -0.079516
+vn 0.906052 0.418072 -0.065465
+vn 0.970288 0.228515 -0.079516
+vn 0.900688 0.432132 0.044983
+vn 0.944740 0.321101 0.066041
+vn 0.620138 0.783797 0.033018
+vn 0.800030 0.599577 0.021432
+vn 0.446569 0.886516 -0.121102
+vn 0.641376 0.760988 -0.097644
+vn 0.900688 0.432132 0.044983
+vn 0.944740 0.321101 0.066041
+vn 0.800030 0.599577 0.021432
+vn 0.761389 0.648206 -0.010797
+vn -0.000000 0.990579 -0.136942
+vn 0.241607 0.961016 -0.134443
+vn 0.000000 0.955885 -0.293741
+vn 0.253848 0.923674 -0.287033
+vn 0.241607 0.961016 -0.134443
+vn 0.446569 0.886516 -0.121102
+vn 0.253848 0.923674 -0.287033
+vn 0.433118 0.855908 -0.282542
+vn -0.685176 0.727463 0.036492
+vn -0.305994 0.951636 -0.027497
+vn -0.577621 0.810865 -0.094079
+vn -0.286394 0.949265 -0.129902
+vn -0.685176 0.727463 0.036492
+vn -0.847059 0.530493 0.032681
+vn -0.863418 0.470071 0.183145
+vn -0.911132 0.406637 0.066973
+vn -0.720939 0.192790 0.665641
+vn -0.920084 0.373295 -0.118730
+vn -0.511053 0.743467 0.431371
+vn -0.720939 0.192790 0.665641
+vn -0.734818 -0.613106 -0.290075
+vn -0.971551 0.180680 -0.153115
+vn -0.825765 0.175481 -0.536022
+vn -0.852762 0.139011 -0.503462
+vn -0.971551 0.180680 -0.153115
+vn -0.920084 0.373295 -0.118730
+vn -0.846683 0.520260 0.111612
+vn -0.645759 0.760130 -0.072088
+vn -0.888375 0.447471 -0.102761
+vn -0.442109 0.890776 -0.105156
+vn -0.888375 0.447471 -0.102761
+vn -0.944920 0.278170 -0.172476
+vn -0.651299 0.752889 -0.094702
+vn -0.853143 0.426345 -0.300628
+vn -0.055674 0.997814 -0.035604
+vn -0.053053 0.964277 -0.259530
+vn 0.645302 0.748698 0.151779
+vn 0.928833 0.369458 0.027739
+vn -0.041824 -0.986543 0.158062
+vn 0.446607 -0.867010 0.220987
+vn 0.037107 -0.968444 -0.246454
+vn 0.930486 -0.364575 0.035781
+vn -0.816887 -0.562111 0.129333
+vn -0.976356 -0.150530 -0.155144
+vn -0.881226 -0.430174 0.195935
+vn -0.952495 -0.266329 -0.147725
+vn -0.855805 -0.419793 -0.302279
+vn 0.037107 -0.968444 -0.246454
+vn -0.806005 -0.240815 -0.540707
+vn 0.203171 -0.345965 -0.915986
+vn -0.099631 -0.921662 0.374984
+vn -0.816887 -0.562111 0.129333
+vn -0.158586 -0.715744 0.680119
+vn -0.881226 -0.430174 0.195935
+vn -0.846452 -0.421426 -0.325451
+vn 0.066193 -0.951432 -0.300660
+vn -0.793786 -0.231813 -0.562287
+vn 0.236958 -0.316494 -0.918522
+vn -0.212274 -0.698256 0.683651
+vn -0.885280 -0.418015 0.203818
+vn -0.152849 -0.858881 0.488837
+vn -0.685096 -0.694279 0.220503
+vn -0.885280 -0.418015 0.203818
+vn -0.954697 -0.257375 -0.149373
+vn -0.685096 -0.694279 0.220503
+vn -0.703662 -0.706993 -0.070852
+vn -0.954697 -0.257375 -0.149373
+vn -0.793786 -0.231813 -0.562287
+vn -0.703662 -0.706993 -0.070852
+vn -0.630221 -0.635905 -0.445472
+vn -0.724632 -0.193368 -0.661451
+vn 0.344350 -0.196976 -0.917945
+vn -0.559847 -0.538119 -0.630079
+vn 0.243674 -0.670962 -0.700309
+vn 0.140983 -0.926201 -0.349679
+vn 0.951558 -0.307468 -0.001356
+vn 0.344350 -0.196976 -0.917945
+vn 0.961411 -0.107436 -0.253271
+vn -0.955835 -0.221164 -0.193561
+vn -0.650532 -0.742604 -0.159211
+vn -0.957074 -0.178079 -0.228688
+vn -0.853146 -0.279892 -0.440229
+vn -0.819586 -0.381630 -0.427361
+vn -0.614441 -0.774807 -0.148781
+vn 0.152900 -0.827853 -0.539704
+vn 0.006059 -0.999002 -0.044250
+vn -0.112520 -0.946791 0.301539
+vn -0.885584 -0.463600 0.028557
+vn -0.232347 -0.714943 0.659447
+vn -0.912353 -0.385396 0.138140
+vn -0.839099 -0.362025 -0.406018
+vn 0.178670 -0.835190 -0.520130
+vn -0.779873 -0.176014 -0.600681
+vn 0.305566 -0.207318 -0.929327
+vn -0.124220 -0.938585 0.321912
+vn -0.259810 -0.696394 0.668980
+vn 0.775479 -0.494405 0.392677
+vn 0.706872 -0.409539 0.576723
+vn 0.016879 -0.999116 -0.038497
+vn -0.124220 -0.938585 0.321912
+vn 0.660697 -0.744657 0.094684
+vn 0.775479 -0.494405 0.392677
+vn -0.259810 -0.696394 0.668980
+vn -0.171632 -0.883416 0.436026
+vn 0.706872 -0.409539 0.576723
+vn 0.535291 -0.700021 0.472689
+vn -0.903476 -0.383756 -0.190951
+vn -0.690966 -0.704731 -0.160999
+vn -0.925299 -0.303396 -0.227536
+vn -0.861018 -0.213942 -0.461386
+vn -0.903476 -0.383756 -0.190951
+vn -0.955096 -0.239839 -0.173981
+vn -0.690966 -0.704731 -0.160999
+vn -0.916337 -0.388635 0.096382
+vn -0.980753 -0.090124 -0.173211
+vn -0.808615 -0.310134 -0.499959
+vn -0.962493 -0.183926 -0.199445
+vn -0.620252 -0.105698 -0.777248
+vn -0.808615 -0.310134 -0.499959
+vn -0.706684 -0.694262 -0.136374
+vn 0.193675 -0.607261 -0.770535
+vn -0.039842 -0.999077 -0.016046
+vn -0.909029 -0.381411 0.167902
+vn -0.876963 -0.335922 0.343646
+vn -0.278440 -0.745981 0.604965
+vn -0.286636 -0.512798 0.809245
+vn -0.398701 -0.910060 -0.113263
+vn -0.041693 -0.996374 0.074169
+vn 0.243703 -0.912889 -0.327479
+vn 0.724872 -0.553715 0.409829
+vn -0.041693 -0.996374 0.074169
+vn -0.219594 -0.963903 0.150567
+vn 0.724872 -0.553715 0.409829
+vn -0.278440 -0.745981 0.604965
+vn -0.876732 0.479858 -0.032832
+vn -0.704723 0.696012 -0.137598
+vn -0.973164 0.034248 -0.227548
+vn -0.806088 0.529740 -0.263813
+vn 0.016589 -0.998612 -0.049989
+vn 0.073077 -0.996713 -0.034966
+vn 0.016216 -0.998669 -0.048962
+vn 0.072814 -0.996762 -0.034104
+vn 0.016216 -0.998669 -0.048962
+vn 0.072814 -0.996762 -0.034104
+vn 0.015665 -0.998754 -0.047386
+vn 0.071827 -0.996870 -0.033022
+vn 0.015432 -0.998787 -0.046762
+vn 0.015665 -0.998754 -0.047386
+vn 0.070809 -0.996949 -0.032848
+vn 0.071827 -0.996870 -0.033022
+vn 0.143872 -0.988920 -0.036592
+vn 0.388513 -0.920881 0.032173
+vn 0.154597 -0.987276 -0.037227
+vn 0.395179 -0.918045 0.032035
+vn 0.070809 -0.996949 -0.032848
+vn 0.341514 -0.939396 0.030055
+vn 0.076082 -0.996137 -0.043857
+vn 0.339618 -0.940261 0.023837
+vn 0.076082 -0.996137 -0.043857
+vn 0.339618 -0.940261 0.023837
+vn 0.094259 -0.993576 -0.062620
+vn 0.349152 -0.936943 0.015211
+vn 0.094259 -0.993576 -0.062620
+vn 0.349152 -0.936943 0.015211
+vn 0.116014 -0.991077 -0.065624
+vn 0.366078 -0.930457 0.015397
+vn 0.132909 -0.989727 -0.052681
+vn 0.116014 -0.991077 -0.065624
+vn 0.379562 -0.924867 0.023528
+vn 0.366078 -0.930457 0.015397
+vn 0.143872 -0.988920 -0.036592
+vn 0.132909 -0.989727 -0.052681
+vn 0.388513 -0.920881 0.032173
+vn 0.379562 -0.924867 0.023528
+vn -0.038684 -0.996927 -0.068117
+vn -0.040098 -0.996986 -0.066414
+vn 0.016242 -0.998675 -0.048830
+vn 0.015412 -0.998813 -0.046200
+vn 0.015089 -0.998868 -0.045103
+vn 0.074720 -0.996734 -0.030618
+vn 0.015412 -0.998813 -0.046200
+vn 0.072937 -0.996824 -0.031977
+vn 0.014644 -0.998939 -0.043667
+vn 0.075587 -0.996719 -0.028955
+vn 0.015089 -0.998868 -0.045103
+vn 0.074720 -0.996734 -0.030618
+vn -0.267624 -0.109878 -0.957238
+vn 0.675495 -0.049075 -0.735730
+vn -0.197227 -0.362537 -0.910861
+vn 0.575437 -0.465085 -0.672732
+vn 0.451201 -0.891973 -0.028309
+vn 0.935295 -0.320290 0.150459
+vn 0.426977 -0.902699 0.053160
+vn 0.921039 -0.361483 0.144975
+vn -0.267624 -0.109878 -0.957238
+vn -0.197227 -0.362537 -0.910861
+vn -0.940159 -0.189701 -0.283046
+vn -0.761637 -0.585885 -0.276854
+vn 0.282043 -0.938174 0.200702
+vn 0.768279 -0.585100 0.259624
+vn 0.264825 -0.943802 0.197753
+vn 0.796130 -0.552237 0.247411
+vn 0.264825 -0.943802 0.197753
+vn 0.796130 -0.552237 0.247411
+vn 0.248270 -0.948887 0.194874
+vn 0.753595 -0.617676 0.224878
+vn 0.248270 -0.948887 0.194874
+vn 0.753595 -0.617676 0.224878
+vn 0.233034 -0.953294 0.192159
+vn 0.656569 -0.716859 0.234586
+vn 0.302828 -0.934354 0.187822
+vn 0.746192 -0.624548 0.230515
+vn 0.282043 -0.938174 0.200702
+vn 0.768279 -0.585100 0.259624
+vn 0.336004 -0.931821 0.137151
+vn 0.821710 -0.537549 0.189299
+vn 0.302828 -0.934354 0.187822
+vn 0.746192 -0.624548 0.230515
+vn 0.377394 -0.923249 0.072008
+vn 0.860656 -0.482528 0.162596
+vn 0.336004 -0.931821 0.137151
+vn 0.821710 -0.537549 0.189299
+vn 0.402563 -0.914334 0.044008
+vn 0.769738 -0.621354 0.146365
+vn 0.377394 -0.923249 0.072008
+vn 0.860656 -0.482528 0.162596
+vn 0.233034 -0.953294 0.192159
+vn 0.656569 -0.716859 0.234586
+vn 0.218222 -0.957327 0.189485
+vn 0.683726 -0.684035 0.254194
+vn 0.218222 -0.957327 0.189485
+vn 0.683726 -0.684035 0.254194
+vn 0.204558 -0.960582 0.188252
+vn 0.717438 -0.651090 0.247719
+vn 0.105398 0.993655 -0.039249
+vn 0.121601 0.992037 -0.032790
+vn -0.605392 0.738726 -0.296286
+vn -0.585146 0.757448 -0.289616
+vn 0.105398 0.993655 -0.039249
+vn 0.089615 0.994940 -0.045418
+vn 0.771391 0.585901 0.248345
+vn 0.764939 0.595692 0.244988
+vn 0.092455 0.989955 -0.106965
+vn 0.039232 0.989827 -0.136760
+vn 0.034983 0.991866 -0.122383
+vn -0.018127 0.989941 -0.140314
+vn 0.039232 0.989827 -0.136760
+vn 0.029236 0.994249 -0.103030
+vn -0.018127 0.989941 -0.140314
+vn -0.116098 0.983350 -0.139797
+vn -0.795458 0.555488 -0.242240
+vn -0.805879 0.539640 -0.243612
+vn -0.407571 0.893440 -0.188816
+vn -0.479661 0.854039 -0.201354
+vn -0.407571 0.893440 -0.188816
+vn -0.479661 0.854039 -0.201354
+vn -0.116098 0.983350 -0.139797
+vn -0.243309 0.956326 -0.161990
+vn 0.734740 -0.059798 0.675708
+vn 0.645302 0.748698 0.151779
+vn 0.713387 0.402805 0.573435
+vn 0.907926 0.347132 0.234881
+vn -0.917295 0.311465 -0.248113
+vn -0.920641 0.301706 -0.247777
+vn -0.795458 0.555488 -0.242240
+vn -0.805879 0.539640 -0.243612
+vn 0.452676 -0.849781 0.270105
+vn 0.645540 -0.722207 0.248387
+vn 0.446607 -0.867010 0.220987
+vn 0.593727 -0.766750 0.244097
+vn -0.960507 0.248267 0.125658
+vn -0.922264 0.385605 0.027162
+vn -0.360027 0.481171 0.799284
+vn -0.522860 0.683012 0.510011
+vn 0.482448 0.470448 0.738866
+vn 0.743007 0.512749 0.430150
+vn -0.327236 0.664878 0.671456
+vn -0.085776 0.992406 0.088161
+vn 0.743007 0.512749 0.430150
+vn 0.938986 0.336222 -0.072530
+vn -0.085776 0.992406 0.088161
+vn 0.305411 0.600304 -0.739161
+vn -0.629770 0.039992 -0.775751
+vn -0.571451 0.263476 -0.777190
+vn 0.405171 0.090301 -0.909770
+vn 0.305411 0.600304 -0.739161
+vn -0.688383 0.711300 -0.142061
+vn -0.907158 0.275212 -0.318311
+vn -0.808208 0.196704 -0.555074
+vn -0.913069 0.135296 -0.384708
+vn -0.232211 0.962155 0.142606
+vn -0.661261 0.723292 -0.198954
+vn 0.090343 0.693688 -0.714588
+vn -0.782571 0.152434 -0.603612
+vn -0.920277 0.238157 -0.310438
+vn -0.949285 0.301478 -0.089275
+vn -0.916740 0.108060 -0.384592
+vn -0.917357 -0.000430 -0.398065
+vn -0.980045 0.183574 -0.076239
+vn -0.913912 0.405711 -0.012766
+vn -0.917552 0.069779 -0.391444
+vn -0.851841 0.411833 -0.323669
+vn -0.324088 0.750836 0.575510
+vn -0.056337 0.995732 0.073106
+vn -0.913912 0.405711 -0.012766
+vn -0.851841 0.411833 -0.323669
+vn 0.325997 0.701144 -0.634131
+vn -0.663853 0.330084 -0.671077
+vn -0.056337 0.995732 0.073106
+vn -0.851841 0.411833 -0.323669
+vn -0.792755 0.117460 -0.598116
+vn -0.883471 0.139515 -0.447230
+vn -0.917357 -0.000430 -0.398065
+vn -0.916740 0.108060 -0.384592
+vn -0.853169 0.302731 -0.424802
+vn -0.535664 0.827524 -0.168129
+vn -0.883471 0.139515 -0.447230
+vn -0.541613 0.831991 -0.120192
+vn -0.685253 0.600743 0.411748
+vn -0.904156 0.374720 0.205152
+vn -0.834398 0.485073 -0.261696
+vn -0.935081 0.170405 -0.310783
+vn -0.904156 0.374720 0.205152
+vn -0.167939 0.503622 0.847444
+vn -0.854770 0.473593 0.212318
+vn -0.166038 0.759846 0.628543
+vn 0.638011 0.316162 0.702128
+vn 0.567719 0.465297 0.679112
+vn -0.167939 0.503622 0.847444
+vn -0.166038 0.759846 0.628543
+vn -0.492045 0.139474 -0.859325
+vn -0.547829 -0.020511 -0.836339
+vn -0.845369 0.438760 -0.304698
+vn -0.928942 0.075791 -0.362384
+vn -0.547829 -0.020511 -0.836339
+vn -0.773106 0.147549 -0.616876
+vn -0.928942 0.075791 -0.362384
+vn -0.931432 0.029722 -0.362701
+vn -0.942966 0.328893 -0.051430
+vn -0.861414 0.412531 -0.296284
+vn -0.726293 0.643639 -0.241304
+vn -0.804399 0.521969 -0.283707
+vn -0.726293 0.643639 -0.241304
+vn -0.804399 0.521969 -0.283707
+vn -0.773106 0.147549 -0.616876
+vn -0.855756 0.382230 -0.348687
+vn -0.974246 0.218956 0.053883
+vn -0.899160 0.419380 0.125028
+vn -0.913567 0.070681 -0.400498
+vn -0.846626 0.423834 -0.321853
+vn -0.942966 0.328893 -0.051430
+vn -0.974246 0.218956 0.053883
+vn -0.915387 0.011667 -0.402405
+vn -0.913567 0.070681 -0.400498
+vn 0.884197 0.342850 0.317255
+vn 0.901895 0.174351 -0.395204
+vn 0.930790 0.156349 0.330433
+vn 0.967801 0.037262 -0.248943
+vn -0.933889 0.275011 0.228519
+vn -0.868880 0.426990 0.250452
+vn -0.928942 0.075791 -0.362384
+vn -0.845369 0.438760 -0.304698
+vn -0.917144 0.393661 0.062275
+vn -0.933889 0.275011 0.228519
+vn -0.931432 0.029722 -0.362701
+vn -0.928942 0.075791 -0.362384
+vn -0.917144 0.393661 0.062275
+vn -0.817029 0.393944 -0.421036
+vn -0.010853 0.950486 -0.310579
+vn -0.296326 0.468561 -0.832251
+vn -0.166226 0.921341 0.351426
+vn -0.685253 0.600743 0.411748
+vn -0.003765 0.999979 0.005239
+vn -0.834398 0.485073 -0.261696
+vn -0.867942 0.332868 -0.368612
+vn -0.899468 0.259937 -0.351269
+vn -0.541139 0.795038 -0.274011
+vn -0.563773 0.776209 -0.282240
+vn -0.882892 0.255982 -0.393669
+vn -0.867942 0.332868 -0.368612
+vn -0.519309 0.812258 -0.265620
+vn -0.541139 0.795038 -0.274011
+vn -0.899468 0.259937 -0.351269
+vn -0.909549 0.181723 -0.373762
+vn -0.563773 0.776209 -0.282240
+vn -0.585146 0.757448 -0.289616
+vn -0.902309 0.200725 -0.381508
+vn -0.882892 0.255982 -0.393669
+vn -0.514184 0.820920 -0.248405
+vn -0.519309 0.812258 -0.265620
+vn -0.594467 0.322654 0.736549
+vn -0.714737 0.390191 0.580433
+vn -0.343104 0.463693 0.816865
+vn -0.437228 0.659166 0.611826
+vn -0.594467 0.322654 0.736549
+vn -0.343104 0.463693 0.816865
+vn -0.453260 0.289351 0.843108
+vn -0.223050 0.374576 0.899967
+vn -0.453260 0.289351 0.843108
+vn -0.223050 0.374576 0.899967
+vn -0.189793 0.110222 0.975618
+vn 0.006009 0.203368 0.979084
+vn 0.020534 -0.362323 0.931827
+vn 0.762647 0.031448 0.646050
+vn -0.206447 -0.389705 0.897502
+vn 0.925683 -0.185058 0.329946
+vn -0.172553 -0.866668 0.468094
+vn -0.354162 -0.610805 0.708157
+vn -0.332550 -0.902410 0.273982
+vn -0.391869 -0.771818 0.500734
+vn -0.172553 -0.866668 0.468094
+vn -0.172033 -0.964490 0.200409
+vn 0.019986 -0.964498 0.263333
+vn 0.025542 -0.981951 0.187405
+vn -0.979961 0.156881 -0.122742
+vn -0.901224 0.426557 -0.076456
+vn -0.953078 0.288863 -0.090558
+vn -0.910979 0.392972 -0.125262
+vn -0.901224 0.426557 -0.076456
+vn -0.886272 0.457655 -0.071227
+vn -0.742114 0.648121 -0.170896
+vn -0.766765 0.625850 -0.142770
+vn -0.894793 0.397793 -0.202746
+vn -0.772796 0.604966 -0.191838
+vn -0.735320 0.652731 -0.182338
+vn -0.766765 0.625850 -0.142770
+vn -0.893314 0.414719 -0.173203
+vn -0.975526 0.120357 -0.184020
+vn -0.910979 0.392972 -0.125262
+vn -0.962096 0.255882 -0.094314
+vn -0.936551 0.346598 -0.052362
+vn -0.825399 0.556664 0.094032
+vn -0.210709 0.961733 0.175133
+vn -0.390002 0.871248 0.298035
+vn -0.228585 0.951240 0.207104
+vn -0.825399 0.556664 0.094032
+vn -0.210709 0.961733 0.175133
+vn -0.205704 0.930379 0.303449
+vn -0.137752 0.956264 0.258036
+vn -0.390002 0.871248 0.298035
+vn -0.228585 0.951240 0.207104
+vn 0.633609 -0.641534 0.432405
+vn 0.747892 -0.256115 0.612424
+vn 0.872869 -0.327596 0.361636
+vn 0.970140 -0.146616 0.193214
+vn -0.618416 0.394530 0.679638
+vn -0.968361 -0.143253 0.204340
+vn -0.711783 0.467317 0.524385
+vn -0.990812 -0.117397 0.067149
+vn -0.968361 -0.143253 0.204340
+vn -0.619942 -0.744190 -0.248703
+vn -0.990812 -0.117397 0.067149
+vn -0.655098 -0.681031 -0.327174
+vn -0.619942 -0.744190 -0.248703
+vn 0.096040 -0.696629 0.710974
+vn 0.278749 -0.882358 -0.379135
+vn 0.746015 -0.630487 0.214355
+vn 0.107366 0.547452 0.829921
+vn 0.047614 0.626643 0.777851
+vn 0.734046 0.366383 0.571787
+vn 0.704940 0.435791 0.559594
+vn 0.047614 0.626643 0.777851
+vn -0.618416 0.394530 0.679638
+vn -0.006625 0.732093 0.681173
+vn -0.711783 0.467317 0.524385
+vn 0.974830 0.213126 -0.065456
+vn 0.953428 -0.005535 -0.301569
+vn 0.857583 0.472502 -0.203208
+vn 0.875741 0.309345 -0.370652
+vn -0.000000 0.990579 -0.136942
+vn 0.000000 0.955885 -0.293741
+vn -0.286394 0.949265 -0.129902
+vn -0.271194 0.920889 -0.280031
+vn -0.685176 0.727463 0.036492
+vn -0.577621 0.810865 -0.094079
+vn -0.847059 0.530493 0.032681
+vn -0.767679 0.640562 -0.018697
+vn -0.920084 0.373295 -0.118730
+vn -0.720939 0.192790 0.665641
+vn -0.971551 0.180680 -0.153115
+vn -0.888375 0.447471 -0.102761
+vn -0.442109 0.890776 -0.105156
+vn -0.944920 0.278170 -0.172476
+vn -0.831764 0.527148 -0.174022
+vn -0.053053 0.964277 -0.259530
+vn -0.853143 0.426345 -0.300628
+vn 0.046370 0.488034 -0.871592
+vn -0.825536 0.279310 -0.490384
+vn -0.881226 -0.430174 0.195935
+vn -0.952495 -0.266329 -0.147725
+vn -0.670872 -0.710776 0.211490
+vn -0.692261 -0.718818 -0.063831
+vn -0.952495 -0.266329 -0.147725
+vn -0.806005 -0.240815 -0.540707
+vn -0.692261 -0.718818 -0.063831
+vn -0.635621 -0.657437 -0.404675
+vn -0.099631 -0.921662 0.374984
+vn -0.158586 -0.715744 0.680119
+vn 0.717272 -0.536511 0.444609
+vn 0.750799 -0.386900 0.535359
+vn -0.039211 -0.991687 0.122550
+vn -0.099631 -0.921662 0.374984
+vn 0.513553 -0.832225 0.208961
+vn 0.717272 -0.536511 0.444609
+vn -0.039211 -0.991687 0.122550
+vn 0.513553 -0.832225 0.208961
+vn 0.066193 -0.951432 -0.300660
+vn 0.939631 -0.341456 0.022407
+vn -0.212274 -0.698256 0.683651
+vn -0.152849 -0.858881 0.488837
+vn 0.733073 -0.391150 0.556423
+vn 0.522664 -0.699217 0.487769
+vn 0.581163 -0.787255 0.206106
+vn 0.746192 -0.624548 0.230515
+vn 0.951558 -0.307468 -0.001356
+vn 0.821710 -0.537549 0.189299
+vn 0.736359 -0.511340 0.443066
+vn 0.768279 -0.585100 0.259624
+vn 0.581163 -0.787255 0.206106
+vn 0.746192 -0.624548 0.230515
+vn 0.736359 -0.511340 0.443066
+vn 0.733073 -0.391150 0.556423
+vn 0.971602 -0.077361 0.223619
+vn 0.956324 -0.186311 0.225240
+vn -0.171632 -0.883416 0.436026
+vn -0.709316 -0.684087 0.169990
+vn 0.014244 -0.997712 -0.066086
+vn -0.704827 -0.682631 -0.192961
+vn -0.704827 -0.682631 -0.192961
+vn -0.559847 -0.538119 -0.630079
+vn 0.014244 -0.997712 -0.066086
+vn 0.243674 -0.670962 -0.700309
+vn -0.879794 -0.466353 0.092075
+vn -0.129537 -0.880903 0.455226
+vn -0.650532 -0.742604 -0.159211
+vn -0.005947 -0.999161 -0.040521
+vn -0.879794 -0.466353 0.092075
+vn -0.976764 -0.114313 -0.181285
+vn -0.876919 -0.404241 0.260003
+vn -0.959020 -0.211555 -0.188479
+vn -0.976764 -0.114313 -0.181285
+vn -0.819586 -0.381630 -0.427361
+vn -0.959020 -0.211555 -0.188479
+vn -0.714384 -0.136786 -0.686254
+vn -0.819586 -0.381630 -0.427361
+vn 0.152900 -0.827853 -0.539704
+vn -0.714384 -0.136786 -0.686254
+vn 0.275713 -0.098445 -0.956186
+vn -0.112520 -0.946791 0.301539
+vn -0.232347 -0.714943 0.659447
+vn 0.814805 -0.440382 0.377037
+vn 0.771202 -0.362962 0.522978
+vn 0.006059 -0.999002 -0.044250
+vn -0.112520 -0.946791 0.301539
+vn 0.680900 -0.725006 0.103647
+vn 0.814805 -0.440382 0.377037
+vn -0.232347 -0.714943 0.659447
+vn -0.912353 -0.385396 0.138140
+vn -0.155371 -0.896006 0.415972
+vn -0.734459 -0.667724 0.121303
+vn -0.912353 -0.385396 0.138140
+vn -0.955822 -0.221498 -0.193245
+vn -0.734459 -0.667724 0.121303
+vn -0.731018 -0.654805 -0.191945
+vn -0.955822 -0.221498 -0.193245
+vn -0.779873 -0.176014 -0.600681
+vn -0.731018 -0.654805 -0.191945
+vn -0.626358 -0.544035 -0.558303
+vn 0.016879 -0.999116 -0.038497
+vn 0.660697 -0.744657 0.094684
+vn 0.178670 -0.835190 -0.520130
+vn 0.966258 -0.256233 -0.026252
+vn -0.964560 -0.168096 -0.203390
+vn -0.957074 -0.178079 -0.228688
+vn -0.977780 -0.103973 -0.182035
+vn -0.853146 -0.279892 -0.440229
+vn -0.955096 -0.239839 -0.173981
+vn -0.964560 -0.168096 -0.203390
+vn -0.916337 -0.388635 0.096382
+vn -0.977780 -0.103973 -0.182035
+vn -0.923771 -0.375143 0.076903
+vn -0.216151 -0.821108 0.528261
+vn -0.706684 -0.694262 -0.136374
+vn -0.039842 -0.999077 -0.016046
+vn -0.923771 -0.375143 0.076903
+vn -0.978463 -0.098985 -0.181141
+vn -0.916499 -0.349951 0.193816
+vn -0.963237 -0.187150 -0.192742
+vn -0.978463 -0.098985 -0.181141
+vn -0.861018 -0.213942 -0.461386
+vn -0.963237 -0.187150 -0.192742
+vn -0.742937 -0.068841 -0.665812
+vn -0.808615 -0.310134 -0.499959
+vn 0.193675 -0.607261 -0.770535
+vn -0.620252 -0.105698 -0.777248
+vn 0.267922 -0.071107 -0.960813
+vn -0.876963 -0.335922 0.343646
+vn -0.962493 -0.183926 -0.199445
+vn -0.752108 -0.587893 0.297852
+vn -0.762530 -0.612735 -0.207613
+vn 0.073077 -0.996713 -0.034966
+vn 0.016589 -0.998612 -0.049989
+vn 0.072501 -0.996781 -0.034234
+vn 0.016242 -0.998675 -0.048830
+vn 0.070809 -0.996949 -0.032848
+vn 0.071827 -0.996870 -0.033022
+vn 0.341514 -0.939396 0.030055
+vn 0.348825 -0.936643 0.031956
+vn 0.388513 -0.920881 0.032173
+vn 0.887581 -0.428464 0.169171
+vn 0.395179 -0.918045 0.032035
+vn 0.866453 -0.479331 0.139645
+vn 0.395179 -0.918045 0.032035
+vn 0.866453 -0.479331 0.139645
+vn 0.403901 -0.914399 0.027168
+vn 0.793253 -0.588528 0.156153
+vn 0.402563 -0.914334 0.044008
+vn 0.403901 -0.914399 0.027168
+vn 0.769738 -0.621354 0.146365
+vn 0.793253 -0.588528 0.156153
+vn 0.015412 -0.998813 -0.046200
+vn 0.072937 -0.996824 -0.031977
+vn 0.016242 -0.998675 -0.048830
+vn 0.072501 -0.996781 -0.034234
+vn 0.076462 -0.996859 -0.020610
+vn 0.416166 -0.907604 0.055331
+vn 0.075427 -0.996860 -0.024096
+vn 0.406730 -0.912146 0.050599
+vn 0.075427 -0.996860 -0.024096
+vn 0.406730 -0.912146 0.050599
+vn 0.075587 -0.996719 -0.028955
+vn 0.398826 -0.915890 0.045642
+vn 0.081743 -0.996257 -0.028120
+vn 0.426977 -0.902699 0.053160
+vn 0.076462 -0.996859 -0.020610
+vn 0.416166 -0.907604 0.055331
+vn 0.243703 -0.912889 -0.327479
+vn 0.724872 -0.553715 0.409829
+vn 0.728763 -0.456531 -0.510377
+vn 0.938634 -0.344693 0.012360
+vn 0.935295 -0.320290 0.150459
+vn 0.938634 -0.344693 0.012360
+vn 0.974774 -0.065877 0.213249
+vn 0.724872 -0.553715 0.409829
+vn 0.015108 -0.999616 -0.023220
+vn -0.761637 -0.585885 -0.276854
+vn 0.575437 -0.465085 -0.672732
+vn -0.197227 -0.362537 -0.910861
+vn 0.683726 -0.684035 0.254194
+vn 0.717272 -0.536511 0.444609
+vn 0.717438 -0.651090 0.247719
+vn 0.970037 -0.089199 0.225990
+vn 0.717438 -0.651090 0.247719
+vn 0.970037 -0.089199 0.225990
+vn 0.673594 -0.700959 0.234368
+vn 0.930486 -0.364575 0.035781
+vn 0.673594 -0.700959 0.234368
+vn 0.930486 -0.364575 0.035781
+vn 0.593727 -0.766750 0.244097
+vn 0.446607 -0.867010 0.220987
+vn 0.121601 0.992037 -0.032790
+vn 0.105398 0.993655 -0.039249
+vn 0.777779 0.575966 0.251641
+vn 0.771391 0.585901 0.248345
+vn 0.669183 0.716926 0.195479
+vn 0.377869 0.923681 0.063466
+vn 0.670189 0.717069 0.191462
+vn 0.393853 0.917540 0.054776
+vn 0.351733 0.935639 0.029398
+vn 0.174245 0.983951 -0.038455
+vn 0.377869 0.923681 0.063466
+vn 0.164248 0.984841 -0.055781
+vn 0.174245 0.983951 -0.038455
+vn 0.092455 0.989955 -0.106965
+vn 0.164248 0.984841 -0.055781
+vn 0.034983 0.991866 -0.122383
+vn -0.116098 0.983350 -0.139797
+vn -0.243309 0.956326 -0.161990
+vn -0.018127 0.989941 -0.140314
+vn -0.109479 0.985439 -0.130093
+vn -0.391752 0.482567 0.783364
+vn 0.713387 0.402805 0.573435
+vn -0.171135 0.938511 0.299850
+vn 0.560110 0.772471 0.299275
+vn -0.391752 0.482567 0.783364
+vn -0.171135 0.938511 0.299850
+vn -0.923253 0.366629 0.114836
+vn -0.676717 0.736193 -0.008656
+vn -0.923253 0.366629 0.114836
+vn -0.676717 0.736193 -0.008656
+vn -0.925868 0.325622 -0.191675
+vn -0.627188 0.762797 -0.157404
+vn -0.917295 0.311465 -0.248113
+vn -0.925868 0.325622 -0.191675
+vn -0.636702 0.741852 -0.210393
+vn -0.627188 0.762797 -0.157404
+vn -0.920641 0.301706 -0.247777
+vn -0.917295 0.311465 -0.248113
+vn -0.645764 0.733530 -0.211950
+vn -0.636702 0.741852 -0.210393
+vn 0.764939 0.595692 0.244988
+vn 0.921379 0.196008 0.335622
+vn 0.771391 0.585901 0.248345
+vn 0.921859 0.192533 0.336315
+vn 0.921379 0.196008 0.335622
+vn 0.887345 0.342400 0.308839
+vn 0.921859 0.192533 0.336315
+vn 0.888512 0.338503 0.309777
+vn 0.887345 0.342400 0.308839
+vn 0.670189 0.717069 0.191462
+vn 0.888512 0.338503 0.309777
+vn 0.678243 0.708552 0.194784
+vn -0.922264 0.385605 0.027162
+vn -0.960507 0.248267 0.125658
+vn -0.920729 0.007312 -0.390135
+vn -0.920942 0.078224 -0.381768
+vn -0.960507 0.248267 0.125658
+vn -0.896428 0.411928 0.163498
+vn -0.920942 0.078224 -0.381768
+vn -0.847960 0.437869 -0.298720
+vn -0.896428 0.411928 0.163498
+vn -0.327236 0.664878 0.671456
+vn -0.847960 0.437869 -0.298720
+vn -0.085776 0.992406 0.088161
+vn -0.571451 0.263476 -0.777190
+vn -0.629770 0.039992 -0.775751
+vn -0.847960 0.437869 -0.298720
+vn -0.920942 0.078224 -0.381768
+vn -0.629770 0.039992 -0.775751
+vn -0.808208 0.196704 -0.555074
+vn -0.920942 0.078224 -0.381768
+vn -0.920729 0.007312 -0.390135
+vn -0.661261 0.723292 -0.198954
+vn -0.232211 0.962155 0.142606
+vn -0.922264 0.385605 0.027162
+vn -0.522860 0.683012 0.510011
+vn -0.916740 0.108060 -0.384592
+vn -0.571326 0.814573 -0.100285
+vn -0.920277 0.238157 -0.310438
+vn -0.611039 0.785792 -0.095726
+vn -0.920277 0.238157 -0.310438
+vn -0.611039 0.785792 -0.095726
+vn -0.907158 0.275212 -0.318311
+vn -0.639566 0.761664 -0.104035
+vn 0.994058 0.094277 -0.054410
+vn 0.321551 0.060504 -0.944957
+vn 0.935110 0.341224 -0.095579
+vn 0.240231 0.594760 -0.767170
+vn 0.321551 0.060504 -0.944957
+vn 0.090343 0.693688 -0.714588
+vn -0.632354 0.022331 -0.774357
+vn -0.782571 0.152434 -0.603612
+vn -0.899160 0.419380 0.125028
+vn -0.254406 0.707770 0.659044
+vn -0.846626 0.423834 -0.321853
+vn -0.070044 0.995192 0.068456
+vn 0.496661 0.464438 0.733229
+vn 0.752780 0.504079 0.423352
+vn -0.254406 0.707770 0.659044
+vn -0.070044 0.995192 0.068456
+vn 0.752780 0.504079 0.423352
+vn 0.935110 0.341224 -0.095579
+vn -0.070044 0.995192 0.068456
+vn 0.240231 0.594760 -0.767170
+vn -0.904156 0.374720 0.205152
+vn -0.854770 0.473593 0.212318
+vn -0.935081 0.170405 -0.310783
+vn -0.847931 0.438232 -0.298270
+vn 0.638011 0.316162 0.702128
+vn 0.930790 0.156349 0.330433
+vn 0.567719 0.465297 0.679112
+vn 0.842165 0.454910 0.289510
+vn -0.845369 0.438760 -0.304698
+vn -0.069160 0.997452 0.017505
+vn -0.492045 0.139474 -0.859325
+vn 0.275514 0.413209 -0.867958
+vn 0.749611 0.527970 0.399164
+vn 0.929783 0.232288 -0.285562
+vn -0.069160 0.997452 0.017505
+vn 0.275514 0.413209 -0.867958
+vn -0.861414 0.412531 -0.296284
+vn -0.942966 0.328893 -0.051430
+vn -0.891430 0.284746 -0.352523
+vn -0.915387 0.011667 -0.402405
+vn 0.404322 0.474989 0.781607
+vn 0.749611 0.527970 0.399164
+vn -0.289202 0.679932 0.673836
+vn -0.069160 0.997452 0.017505
+vn 0.901895 0.174351 -0.395204
+vn -0.010853 0.950486 -0.310579
+vn 0.255177 0.397104 -0.881586
+vn -0.296326 0.468561 -0.832251
+vn -0.868880 0.426990 0.250452
+vn -0.289202 0.679932 0.673836
+vn -0.845369 0.438760 -0.304698
+vn -0.069160 0.997452 0.017505
+vn -0.931432 0.029722 -0.362701
+vn -0.882806 0.325883 -0.338311
+vn -0.917144 0.393661 0.062275
+vn -0.817029 0.393944 -0.421036
+vn -0.166226 0.921341 0.351426
+vn -0.003765 0.999979 0.005239
+vn 0.303309 0.640646 0.705391
+vn 0.840590 0.483194 0.244809
+vn -0.311741 0.563550 0.765003
+vn -0.166226 0.921341 0.351426
+vn -0.278617 0.557459 0.782056
+vn 0.303309 0.640646 0.705391
+vn -0.116961 0.942945 0.311730
+vn -0.278617 0.557459 0.782056
+vn -0.137752 0.956264 0.258036
+vn -0.448293 0.487287 0.749390
+vn -0.526449 0.822507 -0.215252
+vn -0.514184 0.820920 -0.248405
+vn 0.133170 0.986734 0.092852
+vn 0.160298 0.986954 0.015016
+vn -0.526449 0.822507 -0.215252
+vn 0.133170 0.986734 0.092852
+vn -0.535664 0.827524 -0.168129
+vn 0.124092 0.975090 0.183848
+vn -0.863418 0.470071 0.183145
+vn -0.911132 0.406637 0.066973
+vn -0.845257 0.486039 0.222053
+vn -0.911370 0.411199 -0.017885
+vn -0.714737 0.390191 0.580433
+vn -0.845257 0.486039 0.222053
+vn -0.437228 0.659166 0.611826
+vn -0.740024 0.660489 0.126957
+vn -0.189793 0.110222 0.975618
+vn 0.006009 0.203368 0.979084
+vn 0.327918 -0.202227 0.922808
+vn 0.290809 0.170947 0.941386
+vn 0.020534 -0.362323 0.931827
+vn 0.327918 -0.202227 0.922808
+vn 0.762647 0.031448 0.646050
+vn 0.290809 0.170947 0.941386
+vn -0.206447 -0.389705 0.897502
+vn 0.925683 -0.185058 0.329946
+vn -0.003133 -0.878618 0.477514
+vn 0.988449 -0.140208 0.057530
+vn -0.354162 -0.610805 0.708157
+vn -0.003133 -0.878618 0.477514
+vn -0.391869 -0.771818 0.500734
+vn -0.484618 -0.750862 0.448722
+vn -0.172553 -0.866668 0.468094
+vn -0.332550 -0.902410 0.273982
+vn -0.298187 -0.935435 0.189858
+vn -0.358108 -0.916648 0.177528
+vn -0.172553 -0.866668 0.468094
+vn -0.298187 -0.935435 0.189858
+vn -0.172033 -0.964490 0.200409
+vn -0.361101 -0.915358 0.178119
+vn -0.979961 0.156881 -0.122742
+vn -0.980184 0.063379 -0.187675
+vn -0.901224 0.426557 -0.076456
+vn -0.937745 0.330421 -0.107033
+vn -0.953078 0.288863 -0.090558
+vn -0.936551 0.346598 -0.052362
+vn -0.982292 0.154659 -0.105750
+vn -0.993913 0.088405 0.065743
+vn -0.886272 0.457655 -0.071227
+vn -0.901224 0.426557 -0.076456
+vn -0.896812 0.434204 -0.084831
+vn -0.910979 0.392972 -0.125262
+vn -0.923079 0.379229 -0.064115
+vn -0.962096 0.255882 -0.094314
+vn -0.772796 0.604966 -0.191838
+vn -0.766765 0.625850 -0.142770
+vn -0.735320 0.652731 -0.182338
+vn -0.742114 0.648121 -0.170896
+vn -0.967023 0.174687 -0.185338
+vn -0.831764 0.527148 -0.174022
+vn -0.944920 0.278170 -0.172476
+vn -0.942752 0.268952 -0.197191
+vn -0.893314 0.414719 -0.173203
+vn -0.956492 0.189753 -0.221622
+vn -0.956492 0.189753 -0.221622
+vn -0.893314 0.414719 -0.173203
+vn -0.975526 0.120357 -0.184020
+vn -0.910979 0.392972 -0.125262
+vn 0.244953 -0.798283 0.550221
+vn -0.162026 -0.928527 0.334045
+vn 0.196145 -0.663107 0.722369
+vn -0.457056 -0.772194 0.441381
+vn 0.019986 -0.964498 0.263333
+vn 0.025542 -0.981951 0.187405
+vn -0.162026 -0.928527 0.334045
+vn -0.433849 -0.874006 0.218834
+vn 0.244953 -0.798283 0.550221
+vn 0.196145 -0.663107 0.722369
+vn 0.747892 -0.256115 0.612424
+vn 0.570201 -0.085696 0.817023
+vn 0.747892 -0.256115 0.612424
+vn 0.823751 0.089751 0.559803
+vn 0.970140 -0.146616 0.193214
+vn 0.995353 -0.049680 0.082492
+vn 0.970140 -0.146616 0.193214
+vn 0.995353 -0.049680 0.082492
+vn 0.952970 -0.300804 0.036952
+vn 0.951267 -0.236542 -0.197836
+vn 0.952970 -0.300804 0.036952
+vn 0.669680 -0.651512 -0.356455
+vn 0.746015 -0.630487 0.214355
+vn 0.278749 -0.882358 -0.379135
+vn 0.278749 -0.882358 -0.379135
+vn 0.034626 -0.876606 -0.479962
+vn -0.619942 -0.744190 -0.248703
+vn -0.655098 -0.681031 -0.327174
+vn 0.974830 0.213126 -0.065456
+vn 0.857758 0.429569 0.282350
+vn 0.997472 0.014766 0.069513
+vn 0.806009 0.323683 0.495559
+vn 0.734046 0.366383 0.571787
+vn 0.991879 -0.041944 0.120074
+vn 0.806009 0.323683 0.495559
+vn 0.997472 0.014766 0.069513
+vn 0.047614 0.626643 0.777851
+vn -0.006625 0.732093 0.681173
+vn 0.704940 0.435791 0.559594
+vn 0.693221 0.525207 0.493560
+vn 0.953428 -0.005535 -0.301569
+vn 0.974830 0.213126 -0.065456
+vn 0.944181 -0.248427 -0.216346
+vn 0.997472 0.014766 0.069513
+vn 0.953428 -0.005535 -0.301569
+vn 0.711398 -0.364202 -0.601058
+vn 0.875741 0.309345 -0.370652
+vn 0.708749 -0.119292 -0.695302
+vn 0.970288 0.228515 -0.079516
+vn 0.875741 0.309345 -0.370652
+vn 0.909617 -0.087707 -0.406084
+vn 0.708749 -0.119292 -0.695302
+vn 0.970288 0.228515 -0.079516
+vn 0.991684 0.110790 0.065479
+vn 0.944740 0.321101 0.066041
+vn 0.983308 0.166232 0.073973
+vn 0.641376 0.760988 -0.097644
+vn 0.625464 0.766041 -0.148246
+vn 0.446569 0.886516 -0.121102
+vn 0.433118 0.855908 -0.282542
+vn 0.800030 0.599577 0.021432
+vn 0.761389 0.648206 -0.010797
+vn 0.641376 0.760988 -0.097644
+vn 0.625464 0.766041 -0.148246
+vn 0.761389 0.648206 -0.010797
+vn 0.944740 0.321101 0.066041
+vn 0.702189 0.588239 0.401131
+vn 0.983308 0.166232 0.073973
+vn -0.286394 0.949265 -0.129902
+vn -0.271194 0.920889 -0.280031
+vn -0.577621 0.810865 -0.094079
+vn -0.469968 0.845785 -0.252543
+vn 0.000000 0.955885 -0.293741
+vn 0.253848 0.923674 -0.287033
+vn 0.000000 0.885897 -0.463882
+vn 0.254775 0.852060 -0.457257
+vn 0.253848 0.923674 -0.287033
+vn 0.433118 0.855908 -0.282542
+vn 0.254775 0.852060 -0.457257
+vn 0.506867 0.743158 -0.436809
+vn -0.911132 0.406637 0.066973
+vn -0.847059 0.530493 0.032681
+vn -0.960233 0.269891 0.071501
+vn -0.874747 0.465599 0.134294
+vn -0.853143 0.426345 -0.300628
+vn -0.944920 0.278170 -0.172476
+vn -0.973585 0.140438 -0.180026
+vn -0.967023 0.174687 -0.185338
+vn 0.928833 0.369458 0.027739
+vn 0.946597 0.273061 0.171440
+vn 0.645302 0.748698 0.151779
+vn 0.907926 0.347132 0.234881
+vn -0.053053 0.964277 -0.259530
+vn 0.046370 0.488034 -0.871592
+vn 0.928833 0.369458 0.027739
+vn 0.966024 0.199941 -0.163773
+vn 0.930486 -0.364575 0.035781
+vn 0.966387 -0.164751 -0.197367
+vn 0.037107 -0.968444 -0.246454
+vn 0.203171 -0.345965 -0.915986
+vn -0.158586 -0.715744 0.680119
+vn -0.881226 -0.430174 0.195935
+vn -0.118760 -0.868474 0.481299
+vn -0.670872 -0.710776 0.211490
+vn -0.806005 -0.240815 -0.540707
+vn 0.203171 -0.345965 -0.915986
+vn -0.635621 -0.657437 -0.404675
+vn 0.105596 -0.850791 -0.514785
+vn -0.793786 -0.231813 -0.562287
+vn 0.236958 -0.316494 -0.918522
+vn -0.630221 -0.635905 -0.445472
+vn 0.133471 -0.826416 -0.547012
+vn 0.236958 -0.316494 -0.918522
+vn 0.066193 -0.951432 -0.300660
+vn 0.967558 -0.152613 -0.201349
+vn 0.939631 -0.341456 0.022407
+vn -0.152849 -0.858881 0.488837
+vn -0.685096 -0.694279 0.220503
+vn -0.041340 -0.994908 0.091916
+vn -0.703662 -0.706993 -0.070852
+vn -0.703662 -0.706993 -0.070852
+vn -0.630221 -0.635905 -0.445472
+vn -0.041340 -0.994908 0.091916
+vn 0.133471 -0.826416 -0.547012
+vn 0.243674 -0.670962 -0.700309
+vn 0.344350 -0.196976 -0.917945
+vn 0.828963 -0.472641 -0.299049
+vn 0.961411 -0.107436 -0.253271
+vn 0.961411 -0.107436 -0.253271
+vn 0.951558 -0.307468 -0.001356
+vn 0.964673 -0.168078 0.202871
+vn 0.974082 -0.068452 0.215591
+vn 0.768279 -0.585100 0.259624
+vn 0.736359 -0.511340 0.443066
+vn 0.796130 -0.552237 0.247411
+vn 0.971602 -0.077361 0.223619
+vn 0.014244 -0.997712 -0.066086
+vn 0.745094 -0.656775 0.116113
+vn -0.171632 -0.883416 0.436026
+vn 0.535291 -0.700021 0.472689
+vn -0.853146 -0.279892 -0.440229
+vn -0.650532 -0.742604 -0.159211
+vn 0.165149 -0.665978 -0.727461
+vn -0.005947 -0.999161 -0.040521
+vn -0.129537 -0.880903 0.455226
+vn -0.879794 -0.466353 0.092075
+vn -0.199233 -0.630705 0.750011
+vn -0.876919 -0.404241 0.260003
+vn 0.006059 -0.999002 -0.044250
+vn 0.680900 -0.725006 0.103647
+vn 0.152900 -0.827853 -0.539704
+vn 0.955680 -0.287255 -0.064501
+vn -0.232347 -0.714943 0.659447
+vn -0.155371 -0.896006 0.415972
+vn 0.771202 -0.362962 0.522978
+vn 0.600534 -0.675223 0.428291
+vn -0.779873 -0.176014 -0.600681
+vn 0.305566 -0.207318 -0.929327
+vn -0.626358 -0.544035 -0.558303
+vn 0.203332 -0.709112 -0.675141
+vn 0.973449 -0.099447 -0.206171
+vn 0.305566 -0.207318 -0.929327
+vn 0.966258 -0.256233 -0.026252
+vn 0.178670 -0.835190 -0.520130
+vn 0.775479 -0.494405 0.392677
+vn 0.769738 -0.621354 0.146365
+vn 0.660697 -0.744657 0.094684
+vn 0.793253 -0.588528 0.156153
+vn 0.775479 -0.494405 0.392677
+vn 0.706872 -0.409539 0.576723
+vn 0.974082 -0.068452 0.215591
+vn 0.964673 -0.168078 0.202871
+vn 0.706872 -0.409539 0.576723
+vn 0.535291 -0.700021 0.472689
+vn 0.964673 -0.168078 0.202871
+vn 0.745094 -0.656775 0.116113
+vn -0.861018 -0.213942 -0.461386
+vn -0.690966 -0.704731 -0.160999
+vn 0.243725 -0.420691 -0.873852
+vn -0.017493 -0.999124 -0.038028
+vn -0.916337 -0.388635 0.096382
+vn -0.189823 -0.805930 0.560753
+vn -0.690966 -0.704731 -0.160999
+vn -0.017493 -0.999124 -0.038028
+vn -0.216151 -0.821108 0.528261
+vn -0.923771 -0.375143 0.076903
+vn -0.272749 -0.614472 0.740292
+vn -0.916499 -0.349951 0.193816
+vn -0.962493 -0.183926 -0.199445
+vn -0.620252 -0.105698 -0.777248
+vn -0.762530 -0.612735 -0.207613
+vn -0.529088 -0.396284 -0.750349
+vn -0.039842 -0.999077 -0.016046
+vn 0.737434 -0.662925 0.129310
+vn 0.193675 -0.607261 -0.770535
+vn 0.964440 -0.230555 -0.129225
+vn -0.286636 -0.512798 0.809245
+vn 0.600640 -0.368366 0.709604
+vn -0.278440 -0.745981 0.604965
+vn 0.724872 -0.553715 0.409829
+vn -0.876963 -0.335922 0.343646
+vn -0.752108 -0.587893 0.297852
+vn -0.286636 -0.512798 0.809245
+vn -0.227701 -0.791296 0.567454
+vn 0.072501 -0.996781 -0.034234
+vn 0.371080 -0.927873 0.036764
+vn 0.073077 -0.996713 -0.034966
+vn 0.365062 -0.930326 0.034971
+vn 0.073077 -0.996713 -0.034966
+vn 0.365062 -0.930326 0.034971
+vn 0.072814 -0.996762 -0.034104
+vn 0.357227 -0.933417 0.033499
+vn 0.071827 -0.996870 -0.033022
+vn 0.072814 -0.996762 -0.034104
+vn 0.348825 -0.936643 0.031956
+vn 0.357227 -0.933417 0.033499
+vn 0.339618 -0.940261 0.023837
+vn 0.341514 -0.939396 0.030055
+vn 0.900010 -0.399814 0.173582
+vn 0.873905 -0.444969 0.195686
+vn 0.339618 -0.940261 0.023837
+vn 0.900010 -0.399814 0.173582
+vn 0.349152 -0.936943 0.015211
+vn 0.877024 -0.459836 0.139208
+vn 0.366078 -0.930457 0.015397
+vn 0.349152 -0.936943 0.015211
+vn 0.829819 -0.537407 0.150310
+vn 0.877024 -0.459836 0.139208
+vn 0.379562 -0.924867 0.023528
+vn 0.366078 -0.930457 0.015397
+vn 0.861958 -0.473774 0.180464
+vn 0.829819 -0.537407 0.150310
+vn 0.388513 -0.920881 0.032173
+vn 0.379562 -0.924867 0.023528
+vn 0.887581 -0.428464 0.169171
+vn 0.861958 -0.473774 0.180464
+vn 0.075587 -0.996719 -0.028955
+vn 0.398826 -0.915890 0.045642
+vn 0.074720 -0.996734 -0.030618
+vn 0.391301 -0.919262 0.042916
+vn 0.074720 -0.996734 -0.030618
+vn 0.391301 -0.919262 0.042916
+vn 0.072937 -0.996824 -0.031977
+vn 0.380457 -0.923937 0.039901
+vn 0.921039 -0.361483 0.144975
+vn 0.935295 -0.320290 0.150459
+vn 0.964440 -0.230555 -0.129225
+vn 0.974774 -0.065877 0.213249
+vn 0.426977 -0.902699 0.053160
+vn 0.921039 -0.361483 0.144975
+vn 0.416166 -0.907604 0.055331
+vn 0.885310 -0.433753 0.167587
+vn 0.796130 -0.552237 0.247411
+vn 0.971602 -0.077361 0.223619
+vn 0.753595 -0.617676 0.224878
+vn 0.939631 -0.341456 0.022407
+vn 0.753595 -0.617676 0.224878
+vn 0.939631 -0.341456 0.022407
+vn 0.656569 -0.716859 0.234586
+vn 0.513553 -0.832225 0.208961
+vn 0.860656 -0.482528 0.162596
+vn 0.974082 -0.068452 0.215591
+vn 0.821710 -0.537549 0.189299
+vn 0.951558 -0.307468 -0.001356
+vn 0.769738 -0.621354 0.146365
+vn 0.775479 -0.494405 0.392677
+vn 0.860656 -0.482528 0.162596
+vn 0.974082 -0.068452 0.215591
+vn 0.656569 -0.716859 0.234586
+vn 0.513553 -0.832225 0.208961
+vn 0.683726 -0.684035 0.254194
+vn 0.717272 -0.536511 0.444609
+vn -0.563773 0.776209 -0.282240
+vn -0.585146 0.757448 -0.289616
+vn 0.137137 0.990205 -0.026224
+vn 0.121601 0.992037 -0.032790
+vn 0.777779 0.575966 0.251641
+vn 0.783972 0.566180 0.254616
+vn 0.121601 0.992037 -0.032790
+vn 0.137137 0.990205 -0.026224
+vn 0.771391 0.585901 0.248345
+vn 0.921859 0.192533 0.336315
+vn 0.777779 0.575966 0.251641
+vn 0.922377 0.189070 0.336857
+vn 0.034983 0.991866 -0.122383
+vn 0.035263 0.991480 -0.125394
+vn 0.164248 0.984841 -0.055781
+vn 0.201662 0.978145 -0.050642
+vn 0.034983 0.991866 -0.122383
+vn -0.018127 0.989941 -0.140314
+vn -0.096237 0.985332 -0.140924
+vn -0.109479 0.985439 -0.130093
+vn -0.920641 0.301706 -0.247777
+vn -0.923405 0.293362 -0.247510
+vn -0.805879 0.539640 -0.243612
+vn -0.815302 0.524759 -0.244768
+vn -0.805879 0.539640 -0.243612
+vn -0.815302 0.524759 -0.244768
+vn -0.479661 0.854039 -0.201354
+vn -0.502750 0.841637 -0.197206
+vn -0.479661 0.854039 -0.201354
+vn -0.502750 0.841637 -0.197206
+vn -0.243309 0.956326 -0.161990
+vn -0.274377 0.949060 -0.154925
+vn 0.713387 0.402805 0.573435
+vn 0.907926 0.347132 0.234881
+vn 0.560110 0.772471 0.299275
+vn 0.624185 0.768845 0.138817
+vn -0.645764 0.733530 -0.211950
+vn -0.652957 0.726787 -0.213138
+vn -0.920641 0.301706 -0.247777
+vn -0.923405 0.293362 -0.247510
+vn -0.920729 0.007312 -0.390135
+vn -0.920773 0.066853 -0.384329
+vn -0.922264 0.385605 0.027162
+vn -0.915221 0.236230 -0.326445
+vn 0.305411 0.600304 -0.739161
+vn -0.571451 0.263476 -0.777190
+vn -0.085776 0.992406 0.088161
+vn -0.847960 0.437869 -0.298720
+vn -0.808208 0.196704 -0.555074
+vn -0.913069 0.135296 -0.384708
+vn -0.920729 0.007312 -0.390135
+vn -0.920773 0.066853 -0.384329
+vn -0.907158 0.275212 -0.318311
+vn -0.639566 0.761664 -0.104035
+vn -0.913069 0.135296 -0.384708
+vn -0.659229 0.740088 -0.132991
+vn -0.922264 0.385605 0.027162
+vn -0.915221 0.236230 -0.326445
+vn -0.661261 0.723292 -0.198954
+vn -0.859341 0.377127 -0.345411
+vn -0.661261 0.723292 -0.198954
+vn -0.859341 0.377127 -0.345411
+vn -0.782571 0.152434 -0.603612
+vn -0.866983 0.339248 -0.365036
+vn -0.571326 0.814573 -0.100285
+vn -0.916740 0.108060 -0.384592
+vn -0.541613 0.831991 -0.120192
+vn -0.883471 0.139515 -0.447230
+vn -0.535664 0.827524 -0.168129
+vn 0.124092 0.975090 0.183848
+vn -0.541613 0.831991 -0.120192
+vn 0.142975 0.962043 0.232447
+vn -0.632354 0.022331 -0.774357
+vn -0.595140 0.250382 -0.763621
+vn 0.321551 0.060504 -0.944957
+vn 0.240231 0.594760 -0.767170
+vn -0.003765 0.999979 0.005239
+vn -0.834398 0.485073 -0.261696
+vn 0.168249 0.912631 -0.372554
+vn -0.487715 0.340954 -0.803669
+vn -0.834398 0.485073 -0.261696
+vn -0.935081 0.170405 -0.310783
+vn -0.487715 0.340954 -0.803669
+vn -0.633989 0.051668 -0.771614
+vn -0.854770 0.473593 0.212318
+vn -0.166038 0.759846 0.628543
+vn -0.847931 0.438232 -0.298270
+vn 0.023498 0.997047 -0.073113
+vn 0.567719 0.465297 0.679112
+vn 0.842165 0.454910 0.289510
+vn -0.166038 0.759846 0.628543
+vn 0.023498 0.997047 -0.073113
+vn -0.773106 0.147549 -0.616876
+vn -0.855756 0.382230 -0.348687
+vn -0.931432 0.029722 -0.362701
+vn -0.882806 0.325883 -0.338311
+vn -0.861414 0.412531 -0.296284
+vn -0.891430 0.284746 -0.352523
+vn -0.311923 0.948811 -0.049612
+vn -0.485965 0.870545 -0.077392
+vn -0.861414 0.412531 -0.296284
+vn -0.311923 0.948811 -0.049612
+vn -0.804399 0.521969 -0.283707
+vn -0.288198 0.957383 0.018985
+vn -0.804399 0.521969 -0.283707
+vn -0.288198 0.957383 0.018985
+vn -0.855756 0.382230 -0.348687
+vn -0.309357 0.950275 0.035718
+vn -0.915387 0.011667 -0.402405
+vn -0.913567 0.070681 -0.400498
+vn -0.782571 0.152434 -0.603612
+vn -0.632354 0.022331 -0.774357
+vn -0.913567 0.070681 -0.400498
+vn -0.846626 0.423834 -0.321853
+vn -0.632354 0.022331 -0.774357
+vn -0.595140 0.250382 -0.763621
+vn -0.891430 0.284746 -0.352523
+vn -0.915387 0.011667 -0.402405
+vn -0.866983 0.339248 -0.365036
+vn -0.782571 0.152434 -0.603612
+vn 0.967801 0.037262 -0.248943
+vn 0.939947 0.203661 -0.273901
+vn 0.930790 0.156349 0.330433
+vn 0.842165 0.454910 0.289510
+vn 0.901895 0.174351 -0.395204
+vn 0.281330 -0.017101 -0.959459
+vn 0.967801 0.037262 -0.248943
+vn 0.287537 -0.026317 -0.957408
+vn 0.901895 0.174351 -0.395204
+vn 0.255177 0.397104 -0.881586
+vn 0.281330 -0.017101 -0.959459
+vn 0.259271 0.332001 -0.906948
+vn -0.882806 0.325883 -0.338311
+vn -0.317393 0.947906 -0.027120
+vn -0.817029 0.393944 -0.421036
+vn -0.214149 0.929527 -0.300201
+vn -0.817029 0.393944 -0.421036
+vn -0.214149 0.929527 -0.300201
+vn -0.296326 0.468561 -0.832251
+vn 0.255177 0.397104 -0.881586
+vn -0.519309 0.812258 -0.265620
+vn -0.541139 0.795038 -0.274011
+vn 0.166961 0.985887 -0.012272
+vn 0.153175 0.988016 -0.019012
+vn -0.541139 0.795038 -0.274011
+vn -0.563773 0.776209 -0.282240
+vn 0.153175 0.988016 -0.019012
+vn 0.137137 0.990205 -0.026224
+vn -0.514184 0.820920 -0.248405
+vn -0.519309 0.812258 -0.265620
+vn 0.160298 0.986954 0.015016
+vn 0.166961 0.985887 -0.012272
+vn -0.343104 0.463693 0.816865
+vn -0.437228 0.659166 0.611826
+vn -0.818108 0.433162 0.378246
+vn -0.740024 0.660489 0.126957
+vn -0.223050 0.374576 0.899967
+vn -0.343104 0.463693 0.816865
+vn -0.790469 0.364539 0.492210
+vn -0.818108 0.433162 0.378246
+vn 0.006009 0.203368 0.979084
+vn -0.223050 0.374576 0.899967
+vn -0.737747 0.246663 0.628400
+vn -0.790469 0.364539 0.492210
+vn 0.925683 -0.185058 0.329946
+vn 0.762647 0.031448 0.646050
+vn 0.988449 -0.140208 0.057530
+vn 0.791135 0.252472 0.557102
+vn -0.332550 -0.902410 0.273982
+vn -0.391869 -0.771818 0.500734
+vn -0.564956 -0.801669 0.195325
+vn -0.484618 -0.750862 0.448722
+vn 0.025542 -0.981951 0.187405
+vn -0.172033 -0.964490 0.200409
+vn 0.203778 -0.968751 0.141404
+vn -0.094645 -0.981381 0.167133
+vn -0.937745 0.330421 -0.107033
+vn -0.985135 0.138771 -0.101255
+vn -0.901224 0.426557 -0.076456
+vn -0.960980 0.251215 -0.115795
+vn -0.896812 0.434204 -0.084831
+vn -0.901224 0.426557 -0.076456
+vn -0.960980 0.251215 -0.115795
+vn -0.910979 0.392972 -0.125262
+vn -0.886272 0.457655 -0.071227
+vn -0.923079 0.379229 -0.064115
+vn -0.929313 0.354562 -0.103261
+vn -0.886272 0.457655 -0.071227
+vn -0.937204 0.336069 -0.093312
+vn -0.929313 0.354562 -0.103261
+vn -0.772796 0.604966 -0.191838
+vn -0.955087 0.198946 -0.219611
+vn -0.947109 0.250527 -0.200552
+vn -0.894793 0.397793 -0.202746
+vn -0.960613 0.217003 -0.173585
+vn -0.742114 0.648121 -0.170896
+vn -0.967023 0.174687 -0.185338
+vn -0.772796 0.604966 -0.191838
+vn -0.947109 0.250527 -0.200552
+vn -0.894793 0.397793 -0.202746
+vn -0.960613 0.217003 -0.173585
+vn -0.955087 0.198946 -0.219611
+vn -0.772796 0.604966 -0.191838
+vn -0.971661 0.133438 -0.195111
+vn -0.735320 0.652731 -0.182338
+vn -0.971661 0.133438 -0.195111
+vn -0.735320 0.652731 -0.182338
+vn -0.963152 0.205946 -0.172989
+vn -0.963152 0.205946 -0.172989
+vn -0.735320 0.652731 -0.182338
+vn -0.942752 0.268952 -0.197191
+vn -0.893314 0.414719 -0.173203
+vn -0.975526 0.120357 -0.184020
+vn -0.980059 0.085286 -0.179475
+vn -0.956492 0.189753 -0.221622
+vn -0.874346 0.272889 -0.401312
+vn -0.962096 0.255882 -0.094314
+vn -0.925371 0.362938 0.109380
+vn -0.975526 0.120357 -0.184020
+vn -0.980059 0.085286 -0.179475
+vn -0.936551 0.346598 -0.052362
+vn -0.210709 0.961733 0.175133
+vn -0.993913 0.088405 0.065743
+vn -0.907196 0.318341 0.275054
+vn -0.137752 0.956264 0.258036
+vn -0.448293 0.487287 0.749390
+vn -0.228585 0.951240 0.207104
+vn -0.719119 0.438275 0.539242
+vn -0.228585 0.951240 0.207104
+vn -0.719119 0.438275 0.539242
+vn -0.210709 0.961733 0.175133
+vn -0.907196 0.318341 0.275054
+vn 0.747892 -0.256115 0.612424
+vn 0.570201 -0.085696 0.817023
+vn 0.823751 0.089751 0.559803
+vn 0.664225 0.171408 0.727616
+vn 0.952970 -0.300804 0.036952
+vn 0.951267 -0.236542 -0.197836
+vn 0.669680 -0.651512 -0.356455
+vn 0.718045 -0.506404 -0.477458
+vn -0.006625 0.732093 0.681173
+vn -0.711783 0.467317 0.524385
+vn -0.029251 0.845343 0.533422
+vn -0.716198 0.575457 0.394854
+vn -0.711783 0.467317 0.524385
+vn -0.990812 -0.117397 0.067149
+vn -0.716198 0.575457 0.394854
+vn -0.996591 -0.075409 0.033457
+vn -0.990812 -0.117397 0.067149
+vn -0.655098 -0.681031 -0.327174
+vn -0.996591 -0.075409 0.033457
+vn -0.645037 -0.707081 -0.289764
+vn 0.278749 -0.882358 -0.379135
+vn 0.774611 -0.569866 -0.274283
+vn 0.034626 -0.876606 -0.479962
+vn 0.725444 -0.615825 -0.307393
+vn 0.278749 -0.882358 -0.379135
+vn 0.669680 -0.651512 -0.356455
+vn 0.774611 -0.569866 -0.274283
+vn 0.891163 -0.405983 -0.202501
+vn 0.991879 -0.041944 0.120074
+vn 0.734046 0.366383 0.571787
+vn 0.992308 -0.052410 0.112149
+vn 0.704940 0.435791 0.559594
+vn 0.944181 -0.248427 -0.216346
+vn 0.718045 -0.506404 -0.477458
+vn 0.953428 -0.005535 -0.301569
+vn 0.711398 -0.364202 -0.601058
+vn 0.909617 -0.087707 -0.406084
+vn 0.999721 0.007193 -0.022516
+vn 0.970288 0.228515 -0.079516
+vn 0.991684 0.110790 0.065479
+vn 0.761389 0.648206 -0.010797
+vn 0.702189 0.588239 0.401131
+vn 0.777524 0.617602 0.118423
+vn 0.601033 0.636199 0.483746
+vn 0.000000 0.955885 -0.293741
+vn 0.000000 0.885897 -0.463882
+vn -0.271194 0.920889 -0.280031
+vn -0.262500 0.848417 -0.459654
+vn 0.625464 0.766041 -0.148246
+vn 0.709667 0.663398 -0.237226
+vn 0.433118 0.855908 -0.282542
+vn 0.682002 0.645880 -0.343091
+vn -0.847059 0.530493 0.032681
+vn -0.767679 0.640562 -0.018697
+vn -0.874747 0.465599 0.134294
+vn -0.821854 0.567451 0.050547
+vn -0.767679 0.640562 -0.018697
+vn -0.577621 0.810865 -0.094079
+vn -0.687552 0.719688 -0.096543
+vn -0.469968 0.845785 -0.252543
+vn -0.911132 0.406637 0.066973
+vn -0.960233 0.269891 0.071501
+vn -0.911370 0.411199 -0.017885
+vn -0.967682 0.236333 -0.087969
+vn -0.853143 0.426345 -0.300628
+vn -0.973585 0.140438 -0.180026
+vn -0.825536 0.279310 -0.490384
+vn -0.940677 0.283994 -0.185675
+vn 0.928833 0.369458 0.027739
+vn 0.974473 0.065722 0.214668
+vn 0.946597 0.273061 0.171440
+vn 0.955021 0.224620 0.193599
+vn -0.825536 0.279310 -0.490384
+vn -0.629528 0.629329 -0.455675
+vn 0.046370 0.488034 -0.871592
+vn 0.014826 0.803509 -0.595107
+vn 0.966387 -0.164751 -0.197367
+vn 0.930486 -0.364575 0.035781
+vn 0.954873 -0.194391 0.224567
+vn 0.970037 -0.089199 0.225990
+vn -0.158586 -0.715744 0.680119
+vn -0.118760 -0.868474 0.481299
+vn 0.750799 -0.386900 0.535359
+vn 0.537277 -0.702769 0.466314
+vn 0.966387 -0.164751 -0.197367
+vn 0.762014 -0.632439 -0.139127
+vn 0.203171 -0.345965 -0.915986
+vn 0.105596 -0.850791 -0.514785
+vn -0.118760 -0.868474 0.481299
+vn -0.670872 -0.710776 0.211490
+vn -0.038667 -0.994699 0.095284
+vn -0.692261 -0.718818 -0.063831
+vn -0.692261 -0.718818 -0.063831
+vn -0.635621 -0.657437 -0.404675
+vn -0.038667 -0.994699 0.095284
+vn 0.105596 -0.850791 -0.514785
+vn 0.717272 -0.536511 0.444609
+vn 0.750799 -0.386900 0.535359
+vn 0.970037 -0.089199 0.225990
+vn 0.954873 -0.194391 0.224567
+vn 0.967558 -0.152613 -0.201349
+vn 0.780414 -0.603640 -0.163011
+vn 0.236958 -0.316494 -0.918522
+vn 0.133471 -0.826416 -0.547012
+vn 0.733073 -0.391150 0.556423
+vn 0.522664 -0.699217 0.487769
+vn 0.956324 -0.186311 0.225240
+vn 0.686426 -0.696374 0.209484
+vn -0.152849 -0.858881 0.488837
+vn -0.041340 -0.994908 0.091916
+vn 0.522664 -0.699217 0.487769
+vn 0.686426 -0.696374 0.209484
+vn 0.243674 -0.670962 -0.700309
+vn 0.828963 -0.472641 -0.299049
+vn 0.014244 -0.997712 -0.066086
+vn 0.745094 -0.656775 0.116113
+vn 0.828963 -0.472641 -0.299049
+vn 0.961411 -0.107436 -0.253271
+vn 0.745094 -0.656775 0.116113
+vn 0.964673 -0.168078 0.202871
+vn 0.971602 -0.077361 0.223619
+vn 0.956324 -0.186311 0.225240
+vn 0.939631 -0.341456 0.022407
+vn 0.967558 -0.152613 -0.201349
+vn -0.977780 -0.103973 -0.182035
+vn -0.853146 -0.279892 -0.440229
+vn -0.961627 -0.197161 -0.190792
+vn -0.747140 -0.100527 -0.657021
+vn -0.853146 -0.279892 -0.440229
+vn 0.165149 -0.665978 -0.727461
+vn -0.747140 -0.100527 -0.657021
+vn 0.242166 -0.052388 -0.968820
+vn -0.129537 -0.880903 0.455226
+vn -0.199233 -0.630705 0.750011
+vn 0.786961 -0.429164 0.443294
+vn 0.688350 -0.374452 0.621257
+vn -0.005947 -0.999161 -0.040521
+vn -0.129537 -0.880903 0.455226
+vn 0.707826 -0.697487 0.111773
+vn 0.786961 -0.429164 0.443294
+vn -0.876919 -0.404241 0.260003
+vn -0.725477 -0.645132 0.239766
+vn -0.199233 -0.630705 0.750011
+vn -0.152133 -0.848005 0.507685
+vn -0.876919 -0.404241 0.260003
+vn -0.959020 -0.211555 -0.188479
+vn -0.725477 -0.645132 0.239766
+vn -0.750474 -0.631410 -0.195219
+vn -0.959020 -0.211555 -0.188479
+vn -0.714384 -0.136786 -0.686254
+vn -0.750474 -0.631410 -0.195219
+vn -0.584350 -0.417581 -0.695817
+vn -0.714384 -0.136786 -0.686254
+vn 0.275713 -0.098445 -0.956186
+vn -0.584350 -0.417581 -0.695817
+vn 0.202575 -0.562863 -0.801342
+vn 0.275713 -0.098445 -0.956186
+vn 0.152900 -0.827853 -0.539704
+vn 0.944724 -0.063309 -0.321696
+vn 0.955680 -0.287255 -0.064501
+vn 0.814805 -0.440382 0.377037
+vn 0.861958 -0.473774 0.180464
+vn 0.680900 -0.725006 0.103647
+vn 0.829819 -0.537407 0.150310
+vn 0.814805 -0.440382 0.377037
+vn 0.771202 -0.362962 0.522978
+vn 0.974980 -0.061882 0.213506
+vn 0.967090 -0.154450 0.202194
+vn -0.155371 -0.896006 0.415972
+vn -0.734459 -0.667724 0.121303
+vn 0.001107 -0.997735 -0.067261
+vn -0.731018 -0.654805 -0.191945
+vn -0.731018 -0.654805 -0.191945
+vn -0.626358 -0.544035 -0.558303
+vn 0.001107 -0.997735 -0.067261
+vn 0.203332 -0.709112 -0.675141
+vn 0.973449 -0.099447 -0.206171
+vn 0.837130 -0.492230 -0.238584
+vn 0.305566 -0.207318 -0.929327
+vn 0.203332 -0.709112 -0.675141
+vn 0.966258 -0.256233 -0.026252
+vn 0.660697 -0.744657 0.094684
+vn 0.866453 -0.479331 0.139645
+vn 0.793253 -0.588528 0.156153
+vn -0.916337 -0.388635 0.096382
+vn -0.977780 -0.103973 -0.182035
+vn -0.904013 -0.365907 0.221073
+vn -0.961627 -0.197161 -0.190792
+vn -0.861018 -0.213942 -0.461386
+vn 0.243725 -0.420691 -0.873852
+vn -0.742937 -0.068841 -0.665812
+vn 0.282923 0.003043 -0.959138
+vn -0.189823 -0.805930 0.560753
+vn -0.916337 -0.388635 0.096382
+vn -0.235684 -0.610849 0.755855
+vn -0.904013 -0.365907 0.221073
+vn -0.216151 -0.821108 0.528261
+vn -0.272749 -0.614472 0.740292
+vn 0.820723 -0.357059 0.446008
+vn 0.743021 -0.329868 0.582328
+vn -0.039842 -0.999077 -0.016046
+vn -0.216151 -0.821108 0.528261
+vn 0.737434 -0.662925 0.129310
+vn 0.820723 -0.357059 0.446008
+vn -0.272749 -0.614472 0.740292
+vn -0.916499 -0.349951 0.193816
+vn -0.197570 -0.859525 0.471362
+vn -0.780048 -0.603250 0.166180
+vn -0.916499 -0.349951 0.193816
+vn -0.963237 -0.187150 -0.192742
+vn -0.780048 -0.603250 0.166180
+vn -0.785740 -0.585542 -0.199384
+vn -0.963237 -0.187150 -0.192742
+vn -0.742937 -0.068841 -0.665812
+vn -0.785740 -0.585542 -0.199384
+vn -0.652051 -0.421195 -0.630415
+vn -0.620252 -0.105698 -0.777248
+vn 0.267922 -0.071107 -0.960813
+vn -0.529088 -0.396284 -0.750349
+vn 0.184243 -0.548275 -0.815751
+vn 0.267922 -0.071107 -0.960813
+vn 0.193675 -0.607261 -0.770535
+vn 0.912710 -0.063134 -0.403702
+vn 0.964440 -0.230555 -0.129225
+vn 0.600640 -0.368366 0.709604
+vn -0.286636 -0.512798 0.809245
+vn 0.467143 -0.632333 0.618007
+vn -0.227701 -0.791296 0.567454
+vn 0.724872 -0.553715 0.409829
+vn 0.600640 -0.368366 0.709604
+vn 0.974774 -0.065877 0.213249
+vn 0.964763 -0.157254 0.210957
+vn -0.762530 -0.612735 -0.207613
+vn -0.055663 -0.994530 -0.088380
+vn -0.752108 -0.587893 0.297852
+vn -0.227701 -0.791296 0.567454
+vn 0.371080 -0.927873 0.036764
+vn 0.072501 -0.996781 -0.034234
+vn 0.380457 -0.923937 0.039901
+vn 0.072937 -0.996824 -0.031977
+vn 0.341514 -0.939396 0.030055
+vn 0.348825 -0.936643 0.031956
+vn 0.873905 -0.444969 0.195686
+vn 0.846712 -0.508212 0.157477
+vn 0.887581 -0.428464 0.169171
+vn 0.974980 -0.061882 0.213506
+vn 0.866453 -0.479331 0.139645
+vn 0.966258 -0.256233 -0.026252
+vn 0.416166 -0.907604 0.055331
+vn 0.885310 -0.433753 0.167587
+vn 0.406730 -0.912146 0.050599
+vn 0.907504 -0.366430 0.205341
+vn 0.406730 -0.912146 0.050599
+vn 0.907504 -0.366430 0.205341
+vn 0.398826 -0.915890 0.045642
+vn 0.926486 -0.328694 0.183260
+vn 0.777779 0.575966 0.251641
+vn 0.922377 0.189070 0.336857
+vn 0.783972 0.566180 0.254616
+vn 0.923094 0.185621 0.336813
+vn 0.670189 0.717069 0.191462
+vn 0.393853 0.917540 0.054776
+vn 0.678243 0.708552 0.194784
+vn 0.420132 0.904893 0.068256
+vn 0.377869 0.923681 0.063466
+vn 0.164248 0.984841 -0.055781
+vn 0.393853 0.917540 0.054776
+vn 0.201662 0.978145 -0.050642
+vn 0.034983 0.991866 -0.122383
+vn -0.096237 0.985332 -0.140924
+vn 0.035263 0.991480 -0.125394
+vn -0.127562 0.979038 -0.158782
+vn -0.243309 0.956326 -0.161990
+vn -0.274377 0.949060 -0.154925
+vn -0.109479 0.985439 -0.130093
+vn -0.096237 0.985332 -0.140924
+vn 0.907926 0.347132 0.234881
+vn 0.946597 0.273061 0.171440
+vn 0.624185 0.768845 0.138817
+vn 0.615709 0.783971 0.079324
+vn -0.171135 0.938511 0.299850
+vn 0.560110 0.772471 0.299275
+vn -0.004776 0.999797 -0.019587
+vn 0.624185 0.768845 0.138817
+vn -0.171135 0.938511 0.299850
+vn -0.004776 0.999797 -0.019587
+vn -0.676717 0.736193 -0.008656
+vn -0.627188 0.762797 -0.157404
+vn -0.636702 0.741852 -0.210393
+vn -0.627188 0.762797 -0.157404
+vn 0.007978 0.997163 -0.074842
+vn -0.004776 0.999797 -0.019587
+vn -0.645764 0.733530 -0.211950
+vn -0.636702 0.741852 -0.210393
+vn -0.001206 0.997010 -0.077268
+vn 0.007978 0.997163 -0.074842
+vn -0.652957 0.726787 -0.213138
+vn -0.645764 0.733530 -0.211950
+vn -0.009804 0.996791 -0.079446
+vn -0.001206 0.997010 -0.077268
+vn 0.921859 0.192533 0.336315
+vn 0.888512 0.338503 0.309777
+vn 0.922377 0.189070 0.336857
+vn 0.889630 0.334852 0.310537
+vn 0.888512 0.338503 0.309777
+vn 0.678243 0.708552 0.194784
+vn 0.889630 0.334852 0.310537
+vn 0.685085 0.700689 0.199234
+vn -0.541613 0.831991 -0.120192
+vn 0.142975 0.962043 0.232447
+vn -0.571326 0.814573 -0.100285
+vn 0.158367 0.955658 0.248271
+vn -0.571326 0.814573 -0.100285
+vn 0.158367 0.955658 0.248271
+vn -0.611039 0.785792 -0.095726
+vn 0.162603 0.953989 0.251923
+vn -0.611039 0.785792 -0.095726
+vn 0.162603 0.953989 0.251923
+vn -0.639566 0.761664 -0.104035
+vn 0.160384 0.955230 0.248620
+vn -0.846626 0.423834 -0.321853
+vn -0.070044 0.995192 0.068456
+vn -0.595140 0.250382 -0.763621
+vn 0.240231 0.594760 -0.767170
+vn -0.003765 0.999979 0.005239
+vn 0.168249 0.912631 -0.372554
+vn 0.840590 0.483194 0.244809
+vn 0.878159 0.292607 -0.378441
+vn -0.935081 0.170405 -0.310783
+vn -0.847931 0.438232 -0.298270
+vn -0.633989 0.051668 -0.771614
+vn -0.594820 0.181689 -0.783057
+vn -0.891430 0.284746 -0.352523
+vn -0.866983 0.339248 -0.365036
+vn -0.485965 0.870545 -0.077392
+vn -0.504863 0.861206 -0.058622
+vn 0.967801 0.037262 -0.248943
+vn 0.287537 -0.026317 -0.957408
+vn 0.939947 0.203661 -0.273901
+vn 0.261674 0.431646 -0.863255
+vn -0.855756 0.382230 -0.348687
+vn -0.309357 0.950275 0.035718
+vn -0.882806 0.325883 -0.338311
+vn -0.317393 0.947906 -0.027120
+vn -0.278617 0.557459 0.782056
+vn 0.303309 0.640646 0.705391
+vn -0.448293 0.487287 0.749390
+vn -0.435206 0.396655 0.808245
+vn 0.303309 0.640646 0.705391
+vn 0.840590 0.483194 0.244809
+vn 0.632332 0.380741 0.674680
+vn 0.949586 0.168945 0.264092
+vn 0.133170 0.986734 0.092852
+vn 0.160298 0.986954 0.015016
+vn 0.782893 0.514543 0.349749
+vn 0.798208 0.531740 0.283050
+vn 0.124092 0.975090 0.183848
+vn 0.133170 0.986734 0.092852
+vn 0.768225 0.487081 0.415430
+vn 0.782893 0.514543 0.349749
+vn -0.911370 0.411199 -0.017885
+vn -0.846494 0.510540 -0.150986
+vn -0.845257 0.486039 0.222053
+vn -0.740024 0.660489 0.126957
+vn 0.006009 0.203368 0.979084
+vn -0.737747 0.246663 0.628400
+vn 0.290809 0.170947 0.941386
+vn -0.601249 0.193949 0.775167
+vn 0.762647 0.031448 0.646050
+vn 0.290809 0.170947 0.941386
+vn 0.791135 0.252472 0.557102
+vn 0.187861 0.418921 0.888377
+vn -0.003133 -0.878618 0.477514
+vn 0.988449 -0.140208 0.057530
+vn 0.659102 -0.536915 -0.526599
+vn 0.997471 -0.070302 0.010480
+vn -0.003133 -0.878618 0.477514
+vn -0.581789 -0.813320 -0.005718
+vn -0.484618 -0.750862 0.448722
+vn -0.741010 -0.570695 0.353853
+vn -0.332550 -0.902410 0.273982
+vn -0.564956 -0.801669 0.195325
+vn -0.358108 -0.916648 0.177528
+vn -0.700585 -0.705722 0.105533
+vn -0.358108 -0.916648 0.177528
+vn -0.311381 -0.892371 0.326674
+vn -0.298187 -0.935435 0.189858
+vn -0.174446 -0.956549 0.233630
+vn -0.172033 -0.964490 0.200409
+vn -0.361101 -0.915358 0.178119
+vn -0.094645 -0.981381 0.167133
+vn -0.415445 -0.898414 0.142329
+vn -0.298187 -0.935435 0.189858
+vn -0.174446 -0.956549 0.233630
+vn -0.361101 -0.915358 0.178119
+vn -0.208805 -0.967199 0.144662
+vn 0.203778 -0.968751 0.141404
+vn -0.446484 -0.892608 0.062467
+vn 0.025542 -0.981951 0.187405
+vn -0.433849 -0.874006 0.218834
+vn -0.982292 0.154659 -0.105750
+vn -0.561428 0.825189 -0.062149
+vn -0.953078 0.288863 -0.090558
+vn -0.896426 0.370856 0.242664
+vn -0.982292 0.154659 -0.105750
+vn -0.993913 0.088405 0.065743
+vn -0.993434 0.043194 0.105944
+vn -0.688282 0.687478 0.231605
+vn -0.896812 0.434204 -0.084831
+vn -0.910295 0.410353 -0.054532
+vn -0.886272 0.457655 -0.071227
+vn -0.937204 0.336069 -0.093312
+vn -0.929313 0.354562 -0.103261
+vn -0.891732 0.353561 -0.282503
+vn -0.923079 0.379229 -0.064115
+vn -0.594626 0.801841 0.058915
+vn -0.923079 0.379229 -0.064115
+vn -0.594626 0.801841 0.058915
+vn -0.962096 0.255882 -0.094314
+vn -0.925371 0.362938 0.109380
+vn -0.960613 0.217003 -0.173585
+vn -0.864069 0.503307 -0.008234
+vn -0.967023 0.174687 -0.185338
+vn -0.973585 0.140438 -0.180026
+vn -0.942752 0.268952 -0.197191
+vn -0.625215 0.765384 -0.152620
+vn -0.963152 0.205946 -0.172989
+vn -0.916457 0.399227 0.026904
+vn -0.942752 0.268952 -0.197191
+vn -0.956492 0.189753 -0.221622
+vn -0.625215 0.765384 -0.152620
+vn -0.874346 0.272889 -0.401312
+vn 0.196145 -0.663107 0.722369
+vn -0.457056 -0.772194 0.441381
+vn 0.112184 -0.867919 0.483872
+vn -0.451801 -0.804092 0.386409
+vn -0.162026 -0.928527 0.334045
+vn -0.433849 -0.874006 0.218834
+vn -0.457056 -0.772194 0.441381
+vn -0.776526 -0.600706 0.190158
+vn 0.196145 -0.663107 0.722369
+vn 0.675271 -0.526987 0.516037
+vn 0.570201 -0.085696 0.817023
+vn 0.913146 -0.108202 0.393011
+vn 0.995353 -0.049680 0.082492
+vn 0.823751 0.089751 0.559803
+vn 0.997916 0.012689 0.063261
+vn 0.782137 0.304588 0.543588
+vn 0.995353 -0.049680 0.082492
+vn 0.997916 0.012689 0.063261
+vn 0.951267 -0.236542 -0.197836
+vn 0.906309 -0.211141 -0.366093
+vn -0.006625 0.732093 0.681173
+vn -0.029251 0.845343 0.533422
+vn 0.693221 0.525207 0.493560
+vn 0.672543 0.627150 0.392898
+vn 0.034626 -0.876606 -0.479962
+vn 0.038910 -0.912381 -0.407489
+vn -0.655098 -0.681031 -0.327174
+vn -0.645037 -0.707081 -0.289764
+vn 0.944181 -0.248427 -0.216346
+vn 0.997472 0.014766 0.069513
+vn 0.891163 -0.405983 -0.202501
+vn 0.991879 -0.041944 0.120074
+vn 0.992308 -0.052410 0.112149
+vn 0.774611 -0.569866 -0.274283
+vn 0.991879 -0.041944 0.120074
+vn 0.891163 -0.405983 -0.202501
+vn 0.992308 -0.052410 0.112149
+vn 0.704940 0.435791 0.559594
+vn 0.996883 -0.031068 0.072515
+vn 0.693221 0.525207 0.493560
+vn 0.718045 -0.506404 -0.477458
+vn 0.944181 -0.248427 -0.216346
+vn 0.669680 -0.651512 -0.356455
+vn 0.891163 -0.405983 -0.202501
+vn 0.718045 -0.506404 -0.477458
+vn 0.951267 -0.236542 -0.197836
+vn 0.711398 -0.364202 -0.601058
+vn 0.906309 -0.211141 -0.366093
+vn 0.711398 -0.364202 -0.601058
+vn 0.906309 -0.211141 -0.366093
+vn 0.708749 -0.119292 -0.695302
+vn 0.909617 -0.087707 -0.406084
+vn 0.909617 -0.087707 -0.406084
+vn 0.906309 -0.211141 -0.366093
+vn 0.999721 0.007193 -0.022516
+vn 0.997916 0.012689 0.063261
+vn 0.991684 0.110790 0.065479
+vn 0.999721 0.007193 -0.022516
+vn 0.782137 0.304588 0.543588
+vn 0.997916 0.012689 0.063261
+vn 0.991684 0.110790 0.065479
+vn 0.782137 0.304588 0.543588
+vn 0.983308 0.166232 0.073973
+vn 0.702189 0.588239 0.401131
+vn 0.761389 0.648206 -0.010797
+vn 0.722219 0.661800 -0.201051
+vn 0.625464 0.766041 -0.148246
+vn 0.709667 0.663398 -0.237226
+vn 0.777524 0.617602 0.118423
+vn 0.829704 0.540694 -0.138711
+vn 0.761389 0.648206 -0.010797
+vn 0.722219 0.661800 -0.201051
+vn -0.271194 0.920889 -0.280031
+vn -0.262500 0.848417 -0.459654
+vn -0.469968 0.845785 -0.252543
+vn -0.512826 0.733147 -0.446661
+vn 0.000000 0.885897 -0.463882
+vn 0.254775 0.852060 -0.457257
+vn 0.000000 0.914084 -0.405526
+vn 0.340327 0.848922 -0.404363
+vn 0.254775 0.852060 -0.457257
+vn 0.506867 0.743158 -0.436809
+vn 0.340327 0.848922 -0.404363
+vn 0.810444 0.451070 -0.373787
+vn 0.433118 0.855908 -0.282542
+vn 0.682002 0.645880 -0.343091
+vn 0.506867 0.743158 -0.436809
+vn 0.692774 0.607227 -0.389025
+vn -0.767679 0.640562 -0.018697
+vn -0.687552 0.719688 -0.096543
+vn -0.821854 0.567451 0.050547
+vn -0.789265 0.611990 -0.050296
+vn -0.874747 0.465599 0.134294
+vn -0.907051 0.212849 0.363254
+vn -0.960233 0.269891 0.071501
+vn -0.994179 0.081954 0.069934
+vn 0.928833 0.369458 0.027739
+vn 0.966024 0.199941 -0.163773
+vn 0.974473 0.065722 0.214668
+vn 0.958207 0.200878 0.203685
+vn 0.046370 0.488034 -0.871592
+vn 0.014826 0.803509 -0.595107
+vn 0.966024 0.199941 -0.163773
+vn 0.707970 0.670950 -0.220465
+vn -0.629528 0.629329 -0.455675
+vn -0.825536 0.279310 -0.490384
+vn -0.669594 0.723129 -0.169497
+vn -0.940677 0.283994 -0.185675
+vn 0.954873 -0.194391 0.224567
+vn 0.677444 -0.705811 0.207124
+vn 0.966387 -0.164751 -0.197367
+vn 0.762014 -0.632439 -0.139127
+vn -0.118760 -0.868474 0.481299
+vn -0.038667 -0.994699 0.095284
+vn 0.537277 -0.702769 0.466314
+vn 0.677444 -0.705811 0.207124
+vn 0.780414 -0.603640 -0.163011
+vn 0.967558 -0.152613 -0.201349
+vn 0.686426 -0.696374 0.209484
+vn 0.956324 -0.186311 0.225240
+vn 0.133471 -0.826416 -0.547012
+vn 0.780414 -0.603640 -0.163011
+vn -0.041340 -0.994908 0.091916
+vn 0.686426 -0.696374 0.209484
+vn -0.005947 -0.999161 -0.040521
+vn 0.707826 -0.697487 0.111773
+vn 0.165149 -0.665978 -0.727461
+vn 0.976608 -0.205656 -0.062796
+vn 0.944724 -0.063309 -0.321696
+vn 0.843938 -0.367122 -0.391140
+vn 0.275713 -0.098445 -0.956186
+vn 0.202575 -0.562863 -0.801342
+vn 0.955680 -0.287255 -0.064501
+vn 0.680900 -0.725006 0.103647
+vn 0.877024 -0.459836 0.139208
+vn 0.829819 -0.537407 0.150310
+vn 0.861958 -0.473774 0.180464
+vn 0.814805 -0.440382 0.377037
+vn 0.887581 -0.428464 0.169171
+vn 0.974980 -0.061882 0.213506
+vn 0.771202 -0.362962 0.522978
+vn 0.600534 -0.675223 0.428291
+vn 0.967090 -0.154450 0.202194
+vn 0.764157 -0.633640 0.120681
+vn -0.155371 -0.896006 0.415972
+vn 0.001107 -0.997735 -0.067261
+vn 0.600534 -0.675223 0.428291
+vn 0.764157 -0.633640 0.120681
+vn 0.837130 -0.492230 -0.238584
+vn 0.973449 -0.099447 -0.206171
+vn 0.764157 -0.633640 0.120681
+vn 0.967090 -0.154450 0.202194
+vn 0.973449 -0.099447 -0.206171
+vn 0.966258 -0.256233 -0.026252
+vn 0.967090 -0.154450 0.202194
+vn 0.974980 -0.061882 0.213506
+vn -0.017493 -0.999124 -0.038028
+vn 0.741576 -0.661106 0.114038
+vn 0.243725 -0.420691 -0.873852
+vn 0.988383 -0.133653 -0.072354
+vn -0.189823 -0.805930 0.560753
+vn -0.235684 -0.610849 0.755855
+vn 0.812422 -0.357276 0.460787
+vn 0.732913 -0.335253 0.591983
+vn -0.017493 -0.999124 -0.038028
+vn -0.189823 -0.805930 0.560753
+vn 0.741576 -0.661106 0.114038
+vn 0.812422 -0.357276 0.460787
+vn -0.272749 -0.614472 0.740292
+vn -0.197570 -0.859525 0.471362
+vn 0.743021 -0.329868 0.582328
+vn 0.602472 -0.625837 0.495333
+vn -0.762530 -0.612735 -0.207613
+vn -0.529088 -0.396284 -0.750349
+vn -0.055663 -0.994530 -0.088380
+vn 0.184243 -0.548275 -0.815751
+vn 0.912710 -0.063134 -0.403702
+vn 0.807131 -0.386435 -0.446327
+vn 0.267922 -0.071107 -0.960813
+vn 0.184243 -0.548275 -0.815751
+vn 0.964440 -0.230555 -0.129225
+vn 0.737434 -0.662925 0.129310
+vn 0.921039 -0.361483 0.144975
+vn 0.885310 -0.433753 0.167587
+vn 0.600640 -0.368366 0.709604
+vn 0.467143 -0.632333 0.618007
+vn 0.964763 -0.157254 0.210957
+vn 0.752358 -0.646343 0.127270
+vn 0.380457 -0.923937 0.039901
+vn 0.868201 -0.468432 0.163704
+vn 0.371080 -0.927873 0.036764
+vn 0.893584 -0.399362 0.204983
+vn 0.371080 -0.927873 0.036764
+vn 0.893584 -0.399362 0.204983
+vn 0.365062 -0.930326 0.034971
+vn 0.914253 -0.363334 0.179250
+vn 0.365062 -0.930326 0.034971
+vn 0.914253 -0.363334 0.179250
+vn 0.357227 -0.933417 0.033499
+vn 0.896833 -0.418410 0.143607
+vn 0.348825 -0.936643 0.031956
+vn 0.357227 -0.933417 0.033499
+vn 0.846712 -0.508212 0.157477
+vn 0.896833 -0.418410 0.143607
+vn 0.873905 -0.444969 0.195686
+vn 0.786961 -0.429164 0.443294
+vn 0.900010 -0.399814 0.173582
+vn 0.974471 -0.059443 0.216503
+vn 0.900010 -0.399814 0.173582
+vn 0.974471 -0.059443 0.216503
+vn 0.877024 -0.459836 0.139208
+vn 0.955680 -0.287255 -0.064501
+vn 0.398826 -0.915890 0.045642
+vn 0.926486 -0.328694 0.183260
+vn 0.391301 -0.919262 0.042916
+vn 0.916130 -0.373774 0.144913
+vn 0.391301 -0.919262 0.042916
+vn 0.916130 -0.373774 0.144913
+vn 0.380457 -0.923937 0.039901
+vn 0.868201 -0.468432 0.163704
+vn 0.974774 -0.065877 0.213249
+vn 0.964763 -0.157254 0.210957
+vn 0.964440 -0.230555 -0.129225
+vn 0.912710 -0.063134 -0.403702
+vn 0.153175 0.988016 -0.019012
+vn 0.137137 0.990205 -0.026224
+vn 0.790809 0.555225 0.257579
+vn 0.783972 0.566180 0.254616
+vn 0.201662 0.978145 -0.050642
+vn 0.035263 0.991480 -0.125394
+vn 0.229028 0.973075 -0.025929
+vn 0.029564 0.993979 -0.105511
+vn -0.652957 0.726787 -0.213138
+vn -0.662682 0.717461 -0.214717
+vn -0.923405 0.293362 -0.247510
+vn -0.925894 0.285483 -0.247428
+vn -0.923405 0.293362 -0.247510
+vn -0.925894 0.285483 -0.247428
+vn -0.815302 0.524759 -0.244768
+vn -0.823407 0.511488 -0.245725
+vn -0.815302 0.524759 -0.244768
+vn -0.823407 0.511488 -0.245725
+vn -0.502750 0.841637 -0.197206
+vn -0.512042 0.834657 -0.202881
+vn -0.502750 0.841637 -0.197206
+vn -0.512042 0.834657 -0.202881
+vn -0.274377 0.949060 -0.154925
+vn -0.288668 0.941929 -0.171583
+vn -0.009804 0.996791 -0.079446
+vn -0.021121 0.996404 -0.082057
+vn -0.652957 0.726787 -0.213138
+vn -0.662682 0.717461 -0.214717
+vn -0.913069 0.135296 -0.384708
+vn -0.659229 0.740088 -0.132991
+vn -0.920773 0.066853 -0.384329
+vn -0.668050 0.725333 -0.166137
+vn -0.920773 0.066853 -0.384329
+vn -0.668050 0.725333 -0.166137
+vn -0.915221 0.236230 -0.326445
+vn -0.595559 0.792651 -0.130440
+vn -0.639566 0.761664 -0.104035
+vn 0.160384 0.955230 0.248620
+vn -0.659229 0.740088 -0.132991
+vn 0.166266 0.955312 0.244407
+vn -0.915221 0.236230 -0.326445
+vn -0.595559 0.792651 -0.130440
+vn -0.859341 0.377127 -0.345411
+vn -0.522701 0.849084 -0.076424
+vn -0.859341 0.377127 -0.345411
+vn -0.522701 0.849084 -0.076424
+vn -0.866983 0.339248 -0.365036
+vn -0.504863 0.861206 -0.058622
+vn 0.142975 0.962043 0.232447
+vn 0.124092 0.975090 0.183848
+vn 0.778463 0.456031 0.431313
+vn 0.768225 0.487081 0.415430
+vn -0.487715 0.340954 -0.803669
+vn 0.211182 0.432073 -0.876764
+vn 0.168249 0.912631 -0.372554
+vn 0.327299 0.467982 -0.820895
+vn -0.487715 0.340954 -0.803669
+vn -0.633989 0.051668 -0.771614
+vn 0.281330 -0.017101 -0.959459
+vn 0.287537 -0.026317 -0.957408
+vn -0.847931 0.438232 -0.298270
+vn 0.023498 0.997047 -0.073113
+vn -0.594820 0.181689 -0.783057
+vn 0.261674 0.431646 -0.863255
+vn 0.939947 0.203661 -0.273901
+vn 0.261674 0.431646 -0.863255
+vn 0.842165 0.454910 0.289510
+vn 0.023498 0.997047 -0.073113
+vn -0.311923 0.948811 -0.049612
+vn -0.485965 0.870545 -0.077392
+vn -0.184169 0.982584 -0.024724
+vn -0.312030 0.949832 0.021361
+vn -0.311923 0.948811 -0.049612
+vn -0.057497 0.997915 0.029333
+vn -0.288198 0.957383 0.018985
+vn -0.080346 0.990455 0.111999
+vn -0.288198 0.957383 0.018985
+vn -0.080346 0.990455 0.111999
+vn -0.309357 0.950275 0.035718
+vn -0.091869 0.985605 0.141925
+vn 0.281330 -0.017101 -0.959459
+vn 0.259271 0.332001 -0.906948
+vn -0.487715 0.340954 -0.803669
+vn 0.211182 0.432073 -0.876764
+vn 0.255177 0.397104 -0.881586
+vn -0.214149 0.929527 -0.300201
+vn 0.259271 0.332001 -0.906948
+vn 0.041076 0.962302 -0.268864
+vn -0.309357 0.950275 0.035718
+vn -0.091869 0.985605 0.141925
+vn -0.317393 0.947906 -0.027120
+vn -0.076073 0.993656 0.082830
+vn -0.317393 0.947906 -0.027120
+vn -0.076073 0.993656 0.082830
+vn -0.214149 0.929527 -0.300201
+vn 0.041076 0.962302 -0.268864
+vn 0.303309 0.640646 0.705391
+vn 0.632332 0.380741 0.674680
+vn -0.435206 0.396655 0.808245
+vn -0.340984 0.507426 0.791359
+vn 0.160298 0.986954 0.015016
+vn 0.166961 0.985887 -0.012272
+vn 0.798208 0.531740 0.283050
+vn 0.797925 0.543639 0.260333
+vn 0.166961 0.985887 -0.012272
+vn 0.153175 0.988016 -0.019012
+vn 0.797925 0.543639 0.260333
+vn 0.790809 0.555225 0.257579
+vn -0.846494 0.510540 -0.150986
+vn -0.911370 0.411199 -0.017885
+vn -0.899209 0.339516 -0.275956
+vn -0.967682 0.236333 -0.087969
+vn -0.818108 0.433162 0.378246
+vn -0.740024 0.660489 0.126957
+vn -0.960978 0.276536 -0.007045
+vn -0.846494 0.510540 -0.150986
+vn -0.790469 0.364539 0.492210
+vn -0.818108 0.433162 0.378246
+vn -0.980323 0.196310 0.020722
+vn -0.960978 0.276536 -0.007045
+vn -0.737747 0.246663 0.628400
+vn -0.790469 0.364539 0.492210
+vn -0.995090 0.081971 0.055469
+vn -0.980323 0.196310 0.020722
+vn 0.988449 -0.140208 0.057530
+vn 0.791135 0.252472 0.557102
+vn 0.997471 -0.070302 0.010480
+vn 0.702752 0.409906 0.581479
+vn -0.003133 -0.878618 0.477514
+vn 0.659102 -0.536915 -0.526599
+vn -0.044275 -0.692298 -0.720253
+vn 0.013919 -0.677469 -0.735420
+vn -0.564956 -0.801669 0.195325
+vn -0.484618 -0.750862 0.448722
+vn -0.873993 -0.466634 0.135603
+vn -0.741010 -0.570695 0.353853
+vn -0.581789 -0.813320 -0.005718
+vn -0.003133 -0.878618 0.477514
+vn -0.636543 -0.532402 -0.557998
+vn -0.044275 -0.692298 -0.720253
+vn -0.311381 -0.892371 0.326674
+vn -0.358108 -0.916648 0.177528
+vn -0.640926 -0.664322 0.384566
+vn -0.700585 -0.705722 0.105533
+vn -0.446484 -0.892608 0.062467
+vn 0.203778 -0.968751 0.141404
+vn 0.007134 -0.999653 -0.025367
+vn 0.340559 -0.936910 0.078867
+vn 0.203778 -0.968751 0.141404
+vn -0.094645 -0.981381 0.167133
+vn 0.340559 -0.936910 0.078867
+vn 0.108508 -0.994062 0.008158
+vn -0.979961 0.156881 -0.122742
+vn -0.990429 0.046734 -0.129873
+vn -0.980184 0.063379 -0.187675
+vn -0.905216 0.175657 -0.386948
+vn -0.953078 0.288863 -0.090558
+vn -0.896426 0.370856 0.242664
+vn -0.979961 0.156881 -0.122742
+vn -0.990429 0.046734 -0.129873
+vn -0.561428 0.825189 -0.062149
+vn -0.982292 0.154659 -0.105750
+vn -0.772674 0.138368 -0.619539
+vn -0.992227 0.010515 -0.124000
+vn -0.993434 0.043194 0.105944
+vn -0.935657 0.159034 0.315048
+vn -0.982292 0.154659 -0.105750
+vn -0.992227 0.010515 -0.124000
+vn -0.993913 0.088405 0.065743
+vn -0.907196 0.318341 0.275054
+vn -0.688282 0.687478 0.231605
+vn -0.767850 0.619586 0.162848
+vn -0.960980 0.251215 -0.115795
+vn -0.972561 0.134988 -0.189482
+vn -0.896812 0.434204 -0.084831
+vn -0.937204 0.336069 -0.093312
+vn -0.977902 0.164431 -0.129112
+vn -0.929313 0.354562 -0.103261
+vn -0.891732 0.353561 -0.282503
+vn -0.910295 0.410353 -0.054532
+vn -0.866726 0.465521 0.179099
+vn -0.937204 0.336069 -0.093312
+vn -0.977902 0.164431 -0.129112
+vn -0.947109 0.250527 -0.200552
+vn -0.955087 0.198946 -0.219611
+vn -0.650195 0.739277 -0.175259
+vn -0.879008 0.281980 -0.384490
+vn -0.947109 0.250527 -0.200552
+vn -0.650195 0.739277 -0.175259
+vn -0.960613 0.217003 -0.173585
+vn -0.864069 0.503307 -0.008234
+vn -0.971661 0.133438 -0.195111
+vn -0.977322 0.097112 -0.188178
+vn -0.955087 0.198946 -0.219611
+vn -0.879008 0.281980 -0.384490
+vn -0.963152 0.205946 -0.172989
+vn -0.916457 0.399227 0.026904
+vn -0.971661 0.133438 -0.195111
+vn -0.977322 0.097112 -0.188178
+vn -0.925371 0.362938 0.109380
+vn -0.958484 0.262056 0.112407
+vn -0.980059 0.085286 -0.179475
+vn -0.969566 0.152212 -0.191762
+vn -0.980059 0.085286 -0.179475
+vn -0.969566 0.152212 -0.191762
+vn -0.874346 0.272889 -0.401312
+vn -0.831926 0.125123 -0.540595
+vn -0.925371 0.362938 0.109380
+vn -0.594626 0.801841 0.058915
+vn -0.161338 0.837556 0.521986
+vn -0.027906 0.986866 0.159113
+vn -0.719119 0.438275 0.539242
+vn -0.860330 0.353791 0.366965
+vn -0.907196 0.318341 0.275054
+vn -0.767850 0.619586 0.162848
+vn -0.448293 0.487287 0.749390
+vn -0.435206 0.396655 0.808245
+vn -0.719119 0.438275 0.539242
+vn -0.860330 0.353791 0.366965
+vn 0.196145 -0.663107 0.722369
+vn 0.112184 -0.867919 0.483872
+vn 0.675271 -0.526987 0.516037
+vn 0.663964 -0.698881 0.265927
+vn -0.433849 -0.874006 0.218834
+vn -0.446484 -0.892608 0.062467
+vn -0.776526 -0.600706 0.190158
+vn -0.936896 -0.345878 -0.050935
+vn 0.823751 0.089751 0.559803
+vn 0.664225 0.171408 0.727616
+vn 0.782137 0.304588 0.543588
+vn 0.656536 0.389929 0.645691
+vn 0.570201 -0.085696 0.817023
+vn 0.913146 -0.108202 0.393011
+vn 0.664225 0.171408 0.727616
+vn 0.954176 0.065620 0.291964
+vn -0.029251 0.845343 0.533422
+vn -0.716198 0.575457 0.394854
+vn -0.023036 0.930504 0.365556
+vn -0.706504 0.663814 0.245363
+vn -0.716198 0.575457 0.394854
+vn -0.996591 -0.075409 0.033457
+vn -0.706504 0.663814 0.245363
+vn -0.997392 -0.071807 -0.007256
+vn -0.996591 -0.075409 0.033457
+vn -0.645037 -0.707081 -0.289764
+vn -0.997392 -0.071807 -0.007256
+vn -0.626985 -0.753720 -0.196966
+vn 0.038910 -0.912381 -0.407489
+vn 0.034626 -0.876606 -0.479962
+vn 0.701572 -0.651354 -0.289023
+vn 0.725444 -0.615825 -0.307393
+vn 0.774611 -0.569866 -0.274283
+vn 0.992308 -0.052410 0.112149
+vn 0.725444 -0.615825 -0.307393
+vn 0.996883 -0.031068 0.072515
+vn 0.693221 0.525207 0.493560
+vn 0.672543 0.627150 0.392898
+vn 0.996883 -0.031068 0.072515
+vn 0.999366 0.000052 0.035602
+vn 0.782137 0.304588 0.543588
+vn 0.656536 0.389929 0.645691
+vn 0.702189 0.588239 0.401131
+vn 0.601033 0.636199 0.483746
+vn 0.777524 0.617602 0.118423
+vn 0.601033 0.636199 0.483746
+vn 0.938113 0.270099 0.216774
+vn 0.656536 0.389929 0.645691
+vn 0.829704 0.540694 -0.138711
+vn 0.777524 0.617602 0.118423
+vn 0.979839 0.197540 -0.029896
+vn 0.938113 0.270099 0.216774
+vn -0.687552 0.719688 -0.096543
+vn -0.469968 0.845785 -0.252543
+vn -0.705584 0.661153 -0.255006
+vn -0.640396 0.684594 -0.348171
+vn 0.000000 0.885897 -0.463882
+vn 0.000000 0.914084 -0.405526
+vn -0.262500 0.848417 -0.459654
+vn -0.384143 0.831267 -0.401784
+vn 0.722219 0.661800 -0.201051
+vn 0.758039 0.479330 -0.442289
+vn 0.709667 0.663398 -0.237226
+vn 0.682002 0.645880 -0.343091
+vn -0.874747 0.465599 0.134294
+vn -0.821854 0.567451 0.050547
+vn -0.894979 0.406506 0.183756
+vn -0.899399 0.436410 0.025075
+vn -0.960233 0.269891 0.071501
+vn -0.994179 0.081954 0.069934
+vn -0.967682 0.236333 -0.087969
+vn -0.990152 0.034147 -0.135770
+vn -0.874747 0.465599 0.134294
+vn -0.894979 0.406506 0.183756
+vn -0.907051 0.212849 0.363254
+vn -0.859918 0.235911 0.452645
+vn -0.864069 0.503307 -0.008234
+vn -0.877257 0.466635 0.112573
+vn -0.973585 0.140438 -0.180026
+vn -0.940677 0.283994 -0.185675
+vn 0.946597 0.273061 0.171440
+vn 0.955021 0.224620 0.193599
+vn 0.615709 0.783971 0.079324
+vn 0.602852 0.794248 0.075757
+vn 0.974473 0.065722 0.214668
+vn 0.826899 0.437953 0.352754
+vn 0.955021 0.224620 0.193599
+vn 0.936826 0.282713 0.205986
+vn -0.669594 0.723129 -0.169497
+vn -0.076802 0.995098 -0.062296
+vn -0.629528 0.629329 -0.455675
+vn 0.014826 0.803509 -0.595107
+vn 0.677444 -0.705811 0.207124
+vn 0.954873 -0.194391 0.224567
+vn 0.537277 -0.702769 0.466314
+vn 0.750799 -0.386900 0.535359
+vn 0.105596 -0.850791 -0.514785
+vn 0.762014 -0.632439 -0.139127
+vn -0.038667 -0.994699 0.095284
+vn 0.677444 -0.705811 0.207124
+vn -0.904013 -0.365907 0.221073
+vn -0.961627 -0.197161 -0.190792
+vn -0.757803 -0.625531 0.185597
+vn -0.770777 -0.606112 -0.196295
+vn -0.961627 -0.197161 -0.190792
+vn -0.747140 -0.100527 -0.657021
+vn -0.770777 -0.606112 -0.196295
+vn -0.639539 -0.431767 -0.636056
+vn -0.747140 -0.100527 -0.657021
+vn 0.242166 -0.052388 -0.968820
+vn -0.639539 -0.431767 -0.636056
+vn 0.172610 -0.607962 -0.774976
+vn 0.242166 -0.052388 -0.968820
+vn 0.165149 -0.665978 -0.727461
+vn 0.957991 -0.036975 -0.284404
+vn 0.976608 -0.205656 -0.062796
+vn 0.786961 -0.429164 0.443294
+vn 0.873905 -0.444969 0.195686
+vn 0.707826 -0.697487 0.111773
+vn 0.846712 -0.508212 0.157477
+vn 0.786961 -0.429164 0.443294
+vn 0.688350 -0.374452 0.621257
+vn 0.974471 -0.059443 0.216503
+vn 0.967709 -0.144505 0.206538
+vn -0.199233 -0.630705 0.750011
+vn -0.152133 -0.848005 0.507685
+vn 0.688350 -0.374452 0.621257
+vn 0.544356 -0.645479 0.535755
+vn -0.152133 -0.848005 0.507685
+vn -0.725477 -0.645132 0.239766
+vn -0.006727 -0.996688 -0.081042
+vn -0.750474 -0.631410 -0.195219
+vn -0.750474 -0.631410 -0.195219
+vn -0.584350 -0.417581 -0.695817
+vn -0.006727 -0.996688 -0.081042
+vn 0.202575 -0.562863 -0.801342
+vn 0.843938 -0.367122 -0.391140
+vn 0.944724 -0.063309 -0.321696
+vn 0.779970 -0.614233 0.119850
+vn 0.967709 -0.144505 0.206538
+vn 0.944724 -0.063309 -0.321696
+vn 0.955680 -0.287255 -0.064501
+vn 0.967709 -0.144505 0.206538
+vn 0.974471 -0.059443 0.216503
+vn 0.203332 -0.709112 -0.675141
+vn 0.837130 -0.492230 -0.238584
+vn 0.001107 -0.997735 -0.067261
+vn 0.764157 -0.633640 0.120681
+vn -0.235684 -0.610849 0.755855
+vn -0.904013 -0.365907 0.221073
+vn -0.167453 -0.861951 0.478539
+vn -0.757803 -0.625531 0.185597
+vn -0.742937 -0.068841 -0.665812
+vn 0.282923 0.003043 -0.959138
+vn -0.652051 -0.421195 -0.630415
+vn 0.193995 -0.605577 -0.771779
+vn 0.282923 0.003043 -0.959138
+vn 0.243725 -0.420691 -0.873852
+vn 0.961852 -0.006938 -0.273481
+vn 0.988383 -0.133653 -0.072354
+vn 0.820723 -0.357059 0.446008
+vn 0.907504 -0.366430 0.205341
+vn 0.737434 -0.662925 0.129310
+vn 0.885310 -0.433753 0.167587
+vn 0.820723 -0.357059 0.446008
+vn 0.743021 -0.329868 0.582328
+vn 0.975387 -0.045548 0.215746
+vn 0.971216 -0.122220 0.204457
+vn -0.197570 -0.859525 0.471362
+vn -0.780048 -0.603250 0.166180
+vn -0.029987 -0.995925 -0.085056
+vn -0.785740 -0.585542 -0.199384
+vn -0.785740 -0.585542 -0.199384
+vn -0.652051 -0.421195 -0.630415
+vn -0.029987 -0.995925 -0.085056
+vn 0.193995 -0.605577 -0.771779
+vn 0.912710 -0.063134 -0.403702
+vn 0.964763 -0.157254 0.210957
+vn 0.807131 -0.386435 -0.446327
+vn 0.752358 -0.646343 0.127270
+vn -0.227701 -0.791296 0.567454
+vn -0.055663 -0.994530 -0.088380
+vn 0.467143 -0.632333 0.618007
+vn 0.752358 -0.646343 0.127270
+vn 0.907504 -0.366430 0.205341
+vn 0.820723 -0.357059 0.446008
+vn 0.926486 -0.328694 0.183260
+vn 0.975387 -0.045548 0.215746
+vn 0.783972 0.566180 0.254616
+vn 0.923094 0.185621 0.336813
+vn 0.790809 0.555225 0.257579
+vn 0.924086 0.182069 0.336030
+vn 0.922377 0.189070 0.336857
+vn 0.889630 0.334852 0.310537
+vn 0.923094 0.185621 0.336813
+vn 0.890875 0.331237 0.310843
+vn 0.678243 0.708552 0.194784
+vn 0.420132 0.904893 0.068256
+vn 0.685085 0.700689 0.199234
+vn 0.435825 0.896184 0.083134
+vn 0.393853 0.917540 0.054776
+vn 0.201662 0.978145 -0.050642
+vn 0.420132 0.904893 0.068256
+vn 0.229028 0.973075 -0.025929
+vn 0.035263 0.991480 -0.125394
+vn -0.127562 0.979038 -0.158782
+vn 0.029564 0.993979 -0.105511
+vn -0.162640 0.974543 -0.154320
+vn -0.127562 0.979038 -0.158782
+vn -0.096237 0.985332 -0.140924
+vn -0.288668 0.941929 -0.171583
+vn -0.274377 0.949060 -0.154925
+vn 0.624185 0.768845 0.138817
+vn 0.615709 0.783971 0.079324
+vn -0.004776 0.999797 -0.019587
+vn 0.007978 0.997163 -0.074842
+vn -0.001206 0.997010 -0.077268
+vn 0.007978 0.997163 -0.074842
+vn 0.602852 0.794248 0.075757
+vn 0.615709 0.783971 0.079324
+vn -0.009804 0.996791 -0.079446
+vn -0.001206 0.997010 -0.077268
+vn 0.590351 0.803904 0.072277
+vn 0.602852 0.794248 0.075757
+vn -0.021121 0.996404 -0.082057
+vn -0.009804 0.996791 -0.079446
+vn 0.574137 0.815944 0.067845
+vn 0.590351 0.803904 0.072277
+vn 0.889630 0.334852 0.310537
+vn 0.685085 0.700689 0.199234
+vn 0.890875 0.331237 0.310843
+vn 0.690264 0.694722 0.202230
+vn 0.158367 0.955658 0.248271
+vn 0.142975 0.962043 0.232447
+vn 0.800592 0.429286 0.418050
+vn 0.778463 0.456031 0.431313
+vn 0.162603 0.953989 0.251923
+vn 0.158367 0.955658 0.248271
+vn 0.818052 0.411765 0.401547
+vn 0.800592 0.429286 0.418050
+vn 0.160384 0.955230 0.248620
+vn 0.162603 0.953989 0.251923
+vn 0.826142 0.403832 0.392950
+vn 0.818052 0.411765 0.401547
+vn 0.840590 0.483194 0.244809
+vn 0.878159 0.292607 -0.378441
+vn 0.949586 0.168945 0.264092
+vn 0.957872 0.044163 -0.283779
+vn 0.878159 0.292607 -0.378441
+vn 0.168249 0.912631 -0.372554
+vn 0.404850 0.386841 -0.828523
+vn 0.327299 0.467982 -0.820895
+vn -0.633989 0.051668 -0.771614
+vn -0.594820 0.181689 -0.783057
+vn 0.287537 -0.026317 -0.957408
+vn 0.261674 0.431646 -0.863255
+vn -0.311923 0.948811 -0.049612
+vn -0.184169 0.982584 -0.024724
+vn -0.057497 0.997915 0.029333
+vn -0.024191 0.999561 -0.017114
+vn -0.485965 0.870545 -0.077392
+vn -0.504863 0.861206 -0.058622
+vn -0.312030 0.949832 0.021361
+vn -0.313831 0.936244 0.157978
+vn 0.632332 0.380741 0.674680
+vn 0.949586 0.168945 0.264092
+vn 0.590298 0.473371 0.653811
+vn 0.869902 0.437974 0.226826
+vn 0.768225 0.487081 0.415430
+vn 0.782893 0.514543 0.349749
+vn 0.891810 0.157108 0.424254
+vn 0.906979 0.166661 0.386800
+vn 0.782893 0.514543 0.349749
+vn 0.798208 0.531740 0.283050
+vn 0.906979 0.166661 0.386800
+vn 0.921756 0.173570 0.346755
+vn 0.778463 0.456031 0.431313
+vn 0.768225 0.487081 0.415430
+vn 0.893132 0.147016 0.425091
+vn 0.891810 0.157108 0.424254
+vn -0.846494 0.510540 -0.150986
+vn -0.899209 0.339516 -0.275956
+vn -0.960978 0.276536 -0.007045
+vn -0.961629 0.167435 -0.217337
+vn -0.737747 0.246663 0.628400
+vn -0.995090 0.081971 0.055469
+vn -0.601249 0.193949 0.775167
+vn -0.995459 -0.051063 0.080340
+vn 0.290809 0.170947 0.941386
+vn -0.601249 0.193949 0.775167
+vn 0.187861 0.418921 0.888377
+vn -0.638377 0.301975 0.708016
+vn 0.791135 0.252472 0.557102
+vn 0.187861 0.418921 0.888377
+vn 0.702752 0.409906 0.581479
+vn 0.051424 0.588536 0.806834
+vn 0.659102 -0.536915 -0.526599
+vn 0.997471 -0.070302 0.010480
+vn 0.628272 -0.581659 -0.516669
+vn 0.997242 -0.060896 -0.042430
+vn -0.873993 -0.466634 0.135603
+vn -0.951807 -0.304902 -0.033146
+vn -0.564956 -0.801669 0.195325
+vn -0.700585 -0.705722 0.105533
+vn -0.636543 -0.532402 -0.557998
+vn -0.977660 -0.148473 -0.148782
+vn -0.581789 -0.813320 -0.005718
+vn -0.941496 -0.325287 0.088173
+vn -0.581789 -0.813320 -0.005718
+vn -0.941496 -0.325287 0.088173
+vn -0.741010 -0.570695 0.353853
+vn -0.873993 -0.466634 0.135603
+vn -0.640926 -0.664322 0.384566
+vn -0.579703 -0.570241 0.582040
+vn -0.311381 -0.892371 0.326674
+vn -0.230678 -0.855446 0.463681
+vn -0.174446 -0.956549 0.233630
+vn -0.311381 -0.892371 0.326674
+vn 0.132750 -0.947574 0.290657
+vn -0.230678 -0.855446 0.463681
+vn -0.094645 -0.981381 0.167133
+vn -0.415445 -0.898414 0.142329
+vn 0.108508 -0.994062 0.008158
+vn -0.401308 -0.913510 0.066719
+vn -0.361101 -0.915358 0.178119
+vn -0.208805 -0.967199 0.144662
+vn -0.415445 -0.898414 0.142329
+vn -0.326613 -0.945157 -0.001567
+vn -0.174446 -0.956549 0.233630
+vn 0.132750 -0.947574 0.290657
+vn -0.208805 -0.967199 0.144662
+vn 0.548709 -0.835567 -0.027312
+vn -0.446484 -0.892608 0.062467
+vn 0.007134 -0.999653 -0.025367
+vn -0.936896 -0.345878 -0.050935
+vn -0.954646 0.048429 -0.293778
+vn -0.937745 0.330421 -0.107033
+vn -0.698148 0.715599 -0.022533
+vn -0.985135 0.138771 -0.101255
+vn -0.967214 0.242099 0.076721
+vn -0.980184 0.063379 -0.187675
+vn -0.905216 0.175657 -0.386948
+vn -0.937745 0.330421 -0.107033
+vn -0.698148 0.715599 -0.022533
+vn -0.772674 0.138368 -0.619539
+vn 0.458438 0.502330 -0.733144
+vn -0.561428 0.825189 -0.062149
+vn 0.236858 0.943905 0.230090
+vn -0.896426 0.370856 0.242664
+vn -0.561428 0.825189 -0.062149
+vn 0.023510 0.714181 0.699566
+vn 0.236858 0.943905 0.230090
+vn -0.935657 0.159034 0.315048
+vn -0.993434 0.043194 0.105944
+vn -0.268509 0.480816 0.834697
+vn -0.276713 0.764952 0.581617
+vn -0.993434 0.043194 0.105944
+vn -0.688282 0.687478 0.231605
+vn -0.276713 0.764952 0.581617
+vn 0.028759 0.950885 0.308204
+vn -0.960980 0.251215 -0.115795
+vn -0.985495 0.075675 -0.151895
+vn -0.972561 0.134988 -0.189482
+vn -0.894898 0.268670 -0.356334
+vn -0.972561 0.134988 -0.189482
+vn -0.894898 0.268670 -0.356334
+vn -0.896812 0.434204 -0.084831
+vn -0.553622 0.832169 0.031578
+vn -0.896812 0.434204 -0.084831
+vn -0.553622 0.832169 0.031578
+vn -0.910295 0.410353 -0.054532
+vn -0.866726 0.465521 0.179099
+vn -0.977902 0.164431 -0.129112
+vn -0.977411 0.156126 -0.142449
+vn -0.891732 0.353561 -0.282503
+vn -0.863946 0.132009 -0.485974
+vn -0.891732 0.353561 -0.282503
+vn 0.087487 0.794312 -0.601177
+vn -0.594626 0.801841 0.058915
+vn -0.027906 0.986866 0.159113
+vn -0.864069 0.503307 -0.008234
+vn -0.650195 0.739277 -0.175259
+vn -0.097523 0.969757 0.223743
+vn -0.035893 0.997239 -0.065015
+vn -0.916457 0.399227 0.026904
+vn -0.625215 0.765384 -0.152620
+vn -0.134183 0.917172 0.375222
+vn -0.007759 0.999286 -0.036967
+vn -0.874346 0.272889 -0.401312
+vn 0.179688 0.771191 -0.610718
+vn -0.625215 0.765384 -0.152620
+vn -0.007759 0.999286 -0.036967
+vn -0.958484 0.262056 0.112407
+vn -0.925371 0.362938 0.109380
+vn -0.259460 0.592958 0.762287
+vn -0.161338 0.837556 0.521986
+vn 0.112184 -0.867919 0.483872
+vn -0.451801 -0.804092 0.386409
+vn 0.063818 -0.939926 0.335359
+vn -0.567340 -0.779343 0.265989
+vn -0.457056 -0.772194 0.441381
+vn -0.776526 -0.600706 0.190158
+vn -0.451801 -0.804092 0.386409
+vn -0.567340 -0.779343 0.265989
+vn 0.675271 -0.526987 0.516037
+vn 0.927367 -0.364383 0.084945
+vn 0.913146 -0.108202 0.393011
+vn 0.986681 -0.160861 0.024158
+vn -0.029251 0.845343 0.533422
+vn -0.023036 0.930504 0.365556
+vn 0.672543 0.627150 0.392898
+vn 0.664809 0.690913 0.284022
+vn -0.645037 -0.707081 -0.289764
+vn 0.038910 -0.912381 -0.407489
+vn -0.626985 -0.753720 -0.196966
+vn 0.020591 -0.964701 -0.262543
+vn 0.701572 -0.651354 -0.289023
+vn 0.676431 -0.709701 -0.196891
+vn 0.038910 -0.912381 -0.407489
+vn 0.020591 -0.964701 -0.262543
+vn 0.725444 -0.615825 -0.307393
+vn 0.996883 -0.031068 0.072515
+vn 0.701572 -0.651354 -0.289023
+vn 0.999366 0.000052 0.035602
+vn 0.829704 0.540694 -0.138711
+vn 0.763974 0.473289 -0.438567
+vn 0.722219 0.661800 -0.201051
+vn 0.758039 0.479330 -0.442289
+vn 0.829704 0.540694 -0.138711
+vn 0.979839 0.197540 -0.029896
+vn 0.763974 0.473289 -0.438567
+vn 0.940418 0.094925 -0.326502
+vn -0.687552 0.719688 -0.096543
+vn -0.705584 0.661153 -0.255006
+vn -0.789265 0.611990 -0.050296
+vn -0.718501 0.636393 -0.280641
+vn -0.469968 0.845785 -0.252543
+vn -0.512826 0.733147 -0.446661
+vn -0.640396 0.684594 -0.348171
+vn -0.724423 0.556533 -0.406797
+vn -0.262500 0.848417 -0.459654
+vn -0.384143 0.831267 -0.401784
+vn -0.512826 0.733147 -0.446661
+vn -0.878001 0.366196 -0.308245
+vn 0.000000 0.914084 -0.405526
+vn 0.340327 0.848922 -0.404363
+vn 0.000000 0.982607 -0.185696
+vn 0.382398 0.903451 -0.193775
+vn 0.810444 0.451070 -0.373787
+vn 0.914820 0.367445 -0.167598
+vn 0.340327 0.848922 -0.404363
+vn 0.382398 0.903451 -0.193775
+vn 0.810444 0.451070 -0.373787
+vn 0.506867 0.743158 -0.436809
+vn 0.856622 0.305541 -0.415745
+vn 0.692774 0.607227 -0.389025
+vn 0.682002 0.645880 -0.343091
+vn 0.758039 0.479330 -0.442289
+vn 0.692774 0.607227 -0.389025
+vn 0.856622 0.305541 -0.415745
+vn -0.821854 0.567451 0.050547
+vn -0.789265 0.611990 -0.050296
+vn -0.899399 0.436410 0.025075
+vn -0.874636 0.465255 -0.136195
+vn -0.899209 0.339516 -0.275956
+vn -0.967682 0.236333 -0.087969
+vn -0.901307 0.105708 -0.420085
+vn -0.990152 0.034147 -0.135770
+vn -0.994179 0.081954 0.069934
+vn -0.907051 0.212849 0.363254
+vn -0.998056 -0.003899 0.062207
+vn -0.913877 -0.154344 0.375508
+vn -0.877257 0.466635 0.112573
+vn -0.864069 0.503307 -0.008234
+vn -0.145026 0.810245 0.567865
+vn -0.097523 0.969757 0.223743
+vn -0.669594 0.723129 -0.169497
+vn -0.940677 0.283994 -0.185675
+vn -0.653132 0.752765 0.082235
+vn -0.877257 0.466635 0.112573
+vn 0.958207 0.200878 0.203685
+vn 0.781494 0.410453 0.469889
+vn 0.974473 0.065722 0.214668
+vn 0.826899 0.437953 0.352754
+vn 0.958207 0.200878 0.203685
+vn 0.966024 0.199941 -0.163773
+vn 0.642185 0.761102 0.091229
+vn 0.707970 0.670950 -0.220465
+vn 0.014826 0.803509 -0.595107
+vn -0.076802 0.995098 -0.062296
+vn 0.707970 0.670950 -0.220465
+vn 0.642185 0.761102 0.091229
+vn -0.669594 0.723129 -0.169497
+vn -0.653132 0.752765 0.082235
+vn -0.076802 0.995098 -0.062296
+vn -0.121654 0.937844 0.325037
+vn 0.957991 -0.036975 -0.284404
+vn 0.858733 -0.396735 -0.324313
+vn 0.242166 -0.052388 -0.968820
+vn 0.172610 -0.607962 -0.774976
+vn 0.976608 -0.205656 -0.062796
+vn 0.707826 -0.697487 0.111773
+vn 0.896833 -0.418410 0.143607
+vn 0.846712 -0.508212 0.157477
+vn -0.006727 -0.996688 -0.081042
+vn 0.779970 -0.614233 0.119850
+vn -0.152133 -0.848005 0.507685
+vn 0.544356 -0.645479 0.535755
+vn 0.202575 -0.562863 -0.801342
+vn 0.843938 -0.367122 -0.391140
+vn -0.006727 -0.996688 -0.081042
+vn 0.779970 -0.614233 0.119850
+vn -0.235684 -0.610849 0.755855
+vn -0.167453 -0.861951 0.478539
+vn 0.732913 -0.335253 0.591983
+vn 0.593112 -0.634614 0.495462
+vn 0.961852 -0.006938 -0.273481
+vn 0.874440 -0.381462 -0.299735
+vn 0.282923 0.003043 -0.959138
+vn 0.193995 -0.605577 -0.771779
+vn 0.988383 -0.133653 -0.072354
+vn 0.741576 -0.661106 0.114038
+vn 0.916130 -0.373774 0.144913
+vn 0.868201 -0.468432 0.163704
+vn 0.812422 -0.357276 0.460787
+vn 0.893584 -0.399362 0.204983
+vn 0.741576 -0.661106 0.114038
+vn 0.868201 -0.468432 0.163704
+vn 0.812422 -0.357276 0.460787
+vn 0.732913 -0.335253 0.591983
+vn 0.975222 -0.049675 0.215579
+vn 0.969865 -0.131404 0.205172
+vn 0.743021 -0.329868 0.582328
+vn 0.602472 -0.625837 0.495333
+vn 0.971216 -0.122220 0.204457
+vn 0.804700 -0.578896 0.131674
+vn 0.602472 -0.625837 0.495333
+vn -0.197570 -0.859525 0.471362
+vn 0.804700 -0.578896 0.131674
+vn -0.029987 -0.995925 -0.085056
+vn 0.184243 -0.548275 -0.815751
+vn 0.807131 -0.386435 -0.446327
+vn -0.055663 -0.994530 -0.088380
+vn 0.752358 -0.646343 0.127270
+vn 0.893584 -0.399362 0.204983
+vn 0.812422 -0.357276 0.460787
+vn 0.914253 -0.363334 0.179250
+vn 0.975222 -0.049675 0.215579
+vn 0.914253 -0.363334 0.179250
+vn 0.975222 -0.049675 0.215579
+vn 0.896833 -0.418410 0.143607
+vn 0.976608 -0.205656 -0.062796
+vn 0.926486 -0.328694 0.183260
+vn 0.975387 -0.045548 0.215746
+vn 0.916130 -0.373774 0.144913
+vn 0.988383 -0.133653 -0.072354
+vn 0.790809 0.555225 0.257579
+vn 0.924086 0.182069 0.336030
+vn 0.797925 0.543639 0.260333
+vn 0.925360 0.178276 0.334555
+vn -0.288668 0.941929 -0.171583
+vn -0.319070 0.931309 -0.175667
+vn -0.127562 0.979038 -0.158782
+vn -0.162640 0.974543 -0.154320
+vn 0.420132 0.904893 0.068256
+vn 0.229028 0.973075 -0.025929
+vn 0.435825 0.896184 0.083134
+vn 0.241964 0.970285 -0.000851
+vn 0.229028 0.973075 -0.025929
+vn 0.029564 0.993979 -0.105511
+vn 0.241964 0.970285 -0.000851
+vn 0.022304 0.996417 -0.081582
+vn -0.021121 0.996404 -0.082057
+vn -0.033093 0.995862 -0.084644
+vn -0.662682 0.717461 -0.214717
+vn -0.672587 0.707704 -0.216291
+vn -0.662682 0.717461 -0.214717
+vn -0.672587 0.707704 -0.216291
+vn -0.925894 0.285483 -0.247428
+vn -0.928295 0.277526 -0.247483
+vn -0.925894 0.285483 -0.247428
+vn -0.928295 0.277526 -0.247483
+vn -0.823407 0.511488 -0.245725
+vn -0.831475 0.497806 -0.246654
+vn -0.823407 0.511488 -0.245725
+vn -0.831475 0.497806 -0.246654
+vn -0.512042 0.834657 -0.202881
+vn -0.529390 0.822898 -0.206360
+vn -0.512042 0.834657 -0.202881
+vn -0.529390 0.822898 -0.206360
+vn -0.288668 0.941929 -0.171583
+vn -0.319070 0.931309 -0.175667
+vn 0.574137 0.815944 0.067845
+vn 0.556240 0.828623 0.063101
+vn -0.021121 0.996404 -0.082057
+vn -0.033093 0.995862 -0.084644
+vn -0.659229 0.740088 -0.132991
+vn 0.166266 0.955312 0.244407
+vn -0.668050 0.725333 -0.166137
+vn 0.183065 0.943172 0.277333
+vn -0.668050 0.725333 -0.166137
+vn 0.183065 0.943172 0.277333
+vn -0.595559 0.792651 -0.130440
+vn 0.085312 0.933115 0.349310
+vn 0.166266 0.955312 0.244407
+vn 0.160384 0.955230 0.248620
+vn 0.828741 0.395155 0.396283
+vn 0.826142 0.403832 0.392950
+vn -0.595559 0.792651 -0.130440
+vn 0.085312 0.933115 0.349310
+vn -0.522701 0.849084 -0.076424
+vn -0.237276 0.893795 0.380566
+vn -0.522701 0.849084 -0.076424
+vn -0.237276 0.893795 0.380566
+vn -0.504863 0.861206 -0.058622
+vn -0.313831 0.936244 0.157978
+vn 0.800592 0.429286 0.418050
+vn 0.778463 0.456031 0.431313
+vn 0.904394 0.138702 0.403526
+vn 0.893132 0.147016 0.425091
+vn 0.404850 0.386841 -0.828523
+vn 0.343864 0.281497 -0.895833
+vn 0.878159 0.292607 -0.378441
+vn 0.328340 -0.039314 -0.943741
+vn 0.259271 0.332001 -0.906948
+vn 0.041076 0.962302 -0.268864
+vn 0.211182 0.432073 -0.876764
+vn 0.102749 0.955299 -0.277212
+vn 0.211182 0.432073 -0.876764
+vn 0.102749 0.955299 -0.277212
+vn 0.327299 0.467982 -0.820895
+vn 0.404850 0.386841 -0.828523
+vn -0.102666 0.994225 0.031242
+vn -0.128290 0.991660 -0.012341
+vn -0.312030 0.949832 0.021361
+vn -0.184169 0.982584 -0.024724
+vn -0.080346 0.990455 0.111999
+vn -0.057497 0.997915 0.029333
+vn -0.042093 0.991406 0.123866
+vn -0.011988 0.999298 0.035486
+vn -0.080346 0.990455 0.111999
+vn -0.042093 0.991406 0.123866
+vn -0.091869 0.985605 0.141925
+vn -0.054297 0.985781 0.159021
+vn -0.033027 0.994812 0.096225
+vn -0.076073 0.993656 0.082830
+vn -0.054297 0.985781 0.159021
+vn -0.091869 0.985605 0.141925
+vn -0.076073 0.993656 0.082830
+vn -0.033027 0.994812 0.096225
+vn 0.041076 0.962302 -0.268864
+vn 0.102749 0.955299 -0.277212
+vn -0.435206 0.396655 0.808245
+vn -0.340984 0.507426 0.791359
+vn -0.860330 0.353791 0.366965
+vn -0.921914 0.316405 0.223525
+vn 0.632332 0.380741 0.674680
+vn 0.590298 0.473371 0.653811
+vn -0.340984 0.507426 0.791359
+vn -0.213750 0.759871 0.613928
+vn 0.797925 0.543639 0.260333
+vn 0.925360 0.178276 0.334555
+vn 0.798208 0.531740 0.283050
+vn 0.921756 0.173570 0.346755
+vn -0.960978 0.276536 -0.007045
+vn -0.961629 0.167435 -0.217337
+vn -0.980323 0.196310 0.020722
+vn -0.967265 0.067379 -0.244658
+vn -0.995090 0.081971 0.055469
+vn -0.980323 0.196310 0.020722
+vn -0.952942 -0.091500 -0.289013
+vn -0.967265 0.067379 -0.244658
+vn 0.997471 -0.070302 0.010480
+vn 0.702752 0.409906 0.581479
+vn 0.997242 -0.060896 -0.042430
+vn 0.680941 0.535093 0.499995
+vn 0.659102 -0.536915 -0.526599
+vn 0.628272 -0.581659 -0.516669
+vn 0.013919 -0.677469 -0.735420
+vn 0.033060 -0.757959 -0.651464
+vn -0.044275 -0.692298 -0.720253
+vn 0.013919 -0.677469 -0.735420
+vn -0.726277 -0.467211 -0.504217
+vn -0.671252 -0.511922 -0.536057
+vn -0.636543 -0.532402 -0.557998
+vn -0.044275 -0.692298 -0.720253
+vn -0.858548 -0.332375 -0.390413
+vn -0.726277 -0.467211 -0.504217
+vn -0.951807 -0.304902 -0.033146
+vn -0.873993 -0.466634 0.135603
+vn -0.977660 -0.148473 -0.148782
+vn -0.941496 -0.325287 0.088173
+vn -0.636543 -0.532402 -0.557998
+vn -0.812910 -0.241595 -0.529915
+vn -0.977660 -0.148473 -0.148782
+vn -0.974170 -0.084331 -0.209477
+vn -0.640926 -0.664322 0.384566
+vn -0.700585 -0.705722 0.105533
+vn -0.979377 -0.201403 -0.016052
+vn -0.951807 -0.304902 -0.033146
+vn -0.579703 -0.570241 0.582040
+vn -0.640926 -0.664322 0.384566
+vn -0.768623 -0.364619 0.525616
+vn -0.843274 -0.357186 0.401632
+vn 0.007134 -0.999653 -0.025367
+vn 0.340559 -0.936910 0.078867
+vn 0.073054 -0.961831 -0.263711
+vn 0.501348 -0.859685 -0.097934
+vn 0.340559 -0.936910 0.078867
+vn 0.108508 -0.994062 0.008158
+vn 0.501348 -0.859685 -0.097934
+vn 0.121011 -0.951619 -0.282449
+vn -0.985135 0.138771 -0.101255
+vn -0.967214 0.242099 0.076721
+vn -0.960980 0.251215 -0.115795
+vn -0.985495 0.075675 -0.151895
+vn -0.896426 0.370856 0.242664
+vn -0.916806 0.271865 0.292501
+vn -0.990429 0.046734 -0.129873
+vn -0.981517 0.147442 -0.122002
+vn -0.990429 0.046734 -0.129873
+vn -0.981517 0.147442 -0.122002
+vn -0.905216 0.175657 -0.386948
+vn -0.793939 0.094207 -0.600654
+vn 0.458438 0.502330 -0.733144
+vn -0.772674 0.138368 -0.619539
+vn 0.278252 -0.033763 -0.959915
+vn -0.674593 0.037079 -0.737258
+vn -0.992227 0.010515 -0.124000
+vn -0.981580 0.136826 -0.133337
+vn -0.772674 0.138368 -0.619539
+vn -0.674593 0.037079 -0.737258
+vn 0.023510 0.714181 0.699566
+vn -0.197676 0.461853 0.864648
+vn -0.896426 0.370856 0.242664
+vn -0.916806 0.271865 0.292501
+vn -0.268509 0.480816 0.834697
+vn -0.261265 0.425815 0.866269
+vn -0.935657 0.159034 0.315048
+vn -0.881615 0.267748 0.388671
+vn -0.935657 0.159034 0.315048
+vn -0.881615 0.267748 0.388671
+vn -0.992227 0.010515 -0.124000
+vn -0.981580 0.136826 -0.133337
+vn -0.767850 0.619586 0.162848
+vn -0.334074 0.940287 -0.065236
+vn -0.688282 0.687478 0.231605
+vn 0.028759 0.950885 0.308204
+vn -0.866726 0.465521 0.179099
+vn -0.941947 0.273720 0.194458
+vn -0.977902 0.164431 -0.129112
+vn -0.977411 0.156126 -0.142449
+vn -0.866726 0.465521 0.179099
+vn -0.553622 0.832169 0.031578
+vn 0.011032 0.804062 0.594443
+vn 0.078233 0.974644 0.209639
+vn -0.891732 0.353561 -0.282503
+vn -0.863946 0.132009 -0.485974
+vn 0.087487 0.794312 -0.601177
+vn 0.095026 0.160177 -0.982504
+vn -0.879008 0.281980 -0.384490
+vn 0.070217 0.822865 -0.563882
+vn -0.650195 0.739277 -0.175259
+vn -0.035893 0.997239 -0.065015
+vn -0.916457 0.399227 0.026904
+vn -0.941971 0.315638 0.114296
+vn -0.977322 0.097112 -0.188178
+vn -0.964945 0.177274 -0.193534
+vn -0.977322 0.097112 -0.188178
+vn -0.964945 0.177274 -0.193534
+vn -0.879008 0.281980 -0.384490
+vn -0.830526 0.146676 -0.537321
+vn -0.134183 0.917172 0.375222
+vn -0.213711 0.655133 0.724658
+vn -0.916457 0.399227 0.026904
+vn -0.941971 0.315638 0.114296
+vn -0.874346 0.272889 -0.401312
+vn -0.831926 0.125123 -0.540595
+vn 0.179688 0.771191 -0.610718
+vn 0.295159 0.171396 -0.939949
+vn -0.259460 0.592958 0.762287
+vn -0.170566 0.848435 0.501064
+vn -0.958484 0.262056 0.112407
+vn -0.845199 0.524426 0.103037
+vn -0.958484 0.262056 0.112407
+vn -0.845199 0.524426 0.103037
+vn -0.969566 0.152212 -0.191762
+vn -0.836662 0.511391 -0.196152
+vn -0.831926 0.125123 -0.540595
+vn -0.969566 0.152212 -0.191762
+vn -0.736146 0.415948 -0.533926
+vn -0.836662 0.511391 -0.196152
+vn -0.161338 0.837556 0.521986
+vn 0.827160 0.376818 0.416911
+vn -0.259460 0.592958 0.762287
+vn 0.831417 0.253505 0.494451
+vn -0.027906 0.986866 0.159113
+vn 0.624109 0.766774 0.150150
+vn -0.161338 0.837556 0.521986
+vn 0.827160 0.376818 0.416911
+vn -0.860330 0.353791 0.366965
+vn -0.910534 0.342729 -0.231223
+vn -0.767850 0.619586 0.162848
+vn -0.334074 0.940287 -0.065236
+vn 0.675271 -0.526987 0.516037
+vn 0.663964 -0.698881 0.265927
+vn 0.927367 -0.364383 0.084945
+vn 0.939925 -0.339871 0.032063
+vn 0.112184 -0.867919 0.483872
+vn 0.063818 -0.939926 0.335359
+vn 0.663964 -0.698881 0.265927
+vn 0.713242 -0.667680 0.213281
+vn -0.776526 -0.600706 0.190158
+vn -0.936896 -0.345878 -0.050935
+vn -0.900544 -0.427944 0.076709
+vn -0.987666 -0.139896 -0.070322
+vn 0.664225 0.171408 0.727616
+vn 0.954176 0.065620 0.291964
+vn 0.656536 0.389929 0.645691
+vn 0.938113 0.270099 0.216774
+vn 0.913146 -0.108202 0.393011
+vn 0.986681 -0.160861 0.024158
+vn 0.954176 0.065620 0.291964
+vn 0.999481 -0.027722 0.016431
+vn -0.023036 0.930504 0.365556
+vn -0.706504 0.663814 0.245363
+vn 0.008001 0.992188 0.124493
+vn -0.658139 0.752896 0.000516
+vn -0.706504 0.663814 0.245363
+vn -0.997392 -0.071807 -0.007256
+vn -0.658139 0.752896 0.000516
+vn -0.990222 -0.096545 -0.100692
+vn -0.997392 -0.071807 -0.007256
+vn -0.626985 -0.753720 -0.196966
+vn -0.990222 -0.096545 -0.100692
+vn -0.583224 -0.809636 -0.065870
+vn 0.676431 -0.709701 -0.196891
+vn 0.701572 -0.651354 -0.289023
+vn 0.999584 0.002528 0.028729
+vn 0.999366 0.000052 0.035602
+vn 0.672543 0.627150 0.392898
+vn 0.664809 0.690913 0.284022
+vn 0.999366 0.000052 0.035602
+vn 0.999584 0.002528 0.028729
+vn 0.979839 0.197540 -0.029896
+vn 0.938113 0.270099 0.216774
+vn 0.999481 -0.027722 0.016431
+vn 0.954176 0.065620 0.291964
+vn -0.705584 0.661153 -0.255006
+vn -0.640396 0.684594 -0.348171
+vn -0.765700 0.506000 -0.397075
+vn -0.798840 0.476531 -0.367115
+vn 0.000000 0.914084 -0.405526
+vn 0.000000 0.982607 -0.185696
+vn -0.384143 0.831267 -0.401784
+vn -0.404654 0.896296 -0.181406
+vn 0.810444 0.451070 -0.373787
+vn 0.977555 0.035295 -0.207704
+vn 0.914820 0.367445 -0.167598
+vn 0.991549 -0.027578 -0.126764
+vn 0.810444 0.451070 -0.373787
+vn 0.856622 0.305541 -0.415745
+vn 0.923376 0.016173 -0.383555
+vn 0.909508 0.059095 -0.411464
+vn 0.758039 0.479330 -0.442289
+vn 0.763974 0.473289 -0.438567
+vn 0.743929 0.166526 -0.647178
+vn 0.544476 0.250647 -0.800451
+vn -0.894979 0.406506 0.183756
+vn -0.899399 0.436410 0.025075
+vn -0.985387 0.065217 0.157349
+vn -0.988005 0.150047 -0.036506
+vn -0.994179 0.081954 0.069934
+vn -0.998056 -0.003899 0.062207
+vn -0.990152 0.034147 -0.135770
+vn -0.935830 -0.094431 -0.339567
+vn -0.899209 0.339516 -0.275956
+vn -0.901307 0.105708 -0.420085
+vn -0.961629 0.167435 -0.217337
+vn -0.873085 -0.023629 -0.486995
+vn -0.859918 0.235911 0.452645
+vn -0.846921 -0.150514 0.509972
+vn -0.907051 0.212849 0.363254
+vn -0.913877 -0.154344 0.375508
+vn -0.894979 0.406506 0.183756
+vn -0.985387 0.065217 0.157349
+vn -0.859918 0.235911 0.452645
+vn -0.846921 -0.150514 0.509972
+vn -0.145026 0.810245 0.567865
+vn -0.121654 0.937844 0.325037
+vn -0.877257 0.466635 0.112573
+vn -0.653132 0.752765 0.082235
+vn 0.781494 0.410453 0.469889
+vn 0.958207 0.200878 0.203685
+vn 0.529233 0.778137 0.338253
+vn 0.642185 0.761102 0.091229
+vn 0.955021 0.224620 0.193599
+vn 0.936826 0.282713 0.205986
+vn 0.602852 0.794248 0.075757
+vn 0.590351 0.803904 0.072277
+vn 0.781494 0.410453 0.469889
+vn -0.145026 0.810245 0.567865
+vn 0.826899 0.437953 0.352754
+vn -0.097523 0.969757 0.223743
+vn 0.826899 0.437953 0.352754
+vn 0.685232 0.720650 0.105452
+vn 0.936826 0.282713 0.205986
+vn 0.922759 0.341429 0.178725
+vn -0.167453 -0.861951 0.478539
+vn -0.757803 -0.625531 0.185597
+vn -0.021130 -0.996418 -0.081888
+vn -0.770777 -0.606112 -0.196295
+vn -0.770777 -0.606112 -0.196295
+vn -0.639539 -0.431767 -0.636056
+vn -0.021130 -0.996418 -0.081888
+vn 0.172610 -0.607962 -0.774976
+vn 0.858733 -0.396735 -0.324313
+vn 0.957991 -0.036975 -0.284404
+vn 0.793726 -0.595159 0.125638
+vn 0.969865 -0.131404 0.205172
+vn 0.957991 -0.036975 -0.284404
+vn 0.976608 -0.205656 -0.062796
+vn 0.969865 -0.131404 0.205172
+vn 0.975222 -0.049675 0.215579
+vn 0.688350 -0.374452 0.621257
+vn 0.544356 -0.645479 0.535755
+vn 0.967709 -0.144505 0.206538
+vn 0.779970 -0.614233 0.119850
+vn 0.874440 -0.381462 -0.299735
+vn 0.961852 -0.006938 -0.273481
+vn 0.804700 -0.578896 0.131674
+vn 0.971216 -0.122220 0.204457
+vn 0.961852 -0.006938 -0.273481
+vn 0.988383 -0.133653 -0.072354
+vn 0.971216 -0.122220 0.204457
+vn 0.975387 -0.045548 0.215746
+vn 0.804700 -0.578896 0.131674
+vn -0.029987 -0.995925 -0.085056
+vn 0.874440 -0.381462 -0.299735
+vn 0.193995 -0.605577 -0.771779
+vn 0.923094 0.185621 0.336813
+vn 0.890875 0.331237 0.310843
+vn 0.924086 0.182069 0.336030
+vn 0.892423 0.327208 0.310670
+vn 0.685085 0.700689 0.199234
+vn 0.435825 0.896184 0.083134
+vn 0.690264 0.694722 0.202230
+vn 0.443790 0.891612 0.089877
+vn 0.029564 0.993979 -0.105511
+vn -0.162640 0.974543 -0.154320
+vn 0.022304 0.996417 -0.081582
+vn -0.187178 0.972008 -0.142004
+vn 0.574137 0.815944 0.067845
+vn 0.590351 0.803904 0.072277
+vn 0.922759 0.341429 0.178725
+vn 0.936826 0.282713 0.205986
+vn 0.556240 0.828623 0.063101
+vn 0.574137 0.815944 0.067845
+vn 0.946939 0.274622 0.167000
+vn 0.922759 0.341429 0.178725
+vn 0.890875 0.331237 0.310843
+vn 0.690264 0.694722 0.202230
+vn 0.892423 0.327208 0.310670
+vn 0.695205 0.689024 0.204784
+vn 0.828741 0.395155 0.396283
+vn 0.837712 0.325109 0.438796
+vn 0.166266 0.955312 0.244407
+vn 0.183065 0.943172 0.277333
+vn 0.818052 0.411765 0.401547
+vn 0.800592 0.429286 0.418050
+vn 0.914415 0.133286 0.382205
+vn 0.904394 0.138702 0.403526
+vn 0.826142 0.403832 0.392950
+vn 0.818052 0.411765 0.401547
+vn 0.919134 0.129894 0.371915
+vn 0.914415 0.133286 0.382205
+vn 0.828741 0.395155 0.396283
+vn 0.826142 0.403832 0.392950
+vn 0.917762 0.126369 0.376490
+vn 0.919134 0.129894 0.371915
+vn 0.949586 0.168945 0.264092
+vn 0.957872 0.044163 -0.283779
+vn 0.869902 0.437974 0.226826
+vn 0.931104 0.181580 -0.316346
+vn 0.878159 0.292607 -0.378441
+vn 0.328340 -0.039314 -0.943741
+vn 0.957872 0.044163 -0.283779
+vn 0.303534 -0.032065 -0.952281
+vn 0.343864 0.281497 -0.895833
+vn 0.404850 0.386841 -0.828523
+vn 0.134897 0.960135 -0.244832
+vn 0.102749 0.955299 -0.277212
+vn -0.057497 0.997915 0.029333
+vn -0.024191 0.999561 -0.017114
+vn -0.011988 0.999298 0.035486
+vn 0.001434 0.999990 -0.004278
+vn -0.184169 0.982584 -0.024724
+vn -0.128290 0.991660 -0.012341
+vn -0.024191 0.999561 -0.017114
+vn -0.102666 0.994225 0.031242
+vn -0.312030 0.949832 0.021361
+vn -0.313831 0.936244 0.157978
+vn -0.102666 0.994225 0.031242
+vn -0.268172 0.533654 0.802058
+vn 0.590298 0.473371 0.653811
+vn 0.869902 0.437974 0.226826
+vn -0.213750 0.759871 0.613928
+vn 0.021402 0.997043 -0.073811
+vn 0.893132 0.147016 0.425091
+vn 0.891810 0.157108 0.424254
+vn 0.859642 0.279858 0.427429
+vn 0.857593 0.296836 0.420026
+vn 0.891810 0.157108 0.424254
+vn 0.906979 0.166661 0.386800
+vn 0.857593 0.296836 0.420026
+vn 0.873030 0.314035 0.373096
+vn 0.921756 0.173570 0.346755
+vn 0.889559 0.320923 0.325105
+vn 0.906979 0.166661 0.386800
+vn 0.873030 0.314035 0.373096
+vn 0.904394 0.138702 0.403526
+vn 0.893132 0.147016 0.425091
+vn 0.870994 0.269437 0.410821
+vn 0.859642 0.279858 0.427429
+vn -0.995459 -0.051063 0.080340
+vn -0.995090 0.081971 0.055469
+vn -0.858548 -0.332375 -0.390413
+vn -0.952942 -0.091500 -0.289013
+vn -0.601249 0.193949 0.775167
+vn -0.995459 -0.051063 0.080340
+vn -0.638377 0.301975 0.708016
+vn -0.996329 -0.059885 0.061176
+vn 0.187861 0.418921 0.888377
+vn -0.638377 0.301975 0.708016
+vn 0.051424 0.588536 0.806834
+vn -0.664039 0.433624 0.609116
+vn 0.702752 0.409906 0.581479
+vn 0.051424 0.588536 0.806834
+vn 0.680941 0.535093 0.499995
+vn 0.012169 0.725743 0.687858
+vn 0.997242 -0.060896 -0.042430
+vn 0.989288 -0.057495 -0.134176
+vn 0.628272 -0.581659 -0.516669
+vn 0.583279 -0.711794 -0.391324
+vn -0.858548 -0.332375 -0.390413
+vn -0.952942 -0.091500 -0.289013
+vn -0.636543 -0.532402 -0.557998
+vn -0.812910 -0.241595 -0.529915
+vn -0.977660 -0.148473 -0.148782
+vn -0.974170 -0.084331 -0.209477
+vn -0.951807 -0.304902 -0.033146
+vn -0.979377 -0.201403 -0.016052
+vn -0.640926 -0.664322 0.384566
+vn -0.979377 -0.201403 -0.016052
+vn -0.843274 -0.357186 0.401632
+vn -0.990994 -0.133401 0.011607
+vn -0.768623 -0.364619 0.525616
+vn -0.973808 -0.137483 0.181097
+vn -0.579703 -0.570241 0.582040
+vn -0.922664 -0.284367 0.260437
+vn -0.230678 -0.855446 0.463681
+vn -0.579703 -0.570241 0.582040
+vn -0.660270 -0.657824 0.362369
+vn -0.922664 -0.284367 0.260437
+vn -0.230678 -0.855446 0.463681
+vn -0.083933 -0.975549 0.203125
+vn 0.132750 -0.947574 0.290657
+vn 0.416058 -0.904926 0.089470
+vn -0.401308 -0.913510 0.066719
+vn -0.553369 -0.824734 -0.116603
+vn 0.108508 -0.994062 0.008158
+vn 0.121011 -0.951619 -0.282449
+vn -0.415445 -0.898414 0.142329
+vn -0.326613 -0.945157 -0.001567
+vn -0.401308 -0.913510 0.066719
+vn -0.553369 -0.824734 -0.116603
+vn -0.208805 -0.967199 0.144662
+vn 0.548709 -0.835567 -0.027312
+vn -0.326613 -0.945157 -0.001567
+vn 0.793677 -0.602161 -0.086482
+vn 0.132750 -0.947574 0.290657
+vn 0.416058 -0.904926 0.089470
+vn 0.548709 -0.835567 -0.027312
+vn 0.793677 -0.602161 -0.086482
+vn -0.936896 -0.345878 -0.050935
+vn -0.954646 0.048429 -0.293778
+vn -0.987666 -0.139896 -0.070322
+vn -0.962842 0.161324 -0.216588
+vn 0.007134 -0.999653 -0.025367
+vn 0.073054 -0.961831 -0.263711
+vn -0.954646 0.048429 -0.293778
+vn -0.748989 0.488852 -0.447257
+vn -0.905216 0.175657 -0.386948
+vn 0.324688 0.693699 -0.642930
+vn -0.698148 0.715599 -0.022533
+vn 0.112937 0.962118 0.248142
+vn -0.967214 0.242099 0.076721
+vn -0.698148 0.715599 -0.022533
+vn -0.263348 0.712169 0.650740
+vn 0.112937 0.962118 0.248142
+vn 0.278252 -0.033763 -0.959915
+vn 0.921941 -0.020501 -0.386787
+vn 0.458438 0.502330 -0.733144
+vn 0.985913 0.147465 -0.078929
+vn 0.236858 0.943905 0.230090
+vn 0.458438 0.502330 -0.733144
+vn 0.737338 0.643323 0.206078
+vn 0.985913 0.147465 -0.078929
+vn -0.197676 0.461853 0.864648
+vn 0.023510 0.714181 0.699566
+vn 0.777823 0.218808 0.589164
+vn 0.810749 0.328661 0.484426
+vn 0.023510 0.714181 0.699566
+vn 0.236858 0.943905 0.230090
+vn 0.810749 0.328661 0.484426
+vn 0.737338 0.643323 0.206078
+vn -0.261265 0.425815 0.866269
+vn -0.268509 0.480816 0.834697
+vn 0.646824 0.274864 0.711385
+vn 0.725857 0.393420 0.564227
+vn -0.268509 0.480816 0.834697
+vn -0.276713 0.764952 0.581617
+vn 0.725857 0.393420 0.564227
+vn 0.028759 0.950885 0.308204
+vn -0.967214 0.242099 0.076721
+vn -0.927273 0.283170 0.244909
+vn -0.985495 0.075675 -0.151895
+vn -0.979135 0.152338 -0.134491
+vn -0.985495 0.075675 -0.151895
+vn -0.979135 0.152338 -0.134491
+vn -0.894898 0.268670 -0.356334
+vn -0.809100 0.101702 -0.578804
+vn -0.894898 0.268670 -0.356334
+vn 0.204213 0.812568 -0.545921
+vn -0.553622 0.832169 0.031578
+vn 0.078233 0.974644 0.209639
+vn -0.941947 0.273720 0.194458
+vn -0.866726 0.465521 0.179099
+vn -0.066120 0.513090 0.855785
+vn 0.011032 0.804062 0.594443
+vn -0.941947 0.273720 0.194458
+vn -0.850391 0.470388 0.235736
+vn -0.977411 0.156126 -0.142449
+vn -0.877283 0.470637 -0.094213
+vn -0.977411 0.156126 -0.142449
+vn -0.877283 0.470637 -0.094213
+vn -0.863946 0.132009 -0.485974
+vn -0.803486 0.371568 -0.465132
+vn -0.027906 0.986866 0.159113
+vn 0.087487 0.794312 -0.601177
+vn 0.624109 0.766774 0.150150
+vn 0.991701 0.117389 -0.052424
+vn -0.879008 0.281980 -0.384490
+vn -0.830526 0.146676 -0.537321
+vn 0.070217 0.822865 -0.563882
+vn 0.190730 0.219293 -0.956835
+vn -0.035893 0.997239 -0.065015
+vn 0.685232 0.720650 0.105452
+vn -0.097523 0.969757 0.223743
+vn 0.826899 0.437953 0.352754
+vn -0.134183 0.917172 0.375222
+vn 0.840394 0.369180 0.396793
+vn -0.213711 0.655133 0.724658
+vn 0.822859 0.278266 0.495450
+vn -0.007759 0.999286 -0.036967
+vn 0.665767 0.738551 0.106285
+vn -0.134183 0.917172 0.375222
+vn 0.840394 0.369180 0.396793
+vn -0.007759 0.999286 -0.036967
+vn 0.179688 0.771191 -0.610718
+vn 0.665767 0.738551 0.106285
+vn 0.980209 0.197763 -0.008934
+vn -0.259460 0.592958 0.762287
+vn 0.831417 0.253505 0.494451
+vn -0.170566 0.848435 0.501064
+vn 0.724760 0.515471 0.457180
+vn -0.831926 0.125123 -0.540595
+vn -0.736146 0.415948 -0.533926
+vn 0.295159 0.171396 -0.939949
+vn 0.212208 0.666028 -0.715105
+vn -0.860330 0.353791 0.366965
+vn -0.921914 0.316405 0.223525
+vn -0.910534 0.342729 -0.231223
+vn -0.956463 0.156206 -0.246534
+vn 0.063818 -0.939926 0.335359
+vn -0.567340 -0.779343 0.265989
+vn 0.019464 -0.950217 0.310980
+vn -0.678042 -0.711924 0.182819
+vn -0.776526 -0.600706 0.190158
+vn -0.900544 -0.427944 0.076709
+vn -0.567340 -0.779343 0.265989
+vn -0.678042 -0.711924 0.182819
+vn 0.927367 -0.364383 0.084945
+vn 0.939925 -0.339871 0.032063
+vn 0.986681 -0.160861 0.024158
+vn 0.976572 -0.163975 -0.139357
+vn 0.664809 0.690913 0.284022
+vn -0.023036 0.930504 0.365556
+vn 0.652617 0.747865 0.121608
+vn 0.008001 0.992188 0.124493
+vn 0.020591 -0.964701 -0.262543
+vn 0.005583 -0.999476 -0.031885
+vn -0.626985 -0.753720 -0.196966
+vn -0.583224 -0.809636 -0.065870
+vn 0.999584 0.002528 0.028729
+vn 0.999399 0.003856 0.034455
+vn 0.676431 -0.709701 -0.196891
+vn 0.641525 -0.766870 -0.018873
+vn 0.676431 -0.709701 -0.196891
+vn 0.641525 -0.766870 -0.018873
+vn 0.020591 -0.964701 -0.262543
+vn 0.005583 -0.999476 -0.031885
+vn 0.999481 -0.027722 0.016431
+vn 0.964934 -0.124709 -0.230975
+vn 0.979839 0.197540 -0.029896
+vn 0.940418 0.094925 -0.326502
+vn 0.763974 0.473289 -0.438567
+vn 0.940418 0.094925 -0.326502
+vn 0.544476 0.250647 -0.800451
+vn 0.647946 -0.090056 -0.756344
+vn -0.789265 0.611990 -0.050296
+vn -0.718501 0.636393 -0.280641
+vn -0.874636 0.465255 -0.136195
+vn -0.657804 0.584721 -0.474758
+vn -0.705584 0.661153 -0.255006
+vn -0.765700 0.506000 -0.397075
+vn -0.718501 0.636393 -0.280641
+vn -0.640402 0.608318 -0.468865
+vn -0.640396 0.684594 -0.348171
+vn -0.724423 0.556533 -0.406797
+vn -0.798840 0.476531 -0.367115
+vn -0.837983 0.396743 -0.374672
+vn -0.724423 0.556533 -0.406797
+vn -0.512826 0.733147 -0.446661
+vn -0.872286 0.250070 -0.420217
+vn -0.878001 0.366196 -0.308245
+vn -0.878001 0.366196 -0.308245
+vn -0.384143 0.831267 -0.401784
+vn -0.923601 0.359041 -0.134355
+vn -0.404654 0.896296 -0.181406
+vn 0.382398 0.903451 -0.193775
+vn 0.397324 0.915640 -0.061137
+vn 0.000000 0.982607 -0.185696
+vn 0.000000 0.998695 -0.051075
+vn 0.810444 0.451070 -0.373787
+vn 0.923376 0.016173 -0.383555
+vn 0.977555 0.035295 -0.207704
+vn 0.946209 -0.025916 -0.322518
+vn 0.914820 0.367445 -0.167598
+vn 0.917888 0.389047 -0.078256
+vn 0.382398 0.903451 -0.193775
+vn 0.397324 0.915640 -0.061137
+vn 0.758039 0.479330 -0.442289
+vn 0.743929 0.166526 -0.647178
+vn 0.856622 0.305541 -0.415745
+vn 0.909508 0.059095 -0.411464
+vn -0.899399 0.436410 0.025075
+vn -0.874636 0.465255 -0.136195
+vn -0.988005 0.150047 -0.036506
+vn -0.942440 0.202366 -0.266185
+vn -0.901307 0.105708 -0.420085
+vn -0.990152 0.034147 -0.135770
+vn -0.873085 -0.023629 -0.486995
+vn -0.935830 -0.094431 -0.339567
+vn -0.998056 -0.003899 0.062207
+vn -0.913877 -0.154344 0.375508
+vn -0.998940 -0.040744 -0.021440
+vn -0.995425 -0.094097 -0.016560
+vn -0.145026 0.810245 0.567865
+vn 0.781494 0.410453 0.469889
+vn -0.121654 0.937844 0.325037
+vn 0.529233 0.778137 0.338253
+vn 0.642185 0.761102 0.091229
+vn -0.076802 0.995098 -0.062296
+vn 0.529233 0.778137 0.338253
+vn -0.121654 0.937844 0.325037
+vn -0.167453 -0.861951 0.478539
+vn -0.021130 -0.996418 -0.081888
+vn 0.593112 -0.634614 0.495462
+vn 0.793726 -0.595159 0.125638
+vn 0.172610 -0.607962 -0.774976
+vn 0.858733 -0.396735 -0.324313
+vn -0.021130 -0.996418 -0.081888
+vn 0.793726 -0.595159 0.125638
+vn 0.732913 -0.335253 0.591983
+vn 0.593112 -0.634614 0.495462
+vn 0.969865 -0.131404 0.205172
+vn 0.793726 -0.595159 0.125638
+vn 0.924086 0.182069 0.336030
+vn 0.892423 0.327208 0.310670
+vn 0.925360 0.178276 0.334555
+vn 0.894124 0.323193 0.309981
+vn -0.319070 0.931309 -0.175667
+vn -0.342495 0.923325 -0.173691
+vn -0.162640 0.974543 -0.154320
+vn -0.187178 0.972008 -0.142004
+vn -0.529390 0.822898 -0.206360
+vn -0.545921 0.811500 -0.208416
+vn -0.319070 0.931309 -0.175667
+vn -0.342495 0.923325 -0.173691
+vn 0.435825 0.896184 0.083134
+vn 0.241964 0.970285 -0.000851
+vn 0.443790 0.891612 0.089877
+vn 0.247830 0.968764 0.008703
+vn 0.241964 0.970285 -0.000851
+vn 0.022304 0.996417 -0.081582
+vn 0.247830 0.968764 0.008703
+vn 0.019947 0.997093 -0.073536
+vn 0.556240 0.828623 0.063101
+vn 0.536521 0.841899 0.057885
+vn -0.033093 0.995862 -0.084644
+vn -0.045519 0.995135 -0.087378
+vn -0.033093 0.995862 -0.084644
+vn -0.045519 0.995135 -0.087378
+vn -0.672587 0.707704 -0.216291
+vn -0.682807 0.697343 -0.217914
+vn -0.672587 0.707704 -0.216291
+vn -0.682807 0.697343 -0.217914
+vn -0.928295 0.277526 -0.247483
+vn -0.930642 0.269569 -0.247465
+vn -0.928295 0.277526 -0.247483
+vn -0.930642 0.269569 -0.247465
+vn -0.831475 0.497806 -0.246654
+vn -0.839241 0.484170 -0.247496
+vn -0.831475 0.497806 -0.246654
+vn -0.839241 0.484170 -0.247496
+vn -0.529390 0.822898 -0.206360
+vn -0.545921 0.811500 -0.208416
+vn 0.946939 0.274622 0.167000
+vn 0.953441 0.231054 0.193814
+vn 0.556240 0.828623 0.063101
+vn 0.536521 0.841899 0.057885
+vn 0.183065 0.943172 0.277333
+vn 0.837712 0.325109 0.438796
+vn 0.085312 0.933115 0.349310
+vn 0.784214 -0.123544 0.608067
+vn 0.837712 0.325109 0.438796
+vn 0.828741 0.395155 0.396283
+vn 0.916914 0.095317 0.387536
+vn 0.917762 0.126369 0.376490
+vn 0.085312 0.933115 0.349310
+vn 0.784214 -0.123544 0.608067
+vn -0.237276 0.893795 0.380566
+vn 0.217299 -0.639942 0.737058
+vn -0.237276 0.893795 0.380566
+vn 0.217299 -0.639942 0.737058
+vn -0.313831 0.936244 0.157978
+vn -0.268172 0.533654 0.802058
+vn 0.914415 0.133286 0.382205
+vn 0.904394 0.138702 0.403526
+vn 0.880889 0.263296 0.393332
+vn 0.870994 0.269437 0.410821
+vn 0.343864 0.281497 -0.895833
+vn 0.134897 0.960135 -0.244832
+vn 0.315662 0.369827 -0.873834
+vn 0.351787 0.927693 -0.125027
+vn 0.343864 0.281497 -0.895833
+vn 0.315662 0.369827 -0.873834
+vn 0.328340 -0.039314 -0.943741
+vn -0.521833 0.168360 -0.836269
+vn -0.024191 0.999561 -0.017114
+vn -0.102666 0.994225 0.031242
+vn 0.001434 0.999990 -0.004278
+vn -0.268172 0.533654 0.802058
+vn -0.011988 0.999298 0.035486
+vn 0.028263 0.997934 0.057694
+vn -0.042093 0.991406 0.123866
+vn -0.003732 0.990692 0.136070
+vn -0.054297 0.985781 0.159021
+vn -0.042093 0.991406 0.123866
+vn -0.013442 0.985940 0.166561
+vn -0.003732 0.990692 0.136070
+vn -0.033027 0.994812 0.096225
+vn -0.054297 0.985781 0.159021
+vn 0.009535 0.993829 0.110509
+vn -0.013442 0.985940 0.166561
+vn 0.102749 0.955299 -0.277212
+vn -0.033027 0.994812 0.096225
+vn 0.134897 0.960135 -0.244832
+vn 0.009535 0.993829 0.110509
+vn -0.921914 0.316405 0.223525
+vn -0.340984 0.507426 0.791359
+vn -0.850579 0.465078 0.245394
+vn -0.213750 0.759871 0.613928
+vn 0.925360 0.178276 0.334555
+vn 0.894124 0.323193 0.309981
+vn 0.921756 0.173570 0.346755
+vn 0.889559 0.320923 0.325105
+vn -0.961629 0.167435 -0.217337
+vn -0.873085 -0.023629 -0.486995
+vn -0.967265 0.067379 -0.244658
+vn -0.809217 -0.136705 -0.571384
+vn -0.967265 0.067379 -0.244658
+vn -0.809217 -0.136705 -0.571384
+vn -0.952942 -0.091500 -0.289013
+vn -0.812910 -0.241595 -0.529915
+vn -0.858548 -0.332375 -0.390413
+vn -0.726277 -0.467211 -0.504217
+vn -0.995459 -0.051063 0.080340
+vn -0.996329 -0.059885 0.061176
+vn 0.680941 0.535093 0.499995
+vn 0.655096 0.696889 0.291881
+vn 0.997242 -0.060896 -0.042430
+vn 0.989288 -0.057495 -0.134176
+vn 0.628272 -0.581659 -0.516669
+vn 0.583279 -0.711794 -0.391324
+vn 0.033060 -0.757959 -0.651464
+vn 0.014016 -0.899575 -0.436541
+vn 0.013919 -0.677469 -0.735420
+vn 0.033060 -0.757959 -0.651464
+vn -0.671252 -0.511922 -0.536057
+vn -0.648508 -0.591765 -0.478802
+vn -0.726277 -0.467211 -0.504217
+vn -0.671252 -0.511922 -0.536057
+vn -0.996329 -0.059885 0.061176
+vn -0.999297 -0.013242 0.035072
+vn -0.974170 -0.084331 -0.209477
+vn -0.812910 -0.241595 -0.529915
+vn -0.903245 -0.114683 -0.413517
+vn -0.809217 -0.136705 -0.571384
+vn -0.979377 -0.201403 -0.016052
+vn -0.974170 -0.084331 -0.209477
+vn -0.990994 -0.133401 0.011607
+vn -0.995425 -0.094097 -0.016560
+vn -0.768623 -0.364619 0.525616
+vn -0.843274 -0.357186 0.401632
+vn -0.846921 -0.150514 0.509972
+vn -0.913877 -0.154344 0.375508
+vn -0.973808 -0.137483 0.181097
+vn -0.768623 -0.364619 0.525616
+vn -0.985387 0.065217 0.157349
+vn -0.846921 -0.150514 0.509972
+vn -0.230678 -0.855446 0.463681
+vn -0.660270 -0.657824 0.362369
+vn -0.083933 -0.975549 0.203125
+vn -0.665828 -0.737761 0.111269
+vn 0.073054 -0.961831 -0.263711
+vn 0.501348 -0.859685 -0.097934
+vn -0.220767 -0.200882 -0.954415
+vn 0.637176 -0.725278 -0.260725
+vn 0.121011 -0.951619 -0.282449
+vn 0.689557 -0.677984 -0.254653
+vn 0.501348 -0.859685 -0.097934
+vn 0.637176 -0.725278 -0.260725
+vn -0.905216 0.175657 -0.386948
+vn -0.793939 0.094207 -0.600654
+vn 0.324688 0.693699 -0.642930
+vn 0.261667 0.060505 -0.963260
+vn -0.263348 0.712169 0.650740
+vn -0.148256 0.481170 0.864000
+vn -0.967214 0.242099 0.076721
+vn -0.927273 0.283170 0.244909
+vn -0.197676 0.461853 0.864648
+vn -0.157480 0.707784 0.688652
+vn -0.916806 0.271865 0.292501
+vn -0.821930 0.464264 0.329986
+vn -0.916806 0.271865 0.292501
+vn -0.821930 0.464264 0.329986
+vn -0.981517 0.147442 -0.122002
+vn -0.860972 0.503814 -0.069992
+vn -0.981517 0.147442 -0.122002
+vn -0.860972 0.503814 -0.069992
+vn -0.793939 0.094207 -0.600654
+vn -0.722101 0.341023 -0.601892
+vn 0.921941 -0.020501 -0.386787
+vn 0.278252 -0.033763 -0.959915
+vn 0.888562 0.139389 -0.437068
+vn 0.256818 0.413288 -0.873635
+vn -0.674593 0.037079 -0.737258
+vn -0.611543 0.232150 -0.756387
+vn 0.278252 -0.033763 -0.959915
+vn 0.256818 0.413288 -0.873635
+vn -0.881615 0.267748 0.388671
+vn -0.772453 0.474827 0.421729
+vn -0.981580 0.136826 -0.133337
+vn -0.844829 0.527708 -0.088252
+vn -0.981580 0.136826 -0.133337
+vn -0.844829 0.527708 -0.088252
+vn -0.674593 0.037079 -0.737258
+vn -0.611543 0.232150 -0.756387
+vn 0.777823 0.218808 0.589164
+vn 0.675856 0.419167 0.606232
+vn -0.197676 0.461853 0.864648
+vn -0.157480 0.707784 0.688652
+vn 0.646824 0.274864 0.711385
+vn 0.580694 0.426793 0.693283
+vn -0.261265 0.425815 0.866269
+vn -0.136870 0.679959 0.720363
+vn -0.881615 0.267748 0.388671
+vn -0.261265 0.425815 0.866269
+vn -0.772453 0.474827 0.421729
+vn -0.136870 0.679959 0.720363
+vn 0.725857 0.393420 0.564227
+vn 0.028759 0.950885 0.308204
+vn 0.187915 0.949616 -0.250833
+vn -0.334074 0.940287 -0.065236
+vn -0.910534 0.342729 -0.231223
+vn -0.521833 0.168360 -0.836269
+vn -0.334074 0.940287 -0.065236
+vn 0.187915 0.949616 -0.250833
+vn -0.894898 0.268670 -0.356334
+vn -0.809100 0.101702 -0.578804
+vn 0.204213 0.812568 -0.545921
+vn 0.172591 0.090294 -0.980846
+vn -0.066120 0.513090 0.855785
+vn -0.052944 0.750822 0.658380
+vn -0.941947 0.273720 0.194458
+vn -0.850391 0.470388 0.235736
+vn 0.011032 0.804062 0.594443
+vn 0.837122 0.301237 0.456599
+vn -0.066120 0.513090 0.855785
+vn 0.855309 0.183435 0.484560
+vn 0.078233 0.974644 0.209639
+vn 0.650462 0.711011 0.267136
+vn 0.011032 0.804062 0.594443
+vn 0.837122 0.301237 0.456599
+vn 0.095026 0.160177 -0.982504
+vn 0.980034 0.043302 -0.194060
+vn 0.087487 0.794312 -0.601177
+vn 0.991701 0.117389 -0.052424
+vn -0.863946 0.132009 -0.485974
+vn -0.803486 0.371568 -0.465132
+vn 0.095026 0.160177 -0.982504
+vn 0.084161 0.701132 -0.708047
+vn -0.035893 0.997239 -0.065015
+vn 0.070217 0.822865 -0.563882
+vn 0.685232 0.720650 0.105452
+vn 0.974719 0.223408 -0.003356
+vn -0.213711 0.655133 0.724658
+vn -0.153248 0.871042 0.466691
+vn -0.941971 0.315638 0.114296
+vn -0.806719 0.581366 0.105914
+vn -0.941971 0.315638 0.114296
+vn -0.806719 0.581366 0.105914
+vn -0.964945 0.177274 -0.193534
+vn -0.806111 0.560519 -0.189745
+vn -0.964945 0.177274 -0.193534
+vn -0.806111 0.560519 -0.189745
+vn -0.830526 0.146676 -0.537321
+vn -0.721015 0.463206 -0.515342
+vn 0.295159 0.171396 -0.939949
+vn 0.988148 0.067064 -0.138081
+vn 0.179688 0.771191 -0.610718
+vn 0.980209 0.197763 -0.008934
+vn -0.170566 0.848435 0.501064
+vn 0.007520 0.998351 -0.056914
+vn -0.845199 0.524426 0.103037
+vn -0.836662 0.511391 -0.196152
+vn -0.836662 0.511391 -0.196152
+vn 0.007520 0.998351 -0.056914
+vn -0.736146 0.415948 -0.533926
+vn 0.212208 0.666028 -0.715105
+vn 0.827160 0.376818 0.416911
+vn 0.624109 0.766774 0.150150
+vn 0.924677 0.336747 0.177691
+vn 0.914713 0.382092 0.131555
+vn 0.827160 0.376818 0.416911
+vn 0.977296 0.046805 0.206643
+vn 0.831417 0.253505 0.494451
+vn 0.973132 0.103716 0.205563
+vn 0.663964 -0.698881 0.265927
+vn 0.713242 -0.667680 0.213281
+vn 0.939925 -0.339871 0.032063
+vn 0.953330 -0.299707 0.036577
+vn 0.063818 -0.939926 0.335359
+vn 0.019464 -0.950217 0.310980
+vn 0.713242 -0.667680 0.213281
+vn 0.728313 -0.651942 0.211024
+vn -0.987666 -0.139896 -0.070322
+vn -0.962842 0.161324 -0.216588
+vn -0.900544 -0.427944 0.076709
+vn -0.991057 -0.049969 -0.123730
+vn 0.986681 -0.160861 0.024158
+vn 0.976572 -0.163975 -0.139357
+vn 0.999481 -0.027722 0.016431
+vn 0.964934 -0.124709 -0.230975
+vn 0.664809 0.690913 0.284022
+vn 0.652617 0.747865 0.121608
+vn 0.999584 0.002528 0.028729
+vn 0.999399 0.003856 0.034455
+vn 0.008001 0.992188 0.124493
+vn 0.039353 0.997918 -0.051095
+vn 0.652617 0.747865 0.121608
+vn 0.639120 0.766688 -0.060962
+vn 0.008001 0.992188 0.124493
+vn -0.658139 0.752896 0.000516
+vn 0.039353 0.997918 -0.051095
+vn -0.487263 0.846834 -0.213182
+vn -0.990222 -0.096545 -0.100692
+vn -0.901836 -0.157637 -0.402296
+vn -0.658139 0.752896 0.000516
+vn -0.487263 0.846834 -0.213182
+vn -0.990222 -0.096545 -0.100692
+vn -0.583224 -0.809636 -0.065870
+vn -0.901836 -0.157637 -0.402296
+vn -0.335054 -0.941456 -0.037398
+vn 0.940418 0.094925 -0.326502
+vn 0.964934 -0.124709 -0.230975
+vn 0.647946 -0.090056 -0.756344
+vn 0.726670 -0.250566 -0.639662
+vn -0.765700 0.506000 -0.397075
+vn -0.798840 0.476531 -0.367115
+vn -0.823821 0.376740 -0.423540
+vn -0.837983 0.396743 -0.374672
+vn -0.872286 0.250070 -0.420217
+vn -0.883262 0.264311 -0.387282
+vn -0.724423 0.556533 -0.406797
+vn -0.837983 0.396743 -0.374672
+vn -0.872286 0.250070 -0.420217
+vn -0.878001 0.366196 -0.308245
+vn -0.891878 0.031818 -0.451155
+vn -0.919153 0.003328 -0.393887
+vn -0.923601 0.359041 -0.134355
+vn -0.993388 -0.011565 -0.114219
+vn -0.878001 0.366196 -0.308245
+vn -0.979453 -0.018634 -0.200811
+vn -0.404654 0.896296 -0.181406
+vn 0.000000 0.982607 -0.185696
+vn -0.399802 0.914602 -0.060517
+vn 0.000000 0.998695 -0.051075
+vn 0.991549 -0.027578 -0.126764
+vn 0.977555 0.035295 -0.207704
+vn 0.969202 -0.121510 -0.214205
+vn 0.964189 -0.056842 -0.259053
+vn 0.991549 -0.027578 -0.126764
+vn 0.996373 -0.007808 -0.084737
+vn 0.914820 0.367445 -0.167598
+vn 0.917888 0.389047 -0.078256
+vn 0.923376 0.016173 -0.383555
+vn 0.909508 0.059095 -0.411464
+vn 0.737624 -0.092157 -0.668893
+vn 0.743929 0.166526 -0.647178
+vn -0.985387 0.065217 0.157349
+vn -0.988005 0.150047 -0.036506
+vn -0.973808 -0.137483 0.181097
+vn -0.998679 -0.016927 -0.048512
+vn -0.998056 -0.003899 0.062207
+vn -0.998940 -0.040744 -0.021440
+vn -0.935830 -0.094431 -0.339567
+vn -0.903245 -0.114683 -0.413517
+vn 0.685232 0.720650 0.105452
+vn 0.974719 0.223408 -0.003356
+vn 0.922759 0.341429 0.178725
+vn 0.946939 0.274622 0.167000
+vn 0.690264 0.694722 0.202230
+vn 0.443790 0.891612 0.089877
+vn 0.695205 0.689024 0.204784
+vn 0.450342 0.887913 0.093821
+vn 0.022304 0.996417 -0.081582
+vn -0.187178 0.972008 -0.142004
+vn 0.019947 0.997093 -0.073536
+vn -0.198026 0.970257 -0.139237
+vn 0.953441 0.231054 0.193814
+vn 0.946939 0.274622 0.167000
+vn 0.975626 0.046360 0.214485
+vn 0.974719 0.223408 -0.003356
+vn 0.892423 0.327208 0.310670
+vn 0.695205 0.689024 0.204784
+vn 0.894124 0.323193 0.309981
+vn 0.700112 0.683263 0.207354
+vn 0.916914 0.095317 0.387536
+vn 0.922695 -0.007141 0.385465
+vn 0.837712 0.325109 0.438796
+vn 0.784214 -0.123544 0.608067
+vn 0.919134 0.129894 0.371915
+vn 0.914415 0.133286 0.382205
+vn 0.886708 0.257734 0.383826
+vn 0.880889 0.263296 0.393332
+vn 0.917762 0.126369 0.376490
+vn 0.919134 0.129894 0.371915
+vn 0.887435 0.251944 0.385984
+vn 0.886708 0.257734 0.383826
+vn 0.916914 0.095317 0.387536
+vn 0.917762 0.126369 0.376490
+vn 0.891100 0.247359 0.380466
+vn 0.887435 0.251944 0.385984
+vn 0.869902 0.437974 0.226826
+vn 0.931104 0.181580 -0.316346
+vn 0.021402 0.997043 -0.073811
+vn 0.265659 0.431705 -0.862007
+vn 0.957872 0.044163 -0.283779
+vn 0.303534 -0.032065 -0.952281
+vn 0.931104 0.181580 -0.316346
+vn 0.265659 0.431705 -0.862007
+vn 0.303534 -0.032065 -0.952281
+vn 0.328340 -0.039314 -0.943741
+vn -0.661970 0.035692 -0.748680
+vn -0.521833 0.168360 -0.836269
+vn 0.001434 0.999990 -0.004278
+vn 0.029194 0.999573 0.001213
+vn -0.011988 0.999298 0.035486
+vn 0.028263 0.997934 0.057694
+vn -0.921914 0.316405 0.223525
+vn -0.850579 0.465078 0.245394
+vn -0.956463 0.156206 -0.246534
+vn -0.860237 0.454645 -0.230846
+vn -0.850579 0.465078 0.245394
+vn -0.213750 0.759871 0.613928
+vn -0.860237 0.454645 -0.230846
+vn 0.021402 0.997043 -0.073811
+vn 0.870994 0.269437 0.410821
+vn 0.859642 0.279858 0.427429
+vn 0.696668 0.599336 0.394271
+vn 0.680756 0.616205 0.396059
+vn 0.859642 0.279858 0.427429
+vn 0.857593 0.296836 0.420026
+vn 0.680756 0.616205 0.396059
+vn 0.672794 0.640602 0.370105
+vn 0.857593 0.296836 0.420026
+vn 0.873030 0.314035 0.373096
+vn 0.672794 0.640602 0.370105
+vn 0.683895 0.665414 0.299184
+vn 0.894124 0.323193 0.309981
+vn 0.700112 0.683263 0.207354
+vn 0.889559 0.320923 0.325105
+vn 0.697957 0.677784 0.231225
+vn 0.889559 0.320923 0.325105
+vn 0.697957 0.677784 0.231225
+vn 0.873030 0.314035 0.373096
+vn 0.683895 0.665414 0.299184
+vn 0.880889 0.263296 0.393332
+vn 0.870994 0.269437 0.410821
+vn 0.709151 0.588609 0.388130
+vn 0.696668 0.599336 0.394271
+vn -0.638377 0.301975 0.708016
+vn -0.996329 -0.059885 0.061176
+vn -0.664039 0.433624 0.609116
+vn -0.999297 -0.013242 0.035072
+vn 0.051424 0.588536 0.806834
+vn -0.664039 0.433624 0.609116
+vn 0.012169 0.725743 0.687858
+vn -0.664809 0.535028 0.521320
+vn 0.012169 0.725743 0.687858
+vn -0.011137 0.872826 0.487905
+vn 0.680941 0.535093 0.499995
+vn 0.655096 0.696889 0.291881
+vn 0.989288 -0.057495 -0.134176
+vn 0.655096 0.696889 0.291881
+vn 0.901836 0.003864 -0.432062
+vn 0.487263 0.865218 0.118210
+vn 0.989288 -0.057495 -0.134176
+vn 0.901836 0.003864 -0.432062
+vn 0.583279 -0.711794 -0.391324
+vn 0.335055 -0.859501 -0.386000
+vn -0.974170 -0.084331 -0.209477
+vn -0.903245 -0.114683 -0.413517
+vn -0.995425 -0.094097 -0.016560
+vn -0.998940 -0.040744 -0.021440
+vn -0.843274 -0.357186 0.401632
+vn -0.990994 -0.133401 0.011607
+vn -0.913877 -0.154344 0.375508
+vn -0.995425 -0.094097 -0.016560
+vn -0.973808 -0.137483 0.181097
+vn -0.998679 -0.016927 -0.048512
+vn -0.922664 -0.284367 0.260437
+vn -0.996591 -0.073890 -0.036695
+vn -0.660270 -0.657824 0.362369
+vn -0.922664 -0.284367 0.260437
+vn -0.973579 -0.226915 0.025574
+vn -0.996591 -0.073890 -0.036695
+vn -0.083933 -0.975549 0.203125
+vn -0.035944 -0.997343 0.063366
+vn 0.416058 -0.904926 0.089470
+vn 0.682070 -0.731287 -0.000252
+vn -0.326613 -0.945157 -0.001567
+vn -0.025820 -0.950341 -0.310138
+vn -0.553369 -0.824734 -0.116603
+vn -0.688920 -0.683914 -0.240106
+vn 0.121011 -0.951619 -0.282449
+vn -0.553369 -0.824734 -0.116603
+vn -0.672131 -0.678358 -0.296765
+vn -0.688920 -0.683914 -0.240106
+vn -0.326613 -0.945157 -0.001567
+vn 0.793677 -0.602161 -0.086482
+vn -0.025820 -0.950341 -0.310138
+vn 0.948524 -0.304993 -0.085328
+vn 0.416058 -0.904926 0.089470
+vn 0.682070 -0.731287 -0.000252
+vn 0.793677 -0.602161 -0.086482
+vn 0.948524 -0.304993 -0.085328
+vn -0.954646 0.048429 -0.293778
+vn -0.748989 0.488852 -0.447257
+vn -0.962842 0.161324 -0.216588
+vn -0.747973 0.552644 -0.367588
+vn 0.073054 -0.961831 -0.263711
+vn -0.220767 -0.200882 -0.954415
+vn -0.748989 0.488852 -0.447257
+vn -0.356941 0.757305 -0.546885
+vn 0.121011 -0.951619 -0.282449
+vn 0.011688 -0.920591 -0.390353
+vn 0.689557 -0.677984 -0.254653
+vn 0.678361 -0.679871 -0.278570
+vn 0.112937 0.962118 0.248142
+vn 0.324688 0.693699 -0.642930
+vn 0.659795 0.722998 0.204806
+vn 0.986342 0.152319 -0.062670
+vn -0.148256 0.481170 0.864000
+vn -0.263348 0.712169 0.650740
+vn 0.148640 0.682958 0.715174
+vn 0.148640 0.682958 0.715174
+vn -0.263348 0.712169 0.650740
+vn 0.112937 0.962118 0.248142
+vn 0.888562 0.139389 -0.437068
+vn 0.871363 0.438513 0.220075
+vn 0.921941 -0.020501 -0.386787
+vn 0.972791 0.075737 0.218954
+vn 0.921941 -0.020501 -0.386787
+vn 0.972791 0.075737 0.218954
+vn 0.985913 0.147465 -0.078929
+vn 0.975031 0.029701 0.220076
+vn 0.810749 0.328661 0.484426
+vn 0.737338 0.643323 0.206078
+vn 0.872410 0.426259 0.239176
+vn 0.823075 0.525207 0.216114
+vn 0.737338 0.643323 0.206078
+vn 0.985913 0.147465 -0.078929
+vn 0.823075 0.525207 0.216114
+vn 0.904715 0.381644 0.189310
+vn 0.777823 0.218808 0.589164
+vn 0.981351 0.070626 0.178779
+vn 0.675856 0.419167 0.606232
+vn 0.881995 0.423584 0.206547
+vn 0.810749 0.328661 0.484426
+vn 0.983923 0.011655 0.178213
+vn 0.777823 0.218808 0.589164
+vn 0.981351 0.070626 0.178779
+vn 0.646824 0.274864 0.711385
+vn 0.972791 0.075737 0.218954
+vn 0.580694 0.426793 0.693283
+vn 0.871363 0.438513 0.220075
+vn 0.725857 0.393420 0.564227
+vn 0.975031 0.029701 0.220076
+vn 0.646824 0.274864 0.711385
+vn 0.972791 0.075737 0.218954
+vn 0.725857 0.393420 0.564227
+vn 0.187915 0.949616 -0.250833
+vn 0.913592 0.391539 0.109762
+vn 0.722328 0.456529 -0.519446
+vn -0.910534 0.342729 -0.231223
+vn -0.956463 0.156206 -0.246534
+vn -0.521833 0.168360 -0.836269
+vn -0.661970 0.035692 -0.748680
+vn -0.148256 0.481170 0.864000
+vn -0.103991 0.664875 0.739681
+vn -0.927273 0.283170 0.244909
+vn -0.813310 0.470265 0.342605
+vn -0.927273 0.283170 0.244909
+vn -0.813310 0.470265 0.342605
+vn -0.979135 0.152338 -0.134491
+vn -0.856678 0.512480 -0.058886
+vn -0.979135 0.152338 -0.134491
+vn -0.856678 0.512480 -0.058886
+vn -0.809100 0.101702 -0.578804
+vn -0.738191 0.336024 -0.584946
+vn 0.078233 0.974644 0.209639
+vn 0.204213 0.812568 -0.545921
+vn 0.650462 0.711011 0.267136
+vn 0.980460 0.196551 -0.008129
+vn -0.066120 0.513090 0.855785
+vn 0.855309 0.183435 0.484560
+vn -0.052944 0.750822 0.658380
+vn 0.765076 0.405472 0.500251
+vn -0.850391 0.470388 0.235736
+vn -0.052944 0.750822 0.658380
+vn -0.877283 0.470637 -0.094213
+vn 0.005861 0.995733 0.092091
+vn -0.877283 0.470637 -0.094213
+vn 0.005861 0.995733 0.092091
+vn -0.803486 0.371568 -0.465132
+vn 0.084161 0.701132 -0.708047
+vn 0.980034 0.043302 -0.194060
+vn 0.095026 0.160177 -0.982504
+vn 0.925716 0.329901 -0.184974
+vn 0.084161 0.701132 -0.708047
+vn 0.624109 0.766774 0.150150
+vn 0.991701 0.117389 -0.052424
+vn 0.914713 0.382092 0.131555
+vn 0.969492 0.206023 0.132816
+vn 0.070217 0.822865 -0.563882
+vn 0.190730 0.219293 -0.956835
+vn 0.974719 0.223408 -0.003356
+vn 0.982800 0.091607 -0.160349
+vn -0.830526 0.146676 -0.537321
+vn -0.721015 0.463206 -0.515342
+vn 0.190730 0.219293 -0.956835
+vn 0.121882 0.701737 -0.701933
+vn -0.213711 0.655133 0.724658
+vn 0.822859 0.278266 0.495450
+vn -0.153248 0.871042 0.466691
+vn 0.687026 0.582313 0.434634
+vn 0.840394 0.369180 0.396793
+vn 0.665767 0.738551 0.106285
+vn 0.928149 0.310439 0.205349
+vn 0.903105 0.393776 0.171296
+vn 0.840394 0.369180 0.396793
+vn 0.975626 0.046360 0.214485
+vn 0.822859 0.278266 0.495450
+vn 0.970783 0.121516 0.206916
+vn 0.988148 0.067064 -0.138081
+vn 0.295159 0.171396 -0.939949
+vn 0.914026 0.367835 -0.171040
+vn 0.212208 0.666028 -0.715105
+vn 0.665767 0.738551 0.106285
+vn 0.980209 0.197763 -0.008934
+vn 0.903105 0.393776 0.171296
+vn 0.937082 0.309569 0.161383
+vn -0.170566 0.848435 0.501064
+vn 0.724760 0.515471 0.457180
+vn 0.007520 0.998351 -0.056914
+vn 0.861713 0.480367 0.163395
+vn 0.831417 0.253505 0.494451
+vn 0.973132 0.103716 0.205563
+vn 0.724760 0.515471 0.457180
+vn 0.861713 0.480367 0.163395
+vn 0.924677 0.336747 0.177691
+vn 0.949655 0.253425 0.184205
+vn 0.827160 0.376818 0.416911
+vn 0.977296 0.046805 0.206643
+vn 0.019464 -0.950217 0.310980
+vn -0.678042 -0.711924 0.182819
+vn 0.009085 -0.785833 0.618372
+vn -0.820731 -0.497891 0.280189
+vn -0.900544 -0.427944 0.076709
+vn -0.991057 -0.049969 -0.123730
+vn -0.678042 -0.711924 0.182819
+vn -0.990108 -0.106807 -0.090984
+vn 0.939925 -0.339871 0.032063
+vn 0.953330 -0.299707 0.036577
+vn 0.976572 -0.163975 -0.139357
+vn 0.954392 0.095650 -0.282819
+vn 0.005583 -0.999476 -0.031885
+vn 0.025159 -0.988582 0.148568
+vn -0.583224 -0.809636 -0.065870
+vn -0.335054 -0.941456 -0.037398
+vn 0.641525 -0.766870 -0.018873
+vn 0.618982 -0.778860 0.101184
+vn 0.005583 -0.999476 -0.031885
+vn 0.025159 -0.988582 0.148568
+vn 0.999399 0.003856 0.034455
+vn 0.652617 0.747865 0.121608
+vn 0.999604 -0.000771 -0.028128
+vn 0.639120 0.766688 -0.060962
+vn 0.641525 -0.766870 -0.018873
+vn 0.999399 0.003856 0.034455
+vn 0.618982 -0.778860 0.101184
+vn 0.999604 -0.000771 -0.028128
+vn 0.976572 -0.163975 -0.139357
+vn 0.803313 -0.060196 -0.592507
+vn 0.964934 -0.124709 -0.230975
+vn 0.726670 -0.250566 -0.639662
+vn -0.874636 0.465255 -0.136195
+vn -0.657804 0.584721 -0.474758
+vn -0.942440 0.202366 -0.266185
+vn -0.644627 0.278099 -0.712121
+vn -0.718501 0.636393 -0.280641
+vn -0.640402 0.608318 -0.468865
+vn -0.657804 0.584721 -0.474758
+vn -0.625123 0.521335 -0.580889
+vn -0.640402 0.608318 -0.468865
+vn -0.765700 0.506000 -0.397075
+vn -0.625123 0.521335 -0.580889
+vn -0.823821 0.376740 -0.423540
+vn -0.883262 0.264311 -0.387282
+vn -0.872286 0.250070 -0.420217
+vn -0.878770 0.167981 -0.446706
+vn -0.891878 0.031818 -0.451155
+vn -0.993388 -0.011565 -0.114219
+vn -0.923601 0.359041 -0.134355
+vn -0.995797 -0.004915 -0.091454
+vn -0.918161 0.388283 -0.078849
+vn -0.923601 0.359041 -0.134355
+vn -0.404654 0.896296 -0.181406
+vn -0.918161 0.388283 -0.078849
+vn -0.399802 0.914602 -0.060517
+vn 0.917888 0.389047 -0.078256
+vn 0.917842 0.392374 -0.060080
+vn 0.397324 0.915640 -0.061137
+vn 0.397557 0.917513 -0.010892
+vn 0.397324 0.915640 -0.061137
+vn 0.397557 0.917513 -0.010892
+vn 0.000000 0.998695 -0.051075
+vn 0.000000 0.999986 0.005218
+vn 0.946209 -0.025916 -0.322518
+vn 0.923376 0.016173 -0.383555
+vn 0.892171 -0.121527 -0.435043
+vn 0.737624 -0.092157 -0.668893
+vn 0.977555 0.035295 -0.207704
+vn 0.946209 -0.025916 -0.322518
+vn 0.964189 -0.056842 -0.259053
+vn 0.892171 -0.121527 -0.435043
+vn 0.991549 -0.027578 -0.126764
+vn 0.969202 -0.121510 -0.214205
+vn 0.933211 -0.317702 -0.167877
+vn 0.885382 -0.387520 -0.256762
+vn 0.996373 -0.007808 -0.084737
+vn 0.991549 -0.027578 -0.126764
+vn 0.932553 -0.338357 -0.125935
+vn 0.933211 -0.317702 -0.167877
+vn 0.996373 -0.007808 -0.084737
+vn 0.996072 -0.004091 -0.088457
+vn 0.917888 0.389047 -0.078256
+vn 0.917842 0.392374 -0.060080
+vn -0.988005 0.150047 -0.036506
+vn -0.942440 0.202366 -0.266185
+vn -0.998679 -0.016927 -0.048512
+vn -0.954335 0.046524 -0.295095
+vn -0.873085 -0.023629 -0.486995
+vn -0.935830 -0.094431 -0.339567
+vn -0.809217 -0.136705 -0.571384
+vn -0.903245 -0.114683 -0.413517
+vn -0.342495 0.923325 -0.173691
+vn -0.356272 0.917801 -0.175249
+vn -0.187178 0.972008 -0.142004
+vn -0.198026 0.970257 -0.139237
+vn -0.545921 0.811500 -0.208416
+vn -0.560258 0.800903 -0.211339
+vn -0.342495 0.923325 -0.173691
+vn -0.356272 0.917801 -0.175249
+vn -0.839241 0.484170 -0.247496
+vn -0.846769 0.470504 -0.248210
+vn -0.545921 0.811500 -0.208416
+vn -0.560258 0.800903 -0.211339
+vn 0.443790 0.891612 0.089877
+vn 0.247830 0.968764 0.008703
+vn 0.450342 0.887913 0.093821
+vn 0.253214 0.967332 0.012292
+vn 0.247830 0.968764 0.008703
+vn 0.019947 0.997093 -0.073536
+vn 0.253214 0.967332 0.012292
+vn 0.020466 0.997200 -0.071920
+vn 0.953441 0.231054 0.193814
+vn 0.928149 0.310439 0.205349
+vn 0.536521 0.841899 0.057885
+vn 0.515356 0.855387 0.052161
+vn 0.536521 0.841899 0.057885
+vn 0.515356 0.855387 0.052161
+vn -0.045519 0.995135 -0.087378
+vn -0.058101 0.994209 -0.090402
+vn -0.045519 0.995135 -0.087378
+vn -0.058101 0.994209 -0.090402
+vn -0.682807 0.697343 -0.217914
+vn -0.692632 0.687099 -0.219446
+vn -0.682807 0.697343 -0.217914
+vn -0.692632 0.687099 -0.219446
+vn -0.930642 0.269569 -0.247465
+vn -0.932953 0.261772 -0.247133
+vn -0.930642 0.269569 -0.247465
+vn -0.932953 0.261772 -0.247133
+vn -0.839241 0.484170 -0.247496
+vn -0.846769 0.470504 -0.248210
+vn 0.975626 0.046360 0.214485
+vn 0.840394 0.369180 0.396793
+vn 0.953441 0.231054 0.193814
+vn 0.928149 0.310439 0.205349
+vn 0.922695 -0.007141 0.385465
+vn 0.916914 0.095317 0.387536
+vn 0.906901 0.253125 0.336835
+vn 0.891100 0.247359 0.380466
+vn 0.784214 -0.123544 0.608067
+vn 0.634231 -0.616073 0.467124
+vn 0.217299 -0.639942 0.737058
+vn 0.223933 -0.857028 0.464066
+vn -0.268172 0.533654 0.802058
+vn 0.217299 -0.639942 0.737058
+vn -0.122627 -0.907069 0.402727
+vn 0.223933 -0.857028 0.464066
+vn 0.886708 0.257734 0.383826
+vn 0.880889 0.263296 0.393332
+vn 0.718833 0.580158 0.383008
+vn 0.709151 0.588609 0.388130
+vn -0.661970 0.035692 -0.748680
+vn -0.626471 0.203544 -0.752399
+vn 0.303534 -0.032065 -0.952281
+vn 0.265659 0.431705 -0.862007
+vn 0.134897 0.960135 -0.244832
+vn 0.009535 0.993829 0.110509
+vn 0.351787 0.927693 -0.125027
+vn 0.271786 0.949678 0.155703
+vn 0.315662 0.369827 -0.873834
+vn 0.351787 0.927693 -0.125027
+vn 0.722328 0.456529 -0.519446
+vn 0.913592 0.391539 0.109762
+vn -0.521833 0.168360 -0.836269
+vn 0.315662 0.369827 -0.873834
+vn 0.187915 0.949616 -0.250833
+vn 0.722328 0.456529 -0.519446
+vn 0.029194 0.999573 0.001213
+vn 0.001434 0.999990 -0.004278
+vn 0.059604 0.994441 0.086798
+vn -0.268172 0.533654 0.802058
+vn 0.029194 0.999573 0.001213
+vn 0.152082 0.984531 0.087010
+vn 0.028263 0.997934 0.057694
+vn 0.274417 0.951769 0.137227
+vn -0.003732 0.990692 0.136070
+vn 0.028263 0.997934 0.057694
+vn 0.220100 0.959414 0.176296
+vn 0.274417 0.951769 0.137227
+vn -0.013442 0.985940 0.166561
+vn -0.003732 0.990692 0.136070
+vn 0.228464 0.952507 0.201334
+vn 0.220100 0.959414 0.176296
+vn 0.009535 0.993829 0.110509
+vn -0.013442 0.985940 0.166561
+vn 0.271786 0.949678 0.155703
+vn 0.228464 0.952507 0.201334
+vn 0.021402 0.997043 -0.073811
+vn 0.265659 0.431705 -0.862007
+vn -0.860237 0.454645 -0.230846
+vn -0.626471 0.203544 -0.752399
+vn -0.011137 0.872826 0.487905
+vn 0.012169 0.725743 0.687858
+vn -0.652618 0.648470 0.391888
+vn -0.664809 0.535028 0.521320
+vn -0.011137 0.872826 0.487905
+vn -0.039350 0.944906 0.324967
+vn 0.655096 0.696889 0.291881
+vn 0.487263 0.865218 0.118210
+vn 0.033060 -0.757959 -0.651464
+vn 0.014016 -0.899575 -0.436541
+vn -0.648508 -0.591765 -0.478802
+vn -0.629206 -0.706887 -0.323127
+vn 0.014016 -0.899575 -0.436541
+vn 0.583279 -0.711794 -0.391324
+vn -0.025155 -0.972616 -0.231051
+vn 0.335055 -0.859501 -0.386000
+vn -0.671252 -0.511922 -0.536057
+vn -0.648508 -0.591765 -0.478802
+vn -0.999297 -0.013242 0.035072
+vn -0.999620 -0.008398 0.026271
+vn -0.083933 -0.975549 0.203125
+vn -0.665828 -0.737761 0.111269
+vn -0.035944 -0.997343 0.063366
+vn -0.742224 -0.669362 0.032528
+vn -0.660270 -0.657824 0.362369
+vn -0.973579 -0.226915 0.025574
+vn -0.665828 -0.737761 0.111269
+vn -0.986197 -0.160603 -0.040273
+vn 0.121011 -0.951619 -0.282449
+vn -0.672131 -0.678358 -0.296765
+vn 0.011688 -0.920591 -0.390353
+vn -0.660270 -0.691224 -0.293690
+vn -0.220767 -0.200882 -0.954415
+vn 0.637176 -0.725278 -0.260725
+vn 0.182154 -0.134824 -0.973983
+vn 0.800581 -0.479774 -0.359009
+vn 0.637176 -0.725278 -0.260725
+vn 0.689557 -0.677984 -0.254653
+vn 0.800581 -0.479774 -0.359009
+vn 0.885382 -0.387520 -0.256762
+vn 0.261667 0.060505 -0.963260
+vn 0.957326 0.022318 -0.288148
+vn 0.324688 0.693699 -0.642930
+vn 0.986342 0.152319 -0.062670
+vn -0.793939 0.094207 -0.600654
+vn -0.722101 0.341023 -0.601892
+vn 0.261667 0.060505 -0.963260
+vn 0.229751 0.594778 -0.770360
+vn 0.659795 0.722998 0.204806
+vn 0.749700 0.385356 0.538006
+vn 0.112937 0.962118 0.248142
+vn 0.148640 0.682958 0.715174
+vn 0.675856 0.419167 0.606232
+vn 0.881995 0.423584 0.206547
+vn -0.157480 0.707784 0.688652
+vn 0.019838 0.995195 0.095886
+vn -0.821930 0.464264 0.329986
+vn -0.157480 0.707784 0.688652
+vn -0.860972 0.503814 -0.069992
+vn 0.019838 0.995195 0.095886
+vn -0.860972 0.503814 -0.069992
+vn 0.019838 0.995195 0.095886
+vn -0.722101 0.341023 -0.601892
+vn 0.229751 0.594778 -0.770360
+vn 0.871363 0.438513 0.220075
+vn 0.888562 0.139389 -0.437068
+vn 0.047607 0.997452 0.053133
+vn 0.256818 0.413288 -0.873635
+vn -0.844829 0.527708 -0.088252
+vn 0.047607 0.997452 0.053133
+vn -0.611543 0.232150 -0.756387
+vn 0.256818 0.413288 -0.873635
+vn 0.872410 0.426259 0.239176
+vn 0.926681 0.311117 0.210877
+vn 0.810749 0.328661 0.484426
+vn 0.983923 0.011655 0.178213
+vn -0.772453 0.474827 0.421729
+vn -0.136870 0.679959 0.720363
+vn -0.844829 0.527708 -0.088252
+vn 0.047607 0.997452 0.053133
+vn 0.580694 0.426793 0.693283
+vn 0.871363 0.438513 0.220075
+vn -0.136870 0.679959 0.720363
+vn 0.047607 0.997452 0.053133
+vn 0.975031 0.029701 0.220076
+vn 0.725857 0.393420 0.564227
+vn 0.921182 0.325267 0.213601
+vn 0.913592 0.391539 0.109762
+vn -0.148256 0.481170 0.864000
+vn 0.726364 0.248101 0.640969
+vn -0.103991 0.664875 0.739681
+vn 0.652110 0.411713 0.636589
+vn 0.172591 0.090294 -0.980846
+vn 0.955967 0.039968 -0.290739
+vn 0.204213 0.812568 -0.545921
+vn 0.980460 0.196551 -0.008129
+vn -0.809100 0.101702 -0.578804
+vn -0.738191 0.336024 -0.584946
+vn 0.172591 0.090294 -0.980846
+vn 0.159985 0.600336 -0.783583
+vn 0.837122 0.301237 0.456599
+vn 0.650462 0.711011 0.267136
+vn 0.917432 0.297803 0.263879
+vn 0.900446 0.354555 0.251967
+vn 0.837122 0.301237 0.456599
+vn 0.983128 -0.000424 0.182918
+vn 0.855309 0.183435 0.484560
+vn 0.979593 0.069728 0.188510
+vn 0.925716 0.329901 -0.184974
+vn 0.887339 0.411565 0.207953
+vn 0.980034 0.043302 -0.194060
+vn 0.979593 0.069728 0.188510
+vn 0.980034 0.043302 -0.194060
+vn 0.979593 0.069728 0.188510
+vn 0.991701 0.117389 -0.052424
+vn 0.983128 -0.000424 0.182918
+vn -0.153248 0.871042 0.466691
+vn -0.035113 0.997476 -0.061719
+vn -0.806719 0.581366 0.105914
+vn -0.806111 0.560519 -0.189745
+vn -0.806111 0.560519 -0.189745
+vn -0.035113 0.997476 -0.061719
+vn -0.721015 0.463206 -0.515342
+vn 0.121882 0.701737 -0.701933
+vn 0.914026 0.367835 -0.171040
+vn 0.861713 0.480367 0.163395
+vn 0.988148 0.067064 -0.138081
+vn 0.973132 0.103716 0.205563
+vn 0.988148 0.067064 -0.138081
+vn 0.973132 0.103716 0.205563
+vn 0.980209 0.197763 -0.008934
+vn 0.977296 0.046805 0.206643
+vn 0.212208 0.666028 -0.715105
+vn 0.007520 0.998351 -0.056914
+vn 0.914026 0.367835 -0.171040
+vn 0.861713 0.480367 0.163395
+vn 0.949655 0.253425 0.184205
+vn 0.924677 0.336747 0.177691
+vn 0.454011 0.889278 0.055298
+vn 0.434572 0.895289 0.098002
+vn 0.924677 0.336747 0.177691
+vn 0.914713 0.382092 0.131555
+vn 0.434572 0.895289 0.098002
+vn 0.396463 0.905166 0.153269
+vn 0.949655 0.253425 0.184205
+vn 0.937082 0.309569 0.161383
+vn 0.977296 0.046805 0.206643
+vn 0.980209 0.197763 -0.008934
+vn 0.713242 -0.667680 0.213281
+vn 0.728313 -0.651942 0.211024
+vn 0.953330 -0.299707 0.036577
+vn 0.977250 -0.211728 -0.012434
+vn 0.019464 -0.950217 0.310980
+vn 0.009085 -0.785833 0.618372
+vn 0.728313 -0.651942 0.211024
+vn 0.853992 -0.402706 0.329432
+vn -0.962842 0.161324 -0.216588
+vn -0.747973 0.552644 -0.367588
+vn -0.991057 -0.049969 -0.123730
+vn -0.709786 0.587409 -0.388787
+vn 0.039353 0.997918 -0.051095
+vn 0.174904 0.983579 -0.044505
+vn 0.639120 0.766688 -0.060962
+vn 0.668703 0.735433 -0.109429
+vn -0.487263 0.846834 -0.213182
+vn -0.010292 0.999073 -0.041810
+vn 0.039353 0.997918 -0.051095
+vn 0.174904 0.983579 -0.044505
+vn -0.487263 0.846834 -0.213182
+vn -0.901836 -0.157637 -0.402296
+vn -0.729092 0.496830 -0.470728
+vn -0.637941 -0.309019 -0.705365
+vn -0.901836 -0.157637 -0.402296
+vn -0.335054 -0.941456 -0.037398
+vn -0.637941 -0.309019 -0.705365
+vn -0.159009 -0.917387 -0.364853
+vn 0.976572 -0.163975 -0.139357
+vn 0.954392 0.095650 -0.282819
+vn 0.803313 -0.060196 -0.592507
+vn 0.187609 0.377527 -0.906795
+vn 0.726670 -0.250566 -0.639662
+vn 0.570549 -0.276608 -0.773280
+vn 0.647946 -0.090056 -0.756344
+vn 0.737624 -0.092157 -0.668893
+vn -0.625123 0.521335 -0.580889
+vn -0.823821 0.376740 -0.423540
+vn -0.688255 0.228097 -0.688677
+vn -0.878770 0.167981 -0.446706
+vn -0.837983 0.396743 -0.374672
+vn -0.883262 0.264311 -0.387282
+vn -0.823821 0.376740 -0.423540
+vn -0.878770 0.167981 -0.446706
+vn -0.878770 0.167981 -0.446706
+vn -0.891878 0.031818 -0.451155
+vn -0.688255 0.228097 -0.688677
+vn -0.667223 0.072915 -0.741280
+vn -0.891878 0.031818 -0.451155
+vn -0.919153 0.003328 -0.393887
+vn -0.667223 0.072915 -0.741280
+vn -0.626606 0.197171 -0.753982
+vn -0.878001 0.366196 -0.308245
+vn -0.979453 -0.018634 -0.200811
+vn -0.919153 0.003328 -0.393887
+vn -0.888640 -0.027559 -0.457776
+vn -0.995797 -0.004915 -0.091454
+vn -0.930881 -0.338272 -0.137958
+vn -0.993388 -0.011565 -0.114219
+vn -0.932912 -0.312472 -0.178986
+vn -0.993388 -0.011565 -0.114219
+vn -0.932912 -0.312472 -0.178986
+vn -0.979453 -0.018634 -0.200811
+vn -0.764193 -0.451626 -0.460482
+vn -0.918161 0.388283 -0.078849
+vn -0.399802 0.914602 -0.060517
+vn -0.917759 0.392548 -0.060208
+vn -0.397912 0.917361 -0.010697
+vn -0.399802 0.914602 -0.060517
+vn 0.000000 0.998695 -0.051075
+vn -0.397912 0.917361 -0.010697
+vn 0.000000 0.999986 0.005218
+vn 0.969202 -0.121510 -0.214205
+vn 0.964189 -0.056842 -0.259053
+vn 0.932575 -0.184781 -0.310096
+vn 0.853414 -0.259883 -0.451825
+vn 0.932553 -0.338357 -0.125935
+vn 0.927221 -0.352421 -0.126731
+vn 0.996373 -0.007808 -0.084737
+vn 0.996072 -0.004091 -0.088457
+vn 0.892171 -0.121527 -0.435043
+vn 0.737624 -0.092157 -0.668893
+vn 0.682972 -0.320341 -0.656453
+vn 0.570549 -0.276608 -0.773280
+vn 0.695205 0.689024 0.204784
+vn 0.450342 0.887913 0.093821
+vn 0.700112 0.683263 0.207354
+vn 0.456806 0.884114 0.098342
+vn 0.019947 0.997093 -0.073536
+vn -0.198026 0.970257 -0.139237
+vn 0.020466 0.997200 -0.071920
+vn -0.204627 0.968754 -0.140156
+vn 0.975626 0.046360 0.214485
+vn 0.974719 0.223408 -0.003356
+vn 0.970783 0.121516 0.206916
+vn 0.982800 0.091607 -0.160349
+vn 0.784214 -0.123544 0.608067
+vn 0.922695 -0.007141 0.385465
+vn 0.634231 -0.616073 0.467124
+vn 0.928133 -0.108931 0.355955
+vn 0.922695 -0.007141 0.385465
+vn 0.906901 0.253125 0.336835
+vn 0.928133 -0.108931 0.355955
+vn 0.919538 0.283546 0.272123
+vn -0.122627 -0.907069 0.402727
+vn -0.447485 -0.854530 0.263696
+vn -0.268172 0.533654 0.802058
+vn -0.613247 -0.572910 0.543786
+vn 0.887435 0.251944 0.385984
+vn 0.886708 0.257734 0.383826
+vn 0.726887 0.571208 0.381258
+vn 0.718833 0.580158 0.383008
+vn 0.891100 0.247359 0.380466
+vn 0.887435 0.251944 0.385984
+vn 0.738729 0.565133 0.367293
+vn 0.726887 0.571208 0.381258
+vn 0.906901 0.253125 0.336835
+vn 0.891100 0.247359 0.380466
+vn 0.753797 0.576945 0.314523
+vn 0.738729 0.565133 0.367293
+vn -0.661970 0.035692 -0.748680
+vn -0.956463 0.156206 -0.246534
+vn -0.626471 0.203544 -0.752399
+vn -0.860237 0.454645 -0.230846
+vn 0.059604 0.994441 0.086798
+vn 0.102865 0.992602 0.064501
+vn 0.029194 0.999573 0.001213
+vn 0.152082 0.984531 0.087010
+vn -0.268172 0.533654 0.802058
+vn 0.131634 0.935449 0.328035
+vn 0.059604 0.994441 0.086798
+vn 0.214509 0.957468 0.192979
+vn 0.709151 0.588609 0.388130
+vn 0.696668 0.599336 0.394271
+vn 0.470390 0.815418 0.337383
+vn 0.459064 0.823888 0.332369
+vn 0.696668 0.599336 0.394271
+vn 0.680756 0.616205 0.396059
+vn 0.459064 0.823888 0.332369
+vn 0.444619 0.836231 0.320986
+vn 0.680756 0.616205 0.396059
+vn 0.672794 0.640602 0.370105
+vn 0.444619 0.836231 0.320986
+vn 0.436931 0.853789 0.283082
+vn 0.683895 0.665414 0.299184
+vn 0.445902 0.872102 0.201519
+vn 0.672794 0.640602 0.370105
+vn 0.436931 0.853789 0.283082
+vn 0.700112 0.683263 0.207354
+vn 0.456806 0.884114 0.098342
+vn 0.697957 0.677784 0.231225
+vn 0.456917 0.880536 0.126028
+vn 0.697957 0.677784 0.231225
+vn 0.456917 0.880536 0.126028
+vn 0.683895 0.665414 0.299184
+vn 0.445902 0.872102 0.201519
+vn 0.718833 0.580158 0.383008
+vn 0.709151 0.588609 0.388130
+vn 0.481360 0.809149 0.337002
+vn 0.470390 0.815418 0.337383
+vn -0.664039 0.433624 0.609116
+vn -0.999297 -0.013242 0.035072
+vn -0.664809 0.535028 0.521320
+vn -0.999620 -0.008398 0.026271
+vn -0.011137 0.872826 0.487905
+vn -0.652618 0.648470 0.391888
+vn -0.039350 0.944906 0.324967
+vn -0.639121 0.734058 0.229528
+vn 0.487263 0.865218 0.118210
+vn 0.729092 0.636595 -0.251340
+vn 0.901836 0.003864 -0.432062
+vn 0.637940 -0.023493 -0.769728
+vn 0.901836 0.003864 -0.432062
+vn 0.637940 -0.023493 -0.769728
+vn 0.335055 -0.859501 -0.386000
+vn 0.159004 -0.714985 -0.680819
+vn -0.025155 -0.972616 -0.231051
+vn -0.618980 -0.760363 -0.196755
+vn 0.014016 -0.899575 -0.436541
+vn -0.629206 -0.706887 -0.323127
+vn -0.998679 -0.016927 -0.048512
+vn -0.954335 0.046524 -0.295095
+vn -0.996591 -0.073890 -0.036695
+vn -0.967693 0.111289 -0.226239
+vn -0.973579 -0.226915 0.025574
+vn -0.996591 -0.073890 -0.036695
+vn -0.986197 -0.160603 -0.040273
+vn -0.967693 0.111289 -0.226239
+vn -0.035944 -0.997343 0.063366
+vn -0.007846 -0.999083 0.042082
+vn 0.682070 -0.731287 -0.000252
+vn 0.765496 -0.643120 0.020322
+vn -0.025820 -0.950341 -0.310138
+vn -0.764193 -0.451626 -0.460482
+vn -0.688920 -0.683914 -0.240106
+vn -0.672131 -0.678358 -0.296765
+vn -0.025820 -0.950341 -0.310138
+vn 0.948524 -0.304993 -0.085328
+vn -0.764193 -0.451626 -0.460482
+vn 0.883563 0.420414 -0.206322
+vn 0.682070 -0.731287 -0.000252
+vn 0.765496 -0.643120 0.020322
+vn 0.948524 -0.304993 -0.085328
+vn 0.999324 -0.023631 -0.028163
+vn -0.748989 0.488852 -0.447257
+vn -0.356941 0.757305 -0.546885
+vn -0.747973 0.552644 -0.367588
+vn -0.709786 0.587409 -0.388787
+vn -0.356941 0.757305 -0.546885
+vn -0.220767 -0.200882 -0.954415
+vn -0.085611 0.718381 -0.690361
+vn 0.182154 -0.134824 -0.973983
+vn 0.689557 -0.677984 -0.254653
+vn 0.678361 -0.679871 -0.278570
+vn 0.885382 -0.387520 -0.256762
+vn 0.933211 -0.317702 -0.167877
+vn 0.011688 -0.920591 -0.390353
+vn 0.000918 -0.947465 -0.319857
+vn 0.678361 -0.679871 -0.278570
+vn 0.599651 -0.763660 -0.239252
+vn 0.957326 0.022318 -0.288148
+vn 0.261667 0.060505 -0.963260
+vn 0.920500 0.250245 -0.300095
+vn 0.229751 0.594778 -0.770360
+vn 0.749700 0.385356 0.538006
+vn 0.659795 0.722998 0.204806
+vn 0.924761 0.289000 0.247580
+vn 0.878888 0.432450 0.201351
+vn 0.659795 0.722998 0.204806
+vn 0.986342 0.152319 -0.062670
+vn 0.878888 0.432450 0.201351
+vn 0.906893 0.377315 0.187562
+vn 0.148640 0.682958 0.715174
+vn 0.749700 0.385356 0.538006
+vn -0.148256 0.481170 0.864000
+vn 0.726364 0.248101 0.640969
+vn 0.985913 0.147465 -0.078929
+vn 0.975031 0.029701 0.220076
+vn 0.904715 0.381644 0.189310
+vn 0.921182 0.325267 0.213601
+vn 0.872410 0.426259 0.239176
+vn 0.274417 0.951769 0.137227
+vn 0.926681 0.311117 0.210877
+vn 0.403884 0.890511 0.209447
+vn 0.872410 0.426259 0.239176
+vn 0.823075 0.525207 0.216114
+vn 0.274417 0.951769 0.137227
+vn 0.220100 0.959414 0.176296
+vn 0.823075 0.525207 0.216114
+vn 0.904715 0.381644 0.189310
+vn 0.220100 0.959414 0.176296
+vn 0.228464 0.952507 0.201334
+vn 0.983923 0.011655 0.178213
+vn 0.986342 0.152319 -0.062670
+vn 0.981351 0.070626 0.178779
+vn 0.957326 0.022318 -0.288148
+vn 0.981351 0.070626 0.178779
+vn 0.957326 0.022318 -0.288148
+vn 0.881995 0.423584 0.206547
+vn 0.920500 0.250245 -0.300095
+vn 0.926681 0.311117 0.210877
+vn 0.906893 0.377315 0.187562
+vn 0.983923 0.011655 0.178213
+vn 0.986342 0.152319 -0.062670
+vn 0.921182 0.325267 0.213601
+vn 0.913592 0.391539 0.109762
+vn 0.271786 0.949678 0.155703
+vn 0.351787 0.927693 -0.125027
+vn -0.813310 0.470265 0.342605
+vn -0.103991 0.664875 0.739681
+vn -0.856678 0.512480 -0.058886
+vn 0.021864 0.992409 0.121026
+vn -0.856678 0.512480 -0.058886
+vn 0.021864 0.992409 0.121026
+vn -0.738191 0.336024 -0.584946
+vn 0.159985 0.600336 -0.783583
+vn 0.955967 0.039968 -0.290739
+vn 0.172591 0.090294 -0.980846
+vn 0.908463 0.263329 -0.324582
+vn 0.159985 0.600336 -0.783583
+vn 0.650462 0.711011 0.267136
+vn 0.980460 0.196551 -0.008129
+vn 0.900446 0.354555 0.251967
+vn 0.959574 0.197358 0.200670
+vn -0.052944 0.750822 0.658380
+vn 0.765076 0.405472 0.500251
+vn 0.005861 0.995733 0.092091
+vn 0.887339 0.411565 0.207953
+vn 0.855309 0.183435 0.484560
+vn 0.979593 0.069728 0.188510
+vn 0.765076 0.405472 0.500251
+vn 0.887339 0.411565 0.207953
+vn 0.917432 0.297803 0.263879
+vn 0.964917 0.167298 0.202353
+vn 0.837122 0.301237 0.456599
+vn 0.983128 -0.000424 0.182918
+vn 0.084161 0.701132 -0.708047
+vn 0.005861 0.995733 0.092091
+vn 0.925716 0.329901 -0.184974
+vn 0.887339 0.411565 0.207953
+vn 0.914713 0.382092 0.131555
+vn 0.969492 0.206023 0.132816
+vn 0.396463 0.905166 0.153269
+vn 0.362223 0.911260 0.195958
+vn 0.991701 0.117389 -0.052424
+vn 0.983128 -0.000424 0.182918
+vn 0.969492 0.206023 0.132816
+vn 0.964917 0.167298 0.202353
+vn 0.982800 0.091607 -0.160349
+vn 0.190730 0.219293 -0.956835
+vn 0.872148 0.448424 -0.195640
+vn 0.121882 0.701737 -0.701933
+vn -0.153248 0.871042 0.466691
+vn 0.687026 0.582313 0.434634
+vn -0.035113 0.997476 -0.061719
+vn 0.819701 0.553590 0.147067
+vn 0.822859 0.278266 0.495450
+vn 0.970783 0.121516 0.206916
+vn 0.687026 0.582313 0.434634
+vn 0.819701 0.553590 0.147067
+vn 0.928149 0.310439 0.205349
+vn 0.903105 0.393776 0.171296
+vn 0.515356 0.855387 0.052161
+vn 0.492767 0.868917 0.046519
+vn 0.903105 0.393776 0.171296
+vn 0.937082 0.309569 0.161383
+vn 0.492767 0.868917 0.046519
+vn 0.470418 0.881446 0.041955
+vn 0.454011 0.889278 0.055298
+vn 0.470418 0.881446 0.041955
+vn 0.949655 0.253425 0.184205
+vn 0.937082 0.309569 0.161383
+vn -0.820731 -0.497891 0.280189
+vn -0.834384 0.062518 0.547627
+vn 0.009085 -0.785833 0.618372
+vn 0.021661 0.250748 0.967810
+vn -0.678042 -0.711924 0.182819
+vn -0.990108 -0.106807 -0.090984
+vn -0.820731 -0.497891 0.280189
+vn -0.983847 -0.146590 -0.102747
+vn -0.991057 -0.049969 -0.123730
+vn -0.709786 0.587409 -0.388787
+vn -0.990108 -0.106807 -0.090984
+vn -0.697764 0.586925 -0.410664
+vn 0.953330 -0.299707 0.036577
+vn 0.977250 -0.211728 -0.012434
+vn 0.954392 0.095650 -0.282819
+vn 0.622199 0.593958 -0.509983
+vn 0.999604 -0.000771 -0.028128
+vn 0.639120 0.766688 -0.060962
+vn 0.992991 -0.040204 -0.111138
+vn 0.668703 0.735433 -0.109429
+vn -0.487263 0.846834 -0.213182
+vn -0.375487 0.925438 -0.050742
+vn -0.010292 0.999073 -0.041810
+vn -0.178344 0.983964 0.002891
+vn -0.487263 0.846834 -0.213182
+vn -0.729092 0.496830 -0.470728
+vn -0.375487 0.925438 -0.050742
+vn -0.572960 0.818261 -0.046542
+vn -0.335054 -0.941456 -0.037398
+vn 0.025159 -0.988582 0.148568
+vn 0.004136 -0.975574 0.219633
+vn 0.079881 -0.976687 0.199252
+vn 0.025159 -0.988582 0.148568
+vn 0.618982 -0.778860 0.101184
+vn 0.079881 -0.976687 0.199252
+vn 0.615318 -0.785994 0.059987
+vn 0.618982 -0.778860 0.101184
+vn 0.999604 -0.000771 -0.028128
+vn 0.615318 -0.785994 0.059987
+vn 0.992991 -0.040204 -0.111138
+vn 0.803313 -0.060196 -0.592507
+vn 0.478645 -0.255150 -0.840118
+vn 0.726670 -0.250566 -0.639662
+vn 0.570549 -0.276608 -0.773280
+vn -0.942440 0.202366 -0.266185
+vn -0.644627 0.278099 -0.712121
+vn -0.954335 0.046524 -0.295095
+vn -0.585679 0.138574 -0.798609
+vn -0.657804 0.584721 -0.474758
+vn -0.625123 0.521335 -0.580889
+vn -0.644627 0.278099 -0.712121
+vn -0.688255 0.228097 -0.688677
+vn -0.930881 -0.338272 -0.137958
+vn -0.995797 -0.004915 -0.091454
+vn -0.926850 -0.352097 -0.130296
+vn -0.995930 -0.003411 -0.090068
+vn -0.995797 -0.004915 -0.091454
+vn -0.918161 0.388283 -0.078849
+vn -0.995930 -0.003411 -0.090068
+vn -0.917759 0.392548 -0.060208
+vn 0.996072 -0.004091 -0.088457
+vn 0.997745 -0.000747 -0.067109
+vn 0.917842 0.392374 -0.060080
+vn 0.918180 0.394603 -0.035142
+vn 0.917842 0.392374 -0.060080
+vn 0.918180 0.394603 -0.035142
+vn 0.397557 0.917513 -0.010892
+vn 0.397489 0.917552 0.010054
+vn 0.397557 0.917513 -0.010892
+vn 0.397489 0.917552 0.010054
+vn 0.000000 0.999986 0.005218
+vn 0.000000 0.999743 0.022676
+vn 0.964189 -0.056842 -0.259053
+vn 0.892171 -0.121527 -0.435043
+vn 0.853414 -0.259883 -0.451825
+vn 0.682972 -0.320341 -0.656453
+vn 0.969202 -0.121510 -0.214205
+vn 0.932575 -0.184781 -0.310096
+vn 0.885382 -0.387520 -0.256762
+vn 0.800581 -0.479774 -0.359009
+vn 0.932553 -0.338357 -0.125935
+vn 0.933211 -0.317702 -0.167877
+vn 0.599651 -0.763660 -0.239252
+vn 0.678361 -0.679871 -0.278570
+vn 0.927221 -0.352421 -0.126731
+vn 0.932553 -0.338357 -0.125935
+vn 0.547626 -0.814935 -0.189703
+vn 0.599651 -0.763660 -0.239252
+vn 0.927221 -0.352421 -0.126731
+vn 0.930351 -0.350323 -0.108265
+vn 0.996072 -0.004091 -0.088457
+vn 0.997745 -0.000747 -0.067109
+vn -0.560258 0.800903 -0.211339
+vn -0.575001 0.789664 -0.214020
+vn -0.356272 0.917801 -0.175249
+vn -0.368025 0.912699 -0.177588
+vn -0.356272 0.917801 -0.175249
+vn -0.368025 0.912699 -0.177588
+vn -0.198026 0.970257 -0.139237
+vn -0.204627 0.968754 -0.140156
+vn -0.846769 0.470504 -0.248210
+vn -0.854382 0.456026 -0.249143
+vn -0.560258 0.800903 -0.211339
+vn -0.575001 0.789664 -0.214020
+vn -0.932953 0.261772 -0.247133
+vn -0.935011 0.254038 -0.247425
+vn -0.846769 0.470504 -0.248210
+vn -0.854382 0.456026 -0.249143
+vn 0.450342 0.887913 0.093821
+vn 0.253214 0.967332 0.012292
+vn 0.456806 0.884114 0.098342
+vn 0.258339 0.965901 0.017236
+vn 0.253214 0.967332 0.012292
+vn 0.020466 0.997200 -0.071920
+vn 0.258339 0.965901 0.017236
+vn 0.020214 0.997484 -0.067945
+vn -0.058101 0.994209 -0.090402
+vn 0.515356 0.855387 0.052161
+vn -0.071469 0.993098 -0.093003
+vn 0.492767 0.868917 0.046519
+vn -0.692632 0.687099 -0.219446
+vn -0.058101 0.994209 -0.090402
+vn -0.702405 0.676612 -0.220958
+vn -0.071469 0.993098 -0.093003
+vn -0.692632 0.687099 -0.219446
+vn -0.702405 0.676612 -0.220958
+vn -0.932953 0.261772 -0.247133
+vn -0.935011 0.254038 -0.247425
+vn 0.223933 -0.857028 0.464066
+vn 0.634231 -0.616073 0.467124
+vn 0.189270 -0.859459 0.474875
+vn 0.551098 -0.680843 0.482435
+vn -0.122627 -0.907069 0.402727
+vn -0.124573 -0.904990 0.406785
+vn -0.447485 -0.854530 0.263696
+vn -0.423277 -0.859172 0.287508
+vn 0.189270 -0.859459 0.474875
+vn -0.124573 -0.904990 0.406785
+vn 0.223933 -0.857028 0.464066
+vn -0.122627 -0.907069 0.402727
+vn 0.906901 0.253125 0.336835
+vn 0.753797 0.576945 0.314523
+vn 0.919538 0.283546 0.272123
+vn 0.747332 0.622138 0.233321
+vn 0.726887 0.571208 0.381258
+vn 0.718833 0.580158 0.383008
+vn 0.495518 0.802639 0.332012
+vn 0.481360 0.809149 0.337002
+vn 0.152082 0.984531 0.087010
+vn 0.102865 0.992602 0.064501
+vn 0.214509 0.957468 0.192979
+vn 0.059604 0.994441 0.086798
+vn -0.268172 0.533654 0.802058
+vn -0.613247 -0.572910 0.543786
+vn 0.131634 0.935449 0.328035
+vn -0.075259 0.883116 0.463080
+vn 0.274417 0.951769 0.137227
+vn 0.152082 0.984531 0.087010
+vn 0.403884 0.890511 0.209447
+vn 0.214509 0.957468 0.192979
+vn 0.271786 0.949678 0.155703
+vn 0.228464 0.952507 0.201334
+vn 0.921182 0.325267 0.213601
+vn 0.904715 0.381644 0.189310
+vn -0.664809 0.535028 0.521320
+vn -0.999620 -0.008398 0.026271
+vn -0.652618 0.648470 0.391888
+vn -0.999448 -0.010224 0.031609
+vn 0.487263 0.865218 0.118210
+vn -0.039350 0.944906 0.324967
+vn 0.010291 0.942514 0.334009
+vn -0.174900 0.929145 0.325730
+vn 0.487263 0.865218 0.118210
+vn 0.375486 0.877531 0.298245
+vn 0.729092 0.636595 -0.251340
+vn 0.572960 0.776527 0.262150
+vn 0.335055 -0.859501 -0.386000
+vn -0.004134 -0.987066 -0.160263
+vn -0.025155 -0.972616 -0.231051
+vn -0.079879 -0.980494 -0.179586
+vn -0.629206 -0.706887 -0.323127
+vn -0.999448 -0.010224 0.031609
+vn -0.648508 -0.591765 -0.478802
+vn -0.999620 -0.008398 0.026271
+vn -0.615318 -0.751607 -0.237636
+vn -0.618980 -0.760363 -0.196755
+vn -0.079879 -0.980494 -0.179586
+vn -0.025155 -0.972616 -0.231051
+vn -0.035944 -0.997343 0.063366
+vn -0.742224 -0.669362 0.032528
+vn -0.007846 -0.999083 0.042082
+vn -0.778764 -0.626978 0.020645
+vn -0.665828 -0.737761 0.111269
+vn -0.986197 -0.160603 -0.040273
+vn -0.742224 -0.669362 0.032528
+vn -0.992833 -0.113810 -0.036459
+vn 0.011688 -0.920591 -0.390353
+vn -0.660270 -0.691224 -0.293690
+vn 0.000918 -0.947465 -0.319857
+vn -0.594424 -0.764289 -0.250046
+vn -0.672131 -0.678358 -0.296765
+vn -0.764193 -0.451626 -0.460482
+vn -0.660270 -0.691224 -0.293690
+vn -0.932912 -0.312472 -0.178986
+vn -0.085611 0.718381 -0.690361
+vn 0.622199 0.593958 -0.509983
+vn -0.356941 0.757305 -0.546885
+vn -0.155282 0.830090 -0.535572
+vn -0.085611 0.718381 -0.690361
+vn 0.182154 -0.134824 -0.973983
+vn 0.187609 0.377527 -0.906795
+vn 0.228226 -0.204954 -0.951791
+vn 0.182154 -0.134824 -0.973983
+vn 0.800581 -0.479774 -0.359009
+vn 0.853414 -0.259883 -0.451825
+vn 0.932575 -0.184781 -0.310096
+vn 0.924761 0.289000 0.247580
+vn 0.971458 0.120078 0.204573
+vn 0.749700 0.385356 0.538006
+vn 0.981491 0.007306 0.191369
+vn 0.881995 0.423584 0.206547
+vn 0.920500 0.250245 -0.300095
+vn 0.019838 0.995195 0.095886
+vn 0.229751 0.594778 -0.770360
+vn 0.926681 0.311117 0.210877
+vn 0.403884 0.890511 0.209447
+vn 0.906893 0.377315 0.187562
+vn 0.396597 0.886837 0.237131
+vn 0.749700 0.385356 0.538006
+vn 0.981491 0.007306 0.191369
+vn 0.726364 0.248101 0.640969
+vn 0.976995 0.078162 0.198420
+vn 0.652110 0.411713 0.636589
+vn 0.870181 0.437606 0.226465
+vn -0.103991 0.664875 0.739681
+vn 0.021864 0.992409 0.121026
+vn 0.726364 0.248101 0.640969
+vn 0.976995 0.078162 0.198420
+vn 0.652110 0.411713 0.636589
+vn 0.870181 0.437606 0.226465
+vn 0.908463 0.263329 -0.324582
+vn 0.870181 0.437606 0.226465
+vn 0.955967 0.039968 -0.290739
+vn 0.976995 0.078162 0.198420
+vn 0.955967 0.039968 -0.290739
+vn 0.976995 0.078162 0.198420
+vn 0.980460 0.196551 -0.008129
+vn 0.981491 0.007306 0.191369
+vn 0.964917 0.167298 0.202353
+vn 0.917432 0.297803 0.263879
+vn 0.371422 0.900885 0.224615
+vn 0.399879 0.882437 0.247794
+vn 0.917432 0.297803 0.263879
+vn 0.900446 0.354555 0.251967
+vn 0.399879 0.882437 0.247794
+vn 0.426671 0.867299 0.256407
+vn 0.982800 0.091607 -0.160349
+vn 0.872148 0.448424 -0.195640
+vn 0.970783 0.121516 0.206916
+vn 0.819701 0.553590 0.147067
+vn 0.121882 0.701737 -0.701933
+vn -0.035113 0.997476 -0.061719
+vn 0.872148 0.448424 -0.195640
+vn 0.819701 0.553590 0.147067
+vn 0.454011 0.889278 0.055298
+vn -0.095669 0.993071 -0.068240
+vn 0.470418 0.881446 0.041955
+vn -0.083684 0.992053 -0.093958
+vn 0.454011 0.889278 0.055298
+vn 0.434572 0.895289 0.098002
+vn -0.095669 0.993071 -0.068240
+vn -0.124889 0.992135 0.008468
+vn 0.434572 0.895289 0.098002
+vn 0.396463 0.905166 0.153269
+vn -0.124889 0.992135 0.008468
+vn -0.171023 0.981220 0.089215
+vn 0.728313 -0.651942 0.211024
+vn 0.853992 -0.402706 0.329432
+vn 0.977250 -0.211728 -0.012434
+vn 0.991894 -0.094160 -0.085328
+vn 0.853992 -0.402706 0.329432
+vn 0.009085 -0.785833 0.618372
+vn 0.843194 0.129506 0.521778
+vn 0.021661 0.250748 0.967810
+vn -0.834384 0.062518 0.547627
+vn -0.820731 -0.497891 0.280189
+vn -0.989479 -0.141947 -0.027977
+vn -0.983847 -0.146590 -0.102747
+vn -0.010292 0.999073 -0.041810
+vn 0.190419 0.971218 0.143096
+vn 0.174904 0.983579 -0.044505
+vn 0.251578 0.959161 0.129301
+vn 0.174904 0.983579 -0.044505
+vn 0.251578 0.959161 0.129301
+vn 0.668703 0.735433 -0.109429
+vn 0.730921 0.681748 -0.031222
+vn -0.729092 0.496830 -0.470728
+vn -0.637941 -0.309019 -0.705365
+vn -0.832821 0.268089 -0.484290
+vn -0.498689 -0.388703 -0.774739
+vn -0.637941 -0.309019 -0.705365
+vn -0.159009 -0.917387 -0.364853
+vn -0.498689 -0.388703 -0.774739
+vn 0.167066 -0.830353 -0.531604
+vn -0.335054 -0.941456 -0.037398
+vn 0.104518 -0.978304 0.178877
+vn -0.159009 -0.917387 -0.364853
+vn 0.311383 -0.937069 0.157933
+vn -0.335054 -0.941456 -0.037398
+vn 0.004136 -0.975574 0.219633
+vn 0.104518 -0.978304 0.178877
+vn 0.104197 -0.973558 0.203294
+vn 0.187609 0.377527 -0.906795
+vn 0.954392 0.095650 -0.282819
+vn -0.085611 0.718381 -0.690361
+vn 0.622199 0.593958 -0.509983
+vn 0.187609 0.377527 -0.906795
+vn 0.228226 -0.204954 -0.951791
+vn 0.803313 -0.060196 -0.592507
+vn 0.478645 -0.255150 -0.840118
+vn 0.570549 -0.276608 -0.773280
+vn 0.478645 -0.255150 -0.840118
+vn 0.682972 -0.320341 -0.656453
+vn 0.228226 -0.204954 -0.951791
+vn -0.688255 0.228097 -0.688677
+vn -0.667223 0.072915 -0.741280
+vn -0.644627 0.278099 -0.712121
+vn -0.585679 0.138574 -0.798609
+vn -0.919153 0.003328 -0.393887
+vn -0.888640 -0.027559 -0.457776
+vn -0.626606 0.197171 -0.753982
+vn -0.470981 0.538889 -0.698409
+vn -0.667223 0.072915 -0.741280
+vn -0.626606 0.197171 -0.753982
+vn -0.585679 0.138574 -0.798609
+vn -0.525118 0.557302 -0.643168
+vn -0.979453 -0.018634 -0.200811
+vn -0.764193 -0.451626 -0.460482
+vn -0.888640 -0.027559 -0.457776
+vn -0.470981 0.538889 -0.698409
+vn -0.926850 -0.352097 -0.130296
+vn -0.545748 -0.815416 -0.193016
+vn -0.930881 -0.338272 -0.137958
+vn -0.594424 -0.764289 -0.250046
+vn -0.930881 -0.338272 -0.137958
+vn -0.594424 -0.764289 -0.250046
+vn -0.932912 -0.312472 -0.178986
+vn -0.660270 -0.691224 -0.293690
+vn -0.995930 -0.003411 -0.090068
+vn -0.917759 0.392548 -0.060208
+vn -0.997745 -0.000747 -0.067109
+vn -0.918180 0.394603 -0.035142
+vn -0.917759 0.392548 -0.060208
+vn -0.397912 0.917361 -0.010697
+vn -0.918180 0.394603 -0.035142
+vn -0.397489 0.917552 0.010054
+vn -0.397912 0.917361 -0.010697
+vn 0.000000 0.999986 0.005218
+vn -0.397489 0.917552 0.010054
+vn 0.000000 0.999743 0.022676
+vn 0.547626 -0.814935 -0.189703
+vn 0.550874 -0.818967 -0.160719
+vn 0.927221 -0.352421 -0.126731
+vn 0.930351 -0.350323 -0.108265
+vn 0.682972 -0.320341 -0.656453
+vn 0.228226 -0.204954 -0.951791
+vn 0.853414 -0.259883 -0.451825
+vn 0.182154 -0.134824 -0.973983
+vn 0.020466 0.997200 -0.071920
+vn -0.204627 0.968754 -0.140156
+vn 0.020214 0.997484 -0.067945
+vn -0.212574 0.967339 -0.138088
+vn 0.634231 -0.616073 0.467124
+vn 0.928133 -0.108931 0.355955
+vn 0.551098 -0.680843 0.482435
+vn 0.917695 -0.166610 0.360663
+vn 0.928133 -0.108931 0.355955
+vn 0.919538 0.283546 0.272123
+vn 0.917695 -0.166610 0.360663
+vn 0.912670 0.347171 0.215654
+vn -0.124573 -0.904990 0.406785
+vn -0.146896 -0.865063 0.479674
+vn -0.423277 -0.859172 0.287508
+vn -0.422392 -0.826715 0.371655
+vn -0.447485 -0.854530 0.263696
+vn -0.423277 -0.859172 0.287508
+vn -0.792250 -0.609096 0.036641
+vn -0.728495 -0.679050 0.090483
+vn -0.447485 -0.854530 0.263696
+vn -0.792250 -0.609096 0.036641
+vn -0.613247 -0.572910 0.543786
+vn -0.995021 -0.034171 0.093625
+vn -0.124573 -0.904990 0.406785
+vn 0.189270 -0.859459 0.474875
+vn -0.146896 -0.865063 0.479674
+vn 0.141482 -0.826921 0.544229
+vn 0.738729 0.565133 0.367293
+vn 0.726887 0.571208 0.381258
+vn 0.513320 0.798359 0.314843
+vn 0.495518 0.802639 0.332012
+vn 0.753797 0.576945 0.314523
+vn 0.738729 0.565133 0.367293
+vn 0.523441 0.807746 0.271211
+vn 0.513320 0.798359 0.314843
+vn 0.131634 0.935449 0.328035
+vn 0.396597 0.886837 0.237131
+vn 0.214509 0.957468 0.192979
+vn 0.403884 0.890511 0.209447
+vn 0.481360 0.809149 0.337002
+vn 0.470390 0.815418 0.337383
+vn 0.253158 0.927532 0.274945
+vn 0.244910 0.930205 0.273382
+vn 0.470390 0.815418 0.337383
+vn 0.459064 0.823888 0.332369
+vn 0.244910 0.930205 0.273382
+vn 0.239053 0.934770 0.262791
+vn 0.459064 0.823888 0.332369
+vn 0.444619 0.836231 0.320986
+vn 0.239053 0.934770 0.262791
+vn 0.231900 0.941250 0.245500
+vn 0.436931 0.853789 0.283082
+vn 0.230833 0.951437 0.203674
+vn 0.444619 0.836231 0.320986
+vn 0.231900 0.941250 0.245500
+vn 0.456917 0.880536 0.126028
+vn 0.256781 0.965409 0.045275
+vn 0.445902 0.872102 0.201519
+vn 0.243582 0.962344 0.120674
+vn 0.445902 0.872102 0.201519
+vn 0.243582 0.962344 0.120674
+vn 0.436931 0.853789 0.283082
+vn 0.230833 0.951437 0.203674
+vn 0.456806 0.884114 0.098342
+vn 0.258339 0.965901 0.017236
+vn 0.456917 0.880536 0.126028
+vn 0.256781 0.965409 0.045275
+vn 0.495518 0.802639 0.332012
+vn 0.481360 0.809149 0.337002
+vn 0.267819 0.925828 0.266676
+vn 0.253158 0.927532 0.274945
+vn -0.639121 0.734058 0.229528
+vn -0.652618 0.648470 0.391888
+vn -0.999604 0.009781 -0.026384
+vn -0.999448 -0.010224 0.031609
+vn -0.039350 0.944906 0.324967
+vn -0.639121 0.734058 0.229528
+vn -0.174900 0.929145 0.325730
+vn -0.668702 0.723148 0.172900
+vn 0.487263 0.865218 0.118210
+vn 0.010291 0.942514 0.334009
+vn 0.375486 0.877531 0.298245
+vn 0.178345 0.911816 0.369844
+vn 0.729092 0.636595 -0.251340
+vn 0.832821 0.429436 -0.349275
+vn 0.637940 -0.023493 -0.769728
+vn 0.498688 -0.071537 -0.863824
+vn 0.335055 -0.859501 -0.386000
+vn -0.104521 -0.974390 -0.199095
+vn -0.004134 -0.987066 -0.160263
+vn -0.104194 -0.979099 -0.174670
+vn 0.335055 -0.859501 -0.386000
+vn 0.159004 -0.714985 -0.680819
+vn -0.104521 -0.974390 -0.199095
+vn -0.311386 -0.928318 -0.203138
+vn 0.637940 -0.023493 -0.769728
+vn 0.498688 -0.071537 -0.863824
+vn 0.159004 -0.714985 -0.680819
+vn -0.167064 -0.572012 -0.803051
+vn -0.629206 -0.706887 -0.323127
+vn -0.618980 -0.760363 -0.196755
+vn -0.999448 -0.010224 0.031609
+vn -0.999604 0.009781 -0.026384
+vn -0.618980 -0.760363 -0.196755
+vn -0.615318 -0.751607 -0.237636
+vn -0.999604 0.009781 -0.026384
+vn -0.992991 0.004171 -0.118113
+vn -0.967693 0.111289 -0.226239
+vn -0.954335 0.046524 -0.295095
+vn -0.525118 0.557302 -0.643168
+vn -0.585679 0.138574 -0.798609
+vn -0.986197 -0.160603 -0.040273
+vn -0.967693 0.111289 -0.226239
+vn -0.992833 -0.113810 -0.036459
+vn -0.813585 0.552464 -0.181282
+vn -0.007846 -0.999083 0.042082
+vn -0.028436 -0.805938 0.591317
+vn 0.765496 -0.643120 0.020322
+vn 0.868791 -0.403770 0.286656
+vn 0.883563 0.420414 -0.206322
+vn -0.117384 0.935171 -0.334181
+vn -0.764193 -0.451626 -0.460482
+vn -0.470981 0.538889 -0.698409
+vn 0.948524 -0.304993 -0.085328
+vn 0.999324 -0.023631 -0.028163
+vn 0.883563 0.420414 -0.206322
+vn 0.747292 0.651112 -0.132694
+vn 0.765496 -0.643120 0.020322
+vn 0.868791 -0.403770 0.286656
+vn 0.999324 -0.023631 -0.028163
+vn 0.998472 0.009356 -0.054464
+vn -0.356941 0.757305 -0.546885
+vn -0.155282 0.830090 -0.535572
+vn -0.709786 0.587409 -0.388787
+vn -0.697764 0.586925 -0.410664
+vn 0.000918 -0.947465 -0.319857
+vn 0.001000 -0.976545 -0.215311
+vn 0.599651 -0.763660 -0.239252
+vn 0.547626 -0.814935 -0.189703
+vn 0.971458 0.120078 0.204573
+vn 0.924761 0.289000 0.247580
+vn 0.474406 0.849858 0.229522
+vn 0.427571 0.874817 0.227768
+vn 0.924761 0.289000 0.247580
+vn 0.878888 0.432450 0.201351
+vn 0.427571 0.874817 0.227768
+vn 0.394761 0.886945 0.239777
+vn 0.878888 0.432450 0.201351
+vn 0.906893 0.377315 0.187562
+vn 0.394761 0.886945 0.239777
+vn 0.396597 0.886837 0.237131
+vn 0.159985 0.600336 -0.783583
+vn 0.021864 0.992409 0.121026
+vn 0.908463 0.263329 -0.324582
+vn 0.870181 0.437606 0.226465
+vn 0.900446 0.354555 0.251967
+vn 0.959574 0.197358 0.200670
+vn 0.426671 0.867299 0.256407
+vn 0.454700 0.855959 0.246133
+vn 0.980460 0.196551 -0.008129
+vn 0.981491 0.007306 0.191369
+vn 0.959574 0.197358 0.200670
+vn 0.971458 0.120078 0.204573
+vn 0.371422 0.900885 0.224615
+vn 0.362223 0.911260 0.195958
+vn 0.964917 0.167298 0.202353
+vn 0.969492 0.206023 0.132816
+vn 0.396463 0.905166 0.153269
+vn 0.362223 0.911260 0.195958
+vn -0.171023 0.981220 0.089215
+vn -0.205817 0.970929 0.122212
+vn 0.470418 0.881446 0.041955
+vn -0.083684 0.992053 -0.093958
+vn 0.492767 0.868917 0.046519
+vn -0.071469 0.993098 -0.093003
+vn 0.843194 0.129506 0.521778
+vn 0.995049 -0.082690 -0.055139
+vn 0.853992 -0.402706 0.329432
+vn 0.991894 -0.094160 -0.085328
+vn -0.989479 -0.141947 -0.027977
+vn -0.997294 -0.065850 0.032678
+vn -0.834384 0.062518 0.547627
+vn -0.770489 0.173021 0.613523
+vn -0.834384 0.062518 0.547627
+vn -0.770489 0.173021 0.613523
+vn 0.021661 0.250748 0.967810
+vn 0.064126 0.321298 0.944805
+vn -0.990108 -0.106807 -0.090984
+vn -0.697764 0.586925 -0.410664
+vn -0.983847 -0.146590 -0.102747
+vn -0.720281 0.122985 -0.682694
+vn 0.977250 -0.211728 -0.012434
+vn 0.991894 -0.094160 -0.085328
+vn 0.622199 0.593958 -0.509983
+vn 0.704048 0.267029 -0.658036
+vn 0.615318 -0.785994 0.059987
+vn 0.992991 -0.040204 -0.111138
+vn 0.595196 -0.790377 -0.145073
+vn 0.978996 -0.076593 -0.188944
+vn 0.992991 -0.040204 -0.111138
+vn 0.668703 0.735433 -0.109429
+vn 0.978996 -0.076593 -0.188944
+vn 0.730921 0.681748 -0.031222
+vn 0.190419 0.971218 0.143096
+vn -0.010292 0.999073 -0.041810
+vn -0.126856 0.991916 0.003048
+vn -0.178344 0.983964 0.002891
+vn -0.375487 0.925438 -0.050742
+vn -0.591624 0.791300 0.154356
+vn -0.178344 0.983964 0.002891
+vn -0.126856 0.991916 0.003048
+vn -0.572960 0.818261 -0.046542
+vn -0.432294 0.786968 0.440232
+vn -0.375487 0.925438 -0.050742
+vn -0.591624 0.791300 0.154356
+vn -0.729092 0.496830 -0.470728
+vn -0.832821 0.268089 -0.484290
+vn -0.572960 0.818261 -0.046542
+vn -0.754101 0.655893 0.033702
+vn 0.079881 -0.976687 0.199252
+vn -0.055183 -0.997762 0.037770
+vn 0.004136 -0.975574 0.219633
+vn -0.085877 -0.975073 0.204592
+vn 0.079881 -0.976687 0.199252
+vn 0.615318 -0.785994 0.059987
+vn -0.055183 -0.997762 0.037770
+vn 0.595196 -0.790377 -0.145073
+vn -0.545748 -0.815416 -0.193016
+vn -0.926850 -0.352097 -0.130296
+vn -0.550874 -0.818967 -0.160719
+vn -0.930351 -0.350323 -0.108265
+vn -0.926850 -0.352097 -0.130296
+vn -0.995930 -0.003411 -0.090068
+vn -0.930351 -0.350323 -0.108265
+vn -0.997745 -0.000747 -0.067109
+vn 0.930351 -0.350323 -0.108265
+vn 0.934223 -0.347128 -0.082036
+vn 0.997745 -0.000747 -0.067109
+vn 0.998945 0.001365 -0.045896
+vn 0.997745 -0.000747 -0.067109
+vn 0.998945 0.001365 -0.045896
+vn 0.918180 0.394603 -0.035142
+vn 0.915507 0.401409 -0.026782
+vn 0.918180 0.394603 -0.035142
+vn 0.915507 0.401409 -0.026782
+vn 0.397489 0.917552 0.010054
+vn 0.395443 0.918473 -0.005712
+vn 0.397489 0.917552 0.010054
+vn 0.395443 0.918473 -0.005712
+vn 0.000000 0.999743 0.022676
+vn 0.000000 1.000000 0.000667
+vn 0.550874 -0.818967 -0.160719
+vn 0.547626 -0.814935 -0.189703
+vn 0.000000 -0.984642 -0.174586
+vn 0.001000 -0.976545 -0.215311
+vn 0.550874 -0.818967 -0.160719
+vn 0.566732 -0.812634 -0.135796
+vn 0.930351 -0.350323 -0.108265
+vn 0.934223 -0.347128 -0.082036
+vn -0.854382 0.456026 -0.249143
+vn -0.861571 0.441494 -0.250557
+vn -0.575001 0.789664 -0.214020
+vn -0.590545 0.777834 -0.215015
+vn -0.575001 0.789664 -0.214020
+vn -0.590545 0.777834 -0.215015
+vn -0.368025 0.912699 -0.177588
+vn -0.381239 0.907354 -0.177106
+vn -0.368025 0.912699 -0.177588
+vn -0.381239 0.907354 -0.177106
+vn -0.204627 0.968754 -0.140156
+vn -0.212574 0.967339 -0.138088
+vn -0.935011 0.254038 -0.247425
+vn -0.936623 0.246156 -0.249290
+vn -0.854382 0.456026 -0.249143
+vn -0.861571 0.441494 -0.250557
+vn -0.702405 0.676612 -0.220958
+vn -0.712408 0.665520 -0.222618
+vn -0.935011 0.254038 -0.247425
+vn -0.936623 0.246156 -0.249290
+vn 0.258339 0.965901 0.017236
+vn 0.020214 0.997484 -0.067945
+vn 0.256781 0.965409 0.045275
+vn 0.012391 0.999075 -0.041173
+vn -0.702405 0.676612 -0.220958
+vn -0.071469 0.993098 -0.093003
+vn -0.712408 0.665520 -0.222618
+vn -0.083684 0.992053 -0.093958
+vn 0.189270 -0.859459 0.474875
+vn 0.551098 -0.680843 0.482435
+vn 0.141482 -0.826921 0.544229
+vn 0.448187 -0.697278 0.559403
+vn -0.423277 -0.859172 0.287508
+vn -0.422392 -0.826715 0.371655
+vn -0.728495 -0.679050 0.090483
+vn -0.686104 -0.696036 0.211648
+vn -0.146896 -0.865063 0.479674
+vn -0.161231 -0.834756 0.526485
+vn -0.422392 -0.826715 0.371655
+vn -0.424970 -0.793362 0.435865
+vn -0.146896 -0.865063 0.479674
+vn 0.141482 -0.826921 0.544229
+vn -0.161231 -0.834756 0.526485
+vn 0.107920 -0.793508 0.598914
+vn 0.523441 0.807746 0.271211
+vn 0.504008 0.839513 0.202963
+vn 0.753797 0.576945 0.314523
+vn 0.747332 0.622138 0.233321
+vn 0.919538 0.283546 0.272123
+vn 0.747332 0.622138 0.233321
+vn 0.912670 0.347171 0.215654
+vn 0.696407 0.702234 0.147937
+vn 0.513320 0.798359 0.314843
+vn 0.495518 0.802639 0.332012
+vn 0.286139 0.925288 0.248930
+vn 0.267819 0.925828 0.266676
+vn -0.613247 -0.572910 0.543786
+vn -0.995021 -0.034171 0.093625
+vn -0.075259 0.883116 0.463080
+vn -0.237901 0.943097 0.232319
+vn 0.131634 0.935449 0.328035
+vn -0.075259 0.883116 0.463080
+vn 0.396597 0.886837 0.237131
+vn 0.394761 0.886945 0.239777
+vn -0.999604 0.009781 -0.026384
+vn -0.992991 0.004171 -0.118113
+vn -0.639121 0.734058 0.229528
+vn -0.668702 0.723148 0.172900
+vn 0.010291 0.942514 0.334009
+vn -0.174900 0.929145 0.325730
+vn -0.190421 0.847673 0.495167
+vn -0.251575 0.841635 0.477871
+vn 0.729092 0.636595 -0.251340
+vn 0.572960 0.776527 0.262150
+vn 0.832821 0.429436 -0.349275
+vn 0.754102 0.595943 0.276010
+vn 0.572960 0.776527 0.262150
+vn 0.375486 0.877531 0.298245
+vn 0.432292 0.565856 0.702090
+vn 0.591627 0.676546 0.438478
+vn -0.079879 -0.980494 -0.179586
+vn -0.004134 -0.987066 -0.160263
+vn 0.055181 -0.939790 -0.337268
+vn 0.085876 -0.980989 -0.174031
+vn -0.079879 -0.980494 -0.179586
+vn 0.055181 -0.939790 -0.337268
+vn -0.615318 -0.751607 -0.237636
+vn -0.595198 -0.679156 -0.429520
+vn -0.967693 0.111289 -0.226239
+vn -0.525118 0.557302 -0.643168
+vn -0.813585 0.552464 -0.181282
+vn -0.117384 0.935171 -0.334181
+vn -0.007846 -0.999083 0.042082
+vn -0.778764 -0.626978 0.020645
+vn -0.028436 -0.805938 0.591317
+vn -0.883797 -0.396712 0.248037
+vn -0.742224 -0.669362 0.032528
+vn -0.992833 -0.113810 -0.036459
+vn -0.778764 -0.626978 0.020645
+vn -0.999492 -0.000330 -0.031858
+vn 0.000918 -0.947465 -0.319857
+vn -0.594424 -0.764289 -0.250046
+vn 0.001000 -0.976545 -0.215311
+vn -0.545748 -0.815416 -0.193016
+vn 0.883563 0.420414 -0.206322
+vn 0.747292 0.651112 -0.132694
+vn -0.117384 0.935171 -0.334181
+vn 0.013258 0.982574 -0.185399
+vn 0.622199 0.593958 -0.509983
+vn 0.704048 0.267029 -0.658036
+vn -0.155282 0.830090 -0.535572
+vn -0.021123 0.396192 -0.917925
+vn 0.474406 0.849858 0.229522
+vn 0.454700 0.855959 0.246133
+vn 0.971458 0.120078 0.204573
+vn 0.959574 0.197358 0.200670
+vn 0.362223 0.911260 0.195958
+vn 0.371422 0.900885 0.224615
+vn -0.205817 0.970929 0.122212
+vn -0.218561 0.967108 0.130128
+vn 0.371422 0.900885 0.224615
+vn 0.399879 0.882437 0.247794
+vn -0.218561 0.967108 0.130128
+vn -0.219189 0.966526 0.133355
+vn 0.399879 0.882437 0.247794
+vn 0.426671 0.867299 0.256407
+vn -0.219189 0.966526 0.133355
+vn -0.214919 0.967688 0.131869
+vn -0.095669 0.993071 -0.068240
+vn -0.729617 0.653494 -0.201508
+vn -0.083684 0.992053 -0.093958
+vn -0.712408 0.665520 -0.222618
+vn -0.124889 0.992135 0.008468
+vn -0.762398 0.633575 -0.131650
+vn -0.095669 0.993071 -0.068240
+vn -0.729617 0.653494 -0.201508
+vn -0.124889 0.992135 0.008468
+vn -0.171023 0.981220 0.089215
+vn -0.762398 0.633575 -0.131650
+vn -0.794762 0.603722 -0.062238
+vn 0.995049 -0.082690 -0.055139
+vn 0.843194 0.129506 0.521778
+vn 0.997487 -0.040828 -0.057904
+vn 0.828893 0.195399 0.524172
+vn 0.843194 0.129506 0.521778
+vn 0.021661 0.250748 0.967810
+vn 0.828893 0.195399 0.524172
+vn 0.064126 0.321298 0.944805
+vn -0.989479 -0.141947 -0.027977
+vn -0.983847 -0.146590 -0.102747
+vn -0.703356 -0.366299 -0.609193
+vn -0.720281 0.122985 -0.682694
+vn -0.997294 -0.065850 0.032678
+vn -0.989479 -0.141947 -0.027977
+vn -0.766793 -0.321332 -0.555675
+vn -0.703356 -0.366299 -0.609193
+vn -0.697764 0.586925 -0.410664
+vn -0.155282 0.830090 -0.535572
+vn -0.720281 0.122985 -0.682694
+vn -0.021123 0.396192 -0.917925
+vn -0.126856 0.991916 0.003048
+vn -0.136593 0.988641 0.062704
+vn 0.190419 0.971218 0.143096
+vn 0.589302 0.793527 0.151783
+vn 0.190419 0.971218 0.143096
+vn -0.363859 0.732525 0.575338
+vn 0.251578 0.959161 0.129301
+vn 0.284247 0.878967 0.382912
+vn 0.251578 0.959161 0.129301
+vn 0.284247 0.878967 0.382912
+vn 0.730921 0.681748 -0.031222
+vn 0.798464 0.592039 0.109291
+vn -0.572960 0.818261 -0.046542
+vn -0.754101 0.655893 0.033702
+vn -0.432294 0.786968 0.440232
+vn -0.409027 0.705115 0.579232
+vn -0.832821 0.268089 -0.484290
+vn -0.498689 -0.388703 -0.774739
+vn -0.912558 0.071633 -0.402625
+vn -0.422766 -0.422025 -0.801975
+vn -0.498689 -0.388703 -0.774739
+vn 0.167066 -0.830353 -0.531604
+vn -0.422766 -0.422025 -0.801975
+vn 0.364626 -0.652014 -0.664775
+vn -0.159009 -0.917387 -0.364853
+vn 0.311383 -0.937069 0.157933
+vn 0.167066 -0.830353 -0.531604
+vn 0.692291 -0.720614 0.038066
+vn 0.311383 -0.937069 0.157933
+vn 0.104518 -0.978304 0.178877
+vn 0.280598 -0.672461 0.684881
+vn -0.310181 -0.892984 0.326140
+vn 0.104518 -0.978304 0.178877
+vn 0.104197 -0.973558 0.203294
+vn -0.310181 -0.892984 0.326140
+vn 0.100675 -0.980182 0.170608
+vn 0.104197 -0.973558 0.203294
+vn 0.004136 -0.975574 0.219633
+vn 0.100675 -0.980182 0.170608
+vn -0.085877 -0.975073 0.204592
+vn -0.626606 0.197171 -0.753982
+vn -0.470981 0.538889 -0.698409
+vn -0.525118 0.557302 -0.643168
+vn -0.117384 0.935171 -0.334181
+vn -0.550874 -0.818967 -0.160719
+vn 0.000000 -0.984642 -0.174586
+vn -0.545748 -0.815416 -0.193016
+vn 0.001000 -0.976545 -0.215311
+vn -0.930351 -0.350323 -0.108265
+vn -0.997745 -0.000747 -0.067109
+vn -0.934223 -0.347128 -0.082036
+vn -0.998945 0.001365 -0.045896
+vn -0.997745 -0.000747 -0.067109
+vn -0.918180 0.394603 -0.035142
+vn -0.998945 0.001365 -0.045896
+vn -0.915507 0.401409 -0.026782
+vn -0.918180 0.394603 -0.035142
+vn -0.397489 0.917552 0.010054
+vn -0.915507 0.401409 -0.026782
+vn -0.395443 0.918473 -0.005712
+vn -0.397489 0.917552 0.010054
+vn 0.000000 0.999743 0.022676
+vn -0.395443 0.918473 -0.005712
+vn 0.000000 1.000000 0.000667
+vn 0.000000 -0.984642 -0.174586
+vn 0.000000 -0.988118 -0.153695
+vn 0.550874 -0.818967 -0.160719
+vn 0.566732 -0.812634 -0.135796
+vn 0.020214 0.997484 -0.067945
+vn -0.212574 0.967339 -0.138088
+vn 0.012391 0.999075 -0.041173
+vn -0.228823 0.966819 -0.113583
+vn 0.551098 -0.680843 0.482435
+vn 0.917695 -0.166610 0.360663
+vn 0.448187 -0.697278 0.559403
+vn 0.867547 -0.207673 0.451923
+vn 0.917695 -0.166610 0.360663
+vn 0.912670 0.347171 0.215654
+vn 0.867547 -0.207673 0.451923
+vn 0.869719 0.446155 0.211032
+vn -0.792250 -0.609096 0.036641
+vn -0.728495 -0.679050 0.090483
+vn -0.969215 -0.102488 -0.223872
+vn -0.962746 -0.163750 -0.215187
+vn -0.995021 -0.034171 0.093625
+vn -0.792250 -0.609096 0.036641
+vn -0.980194 0.012390 -0.197650
+vn -0.969215 -0.102488 -0.223872
+vn 0.523441 0.807746 0.271211
+vn 0.513320 0.798359 0.314843
+vn 0.293537 0.930191 0.220412
+vn 0.286139 0.925288 0.248930
+vn 0.504008 0.839513 0.202963
+vn 0.523441 0.807746 0.271211
+vn 0.277141 0.944775 0.174906
+vn 0.293537 0.930191 0.220412
+vn 0.747332 0.622138 0.233321
+vn 0.504008 0.839513 0.202963
+vn 0.696407 0.702234 0.147937
+vn 0.444601 0.887135 0.123779
+vn 0.267819 0.925828 0.266676
+vn 0.253158 0.927532 0.274945
+vn -0.058307 0.984772 0.163780
+vn -0.062733 0.982198 0.177067
+vn 0.253158 0.927532 0.274945
+vn 0.244910 0.930205 0.273382
+vn -0.062733 0.982198 0.177067
+vn -0.060842 0.982180 0.177822
+vn 0.244910 0.930205 0.273382
+vn 0.239053 0.934770 0.262791
+vn -0.060842 0.982180 0.177822
+vn -0.054927 0.984227 0.168166
+vn 0.239053 0.934770 0.262791
+vn 0.231900 0.941250 0.245500
+vn -0.054927 0.984227 0.168166
+vn -0.047610 0.987207 0.152169
+vn 0.243582 0.962344 0.120674
+vn -0.009367 0.999457 0.031576
+vn 0.230833 0.951437 0.203674
+vn -0.033966 0.993105 0.112199
+vn 0.230833 0.951437 0.203674
+vn -0.033966 0.993105 0.112199
+vn 0.231900 0.941250 0.245500
+vn -0.047610 0.987207 0.152169
+vn 0.256781 0.965409 0.045275
+vn 0.012391 0.999075 -0.041173
+vn 0.243582 0.962344 0.120674
+vn -0.009367 0.999457 0.031576
+vn 0.286139 0.925288 0.248930
+vn 0.267819 0.925828 0.266676
+vn -0.049267 0.988449 0.143320
+vn -0.058307 0.984772 0.163780
+vn -0.174900 0.929145 0.325730
+vn -0.668702 0.723148 0.172900
+vn -0.251575 0.841635 0.477871
+vn -0.730918 0.644160 0.225427
+vn -0.190421 0.847673 0.495167
+vn 0.126857 0.919135 0.372959
+vn 0.010291 0.942514 0.334009
+vn 0.178345 0.911816 0.369844
+vn 0.375486 0.877531 0.298245
+vn 0.178345 0.911816 0.369844
+vn 0.591627 0.676546 0.438478
+vn 0.126857 0.919135 0.372959
+vn 0.572960 0.776527 0.262150
+vn 0.432292 0.565856 0.702090
+vn 0.754102 0.595943 0.276010
+vn 0.409028 0.438047 0.800507
+vn 0.832821 0.429436 -0.349275
+vn 0.912558 0.216697 -0.346815
+vn 0.498688 -0.071537 -0.863824
+vn 0.422767 -0.092289 -0.901527
+vn -0.104194 -0.979099 -0.174670
+vn -0.100671 -0.973048 -0.207468
+vn -0.004134 -0.987066 -0.160263
+vn 0.085876 -0.980989 -0.174031
+vn -0.104521 -0.974390 -0.199095
+vn 0.310179 -0.950185 -0.030632
+vn -0.104194 -0.979099 -0.174670
+vn -0.100671 -0.973048 -0.207468
+vn -0.311386 -0.928318 -0.203138
+vn -0.280599 -0.879451 0.384487
+vn -0.104521 -0.974390 -0.199095
+vn 0.310179 -0.950185 -0.030632
+vn 0.159004 -0.714985 -0.680819
+vn -0.167064 -0.572012 -0.803051
+vn -0.311386 -0.928318 -0.203138
+vn -0.692291 -0.682770 -0.233577
+vn 0.498688 -0.071537 -0.863824
+vn 0.422767 -0.092289 -0.901527
+vn -0.167064 -0.572012 -0.803051
+vn -0.364625 -0.356862 -0.860057
+vn -0.615318 -0.751607 -0.237636
+vn -0.595198 -0.679156 -0.429520
+vn -0.992991 0.004171 -0.118113
+vn -0.978996 -0.000556 -0.203877
+vn -0.992833 -0.113810 -0.036459
+vn -0.813585 0.552464 -0.181282
+vn -0.999492 -0.000330 -0.031858
+vn -0.711110 0.690329 -0.133300
+vn 0.868791 -0.403770 0.286656
+vn -0.028436 -0.805938 0.591317
+vn 0.744389 -0.092487 0.661310
+vn -0.098738 -0.137158 0.985616
+vn 0.999324 -0.023631 -0.028163
+vn 0.998472 0.009356 -0.054464
+vn 0.747292 0.651112 -0.132694
+vn 0.729059 0.391977 -0.561094
+vn 0.998472 0.009356 -0.054464
+vn 0.868791 -0.403770 0.286656
+vn 0.998031 -0.027522 0.056361
+vn 0.744389 -0.092487 0.661310
+vn 0.454700 0.855959 0.246133
+vn 0.474406 0.849858 0.229522
+vn -0.216427 0.968499 0.123166
+vn -0.238450 0.961654 0.135514
+vn 0.474406 0.849858 0.229522
+vn 0.427571 0.874817 0.227768
+vn -0.238450 0.961654 0.135514
+vn -0.237901 0.943097 0.232319
+vn 0.427571 0.874817 0.227768
+vn 0.394761 0.886945 0.239777
+vn -0.237901 0.943097 0.232319
+vn -0.075259 0.883116 0.463080
+vn 0.426671 0.867299 0.256407
+vn 0.454700 0.855959 0.246133
+vn -0.214919 0.967688 0.131869
+vn -0.216427 0.968499 0.123166
+vn -0.171023 0.981220 0.089215
+vn -0.205817 0.970929 0.122212
+vn -0.794762 0.603722 -0.062238
+vn -0.816098 0.575762 -0.049826
+vn 0.995049 -0.082690 -0.055139
+vn 0.688088 -0.339013 -0.641565
+vn 0.991894 -0.094160 -0.085328
+vn 0.704048 0.267029 -0.658036
+vn 0.997487 -0.040828 -0.057904
+vn 0.714381 -0.313492 -0.625605
+vn 0.995049 -0.082690 -0.055139
+vn 0.688088 -0.339013 -0.641565
+vn -0.766793 -0.321332 -0.555675
+vn -0.770548 -0.251029 -0.585868
+vn -0.997294 -0.065850 0.032678
+vn -0.997582 0.059254 0.036311
+vn -0.997294 -0.065850 0.032678
+vn -0.997582 0.059254 0.036311
+vn -0.770489 0.173021 0.613523
+vn -0.676445 0.345304 0.650529
+vn -0.770489 0.173021 0.613523
+vn -0.676445 0.345304 0.650529
+vn 0.064126 0.321298 0.944805
+vn 0.110704 0.396908 0.911158
+vn 0.595196 -0.790377 -0.145073
+vn 0.535729 -0.749900 -0.388130
+vn -0.055183 -0.997762 0.037770
+vn -0.200876 -0.938990 -0.279188
+vn 0.595196 -0.790377 -0.145073
+vn 0.978996 -0.076593 -0.188944
+vn 0.535729 -0.749900 -0.388130
+vn 0.965818 -0.102657 -0.238027
+vn 0.978996 -0.076593 -0.188944
+vn 0.730921 0.681748 -0.031222
+vn 0.965818 -0.102657 -0.238027
+vn 0.798464 0.592039 0.109291
+vn -0.136593 0.988641 0.062704
+vn -0.126856 0.991916 0.003048
+vn -0.754873 0.655817 0.008426
+vn -0.591624 0.791300 0.154356
+vn 0.190419 0.971218 0.143096
+vn 0.417572 -0.115859 0.901227
+vn -0.363859 0.732525 0.575338
+vn -0.913029 0.058132 0.403732
+vn -0.591624 0.791300 0.154356
+vn -0.432294 0.786968 0.440232
+vn -0.954367 -0.089525 0.284903
+vn -0.104520 0.126615 0.986430
+vn -0.832821 0.268089 -0.484290
+vn -0.912558 0.071633 -0.402625
+vn -0.754101 0.655893 0.033702
+vn -0.885577 0.434052 0.165383
+vn 0.311383 -0.937069 0.157933
+vn 0.280598 -0.672461 0.684881
+vn 0.692291 -0.720614 0.038066
+vn 0.730840 -0.292781 0.616564
+vn -0.055183 -0.997762 0.037770
+vn -0.200876 -0.938990 -0.279188
+vn -0.085877 -0.975073 0.204592
+vn -0.788153 -0.614036 0.042128
+vn 0.000000 -0.984642 -0.174586
+vn -0.550874 -0.818967 -0.160719
+vn 0.000000 -0.988118 -0.153695
+vn -0.566731 -0.812635 -0.135796
+vn -0.550874 -0.818967 -0.160719
+vn -0.930351 -0.350323 -0.108265
+vn -0.566731 -0.812635 -0.135796
+vn -0.934223 -0.347128 -0.082036
+vn 0.566732 -0.812634 -0.135796
+vn 0.580175 -0.810431 -0.081233
+vn 0.934223 -0.347128 -0.082036
+vn 0.935556 -0.347917 -0.060737
+vn 0.934223 -0.347128 -0.082036
+vn 0.935556 -0.347917 -0.060737
+vn 0.998945 0.001365 -0.045896
+vn 0.998795 0.002105 -0.049041
+vn 0.998945 0.001365 -0.045896
+vn 0.998795 0.002105 -0.049041
+vn 0.915507 0.401409 -0.026782
+vn 0.910676 0.409383 -0.055454
+vn 0.915507 0.401409 -0.026782
+vn 0.910676 0.409383 -0.055454
+vn 0.395443 0.918473 -0.005712
+vn 0.393179 0.917204 -0.064395
+vn 0.395443 0.918473 -0.005712
+vn 0.393179 0.917204 -0.064395
+vn 0.000000 1.000000 0.000667
+vn -0.000000 0.998068 -0.062137
+vn 0.000000 -0.988118 -0.153695
+vn 0.000000 -0.996239 -0.086650
+vn 0.566732 -0.812634 -0.135796
+vn 0.580175 -0.810431 -0.081233
+vn -0.936623 0.246156 -0.249290
+vn -0.942392 0.237105 -0.235962
+vn -0.861571 0.441494 -0.250557
+vn -0.872581 0.428933 -0.233706
+vn -0.861571 0.441494 -0.250557
+vn -0.872581 0.428933 -0.233706
+vn -0.590545 0.777834 -0.215015
+vn -0.613022 0.765980 -0.193595
+vn -0.590545 0.777834 -0.215015
+vn -0.613022 0.765980 -0.193595
+vn -0.381239 0.907354 -0.177106
+vn -0.402831 0.902223 -0.154017
+vn -0.381239 0.907354 -0.177106
+vn -0.402831 0.902223 -0.154017
+vn -0.212574 0.967339 -0.138088
+vn -0.228823 0.966819 -0.113583
+vn -0.712408 0.665520 -0.222618
+vn -0.729617 0.653494 -0.201508
+vn -0.936623 0.246156 -0.249290
+vn -0.942392 0.237105 -0.235962
+vn 0.141482 -0.826921 0.544229
+vn 0.448187 -0.697278 0.559403
+vn 0.107920 -0.793508 0.598914
+vn 0.341298 -0.683235 0.645527
+vn -0.728495 -0.679050 0.090483
+vn -0.686104 -0.696036 0.211648
+vn -0.962746 -0.163750 -0.215187
+vn -0.972447 -0.204465 -0.111986
+vn -0.422392 -0.826715 0.371655
+vn -0.424970 -0.793362 0.435865
+vn -0.686104 -0.696036 0.211648
+vn -0.644927 -0.682689 0.343519
+vn -0.161231 -0.834756 0.526485
+vn -0.172906 -0.807026 0.564635
+vn -0.424970 -0.793362 0.435865
+vn -0.434254 -0.759305 0.484644
+vn -0.995021 -0.034171 0.093625
+vn -0.980194 0.012390 -0.197650
+vn -0.888098 0.452894 -0.078547
+vn -0.972978 0.123508 -0.195091
+vn -0.161231 -0.834756 0.526485
+vn 0.107920 -0.793508 0.598914
+vn -0.172906 -0.807026 0.564635
+vn 0.088468 -0.759436 0.644539
+vn 0.277141 0.944775 0.174906
+vn 0.238023 0.964693 0.112753
+vn 0.504008 0.839513 0.202963
+vn 0.444601 0.887135 0.123779
+vn 0.912670 0.347171 0.215654
+vn 0.696407 0.702234 0.147937
+vn 0.869719 0.446155 0.211032
+vn 0.600998 0.795413 0.078220
+vn 0.293537 0.930191 0.220412
+vn 0.286139 0.925288 0.248930
+vn -0.040740 0.991337 0.124864
+vn -0.049267 0.988449 0.143320
+vn -0.995021 -0.034171 0.093625
+vn -0.888098 0.452894 -0.078547
+vn -0.237901 0.943097 0.232319
+vn -0.238450 0.961654 0.135514
+vn -0.992991 0.004171 -0.118113
+vn -0.978996 -0.000556 -0.203877
+vn -0.668702 0.723148 0.172900
+vn -0.730918 0.644160 0.225427
+vn 0.126857 0.919135 0.372959
+vn -0.190421 0.847673 0.495167
+vn 0.136595 0.893835 0.427083
+vn -0.589305 0.679573 0.436922
+vn -0.190421 0.847673 0.495167
+vn -0.251575 0.841635 0.477871
+vn 0.363857 0.464931 0.807123
+vn -0.284244 0.672597 0.683241
+vn 0.832821 0.429436 -0.349275
+vn 0.754102 0.595943 0.276010
+vn 0.912558 0.216697 -0.346815
+vn 0.885577 0.340990 0.315402
+vn 0.591627 0.676546 0.438478
+vn 0.954367 -0.189371 0.230918
+vn 0.432292 0.565856 0.702090
+vn 0.104519 -0.250613 0.962429
+vn 0.055181 -0.939790 -0.337268
+vn 0.085876 -0.980989 -0.174031
+vn 0.200878 -0.766991 -0.609404
+vn 0.788152 -0.585407 -0.190041
+vn -0.311386 -0.928318 -0.203138
+vn -0.692291 -0.682770 -0.233577
+vn -0.280599 -0.879451 0.384487
+vn -0.730841 -0.501704 0.462779
+vn -0.595198 -0.679156 -0.429520
+vn 0.055181 -0.939790 -0.337268
+vn -0.535731 -0.550905 -0.639919
+vn 0.200878 -0.766991 -0.609404
+vn -0.813585 0.552464 -0.181282
+vn -0.117384 0.935171 -0.334181
+vn -0.711110 0.690329 -0.133300
+vn 0.013258 0.982574 -0.185399
+vn -0.883797 -0.396712 0.248037
+vn -0.864793 -0.114943 0.488796
+vn -0.028436 -0.805938 0.591317
+vn -0.098738 -0.137158 0.985616
+vn -0.778764 -0.626978 0.020645
+vn -0.999492 -0.000330 -0.031858
+vn -0.883797 -0.396712 0.248037
+vn -0.992833 -0.016638 -0.118347
+vn 0.747292 0.651112 -0.132694
+vn 0.729059 0.391977 -0.561094
+vn 0.013258 0.982574 -0.185399
+vn 0.009236 0.601083 -0.799133
+vn 0.998031 -0.027522 0.056361
+vn 0.754952 0.025658 -0.655278
+vn 0.998472 0.009356 -0.054464
+vn 0.729059 0.391977 -0.561094
+vn -0.021123 0.396192 -0.917925
+vn 0.704048 0.267029 -0.658036
+vn -0.023068 -0.453503 -0.890956
+vn 0.688088 -0.339013 -0.641565
+vn -0.205817 0.970929 0.122212
+vn -0.218561 0.967108 0.130128
+vn -0.816098 0.575762 -0.049826
+vn -0.829050 0.554915 -0.068884
+vn -0.218561 0.967108 0.130128
+vn -0.219189 0.966526 0.133355
+vn -0.829050 0.554915 -0.068884
+vn -0.836399 0.540727 -0.089732
+vn -0.214919 0.967688 0.131869
+vn -0.840135 0.532705 -0.101977
+vn -0.219189 0.966526 0.133355
+vn -0.836399 0.540727 -0.089732
+vn -0.729617 0.653494 -0.201508
+vn -0.762398 0.633575 -0.131650
+vn -0.942392 0.237105 -0.235962
+vn -0.955529 0.225152 -0.190447
+vn -0.794762 0.603722 -0.062238
+vn -0.966576 0.210797 -0.145932
+vn -0.762398 0.633575 -0.131650
+vn -0.955529 0.225152 -0.190447
+vn 0.714381 -0.313492 -0.625605
+vn 0.997487 -0.040828 -0.057904
+vn 0.653525 -0.274637 -0.705322
+vn 0.989802 0.029254 -0.139411
+vn 0.997487 -0.040828 -0.057904
+vn 0.828893 0.195399 0.524172
+vn 0.989802 0.029254 -0.139411
+vn 0.809786 0.304228 0.501688
+vn 0.064126 0.321298 0.944805
+vn 0.110704 0.396908 0.911158
+vn 0.828893 0.195399 0.524172
+vn 0.809786 0.304228 0.501688
+vn -0.766793 -0.321332 -0.555675
+vn -0.703356 -0.366299 -0.609193
+vn -0.046282 -0.448711 -0.892478
+vn -0.023068 -0.453503 -0.890956
+vn -0.703356 -0.366299 -0.609193
+vn -0.720281 0.122985 -0.682694
+vn -0.023068 -0.453503 -0.890956
+vn -0.021123 0.396192 -0.917925
+vn -0.770548 -0.251029 -0.585868
+vn -0.766793 -0.321332 -0.555675
+vn -0.077022 -0.410030 -0.908814
+vn -0.046282 -0.448711 -0.892478
+vn -0.754873 0.655817 0.008426
+vn -0.744678 0.648552 0.157589
+vn -0.136593 0.988641 0.062704
+vn -0.133058 0.946645 0.293529
+vn 0.190419 0.971218 0.143096
+vn 0.589302 0.793527 0.151783
+vn 0.417572 -0.115859 0.901227
+vn 0.987665 0.009463 0.156293
+vn -0.136593 0.988641 0.062704
+vn -0.133058 0.946645 0.293529
+vn 0.589302 0.793527 0.151783
+vn 0.571022 0.763590 0.301437
+vn -0.363859 0.732525 0.575338
+vn -0.404082 0.611159 0.680590
+vn 0.284247 0.878967 0.382912
+vn 0.285936 0.725070 0.626510
+vn 0.284247 0.878967 0.382912
+vn 0.285936 0.725070 0.626510
+vn 0.798464 0.592039 0.109291
+vn 0.838809 0.461932 0.288128
+vn -0.591624 0.791300 0.154356
+vn -0.954367 -0.089525 0.284903
+vn -0.754873 0.655817 0.008426
+vn -0.997007 -0.075806 -0.015173
+vn -0.432294 0.786968 0.440232
+vn -0.409027 0.705115 0.579232
+vn -0.104520 0.126615 0.986430
+vn 0.261148 0.308024 0.914835
+vn -0.754101 0.655893 0.033702
+vn -0.885577 0.434052 0.165383
+vn -0.409027 0.705115 0.579232
+vn -0.466716 0.553894 0.689476
+vn -0.912558 0.071633 -0.402625
+vn -0.422766 -0.422025 -0.801975
+vn -0.940849 -0.114217 -0.318994
+vn -0.394411 -0.422019 -0.816297
+vn -0.422766 -0.422025 -0.801975
+vn 0.364626 -0.652014 -0.664775
+vn -0.394411 -0.422019 -0.816297
+vn 0.418978 -0.446740 -0.790494
+vn 0.167066 -0.830353 -0.531604
+vn 0.692291 -0.720614 0.038066
+vn 0.364626 -0.652014 -0.664775
+vn 0.867373 -0.479134 -0.134517
+vn 0.280598 -0.672461 0.684881
+vn -0.310181 -0.892984 0.326140
+vn -0.104520 0.126615 0.986430
+vn -0.954367 -0.089525 0.284903
+vn -0.310181 -0.892984 0.326140
+vn 0.100675 -0.980182 0.170608
+vn -0.625606 -0.779673 0.026963
+vn 0.126531 -0.990068 0.061279
+vn 0.100675 -0.980182 0.170608
+vn -0.085877 -0.975073 0.204592
+vn 0.126531 -0.990068 0.061279
+vn 0.716416 -0.685633 0.129057
+vn -0.566731 -0.812635 -0.135796
+vn -0.934223 -0.347128 -0.082036
+vn -0.580175 -0.810431 -0.081233
+vn -0.935556 -0.347917 -0.060737
+vn -0.934223 -0.347128 -0.082036
+vn -0.998945 0.001365 -0.045896
+vn -0.935556 -0.347917 -0.060737
+vn -0.998795 0.002105 -0.049041
+vn -0.998945 0.001365 -0.045896
+vn -0.915507 0.401409 -0.026782
+vn -0.998795 0.002105 -0.049041
+vn -0.910676 0.409383 -0.055454
+vn -0.915507 0.401409 -0.026782
+vn -0.395443 0.918473 -0.005712
+vn -0.910676 0.409383 -0.055454
+vn -0.393179 0.917204 -0.064396
+vn -0.395443 0.918473 -0.005712
+vn 0.000000 1.000000 0.000667
+vn -0.393179 0.917204 -0.064396
+vn -0.000000 0.998068 -0.062137
+vn 0.000000 -0.988118 -0.153695
+vn -0.566731 -0.812635 -0.135796
+vn 0.000000 -0.996239 -0.086650
+vn -0.580175 -0.810431 -0.081233
+vn 0.012391 0.999075 -0.041173
+vn -0.228823 0.966819 -0.113583
+vn -0.009367 0.999457 0.031576
+vn -0.261651 0.964136 -0.044500
+vn 0.448187 -0.697278 0.559403
+vn 0.867547 -0.207673 0.451923
+vn 0.341298 -0.683235 0.645527
+vn 0.738913 -0.240494 0.629420
+vn 0.867547 -0.207673 0.451923
+vn 0.869719 0.446155 0.211032
+vn 0.738913 -0.240494 0.629420
+vn 0.774773 0.560328 0.292848
+vn -0.980194 0.012390 -0.197650
+vn -0.969215 -0.102488 -0.223872
+vn -0.936057 0.262429 -0.234367
+vn -0.911935 0.289619 -0.290681
+vn -0.969215 -0.102488 -0.223872
+vn -0.962746 -0.163750 -0.215187
+vn -0.911935 0.289619 -0.290681
+vn -0.874566 0.353670 -0.331741
+vn 0.277141 0.944775 0.174906
+vn 0.293537 0.930191 0.220412
+vn -0.031245 0.994531 0.099654
+vn -0.040740 0.991337 0.124864
+vn 0.238023 0.964693 0.112753
+vn 0.277141 0.944775 0.174906
+vn -0.017914 0.998137 0.058328
+vn -0.031245 0.994531 0.099654
+vn 0.696407 0.702234 0.147937
+vn 0.444601 0.887135 0.123779
+vn 0.600998 0.795413 0.078220
+vn 0.365102 0.930180 0.038287
+vn -0.058307 0.984772 0.163780
+vn -0.398690 0.915926 0.046103
+vn -0.049267 0.988449 0.143320
+vn -0.405845 0.913703 0.020886
+vn -0.062733 0.982198 0.177067
+vn -0.386418 0.920050 0.064720
+vn -0.058307 0.984772 0.163780
+vn -0.398690 0.915926 0.046103
+vn -0.060842 0.982180 0.177822
+vn -0.371263 0.925708 0.072307
+vn -0.062733 0.982198 0.177067
+vn -0.386418 0.920050 0.064720
+vn -0.054927 0.984227 0.168166
+vn -0.352461 0.933136 0.070912
+vn -0.060842 0.982180 0.177822
+vn -0.371263 0.925708 0.072307
+vn -0.047610 0.987207 0.152169
+vn -0.329967 0.941842 0.063681
+vn -0.054927 0.984227 0.168166
+vn -0.352461 0.933136 0.070912
+vn -0.009367 0.999457 0.031576
+vn -0.261651 0.964136 -0.044500
+vn -0.033966 0.993105 0.112199
+vn -0.300403 0.953306 0.031069
+vn -0.033966 0.993105 0.112199
+vn -0.300403 0.953306 0.031069
+vn -0.047610 0.987207 0.152169
+vn -0.329967 0.941842 0.063681
+vn -0.049267 0.988449 0.143320
+vn -0.405845 0.913703 0.020886
+vn -0.040740 0.991337 0.124864
+vn -0.397049 0.917797 -0.001137
+vn -0.251575 0.841635 0.477871
+vn -0.730918 0.644160 0.225427
+vn -0.284244 0.672597 0.683241
+vn -0.798462 0.508498 0.322318
+vn 0.136595 0.893835 0.427083
+vn 0.754875 0.605303 0.252532
+vn 0.126857 0.919135 0.372959
+vn 0.591627 0.676546 0.438478
+vn -0.190421 0.847673 0.495167
+vn 0.363857 0.464931 0.807123
+vn -0.417578 -0.443777 0.792900
+vn 0.913028 -0.096716 0.396265
+vn 0.754102 0.595943 0.276010
+vn 0.409028 0.438047 0.800507
+vn 0.885577 0.340990 0.315402
+vn 0.466717 0.256613 0.846360
+vn 0.432292 0.565856 0.702090
+vn 0.104519 -0.250613 0.962429
+vn 0.409028 0.438047 0.800507
+vn -0.261148 -0.055591 0.963697
+vn 0.591627 0.676546 0.438478
+vn 0.754875 0.605303 0.252532
+vn 0.954367 -0.189371 0.230918
+vn 0.997007 -0.064670 -0.042364
+vn 0.912558 0.216697 -0.346815
+vn 0.940850 0.013064 -0.338573
+vn 0.422767 -0.092289 -0.901527
+vn 0.394410 -0.086939 -0.914813
+vn 0.310179 -0.950185 -0.030632
+vn 0.625602 -0.733423 -0.265918
+vn -0.100671 -0.973048 -0.207468
+vn -0.126526 -0.941424 -0.312588
+vn -0.100671 -0.973048 -0.207468
+vn -0.126526 -0.941424 -0.312588
+vn 0.085876 -0.980989 -0.174031
+vn -0.716416 -0.684269 -0.136106
+vn -0.280599 -0.879451 0.384487
+vn 0.104519 -0.250613 0.962429
+vn 0.310179 -0.950185 -0.030632
+vn 0.954367 -0.189371 0.230918
+vn -0.167064 -0.572012 -0.803051
+vn -0.364625 -0.356862 -0.860057
+vn -0.692291 -0.682770 -0.233577
+vn -0.867374 -0.394333 -0.303586
+vn 0.422767 -0.092289 -0.901527
+vn 0.394410 -0.086939 -0.914813
+vn -0.364625 -0.356862 -0.860057
+vn -0.418976 -0.119502 -0.900099
+vn -0.595198 -0.679156 -0.429520
+vn -0.535731 -0.550905 -0.639919
+vn -0.978996 -0.000556 -0.203877
+vn -0.965818 -0.006424 -0.259141
+vn -0.864793 -0.114943 0.488796
+vn -0.883797 -0.396712 0.248037
+vn -0.984482 -0.069695 -0.161050
+vn -0.992833 -0.016638 -0.118347
+vn -0.999492 -0.000330 -0.031858
+vn -0.711110 0.690329 -0.133300
+vn -0.992833 -0.016638 -0.118347
+vn -0.711538 0.386843 -0.586572
+vn 0.998031 -0.027522 0.056361
+vn 0.744389 -0.092487 0.661310
+vn 0.982871 -0.014321 0.183737
+vn 0.635202 -0.040713 0.771272
+vn 0.744389 -0.092487 0.661310
+vn -0.098738 -0.137158 0.985616
+vn 0.635202 -0.040713 0.771272
+vn -0.203698 -0.060557 0.977159
+vn -0.711110 0.690329 -0.133300
+vn 0.013258 0.982574 -0.185399
+vn -0.711538 0.386843 -0.586572
+vn 0.009236 0.601083 -0.799133
+vn 0.754952 0.025658 -0.655278
+vn 0.998031 -0.027522 0.056361
+vn 0.848731 0.005518 -0.528797
+vn 0.982871 -0.014321 0.183737
+vn -0.216427 0.968499 0.123166
+vn -0.846329 0.522157 -0.105256
+vn -0.214919 0.967688 0.131869
+vn -0.840135 0.532705 -0.101977
+vn -0.238450 0.961654 0.135514
+vn -0.888098 0.452894 -0.078547
+vn -0.216427 0.968499 0.123166
+vn -0.846329 0.522157 -0.105256
+vn -0.816098 0.575762 -0.049826
+vn -0.969717 0.197228 -0.144051
+vn -0.794762 0.603722 -0.062238
+vn -0.966576 0.210797 -0.145932
+vn 0.714381 -0.313492 -0.625605
+vn -0.046282 -0.448711 -0.892478
+vn 0.688088 -0.339013 -0.641565
+vn -0.023068 -0.453503 -0.890956
+vn 0.653525 -0.274637 -0.705322
+vn -0.077022 -0.410030 -0.908814
+vn 0.714381 -0.313492 -0.625605
+vn -0.046282 -0.448711 -0.892478
+vn -0.077022 -0.410030 -0.908814
+vn -0.076533 -0.320826 -0.944041
+vn -0.770548 -0.251029 -0.585868
+vn -0.673586 -0.156972 -0.722247
+vn -0.770548 -0.251029 -0.585868
+vn -0.673586 -0.156972 -0.722247
+vn -0.997582 0.059254 0.036311
+vn -0.981493 0.171606 -0.084986
+vn -0.997582 0.059254 0.036311
+vn -0.981493 0.171606 -0.084986
+vn -0.676445 0.345304 0.650529
+vn -0.871817 0.340967 0.351678
+vn 0.110704 0.396908 0.911158
+vn -0.676445 0.345304 0.650529
+vn 0.171429 0.469542 0.866108
+vn -0.273583 0.477721 0.834827
+vn 0.535729 -0.749900 -0.388130
+vn 0.483307 -0.654028 -0.581946
+vn -0.200876 -0.938990 -0.279188
+vn -0.278098 -0.790767 -0.545297
+vn 0.535729 -0.749900 -0.388130
+vn 0.965818 -0.102657 -0.238027
+vn 0.483307 -0.654028 -0.581946
+vn 0.963855 -0.118286 -0.238729
+vn 0.965818 -0.102657 -0.238027
+vn 0.798464 0.592039 0.109291
+vn 0.963855 -0.118286 -0.238729
+vn 0.838809 0.461932 0.288128
+vn -0.744678 0.648552 0.157589
+vn -0.754873 0.655817 0.008426
+vn -0.997845 -0.049173 -0.043449
+vn -0.997007 -0.075806 -0.015173
+vn -0.363859 0.732525 0.575338
+vn -0.913029 0.058132 0.403732
+vn -0.404082 0.611159 0.680590
+vn -0.931086 0.097659 0.351486
+vn -0.913029 0.058132 0.403732
+vn 0.417572 -0.115859 0.901227
+vn -0.788153 -0.614036 0.042128
+vn -0.085877 -0.975073 0.204592
+vn -0.885577 0.434052 0.165383
+vn -0.912558 0.071633 -0.402625
+vn -0.933916 0.202267 0.294769
+vn -0.940849 -0.114217 -0.318994
+vn 0.730840 -0.292781 0.616564
+vn 0.860427 -0.105587 0.498514
+vn 0.692291 -0.720614 0.038066
+vn 0.867373 -0.479134 -0.134517
+vn 0.730840 -0.292781 0.616564
+vn 0.280598 -0.672461 0.684881
+vn 0.261148 0.308024 0.914835
+vn -0.104520 0.126615 0.986430
+vn -0.310181 -0.892984 0.326140
+vn -0.625606 -0.779673 0.026963
+vn -0.954367 -0.089525 0.284903
+vn -0.997007 -0.075806 -0.015173
+vn -0.200876 -0.938990 -0.279188
+vn -0.278098 -0.790767 -0.545297
+vn -0.788153 -0.614036 0.042128
+vn -0.856517 -0.487905 -0.168307
+vn 0.580175 -0.810431 -0.081233
+vn 0.000000 -0.996239 -0.086650
+vn 0.593034 -0.804883 -0.021767
+vn 0.000000 -0.999969 -0.007922
+vn 0.580175 -0.810431 -0.081233
+vn 0.593034 -0.804883 -0.021767
+vn 0.935556 -0.347917 -0.060737
+vn 0.935257 -0.351132 -0.044732
+vn 0.935556 -0.347917 -0.060737
+vn 0.935257 -0.351132 -0.044732
+vn 0.998795 0.002105 -0.049041
+vn 0.998076 -0.002263 -0.061955
+vn 0.998795 0.002105 -0.049041
+vn 0.998076 -0.002263 -0.061955
+vn 0.910676 0.409383 -0.055454
+vn 0.909277 0.404882 -0.096367
+vn 0.393179 0.917204 -0.064395
+vn 0.910676 0.409383 -0.055454
+vn 0.396548 0.908029 -0.135029
+vn 0.909277 0.404882 -0.096367
+vn 0.393179 0.917204 -0.064395
+vn 0.396548 0.908029 -0.135029
+vn -0.000000 0.998068 -0.062137
+vn -0.000000 0.990715 -0.135958
+vn -0.942392 0.237105 -0.235962
+vn -0.955529 0.225152 -0.190447
+vn -0.872581 0.428933 -0.233706
+vn -0.893535 0.411472 -0.179684
+vn -0.872581 0.428933 -0.233706
+vn -0.893535 0.411472 -0.179684
+vn -0.613022 0.765980 -0.193595
+vn -0.651360 0.747909 -0.127916
+vn -0.613022 0.765980 -0.193595
+vn -0.651360 0.747909 -0.127916
+vn -0.402831 0.902223 -0.154017
+vn -0.441967 0.892880 -0.086195
+vn -0.402831 0.902223 -0.154017
+vn -0.441967 0.892880 -0.086195
+vn -0.228823 0.966819 -0.113583
+vn -0.261651 0.964136 -0.044500
+vn 0.341298 -0.683235 0.645527
+vn 0.270212 -0.653309 0.707229
+vn 0.107920 -0.793508 0.598914
+vn 0.088468 -0.759436 0.644539
+vn -0.962746 -0.163750 -0.215187
+vn -0.972447 -0.204465 -0.111986
+vn -0.874566 0.353670 -0.331741
+vn -0.835172 0.453644 -0.310958
+vn -0.686104 -0.696036 0.211648
+vn -0.644927 -0.682689 0.343519
+vn -0.972447 -0.204465 -0.111986
+vn -0.965431 -0.237588 0.107213
+vn -0.644927 -0.682689 0.343519
+vn -0.424970 -0.793362 0.435865
+vn -0.620009 -0.653057 0.434863
+vn -0.434254 -0.759305 0.484644
+vn -0.172906 -0.807026 0.564635
+vn -0.193590 -0.750205 0.632230
+vn -0.434254 -0.759305 0.484644
+vn -0.453390 -0.698174 0.554067
+vn -0.980194 0.012390 -0.197650
+vn -0.936057 0.262429 -0.234367
+vn -0.972978 0.123508 -0.195091
+vn -0.944958 0.264658 -0.192380
+vn -0.888098 0.452894 -0.078547
+vn -0.972978 0.123508 -0.195091
+vn -0.846329 0.522157 -0.105256
+vn -0.965725 0.161558 -0.203162
+vn -0.172906 -0.807026 0.564635
+vn 0.088468 -0.759436 0.644539
+vn -0.193590 -0.750205 0.632230
+vn 0.065486 -0.698297 0.712807
+vn -0.017914 0.998137 0.058328
+vn 0.003111 0.999938 -0.010661
+vn 0.238023 0.964693 0.112753
+vn 0.197284 0.979916 0.029053
+vn 0.444601 0.887135 0.123779
+vn 0.238023 0.964693 0.112753
+vn 0.365102 0.930180 0.038287
+vn 0.197284 0.979916 0.029053
+vn 0.869719 0.446155 0.211032
+vn 0.600998 0.795413 0.078220
+vn 0.774773 0.560328 0.292848
+vn 0.492226 0.869708 0.036342
+vn -0.040740 0.991337 0.124864
+vn -0.397049 0.917797 -0.001137
+vn -0.031245 0.994531 0.099654
+vn -0.356921 0.933878 -0.021902
+vn -0.978996 -0.000556 -0.203877
+vn -0.965818 -0.006424 -0.259141
+vn -0.730918 0.644160 0.225427
+vn -0.798462 0.508498 0.322318
+vn 0.754875 0.605303 0.252532
+vn 0.136595 0.893835 0.427083
+vn 0.744682 0.542901 0.388211
+vn 0.133058 0.768742 0.625565
+vn 0.136595 0.893835 0.427083
+vn -0.589305 0.679573 0.436922
+vn 0.133058 0.768742 0.625565
+vn -0.571025 0.595955 0.564595
+vn -0.190421 0.847673 0.495167
+vn -0.417578 -0.443777 0.792900
+vn -0.589305 0.679573 0.436922
+vn -0.987665 -0.049539 0.148537
+vn 0.363857 0.464931 0.807123
+vn -0.284244 0.672597 0.683241
+vn 0.404081 0.313057 0.859485
+vn -0.285934 0.438920 0.851816
+vn 0.885577 0.340990 0.315402
+vn 0.933917 0.077667 0.348952
+vn 0.912558 0.216697 -0.346815
+vn 0.940850 0.013064 -0.338573
+vn 0.310179 -0.950185 -0.030632
+vn 0.954367 -0.189371 0.230918
+vn 0.625602 -0.733423 -0.265918
+vn 0.997007 -0.064670 -0.042364
+vn 0.104519 -0.250613 0.962429
+vn -0.280599 -0.879451 0.384487
+vn -0.261148 -0.055591 0.963697
+vn -0.730841 -0.501704 0.462779
+vn -0.535731 -0.550905 -0.639919
+vn 0.200878 -0.766991 -0.609404
+vn -0.483311 -0.389636 -0.783961
+vn 0.278101 -0.530177 -0.800982
+vn 0.200878 -0.766991 -0.609404
+vn 0.788152 -0.585407 -0.190041
+vn 0.278101 -0.530177 -0.800982
+vn 0.856518 -0.389861 -0.338209
+vn 0.085876 -0.980989 -0.174031
+vn -0.417578 -0.443777 0.792900
+vn 0.788152 -0.585407 -0.190041
+vn 0.913028 -0.096716 0.396265
+vn -0.730841 -0.501704 0.462779
+vn -0.692291 -0.682770 -0.233577
+vn -0.860427 -0.283980 0.423108
+vn -0.867374 -0.394333 -0.303586
+vn -0.984482 -0.069695 -0.161050
+vn -0.976008 -0.039423 -0.214138
+vn -0.864793 -0.114943 0.488796
+vn -0.890304 -0.050384 0.452571
+vn -0.864793 -0.114943 0.488796
+vn -0.890304 -0.050384 0.452571
+vn -0.098738 -0.137158 0.985616
+vn -0.203698 -0.060557 0.977159
+vn 0.009236 0.601083 -0.799133
+vn 0.729059 0.391977 -0.561094
+vn 0.068310 0.041295 -0.996809
+vn 0.754952 0.025658 -0.655278
+vn 0.848731 0.005518 -0.528797
+vn 0.161333 0.006212 -0.986880
+vn 0.754952 0.025658 -0.655278
+vn 0.068310 0.041295 -0.996809
+vn -0.829050 0.554915 -0.068884
+vn -0.968058 0.185719 -0.168442
+vn -0.816098 0.575762 -0.049826
+vn -0.969717 0.197228 -0.144051
+vn -0.836399 0.540727 -0.089732
+vn -0.965244 0.176559 -0.192694
+vn -0.829050 0.554915 -0.068884
+vn -0.968058 0.185719 -0.168442
+vn -0.846329 0.522157 -0.105256
+vn -0.965725 0.161558 -0.203162
+vn -0.840135 0.532705 -0.101977
+vn -0.963946 0.169208 -0.205369
+vn -0.840135 0.532705 -0.101977
+vn -0.963946 0.169208 -0.205369
+vn -0.836399 0.540727 -0.089732
+vn -0.965244 0.176559 -0.192694
+vn -0.969717 0.197228 -0.144051
+vn -0.926840 0.356187 -0.118734
+vn -0.966576 0.210797 -0.145932
+vn -0.915052 0.383223 -0.125774
+vn -0.966576 0.210797 -0.145932
+vn -0.915052 0.383223 -0.125774
+vn -0.955529 0.225152 -0.190447
+vn -0.893535 0.411472 -0.179684
+vn -0.077022 -0.410030 -0.908814
+vn 0.653525 -0.274637 -0.705322
+vn -0.076533 -0.320826 -0.944041
+vn 0.469865 -0.223324 -0.854022
+vn 0.653525 -0.274637 -0.705322
+vn 0.989802 0.029254 -0.139411
+vn 0.469865 -0.223324 -0.854022
+vn 0.921984 0.063314 -0.382017
+vn 0.989802 0.029254 -0.139411
+vn 0.809786 0.304228 0.501688
+vn 0.921984 0.063314 -0.382017
+vn 0.953436 0.269084 0.136215
+vn 0.110704 0.396908 0.911158
+vn 0.171429 0.469542 0.866108
+vn 0.809786 0.304228 0.501688
+vn 0.567367 0.410386 0.713918
+vn -0.744678 0.648552 0.157589
+vn -0.997845 -0.049173 -0.043449
+vn -0.730261 0.533191 0.427114
+vn -0.996820 -0.079687 -0.000679
+vn -0.133058 0.946645 0.293529
+vn -0.744678 0.648552 0.157589
+vn -0.118867 0.783838 0.609483
+vn -0.730261 0.533191 0.427114
+vn 0.987665 0.009463 0.156293
+vn 0.716416 -0.685633 0.129057
+vn 0.417572 -0.115859 0.901227
+vn -0.085877 -0.975073 0.204592
+vn 0.987665 0.009463 0.156293
+vn 0.589302 0.793527 0.151783
+vn 0.989318 0.079558 0.122149
+vn 0.571022 0.763590 0.301437
+vn -0.133058 0.946645 0.293529
+vn -0.118867 0.783838 0.609483
+vn 0.571022 0.763590 0.301437
+vn 0.555820 0.640175 0.530321
+vn -0.913029 0.058132 0.403732
+vn -0.788153 -0.614036 0.042128
+vn -0.931086 0.097659 0.351486
+vn -0.856517 -0.487905 -0.168307
+vn 0.285936 0.725070 0.626510
+vn -0.404082 0.611159 0.680590
+vn 0.318568 0.459314 0.829183
+vn -0.366306 0.409380 0.835600
+vn 0.285936 0.725070 0.626510
+vn 0.318568 0.459314 0.829183
+vn 0.838809 0.461932 0.288128
+vn 0.855276 0.257469 0.449681
+vn -0.409027 0.705115 0.579232
+vn -0.466716 0.553894 0.689476
+vn 0.261148 0.308024 0.914835
+vn 0.296621 0.340290 0.892311
+vn -0.885577 0.434052 0.165383
+vn -0.933916 0.202267 0.294769
+vn -0.466716 0.553894 0.689476
+vn -0.483900 0.386674 0.785063
+vn -0.933916 0.202267 0.294769
+vn -0.940849 -0.114217 -0.318994
+vn -0.908863 -0.075163 0.410266
+vn -0.907200 -0.330436 -0.260385
+vn -0.940849 -0.114217 -0.318994
+vn -0.394411 -0.422019 -0.816297
+vn -0.907200 -0.330436 -0.260385
+vn -0.362558 -0.490515 -0.792431
+vn -0.394411 -0.422019 -0.816297
+vn 0.418978 -0.446740 -0.790494
+vn -0.362558 -0.490515 -0.792431
+vn 0.436013 -0.347942 -0.829957
+vn 0.364626 -0.652014 -0.664775
+vn 0.867373 -0.479134 -0.134517
+vn 0.418978 -0.446740 -0.790494
+vn 0.933386 -0.209911 -0.291080
+vn 0.860427 -0.105587 0.498514
+vn 0.730840 -0.292781 0.616564
+vn 0.296621 0.340290 0.892311
+vn 0.261148 0.308024 0.914835
+vn -0.625606 -0.779673 0.026963
+vn 0.126531 -0.990068 0.061279
+vn -0.637706 -0.750443 -0.173683
+vn 0.134109 -0.973422 -0.185648
+vn 0.126531 -0.990068 0.061279
+vn 0.716416 -0.685633 0.129057
+vn 0.134109 -0.973422 -0.185648
+vn 0.781936 -0.618258 -0.079577
+vn -0.580175 -0.810431 -0.081233
+vn -0.593034 -0.804883 -0.021767
+vn 0.000000 -0.996239 -0.086650
+vn 0.000000 -0.999969 -0.007922
+vn -0.580175 -0.810431 -0.081233
+vn -0.935556 -0.347917 -0.060737
+vn -0.593034 -0.804883 -0.021767
+vn -0.935257 -0.351132 -0.044732
+vn -0.935556 -0.347917 -0.060737
+vn -0.998795 0.002105 -0.049041
+vn -0.935257 -0.351132 -0.044732
+vn -0.998076 -0.002263 -0.061955
+vn -0.998795 0.002105 -0.049041
+vn -0.910676 0.409383 -0.055454
+vn -0.998076 -0.002263 -0.061955
+vn -0.909277 0.404882 -0.096367
+vn -0.393179 0.917204 -0.064396
+vn -0.396548 0.908029 -0.135029
+vn -0.910676 0.409383 -0.055454
+vn -0.909277 0.404882 -0.096367
+vn -0.393179 0.917204 -0.064396
+vn -0.000000 0.998068 -0.062137
+vn -0.396548 0.908029 -0.135029
+vn -0.000000 0.990715 -0.135958
+vn 0.341298 -0.683235 0.645527
+vn 0.738913 -0.240494 0.629420
+vn 0.270212 -0.653309 0.707229
+vn 0.587438 -0.241365 0.772437
+vn 0.738913 -0.240494 0.629420
+vn 0.774773 0.560328 0.292848
+vn 0.587438 -0.241365 0.772437
+vn 0.668562 0.626729 0.400295
+vn -0.644927 -0.682689 0.343519
+vn -0.620009 -0.653057 0.434863
+vn -0.965431 -0.237588 0.107213
+vn -0.920069 -0.238594 0.310718
+vn -0.620009 -0.653057 0.434863
+vn -0.434254 -0.759305 0.484644
+vn -0.627070 -0.603121 0.492980
+vn -0.453390 -0.698174 0.554067
+vn -0.936057 0.262429 -0.234367
+vn -0.911935 0.289619 -0.290681
+vn -0.799548 0.575301 -0.172484
+vn -0.753146 0.616447 -0.229704
+vn -0.911935 0.289619 -0.290681
+vn -0.874566 0.353670 -0.331741
+vn -0.753146 0.616447 -0.229704
+vn -0.664190 0.697670 -0.268530
+vn 0.270212 -0.653309 0.707229
+vn 0.243692 -0.603319 0.759355
+vn 0.088468 -0.759436 0.644539
+vn 0.065486 -0.698297 0.712807
+vn -0.031245 0.994531 0.099654
+vn -0.356921 0.933878 -0.021902
+vn -0.017914 0.998137 0.058328
+vn -0.285371 0.957264 -0.046998
+vn -0.017914 0.998137 0.058328
+vn -0.285371 0.957264 -0.046998
+vn 0.003111 0.999938 -0.010661
+vn -0.199918 0.975627 -0.090469
+vn 0.600998 0.795413 0.078220
+vn 0.365102 0.930180 0.038287
+vn 0.492226 0.869708 0.036342
+vn 0.302620 0.951475 -0.055819
+vn -0.386418 0.920050 0.064720
+vn -0.589985 0.807366 -0.008825
+vn -0.398690 0.915926 0.046103
+vn -0.609002 0.792678 -0.027880
+vn -0.398690 0.915926 0.046103
+vn -0.609002 0.792678 -0.027880
+vn -0.405845 0.913703 0.020886
+vn -0.623088 0.780192 -0.055332
+vn -0.371263 0.925708 0.072307
+vn -0.570578 0.821234 0.003950
+vn -0.386418 0.920050 0.064720
+vn -0.589985 0.807366 -0.008825
+vn -0.352461 0.933136 0.070912
+vn -0.548444 0.836113 0.011159
+vn -0.371263 0.925708 0.072307
+vn -0.570578 0.821234 0.003950
+vn -0.329967 0.941842 0.063681
+vn -0.521737 0.853008 0.012977
+vn -0.352461 0.933136 0.070912
+vn -0.548444 0.836113 0.011159
+vn -0.300403 0.953306 0.031069
+vn -0.486879 0.873368 -0.013287
+vn -0.329967 0.941842 0.063681
+vn -0.521737 0.853008 0.012977
+vn -0.261651 0.964136 -0.044500
+vn -0.441967 0.892880 -0.086195
+vn -0.300403 0.953306 0.031069
+vn -0.486879 0.873368 -0.013287
+vn -0.405845 0.913703 0.020886
+vn -0.623088 0.780192 -0.055332
+vn -0.397049 0.917797 -0.001137
+vn -0.614459 0.783606 -0.091661
+vn -0.284244 0.672597 0.683241
+vn -0.798462 0.508498 0.322318
+vn -0.285934 0.438920 0.851816
+vn -0.838808 0.321055 0.439687
+vn 0.744682 0.542901 0.388211
+vn 0.997845 -0.029408 -0.058658
+vn 0.754875 0.605303 0.252532
+vn 0.997007 -0.064670 -0.042364
+vn 0.363857 0.464931 0.807123
+vn 0.404081 0.313057 0.859485
+vn 0.913028 -0.096716 0.396265
+vn 0.931085 -0.040549 0.362542
+vn 0.885577 0.340990 0.315402
+vn 0.466717 0.256613 0.846360
+vn 0.933917 0.077667 0.348952
+vn 0.483898 0.065802 0.872647
+vn 0.409028 0.438047 0.800507
+vn -0.261148 -0.055591 0.963697
+vn 0.466717 0.256613 0.846360
+vn -0.296620 -0.017251 0.954840
+vn 0.933917 0.077667 0.348952
+vn 0.908864 -0.222823 0.352584
+vn 0.940850 0.013064 -0.338573
+vn 0.907201 -0.209408 -0.364877
+vn 0.940850 0.013064 -0.338573
+vn 0.907201 -0.209408 -0.364877
+vn 0.394410 -0.086939 -0.914813
+vn 0.362559 -0.159394 -0.918229
+vn 0.625602 -0.733423 -0.265918
+vn 0.637703 -0.631434 -0.441164
+vn -0.126526 -0.941424 -0.312588
+vn -0.134105 -0.833840 -0.535468
+vn -0.126526 -0.941424 -0.312588
+vn -0.134105 -0.833840 -0.535468
+vn -0.716416 -0.684269 -0.136106
+vn -0.781934 -0.543912 -0.304532
+vn 0.085876 -0.980989 -0.174031
+vn -0.716416 -0.684269 -0.136106
+vn -0.417578 -0.443777 0.792900
+vn -0.987665 -0.049539 0.148537
+vn -0.535731 -0.550905 -0.639919
+vn -0.483311 -0.389636 -0.783961
+vn -0.965818 -0.006424 -0.259141
+vn -0.963855 -0.020664 -0.265626
+vn -0.261148 -0.055591 0.963697
+vn -0.730841 -0.501704 0.462779
+vn -0.296620 -0.017251 0.954840
+vn -0.860427 -0.283980 0.423108
+vn -0.364625 -0.356862 -0.860057
+vn -0.418976 -0.119502 -0.900099
+vn -0.867374 -0.394333 -0.303586
+vn -0.933386 -0.086135 -0.348383
+vn 0.394410 -0.086939 -0.914813
+vn 0.362559 -0.159394 -0.918229
+vn -0.418976 -0.119502 -0.900099
+vn -0.436011 -0.013116 -0.899846
+vn -0.976008 -0.039423 -0.214138
+vn -0.984482 -0.069695 -0.161050
+vn -0.605610 -0.022737 -0.795437
+vn -0.634750 -0.009849 -0.772655
+vn -0.984482 -0.069695 -0.161050
+vn -0.992833 -0.016638 -0.118347
+vn -0.634750 -0.009849 -0.772655
+vn -0.711538 0.386843 -0.586572
+vn 0.848731 0.005518 -0.528797
+vn 0.982871 -0.014321 0.183737
+vn 0.872883 -0.013741 -0.487736
+vn 0.964399 0.047012 0.260240
+vn 0.982871 -0.014321 0.183737
+vn 0.635202 -0.040713 0.771272
+vn 0.964399 0.047012 0.260240
+vn 0.533860 0.163750 0.829566
+vn -0.203698 -0.060557 0.977159
+vn -0.317565 0.105438 0.942356
+vn 0.635202 -0.040713 0.771272
+vn 0.533860 0.163750 0.829566
+vn 0.009236 0.601083 -0.799133
+vn 0.068310 0.041295 -0.996809
+vn -0.711538 0.386843 -0.586572
+vn -0.634750 -0.009849 -0.772655
+vn 0.161333 0.006212 -0.986880
+vn 0.848731 0.005518 -0.528797
+vn 0.247302 -0.063820 -0.966834
+vn 0.872883 -0.013741 -0.487736
+vn -0.968058 0.185719 -0.168442
+vn -0.931403 0.335932 -0.140137
+vn -0.969717 0.197228 -0.144051
+vn -0.926840 0.356187 -0.118734
+vn -0.076533 -0.320826 -0.944041
+vn 0.008955 -0.134454 -0.990879
+vn -0.673586 -0.156972 -0.722247
+vn -0.597567 0.015865 -0.801662
+vn -0.673586 -0.156972 -0.722247
+vn -0.597567 0.015865 -0.801662
+vn -0.981493 0.171606 -0.084986
+vn -0.968684 0.199088 -0.148377
+vn -0.676445 0.345304 0.650529
+vn -0.871817 0.340967 0.351678
+vn -0.273583 0.477721 0.834827
+vn -0.608826 0.436398 0.662486
+vn -0.981493 0.171606 -0.084986
+vn -0.968684 0.199088 -0.148377
+vn -0.871817 0.340967 0.351678
+vn -0.895970 0.370387 0.245055
+vn 0.171429 0.469542 0.866108
+vn -0.273583 0.477721 0.834827
+vn 0.210888 0.575077 0.790451
+vn -0.182500 0.548246 0.816162
+vn 0.483307 -0.654028 -0.581946
+vn 0.437565 -0.479631 -0.760586
+vn -0.278098 -0.790767 -0.545297
+vn -0.317727 -0.521096 -0.792154
+vn 0.963855 -0.118286 -0.238729
+vn 0.960923 -0.148238 -0.233780
+vn 0.483307 -0.654028 -0.581946
+vn 0.437565 -0.479631 -0.760586
+vn 0.838809 0.461932 0.288128
+vn 0.855276 0.257469 0.449681
+vn 0.963855 -0.118286 -0.238729
+vn 0.960923 -0.148238 -0.233780
+vn -0.997845 -0.049173 -0.043449
+vn -0.997007 -0.075806 -0.015173
+vn -0.637706 -0.750443 -0.173683
+vn -0.625606 -0.779673 0.026963
+vn 0.716416 -0.685633 0.129057
+vn 0.987665 0.009463 0.156293
+vn 0.781936 -0.618258 -0.079577
+vn 0.989318 0.079558 0.122149
+vn 0.571022 0.763590 0.301437
+vn 0.555820 0.640175 0.530321
+vn 0.989318 0.079558 0.122149
+vn 0.986965 0.081157 0.138971
+vn -0.404082 0.611159 0.680590
+vn -0.931086 0.097659 0.351486
+vn -0.366306 0.409380 0.835600
+vn -0.928439 0.085601 0.361489
+vn -0.933916 0.202267 0.294769
+vn -0.908863 -0.075163 0.410266
+vn -0.483900 0.386674 0.785063
+vn -0.434887 0.187295 0.880792
+vn 0.860427 -0.105587 0.498514
+vn 0.911722 0.093390 0.400052
+vn 0.867373 -0.479134 -0.134517
+vn 0.933386 -0.209911 -0.291080
+vn 0.296621 0.340290 0.892311
+vn 0.309458 0.349532 0.884343
+vn 0.860427 -0.105587 0.498514
+vn 0.911722 0.093390 0.400052
+vn -0.856517 -0.487905 -0.168307
+vn -0.278098 -0.790767 -0.545297
+vn -0.885461 -0.312466 -0.343982
+vn -0.317727 -0.521096 -0.792154
+vn 0.593034 -0.804883 -0.021767
+vn 0.000000 -0.999969 -0.007922
+vn 0.609319 -0.792869 0.009464
+vn 0.000000 -0.999430 0.033750
+vn 0.935257 -0.351132 -0.044732
+vn 0.593034 -0.804883 -0.021767
+vn 0.935825 -0.350730 -0.034920
+vn 0.609319 -0.792869 0.009464
+vn 0.935257 -0.351132 -0.044732
+vn 0.935825 -0.350730 -0.034920
+vn 0.998076 -0.002263 -0.061955
+vn 0.997662 -0.007378 -0.067942
+vn 0.909277 0.404882 -0.096367
+vn 0.998076 -0.002263 -0.061955
+vn 0.910500 0.395740 -0.119916
+vn 0.997662 -0.007378 -0.067942
+vn 0.396548 0.908029 -0.135029
+vn 0.909277 0.404882 -0.096367
+vn 0.404730 0.896645 -0.179502
+vn 0.910500 0.395740 -0.119916
+vn -0.000000 0.990715 -0.135958
+vn 0.396548 0.908029 -0.135029
+vn -0.000001 0.983014 -0.183530
+vn 0.404730 0.896645 -0.179502
+vn -0.651360 0.747909 -0.127916
+vn -0.893535 0.411472 -0.179684
+vn -0.693465 0.718052 -0.059230
+vn -0.915052 0.383223 -0.125774
+vn -0.651360 0.747909 -0.127916
+vn -0.693465 0.718052 -0.059230
+vn -0.441967 0.892880 -0.086195
+vn -0.486879 0.873368 -0.013287
+vn -0.874566 0.353670 -0.331741
+vn -0.835172 0.453644 -0.310958
+vn -0.664190 0.697670 -0.268530
+vn -0.547054 0.791871 -0.271428
+vn -0.972447 -0.204465 -0.111986
+vn -0.965431 -0.237588 0.107213
+vn -0.835172 0.453644 -0.310958
+vn -0.799923 0.568662 -0.191695
+vn -0.620009 -0.653057 0.434863
+vn -0.627070 -0.603121 0.492980
+vn -0.920069 -0.238594 0.310718
+vn -0.829218 -0.273929 0.487196
+vn -0.193590 -0.750205 0.632230
+vn -0.239739 -0.574343 0.782723
+vn -0.453390 -0.698174 0.554067
+vn -0.562802 -0.476689 0.675294
+vn -0.972978 0.123508 -0.195091
+vn -0.944958 0.264658 -0.192380
+vn -0.965725 0.161558 -0.203162
+vn -0.942325 0.280618 -0.182422
+vn -0.936057 0.262429 -0.234367
+vn -0.799548 0.575301 -0.172484
+vn -0.944958 0.264658 -0.192380
+vn -0.808740 0.574943 -0.124017
+vn -0.193590 -0.750205 0.632230
+vn 0.065486 -0.698297 0.712807
+vn -0.239739 -0.574343 0.782723
+vn 0.088012 -0.477628 0.874143
+vn 0.270212 -0.653309 0.707229
+vn 0.587438 -0.241365 0.772437
+vn 0.243692 -0.603319 0.759355
+vn 0.413479 -0.276484 0.867520
+vn 0.197284 0.979916 0.029053
+vn 0.003111 0.999938 -0.010661
+vn 0.182624 0.979106 -0.089441
+vn 0.039354 0.990872 -0.128934
+vn 0.365102 0.930180 0.038287
+vn 0.197284 0.979916 0.029053
+vn 0.302620 0.951475 -0.055819
+vn 0.182624 0.979106 -0.089441
+vn 0.774773 0.560328 0.292848
+vn 0.492226 0.869708 0.036342
+vn 0.668562 0.626729 0.400295
+vn 0.424206 0.905075 0.029810
+vn -0.397049 0.917797 -0.001137
+vn -0.614459 0.783606 -0.091661
+vn -0.356921 0.933878 -0.021902
+vn -0.563730 0.815826 -0.128982
+vn -0.965818 -0.006424 -0.259141
+vn -0.963855 -0.020664 -0.265626
+vn -0.798462 0.508498 0.322318
+vn -0.838808 0.321055 0.439687
+vn 0.744682 0.542901 0.388211
+vn 0.730261 0.335303 0.595223
+vn 0.997845 -0.029408 -0.058658
+vn 0.996820 -0.073679 -0.030365
+vn 0.133058 0.768742 0.625565
+vn 0.118869 0.499797 0.857947
+vn 0.744682 0.542901 0.388211
+vn 0.730261 0.335303 0.595223
+vn 0.133058 0.768742 0.625565
+vn -0.571025 0.595955 0.564595
+vn 0.118869 0.499797 0.857947
+vn -0.555822 0.396049 0.730895
+vn -0.571025 0.595955 0.564595
+vn -0.589305 0.679573 0.436922
+vn -0.989318 0.028235 0.143015
+vn -0.987665 -0.049539 0.148537
+vn 0.913028 -0.096716 0.396265
+vn 0.931085 -0.040549 0.362542
+vn 0.788152 -0.585407 -0.190041
+vn 0.856518 -0.389861 -0.338209
+vn -0.285934 0.438920 0.851816
+vn -0.318568 0.116732 0.940685
+vn 0.404081 0.313057 0.859485
+vn 0.366307 0.068010 0.928005
+vn 0.625602 -0.733423 -0.265918
+vn 0.997007 -0.064670 -0.042364
+vn 0.637703 -0.631434 -0.441164
+vn 0.997845 -0.029408 -0.058658
+vn 0.933917 0.077667 0.348952
+vn 0.483898 0.065802 0.872647
+vn 0.908864 -0.222823 0.352584
+vn 0.434888 -0.154896 0.887062
+vn -0.483311 -0.389636 -0.783961
+vn 0.278101 -0.530177 -0.800982
+vn -0.437566 -0.161179 -0.884623
+vn 0.317727 -0.187871 -0.929384
+vn 0.856518 -0.389861 -0.338209
+vn 0.885460 -0.161542 -0.435734
+vn 0.278101 -0.530177 -0.800982
+vn 0.317727 -0.187871 -0.929384
+vn -0.296620 -0.017251 0.954840
+vn -0.860427 -0.283980 0.423108
+vn -0.309457 -0.005703 0.950896
+vn -0.911723 -0.062634 0.406004
+vn -0.860427 -0.283980 0.423108
+vn -0.867374 -0.394333 -0.303586
+vn -0.911723 -0.062634 0.406004
+vn -0.933386 -0.086135 -0.348383
+vn -0.605610 -0.022737 -0.795437
+vn -0.457521 -0.047573 -0.887925
+vn -0.976008 -0.039423 -0.214138
+vn -0.936850 0.020402 -0.349135
+vn -0.976008 -0.039423 -0.214138
+vn -0.936850 0.020402 -0.349135
+vn -0.890304 -0.050384 0.452571
+vn -0.933717 0.136832 0.330833
+vn -0.203698 -0.060557 0.977159
+vn -0.890304 -0.050384 0.452571
+vn -0.317565 0.105438 0.942356
+vn -0.933717 0.136832 0.330833
+vn 0.068310 0.041295 -0.996809
+vn 0.161333 0.006212 -0.986880
+vn -0.634750 -0.009849 -0.772655
+vn -0.605610 -0.022737 -0.795437
+vn 0.161333 0.006212 -0.986880
+vn 0.247302 -0.063820 -0.966834
+vn -0.605610 -0.022737 -0.795437
+vn -0.457521 -0.047573 -0.887925
+vn -0.965244 0.176559 -0.192694
+vn -0.933822 0.318410 -0.163068
+vn -0.968058 0.185719 -0.168442
+vn -0.931403 0.335932 -0.140137
+vn -0.963946 0.169208 -0.205369
+vn -0.937184 0.299658 -0.178581
+vn -0.965244 0.176559 -0.192694
+vn -0.933822 0.318410 -0.163068
+vn -0.965725 0.161558 -0.203162
+vn -0.942325 0.280618 -0.182422
+vn -0.963946 0.169208 -0.205369
+vn -0.937184 0.299658 -0.178581
+vn -0.931403 0.335932 -0.140137
+vn -0.746072 0.663782 -0.052635
+vn -0.926840 0.356187 -0.118734
+vn -0.724339 0.688245 -0.040635
+vn -0.926840 0.356187 -0.118734
+vn -0.724339 0.688245 -0.040635
+vn -0.915052 0.383223 -0.125774
+vn -0.693465 0.718052 -0.059230
+vn -0.076533 -0.320826 -0.944041
+vn 0.469865 -0.223324 -0.854022
+vn 0.008955 -0.134454 -0.990879
+vn 0.413516 -0.231214 -0.880650
+vn 0.921984 0.063314 -0.382017
+vn 0.792555 0.041055 -0.608417
+vn 0.469865 -0.223324 -0.854022
+vn 0.413516 -0.231214 -0.880650
+vn 0.953436 0.269084 0.136215
+vn 0.947062 0.320542 0.018056
+vn 0.921984 0.063314 -0.382017
+vn 0.792555 0.041055 -0.608417
+vn 0.809786 0.304228 0.501688
+vn 0.567367 0.410386 0.713918
+vn 0.953436 0.269084 0.136215
+vn 0.810319 0.338764 0.478144
+vn 0.171429 0.469542 0.866108
+vn 0.210888 0.575077 0.790451
+vn 0.567367 0.410386 0.713918
+vn 0.626022 0.448779 0.637726
+vn -0.118867 0.783838 0.609483
+vn -0.730261 0.533191 0.427114
+vn -0.103270 0.554047 0.826055
+vn -0.721916 0.349551 0.597203
+vn -0.730261 0.533191 0.427114
+vn -0.996820 -0.079687 -0.000679
+vn -0.721916 0.349551 0.597203
+vn -0.994570 -0.104016 -0.003284
+vn -0.997845 -0.049173 -0.043449
+vn -0.637706 -0.750443 -0.173683
+vn -0.996820 -0.079687 -0.000679
+vn -0.620449 -0.666740 -0.412917
+vn 0.989318 0.079558 0.122149
+vn 0.986965 0.081157 0.138971
+vn 0.781936 -0.618258 -0.079577
+vn 0.775890 -0.542685 -0.321695
+vn -0.118867 0.783838 0.609483
+vn -0.103270 0.554047 0.826055
+vn 0.555820 0.640175 0.530321
+vn 0.565998 0.461542 0.683099
+vn -0.931086 0.097659 0.351486
+vn -0.856517 -0.487905 -0.168307
+vn -0.928439 0.085601 0.361489
+vn -0.885461 -0.312466 -0.343982
+vn 0.318568 0.459314 0.829183
+vn -0.366306 0.409380 0.835600
+vn 0.316570 0.169409 0.933319
+vn -0.373368 0.186547 0.908733
+vn 0.318568 0.459314 0.829183
+vn 0.316570 0.169409 0.933319
+vn 0.855276 0.257469 0.449681
+vn 0.853154 0.032760 0.520630
+vn -0.466716 0.553894 0.689476
+vn -0.483900 0.386674 0.785063
+vn 0.296621 0.340290 0.892311
+vn 0.309458 0.349532 0.884343
+vn -0.907200 -0.330436 -0.260385
+vn -0.791622 -0.592431 -0.149535
+vn -0.908863 -0.075163 0.410266
+vn -0.683391 -0.515658 0.516792
+vn -0.907200 -0.330436 -0.260385
+vn -0.362558 -0.490515 -0.792431
+vn -0.791622 -0.592431 -0.149535
+vn -0.249337 -0.817398 -0.519319
+vn 0.436013 -0.347942 -0.829957
+vn 0.442547 -0.511261 -0.736725
+vn -0.362558 -0.490515 -0.792431
+vn -0.249337 -0.817398 -0.519319
+vn 0.418978 -0.446740 -0.790494
+vn 0.933386 -0.209911 -0.291080
+vn 0.436013 -0.347942 -0.829957
+vn 0.931986 -0.063622 -0.356867
+vn -0.637706 -0.750443 -0.173683
+vn 0.134109 -0.973422 -0.185648
+vn -0.620449 -0.666740 -0.412917
+vn 0.115941 -0.831109 -0.543889
+vn 0.781936 -0.618258 -0.079577
+vn 0.775890 -0.542685 -0.321695
+vn 0.134109 -0.973422 -0.185648
+vn 0.115941 -0.831109 -0.543889
+vn -0.593034 -0.804883 -0.021767
+vn -0.609319 -0.792869 0.009464
+vn 0.000000 -0.999969 -0.007922
+vn 0.000000 -0.999430 0.033750
+vn -0.935257 -0.351132 -0.044732
+vn -0.935825 -0.350730 -0.034920
+vn -0.593034 -0.804883 -0.021767
+vn -0.609319 -0.792869 0.009464
+vn -0.935257 -0.351132 -0.044732
+vn -0.998076 -0.002263 -0.061955
+vn -0.935825 -0.350730 -0.034920
+vn -0.997662 -0.007378 -0.067942
+vn -0.909277 0.404882 -0.096367
+vn -0.910500 0.395741 -0.119916
+vn -0.998076 -0.002263 -0.061955
+vn -0.997662 -0.007378 -0.067942
+vn -0.396548 0.908029 -0.135029
+vn -0.404731 0.896645 -0.179502
+vn -0.909277 0.404882 -0.096367
+vn -0.910500 0.395741 -0.119916
+vn -0.000000 0.990715 -0.135958
+vn -0.000001 0.983014 -0.183530
+vn -0.396548 0.908029 -0.135029
+vn -0.404731 0.896645 -0.179502
+vn 0.587438 -0.241365 0.772437
+vn 0.668562 0.626729 0.400295
+vn 0.413479 -0.276484 0.867520
+vn 0.566722 0.515411 0.642789
+vn -0.965431 -0.237588 0.107213
+vn -0.920069 -0.238594 0.310718
+vn -0.799923 0.568662 -0.191695
+vn -0.770467 0.635778 -0.046551
+vn -0.627070 -0.603121 0.492980
+vn -0.453390 -0.698174 0.554067
+vn -0.829218 -0.273929 0.487196
+vn -0.562802 -0.476689 0.675294
+vn -0.753146 0.616447 -0.229704
+vn -0.563730 0.815826 -0.128982
+vn -0.799548 0.575301 -0.172484
+vn -0.614459 0.783606 -0.091661
+vn -0.753146 0.616447 -0.229704
+vn -0.664190 0.697670 -0.268530
+vn -0.563730 0.815826 -0.128982
+vn -0.468773 0.869337 -0.156544
+vn 0.243692 -0.603319 0.759355
+vn 0.413479 -0.276484 0.867520
+vn 0.065486 -0.698297 0.712807
+vn 0.088012 -0.477628 0.874143
+vn -0.356921 0.933878 -0.021902
+vn -0.563730 0.815826 -0.128982
+vn -0.285371 0.957264 -0.046998
+vn -0.468773 0.869337 -0.156544
+vn -0.199918 0.975627 -0.090469
+vn -0.117945 0.977216 -0.176461
+vn 0.003111 0.999938 -0.010661
+vn 0.039354 0.990872 -0.128934
+vn -0.199918 0.975627 -0.090469
+vn -0.285371 0.957264 -0.046998
+vn -0.351631 0.918862 -0.179022
+vn -0.468773 0.869337 -0.156544
+vn 0.492226 0.869708 0.036342
+vn 0.302620 0.951475 -0.055819
+vn 0.424206 0.905075 0.029810
+vn 0.282525 0.952331 -0.115089
+vn -0.570578 0.821234 0.003950
+vn -0.763433 0.642202 -0.068894
+vn -0.589985 0.807366 -0.008825
+vn -0.779828 0.620137 -0.085435
+vn -0.589985 0.807366 -0.008825
+vn -0.779828 0.620137 -0.085435
+vn -0.609002 0.792678 -0.027880
+vn -0.796750 0.595939 -0.100232
+vn -0.609002 0.792678 -0.027880
+vn -0.796750 0.595939 -0.100232
+vn -0.623088 0.780192 -0.055332
+vn -0.808740 0.574943 -0.124017
+vn -0.548444 0.836113 0.011159
+vn -0.746072 0.663782 -0.052635
+vn -0.570578 0.821234 0.003950
+vn -0.763433 0.642202 -0.068894
+vn -0.521737 0.853008 0.012977
+vn -0.724339 0.688245 -0.040635
+vn -0.548444 0.836113 0.011159
+vn -0.746072 0.663782 -0.052635
+vn -0.486879 0.873368 -0.013287
+vn -0.693465 0.718052 -0.059230
+vn -0.521737 0.853008 0.012977
+vn -0.724339 0.688245 -0.040635
+vn -0.623088 0.780192 -0.055332
+vn -0.808740 0.574943 -0.124017
+vn -0.614459 0.783606 -0.091661
+vn -0.799548 0.575301 -0.172484
+vn -0.285934 0.438920 0.851816
+vn -0.838808 0.321055 0.439687
+vn -0.318568 0.116732 0.940685
+vn -0.855276 0.071075 0.513276
+vn -0.571025 0.595955 0.564595
+vn -0.989318 0.028235 0.143015
+vn -0.555822 0.396049 0.730895
+vn -0.986965 0.023439 0.159217
+vn -0.989318 0.028235 0.143015
+vn -0.987665 -0.049539 0.148537
+vn -0.781934 -0.543912 -0.304532
+vn -0.716416 -0.684269 -0.136106
+vn 0.404081 0.313057 0.859485
+vn 0.366307 0.068010 0.928005
+vn 0.931085 -0.040549 0.362542
+vn 0.928438 -0.055469 0.367322
+vn 0.466717 0.256613 0.846360
+vn -0.296620 -0.017251 0.954840
+vn 0.483898 0.065802 0.872647
+vn -0.309457 -0.005703 0.950896
+vn 0.997845 -0.029408 -0.058658
+vn 0.996820 -0.073679 -0.030365
+vn 0.637703 -0.631434 -0.441164
+vn 0.620448 -0.464505 -0.631886
+vn 0.907201 -0.209408 -0.364877
+vn 0.908864 -0.222823 0.352584
+vn 0.791622 -0.493843 -0.359796
+vn 0.683392 -0.671254 0.287042
+vn 0.907201 -0.209408 -0.364877
+vn 0.791622 -0.493843 -0.359796
+vn 0.362559 -0.159394 -0.918229
+vn 0.249337 -0.564576 -0.786819
+vn 0.637703 -0.631434 -0.441164
+vn 0.620448 -0.464505 -0.631886
+vn -0.134105 -0.833840 -0.535468
+vn -0.115938 -0.568130 -0.814731
+vn -0.781934 -0.543912 -0.304532
+vn -0.134105 -0.833840 -0.535468
+vn -0.775889 -0.383450 -0.500962
+vn -0.115938 -0.568130 -0.814731
+vn -0.963855 -0.020664 -0.265626
+vn -0.483311 -0.389636 -0.783961
+vn -0.960922 -0.050297 -0.272210
+vn -0.437566 -0.161179 -0.884623
+vn 0.931085 -0.040549 0.362542
+vn 0.928438 -0.055469 0.367322
+vn 0.856518 -0.389861 -0.338209
+vn 0.885460 -0.161542 -0.435734
+vn -0.418976 -0.119502 -0.900099
+vn -0.436011 -0.013116 -0.899846
+vn -0.933386 -0.086135 -0.348383
+vn -0.931985 0.074137 -0.354834
+vn -0.436011 -0.013116 -0.899846
+vn 0.362559 -0.159394 -0.918229
+vn -0.442542 -0.199428 -0.874291
+vn 0.249337 -0.564576 -0.786819
+vn 0.872883 -0.013741 -0.487736
+vn 0.831886 -0.035330 -0.553821
+vn 0.247302 -0.063820 -0.966834
+vn 0.256713 -0.164782 -0.952337
+vn 0.872883 -0.013741 -0.487736
+vn 0.964399 0.047012 0.260240
+vn 0.831886 -0.035330 -0.553821
+vn 0.965360 0.169088 0.198720
+vn 0.964399 0.047012 0.260240
+vn 0.533860 0.163750 0.829566
+vn 0.965360 0.169088 0.198720
+vn 0.754013 0.293945 0.587418
+vn -0.317565 0.105438 0.942356
+vn -0.408699 0.392797 0.823818
+vn 0.533860 0.163750 0.829566
+vn 0.053303 0.419220 0.906319
+vn -0.933822 0.318410 -0.163068
+vn -0.763433 0.642202 -0.068894
+vn -0.931403 0.335932 -0.140137
+vn -0.746072 0.663782 -0.052635
+vn 0.953436 0.269084 0.136215
+vn 0.810319 0.338764 0.478144
+vn 0.947062 0.320542 0.018056
+vn 0.745162 0.400913 0.532919
+vn -0.597567 0.015865 -0.801662
+vn 0.008955 -0.134454 -0.990879
+vn -0.492788 0.299297 -0.817056
+vn 0.083873 0.161289 -0.983337
+vn -0.968684 0.199088 -0.148377
+vn -0.597567 0.015865 -0.801662
+vn -0.981031 0.090517 -0.171422
+vn -0.956175 0.050543 -0.288400
+vn -0.273583 0.477721 0.834827
+vn -0.608826 0.436398 0.662486
+vn -0.182500 0.548246 0.816162
+vn -0.513589 0.564950 0.645800
+vn -0.871817 0.340967 0.351678
+vn -0.895970 0.370387 0.245055
+vn -0.608826 0.436398 0.662486
+vn -0.513589 0.564950 0.645800
+vn -0.968684 0.199088 -0.148377
+vn -0.981031 0.090517 -0.171422
+vn -0.895970 0.370387 0.245055
+vn -0.986681 0.072454 -0.145642
+vn 0.210888 0.575077 0.790451
+vn -0.182500 0.548246 0.816162
+vn 0.183965 0.778276 0.600370
+vn -0.584353 0.491408 0.645794
+vn 0.960923 -0.148238 -0.233780
+vn 0.955064 -0.159992 -0.249509
+vn 0.437565 -0.479631 -0.760586
+vn 0.432923 -0.238916 -0.869193
+vn 0.437565 -0.479631 -0.760586
+vn 0.432923 -0.238916 -0.869193
+vn -0.317727 -0.521096 -0.792154
+vn -0.317068 -0.177723 -0.931602
+vn 0.855276 0.257469 0.449681
+vn 0.853154 0.032760 0.520630
+vn 0.960923 -0.148238 -0.233780
+vn 0.955064 -0.159992 -0.249509
+vn 0.555820 0.640175 0.530321
+vn 0.565998 0.461542 0.683099
+vn 0.986965 0.081157 0.138971
+vn 0.989273 0.068490 0.129028
+vn -0.366306 0.409380 0.835600
+vn -0.928439 0.085601 0.361489
+vn -0.373368 0.186547 0.908733
+vn -0.934221 0.076894 0.348309
+vn -0.483900 0.386674 0.785063
+vn -0.434887 0.187295 0.880792
+vn 0.309458 0.349532 0.884343
+vn 0.337716 0.277101 0.899535
+vn -0.434887 0.187295 0.880792
+vn -0.908863 -0.075163 0.410266
+vn -0.343244 -0.100934 0.933807
+vn -0.683391 -0.515658 0.516792
+vn 0.436013 -0.347942 -0.829957
+vn 0.931986 -0.063622 -0.356867
+vn 0.442547 -0.511261 -0.736725
+vn 0.889415 -0.421485 -0.176892
+vn 0.911722 0.093390 0.400052
+vn 0.921300 0.184010 0.342560
+vn 0.933386 -0.209911 -0.291080
+vn 0.931986 -0.063622 -0.356867
+vn 0.309458 0.349532 0.884343
+vn 0.337716 0.277101 0.899535
+vn 0.911722 0.093390 0.400052
+vn 0.921300 0.184010 0.342560
+vn -0.928439 0.085601 0.361489
+vn -0.885461 -0.312466 -0.343982
+vn -0.934221 0.076894 0.348309
+vn -0.889686 -0.073083 -0.450686
+vn -0.885461 -0.312466 -0.343982
+vn -0.317727 -0.521096 -0.792154
+vn -0.889686 -0.073083 -0.450686
+vn -0.317068 -0.177723 -0.931602
+vn 0.935825 -0.350730 -0.034920
+vn 0.609319 -0.792869 0.009464
+vn 0.937957 -0.345658 -0.027507
+vn 0.629012 -0.776813 0.030090
+vn 0.609319 -0.792869 0.009464
+vn 0.000000 -0.999430 0.033750
+vn 0.629012 -0.776813 0.030090
+vn 0.000000 -0.998053 0.062368
+vn 0.935825 -0.350730 -0.034920
+vn 0.937957 -0.345658 -0.027507
+vn 0.997662 -0.007378 -0.067942
+vn 0.997310 -0.010272 -0.072576
+vn 0.997662 -0.007378 -0.067942
+vn 0.997310 -0.010272 -0.072576
+vn 0.910500 0.395740 -0.119916
+vn 0.910130 0.389106 -0.142341
+vn 0.404730 0.896645 -0.179502
+vn 0.910500 0.395740 -0.119916
+vn 0.412620 0.882955 -0.223910
+vn 0.910130 0.389106 -0.142341
+vn -0.000001 0.983014 -0.183530
+vn 0.404730 0.896645 -0.179502
+vn -0.000001 0.972691 -0.232105
+vn 0.412620 0.882955 -0.223910
+vn -0.664190 0.697670 -0.268530
+vn -0.547054 0.791871 -0.271428
+vn -0.468773 0.869337 -0.156544
+vn -0.351631 0.918862 -0.179022
+vn -0.835172 0.453644 -0.310958
+vn -0.799923 0.568662 -0.191695
+vn -0.547054 0.791871 -0.271428
+vn -0.434836 0.866655 -0.244594
+vn -0.920069 -0.238594 0.310718
+vn -0.829218 -0.273929 0.487196
+vn -0.770467 0.635778 -0.046551
+vn -0.823631 0.526971 0.209603
+vn -0.562802 -0.476689 0.675294
+vn -0.239739 -0.574343 0.782723
+vn -0.705091 -0.004530 0.709103
+vn -0.280660 -0.289175 0.915209
+vn -0.944958 0.264658 -0.192380
+vn -0.808740 0.574943 -0.124017
+vn -0.942325 0.280618 -0.182422
+vn -0.796750 0.595939 -0.100232
+vn -0.239739 -0.574343 0.782723
+vn 0.088012 -0.477628 0.874143
+vn -0.280660 -0.289175 0.915209
+vn 0.186272 -0.012784 0.982415
+vn -0.117945 0.977216 -0.176461
+vn -0.199918 0.975627 -0.090469
+vn -0.244170 0.945185 -0.216808
+vn -0.351631 0.918862 -0.179022
+vn 0.302620 0.951475 -0.055819
+vn 0.182624 0.979106 -0.089441
+vn 0.282525 0.952331 -0.115089
+vn 0.194955 0.964561 -0.177807
+vn 0.182624 0.979106 -0.089441
+vn 0.039354 0.990872 -0.128934
+vn 0.194955 0.964561 -0.177807
+vn 0.070141 0.970966 -0.228704
+vn 0.668562 0.626729 0.400295
+vn 0.424206 0.905075 0.029810
+vn 0.566722 0.515411 0.642789
+vn 0.405769 0.895506 0.182813
+vn -0.838808 0.321055 0.439687
+vn -0.963855 -0.020664 -0.265626
+vn -0.855276 0.071075 0.513276
+vn -0.960922 -0.050297 -0.272210
+vn 0.118869 0.499797 0.857947
+vn 0.103275 0.205791 0.973131
+vn 0.730261 0.335303 0.595223
+vn 0.721918 0.101461 0.684500
+vn 0.730261 0.335303 0.595223
+vn 0.721918 0.101461 0.684500
+vn 0.996820 -0.073679 -0.030365
+vn 0.994570 -0.095277 -0.041860
+vn 0.118869 0.499797 0.857947
+vn -0.555822 0.396049 0.730895
+vn 0.103275 0.205791 0.973131
+vn -0.565999 0.173311 0.805983
+vn -0.989318 0.028235 0.143015
+vn -0.781934 -0.543912 -0.304532
+vn -0.986965 0.023439 0.159217
+vn -0.775889 -0.383450 -0.500962
+vn -0.318568 0.116732 0.940685
+vn -0.316569 -0.191092 0.929122
+vn 0.366307 0.068010 0.928005
+vn 0.373374 -0.166019 0.912705
+vn 0.434888 -0.154896 0.887062
+vn 0.343248 -0.442094 0.828694
+vn 0.908864 -0.222823 0.352584
+vn 0.683392 -0.671254 0.287042
+vn 0.483898 0.065802 0.872647
+vn -0.309457 -0.005703 0.950896
+vn 0.434888 -0.154896 0.887062
+vn -0.337719 -0.078570 0.937962
+vn -0.960922 -0.050297 -0.272210
+vn -0.437566 -0.161179 -0.884623
+vn -0.955064 -0.055332 -0.291190
+vn -0.432923 0.102677 -0.895564
+vn -0.437566 -0.161179 -0.884623
+vn 0.317727 -0.187871 -0.929384
+vn -0.432923 0.102677 -0.895564
+vn 0.317066 0.182736 -0.930633
+vn 0.928438 -0.055469 0.367322
+vn 0.934219 -0.058631 0.351848
+vn 0.885460 -0.161542 -0.435734
+vn 0.889684 0.100368 -0.445408
+vn 0.885460 -0.161542 -0.435734
+vn 0.889684 0.100368 -0.445408
+vn 0.317727 -0.187871 -0.929384
+vn 0.317066 0.182736 -0.930633
+vn -0.309457 -0.005703 0.950896
+vn -0.911723 -0.062634 0.406004
+vn -0.337719 -0.078570 0.937962
+vn -0.921300 0.042894 0.386480
+vn -0.911723 -0.062634 0.406004
+vn -0.933386 -0.086135 -0.348383
+vn -0.921300 0.042894 0.386480
+vn -0.931985 0.074137 -0.354834
+vn -0.436011 -0.013116 -0.899846
+vn -0.442542 -0.199428 -0.874291
+vn -0.931985 0.074137 -0.354834
+vn -0.889415 -0.325031 -0.321396
+vn 0.247302 -0.063820 -0.966834
+vn 0.256713 -0.164782 -0.952337
+vn -0.457521 -0.047573 -0.887925
+vn -0.257999 -0.126665 -0.957806
+vn -0.936850 0.020402 -0.349135
+vn -0.457521 -0.047573 -0.887925
+vn -0.782286 0.076171 -0.618245
+vn -0.257999 -0.126665 -0.957806
+vn -0.936850 0.020402 -0.349135
+vn -0.782286 0.076171 -0.618245
+vn -0.933717 0.136832 0.330833
+vn -0.963959 0.240117 -0.114575
+vn -0.317565 0.105438 0.942356
+vn -0.933717 0.136832 0.330833
+vn -0.408699 0.392797 0.823818
+vn -0.762022 0.358301 0.539390
+vn -0.937184 0.299658 -0.178581
+vn -0.779828 0.620137 -0.085435
+vn -0.933822 0.318410 -0.163068
+vn -0.763433 0.642202 -0.068894
+vn -0.942325 0.280618 -0.182422
+vn -0.796750 0.595939 -0.100232
+vn -0.937184 0.299658 -0.178581
+vn -0.779828 0.620137 -0.085435
+vn 0.413516 -0.231214 -0.880650
+vn 0.471689 -0.270046 -0.839396
+vn 0.008955 -0.134454 -0.990879
+vn 0.083873 0.161289 -0.983337
+vn 0.947062 0.320542 0.018056
+vn 0.867790 0.483649 -0.114120
+vn 0.792555 0.041055 -0.608417
+vn 0.741683 0.061969 -0.667882
+vn 0.792555 0.041055 -0.608417
+vn 0.741683 0.061969 -0.667882
+vn 0.413516 -0.231214 -0.880650
+vn 0.283140 -0.424949 -0.859796
+vn 0.810319 0.338764 0.478144
+vn 0.567367 0.410386 0.713918
+vn 0.745162 0.400913 0.532919
+vn 0.626022 0.448779 0.637726
+vn 0.210888 0.575077 0.790451
+vn 0.183965 0.778276 0.600370
+vn 0.626022 0.448779 0.637726
+vn 0.842409 0.495740 0.211160
+vn -0.597567 0.015865 -0.801662
+vn -0.492788 0.299297 -0.817056
+vn -0.956175 0.050543 -0.288400
+vn -0.965675 0.213343 -0.148180
+vn -0.103270 0.554047 0.826055
+vn -0.721916 0.349551 0.597203
+vn -0.088241 0.282030 0.955339
+vn -0.730030 0.135158 0.669916
+vn -0.721916 0.349551 0.597203
+vn -0.994570 -0.104016 -0.003284
+vn -0.730030 0.135158 0.669916
+vn -0.983304 -0.181871 0.006074
+vn -0.996820 -0.079687 -0.000679
+vn -0.620449 -0.666740 -0.412917
+vn -0.994570 -0.104016 -0.003284
+vn -0.619358 -0.485901 -0.616682
+vn 0.986965 0.081157 0.138971
+vn 0.989273 0.068490 0.129028
+vn 0.775890 -0.542685 -0.321695
+vn 0.769442 -0.365137 -0.524055
+vn -0.103270 0.554047 0.826055
+vn -0.088241 0.282030 0.955339
+vn 0.565998 0.461542 0.683099
+vn 0.601179 0.250915 0.758700
+vn 0.316570 0.169409 0.933319
+vn -0.373368 0.186547 0.908733
+vn 0.284279 -0.129953 0.949894
+vn -0.425398 -0.033890 0.904372
+vn 0.316570 0.169409 0.933319
+vn 0.284279 -0.129953 0.949894
+vn 0.853154 0.032760 0.520630
+vn 0.842365 -0.192848 0.503221
+vn -0.434887 0.187295 0.880792
+vn -0.343244 -0.100934 0.933807
+vn 0.337716 0.277101 0.899535
+vn 0.347748 -0.162891 0.923330
+vn -0.791622 -0.592431 -0.149535
+vn -0.249337 -0.817398 -0.519319
+vn -0.683391 -0.515658 0.516792
+vn 0.134551 -0.922151 0.362675
+vn 0.442547 -0.511261 -0.736725
+vn 0.889415 -0.421485 -0.176892
+vn -0.249337 -0.817398 -0.519319
+vn 0.134551 -0.922151 0.362675
+vn -0.620449 -0.666740 -0.412917
+vn 0.115941 -0.831109 -0.543889
+vn -0.619358 -0.485901 -0.616682
+vn 0.103561 -0.561071 -0.821264
+vn 0.775890 -0.542685 -0.321695
+vn 0.769442 -0.365137 -0.524055
+vn 0.115941 -0.831109 -0.543889
+vn 0.103561 -0.561071 -0.821264
+vn -0.935825 -0.350730 -0.034920
+vn -0.937957 -0.345658 -0.027507
+vn -0.609319 -0.792869 0.009464
+vn -0.629012 -0.776813 0.030090
+vn -0.609319 -0.792869 0.009464
+vn -0.629012 -0.776813 0.030090
+vn 0.000000 -0.999430 0.033750
+vn 0.000000 -0.998053 0.062368
+vn -0.935825 -0.350730 -0.034920
+vn -0.997662 -0.007378 -0.067942
+vn -0.937957 -0.345658 -0.027507
+vn -0.997310 -0.010272 -0.072576
+vn -0.404731 0.896645 -0.179502
+vn -0.412621 0.882954 -0.223910
+vn -0.910500 0.395741 -0.119916
+vn -0.910129 0.389106 -0.142341
+vn -0.997662 -0.007378 -0.067942
+vn -0.910500 0.395741 -0.119916
+vn -0.997310 -0.010272 -0.072576
+vn -0.910129 0.389106 -0.142341
+vn -0.000001 0.983014 -0.183530
+vn -0.000001 0.972691 -0.232105
+vn -0.404731 0.896645 -0.179502
+vn -0.412621 0.882954 -0.223910
+vn 0.413479 -0.276484 0.867520
+vn 0.566722 0.515411 0.642789
+vn 0.088012 -0.477628 0.874143
+vn 0.186272 -0.012784 0.982415
+vn -0.799923 0.568662 -0.191695
+vn -0.770467 0.635778 -0.046551
+vn -0.434836 0.866655 -0.244594
+vn -0.376904 0.901990 -0.210610
+vn -0.829218 -0.273929 0.487196
+vn -0.562802 -0.476689 0.675294
+vn -0.823631 0.526971 0.209603
+vn -0.705091 -0.004530 0.709103
+vn -0.244170 0.945185 -0.216808
+vn -0.194177 0.948638 -0.249764
+vn -0.117945 0.977216 -0.176461
+vn -0.077637 0.964173 -0.253659
+vn -0.117945 0.977216 -0.176461
+vn -0.077637 0.964173 -0.253659
+vn 0.039354 0.990872 -0.128934
+vn 0.070141 0.970966 -0.228704
+vn -0.244170 0.945185 -0.216808
+vn -0.351631 0.918862 -0.179022
+vn -0.434836 0.866655 -0.244594
+vn -0.547054 0.791871 -0.271428
+vn 0.424206 0.905075 0.029810
+vn 0.282525 0.952331 -0.115089
+vn 0.405769 0.895506 0.182813
+vn 0.285663 0.956831 -0.053591
+vn -0.318568 0.116732 0.940685
+vn -0.855276 0.071075 0.513276
+vn -0.316569 -0.191092 0.929122
+vn -0.853154 -0.163878 0.495249
+vn -0.555822 0.396049 0.730895
+vn -0.986965 0.023439 0.159217
+vn -0.565999 0.173311 0.805983
+vn -0.989273 0.015397 0.145266
+vn 0.366307 0.068010 0.928005
+vn 0.373374 -0.166019 0.912705
+vn 0.928438 -0.055469 0.367322
+vn 0.934219 -0.058631 0.351848
+vn 0.996820 -0.073679 -0.030365
+vn 0.994570 -0.095277 -0.041860
+vn 0.620448 -0.464505 -0.631886
+vn 0.619359 -0.220692 -0.753452
+vn 0.434888 -0.154896 0.887062
+vn -0.337719 -0.078570 0.937962
+vn 0.343248 -0.442094 0.828694
+vn -0.347751 -0.495664 0.795856
+vn 0.791622 -0.493843 -0.359796
+vn 0.683392 -0.671254 0.287042
+vn 0.249337 -0.564576 -0.786819
+vn -0.134555 -0.990877 -0.007625
+vn 0.620448 -0.464505 -0.631886
+vn 0.619359 -0.220692 -0.753452
+vn -0.115938 -0.568130 -0.814731
+vn -0.103561 -0.214094 -0.971308
+vn -0.986965 0.023439 0.159217
+vn -0.775889 -0.383450 -0.500962
+vn -0.989273 0.015397 0.145266
+vn -0.769443 -0.143214 -0.622453
+vn -0.775889 -0.383450 -0.500962
+vn -0.115938 -0.568130 -0.814731
+vn -0.769443 -0.143214 -0.622453
+vn -0.103561 -0.214094 -0.971308
+vn -0.855276 0.071075 0.513276
+vn -0.960922 -0.050297 -0.272210
+vn -0.853154 -0.163878 0.495249
+vn -0.955064 -0.055332 -0.291190
+vn -0.442542 -0.199428 -0.874291
+vn 0.249337 -0.564576 -0.786819
+vn -0.889415 -0.325031 -0.321396
+vn -0.134555 -0.990877 -0.007625
+vn 0.256713 -0.164782 -0.952337
+vn 0.831886 -0.035330 -0.553821
+vn 0.146219 -0.081816 -0.985863
+vn 0.783058 0.089470 -0.615480
+vn 0.831886 -0.035330 -0.553821
+vn 0.965360 0.169088 0.198720
+vn 0.783058 0.089470 -0.615480
+vn 0.965665 0.211517 0.150839
+vn 0.965360 0.169088 0.198720
+vn 0.754013 0.293945 0.587418
+vn 0.965665 0.211517 0.150839
+vn 0.802863 0.344836 0.486311
+vn 0.533860 0.163750 0.829566
+vn 0.053303 0.419220 0.906319
+vn 0.754013 0.293945 0.587418
+vn 0.415516 0.414418 0.809694
+vn -0.408699 0.392797 0.823818
+vn -0.427086 0.561942 0.708391
+vn 0.053303 0.419220 0.906319
+vn -0.064450 0.540179 0.839079
+vn 0.413516 -0.231214 -0.880650
+vn 0.152216 -0.824578 -0.544887
+vn 0.471689 -0.270046 -0.839396
+vn 0.601340 -0.749551 -0.276702
+vn 0.947062 0.320542 0.018056
+vn 0.745162 0.400913 0.532919
+vn 0.867790 0.483649 -0.114120
+vn 0.589160 0.631247 0.504398
+vn 0.745162 0.400913 0.532919
+vn 0.626022 0.448779 0.637726
+vn 0.589160 0.631247 0.504398
+vn 0.056215 0.321521 0.945232
+vn 0.083873 0.161289 -0.983337
+vn 0.150393 0.317044 -0.936411
+vn -0.492788 0.299297 -0.817056
+vn -0.479425 0.657209 -0.581574
+vn -0.956175 0.050543 -0.288400
+vn -0.923920 -0.324218 -0.203112
+vn -0.981031 0.090517 -0.171422
+vn -0.986681 0.072454 -0.145642
+vn -0.513589 0.564950 0.645800
+vn -0.330654 0.742742 0.582239
+vn -0.182500 0.548246 0.816162
+vn 0.474156 0.501985 0.723317
+vn -0.895970 0.370387 0.245055
+vn -0.823924 0.523578 0.216830
+vn -0.513589 0.564950 0.645800
+vn -0.330654 0.742742 0.582239
+vn -0.895970 0.370387 0.245055
+vn -0.986681 0.072454 -0.145642
+vn -0.823924 0.523578 0.216830
+vn -0.978537 0.040230 -0.202107
+vn 0.183965 0.778276 0.600370
+vn -0.584353 0.491408 0.645794
+vn 0.101398 0.930764 0.351279
+vn -0.676040 0.587556 0.444689
+vn -0.182500 0.548246 0.816162
+vn -0.279066 -0.323556 0.904120
+vn -0.584353 0.491408 0.645794
+vn -0.944071 -0.078990 0.320141
+vn 0.853154 0.032760 0.520630
+vn 0.842365 -0.192848 0.503221
+vn 0.955064 -0.159992 -0.249509
+vn 0.934462 -0.234158 -0.268237
+vn 0.955064 -0.159992 -0.249509
+vn 0.934462 -0.234158 -0.268237
+vn 0.432923 -0.238916 -0.869193
+vn 0.426937 -0.134298 -0.894253
+vn 0.432923 -0.238916 -0.869193
+vn 0.426937 -0.134298 -0.894253
+vn -0.317068 -0.177723 -0.931602
+vn -0.303822 -0.019240 -0.952535
+vn 0.565998 0.461542 0.683099
+vn 0.601179 0.250915 0.758700
+vn 0.989273 0.068490 0.129028
+vn 0.990419 -0.010242 0.137713
+vn -0.373368 0.186547 0.908733
+vn -0.934221 0.076894 0.348309
+vn -0.425398 -0.033890 0.904372
+vn -0.945185 0.001521 0.326531
+vn -0.343244 -0.100934 0.933807
+vn -0.683391 -0.515658 0.516792
+vn 0.347748 -0.162891 0.923330
+vn 0.134551 -0.922151 0.362675
+vn 0.889415 -0.421485 -0.176892
+vn 0.931986 -0.063622 -0.356867
+vn 0.914702 0.006305 0.404081
+vn 0.921300 0.184010 0.342560
+vn 0.921300 0.184010 0.342560
+vn 0.337716 0.277101 0.899535
+vn 0.914702 0.006305 0.404081
+vn 0.347748 -0.162891 0.923330
+vn -0.934221 0.076894 0.348309
+vn -0.889686 -0.073083 -0.450686
+vn -0.945185 0.001521 0.326531
+vn -0.875645 0.029025 -0.482083
+vn -0.889686 -0.073083 -0.450686
+vn -0.317068 -0.177723 -0.931602
+vn -0.875645 0.029025 -0.482083
+vn -0.303822 -0.019240 -0.952535
+vn 0.937957 -0.345658 -0.027507
+vn 0.629012 -0.776813 0.030090
+vn 0.939735 -0.341569 -0.015143
+vn 0.644447 -0.761818 0.065739
+vn 0.629012 -0.776813 0.030090
+vn 0.000000 -0.998053 0.062368
+vn 0.644447 -0.761818 0.065739
+vn 0.000000 -0.993800 0.111184
+vn 0.937957 -0.345658 -0.027507
+vn 0.939735 -0.341569 -0.015143
+vn 0.997310 -0.010272 -0.072576
+vn 0.996528 -0.015343 -0.081834
+vn 0.997310 -0.010272 -0.072576
+vn 0.996528 -0.015343 -0.081834
+vn 0.910130 0.389106 -0.142341
+vn 0.908400 0.376172 -0.182493
+vn 0.412620 0.882955 -0.223910
+vn 0.910130 0.389106 -0.142341
+vn 0.419505 0.856603 -0.300412
+vn 0.908400 0.376172 -0.182493
+vn -0.000001 0.972691 -0.232105
+vn 0.412620 0.882955 -0.223910
+vn -0.000000 0.948946 -0.315440
+vn 0.419505 0.856603 -0.300412
+vn -0.770467 0.635778 -0.046551
+vn -0.823631 0.526971 0.209603
+vn -0.376904 0.901990 -0.210610
+vn -0.450930 0.889936 -0.068389
+vn -0.823631 0.526971 0.209603
+vn -0.705091 -0.004530 0.709103
+vn -0.450930 0.889936 -0.068389
+vn -0.616393 0.610021 0.497930
+vn -0.705091 -0.004530 0.709103
+vn -0.280660 -0.289175 0.915209
+vn -0.616393 0.610021 0.497930
+vn -0.285898 0.166329 0.943715
+vn 0.186272 -0.012784 0.982415
+vn 0.234570 0.624696 0.744803
+vn -0.280660 -0.289175 0.915209
+vn -0.285898 0.166329 0.943715
+vn -0.194177 0.948638 -0.249764
+vn -0.244170 0.945185 -0.216808
+vn -0.376904 0.901990 -0.210610
+vn -0.434836 0.866655 -0.244594
+vn 0.282525 0.952331 -0.115089
+vn 0.194955 0.964561 -0.177807
+vn 0.285663 0.956831 -0.053591
+vn 0.199226 0.966409 -0.162365
+vn 0.194955 0.964561 -0.177807
+vn 0.070141 0.970966 -0.228704
+vn 0.199226 0.966409 -0.162365
+vn 0.069988 0.971413 -0.226846
+vn 0.566722 0.515411 0.642789
+vn 0.405769 0.895506 0.182813
+vn 0.186272 -0.012784 0.982415
+vn 0.234570 0.624696 0.744803
+vn 0.103275 0.205791 0.973131
+vn 0.088242 -0.094822 0.991576
+vn 0.721918 0.101461 0.684500
+vn 0.730035 -0.124581 0.671959
+vn 0.721918 0.101461 0.684500
+vn 0.730035 -0.124581 0.671959
+vn 0.994570 -0.095277 -0.041860
+vn 0.983304 -0.171001 -0.062226
+vn 0.103275 0.205791 0.973131
+vn -0.565999 0.173311 0.805983
+vn 0.088242 -0.094822 0.991576
+vn -0.601182 -0.050314 0.797527
+vn -0.316569 -0.191092 0.929122
+vn -0.284277 -0.475013 0.832796
+vn 0.373374 -0.166019 0.912705
+vn 0.425396 -0.368906 0.826406
+vn 0.343248 -0.442094 0.828694
+vn -0.347751 -0.495664 0.795856
+vn 0.683392 -0.671254 0.287042
+vn -0.134555 -0.990877 -0.007625
+vn -0.853154 -0.163878 0.495249
+vn -0.955064 -0.055332 -0.291190
+vn -0.842366 -0.366694 0.394912
+vn -0.934462 -0.117151 -0.336239
+vn -0.955064 -0.055332 -0.291190
+vn -0.432923 0.102677 -0.895564
+vn -0.934462 -0.117151 -0.336239
+vn -0.426936 0.209091 -0.879777
+vn -0.432923 0.102677 -0.895564
+vn 0.317066 0.182736 -0.930633
+vn -0.426936 0.209091 -0.879777
+vn 0.303820 0.337586 -0.890915
+vn 0.373374 -0.166019 0.912705
+vn 0.425396 -0.368906 0.826406
+vn 0.934219 -0.058631 0.351848
+vn 0.945185 -0.120432 0.303515
+vn 0.934219 -0.058631 0.351848
+vn 0.945185 -0.120432 0.303515
+vn 0.889684 0.100368 -0.445408
+vn 0.875644 0.206817 -0.436433
+vn 0.889684 0.100368 -0.445408
+vn 0.875644 0.206817 -0.436433
+vn 0.317066 0.182736 -0.930633
+vn 0.303820 0.337586 -0.890915
+vn -0.921300 0.042894 0.386480
+vn -0.914702 -0.144931 0.377247
+vn -0.337719 -0.078570 0.937962
+vn -0.347751 -0.495664 0.795856
+vn -0.921300 0.042894 0.386480
+vn -0.931985 0.074137 -0.354834
+vn -0.914702 -0.144931 0.377247
+vn -0.889415 -0.325031 -0.321396
+vn 0.256713 -0.164782 -0.952337
+vn 0.146219 -0.081816 -0.985863
+vn -0.257999 -0.126665 -0.957806
+vn -0.203359 -0.198288 -0.958815
+vn -0.782286 0.076171 -0.618245
+vn -0.257999 -0.126665 -0.957806
+vn -0.555769 0.061493 -0.829059
+vn -0.203359 -0.198288 -0.958815
+vn -0.933717 0.136832 0.330833
+vn -0.963959 0.240117 -0.114575
+vn -0.762022 0.358301 0.539390
+vn -0.915069 0.338513 0.219222
+vn -0.963959 0.240117 -0.114575
+vn -0.782286 0.076171 -0.618245
+vn -0.888911 0.351063 -0.294265
+vn -0.555769 0.061493 -0.829059
+vn -0.408699 0.392797 0.823818
+vn -0.762022 0.358301 0.539390
+vn -0.427086 0.561942 0.708391
+vn -0.751777 0.457242 0.475143
+vn 0.413516 -0.231214 -0.880650
+vn 0.283140 -0.424949 -0.859796
+vn 0.152216 -0.824578 -0.544887
+vn -0.375123 -0.751822 -0.542260
+vn 0.471689 -0.270046 -0.839396
+vn 0.580162 -0.314494 -0.751336
+vn 0.083873 0.161289 -0.983337
+vn 0.150393 0.317044 -0.936411
+vn 0.867790 0.483649 -0.114120
+vn 0.750383 0.584029 -0.309574
+vn 0.741683 0.061969 -0.667882
+vn 0.738192 0.018690 -0.674332
+vn 0.741683 0.061969 -0.667882
+vn 0.738192 0.018690 -0.674332
+vn 0.283140 -0.424949 -0.859796
+vn 0.402515 -0.557121 -0.726359
+vn 0.626022 0.448779 0.637726
+vn 0.842409 0.495740 0.211160
+vn 0.975552 -0.203133 0.083882
+vn 0.969818 -0.048664 -0.238926
+vn 0.183965 0.778276 0.600370
+vn 0.101398 0.930764 0.351279
+vn 0.842409 0.495740 0.211160
+vn 0.797602 0.603098 0.010233
+vn -0.956175 0.050543 -0.288400
+vn -0.965675 0.213343 -0.148180
+vn -0.923920 -0.324218 -0.203112
+vn -0.938832 -0.081671 0.334550
+vn -0.492788 0.299297 -0.817056
+vn -0.479425 0.657209 -0.581574
+vn -0.965675 0.213343 -0.148180
+vn -0.819751 0.561536 0.112632
+vn -0.986681 0.072454 -0.145642
+vn -0.923920 -0.324218 -0.203112
+vn -0.978537 0.040230 -0.202107
+vn -0.635061 -0.573596 -0.517383
+vn -0.182500 0.548246 0.816162
+vn 0.474156 0.501985 0.723317
+vn -0.279066 -0.323556 0.904120
+vn 0.956033 -0.103371 0.274436
+vn -0.730030 0.135158 0.669916
+vn -0.673453 -0.162257 0.721203
+vn -0.088241 0.282030 0.955339
+vn -0.045651 -0.222016 0.973974
+vn -0.730030 0.135158 0.669916
+vn -0.983304 -0.181871 0.006074
+vn -0.673453 -0.162257 0.721203
+vn -0.814389 -0.555674 0.167325
+vn -0.994570 -0.104016 -0.003284
+vn -0.619358 -0.485901 -0.616682
+vn -0.983304 -0.181871 0.006074
+vn -0.611772 -0.400615 -0.682087
+vn 0.989273 0.068490 0.129028
+vn 0.990419 -0.010242 0.137713
+vn 0.769442 -0.365137 -0.524055
+vn 0.756001 -0.281680 -0.590863
+vn 0.601179 0.250915 0.758700
+vn -0.088241 0.282030 0.955339
+vn 0.590292 -0.052366 0.805489
+vn -0.045651 -0.222016 0.973974
+vn -0.425398 -0.033890 0.904372
+vn -0.450503 -0.330581 0.829315
+vn 0.284279 -0.129953 0.949894
+vn 0.173584 -0.595367 0.784479
+vn 0.842365 -0.192848 0.503221
+vn 0.284279 -0.129953 0.949894
+vn 0.753011 -0.481481 0.448497
+vn 0.173584 -0.595367 0.784479
+vn 0.914702 0.006305 0.404081
+vn 0.347748 -0.162891 0.923330
+vn 0.889415 -0.421485 -0.176892
+vn 0.134551 -0.922151 0.362675
+vn -0.619358 -0.485901 -0.616682
+vn 0.103561 -0.561071 -0.821264
+vn -0.611772 -0.400615 -0.682087
+vn 0.096827 -0.422224 -0.901305
+vn 0.769442 -0.365137 -0.524055
+vn 0.756001 -0.281680 -0.590863
+vn 0.103561 -0.561071 -0.821264
+vn 0.096827 -0.422224 -0.901305
+vn -0.937957 -0.345658 -0.027507
+vn -0.939735 -0.341569 -0.015143
+vn -0.629012 -0.776813 0.030090
+vn -0.644447 -0.761818 0.065739
+vn -0.629012 -0.776813 0.030090
+vn -0.644447 -0.761818 0.065739
+vn 0.000000 -0.998053 0.062368
+vn 0.000000 -0.993800 0.111184
+vn -0.937957 -0.345658 -0.027507
+vn -0.997310 -0.010272 -0.072576
+vn -0.939735 -0.341569 -0.015143
+vn -0.996528 -0.015343 -0.081834
+vn -0.000001 0.972691 -0.232105
+vn -0.000000 0.948946 -0.315440
+vn -0.412621 0.882954 -0.223910
+vn -0.419505 0.856603 -0.300412
+vn -0.412621 0.882954 -0.223910
+vn -0.419505 0.856603 -0.300412
+vn -0.910129 0.389106 -0.142341
+vn -0.908400 0.376172 -0.182492
+vn -0.997310 -0.010272 -0.072576
+vn -0.910129 0.389106 -0.142341
+vn -0.996528 -0.015343 -0.081834
+vn -0.908400 0.376172 -0.182492
+vn -0.376904 0.901990 -0.210610
+vn -0.450930 0.889936 -0.068389
+vn -0.194177 0.948638 -0.249764
+vn -0.235433 0.952545 -0.192951
+vn -0.194177 0.948638 -0.249764
+vn -0.235433 0.952545 -0.192951
+vn -0.077637 0.964173 -0.253659
+vn -0.090490 0.966296 -0.241007
+vn -0.077637 0.964173 -0.253659
+vn -0.090490 0.966296 -0.241007
+vn 0.070141 0.970966 -0.228704
+vn 0.069988 0.971413 -0.226846
+vn 0.405769 0.895506 0.182813
+vn 0.285663 0.956831 -0.053591
+vn 0.234570 0.624696 0.744803
+vn 0.180158 0.956825 0.228099
+vn -0.316569 -0.191092 0.929122
+vn -0.853154 -0.163878 0.495249
+vn -0.284277 -0.475013 0.832796
+vn -0.842366 -0.366694 0.394912
+vn -0.565999 0.173311 0.805983
+vn -0.989273 0.015397 0.145266
+vn -0.601182 -0.050314 0.797527
+vn -0.990419 -0.060891 0.123942
+vn 0.994570 -0.095277 -0.041860
+vn 0.983304 -0.171001 -0.062226
+vn 0.619359 -0.220692 -0.753452
+vn 0.611772 -0.117161 -0.782309
+vn 0.619359 -0.220692 -0.753452
+vn 0.611772 -0.117161 -0.782309
+vn -0.103561 -0.214094 -0.971308
+vn -0.096827 -0.055406 -0.993758
+vn -0.989273 0.015397 0.145266
+vn -0.769443 -0.143214 -0.622453
+vn -0.990419 -0.060891 0.123942
+vn -0.756001 -0.040854 -0.653294
+vn -0.769443 -0.143214 -0.622453
+vn -0.103561 -0.214094 -0.971308
+vn -0.756001 -0.040854 -0.653294
+vn -0.096827 -0.055406 -0.993758
+vn -0.914702 -0.144931 0.377247
+vn -0.889415 -0.325031 -0.321396
+vn -0.347751 -0.495664 0.795856
+vn -0.134555 -0.990877 -0.007625
+vn -0.963959 0.240117 -0.114575
+vn -0.888911 0.351063 -0.294265
+vn -0.915069 0.338513 0.219222
+vn -0.849441 0.455402 0.266570
+vn 0.783058 0.089470 -0.615480
+vn 0.577530 0.359142 -0.733128
+vn 0.146219 -0.081816 -0.985863
+vn 0.020063 0.135745 -0.990541
+vn 0.783058 0.089470 -0.615480
+vn 0.965665 0.211517 0.150839
+vn 0.986393 0.129830 0.100864
+vn 0.981356 0.096784 0.166053
+vn 0.965665 0.211517 0.150839
+vn 0.802863 0.344836 0.486311
+vn 0.981356 0.096784 0.166053
+vn 0.979320 0.066247 0.191162
+vn 0.754013 0.293945 0.587418
+vn 0.415516 0.414418 0.809694
+vn 0.802863 0.344836 0.486311
+vn 0.330104 0.547036 0.769274
+vn 0.053303 0.419220 0.906319
+vn -0.064450 0.540179 0.839079
+vn 0.415516 0.414418 0.809694
+vn 0.330104 0.547036 0.769274
+vn -0.427086 0.561942 0.708391
+vn -0.352338 0.761520 0.544009
+vn -0.064450 0.540179 0.839079
+vn 0.362074 0.474436 0.802380
+vn 0.471689 -0.270046 -0.839396
+vn 0.601340 -0.749551 -0.276702
+vn 0.580162 -0.314494 -0.751336
+vn 0.632264 -0.745988 -0.209151
+vn 0.601340 -0.749551 -0.276702
+vn 0.152216 -0.824578 -0.544887
+vn 0.450025 -0.882400 0.137289
+vn 0.096201 -0.987322 -0.126255
+vn 0.589160 0.631247 0.504398
+vn 0.277592 0.891236 0.358665
+vn 0.867790 0.483649 -0.114120
+vn 0.750383 0.584029 -0.309574
+vn 0.589160 0.631247 0.504398
+vn 0.056215 0.321521 0.945232
+vn 0.277592 0.891236 0.358665
+vn -0.425143 0.499859 0.754582
+vn 0.626022 0.448779 0.637726
+vn 0.975552 -0.203133 0.083882
+vn 0.056215 0.321521 0.945232
+vn -0.676947 -0.140830 0.722433
+vn 0.580162 -0.314494 -0.751336
+vn 0.529112 -0.389174 -0.754046
+vn 0.150393 0.317044 -0.936411
+vn 0.110415 0.338310 -0.934535
+vn 0.150393 0.317044 -0.936411
+vn 0.110415 0.338310 -0.934535
+vn -0.479425 0.657209 -0.581574
+vn -0.445895 0.792667 -0.415760
+vn -0.823924 0.523578 0.216830
+vn -0.779413 0.615237 0.118317
+vn -0.330654 0.742742 0.582239
+vn -0.127644 0.892108 0.433416
+vn -0.330654 0.742742 0.582239
+vn -0.127644 0.892108 0.433416
+vn 0.474156 0.501985 0.723317
+vn 0.662718 0.585800 0.466522
+vn -0.823924 0.523578 0.216830
+vn -0.978537 0.040230 -0.202107
+vn -0.779413 0.615237 0.118317
+vn -0.973555 -0.003572 -0.228423
+vn 0.101398 0.930764 0.351279
+vn -0.676040 0.587556 0.444689
+vn 0.063034 0.972832 0.222764
+vn -0.662772 0.646796 0.377344
+vn -0.584353 0.491408 0.645794
+vn -0.944071 -0.078990 0.320141
+vn -0.676040 0.587556 0.444689
+vn -0.961009 -0.051140 0.271747
+vn -0.944071 -0.078990 0.320141
+vn -0.279066 -0.323556 0.904120
+vn -0.767432 -0.635130 -0.087511
+vn 0.019843 -0.997419 -0.069005
+vn 0.842365 -0.192848 0.503221
+vn 0.753011 -0.481481 0.448497
+vn 0.934462 -0.234158 -0.268237
+vn 0.742704 -0.629103 -0.229391
+vn 0.426937 -0.134298 -0.894253
+vn 0.934462 -0.234158 -0.268237
+vn 0.394412 -0.316907 -0.862560
+vn 0.742704 -0.629103 -0.229391
+vn 0.426937 -0.134298 -0.894253
+vn 0.394412 -0.316907 -0.862560
+vn -0.303822 -0.019240 -0.952535
+vn -0.321509 -0.409387 -0.853835
+vn 0.601179 0.250915 0.758700
+vn 0.590292 -0.052366 0.805489
+vn 0.990419 -0.010242 0.137713
+vn 0.868498 -0.409336 0.279564
+vn -0.425398 -0.033890 0.904372
+vn -0.945185 0.001521 0.326531
+vn -0.450503 -0.330581 0.829315
+vn -0.859968 -0.428154 0.277738
+vn -0.875645 0.029025 -0.482083
+vn -0.872935 -0.157999 -0.461541
+vn -0.945185 0.001521 0.326531
+vn -0.859968 -0.428154 0.277738
+vn -0.875645 0.029025 -0.482083
+vn -0.303822 -0.019240 -0.952535
+vn -0.872935 -0.157999 -0.461541
+vn -0.321509 -0.409387 -0.853835
+vn 0.939735 -0.341569 -0.015143
+vn 0.644447 -0.761818 0.065739
+vn 0.939552 -0.342396 0.002548
+vn 0.649503 -0.752023 0.112286
+vn 0.644447 -0.761818 0.065739
+vn 0.000000 -0.993800 0.111184
+vn 0.649503 -0.752023 0.112286
+vn 0.000000 -0.984870 0.173293
+vn 0.939735 -0.341569 -0.015143
+vn 0.939552 -0.342396 0.002548
+vn 0.996528 -0.015343 -0.081834
+vn 0.995640 -0.025451 -0.089737
+vn 0.908400 0.376172 -0.182493
+vn 0.996528 -0.015343 -0.081834
+vn 0.908601 0.352289 -0.224358
+vn 0.995640 -0.025451 -0.089737
+vn -0.000000 0.948946 -0.315440
+vn 0.419505 0.856603 -0.300412
+vn -0.000000 0.912607 -0.408838
+vn 0.427985 0.817802 -0.384746
+vn 0.419505 0.856603 -0.300412
+vn 0.908400 0.376172 -0.182493
+vn 0.427985 0.817802 -0.384746
+vn 0.908601 0.352289 -0.224358
+vn -0.450930 0.889936 -0.068389
+vn -0.616393 0.610021 0.497930
+vn -0.235433 0.952545 -0.192951
+vn -0.298694 0.947145 0.117042
+vn -0.616393 0.610021 0.497930
+vn -0.285898 0.166329 0.943715
+vn -0.298694 0.947145 0.117042
+vn -0.122293 0.907917 0.400912
+vn 0.234570 0.624696 0.744803
+vn 0.180158 0.956825 0.228099
+vn -0.285898 0.166329 0.943715
+vn -0.122293 0.907917 0.400912
+vn 0.285663 0.956831 -0.053591
+vn 0.199226 0.966409 -0.162365
+vn 0.180158 0.956825 0.228099
+vn 0.140414 0.989891 -0.019985
+vn 0.199226 0.966409 -0.162365
+vn 0.069988 0.971413 -0.226846
+vn 0.140414 0.989891 -0.019985
+vn 0.011659 0.999226 -0.037578
+vn 0.730035 -0.124581 0.671959
+vn 0.088242 -0.094822 0.991576
+vn 0.673453 -0.419654 0.608565
+vn 0.045654 -0.569418 0.820780
+vn 0.730035 -0.124581 0.671959
+vn 0.673453 -0.419654 0.608565
+vn 0.983304 -0.171001 -0.062226
+vn 0.814389 -0.577974 -0.052112
+vn -0.601182 -0.050314 0.797527
+vn -0.590294 -0.349149 0.727769
+vn 0.088242 -0.094822 0.991576
+vn 0.045654 -0.569418 0.820780
+vn 0.425396 -0.368906 0.826406
+vn -0.284277 -0.475013 0.832796
+vn 0.450501 -0.616157 0.646065
+vn -0.173580 -0.845091 0.505660
+vn -0.842366 -0.366694 0.394912
+vn -0.753016 -0.614058 0.236434
+vn -0.284277 -0.475013 0.832796
+vn -0.173580 -0.845091 0.505660
+vn -0.842366 -0.366694 0.394912
+vn -0.934462 -0.117151 -0.336239
+vn -0.753016 -0.614058 0.236434
+vn -0.742706 -0.498064 -0.447571
+vn -0.426936 0.209091 -0.879777
+vn -0.394412 0.027849 -0.918512
+vn -0.934462 -0.117151 -0.336239
+vn -0.742706 -0.498064 -0.447571
+vn -0.426936 0.209091 -0.879777
+vn 0.303820 0.337586 -0.890915
+vn -0.394412 0.027849 -0.918512
+vn 0.321505 -0.061211 -0.944927
+vn 0.425396 -0.368906 0.826406
+vn 0.450501 -0.616157 0.646065
+vn 0.945185 -0.120432 0.303515
+vn 0.859969 -0.500865 0.097914
+vn 0.875644 0.206817 -0.436433
+vn 0.945185 -0.120432 0.303515
+vn 0.872940 0.025633 -0.487154
+vn 0.859969 -0.500865 0.097914
+vn 0.875644 0.206817 -0.436433
+vn 0.872940 0.025633 -0.487154
+vn 0.303820 0.337586 -0.890915
+vn 0.321505 -0.061211 -0.944927
+vn -0.203359 -0.198288 -0.958815
+vn 0.146219 -0.081816 -0.985863
+vn -0.371805 -0.255603 -0.892428
+vn 0.020063 0.135745 -0.990541
+vn -0.888911 0.351063 -0.294265
+vn -0.555769 0.061493 -0.829059
+vn -0.704727 0.512748 -0.490356
+vn -0.339878 0.090349 -0.936120
+vn -0.555769 0.061493 -0.829059
+vn -0.203359 -0.198288 -0.958815
+vn -0.339878 0.090349 -0.936120
+vn 0.170974 -0.433875 -0.884602
+vn -0.915069 0.338513 0.219222
+vn -0.849441 0.455402 0.266570
+vn -0.762022 0.358301 0.539390
+vn -0.751777 0.457242 0.475143
+vn -0.427086 0.561942 0.708391
+vn -0.751777 0.457242 0.475143
+vn -0.352338 0.761520 0.544009
+vn -0.867551 0.497344 -0.001789
+vn 0.783058 0.089470 -0.615480
+vn 0.986393 0.129830 0.100864
+vn 0.577530 0.359142 -0.733128
+vn 0.935802 0.325469 0.135444
+vn 0.152216 -0.824578 -0.544887
+vn -0.375123 -0.751822 -0.542260
+vn 0.096201 -0.987322 -0.126255
+vn -0.782404 -0.601982 0.159570
+vn 0.283140 -0.424949 -0.859796
+vn 0.402515 -0.557121 -0.726359
+vn -0.375123 -0.751822 -0.542260
+vn -0.219081 -0.911357 -0.348472
+vn 0.601340 -0.749551 -0.276702
+vn 0.450025 -0.882400 0.137289
+vn 0.632264 -0.745988 -0.209151
+vn 0.357169 -0.859281 0.366150
+vn 0.277592 0.891236 0.358665
+vn 0.185203 0.943992 0.273092
+vn 0.750383 0.584029 -0.309574
+vn 0.709184 0.629286 -0.317894
+vn 0.750383 0.584029 -0.309574
+vn 0.709184 0.629286 -0.317894
+vn 0.738192 0.018690 -0.674332
+vn 0.801974 0.006251 -0.597326
+vn 0.738192 0.018690 -0.674332
+vn 0.801974 0.006251 -0.597326
+vn 0.402515 -0.557121 -0.726359
+vn 0.555867 -0.628506 -0.544052
+vn 0.969818 -0.048664 -0.238926
+vn 0.620370 -0.610287 -0.492636
+vn 0.975552 -0.203133 0.083882
+vn 0.096201 -0.987322 -0.126255
+vn 0.842409 0.495740 0.211160
+vn 0.797602 0.603098 0.010233
+vn 0.969818 -0.048664 -0.238926
+vn 0.958159 -0.028465 -0.284817
+vn 0.101398 0.930764 0.351279
+vn 0.063034 0.972832 0.222764
+vn 0.797602 0.603098 0.010233
+vn 0.755567 0.653351 -0.047439
+vn -0.938832 -0.081671 0.334550
+vn -0.529952 -0.569267 0.628558
+vn -0.923920 -0.324218 -0.203112
+vn -0.142636 -0.957582 -0.250385
+vn -0.965675 0.213343 -0.148180
+vn -0.819751 0.561536 0.112632
+vn -0.938832 -0.081671 0.334550
+vn -0.738840 0.205784 0.641692
+vn -0.479425 0.657209 -0.581574
+vn -0.445895 0.792667 -0.415760
+vn -0.819751 0.561536 0.112632
+vn -0.682763 0.703731 0.196463
+vn 0.529112 -0.389174 -0.754046
+vn 0.580162 -0.314494 -0.751336
+vn 0.539299 -0.800165 -0.262474
+vn 0.632264 -0.745988 -0.209151
+vn -0.978537 0.040230 -0.202107
+vn -0.635061 -0.573596 -0.517383
+vn -0.973555 -0.003572 -0.228423
+vn -0.627748 -0.644680 -0.436257
+vn -0.923920 -0.324218 -0.203112
+vn -0.142636 -0.957582 -0.250385
+vn -0.635061 -0.573596 -0.517383
+vn 0.117657 -0.848118 -0.516578
+vn 0.956033 -0.103371 0.274436
+vn 0.755891 -0.627740 -0.185933
+vn -0.279066 -0.323556 0.904120
+vn 0.019843 -0.997419 -0.069005
+vn 0.474156 0.501985 0.723317
+vn 0.662718 0.585800 0.466522
+vn 0.956033 -0.103371 0.274436
+vn 0.979499 -0.068893 0.189305
+vn -0.944071 -0.078990 0.320141
+vn -0.767432 -0.635130 -0.087511
+vn -0.961009 -0.051140 0.271747
+vn -0.752452 -0.658597 -0.008104
+vn -0.673453 -0.162257 0.721203
+vn -0.814389 -0.555674 0.167325
+vn -0.045651 -0.222016 0.973974
+vn 0.055135 -0.924084 0.378191
+vn -0.814389 -0.555674 0.167325
+vn -0.983304 -0.181871 0.006074
+vn -0.585590 -0.560198 -0.585886
+vn -0.611772 -0.400615 -0.682087
+vn 0.756001 -0.281680 -0.590863
+vn 0.990419 -0.010242 0.137713
+vn 0.745184 -0.444480 -0.497131
+vn 0.868498 -0.409336 0.279564
+vn 0.590292 -0.052366 0.805489
+vn -0.045651 -0.222016 0.973974
+vn 0.868498 -0.409336 0.279564
+vn 0.055135 -0.924084 0.378191
+vn -0.450503 -0.330581 0.829315
+vn -0.859968 -0.428154 0.277738
+vn 0.173584 -0.595367 0.784479
+vn -0.123741 -0.992312 0.002139
+vn 0.753011 -0.481481 0.448497
+vn 0.173584 -0.595367 0.784479
+vn 0.742704 -0.629103 -0.229391
+vn -0.123741 -0.992312 0.002139
+vn -0.611772 -0.400615 -0.682087
+vn 0.096827 -0.422224 -0.901305
+vn -0.585590 -0.560198 -0.585886
+vn 0.108668 -0.744011 -0.659272
+vn 0.756001 -0.281680 -0.590863
+vn 0.745184 -0.444480 -0.497131
+vn 0.096827 -0.422224 -0.901305
+vn 0.108668 -0.744011 -0.659272
+vn -0.939735 -0.341569 -0.015143
+vn -0.939552 -0.342396 0.002548
+vn -0.644447 -0.761818 0.065739
+vn -0.649503 -0.752023 0.112286
+vn -0.644447 -0.761818 0.065739
+vn -0.649503 -0.752023 0.112286
+vn 0.000000 -0.993800 0.111184
+vn 0.000000 -0.984870 0.173293
+vn -0.939735 -0.341569 -0.015143
+vn -0.996528 -0.015343 -0.081834
+vn -0.939552 -0.342396 0.002548
+vn -0.995640 -0.025451 -0.089737
+vn -0.000000 0.948946 -0.315440
+vn -0.000000 0.912607 -0.408838
+vn -0.419505 0.856603 -0.300412
+vn -0.427985 0.817802 -0.384746
+vn -0.419505 0.856603 -0.300412
+vn -0.427985 0.817802 -0.384746
+vn -0.908400 0.376172 -0.182492
+vn -0.908601 0.352289 -0.224358
+vn -0.908400 0.376172 -0.182492
+vn -0.908601 0.352289 -0.224358
+vn -0.996528 -0.015343 -0.081834
+vn -0.995640 -0.025451 -0.089737
+vn -0.235433 0.952545 -0.192951
+vn -0.298694 0.947145 0.117042
+vn -0.090490 0.966296 -0.241007
+vn -0.118159 0.988945 -0.089590
+vn -0.090490 0.966296 -0.241007
+vn -0.118159 0.988945 -0.089590
+vn 0.069988 0.971413 -0.226846
+vn 0.011659 0.999226 -0.037578
+vn -0.601182 -0.050314 0.797527
+vn -0.990419 -0.060891 0.123942
+vn -0.590294 -0.349149 0.727769
+vn -0.868497 -0.484091 0.106627
+vn 0.611772 -0.117161 -0.782309
+vn 0.983304 -0.171001 -0.062226
+vn 0.585595 -0.301117 -0.752600
+vn 0.814389 -0.577974 -0.052112
+vn 0.611772 -0.117161 -0.782309
+vn 0.585595 -0.301117 -0.752600
+vn -0.096827 -0.055406 -0.993758
+vn -0.108668 -0.444271 -0.889278
+vn -0.756001 -0.040854 -0.653294
+vn -0.745190 -0.226874 -0.627073
+vn -0.990419 -0.060891 0.123942
+vn -0.868497 -0.484091 0.106627
+vn -0.756001 -0.040854 -0.653294
+vn -0.096827 -0.055406 -0.993758
+vn -0.745190 -0.226874 -0.627073
+vn -0.108668 -0.444271 -0.889278
+vn -0.203359 -0.198288 -0.958815
+vn -0.371805 -0.255603 -0.892428
+vn -0.097495 -0.859947 -0.500984
+vn -0.631895 -0.712993 -0.303891
+vn -0.888911 0.351063 -0.294265
+vn -0.704727 0.512748 -0.490356
+vn -0.849441 0.455402 0.266570
+vn -0.730653 0.660067 0.174522
+vn -0.849441 0.455402 0.266570
+vn -0.730653 0.660067 0.174522
+vn -0.751777 0.457242 0.475143
+vn -0.471319 0.337329 0.814904
+vn 0.577530 0.359142 -0.733128
+vn 0.382866 0.560200 -0.734567
+vn 0.020063 0.135745 -0.990541
+vn -0.096127 0.162298 -0.982048
+vn 0.986393 0.129830 0.100864
+vn 0.981356 0.096784 0.166053
+vn 0.939599 -0.314521 0.135023
+vn 0.979320 0.066247 0.191162
+vn 0.802863 0.344836 0.486311
+vn 0.729463 0.495459 0.471597
+vn 0.979320 0.066247 0.191162
+vn 0.990978 0.025689 0.131541
+vn 0.802863 0.344836 0.486311
+vn 0.330104 0.547036 0.769274
+vn 0.729463 0.495459 0.471597
+vn 0.163173 0.727662 0.666245
+vn 0.330104 0.547036 0.769274
+vn -0.064450 0.540179 0.839079
+vn 0.163173 0.727662 0.666245
+vn -0.678944 0.513366 0.524872
+vn -0.064450 0.540179 0.839079
+vn 0.362074 0.474436 0.802380
+vn -0.043564 -0.319919 0.946443
+vn 0.807190 -0.083777 0.584316
+vn -0.352338 0.761520 0.544009
+vn -0.201310 0.927222 0.315807
+vn 0.362074 0.474436 0.802380
+vn 0.515634 0.582361 0.628472
+vn 0.096201 -0.987322 -0.126255
+vn -0.015263 -0.964177 -0.264820
+vn 0.450025 -0.882400 0.137289
+vn 0.197613 -0.937310 0.287053
+vn 0.277592 0.891236 0.358665
+vn -0.425143 0.499859 0.754582
+vn 0.185203 0.943992 0.273092
+vn -0.450538 0.577739 0.680613
+vn 0.056215 0.321521 0.945232
+vn -0.676947 -0.140830 0.722433
+vn -0.425143 0.499859 0.754582
+vn -0.756747 -0.084516 0.648222
+vn 0.975552 -0.203133 0.083882
+vn 0.096201 -0.987322 -0.126255
+vn -0.676947 -0.140830 0.722433
+vn -0.782404 -0.601982 0.159570
+vn 0.969818 -0.048664 -0.238926
+vn 0.958159 -0.028465 -0.284817
+vn 0.620370 -0.610287 -0.492636
+vn 0.639000 -0.647811 -0.414752
+vn -0.938832 -0.081671 0.334550
+vn -0.738840 0.205784 0.641692
+vn -0.529952 -0.569267 0.628558
+vn -0.290144 -0.447007 0.846168
+vn 0.529112 -0.389174 -0.754046
+vn 0.539299 -0.800165 -0.262474
+vn 0.301694 -0.489082 -0.818400
+vn 0.148857 -0.905586 -0.397186
+vn 0.529112 -0.389174 -0.754046
+vn 0.301694 -0.489082 -0.818400
+vn 0.110415 0.338310 -0.934535
+vn -0.268523 0.061285 -0.961322
+vn -0.445895 0.792667 -0.415760
+vn 0.110415 0.338310 -0.934535
+vn -0.561257 0.685475 -0.463805
+vn -0.268523 0.061285 -0.961322
+vn -0.127644 0.892108 0.433416
+vn -0.779413 0.615237 0.118317
+vn -0.047462 0.951758 0.303158
+vn -0.742843 0.664297 0.083024
+vn -0.127644 0.892108 0.433416
+vn -0.047462 0.951758 0.303158
+vn 0.662718 0.585800 0.466522
+vn 0.672302 0.640093 0.371875
+vn -0.779413 0.615237 0.118317
+vn -0.973555 -0.003572 -0.228423
+vn -0.742843 0.664297 0.083024
+vn -0.994636 -0.015331 -0.102290
+vn -0.662772 0.646796 0.377344
+vn -0.563460 0.656864 0.501041
+vn 0.063034 0.972832 0.222764
+vn 0.152106 0.848790 0.506378
+vn -0.676040 0.587556 0.444689
+vn -0.961009 -0.051140 0.271747
+vn -0.662772 0.646796 0.377344
+vn -0.932453 -0.030250 0.360023
+vn 0.956033 -0.103371 0.274436
+vn 0.979499 -0.068893 0.189305
+vn 0.755891 -0.627740 -0.185933
+vn 0.730883 -0.667669 -0.141520
+vn 0.019843 -0.997419 -0.069005
+vn -0.015263 -0.964177 -0.264820
+vn -0.767432 -0.635130 -0.087511
+vn -0.122990 -0.882371 -0.454197
+vn 0.394412 -0.316907 -0.862560
+vn 0.742704 -0.629103 -0.229391
+vn -0.321509 -0.409387 -0.853835
+vn -0.123741 -0.992312 0.002139
+vn -0.585590 -0.560198 -0.585886
+vn 0.108668 -0.744011 -0.659272
+vn -0.814389 -0.555674 0.167325
+vn 0.055135 -0.924084 0.378191
+vn -0.872935 -0.157999 -0.461541
+vn -0.321509 -0.409387 -0.853835
+vn -0.859968 -0.428154 0.277738
+vn -0.123741 -0.992312 0.002139
+vn 0.939552 -0.342396 0.002548
+vn 0.649503 -0.752023 0.112286
+vn 0.938531 -0.344423 0.023089
+vn 0.648385 -0.744527 0.158985
+vn 0.649503 -0.752023 0.112286
+vn 0.000000 -0.984870 0.173293
+vn 0.648385 -0.744527 0.158985
+vn 0.000000 -0.972017 0.234911
+vn 0.939552 -0.342396 0.002548
+vn 0.938531 -0.344423 0.023089
+vn 0.995640 -0.025451 -0.089737
+vn 0.995288 -0.035450 -0.090255
+vn 0.427985 0.817802 -0.384746
+vn 0.908601 0.352289 -0.224358
+vn 0.434971 0.780131 -0.449662
+vn 0.910032 0.329078 -0.252092
+vn 0.908601 0.352289 -0.224358
+vn 0.995640 -0.025451 -0.089737
+vn 0.910032 0.329078 -0.252092
+vn 0.995288 -0.035450 -0.090255
+vn -0.000000 0.912607 -0.408838
+vn 0.427985 0.817802 -0.384746
+vn -0.000000 0.875547 -0.483133
+vn 0.434971 0.780131 -0.449662
+vn -0.298694 0.947145 0.117042
+vn -0.122293 0.907917 0.400912
+vn -0.118159 0.988945 -0.089590
+vn 0.011659 0.999226 -0.037578
+vn 0.180158 0.956825 0.228099
+vn 0.140414 0.989891 -0.019985
+vn -0.122293 0.907917 0.400912
+vn 0.011659 0.999226 -0.037578
+vn 0.673453 -0.419654 0.608565
+vn 0.045654 -0.569418 0.820780
+vn 0.814389 -0.577974 -0.052112
+vn -0.055132 -0.998461 0.006055
+vn -0.590294 -0.349149 0.727769
+vn -0.868497 -0.484091 0.106627
+vn 0.045654 -0.569418 0.820780
+vn -0.055132 -0.998461 0.006055
+vn 0.450501 -0.616157 0.646065
+vn -0.173580 -0.845091 0.505660
+vn 0.859969 -0.500865 0.097914
+vn 0.123743 -0.921438 -0.368294
+vn -0.753016 -0.614058 0.236434
+vn -0.742706 -0.498064 -0.447571
+vn -0.173580 -0.845091 0.505660
+vn 0.123743 -0.921438 -0.368294
+vn -0.394412 0.027849 -0.918512
+vn 0.321505 -0.061211 -0.944927
+vn -0.742706 -0.498064 -0.447571
+vn 0.123743 -0.921438 -0.368294
+vn 0.872940 0.025633 -0.487154
+vn 0.859969 -0.500865 0.097914
+vn 0.321505 -0.061211 -0.944927
+vn 0.123743 -0.921438 -0.368294
+vn -0.203359 -0.198288 -0.958815
+vn -0.097495 -0.859947 -0.500984
+vn 0.170974 -0.433875 -0.884602
+vn 0.597055 -0.770406 -0.223604
+vn -0.371805 -0.255603 -0.892428
+vn 0.020063 0.135745 -0.990541
+vn -0.450634 -0.396144 -0.799999
+vn -0.096127 0.162298 -0.982048
+vn -0.704727 0.512748 -0.490356
+vn -0.339878 0.090349 -0.936120
+vn -0.411659 0.583836 -0.699766
+vn -0.095933 0.032938 -0.994843
+vn -0.339878 0.090349 -0.936120
+vn 0.170974 -0.433875 -0.884602
+vn -0.095933 0.032938 -0.994843
+vn 0.262644 -0.547300 -0.794658
+vn -0.352338 0.761520 0.544009
+vn -0.867551 0.497344 -0.001789
+vn -0.201310 0.927222 0.315807
+vn -0.767320 0.603096 -0.217934
+vn -0.751777 0.457242 0.475143
+vn -0.945479 -0.298281 0.130763
+vn -0.867551 0.497344 -0.001789
+vn -0.865301 -0.049970 -0.498756
+vn 0.935802 0.325469 0.135444
+vn 0.786854 0.611355 0.084294
+vn 0.577530 0.359142 -0.733128
+vn 0.382866 0.560200 -0.734567
+vn 0.935802 0.325469 0.135444
+vn 0.986393 0.129830 0.100864
+vn 0.796660 -0.030684 0.603649
+vn 0.939599 -0.314521 0.135023
+vn 0.979320 0.066247 0.191162
+vn 0.990978 0.025689 0.131541
+vn 0.939599 -0.314521 0.135023
+vn 0.755556 -0.586776 -0.291254
+vn -0.064450 0.540179 0.839079
+vn -0.043564 -0.319919 0.946443
+vn -0.678944 0.513366 0.524872
+vn -0.994962 -0.076322 -0.065006
+vn -0.375123 -0.751822 -0.542260
+vn -0.219081 -0.911357 -0.348472
+vn -0.782404 -0.601982 0.159570
+vn -0.717168 -0.643082 0.268543
+vn 0.402515 -0.557121 -0.726359
+vn 0.555867 -0.628506 -0.544052
+vn -0.219081 -0.911357 -0.348472
+vn -0.010514 -0.996091 -0.087710
+vn 0.539299 -0.800165 -0.262474
+vn 0.632264 -0.745988 -0.209151
+vn 0.297246 -0.894400 0.334207
+vn 0.357169 -0.859281 0.366150
+vn 0.357169 -0.859281 0.366150
+vn 0.450025 -0.882400 0.137289
+vn -0.011571 -0.862641 0.505685
+vn 0.197613 -0.937310 0.287053
+vn 0.096201 -0.987322 -0.126255
+vn 0.620370 -0.610287 -0.492636
+vn -0.015263 -0.964177 -0.264820
+vn -0.122990 -0.882371 -0.454197
+vn 0.709184 0.629286 -0.317894
+vn 0.185203 0.943992 0.273092
+vn 0.749523 0.639092 -0.172558
+vn 0.361404 0.811308 0.459528
+vn 0.709184 0.629286 -0.317894
+vn 0.749523 0.639092 -0.172558
+vn 0.801974 0.006251 -0.597326
+vn 0.971384 -0.015863 -0.236984
+vn 0.555867 -0.628506 -0.544052
+vn 0.801974 0.006251 -0.597326
+vn 0.669757 -0.663735 -0.332989
+vn 0.971384 -0.015863 -0.236984
+vn 0.797602 0.603098 0.010233
+vn 0.755567 0.653351 -0.047439
+vn 0.958159 -0.028465 -0.284817
+vn 0.977230 -0.021991 -0.211041
+vn 0.755567 0.653351 -0.047439
+vn 0.063034 0.972832 0.222764
+vn 0.745670 0.657600 0.107420
+vn 0.152106 0.848790 0.506378
+vn -0.529952 -0.569267 0.628558
+vn -0.011571 -0.862641 0.505685
+vn -0.142636 -0.957582 -0.250385
+vn 0.019843 -0.997419 -0.069005
+vn -0.819751 0.561536 0.112632
+vn -0.682763 0.703731 0.196463
+vn -0.738840 0.205784 0.641692
+vn -0.668687 0.291851 0.683872
+vn -0.445895 0.792667 -0.415760
+vn -0.561257 0.685475 -0.463805
+vn -0.682763 0.703731 0.196463
+vn -0.879684 0.474404 0.033123
+vn -0.973555 -0.003572 -0.228423
+vn -0.627748 -0.644680 -0.436257
+vn -0.994636 -0.015331 -0.102290
+vn -0.691302 -0.699888 -0.179605
+vn -0.635061 -0.573596 -0.517383
+vn 0.117657 -0.848118 -0.516578
+vn -0.627748 -0.644680 -0.436257
+vn 0.077284 -0.916539 -0.392408
+vn -0.142636 -0.957582 -0.250385
+vn 0.019843 -0.997419 -0.069005
+vn 0.117657 -0.848118 -0.516578
+vn 0.755891 -0.627740 -0.185933
+vn -0.662772 0.646796 0.377344
+vn -0.932453 -0.030250 0.360023
+vn -0.563460 0.656864 0.501041
+vn -0.697661 -0.031168 0.715750
+vn 0.662718 0.585800 0.466522
+vn 0.672302 0.640093 0.371875
+vn 0.979499 -0.068893 0.189305
+vn 0.956469 -0.052213 0.287125
+vn -0.752452 -0.658597 -0.008104
+vn -0.689697 -0.695262 0.202309
+vn -0.961009 -0.051140 0.271747
+vn -0.932453 -0.030250 0.360023
+vn -0.767432 -0.635130 -0.087511
+vn -0.122990 -0.882371 -0.454197
+vn -0.752452 -0.658597 -0.008104
+vn -0.083480 -0.948942 -0.304203
+vn -0.015263 -0.964177 -0.264820
+vn 0.019843 -0.997419 -0.069005
+vn 0.197613 -0.937310 0.287053
+vn -0.011571 -0.862641 0.505685
+vn 0.745184 -0.444480 -0.497131
+vn 0.868498 -0.409336 0.279564
+vn 0.108668 -0.744011 -0.659272
+vn 0.055135 -0.924084 0.378191
+vn -0.939552 -0.342396 0.002548
+vn -0.938531 -0.344423 0.023089
+vn -0.649503 -0.752023 0.112286
+vn -0.648385 -0.744527 0.158985
+vn -0.649503 -0.752023 0.112286
+vn -0.648385 -0.744527 0.158985
+vn 0.000000 -0.984870 0.173293
+vn 0.000000 -0.972017 0.234911
+vn -0.939552 -0.342396 0.002548
+vn -0.995640 -0.025451 -0.089737
+vn -0.938531 -0.344423 0.023089
+vn -0.995288 -0.035450 -0.090255
+vn -0.000000 0.912607 -0.408838
+vn -0.000000 0.875547 -0.483133
+vn -0.427985 0.817802 -0.384746
+vn -0.434971 0.780131 -0.449662
+vn -0.427985 0.817802 -0.384746
+vn -0.434971 0.780131 -0.449662
+vn -0.908601 0.352289 -0.224358
+vn -0.910031 0.329078 -0.252092
+vn -0.908601 0.352289 -0.224358
+vn -0.910031 0.329078 -0.252092
+vn -0.995640 -0.025451 -0.089737
+vn -0.995288 -0.035450 -0.090255
+vn 0.585595 -0.301117 -0.752600
+vn 0.814389 -0.577974 -0.052112
+vn -0.108668 -0.444271 -0.889278
+vn -0.055132 -0.998461 0.006055
+vn -0.745190 -0.226874 -0.627073
+vn -0.108668 -0.444271 -0.889278
+vn -0.868497 -0.484091 0.106627
+vn -0.055132 -0.998461 0.006055
+vn -0.631895 -0.712993 -0.303891
+vn -0.539720 -0.825793 0.163613
+vn -0.097495 -0.859947 -0.500984
+vn -0.135464 -0.989394 -0.052427
+vn -0.631895 -0.712993 -0.303891
+vn -0.371805 -0.255603 -0.892428
+vn -0.558684 -0.816489 -0.145661
+vn -0.450634 -0.396144 -0.799999
+vn -0.730653 0.660067 0.174522
+vn -0.704727 0.512748 -0.490356
+vn -0.531475 0.841876 0.093703
+vn -0.411659 0.583836 -0.699766
+vn -0.751777 0.457242 0.475143
+vn -0.471319 0.337329 0.814904
+vn -0.945479 -0.298281 0.130763
+vn 0.110139 -0.191659 0.975262
+vn -0.730653 0.660067 0.174522
+vn -0.531475 0.841876 0.093703
+vn -0.471319 0.337329 0.814904
+vn -0.269365 0.467791 0.841792
+vn 0.786854 0.611355 0.084294
+vn 0.935802 0.325469 0.135444
+vn 0.635626 0.196661 0.746528
+vn 0.796660 -0.030684 0.603649
+vn 0.786854 0.611355 0.084294
+vn 0.704077 0.710074 0.008393
+vn 0.382866 0.560200 -0.734567
+vn 0.360898 0.595366 -0.717838
+vn 0.382866 0.560200 -0.734567
+vn 0.360898 0.595366 -0.717838
+vn -0.096127 0.162298 -0.982048
+vn -0.044048 0.066535 -0.996811
+vn 0.796660 -0.030684 0.603649
+vn 0.939599 -0.314521 0.135023
+vn 0.465628 -0.485094 0.740186
+vn 0.246557 -0.948398 -0.199375
+vn 0.729463 0.495459 0.471597
+vn 0.710735 0.603458 0.361517
+vn 0.990978 0.025689 0.131541
+vn 0.996203 -0.013195 0.086050
+vn 0.729463 0.495459 0.471597
+vn 0.163173 0.727662 0.666245
+vn 0.710735 0.603458 0.361517
+vn -0.000988 0.888550 0.458778
+vn 0.163173 0.727662 0.666245
+vn -0.678944 0.513366 0.524872
+vn -0.000988 0.888550 0.458778
+vn -0.771733 0.592096 0.232055
+vn 0.807190 -0.083777 0.584316
+vn 0.763073 -0.632466 0.133065
+vn -0.043564 -0.319919 0.946443
+vn 0.016068 -0.998294 -0.056131
+vn 0.362074 0.474436 0.802380
+vn 0.515634 0.582361 0.628472
+vn 0.807190 -0.083777 0.584316
+vn 0.840931 -0.055293 0.538310
+vn -0.201310 0.927222 0.315807
+vn -0.124158 0.972463 0.197234
+vn 0.515634 0.582361 0.628472
+vn 0.528419 0.646331 0.550481
+vn -0.676947 -0.140830 0.722433
+vn -0.782404 -0.601982 0.159570
+vn -0.756747 -0.084516 0.648222
+vn -0.717168 -0.643082 0.268543
+vn 0.297246 -0.894400 0.334207
+vn 0.078053 -0.975340 0.206447
+vn 0.539299 -0.800165 -0.262474
+vn 0.148857 -0.905586 -0.397186
+vn 0.357169 -0.859281 0.366150
+vn -0.290144 -0.447007 0.846168
+vn 0.297246 -0.894400 0.334207
+vn -0.285974 -0.469135 0.835542
+vn -0.011571 -0.862641 0.505685
+vn -0.529952 -0.569267 0.628558
+vn 0.357169 -0.859281 0.366150
+vn -0.290144 -0.447007 0.846168
+vn -0.450538 0.577739 0.680613
+vn -0.319205 0.603947 0.730313
+vn 0.185203 0.943992 0.273092
+vn 0.361404 0.811308 0.459528
+vn -0.425143 0.499859 0.754582
+vn -0.756747 -0.084516 0.648222
+vn -0.450538 0.577739 0.680613
+vn -0.707581 -0.052850 0.704653
+vn 0.555867 -0.628506 -0.544052
+vn 0.669757 -0.663735 -0.332989
+vn -0.010514 -0.996091 -0.087710
+vn 0.268575 -0.924964 0.268905
+vn 0.620370 -0.610287 -0.492636
+vn 0.639000 -0.647811 -0.414752
+vn -0.122990 -0.882371 -0.454197
+vn -0.083480 -0.948942 -0.304203
+vn 0.639000 -0.647811 -0.414752
+vn 0.958159 -0.028465 -0.284817
+vn 0.693303 -0.689057 -0.211028
+vn 0.977230 -0.021991 -0.211041
+vn 0.755567 0.653351 -0.047439
+vn 0.745670 0.657600 0.107420
+vn 0.977230 -0.021991 -0.211041
+vn 0.976931 -0.030688 0.211338
+vn -0.290144 -0.447007 0.846168
+vn -0.738840 0.205784 0.641692
+vn -0.285974 -0.469135 0.835542
+vn -0.668687 0.291851 0.683872
+vn 0.301694 -0.489082 -0.818400
+vn 0.148857 -0.905586 -0.397186
+vn -0.268523 0.061285 -0.961322
+vn -0.776539 -0.486558 -0.400310
+vn -0.561257 0.685475 -0.463805
+vn -0.268523 0.061285 -0.961322
+vn -0.879684 0.474404 0.033123
+vn -0.776539 -0.486558 -0.400310
+vn -0.742843 0.664297 0.083024
+vn -0.702248 0.639416 0.313042
+vn -0.047462 0.951758 0.303158
+vn -0.100998 0.785050 0.611143
+vn 0.672302 0.640093 0.371875
+vn -0.047462 0.951758 0.303158
+vn 0.562394 0.619560 0.547594
+vn -0.100998 0.785050 0.611143
+vn -0.742843 0.664297 0.083024
+vn -0.994636 -0.015331 -0.102290
+vn -0.702248 0.639416 0.313042
+vn -0.913702 -0.025086 0.405611
+vn -0.563460 0.656864 0.501041
+vn -0.697661 -0.031168 0.715750
+vn 0.152106 0.848790 0.506378
+vn 0.288742 -0.045202 0.956339
+vn 0.730883 -0.667669 -0.141520
+vn 0.077284 -0.916539 -0.392408
+vn 0.755891 -0.627740 -0.185933
+vn 0.117657 -0.848118 -0.516578
+vn 0.979499 -0.068893 0.189305
+vn 0.956469 -0.052213 0.287125
+vn 0.730883 -0.667669 -0.141520
+vn 0.678513 -0.728427 0.094943
+vn -0.689697 -0.695262 0.202309
+vn -0.752452 -0.658597 -0.008104
+vn 0.002699 -0.999951 -0.009497
+vn -0.083480 -0.948942 -0.304203
+vn 0.938531 -0.344423 0.023089
+vn 0.648385 -0.744527 0.158985
+vn 0.937842 -0.343706 0.048151
+vn 0.644022 -0.736084 0.208364
+vn 0.648385 -0.744527 0.158985
+vn 0.000000 -0.972017 0.234911
+vn 0.644022 -0.736084 0.208364
+vn 0.000000 -0.955413 0.295274
+vn 0.938531 -0.344423 0.023089
+vn 0.937842 -0.343706 0.048151
+vn 0.995288 -0.035450 -0.090255
+vn 0.995447 -0.041927 -0.085604
+vn -0.000000 0.875547 -0.483133
+vn 0.434971 0.780131 -0.449662
+vn -0.000000 0.836027 -0.548688
+vn 0.433173 0.744896 -0.507435
+vn 0.434971 0.780131 -0.449662
+vn 0.910032 0.329078 -0.252092
+vn 0.433173 0.744896 -0.507435
+vn 0.909967 0.310677 -0.274662
+vn 0.995288 -0.035450 -0.090255
+vn 0.995447 -0.041927 -0.085604
+vn 0.910032 0.329078 -0.252092
+vn 0.909967 0.310677 -0.274662
+vn 0.170974 -0.433875 -0.884602
+vn 0.597055 -0.770406 -0.223604
+vn 0.262644 -0.547300 -0.794658
+vn 0.475226 -0.875605 -0.086460
+vn -0.097495 -0.859947 -0.500984
+vn -0.135464 -0.989394 -0.052427
+vn 0.597055 -0.770406 -0.223604
+vn 0.523140 -0.636251 0.567019
+vn -0.539720 -0.825793 0.163613
+vn -0.631895 -0.712993 -0.303891
+vn -0.267992 -0.790045 0.551371
+vn -0.558684 -0.816489 -0.145661
+vn -0.558684 -0.816489 -0.145661
+vn -0.450634 -0.396144 -0.799999
+vn -0.300633 -0.951851 -0.060001
+vn -0.319650 -0.580881 -0.748599
+vn -0.450634 -0.396144 -0.799999
+vn -0.096127 0.162298 -0.982048
+vn -0.319650 -0.580881 -0.748599
+vn -0.044048 0.066535 -0.996811
+vn -0.531475 0.841876 0.093703
+vn -0.411659 0.583836 -0.699766
+vn -0.458545 0.887826 0.038752
+vn -0.317317 0.601654 -0.733022
+vn -0.411659 0.583836 -0.699766
+vn -0.095933 0.032938 -0.994843
+vn -0.317317 0.601654 -0.733022
+vn -0.107437 0.002754 -0.994208
+vn -0.095933 0.032938 -0.994843
+vn 0.262644 -0.547300 -0.794658
+vn -0.107437 0.002754 -0.994208
+vn 0.060505 -0.637055 -0.768440
+vn -0.201310 0.927222 0.315807
+vn -0.767320 0.603096 -0.217934
+vn -0.124158 0.972463 0.197234
+vn -0.711990 0.653005 -0.258175
+vn -0.867551 0.497344 -0.001789
+vn -0.865301 -0.049970 -0.498756
+vn -0.767320 0.603096 -0.217934
+vn -0.833916 -0.025683 -0.551294
+vn -0.865301 -0.049970 -0.498756
+vn -0.945479 -0.298281 0.130763
+vn -0.442986 -0.613088 -0.654130
+vn -0.135464 -0.989394 -0.052427
+vn 0.635626 0.196661 0.746528
+vn 0.639332 0.328642 0.695161
+vn 0.786854 0.611355 0.084294
+vn 0.704077 0.710074 0.008393
+vn 0.635626 0.196661 0.746528
+vn 0.796660 -0.030684 0.603649
+vn 0.297310 -0.292244 0.908956
+vn 0.465628 -0.485094 0.740186
+vn 0.939599 -0.314521 0.135023
+vn 0.755556 -0.586776 -0.291254
+vn 0.246557 -0.948398 -0.199375
+vn 0.029791 -0.841570 -0.539326
+vn 0.990978 0.025689 0.131541
+vn 0.996203 -0.013195 0.086050
+vn 0.755556 -0.586776 -0.291254
+vn 0.722852 -0.652602 -0.227147
+vn -0.678944 0.513366 0.524872
+vn -0.994962 -0.076322 -0.065006
+vn -0.771733 0.592096 0.232055
+vn -0.989773 -0.057433 -0.130580
+vn -0.994962 -0.076322 -0.065006
+vn -0.043564 -0.319919 0.946443
+vn -0.675226 -0.598772 -0.430745
+vn 0.016068 -0.998294 -0.056131
+vn 0.807190 -0.083777 0.584316
+vn 0.840931 -0.055293 0.538310
+vn 0.763073 -0.632466 0.133065
+vn 0.722193 -0.661158 0.203243
+vn -0.219081 -0.911357 -0.348472
+vn -0.010514 -0.996091 -0.087710
+vn -0.717168 -0.643082 0.268543
+vn -0.578801 -0.686999 0.439343
+vn 0.297246 -0.894400 0.334207
+vn -0.285974 -0.469135 0.835542
+vn 0.078053 -0.975340 0.206447
+vn -0.588052 -0.633449 0.502928
+vn -0.450538 0.577739 0.680613
+vn -0.707581 -0.052850 0.704653
+vn -0.319205 0.603947 0.730313
+vn -0.387781 -0.056946 0.919991
+vn 0.749523 0.639092 -0.172558
+vn 0.361404 0.811308 0.459528
+vn 0.971384 -0.015863 -0.236984
+vn 0.650340 -0.077208 0.755710
+vn 0.669757 -0.663735 -0.332989
+vn 0.971384 -0.015863 -0.236984
+vn 0.268575 -0.924964 0.268905
+vn 0.650340 -0.077208 0.755710
+vn 0.639000 -0.647811 -0.414752
+vn 0.693303 -0.689057 -0.211028
+vn -0.083480 -0.948942 -0.304203
+vn 0.002699 -0.999951 -0.009497
+vn 0.745670 0.657600 0.107420
+vn 0.152106 0.848790 0.506378
+vn 0.976931 -0.030688 0.211338
+vn 0.288742 -0.045202 0.956339
+vn -0.668687 0.291851 0.683872
+vn -0.682763 0.703731 0.196463
+vn -0.789830 0.188496 0.583642
+vn -0.879684 0.474404 0.033123
+vn 0.078053 -0.975340 0.206447
+vn -0.588052 -0.633449 0.502928
+vn 0.148857 -0.905586 -0.397186
+vn -0.776539 -0.486558 -0.400310
+vn 0.672302 0.640093 0.371875
+vn 0.562394 0.619560 0.547594
+vn 0.956469 -0.052213 0.287125
+vn 0.705310 -0.050193 0.707120
+vn -0.691302 -0.699888 -0.179605
+vn -0.707131 -0.673584 0.215060
+vn -0.994636 -0.015331 -0.102290
+vn -0.913702 -0.025086 0.405611
+vn -0.627748 -0.644680 -0.436257
+vn 0.077284 -0.916539 -0.392408
+vn -0.691302 -0.699888 -0.179605
+vn -0.009646 -0.998188 -0.059392
+vn -0.697661 -0.031168 0.715750
+vn -0.932453 -0.030250 0.360023
+vn -0.570797 -0.686629 0.450257
+vn -0.689697 -0.695262 0.202309
+vn 0.077284 -0.916539 -0.392408
+vn 0.730883 -0.667669 -0.141520
+vn -0.009646 -0.998188 -0.059392
+vn 0.678513 -0.728427 0.094943
+vn -0.689697 -0.695262 0.202309
+vn 0.002699 -0.999951 -0.009497
+vn -0.570797 -0.686629 0.450257
+vn 0.134624 -0.886855 0.442000
+vn -0.938531 -0.344423 0.023089
+vn -0.937842 -0.343706 0.048151
+vn -0.648385 -0.744527 0.158985
+vn -0.644023 -0.736084 0.208364
+vn -0.648385 -0.744527 0.158985
+vn -0.644023 -0.736084 0.208364
+vn 0.000000 -0.972017 0.234911
+vn 0.000000 -0.955413 0.295274
+vn -0.938531 -0.344423 0.023089
+vn -0.995288 -0.035450 -0.090255
+vn -0.937842 -0.343706 0.048151
+vn -0.995447 -0.041927 -0.085604
+vn -0.000000 0.875547 -0.483133
+vn -0.000000 0.836027 -0.548688
+vn -0.434971 0.780131 -0.449662
+vn -0.433173 0.744896 -0.507435
+vn -0.434971 0.780131 -0.449662
+vn -0.433173 0.744896 -0.507435
+vn -0.910031 0.329078 -0.252092
+vn -0.909967 0.310678 -0.274662
+vn -0.995288 -0.035450 -0.090255
+vn -0.910031 0.329078 -0.252092
+vn -0.995447 -0.041927 -0.085604
+vn -0.909967 0.310678 -0.274662
+vn -0.267992 -0.790045 0.551371
+vn 0.005266 -0.769544 0.638572
+vn -0.539720 -0.825793 0.163613
+vn -0.316005 -0.876331 0.363572
+vn -0.135464 -0.989394 -0.052427
+vn -0.539720 -0.825793 0.163613
+vn 0.081183 -0.971914 -0.220890
+vn -0.316005 -0.876331 0.363572
+vn -0.267992 -0.790045 0.551371
+vn -0.558684 -0.816489 -0.145661
+vn -0.055977 -0.788391 0.612623
+vn -0.300633 -0.951851 -0.060001
+vn -0.531475 0.841876 0.093703
+vn -0.458545 0.887826 0.038752
+vn -0.269365 0.467791 0.841792
+vn -0.306003 0.542624 0.782254
+vn 0.110139 -0.191659 0.975262
+vn 0.523140 -0.636251 0.567019
+vn -0.945479 -0.298281 0.130763
+vn -0.135464 -0.989394 -0.052427
+vn -0.471319 0.337329 0.814904
+vn -0.269365 0.467791 0.841792
+vn 0.110139 -0.191659 0.975262
+vn 0.106092 -0.101090 0.989204
+vn -0.865301 -0.049970 -0.498756
+vn -0.442986 -0.613088 -0.654130
+vn -0.833916 -0.025683 -0.551294
+vn -0.490829 -0.644172 -0.586625
+vn 0.639332 0.328642 0.695161
+vn 0.635626 0.196661 0.746528
+vn 0.328781 -0.258862 0.908237
+vn 0.297310 -0.292244 0.908956
+vn 0.639332 0.328642 0.695161
+vn 0.777048 0.254840 0.575546
+vn 0.704077 0.710074 0.008393
+vn 0.906644 0.421757 -0.010827
+vn 0.704077 0.710074 0.008393
+vn 0.906644 0.421757 -0.010827
+vn 0.360898 0.595366 -0.717838
+vn 0.601559 0.453272 -0.657777
+vn 0.360898 0.595366 -0.717838
+vn 0.601559 0.453272 -0.657777
+vn -0.044048 0.066535 -0.996811
+vn 0.424030 -0.235636 -0.874456
+vn 0.297310 -0.292244 0.908956
+vn 0.465628 -0.485094 0.740186
+vn -0.267992 -0.790045 0.551371
+vn 0.005266 -0.769544 0.638572
+vn 0.465628 -0.485094 0.740186
+vn 0.246557 -0.948398 -0.199375
+vn 0.005266 -0.769544 0.638572
+vn 0.016068 -0.998294 -0.056131
+vn 0.710735 0.603458 0.361517
+vn 0.686699 0.663217 0.297637
+vn 0.996203 -0.013195 0.086050
+vn 0.981468 -0.017497 0.190828
+vn 0.710735 0.603458 0.361517
+vn -0.000988 0.888550 0.458778
+vn 0.686699 0.663217 0.297637
+vn -0.041527 0.951385 0.305192
+vn -0.000988 0.888550 0.458778
+vn -0.771733 0.592096 0.232055
+vn -0.041527 0.951385 0.305192
+vn -0.751338 0.640356 0.159486
+vn -0.994962 -0.076322 -0.065006
+vn -0.675226 -0.598772 -0.430745
+vn -0.989773 -0.057433 -0.130580
+vn -0.662151 -0.654955 -0.364129
+vn 0.016068 -0.998294 -0.056131
+vn 0.763073 -0.632466 0.133065
+vn 0.081183 -0.971914 -0.220890
+vn 0.254374 -0.875524 -0.410794
+vn 0.515634 0.582361 0.628472
+vn 0.528419 0.646331 0.550481
+vn 0.840931 -0.055293 0.538310
+vn 0.792696 -0.031120 0.608823
+vn 0.528419 0.646331 0.550481
+vn -0.124158 0.972463 0.197234
+vn 0.401498 0.656865 0.638223
+vn -0.287204 0.848790 0.443925
+vn -0.756747 -0.084516 0.648222
+vn -0.717168 -0.643082 0.268543
+vn -0.707581 -0.052850 0.704653
+vn -0.578801 -0.686999 0.439343
+vn -0.319205 0.603947 0.730313
+vn -0.387781 -0.056946 0.919991
+vn 0.361404 0.811308 0.459528
+vn 0.650340 -0.077208 0.755710
+vn 0.268575 -0.924964 0.268905
+vn -0.405549 -0.702617 0.584687
+vn -0.010514 -0.996091 -0.087710
+vn -0.578801 -0.686999 0.439343
+vn 0.693303 -0.689057 -0.211028
+vn 0.977230 -0.021991 -0.211041
+vn 0.725877 -0.685249 0.059459
+vn 0.976931 -0.030688 0.211338
+vn -0.668687 0.291851 0.683872
+vn -0.789830 0.188496 0.583642
+vn -0.285974 -0.469135 0.835542
+vn -0.588052 -0.633449 0.502928
+vn -0.789830 0.188496 0.583642
+vn -0.879684 0.474404 0.033123
+vn -0.588052 -0.633449 0.502928
+vn -0.776539 -0.486558 -0.400310
+vn -0.702248 0.639416 0.313042
+vn -0.913702 -0.025086 0.405611
+vn -0.100998 0.785050 0.611143
+vn -0.184188 -0.053344 0.981442
+vn 0.562394 0.619560 0.547594
+vn -0.100998 0.785050 0.611143
+vn 0.705310 -0.050193 0.707120
+vn -0.184188 -0.053344 0.981442
+vn -0.691302 -0.699888 -0.179605
+vn -0.009646 -0.998188 -0.059392
+vn -0.707131 -0.673584 0.215060
+vn -0.107412 -0.860919 0.497274
+vn -0.570797 -0.686629 0.450257
+vn 0.134624 -0.886855 0.442000
+vn -0.697661 -0.031168 0.715750
+vn 0.288742 -0.045202 0.956339
+vn 0.678513 -0.728427 0.094943
+vn 0.956469 -0.052213 0.287125
+vn 0.560573 -0.694122 0.451610
+vn 0.705310 -0.050193 0.707120
+vn 0.937842 -0.343706 0.048151
+vn 0.644022 -0.736084 0.208364
+vn 0.935957 -0.342543 0.081543
+vn 0.620907 -0.737411 0.265892
+vn 0.644022 -0.736084 0.208364
+vn 0.000000 -0.955413 0.295274
+vn 0.620907 -0.737411 0.265892
+vn 0.000001 -0.937033 0.349242
+vn 0.937842 -0.343706 0.048151
+vn 0.935957 -0.342543 0.081543
+vn 0.995447 -0.041927 -0.085604
+vn 0.995961 -0.044258 -0.078115
+vn -0.000000 0.836027 -0.548688
+vn 0.433173 0.744896 -0.507435
+vn -0.000000 0.789484 -0.613771
+vn 0.421581 0.707330 -0.567410
+vn 0.433173 0.744896 -0.507435
+vn 0.909967 0.310677 -0.274662
+vn 0.421581 0.707330 -0.567410
+vn 0.908041 0.294027 -0.298346
+vn 0.995447 -0.041927 -0.085604
+vn 0.995961 -0.044258 -0.078115
+vn 0.909967 0.310677 -0.274662
+vn 0.908041 0.294027 -0.298346
+vn 0.262644 -0.547300 -0.794658
+vn 0.475226 -0.875605 -0.086460
+vn 0.060505 -0.637055 -0.768440
+vn 0.101890 -0.993922 -0.041678
+vn 0.597055 -0.770406 -0.223604
+vn 0.523140 -0.636251 0.567019
+vn 0.475226 -0.875605 -0.086460
+vn 0.384912 -0.624293 0.679781
+vn -0.135464 -0.989394 -0.052427
+vn 0.081183 -0.971914 -0.220890
+vn -0.442986 -0.613088 -0.654130
+vn 0.254374 -0.875524 -0.410794
+vn -0.267992 -0.790045 0.551371
+vn -0.055977 -0.788391 0.612623
+vn 0.297310 -0.292244 0.908956
+vn 0.328781 -0.258862 0.908237
+vn -0.055977 -0.788391 0.612623
+vn -0.300633 -0.951851 -0.060001
+vn 0.191767 -0.815127 0.546620
+vn 0.165634 -0.986187 0.001180
+vn -0.300633 -0.951851 -0.060001
+vn -0.319650 -0.580881 -0.748599
+vn 0.165634 -0.986187 0.001180
+vn 0.000693 -0.767443 -0.641117
+vn -0.319650 -0.580881 -0.748599
+vn -0.044048 0.066535 -0.996811
+vn 0.000693 -0.767443 -0.641117
+vn 0.424030 -0.235636 -0.874456
+vn -0.317317 0.601654 -0.733022
+vn -0.504231 0.570402 -0.648377
+vn -0.458545 0.887826 0.038752
+vn -0.717783 0.696228 0.007420
+vn -0.317317 0.601654 -0.733022
+vn -0.107437 0.002754 -0.994208
+vn -0.504231 0.570402 -0.648377
+vn -0.533533 -0.029566 -0.845262
+vn 0.060505 -0.637055 -0.768440
+vn -0.268865 -0.653601 -0.707472
+vn -0.107437 0.002754 -0.994208
+vn -0.533533 -0.029566 -0.845262
+vn -0.711990 0.653005 -0.258175
+vn -0.746063 0.657601 -0.104649
+vn -0.124158 0.972463 0.197234
+vn -0.287204 0.848790 0.443925
+vn -0.767320 0.603096 -0.217934
+vn -0.833916 -0.025683 -0.551294
+vn -0.711990 0.653005 -0.258175
+vn -0.878237 -0.021675 -0.477734
+vn 0.110139 -0.191659 0.975262
+vn 0.106092 -0.101090 0.989204
+vn 0.523140 -0.636251 0.567019
+vn 0.384912 -0.624293 0.679781
+vn 0.328781 -0.258862 0.908237
+vn 0.603521 -0.384150 0.698707
+vn 0.639332 0.328642 0.695161
+vn 0.777048 0.254840 0.575546
+vn 0.246557 -0.948398 -0.199375
+vn 0.029791 -0.841570 -0.539326
+vn 0.016068 -0.998294 -0.056131
+vn -0.675226 -0.598772 -0.430745
+vn 0.755556 -0.586776 -0.291254
+vn 0.722852 -0.652602 -0.227147
+vn 0.029791 -0.841570 -0.539326
+vn 0.030824 -0.914413 -0.403608
+vn 0.996203 -0.013195 0.086050
+vn 0.981468 -0.017497 0.190828
+vn 0.722852 -0.652602 -0.227147
+vn 0.710836 -0.702786 0.028359
+vn -0.771733 0.592096 0.232055
+vn -0.989773 -0.057433 -0.130580
+vn -0.751338 0.640356 0.159486
+vn -0.998733 -0.050247 -0.002721
+vn 0.763073 -0.632466 0.133065
+vn 0.722193 -0.661158 0.203243
+vn 0.254374 -0.875524 -0.410794
+vn 0.167278 -0.946858 -0.274733
+vn 0.722193 -0.661158 0.203243
+vn 0.840931 -0.055293 0.538310
+vn 0.603686 -0.696287 0.388263
+vn 0.792696 -0.031120 0.608823
+vn 0.081183 -0.971914 -0.220890
+vn -0.316005 -0.876331 0.363572
+vn 0.016068 -0.998294 -0.056131
+vn 0.005266 -0.769544 0.638572
+vn 0.528419 0.646331 0.550481
+vn 0.401498 0.656865 0.638223
+vn 0.792696 -0.031120 0.608823
+vn 0.470543 -0.031170 0.881826
+vn -0.387781 -0.056946 0.919991
+vn -0.707581 -0.052850 0.704653
+vn -0.405549 -0.702617 0.584687
+vn -0.578801 -0.686999 0.439343
+vn -0.405549 -0.702617 0.584687
+vn 0.268575 -0.924964 0.268905
+vn -0.387781 -0.056946 0.919991
+vn 0.650340 -0.077208 0.755710
+vn 0.693303 -0.689057 -0.211028
+vn 0.725877 -0.685249 0.059459
+vn 0.002699 -0.999951 -0.009497
+vn 0.134624 -0.886855 0.442000
+vn 0.725877 -0.685249 0.059459
+vn 0.976931 -0.030688 0.211338
+vn 0.134624 -0.886855 0.442000
+vn 0.288742 -0.045202 0.956339
+vn -0.707131 -0.673584 0.215060
+vn -0.107412 -0.860919 0.497274
+vn -0.913702 -0.025086 0.405611
+vn -0.184188 -0.053344 0.981442
+vn 0.678513 -0.728427 0.094943
+vn 0.560573 -0.694122 0.451610
+vn -0.009646 -0.998188 -0.059392
+vn -0.107412 -0.860919 0.497274
+vn -0.937842 -0.343706 0.048151
+vn -0.935957 -0.342542 0.081543
+vn -0.644023 -0.736084 0.208364
+vn -0.620908 -0.737411 0.265892
+vn -0.644023 -0.736084 0.208364
+vn -0.620908 -0.737411 0.265892
+vn 0.000000 -0.955413 0.295274
+vn 0.000001 -0.937033 0.349242
+vn -0.937842 -0.343706 0.048151
+vn -0.995447 -0.041927 -0.085604
+vn -0.935957 -0.342542 0.081543
+vn -0.995961 -0.044258 -0.078115
+vn -0.000000 0.836027 -0.548688
+vn -0.000000 0.789484 -0.613771
+vn -0.433173 0.744896 -0.507435
+vn -0.421580 0.707331 -0.567410
+vn -0.433173 0.744896 -0.507435
+vn -0.421580 0.707331 -0.567410
+vn -0.909967 0.310678 -0.274662
+vn -0.908040 0.294028 -0.298346
+vn -0.995447 -0.041927 -0.085604
+vn -0.909967 0.310678 -0.274662
+vn -0.995961 -0.044258 -0.078115
+vn -0.908040 0.294028 -0.298346
+vn -0.055977 -0.788391 0.612623
+vn 0.191767 -0.815127 0.546620
+vn 0.328781 -0.258862 0.908237
+vn 0.603521 -0.384150 0.698707
+vn -0.269365 0.467791 0.841792
+vn -0.306003 0.542624 0.782254
+vn 0.106092 -0.101090 0.989204
+vn -0.097769 -0.064636 0.993108
+vn -0.306003 0.542624 0.782254
+vn -0.458545 0.887826 0.038752
+vn -0.527211 0.536864 0.658655
+vn -0.717783 0.696228 0.007420
+vn 0.060505 -0.637055 -0.768440
+vn 0.101890 -0.993922 -0.041678
+vn -0.268865 -0.653601 -0.707472
+vn -0.456806 -0.888792 -0.037111
+vn -0.711990 0.653005 -0.258175
+vn -0.878237 -0.021675 -0.477734
+vn -0.746063 0.657601 -0.104649
+vn -0.997124 -0.030689 -0.069299
+vn -0.490829 -0.644172 -0.586625
+vn -0.605958 -0.688470 -0.398529
+vn -0.833916 -0.025683 -0.551294
+vn -0.878237 -0.021675 -0.477734
+vn -0.442986 -0.613088 -0.654130
+vn 0.254374 -0.875524 -0.410794
+vn -0.490829 -0.644172 -0.586625
+vn 0.167278 -0.946858 -0.274733
+vn 0.777048 0.254840 0.575546
+vn 0.603521 -0.384150 0.698707
+vn 0.906644 0.421757 -0.010827
+vn 0.868896 -0.494239 -0.027331
+vn 0.906644 0.421757 -0.010827
+vn 0.868896 -0.494239 -0.027331
+vn 0.601559 0.453272 -0.657777
+vn 0.424030 -0.235636 -0.874456
+vn 0.686699 0.663217 0.297637
+vn 0.587183 0.639415 0.496350
+vn 0.981468 -0.017497 0.190828
+vn 0.764460 -0.025088 0.644182
+vn 0.686699 0.663217 0.297637
+vn -0.041527 0.951385 0.305192
+vn 0.587183 0.639415 0.496350
+vn -0.073323 0.785051 0.615076
+vn -0.751338 0.640356 0.159486
+vn -0.692722 0.619560 0.369163
+vn -0.041527 0.951385 0.305192
+vn -0.073323 0.785051 0.615076
+vn -0.989773 -0.057433 -0.130580
+vn -0.662151 -0.654955 -0.364129
+vn -0.998733 -0.050247 -0.002721
+vn -0.679844 -0.725530 -0.106857
+vn -0.662151 -0.654955 -0.364129
+vn -0.675226 -0.598772 -0.430745
+vn 0.030824 -0.914413 -0.403608
+vn 0.029791 -0.841570 -0.539326
+vn 0.603686 -0.696287 0.388263
+vn -0.000579 -0.999946 -0.010349
+vn 0.722193 -0.661158 0.203243
+vn 0.167278 -0.946858 -0.274733
+vn 0.401498 0.656865 0.638223
+vn -0.287204 0.848790 0.443925
+vn 0.470543 -0.031170 0.881826
+vn -0.543828 -0.045203 0.837979
+vn 0.560573 -0.694122 0.451610
+vn 0.705310 -0.050193 0.707120
+vn -0.107412 -0.860919 0.497274
+vn -0.184188 -0.053344 0.981442
+vn 0.935957 -0.342543 0.081543
+vn 0.620907 -0.737411 0.265892
+vn 0.927266 -0.358616 0.107571
+vn 0.560119 -0.771026 0.302961
+vn 0.620907 -0.737411 0.265892
+vn 0.000001 -0.937033 0.349242
+vn 0.560119 -0.771026 0.302961
+vn 0.000001 -0.931726 0.363163
+vn 0.935957 -0.342543 0.081543
+vn 0.927266 -0.358616 0.107571
+vn 0.995961 -0.044258 -0.078115
+vn 0.996278 -0.047767 -0.071749
+vn -0.000000 0.789484 -0.613771
+vn 0.421581 0.707330 -0.567410
+vn -0.000001 0.764769 -0.644305
+vn 0.411989 0.689901 -0.595232
+vn 0.421581 0.707330 -0.567410
+vn 0.908041 0.294027 -0.298346
+vn 0.411989 0.689901 -0.595232
+vn 0.909205 0.283188 -0.305205
+vn 0.908041 0.294027 -0.298346
+vn 0.995961 -0.044258 -0.078115
+vn 0.909205 0.283188 -0.305205
+vn 0.996278 -0.047767 -0.071749
+vn 0.475226 -0.875605 -0.086460
+vn 0.384912 -0.624293 0.679781
+vn 0.101890 -0.993922 -0.041678
+vn 0.071897 -0.686443 0.723620
+vn 0.191767 -0.815127 0.546620
+vn 0.165634 -0.986187 0.001180
+vn 0.603521 -0.384150 0.698707
+vn 0.868896 -0.494239 -0.027331
+vn 0.165634 -0.986187 0.001180
+vn 0.000693 -0.767443 -0.641117
+vn 0.868896 -0.494239 -0.027331
+vn 0.424030 -0.235636 -0.874456
+vn -0.306003 0.542624 0.782254
+vn -0.527211 0.536864 0.658655
+vn -0.097769 -0.064636 0.993108
+vn -0.569048 -0.068259 0.819466
+vn -0.504231 0.570402 -0.648377
+vn -0.533533 -0.029566 -0.845262
+vn -0.717783 0.696228 0.007420
+vn -0.996025 -0.086034 -0.023091
+vn -0.268865 -0.653601 -0.707472
+vn -0.456806 -0.888792 -0.037111
+vn -0.533533 -0.029566 -0.845262
+vn -0.996025 -0.086034 -0.023091
+vn -0.746063 0.657601 -0.104649
+vn -0.997124 -0.030689 -0.069299
+vn -0.287204 0.848790 0.443925
+vn -0.543828 -0.045203 0.837979
+vn 0.106092 -0.101090 0.989204
+vn -0.097769 -0.064636 0.993108
+vn 0.384912 -0.624293 0.679781
+vn 0.071897 -0.686443 0.723620
+vn -0.605958 -0.688470 -0.398529
+vn -0.490829 -0.644172 -0.586625
+vn -0.000579 -0.999946 -0.010349
+vn 0.167278 -0.946858 -0.274733
+vn 0.722852 -0.652602 -0.227147
+vn 0.710836 -0.702786 0.028359
+vn 0.030824 -0.914413 -0.403608
+vn 0.023203 -0.998240 -0.054585
+vn 0.710836 -0.702786 0.028359
+vn 0.981468 -0.017497 0.190828
+vn 0.619179 -0.673584 0.403612
+vn 0.764460 -0.025088 0.644182
+vn -0.751338 0.640356 0.159486
+vn -0.998733 -0.050247 -0.002721
+vn -0.692722 0.619560 0.369163
+vn -0.874435 -0.050194 0.482540
+vn 0.030824 -0.914413 -0.403608
+vn 0.023203 -0.998240 -0.054585
+vn -0.662151 -0.654955 -0.364129
+vn -0.679844 -0.725530 -0.106857
+vn 0.603686 -0.696287 0.388263
+vn 0.422698 -0.686630 0.591494
+vn -0.000579 -0.999946 -0.010349
+vn -0.252473 -0.886856 0.386968
+vn 0.603686 -0.696287 0.388263
+vn 0.792696 -0.031120 0.608823
+vn 0.422698 -0.686630 0.591494
+vn 0.470543 -0.031170 0.881826
+vn -0.935957 -0.342542 0.081543
+vn -0.927267 -0.358616 0.107571
+vn -0.620908 -0.737411 0.265892
+vn -0.560119 -0.771026 0.302962
+vn -0.620908 -0.737411 0.265892
+vn -0.560119 -0.771026 0.302962
+vn 0.000001 -0.937033 0.349242
+vn 0.000001 -0.931726 0.363163
+vn -0.935957 -0.342542 0.081543
+vn -0.995961 -0.044258 -0.078115
+vn -0.927267 -0.358616 0.107571
+vn -0.996278 -0.047767 -0.071749
+vn -0.000000 0.789484 -0.613771
+vn -0.000001 0.764769 -0.644305
+vn -0.421580 0.707331 -0.567410
+vn -0.411988 0.689901 -0.595234
+vn -0.421580 0.707331 -0.567410
+vn -0.411988 0.689901 -0.595234
+vn -0.908040 0.294028 -0.298346
+vn -0.909205 0.283189 -0.305206
+vn -0.908040 0.294028 -0.298346
+vn -0.909205 0.283189 -0.305206
+vn -0.995961 -0.044258 -0.078115
+vn -0.996278 -0.047767 -0.071749
+vn -0.527211 0.536864 0.658655
+vn -0.717783 0.696228 0.007420
+vn -0.569048 -0.068259 0.819466
+vn -0.996025 -0.086034 -0.023091
+vn -0.456806 -0.888792 -0.037111
+vn 0.101890 -0.993922 -0.041678
+vn -0.301964 -0.689965 0.657849
+vn 0.071897 -0.686443 0.723620
+vn -0.997124 -0.030689 -0.069299
+vn -0.878237 -0.021675 -0.477734
+vn -0.713689 -0.685249 -0.145195
+vn -0.605958 -0.688470 -0.398529
+vn -0.605958 -0.688470 -0.398529
+vn -0.000579 -0.999946 -0.010349
+vn -0.713689 -0.685249 -0.145195
+vn -0.252473 -0.886856 0.386968
+vn 0.710836 -0.702786 0.028359
+vn 0.619179 -0.673584 0.403612
+vn 0.023203 -0.998240 -0.054585
+vn -0.035429 -0.860918 0.507508
+vn 0.587183 0.639415 0.496350
+vn -0.073323 0.785051 0.615076
+vn 0.764460 -0.025088 0.644182
+vn -0.096628 -0.053346 0.993890
+vn -0.692722 0.619560 0.369163
+vn -0.874435 -0.050194 0.482540
+vn -0.073323 0.785051 0.615076
+vn -0.096628 -0.053346 0.993890
+vn -0.679844 -0.725530 -0.106857
+vn -0.664224 -0.694123 0.277490
+vn -0.998733 -0.050247 -0.002721
+vn -0.874435 -0.050194 0.482540
+vn 0.422698 -0.686630 0.591494
+vn 0.470543 -0.031170 0.881826
+vn -0.252473 -0.886856 0.386968
+vn -0.543828 -0.045203 0.837979
+vn 0.927266 -0.358616 0.107571
+vn 0.560119 -0.771026 0.302961
+vn 0.913111 -0.397751 0.089565
+vn 0.488744 -0.830428 0.267428
+vn 0.560119 -0.771026 0.302961
+vn 0.000001 -0.931726 0.363163
+vn 0.488744 -0.830428 0.267428
+vn 0.000001 -0.951657 0.307164
+vn 0.927266 -0.358616 0.107571
+vn 0.913111 -0.397751 0.089565
+vn 0.996278 -0.047767 -0.071749
+vn 0.995662 -0.053096 -0.076412
+vn -0.000001 0.764769 -0.644305
+vn 0.411989 0.689901 -0.595232
+vn -0.000004 0.815047 -0.579395
+vn 0.415857 0.735227 -0.535261
+vn 0.411989 0.689901 -0.595232
+vn 0.909205 0.283188 -0.305205
+vn 0.415857 0.735227 -0.535261
+vn 0.913835 0.295811 -0.278213
+vn 0.909205 0.283188 -0.305205
+vn 0.996278 -0.047767 -0.071749
+vn 0.913835 0.295811 -0.278213
+vn 0.995662 -0.053096 -0.076412
+vn -0.569048 -0.068259 0.819466
+vn -0.301964 -0.689965 0.657849
+vn -0.097769 -0.064636 0.993108
+vn 0.071897 -0.686443 0.723620
+vn -0.301964 -0.689965 0.657849
+vn -0.569048 -0.068259 0.819466
+vn -0.456806 -0.888792 -0.037111
+vn -0.996025 -0.086034 -0.023091
+vn -0.713689 -0.685249 -0.145195
+vn -0.252473 -0.886856 0.386968
+vn -0.997124 -0.030689 -0.069299
+vn -0.543828 -0.045203 0.837979
+vn 0.619179 -0.673584 0.403612
+vn 0.764460 -0.025088 0.644182
+vn -0.035429 -0.860918 0.507508
+vn -0.096628 -0.053346 0.993890
+vn -0.679844 -0.725530 -0.106857
+vn 0.023203 -0.998240 -0.054585
+vn -0.664224 -0.694123 0.277490
+vn -0.035429 -0.860918 0.507508
+vn -0.927267 -0.358616 0.107571
+vn -0.913111 -0.397751 0.089565
+vn -0.560119 -0.771026 0.302962
+vn -0.488743 -0.830429 0.267429
+vn -0.560119 -0.771026 0.302962
+vn -0.488743 -0.830429 0.267429
+vn 0.000001 -0.931726 0.363163
+vn 0.000001 -0.951657 0.307164
+vn -0.927267 -0.358616 0.107571
+vn -0.996278 -0.047767 -0.071749
+vn -0.913111 -0.397751 0.089565
+vn -0.995662 -0.053096 -0.076412
+vn -0.000001 0.764769 -0.644305
+vn -0.000004 0.815047 -0.579395
+vn -0.411988 0.689901 -0.595234
+vn -0.415857 0.735227 -0.535261
+vn -0.411988 0.689901 -0.595234
+vn -0.415857 0.735227 -0.535261
+vn -0.909205 0.283189 -0.305206
+vn -0.913835 0.295811 -0.278213
+vn -0.909205 0.283189 -0.305206
+vn -0.913835 0.295811 -0.278213
+vn -0.996278 -0.047767 -0.071749
+vn -0.995662 -0.053096 -0.076412
+vn -0.664224 -0.694123 0.277490
+vn -0.035429 -0.860918 0.507508
+vn -0.874435 -0.050194 0.482540
+vn -0.096628 -0.053346 0.993890
+vn 0.913111 -0.397751 0.089565
+vn 0.488744 -0.830428 0.267428
+vn 0.907854 -0.417596 0.037616
+vn 0.460644 -0.868244 0.184280
+vn 0.488744 -0.830428 0.267428
+vn 0.000001 -0.951657 0.307164
+vn 0.460644 -0.868244 0.184280
+vn 0.000000 -0.975400 0.220441
+vn 0.913111 -0.397751 0.089565
+vn 0.907854 -0.417596 0.037616
+vn 0.995662 -0.053096 -0.076412
+vn 0.995169 -0.044543 -0.087493
+vn -0.000004 0.815047 -0.579395
+vn 0.415857 0.735227 -0.535261
+vn -0.000002 0.903894 -0.427757
+vn 0.423720 0.812060 -0.401274
+vn 0.415857 0.735227 -0.535261
+vn 0.913835 0.295811 -0.278213
+vn 0.423720 0.812060 -0.401274
+vn 0.913882 0.334169 -0.230543
+vn 0.995662 -0.053096 -0.076412
+vn 0.995169 -0.044543 -0.087493
+vn 0.913835 0.295811 -0.278213
+vn 0.913882 0.334169 -0.230543
+vn -0.913111 -0.397751 0.089565
+vn -0.907854 -0.417596 0.037615
+vn -0.488743 -0.830429 0.267429
+vn -0.460644 -0.868244 0.184280
+vn -0.488743 -0.830429 0.267429
+vn -0.460644 -0.868244 0.184280
+vn 0.000001 -0.951657 0.307164
+vn 0.000000 -0.975400 0.220441
+vn -0.913111 -0.397751 0.089565
+vn -0.995662 -0.053096 -0.076412
+vn -0.907854 -0.417596 0.037615
+vn -0.995169 -0.044543 -0.087493
+vn -0.000004 0.815047 -0.579395
+vn -0.000002 0.903894 -0.427757
+vn -0.415857 0.735227 -0.535261
+vn -0.423721 0.812060 -0.401273
+vn -0.415857 0.735227 -0.535261
+vn -0.423721 0.812060 -0.401273
+vn -0.913835 0.295811 -0.278213
+vn -0.913882 0.334169 -0.230543
+vn -0.995662 -0.053096 -0.076412
+vn -0.913835 0.295811 -0.278213
+vn -0.995169 -0.044543 -0.087493
+vn -0.913882 0.334169 -0.230543
+vn 0.907854 -0.417596 0.037616
+vn 0.460644 -0.868244 0.184280
+vn 0.912389 -0.409322 -0.001580
+vn 0.474290 -0.874235 0.103743
+vn 0.460644 -0.868244 0.184280
+vn 0.000000 -0.975400 0.220441
+vn 0.474290 -0.874235 0.103743
+vn -0.000001 -0.990837 0.135063
+vn 0.907854 -0.417596 0.037616
+vn 0.912389 -0.409322 -0.001580
+vn 0.995169 -0.044543 -0.087493
+vn 0.996150 -0.027641 -0.083193
+vn -0.000002 0.903894 -0.427757
+vn 0.423720 0.812060 -0.401274
+vn -0.000001 0.958942 -0.283603
+vn 0.435295 0.858344 -0.271595
+vn 0.423720 0.812060 -0.401274
+vn 0.913882 0.334169 -0.230543
+vn 0.435295 0.858344 -0.271595
+vn 0.915487 0.363487 -0.172515
+vn 0.995169 -0.044543 -0.087493
+vn 0.996150 -0.027641 -0.083193
+vn 0.913882 0.334169 -0.230543
+vn 0.915487 0.363487 -0.172515
+vn -0.907854 -0.417596 0.037615
+vn -0.912389 -0.409322 -0.001580
+vn -0.460644 -0.868244 0.184280
+vn -0.474292 -0.874234 0.103743
+vn -0.460644 -0.868244 0.184280
+vn -0.474292 -0.874234 0.103743
+vn 0.000000 -0.975400 0.220441
+vn -0.000001 -0.990837 0.135063
+vn -0.907854 -0.417596 0.037615
+vn -0.995169 -0.044543 -0.087493
+vn -0.912389 -0.409322 -0.001580
+vn -0.996150 -0.027641 -0.083193
+vn -0.000002 0.903894 -0.427757
+vn -0.000001 0.958942 -0.283603
+vn -0.423721 0.812060 -0.401273
+vn -0.435299 0.858342 -0.271595
+vn -0.423721 0.812060 -0.401273
+vn -0.435299 0.858342 -0.271595
+vn -0.913882 0.334169 -0.230543
+vn -0.915486 0.363488 -0.172516
+vn -0.995169 -0.044543 -0.087493
+vn -0.913882 0.334169 -0.230543
+vn -0.996150 -0.027641 -0.083193
+vn -0.915486 0.363488 -0.172516
+vn 0.912389 -0.409322 -0.001580
+vn 0.474290 -0.874235 0.103743
+vn 0.913128 -0.402597 -0.064139
+vn 0.492209 -0.869811 -0.034048
+vn 0.474290 -0.874235 0.103743
+vn -0.000001 -0.990837 0.135063
+vn 0.492209 -0.869811 -0.034048
+vn 0.000000 -0.999725 -0.023460
+vn 0.912389 -0.409322 -0.001580
+vn 0.913128 -0.402597 -0.064139
+vn 0.996150 -0.027641 -0.083193
+vn 0.995901 -0.016645 -0.088909
+vn -0.000001 0.958942 -0.283603
+vn 0.435295 0.858344 -0.271595
+vn -0.000004 0.982932 -0.183971
+vn 0.433637 0.883884 -0.175238
+vn 0.435295 0.858344 -0.271595
+vn 0.915487 0.363487 -0.172515
+vn 0.433637 0.883884 -0.175238
+vn 0.914275 0.383541 -0.130378
+vn 0.996150 -0.027641 -0.083193
+vn 0.995901 -0.016645 -0.088909
+vn 0.915487 0.363487 -0.172515
+vn 0.914275 0.383541 -0.130378
+vn -0.912389 -0.409322 -0.001580
+vn -0.913128 -0.402597 -0.064139
+vn -0.474292 -0.874234 0.103743
+vn -0.492210 -0.869811 -0.034048
+vn -0.474292 -0.874234 0.103743
+vn -0.492210 -0.869811 -0.034048
+vn -0.000001 -0.990837 0.135063
+vn 0.000000 -0.999725 -0.023460
+vn -0.912389 -0.409322 -0.001580
+vn -0.996150 -0.027641 -0.083193
+vn -0.913128 -0.402597 -0.064139
+vn -0.995901 -0.016645 -0.088910
+vn -0.000001 0.958942 -0.283603
+vn -0.000004 0.982932 -0.183971
+vn -0.435299 0.858342 -0.271595
+vn -0.433637 0.883884 -0.175238
+vn -0.435299 0.858342 -0.271595
+vn -0.433637 0.883884 -0.175238
+vn -0.915486 0.363488 -0.172516
+vn -0.914274 0.383542 -0.130378
+vn -0.996150 -0.027641 -0.083193
+vn -0.915486 0.363488 -0.172516
+vn -0.995901 -0.016645 -0.088910
+vn -0.914274 0.383542 -0.130378
+vn 0.492209 -0.869811 -0.034048
+vn 0.491476 -0.840697 -0.227331
+vn 0.913128 -0.402597 -0.064139
+vn 0.904228 -0.390867 -0.172033
+vn 0.000000 -0.999725 -0.023460
+vn 0.000000 -0.970457 -0.241275
+vn 0.492209 -0.869811 -0.034048
+vn 0.491476 -0.840697 -0.227331
+vn 0.913128 -0.402597 -0.064139
+vn 0.904228 -0.390867 -0.172033
+vn 0.995901 -0.016645 -0.088909
+vn 0.991123 0.011705 -0.132435
+vn -0.000004 0.982932 -0.183971
+vn 0.433637 0.883884 -0.175238
+vn -0.000006 0.992882 -0.119100
+vn 0.332771 0.936459 -0.110946
+vn 0.914275 0.383541 -0.130378
+vn 0.866522 0.482012 -0.129631
+vn 0.433637 0.883884 -0.175238
+vn 0.332771 0.936459 -0.110946
+vn 0.995901 -0.016645 -0.088909
+vn 0.991123 0.011705 -0.132435
+vn 0.914275 0.383541 -0.130378
+vn 0.866522 0.482012 -0.129631
+vn -0.492210 -0.869811 -0.034048
+vn -0.913128 -0.402597 -0.064139
+vn -0.491477 -0.840697 -0.227331
+vn -0.904228 -0.390867 -0.172033
+vn 0.000000 -0.999725 -0.023460
+vn -0.492210 -0.869811 -0.034048
+vn 0.000000 -0.970457 -0.241275
+vn -0.491477 -0.840697 -0.227331
+vn -0.913128 -0.402597 -0.064139
+vn -0.995901 -0.016645 -0.088910
+vn -0.904228 -0.390867 -0.172033
+vn -0.991123 0.011705 -0.132435
+vn -0.000004 0.982932 -0.183971
+vn -0.000006 0.992882 -0.119100
+vn -0.433637 0.883884 -0.175238
+vn -0.332773 0.936458 -0.110945
+vn -0.914274 0.383542 -0.130378
+vn -0.433637 0.883884 -0.175238
+vn -0.866521 0.482013 -0.129630
+vn -0.332773 0.936458 -0.110945
+vn -0.995901 -0.016645 -0.088910
+vn -0.914274 0.383542 -0.130378
+vn -0.991123 0.011705 -0.132435
+vn -0.866521 0.482013 -0.129630
+vn 0.000000 -0.970457 -0.241275
+vn 0.000000 -0.927112 -0.374785
+vn 0.491476 -0.840697 -0.227331
+vn 0.496056 -0.791037 -0.358035
+vn 0.491476 -0.840697 -0.227331
+vn 0.496056 -0.791037 -0.358035
+vn 0.904228 -0.390867 -0.172033
+vn 0.900588 -0.354258 -0.251879
+vn 0.904228 -0.390867 -0.172033
+vn 0.900588 -0.354258 -0.251879
+vn 0.991123 0.011705 -0.132435
+vn 0.980090 0.078346 -0.182443
+vn -0.000006 0.992882 -0.119100
+vn 0.332771 0.936459 -0.110946
+vn -0.332773 0.936458 -0.110945
+vn 0.000000 0.995193 -0.097937
+vn 0.991123 0.011705 -0.132435
+vn 0.980090 0.078346 -0.182443
+vn 0.866522 0.482012 -0.129631
+vn 0.745587 0.654342 -0.126240
+vn 0.332771 0.936459 -0.110946
+vn 0.866522 0.482012 -0.129631
+vn 0.000000 0.995193 -0.097937
+vn 0.745587 0.654342 -0.126240
+vn 0.000000 -0.970457 -0.241275
+vn -0.491477 -0.840697 -0.227331
+vn 0.000000 -0.927112 -0.374785
+vn -0.496057 -0.791037 -0.358035
+vn -0.491477 -0.840697 -0.227331
+vn -0.904228 -0.390867 -0.172033
+vn -0.496057 -0.791037 -0.358035
+vn -0.900589 -0.354255 -0.251878
+vn -0.904228 -0.390867 -0.172033
+vn -0.991123 0.011705 -0.132435
+vn -0.900589 -0.354255 -0.251878
+vn -0.980090 0.078346 -0.182443
+vn -0.991123 0.011705 -0.132435
+vn -0.866521 0.482013 -0.129630
+vn -0.980090 0.078346 -0.182443
+vn -0.745585 0.654345 -0.126239
+vn -0.332773 0.936458 -0.110945
+vn 0.000000 0.995193 -0.097937
+vn -0.866521 0.482013 -0.129630
+vn -0.745585 0.654345 -0.126239
+vn 0.000000 -0.927112 -0.374785
+vn 0.000000 -0.879437 -0.476016
+vn 0.496056 -0.791037 -0.358035
+vn 0.491354 -0.624034 -0.607580
+vn 0.900588 -0.354258 -0.251879
+vn 0.496056 -0.791037 -0.358035
+vn 0.871839 -0.342007 -0.350610
+vn 0.491354 -0.624034 -0.607580
+vn 0.900588 -0.354258 -0.251879
+vn 0.871839 -0.342007 -0.350610
+vn 0.980090 0.078346 -0.182443
+vn 0.891804 0.200530 -0.405553
+vn 0.745587 0.654342 -0.126240
+vn 0.980090 0.078346 -0.182443
+vn 0.692547 0.700998 -0.170236
+vn 0.891804 0.200530 -0.405553
+vn 0.745587 0.654342 -0.126240
+vn 0.692547 0.700998 -0.170236
+vn 0.000000 0.995193 -0.097937
+vn -0.000003 0.956366 -0.292171
+vn 0.000000 -0.927112 -0.374785
+vn -0.496057 -0.791037 -0.358035
+vn 0.000000 -0.879437 -0.476016
+vn -0.491354 -0.624034 -0.607580
+vn -0.900589 -0.354255 -0.251878
+vn -0.871840 -0.342006 -0.350609
+vn -0.496057 -0.791037 -0.358035
+vn -0.491354 -0.624034 -0.607580
+vn -0.900589 -0.354255 -0.251878
+vn -0.980090 0.078346 -0.182443
+vn -0.871840 -0.342006 -0.350609
+vn -0.891804 0.200535 -0.405551
+vn -0.745585 0.654345 -0.126239
+vn -0.692548 0.700997 -0.170236
+vn -0.980090 0.078346 -0.182443
+vn -0.891804 0.200535 -0.405551
+vn -0.745585 0.654345 -0.126239
+vn 0.000000 0.995193 -0.097937
+vn -0.692548 0.700997 -0.170236
+vn -0.000003 0.956366 -0.292171
+vn 0.000000 -0.879437 -0.476016
+vn -0.491354 -0.624034 -0.607580
+vn 0.491354 -0.624034 -0.607580
+vn -0.000002 0.297076 -0.954854
+vn 0.871839 -0.342007 -0.350610
+vn 0.491354 -0.624034 -0.607580
+vn 0.891804 0.200530 -0.405553
+vn -0.000002 0.297076 -0.954854
+vn 0.692547 0.700998 -0.170236
+vn 0.891804 0.200530 -0.405553
+vn -0.000003 0.956366 -0.292171
+vn -0.000002 0.297076 -0.954854
+vn -0.871840 -0.342006 -0.350609
+vn -0.891804 0.200535 -0.405551
+vn -0.491354 -0.624034 -0.607580
+vn -0.000002 0.297076 -0.954854
+vn -0.692548 0.700997 -0.170236
+vn -0.000003 0.956366 -0.292171
+vn -0.891804 0.200535 -0.405551
+vn -0.000002 0.297076 -0.954854
+vn 0.842209 -0.301714 0.446826
+vn 0.490732 -0.829858 0.265551
+vn 0.443542 -0.880971 0.164807
+vn 0.443542 -0.880971 0.164807
+vn 0.428649 -0.890211 0.154219
+vn 0.842209 -0.301714 0.446826
+vn 0.428649 -0.890211 0.154219
+vn 0.557730 -0.797058 0.231595
+vn 0.842209 -0.301714 0.446826
+vn 0.557730 -0.797058 0.231595
+vn 0.339167 -0.935837 0.095790
+vn 0.842209 -0.301714 0.446826
+vn 0.840957 -0.389976 0.375113
+vn 0.591405 -0.783039 0.192587
+vn 0.507272 -0.843656 0.175839
+vn 0.621329 -0.749180 0.229523
+vn 0.591405 -0.783039 0.192587
+vn 0.840957 -0.389976 0.375113
+vn 0.356900 -0.929141 0.096533
+vn 0.621329 -0.749180 0.229523
+vn 0.840957 -0.389976 0.375113
+vn 0.884366 -0.195531 0.423869
+vn 0.848742 -0.379498 0.368265
+vn 0.888964 -0.221293 0.400965
+vn 0.840957 -0.389976 0.375113
+vn 0.877013 -0.196902 0.438267
+vn 0.884366 -0.195531 0.423869
+vn 0.888964 -0.221293 0.400965
+vn 0.840957 -0.389976 0.375113
+vn 0.848742 -0.379498 0.368265
+vn 0.356900 -0.929141 0.096533
+vn 0.356900 -0.929141 0.096533
+vn 0.848742 -0.379498 0.368265
+vn 0.493956 -0.855310 0.156371
+vn 0.493956 -0.855310 0.156371
+vn 0.848742 -0.379498 0.368265
+vn 0.578108 -0.792663 0.193589
+vn 0.848742 -0.379498 0.368265
+vn 0.842209 -0.301714 0.446826
+vn 0.339167 -0.935837 0.095790
+vn 0.848742 -0.379498 0.368265
+vn 0.339167 -0.935837 0.095790
+vn 0.578108 -0.792663 0.193589
+vn 0.889527 -0.230052 0.394737
+vn 0.808135 -0.482080 0.338403
+vn 0.904702 -0.187571 0.382534
+vn 0.756582 -0.562955 0.332663
+vn 0.906734 -0.173320 0.384439
+vn 0.889527 -0.230052 0.394737
+vn 0.904702 -0.187571 0.382534
+vn 0.840957 -0.389976 0.375113
+vn 0.507272 -0.843656 0.175839
+vn 0.573839 -0.786285 0.229052
+vn 0.840957 -0.389976 0.375113
+vn 0.573839 -0.786285 0.229052
+vn 0.604403 -0.765261 0.221524
+vn 0.604403 -0.765261 0.221524
+vn 0.509438 -0.842490 0.175167
+vn 0.840957 -0.389976 0.375113
+vn 0.840957 -0.389976 0.375113
+vn 0.509438 -0.842490 0.175167
+vn 0.808135 -0.482080 0.338403
+vn 0.393877 -0.908493 0.139646
+vn 0.808135 -0.482080 0.338403
+vn 0.393877 -0.908493 0.139646
+vn 0.456586 -0.873470 0.169053
+vn 0.808135 -0.482080 0.338403
+vn 0.456586 -0.873470 0.169053
+vn 0.492928 -0.853353 0.169739
+vn 0.808135 -0.482080 0.338403
+vn 0.492928 -0.853353 0.169739
+vn 0.448239 -0.883399 0.136706
+vn 0.380276 -0.916433 0.124661
+vn 0.756582 -0.562955 0.332663
+vn 0.448239 -0.883399 0.136706
+vn 0.808135 -0.482080 0.338403
+vn 0.901984 0.166143 0.398523
+vn 0.943025 0.227116 0.243152
+vn 0.871800 0.401035 0.281311
+vn 0.943025 0.227116 0.243152
+vn 0.938020 0.310128 0.154725
+vn 0.871800 0.401035 0.281311
+vn 0.897836 0.410845 0.158418
+vn 0.900319 0.412764 0.138031
+vn 0.897836 0.410845 0.158418
+vn 0.938020 0.310128 0.154725
+vn 0.927249 0.361041 -0.099292
+vn 0.900319 0.412764 0.138031
+vn 0.927249 0.361041 -0.099292
+vn 0.938020 0.310128 0.154725
+vn 0.979816 0.137442 0.145153
+vn 0.380083 -0.923425 0.053136
+vn 0.689265 -0.722296 0.056597
+vn 0.216646 -0.975836 -0.028430
+vn 0.544476 0.250647 -0.800451
+vn 0.647946 -0.090056 -0.756344
+vn 0.743929 0.166526 -0.647178
+vn 0.737624 -0.092157 -0.668893
+s off
+g pSphere3
+usemtl lambert2SG
+f 1/1/1 2/2/2 3/3/3
+s 1
+f 4/4/4 2/2/5 5/5/6
+f 5/5/6 2/2/5 1/1/7
+s 2
+f 2/2/8 6/6/9 3/3/10
+f 3/3/10 6/6/9 7/7/11
+s 3
+f 8/8/12 6/6/13 4/4/14
+f 4/4/14 6/6/13 2/2/15
+s 4
+f 13/9/16 8/8/17 14/10/18
+f 14/10/18 8/8/17 4/4/19
+s 5
+f 9/13/20 6/6/21 16/12/22
+f 15/11/23 16/12/22 8/8/24
+f 6/6/21 8/8/24 16/12/22
+s 6
+f 13/9/25 21/14/26 8/8/27
+f 8/8/27 21/14/26 15/11/28
+s 7
+f 7/7/29 6/6/30 10/15/31
+f 10/15/31 6/6/30 9/13/32
+s 8
+f 3/3/33 7/7/34 12/17/35
+f 12/17/35 7/7/34 11/16/36
+s 9
+f 7/7/37 10/15/38 11/16/39
+f 11/16/39 10/15/38 17/18/40
+s 10
+f 19/20/41 10/15/42 18/19/43
+f 10/15/42 9/13/44 18/19/43
+f 18/19/43 9/13/44 20/21/45
+s 11
+f 10/15/46 19/20/47 17/18/48
+f 17/18/48 19/20/47 22/22/49
+s off
+f 19/20/50 18/19/51 23/23/52
+s 12
+f 22/22/53 19/20/54 24/24/55
+f 24/24/55 19/20/54 23/23/56
+s off
+f 9/13/57 16/12/58 20/21/59
+s 13
+f 25/25/60 26/26/61 28/28/62
+f 28/28/62 26/26/61 27/27/63
+s 14
+f 30/29/64 26/26/65 31/30/66
+f 31/30/66 26/26/65 25/25/67
+s 15
+f 26/26/68 32/31/69 27/27/70
+f 27/27/70 32/31/69 33/32/71
+s 16
+f 30/29/72 36/33/73 26/26/74
+f 26/26/74 36/33/73 32/31/75
+s 17
+f 37/34/76 33/32/77 39/36/78
+f 33/32/77 32/31/79 39/36/78
+f 32/31/79 38/35/80 39/36/78
+s 18
+f 27/37/81 33/38/82 41/40/83
+f 41/40/83 33/38/82 40/39/84
+s 19
+f 43/41/85 36/33/86 44/42/87
+f 44/42/87 36/33/86 30/29/88
+s 20
+f 36/33/89 45/43/90 32/31/91
+f 32/31/91 45/43/90 38/35/92
+s off
+f 40/44/93 33/32/94 37/34/95
+s 21
+f 52/46/96 45/43/97 51/45/98
+f 51/45/98 45/43/97 43/41/99
+f 36/33/100 43/41/99 45/43/97
+s 22
+f 38/35/101 45/43/102 53/47/103
+f 53/47/103 45/43/102 55/49/104
+f 45/43/102 54/48/105 55/49/104
+s 23
+f 45/43/106 52/46/107 54/48/108
+f 70/51/109 54/48/108 68/50/110
+f 54/48/108 52/46/107 68/50/110
+s 24
+f 53/47/111 57/52/112 38/35/113
+f 38/35/113 57/52/112 39/36/114
+s 25
+f 35/57/115 31/53/116 29/56/117
+f 31/53/116 25/54/118 29/56/117
+f 25/54/118 28/55/119 29/56/117
+s off
+f 28/55/120 27/58/121 34/59/122
+f 35/57/123 30/60/124 31/53/125
+s 26
+f 28/55/126 34/59/127 29/56/128
+f 29/56/128 34/59/127 50/61/129
+s 27
+f 35/57/130 42/62/131 30/60/132
+f 30/60/132 42/62/131 44/63/133
+s 28
+f 37/65/134 39/66/135 46/64/136
+f 46/64/136 39/66/135 47/67/137
+s off
+f 40/44/138 49/68/139 41/69/140
+s 29
+f 49/71/141 34/59/142 41/70/143
+f 41/70/143 34/59/142 27/58/144
+s 30
+f 51/72/145 43/73/146 42/62/147
+f 42/62/147 43/73/146 44/63/148
+s 31
+f 47/75/149 56/76/150 46/74/151
+f 46/74/151 56/76/150 64/77/152
+s 32
+f 37/34/153 46/74/154 40/44/155
+f 49/68/156 40/44/155 48/78/157
+f 46/74/154 48/78/157 40/44/155
+s off
+f 57/79/158 47/67/159 39/66/160
+s 33
+f 34/59/161 49/71/162 50/61/163
+f 50/61/163 49/71/162 48/80/164
+s 34
+f 50/61/165 58/81/166 29/56/167
+f 29/56/167 58/81/166 59/82/168
+s 35
+f 29/84/169 59/85/170 35/83/171
+f 35/83/171 59/85/170 60/86/172
+s 36
+f 35/83/173 60/86/174 42/87/175
+f 42/87/175 60/86/174 66/88/176
+s 37
+f 42/62/177 61/89/178 51/72/179
+f 51/72/179 61/89/178 52/90/180
+s off
+f 68/91/181 52/90/182 61/89/183
+s 38
+f 47/67/184 53/93/185 62/92/186
+f 62/92/186 53/93/185 55/94/187
+s 39
+f 47/75/188 62/95/189 56/76/190
+f 56/76/190 62/95/189 74/96/191
+s 40
+f 46/74/192 64/77/193 48/78/194
+f 48/78/194 64/77/193 76/97/195
+s off
+f 53/93/196 47/67/197 57/79/198
+s 41
+f 58/81/199 50/61/200 65/98/201
+f 65/98/201 50/61/200 77/99/202
+s 42
+f 61/101/203 42/87/204 67/100/205
+f 67/100/205 42/87/204 66/88/206
+s 43
+f 69/103/207 62/92/208 63/102/209
+f 63/102/209 62/92/208 55/94/210
+s off
+f 69/103/211 63/102/212 73/104/213
+s 44
+f 56/76/214 75/105/215 64/77/216
+f 64/77/216 75/105/215 86/106/217
+s 45
+f 50/108/218 48/78/219 77/107/220
+f 77/107/220 48/78/219 76/97/221
+s 46
+f 65/110/222 78/111/223 58/109/224
+f 58/109/224 78/111/223 79/112/225
+s 47
+f 58/109/226 79/112/227 59/85/228
+f 59/85/228 79/112/227 80/113/229
+s 48
+f 59/85/230 80/113/231 60/86/232
+f 60/86/232 80/113/231 87/114/233
+s 49
+f 66/88/234 60/86/235 81/115/236
+f 81/115/236 60/86/235 87/114/237
+s 50
+f 67/100/238 82/116/239 61/101/240
+f 61/101/240 82/116/239 90/117/241
+s 51
+f 62/95/242 69/118/243 74/96/244
+f 74/96/244 69/118/243 92/119/245
+s off
+f 71/120/246 84/121/247 72/122/248
+f 72/123/249 84/124/250 69/103/251
+s 52
+f 74/96/252 85/125/253 56/76/254
+f 56/76/254 85/125/253 75/105/255
+s 53
+f 64/77/256 86/106/257 76/97/258
+f 76/97/258 86/106/257 95/126/259
+s 54
+f 65/110/260 77/107/261 78/111/262
+f 78/111/262 77/107/261 96/127/263
+s 55
+f 81/115/264 88/128/265 66/88/266
+f 66/88/266 88/128/265 67/100/267
+s 56
+f 82/116/268 67/100/269 89/129/270
+f 89/129/270 67/100/269 88/128/271
+s 57
+f 61/89/272 91/130/273 68/91/274
+f 68/91/274 91/130/273 83/131/275
+s 58
+f 83/132/276 91/133/277 71/135/278
+f 71/135/278 91/133/277 84/134/279
+s 59
+f 69/118/280 84/121/281 92/119/282
+f 92/119/282 84/121/281 102/136/283
+s 60
+f 74/96/284 92/119/285 85/125/286
+f 85/125/286 92/119/285 103/137/287
+s 61
+f 85/139/288 93/140/289 75/138/290
+f 75/138/290 93/140/289 94/141/291
+s 62
+f 75/105/292 94/142/293 86/106/294
+f 86/106/294 94/142/293 105/143/295
+s 63
+f 77/107/296 76/97/297 96/127/298
+f 96/127/298 76/97/297 95/126/299
+s 64
+f 78/111/300 97/144/301 79/112/302
+f 79/112/302 97/144/301 98/145/303
+s 65
+f 79/112/304 98/145/305 80/113/306
+f 80/113/306 98/145/305 99/146/307
+s 66
+f 80/113/308 99/146/309 87/114/310
+f 87/114/310 99/146/309 106/147/311
+s 67
+f 88/128/312 81/115/313 100/148/314
+f 100/148/314 81/115/313 101/149/315
+s 68
+f 81/115/316 87/114/317 101/149/318
+f 101/149/318 87/114/317 106/147/319
+s 69
+f 82/116/320 89/129/321 90/117/322
+f 90/117/322 89/129/321 108/150/323
+s 70
+f 61/101/324 90/117/325 91/151/326
+f 91/151/326 90/117/325 109/152/327
+s 71
+f 84/121/328 91/151/329 102/136/330
+f 102/136/330 91/151/329 109/152/331
+s 72
+f 93/140/332 85/139/333 104/153/334
+f 104/153/334 85/139/333 110/154/335
+s 73
+f 86/106/336 105/143/337 95/126/338
+f 95/126/338 105/143/337 114/155/339
+s 74
+f 78/111/340 96/127/341 97/144/342
+f 97/144/342 96/127/341 115/156/343
+s 75
+f 100/148/344 107/157/345 88/128/346
+f 88/128/346 107/157/345 89/129/347
+s 76
+f 92/119/348 102/136/349 103/137/350
+f 103/137/350 102/136/349 119/158/351
+s 77
+f 85/125/352 103/137/353 110/159/354
+f 110/159/354 103/137/353 120/160/355
+s 78
+f 104/162/356 111/163/357 93/161/358
+f 93/161/358 111/163/357 112/164/359
+s 79
+f 93/140/360 112/165/361 94/141/362
+f 94/141/362 112/165/361 113/166/363
+s 80
+f 94/142/364 113/167/365 105/143/366
+f 105/143/366 113/167/365 122/168/367
+s 81
+f 96/127/368 95/126/369 115/156/370
+f 115/156/370 95/126/369 114/155/371
+s 82
+f 97/144/372 116/169/373 98/145/374
+f 98/145/374 116/169/373 117/170/375
+s 83
+f 98/145/376 117/170/377 99/146/378
+f 99/146/378 117/170/377 106/147/379
+s 84
+f 100/148/380 117/170/381 107/157/382
+f 107/157/382 117/170/381 124/171/383
+s 85
+f 100/148/384 101/149/385 117/170/386
+f 117/170/386 101/149/385 106/147/387
+s 86
+f 107/157/388 118/172/389 89/129/390
+f 89/129/390 118/172/389 108/150/391
+s 87
+f 90/117/392 108/150/393 109/152/394
+f 109/152/394 108/150/393 125/173/395
+s 88
+f 102/136/396 109/152/397 119/158/398
+f 119/158/398 109/152/397 125/173/399
+s 89
+f 110/159/400 121/174/401 104/162/402
+f 104/162/402 121/174/401 111/163/403
+s 90
+f 105/143/404 122/168/405 114/155/406
+f 114/155/406 122/168/405 130/175/407
+s 91
+f 115/156/408 123/176/409 97/144/410
+f 97/144/410 123/176/409 116/169/411
+s 92
+f 107/157/412 124/171/413 118/172/414
+f 118/172/414 124/171/413 134/177/415
+s 93
+f 108/150/416 118/172/417 125/173/418
+f 125/173/418 118/172/417 135/178/419
+s 94
+f 103/180/420 119/181/421 120/179/422
+f 120/179/422 119/181/421 136/182/423
+s 95
+f 120/160/424 126/183/425 110/159/426
+f 110/159/426 126/183/425 121/174/427
+s 96
+f 111/163/428 121/174/429 127/184/430
+f 127/184/430 121/174/429 138/185/431
+s 97
+f 111/163/432 127/184/433 112/164/434
+f 112/164/434 127/184/433 128/186/435
+s 98
+f 112/164/436 128/186/437 113/167/438
+f 113/167/438 128/186/437 129/187/439
+s 99
+f 113/167/440 129/187/441 122/168/442
+f 122/168/442 129/187/441 139/188/443
+s 100
+f 115/156/444 114/155/445 123/176/446
+f 123/176/446 114/155/445 130/175/447
+s 101
+f 123/176/448 131/189/449 116/169/450
+f 116/169/450 131/189/449 132/190/451
+s 102
+f 116/169/452 132/190/453 117/170/454
+f 117/170/454 132/190/453 133/191/455
+s 103
+f 117/170/456 133/191/457 124/171/458
+f 124/171/458 133/191/457 142/192/459
+s 104
+f 119/158/460 125/173/461 136/193/462
+f 136/193/462 125/173/461 135/178/463
+s 105
+f 120/160/464 136/193/465 126/183/466
+f 126/183/466 136/193/465 143/194/467
+s 106
+f 126/183/468 137/195/469 121/174/470
+f 121/174/470 137/195/469 138/185/471
+s 107
+f 122/168/472 140/196/473 130/175/474
+f 130/175/474 140/196/473 148/197/475
+s 108
+f 131/189/476 123/176/477 141/198/478
+f 141/198/478 123/176/477 149/199/479
+s 109
+f 124/171/480 142/192/481 134/177/482
+f 134/177/482 142/192/481 154/200/483
+s 110
+f 118/172/484 134/177/485 135/178/486
+f 135/178/486 134/177/485 155/201/487
+s 111
+f 137/195/488 126/183/489 144/202/490
+f 144/202/490 126/183/489 143/194/491
+s 112
+f 127/184/492 138/185/493 145/203/494
+f 145/203/494 138/185/493 156/204/495
+s 113
+f 127/184/496 145/203/497 128/186/498
+f 128/186/498 145/203/497 146/205/499
+s 114
+f 128/186/500 146/205/501 129/187/502
+f 129/187/502 146/205/501 139/188/503
+s 115
+f 139/188/504 147/206/505 122/168/506
+f 122/168/506 147/206/505 140/196/507
+s 116
+f 123/176/508 130/175/509 149/199/510
+f 149/199/510 130/175/509 148/197/511
+s 117
+f 141/198/512 150/207/513 131/189/514
+f 131/189/514 150/207/513 151/208/515
+s 118
+f 131/189/516 151/208/517 132/190/518
+f 132/190/518 151/208/517 152/209/519
+s 119
+f 132/190/520 152/209/521 133/191/522
+f 133/191/522 152/209/521 162/210/523
+s 120
+f 142/192/524 133/191/525 153/211/526
+f 153/211/526 133/191/525 162/210/527
+s 121
+f 136/193/528 135/178/529 143/194/530
+f 143/194/530 135/178/529 155/201/531
+s 122
+f 144/202/532 156/204/533 137/195/534
+f 137/195/534 156/204/533 138/185/535
+s 123
+f 147/206/536 139/188/537 157/212/538
+f 157/212/538 139/188/537 146/205/539
+s 124
+f 140/214/540 147/215/541 158/213/542
+f 158/213/542 147/215/541 168/216/543
+s 125
+f 148/197/544 140/196/545 159/217/546
+f 159/217/546 140/196/545 158/218/547
+s 126
+f 150/207/548 141/198/549 160/219/550
+f 160/219/550 141/198/549 161/220/551
+s 127
+f 141/198/552 149/199/553 161/220/554
+f 161/220/554 149/199/553 170/221/555
+s 128
+f 153/211/556 163/222/557 142/192/558
+f 142/192/558 163/222/557 154/200/559
+s 129
+f 154/200/560 164/223/561 134/177/562
+f 134/177/562 164/223/561 155/201/563
+s 130
+f 144/202/564 143/194/565 165/224/566
+f 165/224/566 143/194/565 178/225/567
+s 131
+f 156/204/568 144/202/569 166/226/570
+f 166/226/570 144/202/569 165/224/571
+s 132
+f 145/203/572 156/204/573 167/227/574
+f 167/227/574 156/204/573 179/228/575
+s 133
+f 146/205/576 145/203/577 157/212/578
+f 157/212/578 145/203/577 167/227/579
+s 134
+f 147/206/580 157/212/581 168/229/582
+f 168/229/582 157/212/581 180/230/583
+s 135
+f 148/197/584 159/217/585 169/231/586
+f 169/231/586 159/217/585 183/232/587
+s 136
+f 149/199/588 148/197/589 170/221/590
+f 170/221/590 148/197/589 169/231/591
+s 137
+f 160/219/592 171/233/593 150/207/594
+f 150/207/594 171/233/593 185/234/595
+s 138
+f 151/208/596 150/207/597 172/235/598
+f 172/235/598 150/207/597 185/234/599
+s 139
+f 151/208/600 173/236/601 152/209/602
+f 152/209/602 173/236/601 174/237/603
+s 140
+f 152/209/604 174/237/605 162/210/606
+f 162/210/606 174/237/605 188/238/607
+s 141
+f 153/211/608 162/210/609 175/239/610
+f 175/239/610 162/210/609 189/240/611
+s 142
+f 163/222/612 153/211/613 176/241/614
+f 176/241/614 153/211/613 175/239/615
+s 143
+f 164/223/616 154/200/617 177/242/618
+f 177/242/618 154/200/617 163/222/619
+s 144
+f 143/194/620 155/201/621 178/225/622
+f 178/225/622 155/201/621 164/223/623
+s 145
+f 156/204/624 166/226/625 179/228/626
+f 179/228/626 166/226/625 192/243/627
+s 146
+f 158/213/628 181/245/629 159/244/630
+f 159/244/630 181/245/629 196/246/631
+s 147
+f 158/213/632 168/216/633 182/247/634
+f 182/247/634 168/216/633 194/248/635
+s 148
+f 4235/250/636 4236/251/637 184/249/638
+f 184/249/638 4236/251/637 200/252/639
+s 149
+f 161/220/640 186/253/641 160/219/642
+f 160/219/642 186/253/641 201/254/643
+s off
+f 151/208/644 172/235/645 187/255/646
+s 150
+f 161/220/647 170/221/648 186/253/649
+f 186/253/649 170/221/648 197/256/650
+s 151
+f 151/208/651 187/255/652 173/236/653
+f 173/236/653 187/255/652 204/257/654
+s 152
+f 176/241/655 190/258/656 163/222/657
+f 163/222/657 190/258/656 177/242/658
+s 153
+f 177/242/659 191/259/660 164/223/661
+f 164/223/661 191/259/660 178/225/662
+s 154
+f 165/224/663 178/225/664 166/226/665
+f 166/226/665 178/225/664 191/259/666
+s 155
+f 167/227/667 179/228/668 193/260/669
+f 193/260/669 179/228/668 211/261/670
+s 156
+f 157/212/671 167/227/672 180/230/673
+f 180/230/673 167/227/672 193/260/674
+s 157
+f 168/216/675 180/262/676 194/248/677
+f 194/248/677 180/262/676 212/263/678
+s 158
+f 158/213/679 195/264/680 181/245/681
+f 181/245/681 195/264/680 213/265/682
+s 159
+f 158/213/683 182/247/684 195/264/685
+f 195/264/685 182/247/684 215/266/686
+s 160
+f 170/221/687 169/231/688 197/256/689
+f 197/256/689 169/231/688 198/267/690
+s 161
+f 169/269/691 183/270/692 198/268/693
+f 198/268/693 183/270/692 216/271/694
+s 162
+f 159/244/695 196/246/696 183/270/697
+f 183/270/697 196/246/696 217/272/698
+s 163
+f 172/274/699 202/275/700 187/273/701
+f 187/273/701 202/275/700 222/276/702
+s 164
+f 185/277/703 203/278/704 172/274/705
+f 172/274/705 203/278/704 202/275/706
+s 165
+f 174/237/707 173/236/708 205/279/709
+f 205/279/709 173/236/708 226/280/710
+s 166
+f 174/237/711 205/279/712 188/238/713
+f 188/238/713 205/279/712 227/281/714
+s 167
+f 162/210/715 188/238/716 189/240/717
+f 189/240/717 188/238/716 228/282/718
+s 168
+f 189/240/719 206/283/720 175/239/721
+f 175/239/721 206/283/720 230/284/722
+s 169
+f 176/241/723 175/239/724 207/285/725
+f 207/285/725 175/239/724 230/284/726
+s 170
+f 190/258/727 176/241/728 208/286/729
+f 208/286/729 176/241/728 207/285/730
+s 171
+f 191/259/731 177/242/732 209/287/733
+f 209/287/733 177/242/732 190/258/734
+s 172
+f 166/226/735 191/259/736 192/243/737
+f 192/243/737 191/259/736 209/287/738
+s 173
+f 192/243/739 210/288/740 179/228/741
+f 179/228/741 210/288/740 211/261/742
+s 174
+f 196/246/743 181/245/744 214/289/745
+f 214/289/745 181/245/744 235/290/746
+s 175
+f 194/248/747 212/263/748 182/247/749
+f 182/247/749 212/263/748 237/291/750
+s 176
+f 4233/293/751 4234/294/752 219/292/753
+f 219/292/753 4234/294/752 241/295/754
+s 177
+f 4236/251/755 201/254/756 200/252/757
+f 200/252/757 201/254/756 242/296/758
+s 178
+f 220/297/759 185/277/760 244/299/761
+f 244/299/761 185/277/760 171/298/762
+s 179
+f 186/253/763 221/300/764 201/254/765
+f 201/254/765 221/300/764 245/301/766
+s off
+f 187/302/767 222/303/768 225/304/769
+s 180
+f 185/277/770 223/305/771 203/278/772
+f 203/278/772 223/305/771 248/306/773
+s 181
+f 197/256/774 224/307/775 186/253/776
+f 186/253/776 224/307/775 221/300/777
+s off
+f 204/308/778 187/302/779 225/304/780
+f 173/236/781 204/257/782 226/280/783
+s 182
+f 206/283/784 189/240/785 229/309/786
+f 229/309/786 189/240/785 228/282/787
+s 183
+f 190/258/788 208/286/789 231/310/790
+f 231/310/790 208/286/789 256/311/791
+s 184
+f 190/258/792 231/310/793 209/287/794
+f 209/287/794 231/310/793 232/312/795
+s 185
+f 210/288/796 192/243/797 232/312/798
+f 232/312/798 192/243/797 209/287/799
+s 186
+f 193/314/800 211/315/801 233/313/802
+f 233/313/802 211/315/801 259/316/803
+s 187
+f 180/262/804 193/314/805 212/263/806
+f 212/263/806 193/314/805 233/313/807
+s 188
+f 195/264/808 234/317/809 213/265/810
+f 213/265/810 234/317/809 260/318/811
+s 189
+f 181/245/812 213/265/813 235/290/814
+f 235/290/814 213/265/813 261/319/815
+s 190
+f 214/289/816 236/320/817 196/246/818
+f 196/246/818 236/320/817 217/272/819
+s 191
+f 195/264/820 215/266/821 234/317/822
+f 234/317/822 215/266/821 264/321/823
+s 192
+f 182/247/824 237/291/825 215/266/826
+f 215/266/826 237/291/825 264/321/827
+s 193
+f 197/256/828 198/267/829 224/307/830
+f 224/307/830 198/267/829 265/322/831
+s 194
+f 198/268/832 216/271/833 238/323/834
+f 238/323/834 216/271/833 266/324/835
+s 195
+f 183/270/836 217/272/837 216/271/838
+f 216/271/838 217/272/837 267/325/839
+s 196
+f 199/326/840 240/327/841 171/298/842
+f 171/298/842 240/327/841 271/328/843
+s off
+f 243/329/844 185/277/845 220/297/846
+f 244/299/847 171/298/848 271/328/849
+s 197
+f 203/278/850 246/330/851 202/275/852
+f 202/275/852 246/330/851 222/276/853
+s off
+f 223/305/854 185/277/855 247/331/856
+s 198
+f 205/279/857 226/280/858 249/332/859
+f 249/332/859 226/280/858 281/333/860
+s 199
+f 227/281/861 205/279/862 250/334/863
+f 250/334/863 205/279/862 249/332/864
+s 200
+f 227/281/865 251/335/866 188/238/867
+f 188/238/867 251/335/866 228/282/868
+s 201
+f 229/309/869 252/336/870 206/283/871
+f 206/283/871 252/336/870 253/337/872
+s 202
+f 206/283/873 253/337/874 230/284/875
+f 230/284/875 253/337/874 286/338/876
+s 203
+f 207/285/877 230/284/878 254/339/879
+f 254/339/879 230/284/878 286/338/880
+s 204
+f 208/286/881 207/285/882 255/340/883
+f 255/340/883 207/285/882 254/339/884
+s 205
+f 232/342/885 257/343/886 210/341/887
+f 210/341/887 257/343/886 258/344/888
+s 206
+f 210/341/889 258/344/890 211/315/891
+f 211/315/891 258/344/890 259/316/892
+s 207
+f 235/346/893 262/347/894 214/345/895
+f 214/345/895 262/347/894 291/348/896
+s 208
+f 236/350/897 214/345/898 263/349/899
+f 263/349/899 214/345/898 291/348/900
+s 209
+f 212/263/901 233/313/902 237/291/903
+f 237/291/903 233/313/902 259/316/904
+s 210
+f 198/267/905 238/351/906 265/322/907
+f 265/322/907 238/351/906 294/352/908
+s 211
+f 236/320/909 268/353/910 217/272/911
+f 217/272/911 268/353/910 267/325/912
+s off
+f 240/327/913 199/326/914 298/354/915
+s 212
+f 219/292/916 241/295/917 274/355/918
+f 274/355/918 241/295/917 303/356/919
+s 213
+f 241/295/920 4234/294/921 304/357/922
+f 304/357/922 4234/294/921 242/296/923
+s 214
+f 201/254/924 245/301/925 242/296/926
+f 242/296/926 245/301/925 305/358/927
+s 215
+f 243/329/928 275/359/929 185/277/930
+f 185/277/930 275/359/929 247/331/931
+s off
+f 276/360/932 220/361/933 244/362/934
+s 216
+f 224/307/935 277/363/936 221/300/937
+f 221/300/937 277/363/936 278/364/938
+s 217
+f 221/300/939 278/364/940 245/301/941
+f 245/301/941 278/364/940 308/365/942
+s off
+f 248/306/943 246/330/944 203/278/945
+s 218
+f 246/366/946 279/367/947 222/303/948
+f 222/303/948 279/367/947 225/304/949
+s off
+f 204/308/950 225/304/951 280/368/952
+s 219
+f 250/334/953 282/369/954 227/281/955
+f 227/281/955 282/369/954 283/370/956
+s 220
+f 227/281/957 283/370/958 251/335/959
+f 251/335/959 283/370/958 315/371/960
+s 221
+f 251/335/961 284/372/962 228/282/963
+f 228/282/963 284/372/962 229/309/964
+s 222
+f 252/336/965 229/309/966 285/373/967
+f 285/373/967 229/309/966 284/372/968
+s 223
+f 208/375/969 255/376/970 256/374/971
+f 256/374/971 255/376/970 318/377/972
+s 224
+f 231/379/973 256/374/974 287/378/975
+f 287/378/975 256/374/974 320/380/976
+s 225
+f 232/342/977 231/379/978 288/381/979
+f 288/381/979 231/379/978 287/378/980
+s 226
+f 232/342/981 289/382/982 257/343/983
+f 257/343/983 289/382/982 293/383/984
+s 227
+f 213/265/985 260/318/986 261/319/987
+f 261/319/987 260/318/986 322/384/988
+s 228
+f 234/317/989 289/382/990 260/318/991
+f 260/318/991 289/382/990 321/385/992
+s 229
+f 262/347/993 235/346/994 290/386/995
+f 290/386/995 235/346/994 324/387/996
+s 230
+f 263/349/997 292/388/998 236/350/999
+f 236/350/999 292/388/998 268/389/1000
+s 231
+f 264/321/1001 293/383/1002 234/317/1003
+f 234/317/1003 293/383/1002 289/382/1004
+s 232
+f 264/321/1005 237/291/1006 293/383/1007
+f 293/383/1007 237/291/1006 257/343/1008
+s 233
+f 224/307/1009 265/322/1010 277/363/1011
+f 277/363/1011 265/322/1010 328/390/1012
+s 234
+f 238/323/1013 266/324/1014 295/391/1015
+f 295/391/1015 266/324/1014 330/392/1016
+s 235
+f 266/324/1017 216/271/1018 296/393/1019
+f 296/393/1019 216/271/1018 267/325/1020
+s 236
+f 240/395/1021 299/396/1022 271/394/1023
+f 271/394/1023 299/396/1022 307/397/1024
+s 237
+f 219/399/1025 273/400/1026 302/398/1027
+f 302/398/1027 273/400/1026 339/401/1028
+s 238
+f 219/399/1029 274/402/1030 273/400/1031
+f 273/400/1031 274/402/1030 340/403/1032
+s off
+f 244/404/1033 306/405/1034 345/406/1035
+s 239
+f 244/404/1036 271/394/1037 306/405/1038
+f 306/405/1038 271/394/1037 307/397/1039
+s 240
+f 248/306/1040 309/407/1041 246/330/1042
+f 246/330/1042 309/407/1041 279/408/1043
+s 241
+f 225/410/1044 279/408/1045 310/409/1046
+f 310/409/1046 279/408/1045 350/411/1047
+s 242
+f 225/304/1048 311/412/1049 280/368/1050
+f 280/368/1050 311/412/1049 352/413/1051
+s 243
+f 250/334/1052 249/332/1053 312/414/1054
+f 312/414/1054 249/332/1053 281/333/1055
+s 244
+f 226/280/1056 313/415/1057 281/333/1058
+f 281/333/1058 313/415/1057 354/416/1059
+s 245
+f 282/369/1060 250/334/1061 314/417/1062
+f 314/417/1062 250/334/1061 312/414/1063
+s 246
+f 251/335/1064 315/371/1065 284/372/1066
+f 284/372/1066 315/371/1065 357/418/1067
+s 247
+f 252/420/1068 285/421/1069 316/419/1070
+f 316/419/1070 285/421/1069 358/422/1071
+s 248
+f 252/420/1072 316/419/1073 253/423/1074
+f 253/423/1074 316/419/1073 317/424/1075
+s 249
+f 253/423/1076 317/424/1077 286/425/1078
+f 286/425/1078 317/424/1077 319/426/1079
+s 250
+f 255/428/1080 254/429/1081 318/427/1082
+f 318/427/1082 254/429/1081 359/430/1083
+s 251
+f 286/425/1084 319/426/1085 254/429/1086
+f 254/429/1086 319/426/1085 359/430/1087
+s 252
+f 288/381/1088 321/385/1089 232/342/1090
+f 232/342/1090 321/385/1089 289/382/1091
+s 253
+f 257/343/1092 237/291/1093 258/344/1094
+f 258/344/1094 237/291/1093 259/316/1095
+s 254
+f 262/347/1096 290/386/1097 323/431/1098
+f 323/431/1098 290/386/1097 363/432/1099
+s 255
+f 291/348/1100 262/347/1101 325/433/1102
+f 325/433/1102 262/347/1101 323/431/1103
+s 256
+f 263/349/1104 291/348/1105 326/434/1106
+f 326/434/1106 291/348/1105 366/435/1107
+s 257
+f 292/388/1108 263/349/1109 327/436/1110
+f 327/436/1110 263/349/1109 326/434/1111
+s 258
+f 265/322/1112 294/352/1113 328/390/1114
+f 328/390/1114 294/352/1113 368/437/1115
+s 259
+f 294/439/1116 238/323/1117 329/438/1118
+f 329/438/1118 238/323/1117 295/391/1119
+s 260
+f 296/393/1120 331/440/1121 266/324/1122
+f 266/324/1122 331/440/1121 371/441/1123
+s 261
+f 267/325/1124 268/353/1125 296/393/1126
+f 296/393/1126 268/353/1125 372/442/1127
+s 262
+f 292/388/1128 332/443/1129 268/389/1130
+f 268/389/1130 332/443/1129 372/444/1131
+s 263
+f 298/445/1132 335/446/1133 240/395/1134
+f 240/395/1134 335/446/1133 299/396/1135
+s 264
+f 199/447/1136 336/448/1137 298/445/1138
+f 298/445/1138 336/448/1137 335/446/1139
+s off
+f 301/449/1140 219/399/1141 302/398/1142
+s 265
+f 274/451/1143 303/452/1144 341/450/1145
+f 341/450/1145 303/452/1144 382/453/1146
+s 266
+f 303/356/1147 241/295/1148 342/454/1149
+f 342/454/1149 241/295/1148 304/357/1150
+s 267
+f 242/296/1151 343/455/1152 304/357/1153
+f 304/357/1153 343/455/1152 385/456/1154
+s 268
+f 242/296/1155 305/358/1156 343/455/1157
+f 343/455/1157 305/358/1156 370/457/1158
+s 269
+f 245/301/1159 308/365/1160 305/358/1161
+f 305/358/1161 308/365/1160 386/458/1162
+s 270
+f 276/460/1163 344/461/1164 220/459/1165
+f 220/459/1165 344/461/1164 388/462/1166
+s 271
+f 244/404/1167 345/406/1168 276/460/1169
+f 276/460/1169 345/406/1168 344/461/1170
+s 272
+f 277/363/1171 346/463/1172 278/364/1173
+f 278/364/1173 346/463/1172 347/464/1174
+s 273
+f 278/364/1175 347/464/1176 308/365/1177
+f 308/365/1177 347/464/1176 391/465/1178
+s 274
+f 309/407/1179 248/306/1180 348/466/1181
+f 348/466/1181 248/306/1180 223/305/1182
+s 275
+f 309/407/1183 349/467/1184 279/408/1185
+f 279/408/1185 349/467/1184 350/411/1186
+s 276
+f 225/469/1187 310/470/1188 311/468/1189
+f 311/468/1189 310/470/1188 393/471/1190
+s off
+f 223/472/1191 351/473/1192 348/474/1193
+f 204/308/1194 280/368/1195 226/475/1196
+f 313/415/1197 226/280/1198 398/476/1199
+s 277
+f 312/414/1200 281/333/1201 353/477/1202
+f 353/477/1202 281/333/1201 354/416/1203
+s 278
+f 314/417/1204 355/478/1205 282/369/1206
+f 282/369/1206 355/478/1205 356/479/1207
+s 279
+f 282/369/1208 356/479/1209 283/370/1210
+f 283/370/1210 356/479/1209 403/480/1211
+s 280
+f 315/371/1212 283/370/1213 357/418/1214
+f 357/418/1214 283/370/1213 403/480/1215
+s 281
+f 284/481/1216 357/482/1217 285/421/1218
+f 285/421/1218 357/482/1217 404/483/1219
+s 282
+f 256/374/1220 318/377/1221 320/380/1222
+f 320/380/1222 318/377/1221 408/484/1223
+s 283
+f 320/380/1224 360/485/1225 287/378/1226
+f 287/378/1226 360/485/1225 361/486/1227
+s 284
+f 287/378/1228 361/486/1229 288/381/1230
+f 288/381/1230 361/486/1229 362/487/1231
+s 285
+f 288/381/1232 362/487/1233 321/385/1234
+f 321/385/1234 362/487/1233 411/488/1235
+s 286
+f 260/318/1236 321/385/1237 322/384/1238
+f 322/384/1238 321/385/1237 411/488/1239
+s 287
+f 290/386/1240 324/387/1241 364/489/1242
+f 364/489/1242 324/387/1241 414/490/1243
+s 288
+f 324/492/1244 235/290/1245 365/491/1246
+f 365/491/1246 235/290/1245 415/493/1247
+s 289
+f 291/348/1248 325/433/1249 366/435/1250
+f 366/435/1250 325/433/1249 416/494/1251
+s 290
+f 327/436/1252 367/495/1253 292/388/1254
+f 292/388/1254 367/495/1253 373/496/1255
+s 291
+f 277/363/1256 328/390/1257 346/463/1258
+f 346/463/1258 328/390/1257 419/497/1259
+s 292
+f 329/438/1260 369/498/1261 294/439/1262
+f 294/439/1262 369/498/1261 368/499/1263
+s 293
+f 329/500/1264 295/501/1265 370/457/1266
+f 370/457/1266 295/501/1265 343/455/1267
+s 294
+f 295/501/1268 330/502/1269 343/455/1270
+f 343/455/1270 330/502/1269 385/456/1271
+s 295
+f 266/324/1272 371/441/1273 330/392/1274
+f 330/392/1274 371/441/1273 421/503/1275
+s 296
+f 296/393/1276 372/442/1277 331/440/1278
+f 331/440/1278 372/442/1277 422/504/1279
+s 297
+f 292/388/1280 373/496/1281 332/443/1282
+f 332/443/1282 373/496/1281 424/505/1283
+s 298
+f 199/447/1284 218/506/1285 336/448/1286
+f 336/448/1286 218/506/1285 428/507/1287
+s 299
+f 239/509/1288 375/510/1289 270/508/1290
+f 270/508/1290 375/510/1289 376/511/1291
+s 300
+f 270/508/1292 376/511/1293 218/506/1294
+f 218/506/1294 376/511/1293 428/507/1295
+s 301
+f 335/446/1296 377/512/1297 299/396/1298
+f 299/396/1298 377/512/1297 378/513/1299
+s 302
+f 299/396/1300 378/513/1301 307/397/1302
+f 307/397/1302 378/513/1301 431/514/1303
+s off
+f 272/515/1304 338/516/1305 434/517/1306
+s 303
+f 339/401/1307 380/518/1308 302/398/1309
+f 302/398/1309 380/518/1308 436/519/1310
+s 304
+f 273/400/1311 340/403/1312 339/401/1313
+f 339/401/1313 340/403/1312 438/520/1314
+s 305
+f 340/403/1315 274/402/1316 381/521/1317
+f 381/521/1317 274/402/1316 341/522/1318
+s 306
+f 342/523/1319 383/524/1320 303/452/1321
+f 303/452/1321 383/524/1320 382/453/1322
+s 307
+f 342/523/1323 304/526/1324 384/525/1325
+f 384/525/1325 304/526/1324 385/527/1326
+s 308
+f 243/529/1327 387/530/1328 275/528/1329
+f 275/528/1329 387/530/1328 395/531/1330
+s 309
+f 220/459/1331 388/462/1332 243/529/1333
+f 243/529/1333 388/462/1332 387/530/1334
+s 310
+f 307/533/1335 389/534/1336 306/532/1337
+f 306/532/1337 389/534/1336 445/535/1338
+s 311
+f 345/537/1339 306/532/1340 390/536/1341
+f 390/536/1341 306/532/1340 445/535/1342
+s 312
+f 348/466/1343 392/538/1344 309/407/1345
+f 309/407/1345 392/538/1344 349/467/1346
+s 313
+f 350/411/1347 394/539/1348 310/409/1349
+f 310/409/1349 394/539/1348 453/540/1350
+s 314
+f 275/528/1351 395/531/1352 247/541/1353
+f 247/541/1353 395/531/1352 396/542/1354
+s 315
+f 247/541/1355 396/542/1356 223/472/1357
+f 223/472/1357 396/542/1356 351/473/1358
+s 316
+f 352/544/1359 311/545/1360 397/543/1361
+f 397/543/1361 311/545/1360 455/546/1362
+s 317
+f 280/547/1363 352/544/1364 226/280/1365
+f 226/280/1365 352/544/1364 398/476/1366
+s 318
+f 314/417/1367 312/414/1368 399/548/1369
+f 399/548/1369 312/414/1368 400/549/1370
+s 319
+f 312/414/1371 353/477/1372 400/549/1373
+f 400/549/1373 353/477/1372 456/550/1374
+s 320
+f 313/415/1375 401/551/1376 354/416/1377
+f 354/416/1377 401/551/1376 457/552/1378
+s 321
+f 355/478/1379 314/417/1380 402/553/1381
+f 402/553/1381 314/417/1380 399/548/1382
+s 322
+f 285/421/1383 404/483/1384 358/422/1385
+f 358/422/1385 404/483/1384 461/554/1386
+s 323
+f 316/419/1387 358/422/1388 405/555/1389
+f 405/555/1389 358/422/1388 462/556/1390
+s 324
+f 317/424/1391 316/419/1392 406/557/1393
+f 406/557/1393 316/419/1392 405/555/1394
+s 325
+f 319/426/1395 317/424/1396 407/558/1397
+f 407/558/1397 317/424/1396 406/557/1398
+s 326
+f 318/427/1399 359/430/1400 408/559/1401
+f 408/559/1401 359/430/1400 410/560/1402
+s 327
+f 359/430/1403 319/426/1404 409/561/1405
+f 409/561/1405 319/426/1404 407/558/1406
+s 328
+f 360/485/1407 320/380/1408 410/562/1409
+f 410/562/1409 320/380/1408 408/484/1410
+s 329
+f 325/433/1411 323/431/1412 412/563/1413
+f 412/563/1413 323/431/1412 466/564/1414
+s 330
+f 468/566/1415 323/431/1416 413/565/1417
+f 323/431/1416 363/432/1418 413/565/1417
+s 331
+f 290/386/1419 364/489/1420 363/432/1421
+f 363/432/1421 364/489/1420 467/567/1422
+s 332
+f 324/492/1423 365/491/1424 414/568/1425
+f 414/568/1425 365/491/1424 470/569/1426
+s 333
+f 326/434/1427 366/435/1428 417/570/1429
+f 417/570/1429 366/435/1428 472/571/1430
+s 334
+f 327/436/1431 326/434/1432 418/572/1433
+f 418/572/1433 326/434/1432 417/570/1434
+s 335
+f 327/436/1435 418/572/1436 367/495/1437
+f 367/495/1437 418/572/1436 473/573/1438
+s 336
+f 328/390/1439 368/437/1440 419/497/1441
+f 419/497/1441 368/437/1440 475/574/1442
+s 337
+f 369/576/1443 329/577/1444 420/575/1445
+f 420/575/1445 329/577/1444 370/578/1446
+s 338
+f 371/441/1447 331/440/1448 423/579/1449
+f 423/579/1449 331/440/1448 422/504/1450
+s 339
+f 332/580/1451 425/581/1452 372/442/1453
+f 372/442/1453 425/581/1452 478/582/1454
+s 340
+f 334/583/1455 427/584/1456 239/509/1457
+f 239/509/1457 427/584/1456 375/510/1458
+s 341
+f 334/583/1459 269/585/1460 427/584/1461
+f 427/584/1461 269/585/1460 484/586/1462
+s 342
+f 335/588/1463 336/589/1464 429/587/1465
+f 429/587/1465 336/589/1464 489/590/1466
+s 343
+f 377/592/1467 335/588/1468 430/591/1469
+f 430/591/1469 335/588/1468 429/587/1470
+s 344
+f 301/594/1471 435/595/1472 338/593/1473
+f 338/593/1473 435/595/1472 495/596/1474
+s 345
+f 302/597/1475 436/598/1476 301/594/1477
+f 301/594/1477 436/598/1476 435/595/1478
+s 346
+f 380/518/1479 339/401/1480 437/599/1481
+f 437/599/1481 339/401/1480 438/520/1482
+s 347
+f 381/521/1483 439/600/1484 340/403/1485
+f 340/403/1485 439/600/1484 438/520/1486
+s 348
+f 381/521/1487 341/522/1488 440/601/1489
+f 440/601/1489 341/522/1488 441/602/1490
+s 349
+f 341/450/1491 382/453/1492 441/603/1493
+f 441/603/1493 382/453/1492 499/604/1494
+s 350
+f 383/524/1495 342/523/1496 423/605/1497
+f 423/605/1497 342/523/1496 384/525/1498
+s 351
+f 305/358/1499 386/458/1500 370/457/1501
+f 370/457/1501 386/458/1500 420/606/1502
+s 352
+f 386/458/1503 308/365/1504 442/607/1505
+f 442/607/1505 308/365/1504 391/465/1506
+s 353
+f 345/406/1507 443/608/1508 344/461/1509
+f 344/461/1509 443/608/1508 444/609/1510
+s 354
+f 344/461/1511 444/609/1512 388/462/1513
+f 388/462/1513 444/609/1512 503/610/1514
+s 355
+f 307/397/1515 431/514/1516 389/611/1517
+f 389/611/1517 431/514/1516 504/612/1518
+s 356
+f 390/536/1519 446/613/1520 345/537/1521
+f 345/537/1521 446/613/1520 443/614/1522
+s 357
+f 346/463/1523 447/615/1524 347/464/1525
+f 347/464/1525 447/615/1524 448/616/1526
+s 358
+f 347/464/1527 448/616/1528 391/465/1529
+f 391/465/1529 448/616/1528 507/617/1530
+s 359
+f 392/538/1531 348/466/1532 449/618/1533
+f 449/618/1533 348/466/1532 351/619/1534
+s 360
+f 349/467/1535 392/538/1536 450/620/1537
+f 450/620/1537 392/538/1536 508/621/1538
+s 361
+f 349/467/1539 450/620/1540 350/411/1541
+f 350/411/1541 450/620/1540 394/539/1542
+s 362
+f 393/471/1543 451/622/1544 311/468/1545
+f 311/468/1545 451/622/1544 455/623/1546
+s 363
+f 393/471/1547 310/470/1548 452/624/1549
+f 452/624/1549 310/470/1548 453/625/1550
+s 364
+f 396/542/1551 454/626/1552 351/473/1553
+f 351/473/1553 454/626/1552 512/627/1554
+s 365
+f 313/415/1555 398/476/1556 401/551/1557
+f 401/551/1557 398/476/1556 515/628/1558
+s 366
+f 354/416/1559 457/552/1560 353/477/1561
+f 353/477/1561 457/552/1560 519/629/1562
+s 367
+f 355/478/1563 402/553/1564 458/630/1565
+f 458/630/1565 402/553/1564 521/631/1566
+s 368
+f 355/478/1567 458/630/1568 356/479/1569
+f 356/479/1569 458/630/1568 522/632/1570
+s 369
+f 403/480/1571 356/479/1572 459/633/1573
+f 459/633/1573 356/479/1572 522/632/1574
+s 370
+f 403/480/1575 460/634/1576 357/418/1577
+f 357/418/1577 460/634/1576 404/635/1578
+s 371
+f 359/430/1579 409/561/1580 410/560/1581
+f 410/560/1581 409/561/1580 463/636/1582
+s 372
+f 410/562/1583 463/637/1584 360/485/1585
+f 360/485/1585 463/637/1584 464/638/1586
+s 373
+f 360/485/1587 464/638/1588 361/486/1589
+f 361/486/1589 464/638/1588 526/639/1590
+s 374
+f 362/487/1591 361/486/1592 465/640/1593
+f 465/640/1593 361/486/1592 526/639/1594
+s 375
+f 325/433/1595 412/563/1596 416/494/1597
+f 416/494/1597 412/563/1596 528/641/1598
+s 376
+f 363/432/1599 467/567/1600 413/565/1601
+f 413/565/1601 467/567/1600 530/642/1602
+s 377
+f 364/489/1603 414/490/1604 469/643/1605
+f 469/643/1605 414/490/1604 532/644/1606
+s 378
+f 365/491/1607 415/493/1608 470/569/1609
+f 470/569/1609 415/493/1608 533/645/1610
+s 379
+f 235/647/1611 471/648/1612 415/646/1613
+f 415/646/1613 471/648/1612 534/649/1614
+s 380
+f 366/435/1615 416/494/1616 472/571/1617
+f 472/571/1617 416/494/1616 535/650/1618
+s 381
+f 367/495/1619 474/651/1620 373/496/1621
+f 373/496/1621 474/651/1620 480/652/1622
+s 382
+f 346/463/1623 419/497/1624 447/615/1625
+f 447/615/1625 419/497/1624 538/653/1626
+s 383
+f 369/654/1627 476/655/1628 368/437/1629
+f 368/437/1629 476/655/1628 475/574/1630
+s 384
+f 420/606/1631 477/656/1632 369/654/1633
+f 369/654/1633 477/656/1632 476/655/1634
+s 385
+f 330/657/1635 421/658/1636 385/527/1637
+f 385/527/1637 421/658/1636 384/525/1638
+s 386
+f 421/503/1639 371/441/1640 384/659/1641
+f 384/659/1641 371/441/1640 423/579/1642
+s 387
+f 372/442/1643 478/582/1644 422/504/1645
+f 422/504/1645 478/582/1644 540/660/1646
+s 388
+f 424/505/1647 479/661/1648 332/443/1649
+f 332/443/1649 479/661/1648 425/662/1650
+s 389
+f 373/496/1651 480/652/1652 424/505/1653
+f 424/505/1653 480/652/1652 542/663/1654
+s 390
+f 374/665/1655 481/666/1656 333/664/1657
+f 333/664/1657 481/666/1656 482/667/1658
+s 391
+f 333/664/1659 482/667/1660 297/668/1661
+f 297/668/1661 482/667/1660 483/669/1662
+s 392
+f 297/668/1663 483/669/1664 269/585/1665
+f 269/585/1665 483/669/1664 484/586/1666
+s 393
+f 428/670/1667 485/671/1668 336/589/1669
+f 336/589/1669 485/671/1668 489/590/1670
+s 394
+f 375/673/1671 427/674/1672 486/672/1673
+f 486/672/1673 427/674/1672 548/675/1674
+s 395
+f 375/510/1675 487/676/1676 376/511/1677
+f 376/511/1677 487/676/1676 488/677/1678
+s 396
+f 376/511/1679 488/677/1680 428/507/1681
+f 428/507/1681 488/677/1680 546/678/1682
+s 397
+f 430/591/1683 490/679/1684 377/592/1685
+f 377/592/1685 490/679/1684 491/680/1686
+s 398
+f 377/512/1687 491/681/1688 378/513/1689
+f 378/513/1689 491/681/1688 492/682/1690
+s 399
+f 378/513/1691 492/682/1692 431/514/1693
+f 431/514/1693 492/682/1692 552/683/1694
+s 400
+f 272/685/1695 434/686/1696 494/684/1697
+f 494/684/1697 434/686/1696 555/687/1698
+s 401
+f 338/593/1699 495/596/1700 434/686/1701
+f 434/686/1701 495/596/1700 555/687/1702
+s 402
+f 437/599/1703 496/688/1704 380/518/1705
+f 380/518/1705 496/688/1704 497/689/1706
+s 403
+f 380/518/1707 497/689/1708 436/519/1709
+f 436/519/1709 497/689/1708 560/690/1710
+s 404
+f 439/600/1711 381/521/1712 498/691/1713
+f 498/691/1713 381/521/1712 440/601/1714
+s 405
+f 383/524/1715 500/692/1716 382/453/1717
+f 382/453/1717 500/692/1716 499/604/1718
+s 406
+f 442/607/1719 477/656/1720 386/458/1721
+f 386/458/1721 477/656/1720 420/606/1722
+s 407
+f 388/694/1723 501/695/1724 387/693/1725
+f 387/693/1725 501/695/1724 566/696/1726
+s 408
+f 395/698/1727 387/693/1728 502/697/1729
+f 502/697/1729 387/693/1728 566/696/1730
+s 409
+f 445/535/1731 389/534/1732 505/699/1733
+f 505/699/1733 389/534/1732 571/700/1734
+s 410
+f 390/536/1735 506/701/1736 446/613/1737
+f 446/613/1737 506/701/1736 572/702/1738
+s 411
+f 445/535/1739 505/699/1740 390/536/1741
+f 390/536/1741 505/699/1740 506/701/1742
+s 412
+f 391/465/1743 507/617/1744 442/607/1745
+f 442/607/1745 507/617/1744 574/703/1746
+s 413
+f 392/538/1747 449/618/1748 508/621/1749
+f 508/621/1749 449/618/1748 576/704/1750
+s 414
+f 393/471/1751 452/624/1752 451/622/1753
+f 451/622/1753 452/624/1752 578/705/1754
+s 415
+f 394/539/1755 450/620/1756 509/706/1757
+f 509/706/1757 450/620/1756 577/707/1758
+s 416
+f 453/709/1759 394/710/1760 510/708/1761
+f 510/708/1761 394/710/1760 509/711/1762
+s 417
+f 395/531/1763 511/712/1764 396/542/1765
+f 396/542/1765 511/712/1764 454/626/1766
+s 418
+f 351/473/1767 512/627/1768 449/713/1769
+f 449/713/1769 512/627/1768 582/714/1770
+s 419
+f 455/546/1771 513/715/1772 397/543/1773
+f 397/543/1773 513/715/1772 514/716/1774
+s 420
+f 352/544/1775 397/543/1776 398/476/1777
+f 514/716/1778 398/476/1777 397/543/1776
+s 421
+f 402/718/1779 399/719/1780 516/717/1781
+f 516/717/1781 399/719/1780 517/720/1782
+s 422
+f 399/719/1783 400/721/1784 517/720/1785
+f 517/720/1785 400/721/1784 518/722/1786
+s 423
+f 400/721/1787 456/723/1788 518/722/1789
+f 518/722/1789 456/723/1788 589/724/1790
+s 424
+f 353/477/1791 519/629/1792 456/550/1793
+f 456/550/1793 519/629/1792 590/725/1794
+s 425
+f 457/552/1795 401/551/1796 520/726/1797
+f 520/726/1797 401/551/1796 592/727/1798
+s 426
+f 403/480/1799 459/633/1800 460/634/1801
+f 460/634/1801 459/633/1800 596/728/1802
+s 427
+f 404/483/1803 460/729/1804 461/554/1805
+f 461/554/1805 460/729/1804 597/730/1806
+s 428
+f 358/422/1807 461/554/1808 462/556/1809
+f 462/556/1809 461/554/1808 598/731/1810
+s 429
+f 405/555/1811 462/556/1812 523/732/1813
+f 523/732/1813 462/556/1812 599/733/1814
+s 430
+f 406/557/1815 405/555/1816 524/734/1817
+f 524/734/1817 405/555/1816 523/732/1818
+s 431
+f 407/558/1819 406/557/1820 525/735/1821
+f 525/735/1821 406/557/1820 524/734/1822
+s 432
+f 407/558/1823 525/735/1824 409/561/1825
+f 409/561/1825 525/735/1824 600/736/1826
+s 433
+f 465/640/1827 527/737/1828 362/487/1829
+f 362/487/1829 527/737/1828 604/738/1830
+s 434
+f 412/563/1831 466/564/1832 529/739/1833
+f 529/739/1833 466/564/1832 606/740/1834
+s 435
+f 323/431/1835 468/566/1836 466/564/1837
+f 466/564/1837 468/566/1836 607/741/1838
+s 436
+f 413/743/1839 530/744/1840 468/742/1841
+f 468/742/1841 530/744/1840 608/745/1842
+s 437
+f 467/567/1843 364/489/1844 531/746/1845
+f 531/746/1845 364/489/1844 469/643/1846
+s 438
+f 414/568/1847 470/569/1848 532/747/1849
+f 532/747/1849 470/569/1848 611/748/1850
+s 439
+f 417/570/1851 472/571/1852 536/749/1853
+f 536/749/1853 472/571/1852 614/750/1854
+s 440
+f 417/570/1855 536/749/1856 418/572/1857
+f 418/572/1857 536/749/1856 537/751/1858
+s 441
+f 367/495/1859 473/573/1860 474/651/1861
+f 474/651/1861 473/573/1860 615/752/1862
+s 442
+f 418/572/1863 537/751/1864 473/573/1865
+f 473/573/1865 537/751/1864 616/753/1866
+s 443
+f 419/497/1867 475/574/1868 538/653/1869
+f 538/653/1869 475/574/1868 618/754/1870
+s 444
+f 423/579/1871 422/504/1872 539/755/1873
+f 539/755/1873 422/504/1872 540/660/1874
+s 445
+f 479/661/1875 424/505/1876 541/756/1877
+f 541/756/1877 424/505/1876 542/663/1878
+s 446
+f 479/661/1879 543/757/1880 425/662/1881
+f 425/662/1881 543/757/1880 544/758/1882
+s 447
+f 425/662/1883 544/758/1884 478/759/1885
+f 478/759/1885 544/758/1884 621/760/1886
+s 448
+f 374/665/1887 426/761/1888 481/666/1889
+f 481/666/1889 426/761/1888 624/762/1890
+s 449
+f 484/763/1891 545/764/1892 427/674/1893
+f 427/674/1893 545/764/1892 548/675/1894
+s 450
+f 428/507/1895 546/678/1896 485/765/1897
+f 485/765/1897 546/678/1896 629/766/1898
+s 451
+f 486/672/1899 547/767/1900 375/673/1901
+f 375/673/1901 547/767/1900 487/768/1902
+s 452
+f 429/587/1903 549/769/1904 430/591/1905
+f 430/591/1905 549/769/1904 551/770/1906
+s 453
+f 489/590/1907 550/771/1908 429/587/1909
+f 429/587/1909 550/771/1908 549/769/1910
+s 454
+f 430/591/1911 551/770/1912 490/679/1913
+f 490/679/1913 551/770/1912 635/772/1914
+s 455
+f 379/774/1915 553/775/1916 433/773/1917
+f 433/773/1917 553/775/1916 638/776/1918
+s 456
+f 300/777/1919 554/778/1920 379/774/1921
+f 379/774/1921 554/778/1920 553/775/1922
+s 457
+f 272/685/1923 494/684/1924 300/777/1925
+f 300/777/1925 494/684/1924 554/778/1926
+s 458
+f 435/780/1927 436/519/1928 556/779/1929
+f 556/779/1929 436/519/1928 560/690/1930
+s 459
+f 435/595/1931 557/781/1932 495/596/1933
+f 495/596/1933 557/781/1932 640/782/1934
+s 460
+f 496/688/1935 437/599/1936 558/783/1937
+f 558/783/1937 437/599/1936 559/784/1938
+s 461
+f 437/599/1939 438/520/1940 559/784/1941
+f 559/784/1941 438/520/1940 439/600/1942
+s 462
+f 498/691/1943 561/785/1944 439/600/1945
+f 439/600/1945 561/785/1944 559/784/1946
+s 463
+f 498/691/1947 440/601/1948 562/786/1949
+f 562/786/1949 440/601/1948 645/787/1950
+s 464
+f 441/602/1951 563/788/1952 440/601/1953
+f 440/601/1953 563/788/1952 645/787/1954
+s 465
+f 441/603/1955 499/604/1956 563/789/1957
+f 563/789/1957 499/604/1956 646/790/1958
+s 466
+f 500/692/1959 383/524/1960 564/791/1961
+f 564/791/1961 383/524/1960 423/605/1962
+s 467
+f 477/656/1963 442/607/1964 565/792/1965
+f 565/792/1965 442/607/1964 574/703/1966
+s 468
+f 388/462/1967 503/610/1968 501/793/1969
+f 501/793/1969 503/610/1968 648/794/1970
+s 469
+f 502/697/1971 567/795/1972 395/698/1973
+f 395/698/1973 567/795/1972 511/796/1974
+s 470
+f 446/613/1975 568/797/1976 443/614/1977
+f 443/614/1977 568/797/1976 569/798/1978
+s 471
+f 443/608/1979 569/799/1980 444/609/1981
+f 444/609/1981 569/799/1980 570/800/1982
+s 472
+f 444/609/1983 570/800/1984 503/610/1985
+f 503/610/1985 570/800/1984 651/801/1986
+s 473
+f 389/803/1987 504/804/1988 571/802/1989
+f 571/802/1989 504/804/1988 652/805/1990
+s 474
+f 431/514/1991 552/683/1992 504/612/1993
+f 504/612/1993 552/683/1992 653/806/1994
+s 475
+f 447/615/1995 573/807/1996 448/616/1997
+f 448/616/1997 573/807/1996 575/808/1998
+s 476
+f 448/616/1999 575/808/2000 507/617/2001
+f 507/617/2001 575/808/2000 657/809/2002
+s 477
+f 450/620/2003 508/621/2004 577/707/2005
+f 577/707/2005 508/621/2004 658/810/2006
+s 478
+f 451/811/2007 579/812/2008 455/546/2009
+f 455/546/2009 579/812/2008 585/813/2010
+s 479
+f 453/709/2011 580/815/2012 452/814/2013
+f 452/814/2013 580/815/2012 661/816/2014
+s 480
+f 453/709/2015 510/708/2016 581/817/2017
+f 581/817/2017 510/708/2016 664/818/2018
+s 481
+f 511/712/2019 583/819/2020 454/626/2021
+f 454/626/2021 583/819/2020 584/820/2022
+s 482
+f 454/626/2023 584/820/2024 512/627/2025
+f 512/627/2025 584/820/2024 666/821/2026
+s 483
+f 455/546/2027 585/813/2028 513/715/2029
+f 513/715/2029 585/813/2028 667/822/2030
+s 484
+f 586/823/2031 398/476/2032 670/824/2033
+f 670/824/2033 398/476/2032 514/716/2034
+s 485
+f 515/628/2035 587/825/2036 401/551/2037
+f 401/551/2037 587/825/2036 592/727/2038
+s 486
+f 398/476/2039 588/826/2040 515/628/2041
+f 515/628/2041 588/826/2040 673/827/2042
+s 487
+f 402/718/2043 516/717/2044 521/828/2045
+f 521/828/2045 516/717/2044 674/829/2046
+s 488
+f 519/629/2047 457/552/2048 591/830/2049
+f 591/830/2049 457/552/2048 520/726/2050
+s 489
+f 458/630/2051 521/631/2052 593/831/2053
+f 593/831/2053 521/631/2052 680/832/2054
+s 490
+f 522/632/2055 458/630/2056 594/833/2057
+f 594/833/2057 458/630/2056 593/831/2058
+s 491
+f 459/633/2059 522/632/2060 595/834/2061
+f 595/834/2061 522/632/2060 594/833/2062
+s 492
+f 409/561/2063 600/736/2064 463/636/2065
+f 463/636/2065 600/736/2064 464/835/2066
+s 493
+f 526/837/2067 464/838/2068 601/836/2069
+f 601/836/2069 464/838/2068 600/839/2070
+s 494
+f 526/837/2071 602/841/2072 465/840/2073
+f 465/840/2073 602/841/2072 603/842/2074
+s 495
+f 465/840/2075 603/842/2076 527/843/2077
+f 527/843/2077 603/842/2076 686/844/2078
+s 496
+f 412/563/2079 529/739/2080 528/641/2081
+f 528/641/2081 529/739/2080 688/845/2082
+s 497
+f 528/641/2083 605/846/2084 416/494/2085
+f 416/494/2085 605/846/2084 613/847/2086
+s 498
+f 467/567/2087 531/746/2088 530/642/2089
+f 530/642/2089 531/746/2088 690/848/2090
+s 499
+f 469/643/2091 532/644/2092 609/849/2093
+f 609/849/2093 532/644/2092 691/850/2094
+s 500
+f 531/746/2095 469/643/2096 610/851/2097
+f 610/851/2097 469/643/2096 609/849/2098
+s 501
+f 470/569/2099 533/645/2100 611/748/2101
+f 611/748/2101 533/645/2100 693/852/2102
+s 502
+f 415/646/2103 534/649/2104 533/853/2105
+f 533/853/2105 534/649/2104 694/854/2106
+s 503
+f 471/648/2107 612/855/2108 534/649/2109
+f 534/649/2109 612/855/2108 694/854/2110
+s 504
+f 416/494/2111 613/847/2112 535/650/2113
+f 535/650/2113 613/847/2112 695/856/2114
+s 505
+f 472/571/2115 535/650/2116 614/750/2117
+f 614/750/2117 535/650/2116 696/857/2118
+s 506
+f 474/651/2119 617/858/2120 480/652/2121
+f 480/652/2121 617/858/2120 623/859/2122
+s 507
+f 447/615/2123 538/653/2124 573/807/2125
+f 573/807/2125 538/653/2124 700/860/2126
+s 508
+f 476/655/2127 619/861/2128 475/574/2129
+f 475/574/2129 619/861/2128 618/754/2130
+s 509
+f 477/656/2131 565/792/2132 476/655/2133
+f 476/655/2133 565/792/2132 619/861/2134
+s 510
+f 539/863/2135 620/864/2136 423/862/2137
+f 423/862/2137 620/864/2136 647/865/2138
+s 511
+f 478/759/2139 621/760/2140 540/866/2141
+f 540/866/2141 621/760/2140 539/863/2142
+s 512
+f 541/756/2143 622/867/2144 479/661/2145
+f 479/661/2145 622/867/2144 543/757/2146
+s 513
+f 480/652/2147 623/859/2148 542/663/2149
+f 542/663/2149 623/859/2148 704/868/2150
+s 514
+f 482/870/2151 481/871/2152 625/869/2153
+f 625/869/2153 481/871/2152 710/872/2154
+s 515
+f 482/667/2155 626/873/2156 483/669/2157
+f 483/669/2157 626/873/2156 627/874/2158
+s 516
+f 483/669/2159 627/874/2160 484/586/2161
+f 484/586/2161 627/874/2160 628/875/2162
+s 517
+f 484/586/2163 628/875/2164 545/876/2165
+f 545/876/2165 628/875/2164 711/877/2166
+s 518
+f 489/590/2167 485/671/2168 550/771/2169
+f 550/771/2169 485/671/2168 714/878/2170
+s 519
+f 486/672/2171 630/879/2172 547/767/2173
+f 547/767/2173 630/879/2172 715/880/2174
+s 520
+f 548/675/2175 631/881/2176 486/672/2177
+f 486/672/2177 631/881/2176 630/879/2178
+s 521
+f 547/767/2179 632/882/2180 487/768/2181
+f 487/768/2181 632/882/2180 633/883/2182
+s 522
+f 487/676/2183 633/884/2184 488/677/2185
+f 488/677/2185 633/884/2184 634/885/2186
+s 523
+f 488/677/2187 634/885/2188 546/678/2189
+f 546/678/2189 634/885/2188 713/886/2190
+s 524
+f 490/679/2191 636/887/2192 491/680/2193
+f 491/680/2193 636/887/2192 492/888/2194
+s 525
+f 492/888/2195 636/887/2196 552/889/2197
+f 552/889/2197 636/887/2196 653/890/2198
+s 526
+f 493/892/2199 637/893/2200 337/891/2201
+f 337/891/2201 637/893/2200 720/894/2202
+s 527
+f 493/892/2203 433/773/2204 637/893/2205
+f 637/893/2205 433/773/2204 638/776/2206
+s 528
+f 555/896/2207 639/897/2208 494/895/2209
+f 494/895/2209 639/897/2208 725/898/2210
+s 529
+f 495/596/2211 640/782/2212 555/687/2213
+f 555/687/2213 640/782/2212 724/899/2214
+s 530
+f 435/901/2215 556/902/2216 557/900/2217
+f 557/900/2217 556/902/2216 726/903/2218
+s 531
+f 558/783/2219 641/904/2220 496/688/2221
+f 496/688/2221 641/904/2220 642/905/2222
+s 532
+f 496/688/2223 642/905/2224 497/689/2225
+f 497/689/2225 642/905/2224 643/906/2226
+s 533
+f 497/689/2227 643/906/2228 560/690/2229
+f 560/690/2229 643/906/2228 556/779/2230
+s 534
+f 561/785/2231 498/691/2232 644/907/2233
+f 644/907/2233 498/691/2232 562/786/2234
+s 535
+f 499/604/2235 500/692/2236 646/790/2237
+f 646/790/2237 500/692/2236 564/791/2238
+s 536
+f 423/605/2239 647/908/2240 564/791/2241
+f 564/791/2241 647/908/2240 735/909/2242
+s 537
+f 566/696/2243 501/695/2244 649/910/2245
+f 649/910/2245 501/695/2244 738/911/2246
+s 538
+f 502/697/2247 650/912/2248 567/795/2249
+f 567/795/2249 650/912/2248 739/913/2250
+s 539
+f 566/696/2251 649/910/2252 502/697/2253
+f 502/697/2253 649/910/2252 650/912/2254
+s 540
+f 446/613/2255 572/702/2256 568/797/2257
+f 568/797/2257 572/702/2256 740/914/2258
+s 541
+f 505/916/2259 571/917/2260 654/915/2261
+f 654/915/2261 571/917/2260 743/918/2262
+s 542
+f 506/920/2263 505/916/2264 655/919/2265
+f 655/919/2265 505/916/2264 654/915/2266
+s 543
+f 506/920/2267 656/922/2268 572/921/2269
+f 572/921/2269 656/922/2268 745/923/2270
+s 544
+f 507/617/2271 657/809/2272 574/703/2273
+f 574/703/2273 657/809/2272 747/924/2274
+s 545
+f 508/926/2275 576/927/2276 658/925/2277
+f 658/925/2277 576/927/2276 749/928/2278
+s 546
+f 576/930/2279 449/931/2280 659/929/2281
+f 659/929/2281 449/931/2280 582/932/2282
+s 547
+f 451/934/2283 578/935/2284 579/933/2285
+f 579/933/2285 578/935/2284 752/936/2286
+s 548
+f 578/938/2287 452/814/2288 660/937/2289
+f 660/937/2289 452/814/2288 661/816/2290
+s 549
+f 453/709/2291 581/817/2292 580/815/2293
+f 580/815/2293 581/817/2292 755/939/2294
+s 550
+f 510/941/2295 509/706/2296 662/940/2297
+f 662/940/2297 509/706/2296 663/942/2298
+s 551
+f 509/706/2299 577/707/2300 663/942/2301
+f 663/942/2301 577/707/2300 751/943/2302
+s 552
+f 567/795/2303 665/944/2304 511/796/2305
+f 511/796/2305 665/944/2304 583/945/2306
+s 553
+f 512/627/2307 666/821/2308 582/714/2309
+f 582/714/2309 666/821/2308 759/946/2310
+s 554
+f 513/715/2311 668/947/2312 514/716/2313
+f 514/716/2313 668/947/2312 670/824/2314
+s 555
+f 586/823/2315 669/948/2316 398/476/2317
+f 398/476/2317 669/948/2316 763/949/2318
+s 556
+f 587/825/2319 515/628/2320 671/950/2321
+f 671/950/2321 515/628/2320 673/827/2322
+s 557
+f 398/476/2323 672/951/2324 588/826/2325
+f 588/826/2325 672/951/2324 766/952/2326
+s 558
+f 516/717/2327 517/720/2328 675/953/2329
+f 675/953/2329 517/720/2328 676/954/2330
+s 559
+f 517/720/2331 518/722/2332 676/954/2333
+f 676/954/2333 518/722/2332 677/955/2334
+s 560
+f 518/957/2335 589/958/2336 677/956/2337
+f 677/956/2337 589/958/2336 769/959/2338
+s 561
+f 456/960/2339 590/961/2340 589/958/2341
+f 589/958/2341 590/961/2340 770/962/2342
+s 562
+f 519/629/2343 591/830/2344 590/725/2345
+f 590/725/2345 591/830/2344 771/963/2346
+s 563
+f 591/830/2347 520/726/2348 678/964/2349
+f 678/964/2349 520/726/2348 679/965/2350
+s 564
+f 520/726/2351 592/727/2352 679/965/2353
+f 679/965/2353 592/727/2352 772/966/2354
+s 565
+f 595/834/2355 681/967/2356 459/633/2357
+f 459/633/2357 681/967/2356 596/728/2358
+s 566
+f 596/968/2359 682/969/2360 460/729/2361
+f 460/729/2361 682/969/2360 597/730/2362
+s 567
+f 461/554/2363 597/730/2364 598/731/2365
+f 598/731/2365 597/730/2364 778/970/2366
+s 568
+f 462/556/2367 598/731/2368 599/733/2369
+f 599/733/2369 598/731/2368 779/971/2370
+s 569
+f 523/973/2371 599/974/2372 683/972/2373
+f 683/972/2373 599/974/2372 780/975/2374
+s 570
+f 524/977/2375 523/973/2376 684/976/2377
+f 684/976/2377 523/973/2376 683/972/2378
+s 571
+f 524/977/2379 684/976/2380 525/978/2381
+f 525/978/2381 684/976/2380 685/979/2382
+s 572
+f 525/978/2383 685/979/2384 600/839/2385
+f 600/839/2385 685/979/2384 601/836/2386
+s 573
+f 526/837/2387 601/836/2388 602/841/2389
+f 602/841/2389 601/836/2388 781/980/2390
+s 574
+f 362/487/2391 604/738/2392 687/981/2393
+f 687/981/2393 604/738/2392 785/982/2394
+s 575
+f 527/843/2395 609/849/2396 604/983/2397
+f 604/983/2397 609/849/2396 691/850/2398
+s 576
+f 528/641/2399 688/845/2400 605/846/2401
+f 605/846/2401 688/845/2400 786/984/2402
+s 577
+f 529/739/2403 606/740/2404 689/985/2405
+f 689/985/2405 606/740/2404 788/986/2406
+s 578
+f 466/564/2407 607/741/2408 606/740/2409
+f 606/740/2409 607/741/2408 789/987/2410
+s 579
+f 468/989/2411 608/990/2412 607/988/2413
+f 607/988/2413 608/990/2412 790/991/2414
+s 580
+f 530/642/2415 690/848/2416 608/992/2417
+f 608/992/2417 690/848/2416 791/993/2418
+s 581
+f 610/851/2419 692/994/2420 531/746/2421
+f 531/746/2421 692/994/2420 690/848/2422
+s 582
+f 532/747/2423 611/748/2424 691/995/2425
+f 691/995/2425 611/748/2424 693/852/2426
+s 583
+f 536/749/2427 614/750/2428 697/996/2429
+f 697/996/2429 614/750/2428 796/997/2430
+s 584
+f 536/749/2431 698/998/2432 537/751/2433
+f 537/751/2433 698/998/2432 699/999/2434
+s 585
+f 474/651/2435 615/752/2436 617/858/2437
+f 617/858/2437 615/752/2436 798/1000/2438
+s 586
+f 473/573/2439 616/753/2440 615/752/2441
+f 615/752/2441 616/753/2440 799/1001/2442
+s 587
+f 537/751/2443 699/999/2444 616/753/2445
+f 616/753/2445 699/999/2444 706/1002/2446
+s 588
+f 538/653/2447 618/754/2448 700/860/2449
+f 700/860/2449 618/754/2448 801/1003/2450
+s 589
+f 620/864/2451 539/863/2452 701/1004/2453
+f 701/1004/2453 539/863/2452 621/760/2454
+s 590
+f 622/867/2455 541/756/2456 702/1005/2457
+f 702/1005/2457 541/756/2456 703/1006/2458
+s 591
+f 541/756/2459 542/663/2460 703/1006/2461
+f 703/1006/2461 542/663/2460 704/868/2462
+s 592
+f 622/867/2463 705/1007/2464 543/757/2465
+f 543/757/2465 705/1007/2464 706/1002/2466
+s 593
+f 543/757/2467 706/1002/2468 544/758/2469
+f 544/758/2469 706/1002/2468 699/999/2470
+s 594
+f 621/760/2471 544/758/2472 701/1004/2473
+f 701/1004/2473 544/758/2472 699/999/2474
+s 595
+f 624/1008/2475 707/1009/2476 481/871/2477
+f 481/871/2477 707/1009/2476 710/872/2478
+s 596
+f 624/762/2479 426/761/2480 708/1010/2481
+f 708/1010/2481 426/761/2480 432/1011/2482
+s 597
+f 625/869/2483 709/1012/2484 482/870/2485
+f 482/870/2485 709/1012/2484 626/1013/2486
+s 598
+f 548/675/2487 545/764/2488 631/881/2489
+f 631/881/2489 545/764/2488 814/1014/2490
+s 599
+f 485/1015/2491 629/1016/2492 714/1018/2493
+f 714/1018/2493 629/1016/2492 712/1017/2494
+s 600
+f 546/678/2495 713/886/2496 629/766/2497
+f 629/766/2497 713/886/2496 816/1019/2498
+s 601
+f 547/767/2499 715/880/2500 632/882/2501
+f 632/882/2501 715/880/2500 820/1020/2502
+s 602
+f 549/1022/2503 550/1023/2504 716/1021/2505
+f 716/1021/2505 550/1023/2504 823/1024/2506
+s 603
+f 549/1022/2507 717/1026/2508 551/1025/2509
+f 551/1025/2509 717/1026/2508 719/1027/2510
+s 604
+f 635/772/2511 718/1028/2512 490/679/2513
+f 490/679/2513 718/1028/2512 636/887/2514
+s 605
+f 551/1025/2515 719/1027/2516 635/1029/2517
+f 635/1029/2517 719/1027/2516 718/1030/2518
+s 606
+f 337/891/2519 720/894/2520 432/1011/2521
+f 432/1011/2521 720/894/2520 708/1010/2522
+s 607
+f 554/778/2523 721/1031/2524 553/775/2525
+f 553/775/2525 721/1031/2524 722/1032/2526
+s 608
+f 553/775/2527 722/1032/2528 638/776/2529
+f 638/776/2529 722/1032/2528 827/1033/2530
+s 609
+f 554/1035/2531 494/895/2532 723/1034/2533
+f 723/1034/2533 494/895/2532 725/898/2534
+s 610
+f 555/687/2535 724/899/2536 639/1036/2537
+f 639/1036/2537 724/899/2536 828/1037/2538
+s 611
+f 557/781/2539 727/1038/2540 640/782/2541
+f 640/782/2541 727/1038/2540 830/1039/2542
+s 612
+f 641/1041/2543 558/1042/2544 728/1040/2545
+f 728/1040/2545 558/1042/2544 833/1043/2546
+s 613
+f 559/1044/2547 729/1045/2548 558/1042/2549
+f 558/1042/2549 729/1045/2548 833/1043/2550
+s 614
+f 561/1047/2551 730/1048/2552 559/1046/2553
+f 559/1046/2553 730/1048/2552 729/1049/2554
+s 615
+f 644/1050/2555 731/1051/2556 561/1047/2557
+f 561/1047/2557 731/1051/2556 730/1048/2558
+s 616
+f 562/786/2559 732/1052/2560 644/907/2561
+f 644/907/2561 732/1052/2560 837/1053/2562
+s off
+f 645/787/2563 732/1052/2564 562/786/2565
+s 617
+f 563/788/2566 733/1054/2567 645/787/2568
+f 645/787/2568 733/1054/2567 838/1055/2569
+s 618
+f 646/790/2570 734/1056/2571 563/789/2572
+f 563/789/2572 734/1056/2571 733/1057/2573
+s 619
+f 564/791/2574 735/909/2575 646/790/2576
+f 646/790/2576 735/909/2575 734/1056/2577
+s 620
+f 565/792/2578 574/703/2579 736/1058/2580
+f 736/1058/2580 574/703/2579 747/924/2581
+s 621
+f 648/1060/2582 737/1061/2583 501/1059/2584
+f 501/1059/2584 737/1061/2583 738/1062/2585
+s 622
+f 503/610/2586 651/801/2587 648/794/2588
+f 648/794/2588 651/801/2587 841/1063/2589
+s 623
+f 568/797/2590 741/1064/2591 569/798/2592
+f 569/798/2592 741/1064/2591 570/1065/2593
+s 624
+f 570/1065/2594 741/1064/2595 651/1066/2596
+f 651/1066/2596 741/1064/2595 841/1067/2597
+s 625
+f 652/805/2598 719/1068/2599 571/802/2600
+f 571/802/2600 719/1068/2599 717/1069/2601
+s 626
+f 652/805/2602 504/804/2603 742/1070/2604
+f 742/1070/2604 504/804/2603 653/1071/2605
+s 627
+f 655/919/2606 744/1072/2607 506/920/2608
+f 506/920/2608 744/1072/2607 656/922/2609
+s 628
+f 573/1074/2610 746/1075/2611 575/1073/2612
+f 575/1073/2612 746/1075/2611 748/1076/2613
+s 629
+f 575/1073/2614 748/1076/2615 657/1077/2616
+f 657/1077/2616 748/1076/2615 849/1078/2617
+s 630
+f 659/1079/2618 750/1080/2619 576/927/2620
+f 576/927/2620 750/1080/2619 844/1081/2621
+s 631
+f 577/707/2622 658/810/2623 751/943/2624
+f 751/943/2624 658/810/2623 850/1082/2625
+s 632
+f 578/938/2626 660/937/2627 753/1083/2628
+f 753/1083/2628 660/937/2627 853/1084/2629
+s 633
+f 585/813/2630 579/812/2631 754/1085/2632
+f 754/1085/2632 579/812/2631 852/1086/2633
+s 634
+f 580/815/2634 756/1087/2635 661/816/2636
+f 661/816/2636 756/1087/2635 854/1088/2637
+s 635
+f 510/941/2638 662/940/2639 664/1089/2640
+f 664/1089/2640 662/940/2639 857/1090/2641
+s 636
+f 581/1092/2642 664/1093/2643 757/1091/2644
+f 757/1091/2644 664/1093/2643 860/1094/2645
+s 637
+f 567/795/2646 739/913/2647 665/944/2648
+f 665/944/2648 739/913/2647 861/1095/2649
+s 638
+f 659/929/2650 582/932/2651 758/1096/2652
+f 758/1096/2652 582/932/2651 759/1097/2653
+s 639
+f 665/944/2654 760/1098/2655 583/945/2656
+f 583/945/2656 760/1098/2655 584/1099/2657
+s 640
+f 584/1099/2658 760/1098/2659 666/1100/2660
+f 666/1100/2660 760/1098/2659 759/1101/2661
+s 641
+f 667/822/2662 761/1102/2663 513/715/2664
+f 513/715/2664 761/1102/2663 668/947/2665
+s 642
+f 667/822/2666 585/813/2667 762/1103/2668
+f 762/1103/2668 585/813/2667 754/1085/2669
+s 643
+f 587/825/2670 671/950/2671 764/1104/2672
+f 764/1104/2672 671/950/2671 866/1105/2673
+s 644
+f 587/825/2674 765/1106/2675 592/727/2676
+f 592/727/2676 765/1106/2675 772/966/2677
+s off
+f 672/951/2678 398/476/2679 763/949/2680
+s 645
+f 588/826/2681 767/1107/2682 673/827/2683
+f 673/827/2683 767/1107/2682 869/1108/2684
+s 646
+f 674/829/2685 516/717/2686 768/1109/2687
+f 768/1109/2687 516/717/2686 675/953/2688
+s 647
+f 521/828/2689 674/829/2690 680/1110/2691
+f 680/1110/2691 674/829/2690 871/1111/2692
+s 648
+f 591/1113/2693 678/1114/2694 771/1112/2695
+f 771/1112/2695 678/1114/2694 877/1115/2696
+s 649
+f 593/831/2697 680/832/2698 773/1116/2699
+f 773/1116/2699 680/832/2698 879/1117/2700
+s 650
+f 594/833/2701 593/831/2702 774/1118/2703
+f 774/1118/2703 593/831/2702 773/1116/2704
+s 651
+f 595/834/2705 594/833/2706 775/1119/2707
+f 775/1119/2707 594/833/2706 774/1118/2708
+s 652
+f 681/967/2709 595/834/2710 776/1120/2711
+f 776/1120/2711 595/834/2710 775/1119/2712
+s 653
+f 682/969/2713 596/968/2714 777/1121/2715
+f 777/1121/2715 596/968/2714 681/1122/2716
+s 654
+f 597/730/2717 682/969/2718 778/970/2719
+f 778/970/2719 682/969/2718 881/1123/2720
+s 655
+f 602/841/2721 782/1124/2722 603/842/2723
+f 603/842/2723 782/1124/2722 783/1125/2724
+s 656
+f 527/843/2725 686/844/2726 609/849/2727
+f 609/849/2727 686/844/2726 610/851/2728
+s 657
+f 603/842/2729 783/1125/2730 686/844/2731
+f 686/844/2731 783/1125/2730 885/1126/2732
+s 658
+f 362/1128/2733 687/1129/2734 784/1127/2735
+f 784/1127/2735 687/1129/2734 793/1130/2736
+s 659
+f 529/739/2737 689/985/2738 688/845/2739
+f 688/845/2739 689/985/2738 886/1131/2740
+s 660
+f 605/846/2741 787/1132/2742 613/847/2743
+f 613/847/2743 787/1132/2742 794/1133/2744
+s 661
+f 692/994/2745 610/851/2746 792/1134/2747
+f 792/1134/2747 610/851/2746 890/1135/2748
+s 662
+f 693/852/2749 533/645/2750 785/982/2751
+f 785/982/2751 533/645/2750 687/981/2752
+s 663
+f 694/854/2753 793/1130/2754 533/853/2755
+f 533/853/2755 793/1130/2754 687/1129/2756
+s 664
+f 694/854/2757 612/855/2758 793/1130/2759
+f 793/1130/2759 612/855/2758 784/1127/2760
+s 665
+f 613/847/2761 794/1133/2762 695/856/2763
+f 695/856/2763 794/1133/2762 891/1136/2764
+s 666
+f 535/650/2765 695/856/2766 696/857/2767
+f 696/857/2767 695/856/2766 892/1137/2768
+s 667
+f 696/857/2769 795/1138/2770 614/750/2771
+f 614/750/2771 795/1138/2770 796/997/2772
+s 668
+f 697/996/2773 797/1139/2774 536/749/2775
+f 536/749/2775 797/1139/2774 698/998/2776
+s 669
+f 617/858/2777 800/1140/2778 623/859/2779
+f 623/859/2779 800/1140/2778 805/1141/2780
+s 670
+f 573/1143/2781 700/1144/2782 746/1142/2783
+f 746/1142/2783 700/1144/2782 895/1145/2784
+s 671
+f 619/861/2785 802/1146/2786 618/754/2787
+f 618/754/2787 802/1146/2786 801/1003/2788
+s 672
+f 565/792/2789 736/1058/2790 619/861/2791
+f 619/861/2791 736/1058/2790 802/1146/2792
+s 673
+f 701/1004/2793 803/1147/2794 620/864/2795
+f 620/864/2795 803/1147/2794 804/1148/2796
+s 674
+f 620/864/2797 804/1148/2798 647/865/2799
+f 647/865/2799 804/1148/2798 839/1149/2800
+s 675
+f 622/867/2801 702/1005/2802 705/1007/2803
+f 705/1007/2803 702/1005/2802 896/1150/2804
+s 676
+f 623/859/2805 805/1141/2806 704/868/2807
+f 704/868/2807 805/1141/2806 899/1151/2808
+s 677
+f 624/762/2809 806/1153/2810 707/1152/2811
+f 707/1152/2811 806/1153/2810 900/1154/2812
+s 678
+f 708/1010/2813 807/1155/2814 624/762/2815
+f 624/762/2815 807/1155/2814 806/1153/2816
+s 679
+f 625/869/2817 808/1156/2818 709/1012/2819
+f 709/1012/2819 808/1156/2818 902/1157/2820
+s 680
+f 710/872/2821 809/1158/2822 625/869/2823
+f 625/869/2823 809/1158/2822 808/1156/2824
+s 681
+f 626/1013/2825 709/1012/2826 810/1159/2827
+f 810/1159/2827 709/1012/2826 903/1160/2828
+s 682
+f 626/873/2829 810/1161/2830 627/874/2831
+f 627/874/2831 810/1161/2830 811/1162/2832
+s 683
+f 627/874/2833 811/1162/2834 628/875/2835
+f 628/875/2835 811/1162/2834 813/1163/2836
+s 684
+f 711/1165/2837 812/1166/2838 545/1164/2839
+f 545/1164/2839 812/1166/2838 814/1167/2840
+s 685
+f 628/875/2841 813/1163/2842 711/877/2843
+f 711/877/2843 813/1163/2842 905/1168/2844
+s 686
+f 712/1017/2845 629/1016/2846 815/1169/2847
+f 815/1169/2847 629/1016/2846 816/1170/2848
+s 687
+f 714/1171/2849 817/1172/2850 550/1023/2851
+f 550/1023/2851 817/1172/2850 823/1024/2852
+s 688
+f 630/1174/2853 631/1175/2854 818/1173/2855
+f 818/1173/2855 631/1175/2854 910/1176/2856
+s 689
+f 630/1174/2857 819/1178/2858 715/1177/2859
+f 715/1177/2859 819/1178/2858 908/1179/2860
+s 690
+f 632/882/2861 821/1180/2862 633/883/2863
+f 633/883/2863 821/1180/2862 634/1181/2864
+s 691
+f 634/885/2865 821/1182/2866 713/886/2867
+f 713/886/2867 821/1182/2866 816/1019/2868
+s 692
+f 716/1021/2869 822/1183/2870 549/1022/2871
+f 549/1022/2871 822/1183/2870 717/1026/2872
+s 693
+f 718/1028/2873 742/1184/2874 636/887/2875
+f 636/887/2875 742/1184/2874 653/890/2876
+s 694
+f 720/1186/2877 637/1187/2878 824/1185/2879
+f 824/1185/2879 637/1187/2878 914/1188/2880
+s 695
+f 638/1189/2881 825/1190/2882 637/1187/2883
+f 637/1187/2883 825/1190/2882 914/1188/2884
+s 696
+f 721/1192/2885 554/1193/2886 826/1191/2887
+f 826/1191/2887 554/1193/2886 723/1194/2888
+s 697
+f 725/898/2889 639/897/2890 829/1195/2891
+f 829/1195/2891 639/897/2890 921/1196/2892
+s 698
+f 640/782/2893 830/1039/2894 724/899/2895
+f 724/899/2895 830/1039/2894 920/1197/2896
+s 699
+f 557/900/2897 726/903/2898 727/1198/2899
+f 727/1198/2899 726/903/2898 922/1199/2900
+s 700
+f 726/903/2901 556/902/2902 831/1200/2903
+f 831/1200/2903 556/902/2902 643/1201/2904
+s 701
+f 641/1203/2905 728/1204/2906 832/1202/2907
+f 832/1202/2907 728/1204/2906 927/1205/2908
+s 702
+f 641/1203/2909 834/1207/2910 642/1206/2911
+f 642/1206/2911 834/1207/2910 835/1208/2912
+s 703
+f 642/1210/2913 835/1211/2914 643/1209/2915
+f 643/1209/2915 835/1211/2914 931/1212/2916
+s 704
+f 644/1214/2917 836/1215/2918 731/1213/2919
+f 731/1213/2919 836/1215/2918 933/1216/2920
+s 705
+f 645/787/2921 838/1055/2922 732/1052/2923
+f 732/1052/2923 838/1055/2922 934/1217/2924
+s 706
+f 647/865/2925 839/1149/2926 735/1218/2927
+f 735/1218/2927 839/1149/2926 734/1219/2928
+s 707
+f 737/1061/2929 648/1060/2930 840/1220/2931
+f 840/1220/2931 648/1060/2930 841/1221/2932
+s 708
+f 649/1223/2933 738/1224/2934 842/1222/2935
+f 842/1222/2935 738/1224/2934 848/1225/2936
+s 709
+f 650/1227/2937 649/1223/2938 843/1226/2939
+f 843/1226/2939 649/1223/2938 842/1222/2940
+s 710
+f 650/1227/2941 844/1081/2942 739/1228/2943
+f 739/1228/2943 844/1081/2942 750/1080/2944
+s 711
+f 568/797/2945 740/914/2946 741/1064/2947
+f 741/1064/2947 740/914/2946 937/1229/2948
+s 712
+f 572/921/2949 745/923/2950 740/1230/2951
+f 740/1230/2951 745/923/2950 937/1231/2952
+s 713
+f 719/1068/2953 652/805/2954 718/1232/2955
+f 718/1232/2955 652/805/2954 742/1070/2956
+s 714
+f 655/1234/2957 654/1235/2958 845/1233/2959
+f 845/1233/2959 654/1235/2958 846/1236/2960
+s 715
+f 654/1235/2961 743/1237/2962 846/1236/2963
+f 846/1236/2963 743/1237/2962 939/1238/2964
+s 716
+f 571/917/2965 717/1026/2966 743/918/2967
+f 743/918/2967 717/1026/2966 822/1183/2968
+s 717
+f 744/1240/2969 655/1234/2970 847/1239/2971
+f 847/1239/2971 655/1234/2970 845/1233/2972
+s 718
+f 744/1072/2973 848/1225/2974 656/922/2975
+f 656/922/2975 848/1225/2974 738/1224/2976
+s 719
+f 656/922/2977 738/1224/2978 745/923/2979
+f 745/923/2979 738/1224/2978 737/1241/2980
+s 720
+f 657/1077/2981 849/1078/2982 747/1242/2983
+f 747/1242/2983 849/1078/2982 942/1243/2984
+s 721
+f 658/810/2985 749/1244/2986 850/1082/2987
+f 850/1082/2987 749/1244/2986 944/1245/2988
+s 722
+f 576/927/2989 844/1081/2990 749/928/2991
+f 749/928/2991 844/1081/2990 938/1246/2992
+s 723
+f 750/1080/2993 659/1079/2994 851/1247/2995
+f 851/1247/2995 659/1079/2994 758/1248/2996
+s 724
+f 579/933/2997 752/936/2998 852/1249/2999
+f 852/1249/2999 752/936/2998 946/1250/3000
+s 725
+f 578/938/3001 753/1083/3002 752/1251/3003
+f 752/1251/3003 753/1083/3002 947/1252/3004
+s 726
+f 661/816/3005 854/1088/3006 660/937/3007
+f 660/937/3007 854/1088/3006 949/1253/3008
+s 727
+f 755/939/3009 855/1254/3010 580/815/3011
+f 580/815/3011 855/1254/3010 756/1087/3012
+s 728
+f 755/1256/3013 581/1092/3014 856/1255/3015
+f 856/1255/3015 581/1092/3014 757/1091/3016
+s 729
+f 662/940/3017 663/942/3018 858/1257/3019
+f 858/1257/3019 663/942/3018 859/1258/3020
+s 730
+f 663/942/3021 751/943/3022 859/1258/3023
+f 859/1258/3023 751/943/3022 945/1259/3024
+s 731
+f 665/944/3025 861/1095/3026 760/1098/3027
+f 760/1098/3027 861/1095/3026 851/1260/3028
+s 732
+f 761/1102/3029 667/822/3030 862/1261/3031
+f 862/1261/3031 667/822/3030 762/1103/3032
+s 733
+f 761/1263/3033 863/1264/3034 668/1262/3035
+f 668/1262/3035 863/1264/3034 956/1265/3036
+s 734
+f 668/947/3037 864/1266/3038 670/824/3039
+f 670/824/3039 864/1266/3038 586/823/3040
+s off
+f 865/1267/3041 587/825/3042 764/1104/3043
+s 735
+f 671/950/3044 673/827/3045 867/1268/3046
+f 867/1268/3046 673/827/3045 869/1108/3047
+s 736
+f 766/952/3048 868/1269/3049 588/826/3050
+f 588/826/3050 868/1269/3049 767/1107/3051
+s 737
+f 768/1109/3052 870/1270/3053 674/829/3054
+f 674/829/3054 870/1270/3053 871/1111/3055
+s 738
+f 768/1272/3056 675/1273/3057 872/1271/3058
+f 872/1271/3058 675/1273/3057 873/1274/3059
+s 739
+f 675/1273/3060 676/1275/3061 873/1274/3062
+f 873/1274/3062 676/1275/3061 874/1276/3063
+s 740
+f 676/1275/3064 677/1277/3065 874/1276/3066
+f 874/1276/3066 677/1277/3065 965/1278/3067
+s 741
+f 769/1279/3068 875/1280/3069 677/1277/3070
+f 677/1277/3070 875/1280/3069 965/1278/3071
+s 742
+f 769/959/3072 589/958/3073 876/1281/3074
+f 876/1281/3074 589/958/3073 770/962/3075
+s 743
+f 590/961/3076 771/1112/3077 770/962/3078
+f 770/962/3078 771/1112/3077 968/1282/3079
+s 744
+f 678/964/3080 679/965/3081 877/1283/3082
+f 877/1283/3082 679/965/3081 878/1284/3083
+s 745
+f 679/965/3084 772/966/3085 878/1284/3086
+f 878/1284/3086 772/966/3085 969/1285/3087
+s 746
+f 776/1286/3088 880/1287/3089 681/1122/3090
+f 681/1122/3090 880/1287/3089 777/1121/3091
+s 747
+f 682/969/3092 777/1121/3093 881/1123/3094
+f 881/1123/3094 777/1121/3093 975/1288/3095
+s 748
+f 598/731/3096 778/970/3097 779/971/3098
+f 779/971/3098 778/970/3097 976/1289/3099
+s 749
+f 599/974/3100 779/1290/3101 780/975/3102
+f 780/975/3102 779/1290/3101 977/1291/3103
+s 750
+f 683/972/3104 780/975/3105 882/1292/3106
+f 882/1292/3106 780/975/3105 978/1293/3107
+s 751
+f 683/972/3108 882/1292/3109 684/976/3110
+f 684/976/3110 882/1292/3109 883/1294/3111
+s 752
+f 684/976/3112 883/1294/3113 685/979/3114
+f 685/979/3114 883/1294/3113 884/1295/3115
+s 753
+f 685/979/3116 884/1295/3117 601/836/3118
+f 601/836/3118 884/1295/3117 781/980/3119
+s 754
+f 602/841/3120 781/980/3121 782/1124/3122
+f 782/1124/3122 781/980/3121 980/1296/3123
+s 755
+f 604/738/3124 691/995/3125 785/982/3126
+f 785/982/3126 691/995/3125 693/852/3127
+s 756
+f 786/984/3128 887/1297/3129 605/846/3130
+f 605/846/3130 887/1297/3129 787/1132/3131
+s 757
+f 688/845/3132 886/1131/3133 786/984/3134
+f 786/984/3134 886/1131/3133 984/1298/3135
+s 758
+f 689/985/3136 788/986/3137 888/1299/3138
+f 888/1299/3138 788/986/3137 987/1300/3139
+s 759
+f 606/740/3140 789/987/3141 788/986/3142
+f 788/986/3142 789/987/3141 988/1301/3143
+s 760
+f 607/741/3144 790/1302/3145 789/987/3146
+f 789/987/3146 790/1302/3145 989/1303/3147
+s 761
+f 608/992/3148 791/993/3149 790/1302/3150
+f 790/1302/3150 791/993/3149 990/1304/3151
+s 762
+f 692/994/3152 889/1305/3153 690/848/3154
+f 690/848/3154 889/1305/3153 791/993/3155
+s 763
+f 610/851/3156 686/844/3157 890/1135/3158
+f 890/1135/3158 686/844/3157 885/1126/3159
+s 764
+f 692/994/3160 792/1134/3161 889/1305/3162
+f 889/1305/3162 792/1134/3161 991/1306/3163
+s 765
+f 994/1308/3164 893/1307/3165 696/857/3166
+f 893/1307/3165 795/1138/3167 696/857/3166
+s 766
+f 797/1139/3168 894/1309/3169 698/998/3170
+f 698/998/3170 894/1309/3169 803/1147/3171
+s 767
+f 698/998/3172 803/1147/3173 699/999/3174
+f 699/999/3174 803/1147/3173 701/1004/3175
+s 768
+f 617/858/3176 798/1000/3177 800/1140/3178
+f 800/1140/3178 798/1000/3177 998/1310/3179
+s 769
+f 615/752/3180 799/1001/3181 798/1000/3182
+f 798/1000/3182 799/1001/3181 999/1311/3183
+s 770
+f 616/753/3184 706/1002/3185 799/1001/3186
+f 799/1001/3186 706/1002/3185 705/1007/3187
+s 771
+f 700/1144/3188 801/1312/3189 895/1145/3190
+f 895/1145/3190 801/1312/3189 1001/1313/3191
+s 772
+f 702/1005/3192 703/1006/3193 897/1314/3194
+f 897/1314/3194 703/1006/3193 898/1315/3195
+s 773
+f 703/1006/3196 704/868/3197 898/1315/3198
+f 898/1315/3198 704/868/3197 899/1151/3199
+s 774
+f 710/872/3200 707/1009/3201 809/1158/3202
+f 809/1158/3202 707/1009/3201 1008/1316/3203
+s 775
+f 807/1155/3204 708/1010/3205 901/1317/3206
+f 901/1317/3206 708/1010/3205 720/894/3207
+s 776
+f 812/1166/3208 711/1165/3209 904/1318/3210
+f 904/1318/3210 711/1165/3209 905/1319/3211
+s 777
+f 814/1320/3212 906/1321/3213 631/1175/3214
+f 631/1175/3214 906/1321/3213 910/1176/3215
+s 778
+f 815/1323/3216 907/1324/3217 712/1322/3218
+f 712/1322/3218 907/1324/3217 908/1179/3219
+s 779
+f 712/1322/3220 908/1179/3221 714/1171/3222
+f 714/1171/3222 908/1179/3221 819/1178/3223
+s 780
+f 714/1171/3224 819/1178/3225 817/1172/3226
+f 817/1172/3226 819/1178/3225 909/1325/3227
+s 781
+f 818/1173/3228 909/1325/3229 630/1174/3230
+f 630/1174/3230 909/1325/3229 819/1178/3231
+s 782
+f 632/882/3232 820/1020/3233 821/1180/3234
+f 821/1180/3234 820/1020/3233 907/1326/3235
+s 783
+f 715/1177/3236 908/1179/3237 820/1327/3238
+f 820/1327/3238 908/1179/3237 907/1324/3239
+s 784
+f 822/1329/3240 716/1330/3241 911/1328/3242
+f 911/1328/3242 716/1330/3241 912/1331/3243
+s 785
+f 716/1330/3244 823/1332/3245 912/1331/3246
+f 912/1331/3246 823/1332/3245 1015/1333/3247
+s 786
+f 824/1335/3248 913/1336/3249 720/1334/3250
+f 720/1334/3250 913/1336/3249 901/1337/3251
+s 787
+f 638/776/3252 827/1033/3253 825/1338/3254
+f 825/1338/3254 827/1033/3253 1020/1339/3255
+s 788
+f 826/1341/3256 915/1342/3257 721/1340/3258
+f 721/1340/3258 915/1342/3257 916/1343/3259
+s 789
+f 721/1031/3260 916/1344/3261 722/1032/3262
+f 722/1032/3262 916/1344/3261 917/1345/3263
+s 790
+f 722/1032/3264 917/1345/3265 827/1033/3266
+f 827/1033/3266 917/1345/3265 1022/1346/3267
+s 791
+f 723/1034/3268 918/1347/3269 826/1341/3270
+f 826/1341/3270 918/1347/3269 1021/1348/3271
+s 792
+f 725/898/3272 829/1195/3273 723/1034/3274
+f 723/1034/3274 829/1195/3273 918/1347/3275
+s 793
+f 828/1350/3276 919/1351/3277 639/1349/3278
+f 639/1349/3278 919/1351/3277 921/1352/3279
+s 794
+f 724/899/3280 920/1197/3281 828/1037/3282
+f 828/1037/3282 920/1197/3281 1024/1353/3283
+s 795
+f 831/1200/3284 923/1354/3285 726/903/3286
+f 726/903/3286 923/1354/3285 922/1199/3287
+s 796
+f 643/1209/3288 924/1356/3289 831/1355/3290
+f 831/1355/3290 924/1356/3289 1026/1357/3291
+s 797
+f 830/1359/3292 727/1360/3293 925/1358/3294
+f 925/1358/3294 727/1360/3293 922/1361/3295
+s 798
+f 832/1202/3296 926/1362/3297 641/1203/3298
+f 641/1203/3298 926/1362/3297 834/1207/3299
+s 799
+f 728/1040/3300 833/1043/3301 928/1363/3302
+f 928/1363/3302 833/1043/3301 1029/1364/3303
+s 800
+f 730/1048/3304 929/1365/3305 729/1049/3306
+f 729/1049/3306 929/1365/3305 930/1366/3307
+s 801
+f 729/1045/3308 930/1367/3309 833/1043/3310
+f 833/1043/3310 930/1367/3309 1029/1364/3311
+s 802
+f 731/1051/3312 932/1368/3313 730/1048/3314
+f 730/1048/3314 932/1368/3313 929/1365/3315
+s 803
+f 644/907/3316 837/1053/3317 836/1369/3318
+f 836/1369/3318 837/1053/3317 1031/1370/3319
+s 804
+f 732/1052/3320 934/1217/3321 837/1053/3322
+f 837/1053/3322 934/1217/3321 1033/1371/3323
+s 805
+f 734/1219/3324 839/1149/3325 733/1372/3326
+f 733/1372/3326 839/1149/3325 935/1373/3327
+s 806
+f 733/1054/3328 935/1374/3329 838/1055/3330
+f 838/1055/3330 935/1374/3329 1034/1375/3331
+s 807
+f 736/1377/3332 747/1242/3333 936/1376/3334
+f 936/1376/3334 747/1242/3333 942/1243/3335
+s 808
+f 840/1378/3336 937/1231/3337 737/1241/3338
+f 737/1241/3338 937/1231/3337 745/923/3339
+s 809
+f 843/1226/3340 938/1246/3341 650/1227/3342
+f 650/1227/3342 938/1246/3341 844/1081/3343
+s 810
+f 841/1067/3344 741/1064/3345 840/1379/3346
+f 840/1379/3346 741/1064/3345 937/1229/3347
+s 811
+f 847/1239/3348 940/1380/3349 744/1240/3350
+f 744/1240/3350 940/1380/3349 848/1381/3351
+s 812
+f 746/1383/3352 941/1384/3353 748/1382/3354
+f 748/1382/3354 941/1384/3353 943/1385/3355
+s 813
+f 748/1076/3356 943/1386/3357 849/1078/3358
+f 849/1078/3358 943/1386/3357 1043/1387/3359
+s 814
+f 851/1247/3360 861/1388/3361 750/1080/3362
+f 750/1080/3362 861/1388/3361 739/1228/3363
+s 815
+f 751/943/3364 850/1082/3365 945/1259/3366
+f 945/1259/3366 850/1082/3365 1044/1389/3367
+s 816
+f 753/1083/3368 853/1084/3369 948/1390/3370
+f 948/1390/3370 853/1084/3369 1047/1391/3371
+s 817
+f 660/937/3372 949/1253/3373 853/1084/3374
+f 853/1084/3374 949/1253/3373 1048/1392/3375
+s 818
+f 762/1394/3376 754/1395/3377 950/1393/3378
+f 950/1393/3378 754/1395/3377 852/1396/3379
+s 819
+f 755/1256/3380 856/1255/3381 855/1397/3382
+f 855/1397/3382 856/1255/3381 1049/1398/3383
+s 820
+f 855/1400/3384 951/1401/3385 756/1399/3386
+f 756/1399/3386 951/1401/3385 854/1402/3387
+s 821
+f 664/1404/3388 857/1405/3389 860/1403/3390
+f 860/1403/3390 857/1405/3389 1050/1406/3391
+s 822
+f 662/940/3392 952/1407/3393 857/1090/3394
+f 857/1090/3394 952/1407/3393 1051/1408/3395
+s 823
+f 662/940/3396 858/1257/3397 952/1407/3398
+f 952/1407/3398 858/1257/3397 1052/1409/3399
+s 824
+f 856/1411/3400 757/1412/3401 953/1410/3402
+f 953/1410/3402 757/1412/3401 954/1413/3403
+s 825
+f 757/1415/3404 860/1403/3405 954/1414/3406
+f 954/1414/3406 860/1403/3405 1053/1416/3407
+s 826
+f 851/1260/3408 758/1417/3409 760/1098/3410
+f 760/1098/3410 758/1417/3409 759/1101/3411
+s 827
+f 862/1418/3412 955/1419/3413 761/1263/3414
+f 761/1263/3414 955/1419/3413 863/1264/3415
+s 828
+f 762/1394/3416 950/1393/3417 862/1418/3418
+f 862/1418/3418 950/1393/3417 955/1419/3419
+s 829
+f 668/1262/3420 956/1265/3421 864/1420/3422
+f 864/1420/3422 956/1265/3421 1054/1421/3423
+s 830
+f 586/823/3424 864/1266/3425 669/948/3426
+f 669/948/3426 864/1266/3425 1056/1422/3427
+s 831
+f 865/1267/3428 957/1423/3429 587/825/3430
+f 587/825/3430 957/1423/3429 1057/1424/3431
+s 832
+f 866/1105/3432 671/950/3433 958/1425/3434
+f 958/1425/3434 671/950/3433 867/1268/3435
+s 833
+f 587/825/3436 959/1426/3437 765/1106/3438
+f 765/1106/3438 959/1426/3437 1061/1427/3439
+s 834
+f 765/1106/3440 961/1428/3441 772/966/3442
+f 772/966/3442 961/1428/3441 969/1285/3443
+s 835
+f 767/1107/3444 868/1269/3445 962/1429/3446
+f 962/1429/3446 868/1269/3445 1064/1430/3447
+s 836
+f 869/1108/3448 767/1107/3449 963/1431/3450
+f 963/1431/3450 767/1107/3449 962/1429/3451
+s 837
+f 870/1433/3452 768/1272/3453 964/1432/3454
+f 964/1432/3454 768/1272/3453 872/1271/3455
+s 838
+f 680/1110/3456 871/1111/3457 879/1434/3458
+f 879/1434/3458 871/1111/3457 1067/1435/3459
+s 839
+f 875/1280/3460 769/1279/3461 966/1436/3462
+f 966/1436/3462 769/1279/3461 876/1437/3463
+s 840
+f 876/1281/3464 770/962/3465 967/1438/3466
+f 967/1438/3466 770/962/3465 968/1282/3467
+s 841
+f 771/1112/3468 877/1115/3469 968/1282/3470
+f 968/1282/3470 877/1115/3469 1075/1439/3471
+s 842
+f 773/1116/3472 879/1117/3473 970/1440/3474
+f 970/1440/3474 879/1117/3473 1077/1441/3475
+s 843
+f 774/1118/3476 773/1116/3477 971/1442/3478
+f 971/1442/3478 773/1116/3477 970/1440/3479
+s 844
+f 775/1119/3480 774/1118/3481 972/1443/3482
+f 972/1443/3482 774/1118/3481 971/1442/3483
+s 845
+f 776/1120/3484 775/1119/3485 973/1444/3486
+f 973/1444/3486 775/1119/3485 972/1443/3487
+s 846
+f 880/1287/3488 776/1286/3489 974/1445/3490
+f 974/1445/3490 776/1286/3489 973/1446/3491
+s 847
+f 777/1121/3492 880/1287/3493 975/1288/3494
+f 975/1288/3494 880/1287/3493 1078/1447/3495
+s 848
+f 778/1449/3496 881/1450/3497 976/1448/3498
+f 976/1448/3498 881/1450/3497 1079/1451/3499
+s 849
+f 884/1295/3500 979/1452/3501 781/980/3502
+f 781/980/3502 979/1452/3501 980/1296/3503
+s 850
+f 782/1124/3504 981/1453/3505 783/1125/3506
+f 783/1125/3506 981/1453/3505 982/1454/3507
+s 851
+f 783/1125/3508 982/1454/3509 885/1126/3510
+f 885/1126/3510 982/1454/3509 890/1135/3511
+s 852
+f 689/985/3512 888/1299/3513 886/1131/3514
+f 886/1131/3514 888/1299/3513 1082/1455/3515
+s 853
+f 887/1297/3516 786/984/3517 983/1456/3518
+f 983/1456/3518 786/984/3517 984/1298/3519
+s 854
+f 887/1297/3520 985/1457/3521 787/1132/3522
+f 787/1132/3522 985/1457/3521 986/1458/3523
+s 855
+f 787/1132/3524 986/1458/3525 794/1133/3526
+f 794/1133/3526 986/1458/3525 1084/1459/3527
+s 856
+f 791/993/3528 889/1305/3529 990/1304/3530
+f 990/1304/3530 889/1305/3529 1086/1460/3531
+s 857
+f 792/1134/3532 890/1135/3533 991/1306/3534
+f 991/1306/3534 890/1135/3533 982/1454/3535
+s 858
+f 794/1133/3536 992/1461/3537 891/1136/3538
+f 891/1136/3538 992/1461/3537 979/1452/3539
+s 859
+f 695/856/3540 891/1136/3541 892/1137/3542
+f 892/1137/3542 891/1136/3541 883/1294/3543
+s 860
+f 696/857/3544 892/1137/3545 993/1462/3546
+f 993/1462/3546 892/1137/3545 1081/1463/3547
+s 861
+f 795/1465/3548 893/1466/3549 995/1464/3550
+f 995/1464/3550 893/1466/3549 1088/1467/3551
+s 862
+f 796/1469/3552 795/1465/3553 996/1468/3554
+f 996/1468/3554 795/1465/3553 995/1464/3555
+s 863
+f 697/1470/3556 796/1469/3557 1091/1472/3558
+f 1091/1472/3558 796/1469/3557 997/1471/3559
+s 864
+f 800/1140/3560 1000/1473/3561 805/1141/3562
+f 805/1141/3562 1000/1473/3561 1004/1474/3563
+s 865
+f 746/1383/3564 895/1475/3565 941/1384/3566
+f 941/1384/3566 895/1475/3565 1095/1476/3567
+s 866
+f 802/1146/3568 1002/1477/3569 801/1003/3570
+f 801/1003/3570 1002/1477/3569 1001/1478/3571
+s 867
+f 736/1058/3572 936/1479/3573 802/1146/3574
+f 802/1146/3574 936/1479/3573 1002/1477/3575
+s 868
+f 804/1148/3576 803/1147/3577 1003/1480/3578
+f 1003/1480/3578 803/1147/3577 894/1309/3579
+s 869
+f 839/1149/3580 804/1148/3581 935/1373/3582
+f 935/1373/3582 804/1148/3581 1003/1480/3583
+s 870
+f 702/1005/3584 897/1314/3585 896/1150/3586
+f 896/1150/3586 897/1314/3585 1096/1481/3587
+s 871
+f 705/1007/3588 896/1150/3589 799/1001/3590
+f 799/1001/3590 896/1150/3589 999/1311/3591
+s 872
+f 805/1141/3592 1004/1474/3593 899/1151/3594
+f 899/1151/3594 1004/1474/3593 1099/1482/3595
+s 873
+f 807/1155/3596 1005/1483/3597 806/1153/3598
+f 806/1153/3598 1005/1483/3597 1007/1484/3599
+s 874
+f 900/1486/3600 1006/1487/3601 707/1485/3602
+f 707/1485/3602 1006/1487/3601 1008/1488/3603
+s 875
+f 806/1153/3604 1007/1484/3605 900/1154/3606
+f 900/1154/3606 1007/1484/3605 1101/1489/3607
+s 876
+f 901/1317/3608 1009/1490/3609 807/1155/3610
+f 807/1155/3610 1009/1490/3609 1005/1483/3611
+s 877
+f 808/1492/3612 809/1493/3613 1010/1491/3614
+f 1010/1491/3614 809/1493/3613 1105/1494/3615
+s 878
+f 709/1012/3616 902/1157/3617 903/1160/3618
+f 903/1160/3618 902/1157/3617 1106/1495/3619
+s 879
+f 808/1492/3620 1011/1497/3621 902/1496/3622
+f 902/1496/3622 1011/1497/3621 1014/1498/3623
+s 880
+f 903/1160/3624 1012/1499/3625 810/1159/3626
+f 810/1159/3626 1012/1499/3625 811/1500/3627
+s 881
+f 811/1162/3628 1012/1501/3629 813/1163/3630
+f 813/1163/3630 1012/1501/3629 905/1168/3631
+s 882
+f 904/1503/3632 1013/1504/3633 812/1502/3634
+f 812/1502/3634 1013/1504/3633 1014/1498/3635
+s 883
+f 812/1502/3636 1014/1498/3637 814/1320/3638
+f 814/1320/3638 1014/1498/3637 1011/1497/3639
+s 884
+f 814/1320/3640 1011/1497/3641 906/1321/3642
+f 906/1321/3642 1011/1497/3641 1104/1505/3643
+s 885
+f 907/1326/3644 815/1506/3645 821/1180/3646
+f 821/1180/3646 815/1506/3645 816/1507/3647
+s 886
+f 823/1332/3648 817/1508/3649 1015/1333/3650
+f 1015/1333/3650 817/1508/3649 1108/1509/3651
+s 887
+f 818/1511/3652 1016/1512/3653 909/1510/3654
+f 909/1510/3654 1016/1512/3653 1109/1513/3655
+s 888
+f 910/1514/3656 1017/1515/3657 818/1511/3658
+f 818/1511/3658 1017/1515/3657 1016/1512/3659
+s 889
+f 911/1328/3660 939/1238/3661 822/1329/3662
+f 822/1329/3662 939/1238/3661 743/1237/3663
+s 890
+f 824/1517/3664 1018/1518/3665 913/1516/3666
+f 913/1516/3666 1018/1518/3665 1113/1519/3667
+s 891
+f 914/1188/3668 1019/1520/3669 824/1185/3670
+f 824/1185/3670 1019/1520/3669 1018/1521/3671
+s 892
+f 914/1188/3672 825/1190/3673 1019/1520/3674
+f 1019/1520/3674 825/1190/3673 1115/1522/3675
+s 893
+f 826/1341/3676 1021/1348/3677 915/1342/3678
+f 915/1342/3678 1021/1348/3677 1116/1523/3679
+s 894
+f 919/1351/3680 828/1350/3681 1023/1524/3682
+f 1023/1524/3682 828/1350/3681 1024/1525/3683
+s 895
+f 921/1527/3684 1025/1528/3685 829/1526/3686
+f 829/1526/3686 1025/1528/3685 1120/1529/3687
+s 896
+f 830/1039/3688 925/1530/3689 920/1197/3690
+f 920/1197/3690 925/1530/3689 1024/1353/3691
+s 897
+f 831/1355/3692 1026/1357/3693 923/1531/3694
+f 923/1531/3694 1026/1357/3693 1121/1532/3695
+s 898
+f 643/1209/3696 931/1212/3697 924/1356/3698
+f 924/1356/3698 931/1212/3697 1122/1533/3699
+s 899
+f 926/1535/3700 832/1536/3701 1027/1534/3702
+f 1027/1534/3702 832/1536/3701 1032/1537/3703
+s 900
+f 927/1205/3704 1028/1538/3705 832/1202/3706
+f 832/1202/3706 1028/1538/3705 1032/1539/3707
+s 901
+f 728/1204/3708 928/1540/3709 927/1205/3710
+f 927/1205/3710 928/1540/3709 1125/1541/3711
+s 902
+f 926/1535/3712 1030/1543/3713 834/1542/3714
+f 834/1542/3714 1030/1543/3713 1126/1544/3715
+s 903
+f 835/1546/3716 834/1542/3717 931/1545/3718
+f 931/1545/3718 834/1542/3717 1126/1544/3719
+s 904
+f 731/1213/3720 933/1216/3721 932/1547/3722
+f 932/1547/3722 933/1216/3721 1127/1548/3723
+s 905
+f 836/1215/3724 1032/1549/3725 933/1216/3726
+f 933/1216/3726 1032/1549/3725 1028/1550/3727
+s 906
+f 838/1055/3728 1034/1375/3729 934/1217/3730
+f 934/1217/3730 1034/1375/3729 1130/1551/3731
+s 907
+f 843/1553/3732 842/1554/3733 1035/1552/3734
+f 1035/1552/3734 842/1554/3733 1036/1555/3735
+s 908
+f 842/1554/3736 848/1381/3737 1036/1555/3738
+f 1036/1555/3738 848/1381/3737 940/1380/3739
+s 909
+f 938/1557/3740 843/1553/3741 1037/1556/3742
+f 1037/1556/3742 843/1553/3741 1035/1552/3743
+s 910
+f 847/1239/3744 845/1233/3745 1038/1558/3746
+f 1038/1558/3746 845/1233/3745 1039/1559/3747
+s 911
+f 845/1233/3748 846/1236/3749 1039/1559/3750
+f 1039/1559/3750 846/1236/3749 1040/1560/3751
+s 912
+f 846/1236/3752 939/1238/3753 1040/1560/3754
+f 1040/1560/3754 939/1238/3753 1110/1561/3755
+s 913
+f 940/1380/3756 847/1239/3757 1041/1562/3758
+f 1041/1562/3758 847/1239/3757 1038/1558/3759
+s 914
+f 942/1243/3760 849/1078/3761 1042/1563/3762
+f 1042/1563/3762 849/1078/3761 1043/1387/3763
+s 915
+f 850/1082/3764 944/1245/3765 1044/1389/3766
+f 1044/1389/3766 944/1245/3765 1134/1564/3767
+s 916
+f 749/1244/3768 938/1557/3769 944/1245/3770
+f 944/1245/3770 938/1557/3769 1037/1556/3771
+s 917
+f 852/1396/3772 946/1565/3773 950/1393/3774
+f 950/1393/3774 946/1565/3773 1045/1566/3775
+s 918
+f 946/1568/3776 752/1251/3777 1045/1567/3778
+f 1045/1567/3778 752/1251/3777 947/1252/3779
+s 919
+f 947/1252/3780 753/1083/3781 1046/1569/3782
+f 1046/1569/3782 753/1083/3781 948/1390/3783
+s 920
+f 854/1402/3784 951/1401/3785 949/1570/3786
+f 949/1570/3786 951/1401/3785 1138/1571/3787
+s 921
+f 855/1400/3788 1049/1572/3789 951/1401/3790
+f 951/1401/3790 1049/1572/3789 1139/1573/3791
+s 922
+f 859/1258/3792 945/1259/3793 858/1257/3794
+f 858/1257/3794 945/1259/3793 1135/1574/3795
+s 923
+f 856/1411/3796 953/1410/3797 1049/1575/3798
+f 1049/1575/3798 953/1410/3797 1139/1576/3799
+s 924
+f 863/1577/3800 955/1578/3801 1046/1569/3802
+f 1046/1569/3802 955/1578/3801 1136/1579/3803
+s 925
+f 956/1580/3804 863/1577/3805 948/1390/3806
+f 948/1390/3806 863/1577/3805 1046/1569/3807
+s 926
+f 763/949/3808 669/948/3809 1055/1581/3810
+f 1055/1581/3810 669/948/3809 1056/1422/3811
+s 927
+f 958/1425/3812 867/1268/3813 1058/1582/3814
+f 1058/1582/3814 867/1268/3813 1059/1583/3815
+s 928
+f 867/1268/3816 869/1108/3817 1059/1583/3818
+f 1059/1583/3818 869/1108/3817 963/1431/3819
+s 929
+f 959/1426/3820 587/825/3821 1149/1585/3822
+f 587/825/3821 1060/1584/3823 1149/1585/3822
+s 930
+f 765/1587/3824 960/1588/3825 961/1586/3826
+f 961/1586/3826 960/1588/3825 1150/1589/3827
+s 931
+f 960/1590/3828 765/1591/3829 1151/1593/3830
+f 1151/1593/3830 765/1591/3829 1062/1592/3831
+s 932
+f 766/952/3832 1063/1594/3833 868/1269/3834
+f 868/1269/3834 1063/1594/3833 1064/1430/3835
+s 933
+f 766/952/3836 672/951/3837 1063/1594/3838
+f 1063/1594/3838 672/951/3837 1145/1595/3839
+s 934
+f 964/1432/3840 1065/1596/3841 870/1433/3842
+f 870/1433/3842 1065/1596/3841 1066/1597/3843
+s 935
+f 870/1270/3844 1066/1598/3845 871/1111/3846
+f 871/1111/3846 1066/1598/3845 1067/1435/3847
+s 936
+f 964/1432/3848 872/1271/3849 1068/1599/3850
+f 1068/1599/3850 872/1271/3849 1069/1600/3851
+s 937
+f 872/1271/3852 873/1274/3853 1069/1600/3854
+f 1069/1600/3854 873/1274/3853 1157/1601/3855
+s 938
+f 874/1276/3856 1070/1602/3857 873/1274/3858
+f 873/1274/3858 1070/1602/3857 1157/1601/3859
+s 939
+f 965/1278/3860 1071/1603/3861 874/1276/3862
+f 874/1276/3862 1071/1603/3861 1070/1602/3863
+s 940
+f 966/1436/3864 1072/1604/3865 875/1280/3866
+f 875/1280/3866 1072/1604/3865 1159/1605/3867
+s 941
+f 965/1278/3868 875/1280/3869 1073/1606/3870
+f 1073/1606/3870 875/1280/3869 1159/1605/3871
+s 942
+f 966/1436/3872 876/1437/3873 1074/1607/3874
+f 1074/1607/3874 876/1437/3873 967/1608/3875
+s 943
+f 877/1115/3876 878/1609/3877 1075/1439/3878
+f 1075/1439/3878 878/1609/3877 1076/1610/3879
+s 944
+f 878/1609/3880 969/1611/3881 1076/1610/3882
+f 1076/1610/3882 969/1611/3881 1162/1612/3883
+s 945
+f 880/1287/3884 974/1445/3885 1078/1447/3886
+f 1078/1447/3886 974/1445/3885 1168/1613/3887
+s 946
+f 881/1450/3888 975/1614/3889 1079/1451/3890
+f 1079/1451/3890 975/1614/3889 1169/1615/3891
+s 947
+f 976/1448/3892 1080/1616/3893 779/1290/3894
+f 779/1290/3894 1080/1616/3893 977/1291/3895
+s 948
+f 780/975/3896 977/1291/3897 978/1293/3898
+f 978/1293/3898 977/1291/3897 1080/1616/3899
+s 949
+f 882/1292/3900 978/1293/3901 1081/1463/3902
+f 1081/1463/3902 978/1293/3901 1170/1617/3903
+s 950
+f 882/1292/3904 1081/1463/3905 883/1294/3906
+f 883/1294/3906 1081/1463/3905 892/1137/3907
+s 951
+f 883/1294/3908 891/1136/3909 884/1295/3910
+f 884/1295/3910 891/1136/3909 979/1452/3911
+s 952
+f 782/1124/3912 980/1296/3913 981/1453/3914
+f 981/1453/3914 980/1296/3913 1171/1618/3915
+s 953
+f 983/1456/3916 1083/1619/3917 887/1297/3918
+f 887/1297/3918 1083/1619/3917 985/1457/3919
+s 954
+f 886/1131/3920 1082/1455/3921 984/1298/3922
+f 984/1298/3922 1082/1455/3921 983/1456/3923
+s 955
+f 987/1300/3924 21/14/3925 888/1299/3926
+f 21/14/3925 13/9/3927 888/1299/3926
+f 1085/1620/3928 888/1299/3926 13/9/3927
+s 956
+f 788/986/3929 988/1301/3930 987/1300/3931
+f 987/1300/3931 988/1301/3930 1177/1621/3932
+s 957
+f 789/987/3933 989/1303/3934 988/1301/3935
+f 988/1301/3935 989/1303/3934 1178/1622/3936
+s 958
+f 790/1302/3937 990/1304/3938 989/1303/3939
+f 989/1303/3939 990/1304/3938 1086/1460/3940
+s 959
+f 889/1305/3941 991/1306/3942 1086/1460/3943
+f 1086/1460/3943 991/1306/3942 1180/1623/3944
+s 960
+f 794/1133/3945 1087/1624/3946 992/1461/3947
+f 992/1461/3947 1087/1624/3946 1181/1625/3948
+s 961
+f 696/857/3949 993/1462/3950 994/1308/3951
+f 994/1308/3951 993/1462/3950 1182/1626/3952
+s 962
+f 893/1307/3953 994/1308/3954 1088/1627/3955
+f 1088/1627/3955 994/1308/3954 1183/1628/3956
+s 963
+f 996/1468/3957 1186/1630/3958 796/1469/3959
+f 1089/1629/3960 796/1469/3959 1186/1630/3958
+s 964
+f 997/1471/3961 796/1469/3962 1188/1632/3963
+f 796/1469/3962 1090/1631/3964 1188/1632/3963
+s off
+f 697/1470/3965 1092/1633/3966 1191/1634/3967
+f 1093/1635/3968 697/1470/3969 1191/1634/3970
+s 965
+f 800/1140/3971 998/1310/3972 1000/1473/3973
+f 1000/1473/3973 998/1310/3972 1196/1636/3974
+s 966
+f 798/1000/3975 999/1311/3976 998/1310/3977
+f 998/1310/3977 999/1311/3976 1197/1637/3978
+s 967
+f 895/1145/3979 1001/1313/3980 1095/1638/3981
+f 1095/1638/3981 1001/1313/3980 1199/1639/3982
+s 968
+f 897/1314/3983 898/1315/3984 1097/1640/3985
+f 1097/1640/3985 898/1315/3984 1098/1641/3986
+s 969
+f 898/1315/3987 899/1151/3988 1098/1641/3989
+f 1098/1641/3989 899/1151/3988 1099/1482/3990
+s 970
+f 1006/1487/3991 900/1486/3992 1100/1642/3993
+f 1100/1642/3993 900/1486/3992 1101/1643/3994
+s 971
+f 1008/1644/3995 1102/1645/3996 809/1493/3997
+f 809/1493/3997 1102/1645/3996 1105/1494/3998
+s 972
+f 1009/1647/3999 901/1337/4000 1103/1646/4001
+f 1103/1646/4001 901/1337/4000 913/1336/4002
+s 973
+f 1010/1491/4003 1104/1505/4004 808/1492/4005
+f 808/1492/4005 1104/1505/4004 1011/1497/4006
+s 974
+f 1012/1499/4007 903/1160/4008 1013/1648/4009
+f 1013/1648/4009 903/1160/4008 1106/1495/4010
+s 975
+f 1013/1648/4011 904/1649/4012 1012/1499/4013
+f 1012/1499/4013 904/1649/4012 905/1650/4014
+s 976
+f 906/1651/4015 1107/1652/4016 910/1514/4017
+f 910/1514/4017 1107/1652/4016 1017/1515/4018
+s 977
+f 817/1508/4019 909/1510/4020 1108/1509/4021
+f 1108/1509/4021 909/1510/4020 1109/1513/4022
+s 978
+f 939/1238/4023 911/1328/4024 1110/1561/4025
+f 1110/1561/4025 911/1328/4024 1111/1653/4026
+s 979
+f 911/1328/4027 912/1331/4028 1111/1653/4029
+f 1111/1653/4029 912/1331/4028 1112/1654/4030
+s 980
+f 912/1331/4031 1015/1333/4032 1112/1654/4033
+f 1112/1654/4033 1015/1333/4032 1209/1655/4034
+s 981
+f 1020/1657/4035 1114/1658/4036 825/1656/4037
+f 825/1656/4037 1114/1658/4036 1115/1659/4038
+s 982
+f 827/1033/4039 1022/1346/4040 1020/1339/4041
+f 1020/1339/4041 1022/1346/4040 1215/1660/4042
+s 983
+f 915/1342/4043 1117/1661/4044 916/1343/4045
+f 916/1343/4045 1117/1661/4044 917/1662/4046
+s 984
+f 917/1345/4047 1117/1663/4048 1022/1346/4049
+f 1022/1346/4049 1117/1663/4048 1215/1660/4050
+s 985
+f 918/1665/4051 829/1526/4052 1118/1664/4053
+f 1118/1664/4053 829/1526/4052 1120/1529/4054
+s 986
+f 918/1665/4055 1119/1667/4056 1021/1666/4057
+f 1021/1666/4057 1119/1667/4056 1218/1668/4058
+s 987
+f 919/1669/4059 1023/1670/4060 1026/1357/4061
+f 1026/1357/4061 1023/1670/4060 1121/1532/4062
+s 988
+f 919/1669/4063 1026/1357/4064 921/1527/4065
+f 921/1527/4065 1026/1357/4064 924/1356/4066
+s 989
+f 1025/1528/4067 921/1527/4068 1122/1533/4069
+f 1122/1533/4069 921/1527/4068 924/1356/4070
+s 990
+f 922/1361/4071 923/1671/4072 925/1358/4073
+f 925/1358/4073 923/1671/4072 1121/1672/4074
+s 991
+f 1027/1534/4075 1123/1673/4076 926/1535/4077
+f 926/1535/4077 1123/1673/4076 1030/1543/4078
+s 992
+f 1028/1538/4079 927/1205/4080 1124/1674/4081
+f 1124/1674/4081 927/1205/4080 1125/1541/4082
+s 993
+f 928/1676/4083 1029/1677/4084 1125/1675/4085
+f 1125/1675/4085 1029/1677/4084 1128/1678/4086
+s 994
+f 932/1680/4087 1127/1681/4088 929/1679/4089
+f 929/1679/4089 1127/1681/4088 1128/1682/4090
+s 995
+f 929/1365/4091 1128/1683/4092 930/1366/4093
+f 930/1366/4093 1128/1683/4092 1029/1684/4094
+s 996
+f 836/1369/4095 1031/1370/4096 1032/1537/4097
+f 1032/1537/4097 1031/1370/4096 1222/1685/4098
+s 997
+f 837/1687/4099 1129/1688/4100 1031/1686/4101
+f 1031/1686/4101 1129/1688/4100 1225/1689/4102
+s 998
+f 934/1691/4103 1130/1692/4104 1033/1690/4105
+f 1033/1690/4105 1130/1692/4104 1226/1693/4106
+s 999
+f 837/1695/4107 1033/1696/4108 1129/1694/4109
+f 1129/1694/4109 1033/1696/4108 1227/1697/4110
+s 1000
+f 935/1374/4111 1003/1698/4112 1034/1375/4113
+f 1034/1375/4113 1003/1698/4112 1228/1699/4114
+s 1001
+f 936/1479/4115 942/1701/4116 1131/1700/4117
+f 1131/1700/4117 942/1701/4116 1042/1702/4118
+s 1002
+f 1041/1562/4119 1132/1703/4120 940/1380/4121
+f 940/1380/4121 1132/1703/4120 1036/1555/4122
+s 1003
+f 941/1384/4123 1095/1476/4124 943/1385/4125
+f 943/1385/4125 1095/1476/4124 1133/1704/4126
+s 1004
+f 943/1385/4127 1133/1704/4128 1043/1705/4129
+f 1043/1705/4129 1133/1704/4128 1042/1702/4130
+s 1005
+f 945/1259/4131 1044/1389/4132 1135/1574/4133
+f 1135/1574/4133 1044/1389/4132 1236/1706/4134
+s 1006
+f 1045/1567/4135 947/1252/4136 1136/1579/4137
+f 1136/1579/4137 947/1252/4136 1046/1569/4138
+s 1007
+f 948/1390/4139 1047/1391/4140 1137/1707/4141
+f 1137/1707/4141 1047/1391/4140 1237/1708/4142
+s 1008
+f 853/1084/4143 1048/1392/4144 1047/1391/4145
+f 1047/1391/4145 1048/1392/4144 1238/1709/4146
+s 1009
+f 949/1570/4147 1138/1571/4148 1048/1710/4149
+f 1048/1710/4149 1138/1571/4148 1239/1711/4150
+s 1010
+f 860/1403/4151 1050/1406/4152 1053/1416/4153
+f 1053/1416/4153 1050/1406/4152 1240/1712/4154
+s 1011
+f 857/1405/4155 1051/1713/4156 1050/1406/4157
+f 1050/1406/4157 1051/1713/4156 1241/1714/4158
+s 1012
+f 1051/1408/4159 952/1407/4160 1140/1715/4161
+f 1140/1715/4161 952/1407/4160 1242/1716/4162
+s 1013
+f 1052/1409/4163 1141/1717/4164 952/1407/4165
+f 952/1407/4165 1141/1717/4164 1242/1716/4166
+s 1014
+f 858/1257/4167 1135/1574/4168 1052/1409/4169
+f 1052/1409/4169 1135/1574/4168 1141/1717/4170
+s 1015
+f 953/1410/4171 954/1413/4172 1142/1718/4173
+f 1142/1718/4173 954/1413/4172 1143/1719/4174
+s 1016
+f 954/1414/4175 1053/1416/4176 1143/1720/4177
+f 1143/1720/4177 1053/1416/4176 1245/1721/4178
+s 1017
+f 955/1419/4179 950/1393/4180 1136/1722/4181
+f 1136/1722/4181 950/1393/4180 1045/1566/4182
+s 1018
+f 948/1723/4183 1137/1724/4184 956/1265/4185
+f 956/1265/4185 1137/1724/4184 1054/1421/4186
+s 1019
+f 1054/1421/4187 1144/1725/4188 864/1420/4189
+f 864/1420/4189 1144/1725/4188 1056/1726/4190
+s 1020
+f 1055/1581/4191 1145/1595/4192 763/949/4193
+f 763/949/4193 1145/1595/4192 672/951/4194
+s 1021
+f 1057/1424/4195 1146/1727/4196 587/825/4197
+f 587/825/4197 1146/1727/4196 1060/1584/4198
+s 1022
+f 764/1104/4199 866/1105/4200 1147/1728/4201
+f 1147/1728/4201 866/1105/4200 1148/1729/4202
+s 1023
+f 866/1105/4203 958/1425/4204 1148/1729/4205
+f 1148/1729/4205 958/1425/4204 1058/1582/4206
+s off
+f 765/1106/4207 1061/1427/4208 1062/1730/4209
+s 1024
+f 961/1732/4210 1152/1733/4211 969/1731/4212
+f 969/1731/4212 1152/1733/4211 1162/1734/4213
+s 1025
+f 963/1431/4214 962/1429/4215 1153/1735/4216
+f 1153/1735/4216 962/1429/4215 1154/1736/4217
+s 1026
+f 962/1429/4218 1064/1430/4219 1154/1736/4220
+f 1154/1736/4220 1064/1430/4219 1261/1737/4221
+s 1027
+f 963/1739/4222 1155/1740/4223 1059/1738/4224
+f 1059/1738/4224 1155/1740/4223 1262/1741/4225
+s 1028
+f 1065/1596/4226 964/1432/4227 1156/1742/4228
+f 1156/1742/4228 964/1432/4227 1068/1599/4229
+s 1029
+f 879/1434/4230 1067/1435/4231 1077/1743/4232
+f 1077/1743/4232 1067/1435/4231 1266/1744/4233
+s 1030
+f 1071/1603/4234 965/1278/4235 1158/1745/4236
+f 1158/1745/4236 965/1278/4235 1073/1606/4237
+s 1031
+f 966/1436/4238 1074/1607/4239 1072/1604/4240
+f 1072/1604/4240 1074/1607/4239 1268/1746/4241
+s 1032
+f 1074/1607/4242 967/1608/4243 1160/1747/4244
+f 1160/1747/4244 967/1608/4243 1161/1748/4245
+s 1033
+f 967/1438/4246 968/1282/4247 1161/1749/4248
+f 1161/1749/4248 968/1282/4247 1075/1439/4249
+s 1034
+f 970/1751/4250 1077/1743/4251 1163/1750/4252
+f 1163/1750/4252 1077/1743/4251 1275/1752/4253
+s 1035
+f 971/1442/4254 970/1440/4255 1164/1753/4256
+f 1164/1753/4256 970/1440/4255 1277/1754/4257
+s 1036
+f 972/1443/4258 971/1442/4259 1165/1755/4260
+f 1165/1755/4260 971/1442/4259 1164/1753/4261
+s 1037
+f 972/1443/4262 1166/1756/4263 973/1444/4264
+f 973/1444/4264 1166/1756/4263 1279/1757/4265
+s 1038
+f 974/1759/4266 973/1760/4267 1167/1758/4268
+f 1167/1758/4268 973/1760/4267 1279/1761/4269
+s 1039
+f 975/1614/4270 1078/1762/4271 1169/1615/4272
+f 1169/1615/4272 1078/1762/4271 1267/1763/4273
+s 1040
+f 976/1448/4274 1079/1451/4275 1157/1601/4276
+f 1157/1601/4276 1079/1451/4275 1069/1600/4277
+s 1041
+f 976/1448/4278 1157/1601/4279 1080/1616/4280
+f 1080/1616/4280 1157/1601/4279 1070/1602/4281
+s 1042
+f 979/1452/4282 992/1461/4283 980/1296/4284
+f 980/1296/4284 992/1461/4283 1171/1618/4285
+s 1043
+f 981/1453/4286 1172/1764/4287 982/1454/4288
+f 982/1454/4288 1172/1764/4287 1179/1765/4289
+s 1044
+f 888/1767/4290 1085/1768/4291 1082/1766/4292
+f 1082/1766/4292 1085/1768/4291 1280/1769/4293
+s 1045
+f 1083/1619/4294 983/1456/4295 1173/1770/4296
+f 1173/1770/4296 983/1456/4295 1082/1455/4297
+s 1046
+f 1083/1619/4298 1174/1771/4299 985/1457/4300
+f 985/1457/4300 1174/1771/4299 1175/1772/4301
+s 1047
+f 985/1457/4302 1175/1772/4303 986/1458/4304
+f 986/1458/4304 1175/1772/4303 1084/1459/4305
+s 1048
+f 1084/1459/4306 1176/1773/4307 794/1133/4308
+f 794/1133/4308 1176/1773/4307 1087/1624/4309
+s 1049
+f 982/1454/4310 1179/1765/4311 991/1306/4312
+f 991/1306/4312 1179/1765/4311 1180/1623/4313
+s 1050
+f 1081/1463/4314 1170/1617/4315 993/1462/4316
+f 993/1462/4316 1170/1617/4315 1270/1774/4317
+s 1051
+f 1088/1467/4318 1184/1775/4319 995/1464/4320
+f 995/1464/4320 1184/1775/4319 996/1468/4321
+s 1052
+f 1089/1629/4322 1291/1777/4323 796/1469/4324
+f 1185/1776/4325 796/1469/4324 1291/1777/4323
+s 1053
+f 1090/1631/4326 796/1469/4327 1187/1778/4328
+f 1187/1778/4328 796/1469/4327 1185/1776/4329
+s 1054
+f 1091/1472/4330 1189/1779/4331 697/1470/4332
+f 697/1470/4332 1189/1779/4331 1092/1633/4333
+s 1055
+f 997/1781/4334 1190/1782/4335 1091/1780/4336
+f 1091/1780/4336 1190/1782/4335 1189/1783/4337
+s 1056
+f 797/1785/4338 697/1470/4339 1192/1784/4340
+f 1192/1784/4340 697/1470/4339 1299/1786/4341
+s off
+f 1193/1787/4342 697/1470/4343 1301/1788/4344
+f 697/1470/4345 1093/1635/4346 1301/1788/4347
+s 1057
+f 894/1789/4348 1094/1790/4349 1003/1698/4350
+f 1003/1698/4350 1094/1790/4349 1228/1699/4351
+s 1058
+f 894/1309/4352 1195/1792/4353 1094/1791/4354
+f 1094/1791/4354 1195/1792/4353 1305/1793/4355
+s 1059
+f 999/1311/4356 896/1150/4357 1197/1637/4358
+f 1197/1637/4358 896/1150/4357 1096/1481/4359
+s 1060
+f 1000/1473/4360 1198/1794/4361 1004/1474/4362
+f 1004/1474/4362 1198/1794/4361 1201/1795/4363
+s 1061
+f 1002/1477/4364 1200/1796/4365 1001/1478/4366
+f 1001/1478/4366 1200/1796/4365 1199/1797/4367
+s 1062
+f 936/1479/4368 1131/1700/4369 1002/1477/4370
+f 1002/1477/4370 1131/1700/4369 1200/1796/4371
+s 1063
+f 897/1314/4372 1097/1640/4373 1096/1481/4374
+f 1096/1481/4374 1097/1640/4373 1307/1798/4375
+s 1064
+f 1004/1800/4376 1201/1801/4377 1099/1799/4378
+f 1099/1799/4378 1201/1801/4377 1310/1802/4379
+s 1065
+f 1005/1804/4380 1009/1805/4381 1202/1803/4382
+f 1202/1803/4382 1009/1805/4381 1103/1806/4383
+s 1066
+f 1005/1483/4384 1202/1807/4385 1007/1484/4386
+f 1007/1484/4386 1202/1807/4385 1101/1489/4387
+s 1067
+f 1100/1809/4388 1203/1810/4389 1006/1808/4390
+f 1006/1808/4390 1203/1810/4389 1204/1811/4391
+s 1068
+f 1006/1808/4392 1204/1811/4393 1008/1644/4394
+f 1008/1644/4394 1204/1811/4393 1205/1812/4395
+s 1069
+f 1008/1644/4396 1205/1812/4397 1102/1645/4398
+f 1102/1645/4398 1205/1812/4397 1311/1813/4399
+s 1070
+f 1010/1815/4400 1206/1816/4401 1104/1814/4402
+f 1104/1814/4402 1206/1816/4401 1208/1817/4403
+s 1071
+f 1105/1818/4404 1207/1819/4405 1010/1815/4406
+f 1010/1815/4406 1207/1819/4405 1206/1816/4407
+s 1072
+f 902/1496/4408 1014/1498/4409 1106/1820/4410
+f 1106/1820/4410 1014/1498/4409 1013/1504/4411
+s 1073
+f 913/1516/4412 1113/1519/4413 1103/1821/4414
+f 1103/1821/4414 1113/1519/4413 1313/1822/4415
+s 1074
+f 1104/1814/4416 1208/1817/4417 906/1651/4418
+f 906/1651/4418 1208/1817/4417 1107/1652/4419
+s 1075
+f 1015/1333/4420 1108/1509/4421 1209/1655/4422
+f 1209/1655/4422 1108/1509/4421 1314/1823/4423
+s 1076
+f 1017/1515/4424 1210/1824/4425 1016/1512/4426
+f 1016/1512/4426 1210/1824/4425 1211/1825/4427
+s 1077
+f 1016/1512/4428 1211/1825/4429 1109/1513/4430
+f 1109/1513/4430 1211/1825/4429 1315/1826/4431
+s 1078
+f 1107/1652/4432 1212/1827/4433 1017/1515/4434
+f 1017/1515/4434 1212/1827/4433 1210/1824/4435
+s 1079
+f 1018/1518/4436 1019/1829/4437 1213/1828/4438
+f 1213/1828/4438 1019/1829/4437 1319/1830/4439
+s 1080
+f 1018/1518/4440 1205/1812/4441 1113/1519/4442
+f 1113/1519/4442 1205/1812/4441 1204/1811/4443
+s 1081
+f 1114/1658/4444 1020/1657/4445 1214/1831/4446
+f 1214/1831/4446 1020/1657/4445 1215/1832/4447
+s 1082
+f 1115/1833/4448 1216/1834/4449 1019/1829/4450
+f 1019/1829/4450 1216/1834/4449 1319/1830/4451
+s 1083
+f 1116/1523/4452 1217/1835/4453 915/1342/4454
+f 915/1342/4454 1217/1835/4453 1117/1661/4455
+s 1084
+f 1021/1666/4456 1218/1668/4457 1116/1836/4458
+f 1116/1836/4458 1218/1668/4457 1217/1837/4459
+s 1085
+f 1118/1664/4460 1219/1838/4461 918/1665/4462
+f 918/1665/4462 1219/1838/4461 1119/1667/4463
+s 1086
+f 1024/1525/4464 925/1839/4465 1023/1524/4466
+f 1023/1524/4466 925/1839/4465 1121/1840/4467
+s 1087
+f 1120/1842/4468 1025/1843/4469 1220/1841/4470
+f 1220/1841/4470 1025/1843/4469 1322/1844/4471
+s 1088
+f 931/1545/4472 1126/1544/4473 1122/1845/4474
+f 1122/1845/4474 1126/1544/4473 1323/1846/4475
+s off
+f 1221/1847/4476 1123/1673/4477 1027/1534/4478
+s 1089
+f 1032/1537/4479 1222/1685/4480 1027/1534/4481
+f 1027/1534/4481 1222/1685/4480 1221/1847/4482
+s 1090
+f 1124/1674/4483 1127/1848/4484 1028/1538/4485
+f 1028/1538/4485 1127/1848/4484 933/1849/4486
+s 1091
+f 1123/1673/4487 1223/1850/4488 1030/1543/4489
+f 1030/1543/4489 1223/1850/4488 1224/1851/4490
+s 1092
+f 1030/1543/4491 1224/1851/4492 1126/1544/4493
+f 1126/1544/4493 1224/1851/4492 1323/1846/4494
+s 1093
+f 1034/1375/4495 1228/1699/4496 1130/1551/4497
+f 1130/1551/4497 1228/1699/4496 1327/1852/4498
+s 1094
+f 1037/1556/4499 1035/1552/4500 1229/1853/4501
+f 1229/1853/4501 1035/1552/4500 1230/1854/4502
+s 1095
+f 1035/1552/4503 1036/1555/4504 1230/1854/4505
+f 1230/1854/4505 1036/1555/4504 1132/1703/4506
+s 1096
+f 944/1245/4507 1037/1556/4508 1134/1564/4509
+f 1134/1564/4509 1037/1556/4508 1229/1853/4510
+s 1097
+f 1041/1562/4511 1038/1558/4512 1231/1855/4513
+f 1231/1855/4513 1038/1558/4512 1232/1856/4514
+s 1098
+f 1038/1558/4515 1039/1559/4516 1232/1856/4517
+f 1232/1856/4517 1039/1559/4516 1233/1857/4518
+s 1099
+f 1039/1559/4519 1040/1560/4520 1233/1857/4521
+f 1233/1857/4521 1040/1560/4520 1234/1858/4522
+s 1100
+f 1040/1560/4523 1110/1561/4524 1234/1858/4525
+f 1234/1858/4525 1110/1561/4524 1316/1859/4526
+s 1101
+f 1132/1703/4527 1041/1562/4528 1235/1860/4529
+f 1235/1860/4529 1041/1562/4528 1231/1855/4530
+s 1102
+f 1131/1700/4531 1042/1702/4532 1200/1796/4533
+f 1200/1796/4533 1042/1702/4532 1133/1704/4534
+s 1103
+f 1044/1389/4535 1134/1564/4536 1236/1706/4537
+f 1236/1706/4537 1134/1564/4536 1329/1861/4538
+s 1104
+f 951/1401/4539 1139/1573/4540 1138/1571/4541
+f 1138/1571/4541 1139/1573/4540 1244/1862/4542
+s 1105
+f 1140/1863/4543 1243/1864/4544 1051/1713/4545
+f 1051/1713/4545 1243/1864/4544 1241/1714/4546
+s 1106
+f 1139/1576/4547 953/1410/4548 1244/1865/4549
+f 1244/1865/4549 953/1410/4548 1142/1718/4550
+s 1107
+f 1054/1421/4551 1137/1724/4552 1144/1725/4553
+f 1144/1725/4553 1137/1724/4552 1331/1866/4554
+s 1108
+f 1145/1595/4555 1055/1581/4556 1246/1867/4557
+f 1246/1867/4557 1055/1581/4556 1247/1868/4558
+s 1109
+f 1055/1581/4559 1056/1422/4560 1247/1868/4561
+f 1247/1868/4561 1056/1422/4560 1248/1869/4562
+s 1110
+f 1056/1422/4563 1144/1870/4564 1248/1869/4565
+f 1248/1869/4565 1144/1870/4564 1340/1871/4566
+s 1111
+f 1057/1424/4567 957/1423/4568 1249/1872/4569
+f 1249/1872/4569 957/1423/4568 1250/1873/4570
+s 1112
+f 957/1423/4571 865/1267/4572 1250/1873/4573
+f 1250/1873/4573 865/1267/4572 1251/1874/4574
+s 1113
+f 865/1267/4575 764/1104/4576 1251/1874/4577
+f 1251/1874/4577 764/1104/4576 1147/1728/4578
+s 1114
+f 1148/1729/4579 1058/1582/4580 1252/1875/4581
+f 1252/1875/4581 1058/1582/4580 1344/1876/4582
+s 1115
+f 1058/1878/4583 1059/1738/4584 1253/1877/4585
+f 1253/1877/4585 1059/1738/4584 1262/1741/4586
+s 1116
+f 1150/1589/4587 1254/1879/4588 961/1586/4589
+f 961/1586/4589 1254/1879/4588 1152/1880/4590
+s 1117
+f 1150/1882/4591 960/1590/4592 1255/1881/4593
+f 1255/1881/4593 960/1590/4592 1151/1593/4594
+s 1118
+f 1062/1730/4595 1061/1427/4596 1256/1883/4597
+f 1256/1883/4597 1061/1427/4596 1345/1884/4598
+s 1119
+f 1062/1730/4599 1257/1886/4600 1151/1885/4601
+f 1151/1885/4601 1257/1886/4600 1349/1887/4602
+s 1120
+f 1064/1889/4603 1063/1890/4604 1258/1888/4605
+f 1258/1888/4605 1063/1890/4604 1353/1891/4606
+s 1121
+f 1145/1892/4607 1259/1893/4608 1063/1890/4609
+f 1063/1890/4609 1259/1893/4608 1353/1891/4610
+s 1122
+f 1153/1895/4611 1260/1896/4612 963/1894/4613
+f 963/1894/4613 1260/1896/4612 1155/1897/4614
+s 1123
+f 1156/1742/4615 1263/1898/4616 1065/1596/4617
+f 1065/1596/4617 1263/1898/4616 1264/1899/4618
+s 1124
+f 1065/1596/4619 1264/1899/4620 1066/1597/4621
+f 1066/1597/4621 1264/1899/4620 1265/1900/4622
+s 1125
+f 1066/1598/4623 1265/1901/4624 1067/1435/4625
+f 1067/1435/4625 1265/1901/4624 1266/1744/4626
+s 1126
+f 1156/1742/4627 1068/1599/4628 1267/1763/4629
+f 1267/1763/4629 1068/1599/4628 1169/1615/4630
+s 1127
+f 1068/1599/4631 1069/1600/4632 1169/1615/4633
+f 1169/1615/4633 1069/1600/4632 1079/1451/4634
+s 1128
+f 1071/1603/4635 978/1293/4636 1070/1602/4637
+f 1070/1602/4637 978/1293/4636 1080/1616/4638
+s 1129
+f 1158/1745/4639 1170/1617/4640 1071/1603/4641
+f 1071/1603/4641 1170/1617/4640 978/1293/4642
+s 1130
+f 1072/1604/4643 1269/1902/4644 1159/1605/4645
+f 1159/1605/4645 1269/1902/4644 1271/1903/4646
+s 1131
+f 1073/1606/4647 1270/1774/4648 1158/1745/4649
+f 1158/1745/4649 1270/1774/4648 1170/1617/4650
+s 1132
+f 1159/1605/4651 1271/1903/4652 1073/1606/4653
+f 1073/1606/4653 1271/1903/4652 1270/1774/4654
+s 1133
+f 1074/1607/4655 1160/1747/4656 1268/1746/4657
+f 1268/1746/4657 1160/1747/4656 1360/1904/4658
+s 1134
+f 1161/1749/4659 1075/1439/4660 1272/1905/4661
+f 1272/1905/4661 1075/1439/4660 1361/1906/4662
+s 1135
+f 1075/1439/4663 1076/1610/4664 1273/1907/4665
+f 1273/1907/4665 1076/1610/4664 1274/1908/4666
+s 1136
+f 1076/1610/4667 1162/1612/4668 1274/1908/4669
+f 1274/1908/4669 1162/1612/4668 1362/1909/4670
+s 1137
+f 970/1751/4671 1163/1750/4672 1276/1910/4673
+f 1276/1910/4673 1163/1750/4672 1365/1911/4674
+s 1138
+f 1165/1755/4675 1278/1912/4676 972/1443/4677
+f 972/1443/4677 1278/1912/4676 1166/1756/4678
+s 1139
+f 974/1759/4679 1167/1758/4680 1168/1913/4681
+f 1168/1913/4681 1167/1758/4680 1371/1914/4682
+s 1140
+f 1078/1762/4683 1168/1915/4684 1267/1763/4685
+f 1267/1763/4685 1168/1915/4684 1359/1916/4686
+s 1141
+f 981/1453/4687 1171/1618/4688 1172/1764/4689
+f 1172/1764/4689 1171/1618/4688 1286/1917/4690
+s 1142
+f 1173/1770/4691 1281/1918/4692 1083/1619/4693
+f 1083/1619/4693 1281/1918/4692 1174/1771/4694
+s 1143
+f 1084/1459/4695 1175/1772/4696 1176/1773/4697
+f 1176/1773/4697 1175/1772/4696 1285/1919/4698
+s off
+f 1085/1620/4699 13/9/4700 14/10/4701
+s 1144
+f 21/14/4702 987/1300/4703 15/11/4704
+f 1177/1621/4705 16/12/4706 987/1300/4703
+f 987/1300/4703 16/12/4706 15/11/4704
+s 1145
+f 1177/1621/4707 988/1301/4708 1282/1920/4709
+f 1282/1920/4709 988/1301/4708 1178/1622/4710
+s 1146
+f 1178/1622/4711 989/1303/4712 1283/1921/4713
+f 1283/1921/4713 989/1303/4712 1284/1922/4714
+s 1147
+f 989/1303/4715 1086/1460/4716 1284/1922/4717
+f 1284/1922/4717 1086/1460/4716 1180/1623/4718
+s 1148
+f 1176/1773/4719 1285/1919/4720 1087/1624/4721
+f 1087/1624/4721 1285/1919/4720 1287/1923/4722
+s 1149
+f 1181/1625/4723 1286/1917/4724 992/1461/4725
+f 992/1461/4725 1286/1917/4724 1171/1618/4726
+s 1150
+f 1087/1624/4727 1287/1923/4728 1181/1625/4729
+f 1181/1625/4729 1287/1923/4728 1377/1924/4730
+s 1151
+f 994/1926/4731 1182/1927/4732 1183/1925/4733
+f 1183/1925/4733 1182/1927/4732 1288/1928/4734
+s 1152
+f 1270/1774/4735 1288/1929/4736 993/1462/4737
+f 1288/1929/4736 1182/1626/4738 993/1462/4737
+s 1153
+f 1183/1628/4739 1289/1930/4740 1088/1627/4741
+f 1088/1627/4741 1289/1930/4740 1184/1931/4742
+s 1154
+f 1184/1775/4743 1290/1932/4744 996/1468/4745
+f 996/1468/4745 1290/1932/4744 1186/1630/4746
+s 1155
+f 1089/1934/4747 1186/1935/4748 1292/1933/4749
+f 1292/1933/4749 1186/1935/4748 1290/1936/4750
+s 1156
+f 1187/1938/4751 1293/1939/4752 1090/1937/4753
+f 1090/1937/4753 1293/1939/4752 1295/1940/4754
+s 1157
+f 1188/1941/4755 1294/1942/4756 997/1781/4757
+f 997/1781/4757 1294/1942/4756 1190/1782/4758
+s 1158
+f 1090/1937/4759 1295/1940/4760 1188/1941/4761
+f 1188/1941/4761 1295/1940/4760 1294/1942/4762
+s 1159
+f 1092/1944/4763 1189/1945/4764 1296/1943/4765
+f 1296/1943/4765 1189/1945/4764 1382/1946/4766
+s 1160
+f 1191/1948/4767 1092/1944/4768 1297/1947/4769
+f 1297/1947/4769 1092/1944/4768 1296/1943/4770
+s 1161
+f 797/1785/4771 1192/1784/4772 1298/1949/4773
+f 1298/1949/4773 1192/1784/4772 1385/1950/4774
+s off
+f 1300/1951/4775 697/1470/4776 1388/1952/4777
+f 697/1470/4778 1193/1787/4779 1388/1952/4780
+s 1162
+f 1093/1954/4781 1191/1948/4782 1302/1953/4783
+f 1302/1953/4783 1191/1948/4782 1297/1947/4784
+s off
+f 894/1955/4785 797/1785/4786 1303/1956/4787
+s 1163
+f 1195/1792/4788 894/1309/4789 1391/1958/4790
+f 1391/1958/4790 894/1309/4789 1194/1957/4791
+s 1164
+f 1000/1473/4792 1196/1636/4793 1198/1794/4794
+f 1198/1794/4794 1196/1636/4793 1393/1959/4795
+s 1165
+f 998/1310/4796 1197/1637/4797 1196/1636/4798
+f 1196/1636/4798 1197/1637/4797 1306/1960/4799
+s 1166
+f 1095/1476/4800 1199/1797/4801 1133/1704/4802
+f 1133/1704/4802 1199/1797/4801 1200/1796/4803
+s 1167
+f 1197/1637/4804 1096/1481/4805 1306/1960/4806
+f 1306/1960/4806 1096/1481/4805 1307/1798/4807
+s 1168
+f 1097/1962/4808 1098/1963/4809 1308/1961/4810
+f 1308/1961/4810 1098/1963/4809 1309/1964/4811
+s 1169
+f 1098/1963/4812 1099/1799/4813 1309/1964/4814
+f 1309/1964/4814 1099/1799/4813 1310/1802/4815
+s 1170
+f 1203/1965/4816 1100/1966/4817 1202/1803/4818
+f 1202/1803/4818 1100/1966/4817 1101/1967/4819
+s 1171
+f 1102/1968/4820 1312/1969/4821 1105/1818/4822
+f 1105/1818/4822 1312/1969/4821 1207/1819/4823
+s 1172
+f 1103/1806/4824 1313/1970/4825 1202/1803/4826
+f 1202/1803/4826 1313/1970/4825 1203/1965/4827
+s 1173
+f 1107/1652/4828 1208/1817/4829 1212/1827/4830
+f 1212/1827/4830 1208/1817/4829 1400/1971/4831
+s 1174
+f 1108/1509/4832 1109/1513/4833 1314/1823/4834
+f 1314/1823/4834 1109/1513/4833 1315/1826/4835
+s 1175
+f 1110/1561/4836 1111/1653/4837 1316/1859/4838
+f 1316/1859/4838 1111/1653/4837 1317/1972/4839
+s 1176
+f 1111/1653/4840 1112/1654/4841 1317/1972/4842
+f 1317/1972/4842 1112/1654/4841 1404/1973/4843
+s 1177
+f 1209/1655/4844 1318/1974/4845 1112/1654/4846
+f 1112/1654/4846 1318/1974/4845 1404/1973/4847
+s 1178
+f 1213/1828/4848 1311/1813/4849 1018/1518/4850
+f 1018/1518/4850 1311/1813/4849 1205/1812/4851
+s 1179
+f 1214/1976/4852 1217/1837/4853 1114/1975/4854
+f 1114/1975/4854 1217/1837/4853 1218/1668/4855
+s 1180
+f 1114/1975/4856 1218/1668/4857 1115/1833/4858
+f 1115/1833/4858 1218/1668/4857 1119/1667/4859
+s 1181
+f 1115/1833/4860 1119/1667/4861 1216/1834/4862
+f 1216/1834/4862 1119/1667/4861 1219/1838/4863
+s 1182
+f 1217/1835/4864 1214/1977/4865 1117/1661/4866
+f 1117/1661/4866 1214/1977/4865 1215/1978/4867
+s 1183
+f 1219/1980/4868 1118/1981/4869 1320/1979/4870
+f 1320/1979/4870 1118/1981/4869 1321/1982/4871
+s 1184
+f 1118/1981/4872 1120/1842/4873 1321/1982/4874
+f 1321/1982/4874 1120/1842/4873 1220/1841/4875
+s 1185
+f 1025/1843/4876 1122/1845/4877 1322/1844/4878
+f 1322/1844/4878 1122/1845/4877 1323/1846/4879
+s 1186
+f 1221/1847/4880 1324/1983/4881 1123/1673/4882
+f 1123/1673/4882 1324/1983/4881 1325/1984/4883
+s 1187
+f 1127/1848/4884 1124/1674/4885 1128/1985/4886
+f 1128/1985/4886 1124/1674/4885 1125/1541/4887
+s 1188
+f 1123/1673/4888 1325/1984/4889 1223/1850/4890
+f 1223/1850/4890 1325/1984/4889 1411/1986/4891
+s 1189
+f 1031/1686/4892 1225/1689/4893 1222/1987/4894
+f 1222/1987/4894 1225/1689/4893 1414/1988/4895
+s 1190
+f 1129/1688/4896 1326/1989/4897 1225/1689/4898
+f 1225/1689/4898 1326/1989/4897 1415/1990/4899
+s 1191
+f 1033/1690/4900 1226/1693/4901 1227/1991/4902
+f 1227/1991/4902 1226/1693/4901 1416/1992/4903
+s 1192
+f 1130/1692/4904 1327/1993/4905 1226/1693/4906
+f 1226/1693/4906 1327/1993/4905 1417/1994/4907
+s 1193
+f 1129/1694/4908 1227/1697/4909 1326/1995/4910
+f 1326/1995/4910 1227/1697/4909 1418/1996/4911
+s 1194
+f 1235/1860/4912 1328/1997/4913 1132/1703/4914
+f 1132/1703/4914 1328/1997/4913 1230/1854/4915
+s 1195
+f 1236/1706/4916 1330/1998/4917 1135/1574/4918
+f 1135/1574/4918 1330/1998/4917 1334/1999/4919
+s 1196
+f 1137/1707/4920 1237/1708/4921 1331/2000/4922
+f 1331/2000/4922 1237/1708/4921 1427/2001/4923
+s 1197
+f 1047/1391/4924 1238/1709/4925 1237/1708/4926
+f 1237/1708/4926 1238/1709/4925 1428/2002/4927
+s 1198
+f 1048/1710/4928 1239/1711/4929 1238/2003/4930
+f 1238/2003/4930 1239/1711/4929 1429/2004/4931
+s 1199
+f 1138/1571/4932 1244/1862/4933 1239/1711/4934
+f 1239/1711/4934 1244/1862/4933 1336/2005/4935
+s 1200
+f 1053/1416/4936 1240/1712/4937 1245/1721/4938
+f 1245/1721/4938 1240/1712/4937 1430/2006/4939
+s 1201
+f 1050/1406/4940 1241/1714/4941 1240/1712/4942
+f 1240/1712/4942 1241/1714/4941 1431/2007/4943
+s 1202
+f 1140/1715/4944 1242/1716/4945 1332/2008/4946
+f 1332/2008/4946 1242/1716/4945 1433/2009/4947
+s 1203
+f 1243/1864/4948 1140/1863/4949 1333/2010/4950
+f 1333/2010/4950 1140/1863/4949 1332/2011/4951
+s 1204
+f 1135/1574/4952 1334/1999/4953 1141/1717/4954
+f 1141/1717/4954 1334/1999/4953 1435/2012/4955
+s 1205
+f 1242/1716/4956 1141/1717/4957 1335/2013/4958
+f 1335/2013/4958 1141/1717/4957 1435/2012/4959
+s 1206
+f 1244/1865/4960 1142/1718/4961 1336/2014/4962
+f 1336/2014/4962 1142/1718/4961 1337/2015/4963
+s 1207
+f 1142/1718/4964 1143/1719/4965 1337/2015/4966
+f 1337/2015/4966 1143/1719/4965 1338/2016/4967
+s 1208
+f 1143/1720/4968 1245/1721/4969 1338/2017/4970
+f 1338/2017/4970 1245/1721/4969 1436/2018/4971
+s 1209
+f 1246/2019/4972 1339/2020/4973 1145/1892/4974
+f 1145/1892/4974 1339/2020/4973 1259/1893/4975
+s 1210
+f 1249/1872/4976 1341/2021/4977 1057/1424/4978
+f 1057/1424/4978 1341/2021/4977 1146/1727/4979
+s 1211
+f 1147/2023/4980 1342/2024/4981 1251/2022/4982
+f 1251/2022/4982 1342/2024/4981 1446/2025/4983
+s 1212
+f 1147/1728/4984 1148/1729/4985 1343/2026/4986
+f 1343/2026/4986 1148/1729/4985 1252/1875/4987
+s 1213
+f 1058/1582/4988 1253/2027/4989 1344/1876/4990
+f 1344/1876/4990 1253/2027/4989 1449/2028/4991
+s 1214
+f 1061/1427/4992 959/1426/4993 1345/1884/4994
+f 1345/1884/4994 959/1426/4993 1346/2029/4995
+s 1215
+f 959/1426/4996 1149/1585/4997 1346/2029/4998
+f 1346/2029/4998 1149/1585/4997 1450/2030/4999
+s 1216
+f 1254/1879/5000 1150/1589/5001 1347/2031/5002
+f 1347/2031/5002 1150/1589/5001 1255/2032/5003
+s 1217
+f 1256/1883/5004 1348/2033/5005 1062/1730/5006
+f 1062/1730/5006 1348/2033/5005 1454/2034/5007
+s 1218
+f 1151/1885/5008 1349/1887/5009 1255/2035/5010
+f 1255/2035/5010 1349/1887/5009 1456/2036/5011
+s 1219
+f 1257/1886/5012 1062/1730/5013 1350/2037/5014
+f 1350/2037/5014 1062/1730/5013 1454/2034/5015
+s 1220
+f 1254/1879/5016 1351/2038/5017 1152/1880/5018
+f 1152/1880/5018 1351/2038/5017 1352/2039/5019
+s 1221
+f 1152/1880/5020 1352/2039/5021 1162/2040/5022
+f 1162/2040/5022 1352/2039/5021 1362/2041/5023
+s 1222
+f 1064/1430/5024 1258/2042/5025 1261/1737/5026
+f 1261/1737/5026 1258/2042/5025 1459/2043/5027
+s 1223
+f 1260/1896/5028 1153/1895/5029 1354/2044/5030
+f 1354/2044/5030 1153/1895/5029 1355/2045/5031
+s 1224
+f 1153/1735/5032 1154/1736/5033 1355/2046/5034
+f 1355/2046/5034 1154/1736/5033 1463/2047/5035
+s 1225
+f 1261/1737/5036 1356/2048/5037 1154/1736/5038
+f 1154/1736/5038 1356/2048/5037 1463/2047/5039
+s 1226
+f 1155/2050/5040 1260/2051/5041 1357/2049/5042
+f 1357/2049/5042 1260/2051/5041 1462/2052/5043
+s 1227
+f 1262/1741/5044 1155/1740/5045 1358/2053/5046
+f 1358/2053/5046 1155/1740/5045 1357/2054/5047
+s 1228
+f 1263/1898/5048 1156/1742/5049 1359/1916/5050
+f 1359/1916/5050 1156/1742/5049 1267/1763/5051
+s 1229
+f 1077/1743/5052 1266/1744/5053 1275/1752/5054
+f 1275/1752/5054 1266/1744/5053 1468/2055/5055
+s 1230
+f 1072/1604/5056 1268/1746/5057 1269/1902/5058
+f 1269/1902/5058 1268/1746/5057 1469/2056/5059
+s 1231
+f 1160/1747/5060 1161/1748/5061 1360/1904/5062
+f 1360/1904/5062 1161/1748/5061 1272/2057/5063
+s 1232
+f 1075/1439/5064 1273/1907/5065 1361/1906/5066
+f 1361/1906/5066 1273/1907/5065 1474/2058/5067
+s 1233
+f 1163/1750/5068 1275/1752/5069 1363/2059/5070
+f 1363/2059/5070 1275/1752/5069 1476/2060/5071
+s 1234
+f 1276/2061/5072 1364/2062/5073 970/1440/5074
+f 970/1440/5074 1364/2062/5073 1277/1754/5075
+s 1235
+f 1165/2064/5076 1164/2065/5077 1366/2063/5078
+f 1366/2063/5078 1164/2065/5077 1367/2066/5079
+s 1236
+f 1164/2065/5080 1277/2067/5081 1367/2066/5082
+f 1367/2066/5082 1277/2067/5081 1480/2068/5083
+s 1237
+f 1278/1912/5084 1165/1755/5085 1368/2069/5086
+f 1368/2069/5086 1165/1755/5085 1366/2070/5087
+s 1238
+f 1278/1912/5088 1369/2071/5089 1166/1756/5090
+f 1166/1756/5090 1369/2071/5089 1482/2072/5091
+s 1239
+f 1279/1761/5092 1166/2074/5093 1370/2073/5094
+f 1370/2073/5094 1166/2074/5093 1482/2075/5095
+s 1240
+f 1167/1758/5096 1279/1761/5097 1372/2076/5098
+f 1372/2076/5098 1279/1761/5097 1370/2073/5099
+s 1241
+f 1172/2078/5100 1373/2079/5101 1179/2077/5102
+f 1179/2077/5102 1373/2079/5101 1376/2080/5103
+s 1242
+f 1082/1766/5104 1280/1769/5105 1173/2081/5106
+f 1173/2081/5106 1280/1769/5105 5/2082/5107
+s 1243
+f 4/2083/5108 1280/1769/5109 14/2084/5110
+f 14/2084/5110 1280/1769/5109 1085/1768/5111
+s 1244
+f 1281/2086/5112 1173/2081/5113 1/2085/5114
+f 1/2085/5114 1173/2081/5113 5/2082/5115
+s 1245
+f 1281/1918/5116 1374/2087/5117 1174/1771/5118
+f 1174/1771/5118 1374/2087/5117 1484/2088/5119
+s 1246
+f 1175/1772/5120 1174/1771/5121 1285/1919/5122
+f 1285/1919/5122 1174/1771/5121 1484/2088/5123
+s 1247
+f 18/2090/5124 20/2091/5125 1282/2089/5126
+f 1282/2089/5126 20/2091/5125 1177/2092/5127
+s 1248
+f 1282/1920/5128 1178/1622/5129 1375/2093/5130
+f 1375/2093/5130 1178/1622/5129 1283/1921/5131
+s 1249
+f 1179/2077/5132 1376/2080/5133 1180/2094/5134
+f 1180/2094/5134 1376/2080/5133 1284/2095/5135
+s 1250
+f 1181/2097/5136 1377/2098/5137 1286/2096/5138
+f 1286/2096/5138 1377/2098/5137 1487/2099/5139
+s 1251
+f 1183/2101/5140 1378/2102/5141 1289/2100/5142
+f 1289/2100/5142 1378/2102/5141 1492/2103/5143
+s 1252
+f 1289/1930/5144 1379/2104/5145 1184/1931/5146
+f 1184/1931/5146 1379/2104/5145 1290/2105/5147
+s 1253
+f 1187/1938/5148 1185/2106/5149 1293/1939/5150
+f 1293/1939/5150 1185/2106/5149 1380/2107/5151
+s 1254
+f 1185/2106/5152 1291/2108/5153 1380/2107/5154
+f 1380/2107/5154 1291/2108/5153 1381/2109/5155
+s 1255
+f 1291/2108/5156 1089/1934/5157 1381/2109/5158
+f 1381/2109/5158 1089/1934/5157 1292/1933/5159
+s 1256
+f 1189/1945/5160 1190/2110/5161 1382/1946/5162
+f 1382/1946/5162 1190/2110/5161 1383/2111/5163
+s 1257
+f 1190/2110/5164 1294/2112/5165 1383/2111/5166
+f 1383/2111/5166 1294/2112/5165 1497/2113/5167
+s 1258
+f 1298/1949/5168 1384/2114/5169 797/1785/5170
+f 797/1785/5170 1384/2114/5169 1502/2115/5171
+s 1259
+f 1192/1784/5172 1299/1786/5173 1386/2116/5174
+f 1386/2116/5174 1299/1786/5173 1387/2117/5175
+s 1260
+f 1299/1786/5176 697/1470/5177 1387/2117/5178
+f 1387/2117/5178 697/1470/5177 1300/1951/5179
+s 1261
+f 1193/2119/5180 1301/2120/5181 1389/2118/5182
+f 1389/2118/5182 1301/2120/5181 1390/2121/5183
+s 1262
+f 1301/2120/5184 1093/1954/5185 1390/2121/5186
+f 1390/2121/5186 1093/1954/5185 1302/1953/5187
+s 1263
+f 1304/2122/5188 1510/2123/5189 894/1309/5190
+f 1194/1957/5191 894/1309/5190 1510/2123/5189
+s 1264
+f 1094/1791/5192 1305/1793/5193 1228/2124/5194
+f 1228/2124/5194 1305/1793/5193 1327/1993/5195
+s 1265
+f 1305/1793/5196 1195/1792/5197 1392/2125/5198
+f 1392/2125/5198 1195/1792/5197 1511/2126/5199
+s 1266
+f 1198/1794/5200 1394/2127/5201 1201/1795/5202
+f 1201/1795/5202 1394/2127/5201 1395/2128/5203
+s 1267
+f 1097/2130/5204 1308/2131/5205 1307/2129/5206
+f 1307/2129/5206 1308/2131/5205 1514/2132/5207
+s 1268
+f 1201/1801/5208 1395/2133/5209 1310/1802/5210
+f 1310/1802/5210 1395/2133/5209 1517/2134/5211
+s 1269
+f 1203/1810/5212 1313/1822/5213 1204/1811/5214
+f 1204/1811/5214 1313/1822/5213 1113/1519/5215
+s 1270
+f 1311/2135/5216 1396/2136/5217 1102/1968/5218
+f 1102/1968/5218 1396/2136/5217 1312/1969/5219
+s 1271
+f 1207/1819/5220 1397/2137/5221 1206/1816/5222
+f 1206/1816/5222 1397/2137/5221 1398/2138/5223
+s 1272
+f 1206/1816/5224 1398/2138/5225 1208/1817/5226
+f 1208/1817/5226 1398/2138/5225 1400/1971/5227
+s 1273
+f 1312/1969/5228 1399/2139/5229 1207/1819/5230
+f 1207/1819/5230 1399/2139/5229 1397/2137/5231
+s 1274
+f 1209/1655/5232 1314/1823/5233 1318/1974/5234
+f 1318/1974/5234 1314/1823/5233 1520/2140/5235
+s 1275
+f 1212/1827/5236 1401/2141/5237 1210/1824/5238
+f 1210/1824/5238 1401/2141/5237 1402/2142/5239
+s 1276
+f 1210/1824/5240 1402/2142/5241 1211/1825/5242
+f 1211/1825/5242 1402/2142/5241 1403/2143/5243
+s 1277
+f 1211/1825/5244 1403/2143/5245 1315/1826/5246
+f 1315/1826/5246 1403/2143/5245 1521/2144/5247
+s 1278
+f 1311/2135/5248 1213/2145/5249 1396/2136/5250
+f 1396/2136/5250 1213/2145/5249 1405/2146/5251
+s 1279
+f 1213/2145/5252 1319/2147/5253 1405/2146/5254
+f 1405/2146/5254 1319/2147/5253 1406/2148/5255
+s 1280
+f 1319/2147/5256 1216/2149/5257 1406/2148/5258
+f 1406/2148/5258 1216/2149/5257 1407/2150/5259
+s 1281
+f 1320/1979/5260 1407/2150/5261 1219/1980/5262
+f 1219/1980/5262 1407/2150/5261 1216/2149/5263
+s 1282
+f 1321/1982/5264 1220/1841/5265 1408/2151/5266
+f 1408/2151/5266 1220/1841/5265 1409/2152/5267
+s 1283
+f 1220/1841/5268 1322/1844/5269 1409/2152/5270
+f 1409/2152/5270 1322/1844/5269 1413/2153/5271
+s 1284
+f 1222/1685/5272 1410/2154/5273 1221/1847/5274
+f 1221/1847/5274 1410/2154/5273 1324/1983/5275
+s 1285
+f 1223/1850/5276 1412/2155/5277 1224/1851/5278
+f 1224/1851/5278 1412/2155/5277 1413/2153/5279
+s 1286
+f 1224/1851/5280 1413/2153/5281 1323/1846/5282
+f 1323/1846/5282 1413/2153/5281 1322/1844/5283
+s 1287
+f 1134/1564/5284 1229/1853/5285 1329/1861/5286
+f 1329/1861/5286 1229/1853/5285 1419/2156/5287
+s 1288
+f 1229/1853/5288 1230/1854/5289 1419/2156/5290
+f 1419/2156/5290 1230/1854/5289 1328/1997/5291
+s 1289
+f 1231/1855/5292 1420/2157/5293 1235/1860/5294
+f 1235/1860/5294 1420/2157/5293 1425/2158/5295
+s 1290
+f 1232/1856/5296 1421/2159/5297 1231/1855/5298
+f 1231/1855/5298 1421/2159/5297 1420/2157/5299
+s 1291
+f 1233/1857/5300 1422/2160/5301 1232/1856/5302
+f 1232/1856/5302 1422/2160/5301 1421/2159/5303
+s 1292
+f 1234/1858/5304 1423/2161/5305 1233/1857/5306
+f 1233/1857/5306 1423/2161/5305 1422/2160/5307
+s 1293
+f 1316/1859/5308 1424/2162/5309 1234/1858/5310
+f 1234/1858/5310 1424/2162/5309 1423/2161/5311
+s 1294
+f 1235/1860/5312 1425/2158/5313 1328/1997/5314
+f 1328/1997/5314 1425/2158/5313 1530/2163/5315
+s 1295
+f 1329/1861/5316 1426/2164/5317 1236/1706/5318
+f 1236/1706/5318 1426/2164/5317 1330/1998/5319
+s 1296
+f 1243/1864/5320 1432/2165/5321 1241/1714/5322
+f 1241/1714/5322 1432/2165/5321 1431/2007/5323
+s 1297
+f 1333/2010/5324 1434/2166/5325 1243/1864/5326
+f 1243/1864/5326 1434/2166/5325 1432/2165/5327
+s 1298
+f 1242/1716/5328 1335/2013/5329 1433/2009/5330
+f 1433/2009/5330 1335/2013/5329 1540/2167/5331
+s 1299
+f 1144/2169/5332 1331/2170/5333 1340/2168/5334
+f 1340/2168/5334 1331/2170/5333 1544/2171/5335
+s 1300
+f 1339/2020/5336 1246/2019/5337 1437/2172/5338
+f 1437/2172/5338 1246/2019/5337 1438/2173/5339
+s 1301
+f 1246/1867/5340 1247/1868/5341 1438/2174/5342
+f 1438/2174/5342 1247/1868/5341 1439/2175/5343
+s 1302
+f 1247/1868/5344 1248/1869/5345 1439/2175/5346
+f 1439/2175/5346 1248/1869/5345 1440/2176/5347
+s 1303
+f 1248/1869/5348 1340/1871/5349 1440/2176/5350
+f 1440/2176/5350 1340/1871/5349 1546/2177/5351
+s 1304
+f 1341/2021/5352 1249/1872/5353 1441/2178/5354
+f 1441/2178/5354 1249/1872/5353 1442/2179/5355
+s 1305
+f 1249/1872/5356 1250/1873/5357 1442/2179/5358
+f 1442/2179/5358 1250/1873/5357 1548/2180/5359
+s 1306
+f 1250/2182/5360 1251/2022/5361 1443/2181/5362
+f 1443/2181/5362 1251/2022/5361 1446/2025/5363
+s 1307
+f 1341/2021/5364 1444/2183/5365 1146/1727/5366
+f 1146/1727/5366 1444/2183/5365 1060/1584/5367
+s 1308
+f 1342/2185/5368 1147/2186/5369 1445/2184/5370
+f 1445/2184/5370 1147/2186/5369 1343/2187/5371
+s 1309
+f 1343/2026/5372 1252/1875/5373 1447/2188/5374
+f 1447/2188/5374 1252/1875/5373 1448/2189/5375
+s 1310
+f 1252/1875/5376 1344/1876/5377 1448/2189/5378
+f 1448/2189/5378 1344/1876/5377 1553/2190/5379
+s 1311
+f 1262/1741/5380 1358/2053/5381 1253/1877/5382
+f 1253/1877/5382 1358/2053/5381 1555/2191/5383
+s 1312
+f 1149/1585/5384 1060/1584/5385 1450/2030/5386
+f 1450/2030/5386 1060/1584/5385 1444/2183/5387
+s 1313
+f 1347/2031/5388 1451/2192/5389 1254/1879/5390
+f 1254/1879/5390 1451/2192/5389 1351/2038/5391
+s 1314
+f 1347/2194/5392 1255/2195/5393 1452/2193/5394
+f 1452/2193/5394 1255/2195/5393 1456/2196/5395
+s 1315
+f 1348/2198/5396 1256/2199/5397 1453/2197/5398
+f 1453/2197/5398 1256/2199/5397 1560/2200/5399
+s 1316
+f 1345/2201/5400 1455/2202/5401 1256/2199/5402
+f 1256/2199/5402 1455/2202/5401 1560/2200/5403
+s 1317
+f 1350/2204/5404 1457/2205/5405 1257/2203/5406
+f 1257/2203/5406 1457/2205/5405 1458/2206/5407
+s 1318
+f 1257/2208/5408 1458/2209/5409 1349/2207/5410
+f 1349/2207/5410 1458/2209/5409 1566/2210/5411
+s 1319
+f 1353/1891/5412 1460/2211/5413 1258/1888/5414
+f 1258/1888/5414 1460/2211/5413 1570/2212/5415
+s 1320
+f 1259/2214/5416 1339/2215/5417 1461/2213/5418
+f 1461/2213/5418 1339/2215/5417 1545/2216/5419
+s 1321
+f 1353/1891/5420 1259/1893/5421 1460/2211/5422
+f 1460/2211/5422 1259/1893/5421 1461/2217/5423
+s 1322
+f 1260/2051/5424 1354/2218/5425 1462/2052/5426
+f 1462/2052/5426 1354/2218/5425 1571/2219/5427
+s 1323
+f 1261/1737/5428 1459/2043/5429 1356/2048/5430
+f 1356/2048/5430 1459/2043/5429 1573/2220/5431
+s 1324
+f 1359/1916/5432 1464/2221/5433 1263/1898/5434
+f 1263/1898/5434 1464/2221/5433 1465/2222/5435
+s 1325
+f 1263/1898/5436 1465/2222/5437 1264/1899/5438
+f 1264/1899/5438 1465/2222/5437 1577/2223/5439
+s 1326
+f 1264/1899/5440 1466/2224/5441 1265/1900/5442
+f 1265/1900/5442 1466/2224/5441 1467/2225/5443
+s 1327
+f 1265/1901/5444 1467/2226/5445 1266/1744/5446
+f 1266/1744/5446 1467/2226/5445 1468/2055/5447
+s 1328
+f 1271/1903/5448 1269/1902/5449 1470/2227/5450
+f 1470/2227/5450 1269/1902/5449 1579/2228/5451
+s 1329
+f 1270/1774/5452 1271/1903/5453 1471/2229/5454
+f 1471/2229/5454 1271/1903/5453 1470/2227/5455
+s 1330
+f 1268/1746/5456 1360/1904/5457 1469/2056/5458
+f 1469/2056/5458 1360/1904/5457 1472/2230/5459
+s 1331
+f 1360/1904/5460 1272/2057/5461 1472/2230/5462
+f 1472/2230/5462 1272/2057/5461 1473/2231/5463
+s 1332
+f 1272/2057/5464 1361/2232/5465 1473/2231/5466
+f 1473/2231/5466 1361/2232/5465 1580/2233/5467
+s 1333
+f 1273/1907/5468 1274/1908/5469 1475/2234/5470
+f 1475/2234/5470 1274/1908/5469 1362/1909/5471
+s 1334
+f 1363/2059/5472 1477/2235/5473 1163/1750/5474
+f 1163/1750/5474 1477/2235/5473 1365/1911/5475
+s 1335
+f 1364/2237/5476 1276/1910/5477 1478/2236/5478
+f 1478/2236/5478 1276/1910/5477 1479/2238/5479
+s 1336
+f 1276/1910/5480 1365/1911/5481 1479/2238/5482
+f 1479/2238/5482 1365/1911/5481 1477/2235/5483
+s 1337
+f 1277/2067/5484 1364/2237/5485 1480/2068/5486
+f 1480/2068/5486 1364/2237/5485 1478/2236/5487
+s 1338
+f 1368/2069/5488 1481/2239/5489 1278/1912/5490
+f 1278/1912/5490 1481/2239/5489 1369/2071/5491
+s 1339
+f 1167/1758/5492 1372/2076/5493 1371/1914/5494
+f 1371/1914/5494 1372/2076/5493 1591/2240/5495
+s 1340
+f 1371/2241/5496 1483/2242/5497 1168/1915/5498
+f 1168/1915/5498 1483/2242/5497 1359/1916/5499
+s 1341
+f 1172/2244/5500 1286/2096/5501 1373/2243/5502
+f 1373/2243/5502 1286/2096/5501 1487/2099/5503
+s off
+f 3/3/5504 1281/1918/5505 1/1/5506
+s 1342
+f 1281/2246/5507 3/2247/5508 1374/2245/5509
+f 1374/2245/5509 3/2247/5508 12/2248/5510
+s off
+f 16/2249/5511 1177/2092/5512 20/2091/5513
+s 1343
+f 18/2090/5514 1282/2089/5515 23/2251/5516
+f 23/2251/5516 1282/2089/5515 1375/2250/5517
+s 1344
+f 1283/1921/5518 1284/1922/5519 1485/2252/5520
+f 1485/2252/5520 1284/1922/5519 1376/2253/5521
+s 1345
+f 1375/2093/5522 1283/1921/5523 1486/2254/5524
+f 1486/2254/5524 1283/1921/5523 1485/2252/5525
+s 1346
+f 1285/1919/5526 1484/2088/5527 1287/1923/5528
+f 1287/1923/5528 1484/2088/5527 1488/2255/5529
+s 1347
+f 1287/1923/5530 1488/2255/5531 1377/1924/5532
+f 1377/1924/5532 1488/2255/5531 1595/2256/5533
+s 1348
+f 1471/2260/5534 1489/2257/5535 1270/2259/5536
+f 1489/2257/5535 1288/2258/5537 1270/2259/5536
+s 1349
+f 1183/1925/5538 1288/1928/5539 1490/2261/5540
+f 1490/2261/5540 1288/1928/5539 1489/2262/5541
+s 1350
+f 1183/2264/5542 1491/2265/5543 1378/2263/5544
+f 1378/2263/5544 1491/2265/5543 1596/2266/5545
+s 1351
+f 1379/2268/5546 1289/2100/5547 1493/2267/5548
+f 1493/2267/5548 1289/2100/5547 1492/2103/5549
+s 1352
+f 1379/2104/5550 1494/2269/5551 1290/2105/5552
+f 1290/2105/5552 1494/2269/5551 1292/2270/5553
+s 1353
+f 1381/2272/5554 1292/2270/5555 1495/2271/5556
+f 1495/2271/5556 1292/2270/5555 1494/2269/5557
+s 1354
+f 1295/2274/5558 1293/2275/5559 1496/2273/5560
+f 1496/2273/5560 1293/2275/5559 1599/2276/5561
+s 1355
+f 1294/2112/5562 1295/2274/5563 1497/2113/5564
+f 1497/2113/5564 1295/2274/5563 1496/2273/5565
+s 1356
+f 1297/2278/5566 1296/2279/5567 1498/2277/5568
+f 1498/2277/5568 1296/2279/5567 1604/2280/5569
+s 1357
+f 1382/2281/5570 1499/2282/5571 1296/2279/5572
+f 1296/2279/5572 1499/2282/5571 1604/2280/5573
+s 1358
+f 1302/1953/5574 1297/1947/5575 1500/2283/5576
+f 1500/2283/5576 1297/1947/5575 1603/2284/5577
+s 1359
+f 1384/2286/5578 1298/2287/5579 1501/2285/5580
+f 1501/2285/5580 1298/2287/5579 1503/2288/5581
+s 1360
+f 1298/2287/5582 1385/2289/5583 1503/2288/5584
+f 1503/2288/5584 1385/2289/5583 1504/2290/5585
+s 1361
+f 1385/2289/5586 1192/2291/5587 1504/2290/5588
+f 1504/2290/5588 1192/2291/5587 1386/2292/5589
+s 1362
+f 1387/2294/5590 1300/2295/5591 1505/2293/5592
+f 1505/2293/5592 1300/2295/5591 1506/2296/5593
+s 1363
+f 1300/2295/5594 1388/2297/5595 1506/2296/5596
+f 1506/2296/5596 1388/2297/5595 1609/2298/5597
+s 1364
+f 1193/2119/5598 1389/2118/5599 1388/2297/5600
+f 1388/2297/5600 1389/2118/5599 1609/2298/5601
+s 1365
+f 1390/2121/5602 1302/1953/5603 1507/2299/5604
+f 1507/2299/5604 1302/1953/5603 1500/2283/5605
+s off
+f 1303/1956/5606 797/1785/5607 1508/2300/5608
+f 1304/2122/5609 894/1309/5610 1614/2301/5611
+s 1366
+f 894/1309/5612 1303/2302/5613 1614/2301/5614
+f 1303/2302/5613 1509/2303/5615 1614/2301/5614
+s 1367
+f 1195/1792/5616 1391/1958/5617 1511/2126/5618
+f 1511/2126/5618 1391/1958/5617 1512/2304/5619
+s 1368
+f 1391/1958/5620 1194/1957/5621 1512/2304/5622
+f 1512/2304/5622 1194/1957/5621 1615/2305/5623
+s 1369
+f 1392/2125/5624 1417/1994/5625 1305/1793/5626
+f 1305/1793/5626 1417/1994/5625 1327/1993/5627
+s 1370
+f 1198/1794/5628 1393/1959/5629 1394/2127/5630
+f 1394/2127/5630 1393/1959/5629 1619/2306/5631
+s 1371
+f 1196/2308/5632 1306/2309/5633 1393/2307/5634
+f 1393/2307/5634 1306/2309/5633 1513/2310/5635
+s 1372
+f 1306/2309/5636 1307/2129/5637 1513/2310/5638
+f 1513/2310/5638 1307/2129/5637 1514/2132/5639
+s 1373
+f 1308/2312/5640 1309/2313/5641 1515/2311/5642
+f 1515/2311/5642 1309/2313/5641 1516/2314/5643
+s 1374
+f 1309/2313/5644 1310/2315/5645 1516/2314/5646
+f 1516/2314/5646 1310/2315/5645 1517/2316/5647
+s 1375
+f 1396/2136/5648 1518/2317/5649 1312/1969/5650
+f 1312/1969/5650 1518/2317/5649 1399/2139/5651
+s 1376
+f 1400/1971/5652 1519/2318/5653 1212/1827/5654
+f 1212/1827/5654 1519/2318/5653 1401/2141/5655
+s 1377
+f 1314/1823/5656 1315/1826/5657 1520/2140/5658
+f 1520/2140/5658 1315/1826/5657 1521/2144/5659
+s 1378
+f 1317/1972/5660 1522/2319/5661 1316/1859/5662
+f 1316/1859/5662 1522/2319/5661 1424/2162/5663
+s 1379
+f 1317/1972/5664 1404/1973/5665 1522/2319/5666
+f 1522/2319/5666 1404/1973/5665 1630/2320/5667
+s 1380
+f 1318/1974/5668 1523/2321/5669 1404/1973/5670
+f 1404/1973/5670 1523/2321/5669 1630/2320/5671
+s 1381
+f 1407/2150/5672 1320/1979/5673 1524/2322/5674
+f 1524/2322/5674 1320/1979/5673 1525/2323/5675
+s 1382
+f 1320/1979/5676 1321/1982/5677 1525/2323/5678
+f 1525/2323/5678 1321/1982/5677 1408/2151/5679
+s 1383
+f 1222/1987/5680 1414/1988/5681 1410/2324/5682
+f 1410/2324/5682 1414/1988/5681 1636/2325/5683
+s 1384
+f 1410/2327/5684 1526/2328/5685 1324/2326/5686
+f 1324/2326/5686 1526/2328/5685 1527/2329/5687
+s 1385
+f 1324/1983/5688 1527/2330/5689 1325/1984/5690
+f 1325/1984/5690 1527/2330/5689 1528/2331/5691
+s 1386
+f 1223/1850/5692 1411/1986/5693 1412/2155/5694
+f 1412/2155/5694 1411/1986/5693 1638/2332/5695
+s 1387
+f 1325/1984/5696 1528/2331/5697 1411/1986/5698
+f 1411/1986/5698 1528/2331/5697 1639/2333/5699
+s 1388
+f 1225/1689/5700 1415/1990/5701 1414/1988/5702
+f 1414/1988/5702 1415/1990/5701 1640/2334/5703
+s 1389
+f 1326/1995/5704 1418/1996/5705 1415/2335/5706
+f 1415/2335/5706 1418/1996/5705 1641/2336/5707
+s 1390
+f 1227/1991/5708 1416/1992/5709 1418/2337/5710
+f 1418/2337/5710 1416/1992/5709 1642/2338/5711
+s 1391
+f 1226/1693/5712 1529/2339/5713 1416/1992/5714
+f 1416/1992/5714 1529/2339/5713 1643/2340/5715
+s 1392
+f 1226/1693/5716 1417/1994/5717 1529/2339/5718
+f 1529/2339/5718 1417/1994/5717 1617/2341/5719
+s 1393
+f 1328/1997/5720 1530/2163/5721 1419/2156/5722
+f 1419/2156/5722 1530/2163/5721 1531/2342/5723
+s 1394
+f 1426/2164/5724 1329/1861/5725 1531/2342/5726
+f 1531/2342/5726 1329/1861/5725 1419/2156/5727
+s 1395
+f 1426/2164/5728 1532/2343/5729 1330/1998/5730
+f 1330/1998/5730 1532/2343/5729 1533/2344/5731
+s 1396
+f 1330/1998/5732 1533/2344/5733 1334/1999/5734
+f 1334/1999/5734 1533/2344/5733 1539/2345/5735
+s 1397
+f 1331/2000/5736 1427/2001/5737 1534/2346/5738
+f 1534/2346/5738 1427/2001/5737 1652/2347/5739
+s 1398
+f 1237/2349/5740 1428/2350/5741 1427/2348/5742
+f 1427/2348/5742 1428/2350/5741 1654/2351/5743
+s 1399
+f 1238/2003/5744 1429/2004/5745 1428/2352/5746
+f 1428/2352/5746 1429/2004/5745 1655/2353/5747
+s 1400
+f 1239/1711/5748 1336/2005/5749 1429/2004/5750
+f 1429/2004/5750 1336/2005/5749 1541/2354/5751
+s 1401
+f 1245/1721/5752 1430/2006/5753 1436/2018/5754
+f 1436/2018/5754 1430/2006/5753 1656/2355/5755
+s 1402
+f 1430/2006/5756 1240/1712/5757 1535/2356/5758
+f 1535/2356/5758 1240/1712/5757 1431/2007/5759
+s 1403
+f 1332/2358/5760 1433/2359/5761 1536/2357/5762
+f 1536/2357/5762 1433/2359/5761 1659/2360/5763
+s 1404
+f 1333/2010/5764 1332/2011/5765 1537/2361/5766
+f 1537/2361/5766 1332/2011/5765 1536/2362/5767
+s 1405
+f 1434/2166/5768 1333/2010/5769 1538/2363/5770
+f 1538/2363/5770 1333/2010/5769 1537/2361/5771
+s 1406
+f 1334/1999/5772 1539/2345/5773 1435/2012/5774
+f 1435/2012/5774 1539/2345/5773 1335/2013/5775
+s 1407
+f 1336/2014/5776 1337/2015/5777 1541/2364/5778
+f 1541/2364/5778 1337/2015/5777 1542/2365/5779
+s 1408
+f 1337/2015/5780 1338/2016/5781 1542/2365/5782
+f 1542/2365/5782 1338/2016/5781 1543/2366/5783
+s 1409
+f 1338/2017/5784 1436/2018/5785 1543/2367/5786
+f 1543/2367/5786 1436/2018/5785 1662/2368/5787
+s 1410
+f 1339/2215/5788 1437/2369/5789 1545/2216/5790
+f 1545/2216/5790 1437/2369/5789 1664/2370/5791
+s 1411
+f 1441/2372/5792 1547/2373/5793 1341/2371/5794
+f 1341/2371/5794 1547/2373/5793 1549/2374/5795
+s 1412
+f 1250/1873/5796 1443/2375/5797 1548/2180/5798
+f 1548/2180/5798 1443/2375/5797 1669/2376/5799
+s 1413
+f 1341/2378/5800 1549/2379/5801 1444/2377/5802
+f 1444/2377/5802 1549/2379/5801 1670/2380/5803
+s 1414
+f 1342/2382/5804 1445/2383/5805 1550/2381/5806
+f 1550/2381/5806 1445/2383/5805 1671/2384/5807
+s 1415
+f 1446/2025/5808 1342/2024/5809 1551/2385/5810
+f 1551/2385/5810 1342/2024/5809 1550/2386/5811
+s 1416
+f 1445/2184/5812 1343/2187/5813 1552/2387/5814
+f 1552/2387/5814 1343/2187/5813 1447/2388/5815
+s 1417
+f 1344/1876/5816 1449/2028/5817 1553/2190/5818
+f 1553/2190/5818 1449/2028/5817 1673/2389/5819
+s 1418
+f 1449/2391/5820 1253/2392/5821 1554/2390/5822
+f 1554/2390/5822 1253/2392/5821 1555/2393/5823
+s 1419
+f 1345/1884/5824 1346/2029/5825 1556/2394/5826
+f 1556/2394/5826 1346/2029/5825 1557/2395/5827
+s 1420
+f 1346/2029/5828 1450/2030/5829 1557/2395/5830
+f 1557/2395/5830 1450/2030/5829 1677/2396/5831
+s 1421
+f 1451/2398/5832 1347/2194/5833 1558/2397/5834
+f 1558/2397/5834 1347/2194/5833 1452/2193/5835
+s 1422
+f 1453/2399/5836 1559/2400/5837 1348/2033/5838
+f 1348/2033/5838 1559/2400/5837 1682/2401/5839
+s 1423
+f 1454/2034/5840 1348/2033/5841 1561/2402/5842
+f 1561/2402/5842 1348/2033/5841 1682/2401/5843
+s 1424
+f 1455/2404/5844 1345/2405/5845 1562/2403/5846
+f 1562/2403/5846 1345/2405/5845 1556/2406/5847
+s 1425
+f 1456/2408/5848 1349/2207/5849 1563/2407/5850
+f 1563/2407/5850 1349/2207/5849 1566/2210/5851
+s 1426
+f 1457/2205/5852 1350/2204/5853 1564/2409/5854
+f 1564/2409/5854 1350/2204/5853 1565/2410/5855
+s 1427
+f 1350/2037/5856 1454/2034/5857 1565/2411/5858
+f 1565/2411/5858 1454/2034/5857 1561/2402/5859
+s 1428
+f 1451/2192/5860 1567/2412/5861 1351/2038/5862
+f 1351/2038/5862 1567/2412/5861 1688/2413/5863
+s 1429
+f 1352/2039/5864 1351/2038/5865 1568/2414/5866
+f 1568/2414/5866 1351/2038/5865 1688/2413/5867
+s 1430
+f 1352/2039/5868 1568/2414/5869 1362/2041/5870
+f 1362/2041/5870 1568/2414/5869 1475/2415/5871
+s 1431
+f 1459/2417/5872 1258/2418/5873 1569/2416/5874
+f 1569/2416/5874 1258/2418/5873 1570/2419/5875
+s 1432
+f 1354/2421/5876 1355/2422/5877 1572/2420/5878
+f 1572/2420/5878 1355/2422/5877 1463/2423/5879
+s 1433
+f 1463/2047/5880 1356/2048/5881 1572/2424/5882
+f 1572/2424/5882 1356/2048/5881 1573/2220/5883
+s 1434
+f 1357/2049/5884 1574/2426/5885 1358/2425/5886
+f 1358/2425/5886 1574/2426/5885 1675/2427/5887
+s 1435
+f 1357/2049/5888 1462/2052/5889 1575/2428/5890
+f 1575/2428/5890 1462/2052/5889 1692/2429/5891
+s 1436
+f 1464/2221/5892 1359/1916/5893 1576/2430/5894
+f 1576/2430/5894 1359/1916/5893 1483/2242/5895
+s 1437
+f 1264/1899/5896 1577/2223/5897 1466/2224/5898
+f 1466/2224/5898 1577/2223/5897 1697/2431/5899
+s 1438
+f 1275/1752/5900 1468/2055/5901 1476/2060/5902
+f 1476/2060/5902 1468/2055/5901 1700/2432/5903
+s 1439
+f 1469/2056/5904 1578/2433/5905 1269/1902/5906
+f 1269/1902/5906 1578/2433/5905 1579/2228/5907
+s 1440
+f 1361/2232/5908 1474/2434/5909 1580/2233/5910
+f 1580/2233/5910 1474/2434/5909 1707/2435/5911
+s 1441
+f 1273/1907/5912 1475/2234/5913 1474/2058/5914
+f 1474/2058/5914 1475/2234/5913 1707/2436/5915
+s 1442
+f 1476/2438/5916 1581/2439/5917 1363/2437/5918
+f 1363/2437/5918 1581/2439/5917 1709/2440/5919
+s 1443
+f 1363/2442/5920 1582/2443/5921 1477/2441/5922
+f 1477/2441/5922 1582/2443/5921 1711/2444/5923
+s 1444
+f 1368/2446/5924 1366/2063/5925 1583/2445/5926
+f 1583/2445/5926 1366/2063/5925 1584/2447/5927
+s 1445
+f 1366/2063/5928 1367/2066/5929 1584/2447/5930
+f 1584/2447/5930 1367/2066/5929 1714/2448/5931
+s 1446
+f 1480/2068/5932 1585/2449/5933 1367/2066/5934
+f 1367/2066/5934 1585/2449/5933 1714/2448/5935
+s 1447
+f 1481/2239/5936 1368/2069/5937 1586/2450/5938
+f 1586/2450/5938 1368/2069/5937 1583/2451/5939
+s 1448
+f 1481/2239/5940 1587/2452/5941 1369/2071/5942
+f 1369/2071/5942 1587/2452/5941 1588/2453/5943
+s 1449
+f 1369/2071/5944 1588/2453/5945 1482/2072/5946
+f 1482/2072/5946 1588/2453/5945 1716/2454/5947
+s 1450
+f 1372/2076/5948 1370/2073/5949 1589/2455/5950
+f 1589/2455/5950 1370/2073/5949 1590/2456/5951
+s 1451
+f 1370/2073/5952 1482/2075/5953 1590/2456/5954
+f 1590/2456/5954 1482/2075/5953 1717/2457/5955
+s 1452
+f 1483/2459/5956 1371/1914/5957 1592/2458/5958
+f 1592/2458/5958 1371/1914/5957 1591/2240/5959
+s 1453
+f 1373/2460/5960 1593/2461/5961 1376/2253/5962
+f 1376/2253/5962 1593/2461/5961 1485/2252/5963
+s off
+f 1280/1769/5964 4/2083/5965 5/2082/5966
+f 11/2462/5967 1374/2245/5968 12/2248/5969
+s 1454
+f 1484/2088/5970 1374/2087/5971 1488/2255/5972
+f 1488/2255/5972 1374/2087/5971 1719/2463/5973
+s off
+f 24/2464/5974 1375/2250/5975 1486/2465/5976
+s 1455
+f 1487/2467/5977 1377/1924/5978 1594/2466/5979
+f 1594/2466/5979 1377/1924/5978 1595/2256/5980
+s 1456
+f 1183/1628/5981 1490/2469/5982 1491/2468/5983
+f 1491/2468/5983 1490/2469/5982 1721/2470/5984
+s 1457
+f 1492/2103/5985 1378/2102/5986 1597/2471/5987
+f 1597/2471/5987 1378/2102/5986 1659/2472/5988
+s 1458
+f 1493/2267/5989 1598/2473/5990 1379/2268/5991
+f 1379/2268/5991 1598/2473/5990 1494/2474/5992
+s 1459
+f 1293/2275/5993 1380/2475/5994 1599/2276/5995
+f 1599/2276/5995 1380/2475/5994 1600/2476/5996
+s 1460
+f 1380/2475/5997 1381/2272/5998 1600/2476/5999
+f 1600/2476/5999 1381/2272/5998 1495/2271/6000
+s 1461
+f 1382/1946/6001 1383/2111/6002 1601/2477/6003
+f 1601/2477/6003 1383/2111/6002 1602/2478/6004
+s 1462
+f 1383/2111/6005 1497/2113/6006 1602/2478/6007
+f 1602/2478/6007 1497/2113/6006 1729/2479/6008
+s 1463
+f 1297/2481/6009 1498/2482/6010 1603/2480/6011
+f 1603/2480/6011 1498/2482/6010 1730/2483/6012
+s 1464
+f 1499/2282/6013 1382/2281/6014 1605/2484/6015
+f 1605/2484/6015 1382/2281/6014 1601/2485/6016
+s 1465
+f 1501/2285/6017 1606/2486/6018 1384/2286/6019
+f 1384/2286/6019 1606/2486/6018 1502/2487/6020
+s 1466
+f 1502/2115/6021 1607/2488/6022 797/1785/6023
+f 797/1785/6023 1607/2488/6022 1508/2300/6024
+s 1467
+f 1386/2292/6025 1608/2489/6026 1504/2290/6027
+f 1504/2290/6027 1608/2489/6026 1738/2490/6028
+s 1468
+f 1386/2292/6029 1387/2294/6030 1608/2489/6031
+f 1608/2489/6031 1387/2294/6030 1505/2293/6032
+s 1469
+f 1390/2492/6033 1610/2493/6034 1389/2491/6035
+f 1389/2491/6035 1610/2493/6034 1743/2494/6036
+s 1470
+f 1507/2299/6037 1611/2495/6038 1390/2121/6039
+f 1390/2121/6039 1611/2495/6038 1610/2496/6040
+s off
+f 1303/2302/6041 1612/2497/6042 1509/2303/6043
+f 1303/2302/6044 1613/2498/6045 1612/2497/6046
+s 1471
+f 1194/1957/6047 1510/2123/6048 1615/2305/6049
+f 1615/2305/6049 1510/2123/6048 1750/2499/6050
+s 1472
+f 1304/2122/6051 1616/2500/6052 1510/2123/6053
+f 1510/2123/6053 1616/2500/6052 1750/2499/6054
+s 1473
+f 1417/2502/6055 1392/2503/6056 1617/2501/6057
+f 1617/2501/6057 1392/2503/6056 1618/2504/6058
+s 1474
+f 1392/2503/6059 1511/2505/6060 1618/2504/6061
+f 1618/2504/6061 1511/2505/6060 1753/2506/6062
+s 1475
+f 1394/2127/6063 1619/2306/6064 1395/2128/6065
+f 1395/2128/6065 1619/2306/6064 1620/2507/6066
+s 1476
+f 1308/2312/6067 1515/2311/6068 1514/2508/6069
+f 1514/2508/6069 1515/2311/6068 1754/2509/6070
+s 1477
+f 1395/2128/6071 1620/2507/6072 1517/2316/6073
+f 1517/2316/6073 1620/2507/6072 1516/2314/6074
+s 1478
+f 1396/2136/6075 1405/2146/6076 1518/2317/6077
+f 1518/2317/6077 1405/2146/6076 1631/2510/6078
+s 1479
+f 1399/2139/6079 1621/2511/6080 1397/2137/6081
+f 1397/2137/6081 1621/2511/6080 1622/2512/6082
+s 1480
+f 1397/2137/6083 1622/2512/6084 1398/2138/6085
+f 1398/2138/6085 1622/2512/6084 1623/2513/6086
+s 1481
+f 1398/2138/6087 1623/2513/6088 1400/1971/6089
+f 1400/1971/6089 1623/2513/6088 1519/2318/6090
+s 1482
+f 1518/2317/6091 1624/2514/6092 1399/2139/6093
+f 1399/2139/6093 1624/2514/6092 1621/2511/6094
+s 1483
+f 1520/2140/6095 1625/2515/6096 1318/1974/6097
+f 1318/1974/6097 1625/2515/6096 1523/2321/6098
+s 1484
+f 1519/2318/6099 1626/2516/6100 1401/2141/6101
+f 1401/2141/6101 1626/2516/6100 1627/2517/6102
+s 1485
+f 1401/2141/6103 1627/2517/6104 1402/2142/6105
+f 1402/2142/6105 1627/2517/6104 1756/2518/6106
+s 1486
+f 1403/2143/6107 1402/2142/6108 1628/2519/6109
+f 1628/2519/6109 1402/2142/6108 1756/2518/6110
+s 1487
+f 1521/2144/6111 1403/2143/6112 1629/2520/6113
+f 1629/2520/6113 1403/2143/6112 1628/2519/6114
+s 1488
+f 1405/2146/6115 1406/2148/6116 1631/2510/6117
+f 1631/2510/6117 1406/2148/6116 1632/2521/6118
+s 1489
+f 1406/2148/6119 1407/2150/6120 1632/2521/6121
+f 1632/2521/6121 1407/2150/6120 1524/2322/6122
+s 1490
+f 1633/2522/6123 1634/2523/6124 1408/2151/6125
+f 1408/2151/6125 1634/2523/6124 1525/2323/6126
+s 1491
+f 1635/2524/6127 1633/2522/6128 1409/2152/6129
+f 1409/2152/6129 1633/2522/6128 1408/2151/6130
+s 1492
+f 1409/2152/6131 1413/2153/6132 1635/2524/6133
+f 1635/2524/6133 1413/2153/6132 1412/2155/6134
+s 1493
+f 1526/2328/6135 1410/2327/6136 1637/2525/6137
+f 1637/2525/6137 1410/2327/6136 1636/2526/6138
+s 1494
+f 1421/2159/6139 1644/2527/6140 1420/2157/6141
+f 1420/2157/6141 1644/2527/6140 1645/2528/6142
+s 1495
+f 1420/2157/6143 1645/2528/6144 1425/2158/6145
+f 1425/2158/6145 1645/2528/6144 1650/2529/6146
+s 1496
+f 1422/2160/6147 1646/2530/6148 1421/2159/6149
+f 1421/2159/6149 1646/2530/6148 1644/2527/6150
+s 1497
+f 1423/2161/6151 1647/2531/6152 1422/2160/6153
+f 1422/2160/6153 1647/2531/6152 1646/2530/6154
+s 1498
+f 1424/2162/6155 1648/2532/6156 1423/2161/6157
+f 1423/2161/6157 1648/2532/6156 1647/2531/6158
+s 1499
+f 1522/2319/6159 1649/2533/6160 1424/2162/6161
+f 1424/2162/6161 1649/2533/6160 1648/2532/6162
+s 1500
+f 1425/2158/6163 1650/2529/6164 1530/2163/6165
+f 1530/2163/6165 1650/2529/6164 1767/2534/6166
+s 1501
+f 1531/2342/6167 1651/2535/6168 1426/2164/6169
+f 1426/2164/6169 1651/2535/6168 1532/2343/6170
+s 1502
+f 1534/2346/6171 1653/2536/6172 1331/2000/6173
+f 1331/2000/6173 1653/2536/6172 1544/2537/6174
+s 1503
+f 1430/2006/6175 1535/2356/6176 1657/2538/6177
+f 1657/2538/6177 1535/2356/6176 1772/2539/6178
+s 1504
+f 1431/2007/6179 1432/2165/6180 1535/2356/6181
+f 1535/2356/6181 1432/2165/6180 1773/2540/6182
+s 1505
+f 1434/2166/6183 1658/2541/6184 1432/2165/6185
+f 1432/2165/6185 1658/2541/6184 1773/2540/6186
+s 1506
+f 1538/2363/6187 1660/2542/6188 1434/2166/6189
+f 1434/2166/6189 1660/2542/6188 1658/2541/6190
+s 1507
+f 1540/2167/6191 1335/2013/6192 1661/2543/6193
+f 1661/2543/6193 1335/2013/6192 1539/2345/6194
+s 1508
+f 1540/2545/6195 1597/2546/6196 1433/2544/6197
+f 1433/2544/6197 1597/2546/6196 1659/2547/6198
+s 1509
+f 1544/2171/6199 1663/2548/6200 1340/2168/6201
+f 1340/2168/6201 1663/2548/6200 1546/2549/6202
+s 1510
+f 1437/2172/6203 1438/2173/6204 1665/2550/6205
+f 1665/2550/6205 1438/2173/6204 1439/2551/6206
+s 1511
+f 1439/2175/6207 1440/2176/6208 1665/2552/6209
+f 1665/2552/6209 1440/2176/6208 1546/2177/6210
+s 1512
+f 1547/2373/6211 1441/2372/6212 1666/2553/6213
+f 1666/2553/6213 1441/2372/6212 1667/2554/6214
+s 1513
+f 1441/2178/6215 1442/2179/6216 1667/2555/6217
+f 1667/2555/6217 1442/2179/6216 1668/2556/6218
+s 1514
+f 1442/2179/6219 1548/2180/6220 1668/2556/6221
+f 1668/2556/6221 1548/2180/6220 1783/2557/6222
+s 1515
+f 1446/2025/6223 1551/2385/6224 1443/2181/6225
+f 1443/2181/6225 1551/2385/6224 1785/2558/6226
+s 1516
+f 1445/2383/6227 1552/2559/6228 1671/2384/6229
+f 1671/2384/6229 1552/2559/6228 1788/2560/6230
+s 1517
+f 1447/2388/6231 1448/2561/6232 1552/2387/6233
+f 1552/2387/6233 1448/2561/6232 1672/2562/6234
+s 1518
+f 1448/2189/6235 1553/2190/6236 1672/2563/6237
+f 1672/2563/6237 1553/2190/6236 1673/2389/6238
+s 1519
+f 1554/2390/6239 1674/2564/6240 1449/2391/6241
+f 1449/2391/6241 1674/2564/6240 1673/2565/6242
+s 1520
+f 1358/2425/6243 1675/2427/6244 1555/2566/6245
+f 1555/2566/6245 1675/2427/6244 1791/2567/6246
+s 1521
+f 1450/2569/6247 1444/2377/6248 1676/2568/6249
+f 1676/2568/6249 1444/2377/6248 1670/2380/6250
+s 1522
+f 1558/2397/6251 1678/2570/6252 1451/2398/6253
+f 1451/2398/6253 1678/2570/6252 1567/2571/6254
+s 1523
+f 1558/2397/6255 1452/2193/6256 1679/2572/6257
+f 1679/2572/6257 1452/2193/6256 1796/2573/6258
+s 1524
+f 1452/2575/6259 1456/2408/6260 1680/2574/6261
+f 1680/2574/6261 1456/2408/6260 1563/2407/6262
+s 1525
+f 1559/2577/6263 1453/2578/6264 1681/2576/6265
+f 1681/2576/6265 1453/2578/6264 1798/2579/6266
+s 1526
+f 1560/2200/6267 1683/2580/6268 1453/2197/6269
+f 1453/2197/6269 1683/2580/6268 1798/2581/6270
+s 1527
+f 1562/2583/6271 1684/2584/6272 1455/2582/6273
+f 1455/2582/6273 1684/2584/6272 1685/2585/6274
+s 1528
+f 1455/2582/6275 1685/2585/6276 1560/2586/6277
+f 1560/2586/6277 1685/2585/6276 1683/2587/6278
+s 1529
+f 1564/2589/6279 1686/2590/6280 1457/2588/6281
+f 1457/2588/6281 1686/2590/6280 1687/2591/6282
+s 1530
+f 1457/2592/6283 1687/2593/6284 1458/2209/6285
+f 1458/2209/6285 1687/2593/6284 1566/2210/6286
+s 1531
+f 1569/2416/6287 1689/2594/6288 1459/2417/6289
+f 1459/2417/6289 1689/2594/6288 1573/2595/6290
+s 1532
+f 1460/2597/6291 1690/2598/6292 1570/2596/6293
+f 1570/2596/6293 1690/2598/6292 1810/2599/6294
+s 1533
+f 1461/2213/6295 1691/2600/6296 1460/2597/6297
+f 1460/2597/6297 1691/2600/6296 1690/2598/6298
+s 1534
+f 1461/2213/6299 1545/2216/6300 1534/2346/6301
+f 1534/2346/6301 1545/2216/6300 1653/2536/6302
+s 1535
+f 1462/2052/6303 1571/2219/6304 1692/2429/6305
+f 1692/2429/6305 1571/2219/6304 1809/2601/6306
+s 1536
+f 1354/2218/6307 1572/2602/6308 1571/2219/6309
+f 1571/2219/6309 1572/2602/6308 1809/2601/6310
+s 1537
+f 1574/2426/6311 1357/2049/6312 1693/2603/6313
+f 1693/2603/6313 1357/2049/6312 1575/2428/6314
+s 1538
+f 1576/2430/6315 1694/2604/6316 1464/2221/6317
+f 1464/2221/6317 1694/2604/6316 1695/2605/6318
+s 1539
+f 1464/2221/6319 1695/2605/6320 1465/2222/6321
+f 1465/2222/6321 1695/2605/6320 1696/2606/6322
+s 1540
+f 1465/2222/6323 1696/2606/6324 1577/2223/6325
+f 1577/2223/6325 1696/2606/6324 1813/2607/6326
+s 1541
+f 1467/2226/6327 1466/2609/6328 1698/2608/6329
+f 1698/2608/6329 1466/2609/6328 1815/2610/6330
+s 1542
+f 1467/2226/6331 1699/2611/6332 1468/2055/6333
+f 1468/2055/6333 1699/2611/6332 1700/2432/6334
+s 1543
+f 1578/2433/6335 1469/2056/6336 1701/2612/6337
+f 1701/2612/6337 1469/2056/6336 1472/2230/6338
+s 1544
+f 1470/2613/6339 1702/2614/6340 1471/2260/6341
+f 1471/2260/6341 1702/2614/6340 1704/2615/6342
+s off
+f 1703/2616/6343 1470/2227/6344 1579/2228/6345
+s 1545
+f 1471/2260/6346 1704/2615/6347 1489/2257/6348
+f 1489/2257/6348 1704/2615/6347 1490/2617/6349
+s 1546
+f 1473/2231/6350 1705/2618/6351 1472/2230/6352
+f 1472/2230/6352 1705/2618/6351 1701/2612/6353
+s 1547
+f 1580/2233/6354 1706/2619/6355 1473/2231/6356
+f 1473/2231/6356 1706/2619/6355 1705/2618/6357
+s 1548
+f 1475/2415/6358 1568/2414/6359 1707/2620/6360
+f 1707/2620/6360 1568/2414/6359 1808/2621/6361
+s 1549
+f 1581/2439/6362 1476/2438/6363 1708/2622/6364
+f 1708/2622/6364 1476/2438/6363 1700/2623/6365
+s 1550
+f 1582/2443/6366 1363/2442/6367 1710/2624/6368
+f 1710/2624/6368 1363/2442/6367 1709/2625/6369
+s 1551
+f 1480/2627/6370 1478/2628/6371 1712/2626/6372
+f 1712/2626/6372 1478/2628/6371 1713/2629/6373
+s 1552
+f 1478/2628/6374 1479/2630/6375 1713/2629/6376
+f 1713/2629/6376 1479/2630/6375 1822/2631/6377
+s 1553
+f 1477/2235/6378 1711/2632/6379 1479/2238/6380
+f 1479/2238/6380 1711/2632/6379 1821/2633/6381
+s 1554
+f 1480/2068/6382 1712/2634/6383 1585/2449/6384
+f 1585/2449/6384 1712/2634/6383 1825/2635/6385
+s 1555
+f 1586/2450/6386 1715/2636/6387 1481/2239/6388
+f 1481/2239/6388 1715/2636/6387 1587/2452/6389
+s 1556
+f 1372/2076/6390 1589/2455/6391 1591/2240/6392
+f 1591/2240/6392 1589/2455/6391 1831/2637/6393
+s 1557
+f 1592/2638/6394 1718/2639/6395 1483/2242/6396
+f 1483/2242/6396 1718/2639/6395 1576/2430/6397
+s 1558
+f 1373/2460/6398 1487/2467/6399 1593/2461/6400
+f 1593/2461/6400 1487/2467/6399 1594/2466/6401
+s 1559
+f 17/2640/6402 1719/2641/6403 11/2462/6404
+f 11/2462/6404 1719/2641/6403 1374/2245/6405
+s off
+f 23/2251/6406 1375/2250/6407 24/2464/6408
+s 1560
+f 1486/2254/6409 1485/2252/6410 1720/2642/6411
+f 1720/2642/6411 1485/2252/6410 1593/2461/6412
+s off
+f 24/24/6413 1486/2254/6414 22/22/6415
+s 1561
+f 1488/2255/6416 1719/2463/6417 1595/2256/6418
+f 1595/2256/6418 1719/2463/6417 1594/2466/6419
+s 1562
+f 1596/2266/6420 1722/2643/6421 1378/2263/6422
+f 1378/2263/6422 1722/2643/6421 1659/2644/6423
+s 1563
+f 1596/2266/6424 1491/2265/6425 1723/2645/6426
+f 1723/2645/6426 1491/2265/6425 1837/2646/6427
+s 1564
+f 1493/2267/6428 1492/2103/6429 1724/2647/6430
+f 1724/2647/6430 1492/2103/6429 1597/2471/6431
+s 1565
+f 1493/2267/6432 1724/2647/6433 1598/2473/6434
+f 1598/2473/6434 1724/2647/6433 1838/2648/6435
+s 1566
+f 1598/2473/6436 1725/2649/6437 1494/2474/6438
+f 1494/2474/6438 1725/2649/6437 1495/2650/6439
+s 1567
+f 1600/2476/6440 1495/2271/6441 1726/2651/6442
+f 1726/2651/6442 1495/2271/6441 1840/2652/6443
+s 1568
+f 1599/2654/6444 1727/2655/6445 1496/2653/6446
+f 1496/2653/6446 1727/2655/6445 1842/2656/6447
+s 1569
+f 1497/2658/6448 1496/2653/6449 1728/2657/6450
+f 1728/2657/6450 1496/2653/6449 1842/2656/6451
+s 1570
+f 1604/2280/6452 1731/2659/6453 1498/2277/6454
+f 1498/2277/6454 1731/2659/6453 1847/2660/6455
+s 1571
+f 1499/2282/6456 1605/2484/6457 1732/2661/6458
+f 1732/2661/6458 1605/2484/6457 1848/2662/6459
+s 1572
+f 1604/2280/6460 1499/2282/6461 1731/2659/6462
+f 1731/2659/6462 1499/2282/6461 1732/2661/6463
+s 1573
+f 1507/2299/6464 1500/2283/6465 1733/2663/6466
+f 1733/2663/6466 1500/2283/6465 1734/2664/6467
+s 1574
+f 1500/2283/6468 1603/2284/6469 1734/2664/6470
+f 1734/2664/6470 1603/2284/6469 1846/2665/6471
+s 1575
+f 1606/2486/6472 1501/2285/6473 1735/2666/6474
+f 1735/2666/6474 1501/2285/6473 1736/2667/6475
+s 1576
+f 1501/2285/6476 1503/2288/6477 1736/2667/6478
+f 1736/2667/6478 1503/2288/6477 1737/2668/6479
+s 1577
+f 1502/2487/6480 1606/2486/6481 1607/2669/6482
+f 1607/2669/6482 1606/2486/6481 1745/2670/6483
+s 1578
+f 1503/2288/6484 1504/2290/6485 1737/2668/6486
+f 1737/2668/6486 1504/2290/6485 1738/2490/6487
+s 1579
+f 1505/2672/6488 1739/2673/6489 1608/2671/6490
+f 1608/2671/6490 1739/2673/6489 1851/2674/6491
+s 1580
+f 1505/2293/6492 1506/2296/6493 1740/2675/6494
+f 1740/2675/6494 1506/2296/6493 1741/2676/6495
+s 1581
+f 1506/2296/6496 1609/2298/6497 1741/2676/6498
+f 1741/2676/6498 1609/2298/6497 1852/2677/6499
+s 1582
+f 1609/2679/6500 1389/2491/6501 1742/2678/6502
+f 1742/2678/6502 1389/2491/6501 1743/2494/6503
+s 1583
+f 1611/2495/6504 1507/2299/6505 1744/2680/6506
+f 1744/2680/6506 1507/2299/6505 1733/2663/6507
+s 1584
+f 1607/2669/6508 1745/2670/6509 1508/2681/6510
+f 1508/2681/6510 1745/2670/6509 1747/2682/6511
+s off
+f 1303/2302/6512 1746/2683/6513 1613/2498/6514
+s 1585
+f 1303/2302/6515 1508/2681/6516 1746/2683/6517
+f 1746/2683/6517 1508/2681/6516 1747/2682/6518
+s 1586
+f 1304/2122/6519 1614/2301/6520 1616/2500/6521
+f 1616/2500/6521 1614/2301/6520 1749/2684/6522
+s 1587
+f 1509/2303/6523 1612/2497/6524 1748/2685/6525
+f 1748/2685/6525 1612/2497/6524 1857/2686/6526
+s 1588
+f 1614/2301/6527 1509/2303/6528 1749/2684/6529
+f 1749/2684/6529 1509/2303/6528 1748/2685/6530
+s 1589
+f 1512/2687/6531 1751/2688/6532 1511/2505/6533
+f 1511/2505/6533 1751/2688/6532 1753/2506/6534
+s 1590
+f 1512/2304/6535 1615/2305/6536 1752/2689/6537
+f 1752/2689/6537 1615/2305/6536 1858/2690/6538
+s 1591
+f 1393/1959/6539 1513/2691/6540 1619/2306/6541
+f 1619/2306/6541 1513/2691/6540 1861/2692/6542
+s 1592
+f 1514/2132/6543 1754/2693/6544 1513/2310/6545
+f 1513/2310/6545 1754/2693/6544 1861/2694/6546
+s 1593
+f 1515/2311/6547 1516/2314/6548 1754/2509/6549
+f 1754/2509/6549 1516/2314/6548 1620/2507/6550
+s 1594
+f 1518/2317/6551 1631/2510/6552 1624/2514/6553
+f 1624/2514/6553 1631/2510/6552 1864/2695/6554
+s 1595
+f 1623/2513/6555 1755/2696/6556 1519/2318/6557
+f 1519/2318/6557 1755/2696/6556 1626/2516/6558
+s 1596
+f 1521/2144/6559 1629/2520/6560 1520/2140/6561
+f 1520/2140/6561 1629/2520/6560 1625/2515/6562
+s 1597
+f 1630/2320/6563 1757/2697/6564 1522/2319/6565
+f 1522/2319/6565 1757/2697/6564 1649/2533/6566
+s 1598
+f 1625/2515/6567 1758/2698/6568 1523/2321/6569
+f 1523/2321/6569 1758/2698/6568 1759/2699/6570
+s 1599
+f 1523/2321/6571 1759/2699/6572 1630/2320/6573
+f 1630/2320/6573 1759/2699/6572 1757/2697/6574
+s 1600
+f 1760/2700/6575 1761/2701/6576 1524/2322/6577
+f 1524/2322/6577 1761/2701/6576 1632/2521/6578
+s 1601
+f 1634/2523/6579 1760/2700/6580 1525/2323/6581
+f 1525/2323/6581 1760/2700/6580 1524/2322/6582
+s 1602
+f 1633/2522/6583 1762/2702/6584 1634/2523/6585
+f 1634/2523/6585 1762/2702/6584 1871/2703/6586
+s 1603
+f 1635/2524/6587 1763/2704/6588 1633/2522/6589
+f 1633/2522/6589 1763/2704/6588 1762/2702/6590
+s 1604
+f 1414/1988/6591 1640/2334/6592 1636/2325/6593
+f 1636/2325/6593 1640/2334/6592 1872/2705/6594
+s 1605
+f 1526/2706/6595 1637/2707/6596 1529/2339/6597
+f 1529/2339/6597 1637/2707/6596 1643/2340/6598
+s 1606
+f 1526/2328/6599 1764/2708/6600 1527/2329/6601
+f 1527/2329/6601 1764/2708/6600 1874/2709/6602
+s 1607
+f 1528/2711/6603 1527/2712/6604 1765/2710/6605
+f 1765/2710/6605 1527/2712/6604 1874/2713/6606
+s 1608
+f 1412/2155/6607 1638/2332/6608 1635/2524/6609
+f 1635/2524/6609 1638/2332/6608 1763/2704/6610
+s 1609
+f 1411/1986/6611 1639/2333/6612 1638/2332/6613
+f 1638/2332/6613 1639/2333/6612 1875/2714/6614
+s 1610
+f 1639/2333/6615 1528/2331/6616 1766/2715/6617
+f 1766/2715/6617 1528/2331/6616 1765/2716/6618
+s 1611
+f 1415/1990/6619 1641/2717/6620 1640/2334/6621
+f 1640/2334/6621 1641/2717/6620 1872/2705/6622
+s 1612
+f 1418/2337/6623 1642/2338/6624 1641/2718/6625
+f 1641/2718/6625 1642/2338/6624 1876/2719/6626
+s 1613
+f 1416/1992/6627 1643/2340/6628 1642/2338/6629
+f 1642/2338/6629 1643/2340/6628 1876/2719/6630
+s 1614
+f 1529/2339/6631 1617/2341/6632 1526/2706/6633
+f 1526/2706/6633 1617/2341/6632 1764/2720/6634
+s 1615
+f 1530/2163/6635 1767/2534/6636 1531/2342/6637
+f 1531/2342/6637 1767/2534/6636 1651/2535/6638
+s 1616
+f 1651/2535/6639 1768/2721/6640 1532/2343/6641
+f 1532/2343/6641 1768/2721/6640 1769/2722/6642
+s 1617
+f 1532/2343/6643 1769/2722/6644 1533/2344/6645
+f 1533/2344/6645 1769/2722/6644 1770/2723/6646
+s 1618
+f 1533/2344/6647 1770/2723/6648 1539/2345/6649
+f 1539/2345/6649 1770/2723/6648 1661/2543/6650
+s 1619
+f 1427/2001/6651 1654/2724/6652 1652/2347/6653
+f 1652/2347/6653 1654/2724/6652 1886/2725/6654
+s 1620
+f 1534/2346/6655 1652/2347/6656 1461/2213/6657
+f 1461/2213/6657 1652/2347/6656 1691/2600/6658
+s 1621
+f 1654/2727/6659 1428/2352/6660 1771/2726/6661
+f 1771/2726/6661 1428/2352/6660 1655/2353/6662
+s 1622
+f 1429/2004/6663 1541/2354/6664 1655/2353/6665
+f 1655/2353/6665 1541/2354/6664 1778/2728/6666
+s 1623
+f 1436/2018/6667 1656/2355/6668 1662/2368/6669
+f 1662/2368/6669 1656/2355/6668 1889/2729/6670
+s 1624
+f 1430/2006/6671 1657/2538/6672 1656/2355/6673
+f 1656/2355/6673 1657/2538/6672 1890/2730/6674
+s 1625
+f 1659/2360/6675 1774/2731/6676 1536/2357/6677
+f 1536/2357/6677 1774/2731/6676 1895/2732/6678
+s 1626
+f 1537/2734/6679 1536/2735/6680 1775/2733/6681
+f 1775/2733/6681 1536/2735/6680 1895/2736/6682
+s 1627
+f 1538/2738/6683 1537/2734/6684 1776/2737/6685
+f 1776/2737/6685 1537/2734/6684 1775/2733/6686
+s 1628
+f 1660/2740/6687 1538/2738/6688 1777/2739/6689
+f 1777/2739/6689 1538/2738/6688 1776/2737/6690
+s 1629
+f 1661/2741/6691 1724/2742/6692 1540/2545/6693
+f 1540/2545/6693 1724/2742/6692 1597/2546/6694
+s 1630
+f 1541/2364/6695 1542/2365/6696 1778/2743/6697
+f 1778/2743/6697 1542/2365/6696 1779/2744/6698
+s 1631
+f 1542/2365/6699 1543/2366/6700 1779/2744/6701
+f 1779/2744/6701 1543/2366/6700 1780/2745/6702
+s 1632
+f 1543/2367/6703 1662/2368/6704 1780/2746/6705
+f 1780/2746/6705 1662/2368/6704 1897/2747/6706
+s 1633
+f 1544/2537/6707 1653/2536/6708 1663/2748/6709
+f 1663/2748/6709 1653/2536/6708 1898/2749/6710
+s 1634
+f 1545/2216/6711 1664/2370/6712 1653/2536/6713
+f 1653/2536/6713 1664/2370/6712 1898/2749/6714
+s 1635
+f 1437/2172/6715 1665/2550/6716 1664/2750/6717
+f 1664/2750/6717 1665/2550/6716 1898/2751/6718
+s 1636
+f 1546/2752/6719 1663/2753/6720 1665/2550/6721
+f 1665/2550/6721 1663/2753/6720 1898/2751/6722
+s 1637
+f 1547/2755/6723 1666/2756/6724 1781/2754/6725
+f 1781/2754/6725 1666/2756/6724 1900/2757/6726
+s off
+f 1782/2758/6727 1549/2374/6728 1547/2373/6729
+s 1638
+f 1548/2180/6730 1669/2376/6731 1783/2557/6732
+f 1783/2557/6732 1669/2376/6731 1902/2759/6733
+s 1639
+f 1669/2761/6734 1443/2762/6735 1784/2760/6736
+f 1784/2760/6736 1443/2762/6735 1785/2763/6737
+s off
+f 1670/2380/6738 1549/2379/6739 1782/2764/6740
+s 1640
+f 1550/2381/6741 1786/2766/6742 1551/2765/6743
+f 1551/2765/6743 1786/2766/6742 1904/2767/6744
+s 1641
+f 1550/2381/6745 1671/2384/6746 1787/2768/6747
+f 1787/2768/6747 1671/2384/6746 1790/2769/6748
+s 1642
+f 1674/2771/6749 1554/2772/6750 1789/2770/6751
+f 1789/2770/6751 1554/2772/6750 1790/2769/6752
+s 1643
+f 1554/2772/6753 1555/2566/6754 1790/2769/6755
+f 1790/2769/6755 1555/2566/6754 1787/2768/6756
+s 1644
+f 1450/2030/6757 1676/2773/6758 1677/2396/6759
+f 1677/2396/6759 1676/2773/6758 1908/2774/6760
+s 1645
+f 1562/2403/6761 1556/2406/6762 1792/2775/6763
+f 1792/2775/6763 1556/2406/6762 1793/2776/6764
+s 1646
+f 1556/2394/6765 1557/2395/6766 1793/2777/6767
+f 1793/2777/6767 1557/2395/6766 1794/2778/6768
+s 1647
+f 1557/2395/6769 1677/2396/6770 1794/2778/6771
+f 1794/2778/6771 1677/2396/6770 1909/2779/6772
+s 1648
+f 1678/2570/6773 1558/2397/6774 1795/2780/6775
+f 1795/2780/6775 1558/2397/6774 1679/2572/6776
+s 1649
+f 1452/2782/6777 1680/2783/6778 1796/2781/6779
+f 1796/2781/6779 1680/2783/6778 1913/2784/6780
+s 1650
+f 1681/2576/6781 1797/2785/6782 1559/2577/6783
+f 1559/2577/6783 1797/2785/6782 1915/2786/6784
+s 1651
+f 1682/2401/6785 1559/2400/6786 1799/2787/6787
+f 1799/2787/6787 1559/2400/6786 1915/2788/6788
+s 1652
+f 1565/2411/6789 1561/2402/6790 1800/2789/6791
+f 1800/2789/6791 1561/2402/6790 1801/2790/6792
+s 1653
+f 1561/2402/6793 1682/2401/6794 1801/2790/6795
+f 1801/2790/6795 1682/2401/6794 1799/2787/6796
+s 1654
+f 1684/2584/6797 1562/2583/6798 1802/2791/6799
+f 1802/2791/6799 1562/2583/6798 1792/2792/6800
+s 1655
+f 1680/2574/6801 1563/2407/6802 1803/2793/6803
+f 1803/2793/6803 1563/2407/6802 1804/2794/6804
+s 1656
+f 1563/2407/6805 1566/2210/6806 1804/2794/6807
+f 1804/2794/6807 1566/2210/6806 1687/2593/6808
+s 1657
+f 1686/2590/6809 1564/2589/6810 1805/2795/6811
+f 1805/2795/6811 1564/2589/6810 1921/2796/6812
+s 1658
+f 1565/2410/6813 1800/2797/6814 1564/2409/6815
+f 1564/2409/6815 1800/2797/6814 1921/2798/6816
+s 1659
+f 1678/2570/6817 1806/2799/6818 1567/2571/6819
+f 1567/2571/6819 1806/2799/6818 1807/2800/6820
+s 1660
+f 1567/2571/6821 1807/2800/6822 1688/2801/6823
+f 1688/2801/6823 1807/2800/6822 1925/2802/6824
+s 1661
+f 1568/2414/6825 1688/2413/6826 1808/2621/6827
+f 1808/2621/6827 1688/2413/6826 1926/2803/6828
+s 1662
+f 1689/2804/6829 1569/2805/6830 1809/2601/6831
+f 1809/2601/6831 1569/2805/6830 1692/2429/6832
+s 1663
+f 1569/2805/6833 1570/2596/6834 1692/2429/6835
+f 1692/2429/6835 1570/2596/6834 1575/2428/6836
+s 1664
+f 1573/2807/6837 1689/2808/6838 1572/2806/6839
+f 1572/2806/6839 1689/2808/6838 1809/2809/6840
+s 1665
+f 1693/2603/6841 1811/2810/6842 1574/2426/6843
+f 1574/2426/6843 1811/2810/6842 1812/2811/6844
+s 1666
+f 1574/2426/6845 1812/2811/6846 1675/2427/6847
+f 1675/2427/6847 1812/2811/6846 1907/2812/6848
+s 1667
+f 1693/2603/6849 1575/2428/6850 1810/2599/6851
+f 1810/2599/6851 1575/2428/6850 1570/2596/6852
+s 1668
+f 1576/2430/6853 1718/2639/6854 1694/2604/6855
+f 1694/2604/6855 1718/2639/6854 1930/2813/6856
+s 1669
+f 1577/2815/6857 1813/2816/6858 1697/2814/6859
+f 1697/2814/6859 1813/2816/6858 1814/2817/6860
+s 1670
+f 1697/2814/6861 1814/2817/6862 1466/2609/6863
+f 1466/2609/6863 1814/2817/6862 1815/2610/6864
+s 1671
+f 1467/2226/6865 1698/2608/6866 1699/2611/6867
+f 1699/2611/6867 1698/2608/6866 1934/2818/6868
+s off
+f 1816/2819/6869 1578/2433/6870 1701/2612/6871
+f 1579/2228/6872 1578/2433/6873 1703/2616/6874
+s 1672
+f 1470/2613/6875 1817/2820/6876 1702/2614/6877
+f 1702/2614/6877 1817/2820/6876 1940/2821/6878
+s off
+f 1818/2822/6879 1470/2227/6880 1703/2616/6881
+s 1673
+f 1706/2619/6882 1580/2233/6883 1808/2823/6884
+f 1808/2823/6884 1580/2233/6883 1707/2435/6885
+s 1674
+f 1581/2439/6886 1708/2622/6887 1819/2824/6888
+f 1819/2824/6888 1708/2622/6887 1944/2825/6889
+s 1675
+f 1581/2826/6890 1819/2827/6891 1709/2625/6892
+f 1709/2625/6892 1819/2827/6891 1945/2828/6893
+s 1676
+f 1710/2624/6894 1820/2829/6895 1582/2443/6896
+f 1582/2443/6896 1820/2829/6895 1946/2830/6897
+s 1677
+f 1711/2444/6898 1582/2443/6899 1821/2831/6900
+f 1821/2831/6900 1582/2443/6899 1946/2830/6901
+s 1678
+f 1586/2450/6902 1583/2451/6903 1823/2832/6904
+f 1823/2832/6904 1583/2451/6903 1584/2833/6905
+s 1679
+f 1714/2448/6906 1824/2834/6907 1584/2447/6908
+f 1584/2447/6908 1824/2834/6907 1823/2835/6909
+s 1680
+f 1585/2449/6910 1826/2836/6911 1714/2448/6912
+f 1714/2448/6912 1826/2836/6911 1824/2834/6913
+s 1681
+f 1715/2636/6914 1586/2450/6915 1827/2837/6916
+f 1827/2837/6916 1586/2450/6915 1823/2832/6917
+s 1682
+f 1715/2636/6918 1828/2838/6919 1587/2452/6920
+f 1587/2452/6920 1828/2838/6919 1829/2839/6921
+s 1683
+f 1587/2452/6922 1829/2839/6923 1588/2453/6924
+f 1588/2453/6924 1829/2839/6923 1830/2840/6925
+s 1684
+f 1482/2072/6926 1716/2454/6927 1717/2841/6928
+f 1717/2841/6928 1716/2454/6927 1952/2842/6929
+s 1685
+f 1588/2453/6930 1830/2840/6931 1716/2454/6932
+f 1716/2454/6932 1830/2840/6931 1953/2843/6933
+s 1686
+f 1589/2455/6934 1590/2456/6935 1832/2844/6936
+f 1832/2844/6936 1590/2456/6935 1833/2845/6937
+s 1687
+f 1590/2456/6938 1717/2457/6939 1833/2845/6940
+f 1833/2845/6940 1717/2457/6939 1954/2846/6941
+s 1688
+f 1592/2458/6942 1591/2240/6943 1834/2847/6944
+f 1834/2847/6944 1591/2240/6943 1831/2637/6945
+s 1689
+f 1592/2638/6946 1835/2848/6947 1718/2639/6948
+f 1718/2639/6948 1835/2848/6947 1955/2849/6949
+s off
+f 22/22/6950 1719/2463/6951 17/18/6952
+f 22/22/6953 1486/2254/6954 1720/2642/6955
+s 1690
+f 1593/2461/6956 1594/2466/6957 1720/2642/6958
+f 1720/2642/6958 1594/2466/6957 1719/2463/6959
+s 1691
+f 1490/2469/6960 1704/2850/6961 1721/2470/6962
+f 1721/2470/6962 1704/2850/6961 1702/2851/6963
+s 1692
+f 1721/2470/6964 1836/2852/6965 1491/2468/6966
+f 1491/2468/6966 1836/2852/6965 1837/2853/6967
+s 1693
+f 1596/2266/6968 1723/2645/6969 1722/2643/6970
+f 1722/2643/6970 1723/2645/6969 1956/2854/6971
+s 1694
+f 1598/2473/6972 1838/2648/6973 1725/2649/6974
+f 1725/2649/6974 1838/2648/6973 1958/2855/6975
+s 1695
+f 1599/2276/6976 1600/2476/6977 1839/2856/6978
+f 1839/2856/6978 1600/2476/6977 1726/2651/6979
+s 1696
+f 1495/2858/6980 1725/2859/6981 1840/2857/6982
+f 1840/2857/6982 1725/2859/6981 1959/2860/6983
+s 1697
+f 1727/2862/6984 1599/2276/6985 1841/2861/6986
+f 1841/2861/6986 1599/2276/6985 1839/2856/6987
+s 1698
+f 1497/2864/6988 1728/2865/6989 1729/2863/6990
+f 1729/2863/6990 1728/2865/6989 1964/2866/6991
+s 1699
+f 1605/2868/6992 1601/2477/6993 1843/2867/6994
+f 1843/2867/6994 1601/2477/6993 1844/2869/6995
+s 1700
+f 1601/2477/6996 1602/2478/6997 1844/2869/6998
+f 1844/2869/6998 1602/2478/6997 1845/2870/6999
+s 1701
+f 1602/2478/7000 1729/2479/7001 1845/2870/7002
+f 1845/2870/7002 1729/2479/7001 1965/2871/7003
+s 1702
+f 1603/2480/7004 1730/2483/7005 1846/2872/7006
+f 1846/2872/7006 1730/2483/7005 1966/2873/7007
+s 1703
+f 1498/2482/7008 1847/2874/7009 1730/2483/7010
+f 1730/2483/7010 1847/2874/7009 1967/2875/7011
+s 1704
+f 1606/2486/7012 1735/2666/7013 1745/2670/7014
+f 1745/2670/7014 1735/2666/7013 1970/2876/7015
+s 1705
+f 1738/2878/7016 1608/2671/7017 1849/2877/7018
+f 1849/2877/7018 1608/2671/7017 1851/2674/7019
+s 1706
+f 1739/2880/7020 1505/2293/7021 1850/2879/7022
+f 1850/2879/7022 1505/2293/7021 1740/2675/7023
+s 1707
+f 1609/2882/7024 1742/2883/7025 1852/2881/7026
+f 1852/2881/7026 1742/2883/7025 1980/2884/7027
+s 1708
+f 1610/2493/7028 1611/2886/7029 1853/2885/7030
+f 1853/2885/7030 1611/2886/7029 1855/2887/7031
+s 1709
+f 1743/2494/7032 1610/2493/7033 1854/2888/7034
+f 1854/2888/7034 1610/2493/7033 1853/2885/7035
+s 1710
+f 1611/2886/7036 1744/2889/7037 1855/2887/7038
+f 1855/2887/7038 1744/2889/7037 1981/2890/7039
+s 1711
+f 1613/2498/7040 1856/2891/7041 1612/2497/7042
+f 1612/2497/7042 1856/2891/7041 1857/2686/7043
+s 1712
+f 1613/2498/7044 1746/2683/7045 1856/2891/7046
+f 1856/2891/7046 1746/2683/7045 1983/2892/7047
+s 1713
+f 1615/2305/7048 1750/2499/7049 1858/2690/7050
+f 1858/2690/7050 1750/2499/7049 1987/2893/7051
+s 1714
+f 1750/2895/7052 1616/2896/7053 1859/2894/7054
+f 1859/2894/7054 1616/2896/7053 1988/2897/7055
+s 1715
+f 1512/2304/7056 1752/2689/7057 1751/2898/7058
+f 1751/2898/7058 1752/2689/7057 1989/2899/7059
+s 1716
+f 1617/2501/7060 1618/2504/7061 1764/2900/7062
+f 1764/2900/7062 1618/2504/7061 1860/2901/7063
+s 1717
+f 1618/2504/7064 1753/2506/7065 1860/2901/7066
+f 1860/2901/7066 1753/2506/7065 1751/2688/7067
+s 1718
+f 1619/2306/7068 1861/2692/7069 1620/2507/7070
+f 1620/2507/7070 1861/2692/7069 1754/2509/7071
+s 1719
+f 1624/2514/7072 1862/2902/7073 1621/2511/7074
+f 1621/2511/7074 1862/2902/7073 1863/2903/7075
+s 1720
+f 1621/2511/7076 1863/2903/7077 1622/2512/7078
+f 1622/2512/7078 1863/2903/7077 1992/2904/7079
+s 1721
+f 1623/2513/7080 1622/2512/7081 1755/2696/7082
+f 1755/2696/7082 1622/2512/7081 1992/2904/7083
+s 1722
+f 1629/2520/7084 1865/2905/7085 1625/2515/7086
+f 1625/2515/7086 1865/2905/7085 1758/2698/7087
+s 1723
+f 1755/2696/7088 1866/2906/7089 1626/2516/7090
+f 1626/2516/7090 1866/2906/7089 1867/2907/7091
+s 1724
+f 1626/2516/7092 1867/2907/7093 1627/2517/7094
+f 1627/2517/7094 1867/2907/7093 1868/2908/7095
+s 1725
+f 1627/2517/7096 1868/2908/7097 1756/2518/7098
+f 1756/2518/7098 1868/2908/7097 1993/2909/7099
+s 1726
+f 1628/2519/7100 1756/2518/7101 1869/2910/7102
+f 1869/2910/7102 1756/2518/7101 1993/2909/7103
+s 1727
+f 1629/2520/7104 1628/2519/7105 1865/2905/7106
+f 1865/2905/7106 1628/2519/7105 1869/2910/7107
+s 1728
+f 1631/2510/7108 1632/2521/7109 1864/2695/7110
+f 1864/2695/7110 1632/2521/7109 1761/2701/7111
+s 1729
+f 1760/2700/7112 1870/2911/7113 1761/2701/7114
+f 1761/2701/7114 1870/2911/7113 1996/2912/7115
+s 1730
+f 1634/2523/7116 1871/2703/7117 1760/2700/7118
+f 1760/2700/7118 1871/2703/7117 1870/2911/7119
+s 1731
+f 1637/2525/7120 1636/2526/7121 1873/2913/7122
+f 1873/2913/7122 1636/2526/7121 1872/2914/7123
+s 1732
+f 1639/2333/7124 1766/2715/7125 1875/2714/7126
+f 1875/2714/7126 1766/2715/7125 2000/2915/7127
+s 1733
+f 1637/2707/7128 1873/2916/7129 1643/2340/7130
+f 1643/2340/7130 1873/2916/7129 1876/2719/7131
+s 1734
+f 1646/2530/7132 1877/2917/7133 1644/2527/7134
+f 1644/2527/7134 1877/2917/7133 1878/2918/7135
+s 1735
+f 1644/2527/7136 1878/2918/7137 1645/2528/7138
+f 1645/2528/7138 1878/2918/7137 1879/2919/7139
+s 1736
+f 1645/2528/7140 1879/2919/7141 1650/2529/7142
+f 1650/2529/7142 1879/2919/7141 1884/2920/7143
+s 1737
+f 1647/2531/7144 1880/2921/7145 1646/2530/7146
+f 1646/2530/7146 1880/2921/7145 1877/2917/7147
+s 1738
+f 1648/2532/7148 1881/2922/7149 1647/2531/7150
+f 1647/2531/7150 1881/2922/7149 1880/2921/7151
+s 1739
+f 1649/2533/7152 1882/2923/7153 1648/2532/7154
+f 1648/2532/7154 1882/2923/7153 1881/2922/7155
+s 1740
+f 1757/2697/7156 1883/2924/7157 1649/2533/7158
+f 1649/2533/7158 1883/2924/7157 1882/2923/7159
+s 1741
+f 1650/2529/7160 1884/2920/7161 1767/2534/7162
+f 1767/2534/7162 1884/2920/7161 1885/2925/7163
+s 1742
+f 1767/2534/7164 1885/2925/7165 1651/2535/7166
+f 1651/2535/7166 1885/2925/7165 1768/2721/7167
+s 1743
+f 1771/2726/7168 1887/2926/7169 1654/2727/7170
+f 1654/2727/7170 1887/2926/7169 1886/2927/7171
+s 1744
+f 1771/2726/7172 1655/2353/7173 1888/2928/7174
+f 1888/2928/7174 1655/2353/7173 1778/2728/7175
+s 1745
+f 1657/2538/7176 1772/2539/7177 1891/2929/7178
+f 1891/2929/7178 1772/2539/7177 1892/2930/7179
+s 1746
+f 1772/2539/7180 1535/2356/7181 1892/2930/7182
+f 1892/2930/7182 1535/2356/7181 1773/2540/7183
+s 1747
+f 1660/2542/7184 1893/2931/7185 1658/2541/7186
+f 1658/2541/7186 1893/2931/7185 1894/2932/7187
+s 1748
+f 1658/2541/7188 1894/2932/7189 1773/2540/7190
+f 1773/2540/7190 1894/2932/7189 2004/2933/7191
+s 1749
+f 1659/2935/7192 1722/2936/7193 1774/2934/7194
+f 1774/2934/7194 1722/2936/7193 2005/2937/7195
+s 1750
+f 1777/2739/7196 1896/2938/7197 1660/2740/7198
+f 1660/2740/7198 1896/2938/7197 1893/2939/7199
+s 1751
+f 1724/2647/7200 1661/2543/7201 1838/2648/7202
+f 1838/2648/7202 1661/2543/7201 1770/2723/7203
+s 1752
+f 1781/2754/7204 1899/2940/7205 1547/2755/7206
+f 1547/2755/7206 1899/2940/7205 1782/2941/7207
+s 1753
+f 1667/2554/7208 1668/2942/7209 1666/2553/7210
+f 1666/2553/7210 1668/2942/7209 1901/2943/7211
+s 1754
+f 1668/2556/7212 1783/2557/7213 1901/2944/7214
+f 1901/2944/7214 1783/2557/7213 1902/2759/7215
+s 1755
+f 1784/2760/7216 1903/2945/7217 1669/2761/7218
+f 1669/2761/7218 1903/2945/7217 1902/2946/7219
+s 1756
+f 1551/2765/7220 1904/2767/7221 1785/2947/7222
+f 1785/2947/7222 1904/2767/7221 2015/2948/7223
+s 1757
+f 1670/2380/7224 1905/2949/7225 1676/2568/7226
+f 1676/2568/7226 1905/2949/7225 2016/2950/7227
+s 1758
+f 1786/2766/7228 1550/2381/7229 1906/2951/7230
+f 1906/2951/7230 1550/2381/7229 1787/2768/7231
+s 1759
+f 1671/2384/7232 1788/2560/7233 1790/2769/7234
+f 1790/2769/7234 1788/2560/7233 1789/2770/7235
+s 1760
+f 1552/2559/7236 1672/2952/7237 1788/2560/7238
+f 1788/2560/7238 1672/2952/7237 1789/2770/7239
+s 1761
+f 1673/2953/7240 1674/2771/7241 1672/2952/7242
+f 1672/2952/7242 1674/2771/7241 1789/2770/7243
+s 1762
+f 1555/2566/7244 1791/2567/7245 1787/2768/7246
+f 1787/2768/7246 1791/2567/7245 1906/2951/7247
+s 1763
+f 1675/2427/7248 1907/2812/7249 1791/2567/7250
+f 1791/2567/7250 1907/2812/7249 2019/2954/7251
+s 1764
+f 1678/2956/7252 1795/2957/7253 1910/2955/7254
+f 1910/2955/7254 1795/2957/7253 2023/2958/7255
+s 1765
+f 1795/2780/7256 1679/2572/7257 1911/2959/7258
+f 1911/2959/7258 1679/2572/7257 2024/2960/7259
+s 1766
+f 1796/2573/7260 1912/2961/7261 1679/2572/7262
+f 1679/2572/7262 1912/2961/7261 2024/2960/7263
+s 1767
+f 1797/2963/7264 1681/2964/7265 1914/2962/7266
+f 1914/2962/7266 1681/2964/7265 1916/2965/7267
+s 1768
+f 1681/2964/7268 1798/2966/7269 1916/2965/7270
+f 1916/2965/7270 1798/2966/7269 1922/2967/7271
+s 1769
+f 1685/2585/7272 1917/2968/7273 1683/2587/7274
+f 1683/2587/7274 1917/2968/7273 1918/2969/7275
+s 1770
+f 1683/2587/7276 1918/2969/7277 1798/2966/7278
+f 1798/2966/7278 1918/2969/7277 2027/2970/7279
+s 1771
+f 1684/2584/7280 1802/2791/7281 1919/2971/7282
+f 1919/2971/7282 1802/2791/7281 2021/2972/7283
+s 1772
+f 1685/2585/7284 1684/2584/7285 1920/2973/7286
+f 1920/2973/7286 1684/2584/7285 1919/2971/7287
+s 1773
+f 1680/2783/7288 1803/2974/7289 1913/2784/7290
+f 1913/2784/7290 1803/2974/7289 2028/2975/7291
+s 1774
+f 1686/2590/7292 1805/2795/7293 1916/2965/7294
+f 1916/2965/7294 1805/2795/7293 1914/2962/7295
+s 1775
+f 1687/2591/7296 1686/2590/7297 1922/2967/7298
+f 1922/2967/7298 1686/2590/7297 1916/2965/7299
+s 1776
+f 1687/2591/7300 1923/2977/7301 1804/2976/7302
+f 1804/2976/7302 1923/2977/7301 2031/2978/7303
+s 1777
+f 1806/2980/7304 1678/2981/7305 1924/2979/7306
+f 1924/2979/7306 1678/2981/7305 1910/2982/7307
+s 1778
+f 1690/2598/7308 1691/2600/7309 1927/2983/7310
+f 1927/2983/7310 1691/2600/7309 1929/2984/7311
+s 1779
+f 1810/2599/7312 1690/2598/7313 1928/2985/7314
+f 1928/2985/7314 1690/2598/7313 1927/2983/7315
+s 1780
+f 1691/2600/7316 1652/2347/7317 1929/2984/7318
+f 1929/2984/7318 1652/2347/7317 1886/2725/7319
+s 1781
+f 1693/2603/7320 1810/2599/7321 1811/2810/7322
+f 1811/2810/7322 1810/2599/7321 1928/2985/7323
+s 1782
+f 1695/2987/7324 1694/2988/7325 1931/2986/7326
+f 1931/2986/7326 1694/2988/7325 2034/2989/7327
+s 1783
+f 1695/2987/7328 1931/2986/7329 1696/2990/7330
+f 1696/2990/7330 1931/2986/7329 1932/2991/7331
+s 1784
+f 1696/2990/7332 1932/2991/7333 1813/2816/7334
+f 1813/2816/7334 1932/2991/7333 2035/2992/7335
+s 1785
+f 1815/2610/7336 1933/2993/7337 1698/2608/7338
+f 1698/2608/7338 1933/2993/7337 2036/2994/7339
+s 1786
+f 1700/2432/7340 1699/2611/7341 1935/2995/7342
+f 1935/2995/7342 1699/2611/7341 2037/2996/7343
+s 1787
+f 1700/2623/7344 1936/2997/7345 1708/2622/7346
+f 1708/2622/7346 1936/2997/7345 2039/2998/7347
+s off
+f 1937/2999/7348 1578/2433/7349 1816/2819/7350
+f 1703/2616/7351 1578/2433/7352 1938/3000/7353
+s 1788
+f 1817/3001/7354 1470/2227/7355 2044/3003/7356
+f 2044/3003/7356 1470/2227/7355 1939/3002/7357
+s off
+f 1941/3004/7358 1470/2227/7359 1818/2822/7360
+f 1942/3005/7361 1703/2616/7362 2048/3006/7363
+f 1701/3007/7364 1705/3008/7365 2049/3009/7366
+s 1789
+f 1706/3010/7367 1943/3011/7368 1705/3008/7369
+f 1705/3008/7369 1943/3011/7368 2049/3009/7370
+s 1790
+f 1808/2621/7371 1926/2803/7372 1706/3010/7373
+f 1706/3010/7373 1926/2803/7372 1943/3011/7374
+s 1791
+f 1709/2625/7375 1945/2828/7376 1710/2624/7377
+f 1710/2624/7377 1945/2828/7376 1820/2829/7378
+s 1792
+f 1712/2626/7379 1713/2629/7380 1947/3012/7381
+f 1947/3012/7381 1713/2629/7380 1948/3013/7382
+s 1793
+f 1713/2629/7383 1822/2631/7384 1948/3013/7385
+f 1948/3013/7385 1822/2631/7384 2054/3014/7386
+s 1794
+f 1822/3016/7387 1479/3017/7388 1949/3015/7389
+f 1949/3015/7389 1479/3017/7388 1821/3018/7390
+s 1795
+f 1585/2449/7391 1825/2635/7392 1826/2836/7393
+f 1826/2836/7393 1825/2635/7392 2058/3019/7394
+s 1796
+f 1825/2635/7395 1712/2634/7396 1950/3020/7397
+f 1950/3020/7397 1712/2634/7396 1947/3021/7398
+s 1797
+f 1827/2837/7399 1951/3022/7400 1715/2636/7401
+f 1715/2636/7401 1951/3022/7400 1828/2838/7402
+s 1798
+f 1589/2455/7403 1832/2844/7404 1831/2637/7405
+f 1831/2637/7405 1832/2844/7404 2065/3023/7406
+s 1799
+f 1592/2638/7407 1834/3024/7408 1835/2848/7409
+f 1835/2848/7409 1834/3024/7408 2068/3025/7410
+s off
+f 1719/2463/7411 22/22/7412 1720/2642/7413
+s 1800
+f 1721/2470/7414 1702/2851/7415 1836/2852/7416
+f 1836/2852/7416 1702/2851/7415 1940/3026/7417
+s 1801
+f 1723/3028/7418 1837/3029/7419 1957/3027/7420
+f 1957/3027/7420 1837/3029/7419 2072/3030/7421
+s 1802
+f 1839/2856/7422 1726/2651/7423 1960/3031/7424
+f 1960/3031/7424 1726/2651/7423 1961/3032/7425
+s 1803
+f 1726/2651/7426 1840/2652/7427 1961/3032/7428
+f 1961/3032/7428 1840/2652/7427 2075/3033/7429
+s 1804
+f 1727/2655/7430 1841/3035/7431 1962/3034/7432
+f 1962/3034/7432 1841/3035/7431 2076/3036/7433
+s 1805
+f 1842/2656/7434 1727/2655/7435 1963/3037/7436
+f 1963/3037/7436 1727/2655/7435 1962/3034/7437
+s 1806
+f 1842/2656/7438 1963/3037/7439 1728/2657/7440
+f 1728/2657/7440 1963/3037/7439 2078/3038/7441
+s 1807
+f 1605/2484/7442 1843/3039/7443 1848/2662/7444
+f 1848/2662/7444 1843/3039/7443 2079/3040/7445
+s 1808
+f 1731/3042/7446 1880/3043/7447 1847/3041/7448
+f 1847/3041/7448 1880/3043/7447 1881/3044/7449
+s 1809
+f 1732/3045/7450 1877/3046/7451 1731/3042/7452
+f 1731/3042/7452 1877/3046/7451 1880/3043/7453
+s 1810
+f 1732/3045/7454 1848/3048/7455 1968/3047/7456
+f 1968/3047/7456 1848/3048/7455 2083/3049/7457
+s 1811
+f 1744/2889/7458 1733/3051/7459 1969/3050/7460
+f 1969/3050/7460 1733/3051/7459 1734/3052/7461
+s 1812
+f 1734/3052/7462 1846/3053/7463 1969/3050/7464
+f 1969/3050/7464 1846/3053/7463 1966/3054/7465
+s 1813
+f 1736/3056/7466 1971/3057/7467 1735/3055/7468
+f 1735/3055/7468 1971/3057/7467 2087/3058/7469
+s 1814
+f 1736/2667/7470 1737/2668/7471 1972/3059/7472
+f 1972/3059/7472 1737/2668/7471 1973/3060/7473
+s 1815
+f 1737/2668/7474 1738/2490/7475 1973/3060/7476
+f 1973/3060/7476 1738/2490/7475 1974/3061/7477
+s 1816
+f 1738/3063/7478 1849/3064/7479 1974/3062/7480
+f 1974/3062/7480 1849/3064/7479 2088/3065/7481
+s 1817
+f 1739/2673/7482 1850/3067/7483 1975/3066/7484
+f 1975/3066/7484 1850/3067/7483 2089/3068/7485
+s 1818
+f 1851/2674/7486 1739/2673/7487 1976/3069/7488
+f 1976/3069/7488 1739/2673/7487 1975/3066/7489
+s 1819
+f 1850/2879/7490 1740/2675/7491 1977/3070/7492
+f 1977/3070/7492 1740/2675/7491 1978/3071/7493
+s 1820
+f 1740/2675/7494 1741/2676/7495 1978/3071/7496
+f 1978/3071/7496 1741/2676/7495 1979/3072/7497
+s 1821
+f 1741/2676/7498 1852/2677/7499 1979/3072/7500
+f 1979/3072/7500 1852/2677/7499 2090/3073/7501
+s 1822
+f 1743/2494/7502 1854/2888/7503 1742/2678/7504
+f 1742/2678/7504 1854/2888/7503 2092/3074/7505
+s 1823
+f 1747/2682/7506 1745/2670/7507 1982/3075/7508
+f 1982/3075/7508 1745/2670/7507 1970/2876/7509
+s 1824
+f 1746/2683/7510 1747/2682/7511 1983/2892/7512
+f 1983/2892/7512 1747/2682/7511 1982/3075/7513
+s 1825
+f 1749/3076/7514 1984/3077/7515 1616/2896/7516
+f 1616/2896/7516 1984/3077/7515 1988/2897/7517
+s 1826
+f 1749/2684/7518 1748/2685/7519 1985/3078/7520
+f 1985/3078/7520 1748/2685/7519 1986/3079/7521
+s 1827
+f 1748/2685/7522 1857/2686/7523 1986/3079/7524
+f 1986/3079/7524 1857/2686/7523 2097/3080/7525
+s 1828
+f 1750/3082/7526 1859/3083/7527 1987/3081/7528
+f 1987/3081/7528 1859/3083/7527 2099/3084/7529
+s 1829
+f 1752/2689/7530 1858/2690/7531 1990/3085/7532
+f 1990/3085/7532 1858/2690/7531 2098/3086/7533
+s 1830
+f 1862/2902/7534 1624/2514/7535 1991/3087/7536
+f 1991/3087/7536 1624/2514/7535 1864/2695/7537
+s 1831
+f 1755/2696/7538 1992/2904/7539 1866/2906/7540
+f 1866/2906/7540 1992/2904/7539 2104/3088/7541
+s 1832
+f 1865/2905/7542 1994/3089/7543 1758/2698/7544
+f 1758/2698/7544 1994/3089/7543 1995/3090/7545
+s 1833
+f 1758/2698/7546 1995/3090/7547 1759/2699/7548
+f 1759/2699/7548 1995/3090/7547 2108/3091/7549
+s 1834
+f 1757/2697/7550 1759/2699/7551 1883/2924/7552
+f 1883/2924/7552 1759/2699/7551 2108/3091/7553
+s 1835
+f 1761/2701/7554 1996/2912/7555 1864/2695/7556
+f 1864/2695/7556 1996/2912/7555 1991/3087/7557
+s 1836
+f 1763/2704/7558 1997/3092/7559 1762/2702/7560
+f 1762/2702/7560 1997/3092/7559 1998/3093/7561
+s 1837
+f 1762/2702/7562 1998/3093/7563 1871/2703/7564
+f 1871/2703/7564 1998/3093/7563 2109/3094/7565
+s 1838
+f 1638/2332/7566 1875/2714/7567 1763/2704/7568
+f 1763/2704/7568 1875/2714/7567 1997/3092/7569
+s 1839
+f 1764/3095/7570 1860/3096/7571 1874/2713/7572
+f 1874/2713/7572 1860/3096/7571 1765/2710/7573
+s 1840
+f 1766/3098/7574 1765/2710/7575 1999/3097/7576
+f 1999/3097/7576 1765/2710/7575 1860/3096/7577
+s 1841
+f 1641/3099/7578 1876/3100/7579 1872/2914/7580
+f 1872/2914/7580 1876/3100/7579 1873/2913/7581
+s 1842
+f 1885/3102/7582 1962/3103/7583 1768/3101/7584
+f 1768/3101/7584 1962/3103/7583 2001/3104/7585
+s 1843
+f 1768/3101/7586 2001/3104/7587 1769/3105/7588
+f 1769/3105/7588 2001/3104/7587 1958/3106/7589
+s 1844
+f 1769/3105/7590 1958/3106/7591 1770/3107/7592
+f 1770/3107/7592 1958/3106/7591 1838/3108/7593
+s 1845
+f 1887/2926/7594 1771/2726/7595 2002/3109/7596
+f 2002/3109/7596 1771/2726/7595 1888/2928/7597
+s 1846
+f 1662/2368/7598 1889/2729/7599 1897/2747/7600
+f 1897/2747/7600 1889/2729/7599 2113/3110/7601
+s 1847
+f 1656/2355/7602 1890/2730/7603 1889/2729/7604
+f 1889/2729/7604 1890/2730/7603 2003/3111/7605
+s 1848
+f 1890/2730/7606 1657/2538/7607 2003/3111/7608
+f 2003/3111/7608 1657/2538/7607 1891/2929/7609
+s 1849
+f 1773/2540/7610 2004/2933/7611 1892/2930/7612
+f 1892/2930/7612 2004/2933/7611 2116/3112/7613
+s 1850
+f 1895/3114/7614 1774/3115/7615 2006/3113/7616
+f 2006/3113/7616 1774/3115/7615 2120/3116/7617
+s 1851
+f 1895/3114/7618 2006/3113/7619 1775/3117/7620
+f 1775/3117/7620 2006/3113/7619 2007/3118/7621
+s 1852
+f 1775/2733/7622 2007/3119/7623 1776/2737/7624
+f 1776/2737/7624 2007/3119/7623 2121/3120/7625
+s 1853
+f 1777/2739/7626 1776/2737/7627 2008/3121/7628
+f 2008/3121/7628 1776/2737/7627 2121/3120/7629
+s 1854
+f 1896/2938/7630 1777/2739/7631 2009/3122/7632
+f 2009/3122/7632 1777/2739/7631 2008/3121/7633
+s 1855
+f 1778/2743/7634 1779/2744/7635 1888/3123/7636
+f 1888/3123/7636 1779/2744/7635 2010/3124/7637
+s 1856
+f 1779/2744/7638 1780/2745/7639 2010/3124/7640
+f 2010/3124/7640 1780/2745/7639 2011/3125/7641
+s 1857
+f 1780/2746/7642 1897/2747/7643 2011/3126/7644
+f 2011/3126/7644 1897/2747/7643 2123/3127/7645
+s 1858
+f 1899/2940/7646 1781/2754/7647 2012/3128/7648
+f 2012/3128/7648 1781/2754/7647 2013/3129/7649
+s 1859
+f 1781/2754/7650 1900/2757/7651 2013/3129/7652
+f 2013/3129/7652 1900/2757/7651 2014/3130/7653
+s 1860
+f 1900/2757/7654 1666/2756/7655 2014/3130/7656
+f 2014/3130/7656 1666/2756/7655 1901/3131/7657
+s 1861
+f 1903/3132/7658 1784/3133/7659 2014/3130/7660
+f 2014/3130/7660 1784/3133/7659 2013/3129/7661
+s 1862
+f 1784/3133/7662 1785/2947/7663 2013/3129/7664
+f 2013/3129/7664 1785/2947/7663 2012/3128/7665
+s 1863
+f 1905/2949/7666 1670/2380/7667 1899/3134/7668
+f 1899/3134/7668 1670/2380/7667 1782/2764/7669
+s 1864
+f 1906/2951/7670 2017/3135/7671 1786/2766/7672
+f 1786/2766/7672 2017/3135/7671 2018/3136/7673
+s 1865
+f 1786/2766/7674 2018/3136/7675 1904/2767/7676
+f 1904/2767/7676 2018/3136/7675 2125/3137/7677
+s 1866
+f 1677/2396/7678 1908/2774/7679 1909/2779/7680
+f 1909/2779/7680 1908/2774/7679 2129/3138/7681
+s 1867
+f 1908/3140/7682 1676/3141/7683 2020/3139/7684
+f 2020/3139/7684 1676/3141/7683 2016/3142/7685
+s 1868
+f 1802/2791/7686 1792/2792/7687 2021/2972/7688
+f 2021/2972/7688 1792/2792/7687 2022/3143/7689
+s 1869
+f 1793/2776/7690 1794/3144/7691 1792/2775/7692
+f 1792/2775/7692 1794/3144/7691 2022/3145/7693
+s 1870
+f 1794/2778/7694 1909/2779/7695 2022/3146/7696
+f 2022/3146/7696 1909/2779/7695 2129/3138/7697
+s 1871
+f 1795/2957/7698 1911/3147/7699 2023/2958/7700
+f 2023/2958/7700 1911/3147/7699 2133/3148/7701
+s 1872
+f 1796/2573/7702 1913/3149/7703 1912/2961/7704
+f 1912/2961/7704 1913/3149/7703 2134/3150/7705
+s 1873
+f 1914/3151/7706 2025/3152/7707 1797/2785/7708
+f 1797/2785/7708 2025/3152/7707 1915/2786/7709
+s 1874
+f 1801/2790/7710 1799/2787/7711 2025/3153/7712
+f 2025/3153/7712 1799/2787/7711 1915/2788/7713
+s 1875
+f 1917/2968/7714 1685/2585/7715 2026/3154/7716
+f 2026/3154/7716 1685/2585/7715 1920/2973/7717
+s 1876
+f 1800/2797/7718 1801/3155/7719 1921/2798/7720
+f 1921/2798/7720 1801/3155/7719 2025/3156/7721
+s 1877
+f 1803/3158/7722 1804/3159/7723 2029/3157/7724
+f 2029/3157/7724 1804/3159/7723 2031/3160/7725
+s 1878
+f 1805/2795/7726 1921/2796/7727 1914/2962/7728
+f 1914/2962/7728 1921/2796/7727 2025/3161/7729
+s 1879
+f 1922/2967/7730 2030/3162/7731 1687/2591/7732
+f 1687/2591/7732 2030/3162/7731 1923/2977/7733
+s 1880
+f 1806/2980/7734 1924/2979/7735 2032/3163/7736
+f 2032/3163/7736 1924/2979/7735 2142/3164/7737
+s 1881
+f 1807/2800/7738 1806/2799/7739 1925/2802/7740
+f 1925/2802/7740 1806/2799/7739 2032/3165/7741
+s 1882
+f 1688/2413/7742 1925/3166/7743 1926/2803/7744
+f 1926/2803/7744 1925/3166/7743 2143/3167/7745
+s 1883
+f 1812/3169/7746 1811/3170/7747 2033/3168/7748
+f 2033/3168/7748 1811/3170/7747 2146/3171/7749
+s 1884
+f 1812/3169/7750 2033/3168/7751 1907/3172/7752
+f 1907/3172/7752 2033/3168/7751 2128/3173/7753
+s 1885
+f 1718/2639/7754 1955/2849/7755 1930/2813/7756
+f 1930/2813/7756 1955/2849/7755 2147/3174/7757
+s 1886
+f 1694/3176/7758 1930/3177/7759 2034/3175/7760
+f 2034/3175/7760 1930/3177/7759 2148/3178/7761
+s 1887
+f 1813/2816/7762 2035/2992/7763 1814/2817/7764
+f 1814/2817/7764 2035/2992/7763 2152/3179/7765
+s 1888
+f 1815/2610/7766 1814/2817/7767 1933/2993/7768
+f 1933/2993/7768 1814/2817/7767 2152/3179/7769
+s 1889
+f 1698/3181/7770 2036/3182/7771 1934/3180/7772
+f 1934/3180/7772 2036/3182/7771 2153/3183/7773
+s 1890
+f 1699/2611/7774 1934/2818/7775 2037/2996/7776
+f 2037/2996/7776 1934/2818/7775 2154/3184/7777
+s 1891
+f 1700/2623/7778 1935/3186/7779 2038/3185/7780
+f 2038/3185/7780 1935/3186/7779 2156/3187/7781
+s 1892
+f 1700/2623/7782 2038/3185/7783 1936/2997/7784
+f 1936/2997/7784 2038/3185/7783 2157/3188/7785
+s 1893
+f 1937/2999/7786 2160/3190/7787 1578/2433/7788
+f 2040/3189/7789 1578/2433/7788 2160/3190/7787
+s 1894
+f 1816/2819/7790 1701/2612/7791 2041/3191/7792
+f 2041/3191/7792 1701/2612/7791 2161/3192/7793
+s off
+f 1938/3000/7794 1578/2433/7795 2042/3193/7796
+f 1703/2616/7797 2043/3194/7798 2048/3006/7799
+f 1939/3002/7800 1470/2227/7801 1941/3004/7802
+s 1895
+f 1817/3001/7803 2045/3195/7804 1940/3026/7805
+f 1940/3026/7805 2045/3195/7804 1836/2852/7806
+s off
+f 2046/3196/7807 1818/2822/7808 2047/3197/7809
+s 1896
+f 2047/3197/7810 1818/2822/7811 1942/3005/7812
+f 1942/3005/7812 1818/2822/7811 1703/2616/7813
+s 1897
+f 1819/2824/7814 1944/2825/7815 2050/3198/7816
+f 2050/3198/7816 1944/2825/7815 2173/3199/7817
+s 1898
+f 1708/2622/7818 2039/2998/7819 1944/2825/7820
+f 1944/2825/7820 2039/2998/7819 2174/3200/7821
+s 1899
+f 1819/3202/7822 2050/3203/7823 1945/3201/7824
+f 1945/3201/7824 2050/3203/7823 2175/3204/7825
+s 1900
+f 1945/2828/7826 2051/3205/7827 1820/2829/7828
+f 1820/2829/7828 2051/3205/7827 2052/3206/7829
+s 1901
+f 1820/2829/7830 2052/3206/7831 1946/2830/7832
+f 1946/2830/7832 2052/3206/7831 2176/3207/7833
+s 1902
+f 1946/2830/7834 2053/3208/7835 1821/2831/7836
+f 1821/2831/7836 2053/3208/7835 1949/3209/7837
+s 1903
+f 1949/3015/7838 2055/3210/7839 1822/3016/7840
+f 1822/3016/7840 2055/3210/7839 2054/3211/7841
+s 1904
+f 1827/2837/7842 1823/2832/7843 2056/3212/7844
+f 2056/3212/7844 1823/2832/7843 1824/3213/7845
+s 1905
+f 1826/3214/7846 2057/3215/7847 1824/3213/7848
+f 1824/3213/7848 2057/3215/7847 2056/3212/7849
+s 1906
+f 1825/2635/7850 1950/3020/7851 2058/3019/7852
+f 2058/3019/7852 1950/3020/7851 2182/3216/7853
+s 1907
+f 1951/3022/7854 1827/2837/7855 2059/3217/7856
+f 2059/3217/7856 1827/2837/7855 2056/3212/7857
+s 1908
+f 1951/3022/7858 2060/3218/7859 1828/2838/7860
+f 1828/2838/7860 2060/3218/7859 2184/3219/7861
+s 1909
+f 1829/2839/7862 1828/2838/7863 2061/3220/7864
+f 2061/3220/7864 1828/2838/7863 2184/3219/7865
+s 1910
+f 1829/2839/7866 2062/3221/7867 1830/2840/7868
+f 1830/2840/7868 2062/3221/7867 2186/3222/7869
+s 1911
+f 1952/3223/7870 2063/3224/7871 1717/2457/7872
+f 1717/2457/7872 2063/3224/7871 1954/2846/7873
+s 1912
+f 1716/2454/7874 1953/2843/7875 1952/2842/7876
+f 1952/2842/7876 1953/2843/7875 2063/3225/7877
+s 1913
+f 1953/2843/7878 1830/2840/7879 2064/3226/7880
+f 2064/3226/7880 1830/2840/7879 2186/3222/7881
+s 1914
+f 1831/2637/7882 2065/3023/7883 1834/2847/7884
+f 1834/2847/7884 2065/3023/7883 2188/3227/7885
+s 1915
+f 1832/2844/7886 1833/2845/7887 2066/3228/7888
+f 2066/3228/7888 1833/2845/7887 2067/3229/7889
+s 1916
+f 1833/2845/7890 1954/2846/7891 2067/3229/7892
+f 2067/3229/7892 1954/2846/7891 2189/3230/7893
+s 1917
+f 1955/2849/7894 1835/2848/7895 2069/3231/7896
+f 2069/3231/7896 1835/2848/7895 2191/3232/7897
+s 1918
+f 1837/2853/7898 1836/2852/7899 2070/3233/7900
+f 2070/3233/7900 1836/2852/7899 2045/3195/7901
+s 1919
+f 1956/3234/7902 2071/3235/7903 1722/2936/7904
+f 1722/2936/7904 2071/3235/7903 2005/2937/7905
+s 1920
+f 1723/3236/7906 1957/3237/7907 1956/3234/7908
+f 1956/3234/7908 1957/3237/7907 2194/3238/7909
+s 1921
+f 1958/3106/7910 2073/3240/7911 1725/3239/7912
+f 1725/3239/7912 2073/3240/7911 1959/3241/7913
+s 1922
+f 1841/2861/7914 1839/2856/7915 2074/3242/7916
+f 2074/3242/7916 1839/2856/7915 1960/3031/7917
+s 1923
+f 1840/2857/7918 1959/2860/7919 2075/3243/7920
+f 2075/3243/7920 1959/2860/7919 2197/3244/7921
+s 1924
+f 1729/2863/7922 1964/2866/7923 1965/3245/7924
+f 1965/3245/7924 1964/2866/7923 2200/3246/7925
+s 1925
+f 1964/3248/7926 1728/3249/7927 2077/3247/7928
+f 2077/3247/7928 1728/3249/7927 2078/3250/7929
+s 1926
+f 1843/3039/7930 1844/3252/7931 2080/3251/7932
+f 2080/3251/7932 1844/3252/7931 1845/3253/7933
+s 1927
+f 1845/3253/7934 1965/3254/7935 2080/3251/7936
+f 2080/3251/7936 1965/3254/7935 2200/3255/7937
+s 1928
+f 1966/2873/7938 1730/2483/7939 2081/3256/7940
+f 2081/3256/7940 1730/2483/7939 1967/2875/7941
+s 1929
+f 1967/3258/7942 1847/3041/7943 2082/3257/7944
+f 2082/3257/7944 1847/3041/7943 2093/3259/7945
+s 1930
+f 1877/3046/7946 1732/3045/7947 1878/3260/7948
+f 1878/3260/7948 1732/3045/7947 1968/3047/7949
+s 1931
+f 1969/3050/7950 2084/3261/7951 1744/2889/7952
+f 1744/2889/7952 2084/3261/7951 1981/2890/7953
+s 1932
+f 1970/3263/7954 1735/3055/7955 2085/3262/7956
+f 2085/3262/7956 1735/3055/7955 2087/3058/7957
+s 1933
+f 1971/3265/7958 1736/2667/7959 2086/3264/7960
+f 2086/3264/7960 1736/2667/7959 1972/3059/7961
+s 1934
+f 1851/2674/7962 1976/3069/7963 1849/2877/7964
+f 1849/2877/7964 1976/3069/7963 2210/3266/7965
+s 1935
+f 1850/3067/7966 1977/3267/7967 2089/3068/7968
+f 2089/3068/7968 1977/3267/7967 2212/3268/7969
+s 1936
+f 1852/2881/7970 1980/2884/7971 2090/3269/7972
+f 2090/3269/7972 1980/2884/7971 2214/3270/7973
+s 1937
+f 2091/3271/7974 1980/3272/7975 2092/3274/7976
+f 2092/3274/7976 1980/3272/7975 1742/3273/7977
+s 1938
+f 1853/3276/7978 1883/3277/7979 1854/3275/7980
+f 1854/3275/7980 1883/3277/7979 2108/3278/7981
+s 1939
+f 1853/3276/7982 1855/3279/7983 2093/3259/7984
+f 2093/3259/7984 1855/3279/7983 2082/3257/7985
+s 1940
+f 1855/3279/7986 1981/3280/7987 2082/3257/7988
+f 2082/3257/7988 1981/3280/7987 2084/3281/7989
+s 1941
+f 1857/3283/7990 1856/3284/7991 2094/3282/7992
+f 2094/3282/7992 1856/3284/7991 2217/3285/7993
+s 1942
+f 1983/3286/7994 2095/3287/7995 1856/3284/7996
+f 1856/3284/7996 2095/3287/7995 2217/3285/7997
+s 1943
+f 1984/3289/7998 1749/2684/7999 2096/3288/8000
+f 2096/3288/8000 1749/2684/7999 1985/3078/8001
+s 1944
+f 1858/2690/8002 1987/2893/8003 2098/3086/8004
+f 2098/3086/8004 1987/2893/8003 2223/3290/8005
+s 1945
+f 1988/2897/8006 2100/3291/8007 1859/2894/8008
+f 1859/2894/8008 2100/3291/8007 2225/3292/8009
+s 1946
+f 1989/3294/8010 2101/3295/8011 1751/3293/8012
+f 1751/3293/8012 2101/3295/8011 1860/3296/8013
+s 1947
+f 1752/2689/8014 1990/3085/8015 1989/2899/8016
+f 1989/2899/8016 1990/3085/8015 2227/3297/8017
+s 1948
+f 1991/3087/8018 2102/3298/8019 1862/2902/8020
+f 1862/2902/8020 2102/3298/8019 2103/3299/8021
+s 1949
+f 1862/2902/8022 2103/3299/8023 1863/2903/8024
+f 1863/2903/8024 2103/3299/8023 2230/3300/8025
+s 1950
+f 1992/2904/8026 1863/2903/8027 2104/3088/8028
+f 2104/3088/8028 1863/2903/8027 2230/3300/8029
+s 1951
+f 1867/2907/8030 1866/2906/8031 2105/3301/8032
+f 2105/3301/8032 1866/2906/8031 2231/3302/8033
+s 1952
+f 1867/2907/8034 2105/3301/8035 1868/2908/8036
+f 1868/2908/8036 2105/3301/8035 2232/3303/8037
+s 1953
+f 1993/2909/8038 1868/2908/8039 2106/3304/8040
+f 2106/3304/8040 1868/2908/8039 2232/3303/8041
+s 1954
+f 1869/2910/8042 1993/2909/8043 2107/3305/8044
+f 2107/3305/8044 1993/2909/8043 2106/3304/8045
+s 1955
+f 1865/2905/8046 1869/2910/8047 1994/3089/8048
+f 1994/3089/8048 1869/2910/8047 2107/3305/8049
+s 1956
+f 1871/2703/8050 2109/3094/8051 1870/2911/8052
+f 1870/2911/8052 2109/3094/8051 2110/3306/8053
+s 1957
+f 1870/2911/8054 2110/3306/8055 1996/2912/8056
+f 1996/2912/8056 2110/3306/8055 2229/3307/8057
+s 1958
+f 2000/3308/8058 1766/3098/8059 2225/3309/8060
+f 2225/3309/8060 1766/3098/8059 1999/3097/8061
+s 1959
+f 1875/2714/8062 2000/2915/8063 1997/3092/8064
+f 1997/3092/8064 2000/2915/8063 2233/3310/8065
+s 1960
+f 1878/3260/8066 1968/3047/8067 1879/3311/8068
+f 1879/3311/8068 1968/3047/8067 2078/3250/8069
+s 1961
+f 1879/3311/8070 2078/3250/8071 1884/3312/8072
+f 1884/3312/8072 2078/3250/8071 1963/3313/8073
+s 1962
+f 1882/3314/8074 2093/3259/8075 1881/3044/8076
+f 1881/3044/8076 2093/3259/8075 1847/3041/8077
+s 1963
+f 1883/3277/8078 1853/3276/8079 1882/3314/8080
+f 1882/3314/8080 1853/3276/8079 2093/3259/8081
+s 1964
+f 1884/3312/8082 1963/3313/8083 1885/3102/8084
+f 1885/3102/8084 1963/3313/8083 1962/3103/8085
+s 1965
+f 1929/3316/8086 1886/2927/8087 2111/3315/8088
+f 2111/3315/8088 1886/2927/8087 1887/2926/8089
+s 1966
+f 2002/3109/8090 2112/3317/8091 1887/2926/8092
+f 1887/2926/8092 2112/3317/8091 2111/3315/8093
+s 1967
+f 1888/3123/8094 2010/3124/8095 2002/3318/8096
+f 2002/3318/8096 2010/3124/8095 2235/3319/8097
+s 1968
+f 1891/2929/8098 2114/3320/8099 2003/3111/8100
+f 2003/3111/8100 2114/3320/8099 2236/3321/8101
+s 1969
+f 1891/2929/8102 1892/2930/8103 2115/3322/8104
+f 2115/3322/8104 1892/2930/8103 2116/3112/8105
+s 1970
+f 1896/2938/8106 2117/3323/8107 1893/2939/8108
+f 1893/2939/8108 2117/3323/8107 2118/3324/8109
+s 1971
+f 1893/2931/8110 2118/3325/8111 1894/2932/8112
+f 1894/2932/8112 2118/3325/8111 2119/3326/8113
+s 1972
+f 1894/2932/8114 2119/3326/8115 2004/2933/8116
+f 2004/2933/8116 2119/3326/8115 2237/3327/8117
+s 1973
+f 1774/2934/8118 2005/2937/8119 2120/3328/8120
+f 2120/3328/8120 2005/2937/8119 2238/3329/8121
+s 1974
+f 2009/3122/8122 2122/3330/8123 1896/2938/8124
+f 1896/2938/8124 2122/3330/8123 2117/3323/8125
+s 1975
+f 2012/3128/8126 2124/3331/8127 1899/2940/8128
+f 1899/2940/8128 2124/3331/8127 2126/3332/8129
+s 1976
+f 1902/3333/8130 1903/3132/8131 1901/3131/8132
+f 1901/3131/8132 1903/3132/8131 2014/3130/8133
+s 1977
+f 1785/2947/8134 2015/2948/8135 2012/3128/8136
+f 2012/3128/8136 2015/2948/8135 2124/3331/8137
+s 1978
+f 1904/2767/8138 2125/3137/8139 2015/2948/8140
+f 2015/2948/8140 2125/3137/8139 2244/3334/8141
+s 1979
+f 1899/2940/8142 2126/3332/8143 1905/3335/8144
+f 1905/3335/8144 2126/3332/8143 2127/3336/8145
+s 1980
+f 1905/3335/8146 2127/3336/8147 2016/3337/8148
+f 2016/3337/8148 2127/3336/8147 2137/3338/8149
+s 1981
+f 2017/3135/8150 1906/2951/8151 2019/2954/8152
+f 2019/2954/8152 1906/2951/8151 1791/2567/8153
+s 1982
+f 1907/3172/8154 2128/3173/8155 2019/3339/8156
+f 2019/3339/8156 2128/3173/8155 2245/3340/8157
+s 1983
+f 2020/3139/8158 2130/3341/8159 1908/3140/8160
+f 1908/3140/8160 2130/3341/8159 2129/3342/8161
+s 1984
+f 1924/2979/8162 1910/2982/8163 2131/3343/8164
+f 2131/3343/8164 1910/2982/8163 2132/3344/8165
+s 1985
+f 1910/2955/8166 2023/2958/8167 2132/3345/8168
+f 2132/3345/8168 2023/2958/8167 2248/3346/8169
+s 1986
+f 1911/3147/8170 2024/3347/8171 2133/3148/8172
+f 2133/3148/8172 2024/3347/8171 2249/3348/8173
+s 1987
+f 1912/2961/8174 2134/3150/8175 2024/2960/8176
+f 2024/2960/8176 2134/3150/8175 2249/3349/8177
+s 1988
+f 1798/2966/8178 2027/2970/8179 1922/2967/8180
+f 1922/2967/8180 2027/2970/8179 2030/3162/8181
+s 1989
+f 1917/2968/8182 2026/3154/8183 2135/3350/8184
+f 2135/3350/8184 2026/3154/8183 2250/3351/8185
+s 1990
+f 1917/2968/8186 2135/3350/8187 1918/2969/8188
+f 1918/2969/8188 2135/3350/8187 2136/3352/8189
+s 1991
+f 1918/2969/8190 2136/3352/8191 2027/2970/8192
+f 2027/2970/8192 2136/3352/8191 2251/3353/8193
+s 1992
+f 1920/2973/8194 1919/2971/8195 2016/3337/8196
+f 2016/3337/8196 1919/2971/8195 2020/3354/8197
+s 1993
+f 1919/2971/8198 2021/2972/8199 2020/3354/8200
+f 2020/3354/8200 2021/2972/8199 2130/3355/8201
+s 1994
+f 2026/3154/8202 1920/2973/8203 2137/3338/8204
+f 2137/3338/8204 1920/2973/8203 2016/3337/8205
+s 1995
+f 2028/2975/8206 2138/3356/8207 1913/2784/8208
+f 1913/2784/8208 2138/3356/8207 2134/3357/8209
+s 1996
+f 1803/2974/8210 2139/3358/8211 2028/2975/8212
+f 2028/2975/8212 2139/3358/8211 2252/3359/8213
+s 1997
+f 1803/3158/8214 2029/3157/8215 2139/3360/8216
+f 2139/3360/8216 2029/3157/8215 2253/3361/8217
+s 1998
+f 2030/3162/8218 2140/3362/8219 1923/2977/8220
+f 1923/2977/8220 2140/3362/8219 2141/3363/8221
+s 1999
+f 1923/3365/8222 2141/3366/8223 2031/3364/8224
+f 2031/3364/8224 2141/3366/8223 2029/3367/8225
+s 2000
+f 1928/3369/8226 1927/3370/8227 2144/3368/8228
+f 2144/3368/8228 1927/3370/8227 2145/3371/8229
+s 2001
+f 1927/3370/8230 1929/3316/8231 2145/3371/8232
+f 2145/3371/8232 1929/3316/8231 2111/3315/8233
+s 2002
+f 1811/3170/8234 1928/3369/8235 2146/3171/8236
+f 2146/3171/8236 1928/3369/8235 2144/3368/8237
+s 2003
+f 1931/2986/8238 2034/2989/8239 2149/3372/8240
+f 2149/3372/8240 2034/2989/8239 2148/3373/8241
+s 2004
+f 1932/2991/8242 1931/2986/8243 2150/3374/8244
+f 2150/3374/8244 1931/2986/8243 2149/3372/8245
+s 2005
+f 2035/2992/8246 1932/2991/8247 2151/3375/8248
+f 2151/3375/8248 1932/2991/8247 2150/3374/8249
+s 2006
+f 2036/3182/8250 1933/3376/8251 2153/3183/8252
+f 2153/3183/8252 1933/3376/8251 2258/3377/8253
+s 2007
+f 1935/3186/8254 2037/3379/8255 2155/3378/8256
+f 2155/3378/8256 2037/3379/8255 2154/3380/8257
+s 2008
+f 2039/2998/8258 1936/2997/8259 2158/3381/8260
+f 2158/3381/8260 1936/2997/8259 2262/3382/8261
+s 2009
+f 2040/3189/8262 2159/3383/8263 1578/2433/8264
+f 1578/2433/8264 2159/3383/8263 2265/3384/8265
+s off
+f 2042/3193/8266 1578/2433/8267 2265/3384/8268
+s 2010
+f 1703/2616/8269 1938/3000/8270 2043/3194/8271
+f 2043/3194/8271 1938/3000/8270 2162/3385/8272
+s off
+f 1938/3000/8273 2163/3386/8274 2162/3385/8275
+f 1939/3002/8276 2164/3387/8277 2166/3388/8278
+s 2011
+f 2044/3003/8279 2165/3389/8280 1817/3001/8281
+f 1817/3001/8281 2165/3389/8280 2045/3195/8282
+s 2012
+f 1939/3002/8283 2166/3388/8284 2044/3003/8285
+f 2044/3003/8285 2166/3388/8284 2165/3389/8286
+s 2013
+f 2164/3387/8287 1939/3002/8288 2167/3390/8289
+f 2167/3390/8289 1939/3002/8288 1941/3004/8290
+s off
+f 2167/3390/8291 1941/3004/8292 2168/3391/8293
+s 2014
+f 2168/3391/8294 1941/3004/8295 2046/3196/8296
+f 2046/3196/8296 1941/3004/8295 1818/2822/8297
+s 2015
+f 1942/3005/8298 2169/3392/8299 2047/3197/8300
+f 2047/3197/8300 2169/3392/8299 2274/3393/8301
+s 2016
+f 2048/3006/8302 2170/3394/8303 1942/3005/8304
+f 1942/3005/8304 2170/3394/8303 2169/3392/8305
+s 2017
+f 1701/3395/8306 2049/3396/8307 2161/3398/8308
+f 2161/3398/8308 2049/3396/8307 2171/3397/8309
+s 2018
+f 1926/2803/8310 2143/3167/8311 1943/3011/8312
+f 1943/3011/8312 2143/3167/8311 2172/3399/8313
+s 2019
+f 1943/3011/8314 2172/3399/8315 2049/3009/8316
+f 2049/3009/8316 2172/3399/8315 2171/3400/8317
+s 2020
+f 1945/2828/8318 2175/3401/8319 2051/3205/8320
+f 2051/3205/8320 2175/3401/8319 2277/3402/8321
+s 2021
+f 1946/2830/8322 2176/3207/8323 2053/3208/8324
+f 2053/3208/8324 2176/3207/8323 2183/3403/8325
+s 2022
+f 1950/3405/8326 1947/3406/8327 2177/3404/8328
+f 2177/3404/8328 1947/3406/8327 2178/3407/8329
+s 2023
+f 1947/3012/8330 1948/3013/8331 2178/3408/8332
+f 2178/3408/8332 1948/3013/8331 2179/3409/8333
+s 2024
+f 1948/3013/8334 2054/3014/8335 2179/3409/8336
+f 2179/3409/8336 2054/3014/8335 2279/3410/8337
+s 2025
+f 1949/3015/8338 2180/3411/8339 2055/3210/8340
+f 2055/3210/8340 2180/3411/8339 2281/3412/8341
+s 2026
+f 1949/3015/8342 2053/3413/8343 2180/3411/8344
+f 2180/3411/8344 2053/3413/8343 2282/3414/8345
+s 2027
+f 2057/3416/8346 1826/3417/8347 2181/3415/8348
+f 2181/3415/8348 1826/3417/8347 2058/3418/8349
+s 2028
+f 2059/3217/8350 2183/3403/8351 1951/3022/8352
+f 1951/3022/8352 2183/3403/8351 2060/3218/8353
+s 2029
+f 2061/3220/8354 2185/3419/8355 1829/2839/8356
+f 1829/2839/8356 2185/3419/8355 2062/3221/8357
+s 2030
+f 1953/3421/8358 2064/3422/8359 2187/3420/8360
+f 2187/3420/8360 2064/3422/8359 2287/3423/8361
+s 2031
+f 1832/2844/8362 2066/3228/8363 2065/3023/8364
+f 2065/3023/8364 2066/3228/8363 2289/3424/8365
+s 2032
+f 2063/3225/8366 2190/3426/8367 1954/3425/8368
+f 1954/3425/8368 2190/3426/8367 2292/3427/8369
+s 2033
+f 1835/2848/8370 2068/3025/8371 2191/3232/8372
+f 2191/3232/8372 2068/3025/8371 2293/3428/8373
+s 2034
+f 2068/3025/8374 1834/3024/8375 2192/3429/8376
+f 2192/3429/8376 1834/3024/8375 2188/3430/8377
+s 2035
+f 1955/2849/8378 2069/3231/8379 2147/3174/8380
+f 2147/3174/8380 2069/3231/8379 2294/3431/8381
+s 2036
+f 1837/2853/8382 2070/3233/8383 2072/3432/8384
+f 2072/3432/8384 2070/3233/8383 2296/3433/8385
+s 2037
+f 1956/3234/8386 2193/3434/8387 2071/3235/8388
+f 2071/3235/8388 2193/3434/8387 2297/3435/8389
+s 2038
+f 2072/3432/8390 2195/3437/8391 1957/3436/8392
+f 1957/3436/8392 2195/3437/8391 2298/3438/8393
+s 2039
+f 2073/3240/8394 1958/3106/8395 2196/3439/8396
+f 2196/3439/8396 1958/3106/8395 2001/3104/8397
+s 2040
+f 1841/3035/8398 2074/3440/8399 2076/3036/8400
+f 2076/3036/8400 2074/3440/8399 2301/3441/8401
+s 2041
+f 2073/3240/8402 2198/3442/8403 1959/3241/8404
+f 1959/3241/8404 2198/3442/8403 2197/3443/8405
+s 2042
+f 2074/3440/8406 1960/3445/8407 2199/3444/8408
+f 2199/3444/8408 1960/3445/8407 1961/3446/8409
+s 2043
+f 1961/3446/8410 2075/3447/8411 2199/3444/8412
+f 2199/3444/8412 2075/3447/8411 2197/3448/8413
+s 2044
+f 1962/3103/8414 2076/3449/8415 2001/3104/8416
+f 2001/3104/8416 2076/3449/8415 2196/3439/8417
+s 2045
+f 2077/3247/8418 2201/3450/8419 1964/3248/8420
+f 1964/3248/8420 2201/3450/8419 2200/3451/8421
+s 2046
+f 1848/3048/8422 2079/3452/8423 2083/3049/8424
+f 2083/3049/8424 2079/3452/8423 2302/3453/8425
+s 2047
+f 1843/3039/8426 2080/3251/8427 2079/3040/8428
+f 2079/3040/8428 2080/3251/8427 2302/3454/8429
+s 2048
+f 1966/3054/8430 2081/3455/8431 1969/3050/8432
+f 1969/3050/8432 2081/3455/8431 2084/3261/8433
+s 2049
+f 2081/3456/8434 1967/3258/8435 2084/3281/8436
+f 2084/3281/8436 1967/3258/8435 2082/3257/8437
+s 2050
+f 1968/3047/8438 2083/3049/8439 2078/3250/8440
+f 2078/3250/8440 2083/3049/8439 2077/3247/8441
+s 2051
+f 1982/3075/8442 1970/2876/8443 2202/3457/8444
+f 2202/3457/8444 1970/2876/8443 2203/3458/8445
+s 2052
+f 1970/3460/8446 2085/3461/8447 2203/3459/8448
+f 2203/3459/8448 2085/3461/8447 2303/3462/8449
+s 2053
+f 1971/3057/8450 2086/3464/8451 2204/3463/8452
+f 2204/3463/8452 2086/3464/8451 2304/3465/8453
+s 2054
+f 2087/3058/8454 1971/3057/8455 2205/3466/8456
+f 2205/3466/8456 1971/3057/8455 2204/3463/8457
+s 2055
+f 1972/3059/8458 2206/3467/8459 2086/3264/8460
+f 2086/3264/8460 2206/3467/8459 2305/3468/8461
+s 2056
+f 1972/3059/8462 1973/3060/8463 2206/3467/8464
+f 2206/3467/8464 1973/3060/8463 2207/3469/8465
+s 2057
+f 1973/3060/8466 1974/3061/8467 2207/3469/8468
+f 2207/3469/8468 1974/3061/8467 2208/3470/8469
+s 2058
+f 1974/3062/8470 2088/3065/8471 2208/3471/8472
+f 2208/3471/8472 2088/3065/8471 2306/3472/8473
+s 2059
+f 2088/3474/8474 1849/3475/8475 2209/3473/8476
+f 2209/3473/8476 1849/3475/8475 2210/3476/8477
+s 2060
+f 1975/3478/8478 2107/3479/8479 1976/3477/8480
+f 1976/3477/8480 2107/3479/8479 2106/3480/8481
+s 2061
+f 1975/3478/8482 2089/3482/8483 2211/3481/8484
+f 2211/3481/8484 2089/3482/8483 2308/3483/8485
+s 2062
+f 1977/3267/8486 1978/3485/8487 2213/3484/8488
+f 2213/3484/8488 1978/3485/8487 1979/3486/8489
+s 2063
+f 1979/3486/8490 2090/3487/8491 2213/3484/8492
+f 2213/3484/8492 2090/3487/8491 2214/3488/8493
+s 2064
+f 2091/3271/8494 2215/3489/8495 1980/3272/8496
+f 1980/3272/8496 2215/3489/8495 2214/3490/8497
+s 2065
+f 2092/3274/8498 1854/3275/8499 1995/3491/8500
+f 1995/3491/8500 1854/3275/8499 2108/3278/8501
+s 2066
+f 1983/2892/8502 1982/3075/8503 2216/3492/8504
+f 2216/3492/8504 1982/3075/8503 2202/3457/8505
+s 2067
+f 1857/3494/8506 2094/3495/8507 2097/3493/8508
+f 2097/3493/8508 2094/3495/8507 2310/3496/8509
+s 2068
+f 2095/3498/8510 1983/2892/8511 2218/3497/8512
+f 2218/3497/8512 1983/2892/8511 2216/3492/8513
+s 2069
+f 1984/3077/8514 2096/3500/8515 2219/3499/8516
+f 2219/3499/8516 2096/3500/8515 2313/3501/8517
+s 2070
+f 1988/2897/8518 1984/3077/8519 2100/3291/8520
+f 2100/3291/8520 1984/3077/8519 2219/3499/8521
+s 2071
+f 2096/3288/8522 1985/3078/8523 2220/3502/8524
+f 2220/3502/8524 1985/3078/8523 2221/3503/8525
+s 2072
+f 1985/3078/8526 1986/3079/8527 2221/3503/8528
+f 2221/3503/8528 1986/3079/8527 2222/3504/8529
+s 2073
+f 1986/3079/8530 2097/3080/8531 2222/3504/8532
+f 2222/3504/8532 2097/3080/8531 2314/3505/8533
+s 2074
+f 1987/3081/8534 2099/3084/8535 2223/3506/8536
+f 2223/3506/8536 2099/3084/8535 2315/3507/8537
+s 2075
+f 2099/3509/8538 1859/3510/8539 2224/3508/8540
+f 2224/3508/8540 1859/3510/8539 2225/3309/8541
+s 2076
+f 2101/3295/8542 1989/3294/8543 2226/3511/8544
+f 2226/3511/8544 1989/3294/8543 2227/3512/8545
+s 2077
+f 1860/3096/8546 2101/3513/8547 1999/3097/8548
+f 1999/3097/8548 2101/3513/8547 2317/3514/8549
+s 2078
+f 2098/3086/8550 2228/3515/8551 1990/3085/8552
+f 1990/3085/8552 2228/3515/8551 2227/3297/8553
+s 2079
+f 2102/3298/8554 1991/3087/8555 2229/3307/8556
+f 2229/3307/8556 1991/3087/8555 1996/2912/8557
+s 2080
+f 1866/2906/8558 2104/3088/8559 2231/3302/8560
+f 2231/3302/8560 2104/3088/8559 2321/3516/8561
+s 2081
+f 1994/3517/8562 2211/3481/8563 1995/3491/8564
+f 1995/3491/8564 2211/3481/8563 2092/3274/8565
+s 2082
+f 1997/3092/8566 2233/3310/8567 1998/3093/8568
+f 1998/3093/8568 2233/3310/8567 2234/3518/8569
+s 2083
+f 1998/3093/8570 2234/3518/8571 2109/3094/8572
+f 2109/3094/8572 2234/3518/8571 2323/3519/8573
+s 2084
+f 2002/3318/8574 2235/3319/8575 2112/3520/8576
+f 2112/3520/8576 2235/3319/8575 2326/3521/8577
+s 2085
+f 1897/2747/8578 2113/3110/8579 2123/3127/8580
+f 2123/3127/8580 2113/3110/8579 2327/3522/8581
+s 2086
+f 1889/2729/8582 2003/3111/8583 2113/3110/8584
+f 2113/3110/8584 2003/3111/8583 2236/3321/8585
+s 2087
+f 1891/2929/8586 2115/3322/8587 2114/3320/8588
+f 2114/3320/8588 2115/3322/8587 2328/3523/8589
+s 2088
+f 2004/2933/8590 2237/3327/8591 2116/3112/8592
+f 2116/3112/8592 2237/3327/8591 2115/3322/8593
+s 2089
+f 2005/2937/8594 2071/3235/8595 2238/3329/8596
+f 2238/3329/8596 2071/3235/8595 2334/3524/8597
+s 2090
+f 2006/3113/8598 2120/3116/8599 2239/3525/8600
+f 2239/3525/8600 2120/3116/8599 2238/3526/8601
+s 2091
+f 2006/3113/8602 2239/3525/8603 2007/3118/8604
+f 2007/3118/8604 2239/3525/8603 2121/3527/8605
+s 2092
+f 2008/3529/8606 2121/3527/8607 2240/3528/8608
+f 2240/3528/8608 2121/3527/8607 2239/3525/8609
+s 2093
+f 2009/3531/8610 2008/3529/8611 2241/3530/8612
+f 2241/3530/8612 2008/3529/8611 2240/3528/8613
+s 2094
+f 2122/3533/8614 2009/3531/8615 2242/3532/8616
+f 2242/3532/8616 2009/3531/8615 2241/3530/8617
+s 2095
+f 2010/3124/8618 2011/3125/8619 2235/3319/8620
+f 2235/3319/8620 2011/3125/8619 2243/3534/8621
+s 2096
+f 2011/3126/8622 2123/3127/8623 2243/3535/8624
+f 2243/3535/8624 2123/3127/8623 2336/3536/8625
+s 2097
+f 2019/3339/8626 2245/3340/8627 2017/3537/8628
+f 2017/3537/8628 2245/3340/8627 2246/3538/8629
+s 2098
+f 2017/3537/8630 2246/3538/8631 2018/3539/8632
+f 2018/3539/8632 2246/3538/8631 2247/3540/8633
+s 2099
+f 2018/3539/8634 2247/3540/8635 2125/3541/8636
+f 2125/3541/8636 2247/3540/8635 2338/3542/8637
+s 2100
+f 2021/2972/8638 2022/3143/8639 2130/3355/8640
+f 2130/3355/8640 2022/3143/8639 2129/3543/8641
+s 2101
+f 1924/2979/8642 2131/3343/8643 2142/3164/8644
+f 2142/3164/8644 2131/3343/8643 2342/3544/8645
+s 2102
+f 2023/2958/8646 2133/3148/8647 2248/3346/8648
+f 2248/3346/8648 2133/3148/8647 2344/3545/8649
+s 2103
+f 2026/3154/8650 2137/3338/8651 2250/3351/8652
+f 2250/3351/8652 2137/3338/8651 2349/3546/8653
+s 2104
+f 2028/2975/8654 2252/3359/8655 2138/3356/8656
+f 2138/3356/8656 2252/3359/8655 2345/3547/8657
+s 2105
+f 2027/2970/8658 2251/3353/8659 2030/3162/8660
+f 2030/3162/8660 2251/3353/8659 2140/3362/8661
+s 2106
+f 1925/2802/8662 2032/3165/8663 2143/3548/8664
+f 2143/3548/8664 2032/3165/8663 2352/3549/8665
+s 2107
+f 2032/3551/8666 2142/3552/8667 2254/3550/8668
+f 2254/3550/8668 2142/3552/8667 2353/3553/8669
+s 2108
+f 2033/3168/8670 2146/3171/8671 2255/3554/8672
+f 2255/3554/8672 2146/3171/8671 2354/3555/8673
+s 2109
+f 2128/3173/8674 2033/3168/8675 2256/3556/8676
+f 2256/3556/8676 2033/3168/8675 2255/3554/8677
+s 2110
+f 2147/3174/8678 2257/3557/8679 1930/2813/8680
+f 1930/2813/8680 2257/3557/8679 2148/3558/8681
+s 2111
+f 2035/2992/8682 2151/3375/8683 2152/3179/8684
+f 2152/3179/8684 2151/3375/8683 2360/3559/8685
+s 2112
+f 1933/2993/8686 2152/3179/8687 2258/3560/8688
+f 2258/3560/8688 2152/3179/8687 2361/3561/8689
+s 2113
+f 1934/3180/8690 2153/3183/8691 2259/3562/8692
+f 2259/3562/8692 2153/3183/8691 2362/3563/8693
+s 2114
+f 1934/3565/8694 2260/3566/8695 2154/3564/8696
+f 2154/3564/8696 2260/3566/8695 2366/3567/8697
+s 2115
+f 1935/3186/8698 2155/3378/8699 2156/3187/8700
+f 2156/3187/8700 2155/3378/8699 2367/3568/8701
+s 2116
+f 2156/3187/8702 2261/3569/8703 2038/3185/8704
+f 2038/3185/8704 2261/3569/8703 2263/3570/8705
+s 2117
+f 1936/2997/8706 2157/3188/8707 2262/3382/8708
+f 2262/3382/8708 2157/3188/8707 2369/3571/8709
+s 2118
+f 2038/3185/8710 2263/3570/8711 2157/3188/8712
+f 2157/3188/8712 2263/3570/8711 2370/3572/8713
+s 2119
+f 2158/3381/8714 2264/3573/8715 2039/2998/8716
+f 2039/2998/8716 2264/3573/8715 2174/3200/8717
+s 2120
+f 2041/3191/8718 2266/3574/8719 1816/2819/8720
+f 1816/2819/8720 2266/3574/8719 2374/3575/8721
+s 2121
+f 2041/3191/8722 2161/3192/8723 2267/3576/8724
+f 2267/3576/8724 2161/3192/8723 2377/3577/8725
+s 2122
+f 2042/3193/8726 2269/3578/8727 1938/3000/8728
+f 1938/3000/8728 2269/3578/8727 2163/3386/8729
+s 2123
+f 2162/3385/8730 2270/3579/8731 2043/3194/8732
+f 2043/3194/8732 2270/3579/8731 2271/3580/8733
+s 2124
+f 2043/3194/8734 2271/3580/8735 2048/3006/8736
+f 2048/3006/8736 2271/3580/8735 2170/3394/8737
+s 2125
+f 2165/3389/8738 2272/3581/8739 2045/3195/8740
+f 2045/3195/8740 2272/3581/8739 2070/3233/8741
+s 2126
+f 2046/3196/8742 2273/3582/8743 2168/3391/8744
+f 2168/3391/8744 2273/3582/8743 2382/3583/8745
+s 2127
+f 2046/3196/8746 2047/3197/8747 2273/3582/8748
+f 2273/3582/8748 2047/3197/8747 2274/3393/8749
+s 2128
+f 2050/3198/8750 2173/3199/8751 2275/3584/8752
+f 2275/3584/8752 2173/3199/8751 2387/3585/8753
+s 2129
+f 1944/2825/8754 2174/3200/8755 2173/3199/8756
+f 2173/3199/8756 2174/3200/8755 2388/3586/8757
+s 2130
+f 2050/3587/8758 2276/3588/8759 2175/3401/8760
+f 2175/3401/8760 2276/3588/8759 2389/3589/8761
+s 2131
+f 2052/3206/8762 2051/3205/8763 2278/3590/8764
+f 2278/3590/8764 2051/3205/8763 2285/3591/8765
+s 2132
+f 2052/3206/8766 2278/3590/8767 2176/3207/8768
+f 2176/3207/8768 2278/3590/8767 2284/3592/8769
+s 2133
+f 1950/3020/8770 2177/3593/8771 2182/3216/8772
+f 2182/3216/8772 2177/3593/8771 2390/3594/8773
+s 2134
+f 2055/3210/8774 2280/3595/8775 2054/3211/8776
+f 2054/3211/8776 2280/3595/8775 2279/3596/8777
+s 2135
+f 2059/3217/8778 2056/3212/8779 2282/3597/8780
+f 2282/3597/8780 2056/3212/8779 2057/3215/8781
+s 2136
+f 2181/3415/8782 2180/3598/8783 2057/3416/8784
+f 2057/3416/8784 2180/3598/8783 2282/3599/8785
+s 2137
+f 2181/3415/8786 2058/3418/8787 2283/3600/8788
+f 2283/3600/8788 2058/3418/8787 2182/3601/8789
+s 2138
+f 2183/3403/8790 2059/3217/8791 2053/3208/8792
+f 2053/3208/8792 2059/3217/8791 2282/3597/8793
+s 2139
+f 2183/3403/8794 2176/3207/8795 2060/3218/8796
+f 2060/3218/8796 2176/3207/8795 2284/3592/8797
+s 2140
+f 2060/3603/8798 2284/3604/8799 2184/3602/8800
+f 2184/3602/8800 2284/3604/8799 2061/3605/8801
+s 2141
+f 2061/3220/8802 2284/3592/8803 2185/3419/8804
+f 2185/3419/8804 2284/3592/8803 2278/3590/8805
+s 2142
+f 2062/3221/8806 2185/3419/8807 2285/3591/8808
+f 2285/3591/8808 2185/3419/8807 2278/3590/8809
+s 2143
+f 2062/3221/8810 2285/3591/8811 2186/3222/8812
+f 2186/3222/8812 2285/3591/8811 2064/3226/8813
+s 2144
+f 1953/2843/8814 2286/3606/8815 2063/3225/8816
+f 2063/3225/8816 2286/3606/8815 2190/3426/8817
+s 2145
+f 2187/3607/8818 2288/3608/8819 1953/2843/8820
+f 1953/2843/8820 2288/3608/8819 2286/3606/8821
+s 2146
+f 2065/3023/8822 2289/3424/8823 2188/3227/8824
+f 2188/3227/8824 2289/3424/8823 2399/3609/8825
+s 2147
+f 2066/3228/8826 2067/3229/8827 2290/3610/8828
+f 2290/3610/8828 2067/3229/8827 2291/3611/8829
+s 2148
+f 2067/3229/8830 2189/3230/8831 2291/3611/8832
+f 2291/3611/8832 2189/3230/8831 2400/3612/8833
+s 2149
+f 1954/3425/8834 2292/3427/8835 2189/3613/8836
+f 2189/3613/8836 2292/3427/8835 2401/3614/8837
+s 2150
+f 2068/3025/8838 2192/3429/8839 2293/3428/8840
+f 2293/3428/8840 2192/3429/8839 2404/3615/8841
+s 2151
+f 2191/3232/8842 2295/3616/8843 2069/3231/8844
+f 2069/3231/8844 2295/3616/8843 2405/3617/8845
+s 2152
+f 1956/3234/8846 2194/3238/8847 2193/3434/8848
+f 2193/3434/8848 2194/3238/8847 2407/3618/8849
+s 2153
+f 1957/3237/8850 2298/3619/8851 2194/3238/8852
+f 2194/3238/8852 2298/3619/8851 2409/3620/8853
+s 2154
+f 2195/3437/8854 2072/3432/8855 2299/3621/8856
+f 2299/3621/8856 2072/3432/8855 2296/3433/8857
+s 2155
+f 2196/3439/8858 2300/3622/8859 2073/3240/8860
+f 2073/3240/8860 2300/3622/8859 2198/3442/8861
+s 2156
+f 2074/3440/8862 2199/3444/8863 2301/3441/8864
+f 2301/3441/8864 2199/3444/8863 2300/3623/8865
+s 2157
+f 2201/3450/8866 2077/3247/8867 2302/3453/8868
+f 2302/3453/8868 2077/3247/8867 2083/3049/8869
+s 2158
+f 2200/3255/8870 2201/3624/8871 2080/3251/8872
+f 2080/3251/8872 2201/3624/8871 2302/3454/8873
+s 2159
+f 2087/3058/8874 2205/3466/8875 2085/3262/8876
+f 2085/3262/8876 2205/3466/8875 2415/3625/8877
+s 2160
+f 2209/3473/8878 2307/3626/8879 2088/3474/8880
+f 2088/3474/8880 2307/3626/8879 2306/3627/8881
+s 2161
+f 2210/3476/8882 1976/3477/8883 2232/3628/8884
+f 2232/3628/8884 1976/3477/8883 2106/3480/8885
+s 2162
+f 2107/3479/8886 1975/3478/8887 1994/3517/8888
+f 1994/3517/8888 1975/3478/8887 2211/3481/8889
+s 2163
+f 2089/3482/8890 2212/3629/8891 2308/3483/8892
+f 2308/3483/8892 2212/3629/8891 2309/3630/8893
+s 2164
+f 1977/3267/8894 2213/3484/8895 2212/3268/8896
+f 2212/3268/8896 2213/3484/8895 2309/3631/8897
+s 2165
+f 2215/3489/8898 2091/3271/8899 2309/3630/8900
+f 2309/3630/8900 2091/3271/8899 2308/3483/8901
+s 2166
+f 2091/3271/8902 2092/3274/8903 2308/3483/8904
+f 2308/3483/8904 2092/3274/8903 2211/3481/8905
+s 2167
+f 2217/3285/8906 2311/3632/8907 2094/3282/8908
+f 2094/3282/8908 2311/3632/8907 2421/3633/8909
+s 2168
+f 2095/3287/8910 2218/3635/8911 2312/3634/8912
+f 2312/3634/8912 2218/3635/8911 2422/3636/8913
+s 2169
+f 2217/3285/8914 2095/3287/8915 2311/3632/8916
+f 2311/3632/8916 2095/3287/8915 2312/3634/8917
+s 2170
+f 2096/3500/8918 2220/3637/8919 2313/3501/8920
+f 2313/3501/8920 2220/3637/8919 2424/3638/8921
+s 2171
+f 2098/3640/8922 2223/3506/8923 2228/3639/8924
+f 2228/3639/8924 2223/3506/8923 2315/3507/8925
+s 2172
+f 2224/3508/8926 2316/3641/8927 2099/3509/8928
+f 2099/3509/8928 2316/3641/8927 2315/3642/8929
+s 2173
+f 2225/3309/8930 2100/3643/8931 2000/3308/8932
+f 2000/3308/8932 2100/3643/8931 2233/3644/8933
+s 2174
+f 2101/3513/8934 2226/3645/8935 2317/3514/8936
+f 2317/3514/8936 2226/3645/8935 2426/3646/8937
+s 2175
+f 2229/3307/8938 2318/3647/8939 2102/3298/8940
+f 2102/3298/8940 2318/3647/8939 2319/3648/8941
+s 2176
+f 2102/3298/8942 2319/3648/8943 2103/3299/8944
+f 2103/3299/8944 2319/3648/8943 2320/3649/8945
+s 2177
+f 2103/3299/8946 2320/3649/8947 2230/3300/8948
+f 2230/3300/8948 2320/3649/8947 2427/3650/8949
+s 2178
+f 2104/3088/8950 2230/3300/8951 2321/3516/8952
+f 2321/3516/8952 2230/3300/8951 2427/3650/8953
+s 2179
+f 2231/3652/8954 2204/3653/8955 2105/3651/8956
+f 2105/3651/8956 2204/3653/8955 2322/3654/8957
+s 2180
+f 2105/3651/8958 2322/3654/8959 2232/3628/8960
+f 2232/3628/8960 2322/3654/8959 2210/3476/8961
+s 2181
+f 2109/3094/8962 2323/3519/8963 2110/3306/8964
+f 2110/3306/8964 2323/3519/8963 2324/3655/8965
+s 2182
+f 2110/3306/8966 2324/3655/8967 2229/3307/8968
+f 2229/3307/8968 2324/3655/8967 2318/3647/8969
+s 2183
+f 1999/3097/8970 2317/3514/8971 2225/3309/8972
+f 2225/3309/8972 2317/3514/8971 2224/3508/8973
+s 2184
+f 2145/3371/8974 2111/3315/8975 2325/3656/8976
+f 2325/3656/8976 2111/3315/8975 2112/3317/8977
+s 2185
+f 2236/3321/8978 2114/3320/8979 2329/3657/8980
+f 2329/3657/8980 2114/3320/8979 2428/3658/8981
+s 2186
+f 2122/3330/8982 2330/3659/8983 2117/3323/8984
+f 2117/3323/8984 2330/3659/8983 2331/3660/8985
+s 2187
+f 2117/3323/8986 2331/3660/8987 2118/3324/8988
+f 2118/3324/8988 2331/3660/8987 2332/3661/8989
+s 2188
+f 2118/3325/8990 2332/3662/8991 2119/3326/8992
+f 2119/3326/8992 2332/3662/8991 2333/3663/8993
+s 2189
+f 2119/3326/8994 2333/3663/8995 2237/3327/8996
+f 2237/3327/8996 2333/3663/8995 2429/3664/8997
+s 2190
+f 2242/3532/8998 2335/3665/8999 2122/3533/9000
+f 2122/3533/9000 2335/3665/8999 2330/3666/9001
+s 2191
+f 2015/2948/9002 2244/3334/9003 2124/3331/9004
+f 2124/3331/9004 2244/3334/9003 2337/3667/9005
+s 2192
+f 2124/3331/9006 2337/3667/9007 2126/3332/9008
+f 2126/3332/9008 2337/3667/9007 2339/3668/9009
+s 2193
+f 2125/3541/9010 2338/3542/9011 2244/3669/9012
+f 2244/3669/9012 2338/3542/9011 2434/3670/9013
+s 2194
+f 2126/3332/9014 2339/3668/9015 2127/3336/9016
+f 2127/3336/9016 2339/3668/9015 2340/3671/9017
+s 2195
+f 2127/3336/9018 2340/3671/9019 2137/3338/9020
+f 2137/3338/9020 2340/3671/9019 2349/3546/9021
+s 2196
+f 2245/3340/9022 2128/3173/9023 2341/3672/9024
+f 2341/3672/9024 2128/3173/9023 2256/3556/9025
+s 2197
+f 2132/3344/9026 2343/3673/9027 2131/3343/9028
+f 2131/3343/9028 2343/3673/9027 2439/3674/9029
+s 2198
+f 2132/3675/9030 2248/3676/9031 2139/3360/9032
+f 2139/3360/9032 2248/3676/9031 2252/3677/9033
+s 2199
+f 2133/3679/9034 2249/3680/9035 2344/3678/9036
+f 2344/3678/9036 2249/3680/9035 2345/3681/9037
+s 2200
+f 2138/3356/9038 2345/3547/9039 2134/3357/9040
+f 2134/3357/9040 2345/3547/9039 2249/3682/9041
+s 2201
+f 2135/3684/9042 2250/3685/9043 2346/3683/9044
+f 2346/3683/9044 2250/3685/9043 2440/3686/9045
+s 2202
+f 2135/3684/9046 2347/3688/9047 2136/3687/9048
+f 2136/3687/9048 2347/3688/9047 2348/3689/9049
+s 2203
+f 2136/3687/9050 2348/3689/9051 2251/3690/9052
+f 2251/3690/9052 2348/3689/9051 2350/3691/9053
+s 2204
+f 2139/3360/9054 2253/3361/9055 2132/3675/9056
+f 2132/3675/9056 2253/3361/9055 2343/3692/9057
+s 2205
+f 2029/3367/9058 2141/3366/9059 2253/3693/9060
+f 2253/3693/9060 2141/3366/9059 2441/3694/9061
+s 2206
+f 2251/3690/9062 2350/3691/9063 2140/3695/9064
+f 2140/3695/9064 2350/3691/9063 2351/3696/9065
+s 2207
+f 2140/3695/9066 2351/3696/9067 2141/3366/9068
+f 2141/3366/9068 2351/3696/9067 2441/3694/9069
+s 2208
+f 2032/3165/9070 2254/3697/9071 2352/3549/9072
+f 2352/3549/9072 2254/3697/9071 2442/3698/9073
+s 2209
+f 2146/3171/9074 2144/3368/9075 2354/3555/9076
+f 2354/3555/9076 2144/3368/9075 2355/3699/9077
+s 2210
+f 2144/3368/9078 2145/3371/9079 2355/3699/9080
+f 2355/3699/9080 2145/3371/9079 2325/3656/9081
+s 2211
+f 2257/3557/9082 2147/3174/9083 2356/3700/9084
+f 2356/3700/9084 2147/3174/9083 2294/3431/9085
+s 2212
+f 2149/3702/9086 2148/3558/9087 2357/3701/9088
+f 2357/3701/9088 2148/3558/9087 2257/3557/9089
+s 2213
+f 2150/3704/9090 2149/3702/9091 2358/3703/9092
+f 2358/3703/9092 2149/3702/9091 2357/3701/9093
+s 2214
+f 2151/3706/9094 2150/3704/9095 2359/3705/9096
+f 2359/3705/9096 2150/3704/9095 2358/3703/9097
+s 2215
+f 2153/3183/9098 2258/3377/9099 2362/3563/9100
+f 2362/3563/9100 2258/3377/9099 2447/3707/9101
+s 2216
+f 1934/3709/9102 2259/3710/9103 2363/3708/9104
+f 2363/3708/9104 2259/3710/9103 2449/3711/9105
+s 2217
+f 2155/3713/9106 2154/3564/9107 2364/3712/9108
+f 2364/3712/9108 2154/3564/9107 2366/3567/9109
+s 2218
+f 2260/3715/9110 1934/3709/9111 2365/3714/9112
+f 2365/3714/9112 1934/3709/9111 2363/3708/9113
+s 2219
+f 2261/3717/9114 2156/3718/9115 2368/3716/9116
+f 2368/3716/9116 2156/3718/9115 2367/3719/9117
+s 2220
+f 2264/3573/9118 2158/3381/9119 2371/3720/9120
+f 2371/3720/9120 2158/3381/9119 2372/3721/9121
+s 2221
+f 2158/3381/9122 2262/3382/9123 2372/3721/9124
+f 2372/3721/9124 2262/3382/9123 2455/3722/9125
+s 2222
+f 1937/2999/9126 2373/3723/9127 2160/3190/9128
+f 2160/3190/9128 2373/3723/9127 2458/3724/9129
+s 2223
+f 1816/2819/9130 2374/3575/9131 1937/2999/9132
+f 1937/2999/9132 2374/3575/9131 2373/3723/9133
+s 2224
+f 2266/3574/9134 2041/3191/9135 2375/3725/9136
+f 2375/3725/9136 2041/3191/9135 2460/3726/9137
+s 2225
+f 2267/3576/9138 2376/3727/9139 2041/3191/9140
+f 2041/3191/9140 2376/3727/9139 2460/3726/9141
+s 2226
+f 2161/3192/9142 2171/3728/9143 2377/3577/9144
+f 2377/3577/9144 2171/3728/9143 2464/3729/9145
+s off
+f 2265/3730/9146 2268/3731/9147 2042/3732/9148
+s 2227
+f 2163/3386/9149 2378/3733/9150 2162/3385/9151
+f 2162/3385/9151 2378/3733/9150 2270/3579/9152
+s 2228
+f 2269/3578/9153 2379/3734/9154 2163/3386/9155
+f 2163/3386/9155 2379/3734/9154 2378/3733/9156
+s 2229
+f 2166/3388/9157 2164/3387/9158 2380/3735/9159
+f 2380/3735/9159 2164/3387/9158 2470/3736/9160
+s 2230
+f 2166/3388/9161 2380/3735/9162 2165/3389/9163
+f 2165/3389/9163 2380/3735/9162 2272/3581/9164
+s 2231
+f 2167/3390/9165 2381/3737/9166 2164/3387/9167
+f 2164/3387/9167 2381/3737/9166 2470/3736/9168
+s 2232
+f 2168/3391/9169 2382/3583/9170 2167/3390/9171
+f 2167/3390/9171 2382/3583/9170 2381/3737/9172
+s 2233
+f 2170/3394/9173 2383/3738/9174 2169/3392/9175
+f 2169/3392/9175 2383/3738/9174 2384/3739/9176
+s 2234
+f 2169/3392/9177 2384/3739/9178 2274/3393/9179
+f 2274/3393/9179 2384/3739/9178 2475/3740/9180
+s 2235
+f 2170/3742/9181 2271/3743/9182 2385/3741/9183
+f 2385/3741/9183 2271/3743/9182 2476/3744/9184
+s 2236
+f 2172/3745/9185 2386/3746/9186 2171/3728/9187
+f 2171/3728/9187 2386/3746/9186 2464/3729/9188
+s 2237
+f 2143/3747/9189 2352/3748/9190 2172/3745/9191
+f 2172/3745/9191 2352/3748/9190 2386/3746/9192
+s 2238
+f 2050/3198/9193 2275/3584/9194 2276/3749/9195
+f 2276/3749/9195 2275/3584/9194 2477/3750/9196
+s 2239
+f 2174/3200/9197 2264/3573/9198 2388/3586/9199
+f 2388/3586/9199 2264/3573/9198 2456/3751/9200
+s 2240
+f 2051/3753/9201 2277/3754/9202 2285/3752/9203
+f 2285/3752/9203 2277/3754/9202 2395/3755/9204
+s 2241
+f 2175/3401/9205 2389/3589/9206 2277/3402/9207
+f 2277/3402/9207 2389/3589/9206 2480/3756/9208
+s 2242
+f 2177/3404/9209 2178/3407/9210 2391/3757/9211
+f 2391/3757/9211 2178/3407/9210 2392/3758/9212
+s 2243
+f 2178/3408/9213 2179/3409/9214 2392/3759/9215
+f 2392/3759/9215 2179/3409/9214 2393/3760/9216
+s 2244
+f 2179/3409/9217 2279/3410/9218 2393/3760/9219
+f 2393/3760/9219 2279/3410/9218 2481/3761/9220
+s 2245
+f 2280/3595/9221 2055/3210/9222 2394/3762/9223
+f 2394/3762/9223 2055/3210/9222 2281/3412/9224
+s 2246
+f 2180/3598/9225 2181/3415/9226 2281/3763/9227
+f 2281/3763/9227 2181/3415/9226 2283/3600/9228
+s 2247
+f 2182/3601/9229 2390/3764/9230 2283/3600/9231
+f 2283/3600/9231 2390/3764/9230 2483/3765/9232
+s 2248
+f 2285/3766/9233 2395/3767/9234 2064/3422/9235
+f 2064/3422/9235 2395/3767/9234 2287/3423/9236
+s 2249
+f 2187/3607/9237 2287/3769/9238 2396/3768/9239
+f 2396/3768/9239 2287/3769/9238 2395/3770/9240
+s 2250
+f 2288/3608/9241 2187/3607/9242 2397/3771/9243
+f 2397/3771/9243 2187/3607/9242 2396/3768/9244
+s 2251
+f 2192/3429/9245 2188/3430/9246 2398/3772/9247
+f 2398/3772/9247 2188/3430/9246 2485/3773/9248
+s 2252
+f 2066/3228/9249 2290/3610/9250 2289/3424/9251
+f 2289/3424/9251 2290/3610/9250 2486/3774/9252
+s 2253
+f 2286/3606/9253 2402/3775/9254 2190/3426/9255
+f 2190/3426/9255 2402/3775/9254 2292/3427/9256
+s 2254
+f 2191/3232/9257 2293/3428/9258 2403/3776/9259
+f 2403/3776/9259 2293/3428/9258 2490/3777/9260
+s 2255
+f 2069/3231/9261 2405/3617/9262 2294/3431/9263
+f 2294/3431/9263 2405/3617/9262 2491/3778/9264
+s 2256
+f 2191/3232/9265 2403/3776/9266 2295/3616/9267
+f 2295/3616/9267 2403/3776/9266 2493/3779/9268
+s 2257
+f 2272/3581/9269 2406/3780/9270 2070/3233/9271
+f 2070/3233/9271 2406/3780/9270 2296/3433/9272
+s 2258
+f 2071/3235/9273 2297/3435/9274 2334/3524/9275
+f 2334/3524/9275 2297/3435/9274 2430/3781/9276
+s 2259
+f 2193/3434/9277 2408/3782/9278 2297/3435/9279
+f 2297/3435/9279 2408/3782/9278 2499/3783/9280
+s 2260
+f 2299/3785/9281 2410/3786/9282 2195/3784/9283
+f 2195/3784/9283 2410/3786/9282 2298/3787/9284
+s 2261
+f 2300/3622/9285 2196/3439/9286 2301/3788/9287
+f 2301/3788/9287 2196/3439/9286 2076/3449/9288
+s 2262
+f 2197/3448/9289 2198/3789/9290 2199/3444/9291
+f 2199/3444/9291 2198/3789/9290 2300/3623/9292
+s 2263
+f 2216/3492/9293 2202/3457/9294 2411/3790/9295
+f 2411/3790/9295 2202/3457/9294 2412/3791/9296
+s 2264
+f 2202/3457/9297 2203/3458/9298 2412/3791/9299
+f 2412/3791/9299 2203/3458/9298 2413/3792/9300
+s 2265
+f 2203/3459/9301 2303/3462/9302 2413/3793/9303
+f 2413/3793/9303 2303/3462/9302 2500/3794/9304
+s 2266
+f 2303/3796/9305 2085/3797/9306 2414/3795/9307
+f 2414/3795/9307 2085/3797/9306 2415/3798/9308
+s 2267
+f 2204/3653/9309 2231/3652/9310 2205/3799/9311
+f 2205/3799/9311 2231/3652/9310 2321/3800/9312
+s 2268
+f 2204/3653/9313 2304/3801/9314 2322/3654/9315
+f 2322/3654/9315 2304/3801/9314 2418/3802/9316
+s 2269
+f 2086/3464/9317 2305/3803/9318 2304/3465/9319
+f 2304/3465/9319 2305/3803/9318 2502/3804/9320
+s 2270
+f 2305/3803/9321 2206/3806/9322 2416/3805/9323
+f 2416/3805/9323 2206/3806/9322 2207/3807/9324
+s 2271
+f 2207/3807/9325 2208/3808/9326 2416/3805/9327
+f 2416/3805/9327 2208/3808/9326 2306/3809/9328
+s 2272
+f 2307/3626/9329 2209/3473/9330 2417/3810/9331
+f 2417/3810/9331 2209/3473/9330 2418/3802/9332
+s 2273
+f 2209/3473/9333 2210/3476/9334 2418/3802/9335
+f 2418/3802/9335 2210/3476/9334 2322/3654/9336
+s 2274
+f 2214/3488/9337 2215/3811/9338 2213/3484/9339
+f 2213/3484/9339 2215/3811/9338 2309/3631/9340
+s 2275
+f 2218/3497/9341 2216/3492/9342 2419/3812/9343
+f 2419/3812/9343 2216/3492/9342 2411/3790/9344
+s 2276
+f 2097/3493/9345 2310/3496/9346 2314/3813/9347
+f 2314/3813/9347 2310/3496/9346 2503/3814/9348
+s 2277
+f 2310/3816/9349 2094/3817/9350 2420/3815/9351
+f 2420/3815/9351 2094/3817/9350 2421/3818/9352
+s 2278
+f 2219/3819/9353 2234/3820/9354 2100/3643/9355
+f 2100/3643/9355 2234/3820/9354 2233/3644/9356
+s 2279
+f 2219/3819/9357 2313/3822/9358 2423/3821/9359
+f 2423/3821/9359 2313/3822/9358 2506/3823/9360
+s 2280
+f 2220/3502/9361 2221/3503/9362 2425/3824/9363
+f 2425/3824/9363 2221/3503/9362 2222/3504/9364
+s 2281
+f 2222/3826/9365 2314/3827/9366 2425/3825/9367
+f 2425/3825/9367 2314/3827/9366 2503/3828/9368
+s 2282
+f 2224/3508/9369 2317/3514/9370 2316/3641/9371
+f 2316/3641/9371 2317/3514/9370 2426/3646/9372
+s 2283
+f 2227/3830/9373 2228/3831/9374 2226/3829/9375
+f 2226/3829/9375 2228/3831/9374 2426/3832/9376
+s 2284
+f 2234/3820/9377 2219/3819/9378 2323/3833/9379
+f 2323/3833/9379 2219/3819/9378 2423/3821/9380
+s 2285
+f 2112/3520/9381 2326/3521/9382 2325/3834/9383
+f 2325/3834/9383 2326/3521/9382 2508/3835/9384
+s 2286
+f 2235/3319/9385 2243/3534/9386 2326/3521/9387
+f 2326/3521/9387 2243/3534/9386 2433/3836/9388
+s 2287
+f 2123/3127/9389 2327/3522/9390 2336/3536/9391
+f 2336/3536/9391 2327/3522/9390 2509/3837/9392
+s 2288
+f 2113/3110/9393 2236/3321/9394 2327/3522/9395
+f 2327/3522/9395 2236/3321/9394 2329/3657/9396
+s 2289
+f 2114/3320/9397 2328/3523/9398 2428/3658/9399
+f 2428/3658/9399 2328/3523/9398 2510/3838/9400
+s 2290
+f 2328/3523/9401 2115/3322/9402 2429/3664/9403
+f 2429/3664/9403 2115/3322/9402 2237/3327/9404
+s 2291
+f 2238/3526/9405 2334/3839/9406 2239/3525/9407
+f 2239/3525/9407 2334/3839/9406 2240/3528/9408
+s 2292
+f 2241/3530/9409 2240/3528/9410 2430/3840/9411
+f 2430/3840/9411 2240/3528/9410 2334/3839/9412
+s 2293
+f 2242/3532/9413 2241/3530/9414 2431/3841/9415
+f 2431/3841/9415 2241/3530/9414 2430/3840/9416
+s 2294
+f 2335/3665/9417 2242/3532/9418 2432/3842/9419
+f 2432/3842/9419 2242/3532/9418 2431/3841/9420
+s 2295
+f 2243/3535/9421 2336/3536/9422 2433/3843/9423
+f 2433/3843/9423 2336/3536/9422 2519/3844/9424
+s 2296
+f 2246/3538/9425 2245/3340/9426 2435/3845/9427
+f 2435/3845/9427 2245/3340/9426 2341/3672/9428
+s 2297
+f 2247/3540/9429 2246/3538/9430 2436/3846/9431
+f 2436/3846/9431 2246/3538/9430 2435/3845/9432
+s 2298
+f 2338/3542/9433 2247/3540/9434 2437/3847/9435
+f 2437/3847/9435 2247/3540/9434 2436/3846/9436
+s 2299
+f 2142/3552/9437 2342/3848/9438 2353/3553/9439
+f 2353/3553/9439 2342/3848/9438 2525/3849/9440
+s 2300
+f 2342/3544/9441 2131/3343/9442 2438/3850/9443
+f 2438/3850/9443 2131/3343/9442 2439/3674/9444
+s 2301
+f 2248/3676/9445 2344/3678/9446 2252/3677/9447
+f 2252/3677/9447 2344/3678/9446 2345/3681/9448
+s 2302
+f 2135/3684/9449 2346/3683/9450 2347/3688/9451
+f 2347/3688/9451 2346/3683/9450 2528/3851/9452
+s 2303
+f 2250/3685/9453 2349/3852/9454 2440/3686/9455
+f 2440/3686/9455 2349/3852/9454 2532/3853/9456
+s 2304
+f 2254/3550/9457 2353/3553/9458 2443/3854/9459
+f 2443/3854/9459 2353/3553/9458 2534/3855/9460
+s 2305
+f 2256/3857/9461 2255/3858/9462 2444/3856/9463
+f 2444/3856/9463 2255/3858/9462 2445/3859/9464
+s 2306
+f 2255/3858/9465 2354/3860/9466 2445/3859/9467
+f 2445/3859/9467 2354/3860/9466 2536/3861/9468
+s 2307
+f 2341/3863/9469 2256/3857/9470 2446/3862/9471
+f 2446/3862/9471 2256/3857/9470 2444/3856/9472
+s 2308
+f 2257/3557/9473 2356/3700/9474 2357/3701/9475
+f 2357/3701/9475 2356/3700/9474 2537/3864/9476
+s 2309
+f 2151/3866/9477 2359/3867/9478 2360/3865/9479
+f 2360/3865/9479 2359/3867/9478 2539/3868/9480
+s 2310
+f 2152/3179/9481 2360/3559/9482 2361/3561/9483
+f 2361/3561/9483 2360/3559/9482 2540/3869/9484
+s 2311
+f 2258/3560/9485 2361/3561/9486 2447/3870/9487
+f 2447/3870/9487 2361/3561/9486 2541/3871/9488
+s 2312
+f 2259/3562/9489 2362/3563/9490 2448/3872/9491
+f 2448/3872/9491 2362/3563/9490 2542/3873/9492
+s 2313
+f 2364/3712/9493 2450/3874/9494 2155/3713/9495
+f 2155/3713/9495 2450/3874/9494 2367/3719/9496
+s 2314
+f 2365/3875/9497 2451/3876/9498 2260/3566/9499
+f 2260/3566/9499 2451/3876/9498 2452/3877/9500
+s 2315
+f 2260/3566/9501 2452/3877/9502 2366/3567/9503
+f 2366/3567/9503 2452/3877/9502 2364/3712/9504
+s 2316
+f 2368/3878/9505 2453/3879/9506 2261/3569/9507
+f 2261/3569/9507 2453/3879/9506 2548/3880/9508
+s 2317
+f 2263/3570/9509 2261/3569/9510 2454/3881/9511
+f 2454/3881/9511 2261/3569/9510 2548/3880/9512
+s 2318
+f 2262/3382/9513 2369/3571/9514 2455/3722/9515
+f 2455/3722/9515 2369/3571/9514 2549/3882/9516
+s 2319
+f 2157/3188/9517 2370/3572/9518 2369/3571/9519
+f 2369/3571/9519 2370/3572/9518 2550/3883/9520
+s 2320
+f 2263/3570/9521 2454/3881/9522 2370/3572/9523
+f 2370/3572/9523 2454/3881/9522 2551/3884/9524
+s 2321
+f 2264/3886/9525 2371/3887/9526 2456/3885/9527
+f 2456/3885/9527 2371/3887/9526 2552/3888/9528
+s 2322
+f 2040/3189/9529 2457/3889/9530 2159/3383/9531
+f 2159/3383/9531 2457/3889/9530 2555/3890/9532
+s 2323
+f 2160/3190/9533 2458/3724/9534 2040/3189/9535
+f 2040/3189/9535 2458/3724/9534 2457/3889/9536
+s 2324
+f 2375/3892/9537 2459/3893/9538 2266/3891/9539
+f 2266/3891/9539 2459/3893/9538 2559/3894/9540
+s 2325
+f 2374/3896/9541 2266/3891/9542 2461/3895/9543
+f 2461/3895/9543 2266/3891/9542 2559/3894/9544
+s 2326
+f 2376/3727/9545 2267/3576/9546 2462/3897/9547
+f 2462/3897/9547 2267/3576/9546 2463/3898/9548
+s 2327
+f 2267/3900/9549 2377/3901/9550 2463/3899/9551
+f 2463/3899/9551 2377/3901/9550 2564/3902/9552
+s 2328
+f 2265/3904/9553 2465/3905/9554 2268/3903/9555
+f 2268/3903/9555 2465/3905/9554 2466/3906/9556
+s 2329
+f 2268/3903/9557 2466/3906/9558 2042/3907/9559
+f 2042/3907/9559 2466/3906/9558 2467/3908/9560
+s 2330
+f 2042/3193/9561 2467/3909/9562 2269/3578/9563
+f 2269/3578/9563 2467/3909/9562 2379/3734/9564
+s 2331
+f 2378/3733/9565 2468/3910/9566 2270/3579/9567
+f 2270/3579/9567 2468/3910/9566 2568/3911/9568
+s 2332
+f 2270/3912/9569 2469/3913/9570 2271/3743/9571
+f 2271/3743/9571 2469/3913/9570 2476/3744/9572
+s 2333
+f 2272/3915/9573 2380/3916/9574 2471/3914/9575
+f 2471/3914/9575 2380/3916/9574 2570/3917/9576
+s 2334
+f 2382/3919/9577 2273/3920/9578 2472/3918/9579
+f 2472/3918/9579 2273/3920/9578 2574/3921/9580
+s 2335
+f 2274/3922/9581 2473/3923/9582 2273/3920/9583
+f 2273/3920/9583 2473/3923/9582 2574/3921/9584
+s 2336
+f 2383/3738/9585 2170/3394/9586 2474/3924/9587
+f 2474/3924/9587 2170/3394/9586 2385/3925/9588
+s 2337
+f 2275/3584/9589 2387/3585/9590 2478/3926/9591
+f 2478/3926/9591 2387/3585/9590 2581/3927/9592
+s 2338
+f 2173/3199/9593 2388/3586/9594 2387/3585/9595
+f 2387/3585/9595 2388/3586/9594 2581/3927/9596
+s 2339
+f 2276/3588/9597 2479/3928/9598 2389/3589/9599
+f 2389/3589/9599 2479/3928/9598 2583/3929/9600
+s 2340
+f 2177/3404/9601 2391/3757/9602 2390/3930/9603
+f 2390/3930/9603 2391/3757/9602 2584/3931/9604
+s 2341
+f 2279/3596/9605 2280/3595/9606 2481/3932/9607
+f 2481/3932/9607 2280/3595/9606 2588/3933/9608
+s 2342
+f 2394/3762/9609 2482/3934/9610 2280/3595/9611
+f 2280/3595/9611 2482/3934/9610 2588/3933/9612
+s 2343
+f 2281/3763/9613 2283/3600/9614 2394/3935/9615
+f 2394/3935/9615 2283/3600/9614 2483/3765/9616
+s 2344
+f 2288/3608/9617 2484/3936/9618 2286/3606/9619
+f 2286/3606/9619 2484/3936/9618 2402/3775/9620
+s 2345
+f 2288/3608/9621 2397/3771/9622 2484/3936/9623
+f 2484/3936/9623 2397/3771/9622 2591/3937/9624
+s 2346
+f 2192/3429/9625 2398/3772/9626 2404/3615/9627
+f 2404/3615/9627 2398/3772/9626 2592/3938/9628
+s 2347
+f 2188/3430/9629 2399/3939/9630 2485/3773/9631
+f 2485/3773/9631 2399/3939/9630 2594/3940/9632
+s 2348
+f 2289/3941/9633 2486/3942/9634 2399/3939/9635
+f 2399/3939/9635 2486/3942/9634 2595/3943/9636
+s 2349
+f 2290/3610/9637 2291/3611/9638 2487/3944/9639
+f 2487/3944/9639 2291/3611/9638 2596/3945/9640
+s 2350
+f 2400/3947/9641 2488/3948/9642 2291/3946/9643
+f 2291/3946/9643 2488/3948/9642 2596/3949/9644
+s 2351
+f 2400/3947/9645 2189/3613/9646 2489/3950/9647
+f 2489/3950/9647 2189/3613/9646 2401/3614/9648
+s 2352
+f 2292/3427/9649 2402/3775/9650 2401/3614/9651
+f 2401/3614/9651 2402/3775/9650 2489/3950/9652
+s 2353
+f 2293/3428/9653 2404/3615/9654 2490/3777/9655
+f 2490/3777/9655 2404/3615/9654 2601/3951/9656
+s 2354
+f 2356/3700/9657 2294/3431/9658 2492/3952/9659
+f 2492/3952/9659 2294/3431/9658 2491/3778/9660
+s 2355
+f 2405/3617/9661 2295/3616/9662 2494/3953/9663
+f 2494/3953/9663 2295/3616/9662 2603/3954/9664
+s 2356
+f 2406/3780/9665 2272/3581/9666 2495/3955/9667
+f 2495/3955/9667 2272/3581/9666 2471/3956/9668
+s 2357
+f 2299/3621/9669 2296/3433/9670 2496/3957/9671
+f 2496/3957/9671 2296/3433/9670 2406/3780/9672
+s 2358
+f 2407/3618/9673 2497/3958/9674 2193/3434/9675
+f 2193/3434/9675 2497/3958/9674 2408/3782/9676
+s 2359
+f 2407/3618/9677 2194/3238/9678 2498/3959/9679
+f 2498/3959/9679 2194/3238/9678 2409/3620/9680
+s 2360
+f 2298/3787/9681 2410/3786/9682 2409/3960/9683
+f 2409/3960/9683 2410/3786/9682 2498/3961/9684
+s 2361
+f 2299/3785/9685 2496/3962/9686 2410/3786/9687
+f 2410/3786/9687 2496/3962/9686 2604/3963/9688
+s 2362
+f 2414/3795/9689 2501/3964/9690 2303/3796/9691
+f 2303/3796/9691 2501/3964/9690 2500/3965/9692
+s 2363
+f 2415/3798/9693 2205/3799/9694 2427/3966/9695
+f 2427/3966/9695 2205/3799/9694 2321/3800/9696
+s 2364
+f 2416/3805/9697 2417/3967/9698 2305/3803/9699
+f 2305/3803/9699 2417/3967/9698 2502/3804/9700
+s 2365
+f 2306/3627/9701 2307/3626/9702 2416/3968/9703
+f 2416/3968/9703 2307/3626/9702 2417/3810/9704
+s 2366
+f 2218/3635/9705 2419/3969/9706 2422/3636/9707
+f 2422/3636/9707 2419/3969/9706 2610/3970/9708
+s 2367
+f 2420/3815/9709 2504/3971/9710 2310/3816/9711
+f 2310/3816/9711 2504/3971/9710 2503/3972/9712
+s 2368
+f 2421/3818/9713 2311/3974/9714 2324/3973/9715
+f 2324/3973/9715 2311/3974/9714 2318/3975/9716
+s 2369
+f 2312/3976/9717 2319/3977/9718 2311/3974/9719
+f 2311/3974/9719 2319/3977/9718 2318/3975/9720
+s 2370
+f 2312/3976/9721 2422/3979/9722 2505/3978/9723
+f 2505/3978/9723 2422/3979/9722 2609/3980/9724
+s 2371
+f 2313/3822/9725 2424/3981/9726 2506/3823/9727
+f 2506/3823/9727 2424/3981/9726 2507/3982/9728
+s 2372
+f 2424/3638/9729 2220/3637/9730 2507/3983/9731
+f 2507/3983/9731 2220/3637/9730 2425/3984/9732
+s 2373
+f 2315/3642/9733 2316/3641/9734 2228/3985/9735
+f 2228/3985/9735 2316/3641/9734 2426/3646/9736
+s 2374
+f 2319/3977/9737 2312/3976/9738 2320/3986/9739
+f 2320/3986/9739 2312/3976/9738 2505/3978/9740
+s 2375
+f 2320/3986/9741 2505/3978/9742 2427/3966/9743
+f 2427/3966/9743 2505/3978/9742 2415/3798/9744
+s 2376
+f 2323/3833/9745 2423/3821/9746 2324/3973/9747
+f 2324/3973/9747 2423/3821/9746 2421/3818/9748
+s 2377
+f 2325/3834/9749 2508/3835/9750 2355/3987/9751
+f 2355/3987/9751 2508/3835/9750 2535/3988/9752
+s 2378
+f 2429/3664/9753 2511/3989/9754 2328/3523/9755
+f 2328/3523/9755 2511/3989/9754 2510/3838/9756
+s 2379
+f 2327/3522/9757 2329/3657/9758 2509/3837/9759
+f 2509/3837/9759 2329/3657/9758 2512/3990/9760
+s 2380
+f 2329/3657/9761 2428/3658/9762 2512/3990/9763
+f 2512/3990/9763 2428/3658/9762 2611/3991/9764
+s 2381
+f 2335/3665/9765 2513/3992/9766 2330/3666/9767
+f 2330/3666/9767 2513/3992/9766 2514/3993/9768
+s 2382
+f 2330/3659/9769 2514/3994/9770 2331/3660/9771
+f 2331/3660/9771 2514/3994/9770 2515/3995/9772
+s 2383
+f 2331/3660/9773 2515/3995/9774 2332/3661/9775
+f 2332/3661/9775 2515/3995/9774 2516/3996/9776
+s 2384
+f 2332/3662/9777 2516/3997/9778 2333/3663/9779
+f 2333/3663/9779 2516/3997/9778 2517/3998/9780
+s 2385
+f 2333/3663/9781 2517/3998/9782 2429/3664/9783
+f 2429/3664/9783 2517/3998/9782 2511/3989/9784
+s 2386
+f 2432/3842/9785 2518/3999/9786 2335/3665/9787
+f 2335/3665/9787 2518/3999/9786 2513/3992/9788
+s 2387
+f 2244/3669/9789 2434/3670/9790 2337/4000/9791
+f 2337/4000/9791 2434/3670/9790 2520/4001/9792
+s 2388
+f 2337/4000/9793 2520/4001/9794 2339/4002/9795
+f 2339/4002/9795 2520/4001/9794 2522/4003/9796
+s 2389
+f 2434/3670/9797 2338/3542/9798 2521/4004/9799
+f 2521/4004/9799 2338/3542/9798 2437/3847/9800
+s 2390
+f 2339/4002/9801 2522/4003/9802 2340/4005/9803
+f 2340/4005/9803 2522/4003/9802 2523/4006/9804
+s 2391
+f 2340/4005/9805 2523/4006/9806 2349/3852/9807
+f 2349/3852/9807 2523/4006/9806 2532/3853/9808
+s 2392
+f 2435/4008/9809 2341/3863/9810 2524/4007/9811
+f 2524/4007/9811 2341/3863/9810 2446/3862/9812
+s 2393
+f 2438/4010/9813 2526/4011/9814 2342/4009/9815
+f 2342/4009/9815 2526/4011/9814 2619/4012/9816
+s 2394
+f 2253/3693/9817 2441/3694/9818 2343/4013/9819
+f 2343/4013/9819 2441/3694/9818 2527/4014/9820
+s 2395
+f 2343/4016/9821 2527/4017/9822 2439/4015/9823
+f 2439/4015/9823 2527/4017/9822 2438/4018/9824
+s 2396
+f 2529/4019/9825 2530/4020/9826 2440/3686/9827
+f 2440/3686/9827 2530/4020/9826 2346/3683/9828
+s 2397
+f 2348/3689/9829 2347/3688/9830 2531/4021/9831
+f 2531/4021/9831 2347/3688/9830 2621/4022/9832
+s 2398
+f 2348/3689/9833 2531/4021/9834 2350/3691/9835
+f 2350/3691/9835 2531/4021/9834 2622/4023/9836
+s 2399
+f 2533/4024/9837 2351/3696/9838 2622/4023/9839
+f 2622/4023/9839 2351/3696/9838 2350/3691/9840
+s 2400
+f 2351/3696/9841 2533/4024/9842 2441/3694/9843
+f 2441/3694/9843 2533/4024/9842 2527/4014/9844
+s 2401
+f 2352/3748/9845 2442/4025/9846 2386/3746/9847
+f 2386/3746/9847 2442/4025/9846 2623/4026/9848
+s 2402
+f 2254/3697/9849 2443/4027/9850 2442/3698/9851
+f 2442/3698/9851 2443/4027/9850 2624/4028/9852
+s 2403
+f 2355/3987/9853 2535/3988/9854 2354/3860/9855
+f 2354/3860/9855 2535/3988/9854 2536/3861/9856
+s 2404
+f 2357/3701/9857 2537/3864/9858 2358/3703/9859
+f 2358/3703/9859 2537/3864/9858 2538/4029/9860
+s 2405
+f 2359/3705/9861 2358/3703/9862 2629/4030/9863
+f 2629/4030/9863 2358/3703/9862 2538/4029/9864
+s 2406
+f 2362/3563/9865 2447/3707/9866 2542/3873/9867
+f 2542/3873/9867 2447/3707/9866 2630/4031/9868
+s 2407
+f 2259/3710/9869 2448/4032/9870 2449/3711/9871
+f 2449/3711/9871 2448/4032/9870 2632/4033/9872
+s 2408
+f 2363/3708/9873 2449/3711/9874 2543/4034/9875
+f 2543/4034/9875 2449/3711/9874 2633/4035/9876
+s 2409
+f 2365/3714/9877 2363/3708/9878 2544/4036/9879
+f 2544/4036/9879 2363/3708/9878 2543/4034/9880
+s 2410
+f 2450/3874/9881 2364/3712/9882 2451/3876/9883
+f 2451/3876/9883 2364/3712/9882 2452/3877/9884
+s 2411
+f 2365/3875/9885 2545/4037/9886 2451/3876/9887
+f 2451/3876/9887 2545/4037/9886 2634/4038/9888
+s 2412
+f 2368/3716/9889 2367/3719/9890 2546/4039/9891
+f 2546/4039/9891 2367/3719/9890 2450/3874/9892
+s 2413
+f 2453/4041/9893 2368/3716/9894 2547/4040/9895
+f 2547/4040/9895 2368/3716/9894 2635/4042/9896
+s 2414
+f 2371/3720/9897 2372/3721/9898 2553/4043/9899
+f 2553/4043/9899 2372/3721/9898 2554/4044/9900
+s 2415
+f 2372/3721/9901 2455/3722/9902 2554/4044/9903
+f 2554/4044/9903 2455/3722/9902 2642/4045/9904
+s 2416
+f 2159/3383/9905 2555/3890/9906 2265/3384/9907
+f 2265/3384/9907 2555/3890/9906 2465/4046/9908
+s 2417
+f 2374/3575/9909 2556/4047/9910 2373/3723/9911
+f 2373/3723/9911 2556/4047/9910 2557/4048/9912
+s 2418
+f 2373/3723/9913 2557/4048/9914 2458/3724/9915
+f 2458/3724/9915 2557/4048/9914 2645/4049/9916
+s 2419
+f 2459/4051/9917 2375/4052/9918 2558/4050/9919
+f 2558/4050/9919 2375/4052/9918 2647/4053/9920
+s 2420
+f 2460/3726/9921 2560/4054/9922 2375/3725/9923
+f 2375/3725/9923 2560/4054/9922 2647/4055/9924
+s 2421
+f 2461/4056/9925 2561/4057/9926 2374/3575/9927
+f 2374/3575/9927 2561/4057/9926 2556/4047/9928
+s 2422
+f 2462/3897/9929 2562/4058/9930 2376/3727/9931
+f 2376/3727/9931 2562/4058/9930 2563/4059/9932
+s 2423
+f 2376/3727/9933 2563/4059/9934 2460/3726/9935
+f 2460/3726/9935 2563/4059/9934 2560/4054/9936
+s 2424
+f 2464/4060/9937 2565/4061/9938 2377/3901/9939
+f 2377/3901/9939 2565/4061/9938 2564/3902/9940
+s 2425
+f 2379/3734/9941 2566/4062/9942 2378/3733/9943
+f 2378/3733/9943 2566/4062/9942 2468/3910/9944
+s 2426
+f 2379/4064/9945 2467/4065/9946 2567/4063/9947
+f 2567/4063/9947 2467/4065/9946 2657/4066/9948
+s 2427
+f 2270/3579/9949 2568/3911/9950 2469/4067/9951
+f 2469/4067/9951 2568/3911/9950 2660/4068/9952
+s 2428
+f 2470/4069/9953 2569/4070/9954 2380/3916/9955
+f 2380/3916/9955 2569/4070/9954 2570/3917/9956
+s 2429
+f 2382/3583/9957 2571/4071/9958 2381/3737/9959
+f 2381/3737/9959 2571/4071/9958 2572/4072/9960
+s 2430
+f 2381/3737/9961 2572/4072/9962 2470/3736/9963
+f 2470/3736/9963 2572/4072/9962 2661/4073/9964
+s 2431
+f 2472/4074/9965 2573/4075/9966 2382/3583/9967
+f 2382/3583/9967 2573/4075/9966 2571/4071/9968
+s 2432
+f 2274/4077/9969 2475/4078/9970 2473/4076/9971
+f 2473/4076/9971 2475/4078/9970 2664/4079/9972
+s 2433
+f 2474/3924/9973 2575/4080/9974 2383/3738/9975
+f 2383/3738/9975 2575/4080/9974 2576/4081/9976
+s 2434
+f 2383/3738/9977 2576/4081/9978 2384/3739/9979
+f 2384/3739/9979 2576/4081/9978 2666/4082/9980
+s 2435
+f 2475/3740/9981 2384/3739/9982 2577/4083/9983
+f 2577/4083/9983 2384/3739/9982 2666/4082/9984
+s 2436
+f 2385/4085/9985 2578/4086/9986 2474/4084/9987
+f 2474/4084/9987 2578/4086/9986 2665/4087/9988
+s 2437
+f 2476/3744/9989 2579/4088/9990 2385/3741/9991
+f 2385/3741/9991 2579/4088/9990 2578/4089/9992
+s 2438
+f 2386/3746/9993 2580/4090/9994 2464/3729/9995
+f 2464/3729/9995 2580/4090/9994 2565/4091/9996
+s 2439
+f 2276/3588/9997 2477/4092/9998 2479/3928/9999
+f 2479/3928/9999 2477/4092/9998 2667/4093/10000
+s 2440
+f 2275/3584/10001 2478/3926/10002 2477/3750/10003
+f 2477/3750/10003 2478/3926/10002 2668/4094/10004
+s 2441
+f 2388/4096/10005 2456/3885/10006 2582/4095/10007
+f 2582/4095/10007 2456/3885/10006 2641/4097/10008
+s 2442
+f 2277/3402/10009 2480/3756/10010 2395/3770/10011
+f 2395/3770/10011 2480/3756/10010 2396/3768/10012
+s 2443
+f 2389/3589/10013 2583/3929/10014 2480/3756/10015
+f 2480/3756/10015 2583/3929/10014 2590/4098/10016
+s 2444
+f 2391/3757/10017 2392/3758/10018 2585/4099/10019
+f 2585/4099/10019 2392/3758/10018 2586/4100/10020
+s 2445
+f 2392/3759/10021 2393/3760/10022 2586/4101/10023
+f 2586/4101/10023 2393/3760/10022 2587/4102/10024
+s 2446
+f 2393/3760/10025 2481/3761/10026 2587/4102/10027
+f 2587/4102/10027 2481/3761/10026 2671/4103/10028
+s 2447
+f 2482/4105/10029 2394/3935/10030 2589/4104/10031
+f 2589/4104/10031 2394/3935/10030 2483/3765/10032
+s 2448
+f 2390/3764/10033 2584/4106/10034 2483/3765/10035
+f 2483/3765/10035 2584/4106/10034 2589/4104/10036
+s 2449
+f 2397/3771/10037 2396/3768/10038 2590/4098/10039
+f 2590/4098/10039 2396/3768/10038 2480/3756/10040
+s 2450
+f 2398/3772/10041 2485/3773/10042 2593/4107/10043
+f 2593/4107/10043 2485/3773/10042 2677/4108/10044
+s 2451
+f 2290/3610/10045 2487/3944/10046 2486/3774/10047
+f 2486/3774/10047 2487/3944/10046 2680/4109/10048
+s 2452
+f 2400/3947/10049 2597/4110/10050 2488/3948/10051
+f 2488/3948/10051 2597/4110/10050 2682/4111/10052
+s 2453
+f 2400/3947/10053 2489/3950/10054 2598/4112/10055
+f 2598/4112/10055 2489/3950/10054 2684/4113/10056
+s 2454
+f 2402/4115/10057 2484/4116/10058 2599/4114/10059
+f 2599/4114/10059 2484/4116/10058 2676/4117/10060
+s 2455
+f 2403/3776/10061 2490/3777/10062 2600/4118/10063
+f 2600/4118/10063 2490/3777/10062 2685/4119/10064
+s 2456
+f 2405/3617/10065 2494/3953/10066 2491/3778/10067
+f 2491/3778/10067 2494/3953/10066 2686/4120/10068
+s 2457
+f 2356/3700/10069 2492/3952/10070 2537/3864/10071
+f 2537/3864/10071 2492/3952/10070 2687/4121/10072
+s 2458
+f 2493/3779/10073 2602/4122/10074 2295/3616/10075
+f 2295/3616/10075 2602/4122/10074 2603/3954/10076
+s 2459
+f 2403/3776/10077 2600/4118/10078 2493/3779/10079
+f 2493/3779/10079 2600/4118/10078 2602/4122/10080
+s 2460
+f 2495/3955/10081 2604/4123/10082 2406/3780/10083
+f 2406/3780/10083 2604/4123/10082 2496/3957/10084
+s 2461
+f 2497/3958/10085 2407/3618/10086 2605/4124/10087
+f 2605/4124/10087 2407/3618/10086 2498/3959/10088
+s 2462
+f 2297/3435/10089 2499/3783/10090 2430/3781/10091
+f 2430/3781/10091 2499/3783/10090 2431/4125/10092
+s 2463
+f 2497/4127/10093 2495/4128/10094 2408/4126/10095
+f 2408/4126/10095 2495/4128/10094 2471/3914/10096
+s 2464
+f 2408/3782/10097 2606/4129/10098 2499/3783/10099
+f 2499/3783/10099 2606/4129/10098 2612/4130/10100
+s 2465
+f 2419/3969/10101 2411/4132/10102 2607/4131/10103
+f 2607/4131/10103 2411/4132/10102 2412/4133/10104
+s 2466
+f 2412/4133/10105 2413/4134/10106 2607/4131/10107
+f 2607/4131/10107 2413/4134/10106 2500/4135/10108
+s 2467
+f 2501/3964/10109 2414/3795/10110 2608/4136/10111
+f 2608/4136/10111 2414/3795/10110 2609/3980/10112
+s 2468
+f 2414/3795/10113 2415/3798/10114 2609/3980/10115
+f 2609/3980/10115 2415/3798/10114 2505/3978/10116
+s 2469
+f 2304/3801/10117 2502/4137/10118 2418/3802/10119
+f 2418/3802/10119 2502/4137/10118 2417/3810/10120
+s 2470
+f 2504/3971/10121 2420/3815/10122 2507/3982/10123
+f 2507/3982/10123 2420/3815/10122 2506/3823/10124
+s 2471
+f 2420/3815/10125 2421/3818/10126 2506/3823/10127
+f 2506/3823/10127 2421/3818/10126 2423/3821/10128
+s 2472
+f 2507/3982/10129 2425/4138/10130 2504/3971/10131
+f 2504/3971/10131 2425/4138/10130 2503/3972/10132
+s 2473
+f 2326/3521/10133 2433/3836/10134 2508/3835/10135
+f 2508/3835/10135 2433/3836/10134 2614/4139/10136
+s 2474
+f 2336/3536/10137 2509/3837/10138 2519/3844/10139
+f 2519/3844/10139 2509/3837/10138 2689/4140/10140
+s 2475
+f 2428/3658/10141 2510/3838/10142 2611/3991/10143
+f 2611/3991/10143 2510/3838/10142 2690/4141/10144
+s 2476
+f 2432/4142/10145 2431/4125/10146 2612/4130/10147
+f 2612/4130/10147 2431/4125/10146 2499/3783/10148
+s 2477
+f 2518/4144/10149 2432/4142/10150 2613/4143/10151
+f 2613/4143/10151 2432/4142/10150 2612/4130/10152
+s 2478
+f 2433/3843/10153 2519/3844/10154 2614/4145/10155
+f 2614/4145/10155 2519/3844/10154 2700/4146/10156
+s 2479
+f 2521/4004/10157 2615/4147/10158 2434/3670/10159
+f 2434/3670/10159 2615/4147/10158 2520/4001/10160
+s 2480
+f 2436/4149/10161 2435/4008/10162 2616/4148/10163
+f 2616/4148/10163 2435/4008/10162 2524/4007/10164
+s 2481
+f 2437/4151/10165 2436/4149/10166 2617/4150/10167
+f 2617/4150/10167 2436/4149/10166 2616/4148/10168
+s 2482
+f 2521/4153/10169 2437/4151/10170 2618/4152/10171
+f 2618/4152/10171 2437/4151/10170 2617/4150/10172
+s 2483
+f 2353/3553/10173 2525/3849/10174 2534/3855/10175
+f 2534/3855/10175 2525/3849/10174 2705/4154/10176
+s 2484
+f 2342/3848/10177 2619/4155/10178 2525/3849/10179
+f 2525/3849/10179 2619/4155/10178 2706/4156/10180
+s 2485
+f 2526/4158/10181 2438/4159/10182 2620/4157/10183
+f 2620/4157/10183 2438/4159/10182 2527/4014/10184
+s 2486
+f 2347/3688/10185 2528/3851/10186 2621/4022/10187
+f 2621/4022/10187 2528/3851/10186 2708/4160/10188
+s 2487
+f 2346/3683/10189 2530/4020/10190 2528/3851/10191
+f 2528/3851/10191 2530/4020/10190 2529/4019/10192
+s 2488
+f 2440/3686/10193 2532/3853/10194 2529/4019/10195
+f 2529/4019/10195 2532/3853/10194 2709/4161/10196
+s 2489
+f 2443/4027/10197 2534/4162/10198 2624/4028/10199
+f 2624/4028/10199 2534/4162/10198 2714/4163/10200
+s 2490
+f 2446/3862/10201 2444/3856/10202 2625/4164/10203
+f 2625/4164/10203 2444/3856/10202 2626/4165/10204
+s 2491
+f 2444/3856/10205 2445/3859/10206 2626/4165/10207
+f 2626/4165/10207 2445/3859/10206 2716/4166/10208
+s 2492
+f 2536/3861/10209 2627/4167/10210 2445/3859/10211
+f 2445/3859/10211 2627/4167/10210 2716/4166/10212
+s 2493
+f 2524/4007/10213 2446/3862/10214 2628/4168/10215
+f 2628/4168/10215 2446/3862/10214 2625/4164/10216
+s 2494
+f 2539/4170/10217 2359/3705/10218 2544/4169/10219
+f 2544/4169/10219 2359/3705/10218 2629/4030/10220
+s 2495
+f 2360/4172/10221 2539/4170/10222 2540/4171/10223
+f 2540/4171/10223 2539/4170/10222 2718/4173/10224
+s 2496
+f 2361/3561/10225 2540/3869/10226 2541/3871/10227
+f 2541/3871/10227 2540/3869/10226 2719/4174/10228
+s 2497
+f 2447/3870/10229 2541/3871/10230 2630/4175/10231
+f 2630/4175/10231 2541/3871/10230 2720/4176/10232
+s 2498
+f 2542/3873/10233 2631/4177/10234 2448/3872/10235
+f 2448/3872/10235 2631/4177/10234 2722/4178/10236
+s 2499
+f 2544/4169/10237 2629/4030/10238 2365/3875/10239
+f 2365/3875/10239 2629/4030/10238 2545/4037/10240
+s 2500
+f 2451/3876/10241 2634/4038/10242 2450/3874/10243
+f 2450/3874/10243 2634/4038/10242 2546/4039/10244
+s 2501
+f 2368/3716/10245 2546/4039/10246 2635/4042/10247
+f 2635/4042/10247 2546/4039/10246 2724/4179/10248
+s 2502
+f 2547/4040/10249 2636/4180/10250 2453/4041/10251
+f 2453/4041/10251 2636/4180/10250 2725/4181/10252
+s 2503
+f 2548/3880/10253 2453/3879/10254 2637/4182/10255
+f 2637/4182/10255 2453/3879/10254 2725/4183/10256
+s 2504
+f 2548/3880/10257 2638/4184/10258 2454/3881/10259
+f 2454/3881/10259 2638/4184/10258 2640/4185/10260
+s 2505
+f 2549/3882/10261 2639/4186/10262 2455/3722/10263
+f 2455/3722/10263 2639/4186/10262 2642/4045/10264
+s 2506
+f 2369/3571/10265 2550/3883/10266 2549/3882/10267
+f 2549/3882/10267 2550/3883/10266 2639/4186/10268
+s 2507
+f 2370/3572/10269 2551/3884/10270 2550/3883/10271
+f 2550/3883/10271 2551/3884/10270 2726/4187/10272
+s 2508
+f 2454/3881/10273 2640/4185/10274 2551/3884/10275
+f 2551/3884/10275 2640/4185/10274 2726/4187/10276
+s 2509
+f 2456/3885/10277 2552/3888/10278 2641/4097/10279
+f 2641/4097/10279 2552/3888/10278 2727/4188/10280
+s 2510
+f 2371/3887/10281 2553/4189/10282 2552/3888/10283
+f 2552/3888/10283 2553/4189/10282 2728/4190/10284
+s 2511
+f 2458/4192/10285 2643/4193/10286 2457/4191/10287
+f 2457/4191/10287 2643/4193/10286 2731/4194/10288
+s 2512
+f 2555/4196/10289 2457/4191/10290 2644/4195/10291
+f 2644/4195/10291 2457/4191/10290 2731/4194/10292
+s 2513
+f 2558/4198/10293 2646/4199/10294 2459/4197/10295
+f 2459/4197/10295 2646/4199/10294 2737/4200/10296
+s 2514
+f 2559/4202/10297 2459/4197/10298 2648/4201/10299
+f 2648/4201/10299 2459/4197/10298 2737/4200/10300
+s 2515
+f 2561/4204/10301 2461/4205/10302 2649/4203/10303
+f 2649/4203/10303 2461/4205/10302 2650/4206/10304
+s 2516
+f 2461/3895/10305 2559/3894/10306 2650/4207/10307
+f 2650/4207/10307 2559/3894/10306 2648/4208/10308
+s 2517
+f 2562/4210/10309 2462/4211/10310 2651/4209/10311
+f 2651/4209/10311 2462/4211/10310 2652/4212/10312
+s 2518
+f 2462/4214/10313 2463/3899/10314 2652/4213/10315
+f 2652/4213/10315 2463/3899/10314 2564/3902/10316
+s 2519
+f 2555/3890/10317 2653/4215/10318 2465/4046/10319
+f 2465/4046/10319 2653/4215/10318 2654/4216/10320
+s 2520
+f 2465/4046/10321 2654/4216/10322 2466/4217/10323
+f 2466/4217/10323 2654/4216/10322 2745/4218/10324
+s 2521
+f 2466/4219/10325 2655/4220/10326 2467/4065/10327
+f 2467/4065/10327 2655/4220/10326 2657/4066/10328
+s 2522
+f 2566/4062/10329 2379/3734/10330 2656/4221/10331
+f 2656/4221/10331 2379/3734/10330 2567/4222/10332
+s 2523
+f 2566/4062/10333 2658/4223/10334 2468/3910/10335
+f 2468/3910/10335 2658/4223/10334 2659/4224/10336
+s 2524
+f 2468/3910/10337 2659/4224/10338 2568/3911/10339
+f 2568/3911/10339 2659/4224/10338 2749/4225/10340
+s 2525
+f 2476/3744/10341 2469/3913/10342 2579/4088/10343
+f 2579/4088/10343 2469/3913/10342 2751/4226/10344
+s 2526
+f 2470/4228/10345 2661/4229/10346 2569/4227/10347
+f 2569/4227/10347 2661/4229/10346 2752/4230/10348
+s 2527
+f 2570/3917/10349 2606/4231/10350 2471/3914/10351
+f 2471/3914/10351 2606/4231/10350 2408/4126/10352
+s 2528
+f 2472/3918/10353 2662/4233/10354 2573/4232/10355
+f 2573/4232/10355 2662/4233/10354 2756/4234/10356
+s 2529
+f 2574/3921/10357 2663/4235/10358 2472/3918/10359
+f 2472/3918/10359 2663/4235/10358 2662/4233/10360
+s 2530
+f 2574/3921/10361 2473/3923/10362 2663/4235/10363
+f 2663/4235/10363 2473/3923/10362 2758/4236/10364
+s 2531
+f 2474/4084/10365 2665/4087/10366 2575/4237/10367
+f 2575/4237/10367 2665/4087/10366 2759/4238/10368
+s 2532
+f 2475/4078/10369 2577/4239/10370 2664/4079/10371
+f 2664/4079/10371 2577/4239/10370 2761/4240/10372
+s 2533
+f 2386/3746/10373 2623/4026/10374 2580/4090/10375
+f 2580/4090/10375 2623/4026/10374 2764/4241/10376
+s 2534
+f 2478/3926/10377 2581/3927/10378 2669/4242/10379
+f 2669/4242/10379 2581/3927/10378 2765/4243/10380
+s 2535
+f 2388/3586/10381 2582/4244/10382 2581/3927/10383
+f 2581/3927/10383 2582/4244/10382 2765/4243/10384
+s 2536
+f 2479/3928/10385 2667/4093/10386 2583/3929/10387
+f 2583/3929/10387 2667/4093/10386 2766/4245/10388
+s 2537
+f 2584/3931/10389 2391/3757/10390 2670/4246/10391
+f 2670/4246/10391 2391/3757/10390 2585/4099/10392
+s 2538
+f 2588/3933/10393 2672/4247/10394 2481/3932/10395
+f 2481/3932/10395 2672/4247/10394 2671/4248/10396
+s 2539
+f 2589/4104/10397 2673/4249/10398 2482/4105/10399
+f 2482/4105/10399 2673/4249/10398 2674/4250/10400
+s 2540
+f 2482/3934/10401 2674/4251/10402 2588/3933/10403
+f 2588/3933/10403 2674/4251/10402 2672/4247/10404
+s 2541
+f 2590/4098/10405 2675/4252/10406 2397/3771/10407
+f 2397/3771/10407 2675/4252/10406 2591/3937/10408
+s 2542
+f 2484/3936/10409 2591/3937/10410 2676/4253/10411
+f 2676/4253/10411 2591/3937/10410 2769/4254/10412
+s 2543
+f 2404/3615/10413 2592/3938/10414 2601/3951/10415
+f 2601/3951/10415 2592/3938/10414 2770/4255/10416
+s 2544
+f 2398/3772/10417 2593/4107/10418 2592/3938/10419
+f 2592/3938/10419 2593/4107/10418 2771/4256/10420
+s 2545
+f 2485/3773/10421 2594/3940/10422 2677/4108/10423
+f 2677/4108/10423 2594/3940/10422 2773/4257/10424
+s 2546
+f 2594/3940/10425 2399/3939/10426 2678/4258/10427
+f 2678/4258/10427 2399/3939/10426 2595/3943/10428
+s 2547
+f 2595/3943/10429 2486/3942/10430 2679/4259/10431
+f 2679/4259/10431 2486/3942/10430 2680/4260/10432
+s 2548
+f 2596/3945/10433 2681/4261/10434 2487/3944/10435
+f 2487/3944/10435 2681/4261/10434 2778/4262/10436
+s 2549
+f 2400/3947/10437 2598/4112/10438 2597/4110/10439
+f 2597/4110/10439 2598/4112/10438 2779/4263/10440
+s 2550
+f 2488/3948/10441 2683/4264/10442 2596/3949/10443
+f 2596/3949/10443 2683/4264/10442 2681/4265/10444
+s 2551
+f 2402/3775/10445 2599/4266/10446 2489/3950/10447
+f 2489/3950/10447 2599/4266/10446 2684/4113/10448
+s 2552
+f 2490/3777/10449 2601/3951/10450 2685/4119/10451
+f 2685/4119/10451 2601/3951/10450 2783/4267/10452
+s 2553
+f 2492/3952/10453 2491/3778/10454 2687/4121/10455
+f 2687/4121/10455 2491/3778/10454 2686/4120/10456
+s 2554
+f 2494/3953/10457 2603/3954/10458 2688/4268/10459
+f 2688/4268/10459 2603/3954/10458 2784/4269/10460
+s 2555
+f 2495/4128/10461 2497/4127/10462 2604/3963/10463
+f 2604/3963/10463 2497/4127/10462 2605/4270/10464
+s 2556
+f 2498/3961/10465 2410/3786/10466 2605/4270/10467
+f 2605/4270/10467 2410/3786/10466 2604/3963/10468
+s 2557
+f 2419/3969/10469 2607/4131/10470 2610/3970/10471
+f 2610/3970/10471 2607/4131/10470 2608/4271/10472
+s 2558
+f 2500/3965/10473 2501/3964/10474 2607/4272/10475
+f 2607/4272/10475 2501/3964/10474 2608/4136/10476
+s 2559
+f 2422/3979/10477 2610/4273/10478 2609/3980/10479
+f 2609/3980/10479 2610/4273/10478 2608/4136/10480
+s 2560
+f 2508/3835/10481 2614/4139/10482 2535/3988/10483
+f 2535/3988/10483 2614/4139/10482 2715/4274/10484
+s 2561
+f 2511/3989/10485 2691/4275/10486 2510/3838/10487
+f 2510/3838/10487 2691/4275/10486 2690/4141/10488
+s 2562
+f 2517/3998/10489 2692/4276/10490 2511/3989/10491
+f 2511/3989/10491 2692/4276/10490 2691/4275/10492
+s 2563
+f 2509/3837/10493 2512/3990/10494 2689/4140/10495
+f 2689/4140/10495 2512/3990/10494 2693/4277/10496
+s 2564
+f 2512/3990/10497 2611/3991/10498 2693/4277/10499
+f 2693/4277/10499 2611/3991/10498 2786/4278/10500
+s 2565
+f 2518/3999/10501 2694/4279/10502 2513/3992/10503
+f 2513/3992/10503 2694/4279/10502 2695/4280/10504
+s 2566
+f 2513/3992/10505 2695/4280/10506 2514/3993/10507
+f 2514/3993/10507 2695/4280/10506 2696/4281/10508
+s 2567
+f 2514/3994/10509 2696/4282/10510 2515/3995/10511
+f 2515/3995/10511 2696/4282/10510 2697/4283/10512
+s 2568
+f 2515/3995/10513 2697/4283/10514 2516/3996/10515
+f 2516/3996/10515 2697/4283/10514 2698/4284/10516
+s 2569
+f 2516/3997/10517 2698/4285/10518 2517/3998/10519
+f 2517/3998/10519 2698/4285/10518 2692/4276/10520
+s 2570
+f 2613/4143/10521 2699/4286/10522 2518/4144/10523
+f 2518/4144/10523 2699/4286/10522 2694/4287/10524
+s 2571
+f 2520/4001/10525 2615/4147/10526 2522/4003/10527
+f 2522/4003/10527 2615/4147/10526 2702/4288/10528
+s 2572
+f 2615/4290/10529 2521/4153/10530 2701/4289/10531
+f 2701/4289/10531 2521/4153/10530 2618/4152/10532
+s 2573
+f 2522/4003/10533 2702/4288/10534 2523/4006/10535
+f 2523/4006/10535 2702/4288/10534 2703/4291/10536
+s 2574
+f 2523/4006/10537 2703/4291/10538 2532/3853/10539
+f 2532/3853/10539 2703/4291/10538 2709/4161/10540
+s 2575
+f 2616/4148/10541 2524/4007/10542 2704/4292/10543
+f 2704/4292/10543 2524/4007/10542 2628/4168/10544
+s 2576
+f 2526/4158/10545 2620/4157/10546 2707/4293/10547
+f 2707/4293/10547 2620/4157/10546 2793/4294/10548
+s 2577
+f 2526/4011/10549 2707/4295/10550 2619/4012/10551
+f 2619/4012/10551 2707/4295/10550 2744/4296/10552
+s 2578
+f 2528/3851/10553 2529/4019/10554 2708/4160/10555
+f 2708/4160/10555 2529/4019/10554 2709/4161/10556
+s 2579
+f 2621/4022/10557 2710/4297/10558 2531/4021/10559
+f 2531/4021/10559 2710/4297/10558 2795/4298/10560
+s 2580
+f 2622/4023/10561 2531/4021/10562 2711/4299/10563
+f 2711/4299/10563 2531/4021/10562 2795/4298/10564
+s 2581
+f 2533/4024/10565 2622/4023/10566 2712/4300/10567
+f 2712/4300/10567 2622/4023/10566 2711/4299/10568
+s 2582
+f 2527/4014/10569 2533/4024/10570 2620/4157/10571
+f 2620/4157/10571 2533/4024/10570 2712/4300/10572
+s 2583
+f 2623/4026/10573 2442/4025/10574 2713/4301/10575
+f 2713/4301/10575 2442/4025/10574 2624/4302/10576
+s 2584
+f 2535/3988/10577 2715/4274/10578 2536/3861/10579
+f 2536/3861/10579 2715/4274/10578 2627/4167/10580
+s 2585
+f 2537/3864/10581 2687/4121/10582 2538/4029/10583
+f 2538/4029/10583 2687/4121/10582 2717/4303/10584
+s 2586
+f 2538/4029/10585 2717/4303/10586 2629/4030/10587
+f 2629/4030/10587 2717/4303/10586 2545/4037/10588
+s 2587
+f 2544/4169/10589 2543/4304/10590 2539/4170/10591
+f 2539/4170/10591 2543/4304/10590 2718/4173/10592
+s 2588
+f 2630/4031/10593 2721/4305/10594 2542/3873/10595
+f 2542/3873/10595 2721/4305/10594 2631/4177/10596
+s 2589
+f 2448/4032/10597 2722/4306/10598 2632/4033/10599
+f 2632/4033/10599 2722/4306/10598 2805/4307/10600
+s 2590
+f 2449/3711/10601 2632/4033/10602 2633/4035/10603
+f 2633/4035/10603 2632/4033/10602 2806/4308/10604
+s 2591
+f 2543/4304/10605 2633/4309/10606 2718/4173/10607
+f 2718/4173/10607 2633/4309/10606 2807/4310/10608
+s 2592
+f 2634/4038/10609 2545/4037/10610 2723/4311/10611
+f 2723/4311/10611 2545/4037/10610 2717/4303/10612
+s 2593
+f 2546/4039/10613 2634/4038/10614 2724/4179/10615
+f 2724/4179/10615 2634/4038/10614 2784/4269/10616
+s 2594
+f 2547/4040/10617 2635/4042/10618 2602/4122/10619
+f 2602/4122/10619 2635/4042/10618 2603/3954/10620
+s 2595
+f 2636/4180/10621 2547/4040/10622 2600/4118/10623
+f 2600/4118/10623 2547/4040/10622 2602/4122/10624
+s 2596
+f 2548/3880/10625 2637/4182/10626 2638/4184/10627
+f 2638/4184/10627 2637/4182/10626 2809/4312/10628
+s 2597
+f 2553/4314/10629 2554/4315/10630 2729/4313/10631
+f 2729/4313/10631 2554/4315/10630 2815/4316/10632
+s 2598
+f 2642/4045/10633 2730/4317/10634 2554/4044/10635
+f 2554/4044/10635 2730/4317/10634 2815/4318/10636
+s 2599
+f 2458/4320/10637 2645/4321/10638 2643/4319/10639
+f 2643/4319/10639 2645/4321/10638 2817/4322/10640
+s 2600
+f 2644/4323/10641 2732/4324/10642 2555/3890/10643
+f 2555/3890/10643 2732/4324/10642 2653/4215/10644
+s 2601
+f 2561/4057/10645 2733/4325/10646 2556/4047/10647
+f 2556/4047/10647 2733/4325/10646 2734/4326/10648
+s 2602
+f 2556/4047/10649 2734/4326/10650 2557/4048/10651
+f 2557/4048/10651 2734/4326/10650 2735/4327/10652
+s 2603
+f 2557/4048/10653 2735/4327/10654 2645/4049/10655
+f 2645/4049/10655 2735/4327/10654 2820/4328/10656
+s 2604
+f 2646/4199/10657 2558/4198/10658 2736/4329/10659
+f 2736/4329/10659 2558/4198/10658 2822/4330/10660
+s 2605
+f 2647/4053/10661 2738/4331/10662 2558/4050/10663
+f 2558/4050/10663 2738/4331/10662 2822/4332/10664
+s 2606
+f 2563/4059/10665 2739/4333/10666 2560/4054/10667
+f 2560/4054/10667 2739/4333/10666 2740/4334/10668
+s 2607
+f 2560/4054/10669 2740/4334/10670 2647/4055/10671
+f 2647/4055/10671 2740/4334/10670 2738/4335/10672
+s 2608
+f 2649/4203/10673 2741/4336/10674 2561/4204/10675
+f 2561/4204/10675 2741/4336/10674 2733/4337/10676
+s 2609
+f 2651/4209/10677 2742/4338/10678 2562/4210/10679
+f 2562/4210/10679 2742/4338/10678 2828/4339/10680
+s 2610
+f 2563/4059/10681 2562/4058/10682 2739/4333/10683
+f 2739/4333/10683 2562/4058/10682 2828/4340/10684
+s 2611
+f 2652/4213/10685 2564/3902/10686 2743/4341/10687
+f 2743/4341/10687 2564/3902/10686 2565/4061/10688
+s 2612
+f 2580/4342/10689 2744/4343/10690 2565/4061/10691
+f 2565/4061/10691 2744/4343/10690 2743/4341/10692
+s 2613
+f 2466/4345/10693 2745/4346/10694 2655/4344/10695
+f 2655/4344/10695 2745/4346/10694 2834/4347/10696
+s 2614
+f 2656/4221/10697 2746/4348/10698 2566/4062/10699
+f 2566/4062/10699 2746/4348/10698 2658/4223/10700
+s 2615
+f 2567/4350/10701 2747/4351/10702 2656/4349/10703
+f 2656/4349/10703 2747/4351/10702 2835/4352/10704
+s 2616
+f 2657/4066/10705 2748/4353/10706 2567/4063/10707
+f 2567/4063/10707 2748/4353/10706 2747/4354/10708
+s 2617
+f 2660/4356/10709 2750/4357/10710 2469/4355/10711
+f 2469/4355/10711 2750/4357/10710 2751/4358/10712
+s 2618
+f 2568/3911/10713 2749/4225/10714 2660/4068/10715
+f 2660/4068/10715 2749/4225/10714 2838/4359/10716
+s 2619
+f 2570/3917/10717 2569/4070/10718 2606/4231/10719
+f 2606/4231/10719 2569/4070/10718 2785/4360/10720
+s 2620
+f 2573/4075/10721 2753/4361/10722 2571/4071/10723
+f 2571/4071/10723 2753/4361/10722 2754/4362/10724
+s 2621
+f 2571/4071/10725 2754/4362/10726 2572/4072/10727
+f 2572/4072/10727 2754/4362/10726 2755/4363/10728
+s 2622
+f 2572/4365/10729 2755/4366/10730 2661/4364/10731
+f 2661/4364/10731 2755/4366/10730 2840/4367/10732
+s 2623
+f 2664/4369/10733 2757/4370/10734 2473/4368/10735
+f 2473/4368/10735 2757/4370/10734 2758/4371/10736
+s 2624
+f 2575/4080/10737 2760/4372/10738 2576/4081/10739
+f 2576/4081/10739 2760/4372/10738 2666/4082/10740
+s 2625
+f 2666/4082/10741 2760/4372/10742 2577/4083/10743
+f 2577/4083/10743 2760/4372/10742 2761/4373/10744
+s 2626
+f 2578/4375/10745 2579/4376/10746 2762/4374/10747
+f 2762/4374/10747 2579/4376/10746 2839/4377/10748
+s 2627
+f 2578/4375/10749 2763/4379/10750 2665/4378/10751
+f 2665/4378/10751 2763/4379/10750 2844/4380/10752
+s 2628
+f 2477/4092/10753 2668/4381/10754 2667/4093/10755
+f 2667/4093/10755 2668/4381/10754 2846/4382/10756
+s 2629
+f 2478/3926/10757 2669/4242/10758 2668/4094/10759
+f 2668/4094/10759 2669/4242/10758 2847/4383/10760
+s 2630
+f 2641/4097/10761 2727/4188/10762 2582/4095/10763
+f 2582/4095/10763 2727/4188/10762 2849/4384/10764
+s 2631
+f 2583/3929/10765 2766/4245/10766 2590/4098/10767
+f 2590/4098/10767 2766/4245/10766 2675/4252/10768
+s 2632
+f 2584/4106/10769 2670/4385/10770 2589/4104/10771
+f 2589/4104/10771 2670/4385/10770 2673/4249/10772
+s 2633
+f 2585/4099/10773 2767/4386/10774 2670/4246/10775
+f 2670/4246/10775 2767/4386/10774 2850/4387/10776
+s 2634
+f 2585/4099/10777 2586/4100/10778 2767/4386/10779
+f 2767/4386/10779 2586/4100/10778 2851/4388/10780
+s 2635
+f 2587/4102/10781 2768/4389/10782 2586/4101/10783
+f 2586/4101/10783 2768/4389/10782 2851/4390/10784
+s 2636
+f 2587/4102/10785 2671/4103/10786 2768/4389/10787
+f 2768/4389/10787 2671/4103/10786 2852/4391/10788
+s 2637
+f 2591/3937/10789 2675/4252/10790 2769/4254/10791
+f 2769/4254/10791 2675/4252/10790 2857/4392/10792
+s 2638
+f 2593/4107/10793 2677/4108/10794 2772/4393/10795
+f 2772/4393/10795 2677/4108/10794 2773/4257/10796
+s 2639
+f 2678/4258/10797 2774/4394/10798 2594/3940/10799
+f 2594/3940/10799 2774/4394/10798 2773/4257/10800
+s 2640
+f 2678/4258/10801 2595/3943/10802 2775/4395/10803
+f 2775/4395/10803 2595/3943/10802 2860/4396/10804
+s 2641
+f 2679/4259/10805 2776/4397/10806 2595/3943/10807
+f 2595/3943/10807 2776/4397/10806 2862/4398/10808
+s 2642
+f 2680/4109/10809 2487/3944/10810 2777/4399/10811
+f 2777/4399/10811 2487/3944/10810 2778/4262/10812
+s 2643
+f 2682/4111/10813 2597/4110/10814 2780/4400/10815
+f 2780/4400/10815 2597/4110/10814 2867/4401/10816
+s 2644
+f 2682/4111/10817 2781/4402/10818 2488/3948/10819
+f 2488/3948/10819 2781/4402/10818 2683/4264/10820
+s 2645
+f 2598/4112/10821 2684/4113/10822 2782/4403/10823
+f 2782/4403/10823 2684/4113/10822 2599/4266/10824
+s 2646
+f 2600/4118/10825 2685/4119/10826 2636/4180/10827
+f 2636/4180/10827 2685/4119/10826 2808/4404/10828
+s 2647
+f 2494/3953/10829 2688/4268/10830 2686/4120/10831
+f 2686/4120/10831 2688/4268/10830 2723/4311/10832
+s 2648
+f 2606/4129/10833 2785/4405/10834 2612/4130/10835
+f 2612/4130/10835 2785/4405/10834 2613/4143/10836
+s 2649
+f 2519/3844/10837 2689/4140/10838 2700/4146/10839
+f 2700/4146/10839 2689/4140/10838 2871/4406/10840
+s 2650
+f 2611/3991/10841 2690/4141/10842 2786/4278/10843
+f 2786/4278/10843 2690/4141/10842 2873/4407/10844
+s 2651
+f 2699/4286/10845 2613/4143/10846 2787/4408/10847
+f 2787/4408/10847 2613/4143/10846 2785/4405/10848
+s 2652
+f 2614/4145/10849 2700/4146/10850 2715/4409/10851
+f 2715/4409/10851 2700/4146/10850 2800/4410/10852
+s 2653
+f 2701/4289/10853 2788/4411/10854 2615/4290/10855
+f 2615/4290/10855 2788/4411/10854 2702/4412/10856
+s 2654
+f 2617/4150/10857 2616/4148/10858 2789/4413/10859
+f 2789/4413/10859 2616/4148/10858 2704/4292/10860
+s 2655
+f 2618/4152/10861 2617/4150/10862 2790/4414/10863
+f 2790/4414/10863 2617/4150/10862 2789/4413/10864
+s 2656
+f 2701/4289/10865 2618/4152/10866 2791/4415/10867
+f 2791/4415/10867 2618/4152/10866 2790/4414/10868
+s 2657
+f 2534/3855/10869 2705/4154/10870 2714/4416/10871
+f 2714/4416/10871 2705/4154/10870 2885/4417/10872
+s 2658
+f 2525/3849/10873 2706/4156/10874 2705/4154/10875
+f 2705/4154/10875 2706/4156/10874 2885/4417/10876
+s 2659
+f 2706/4419/10877 2619/4012/10878 2792/4418/10879
+f 2792/4418/10879 2619/4012/10878 2744/4296/10880
+s 2660
+f 2708/4160/10881 2794/4420/10882 2621/4022/10883
+f 2621/4022/10883 2794/4420/10882 2710/4297/10884
+s 2661
+f 2623/4026/10885 2713/4301/10886 2764/4241/10887
+f 2764/4241/10887 2713/4301/10886 2796/4421/10888
+s 2662
+f 2713/4301/10889 2624/4302/10890 2796/4421/10891
+f 2796/4421/10891 2624/4302/10890 2714/4422/10892
+s 2663
+f 2628/4168/10893 2625/4164/10894 2797/4423/10895
+f 2797/4423/10895 2625/4164/10894 2798/4424/10896
+s 2664
+f 2625/4164/10897 2626/4165/10898 2798/4424/10899
+f 2798/4424/10899 2626/4165/10898 2799/4425/10900
+s 2665
+f 2626/4165/10901 2716/4166/10902 2799/4425/10903
+f 2799/4425/10903 2716/4166/10902 2893/4426/10904
+s 2666
+f 2715/4409/10905 2800/4410/10906 2627/4427/10907
+f 2627/4427/10907 2800/4410/10906 2801/4428/10908
+s 2667
+f 2627/4427/10909 2801/4428/10910 2716/4429/10911
+f 2716/4429/10911 2801/4428/10910 2893/4430/10912
+s 2668
+f 2704/4292/10913 2628/4168/10914 2802/4431/10915
+f 2802/4431/10915 2628/4168/10914 2797/4423/10916
+s 2669
+f 2540/4171/10917 2718/4173/10918 2719/4432/10919
+f 2719/4432/10919 2718/4173/10918 2807/4310/10920
+s 2670
+f 2541/3871/10921 2719/4174/10922 2720/4176/10923
+f 2720/4176/10923 2719/4174/10922 2894/4433/10924
+s 2671
+f 2720/4176/10925 2803/4434/10926 2630/4175/10927
+f 2630/4175/10927 2803/4434/10926 2721/4435/10928
+s 2672
+f 2631/4177/10929 2721/4305/10930 2804/4436/10931
+f 2804/4436/10931 2721/4305/10930 2897/4437/10932
+s 2673
+f 2631/4177/10933 2804/4436/10934 2722/4178/10935
+f 2722/4178/10935 2804/4436/10934 2898/4438/10936
+s 2674
+f 2634/4038/10937 2723/4311/10938 2784/4269/10939
+f 2784/4269/10939 2723/4311/10938 2688/4268/10940
+s 2675
+f 2635/4042/10941 2724/4179/10942 2603/3954/10943
+f 2603/3954/10943 2724/4179/10942 2784/4269/10944
+s 2676
+f 2636/4180/10945 2808/4404/10946 2725/4181/10947
+f 2725/4181/10947 2808/4404/10946 2900/4439/10948
+s 2677
+f 2637/4441/10949 2725/4181/10950 2810/4440/10951
+f 2810/4440/10951 2725/4181/10950 2900/4439/10952
+s 2678
+f 2638/4184/10953 2811/4442/10954 2640/4185/10955
+f 2640/4185/10955 2811/4442/10954 2814/4443/10956
+s 2679
+f 2550/3883/10957 2812/4444/10958 2639/4186/10959
+f 2639/4186/10959 2812/4444/10958 2901/4445/10960
+s 2680
+f 2642/4045/10961 2639/4186/10962 2813/4446/10963
+f 2813/4446/10963 2639/4186/10962 2901/4445/10964
+s 2681
+f 2550/3883/10965 2726/4187/10966 2812/4444/10967
+f 2812/4444/10967 2726/4187/10966 2902/4447/10968
+s 2682
+f 2640/4449/10969 2814/4450/10970 2726/4448/10971
+f 2726/4448/10971 2814/4450/10970 2902/4451/10972
+s 2683
+f 2552/3888/10973 2728/4190/10974 2727/4188/10975
+f 2727/4188/10975 2728/4190/10974 2903/4452/10976
+s 2684
+f 2553/4189/10977 2729/4453/10978 2728/4190/10979
+f 2728/4190/10979 2729/4453/10978 2904/4454/10980
+s 2685
+f 2642/4456/10981 2816/4457/10982 2730/4455/10983
+f 2730/4455/10983 2816/4457/10982 2906/4458/10984
+s 2686
+f 2731/4460/10985 2643/4461/10986 2818/4459/10987
+f 2818/4459/10987 2643/4461/10986 2910/4462/10988
+s off
+f 2732/4463/10989 2644/4464/10990 2819/4465/10991
+f 2819/4466/10992 2644/4195/10993 2731/4194/10994
+s 2687
+f 2736/4329/10995 2821/4467/10996 2646/4199/10997
+f 2646/4199/10997 2821/4467/10996 2823/4468/10998
+s 2688
+f 2646/4199/10999 2823/4468/11000 2737/4200/11001
+f 2737/4200/11001 2823/4468/11000 2829/4469/11002
+s 2689
+f 2650/4471/11003 2648/4201/11004 2824/4470/11005
+f 2824/4470/11005 2648/4201/11004 2825/4472/11006
+s 2690
+f 2648/4201/11007 2737/4200/11008 2825/4472/11009
+f 2825/4472/11009 2737/4200/11008 2915/4473/11010
+s 2691
+f 2649/4475/11011 2826/4476/11012 2741/4474/11013
+f 2741/4474/11013 2826/4476/11012 2911/4477/11014
+s 2692
+f 2650/4471/11015 2827/4478/11016 2649/4475/11017
+f 2649/4475/11017 2827/4478/11016 2826/4476/11018
+s 2693
+f 2651/4480/11019 2823/4468/11020 2742/4479/11021
+f 2742/4479/11021 2823/4468/11020 2821/4467/11022
+s 2694
+f 2652/4481/11023 2829/4469/11024 2651/4480/11025
+f 2651/4480/11025 2829/4469/11024 2823/4468/11026
+s 2695
+f 2652/4481/11027 2743/4483/11028 2830/4482/11029
+f 2830/4482/11029 2743/4483/11028 2887/4484/11030
+s 2696
+f 2580/4090/11031 2764/4241/11032 2744/4485/11033
+f 2744/4485/11033 2764/4241/11032 2792/4486/11034
+s 2697
+f 2732/4324/11035 2831/4487/11036 2653/4215/11037
+f 2653/4215/11037 2831/4487/11036 2832/4488/11038
+s 2698
+f 2653/4215/11039 2832/4488/11040 2654/4216/11041
+f 2654/4216/11041 2832/4488/11040 2833/4489/11042
+s 2699
+f 2654/4216/11043 2833/4489/11044 2745/4218/11045
+f 2745/4218/11045 2833/4489/11044 2918/4490/11046
+s 2700
+f 2657/4066/11047 2655/4220/11048 2748/4353/11049
+f 2748/4353/11049 2655/4220/11048 2920/4491/11050
+s 2701
+f 2656/4493/11051 2835/4494/11052 2746/4492/11053
+f 2746/4492/11053 2835/4494/11052 2921/4495/11054
+s 2702
+f 2658/4223/11055 2746/4348/11056 2659/4224/11057
+f 2659/4224/11057 2746/4348/11056 2836/4496/11058
+s 2703
+f 2659/4224/11059 2836/4496/11060 2749/4225/11061
+f 2749/4225/11061 2836/4496/11060 2838/4359/11062
+s 2704
+f 2750/4357/11063 2660/4356/11064 2837/4497/11065
+f 2837/4497/11065 2660/4356/11064 2838/4498/11066
+s 2705
+f 2579/4376/11067 2751/4358/11068 2839/4377/11069
+f 2839/4377/11069 2751/4358/11068 2926/4499/11070
+s 2706
+f 2569/4500/11071 2752/4501/11072 2785/4405/11073
+f 2785/4405/11073 2752/4501/11072 2927/4502/11074
+s 2707
+f 2661/4229/11075 2840/4503/11076 2752/4230/11077
+f 2752/4230/11077 2840/4503/11076 2928/4504/11078
+s 2708
+f 2573/4232/11079 2756/4234/11080 2753/4505/11081
+f 2753/4505/11081 2756/4234/11080 2929/4506/11082
+s 2709
+f 2662/4508/11083 2663/4509/11084 2841/4507/11085
+f 2841/4507/11085 2663/4509/11084 2843/4510/11086
+s 2710
+f 2662/4508/11087 2787/4408/11088 2756/4511/11089
+f 2756/4511/11089 2787/4408/11088 2931/4512/11090
+s 2711
+f 2757/4370/11091 2664/4369/11092 2842/4513/11093
+f 2842/4513/11093 2664/4369/11092 2761/4514/11094
+s 2712
+f 2663/4509/11095 2758/4371/11096 2843/4510/11097
+f 2843/4510/11097 2758/4371/11096 2933/4515/11098
+s 2713
+f 2575/4517/11099 2759/4518/11100 2760/4516/11101
+f 2760/4516/11101 2759/4518/11100 2932/4519/11102
+s 2714
+f 2665/4378/11103 2844/4380/11104 2759/4520/11105
+f 2759/4520/11105 2844/4380/11104 2932/4521/11106
+s 2715
+f 2762/4374/11107 2845/4522/11108 2578/4375/11109
+f 2578/4375/11109 2845/4522/11108 2763/4379/11110
+s 2716
+f 2669/4242/11111 2765/4243/11112 2848/4523/11113
+f 2848/4523/11113 2765/4243/11112 2936/4524/11114
+s 2717
+f 2582/4095/11115 2849/4384/11116 2765/4525/11117
+f 2765/4525/11117 2849/4384/11116 2937/4526/11118
+s 2718
+f 2667/4093/11119 2846/4382/11120 2766/4245/11121
+f 2766/4245/11121 2846/4382/11120 2938/4527/11122
+s 2719
+f 2672/4247/11123 2853/4528/11124 2671/4248/11125
+f 2671/4248/11125 2853/4528/11124 2852/4529/11126
+s 2720
+f 2674/4251/11127 2854/4530/11128 2672/4247/11129
+f 2672/4247/11129 2854/4530/11128 2853/4528/11130
+s 2721
+f 2673/4249/11131 2670/4385/11132 2855/4531/11133
+f 2855/4531/11133 2670/4385/11132 2850/4532/11134
+s 2722
+f 2674/4250/11135 2673/4249/11136 2854/4533/11137
+f 2854/4533/11137 2673/4249/11136 2855/4531/11138
+s 2723
+f 2766/4245/11139 2856/4534/11140 2675/4252/11141
+f 2675/4252/11141 2856/4534/11140 2857/4392/11142
+s 2724
+f 2601/3951/11143 2770/4255/11144 2783/4267/11145
+f 2783/4267/11145 2770/4255/11144 2944/4535/11146
+s 2725
+f 2592/4537/11147 2771/4538/11148 2770/4536/11149
+f 2770/4536/11149 2771/4538/11148 2858/4539/11150
+s 2726
+f 2771/4256/11151 2593/4107/11152 2858/4540/11153
+f 2858/4540/11153 2593/4107/11152 2772/4393/11154
+s 2727
+f 2774/4394/11155 2678/4258/11156 2859/4541/11157
+f 2859/4541/11157 2678/4258/11156 2775/4395/11158
+s 2728
+f 2776/4397/11159 2679/4259/11160 2861/4542/11161
+f 2861/4542/11161 2679/4259/11160 2863/4543/11162
+s 2729
+f 2679/4259/11163 2680/4260/11164 2863/4543/11165
+f 2863/4543/11165 2680/4260/11164 2777/4544/11166
+s 2730
+f 2683/4264/11167 2864/4545/11168 2681/4265/11169
+f 2681/4265/11169 2864/4545/11168 2865/4546/11170
+s 2731
+f 2681/4261/11171 2865/4547/11172 2778/4262/11173
+f 2778/4262/11173 2865/4547/11172 2951/4548/11174
+s 2732
+f 2779/4263/11175 2598/4112/11176 2866/4549/11177
+f 2866/4549/11177 2598/4112/11176 2782/4403/11178
+s 2733
+f 2597/4110/11179 2779/4263/11180 2867/4401/11181
+f 2867/4401/11181 2779/4263/11180 2866/4549/11182
+s 2734
+f 2682/4111/11183 2780/4400/11184 2868/4550/11185
+f 2868/4550/11185 2780/4400/11184 2952/4551/11186
+s 2735
+f 2781/4402/11187 2682/4111/11188 2869/4552/11189
+f 2869/4552/11189 2682/4111/11188 2868/4550/11190
+s 2736
+f 2781/4402/11191 2870/4553/11192 2683/4264/11193
+f 2683/4264/11193 2870/4553/11192 2864/4545/11194
+s 2737
+f 2685/4119/11195 2783/4267/11196 2808/4404/11197
+f 2808/4404/11197 2783/4267/11196 2956/4554/11198
+s 2738
+f 2687/4121/11199 2686/4120/11200 2717/4303/11201
+f 2717/4303/11201 2686/4120/11200 2723/4311/11202
+s 2739
+f 2691/4275/11203 2872/4555/11204 2690/4141/11205
+f 2690/4141/11205 2872/4555/11204 2873/4407/11206
+s 2740
+f 2692/4276/11207 2874/4556/11208 2691/4275/11209
+f 2691/4275/11209 2874/4556/11208 2872/4555/11210
+s 2741
+f 2698/4285/11211 2875/4557/11212 2692/4276/11213
+f 2692/4276/11213 2875/4557/11212 2874/4556/11214
+s 2742
+f 2689/4140/11215 2693/4277/11216 2871/4406/11217
+f 2871/4406/11217 2693/4277/11216 2876/4558/11218
+s 2743
+f 2693/4277/11219 2786/4278/11220 2876/4558/11221
+f 2876/4558/11221 2786/4278/11220 2957/4559/11222
+s 2744
+f 2699/4286/11223 2841/4507/11224 2694/4287/11225
+f 2694/4287/11225 2841/4507/11224 2877/4560/11226
+s 2745
+f 2694/4279/11227 2877/4561/11228 2695/4280/11229
+f 2695/4280/11229 2877/4561/11228 2878/4562/11230
+s 2746
+f 2695/4280/11231 2878/4562/11232 2696/4281/11233
+f 2696/4281/11233 2878/4562/11232 2879/4563/11234
+s 2747
+f 2696/4282/11235 2879/4564/11236 2697/4283/11237
+f 2697/4283/11237 2879/4564/11236 2880/4565/11238
+s 2748
+f 2697/4283/11239 2880/4565/11240 2698/4284/11241
+f 2698/4284/11241 2880/4565/11240 2875/4566/11242
+s 2749
+f 2787/4408/11243 2662/4508/11244 2699/4286/11245
+f 2699/4286/11245 2662/4508/11244 2841/4507/11246
+s 2750
+f 2788/4411/11247 2701/4289/11248 2881/4567/11249
+f 2881/4567/11249 2701/4289/11248 2791/4415/11250
+s 2751
+f 2702/4569/11251 2882/4570/11252 2703/4568/11253
+f 2703/4568/11253 2882/4570/11252 2959/4571/11254
+s 2752
+f 2709/4573/11255 2703/4568/11256 2883/4572/11257
+f 2883/4572/11257 2703/4568/11256 2959/4571/11258
+s 2753
+f 2789/4413/11259 2704/4292/11260 2884/4574/11261
+f 2884/4574/11261 2704/4292/11260 2802/4431/11262
+s 2754
+f 2792/4418/11263 2886/4575/11264 2706/4419/11265
+f 2706/4419/11265 2886/4575/11264 2885/4576/11266
+s 2755
+f 2620/4157/11267 2712/4300/11268 2793/4294/11269
+f 2793/4294/11269 2712/4300/11268 2892/4577/11270
+s 2756
+f 2707/4293/11271 2793/4294/11272 2887/4578/11273
+f 2887/4578/11273 2793/4294/11272 2830/4579/11274
+s 2757
+f 2744/4296/11275 2707/4295/11276 2743/4580/11277
+f 2743/4580/11277 2707/4295/11276 2887/4581/11278
+s 2758
+f 2794/4420/11279 2708/4160/11280 2888/4582/11281
+f 2888/4582/11281 2708/4160/11280 2709/4161/11282
+s 2759
+f 2794/4420/11283 2889/4583/11284 2710/4297/11285
+f 2710/4297/11285 2889/4583/11284 2966/4584/11286
+s 2760
+f 2795/4298/11287 2710/4297/11288 2890/4585/11289
+f 2890/4585/11289 2710/4297/11288 2966/4584/11290
+s 2761
+f 2711/4299/11291 2795/4298/11292 2891/4586/11293
+f 2891/4586/11293 2795/4298/11292 2890/4585/11294
+s 2762
+f 2712/4300/11295 2711/4299/11296 2892/4577/11297
+f 2892/4577/11297 2711/4299/11296 2891/4586/11298
+s 2763
+f 2714/4422/11299 2885/4587/11300 2796/4421/11301
+f 2796/4421/11301 2885/4587/11300 2886/4588/11302
+s 2764
+f 2803/4434/11303 2720/4176/11304 2895/4589/11305
+f 2895/4589/11305 2720/4176/11304 2894/4433/11306
+s 2765
+f 2803/4591/11307 2896/4592/11308 2721/4590/11309
+f 2721/4590/11309 2896/4592/11308 2897/4593/11310
+s 2766
+f 2632/4033/11311 2805/4307/11312 2806/4308/11313
+f 2806/4308/11313 2805/4307/11312 2976/4594/11314
+s 2767
+f 2805/4307/11315 2722/4306/11316 2899/4595/11317
+f 2899/4595/11317 2722/4306/11316 2898/4596/11318
+s 2768
+f 2633/4309/11319 2806/4597/11320 2807/4310/11321
+f 2807/4310/11321 2806/4597/11320 2978/4598/11322
+s 2769
+f 2638/4184/11323 2809/4312/11324 2811/4442/11325
+f 2811/4442/11325 2809/4312/11324 2979/4599/11326
+s 2770
+f 2637/4441/11327 2810/4440/11328 2809/4600/11329
+f 2809/4600/11329 2810/4440/11328 2980/4601/11330
+s 2771
+f 2642/4045/11331 2813/4446/11332 2816/4602/11333
+f 2816/4602/11333 2813/4446/11332 2983/4603/11334
+s 2772
+f 2729/4313/11335 2815/4316/11336 2905/4604/11337
+f 2905/4604/11337 2815/4316/11336 2907/4605/11338
+s 2773
+f 2815/4607/11339 2730/4455/11340 2907/4606/11341
+f 2907/4606/11341 2730/4455/11340 2952/4551/11342
+s 2774
+f 2817/4608/11343 2908/4609/11344 2643/4461/11345
+f 2643/4461/11345 2908/4609/11344 2910/4462/11346
+s 2775
+f 2645/4321/11347 2820/4610/11348 2817/4322/11349
+f 2817/4322/11349 2820/4610/11348 2988/4611/11350
+s 2776
+f 2818/4612/11351 2909/4613/11352 2731/4194/11353
+f 2731/4194/11353 2909/4613/11352 2819/4466/11354
+s 2777
+f 2741/4336/11355 2911/4614/11356 2733/4337/11357
+f 2733/4337/11357 2911/4614/11356 2912/4615/11358
+s 2778
+f 2734/4326/11359 2733/4325/11360 2735/4327/11361
+f 2735/4327/11361 2733/4325/11360 2912/4616/11362
+s 2779
+f 2735/4327/11363 2912/4616/11364 2820/4328/11365
+f 2820/4328/11365 2912/4616/11364 2988/4617/11366
+s 2780
+f 2821/4467/11367 2736/4329/11368 2913/4618/11369
+f 2913/4618/11369 2736/4329/11368 2822/4330/11370
+s 2781
+f 2740/4334/11371 2913/4619/11372 2738/4335/11373
+f 2738/4335/11373 2913/4619/11372 2822/4620/11374
+s 2782
+f 2824/4470/11375 2914/4621/11376 2650/4471/11377
+f 2650/4471/11377 2914/4621/11376 2827/4478/11378
+s 2783
+f 2739/4333/11379 2828/4340/11380 2740/4334/11381
+f 2740/4334/11381 2828/4340/11380 2913/4619/11382
+s 2784
+f 2742/4338/11383 2821/4622/11384 2828/4339/11385
+f 2828/4339/11385 2821/4622/11384 2913/4623/11386
+s 2785
+f 2829/4469/11387 2652/4481/11388 2916/4624/11389
+f 2916/4624/11389 2652/4481/11388 2830/4482/11390
+s 2786
+f 2732/4463/11391 2917/4626/11392 2831/4625/11393
+f 2831/4625/11393 2917/4626/11392 2992/4627/11394
+s 2787
+f 2834/4629/11395 2919/4630/11396 2655/4628/11397
+f 2655/4628/11397 2919/4630/11396 2920/4631/11398
+s 2788
+f 2745/4346/11399 2918/4632/11400 2834/4347/11401
+f 2834/4347/11401 2918/4632/11400 2995/4633/11402
+s 2789
+f 2747/4635/11403 2748/4636/11404 2922/4634/11405
+f 2922/4634/11405 2748/4636/11404 2996/4637/11406
+s 2790
+f 2747/4635/11407 2923/4638/11408 2835/4494/11409
+f 2835/4494/11409 2923/4638/11408 2925/4639/11410
+s 2791
+f 2837/4497/11411 2924/4640/11412 2750/4357/11413
+f 2750/4357/11413 2924/4640/11412 2925/4639/11414
+s 2792
+f 2750/4357/11415 2925/4639/11416 2751/4358/11417
+f 2751/4358/11417 2925/4639/11416 2923/4638/11418
+s 2793
+f 2753/4361/11419 2930/4641/11420 2754/4362/11421
+f 2754/4362/11421 2930/4641/11420 2755/4363/11422
+s 2794
+f 2755/4643/11423 2930/4644/11424 2840/4642/11425
+f 2840/4642/11425 2930/4644/11424 2928/4645/11426
+s 2795
+f 2842/4513/11427 2932/4521/11428 2757/4370/11429
+f 2757/4370/11429 2932/4521/11428 2844/4380/11430
+s 2796
+f 2757/4370/11431 2844/4380/11432 2758/4371/11433
+f 2758/4371/11433 2844/4380/11432 2763/4379/11434
+s 2797
+f 2761/4514/11435 2760/4646/11436 2842/4513/11437
+f 2842/4513/11437 2760/4646/11436 2932/4521/11438
+s 2798
+f 2845/4648/11439 2762/4649/11440 2934/4647/11441
+f 2934/4647/11441 2762/4649/11440 2935/4650/11442
+s 2799
+f 2762/4649/11443 2839/4651/11444 2935/4650/11445
+f 2935/4650/11445 2839/4651/11444 2998/4652/11446
+s 2800
+f 2845/4522/11447 2933/4515/11448 2763/4379/11449
+f 2763/4379/11449 2933/4515/11448 2758/4371/11450
+s 2801
+f 2668/4381/11451 2847/4653/11452 2846/4382/11453
+f 2846/4382/11453 2847/4653/11452 3002/4654/11454
+s 2802
+f 2669/4242/11455 2848/4523/11456 2847/4383/11457
+f 2847/4383/11457 2848/4523/11456 3003/4655/11458
+s 2803
+f 2727/4188/11459 2903/4452/11460 2849/4384/11461
+f 2849/4384/11461 2903/4452/11460 3005/4656/11462
+s 2804
+f 2767/4386/11463 2939/4657/11464 2850/4387/11465
+f 2850/4387/11465 2939/4657/11464 3007/4658/11466
+s 2805
+f 2851/4388/11467 2940/4659/11468 2767/4386/11469
+f 2767/4386/11469 2940/4659/11468 2939/4657/11470
+s 2806
+f 2851/4390/11471 2768/4389/11472 2941/4660/11473
+f 2941/4660/11473 2768/4389/11472 2942/4661/11474
+s 2807
+f 2768/4389/11475 2852/4391/11476 2942/4661/11477
+f 2942/4661/11477 2852/4391/11476 3009/4662/11478
+s 2808
+f 2766/4245/11479 2938/4527/11480 2856/4534/11481
+f 2856/4534/11481 2938/4527/11480 3012/4663/11482
+s 2809
+f 2857/4392/11483 2943/4664/11484 2769/4254/11485
+f 2769/4254/11485 2943/4664/11484 2782/4403/11486
+s 2810
+f 2858/4540/11487 2772/4393/11488 2945/4665/11489
+f 2945/4665/11489 2772/4393/11488 2859/4541/11490
+s 2811
+f 2773/4257/11491 2774/4394/11492 2772/4393/11493
+f 2772/4393/11493 2774/4394/11492 2859/4541/11494
+s 2812
+f 2859/4541/11495 2775/4395/11496 2945/4665/11497
+f 2945/4665/11497 2775/4395/11496 2946/4666/11498
+s 2813
+f 2775/4395/11499 2860/4396/11500 2946/4666/11501
+f 2946/4666/11501 2860/4396/11500 3014/4667/11502
+s 2814
+f 2595/3943/11503 2862/4398/11504 2860/4396/11505
+f 2860/4396/11505 2862/4398/11504 3015/4668/11506
+s 2815
+f 2861/4542/11507 2947/4669/11508 2776/4397/11509
+f 2776/4397/11509 2947/4669/11508 2948/4670/11510
+s 2816
+f 2776/4397/11511 2948/4670/11512 2862/4398/11513
+f 2862/4398/11513 2948/4670/11512 2982/4671/11514
+s 2817
+f 2863/4543/11515 2777/4544/11516 2949/4672/11517
+f 2949/4672/11517 2777/4544/11516 2950/4673/11518
+s 2818
+f 2777/4399/11519 2778/4262/11520 2950/4674/11521
+f 2950/4674/11521 2778/4262/11520 2951/4548/11522
+s 2819
+f 2780/4400/11523 2867/4401/11524 2953/4675/11525
+f 2953/4675/11525 2867/4401/11524 3021/4676/11526
+s 2820
+f 2869/4552/11527 2954/4677/11528 2781/4402/11529
+f 2781/4402/11529 2954/4677/11528 2870/4553/11530
+s 2821
+f 2866/4549/11531 2782/4403/11532 2955/4678/11533
+f 2955/4678/11533 2782/4403/11532 2943/4664/11534
+s 2822
+f 2700/4146/11535 2871/4406/11536 2800/4410/11537
+f 2800/4410/11537 2871/4406/11536 2971/4679/11538
+s 2823
+f 2786/4278/11539 2873/4407/11540 2957/4559/11541
+f 2957/4559/11541 2873/4407/11540 3027/4680/11542
+s 2824
+f 2787/4408/11543 2785/4405/11544 2931/4512/11545
+f 2931/4512/11545 2785/4405/11544 2927/4502/11546
+s 2825
+f 2702/4412/11547 2788/4411/11548 2882/4681/11549
+f 2882/4681/11549 2788/4411/11548 2958/4682/11550
+s 2826
+f 2788/4411/11551 2881/4567/11552 2958/4682/11553
+f 2958/4682/11553 2881/4567/11552 3033/4683/11554
+s 2827
+f 2883/4572/11555 2960/4684/11556 2709/4573/11557
+f 2709/4573/11557 2960/4684/11556 3037/4685/11558
+s 2828
+f 2790/4414/11559 2789/4413/11560 2961/4686/11561
+f 2961/4686/11561 2789/4413/11560 2884/4574/11562
+s 2829
+f 2791/4415/11563 2790/4414/11564 2962/4687/11565
+f 2962/4687/11565 2790/4414/11564 2961/4686/11566
+s 2830
+f 2881/4567/11567 2791/4415/11568 2963/4688/11569
+f 2963/4688/11569 2791/4415/11568 2962/4687/11570
+s 2831
+f 2792/4486/11571 2764/4241/11572 2886/4588/11573
+f 2886/4588/11573 2764/4241/11572 2796/4421/11574
+s 2832
+f 2888/4582/11575 2964/4689/11576 2794/4420/11577
+f 2794/4420/11577 2964/4689/11576 2889/4583/11578
+s 2833
+f 2709/4161/11579 2965/4690/11580 2888/4582/11581
+f 2888/4582/11581 2965/4690/11580 3039/4691/11582
+s 2834
+f 2802/4693/11583 2797/4694/11584 2967/4692/11585
+f 2967/4692/11585 2797/4694/11584 2968/4695/11586
+s 2835
+f 2797/4694/11587 2798/4696/11588 2968/4695/11589
+f 2968/4695/11589 2798/4696/11588 2969/4697/11590
+s 2836
+f 2798/4696/11591 2799/4698/11592 2969/4697/11593
+f 2969/4697/11593 2799/4698/11592 3041/4699/11594
+s 2837
+f 2893/4430/11595 2970/4700/11596 2799/4698/11597
+f 2799/4698/11597 2970/4700/11596 3041/4699/11598
+s 2838
+f 2800/4410/11599 2971/4679/11600 2801/4428/11601
+f 2801/4428/11601 2971/4679/11600 2972/4701/11602
+s 2839
+f 2801/4428/11603 2972/4701/11604 2893/4430/11605
+f 2893/4430/11605 2972/4701/11604 2970/4700/11606
+s 2840
+f 2884/4703/11607 2802/4693/11608 2973/4702/11609
+f 2973/4702/11609 2802/4693/11608 2967/4692/11610
+s 2841
+f 2719/4432/11611 2807/4310/11612 2894/4704/11613
+f 2894/4704/11613 2807/4310/11612 2978/4598/11614
+s 2842
+f 2803/4591/11615 2895/4705/11616 2896/4592/11617
+f 2896/4592/11617 2895/4705/11616 3042/4706/11618
+s 2843
+f 2897/4437/11619 2974/4707/11620 2804/4436/11621
+f 2804/4436/11621 2974/4707/11620 2975/4708/11622
+s 2844
+f 2804/4436/11623 2975/4708/11624 2898/4438/11625
+f 2898/4438/11625 2975/4708/11624 3046/4709/11626
+s 2845
+f 2899/4595/11627 2977/4710/11628 2805/4307/11629
+f 2805/4307/11629 2977/4710/11628 2976/4594/11630
+s 2846
+f 2808/4404/11631 2956/4554/11632 2900/4439/11633
+f 2900/4439/11633 2956/4554/11632 3049/4711/11634
+s 2847
+f 2810/4440/11635 2900/4439/11636 2980/4601/11637
+f 2980/4601/11637 2900/4439/11636 3049/4711/11638
+s 2848
+f 2811/4442/11639 2981/4712/11640 2814/4443/11641
+f 2814/4443/11641 2981/4712/11640 2984/4713/11642
+s 2849
+f 2812/4444/11643 2982/4714/11644 2901/4445/11645
+f 2901/4445/11645 2982/4714/11644 2813/4446/11646
+s 2850
+f 2812/4716/11647 2902/4451/11648 2982/4715/11649
+f 2982/4715/11649 2902/4451/11648 3050/4717/11650
+s 2851
+f 2814/4450/11651 2984/4718/11652 2902/4451/11653
+f 2902/4451/11653 2984/4718/11652 3051/4719/11654
+s 2852
+f 2728/4721/11655 2904/4722/11656 2903/4720/11657
+f 2903/4720/11657 2904/4722/11656 3005/4723/11658
+s 2853
+f 2904/4722/11659 2729/4725/11660 2985/4724/11661
+f 2985/4724/11661 2729/4725/11660 2905/4726/11662
+s 2854
+f 2730/4455/11663 2906/4458/11664 2952/4551/11665
+f 2952/4551/11665 2906/4458/11664 2868/4550/11666
+s 2855
+f 2816/4602/11667 2986/4728/11668 2906/4727/11669
+f 2906/4727/11669 2986/4728/11668 3022/4729/11670
+s 2856
+f 2908/4609/11671 2817/4608/11672 2987/4730/11673
+f 2987/4730/11673 2817/4608/11672 2988/4731/11674
+s 2857
+f 2909/4733/11675 2818/4459/11676 2989/4732/11677
+f 2989/4732/11677 2818/4459/11676 2990/4734/11678
+s 2858
+f 2818/4459/11679 2910/4462/11680 2990/4734/11681
+f 2990/4734/11681 2910/4462/11680 2991/4735/11682
+s 2859
+f 2819/4465/11683 2909/4736/11684 2732/4463/11685
+f 2732/4463/11685 2909/4736/11684 2917/4626/11686
+s 2860
+f 2737/4200/11687 2829/4469/11688 2915/4473/11689
+f 2915/4473/11689 2829/4469/11688 2916/4624/11690
+s 2861
+f 2824/4738/11691 2966/4584/11692 2914/4737/11693
+f 2914/4737/11693 2966/4584/11692 3040/4739/11694
+s 2862
+f 2824/4738/11695 2825/4740/11696 2966/4584/11697
+f 2966/4584/11697 2825/4740/11696 2890/4585/11698
+s 2863
+f 2825/4740/11699 2915/4741/11700 2890/4585/11701
+f 2890/4585/11701 2915/4741/11700 2891/4586/11702
+s 2864
+f 2827/4478/11703 2910/4462/11704 2826/4476/11705
+f 2826/4476/11705 2910/4462/11704 2908/4609/11706
+s 2865
+f 2826/4476/11707 2908/4609/11708 2911/4477/11709
+f 2911/4477/11709 2908/4609/11708 2987/4730/11710
+s 2866
+f 2914/4621/11711 2991/4735/11712 2827/4478/11713
+f 2827/4478/11713 2991/4735/11712 2910/4462/11714
+s 2867
+f 2916/4742/11715 2830/4579/11716 2892/4577/11717
+f 2892/4577/11717 2830/4579/11716 2793/4294/11718
+s 2868
+f 2832/4488/11719 2831/4487/11720 2833/4489/11721
+f 2833/4489/11721 2831/4487/11720 2993/4743/11722
+s 2869
+f 2833/4489/11723 2993/4743/11724 2918/4490/11725
+f 2918/4490/11725 2993/4743/11724 2995/4744/11726
+s 2870
+f 2919/4630/11727 2834/4629/11728 2994/4745/11729
+f 2994/4745/11729 2834/4629/11728 2995/4746/11730
+s 2871
+f 2748/4636/11731 2920/4631/11732 2996/4637/11733
+f 2996/4637/11733 2920/4631/11732 3057/4747/11734
+s 2872
+f 2746/4492/11735 2921/4495/11736 2836/4748/11737
+f 2836/4748/11737 2921/4495/11736 2924/4640/11738
+s 2873
+f 2835/4494/11739 2925/4639/11740 2921/4495/11741
+f 2921/4495/11741 2925/4639/11740 2924/4640/11742
+s 2874
+f 2922/4634/11743 2997/4749/11744 2747/4635/11745
+f 2747/4635/11745 2997/4749/11744 2923/4638/11746
+s 2875
+f 2838/4498/11747 2836/4748/11748 2837/4497/11749
+f 2837/4497/11749 2836/4748/11748 2924/4640/11750
+s 2876
+f 2839/4651/11751 2926/4750/11752 2998/4652/11753
+f 2998/4652/11753 2926/4750/11752 3060/4751/11754
+s 2877
+f 2751/4358/11755 2923/4638/11756 2926/4499/11757
+f 2926/4499/11757 2923/4638/11756 2997/4749/11758
+s 2878
+f 2927/4502/11759 2752/4501/11760 2999/4752/11761
+f 2999/4752/11761 2752/4501/11760 2928/4753/11762
+s 2879
+f 2753/4505/11763 2929/4506/11764 2930/4754/11765
+f 2930/4754/11765 2929/4506/11764 3061/4755/11766
+s 2880
+f 2756/4511/11767 2931/4512/11768 2929/4756/11769
+f 2929/4756/11769 2931/4512/11768 3061/4757/11770
+s 2881
+f 2841/4507/11771 2843/4510/11772 2877/4560/11773
+f 2877/4560/11773 2843/4510/11772 3000/4758/11774
+s 2882
+f 2843/4760/11775 2933/4761/11776 3000/4759/11777
+f 3000/4759/11777 2933/4761/11776 3001/4762/11778
+s 2883
+f 2934/4647/11779 3001/4762/11780 2845/4648/11781
+f 2845/4648/11781 3001/4762/11780 2933/4761/11782
+s 2884
+f 2936/4764/11783 3004/4765/11784 2848/4763/11785
+f 2848/4763/11785 3004/4765/11784 3066/4766/11786
+s 2885
+f 2765/4525/11787 2937/4526/11788 2936/4767/11789
+f 2936/4767/11789 2937/4526/11788 3067/4768/11790
+s 2886
+f 2849/4384/11791 3005/4656/11792 2937/4526/11793
+f 2937/4526/11793 3005/4656/11792 3068/4769/11794
+s 2887
+f 2846/4382/11795 3002/4654/11796 2938/4527/11797
+f 2938/4527/11797 3002/4654/11796 3052/4770/11798
+s 2888
+f 2855/4531/11799 2850/4532/11800 3006/4771/11801
+f 3006/4771/11801 2850/4532/11800 3007/4772/11802
+s 2889
+f 2851/4388/11803 3008/4773/11804 2940/4659/11805
+f 2940/4659/11805 3008/4773/11804 3071/4774/11806
+s 2890
+f 2851/4390/11807 2941/4660/11808 3008/4775/11809
+f 3008/4775/11809 2941/4660/11808 3072/4776/11810
+s 2891
+f 2852/4529/11811 2853/4528/11812 3010/4777/11813
+f 3010/4777/11813 2853/4528/11812 3076/4778/11814
+s 2892
+f 2853/4528/11815 2854/4530/11816 3076/4778/11817
+f 3076/4778/11817 2854/4530/11816 3011/4779/11818
+s 2893
+f 2854/4533/11819 2855/4531/11820 3011/4780/11821
+f 3011/4780/11821 2855/4531/11820 3006/4771/11822
+s 2894
+f 2856/4782/11823 3013/4783/11824 2857/4781/11825
+f 2857/4781/11825 3013/4783/11824 2943/4784/11826
+s 2895
+f 2783/4267/11827 2944/4535/11828 2956/4554/11829
+f 2956/4554/11829 2944/4535/11828 3078/4785/11830
+s 2896
+f 2770/4536/11831 2858/4539/11832 2944/4786/11833
+f 2944/4786/11833 2858/4539/11832 2945/4787/11834
+s 2897
+f 2947/4669/11835 2861/4542/11836 3016/4788/11837
+f 3016/4788/11837 2861/4542/11836 3017/4789/11838
+s 2898
+f 2861/4542/11839 2863/4543/11840 3017/4789/11841
+f 3017/4789/11841 2863/4543/11840 2949/4672/11842
+s 2899
+f 2870/4553/11843 3018/4790/11844 2864/4545/11845
+f 2864/4545/11845 3018/4790/11844 3019/4791/11846
+s 2900
+f 2864/4545/11847 3019/4791/11848 2865/4546/11849
+f 2865/4546/11849 3019/4791/11848 3020/4792/11850
+s 2901
+f 2865/4547/11851 3020/4793/11852 2951/4548/11853
+f 2951/4548/11853 3020/4793/11852 3084/4794/11854
+s 2902
+f 2867/4401/11855 2866/4549/11856 3021/4676/11857
+f 3021/4676/11857 2866/4549/11856 2955/4678/11858
+s 2903
+f 2780/4400/11859 2953/4675/11860 2952/4551/11861
+f 2952/4551/11861 2953/4675/11860 2907/4606/11862
+s 2904
+f 2869/4552/11863 2868/4550/11864 3022/4795/11865
+f 3022/4795/11865 2868/4550/11864 2906/4458/11866
+s 2905
+f 2954/4677/11867 2869/4552/11868 3023/4796/11869
+f 3023/4796/11869 2869/4552/11868 3022/4795/11870
+s 2906
+f 2954/4677/11871 3024/4797/11872 2870/4553/11873
+f 2870/4553/11873 3024/4797/11872 3018/4790/11874
+s 2907
+f 2874/4556/11875 3025/4798/11876 2872/4555/11877
+f 2872/4555/11877 3025/4798/11876 3026/4799/11878
+s 2908
+f 2872/4555/11879 3026/4799/11880 2873/4407/11881
+f 2873/4407/11881 3026/4799/11880 3027/4680/11882
+s 2909
+f 2875/4557/11883 3028/4800/11884 2874/4556/11885
+f 2874/4556/11885 3028/4800/11884 3025/4798/11886
+s 2910
+f 2880/4565/11887 3029/4801/11888 2875/4566/11889
+f 2875/4566/11889 3029/4801/11888 3028/4802/11890
+s 2911
+f 2871/4406/11891 2876/4558/11892 2971/4679/11893
+f 2971/4679/11893 2876/4558/11892 3030/4803/11894
+s 2912
+f 2876/4558/11895 2957/4559/11896 3030/4803/11897
+f 3030/4803/11897 2957/4559/11896 3086/4804/11898
+s 2913
+f 2878/4562/11899 2877/4561/11900 3031/4805/11901
+f 3031/4805/11901 2877/4561/11900 3000/4759/11902
+s 2914
+f 2879/4563/11903 2878/4562/11904 3032/4806/11905
+f 3032/4806/11905 2878/4562/11904 3031/4805/11906
+s 2915
+f 2879/4564/11907 3032/4807/11908 2880/4565/11909
+f 2880/4565/11909 3032/4807/11908 3029/4801/11910
+s 2916
+f 2959/4571/11911 2882/4570/11912 3034/4808/11913
+f 3034/4808/11913 2882/4570/11912 3087/4809/11914
+s 2917
+f 2883/4572/11915 3035/4810/11916 2960/4684/11917
+f 2960/4684/11917 3035/4810/11916 3036/4811/11918
+s 2918
+f 3034/4808/11919 3035/4810/11920 2959/4571/11921
+f 2959/4571/11921 3035/4810/11920 2883/4572/11922
+s 2919
+f 2881/4567/11923 2963/4688/11924 3033/4683/11925
+f 3033/4683/11925 2963/4688/11924 3095/4812/11926
+s 2920
+f 2961/4814/11927 2884/4703/11928 3038/4813/11929
+f 3038/4813/11929 2884/4703/11928 2973/4702/11930
+s 2921
+f 2889/4583/11931 2964/4689/11932 3039/4691/11933
+f 3039/4691/11933 2964/4689/11932 2888/4582/11934
+s 2922
+f 2709/4161/11935 3037/4815/11936 2965/4690/11937
+f 2965/4690/11937 3037/4815/11936 3096/4816/11938
+s 2923
+f 2966/4584/11939 2889/4583/11940 3040/4739/11941
+f 3040/4739/11941 2889/4583/11940 3039/4691/11942
+s 2924
+f 2892/4577/11943 2891/4586/11944 2916/4742/11945
+f 2916/4742/11945 2891/4586/11944 2915/4741/11946
+s 2925
+f 2894/4704/11947 2978/4598/11948 2895/4817/11949
+f 2895/4817/11949 2978/4598/11948 3047/4818/11950
+s 2926
+f 2897/4593/11951 2896/4592/11952 3043/4819/11953
+f 3043/4819/11953 2896/4592/11952 3106/4820/11954
+s 2927
+f 2897/4437/11955 3044/4821/11956 2974/4707/11957
+f 2974/4707/11957 3044/4821/11956 3107/4822/11958
+s 2928
+f 2898/4596/11959 3045/4823/11960 2899/4595/11961
+f 2899/4595/11961 3045/4823/11960 3110/4824/11962
+s 2929
+f 2976/4825/11963 3047/4818/11964 2806/4597/11965
+f 2806/4597/11965 3047/4818/11964 2978/4598/11966
+s 2930
+f 3048/4826/11967 2977/4710/11968 3110/4824/11969
+f 3110/4824/11969 2977/4710/11968 2899/4595/11970
+s 2931
+f 2811/4442/11971 2979/4599/11972 2981/4712/11973
+f 2981/4712/11973 2979/4599/11972 3113/4827/11974
+s 2932
+f 2809/4600/11975 2980/4601/11976 2979/4828/11977
+f 2979/4828/11977 2980/4601/11976 3114/4829/11978
+s 2933
+f 2816/4602/11979 2983/4603/11980 2986/4728/11981
+f 2986/4728/11981 2983/4603/11980 3080/4830/11982
+s 2934
+f 2813/4446/11983 2982/4714/11984 2983/4603/11985
+f 2983/4603/11985 2982/4714/11984 2948/4831/11986
+s 2935
+f 2985/4724/11987 3052/4832/11988 2904/4722/11989
+f 2904/4722/11989 3052/4832/11988 3118/4833/11990
+s 2936
+f 2985/4835/11991 2905/4836/11992 3012/4834/11993
+f 3012/4834/11993 2905/4836/11992 3077/4837/11994
+s 2937
+f 2905/4604/11995 2907/4605/11996 3021/4838/11997
+f 3021/4838/11997 2907/4605/11996 2953/4839/11998
+s 2938
+f 2989/4732/11999 3053/4840/12000 2909/4733/12001
+f 2909/4733/12001 3053/4840/12000 3054/4841/12002
+s 2939
+f 2911/4477/12003 2987/4730/12004 2912/4842/12005
+f 2912/4842/12005 2987/4730/12004 2988/4731/12006
+s 2940
+f 2914/4737/12007 3040/4739/12008 2991/4843/12009
+f 2991/4843/12009 3040/4739/12008 3097/4844/12010
+s 2941
+f 2909/4733/12011 3054/4841/12012 2917/4845/12013
+f 2917/4845/12013 3054/4841/12012 3056/4846/12014
+s 2942
+f 2992/4627/12015 3055/4847/12016 2831/4625/12017
+f 2831/4625/12017 3055/4847/12016 2993/4848/12018
+s 2943
+f 2917/4845/12019 3056/4846/12020 2992/4849/12021
+f 2992/4849/12021 3056/4846/12020 3055/4850/12022
+s 2944
+f 2994/4745/12023 3055/4850/12024 2919/4630/12025
+f 2919/4630/12025 3055/4850/12024 3056/4846/12026
+s 2945
+f 2919/4630/12027 3056/4846/12028 2920/4631/12029
+f 2920/4631/12029 3056/4846/12028 3054/4841/12030
+s 2946
+f 2997/4852/12031 2922/4853/12032 3058/4851/12033
+f 3058/4851/12033 2922/4853/12032 3059/4854/12034
+s 2947
+f 2922/4634/12035 2996/4637/12036 3059/4855/12037
+f 3059/4855/12037 2996/4637/12036 3123/4856/12038
+s 2948
+f 2927/4502/12039 2999/4752/12040 2931/4512/12041
+f 2931/4512/12041 2999/4752/12040 3061/4757/12042
+s 2949
+f 2928/4753/12043 2930/4857/12044 2999/4752/12045
+f 2999/4752/12045 2930/4857/12044 3061/4757/12046
+s 2950
+f 2934/4647/12047 3062/4858/12048 3001/4762/12049
+f 3001/4762/12049 3062/4858/12048 3125/4859/12050
+s 2951
+f 2934/4647/12051 2935/4650/12052 3062/4858/12053
+f 3062/4858/12053 2935/4650/12052 3063/4860/12054
+s 2952
+f 2935/4650/12055 2998/4652/12056 3063/4860/12057
+f 3063/4860/12057 2998/4652/12056 3124/4861/12058
+s 2953
+f 2847/4653/12059 3003/4862/12060 3002/4654/12061
+f 3002/4654/12061 3003/4862/12060 3126/4863/12062
+s 2954
+f 3003/4865/12063 2848/4763/12064 3064/4864/12065
+f 3064/4864/12065 2848/4763/12064 3066/4766/12066
+s 2955
+f 3004/4867/12067 2936/4767/12068 3065/4866/12069
+f 3065/4866/12069 2936/4767/12068 3067/4768/12070
+s 2956
+f 2940/4659/12071 3069/4868/12072 2939/4657/12073
+f 2939/4657/12073 3069/4868/12072 3070/4869/12074
+s 2957
+f 2939/4657/12075 3070/4869/12076 3007/4658/12077
+f 3007/4658/12077 3070/4869/12076 3133/4870/12078
+s 2958
+f 2941/4660/12079 2942/4661/12080 3073/4871/12081
+f 3073/4871/12081 2942/4661/12080 3074/4872/12082
+s 2959
+f 2942/4874/12083 3009/4875/12084 3074/4873/12085
+f 3074/4873/12085 3009/4875/12084 3136/4876/12086
+s 2960
+f 2852/4529/12087 3075/4877/12088 3009/4875/12089
+f 3009/4875/12089 3075/4877/12088 3137/4878/12090
+s 2961
+f 2852/4529/12091 3010/4777/12092 3075/4877/12093
+f 3075/4877/12093 3010/4777/12092 3138/4879/12094
+s 2962
+f 3012/4880/12095 2938/4881/12096 2985/4724/12097
+f 2985/4724/12097 2938/4881/12096 3052/4832/12098
+s 2963
+f 3012/4834/12099 3077/4837/12100 2856/4782/12101
+f 2856/4782/12101 3077/4837/12100 3013/4783/12102
+s 2964
+f 2943/4664/12103 3013/4882/12104 2955/4678/12105
+f 2955/4678/12105 3013/4882/12104 3077/4883/12106
+s 2965
+f 2945/4787/12107 2946/4884/12108 2944/4786/12109
+f 2944/4786/12109 2946/4884/12108 3078/4885/12110
+s 2966
+f 2860/4396/12111 3015/4668/12112 3014/4667/12113
+f 3014/4667/12113 3015/4668/12112 3140/4886/12114
+s 2967
+f 2946/4884/12115 3014/4887/12116 3078/4885/12117
+f 3078/4885/12117 3014/4887/12116 3112/4888/12118
+s 2968
+f 2862/4398/12119 2982/4671/12120 3015/4668/12121
+f 3015/4668/12121 2982/4671/12120 3140/4886/12122
+s 2969
+f 3016/4788/12123 3079/4889/12124 2947/4669/12125
+f 2947/4669/12125 3079/4889/12124 3080/4890/12126
+s 2970
+f 2947/4669/12127 3080/4890/12128 2948/4670/12129
+f 2948/4670/12129 3080/4890/12128 2983/4891/12130
+s 2971
+f 3017/4789/12131 2949/4672/12132 3081/4892/12133
+f 3081/4892/12133 2949/4672/12132 3082/4893/12134
+s 2972
+f 2949/4672/12135 2950/4673/12136 3082/4893/12137
+f 3082/4893/12137 2950/4673/12136 3083/4894/12138
+s 2973
+f 2950/4674/12139 2951/4548/12140 3083/4895/12141
+f 3083/4895/12141 2951/4548/12140 3084/4794/12142
+s 2974
+f 3023/4796/12143 3085/4896/12144 2954/4677/12145
+f 2954/4677/12145 3085/4896/12144 3024/4797/12146
+s 2975
+f 2955/4897/12147 3077/4898/12148 3021/4838/12149
+f 3021/4838/12149 3077/4898/12148 2905/4604/12150
+s 2976
+f 2957/4559/12151 3027/4680/12152 3086/4804/12153
+f 3086/4804/12153 3027/4680/12152 3152/4899/12154
+s 2977
+f 2882/4681/12155 2958/4682/12156 3087/4900/12157
+f 3087/4900/12157 2958/4682/12156 3088/4901/12158
+s 2978
+f 2958/4682/12159 3033/4683/12160 3088/4901/12161
+f 3088/4901/12161 3033/4683/12160 3155/4902/12162
+s 2979
+f 3035/4810/12163 3089/4903/12164 3036/4811/12165
+f 3036/4811/12165 3089/4903/12164 3090/4904/12166
+s 2980
+f 2960/4906/12167 3036/4907/12168 3091/4905/12169
+f 3091/4905/12169 3036/4907/12168 3156/4908/12170
+s 2981
+f 2960/4906/12171 3091/4905/12172 3037/4909/12173
+f 3037/4909/12173 3091/4905/12172 3158/4910/12174
+s 2982
+f 3035/4810/12175 3034/4808/12176 3089/4903/12177
+f 3089/4903/12177 3034/4808/12176 3092/4911/12178
+s 2983
+f 2962/4913/12179 2961/4814/12180 3093/4912/12181
+f 3093/4912/12181 2961/4814/12180 3038/4813/12182
+s 2984
+f 2963/4915/12183 2962/4913/12184 3094/4914/12185
+f 3094/4914/12185 2962/4913/12184 3093/4912/12186
+s 2985
+f 2965/4690/12187 3097/4844/12188 3039/4691/12189
+f 3039/4691/12189 3097/4844/12188 3040/4739/12190
+s 2986
+f 2973/4702/12191 2967/4692/12192 3098/4916/12193
+f 3098/4916/12193 2967/4692/12192 3099/4917/12194
+s 2987
+f 2967/4692/12195 2968/4695/12196 3099/4917/12197
+f 3099/4917/12197 2968/4695/12196 3100/4918/12198
+s 2988
+f 2968/4695/12199 2969/4697/12200 3100/4918/12201
+f 3100/4918/12201 2969/4697/12200 3161/4919/12202
+s 2989
+f 3041/4699/12203 3101/4920/12204 2969/4697/12205
+f 2969/4697/12205 3101/4920/12204 3161/4919/12206
+s 2990
+f 2972/4701/12207 3102/4921/12208 2970/4700/12209
+f 2970/4700/12209 3102/4921/12208 3103/4922/12210
+s 2991
+f 2970/4700/12211 3103/4922/12212 3041/4699/12213
+f 3041/4699/12213 3103/4922/12212 3101/4920/12214
+s 2992
+f 2971/4679/12215 3030/4803/12216 2972/4701/12217
+f 2972/4701/12217 3030/4803/12216 3102/4921/12218
+s 2993
+f 3038/4813/12219 2973/4702/12220 3104/4923/12221
+f 3104/4923/12221 2973/4702/12220 3098/4916/12222
+s 2994
+f 3042/4925/12223 2895/4817/12224 3105/4924/12225
+f 3105/4924/12225 2895/4817/12224 3047/4818/12226
+s 2995
+f 2896/4592/12227 3042/4706/12228 3106/4820/12229
+f 3106/4820/12229 3042/4706/12228 3163/4926/12230
+s 2996
+f 2897/4593/12231 3043/4819/12232 3044/4927/12233
+f 3044/4927/12233 3043/4819/12232 3165/4928/12234
+s 2997
+f 2974/4707/12235 3108/4929/12236 2975/4708/12237
+f 2975/4708/12237 3108/4929/12236 3111/4930/12238
+s 2998
+f 2898/4596/12239 3109/4931/12240 3045/4823/12241
+f 3045/4823/12241 3109/4931/12240 3167/4932/12242
+s 2999
+f 2898/4596/12243 3046/4933/12244 3109/4931/12245
+f 3109/4931/12245 3046/4933/12244 3169/4934/12246
+s 3000
+f 2975/4936/12247 3111/4937/12248 3046/4935/12249
+f 3046/4935/12249 3111/4937/12248 3170/4938/12250
+s 3001
+f 2976/4825/12251 2977/4939/12252 3047/4818/12253
+f 3047/4818/12253 2977/4939/12252 3105/4924/12254
+s 3002
+f 2977/4939/12255 3048/4940/12256 3105/4924/12257
+f 3105/4924/12257 3048/4940/12256 3162/4941/12258
+s 3003
+f 3049/4711/12259 2956/4554/12260 3112/4942/12261
+f 3112/4942/12261 2956/4554/12260 3078/4785/12262
+s 3004
+f 2980/4601/12263 3049/4711/12264 3114/4829/12265
+f 3114/4829/12265 3049/4711/12264 3171/4943/12266
+s 3005
+f 2981/4712/12267 3115/4944/12268 2984/4713/12269
+f 2984/4713/12269 3115/4944/12268 3117/4945/12270
+s 3006
+f 3050/4947/12271 3116/4948/12272 2982/4946/12273
+f 2982/4946/12273 3116/4948/12272 3140/4949/12274
+s 3007
+f 2902/4451/12275 3051/4719/12276 3050/4717/12277
+f 3050/4717/12277 3051/4719/12276 3172/4950/12278
+s 3008
+f 2984/4718/12279 3117/4951/12280 3051/4719/12281
+f 3051/4719/12281 3117/4951/12280 3173/4952/12282
+s 3009
+f 2904/4722/12283 3118/4833/12284 3005/4723/12285
+f 3005/4723/12285 3118/4833/12284 3068/4953/12286
+s 3010
+f 2986/4728/12287 3119/4954/12288 3022/4729/12289
+f 3022/4729/12289 3119/4954/12288 3023/4955/12290
+s 3011
+f 3053/4840/12291 2989/4732/12292 3120/4956/12293
+f 3120/4956/12293 2989/4732/12292 3121/4957/12294
+s 3012
+f 2989/4959/12295 2990/4960/12296 3121/4958/12297
+f 3121/4958/12297 2990/4960/12296 3122/4961/12298
+s 3013
+f 2990/4960/12299 2991/4843/12300 3122/4961/12301
+f 3122/4961/12301 2991/4843/12300 3097/4844/12302
+s 3014
+f 2995/4746/12303 2993/4962/12304 2994/4745/12305
+f 2994/4745/12305 2993/4962/12304 3055/4850/12306
+s 3015
+f 2996/4637/12307 3057/4747/12308 3123/4856/12309
+f 3123/4856/12309 3057/4747/12308 3175/4963/12310
+s 3016
+f 2920/4631/12311 3054/4841/12312 3057/4747/12313
+f 3057/4747/12313 3054/4841/12312 3053/4840/12314
+s 3017
+f 3058/4851/12315 3060/4751/12316 2997/4852/12317
+f 2997/4852/12317 3060/4751/12316 2926/4750/12318
+s 3018
+f 2998/4652/12319 3060/4751/12320 3124/4861/12321
+f 3124/4861/12321 3060/4751/12320 3176/4964/12322
+s 3019
+f 3001/4762/12323 3125/4859/12324 3000/4759/12325
+f 3000/4759/12325 3125/4859/12324 3031/4805/12326
+s 3020
+f 3064/4965/12327 3127/4966/12328 3003/4862/12329
+f 3003/4862/12329 3127/4966/12328 3126/4863/12330
+s 3021
+f 3065/4866/12331 3128/4967/12332 3004/4867/12333
+f 3004/4867/12333 3128/4967/12332 3129/4968/12334
+s 3022
+f 3004/4765/12335 3129/4969/12336 3066/4766/12337
+f 3066/4766/12337 3129/4969/12336 3185/4970/12338
+s 3023
+f 2937/4526/12339 3068/4769/12340 3067/4768/12341
+f 3067/4768/12341 3068/4769/12340 3186/4971/12342
+s 3024
+f 3002/4654/12343 3126/4863/12344 3052/4770/12345
+f 3052/4770/12345 3126/4863/12344 3174/4972/12346
+s 3025
+f 3011/4780/12347 3006/4771/12348 3130/4973/12349
+f 3130/4973/12349 3006/4771/12348 3131/4974/12350
+s 3026
+f 3006/4771/12351 3007/4772/12352 3131/4974/12353
+f 3131/4974/12353 3007/4772/12352 3133/4975/12354
+s 3027
+f 3069/4868/12355 2940/4659/12356 3132/4976/12357
+f 3132/4976/12357 2940/4659/12356 3071/4774/12358
+s 3028
+f 3008/4773/12359 3134/4977/12360 3071/4774/12361
+f 3071/4774/12361 3134/4977/12360 3132/4976/12362
+s 3029
+f 3072/4978/12363 3135/4979/12364 3008/4773/12365
+f 3008/4773/12365 3135/4979/12364 3134/4977/12366
+s 3030
+f 2941/4660/12367 3073/4871/12368 3072/4776/12369
+f 3072/4776/12369 3073/4871/12368 3190/4980/12370
+s 3031
+f 3076/4778/12371 3139/4981/12372 3010/4777/12373
+f 3010/4777/12373 3139/4981/12372 3196/4982/12374
+s 3032
+f 3076/4778/12375 3011/4779/12376 3139/4981/12377
+f 3139/4981/12377 3011/4779/12376 3130/4983/12378
+s 3033
+f 3079/4889/12379 3016/4788/12380 3141/4984/12381
+f 3141/4984/12381 3016/4788/12380 3142/4985/12382
+s 3034
+f 3016/4788/12383 3017/4789/12384 3142/4985/12385
+f 3142/4985/12385 3017/4789/12384 3081/4892/12386
+s 3035
+f 3024/4797/12387 3143/4986/12388 3018/4790/12389
+f 3018/4790/12389 3143/4986/12388 3144/4987/12390
+s 3036
+f 3018/4790/12391 3144/4987/12392 3019/4791/12393
+f 3019/4791/12393 3144/4987/12392 3145/4988/12394
+s 3037
+f 3019/4791/12395 3145/4988/12396 3020/4792/12397
+f 3020/4792/12397 3145/4988/12396 3146/4989/12398
+s 3038
+f 3020/4793/12399 3146/4990/12400 3084/4794/12401
+f 3084/4794/12401 3146/4990/12400 3201/4991/12402
+s 3039
+f 3085/4993/12403 3023/4955/12404 3147/4992/12405
+f 3147/4992/12405 3023/4955/12404 3119/4954/12406
+s 3040
+f 3085/4896/12407 3148/4994/12408 3024/4797/12409
+f 3024/4797/12409 3148/4994/12408 3143/4986/12410
+s 3041
+f 3028/4800/12411 3149/4995/12412 3025/4798/12413
+f 3025/4798/12413 3149/4995/12412 3150/4996/12414
+s 3042
+f 3025/4798/12415 3150/4996/12416 3026/4799/12417
+f 3026/4799/12417 3150/4996/12416 3151/4997/12418
+s 3043
+f 3026/4799/12419 3151/4997/12420 3027/4680/12421
+f 3027/4680/12421 3151/4997/12420 3152/4899/12422
+s 3044
+f 3029/4801/12423 3153/4998/12424 3028/4802/12425
+f 3028/4802/12425 3153/4998/12424 3149/4999/12426
+s 3045
+f 3032/4807/12427 3154/5000/12428 3029/4801/12429
+f 3029/4801/12429 3154/5000/12428 3153/4998/12430
+s 3046
+f 3030/4803/12431 3086/4804/12432 3102/4921/12433
+f 3102/4921/12433 3086/4804/12432 3203/5001/12434
+s 3047
+f 3032/4806/12435 3031/4805/12436 3154/5002/12437
+f 3154/5002/12437 3031/4805/12436 3125/4859/12438
+s 3048
+f 3034/4808/12439 3087/4809/12440 3092/4911/12441
+f 3092/4911/12441 3087/4809/12440 3204/5003/12442
+s 3049
+f 3036/4907/12443 3090/5004/12444 3156/4908/12445
+f 3156/4908/12445 3090/5004/12444 3206/5005/12446
+s 3050
+f 3089/4903/12447 3157/5006/12448 3090/4904/12449
+f 3090/4904/12449 3157/5006/12448 3207/5007/12450
+s 3051
+f 3089/4903/12451 3092/4911/12452 3157/5006/12453
+f 3157/5006/12453 3092/4911/12452 3210/5008/12454
+s 3052
+f 3094/4914/12455 3159/5009/12456 2963/4915/12457
+f 2963/4915/12457 3159/5009/12456 3095/5010/12458
+s 3053
+f 3033/4683/12459 3095/4812/12460 3155/4902/12461
+f 3155/4902/12461 3095/4812/12460 3213/5011/12462
+s 3054
+f 3093/4912/12463 3038/4813/12464 3160/5012/12465
+f 3160/5012/12465 3038/4813/12464 3104/4923/12466
+s 3055
+f 3037/4815/12467 3158/5013/12468 3096/4816/12469
+f 3096/4816/12469 3158/5013/12468 3214/5014/12470
+s 3056
+f 2965/4690/12471 3096/4816/12472 3097/4844/12473
+f 3097/4844/12473 3096/4816/12472 3122/4961/12474
+s 3057
+f 3105/4924/12475 3162/4941/12476 3042/4925/12477
+f 3042/4925/12477 3162/4941/12476 3163/5015/12478
+s 3058
+f 3043/4819/12479 3106/4820/12480 3164/5016/12481
+f 3164/5016/12481 3106/4820/12480 3222/5017/12482
+s 3059
+f 2974/4707/12483 3107/4822/12484 3108/4929/12485
+f 3108/4929/12485 3107/4822/12484 3225/5018/12486
+s 3060
+f 3107/5020/12487 3044/4927/12488 3166/5019/12489
+f 3166/5019/12489 3044/4927/12488 3224/5021/12490
+s 3061
+f 3110/4824/12491 3045/4823/12492 3168/5022/12493
+f 3168/5022/12493 3045/4823/12492 3229/5023/12494
+s 3062
+f 3110/4824/12495 3168/5022/12496 3048/4826/12497
+f 3048/4826/12497 3168/5022/12496 3232/5024/12498
+s 3063
+f 3049/5026/12499 3112/5027/12500 3171/5025/12501
+f 3171/5025/12501 3112/5027/12500 3116/5028/12502
+s 3064
+f 2981/4712/12503 3113/4827/12504 3115/4944/12505
+f 3115/4944/12505 3113/4827/12504 3233/5029/12506
+s 3065
+f 2979/4828/12507 3114/4829/12508 3113/5030/12509
+f 3113/5030/12509 3114/4829/12508 3234/5031/12510
+s 3066
+f 2986/4728/12511 3080/4830/12512 3119/4954/12513
+f 3119/4954/12513 3080/4830/12512 3079/5032/12514
+s 3067
+f 3050/5033/12515 3172/5034/12516 3116/5028/12517
+f 3116/5028/12517 3172/5034/12516 3236/5035/12518
+s 3068
+f 3052/4832/12519 3174/5036/12520 3118/4833/12521
+f 3118/4833/12521 3174/5036/12520 3238/5037/12522
+s 3069
+f 3120/4956/12523 3175/4963/12524 3053/4840/12525
+f 3053/4840/12525 3175/4963/12524 3057/4747/12526
+s 3070
+f 3060/4751/12527 3058/4851/12528 3176/4964/12529
+f 3176/4964/12529 3058/4851/12528 3177/5038/12530
+s 3071
+f 3058/4851/12531 3059/4854/12532 3177/5038/12533
+f 3177/5038/12533 3059/4854/12532 3178/5039/12534
+s 3072
+f 3059/4854/12535 3123/5040/12536 3178/5039/12537
+f 3178/5039/12537 3123/5040/12536 3241/5041/12538
+s 3073
+f 3062/4858/12539 3179/5042/12540 3125/4859/12541
+f 3125/4859/12541 3179/5042/12540 3154/5002/12542
+s 3074
+f 3063/4860/12543 3180/5043/12544 3062/4858/12545
+f 3062/4858/12545 3180/5043/12544 3179/5042/12546
+s 3075
+f 3063/4860/12547 3124/4861/12548 3180/5043/12549
+f 3180/5043/12549 3124/4861/12548 3242/5044/12550
+s 3076
+f 3127/4966/12551 3064/4965/12552 3181/5045/12553
+f 3181/5045/12553 3064/4965/12552 3182/5046/12554
+s 3077
+f 3064/4864/12555 3066/4766/12556 3182/5047/12557
+f 3182/5047/12557 3066/4766/12556 3185/4970/12558
+s 3078
+f 3065/4866/12559 3067/4768/12560 3183/5048/12561
+f 3183/5048/12561 3067/4768/12560 3186/4971/12562
+s 3079
+f 3128/4967/12563 3065/4866/12564 3184/5049/12565
+f 3184/5049/12565 3065/4866/12564 3183/5048/12566
+s 3080
+f 3068/4953/12567 3118/4833/12568 3186/5050/12569
+f 3186/5050/12569 3118/4833/12568 3238/5037/12570
+s 3081
+f 3132/4976/12571 3187/5051/12572 3069/4868/12573
+f 3069/4868/12573 3187/5051/12572 3251/5052/12574
+s 3082
+f 3069/4868/12575 3188/5053/12576 3070/4869/12577
+f 3070/4869/12577 3188/5053/12576 3189/5054/12578
+s 3083
+f 3070/4869/12579 3189/5054/12580 3133/4870/12581
+f 3133/4870/12581 3189/5054/12580 3253/5055/12582
+s 3084
+f 3072/4776/12583 3190/4980/12584 3135/5056/12585
+f 3135/5056/12585 3190/4980/12584 3255/5057/12586
+s 3085
+f 3073/4871/12587 3074/4872/12588 3191/5058/12589
+f 3191/5058/12589 3074/4872/12588 3192/5059/12590
+s 3086
+f 3074/4873/12591 3136/4876/12592 3192/5060/12593
+f 3192/5060/12593 3136/4876/12592 3256/5061/12594
+s 3087
+f 3009/4875/12595 3137/4878/12596 3136/4876/12597
+f 3136/4876/12597 3137/4878/12596 3257/5062/12598
+s 3088
+f 3137/4878/12599 3075/4877/12600 3193/5063/12601
+f 3193/5063/12601 3075/4877/12600 3194/5064/12602
+s 3089
+f 3075/4877/12603 3138/4879/12604 3194/5064/12605
+f 3194/5064/12605 3138/4879/12604 3195/5065/12606
+s 3090
+f 3138/4879/12607 3010/4777/12608 3195/5065/12609
+f 3195/5065/12609 3010/4777/12608 3196/4982/12610
+s 3091
+f 3014/4887/12611 3140/4949/12612 3112/4888/12613
+f 3112/4888/12613 3140/4949/12612 3116/4948/12614
+s 3092
+f 3141/5066/12615 3147/4992/12616 3079/5032/12617
+f 3079/5032/12617 3147/4992/12616 3119/4954/12618
+s 3093
+f 3142/4985/12619 3081/4892/12620 3197/5067/12621
+f 3197/5067/12621 3081/4892/12620 3198/5068/12622
+s 3094
+f 3081/4892/12623 3082/4893/12624 3198/5068/12625
+f 3198/5068/12625 3082/4893/12624 3199/5069/12626
+s 3095
+f 3082/4893/12627 3083/4894/12628 3199/5069/12629
+f 3199/5069/12629 3083/4894/12628 3200/5070/12630
+s 3096
+f 3083/4895/12631 3084/4794/12632 3200/5071/12633
+f 3200/5071/12633 3084/4794/12632 3201/4991/12634
+s 3097
+f 3147/4992/12635 3202/5072/12636 3085/4993/12637
+f 3085/4993/12637 3202/5072/12636 3148/5073/12638
+s 3098
+f 3086/4804/12639 3152/4899/12640 3203/5001/12641
+f 3203/5001/12641 3152/4899/12640 3270/5074/12642
+s 3099
+f 3087/4900/12643 3088/4901/12644 3204/5075/12645
+f 3204/5075/12645 3088/4901/12644 3205/5076/12646
+s 3100
+f 3088/4901/12647 3155/4902/12648 3205/5076/12649
+f 3205/5076/12649 3155/4902/12648 3271/5077/12650
+s 3101
+f 3091/4905/12651 3156/4908/12652 3208/5078/12653
+f 3208/5078/12653 3156/4908/12652 3272/5079/12654
+s 3102
+f 3158/4910/12655 3091/4905/12656 3209/5080/12657
+f 3209/5080/12657 3091/4905/12656 3208/5078/12658
+s 3103
+f 3094/4914/12659 3093/4912/12660 3211/5081/12661
+f 3211/5081/12661 3093/4912/12660 3160/5012/12662
+s 3104
+f 3159/5009/12663 3094/4914/12664 3212/5082/12665
+f 3212/5082/12665 3094/4914/12664 3211/5081/12666
+s 3105
+f 3095/5010/12667 3159/5009/12668 3213/5083/12669
+f 3213/5083/12669 3159/5009/12668 3276/5084/12670
+s 3106
+f 3104/4923/12671 3098/4916/12672 3215/5085/12673
+f 3215/5085/12673 3098/4916/12672 3216/5086/12674
+s 3107
+f 3098/4916/12675 3099/4917/12676 3216/5086/12677
+f 3216/5086/12677 3099/4917/12676 3217/5087/12678
+s 3108
+f 3099/4917/12679 3100/4918/12680 3217/5087/12681
+f 3217/5087/12681 3100/4918/12680 3218/5088/12682
+s 3109
+f 3100/4918/12683 3161/4919/12684 3218/5088/12685
+f 3218/5088/12685 3161/4919/12684 3278/5089/12686
+s 3110
+f 3103/4922/12687 3219/5090/12688 3101/4920/12689
+f 3101/4920/12689 3219/5090/12688 3220/5091/12690
+s 3111
+f 3101/4920/12691 3220/5091/12692 3161/4919/12693
+f 3161/4919/12693 3220/5091/12692 3278/5089/12694
+s 3112
+f 3102/4921/12695 3203/5001/12696 3103/4922/12697
+f 3103/4922/12697 3203/5001/12696 3219/5090/12698
+s 3113
+f 3160/5012/12699 3104/4923/12700 3221/5092/12701
+f 3221/5092/12701 3104/4923/12700 3215/5085/12702
+s 3114
+f 3106/4820/12703 3163/4926/12704 3222/5017/12705
+f 3222/5017/12705 3163/4926/12704 3280/5093/12706
+s 3115
+f 3164/5016/12707 3223/5094/12708 3043/4819/12709
+f 3043/4819/12709 3223/5094/12708 3165/4928/12710
+s 3116
+f 3044/4927/12711 3165/4928/12712 3224/5021/12713
+f 3224/5021/12713 3165/4928/12712 3223/5094/12714
+s 3117
+f 3107/4822/12715 3166/5095/12716 3225/5018/12717
+f 3225/5018/12717 3166/5095/12716 3283/5096/12718
+s 3118
+f 3108/4929/12719 3226/5097/12720 3111/4930/12721
+f 3111/4930/12721 3226/5097/12720 3231/5098/12722
+s 3119
+f 3167/4932/12723 3227/5099/12724 3045/4823/12725
+f 3045/4823/12725 3227/5099/12724 3229/5023/12726
+s 3120
+f 3109/4931/12727 3228/5100/12728 3167/4932/12729
+f 3167/4932/12729 3228/5100/12728 3227/5099/12730
+s 3121
+f 3169/4934/12731 3230/5101/12732 3109/4931/12733
+f 3109/4931/12733 3230/5101/12732 3228/5100/12734
+s 3122
+f 3046/4933/12735 3170/5102/12736 3169/4934/12737
+f 3169/4934/12737 3170/5102/12736 3286/5103/12738
+s 3123
+f 3111/4937/12739 3231/5104/12740 3170/4938/12741
+f 3170/4938/12741 3231/5104/12740 3287/5105/12742
+s 3124
+f 3048/4940/12743 3232/5106/12744 3162/4941/12745
+f 3162/4941/12745 3232/5106/12744 3279/5107/12746
+s 3125
+f 3114/4829/12747 3171/4943/12748 3234/5031/12749
+f 3234/5031/12749 3171/4943/12748 3289/5108/12750
+s 3126
+f 3117/5110/12751 3115/5111/12752 3235/5109/12753
+f 3235/5109/12753 3115/5111/12752 3291/5112/12754
+s 3127
+f 3051/4719/12755 3173/4952/12756 3172/4950/12757
+f 3172/4950/12757 3173/4952/12756 3292/5113/12758
+s 3128
+f 3173/4952/12759 3117/4951/12760 3237/5114/12761
+f 3237/5114/12761 3117/4951/12760 3235/5115/12762
+s 3129
+f 3175/5117/12763 3120/5118/12764 3239/5116/12765
+f 3239/5116/12765 3120/5118/12764 3240/5119/12766
+s 3130
+f 3120/5118/12767 3121/4958/12768 3240/5119/12769
+f 3240/5119/12769 3121/4958/12768 3214/5014/12770
+s 3131
+f 3121/4958/12771 3122/4961/12772 3214/5014/12773
+f 3214/5014/12773 3122/4961/12772 3096/4816/12774
+s 3132
+f 3123/5040/12775 3175/5117/12776 3241/5041/12777
+f 3241/5041/12777 3175/5117/12776 3239/5116/12778
+s 3133
+f 3124/4861/12779 3176/4964/12780 3242/5044/12781
+f 3242/5044/12781 3176/4964/12780 3295/5120/12782
+s 3134
+f 3127/4966/12783 3243/5121/12784 3126/4863/12785
+f 3126/4863/12785 3243/5121/12784 3174/4972/12786
+s 3135
+f 3181/5045/12787 3244/5122/12788 3127/4966/12789
+f 3127/4966/12789 3244/5122/12788 3243/5121/12790
+s 3136
+f 3184/5049/12791 3245/5123/12792 3128/4967/12793
+f 3128/4967/12793 3245/5123/12792 3246/5124/12794
+s 3137
+f 3128/4967/12795 3246/5124/12796 3129/4968/12797
+f 3129/4968/12797 3246/5124/12796 3247/5125/12798
+s 3138
+f 3129/4969/12799 3247/5126/12800 3185/4970/12801
+f 3185/4970/12801 3247/5126/12800 3301/5127/12802
+s 3139
+f 3130/4983/12803 3248/5128/12804 3139/4981/12805
+f 3139/4981/12805 3248/5128/12804 3258/5129/12806
+s 3140
+f 3130/4973/12807 3131/4974/12808 3248/5130/12809
+f 3248/5130/12809 3131/4974/12808 3249/5131/12810
+s 3141
+f 3131/4974/12811 3133/4975/12812 3249/5131/12813
+f 3249/5131/12813 3133/4975/12812 3253/5132/12814
+s 3142
+f 3187/5051/12815 3132/4976/12816 3250/5133/12817
+f 3250/5133/12817 3132/4976/12816 3134/4977/12818
+s 3143
+f 3069/5135/12819 3252/5136/12820 3188/5134/12821
+f 3188/5134/12821 3252/5136/12820 3306/5137/12822
+s 3144
+f 3134/5139/12823 3135/5140/12824 3254/5138/12825
+f 3254/5138/12825 3135/5140/12824 3309/5141/12826
+s 3145
+f 3073/4871/12827 3191/5058/12828 3190/4980/12829
+f 3190/4980/12829 3191/5058/12828 3310/5142/12830
+s 3146
+f 3137/4878/12831 3193/5063/12832 3257/5062/12833
+f 3257/5062/12833 3193/5063/12832 3313/5143/12834
+s 3147
+f 3139/4981/12835 3258/5129/12836 3196/4982/12837
+f 3196/4982/12837 3258/5129/12836 3316/5144/12838
+s 3148
+f 3147/4992/12839 3141/5066/12840 3202/5072/12841
+f 3202/5072/12841 3141/5066/12840 3259/5145/12842
+s 3149
+f 3141/4984/12843 3142/4985/12844 3259/5146/12845
+f 3259/5146/12845 3142/4985/12844 3197/5067/12846
+s 3150
+f 3148/4994/12847 3260/5147/12848 3143/4986/12849
+f 3143/4986/12849 3260/5147/12848 3261/5148/12850
+s 3151
+f 3143/4986/12851 3261/5148/12852 3144/4987/12853
+f 3144/4987/12853 3261/5148/12852 3262/5149/12854
+s 3152
+f 3144/4987/12855 3262/5149/12856 3145/4988/12857
+f 3145/4988/12857 3262/5149/12856 3263/5150/12858
+s 3153
+f 3145/4988/12859 3263/5150/12860 3146/4989/12861
+f 3146/4989/12861 3263/5150/12860 3264/5151/12862
+s 3154
+f 3146/4990/12863 3264/5152/12864 3201/4991/12865
+f 3201/4991/12865 3264/5152/12864 3322/5153/12866
+s 3155
+f 3202/5072/12867 3265/5154/12868 3148/5073/12869
+f 3148/5073/12869 3265/5154/12868 3260/5155/12870
+s 3156
+f 3153/4998/12871 3266/5156/12872 3149/4999/12873
+f 3149/4999/12873 3266/5156/12872 3267/5157/12874
+s 3157
+f 3149/4995/12875 3267/5158/12876 3150/4996/12877
+f 3150/4996/12877 3267/5158/12876 3268/5159/12878
+s 3158
+f 3150/4996/12879 3268/5159/12880 3151/4997/12881
+f 3151/4997/12881 3268/5159/12880 3269/5160/12882
+s 3159
+f 3151/4997/12883 3269/5160/12884 3152/4899/12885
+f 3152/4899/12885 3269/5160/12884 3270/5074/12886
+s 3160
+f 3154/5000/12887 3179/5161/12888 3153/4998/12889
+f 3153/4998/12889 3179/5161/12888 3266/5156/12890
+s 3161
+f 3092/4911/12891 3204/5003/12892 3210/5008/12893
+f 3210/5008/12893 3204/5003/12892 3323/5162/12894
+s 3162
+f 3156/4908/12895 3206/5005/12896 3272/5079/12897
+f 3272/5079/12897 3206/5005/12896 3325/5163/12898
+s 3163
+f 3090/5004/12899 3207/5164/12900 3206/5005/12901
+f 3206/5005/12901 3207/5164/12900 3326/5165/12902
+s 3164
+f 3157/5006/12903 3273/5166/12904 3207/5007/12905
+f 3207/5007/12905 3273/5166/12904 3327/5167/12906
+s 3165
+f 3158/4910/12907 3209/5080/12908 3274/5168/12909
+f 3274/5168/12909 3209/5080/12908 3330/5169/12910
+s 3166
+f 3157/5006/12911 3210/5008/12912 3273/5166/12913
+f 3273/5166/12913 3210/5008/12912 3331/5170/12914
+s 3167
+f 3212/5082/12915 3275/5171/12916 3159/5009/12917
+f 3159/5009/12917 3275/5171/12916 3276/5084/12918
+s 3168
+f 3155/5173/12919 3213/5083/12920 3271/5172/12921
+f 3271/5172/12921 3213/5083/12920 3334/5174/12922
+s 3169
+f 3211/5081/12923 3160/5012/12924 3277/5175/12925
+f 3277/5175/12925 3160/5012/12924 3221/5092/12926
+s 3170
+f 3158/5013/12927 3274/5176/12928 3214/5014/12929
+f 3214/5014/12929 3274/5176/12928 3240/5119/12930
+s 3171
+f 3162/4941/12931 3279/5107/12932 3163/5015/12933
+f 3163/5015/12933 3279/5107/12932 3280/5177/12934
+s 3172
+f 3223/5094/12935 3164/5016/12936 3281/5178/12937
+f 3281/5178/12937 3164/5016/12936 3345/5179/12938
+s 3173
+f 3164/5016/12939 3222/5017/12940 3282/5180/12941
+f 3282/5180/12941 3222/5017/12940 3343/5181/12942
+s 3174
+f 3108/4929/12943 3225/5018/12944 3226/5097/12945
+f 3226/5097/12945 3225/5018/12944 3347/5182/12946
+s 3175
+f 3224/5184/12947 3284/5185/12948 3166/5183/12949
+f 3166/5183/12949 3284/5185/12948 3348/5186/12950
+s 3176
+f 3168/5022/12951 3229/5023/12952 3285/5187/12953
+f 3285/5187/12953 3229/5023/12952 3352/5188/12954
+s 3177
+f 3169/4934/12955 3286/5103/12956 3230/5101/12957
+f 3230/5101/12957 3286/5103/12956 3353/5189/12958
+s 3178
+f 3232/5024/12959 3168/5022/12960 3288/5190/12961
+f 3288/5190/12961 3168/5022/12960 3285/5187/12962
+s 3179
+f 3171/5025/12963 3116/5028/12964 3289/5191/12965
+f 3289/5191/12965 3116/5028/12964 3236/5035/12966
+s 3180
+f 3233/5192/12967 3290/5193/12968 3115/5111/12969
+f 3115/5111/12969 3290/5193/12968 3291/5112/12970
+s 3181
+f 3113/5030/12971 3234/5031/12972 3233/5194/12973
+f 3233/5194/12973 3234/5031/12972 3356/5195/12974
+s 3182
+f 3172/5034/12975 3292/5196/12976 3236/5035/12977
+f 3236/5035/12977 3292/5196/12976 3360/5197/12978
+s 3183
+f 3237/5114/12979 3293/5198/12980 3173/4952/12981
+f 3173/4952/12981 3293/5198/12980 3292/5113/12982
+s 3184
+f 3238/5200/12983 3174/5201/12984 3294/5199/12985
+f 3294/5199/12985 3174/5201/12984 3243/5202/12986
+s 3185
+f 3176/4964/12987 3177/5038/12988 3295/5120/12989
+f 3295/5120/12989 3177/5038/12988 3296/5203/12990
+s 3186
+f 3177/5038/12991 3178/5039/12992 3296/5203/12993
+f 3296/5203/12993 3178/5039/12992 3363/5204/12994
+s 3187
+f 3241/5041/12995 3297/5205/12996 3178/5039/12997
+f 3178/5039/12997 3297/5205/12996 3363/5204/12998
+s 3188
+f 3179/5161/12999 3180/5206/13000 3266/5156/13001
+f 3266/5156/13001 3180/5206/13000 3365/5207/13002
+s 3189
+f 3242/5208/13003 3298/5209/13004 3180/5206/13005
+f 3180/5206/13005 3298/5209/13004 3365/5207/13006
+s 3190
+f 3244/5122/13007 3181/5045/13008 3299/5210/13009
+f 3299/5210/13009 3181/5045/13008 3300/5211/13010
+s 3191
+f 3181/5045/13011 3182/5046/13012 3300/5211/13013
+f 3300/5211/13013 3182/5046/13012 3366/5212/13014
+s 3192
+f 3185/4970/13015 3301/5127/13016 3182/5047/13017
+f 3182/5047/13017 3301/5127/13016 3366/5213/13018
+s 3193
+f 3184/5215/13019 3183/5216/13020 3302/5214/13021
+f 3302/5214/13021 3183/5216/13020 3294/5199/13022
+s 3194
+f 3183/5216/13023 3186/5217/13024 3294/5199/13025
+f 3294/5199/13025 3186/5217/13024 3238/5200/13026
+s 3195
+f 3245/5219/13027 3184/5215/13028 3303/5218/13029
+f 3303/5218/13029 3184/5215/13028 3302/5214/13030
+s 3196
+f 3250/5133/13031 3304/5220/13032 3187/5051/13033
+f 3187/5051/13033 3304/5220/13032 3305/5221/13034
+s 3197
+f 3069/5223/13035 3251/5224/13036 3252/5222/13037
+f 3252/5222/13037 3251/5224/13036 3374/5225/13038
+s 3198
+f 3187/5051/13039 3305/5221/13040 3251/5052/13041
+f 3251/5052/13041 3305/5221/13040 3375/5226/13042
+s 3199
+f 3188/5053/13043 3307/5227/13044 3189/5054/13045
+f 3189/5054/13045 3307/5227/13044 3308/5228/13046
+s 3200
+f 3189/5229/13047 3308/5230/13048 3253/5132/13049
+f 3253/5132/13049 3308/5230/13048 3376/5231/13050
+s 3201
+f 3134/5139/13051 3254/5138/13052 3250/5232/13053
+f 3250/5232/13053 3254/5138/13052 3377/5233/13054
+s 3202
+f 3135/5235/13055 3255/5236/13056 3309/5234/13057
+f 3309/5234/13057 3255/5236/13056 3378/5237/13058
+s 3203
+f 3190/4980/13059 3310/5142/13060 3255/5057/13061
+f 3255/5057/13061 3310/5142/13060 3379/5238/13062
+s 3204
+f 3191/5058/13063 3192/5059/13064 3311/5239/13065
+f 3311/5239/13065 3192/5059/13064 3312/5240/13066
+s 3205
+f 3192/5060/13067 3256/5061/13068 3312/5241/13069
+f 3312/5241/13069 3256/5061/13068 3381/5242/13070
+s 3206
+f 3136/4876/13071 3257/5062/13072 3256/5061/13073
+f 3256/5061/13073 3257/5062/13072 3382/5243/13074
+s 3207
+f 3193/5244/13075 3194/5245/13076 3309/5234/13077
+f 3309/5234/13077 3194/5245/13076 3254/5246/13078
+s 3208
+f 3194/5064/13079 3195/5065/13080 3314/5247/13081
+f 3314/5247/13081 3195/5065/13080 3315/5248/13082
+s 3209
+f 3195/5065/13083 3196/4982/13084 3315/5248/13085
+f 3315/5248/13085 3196/4982/13084 3384/5249/13086
+s 3210
+f 3259/5146/13087 3197/5067/13088 3317/5250/13089
+f 3317/5250/13089 3197/5067/13088 3318/5251/13090
+s 3211
+f 3197/5067/13091 3198/5068/13092 3318/5251/13093
+f 3318/5251/13093 3198/5068/13092 3319/5252/13094
+s 3212
+f 3198/5068/13095 3199/5069/13096 3319/5252/13097
+f 3319/5252/13097 3199/5069/13096 3320/5253/13098
+s 3213
+f 3199/5069/13099 3200/5070/13100 3320/5253/13101
+f 3320/5253/13101 3200/5070/13100 3321/5254/13102
+s 3214
+f 3200/5071/13103 3201/4991/13104 3321/5255/13105
+f 3321/5255/13105 3201/4991/13104 3322/5153/13106
+s 3215
+f 3202/5072/13107 3259/5145/13108 3265/5154/13109
+f 3265/5154/13109 3259/5145/13108 3317/5256/13110
+s 3216
+f 3203/5001/13111 3270/5074/13112 3219/5090/13113
+f 3219/5090/13113 3270/5074/13112 3340/5257/13114
+s 3217
+f 3204/5075/13115 3205/5076/13116 3323/5258/13117
+f 3323/5258/13117 3205/5076/13116 3324/5259/13118
+s 3218
+f 3205/5076/13119 3271/5077/13120 3324/5259/13121
+f 3324/5259/13121 3271/5077/13120 3393/5260/13122
+s 3219
+f 3209/5080/13123 3208/5078/13124 3328/5261/13125
+f 3328/5261/13125 3208/5078/13124 3329/5262/13126
+s 3220
+f 3208/5078/13127 3272/5079/13128 3329/5262/13129
+f 3329/5262/13129 3272/5079/13128 3395/5263/13130
+s 3221
+f 3212/5082/13131 3211/5081/13132 3332/5264/13133
+f 3332/5264/13133 3211/5081/13132 3277/5175/13134
+s 3222
+f 3275/5171/13135 3212/5082/13136 3333/5265/13137
+f 3333/5265/13137 3212/5082/13136 3332/5264/13138
+s 3223
+f 3213/5083/13139 3276/5084/13140 3334/5174/13141
+f 3334/5174/13141 3276/5084/13140 3399/5266/13142
+s 3224
+f 3215/5085/13143 3335/5267/13144 3221/5092/13145
+f 3221/5092/13145 3335/5267/13144 3342/5268/13146
+s 3225
+f 3216/5086/13147 3336/5269/13148 3215/5085/13149
+f 3215/5085/13149 3336/5269/13148 3335/5267/13150
+s 3226
+f 3217/5087/13151 3337/5270/13152 3216/5086/13153
+f 3216/5086/13153 3337/5270/13152 3336/5269/13154
+s 3227
+f 3218/5088/13155 3338/5271/13156 3217/5087/13157
+f 3217/5087/13157 3338/5271/13156 3337/5270/13158
+s 3228
+f 3278/5089/13159 3339/5272/13160 3218/5088/13161
+f 3218/5088/13161 3339/5272/13160 3338/5271/13162
+s 3229
+f 3219/5090/13163 3340/5257/13164 3220/5091/13165
+f 3220/5091/13165 3340/5257/13164 3341/5273/13166
+s 3230
+f 3220/5091/13167 3341/5273/13168 3278/5089/13169
+f 3278/5089/13169 3341/5273/13168 3339/5272/13170
+s 3231
+f 3221/5092/13171 3342/5268/13172 3277/5175/13173
+f 3277/5175/13173 3342/5268/13172 3400/5274/13174
+s 3232
+f 3222/5017/13175 3280/5093/13176 3343/5181/13177
+f 3343/5181/13177 3280/5093/13176 3402/5275/13178
+s 3233
+f 3281/5178/13179 3344/5276/13180 3223/5094/13181
+f 3223/5094/13181 3344/5276/13180 3224/5021/13182
+s 3234
+f 3164/5278/13183 3282/5279/13184 3346/5277/13185
+f 3346/5277/13185 3282/5279/13184 3405/5280/13186
+s 3235
+f 3225/5018/13187 3283/5096/13188 3347/5182/13189
+f 3347/5182/13189 3283/5096/13188 3408/5281/13190
+s 3236
+f 3166/5183/13191 3348/5186/13192 3283/5282/13193
+f 3283/5282/13193 3348/5186/13192 3409/5283/13194
+s 3237
+f 3224/5285/13195 3344/5286/13196 3284/5284/13197
+f 3284/5284/13197 3344/5286/13196 3410/5287/13198
+s 3238
+f 3226/5097/13199 3349/5288/13200 3231/5098/13201
+f 3231/5098/13201 3349/5288/13200 3354/5289/13202
+s 3239
+f 3228/5100/13203 3350/5290/13204 3227/5099/13205
+f 3227/5099/13205 3350/5290/13204 3351/5291/13206
+s 3240
+f 3227/5099/13207 3351/5291/13208 3229/5023/13209
+f 3229/5023/13209 3351/5291/13208 3411/5292/13210
+s 3241
+f 3230/5101/13211 3348/5293/13212 3228/5100/13213
+f 3228/5100/13213 3348/5293/13212 3284/5294/13214
+s 3242
+f 3170/5102/13215 3287/5295/13216 3286/5103/13217
+f 3286/5103/13217 3287/5295/13216 3415/5296/13218
+s 3243
+f 3231/5104/13219 3354/5297/13220 3287/5105/13221
+f 3287/5105/13221 3354/5297/13220 3416/5298/13222
+s 3244
+f 3232/5106/13223 3288/5299/13224 3279/5107/13225
+f 3279/5107/13225 3288/5299/13224 3401/5300/13226
+s 3245
+f 3290/5302/13227 3233/5194/13228 3355/5301/13229
+f 3355/5301/13229 3233/5194/13228 3356/5195/13230
+s 3246
+f 3234/5031/13231 3289/5108/13232 3356/5195/13233
+f 3356/5195/13233 3289/5108/13232 3359/5303/13234
+s 3247
+f 3237/5114/13235 3235/5115/13236 3357/5304/13237
+f 3357/5304/13237 3235/5115/13236 3358/5305/13238
+s 3248
+f 3235/5109/13239 3291/5112/13240 3358/5306/13241
+f 3358/5306/13241 3291/5112/13240 3419/5307/13242
+s 3249
+f 3289/5191/13243 3236/5035/13244 3359/5308/13245
+f 3359/5308/13245 3236/5035/13244 3360/5197/13246
+s 3250
+f 3293/5198/13247 3237/5114/13248 3361/5309/13249
+f 3361/5309/13249 3237/5114/13248 3357/5304/13250
+s 3251
+f 3239/5116/13251 3362/5310/13252 3241/5041/13253
+f 3241/5041/13253 3362/5310/13252 3297/5205/13254
+s 3252
+f 3240/5119/13255 3274/5176/13256 3239/5116/13257
+f 3239/5116/13257 3274/5176/13256 3362/5310/13258
+s 3253
+f 3295/5311/13259 3364/5312/13260 3242/5208/13261
+f 3242/5208/13261 3364/5312/13260 3298/5209/13262
+s 3254
+f 3244/5313/13263 3302/5214/13264 3243/5202/13265
+f 3243/5202/13265 3302/5214/13264 3294/5199/13266
+s 3255
+f 3299/5314/13267 3303/5218/13268 3244/5313/13269
+f 3244/5313/13269 3303/5218/13268 3302/5214/13270
+s 3256
+f 3303/5218/13271 3367/5315/13272 3245/5219/13273
+f 3245/5219/13273 3367/5315/13272 3368/5316/13274
+s 3257
+f 3245/5123/13275 3368/5317/13276 3246/5124/13277
+f 3246/5124/13277 3368/5317/13276 3369/5318/13278
+s 3258
+f 3246/5124/13279 3369/5318/13280 3247/5125/13281
+f 3247/5125/13281 3369/5318/13280 3430/5319/13282
+s 3259
+f 3301/5127/13283 3247/5126/13284 3370/5320/13285
+f 3370/5320/13285 3247/5126/13284 3431/5321/13286
+s 3260
+f 3248/5128/13287 3371/5322/13288 3258/5129/13289
+f 3258/5129/13289 3371/5322/13288 3385/5323/13290
+s 3261
+f 3248/5130/13291 3249/5131/13292 3371/5324/13293
+f 3371/5324/13293 3249/5131/13292 3372/5325/13294
+s 3262
+f 3249/5131/13295 3253/5132/13296 3372/5325/13297
+f 3372/5325/13297 3253/5132/13296 3376/5231/13298
+s 3263
+f 3304/5327/13299 3250/5232/13300 3373/5326/13301
+f 3373/5326/13301 3250/5232/13300 3377/5233/13302
+s 3264
+f 3188/5134/13303 3306/5137/13304 3307/5328/13305
+f 3307/5328/13305 3306/5137/13304 3435/5329/13306
+s 3265
+f 3306/5137/13307 3252/5136/13308 3316/5330/13309
+f 3316/5330/13309 3252/5136/13308 3196/5331/13310
+s 3266
+f 3310/5142/13311 3191/5058/13312 3380/5332/13313
+f 3380/5332/13313 3191/5058/13312 3311/5239/13314
+s 3267
+f 3313/5334/13315 3383/5335/13316 3257/5333/13317
+f 3257/5333/13317 3383/5335/13316 3382/5336/13318
+s 3268
+f 3313/5337/13319 3193/5244/13320 3378/5237/13321
+f 3378/5237/13321 3193/5244/13320 3309/5234/13322
+s 3269
+f 3194/5338/13323 3314/5339/13324 3254/5138/13325
+f 3254/5138/13325 3314/5339/13324 3377/5233/13326
+s 3270
+f 3258/5129/13327 3385/5323/13328 3316/5144/13329
+f 3316/5144/13329 3385/5323/13328 3443/5340/13330
+s 3271
+f 3260/5155/13331 3265/5154/13332 3386/5341/13333
+f 3386/5341/13333 3265/5154/13332 3448/5342/13334
+s 3272
+f 3260/5147/13335 3386/5343/13336 3261/5148/13337
+f 3261/5148/13337 3386/5343/13336 3387/5344/13338
+s 3273
+f 3261/5148/13339 3387/5344/13340 3262/5149/13341
+f 3262/5149/13341 3387/5344/13340 3388/5345/13342
+s 3274
+f 3262/5149/13343 3388/5345/13344 3263/5150/13345
+f 3263/5150/13345 3388/5345/13344 3449/5346/13346
+s 3275
+f 3264/5151/13347 3263/5150/13348 3389/5347/13349
+f 3389/5347/13349 3263/5150/13348 3449/5346/13350
+s 3276
+f 3264/5152/13351 3389/5348/13352 3322/5153/13353
+f 3322/5153/13353 3389/5348/13352 3450/5349/13354
+s 3277
+f 3266/5156/13355 3365/5207/13356 3267/5157/13357
+f 3267/5157/13357 3365/5207/13356 3390/5350/13358
+s 3278
+f 3267/5158/13359 3390/5351/13360 3268/5159/13361
+f 3268/5159/13361 3390/5351/13360 3391/5352/13362
+s 3279
+f 3268/5159/13363 3391/5352/13364 3269/5160/13365
+f 3269/5160/13365 3391/5352/13364 3392/5353/13366
+s 3280
+f 3269/5160/13367 3392/5353/13368 3270/5074/13369
+f 3270/5074/13369 3392/5353/13368 3340/5257/13370
+s 3281
+f 3323/5162/13371 3394/5354/13372 3210/5008/13373
+f 3210/5008/13373 3394/5354/13372 3331/5170/13374
+s 3282
+f 3272/5079/13375 3325/5163/13376 3395/5263/13377
+f 3395/5263/13377 3325/5163/13376 3452/5355/13378
+s 3283
+f 3206/5005/13379 3326/5165/13380 3325/5163/13381
+f 3325/5163/13381 3326/5165/13380 3453/5356/13382
+s 3284
+f 3326/5165/13383 3207/5164/13384 3396/5357/13385
+f 3396/5357/13385 3207/5164/13384 3327/5358/13386
+s 3285
+f 3273/5166/13387 3397/5359/13388 3327/5167/13389
+f 3327/5167/13389 3397/5359/13388 3455/5360/13390
+s 3286
+f 3209/5080/13391 3328/5261/13392 3330/5169/13393
+f 3330/5169/13393 3328/5261/13392 3456/5361/13394
+s 3287
+f 3274/5168/13395 3330/5169/13396 3362/5362/13397
+f 3362/5362/13397 3330/5169/13396 3424/5363/13398
+s 3288
+f 3273/5166/13399 3331/5170/13400 3397/5359/13401
+f 3397/5359/13401 3331/5170/13400 3459/5364/13402
+s 3289
+f 3333/5265/13403 3398/5365/13404 3275/5171/13405
+f 3275/5171/13405 3398/5365/13404 3463/5366/13406
+s 3290
+f 3276/5084/13407 3275/5171/13408 3399/5266/13409
+f 3399/5266/13409 3275/5171/13408 3463/5366/13410
+s 3291
+f 3271/5172/13411 3334/5174/13412 3393/5367/13413
+f 3393/5367/13413 3334/5174/13412 3464/5368/13414
+s 3292
+f 3277/5175/13415 3400/5274/13416 3332/5264/13417
+f 3332/5264/13417 3400/5274/13416 3461/5369/13418
+s 3293
+f 3279/5107/13419 3401/5300/13420 3280/5177/13421
+f 3280/5177/13421 3401/5300/13420 3402/5370/13422
+s 3294
+f 3344/5276/13423 3281/5178/13424 3403/5371/13425
+f 3403/5371/13425 3281/5178/13424 3404/5372/13426
+s 3295
+f 3281/5178/13427 3345/5179/13428 3404/5372/13429
+f 3404/5372/13429 3345/5179/13428 3474/5373/13430
+s 3296
+f 3164/5375/13431 3346/5376/13432 3345/5374/13433
+f 3345/5374/13433 3346/5376/13432 3475/5377/13434
+s 3297
+f 3282/5180/13435 3343/5181/13436 3406/5378/13437
+f 3406/5378/13437 3343/5181/13436 3472/5379/13438
+s 3298
+f 3347/5182/13439 3407/5380/13440 3226/5097/13441
+f 3226/5097/13441 3407/5380/13440 3349/5288/13442
+s 3299
+f 3228/5382/13443 3284/5284/13444 3350/5381/13445
+f 3350/5381/13445 3284/5284/13444 3410/5287/13446
+s 3300
+f 3348/5186/13447 3230/5383/13448 3409/5283/13449
+f 3409/5283/13449 3230/5383/13448 3353/5384/13450
+s 3301
+f 3288/5190/13451 3285/5187/13452 3412/5385/13453
+f 3412/5385/13453 3285/5187/13452 3413/5386/13454
+s 3302
+f 3285/5187/13455 3352/5188/13456 3413/5386/13457
+f 3413/5386/13457 3352/5188/13456 3480/5387/13458
+s 3303
+f 3229/5389/13459 3346/5277/13460 3352/5388/13461
+f 3352/5388/13461 3346/5277/13460 3405/5280/13462
+s 3304
+f 3353/5391/13463 3286/5392/13464 3414/5390/13465
+f 3414/5390/13465 3286/5392/13464 3415/5393/13466
+s 3305
+f 3355/5301/13467 3417/5394/13468 3290/5302/13469
+f 3290/5302/13469 3417/5394/13468 3418/5395/13470
+s 3306
+f 3290/5193/13471 3418/5396/13472 3291/5112/13473
+f 3291/5112/13473 3418/5396/13472 3419/5307/13474
+s 3307
+f 3360/5398/13475 3292/5399/13476 3420/5397/13477
+f 3420/5397/13477 3292/5399/13476 3293/5400/13478
+s 3308
+f 3361/5401/13479 3421/5402/13480 3293/5400/13481
+f 3293/5400/13481 3421/5402/13480 3420/5397/13482
+s 3309
+f 3296/5403/13483 3422/5404/13484 3295/5311/13485
+f 3295/5311/13485 3422/5404/13484 3364/5312/13486
+s 3310
+f 3363/5405/13487 3423/5406/13488 3296/5403/13489
+f 3296/5403/13489 3423/5406/13488 3422/5404/13490
+s 3311
+f 3362/5362/13491 3424/5363/13492 3297/5407/13493
+f 3297/5407/13493 3424/5363/13492 3425/5408/13494
+s 3312
+f 3297/5407/13495 3425/5408/13496 3363/5405/13497
+f 3363/5405/13497 3425/5408/13496 3423/5406/13498
+s 3313
+f 3364/5312/13499 3426/5409/13500 3298/5209/13501
+f 3298/5209/13501 3426/5409/13500 3427/5410/13502
+s 3314
+f 3298/5209/13503 3427/5410/13504 3365/5207/13505
+f 3365/5207/13505 3427/5410/13504 3390/5350/13506
+s 3315
+f 3303/5218/13507 3299/5314/13508 3367/5315/13509
+f 3367/5315/13509 3299/5314/13508 3428/5411/13510
+s 3316
+f 3299/5210/13511 3300/5211/13512 3428/5412/13513
+f 3428/5412/13513 3300/5211/13512 3429/5413/13514
+s 3317
+f 3300/5211/13515 3366/5212/13516 3429/5413/13517
+f 3429/5413/13517 3366/5212/13516 3490/5414/13518
+s 3318
+f 3301/5127/13519 3370/5320/13520 3366/5213/13521
+f 3366/5213/13521 3370/5320/13520 3491/5415/13522
+s 3319
+f 3304/5327/13523 3373/5326/13524 3432/5416/13525
+f 3432/5416/13525 3373/5326/13524 3499/5417/13526
+s 3320
+f 3305/5221/13527 3304/5220/13528 3433/5418/13529
+f 3433/5418/13529 3304/5220/13528 3432/5419/13530
+s 3321
+f 3374/5225/13531 3384/5420/13532 3252/5222/13533
+f 3252/5222/13533 3384/5420/13532 3196/5421/13534
+s 3322
+f 3374/5225/13535 3251/5224/13536 3434/5422/13537
+f 3434/5422/13537 3251/5224/13536 3375/5423/13538
+s 3323
+f 3305/5221/13539 3433/5418/13540 3375/5226/13541
+f 3375/5226/13541 3433/5418/13540 3501/5424/13542
+s 3324
+f 3306/5137/13543 3316/5330/13544 3435/5329/13545
+f 3435/5329/13545 3316/5330/13544 3443/5425/13546
+s 3325
+f 3308/5228/13547 3307/5227/13548 3436/5426/13549
+f 3436/5426/13549 3307/5227/13548 3502/5427/13550
+s 3326
+f 3308/5230/13551 3436/5428/13552 3376/5231/13553
+f 3376/5231/13553 3436/5428/13552 3498/5429/13554
+s 3327
+f 3255/5236/13555 3379/5430/13556 3378/5237/13557
+f 3378/5237/13557 3379/5430/13556 3440/5431/13558
+s 3328
+f 3310/5142/13559 3380/5332/13560 3379/5238/13561
+f 3379/5238/13561 3380/5332/13560 3503/5432/13562
+s 3329
+f 3380/5332/13563 3311/5239/13564 3437/5433/13565
+f 3437/5433/13565 3311/5239/13564 3438/5434/13566
+s 3330
+f 3311/5239/13567 3312/5240/13568 3438/5434/13569
+f 3438/5434/13569 3312/5240/13568 3439/5435/13570
+s 3331
+f 3312/5437/13571 3381/5438/13572 3439/5436/13573
+f 3439/5436/13573 3381/5438/13572 3504/5439/13574
+s 3332
+f 3256/5441/13575 3382/5336/13576 3381/5440/13577
+f 3381/5440/13577 3382/5336/13576 3505/5442/13578
+s 3333
+f 3383/5443/13579 3313/5337/13580 3440/5431/13581
+f 3440/5431/13581 3313/5337/13580 3378/5237/13582
+s 3334
+f 3314/5247/13583 3315/5248/13584 3441/5444/13585
+f 3441/5444/13585 3315/5248/13584 3442/5445/13586
+s 3335
+f 3315/5248/13587 3384/5249/13588 3442/5445/13589
+f 3442/5445/13589 3384/5249/13588 3500/5446/13590
+s 3336
+f 3317/5256/13591 3444/5447/13592 3265/5154/13593
+f 3265/5154/13593 3444/5447/13592 3448/5342/13594
+s 3337
+f 3317/5250/13595 3318/5251/13596 3444/5448/13597
+f 3444/5448/13597 3318/5251/13596 3445/5449/13598
+s 3338
+f 3318/5251/13599 3319/5252/13600 3445/5449/13601
+f 3445/5449/13601 3319/5252/13600 3446/5450/13602
+s 3339
+f 3319/5252/13603 3320/5253/13604 3446/5450/13605
+f 3446/5450/13605 3320/5253/13604 3509/5451/13606
+s 3340
+f 3321/5254/13607 3447/5452/13608 3320/5253/13609
+f 3320/5253/13609 3447/5452/13608 3509/5451/13610
+s 3341
+f 3321/5255/13611 3322/5153/13612 3447/5453/13613
+f 3447/5453/13613 3322/5153/13612 3450/5349/13614
+s 3342
+f 3323/5162/13615 3324/5454/13616 3394/5354/13617
+f 3394/5354/13617 3324/5454/13616 3451/5455/13618
+s 3343
+f 3324/5259/13619 3393/5260/13620 3451/5456/13621
+f 3451/5456/13621 3393/5260/13620 3516/5457/13622
+s 3344
+f 3326/5165/13623 3396/5357/13624 3453/5356/13625
+f 3453/5356/13625 3396/5357/13624 3518/5458/13626
+s 3345
+f 3396/5357/13627 3327/5358/13628 3454/5459/13629
+f 3454/5459/13629 3327/5358/13628 3455/5460/13630
+s 3346
+f 3328/5261/13631 3329/5262/13632 3457/5461/13633
+f 3457/5461/13633 3329/5262/13632 3458/5462/13634
+s 3347
+f 3329/5464/13635 3395/5465/13636 3458/5463/13637
+f 3458/5463/13637 3395/5465/13636 3517/5466/13638
+s 3348
+f 3394/5354/13639 3460/5467/13640 3331/5170/13641
+f 3331/5170/13641 3460/5467/13640 3459/5364/13642
+s 3349
+f 3332/5264/13643 3461/5369/13644 3333/5265/13645
+f 3333/5265/13645 3461/5369/13644 3462/5468/13646
+s 3350
+f 3333/5265/13647 3462/5468/13648 3398/5365/13649
+f 3398/5365/13649 3462/5468/13648 3520/5469/13650
+s 3351
+f 3334/5174/13651 3399/5266/13652 3464/5368/13653
+f 3464/5368/13653 3399/5266/13652 3522/5470/13654
+s 3352
+f 3336/5269/13655 3465/5471/13656 3335/5267/13657
+f 3335/5267/13657 3465/5471/13656 3466/5472/13658
+s 3353
+f 3335/5267/13659 3466/5472/13660 3342/5268/13661
+f 3342/5268/13661 3466/5472/13660 3471/5473/13662
+s 3354
+f 3337/5270/13663 3467/5474/13664 3336/5269/13665
+f 3336/5269/13665 3467/5474/13664 3465/5471/13666
+s 3355
+f 3338/5271/13667 3468/5475/13668 3337/5270/13669
+f 3337/5270/13669 3468/5475/13668 3467/5474/13670
+s 3356
+f 3339/5272/13671 3469/5476/13672 3338/5271/13673
+f 3338/5271/13673 3469/5476/13672 3468/5475/13674
+s 3357
+f 3341/5273/13675 3470/5477/13676 3339/5272/13677
+f 3339/5272/13677 3470/5477/13676 3469/5476/13678
+s 3358
+f 3340/5257/13679 3392/5353/13680 3341/5273/13681
+f 3341/5273/13681 3392/5353/13680 3470/5477/13682
+s 3359
+f 3342/5268/13683 3471/5473/13684 3400/5274/13685
+f 3400/5274/13685 3471/5473/13684 3523/5478/13686
+s 3360
+f 3343/5480/13687 3402/5370/13688 3472/5479/13689
+f 3472/5479/13689 3402/5370/13688 3525/5481/13690
+s 3361
+f 3403/5482/13691 3473/5483/13692 3344/5286/13693
+f 3344/5286/13693 3473/5483/13692 3410/5287/13694
+s 3362
+f 3282/5279/13695 3406/5484/13696 3405/5280/13697
+f 3405/5280/13697 3406/5484/13696 3529/5485/13698
+s 3363
+f 3347/5182/13699 3408/5281/13700 3407/5380/13701
+f 3407/5380/13701 3408/5281/13700 3531/5486/13702
+s 3364
+f 3283/5282/13703 3409/5283/13704 3408/5487/13705
+f 3408/5487/13705 3409/5283/13704 3481/5488/13706
+s 3365
+f 3407/5380/13707 3476/5489/13708 3349/5288/13709
+f 3349/5288/13709 3476/5489/13708 3477/5490/13710
+s 3366
+f 3349/5288/13711 3477/5490/13712 3354/5289/13713
+f 3354/5289/13713 3477/5490/13712 3482/5491/13714
+s 3367
+f 3350/5290/13715 3478/5492/13716 3351/5291/13717
+f 3351/5291/13717 3478/5492/13716 3479/5493/13718
+s 3368
+f 3351/5291/13719 3479/5493/13720 3411/5292/13721
+f 3411/5292/13721 3479/5493/13720 3532/5494/13722
+s 3369
+f 3229/5495/13723 3411/5496/13724 3346/5376/13725
+f 3346/5376/13725 3411/5496/13724 3475/5377/13726
+s 3370
+f 3288/5299/13727 3412/5497/13728 3401/5300/13729
+f 3401/5300/13729 3412/5497/13728 3524/5498/13730
+s 3371
+f 3409/5283/13731 3353/5384/13732 3481/5488/13733
+f 3481/5488/13733 3353/5384/13732 3414/5499/13734
+s 3372
+f 3287/5105/13735 3416/5298/13736 3415/5500/13737
+f 3415/5500/13737 3416/5298/13736 3537/5501/13738
+s 3373
+f 3354/5297/13739 3482/5502/13740 3416/5298/13741
+f 3416/5298/13741 3482/5502/13740 3538/5503/13742
+s 3374
+f 3417/5394/13743 3355/5301/13744 3483/5504/13745
+f 3483/5504/13745 3355/5301/13744 3484/5505/13746
+s 3375
+f 3355/5301/13747 3356/5195/13748 3484/5505/13749
+f 3484/5505/13749 3356/5195/13748 3359/5303/13750
+s 3376
+f 3361/5309/13751 3357/5304/13752 3485/5506/13753
+f 3485/5506/13753 3357/5304/13752 3486/5507/13754
+s 3377
+f 3357/5304/13755 3358/5305/13756 3486/5507/13757
+f 3486/5507/13757 3358/5305/13756 3541/5508/13758
+s 3378
+f 3419/5307/13759 3487/5509/13760 3358/5306/13761
+f 3358/5306/13761 3487/5509/13760 3541/5510/13762
+s 3379
+f 3360/5398/13763 3420/5397/13764 3359/5511/13765
+f 3359/5511/13765 3420/5397/13764 3484/5512/13766
+s 3380
+f 3421/5514/13767 3361/5309/13768 3488/5513/13769
+f 3488/5513/13769 3361/5309/13768 3485/5506/13770
+s 3381
+f 3422/5404/13771 3489/5515/13772 3364/5312/13773
+f 3364/5312/13773 3489/5515/13772 3426/5409/13774
+s 3382
+f 3367/5315/13775 3492/5516/13776 3368/5316/13777
+f 3368/5316/13777 3492/5516/13776 3493/5517/13778
+s 3383
+f 3368/5317/13779 3493/5518/13780 3369/5318/13781
+f 3369/5318/13781 3493/5518/13780 3494/5519/13782
+s 3384
+f 3247/5125/13783 3430/5319/13784 3431/5520/13785
+f 3431/5520/13785 3430/5319/13784 3549/5521/13786
+s 3385
+f 3369/5318/13787 3494/5519/13788 3430/5319/13789
+f 3430/5319/13789 3494/5519/13788 3550/5522/13790
+s 3386
+f 3370/5320/13791 3431/5321/13792 3495/5523/13793
+f 3495/5523/13793 3431/5321/13792 3551/5524/13794
+s 3387
+f 3371/5322/13795 3496/5525/13796 3385/5323/13797
+f 3385/5323/13797 3496/5525/13796 3552/5526/13798
+s 3388
+f 3372/5325/13799 3497/5527/13800 3371/5324/13801
+f 3371/5324/13801 3497/5527/13800 3496/5528/13802
+s 3389
+f 3376/5231/13803 3498/5429/13804 3372/5325/13805
+f 3372/5325/13805 3498/5429/13804 3497/5527/13806
+s 3390
+f 3373/5326/13807 3377/5233/13808 3441/5529/13809
+f 3441/5529/13809 3377/5233/13808 3314/5339/13810
+s 3391
+f 3384/5420/13811 3374/5225/13812 3500/5530/13813
+f 3500/5530/13813 3374/5225/13812 3434/5422/13814
+s 3392
+f 3375/5423/13815 3501/5531/13816 3434/5422/13817
+f 3434/5422/13817 3501/5531/13816 3555/5532/13818
+s 3393
+f 3307/5328/13819 3435/5329/13820 3502/5533/13821
+f 3502/5533/13821 3435/5329/13820 3556/5534/13822
+s 3394
+f 3380/5332/13823 3437/5433/13824 3503/5432/13825
+f 3503/5432/13825 3437/5433/13824 3558/5535/13826
+s 3395
+f 3383/5335/13827 3506/5536/13828 3382/5336/13829
+f 3382/5336/13829 3506/5536/13828 3505/5442/13830
+s 3396
+f 3440/5431/13831 3507/5537/13832 3383/5443/13833
+f 3383/5443/13833 3507/5537/13832 3506/5538/13834
+s 3397
+f 3443/5340/13835 3385/5323/13836 3508/5539/13837
+f 3508/5539/13837 3385/5323/13836 3552/5526/13838
+s 3398
+f 3386/5341/13839 3448/5342/13840 3510/5540/13841
+f 3510/5540/13841 3448/5342/13840 3567/5541/13842
+s 3399
+f 3387/5344/13843 3386/5343/13844 3511/5542/13845
+f 3511/5542/13845 3386/5343/13844 3510/5543/13846
+s 3400
+f 3387/5344/13847 3511/5542/13848 3388/5345/13849
+f 3388/5345/13849 3511/5542/13848 3568/5544/13850
+s 3401
+f 3449/5346/13851 3388/5345/13852 3512/5545/13853
+f 3512/5545/13853 3388/5345/13852 3568/5544/13854
+s 3402
+f 3389/5347/13855 3449/5346/13856 3513/5546/13857
+f 3513/5546/13857 3449/5346/13856 3512/5545/13858
+s 3403
+f 3450/5349/13859 3389/5348/13860 3514/5547/13861
+f 3514/5547/13861 3389/5348/13860 3513/5548/13862
+s 3404
+f 3391/5352/13863 3390/5351/13864 3515/5549/13865
+f 3515/5549/13865 3390/5351/13864 3427/5550/13866
+s 3405
+f 3391/5352/13867 3515/5549/13868 3392/5353/13869
+f 3392/5353/13869 3515/5549/13868 3470/5477/13870
+s 3406
+f 3395/5465/13871 3452/5551/13872 3517/5466/13873
+f 3517/5466/13873 3452/5551/13872 3570/5552/13874
+s 3407
+f 3325/5163/13875 3453/5356/13876 3452/5355/13877
+f 3452/5355/13877 3453/5356/13876 3571/5553/13878
+s 3408
+f 3396/5357/13879 3454/5459/13880 3518/5458/13881
+f 3518/5458/13881 3454/5459/13880 3572/5554/13882
+s 3409
+f 3397/5359/13883 3519/5555/13884 3455/5360/13885
+f 3455/5360/13885 3519/5555/13884 3573/5556/13886
+s 3410
+f 3330/5169/13887 3456/5361/13888 3424/5363/13889
+f 3424/5363/13889 3456/5361/13888 3544/5557/13890
+s 3411
+f 3328/5261/13891 3457/5461/13892 3456/5361/13893
+f 3456/5361/13893 3457/5461/13892 3574/5558/13894
+s 3412
+f 3397/5359/13895 3459/5364/13896 3519/5555/13897
+f 3519/5555/13897 3459/5364/13896 3576/5559/13898
+s 3413
+f 3394/5561/13899 3451/5562/13900 3460/5560/13901
+f 3460/5560/13901 3451/5562/13900 3569/5563/13902
+s 3414
+f 3463/5366/13903 3398/5365/13904 3521/5564/13905
+f 3521/5564/13905 3398/5365/13904 3579/5565/13906
+s 3415
+f 3399/5266/13907 3463/5366/13908 3522/5470/13909
+f 3522/5470/13909 3463/5366/13908 3521/5564/13910
+s 3416
+f 3393/5367/13911 3464/5368/13912 3516/5566/13913
+f 3516/5566/13913 3464/5368/13912 3580/5567/13914
+s 3417
+f 3400/5274/13915 3523/5478/13916 3461/5369/13917
+f 3461/5369/13917 3523/5478/13916 3575/5568/13918
+s 3418
+f 3401/5300/13919 3524/5498/13920 3402/5370/13921
+f 3402/5370/13921 3524/5498/13920 3525/5481/13922
+s 3419
+f 3403/5482/13923 3526/5569/13924 3473/5483/13925
+f 3473/5483/13925 3526/5569/13924 3584/5570/13926
+s 3420
+f 3404/5372/13927 3527/5571/13928 3403/5371/13929
+f 3403/5371/13929 3527/5571/13928 3526/5572/13930
+s 3421
+f 3404/5372/13931 3474/5373/13932 3527/5571/13933
+f 3527/5571/13933 3474/5373/13932 3585/5573/13934
+s 3422
+f 3474/5575/13935 3345/5374/13936 3528/5574/13937
+f 3528/5574/13937 3345/5374/13936 3475/5377/13938
+s 3423
+f 3405/5280/13939 3529/5485/13940 3352/5388/13941
+f 3352/5388/13941 3529/5485/13940 3480/5576/13942
+s 3424
+f 3472/5578/13943 3530/5579/13944 3406/5577/13945
+f 3406/5577/13945 3530/5579/13944 3586/5580/13946
+s 3425
+f 3350/5381/13947 3410/5287/13948 3478/5581/13949
+f 3478/5581/13949 3410/5287/13948 3473/5483/13950
+s 3426
+f 3407/5380/13951 3531/5486/13952 3476/5489/13953
+f 3476/5489/13953 3531/5486/13952 3587/5582/13954
+s 3427
+f 3412/5584/13955 3413/5585/13956 3533/5583/13957
+f 3533/5583/13957 3413/5585/13956 3592/5586/13958
+s 3428
+f 3480/5576/13959 3534/5588/13960 3413/5587/13961
+f 3413/5587/13961 3534/5588/13960 3592/5589/13962
+s 3429
+f 3481/5488/13963 3414/5499/13964 3535/5590/13965
+f 3535/5590/13965 3414/5499/13964 3536/5591/13966
+s 3430
+f 3414/5390/13967 3415/5393/13968 3536/5592/13969
+f 3536/5592/13969 3415/5393/13968 3537/5593/13970
+s 3431
+f 3483/5504/13971 3539/5594/13972 3417/5394/13973
+f 3417/5394/13973 3539/5594/13972 3540/5595/13974
+s 3432
+f 3417/5394/13975 3540/5595/13976 3418/5395/13977
+f 3418/5395/13977 3540/5595/13976 3595/5596/13978
+s 3433
+f 3419/5598/13979 3418/5395/13980 3487/5597/13981
+f 3487/5597/13981 3418/5395/13980 3595/5596/13982
+s 3434
+f 3420/5397/13983 3421/5402/13984 3484/5512/13985
+f 3484/5512/13985 3421/5402/13984 3483/5599/13986
+s 3435
+f 3421/5402/13987 3488/5600/13988 3483/5599/13989
+f 3483/5599/13989 3488/5600/13988 3539/5601/13990
+s 3436
+f 3423/5406/13991 3542/5602/13992 3422/5404/13993
+f 3422/5404/13993 3542/5602/13992 3489/5515/13994
+s 3437
+f 3425/5408/13995 3543/5603/13996 3423/5406/13997
+f 3423/5406/13997 3543/5603/13996 3542/5602/13998
+s 3438
+f 3424/5363/13999 3544/5557/14000 3425/5408/14001
+f 3425/5408/14001 3544/5557/14000 3543/5603/14002
+s 3439
+f 3489/5605/14003 3545/5606/14004 3426/5604/14005
+f 3426/5604/14005 3545/5606/14004 3546/5607/14006
+s 3440
+f 3426/5604/14007 3546/5607/14008 3427/5550/14009
+f 3427/5550/14009 3546/5607/14008 3515/5549/14010
+s 3441
+f 3367/5315/14011 3428/5411/14012 3492/5516/14013
+f 3492/5516/14013 3428/5411/14012 3599/5608/14014
+s 3442
+f 3429/5413/14015 3547/5609/14016 3428/5412/14017
+f 3428/5412/14017 3547/5609/14016 3599/5610/14018
+s 3443
+f 3490/5414/14019 3548/5611/14020 3429/5413/14021
+f 3429/5413/14021 3548/5611/14020 3547/5609/14022
+s 3444
+f 3366/5212/14023 3491/5612/14024 3490/5414/14025
+f 3490/5414/14025 3491/5612/14024 3600/5613/14026
+s 3445
+f 3370/5320/14027 3495/5523/14028 3491/5415/14029
+f 3491/5415/14029 3495/5523/14028 3601/5614/14030
+s 3446
+f 3433/5418/14031 3432/5419/14032 3553/5615/14033
+f 3553/5615/14033 3432/5419/14032 3554/5616/14034
+s 3447
+f 3432/5416/14035 3499/5417/14036 3554/5617/14037
+f 3554/5617/14037 3499/5417/14036 3608/5618/14038
+s 3448
+f 3373/5326/14039 3441/5529/14040 3499/5417/14041
+f 3499/5417/14041 3441/5529/14040 3561/5619/14042
+s 3449
+f 3434/5422/14043 3555/5532/14044 3500/5530/14045
+f 3500/5530/14045 3555/5532/14044 3562/5620/14046
+s 3450
+f 3433/5418/14047 3553/5615/14048 3501/5424/14049
+f 3501/5424/14049 3553/5615/14048 3609/5621/14050
+s 3451
+f 3435/5329/14051 3443/5425/14052 3556/5534/14053
+f 3556/5534/14053 3443/5425/14052 3508/5622/14054
+s 3452
+f 3436/5624/14055 3502/5625/14056 3557/5623/14057
+f 3557/5623/14057 3502/5625/14056 3610/5626/14058
+s 3453
+f 3436/5428/14059 3557/5627/14060 3498/5429/14061
+f 3498/5429/14061 3557/5627/14060 3607/5628/14062
+s 3454
+f 3379/5430/14063 3503/5629/14064 3440/5431/14065
+f 3440/5431/14065 3503/5629/14064 3507/5537/14066
+s 3455
+f 3438/5434/14067 3559/5630/14068 3437/5433/14069
+f 3437/5433/14069 3559/5630/14068 3612/5631/14070
+s 3456
+f 3438/5434/14071 3439/5435/14072 3559/5630/14073
+f 3559/5630/14073 3439/5435/14072 3613/5632/14074
+s 3457
+f 3504/5439/14075 3560/5633/14076 3439/5436/14077
+f 3439/5436/14077 3560/5633/14076 3613/5634/14078
+s 3458
+f 3381/5440/14079 3505/5442/14080 3504/5635/14081
+f 3504/5635/14081 3505/5442/14080 3614/5636/14082
+s 3459
+f 3441/5444/14083 3442/5445/14084 3561/5637/14085
+f 3561/5637/14085 3442/5445/14084 3617/5638/14086
+s 3460
+f 3500/5446/14087 3562/5639/14088 3442/5445/14089
+f 3442/5445/14089 3562/5639/14088 3617/5638/14090
+s 3461
+f 3444/5447/14091 3563/5640/14092 3448/5342/14093
+f 3448/5342/14093 3563/5640/14092 3567/5541/14094
+s 3462
+f 3445/5449/14095 3564/5641/14096 3444/5448/14097
+f 3444/5448/14097 3564/5641/14096 3563/5642/14098
+s 3463
+f 3445/5449/14099 3446/5450/14100 3564/5641/14101
+f 3564/5641/14101 3446/5450/14100 3620/5643/14102
+s 3464
+f 3509/5451/14103 3565/5644/14104 3446/5450/14105
+f 3446/5450/14105 3565/5644/14104 3620/5643/14106
+s 3465
+f 3447/5452/14107 3566/5645/14108 3509/5451/14109
+f 3509/5451/14109 3566/5645/14108 3565/5644/14110
+s 3466
+f 3450/5349/14111 3514/5547/14112 3447/5453/14113
+f 3447/5453/14113 3514/5547/14112 3566/5646/14114
+s 3467
+f 3451/5456/14115 3516/5457/14116 3569/5647/14117
+f 3569/5647/14117 3516/5457/14116 3626/5648/14118
+s 3468
+f 3453/5356/14119 3518/5458/14120 3571/5553/14121
+f 3571/5553/14121 3518/5458/14120 3628/5649/14122
+s 3469
+f 3454/5459/14123 3455/5460/14124 3572/5554/14125
+f 3572/5554/14125 3455/5460/14124 3573/5650/14126
+s 3470
+f 3458/5463/14127 3575/5568/14128 3457/5651/14129
+f 3457/5651/14129 3575/5568/14128 3523/5478/14130
+s 3471
+f 3458/5463/14131 3517/5466/14132 3575/5568/14133
+f 3575/5568/14133 3517/5466/14132 3627/5652/14134
+s 3472
+f 3460/5467/14135 3569/5653/14136 3459/5364/14137
+f 3459/5364/14137 3569/5653/14136 3576/5559/14138
+s 3473
+f 3461/5369/14139 3575/5568/14140 3462/5468/14141
+f 3462/5468/14141 3575/5568/14140 3627/5652/14142
+s 3474
+f 3520/5469/14143 3577/5654/14144 3398/5365/14145
+f 3398/5365/14145 3577/5654/14144 3579/5565/14146
+s 3475
+f 3520/5469/14147 3462/5468/14148 3578/5655/14149
+f 3578/5655/14149 3462/5468/14148 3627/5652/14150
+s 3476
+f 3464/5368/14151 3522/5470/14152 3580/5567/14153
+f 3580/5567/14153 3522/5470/14152 3632/5656/14154
+s 3477
+f 3467/5474/14155 3581/5657/14156 3465/5471/14157
+f 3465/5471/14157 3581/5657/14156 3582/5658/14158
+s 3478
+f 3465/5471/14159 3582/5658/14160 3466/5472/14161
+f 3466/5472/14161 3582/5658/14160 3583/5659/14162
+s 3479
+f 3466/5472/14163 3583/5659/14164 3471/5473/14165
+f 3471/5473/14165 3583/5659/14164 3574/5660/14166
+s 3480
+f 3468/5475/14167 3545/5606/14168 3467/5474/14169
+f 3467/5474/14169 3545/5606/14168 3581/5657/14170
+s 3481
+f 3469/5476/14171 3546/5607/14172 3468/5475/14173
+f 3468/5475/14173 3546/5607/14172 3545/5606/14174
+s 3482
+f 3470/5477/14175 3515/5549/14176 3469/5476/14177
+f 3469/5476/14177 3515/5549/14176 3546/5607/14178
+s 3483
+f 3471/5473/14179 3574/5660/14180 3523/5478/14181
+f 3523/5478/14181 3574/5660/14180 3457/5651/14182
+s 3484
+f 3472/5479/14183 3525/5481/14184 3530/5661/14185
+f 3530/5661/14185 3525/5481/14184 3634/5662/14186
+s 3485
+f 3474/5575/14187 3528/5574/14188 3585/5663/14189
+f 3585/5663/14189 3528/5574/14188 3637/5664/14190
+s 3486
+f 3528/5574/14191 3475/5377/14192 3532/5665/14193
+f 3532/5665/14193 3475/5377/14192 3411/5496/14194
+s 3487
+f 3406/5484/14195 3586/5666/14196 3529/5485/14197
+f 3529/5485/14197 3586/5666/14196 3593/5667/14198
+s 3488
+f 3408/5487/14199 3481/5488/14200 3531/5668/14201
+f 3531/5668/14201 3481/5488/14200 3535/5590/14202
+s 3489
+f 3473/5483/14203 3584/5570/14204 3478/5581/14205
+f 3478/5581/14205 3584/5570/14204 3589/5669/14206
+s 3490
+f 3477/5490/14207 3476/5489/14208 3588/5670/14209
+f 3588/5670/14209 3476/5489/14208 3640/5671/14210
+s 3491
+f 3477/5490/14211 3588/5670/14212 3482/5491/14213
+f 3482/5491/14213 3588/5670/14212 3641/5672/14214
+s 3492
+f 3478/5492/14215 3589/5673/14216 3479/5493/14217
+f 3479/5493/14217 3589/5673/14216 3642/5674/14218
+s 3493
+f 3532/5494/14219 3479/5493/14220 3590/5675/14221
+f 3590/5675/14221 3479/5493/14220 3642/5674/14222
+s 3494
+f 3524/5498/14223 3412/5497/14224 3591/5676/14225
+f 3591/5676/14225 3412/5497/14224 3533/5677/14226
+s 3495
+f 3529/5485/14227 3593/5667/14228 3480/5576/14229
+f 3480/5576/14229 3593/5667/14228 3534/5588/14230
+s 3496
+f 3416/5298/14231 3538/5503/14232 3537/5501/14233
+f 3537/5501/14233 3538/5503/14232 3649/5678/14234
+s 3497
+f 3538/5503/14235 3482/5502/14236 3594/5679/14237
+f 3594/5679/14237 3482/5502/14236 3641/5680/14238
+s 3498
+f 3485/5506/14239 3596/5681/14240 3488/5513/14241
+f 3488/5513/14241 3596/5681/14240 3650/5682/14242
+s 3499
+f 3485/5506/14243 3486/5507/14244 3596/5681/14245
+f 3596/5681/14245 3486/5507/14244 3597/5683/14246
+s 3500
+f 3486/5507/14247 3541/5508/14248 3597/5683/14249
+f 3597/5683/14249 3541/5508/14248 3652/5684/14250
+s 3501
+f 3487/5509/14251 3598/5685/14252 3541/5510/14253
+f 3541/5510/14253 3598/5685/14252 3653/5686/14254
+s 3502
+f 3542/5687/14255 3581/5657/14256 3489/5605/14257
+f 3489/5605/14257 3581/5657/14256 3545/5606/14258
+s 3503
+f 3490/5414/14259 3600/5613/14260 3548/5611/14261
+f 3548/5611/14261 3600/5613/14260 3657/5688/14262
+s 3504
+f 3493/5517/14263 3492/5516/14264 3602/5689/14265
+f 3602/5689/14265 3492/5516/14264 3659/5690/14266
+s 3505
+f 3494/5519/14267 3493/5518/14268 3603/5691/14269
+f 3603/5691/14269 3493/5518/14268 3658/5692/14270
+s 3506
+f 3431/5321/14271 3549/5693/14272 3551/5524/14273
+f 3551/5524/14273 3549/5693/14272 3660/5694/14274
+s 3507
+f 3430/5319/14275 3550/5522/14276 3549/5521/14277
+f 3549/5521/14277 3550/5522/14276 3660/5695/14278
+s 3508
+f 3494/5519/14279 3603/5691/14280 3550/5522/14281
+f 3550/5522/14281 3603/5691/14280 3661/5696/14282
+s 3509
+f 3495/5523/14283 3551/5524/14284 3604/5697/14285
+f 3604/5697/14285 3551/5524/14284 3662/5698/14286
+s 3510
+f 3497/5527/14287 3605/5699/14288 3496/5528/14289
+f 3496/5528/14289 3605/5699/14288 3606/5700/14290
+s 3511
+f 3496/5702/14291 3606/5703/14292 3552/5701/14293
+f 3552/5701/14293 3606/5703/14292 3663/5704/14294
+s 3512
+f 3498/5429/14295 3607/5628/14296 3497/5527/14297
+f 3497/5527/14297 3607/5628/14296 3605/5699/14298
+s 3513
+f 3501/5531/14299 3609/5705/14300 3555/5532/14301
+f 3555/5532/14301 3609/5705/14300 3666/5706/14302
+s 3514
+f 3502/5533/14303 3556/5534/14304 3610/5707/14305
+f 3610/5707/14305 3556/5534/14304 3618/5708/14306
+s 3515
+f 3503/5629/14307 3558/5709/14308 3507/5537/14309
+f 3507/5537/14309 3558/5709/14308 3616/5710/14310
+s 3516
+f 3558/5535/14311 3437/5433/14312 3611/5711/14313
+f 3611/5711/14313 3437/5433/14312 3612/5631/14314
+s 3517
+f 3504/5635/14315 3614/5636/14316 3560/5712/14317
+f 3560/5712/14317 3614/5636/14316 3668/5713/14318
+s 3518
+f 3506/5536/14319 3615/5714/14320 3505/5442/14321
+f 3505/5442/14321 3615/5714/14320 3614/5636/14322
+s 3519
+f 3507/5537/14323 3616/5710/14324 3506/5538/14325
+f 3506/5538/14325 3616/5710/14324 3615/5715/14326
+s 3520
+f 3556/5534/14327 3508/5622/14328 3618/5708/14329
+f 3618/5708/14329 3508/5622/14328 3619/5716/14330
+s 3521
+f 3508/5622/14331 3552/5717/14332 3619/5716/14333
+f 3619/5716/14333 3552/5717/14332 3663/5718/14334
+s 3522
+f 3511/5542/14335 3510/5543/14336 3621/5719/14337
+f 3621/5719/14337 3510/5543/14336 3622/5720/14338
+s 3523
+f 3510/5540/14339 3567/5541/14340 3622/5721/14341
+f 3622/5721/14341 3567/5541/14340 3675/5722/14342
+s 3524
+f 3511/5542/14343 3621/5719/14344 3568/5544/14345
+f 3568/5544/14345 3621/5719/14344 3623/5723/14346
+s 3525
+f 3568/5544/14347 3623/5723/14348 3512/5545/14349
+f 3512/5545/14349 3623/5723/14348 3676/5724/14350
+s 3526
+f 3513/5546/14351 3512/5545/14352 3624/5725/14353
+f 3624/5725/14353 3512/5545/14352 3676/5724/14354
+s 3527
+f 3514/5547/14355 3513/5548/14356 3625/5726/14357
+f 3625/5726/14357 3513/5548/14356 3624/5727/14358
+s 3528
+f 3517/5466/14359 3570/5552/14360 3627/5652/14361
+f 3627/5652/14361 3570/5552/14360 3578/5655/14362
+s 3529
+f 3452/5551/14363 3571/5728/14364 3570/5552/14365
+f 3570/5552/14365 3571/5728/14364 3677/5729/14366
+s 3530
+f 3518/5458/14367 3572/5554/14368 3628/5649/14369
+f 3628/5649/14369 3572/5554/14368 3678/5730/14370
+s 3531
+f 3573/5732/14371 3519/5733/14372 3629/5731/14373
+f 3629/5731/14373 3519/5733/14372 3630/5734/14374
+s 3532
+f 3456/5361/14375 3574/5558/14376 3544/5557/14377
+f 3544/5557/14377 3574/5558/14376 3583/5735/14378
+s 3533
+f 3519/5733/14379 3576/5736/14380 3630/5734/14381
+f 3630/5734/14381 3576/5736/14380 3679/5737/14382
+s 3534
+f 3577/5654/14383 3520/5469/14384 3631/5738/14385
+f 3631/5738/14385 3520/5469/14384 3578/5655/14386
+s 3535
+f 3522/5470/14387 3521/5564/14388 3632/5656/14389
+f 3632/5656/14389 3521/5564/14388 3633/5739/14390
+s 3536
+f 3521/5564/14391 3579/5565/14392 3633/5739/14393
+f 3633/5739/14393 3579/5565/14392 3682/5740/14394
+s 3537
+f 3516/5566/14395 3580/5567/14396 3626/5741/14397
+f 3626/5741/14397 3580/5567/14396 3683/5742/14398
+s 3538
+f 3525/5481/14399 3524/5498/14400 3634/5662/14401
+f 3634/5662/14401 3524/5498/14400 3591/5676/14402
+s 3539
+f 3527/5744/14403 3635/5745/14404 3526/5743/14405
+f 3526/5743/14405 3635/5745/14404 3636/5746/14406
+s 3540
+f 3526/5569/14407 3636/5747/14408 3584/5570/14409
+f 3584/5570/14409 3636/5747/14408 3684/5748/14410
+s 3541
+f 3527/5744/14411 3585/5749/14412 3635/5745/14413
+f 3635/5745/14413 3585/5749/14412 3685/5750/14414
+s 3542
+f 3528/5574/14415 3532/5665/14416 3637/5664/14417
+f 3637/5664/14417 3532/5665/14416 3590/5751/14418
+s 3543
+f 3530/5579/14419 3638/5752/14420 3586/5580/14421
+f 3586/5580/14421 3638/5752/14420 3686/5753/14422
+s 3544
+f 3587/5582/14423 3639/5754/14424 3476/5489/14425
+f 3476/5489/14425 3639/5754/14424 3640/5671/14426
+s 3545
+f 3531/5668/14427 3535/5590/14428 3587/5755/14429
+f 3587/5755/14429 3535/5590/14428 3647/5756/14430
+s 3546
+f 3591/5676/14431 3533/5677/14432 3643/5757/14433
+f 3643/5757/14433 3533/5677/14432 3644/5758/14434
+s 3547
+f 3533/5583/14435 3592/5586/14436 3644/5759/14437
+f 3644/5759/14437 3592/5586/14436 3691/5760/14438
+s 3548
+f 3593/5667/14439 3645/5761/14440 3534/5588/14441
+f 3534/5588/14441 3645/5761/14440 3646/5762/14442
+s 3549
+f 3534/5588/14443 3646/5762/14444 3592/5589/14445
+f 3592/5589/14445 3646/5762/14444 3691/5763/14446
+s 3550
+f 3535/5590/14447 3536/5591/14448 3647/5756/14449
+f 3647/5756/14449 3536/5591/14448 3648/5764/14450
+s 3551
+f 3536/5592/14451 3537/5593/14452 3648/5765/14453
+f 3648/5765/14453 3537/5593/14452 3649/5766/14454
+s 3552
+f 3538/5503/14455 3594/5679/14456 3649/5678/14457
+f 3649/5678/14457 3594/5679/14456 3692/5767/14458
+s 3553
+f 3488/5600/14459 3650/5768/14460 3539/5601/14461
+f 3539/5601/14461 3650/5768/14460 3693/5769/14462
+s 3554
+f 3540/5595/14463 3539/5594/14464 3651/5770/14465
+f 3651/5770/14465 3539/5594/14464 3693/5771/14466
+s 3555
+f 3540/5595/14467 3651/5770/14468 3595/5596/14469
+f 3595/5596/14469 3651/5770/14468 3694/5772/14470
+s 3556
+f 3487/5597/14471 3595/5596/14472 3598/5773/14473
+f 3598/5773/14473 3595/5596/14472 3695/5774/14474
+s 3557
+f 3543/5603/14475 3582/5775/14476 3542/5602/14477
+f 3542/5602/14477 3582/5775/14476 3581/5776/14478
+s 3558
+f 3544/5557/14479 3583/5735/14480 3543/5603/14481
+f 3543/5603/14481 3583/5735/14480 3582/5775/14482
+s 3559
+f 3599/5608/14483 3654/5777/14484 3492/5516/14485
+f 3492/5516/14485 3654/5777/14484 3659/5690/14486
+s 3560
+f 3548/5611/14487 3655/5778/14488 3547/5609/14489
+f 3547/5609/14489 3655/5778/14488 3656/5779/14490
+s 3561
+f 3547/5609/14491 3656/5779/14492 3599/5610/14493
+f 3599/5610/14493 3656/5779/14492 3701/5780/14494
+s 3562
+f 3600/5613/14495 3491/5612/14496 3657/5688/14497
+f 3657/5688/14497 3491/5612/14496 3601/5781/14498
+s 3563
+f 3495/5523/14499 3604/5697/14500 3601/5614/14501
+f 3601/5614/14501 3604/5697/14500 3703/5782/14502
+s 3564
+f 3493/5518/14503 3602/5783/14504 3658/5692/14505
+f 3658/5692/14505 3602/5783/14504 3704/5784/14506
+s 3565
+f 3553/5786/14507 3554/5787/14508 3664/5785/14509
+f 3664/5785/14509 3554/5787/14508 3665/5788/14510
+s 3566
+f 3554/5617/14511 3608/5618/14512 3665/5789/14513
+f 3665/5789/14513 3608/5618/14512 3714/5790/14514
+s 3567
+f 3499/5417/14515 3561/5619/14516 3608/5618/14517
+f 3608/5618/14517 3561/5619/14516 3669/5791/14518
+s 3568
+f 3555/5532/14519 3666/5706/14520 3562/5620/14521
+f 3562/5620/14521 3666/5706/14520 3670/5792/14522
+s 3569
+f 3553/5786/14523 3664/5785/14524 3609/5793/14525
+f 3609/5793/14525 3664/5785/14524 3715/5794/14526
+s 3570
+f 3557/5623/14527 3610/5626/14528 3667/5795/14529
+f 3667/5795/14529 3610/5626/14528 3716/5796/14530
+s 3571
+f 3557/5627/14531 3667/5797/14532 3607/5628/14533
+f 3607/5628/14533 3667/5797/14532 3711/5798/14534
+s 3572
+f 3558/5709/14535 3611/5799/14536 3616/5710/14537
+f 3616/5710/14537 3611/5799/14536 3717/5800/14538
+s 3573
+f 3559/5630/14539 3613/5632/14540 3612/5631/14541
+f 3612/5631/14541 3613/5632/14540 3718/5801/14542
+s 3574
+f 3560/5803/14543 3668/5804/14544 3613/5802/14545
+f 3613/5802/14545 3668/5804/14544 3718/5805/14546
+s 3575
+f 3561/5637/14547 3617/5638/14548 3669/5806/14549
+f 3669/5806/14549 3617/5638/14548 3720/5807/14550
+s 3576
+f 3562/5639/14551 3670/5808/14552 3617/5638/14553
+f 3617/5638/14553 3670/5808/14552 3720/5807/14554
+s 3577
+f 3564/5641/14555 3671/5809/14556 3563/5642/14557
+f 3563/5642/14557 3671/5809/14556 3672/5810/14558
+s 3578
+f 3563/5640/14559 3672/5811/14560 3567/5541/14561
+f 3567/5541/14561 3672/5811/14560 3675/5722/14562
+s 3579
+f 3564/5641/14563 3620/5643/14564 3671/5809/14565
+f 3671/5809/14565 3620/5643/14564 3674/5812/14566
+s 3580
+f 3566/5645/14567 3673/5813/14568 3565/5644/14569
+f 3565/5644/14569 3673/5813/14568 3723/5814/14570
+s 3581
+f 3620/5643/14571 3565/5644/14572 3674/5812/14573
+f 3674/5812/14573 3565/5644/14572 3723/5814/14574
+s 3582
+f 3514/5547/14575 3625/5726/14576 3566/5646/14577
+f 3566/5646/14577 3625/5726/14576 3673/5815/14578
+s 3583
+f 3569/5816/14579 3626/5817/14580 3576/5736/14581
+f 3576/5736/14581 3626/5817/14580 3679/5737/14582
+s 3584
+f 3571/5728/14583 3628/5818/14584 3677/5729/14585
+f 3677/5729/14585 3628/5818/14584 3729/5819/14586
+s 3585
+f 3572/5554/14587 3573/5650/14588 3678/5730/14589
+f 3678/5730/14589 3573/5650/14588 3629/5820/14590
+s 3586
+f 3631/5738/14591 3680/5821/14592 3577/5654/14593
+f 3577/5654/14593 3680/5821/14592 3681/5822/14594
+s 3587
+f 3577/5654/14595 3681/5822/14596 3579/5565/14597
+f 3579/5565/14597 3681/5822/14596 3682/5740/14598
+s 3588
+f 3631/5738/14599 3578/5655/14600 3677/5729/14601
+f 3677/5729/14601 3578/5655/14600 3570/5552/14602
+s 3589
+f 3580/5567/14603 3632/5656/14604 3683/5742/14605
+f 3683/5742/14605 3632/5656/14604 3733/5823/14606
+s 3590
+f 3530/5661/14607 3634/5662/14608 3638/5824/14609
+f 3638/5824/14609 3634/5662/14608 3690/5825/14610
+s 3591
+f 3585/5663/14611 3637/5664/14612 3685/5826/14613
+f 3685/5826/14613 3637/5664/14612 3688/5827/14614
+s 3592
+f 3586/5666/14615 3686/5828/14616 3593/5667/14617
+f 3593/5667/14617 3686/5828/14616 3645/5761/14618
+s 3593
+f 3584/5570/14619 3684/5748/14620 3589/5669/14621
+f 3589/5669/14621 3684/5748/14620 3687/5829/14622
+s 3594
+f 3587/5755/14623 3647/5756/14624 3639/5830/14625
+f 3639/5830/14625 3647/5756/14624 3738/5831/14626
+s 3595
+f 3588/5670/14627 3640/5671/14628 3641/5672/14629
+f 3641/5672/14629 3640/5671/14628 3739/5832/14630
+s 3596
+f 3589/5834/14631 3687/5835/14632 3642/5833/14633
+f 3642/5833/14633 3687/5835/14632 3740/5836/14634
+s 3597
+f 3637/5664/14635 3590/5751/14636 3688/5827/14637
+f 3688/5827/14637 3590/5751/14636 3689/5837/14638
+s 3598
+f 3590/5839/14639 3642/5833/14640 3689/5838/14641
+f 3689/5838/14641 3642/5833/14640 3740/5836/14642
+s 3599
+f 3634/5662/14643 3591/5676/14644 3690/5825/14645
+f 3690/5825/14645 3591/5676/14644 3643/5757/14646
+s 3600
+f 3594/5679/14647 3641/5680/14648 3692/5767/14649
+f 3692/5767/14649 3641/5680/14648 3739/5840/14650
+s 3601
+f 3650/5768/14651 3596/5842/14652 3696/5841/14653
+f 3696/5841/14653 3596/5842/14652 3697/5843/14654
+s 3602
+f 3596/5681/14655 3597/5683/14656 3697/5844/14657
+f 3697/5844/14657 3597/5683/14656 3698/5845/14658
+s 3603
+f 3597/5683/14659 3652/5684/14660 3698/5845/14661
+f 3698/5845/14661 3652/5684/14660 3750/5846/14662
+s 3604
+f 3541/5510/14663 3653/5686/14664 3652/5847/14665
+f 3652/5847/14665 3653/5686/14664 3751/5848/14666
+s 3605
+f 3598/5685/14667 3699/5849/14668 3653/5686/14669
+f 3653/5686/14669 3699/5849/14668 3752/5850/14670
+s 3606
+f 3599/5608/14671 3700/5851/14672 3654/5777/14673
+f 3654/5777/14673 3700/5851/14672 3753/5852/14674
+s 3607
+f 3548/5611/14675 3657/5688/14676 3655/5778/14677
+f 3655/5778/14677 3657/5688/14676 3702/5853/14678
+s 3608
+f 3657/5688/14679 3601/5781/14680 3702/5853/14681
+f 3702/5853/14681 3601/5781/14680 3757/5854/14682
+s 3609
+f 3659/5690/14683 3705/5855/14684 3602/5689/14685
+f 3602/5689/14685 3705/5855/14684 3759/5856/14686
+s 3610
+f 3658/5692/14687 3706/5857/14688 3603/5691/14689
+f 3603/5691/14689 3706/5857/14688 3661/5696/14690
+s 3611
+f 3660/5694/14691 3707/5858/14692 3551/5524/14693
+f 3551/5524/14693 3707/5858/14692 3760/5859/14694
+s 3612
+f 3550/5522/14695 3708/5860/14696 3660/5695/14697
+f 3660/5695/14697 3708/5860/14696 3707/5861/14698
+s 3613
+f 3550/5522/14699 3661/5696/14700 3708/5860/14701
+f 3708/5860/14701 3661/5696/14700 3761/5862/14702
+s 3614
+f 3604/5697/14703 3662/5698/14704 3709/5863/14705
+f 3709/5863/14705 3662/5698/14704 3762/5864/14706
+s 3615
+f 3551/5524/14707 3710/5865/14708 3662/5698/14709
+f 3662/5698/14709 3710/5865/14708 3763/5866/14710
+s 3616
+f 3607/5628/14711 3711/5798/14712 3605/5699/14713
+f 3605/5699/14713 3711/5798/14712 3712/5867/14714
+s 3617
+f 3605/5699/14715 3712/5867/14716 3606/5700/14717
+f 3606/5700/14717 3712/5867/14716 3713/5868/14718
+s 3618
+f 3606/5703/14719 3713/5869/14720 3663/5704/14721
+f 3663/5704/14721 3713/5869/14720 3764/5870/14722
+s 3619
+f 3609/5705/14723 3715/5871/14724 3666/5706/14725
+f 3666/5706/14725 3715/5871/14724 3766/5872/14726
+s 3620
+f 3610/5707/14727 3618/5708/14728 3716/5873/14729
+f 3716/5873/14729 3618/5708/14728 3721/5874/14730
+s 3621
+f 3611/5799/14731 3612/5875/14732 3717/5800/14733
+f 3717/5800/14733 3612/5875/14732 3718/5876/14734
+s 3622
+f 3668/5713/14735 3614/5636/14736 3719/5877/14737
+f 3719/5877/14737 3614/5636/14736 3615/5714/14738
+s 3623
+f 3615/5715/14739 3616/5710/14740 3719/5878/14741
+f 3719/5878/14741 3616/5710/14740 3717/5800/14742
+s 3624
+f 3618/5708/14743 3619/5716/14744 3721/5874/14745
+f 3721/5874/14745 3619/5716/14744 3722/5879/14746
+s 3625
+f 3619/5716/14747 3663/5718/14748 3722/5879/14749
+f 3722/5879/14749 3663/5718/14748 3764/5880/14750
+s 3626
+f 3621/5719/14751 3622/5720/14752 3724/5881/14753
+f 3724/5881/14753 3622/5720/14752 3725/5882/14754
+s 3627
+f 3622/5721/14755 3675/5722/14756 3725/5883/14757
+f 3725/5883/14757 3675/5722/14756 3776/5884/14758
+s 3628
+f 3621/5719/14759 3724/5881/14760 3623/5723/14761
+f 3623/5723/14761 3724/5881/14760 3726/5885/14762
+s 3629
+f 3623/5723/14763 3726/5885/14764 3676/5724/14765
+f 3676/5724/14765 3726/5885/14764 3777/5886/14766
+s 3630
+f 3624/5725/14767 3676/5724/14768 3727/5887/14769
+f 3727/5887/14769 3676/5724/14768 3777/5886/14770
+s 3631
+f 3625/5726/14771 3624/5727/14772 3728/5888/14773
+f 3728/5888/14773 3624/5727/14772 3727/5889/14774
+s 3632
+f 3628/5818/14775 3678/5890/14776 3729/5819/14777
+f 3729/5819/14777 3678/5890/14776 3730/5891/14778
+s 3633
+f 3678/5890/14779 3629/5892/14780 3730/5891/14781
+f 3730/5891/14781 3629/5892/14780 3731/5893/14782
+s 3634
+f 3629/5731/14783 3630/5734/14784 3731/5894/14785
+f 3731/5894/14785 3630/5734/14784 3778/5895/14786
+s 3635
+f 3679/5737/14787 3732/5896/14788 3630/5734/14789
+f 3630/5734/14789 3732/5896/14788 3778/5895/14790
+s 3636
+f 3680/5821/14791 3631/5738/14792 3729/5819/14793
+f 3729/5819/14793 3631/5738/14792 3677/5729/14794
+s 3637
+f 3632/5656/14795 3633/5739/14796 3733/5823/14797
+f 3733/5823/14797 3633/5739/14796 3734/5897/14798
+s 3638
+f 3633/5739/14799 3682/5740/14800 3734/5897/14801
+f 3734/5897/14801 3682/5740/14800 3781/5898/14802
+s 3639
+f 3626/5817/14803 3683/5899/14804 3679/5737/14805
+f 3679/5737/14805 3683/5899/14804 3732/5896/14806
+s 3640
+f 3635/5745/14807 3735/5900/14808 3636/5746/14809
+f 3636/5746/14809 3735/5900/14808 3736/5901/14810
+s 3641
+f 3636/5747/14811 3736/5902/14812 3684/5748/14813
+f 3684/5748/14813 3736/5902/14812 3782/5903/14814
+s 3642
+f 3635/5745/14815 3685/5750/14816 3735/5900/14817
+f 3735/5900/14817 3685/5750/14816 3783/5904/14818
+s 3643
+f 3638/5752/14819 3737/5905/14820 3686/5753/14821
+f 3686/5753/14821 3737/5905/14820 3744/5906/14822
+s 3644
+f 3639/5830/14823 3738/5831/14824 3640/5907/14825
+f 3640/5907/14825 3738/5831/14824 3739/5908/14826
+s 3645
+f 3690/5825/14827 3643/5757/14828 3741/5909/14829
+f 3741/5909/14829 3643/5757/14828 3742/5910/14830
+s 3646
+f 3643/5757/14831 3644/5758/14832 3742/5910/14833
+f 3742/5910/14833 3644/5758/14832 3743/5911/14834
+s 3647
+f 3644/5759/14835 3691/5760/14836 3743/5912/14837
+f 3743/5912/14837 3691/5760/14836 3787/5913/14838
+s 3648
+f 3686/5828/14839 3744/5914/14840 3645/5761/14841
+f 3645/5761/14841 3744/5914/14840 3745/5915/14842
+s 3649
+f 3645/5761/14843 3745/5915/14844 3646/5762/14845
+f 3646/5762/14845 3745/5915/14844 3746/5916/14846
+s 3650
+f 3646/5762/14847 3746/5916/14848 3691/5763/14849
+f 3691/5763/14849 3746/5916/14848 3787/5917/14850
+s 3651
+f 3648/5764/14851 3747/5918/14852 3647/5756/14853
+f 3647/5756/14853 3747/5918/14852 3738/5831/14854
+s 3652
+f 3648/5765/14855 3649/5766/14856 3747/5919/14857
+f 3747/5919/14857 3649/5766/14856 3692/5920/14858
+s 3653
+f 3650/5768/14859 3696/5841/14860 3693/5769/14861
+f 3693/5769/14861 3696/5841/14860 3788/5921/14862
+s 3654
+f 3651/5923/14863 3693/5769/14864 3748/5922/14865
+f 3748/5922/14865 3693/5769/14864 3788/5921/14866
+s 3655
+f 3595/5596/14867 3694/5772/14868 3695/5774/14869
+f 3695/5774/14869 3694/5772/14868 3789/5924/14870
+s 3656
+f 3694/5772/14871 3651/5770/14872 3749/5925/14873
+f 3749/5925/14873 3651/5770/14872 3748/5926/14874
+s 3657
+f 3598/5773/14875 3695/5774/14876 3699/5927/14877
+f 3699/5927/14877 3695/5774/14876 3790/5928/14878
+s 3658
+f 3599/5608/14879 3701/5929/14880 3700/5851/14881
+f 3700/5851/14881 3701/5929/14880 3795/5930/14882
+s 3659
+f 3654/5777/14883 3754/5931/14884 3659/5690/14885
+f 3659/5690/14885 3754/5931/14884 3705/5855/14886
+s 3660
+f 3655/5778/14887 3755/5932/14888 3656/5779/14889
+f 3656/5779/14889 3755/5932/14888 3756/5933/14890
+s 3661
+f 3656/5779/14891 3756/5933/14892 3701/5780/14893
+f 3701/5780/14893 3756/5933/14892 3798/5934/14894
+s 3662
+f 3601/5936/14895 3703/5937/14896 3758/5935/14897
+f 3758/5935/14897 3703/5937/14896 3799/5938/14898
+s 3663
+f 3604/5940/14899 3709/5941/14900 3703/5939/14901
+f 3703/5939/14901 3709/5941/14900 3800/5942/14902
+s 3664
+f 3658/5692/14903 3704/5784/14904 3706/5857/14905
+f 3706/5857/14905 3704/5784/14904 3801/5943/14906
+s 3665
+f 3602/5783/14907 3759/5944/14908 3704/5784/14909
+f 3704/5784/14909 3759/5944/14908 3802/5945/14910
+s 3666
+f 3661/5696/14911 3706/5857/14912 3761/5862/14913
+f 3761/5862/14913 3706/5857/14912 3807/5946/14914
+s 3667
+f 3551/5524/14915 3760/5859/14916 3710/5865/14917
+f 3710/5865/14917 3760/5859/14916 3809/5947/14918
+s 3668
+f 3665/5788/14919 3765/5948/14920 3664/5785/14921
+f 3664/5785/14921 3765/5948/14920 3812/5949/14922
+s 3669
+f 3665/5789/14923 3714/5790/14924 3765/5950/14925
+f 3765/5950/14925 3714/5790/14924 3813/5951/14926
+s 3670
+f 3608/5618/14927 3669/5791/14928 3714/5790/14929
+f 3714/5790/14929 3669/5791/14928 3770/5952/14930
+s 3671
+f 3666/5706/14931 3766/5872/14932 3670/5792/14933
+f 3670/5792/14933 3766/5872/14932 3771/5953/14934
+s 3672
+f 3715/5794/14935 3664/5785/14936 3767/5954/14937
+f 3767/5954/14937 3664/5785/14936 3812/5949/14938
+s 3673
+f 3716/5796/14939 3768/5955/14940 3667/5795/14941
+f 3667/5795/14941 3768/5955/14940 3814/5956/14942
+s 3674
+f 3711/5798/14943 3667/5797/14944 3769/5957/14945
+f 3769/5957/14945 3667/5797/14944 3814/5958/14946
+s 3675
+f 3719/5877/14947 3717/5959/14948 3668/5713/14949
+f 3668/5713/14949 3717/5959/14948 3718/5960/14950
+s 3676
+f 3669/5962/14951 3720/5963/14952 3770/5961/14953
+f 3770/5961/14953 3720/5963/14952 3815/5964/14954
+s 3677
+f 3670/5965/14955 3771/5966/14956 3720/5963/14957
+f 3720/5963/14957 3771/5966/14956 3815/5964/14958
+s 3678
+f 3671/5809/14959 3772/5967/14960 3672/5810/14961
+f 3672/5810/14961 3772/5967/14960 3773/5968/14962
+s 3679
+f 3672/5811/14963 3773/5969/14964 3675/5722/14965
+f 3675/5722/14965 3773/5969/14964 3776/5884/14966
+s 3680
+f 3671/5809/14967 3674/5812/14968 3772/5967/14969
+f 3772/5967/14969 3674/5812/14968 3775/5970/14970
+s 3681
+f 3625/5726/14971 3728/5888/14972 3673/5815/14973
+f 3673/5815/14973 3728/5888/14972 3774/5971/14974
+s 3682
+f 3673/5813/14975 3774/5972/14976 3723/5814/14977
+f 3723/5814/14977 3774/5972/14976 3817/5973/14978
+s 3683
+f 3674/5812/14979 3723/5814/14980 3775/5970/14981
+f 3775/5970/14981 3723/5814/14980 3817/5973/14982
+s 3684
+f 3729/5819/14983 3730/5891/14984 3680/5821/14985
+f 3680/5821/14985 3730/5891/14984 3779/5974/14986
+s 3685
+f 3680/5821/14987 3779/5974/14988 3681/5822/14989
+f 3681/5822/14989 3779/5974/14988 3780/5975/14990
+s 3686
+f 3681/5822/14991 3780/5975/14992 3682/5740/14993
+f 3682/5740/14993 3780/5975/14992 3781/5898/14994
+s 3687
+f 3683/5742/14995 3733/5823/14996 3732/5976/14997
+f 3732/5976/14997 3733/5823/14996 3824/5977/14998
+s 3688
+f 3638/5824/14999 3690/5825/15000 3737/5978/15001
+f 3737/5978/15001 3690/5825/15000 3741/5909/15002
+s 3689
+f 3685/5826/15003 3688/5827/15004 3783/5979/15005
+f 3783/5979/15005 3688/5827/15004 3785/5980/15006
+s 3690
+f 3684/5748/15007 3782/5903/15008 3687/5829/15009
+f 3687/5829/15009 3782/5903/15008 3784/5981/15010
+s 3691
+f 3687/5835/15011 3784/5982/15012 3740/5836/15013
+f 3740/5836/15013 3784/5982/15012 3829/5983/15014
+s 3692
+f 3688/5827/15015 3689/5837/15016 3785/5980/15017
+f 3785/5980/15017 3689/5837/15016 3786/5984/15018
+s 3693
+f 3689/5838/15019 3740/5836/15020 3786/5985/15021
+f 3786/5985/15021 3740/5836/15020 3829/5983/15022
+s 3694
+f 3747/5919/15023 3692/5920/15024 3738/5986/15025
+f 3738/5986/15025 3692/5920/15024 3739/5987/15026
+s 3695
+f 3694/5772/15027 3749/5925/15028 3789/5924/15029
+f 3789/5924/15029 3749/5925/15028 3836/5988/15030
+s 3696
+f 3697/5843/15031 3791/5989/15032 3696/5841/15033
+f 3696/5841/15033 3791/5989/15032 3837/5990/15034
+s 3697
+f 3697/5844/15035 3698/5845/15036 3792/5991/15037
+f 3792/5991/15037 3698/5845/15036 3793/5992/15038
+s 3698
+f 3698/5845/15039 3750/5846/15040 3793/5992/15041
+f 3793/5992/15041 3750/5846/15040 3838/5993/15042
+s 3699
+f 3652/5684/15043 3751/5994/15044 3750/5846/15045
+f 3750/5846/15045 3751/5994/15044 3839/5995/15046
+s 3700
+f 3653/5686/15047 3752/5850/15048 3751/5848/15049
+f 3751/5848/15049 3752/5850/15048 3839/5996/15050
+s 3701
+f 3699/5849/15051 3794/5997/15052 3752/5850/15053
+f 3752/5850/15053 3794/5997/15052 3840/5998/15054
+s 3702
+f 3654/6000/15055 3753/6001/15056 3754/5999/15057
+f 3754/5999/15057 3753/6001/15056 3842/6002/15058
+s 3703
+f 3753/6001/15059 3700/6004/15060 3796/6003/15061
+f 3796/6003/15061 3700/6004/15060 3841/6005/15062
+s 3704
+f 3702/5853/15063 3797/6006/15064 3655/5778/15065
+f 3655/5778/15065 3797/6006/15064 3755/5932/15066
+s 3705
+f 3702/6008/15067 3757/6009/15068 3797/6007/15069
+f 3797/6007/15069 3757/6009/15068 3846/6010/15070
+s 3706
+f 3601/6011/15071 3758/6012/15072 3757/6009/15073
+f 3757/6009/15073 3758/6012/15072 3847/6013/15074
+s 3707
+f 3754/5931/15075 3803/6014/15076 3705/5855/15077
+f 3705/5855/15077 3803/6014/15076 3804/6015/15078
+s 3708
+f 3705/5855/15079 3804/6015/15080 3759/5856/15081
+f 3759/5856/15081 3804/6015/15080 3850/6016/15082
+s 3709
+f 3708/6018/15083 3805/6019/15084 3707/6017/15085
+f 3707/6017/15085 3805/6019/15084 3806/6020/15086
+s 3710
+f 3707/5858/15087 3806/6021/15088 3760/5859/15089
+f 3760/5859/15089 3806/6021/15088 3852/6022/15090
+s 3711
+f 3708/5860/15091 3761/5862/15092 3805/6023/15093
+f 3805/6023/15093 3761/5862/15092 3853/6024/15094
+s 3712
+f 3709/5941/15095 3762/6026/15096 3808/6025/15097
+f 3808/6025/15097 3762/6026/15096 3855/6027/15098
+s 3713
+f 3662/6029/15099 3763/6030/15100 3762/6028/15101
+f 3762/6028/15101 3763/6030/15100 3856/6031/15102
+s 3714
+f 3763/6030/15103 3710/6033/15104 3810/6032/15105
+f 3810/6032/15105 3710/6033/15104 3858/6034/15106
+s 3715
+f 3711/5798/15107 3769/5957/15108 3712/5867/15109
+f 3712/5867/15109 3769/5957/15108 3859/6035/15110
+s 3716
+f 3713/5868/15111 3712/5867/15112 3811/6036/15113
+f 3811/6036/15113 3712/5867/15112 3859/6035/15114
+s 3717
+f 3713/5869/15115 3811/6037/15116 3764/5870/15117
+f 3764/5870/15117 3811/6037/15116 3860/6038/15118
+s 3718
+f 3715/5871/15119 3767/6039/15120 3766/5872/15121
+f 3766/5872/15121 3767/6039/15120 3863/6040/15122
+s 3719
+f 3716/5873/15123 3721/5874/15124 3768/6041/15125
+f 3768/6041/15125 3721/5874/15124 3864/6042/15126
+s 3720
+f 3722/5879/15127 3816/6043/15128 3721/5874/15129
+f 3721/5874/15129 3816/6043/15128 3864/6042/15130
+s 3721
+f 3722/5879/15131 3764/5880/15132 3816/6043/15133
+f 3816/6043/15133 3764/5880/15132 3860/6044/15134
+s 3722
+f 3724/5881/15135 3725/5882/15136 3818/6045/15137
+f 3818/6045/15137 3725/5882/15136 3819/6046/15138
+s 3723
+f 3725/5883/15139 3776/5884/15140 3819/6047/15141
+f 3819/6047/15141 3776/5884/15140 3869/6048/15142
+s 3724
+f 3724/5881/15143 3818/6045/15144 3726/5885/15145
+f 3726/5885/15145 3818/6045/15144 3870/6049/15146
+s 3725
+f 3777/5886/15147 3726/5885/15148 3820/6050/15149
+f 3820/6050/15149 3726/5885/15148 3870/6049/15150
+s 3726
+f 3728/5888/15151 3727/5889/15152 3821/6051/15153
+f 3821/6051/15153 3727/5889/15152 3822/6052/15154
+s 3727
+f 3727/5887/15155 3777/5886/15156 3822/6053/15157
+f 3822/6053/15157 3777/5886/15156 3820/6050/15158
+s 3728
+f 3730/5891/15159 3731/5893/15160 3779/5974/15161
+f 3779/5974/15161 3731/5893/15160 3823/6054/15162
+s 3729
+f 3731/5893/15163 3778/6055/15164 3823/6054/15165
+f 3823/6054/15165 3778/6055/15164 3871/6056/15166
+s 3730
+f 3732/5976/15167 3824/5977/15168 3778/6055/15169
+f 3778/6055/15169 3824/5977/15168 3871/6056/15170
+s 3731
+f 3733/5823/15171 3734/5897/15172 3824/5977/15173
+f 3824/5977/15173 3734/5897/15172 3825/6057/15174
+s 3732
+f 3734/5897/15175 3781/5898/15176 3825/6057/15177
+f 3825/6057/15177 3781/5898/15176 3873/6058/15178
+s 3733
+f 3736/5901/15179 3735/5900/15180 3826/6059/15181
+f 3826/6059/15181 3735/5900/15180 3874/6060/15182
+s 3734
+f 3736/5902/15183 3826/6061/15184 3782/5903/15185
+f 3782/5903/15185 3826/6061/15184 3875/6062/15186
+s 3735
+f 3783/5904/15187 3827/6063/15188 3735/5900/15189
+f 3735/5900/15189 3827/6063/15188 3874/6060/15190
+s 3736
+f 3744/5906/15191 3737/5905/15192 3828/6064/15193
+f 3828/6064/15193 3737/5905/15192 3876/6065/15194
+s 3737
+f 3741/5909/15195 3830/6066/15196 3737/5978/15197
+f 3737/5978/15197 3830/6066/15196 3876/6067/15198
+s 3738
+f 3741/5909/15199 3742/5910/15200 3830/6066/15201
+f 3830/6066/15201 3742/5910/15200 3879/6068/15202
+s 3739
+f 3743/5911/15203 3831/6069/15204 3742/5910/15205
+f 3742/5910/15205 3831/6069/15204 3879/6068/15206
+s 3740
+f 3743/5912/15207 3787/5913/15208 3831/6070/15209
+f 3831/6070/15209 3787/5913/15208 3880/6071/15210
+s 3741
+f 3744/5914/15211 3828/6072/15212 3745/5915/15213
+f 3745/5915/15213 3828/6072/15212 3881/6073/15214
+s 3742
+f 3746/5916/15215 3745/5915/15216 3832/6074/15217
+f 3832/6074/15217 3745/5915/15216 3881/6073/15218
+s 3743
+f 3746/5916/15219 3832/6074/15220 3787/5917/15221
+f 3787/5917/15221 3832/6074/15220 3880/6075/15222
+s 3744
+f 3788/5921/15223 3696/5841/15224 3833/6076/15225
+f 3833/6076/15225 3696/5841/15224 3837/5990/15226
+s 3745
+f 3749/5925/15227 3748/5926/15228 3834/6077/15229
+f 3834/6077/15229 3748/5926/15228 3835/6078/15230
+s 3746
+f 3748/5922/15231 3788/5921/15232 3835/6079/15233
+f 3835/6079/15233 3788/5921/15232 3883/6080/15234
+s 3747
+f 3789/5924/15235 3836/5988/15236 3695/5774/15237
+f 3695/5774/15237 3836/5988/15236 3790/5928/15238
+s 3748
+f 3699/5927/15239 3790/5928/15240 3794/6081/15241
+f 3794/6081/15241 3790/5928/15240 3884/6082/15242
+s 3749
+f 3697/5844/15243 3792/5991/15244 3791/6083/15245
+f 3791/6083/15245 3792/5991/15244 3886/6084/15246
+s 3750
+f 3700/6004/15247 3795/6085/15248 3841/6005/15249
+f 3841/6005/15249 3795/6085/15248 3893/6086/15250
+s 3751
+f 3701/5929/15251 3798/6087/15252 3795/5930/15253
+f 3795/5930/15253 3798/6087/15252 3894/6088/15254
+s 3752
+f 3753/6001/15255 3796/6003/15256 3842/6002/15257
+f 3842/6002/15257 3796/6003/15256 3895/6089/15258
+s 3753
+f 3797/6091/15259 3843/6092/15260 3755/6090/15261
+f 3755/6090/15261 3843/6092/15260 3844/6093/15262
+s 3754
+f 3755/5932/15263 3844/6094/15264 3756/5933/15265
+f 3756/5933/15265 3844/6094/15264 3845/6095/15266
+s 3755
+f 3756/5933/15267 3845/6095/15268 3798/5934/15269
+f 3798/5934/15269 3845/6095/15268 3897/6096/15270
+s 3756
+f 3799/5938/15271 3848/6097/15272 3758/5935/15273
+f 3758/5935/15273 3848/6097/15272 3841/6098/15274
+s 3757
+f 3703/5937/15275 3800/6099/15276 3799/5938/15277
+f 3799/5938/15277 3800/6099/15276 3898/6100/15278
+s 3758
+f 3709/5941/15279 3808/6025/15280 3800/5942/15281
+f 3800/5942/15281 3808/6025/15280 3899/6101/15282
+s 3759
+f 3801/5943/15283 3849/6102/15284 3706/5857/15285
+f 3706/5857/15285 3849/6102/15284 3854/6103/15286
+s 3760
+f 3704/5784/15287 3802/5945/15288 3801/5943/15289
+f 3801/5943/15289 3802/5945/15288 3900/6104/15290
+s 3761
+f 3759/5944/15291 3850/6105/15292 3802/5945/15293
+f 3802/5945/15293 3850/6105/15292 3901/6106/15294
+s 3762
+f 3803/6108/15295 3754/5999/15296 3851/6107/15297
+f 3851/6107/15297 3754/5999/15296 3842/6002/15298
+s 3763
+f 3761/5862/15299 3807/5946/15300 3853/6024/15301
+f 3853/6024/15301 3807/5946/15300 3906/6109/15302
+s 3764
+f 3706/6111/15303 3854/6112/15304 3807/6110/15305
+f 3807/6110/15305 3854/6112/15304 3907/6113/15306
+s 3765
+f 3809/6115/15307 3857/6116/15308 3710/6114/15309
+f 3710/6114/15309 3857/6116/15308 3858/6117/15310
+s 3766
+f 3760/6118/15311 3852/6119/15312 3809/6115/15313
+f 3809/6115/15313 3852/6119/15312 3909/6120/15314
+s 3767
+f 3763/6030/15315 3810/6032/15316 3856/6031/15317
+f 3856/6031/15317 3810/6032/15316 3910/6121/15318
+s 3768
+f 3765/5950/15319 3813/5951/15320 3812/6122/15321
+f 3812/6122/15321 3813/5951/15320 3911/6123/15322
+s 3769
+f 3813/5951/15323 3714/5790/15324 3861/6124/15325
+f 3861/6124/15325 3714/5790/15324 3770/5952/15326
+s 3770
+f 3771/5953/15327 3766/5872/15328 3862/6125/15329
+f 3862/6125/15329 3766/5872/15328 3863/6040/15330
+s 3771
+f 3767/5954/15331 3812/5949/15332 3863/6126/15333
+f 3863/6126/15333 3812/5949/15332 3911/6127/15334
+s 3772
+f 3768/5955/15335 3864/6128/15336 3814/5956/15337
+f 3814/5956/15337 3864/6128/15336 3913/6129/15338
+s 3773
+f 3769/5957/15339 3814/5958/15340 3859/6035/15341
+f 3859/6035/15341 3814/5958/15340 3913/6130/15342
+s 3774
+f 3770/5961/15343 3815/5964/15344 3861/6131/15345
+f 3861/6131/15345 3815/5964/15344 3912/6132/15346
+s 3775
+f 3771/5966/15347 3862/6133/15348 3815/5964/15349
+f 3815/5964/15349 3862/6133/15348 3912/6132/15350
+s 3776
+f 3772/5967/15351 3865/6134/15352 3773/5968/15353
+f 3773/5968/15353 3865/6134/15352 3866/6135/15354
+s 3777
+f 3773/5969/15355 3866/6136/15356 3776/5884/15357
+f 3776/5884/15357 3866/6136/15356 3869/6048/15358
+s 3778
+f 3772/5967/15359 3775/5970/15360 3865/6134/15361
+f 3865/6134/15361 3775/5970/15360 3914/6137/15362
+s 3779
+f 3728/5888/15363 3821/6051/15364 3774/5971/15365
+f 3774/5971/15365 3821/6051/15364 3867/6138/15366
+s 3780
+f 3774/5972/15367 3867/6139/15368 3817/5973/15369
+f 3817/5973/15369 3867/6139/15368 3868/6140/15370
+s 3781
+f 3817/5973/15371 3868/6140/15372 3775/5970/15373
+f 3775/5970/15373 3868/6140/15372 3914/6137/15374
+s 3782
+f 3779/5974/15375 3823/6054/15376 3780/5975/15377
+f 3780/5975/15377 3823/6054/15376 3872/6141/15378
+s 3783
+f 3780/5975/15379 3872/6141/15380 3781/5898/15381
+f 3781/5898/15381 3872/6141/15380 3873/6058/15382
+s 3784
+f 3783/5979/15383 3785/5980/15384 3827/6142/15385
+f 3827/6142/15385 3785/5980/15384 3920/6143/15386
+s 3785
+f 3784/5981/15387 3782/5903/15388 3877/6144/15389
+f 3877/6144/15389 3782/5903/15388 3875/6062/15390
+s 3786
+f 3784/5982/15391 3877/6145/15392 3829/5983/15393
+f 3829/5983/15393 3877/6145/15392 3921/6146/15394
+s 3787
+f 3786/5984/15395 3878/6147/15396 3785/5980/15397
+f 3785/5980/15397 3878/6147/15396 3920/6143/15398
+s 3788
+f 3786/5985/15399 3829/5983/15400 3878/6148/15401
+f 3878/6148/15401 3829/5983/15400 3921/6146/15402
+s 3789
+f 3788/5921/15403 3833/6076/15404 3882/6149/15405
+f 3882/6149/15405 3833/6076/15404 3922/6150/15406
+s 3790
+f 3749/5925/15407 3834/6077/15408 3836/5988/15409
+f 3836/5988/15409 3834/6077/15408 3885/6151/15410
+s 3791
+f 3836/5988/15411 3885/6151/15412 3790/5928/15413
+f 3790/5928/15413 3885/6151/15412 3927/6152/15414
+s 3792
+f 3791/5989/15415 3887/6153/15416 3837/5990/15417
+f 3837/5990/15417 3887/6153/15416 3930/6154/15418
+s 3793
+f 3792/5991/15419 3793/5992/15420 3888/6155/15421
+f 3888/6155/15421 3793/5992/15420 3838/5993/15422
+s 3794
+f 3750/5846/15423 3889/6156/15424 3838/5993/15425
+f 3838/5993/15425 3889/6156/15424 3931/6157/15426
+s 3795
+f 3750/6159/15427 3839/5996/15428 3889/6158/15429
+f 3889/6158/15429 3839/5996/15428 3890/6160/15430
+s 3796
+f 3839/5996/15431 3752/5850/15432 3890/6160/15433
+f 3890/6160/15433 3752/5850/15432 3932/6161/15434
+s 3797
+f 3752/5850/15435 3840/5998/15436 3891/6162/15437
+f 3891/6162/15437 3840/5998/15436 3933/6163/15438
+s 3798
+f 3794/5997/15439 3892/6164/15440 3840/5998/15441
+f 3840/5998/15441 3892/6164/15440 3934/6165/15442
+s 3799
+f 3841/6005/15443 3896/6166/15444 3796/6003/15445
+f 3796/6003/15445 3896/6166/15444 3937/6167/15446
+s 3800
+f 3797/6091/15447 3846/6168/15448 3843/6092/15449
+f 3843/6092/15449 3846/6168/15448 3938/6169/15450
+s 3801
+f 3757/6009/15451 3847/6013/15452 3846/6010/15453
+f 3846/6010/15453 3847/6013/15452 3941/6170/15454
+s 3802
+f 3758/6012/15455 3841/6171/15456 3847/6013/15457
+f 3847/6013/15457 3841/6171/15456 3893/6172/15458
+s 3803
+f 3799/5938/15459 3898/6100/15460 3848/6097/15461
+f 3848/6097/15461 3898/6100/15460 3942/6173/15462
+s 3804
+f 3801/5943/15463 3900/6104/15464 3849/6102/15465
+f 3849/6102/15465 3900/6104/15464 3944/6174/15466
+s 3805
+f 3803/6014/15467 3851/6176/15468 3902/6175/15469
+f 3902/6175/15469 3851/6176/15468 3945/6177/15470
+s 3806
+f 3803/6014/15471 3902/6175/15472 3804/6015/15473
+f 3804/6015/15473 3902/6175/15472 3946/6178/15474
+s 3807
+f 3850/6016/15475 3804/6015/15476 3903/6179/15477
+f 3903/6179/15477 3804/6015/15476 3946/6178/15478
+s 3808
+f 3806/6020/15479 3805/6019/15480 3904/6180/15481
+f 3904/6180/15481 3805/6019/15480 3905/6181/15482
+s 3809
+f 3806/6020/15483 3904/6180/15484 3852/6182/15485
+f 3852/6182/15485 3904/6180/15484 3947/6183/15486
+s 3810
+f 3805/6023/15487 3853/6024/15488 3905/6184/15489
+f 3905/6184/15489 3853/6024/15488 3948/6185/15490
+s 3811
+f 3855/6027/15491 3908/6186/15492 3808/6025/15493
+f 3808/6025/15493 3908/6186/15492 3950/6187/15494
+s 3812
+f 3762/6028/15495 3856/6031/15496 3855/6188/15497
+f 3855/6188/15497 3856/6031/15496 3949/6189/15498
+s 3813
+f 3809/6115/15499 3909/6120/15500 3857/6116/15501
+f 3857/6116/15501 3909/6120/15500 3951/6190/15502
+s 3814
+f 3858/6192/15503 3896/6166/15504 3810/6191/15505
+f 3810/6191/15505 3896/6166/15504 3953/6193/15506
+s 3815
+f 3811/6037/15507 3859/6194/15508 3860/6038/15509
+f 3860/6038/15509 3859/6194/15508 3913/6195/15510
+s 3816
+f 3861/6197/15511 3912/6198/15512 3813/6196/15513
+f 3813/6196/15513 3912/6198/15512 3911/6199/15514
+s 3817
+f 3816/6043/15515 3860/6044/15516 3864/6042/15517
+f 3864/6042/15517 3860/6044/15516 3913/6200/15518
+s 3818
+f 3818/6045/15519 3819/6046/15520 3915/6201/15521
+f 3915/6201/15521 3819/6046/15520 3916/6202/15522
+s 3819
+f 3819/6047/15523 3869/6048/15524 3916/6203/15525
+f 3916/6203/15525 3869/6048/15524 3958/6204/15526
+s 3820
+f 3818/6045/15527 3915/6201/15528 3870/6049/15529
+f 3870/6049/15529 3915/6201/15528 3959/6205/15530
+s 3821
+f 3822/6053/15531 3820/6050/15532 3917/6206/15533
+f 3917/6206/15533 3820/6050/15532 3918/6207/15534
+s 3822
+f 3820/6050/15535 3870/6049/15536 3918/6207/15537
+f 3918/6207/15537 3870/6049/15536 3959/6205/15538
+s 3823
+f 3821/6051/15539 3822/6052/15540 3919/6208/15541
+f 3919/6208/15541 3822/6052/15540 3917/6209/15542
+s 3824
+f 3823/6054/15543 3871/6056/15544 3872/6141/15545
+f 3872/6141/15545 3871/6056/15544 3873/6058/15546
+s 3825
+f 3824/5977/15547 3825/6057/15548 3871/6056/15549
+f 3871/6056/15549 3825/6057/15548 3873/6058/15550
+s 3826
+f 3826/6061/15551 3874/6210/15552 3875/6062/15553
+f 3875/6062/15553 3874/6210/15552 3960/6211/15554
+s 3827
+f 3827/6063/15555 3920/6212/15556 3874/6060/15557
+f 3874/6060/15557 3920/6212/15556 3960/6213/15558
+s 3828
+f 3828/6215/15559 3876/6216/15560 3881/6214/15561
+f 3881/6214/15561 3876/6216/15560 3961/6217/15562
+s 3829
+f 3830/6066/15563 3879/6068/15564 3876/6067/15565
+f 3876/6067/15565 3879/6068/15564 3961/6218/15566
+s 3830
+f 3831/6070/15567 3880/6071/15568 3879/6219/15569
+f 3879/6219/15569 3880/6071/15568 3961/6220/15570
+s 3831
+f 3832/6074/15571 3881/6073/15572 3880/6075/15573
+f 3880/6075/15573 3881/6073/15572 3961/6221/15574
+s 3832
+f 3788/5921/15575 3882/6149/15576 3883/6080/15577
+f 3883/6080/15577 3882/6149/15576 3962/6222/15578
+s 3833
+f 3833/6076/15579 3837/5990/15580 3923/6223/15581
+f 3923/6223/15581 3837/5990/15580 3930/6154/15582
+s 3834
+f 3834/6225/15583 3835/6079/15584 3924/6224/15585
+f 3924/6224/15585 3835/6079/15584 3925/6226/15586
+s 3835
+f 3835/6079/15587 3883/6080/15588 3925/6226/15589
+f 3925/6226/15589 3883/6080/15588 3966/6227/15590
+s 3836
+f 3794/6081/15591 3884/6082/15592 3892/6228/15593
+f 3892/6228/15593 3884/6082/15592 3967/6229/15594
+s 3837
+f 3790/5928/15595 3926/6230/15596 3884/6082/15597
+f 3884/6082/15597 3926/6230/15596 3968/6231/15598
+s 3838
+f 3886/6084/15599 3928/6232/15600 3791/6083/15601
+f 3791/6083/15601 3928/6232/15600 3887/6233/15602
+s 3839
+f 3886/6084/15603 3792/5991/15604 3929/6234/15605
+f 3929/6234/15605 3792/5991/15604 3888/6155/15606
+s 3840
+f 3838/5993/15607 3931/6157/15608 3888/6155/15609
+f 3888/6155/15609 3931/6157/15608 3973/6235/15610
+s 3841
+f 3752/6237/15611 3891/6238/15612 3932/6236/15613
+f 3932/6236/15613 3891/6238/15612 3976/6239/15614
+s 3842
+f 3795/6085/15615 3894/6240/15616 3893/6086/15617
+f 3893/6086/15617 3894/6240/15616 3979/6241/15618
+s 3843
+f 3798/6242/15619 3897/6243/15620 3894/6240/15621
+f 3894/6240/15621 3897/6243/15620 3980/6244/15622
+s 3844
+f 3851/6107/15623 3842/6002/15624 3935/6245/15625
+f 3935/6245/15625 3842/6002/15624 3895/6089/15626
+s 3845
+f 3895/6089/15627 3796/6003/15628 3936/6246/15629
+f 3936/6246/15629 3796/6003/15628 3937/6167/15630
+s 3846
+f 3841/6005/15631 3848/6247/15632 3896/6166/15633
+f 3896/6166/15633 3848/6247/15632 3953/6193/15634
+s 3847
+f 3844/6093/15635 3843/6092/15636 3939/6248/15637
+f 3939/6248/15637 3843/6092/15636 3983/6249/15638
+s 3848
+f 3844/6094/15639 3939/6250/15640 3845/6095/15641
+f 3845/6095/15641 3939/6250/15640 3984/6251/15642
+s 3849
+f 3897/6096/15643 3845/6095/15644 3940/6252/15645
+f 3940/6252/15645 3845/6095/15644 3984/6251/15646
+s 3850
+f 3800/6099/15647 3899/6253/15648 3898/6100/15649
+f 3898/6100/15649 3899/6253/15648 3986/6254/15650
+s 3851
+f 3899/6101/15651 3808/6025/15652 3943/6255/15653
+f 3943/6255/15653 3808/6025/15652 3950/6187/15654
+s 3852
+f 3849/6256/15655 3936/6246/15656 3854/6112/15657
+f 3854/6112/15657 3936/6246/15656 3858/6192/15658
+s 3853
+f 3802/5945/15659 3901/6106/15660 3900/6104/15661
+f 3900/6104/15661 3901/6106/15660 3988/6257/15662
+s 3854
+f 3850/6105/15663 3903/6258/15664 3901/6106/15665
+f 3901/6106/15665 3903/6258/15664 3989/6259/15666
+s 3855
+f 3853/6024/15667 3906/6109/15668 3948/6185/15669
+f 3948/6185/15669 3906/6109/15668 3992/6260/15670
+s 3856
+f 3807/6110/15671 3907/6113/15672 3906/6261/15673
+f 3906/6261/15673 3907/6113/15672 3993/6262/15674
+s 3857
+f 3854/6112/15675 3858/6192/15676 3907/6113/15677
+f 3907/6113/15677 3858/6192/15676 3857/6263/15678
+s 3858
+f 3855/6188/15679 3949/6189/15680 3908/6264/15681
+f 3908/6264/15681 3949/6189/15680 3994/6265/15682
+s 3859
+f 3852/6119/15683 3947/6266/15684 3909/6120/15685
+f 3909/6120/15685 3947/6266/15684 3995/6267/15686
+s 3860
+f 3910/6121/15687 3952/6268/15688 3856/6031/15689
+f 3856/6031/15689 3952/6268/15688 3949/6189/15690
+s 3861
+f 3810/6191/15691 3953/6193/15692 3910/6269/15693
+f 3910/6269/15693 3953/6193/15692 3997/6270/15694
+s 3862
+f 3896/6166/15695 3858/6192/15696 3937/6167/15697
+f 3937/6167/15697 3858/6192/15696 3936/6246/15698
+s 3863
+f 3862/6125/15699 3863/6040/15700 3912/6271/15701
+f 3912/6271/15701 3863/6040/15700 3911/6272/15702
+s 3864
+f 3865/6134/15703 3954/6273/15704 3866/6135/15705
+f 3866/6135/15705 3954/6273/15704 3955/6274/15706
+s 3865
+f 3866/6136/15707 3955/6275/15708 3869/6048/15709
+f 3869/6048/15709 3955/6275/15708 3958/6204/15710
+s 3866
+f 3865/6134/15711 3914/6137/15712 3954/6273/15713
+f 3954/6273/15713 3914/6137/15712 3998/6276/15714
+s 3867
+f 3821/6051/15715 3919/6208/15716 3867/6138/15717
+f 3867/6138/15717 3919/6208/15716 3956/6277/15718
+s 3868
+f 3867/6139/15719 3956/6278/15720 3868/6140/15721
+f 3868/6140/15721 3956/6278/15720 3957/6279/15722
+s 3869
+f 3868/6140/15723 3957/6279/15724 3914/6137/15725
+f 3914/6137/15725 3957/6279/15724 3998/6276/15726
+s 3870
+f 3877/6145/15727 3875/6280/15728 3921/6146/15729
+f 3921/6146/15729 3875/6280/15728 3960/6281/15730
+s 3871
+f 3878/6147/15731 3921/6282/15732 3920/6143/15733
+f 3920/6143/15733 3921/6282/15732 3960/6283/15734
+s 3872
+f 3922/6285/15735 3963/6286/15736 3882/6284/15737
+f 3882/6284/15737 3963/6286/15736 4004/6287/15738
+s 3873
+f 3922/6150/15739 3833/6076/15740 3964/6288/15741
+f 3964/6288/15741 3833/6076/15740 3923/6223/15742
+s 3874
+f 3885/6151/15743 3834/6077/15744 3965/6289/15745
+f 3965/6289/15745 3834/6077/15744 3924/6290/15746
+s 3875
+f 3790/6292/15747 3927/6293/15748 3926/6291/15749
+f 3926/6291/15749 3927/6293/15748 4011/6294/15750
+s 3876
+f 3885/6151/15751 3965/6289/15752 3927/6152/15753
+f 3927/6152/15753 3965/6289/15752 4013/6295/15754
+s 3877
+f 3928/6232/15755 3886/6084/15756 3969/6296/15757
+f 3969/6296/15757 3886/6084/15756 3929/6234/15758
+s 3878
+f 3928/6232/15759 3970/6297/15760 3887/6233/15761
+f 3887/6233/15761 3970/6297/15760 3971/6298/15762
+s 3879
+f 3887/6153/15763 3971/6299/15764 3930/6154/15765
+f 3930/6154/15765 3971/6299/15764 4016/6300/15766
+s 3880
+f 3929/6234/15767 3888/6155/15768 3972/6301/15769
+f 3972/6301/15769 3888/6155/15768 4017/6302/15770
+s 3881
+f 3889/6156/15771 3974/6303/15772 3931/6157/15773
+f 3931/6157/15773 3974/6303/15772 4018/6304/15774
+s 3882
+f 3889/6158/15775 3890/6160/15776 3974/6305/15777
+f 3974/6305/15777 3890/6160/15776 3975/6306/15778
+s 3883
+f 3890/6160/15779 3932/6161/15780 3975/6306/15781
+f 3975/6306/15781 3932/6161/15780 4019/6307/15782
+s 3884
+f 3933/6309/15783 3977/6310/15784 3891/6308/15785
+f 3891/6308/15785 3977/6310/15784 4022/6311/15786
+s 3885
+f 3840/5998/15787 3934/6165/15788 3933/6163/15789
+f 3933/6163/15789 3934/6165/15788 4021/6312/15790
+s 3886
+f 3892/6314/15791 3978/6315/15792 3934/6313/15793
+f 3934/6313/15793 3978/6315/15792 4023/6316/15794
+s 3887
+f 3847/6318/15795 3893/6319/15796 3941/6317/15797
+f 3941/6317/15797 3893/6319/15796 3979/6320/15798
+s 3888
+f 3935/6245/15799 3981/6321/15800 3851/6107/15801
+f 3851/6107/15801 3981/6321/15800 3945/6322/15802
+s 3889
+f 3895/6089/15803 3944/6323/15804 3935/6245/15805
+f 3935/6245/15805 3944/6323/15804 3987/6324/15806
+s 3890
+f 3936/6246/15807 3849/6256/15808 3895/6089/15809
+f 3895/6089/15809 3849/6256/15808 3944/6323/15810
+s 3891
+f 3938/6326/15811 3982/6327/15812 3843/6325/15813
+f 3843/6325/15813 3982/6327/15812 3983/6328/15814
+s 3892
+f 3846/6010/15815 3941/6170/15816 3938/6326/15817
+f 3938/6326/15817 3941/6170/15816 4024/6329/15818
+s 3893
+f 3897/6243/15819 3940/6330/15820 3980/6244/15821
+f 3980/6244/15821 3940/6330/15820 4025/6331/15822
+s 3894
+f 3848/6247/15823 3942/6332/15824 3953/6193/15825
+f 3953/6193/15825 3942/6332/15824 3997/6270/15826
+s 3895
+f 3942/6173/15827 3898/6100/15828 3985/6333/15829
+f 3985/6333/15829 3898/6100/15828 3986/6254/15830
+s 3896
+f 3899/6253/15831 3943/6334/15832 3986/6254/15833
+f 3986/6254/15833 3943/6334/15832 4026/6335/15834
+s 3897
+f 3944/6337/15835 3900/6338/15836 3987/6336/15837
+f 3987/6336/15837 3900/6338/15836 3988/6339/15838
+s 3898
+f 3902/6175/15839 3945/6177/15840 3946/6178/15841
+f 3946/6178/15841 3945/6177/15840 4028/6340/15842
+s 3899
+f 3903/6258/15843 3946/6341/15844 3989/6259/15845
+f 3989/6259/15845 3946/6341/15844 4028/6342/15846
+s 3900
+f 3905/6181/15847 3990/6343/15848 3904/6180/15849
+f 3904/6180/15849 3990/6343/15848 4030/6344/15850
+s 3901
+f 3947/6183/15851 3904/6180/15852 3991/6345/15853
+f 3991/6345/15853 3904/6180/15852 4030/6344/15854
+s 3902
+f 3905/6184/15855 3948/6185/15856 3990/6346/15857
+f 3990/6346/15857 3948/6185/15856 4031/6347/15858
+s 3903
+f 3908/6186/15859 3994/6348/15860 3950/6187/15861
+f 3950/6187/15861 3994/6348/15860 4034/6349/15862
+s 3904
+f 3951/6350/15863 3993/6262/15864 3857/6263/15865
+f 3857/6263/15865 3993/6262/15864 3907/6113/15866
+s 3905
+f 3909/6120/15867 3995/6267/15868 3951/6190/15869
+f 3951/6190/15869 3995/6267/15868 4036/6351/15870
+s 3906
+f 3952/6353/15871 3910/6269/15872 3996/6352/15873
+f 3996/6352/15873 3910/6269/15872 3997/6270/15874
+s 3907
+f 3915/6201/15875 3916/6202/15876 3999/6354/15877
+f 3999/6354/15877 3916/6202/15876 4000/6355/15878
+s 3908
+f 3916/6203/15879 3958/6204/15880 4000/6356/15881
+f 4000/6356/15881 3958/6204/15880 4041/6357/15882
+s 3909
+f 3915/6201/15883 3999/6354/15884 3959/6205/15885
+f 3959/6205/15885 3999/6354/15884 4003/6358/15886
+s 3910
+f 3919/6208/15887 3917/6209/15888 4001/6359/15889
+f 4001/6359/15889 3917/6209/15888 4002/6360/15890
+s 3911
+f 3917/6206/15891 3918/6207/15892 4002/6361/15893
+f 4002/6361/15893 3918/6207/15892 4042/6362/15894
+s 3912
+f 3959/6205/15895 4003/6358/15896 3918/6207/15897
+f 3918/6207/15897 4003/6358/15896 4042/6362/15898
+s 3913
+f 3883/6364/15899 3962/6365/15900 3966/6363/15901
+f 3966/6363/15901 3962/6365/15900 4043/6366/15902
+s 3914
+f 3882/6284/15903 4004/6287/15904 3962/6365/15905
+f 3962/6365/15905 4004/6287/15904 4044/6367/15906
+s 3915
+f 3963/6286/15907 3922/6285/15908 4005/6368/15909
+f 4005/6368/15909 3922/6285/15908 3964/6369/15910
+s 3916
+f 3964/6369/15911 3923/6371/15912 4006/6370/15913
+f 4006/6370/15913 3923/6371/15912 4007/6372/15914
+s 3917
+f 3923/6223/15915 3930/6154/15916 4007/6373/15917
+f 4007/6373/15917 3930/6154/15916 4016/6300/15918
+s 3918
+f 3965/6375/15919 3924/6376/15920 4008/6374/15921
+f 4008/6374/15921 3924/6376/15920 4009/6377/15922
+s 3919
+f 3924/6224/15923 3925/6226/15924 4009/6378/15925
+f 4009/6378/15925 3925/6226/15924 4010/6379/15926
+s 3920
+f 3925/6226/15927 3966/6227/15928 4010/6379/15929
+f 4010/6379/15929 3966/6227/15928 4048/6380/15930
+s 3921
+f 3892/6314/15931 3967/6381/15932 3978/6315/15933
+f 3978/6315/15933 3967/6381/15932 4049/6382/15934
+s 3922
+f 3884/6082/15935 3968/6231/15936 3967/6229/15937
+f 3967/6229/15937 3968/6231/15936 4050/6383/15938
+s 3923
+f 3968/6385/15939 3926/6386/15940 4012/6384/15941
+f 4012/6384/15941 3926/6386/15940 4004/6387/15942
+s 3924
+f 3969/6296/15943 4014/6388/15944 3928/6232/15945
+f 3928/6232/15945 4014/6388/15944 3970/6297/15946
+s 3925
+f 3969/6296/15947 3929/6234/15948 4015/6389/15949
+f 4015/6389/15949 3929/6234/15948 3972/6301/15950
+s 3926
+f 3888/6391/15951 3973/6392/15952 4017/6390/15953
+f 4017/6390/15953 3973/6392/15952 4055/6393/15954
+s 3927
+f 3931/6157/15955 4018/6304/15956 3973/6235/15957
+f 3973/6235/15957 4018/6304/15956 4056/6394/15958
+s 3928
+f 3932/6236/15959 3976/6239/15960 4019/6395/15961
+f 4019/6395/15961 3976/6239/15960 4059/6396/15962
+s 3929
+f 3976/6239/15963 3891/6238/15964 4020/6397/15965
+f 4020/6397/15965 3891/6238/15964 4022/6398/15966
+s 3930
+f 3933/6309/15967 4021/6399/15968 3977/6310/15969
+f 3977/6310/15969 4021/6399/15968 4060/6400/15970
+s 3931
+f 3894/6240/15971 3980/6244/15972 3979/6241/15973
+f 3979/6241/15973 3980/6244/15972 4062/6401/15974
+s 3932
+f 3935/6245/15975 3987/6324/15976 3981/6321/15977
+f 3981/6321/15977 3987/6324/15976 4029/6402/15978
+s 3933
+f 3938/6326/15979 4024/6329/15980 3982/6327/15981
+f 3982/6327/15981 4024/6329/15980 4063/6403/15982
+s 3934
+f 3939/6250/15983 3983/6404/15984 3984/6251/15985
+f 3984/6251/15985 3983/6404/15984 4064/6405/15986
+s 3935
+f 3940/6252/15987 3984/6251/15988 4025/6406/15989
+f 4025/6406/15989 3984/6251/15988 4064/6405/15990
+s 3936
+f 3942/6332/15991 3985/6407/15992 3997/6270/15993
+f 3997/6270/15993 3985/6407/15992 3996/6352/15994
+s 3937
+f 3943/6334/15995 3950/6408/15996 4026/6335/15997
+f 4026/6335/15997 3950/6408/15996 4034/6409/15998
+s 3938
+f 3988/6257/15999 3901/6106/16000 4027/6410/16001
+f 4027/6410/16001 3901/6106/16000 3989/6259/16002
+s 3939
+f 3981/6321/16003 4029/6402/16004 3945/6322/16005
+f 3945/6322/16005 4029/6402/16004 4028/6411/16006
+s 3940
+f 3947/6266/16007 3991/6412/16008 3995/6267/16009
+f 3995/6267/16009 3991/6412/16008 4067/6413/16010
+s 3941
+f 3992/6260/16011 4032/6414/16012 3948/6185/16013
+f 3948/6185/16013 4032/6414/16012 4031/6347/16014
+s 3942
+f 3906/6261/16015 3993/6262/16016 3992/6415/16017
+f 3992/6415/16017 3993/6262/16016 4035/6416/16018
+s 3943
+f 3994/6265/16019 3949/6189/16020 4033/6417/16021
+f 4033/6417/16021 3949/6189/16020 3952/6268/16022
+s 3944
+f 3993/6262/16023 3951/6350/16024 4035/6416/16025
+f 4035/6416/16025 3951/6350/16024 4036/6418/16026
+s 3945
+f 3952/6353/16027 3996/6352/16028 4033/6419/16029
+f 4033/6419/16029 3996/6352/16028 4068/6420/16030
+s 3946
+f 3954/6273/16031 4037/6421/16032 3955/6274/16033
+f 3955/6274/16033 4037/6421/16032 4038/6422/16034
+s 3947
+f 3955/6275/16035 4038/6423/16036 3958/6204/16037
+f 3958/6204/16037 4038/6423/16036 4041/6357/16038
+s 3948
+f 3954/6273/16039 3998/6276/16040 4037/6421/16041
+f 4037/6421/16041 3998/6276/16040 4040/6424/16042
+s 3949
+f 3919/6208/16043 4001/6359/16044 3956/6277/16045
+f 3956/6277/16045 4001/6359/16044 4039/6425/16046
+s 3950
+f 3956/6278/16047 4039/6426/16048 3957/6279/16049
+f 3957/6279/16049 4039/6426/16048 4070/6427/16050
+s 3951
+f 3998/6276/16051 3957/6279/16052 4040/6424/16053
+f 4040/6424/16053 3957/6279/16052 4070/6427/16054
+s 3952
+f 4005/6368/16055 4045/6428/16056 3963/6286/16057
+f 3963/6286/16057 4045/6428/16056 4076/6429/16058
+s 3953
+f 4004/6287/16059 3963/6286/16060 4046/6430/16061
+f 4046/6430/16061 3963/6286/16060 4076/6429/16062
+s 3954
+f 4005/6368/16063 3964/6369/16064 4047/6431/16065
+f 4047/6431/16065 3964/6369/16064 4006/6370/16066
+s 3955
+f 3965/6375/16067 4008/6374/16068 4013/6432/16069
+f 4013/6432/16069 4008/6374/16068 4080/6433/16070
+s 3956
+f 4011/6294/16071 4044/6434/16072 3926/6291/16073
+f 3926/6291/16073 4044/6434/16072 4004/6435/16074
+s 3957
+f 3927/6293/16075 4013/6436/16076 4011/6294/16077
+f 4011/6294/16077 4013/6436/16076 4084/6437/16078
+s 3958
+f 3968/6231/16079 4012/6438/16080 4050/6383/16081
+f 4050/6383/16081 4012/6438/16080 4085/6439/16082
+s 3959
+f 4014/6441/16083 3969/6442/16084 4051/6440/16085
+f 4051/6440/16085 3969/6442/16084 4015/6443/16086
+s 3960
+f 4014/6388/16087 4052/6444/16088 3970/6297/16089
+f 3970/6297/16089 4052/6444/16088 4053/6445/16090
+s 3961
+f 3970/6297/16091 4053/6445/16092 3971/6298/16093
+f 3971/6298/16093 4053/6445/16092 4054/6446/16094
+s 3962
+f 3971/6299/16095 4054/6447/16096 4016/6300/16097
+f 4016/6300/16097 4054/6447/16096 4087/6448/16098
+s 3963
+f 4015/6443/16099 3972/6450/16100 4005/6449/16101
+f 4005/6449/16101 3972/6450/16100 4045/6451/16102
+s 3964
+f 3972/6452/16103 4017/6390/16104 4045/6428/16105
+f 4045/6428/16105 4017/6390/16104 4022/6453/16106
+s 3965
+f 3974/6303/16107 4057/6454/16108 4018/6304/16109
+f 4018/6304/16109 4057/6454/16108 4088/6455/16110
+s 3966
+f 3974/6457/16111 3975/6458/16112 4057/6456/16113
+f 4057/6456/16113 3975/6458/16112 4058/6459/16114
+s 3967
+f 3975/6458/16115 4019/6460/16116 4058/6459/16117
+f 4058/6459/16117 4019/6460/16116 4089/6461/16118
+s 3968
+f 3976/6239/16119 4020/6397/16120 4059/6396/16121
+f 4059/6396/16121 4020/6397/16120 4090/6462/16122
+s 3969
+f 4022/6453/16123 3977/6463/16124 4046/6430/16125
+f 4046/6430/16125 3977/6463/16124 4091/6464/16126
+s 3970
+f 3934/6165/16127 4023/6465/16128 4021/6312/16129
+f 4021/6312/16129 4023/6465/16128 4093/6466/16130
+s 3971
+f 4023/6316/16131 3978/6315/16132 4061/6467/16133
+f 4061/6467/16133 3978/6315/16132 4094/6468/16134
+s 3972
+f 3941/6170/16135 3979/6469/16136 4024/6329/16137
+f 4024/6329/16137 3979/6469/16136 4062/6470/16138
+s 3973
+f 3982/6327/16139 4063/6403/16140 3983/6328/16141
+f 3983/6328/16141 4063/6403/16140 4064/6471/16142
+s 3974
+f 4025/6331/16143 4065/6472/16144 3980/6244/16145
+f 3980/6244/16145 4065/6472/16144 4062/6401/16146
+s 3975
+f 3985/6333/16147 3986/6254/16148 4066/6473/16149
+f 4066/6473/16149 3986/6254/16148 4026/6335/16150
+s 3976
+f 3988/6257/16151 4027/6410/16152 3987/6474/16153
+f 3987/6474/16153 4027/6410/16152 4029/6475/16154
+s 3977
+f 4027/6410/16155 3989/6259/16156 4029/6475/16157
+f 4029/6475/16157 3989/6259/16156 4028/6342/16158
+s 3978
+f 3990/6346/16159 4031/6347/16160 4030/6476/16161
+f 4030/6476/16161 4031/6347/16160 4095/6477/16162
+s 3979
+f 3991/6479/16163 4030/6480/16164 4067/6478/16165
+f 4067/6478/16165 4030/6480/16164 4095/6481/16166
+s 3980
+f 3992/6415/16167 4035/6416/16168 4032/6482/16169
+f 4032/6482/16169 4035/6416/16168 4096/6483/16170
+s 3981
+f 4033/6419/16171 4068/6420/16172 3994/6484/16173
+f 3994/6484/16173 4068/6420/16172 4034/6485/16174
+s 3982
+f 4036/6351/16175 3995/6267/16176 4069/6486/16177
+f 4069/6486/16177 3995/6267/16176 4067/6413/16178
+s 3983
+f 3999/6354/16179 4000/6355/16180 4071/6487/16181
+f 4071/6487/16181 4000/6355/16180 4072/6488/16182
+s 3984
+f 4000/6356/16183 4041/6357/16184 4072/6489/16185
+f 4072/6489/16185 4041/6357/16184 4101/6490/16186
+s 3985
+f 3999/6354/16187 4071/6487/16188 4003/6358/16189
+f 4003/6358/16189 4071/6487/16188 4075/6491/16190
+s 3986
+f 4001/6359/16191 4002/6360/16192 4073/6492/16193
+f 4073/6492/16193 4002/6360/16192 4074/6493/16194
+s 3987
+f 4002/6361/16195 4042/6362/16196 4074/6494/16197
+f 4074/6494/16197 4042/6362/16196 4102/6495/16198
+s 3988
+f 4003/6358/16199 4075/6491/16200 4042/6362/16201
+f 4042/6362/16201 4075/6491/16200 4102/6495/16202
+s 3989
+f 3966/6363/16203 4043/6366/16204 4048/6496/16205
+f 4048/6496/16205 4043/6366/16204 4103/6497/16206
+s 3990
+f 3962/6365/16207 4044/6367/16208 4043/6366/16209
+f 4043/6366/16209 4044/6367/16208 4104/6498/16210
+s 3991
+f 4004/6287/16211 4046/6430/16212 4012/6499/16213
+f 4012/6499/16213 4046/6430/16212 4091/6464/16214
+s 3992
+f 4005/6449/16215 4047/6500/16216 4015/6443/16217
+f 4015/6443/16217 4047/6500/16216 4051/6440/16218
+s 3993
+f 4047/6431/16219 4006/6370/16220 4077/6501/16221
+f 4077/6501/16221 4006/6370/16220 4078/6502/16222
+s 3994
+f 4006/6370/16223 4007/6372/16224 4078/6502/16225
+f 4078/6502/16225 4007/6372/16224 4079/6503/16226
+s 3995
+f 4007/6373/16227 4016/6300/16228 4079/6504/16229
+f 4079/6504/16229 4016/6300/16228 4087/6448/16230
+s 3996
+f 4009/6377/16231 4081/6505/16232 4008/6374/16233
+f 4008/6374/16233 4081/6505/16232 4106/6506/16234
+s 3997
+f 4009/6378/16235 4010/6379/16236 4081/6507/16237
+f 4081/6507/16237 4010/6379/16236 4107/6508/16238
+s 3998
+f 4048/6380/16239 4082/6509/16240 4010/6379/16241
+f 4010/6379/16241 4082/6509/16240 4107/6508/16242
+s 3999
+f 4049/6382/16243 4083/6510/16244 3978/6315/16245
+f 3978/6315/16245 4083/6510/16244 4094/6468/16246
+s 4000
+f 3967/6229/16247 4050/6383/16248 4049/6511/16249
+f 4049/6511/16249 4050/6383/16248 4108/6512/16250
+s 4001
+f 4011/6294/16251 4084/6437/16252 4044/6434/16253
+f 4044/6434/16253 4084/6437/16252 4104/6513/16254
+s 4002
+f 4051/6514/16255 4086/6515/16256 4014/6388/16257
+f 4014/6388/16257 4086/6515/16256 4052/6444/16258
+s 4003
+f 4017/6390/16259 4055/6393/16260 4022/6453/16261
+f 4022/6453/16261 4055/6393/16260 4020/6516/16262
+s 4004
+f 3973/6392/16263 4056/6517/16264 4055/6393/16265
+f 4055/6393/16265 4056/6517/16264 4111/6518/16266
+s 4005
+f 4018/6304/16267 4088/6455/16268 4056/6394/16269
+f 4056/6394/16269 4088/6455/16268 4112/6519/16270
+s 4006
+f 4019/6395/16271 4059/6396/16272 4089/6520/16273
+f 4089/6520/16273 4059/6396/16272 4115/6521/16274
+s 4007
+f 3977/6310/16275 4060/6400/16276 4091/6522/16277
+f 4091/6522/16277 4060/6400/16276 4116/6523/16278
+s 4008
+f 4060/6400/16279 4021/6399/16280 4092/6524/16281
+f 4092/6524/16281 4021/6399/16280 4093/6525/16282
+s 4009
+f 4046/6430/16283 4076/6429/16284 4022/6453/16285
+f 4022/6453/16285 4076/6429/16284 4045/6428/16286
+s 4010
+f 4023/6465/16287 4061/6526/16288 4093/6466/16289
+f 4093/6466/16289 4061/6526/16288 4118/6527/16290
+s 4011
+f 4063/6403/16291 4024/6329/16292 4065/6528/16293
+f 4065/6528/16293 4024/6329/16292 4062/6470/16294
+s 4012
+f 4065/6472/16295 4025/6331/16296 4063/6529/16297
+f 4063/6529/16297 4025/6331/16296 4064/6530/16298
+s 4013
+f 3985/6407/16299 4066/6531/16300 3996/6352/16301
+f 3996/6352/16301 4066/6531/16300 4068/6420/16302
+s 4014
+f 4066/6473/16303 4026/6335/16304 4068/6532/16305
+f 4068/6532/16305 4026/6335/16304 4034/6409/16306
+s 4015
+f 4032/6414/16307 4096/6533/16308 4031/6347/16309
+f 4031/6347/16309 4096/6533/16308 4095/6477/16310
+s 4016
+f 4036/6418/16311 4069/6534/16312 4035/6416/16313
+f 4035/6416/16313 4069/6534/16312 4096/6483/16314
+s 4017
+f 4037/6421/16315 4097/6535/16316 4038/6422/16317
+f 4038/6422/16317 4097/6535/16316 4098/6536/16318
+s 4018
+f 4038/6423/16319 4098/6537/16320 4041/6357/16321
+f 4041/6357/16321 4098/6537/16320 4101/6490/16322
+s 4019
+f 4037/6421/16323 4040/6424/16324 4097/6535/16325
+f 4097/6535/16325 4040/6424/16324 4100/6538/16326
+s 4020
+f 4001/6359/16327 4073/6492/16328 4039/6425/16329
+f 4039/6425/16329 4073/6492/16328 4099/6539/16330
+s 4021
+f 4039/6426/16331 4099/6540/16332 4070/6427/16333
+f 4070/6427/16333 4099/6540/16332 4119/6541/16334
+s 4022
+f 4040/6424/16335 4070/6427/16336 4100/6538/16337
+f 4100/6538/16337 4070/6427/16336 4119/6541/16338
+s 4023
+f 4047/6431/16339 4077/6501/16340 4051/6542/16341
+f 4051/6542/16341 4077/6501/16340 4086/6543/16342
+s 4024
+f 4013/6436/16343 4080/6544/16344 4084/6437/16345
+f 4084/6437/16345 4080/6544/16344 4125/6545/16346
+s 4025
+f 4080/6433/16347 4008/6374/16348 4105/6546/16349
+f 4105/6546/16349 4008/6374/16348 4106/6506/16350
+s 4026
+f 4048/6496/16351 4103/6497/16352 4082/6547/16353
+f 4082/6547/16353 4103/6497/16352 4126/6548/16354
+s 4027
+f 4049/6511/16355 4108/6512/16356 4083/6549/16357
+f 4083/6549/16357 4108/6512/16356 4127/6550/16358
+s 4028
+f 4085/6439/16359 4109/6551/16360 4050/6383/16361
+f 4050/6383/16361 4109/6551/16360 4108/6512/16362
+s 4029
+f 4012/6499/16363 4091/6464/16364 4085/6552/16365
+f 4085/6552/16365 4091/6464/16364 4116/6553/16366
+s 4030
+f 4052/6444/16367 4086/6515/16368 4053/6445/16369
+f 4053/6445/16369 4086/6515/16368 4110/6554/16370
+s 4031
+f 4053/6445/16371 4110/6554/16372 4054/6446/16373
+f 4054/6446/16373 4110/6554/16372 4087/6555/16374
+s 4032
+f 4057/6454/16375 4113/6556/16376 4088/6455/16377
+f 4088/6455/16377 4113/6556/16376 4129/6557/16378
+s 4033
+f 4057/6456/16379 4058/6459/16380 4113/6558/16381
+f 4113/6558/16381 4058/6459/16380 4130/6559/16382
+s 4034
+f 4089/6461/16383 4114/6560/16384 4058/6459/16385
+f 4058/6459/16385 4114/6560/16384 4130/6559/16386
+s 4035
+f 4059/6396/16387 4090/6462/16388 4115/6521/16389
+f 4115/6521/16389 4090/6462/16388 4131/6561/16390
+s 4036
+f 4090/6562/16391 4020/6516/16392 4111/6518/16393
+f 4111/6518/16393 4020/6516/16392 4055/6393/16394
+s 4037
+f 4092/6564/16395 4117/6565/16396 4060/6563/16397
+f 4060/6563/16397 4117/6565/16396 4116/6553/16398
+s 4038
+f 4061/6526/16399 4094/6566/16400 4118/6527/16401
+f 4118/6527/16401 4094/6566/16400 4134/6567/16402
+s 4039
+f 4069/6534/16403 4067/6568/16404 4096/6483/16405
+f 4096/6483/16405 4067/6568/16404 4095/6569/16406
+s 4040
+f 4071/6487/16407 4072/6488/16408 4120/6570/16409
+f 4120/6570/16409 4072/6488/16408 4121/6571/16410
+s 4041
+f 4072/6489/16411 4101/6490/16412 4121/6572/16413
+f 4121/6572/16413 4101/6490/16412 4139/6573/16414
+s 4042
+f 4071/6487/16415 4120/6570/16416 4075/6491/16417
+f 4075/6491/16417 4120/6570/16416 4140/6574/16418
+s 4043
+f 4073/6492/16419 4074/6493/16420 4122/6575/16421
+f 4122/6575/16421 4074/6493/16420 4123/6576/16422
+s 4044
+f 4074/6494/16423 4102/6495/16424 4123/6577/16425
+f 4123/6577/16425 4102/6495/16424 4124/6578/16426
+s 4045
+f 4102/6495/16427 4075/6491/16428 4124/6578/16429
+f 4124/6578/16429 4075/6491/16428 4140/6574/16430
+s 4046
+f 4043/6366/16431 4104/6498/16432 4103/6497/16433
+f 4103/6497/16433 4104/6498/16432 4141/6579/16434
+s 4047
+f 4077/6501/16435 4078/6502/16436 4086/6543/16437
+f 4086/6543/16437 4078/6502/16436 4110/6580/16438
+s 4048
+f 4078/6502/16439 4079/6503/16440 4110/6580/16441
+f 4110/6580/16441 4079/6503/16440 4087/6581/16442
+s 4049
+f 4080/6544/16443 4105/6582/16444 4125/6545/16445
+f 4125/6545/16445 4105/6582/16444 4142/6583/16446
+s 4050
+f 4081/6585/16447 4107/6586/16448 4106/6584/16449
+f 4106/6584/16449 4107/6586/16448 4143/6587/16450
+s 4051
+f 4082/6509/16451 4126/6588/16452 4107/6508/16453
+f 4107/6508/16453 4126/6588/16452 4143/6589/16454
+s 4052
+f 4083/6549/16455 4127/6550/16456 4094/6590/16457
+f 4094/6590/16457 4127/6550/16456 4134/6591/16458
+s 4053
+f 4084/6437/16459 4125/6545/16460 4104/6513/16461
+f 4104/6513/16461 4125/6545/16460 4141/6592/16462
+s 4054
+f 4109/6593/16463 4085/6552/16464 4117/6565/16465
+f 4117/6565/16465 4085/6552/16464 4116/6553/16466
+s 4055
+f 4056/6517/16467 4112/6594/16468 4111/6518/16469
+f 4111/6518/16469 4112/6594/16468 4132/6595/16470
+s 4056
+f 4112/6519/16471 4088/6455/16472 4128/6596/16473
+f 4128/6596/16473 4088/6455/16472 4129/6557/16474
+s 4057
+f 4089/6520/16475 4115/6521/16476 4114/6597/16477
+f 4114/6597/16477 4115/6521/16476 4146/6598/16478
+s 4058
+f 4111/6518/16479 4132/6595/16480 4090/6562/16481
+f 4090/6562/16481 4132/6595/16480 4131/6599/16482
+s 4059
+f 4092/6564/16483 4133/6600/16484 4117/6565/16485
+f 4117/6565/16485 4133/6600/16484 4148/6601/16486
+s 4060
+f 4092/6603/16487 4093/6466/16488 4133/6602/16489
+f 4133/6602/16489 4093/6466/16488 4118/6527/16490
+s 4061
+f 4097/6535/16491 4135/6604/16492 4098/6536/16493
+f 4098/6536/16493 4135/6604/16492 4136/6605/16494
+s 4062
+f 4098/6537/16495 4136/6606/16496 4101/6490/16497
+f 4101/6490/16497 4136/6606/16496 4139/6573/16498
+s 4063
+f 4097/6535/16499 4100/6538/16500 4135/6604/16501
+f 4135/6604/16501 4100/6538/16500 4149/6607/16502
+s 4064
+f 4073/6492/16503 4122/6575/16504 4099/6539/16505
+f 4099/6539/16505 4122/6575/16504 4137/6608/16506
+s 4065
+f 4099/6540/16507 4137/6609/16508 4119/6541/16509
+f 4119/6541/16509 4137/6609/16508 4138/6610/16510
+s 4066
+f 4119/6541/16511 4138/6610/16512 4100/6538/16513
+f 4100/6538/16513 4138/6610/16512 4149/6607/16514
+s 4067
+f 4105/6612/16515 4106/6584/16516 4142/6611/16517
+f 4142/6611/16517 4106/6584/16516 4143/6587/16518
+s 4068
+f 4126/6548/16519 4103/6497/16520 4144/6613/16521
+f 4144/6613/16521 4103/6497/16520 4141/6579/16522
+s 4069
+f 4127/6550/16523 4108/6512/16524 4145/6614/16525
+f 4145/6614/16525 4108/6512/16524 4109/6551/16526
+s 4070
+f 4109/6593/16527 4117/6565/16528 4145/6615/16529
+f 4145/6615/16529 4117/6565/16528 4148/6601/16530
+s 4071
+f 4112/6594/16531 4128/6616/16532 4132/6595/16533
+f 4132/6595/16533 4128/6616/16532 4155/6617/16534
+s 4072
+f 4113/6619/16535 4130/6620/16536 4129/6618/16537
+f 4129/6618/16537 4130/6620/16536 4156/6621/16538
+s 4073
+f 4114/6597/16539 4146/6598/16540 4130/6622/16541
+f 4130/6622/16541 4146/6598/16540 4156/6623/16542
+s 4074
+f 4131/6561/16543 4147/6624/16544 4115/6521/16545
+f 4115/6521/16545 4147/6624/16544 4146/6598/16546
+s 4075
+f 4133/6602/16547 4118/6527/16548 4148/6625/16549
+f 4148/6625/16549 4118/6527/16548 4134/6567/16550
+s 4076
+f 4120/6570/16551 4121/6571/16552 4150/6626/16553
+f 4150/6626/16553 4121/6571/16552 4151/6627/16554
+s 4077
+f 4121/6572/16555 4139/6573/16556 4151/6628/16557
+f 4151/6628/16557 4139/6573/16556 4161/6629/16558
+s 4078
+f 4120/6570/16559 4150/6626/16560 4140/6574/16561
+f 4140/6574/16561 4150/6626/16560 4162/6630/16562
+s 4079
+f 4122/6575/16563 4123/6576/16564 4152/6631/16565
+f 4152/6631/16565 4123/6576/16564 4153/6632/16566
+s 4080
+f 4123/6577/16567 4124/6578/16568 4153/6633/16569
+f 4153/6633/16569 4124/6578/16568 4154/6634/16570
+s 4081
+f 4124/6578/16571 4140/6574/16572 4154/6634/16573
+f 4154/6634/16573 4140/6574/16572 4162/6630/16574
+s 4082
+f 4142/6583/16575 4144/6635/16576 4125/6545/16577
+f 4125/6545/16577 4144/6635/16576 4141/6592/16578
+s 4083
+f 4144/6613/16579 4142/6636/16580 4126/6548/16581
+f 4126/6548/16581 4142/6636/16580 4143/6637/16582
+s 4084
+f 4145/6614/16583 4148/6638/16584 4127/6550/16585
+f 4127/6550/16585 4148/6638/16584 4134/6591/16586
+s 4085
+f 4128/6616/16587 4129/6639/16588 4155/6617/16589
+f 4155/6617/16589 4129/6639/16588 4156/6640/16590
+s 4086
+f 4131/6599/16591 4132/6595/16592 4147/6641/16593
+f 4147/6641/16593 4132/6595/16592 4155/6617/16594
+s 4087
+f 4135/6604/16595 4157/6642/16596 4136/6605/16597
+f 4136/6605/16597 4157/6642/16596 4158/6643/16598
+s 4088
+f 4136/6606/16599 4158/6644/16600 4139/6573/16601
+f 4139/6573/16601 4158/6644/16600 4161/6629/16602
+s 4089
+f 4135/6604/16603 4149/6607/16604 4157/6642/16605
+f 4157/6642/16605 4149/6607/16604 4163/6645/16606
+s 4090
+f 4122/6575/16607 4152/6631/16608 4137/6608/16609
+f 4137/6608/16609 4152/6631/16608 4159/6646/16610
+s 4091
+f 4137/6609/16611 4159/6647/16612 4138/6610/16613
+f 4138/6610/16613 4159/6647/16612 4160/6648/16614
+s 4092
+f 4138/6610/16615 4160/6648/16616 4149/6607/16617
+f 4149/6607/16617 4160/6648/16616 4163/6645/16618
+s 4093
+f 4147/6624/16619 4155/6649/16620 4146/6598/16621
+f 4146/6598/16621 4155/6649/16620 4156/6623/16622
+s 4094
+f 4150/6626/16623 4151/6627/16624 4164/6650/16625
+f 4164/6650/16625 4151/6627/16624 4165/6651/16626
+s 4095
+f 4151/6628/16627 4161/6629/16628 4165/6652/16629
+f 4165/6652/16629 4161/6629/16628 4173/6653/16630
+s 4096
+f 4150/6626/16631 4164/6650/16632 4162/6630/16633
+f 4162/6630/16633 4164/6650/16632 4168/6654/16634
+s 4097
+f 4152/6631/16635 4153/6632/16636 4166/6655/16637
+f 4166/6655/16637 4153/6632/16636 4167/6656/16638
+s 4098
+f 4153/6633/16639 4154/6634/16640 4167/6657/16641
+f 4167/6657/16641 4154/6634/16640 4174/6658/16642
+s 4099
+f 4162/6630/16643 4168/6654/16644 4154/6634/16645
+f 4154/6634/16645 4168/6654/16644 4174/6658/16646
+s 4100
+f 4157/6642/16647 4169/6659/16648 4158/6643/16649
+f 4158/6643/16649 4169/6659/16648 4170/6660/16650
+s 4101
+f 4158/6644/16651 4170/6661/16652 4161/6629/16653
+f 4161/6629/16653 4170/6661/16652 4173/6653/16654
+s 4102
+f 4157/6642/16655 4163/6645/16656 4169/6659/16657
+f 4169/6659/16657 4163/6645/16656 4172/6662/16658
+s 4103
+f 4152/6631/16659 4166/6655/16660 4159/6646/16661
+f 4159/6646/16661 4166/6655/16660 4171/6663/16662
+s 4104
+f 4159/6647/16663 4171/6664/16664 4160/6648/16665
+f 4160/6648/16665 4171/6664/16664 4175/6665/16666
+s 4105
+f 4163/6645/16667 4160/6648/16668 4172/6662/16669
+f 4172/6662/16669 4160/6648/16668 4175/6665/16670
+s 4106
+f 4164/6650/16671 4165/6651/16672 4176/6666/16673
+f 4176/6666/16673 4165/6651/16672 4177/6667/16674
+s 4107
+f 4165/6652/16675 4173/6653/16676 4177/6668/16677
+f 4177/6668/16677 4173/6653/16676 4185/6669/16678
+s 4108
+f 4164/6650/16679 4176/6666/16680 4168/6654/16681
+f 4168/6654/16681 4176/6666/16680 4180/6670/16682
+s 4109
+f 4166/6655/16683 4167/6656/16684 4178/6671/16685
+f 4178/6671/16685 4167/6656/16684 4179/6672/16686
+s 4110
+f 4167/6657/16687 4174/6658/16688 4179/6673/16689
+f 4179/6673/16689 4174/6658/16688 4186/6674/16690
+s 4111
+f 4168/6654/16691 4180/6670/16692 4174/6658/16693
+f 4174/6658/16693 4180/6670/16692 4186/6674/16694
+s 4112
+f 4169/6659/16695 4181/6675/16696 4170/6660/16697
+f 4170/6660/16697 4181/6675/16696 4182/6676/16698
+s 4113
+f 4170/6661/16699 4182/6677/16700 4173/6653/16701
+f 4173/6653/16701 4182/6677/16700 4185/6669/16702
+s 4114
+f 4169/6659/16703 4172/6662/16704 4181/6675/16705
+f 4181/6675/16705 4172/6662/16704 4184/6678/16706
+s 4115
+f 4166/6655/16707 4178/6671/16708 4171/6663/16709
+f 4171/6663/16709 4178/6671/16708 4183/6679/16710
+s 4116
+f 4171/6664/16711 4183/6680/16712 4175/6665/16713
+f 4175/6665/16713 4183/6680/16712 4187/6681/16714
+s 4117
+f 4172/6662/16715 4175/6665/16716 4184/6678/16717
+f 4184/6678/16717 4175/6665/16716 4187/6681/16718
+s 4118
+f 4176/6666/16719 4177/6667/16720 4188/6682/16721
+f 4188/6682/16721 4177/6667/16720 4189/6683/16722
+s 4119
+f 4177/6668/16723 4185/6669/16724 4189/6684/16725
+f 4189/6684/16725 4185/6669/16724 4197/6685/16726
+s 4120
+f 4176/6666/16727 4188/6682/16728 4180/6670/16729
+f 4180/6670/16729 4188/6682/16728 4192/6686/16730
+s 4121
+f 4178/6671/16731 4179/6672/16732 4190/6687/16733
+f 4190/6687/16733 4179/6672/16732 4191/6688/16734
+s 4122
+f 4179/6673/16735 4186/6674/16736 4191/6689/16737
+f 4191/6689/16737 4186/6674/16736 4198/6690/16738
+s 4123
+f 4180/6670/16739 4192/6686/16740 4186/6674/16741
+f 4186/6674/16741 4192/6686/16740 4198/6690/16742
+s 4124
+f 4181/6675/16743 4193/6691/16744 4182/6676/16745
+f 4182/6676/16745 4193/6691/16744 4194/6692/16746
+s 4125
+f 4182/6677/16747 4194/6693/16748 4185/6669/16749
+f 4185/6669/16749 4194/6693/16748 4197/6685/16750
+s 4126
+f 4181/6675/16751 4184/6678/16752 4193/6691/16753
+f 4193/6691/16753 4184/6678/16752 4196/6694/16754
+s 4127
+f 4178/6671/16755 4190/6687/16756 4183/6679/16757
+f 4183/6679/16757 4190/6687/16756 4195/6695/16758
+s 4128
+f 4183/6680/16759 4195/6696/16760 4187/6681/16761
+f 4187/6681/16761 4195/6696/16760 4199/6697/16762
+s 4129
+f 4184/6678/16763 4187/6681/16764 4196/6694/16765
+f 4196/6694/16765 4187/6681/16764 4199/6697/16766
+s 4130
+f 4189/6683/16767 4200/6698/16768 4188/6682/16769
+f 4188/6682/16769 4200/6698/16768 4202/6699/16770
+s 4131
+f 4197/6685/16771 4201/6700/16772 4189/6684/16773
+f 4189/6684/16773 4201/6700/16772 4200/6701/16774
+s 4132
+f 4188/6682/16775 4202/6699/16776 4192/6686/16777
+f 4192/6686/16777 4202/6699/16776 4205/6702/16778
+s 4133
+f 4190/6687/16779 4191/6688/16780 4203/6703/16781
+f 4203/6703/16781 4191/6688/16780 4210/6704/16782
+s 4134
+f 4198/6690/16783 4204/6705/16784 4191/6689/16785
+f 4191/6689/16785 4204/6705/16784 4210/6706/16786
+s 4135
+f 4192/6686/16787 4205/6702/16788 4198/6690/16789
+f 4198/6690/16789 4205/6702/16788 4204/6705/16790
+s 4136
+f 4194/6692/16791 4193/6691/16792 4206/6707/16793
+f 4206/6707/16793 4193/6691/16792 4207/6708/16794
+s 4137
+f 4197/6685/16795 4194/6693/16796 4201/6700/16797
+f 4201/6700/16797 4194/6693/16796 4206/6709/16798
+s 4138
+f 4193/6691/16799 4196/6694/16800 4207/6708/16801
+f 4207/6708/16801 4196/6694/16800 4209/6710/16802
+s 4139
+f 4190/6687/16803 4203/6703/16804 4195/6695/16805
+f 4195/6695/16805 4203/6703/16804 4211/6711/16806
+s 4140
+f 4199/6697/16807 4195/6696/16808 4208/6712/16809
+f 4208/6712/16809 4195/6696/16808 4211/6713/16810
+s 4141
+f 4196/6694/16811 4199/6697/16812 4209/6710/16813
+f 4209/6710/16813 4199/6697/16812 4208/6712/16814
+s 4142
+f 4201/6700/16815 4212/6714/16816 4200/6701/16817
+f 4200/6701/16817 4212/6714/16816 4213/6715/16818
+s 4143
+f 4200/6698/16819 4213/6716/16820 4202/6699/16821
+f 4202/6699/16821 4213/6716/16820 4214/6717/16822
+s 4144
+f 4202/6699/16823 4214/6717/16824 4205/6702/16825
+f 4205/6702/16825 4214/6717/16824 4215/6718/16826
+s 4145
+f 4203/6703/16827 4210/6704/16828 4211/6711/16829
+f 4211/6711/16829 4210/6704/16828 4216/6719/16830
+s 4146
+f 4205/6702/16831 4215/6718/16832 4204/6705/16833
+f 4204/6705/16833 4215/6718/16832 4220/6720/16834
+s 4147
+f 4210/6704/16835 4204/6721/16836 4216/6719/16837
+f 4216/6719/16837 4204/6721/16836 4220/6722/16838
+s 4148
+f 4201/6700/16839 4206/6709/16840 4212/6714/16841
+f 4212/6714/16841 4206/6709/16840 4217/6723/16842
+s 4149
+f 4206/6707/16843 4207/6708/16844 4217/6724/16845
+f 4217/6724/16845 4207/6708/16844 4218/6725/16846
+s 4150
+f 4207/6708/16847 4209/6710/16848 4218/6725/16849
+f 4218/6725/16849 4209/6710/16848 4219/6726/16850
+s 4151
+f 4209/6710/16851 4208/6712/16852 4219/6726/16853
+f 4219/6726/16853 4208/6712/16852 4221/6727/16854
+s 4152
+f 4211/6711/16855 4216/6719/16856 4208/6728/16857
+f 4208/6728/16857 4216/6719/16856 4221/6729/16858
+s 4153
+f 4212/6714/16859 4222/6730/16860 4213/6715/16861
+f 4213/6715/16861 4222/6730/16860 4227/6731/16862
+s 4154
+f 4214/6717/16863 4213/6716/16864 4223/6732/16865
+f 4223/6732/16865 4213/6716/16864 4227/6733/16866
+s 4155
+f 4214/6717/16867 4223/6732/16868 4215/6718/16869
+f 4215/6718/16869 4223/6732/16868 4228/6734/16870
+s 4156
+f 4220/6720/16871 4215/6718/16872 4224/6735/16873
+f 4224/6735/16873 4215/6718/16872 4228/6734/16874
+s 4157
+f 4220/6722/16875 4224/6736/16876 4216/6719/16877
+f 4216/6719/16877 4224/6736/16876 4229/6737/16878
+s 4158
+f 4212/6714/16879 4217/6723/16880 4222/6730/16881
+f 4222/6730/16881 4217/6723/16880 4230/6738/16882
+s 4159
+f 4218/6725/16883 4225/6739/16884 4217/6724/16885
+f 4217/6724/16885 4225/6739/16884 4230/6740/16886
+s 4160
+f 4218/6725/16887 4219/6726/16888 4225/6739/16889
+f 4225/6739/16889 4219/6726/16888 4231/6741/16890
+s 4161
+f 4221/6727/16891 4226/6742/16892 4219/6726/16893
+f 4219/6726/16893 4226/6742/16892 4231/6741/16894
+s 4162
+f 4221/6729/16895 4216/6719/16896 4226/6743/16897
+f 4226/6743/16897 4216/6719/16896 4229/6737/16898
+s 4163
+f 4222/6730/16899 4230/6738/16900 4227/6731/16901
+f 4227/6731/16901 4230/6738/16900 4232/6744/16902
+s 4164
+f 4223/6732/16903 4227/6733/16904 4228/6734/16905
+f 4228/6734/16905 4227/6733/16904 4232/6745/16906
+s 4165
+f 4224/6735/16907 4228/6734/16908 4229/6746/16909
+f 4229/6746/16909 4228/6734/16908 4232/6745/16910
+s 4166
+f 4225/6739/16911 4231/6741/16912 4230/6740/16913
+f 4230/6740/16913 4231/6741/16912 4232/6747/16914
+s 4167
+f 4226/6742/16915 4229/6748/16916 4231/6741/16917
+f 4231/6741/16917 4229/6748/16916 4232/6747/16918
+s off
+f 219/399/16919 301/449/16920 338/516/16921
+f 338/516/16922 272/515/16923 219/399/16924
+f 272/515/16925 300/6749/16926 219/399/16927
+f 300/6749/16928 379/6750/16929 219/399/16930
+f 184/6751/16931 426/6752/16932 374/6753/16933
+f 432/6754/16934 426/6752/16935 184/6751/16936
+f 337/6755/16937 432/6754/16938 184/6751/16939
+s 4168
+f 4234/294/16940 4233/293/16941 200/252/16942
+f 200/252/16942 4233/293/16941 184/249/16943
+s off
+f 242/296/16944 4234/294/16945 200/252/16946
+f 184/6751/16947 4233/6756/16948 337/6755/16949
+f 337/6755/16950 4233/6756/16951 493/6757/16952
+f 493/6757/16953 4233/6756/16954 433/6758/16955
+f 4233/6756/16956 219/399/16957 379/6750/16958
+f 4233/6756/16959 379/6750/16960 433/6758/16961
+s 4169
+f 4236/251/16962 4235/250/16963 160/219/16964
+f 160/219/16964 4235/250/16963 171/233/16965
+s off
+f 201/254/16966 4236/251/16967 160/219/16968
+f 184/6751/16969 374/6753/16970 333/6759/16971
+f 184/6751/16972 333/6759/16973 297/6760/16974
+f 297/6760/16975 269/6761/16976 184/6751/16977
+s 4170
+f 184/6751/16978 269/6761/16979 4235/6762/16980
+f 4235/6762/16980 269/6761/16979 334/6763/16981
+s off
+f 4235/6762/16982 334/6763/16983 239/6764/16984
+f 4235/6762/16985 239/6764/16986 270/6765/16987
+f 4235/6762/16988 270/6765/16989 218/6766/16990
+s 4171
+f 199/326/16991 171/298/16992 218/6766/16993
+f 218/6766/16993 171/298/16992 4235/6762/16994
+s off
+f 55/49/16995 54/48/16996 63/6767/16997
+s 4172
+f 54/48/16998 70/51/16999 63/6767/17000
+f 63/6767/17000 70/51/16999 73/6768/17001
+f 70/51/16999 71/120/17002 73/6768/17001
+f 71/120/17002 72/122/17003 73/6768/17001
+s off
+f 70/51/17004 83/6769/17005 71/120/17006
+f 83/6769/17007 70/51/17008 68/50/17009
+f 72/123/17010 69/103/17011 73/104/17012
+s 4173
+f 2676/4117/17013 2769/6770/17014 2599/4114/17015
+f 2599/4114/17015 2769/6770/17014 2782/6771/17016
diff --git a/resources/models/Kitten.png b/resources/models/Kitten.png
new file mode 100644 (file)
index 0000000..276f4cd
Binary files /dev/null and b/resources/models/Kitten.png differ
diff --git a/resources/models/ToyRobot-Metal.mtl b/resources/models/ToyRobot-Metal.mtl
new file mode 100644 (file)
index 0000000..cab3ae2
--- /dev/null
@@ -0,0 +1,11 @@
+newmtl lambert3SG
+illum 4
+Kd 0.00 0.00 0.00
+Ka 0.00 0.00 0.00
+Tf 1.00 1.00 1.00
+map_Kd tbcol.png
+bump tb-norm.png -bm 0.05
+Ni 1.00
+Ks 0.00 0.00 0.00
+map_Ks TB-gloss.png
+Ns 3.66
diff --git a/resources/models/ToyRobot-Metal.obj b/resources/models/ToyRobot-Metal.obj
new file mode 100644 (file)
index 0000000..b485263
--- /dev/null
@@ -0,0 +1,22013 @@
+# This file uses centimeters as units for non-parametric coordinates.
+
+mtllib ToyRobot-Metal-triangulated.mtl
+g default
+v 0.266747 1.743998 0.820827
+v 0.314882 1.640511 0.770846
+v 0.365662 1.687059 0.770842
+v 0.314933 1.640326 -0.769657
+v 0.266800 1.743801 -0.819666
+v 0.365712 1.686875 -0.769661
+v 1.075812 1.688031 -0.819633
+v 1.125750 1.684529 -0.769636
+v 1.074971 1.637981 -0.769632
+v 1.125727 1.684616 -0.049379
+v 1.125724 1.684628 0.050611
+v 1.074946 1.638073 0.000620
+v 1.074921 1.638166 0.770871
+v 1.125700 1.684714 0.770867
+v 1.075759 1.688227 0.820860
+v 1.397177 1.053313 0.820947
+v 1.446808 1.059502 0.770953
+v 1.389622 1.102748 0.770946
+v 1.446858 1.059318 -0.769551
+v 1.397231 1.053117 -0.819546
+v 1.389672 1.102563 -0.769558
+v 0.251751 0.910610 -0.819567
+v 0.303680 1.017332 -0.769583
+v 0.352390 0.973517 -0.769576
+v 0.303630 1.017516 0.770920
+v 0.251697 0.910807 0.820926
+v 0.352339 0.973702 0.770927
+v 1.440868 0.768243 0.820982
+v 1.449287 0.718082 0.770994
+v 1.491700 0.766597 0.770989
+v 1.449337 0.717897 -0.769510
+v 1.440921 0.768046 -0.819511
+v 1.491750 0.766412 -0.769514
+v -0.251381 0.798620 -0.769575
+v -0.201392 0.797711 -0.819568
+v -0.202297 0.747730 -0.769567
+v -0.202347 0.747915 0.770936
+v -0.201446 0.797907 0.820925
+v -0.251431 0.798804 0.770928
+v -0.179616 2.006467 0.820781
+v -0.177880 2.102547 0.801431
+v -0.228880 2.047292 0.770780
+v -0.223432 2.348646 0.644310
+v -0.173384 2.351286 0.696894
+v -0.172550 2.397375 0.627555
+v -0.172509 2.397225 -0.626579
+v -0.173338 2.351120 -0.695908
+v -0.223390 2.348492 -0.643326
+v -0.177828 2.102356 -0.800385
+v -0.179562 2.006271 -0.819712
+v -0.228830 2.047107 -0.769724
+v 1.081149 1.983499 -0.819668
+v 1.082880 2.079383 -0.799868
+v 1.182854 2.077577 -0.799864
+v 1.181871 2.023193 -0.770402
+v 1.130965 1.973246 -0.769670
+v 1.187184 2.317492 -0.696332
+v 1.087217 2.319650 -0.696336
+v 1.088045 2.365554 -0.626534
+v 1.188011 2.363395 -0.626530
+v 1.187989 2.363477 0.050531
+v 1.187992 2.363465 -0.049459
+v 1.088024 2.365629 0.000533
+v 1.187139 2.317659 0.697415
+v 1.187970 2.363546 0.627603
+v 1.088004 2.365704 0.627600
+v 1.087171 2.319817 0.697412
+v 1.082828 2.079574 0.801002
+v 1.081096 1.983695 0.820825
+v 1.130915 1.973430 0.770833
+v 1.181821 2.023377 0.771556
+v 1.182802 2.077768 0.801005
+v 1.179600 1.898864 -0.048676
+v 1.179597 1.898876 0.049860
+v 1.128696 1.849179 0.050591
+v 1.128699 1.849167 -0.049399
+v 1.325984 1.947098 0.050586
+v 1.275079 1.897151 0.049863
+v 1.275082 1.897139 -0.048673
+v 1.325987 1.947086 -0.049404
+v 1.283471 2.361752 0.050535
+v 1.332554 2.310862 0.050542
+v 1.332558 2.310850 -0.049448
+v 1.283474 2.361740 -0.049455
+v 1.278336 2.075852 -0.799861
+v 1.328187 2.067535 -0.748609
+v 1.277353 2.021468 -0.770398
+v 1.283493 2.361671 -0.626527
+v 1.332577 2.310779 -0.643640
+v 1.282666 2.315768 -0.696328
+v 1.328138 2.067715 0.749762
+v 1.278284 2.076044 0.801009
+v 1.277302 2.021652 0.771559
+v 1.282620 2.315935 0.697419
+v 1.332535 2.310934 0.644735
+v 1.283452 2.361821 0.627607
+v 0.166796 0.918150 0.692005
+v 0.215880 0.867261 0.692013
+v 0.216781 0.917253 0.742002
+v 1.393002 0.845999 0.692054
+v 1.432534 0.893986 0.692049
+v 1.380929 0.896226 0.742042
+v 0.223413 1.294207 0.691962
+v 0.172626 1.240905 0.691967
+v 0.222684 1.244059 0.741963
+v 1.342749 1.313839 0.691996
+v 1.282408 1.359414 0.691989
+v 1.292448 1.309982 0.741990
+v 0.222733 1.243881 -0.745109
+v 0.172671 1.240739 -0.695115
+v 0.223459 1.294040 -0.695120
+v 1.342794 1.313673 -0.695085
+v 1.292496 1.309804 -0.745081
+v 1.282454 1.359248 -0.695093
+v 0.215925 0.867095 -0.695069
+v 0.166841 0.917984 -0.695076
+v 0.216830 0.917075 -0.745070
+v 1.432579 0.893819 -0.695032
+v 1.393049 0.845829 -0.728073
+v 1.380978 0.896048 -0.745029
+v 0.178368 1.345627 0.679069
+v 0.227452 1.294737 0.679077
+v 0.228353 1.344730 0.729066
+v 0.996816 1.341688 0.679096
+v 1.047883 1.400577 0.679091
+v 0.997717 1.391681 0.729085
+v 0.236903 1.817995 0.679014
+v 0.186013 1.768912 0.679019
+v 0.235998 1.768015 0.729015
+v 1.053663 1.720545 0.679053
+v 1.004579 1.771435 0.679045
+v 1.003674 1.721454 0.729046
+v 0.236046 1.767840 -0.727862
+v 0.186058 1.768749 -0.677869
+v 0.236947 1.817833 -0.677873
+v 1.053707 1.720383 -0.677835
+v 1.003722 1.721280 -0.727831
+v 1.004623 1.771272 -0.677842
+v 0.227496 1.294575 -0.677811
+v 0.178412 1.345464 -0.677818
+v 0.228400 1.344555 -0.727812
+v 1.047927 1.400415 -0.677796
+v 0.996861 1.341526 -0.677791
+v 0.997765 1.391507 -0.727792
+v 0.736370 2.066616 0.151172
+v 0.737912 2.152107 0.208290
+v 0.738941 2.209237 0.293781
+v 0.739300 2.229307 0.394631
+v 0.738935 2.209261 0.495486
+v 0.737900 2.152152 0.580992
+v 0.736354 2.066675 0.638130
+v 0.734532 1.965841 0.658203
+v 0.732712 1.865003 0.638154
+v 0.731169 1.779511 0.581036
+v 0.730140 1.722382 0.495544
+v 0.729781 1.702312 0.394694
+v 0.730147 1.722358 0.293840
+v 0.731182 1.779467 0.208334
+v 0.732727 1.864944 0.151196
+v 0.734550 1.965778 0.131123
+v 1.255731 2.057235 0.151190
+v 1.257273 2.142726 0.208308
+v 1.258302 2.199856 0.293800
+v 1.258661 2.219926 0.394650
+v 1.258296 2.199880 0.495504
+v 1.257261 2.142771 0.581010
+v 1.255715 2.057294 0.638148
+v 1.253893 1.956460 0.658221
+v 1.252073 1.855621 0.638172
+v 1.250530 1.770130 0.581054
+v 1.249501 1.713001 0.495562
+v 1.249143 1.692931 0.394712
+v 1.249508 1.712977 0.293858
+v 1.250543 1.770086 0.208352
+v 1.252089 1.855563 0.151214
+v 1.253911 1.956397 0.131141
+v 1.255272 2.031912 0.212357
+v 1.256427 2.095927 0.255126
+v 1.257197 2.138705 0.319142
+v 1.257466 2.153733 0.394657
+v 1.257192 2.138723 0.470177
+v 1.256417 2.095960 0.534202
+v 1.255260 2.031955 0.576987
+v 1.253896 1.956452 0.592018
+v 1.252532 1.880945 0.577005
+v 1.251377 1.816930 0.534236
+v 1.250607 1.774152 0.470220
+v 1.250338 1.759124 0.394705
+v 1.250612 1.774134 0.319185
+v 1.251387 1.816896 0.255160
+v 1.252544 1.880901 0.212375
+v 1.253908 1.956405 0.197344
+v 1.235541 2.032268 0.212356
+v 1.236695 2.096283 0.255126
+v 1.237466 2.139061 0.319141
+v 1.237735 2.154089 0.394657
+v 1.237461 2.139080 0.470176
+v 1.236686 2.096317 0.534202
+v 1.235529 2.032312 0.576987
+v 1.234164 1.956809 0.592017
+v 1.232801 1.881301 0.577005
+v 1.231646 1.817286 0.534235
+v 1.230876 1.774508 0.470220
+v 1.230607 1.759480 0.394704
+v 1.230881 1.774490 0.319185
+v 1.231655 1.817253 0.255159
+v 1.232813 1.881258 0.212374
+v 1.234177 1.956761 0.197344
+v 1.054750 1.998713 0.240317
+v 1.055342 2.031518 0.262235
+v 1.055737 2.053441 0.295041
+v 1.055875 2.061142 0.333740
+v 1.055734 2.053450 0.372441
+v 1.055337 2.031536 0.405251
+v 1.054744 1.998736 0.427177
+v 1.054045 1.960043 0.434880
+v 1.053346 1.921348 0.427186
+v 1.052755 1.888543 0.405268
+v 1.052360 1.866621 0.372463
+v 1.052222 1.858919 0.333764
+v 1.052362 1.866611 0.295063
+v 1.052759 1.888526 0.262252
+v 1.053352 1.921326 0.240326
+v 1.054052 1.960019 0.232624
+v 1.254044 1.995113 0.240324
+v 1.254636 2.027919 0.262242
+v 1.255031 2.049841 0.295048
+v 1.255168 2.057542 0.333747
+v 1.255028 2.049850 0.372447
+v 1.254631 2.027936 0.405258
+v 1.254038 1.995136 0.427184
+v 1.253339 1.956443 0.434887
+v 1.252640 1.917748 0.427193
+v 1.252048 1.884943 0.405275
+v 1.251653 1.863021 0.372470
+v 1.251516 1.855319 0.333771
+v 1.251656 1.863011 0.295070
+v 1.252053 1.884926 0.262259
+v 1.252646 1.917726 0.240333
+v 1.253345 1.956419 0.232631
+v 0.736396 2.066521 -0.640283
+v 0.737938 2.152012 -0.583165
+v 0.738967 2.209142 -0.497673
+v 0.739326 2.229212 -0.396823
+v 0.738961 2.209167 -0.295969
+v 0.737926 2.152057 -0.210463
+v 0.736380 2.066580 -0.153325
+v 0.734558 1.965746 -0.133252
+v 0.732737 1.864908 -0.153301
+v 0.731195 1.779417 -0.210419
+v 0.730166 1.722287 -0.295910
+v 0.729807 1.702218 -0.396760
+v 0.730173 1.722263 -0.497615
+v 0.731207 1.779372 -0.583120
+v 0.732753 1.864849 -0.640259
+v 0.734575 1.965683 -0.660332
+v 1.255757 2.057140 -0.640265
+v 1.257299 2.142632 -0.583147
+v 1.258328 2.199761 -0.497655
+v 1.258687 2.219831 -0.396805
+v 1.258322 2.199785 -0.295950
+v 1.257287 2.142676 -0.210445
+v 1.255741 2.057199 -0.153307
+v 1.253919 1.956365 -0.133234
+v 1.252099 1.855527 -0.153282
+v 1.250556 1.770036 -0.210401
+v 1.249527 1.712906 -0.295892
+v 1.249168 1.692837 -0.396742
+v 1.249534 1.712882 -0.497597
+v 1.250569 1.769991 -0.583102
+v 1.252114 1.855468 -0.640241
+v 1.253936 1.956302 -0.660314
+v 1.255298 2.031817 -0.579098
+v 1.256452 2.095832 -0.536328
+v 1.257223 2.138610 -0.472313
+v 1.257492 2.153638 -0.396797
+v 1.257218 2.138628 -0.321278
+v 1.256443 2.095866 -0.257252
+v 1.255286 2.031861 -0.214467
+v 1.253921 1.956357 -0.199437
+v 1.252558 1.880850 -0.214449
+v 1.251403 1.816835 -0.257219
+v 1.250633 1.774057 -0.321234
+v 1.250364 1.759029 -0.396750
+v 1.250638 1.774039 -0.472269
+v 1.251412 1.816802 -0.536295
+v 1.252570 1.880807 -0.579080
+v 1.253934 1.956310 -0.594110
+v 1.235566 2.032173 -0.579099
+v 1.236721 2.096188 -0.536329
+v 1.237492 2.138966 -0.472314
+v 1.237761 2.153995 -0.396798
+v 1.237487 2.138985 -0.321279
+v 1.236712 2.096222 -0.257253
+v 1.235554 2.032217 -0.214468
+v 1.234190 1.956714 -0.199438
+v 1.232827 1.881207 -0.214450
+v 1.231672 1.817191 -0.257220
+v 1.230902 1.774413 -0.321235
+v 1.230633 1.759386 -0.396751
+v 1.230906 1.774395 -0.472270
+v 1.231681 1.817158 -0.536296
+v 1.232839 1.881163 -0.579081
+v 1.234203 1.956667 -0.594111
+v 0.986768 2.012876 -0.505810
+v 0.987559 2.056719 -0.476517
+v 0.988087 2.086017 -0.432673
+v 0.988271 2.096310 -0.380953
+v 0.988083 2.086030 -0.329231
+v 0.987553 2.056742 -0.285380
+v 0.986760 2.012906 -0.256077
+v 0.985825 1.961194 -0.245783
+v 0.984892 1.909480 -0.256065
+v 0.984101 1.865636 -0.285357
+v 0.983573 1.836338 -0.329201
+v 0.983389 1.826045 -0.380921
+v 0.983576 1.836326 -0.432643
+v 0.984107 1.865613 -0.476494
+v 0.984900 1.909450 -0.505797
+v 0.985834 1.961161 -0.516091
+v 1.253118 2.008065 -0.505800
+v 1.253909 2.051908 -0.476508
+v 1.254437 2.081206 -0.432664
+v 1.254621 2.091499 -0.380944
+v 1.254433 2.081219 -0.329221
+v 1.253903 2.051931 -0.285371
+v 1.253110 2.008095 -0.256068
+v 1.252175 1.956383 -0.245774
+v 1.251242 1.904669 -0.256055
+v 1.250451 1.860825 -0.285348
+v 1.249923 1.831527 -0.329192
+v 1.249739 1.821234 -0.380912
+v 1.249927 1.831515 -0.432634
+v 1.250457 1.860802 -0.476485
+v 1.251250 1.904639 -0.505788
+v 1.252184 1.956351 -0.516082
+v 2.265222 -0.737460 1.947940
+v 2.261059 -0.788708 1.897951
+v 2.316273 -0.731376 1.897947
+v 2.350237 -0.219596 1.897888
+v 2.298188 -0.225835 1.947882
+v 2.313540 -0.324640 1.947894
+v 2.365031 -0.314803 1.897900
+v 1.627362 -0.838747 1.897933
+v 1.698423 -0.876130 1.897940
+v 1.678005 -0.828702 1.947928
+v 1.429440 -0.362997 1.897869
+v 1.444134 -0.457564 1.897881
+v 1.496718 -0.451557 1.947877
+v 1.481366 -0.352753 1.947865
+v 1.539667 0.061619 1.947819
+v 1.544733 0.112994 1.897818
+v 1.488366 0.055811 1.897822
+v 1.544751 0.112941 1.442273
+v 1.539689 0.061554 1.392284
+v 1.488383 0.055758 1.442278
+v 1.444151 -0.457617 1.442336
+v 1.429458 -0.363050 1.442324
+v 1.481388 -0.352818 1.392330
+v 1.496740 -0.451622 1.392342
+v 1.698441 -0.876183 1.442395
+v 1.627379 -0.838800 1.442387
+v 1.678027 -0.828766 1.392393
+v 2.261077 -0.788761 1.442406
+v 2.265244 -0.737525 1.392406
+v 2.316291 -0.731429 1.442402
+v 2.298210 -0.225900 1.392347
+v 2.350255 -0.219649 1.442343
+v 2.365048 -0.314857 1.442355
+v 2.313562 -0.324705 1.392359
+v 2.126884 0.152860 1.947831
+v 2.177376 0.162542 1.897837
+v 2.107369 0.200417 1.897830
+v 2.177394 0.162488 1.442292
+v 2.126906 0.152795 1.392296
+v 2.107387 0.200363 1.442285
+v 2.201509 0.129214 1.391500
+v 2.228018 0.085668 1.341511
+v 2.072227 0.010408 1.391508
+v 2.113380 -0.019681 1.341519
+v 1.998251 -0.148829 1.391524
+v 2.047783 -0.160880 1.341533
+v 1.990843 -0.324254 1.391544
+v 2.041215 -0.316433 1.341551
+v 2.051131 -0.489160 1.391566
+v 2.094674 -0.462659 1.341570
+v 2.169937 -0.618442 1.391586
+v 2.200022 -0.577297 1.341587
+v 2.329174 -0.692418 1.391601
+v 2.341221 -0.642893 1.341600
+v 2.504599 -0.699826 1.391608
+v 2.496774 -0.649462 1.341607
+v 2.669505 -0.639538 1.391608
+v 2.643001 -0.596003 1.341607
+v 2.798787 -0.520732 1.391599
+v 2.757638 -0.490655 1.341599
+v 2.872764 -0.361495 1.391583
+v 2.823235 -0.349456 1.341585
+v 2.880172 -0.186070 1.391563
+v 2.829804 -0.193903 1.341567
+v 2.819883 -0.021164 1.391541
+v 2.776344 -0.047676 1.341548
+v 2.701077 0.108118 1.391522
+v 2.670996 0.066961 1.341530
+v 2.541840 0.182095 1.391507
+v 2.529797 0.132558 1.341517
+v 2.366416 0.189502 1.391499
+v 2.374244 0.139126 1.341510
+v 2.201488 0.129279 1.948639
+v 2.227992 0.085744 1.998641
+v 2.072205 0.010473 1.948648
+v 2.113354 -0.019604 1.998648
+v 1.998229 -0.148764 1.948664
+v 2.047758 -0.160803 1.998662
+v 1.990821 -0.324188 1.948684
+v 2.041189 -0.316356 1.998680
+v 2.051109 -0.489095 1.948706
+v 2.094648 -0.462583 1.998699
+v 2.169915 -0.618377 1.948726
+v 2.199996 -0.577220 1.998717
+v 2.329152 -0.692353 1.948740
+v 2.341195 -0.642817 1.998730
+v 2.504577 -0.699761 1.948748
+v 2.496749 -0.649385 1.998737
+v 2.669483 -0.639473 1.948748
+v 2.642975 -0.595926 1.998736
+v 2.798766 -0.520667 1.948739
+v 2.757612 -0.490578 1.998729
+v 2.872742 -0.361430 1.948723
+v 2.823209 -0.349379 1.998715
+v 2.880150 -0.186005 1.948703
+v 2.829778 -0.193826 1.998697
+v 2.819861 -0.021099 1.948681
+v 2.776318 -0.047599 1.998677
+v 2.701055 0.108184 1.948661
+v 2.670970 0.067038 1.998660
+v 2.541819 0.182160 1.948646
+v 2.529772 0.132635 1.998647
+v 2.366394 0.189567 1.948639
+v 2.374218 0.139203 1.998640
+v 2.967321 0.370475 1.913152
+v 3.015045 0.392011 1.830297
+v 2.480725 0.304449 1.859724
+v 2.532502 0.308767 1.920385
+v 2.968843 0.381027 1.504295
+v 3.018237 0.392265 1.556861
+v 2.585054 0.317288 1.496457
+v 2.501065 0.293067 1.557250
+v 2.943043 0.583141 1.714886
+v 2.508739 0.526384 1.735850
+v 3.001752 0.432981 1.511278
+v 2.992381 0.564160 1.677511
+v 2.459165 0.487136 1.716603
+v 2.522041 0.344559 1.520642
+v 2.619611 0.357929 1.467793
+v 2.951271 0.411800 1.484972
+v 2.925544 0.641977 1.459963
+v 2.597282 0.601370 1.454267
+v 2.982331 0.446400 1.420382
+v 2.964637 0.617530 1.459392
+v 2.559389 0.574428 1.457060
+v 2.588613 0.393754 1.412569
+v 2.654576 0.380753 1.400741
+v 2.945304 0.422234 1.408531
+v 2.896673 0.629032 1.303517
+v 2.676273 0.611630 1.281032
+v 2.937283 0.439905 1.307750
+v 2.923174 0.600930 1.305939
+v 2.651016 0.586874 1.278600
+v 2.672854 0.415605 1.281953
+v 2.717261 0.397266 1.286208
+v 2.912475 0.418087 1.305648
+v 2.872759 0.588565 1.266419
+v 2.708339 0.575583 1.249645
+v 2.902461 0.451297 1.269572
+v 2.892528 0.567600 1.268226
+v 2.689497 0.557115 1.247831
+v 2.705194 0.433169 1.250327
+v 2.738323 0.419488 1.253501
+v 2.883954 0.435021 1.268004
+v 2.799132 0.503480 1.259191
+v 2.516324 0.213319 1.523287
+v 2.466172 0.206303 1.573281
+v 3.077368 0.300493 1.514154
+v 2.979398 0.285271 1.523296
+v 3.070524 0.350031 1.564844
+v 3.337619 -0.621476 1.543616
+v 3.297750 -0.577081 1.498818
+v 3.365279 -0.566595 1.443508
+v 3.412371 -0.609869 1.477804
+v 3.159413 0.313239 1.498709
+v 3.183929 0.367649 1.543495
+v 3.258682 0.379256 1.477682
+v 3.226941 0.323725 1.443398
+v 3.395344 0.400524 1.755208
+v 3.446632 0.357903 1.792246
+v 3.502809 0.366624 1.725982
+v 3.455067 0.409794 1.674344
+v 3.584970 -0.532417 1.792356
+v 3.549034 -0.588600 1.755330
+v 3.608757 -0.579330 1.674465
+v 3.641146 -0.523696 1.726092
+v 3.440741 -0.554878 1.380052
+v 3.431982 -0.606827 1.430052
+v 3.372379 -0.565494 1.426218
+v 3.278292 0.382297 1.429931
+v 3.302403 0.335442 1.379942
+v 3.234042 0.324826 1.426108
+v 3.562296 0.375830 1.428947
+v 3.522707 0.369673 1.379947
+v 3.504014 0.417370 1.429935
+v 3.657704 -0.571755 1.430057
+v 3.661045 -0.520647 1.380056
+v 3.700634 -0.514490 1.429056
+v 3.125396 -0.654407 1.897969
+v 3.224202 -0.639058 1.876295
+v 3.213484 -0.590121 1.930694
+v 3.117718 -0.604999 1.947958
+v 3.040874 -0.110437 1.947897
+v 3.056226 -0.209241 1.947909
+v 3.144315 -0.144961 1.930639
+v 2.604730 -0.685484 1.897953
+v 2.670282 -0.725123 1.897960
+v 2.654645 -0.676951 1.947948
+v 2.457740 -0.201821 1.897890
+v 2.472858 -0.299120 1.897902
+v 2.523273 -0.292052 1.947898
+v 2.507920 -0.193247 1.947886
+v 2.466159 0.206341 1.897843
+v 2.516307 0.213369 1.947839
+v 2.472871 -0.299158 1.573340
+v 2.457752 -0.201859 1.573328
+v 2.507937 -0.193297 1.523334
+v 2.523289 -0.292101 1.523346
+v 2.654662 -0.677001 1.523396
+v 2.670295 -0.725161 1.573398
+v 2.604743 -0.685522 1.573390
+v 3.215706 -0.589827 1.514264
+v 3.224214 -0.639094 1.564966
+v 3.125409 -0.654445 1.573407
+v 3.117735 -0.605049 1.523406
+v 3.040890 -0.110487 1.523345
+v 3.146537 -0.144667 1.514209
+v 3.056242 -0.209291 1.523357
+v 2.979381 0.285321 1.947849
+v 3.075146 0.300199 1.930584
+v 3.070512 0.350067 1.876174
+v 1.002777 -0.749077 1.947892
+v 0.970039 -0.788583 1.897901
+v 1.047848 -0.773595 1.897902
+v 1.324746 -0.460778 1.897877
+v 1.368145 -0.374412 1.897868
+v 1.322285 -0.349497 1.947858
+v 1.277389 -0.438841 1.947867
+v -0.441742 -0.026660 1.897757
+v -0.402674 -0.098788 1.897767
+v -0.393762 -0.047309 1.947756
+v -0.351033 0.487892 1.897700
+v -0.393155 0.404067 1.897708
+v -0.345913 0.376876 1.947708
+v -0.301017 0.466220 1.947699
+v -0.402656 -0.098841 1.442222
+v -0.441724 -0.026713 1.442212
+v -0.393740 -0.047374 1.392221
+v -0.351015 0.487839 1.442155
+v -0.300995 0.466155 1.392165
+v -0.345891 0.376811 1.392173
+v -0.393137 0.404014 1.442163
+v 0.970057 -0.788636 1.442356
+v 1.002798 -0.749142 1.392358
+v 1.047866 -0.773649 1.442357
+v 1.368163 -0.374465 1.442323
+v 1.324764 -0.460831 1.442332
+v 1.277411 -0.438906 1.392332
+v 1.322307 -0.349562 1.392323
+v 1.419488 0.105835 1.897814
+v 1.407330 0.055997 1.947814
+v 1.453898 0.034456 1.897824
+v 1.453916 0.034403 1.442279
+v 1.407352 0.055932 1.392280
+v 1.419506 0.105781 1.442269
+v 0.010814 0.757699 1.392143
+v -0.034397 0.783879 1.442133
+v 0.046793 0.795576 1.442135
+v 0.046776 0.795630 1.897680
+v -0.034415 0.783933 1.897678
+v 0.010792 0.757764 1.947677
+v 1.390702 0.025402 1.391480
+v 1.386988 -0.025443 1.341491
+v 1.216455 0.003790 1.391476
+v 1.232480 -0.044607 1.341487
+v 1.063743 -0.082858 1.391480
+v 1.097067 -0.121439 1.341491
+v 0.955814 -0.221350 1.391492
+v 1.001364 -0.244243 1.341501
+v 0.909100 -0.390603 1.391510
+v 0.959940 -0.394324 1.341517
+v 0.930711 -0.564849 1.391531
+v 0.979104 -0.548832 1.341536
+v 1.017359 -0.717561 1.391552
+v 1.055936 -0.684246 1.341555
+v 1.155851 -0.825490 1.391570
+v 1.178741 -0.779949 1.341571
+v 1.325104 -0.872205 1.391582
+v 1.328821 -0.821372 1.341582
+v 1.499350 -0.850593 1.391587
+v 1.483330 -0.802208 1.341586
+v 1.652062 -0.763945 1.391583
+v 1.618743 -0.725376 1.341582
+v 1.759991 -0.625453 1.391571
+v 1.714446 -0.602571 1.341571
+v 1.806706 -0.456200 1.391553
+v 1.755869 -0.452491 1.341555
+v 1.785094 -0.281954 1.391532
+v 1.736706 -0.297983 1.341537
+v 1.698447 -0.129242 1.391510
+v 1.659873 -0.162569 1.341518
+v 1.559954 -0.021313 1.391492
+v 1.537069 -0.066866 1.341502
+v 1.390680 0.025467 1.948620
+v 1.386963 -0.025366 1.998621
+v 1.216434 0.003855 1.948616
+v 1.232454 -0.044530 1.998617
+v 1.063722 -0.082792 1.948620
+v 1.097041 -0.121362 1.998620
+v 0.955793 -0.221285 1.948632
+v 1.001338 -0.244167 1.998631
+v 0.909078 -0.390538 1.948649
+v 0.959915 -0.394247 1.998647
+v 0.930689 -0.564784 1.948671
+v 0.979078 -0.548755 1.998666
+v 1.017337 -0.717496 1.948692
+v 1.055911 -0.684169 1.998685
+v 1.155829 -0.825425 1.948710
+v 1.178715 -0.779872 1.998701
+v 1.325082 -0.872140 1.948722
+v 1.328796 -0.821295 1.998711
+v 1.499329 -0.850528 1.948727
+v 1.483304 -0.802132 1.998715
+v 1.652041 -0.763881 1.948723
+v 1.618717 -0.725299 1.998712
+v 1.759970 -0.625388 1.948711
+v 1.714420 -0.602494 1.998701
+v 1.806684 -0.456135 1.948693
+v 1.755843 -0.452414 1.998685
+v 1.785073 -0.281889 1.948671
+v 1.736680 -0.297906 1.998666
+v 1.698425 -0.129177 1.948650
+v 1.659847 -0.162492 1.998647
+v 1.559932 -0.021248 1.948632
+v 1.537043 -0.066789 1.998631
+v 0.319154 0.563833 1.111545
+v 0.144908 0.542221 1.111541
+v -0.007805 0.455573 1.111545
+v -0.115734 0.317081 1.111557
+v -0.162448 0.147828 1.111575
+v -0.140837 -0.026418 1.111596
+v -0.054189 -0.179130 1.111617
+v 0.084303 -0.287059 1.111635
+v 0.253556 -0.333774 1.111647
+v 0.427802 -0.312162 1.111652
+v 0.580514 -0.225515 1.111647
+v 0.688443 -0.087022 1.111635
+v 0.735158 0.082231 1.111618
+v 0.713546 0.256477 1.111596
+v 0.626899 0.409189 1.111575
+v 0.488406 0.517118 1.111557
+v 0.319121 0.563930 1.948515
+v 0.315404 0.513097 1.998515
+v 0.144875 0.542319 1.948510
+v 0.160895 0.493934 1.998512
+v -0.007837 0.455671 1.948514
+v 0.025482 0.417101 1.998515
+v -0.115766 0.317179 1.948527
+v -0.070221 0.294297 1.998526
+v -0.162481 0.147926 1.948545
+v -0.111644 0.144217 1.998542
+v -0.140870 -0.026320 1.948566
+v -0.092481 -0.010292 1.998560
+v -0.054222 -0.179032 1.948587
+v -0.015648 -0.145705 1.998579
+v 0.084270 -0.286961 1.948605
+v 0.107156 -0.241408 1.998595
+v 0.253523 -0.333676 1.948617
+v 0.257237 -0.282831 1.998606
+v 0.427770 -0.312064 1.948621
+v 0.411745 -0.263668 1.998610
+v 0.580482 -0.225417 1.948617
+v 0.547158 -0.186835 1.998606
+v 0.688411 -0.086924 1.948605
+v 0.642861 -0.064031 1.998595
+v 0.735125 0.082329 1.948587
+v 0.684284 0.086050 1.998580
+v 0.713513 0.256575 1.948566
+v 0.665121 0.240558 1.998561
+v 0.626866 0.409287 1.948545
+v 0.588288 0.375971 1.998542
+v 0.488374 0.517216 1.948527
+v 0.465484 0.471675 1.998526
+v 2.909698 0.662301 -1.924976
+v 2.818896 0.628473 -1.942345
+v 2.789885 0.709511 -1.887078
+v 2.832211 0.740219 -1.820080
+v 2.895050 0.710248 -1.870623
+v 2.331936 0.448009 -1.892981
+v 2.326419 0.547068 -1.844509
+v 2.376349 0.561688 -1.893475
+v 2.379726 0.464943 -1.942914
+v 3.303373 -0.152128 -1.492602
+v 3.351428 -0.187627 -1.537310
+v 3.422229 -0.161200 -1.471404
+v 3.367349 -0.128252 -1.437223
+v 3.002127 0.750444 -1.538225
+v 2.988963 0.692237 -1.493427
+v 3.052940 0.716114 -1.438046
+v 3.072928 0.776871 -1.472319
+v 3.261792 0.793542 -1.786315
+v 3.202879 0.824990 -1.749394
+v 3.259458 0.846137 -1.668528
+v 3.314985 0.813414 -1.719998
+v 3.552179 -0.113081 -1.748479
+v 3.576202 -0.050823 -1.785491
+v 3.629394 -0.030952 -1.719174
+v 3.608759 -0.091934 -1.667613
+v 3.440728 -0.154264 -1.423744
+v 3.438807 -0.101582 -1.373775
+v 3.374027 -0.125749 -1.420020
+v 3.124398 0.742784 -1.374599
+v 3.091428 0.783806 -1.424659
+v 3.059618 0.718617 -1.420844
+v 3.333331 0.820582 -1.374328
+v 3.370940 0.834539 -1.423276
+v 3.305500 0.863519 -1.424381
+v 3.647738 -0.023784 -1.373504
+v 3.654800 -0.074552 -1.423467
+v 3.685349 -0.009827 -1.422453
+v 3.224106 -0.182065 -1.924153
+v 3.244350 -0.227822 -1.869707
+v 3.150679 -0.262724 -1.891481
+v 3.133305 -0.215893 -1.941522
+v 2.719055 -0.423444 -1.892040
+v 2.646876 -0.397785 -1.892157
+v 2.694135 -0.379423 -1.942091
+v 2.440061 -0.045798 -1.892610
+v 2.405700 0.046479 -1.892700
+v 2.453210 0.064934 -1.942634
+v 2.488102 -0.028771 -1.942543
+v 2.958654 0.253142 -1.941978
+v 3.066901 0.240118 -1.924565
+v 2.993547 0.159438 -1.941888
+v 2.718583 -0.423303 -1.567899
+v 2.693516 -0.379240 -1.517960
+v 2.646404 -0.397644 -1.568015
+v 2.405227 0.046619 -1.568559
+v 2.439588 -0.045658 -1.568469
+v 2.487484 -0.028587 -1.518412
+v 2.452592 0.065118 -1.518504
+v 3.243898 -0.227687 -1.558782
+v 3.225589 -0.181107 -1.508134
+v 3.132686 -0.215709 -1.517390
+v 3.150206 -0.262583 -1.567340
+v 3.068384 0.241076 -1.508546
+v 2.958036 0.253326 -1.517848
+v 2.992928 0.159621 -1.517757
+v 2.788703 0.720345 -1.523335
+v 2.818277 0.628657 -1.518215
+v 2.911180 0.663259 -1.508958
+v 2.894597 0.710383 -1.559698
+v 2.834899 0.741248 -1.565781
+v 2.331463 0.448149 -1.568841
+v 2.379107 0.465126 -1.518783
+v 2.425561 0.580809 -1.517474
+v 2.348207 0.540157 -1.566724
+v 2.725502 0.913613 -1.715002
+v 2.311681 0.770800 -1.740245
+v 2.811167 0.778030 -1.510723
+v 2.777277 0.904879 -1.677126
+v 2.270815 0.722367 -1.721467
+v 2.359113 0.595061 -1.524798
+v 2.451482 0.627686 -1.470990
+v 2.765712 0.747104 -1.484906
+v 2.694027 0.967387 -1.460304
+v 2.380573 0.861660 -1.457845
+v 2.788550 0.787150 -1.420033
+v 2.737226 0.951290 -1.459328
+v 2.348894 0.827659 -1.460996
+v 2.413376 0.656479 -1.416100
+v 2.480485 0.656977 -1.403609
+v 2.757017 0.756023 -1.408535
+v 2.666802 0.948694 -1.304144
+v 2.454180 0.887343 -1.283840
+v 2.744616 0.771585 -1.307850
+v 2.698430 0.926491 -1.306285
+v 2.434387 0.858014 -1.281643
+v 2.490217 0.694628 -1.284668
+v 2.537443 0.685589 -1.288468
+v 2.724677 0.745226 -1.305981
+v 2.651139 0.904197 -1.267259
+v 2.492522 0.858429 -1.252112
+v 2.707839 0.775699 -1.270027
+v 2.674734 0.887634 -1.268856
+v 2.477757 0.836550 -1.250474
+v 2.518056 0.718288 -1.252733
+v 2.553287 0.711545 -1.255569
+v 2.692965 0.756034 -1.268633
+v 2.596037 0.806047 -1.260708
+v 2.010402 0.327421 -1.943668
+v 1.981654 0.370113 -1.893734
+v 2.057843 0.347077 -1.893613
+v 2.303962 0.007466 -1.893107
+v 2.337584 -0.082827 -1.893019
+v 2.289196 -0.102836 -1.943076
+v 2.254304 -0.009131 -1.943167
+v 1.404331 0.104079 -1.894460
+v 1.448059 0.171423 -1.894425
+v 1.453495 0.120050 -1.944390
+v 1.464154 -0.407713 -1.894151
+v 1.430758 -0.318027 -1.894238
+v 1.479643 -0.297585 -1.944171
+v 1.514535 -0.391290 -1.944080
+v 1.447395 0.171620 -1.438881
+v 1.403667 0.104277 -1.438915
+v 1.452686 0.120290 -1.388856
+v 1.463490 -0.407516 -1.438607
+v 1.513725 -0.391049 -1.388545
+v 1.478833 -0.297345 -1.388637
+v 1.430094 -0.317830 -1.438694
+v 1.980990 0.370310 -1.438189
+v 2.009593 0.327661 -1.388134
+v 2.057180 0.347274 -1.438068
+v 2.336920 -0.082630 -1.437474
+v 2.303298 0.007663 -1.437563
+v 2.253495 -0.008891 -1.387633
+v 2.288386 -0.102595 -1.387541
+v 2.330954 -0.567958 -1.892819
+v 2.324811 -0.516945 -1.942844
+v 2.373523 -0.500701 -1.892786
+v 2.372859 -0.500503 -1.437241
+v 2.324002 -0.516705 -1.387310
+v 2.330291 -0.567760 -1.437274
+v 1.767094 -0.724076 -1.388032
+v 1.719572 -0.744108 -1.438088
+v 1.796696 -0.766451 -1.437966
+v 1.797360 -0.766648 -1.893510
+v 1.720236 -0.744305 -1.893632
+v 1.767904 -0.724316 -1.943566
+v 2.377564 -0.459672 -1.386454
+v 2.379338 -0.408710 -1.336479
+v 2.206711 -0.419201 -1.386721
+v 2.227839 -0.372822 -1.336715
+v 2.064351 -0.316427 -1.386973
+v 2.101605 -0.281691 -1.336938
+v 1.972157 -0.166998 -1.387172
+v 2.019855 -0.149188 -1.337115
+v 1.944166 0.006338 -1.387288
+v 1.995034 0.004513 -1.337218
+v 1.984638 0.177191 -1.387303
+v 2.030921 0.156012 -1.337231
+v 2.087411 0.319551 -1.387214
+v 2.122053 0.282246 -1.337153
+v 2.236840 0.411745 -1.387037
+v 2.254555 0.363996 -1.336995
+v 2.410176 0.439737 -1.386796
+v 2.408256 0.388817 -1.336782
+v 2.581029 0.399265 -1.386530
+v 2.559755 0.352930 -1.336546
+v 2.723389 0.296491 -1.386278
+v 2.685989 0.261798 -1.336322
+v 2.815583 0.147062 -1.386079
+v 2.767740 0.129296 -1.336146
+v 2.843574 -0.026274 -1.385963
+v 2.792560 -0.024405 -1.336043
+v 2.803102 -0.197127 -1.385948
+v 2.756673 -0.175905 -1.336030
+v 2.700328 -0.339487 -1.386036
+v 2.665541 -0.302138 -1.336108
+v 2.550899 -0.431680 -1.386214
+v 2.533039 -0.383889 -1.336266
+v 2.378376 -0.459913 -1.943594
+v 2.380296 -0.408994 -1.993608
+v 2.207523 -0.419442 -1.943860
+v 2.228796 -0.373107 -1.993844
+v 2.065163 -0.316668 -1.944112
+v 2.102562 -0.281975 -1.994067
+v 1.972970 -0.167239 -1.944311
+v 2.020813 -0.149473 -1.994244
+v 1.944978 0.006097 -1.944427
+v 1.995991 0.004228 -1.994346
+v 1.985450 0.176950 -1.944442
+v 2.031879 0.155728 -1.994360
+v 2.088223 0.319310 -1.944354
+v 2.123010 0.281961 -1.994282
+v 2.237652 0.411504 -1.944176
+v 2.255513 0.363712 -1.994124
+v 2.410988 0.439495 -1.943935
+v 2.409214 0.388533 -1.993911
+v 2.581841 0.399024 -1.943669
+v 2.560713 0.352645 -1.993675
+v 2.724201 0.296250 -1.943417
+v 2.686947 0.261514 -1.993451
+v 2.816395 0.146821 -1.943218
+v 2.768697 0.129011 -1.993275
+v 2.844386 -0.026515 -1.943102
+v 2.793517 -0.024690 -1.993172
+v 2.803914 -0.197368 -1.943087
+v 2.757630 -0.176189 -1.993159
+v 2.701140 -0.339728 -1.943175
+v 2.666498 -0.302423 -1.993237
+v 2.551711 -0.431922 -1.943353
+v 2.533996 -0.384173 -1.993394
+v 1.405908 0.088515 -1.944445
+v 1.416391 0.138743 -1.894457
+v 1.453065 0.068502 -1.894373
+v 1.380430 -0.342900 -1.894301
+v 1.339814 -0.430609 -1.894322
+v 1.291855 -0.410225 -1.944396
+v 1.333871 -0.319491 -1.944374
+v -0.058450 0.770005 -1.896879
+v 0.022325 0.784292 -1.896768
+v -0.012354 0.745268 -1.946796
+v -0.404860 0.378863 -1.897215
+v -0.365439 0.463992 -1.897194
+v -0.314681 0.443903 -1.947106
+v -0.356697 0.353169 -1.947128
+v 0.021662 0.784489 -1.441223
+v -0.059114 0.770202 -1.441335
+v -0.013164 0.745509 -1.391262
+v -0.405524 0.379060 -1.441670
+v -0.357507 0.353409 -1.391594
+v -0.315491 0.444143 -1.391572
+v -0.366103 0.464189 -1.441650
+v 1.415727 0.138940 -1.438913
+v 1.405098 0.088755 -1.388911
+v 1.452402 0.068699 -1.438829
+v 1.339151 -0.430412 -1.438778
+v 1.379766 -0.342702 -1.438756
+v 1.333062 -0.319251 -1.388839
+v 1.291046 -0.409985 -1.388861
+v 0.995771 -0.769589 -1.894677
+v 1.027303 -0.729083 -1.944643
+v 1.073061 -0.752121 -1.894572
+v 1.072397 -0.751923 -1.439027
+v 1.026494 -0.728843 -1.389109
+v 0.995107 -0.769391 -1.439132
+v -0.391768 -0.072089 -1.391460
+v -0.440313 -0.053001 -1.441534
+v -0.398959 -0.123842 -1.441443
+v -0.398295 -0.124040 -1.896988
+v -0.439649 -0.053198 -1.897079
+v -0.390958 -0.072330 -1.946994
+v -0.048599 -0.192767 -1.110275
+v -0.140085 -0.042903 -1.110473
+v -0.167257 0.130563 -1.110588
+v -0.125979 0.301223 -1.110602
+v -0.022533 0.443096 -1.110512
+v 0.127330 0.534582 -1.110334
+v 0.300796 0.561754 -1.110093
+v 0.471456 0.520476 -1.109826
+v 0.613328 0.417030 -1.109575
+v 0.704815 0.267167 -1.109376
+v 0.731987 0.093701 -1.109262
+v 0.690708 -0.076959 -1.109248
+v 0.587263 -0.218832 -1.109337
+v 0.437399 -0.310318 -1.109516
+v 0.263933 -0.337490 -1.109757
+v 0.093273 -0.296212 -1.110024
+v -0.047379 -0.193129 -1.947244
+v -0.009816 -0.158613 -1.997199
+v -0.138866 -0.043266 -1.947442
+v -0.090939 -0.025725 -1.997375
+v -0.166038 0.130200 -1.947557
+v -0.115033 0.128091 -1.997476
+v -0.124759 0.300860 -1.947570
+v -0.078430 0.279419 -1.997489
+v -0.021314 0.442733 -1.947481
+v 0.013297 0.405221 -1.997409
+v 0.128550 0.534220 -1.947302
+v 0.146184 0.486344 -1.997251
+v 0.302015 0.561392 -1.947061
+v 0.300000 0.510438 -1.997037
+v 0.472675 0.520113 -1.946795
+v 0.451329 0.473836 -1.996801
+v 0.614548 0.416668 -1.946543
+v 0.577130 0.382108 -1.996578
+v 0.706034 0.266804 -1.946345
+v 0.658253 0.249221 -1.996402
+v 0.733206 0.093338 -1.946230
+v 0.682347 0.095405 -1.996300
+v 0.691927 -0.077322 -1.946217
+v 0.645745 -0.055924 -1.996288
+v 0.588482 -0.219194 -1.946306
+v 0.554017 -0.181726 -1.996367
+v 0.438619 -0.310681 -1.946485
+v 0.421130 -0.262849 -1.996526
+v 0.265153 -0.337853 -1.946726
+v 0.267314 -0.286943 -1.996740
+v 0.094493 -0.296574 -1.946992
+v 0.115985 -0.250340 -1.996976
+v 1.040036 -0.696812 -1.388301
+v 1.077454 -0.662253 -1.338266
+v 0.948550 -0.546949 -1.388499
+v 0.996330 -0.529366 -1.338442
+v 0.921378 -0.373483 -1.388614
+v 0.972237 -0.375549 -1.338544
+v 0.962656 -0.202823 -1.388627
+v 1.008839 -0.224221 -1.338556
+v 1.066102 -0.060950 -1.388538
+v 1.100567 -0.098419 -1.338477
+v 1.215965 0.030536 -1.388359
+v 1.233454 -0.017296 -1.338318
+v 1.389431 0.057708 -1.388118
+v 1.387270 0.006798 -1.338104
+v 1.560091 0.016430 -1.387852
+v 1.538598 -0.029804 -1.337868
+v 1.701963 -0.087016 -1.387600
+v 1.664400 -0.121532 -1.337645
+v 1.793449 -0.236879 -1.387402
+v 1.745523 -0.254419 -1.337469
+v 1.820621 -0.410345 -1.387287
+v 1.769617 -0.408235 -1.337368
+v 1.779343 -0.581005 -1.387274
+v 1.733014 -0.559564 -1.337355
+v 1.675897 -0.722878 -1.387363
+v 1.641287 -0.685365 -1.337435
+v 1.526034 -0.814364 -1.387542
+v 1.508399 -0.766489 -1.337593
+v 1.352568 -0.841536 -1.387783
+v 1.354583 -0.790583 -1.337807
+v 1.181908 -0.800257 -1.388049
+v 1.203255 -0.753980 -1.338043
+v 1.040848 -0.697054 -1.945440
+v 1.078411 -0.662537 -1.995395
+v 0.949362 -0.547190 -1.945638
+v 0.997288 -0.529650 -1.995571
+v 0.922190 -0.373724 -1.945753
+v 0.973194 -0.375834 -1.995673
+v 0.963468 -0.203064 -1.945766
+v 1.009797 -0.224505 -1.995685
+v 1.066914 -0.061192 -1.945677
+v 1.101524 -0.098704 -1.995606
+v 1.216777 0.030295 -1.945498
+v 1.234411 -0.017580 -1.995447
+v 1.390243 0.057467 -1.945257
+v 1.388228 0.006514 -1.995233
+v 1.560902 0.016189 -1.944991
+v 1.539556 -0.030089 -1.994997
+v 1.702775 -0.087257 -1.944739
+v 1.665358 -0.121816 -1.994774
+v 1.794261 -0.237120 -1.944541
+v 1.746481 -0.254704 -1.994598
+v 1.821434 -0.410586 -1.944427
+v 1.770575 -0.408520 -1.994496
+v 1.780155 -0.581246 -1.944413
+v 1.733972 -0.559848 -1.994484
+v 1.676709 -0.723119 -1.944502
+v 1.642244 -0.685650 -1.994564
+v 1.526846 -0.814605 -1.944681
+v 1.509357 -0.766773 -1.994722
+v 1.353380 -0.841777 -1.944922
+v 1.355541 -0.790867 -1.994936
+v 1.182720 -0.800499 -1.945188
+v 1.204213 -0.754265 -1.995172
+v 1.752412 -2.712670 -0.994109
+v 1.733575 -2.665531 -0.944121
+v 1.801889 -2.701350 -0.944113
+v 1.984172 -3.263623 -0.944025
+v 1.964789 -3.217547 -0.994027
+v 2.010871 -3.198154 -0.944033
+v 0.647008 -3.771745 -0.200444
+v 0.600926 -3.791138 -0.250438
+v 0.666395 -3.817836 -0.250431
+v 1.108349 -3.577681 -0.200453
+v 1.016182 -3.616452 -0.200451
+v 1.081653 -3.643157 -0.250440
+v 0.382701 -3.147084 -0.250540
+v 0.361900 -3.222909 -0.250530
+v 0.403826 -3.193638 -0.200537
+v 0.805511 -2.860111 -0.250564
+v 0.716395 -2.900118 -0.250562
+v 0.735170 -2.948412 -0.200559
+v 0.826165 -2.906855 -0.200562
+v 1.733547 -2.665431 -0.250556
+v 1.752380 -2.712555 -0.200553
+v 1.801862 -2.701250 -0.250548
+v 0.716423 -2.900218 -0.944128
+v 0.805539 -2.860212 -0.944130
+v 0.826197 -2.906970 -0.994117
+v 0.735202 -2.948527 -0.994115
+v 0.403858 -3.193753 -0.994093
+v 0.361928 -3.223010 -0.944095
+v 0.382729 -3.147185 -0.944106
+v 0.600954 -3.791238 -0.944003
+v 0.647039 -3.771860 -0.993999
+v 0.666423 -3.817937 -0.943997
+v 1.108381 -3.577796 -0.994009
+v 1.081681 -3.643258 -0.944006
+v 1.016214 -3.616566 -0.994007
+v 2.010843 -3.198054 -0.250467
+v 1.964757 -3.217432 -0.200471
+v 1.984145 -3.263523 -0.250459
+v 0.257185 -2.726674 -0.200583
+v 0.205978 -2.727117 -0.250578
+v 0.267198 -2.776901 -0.250572
+v 0.777863 -2.764014 -0.250579
+v 0.767676 -2.713032 -0.200590
+v 0.670244 -2.735505 -0.200586
+v 0.683413 -2.785799 -0.250575
+v 0.126811 -2.165515 -0.250645
+v 0.092367 -2.234548 -0.250637
+v 0.139111 -2.214756 -0.200645
+v 0.596945 -1.976901 -0.250673
+v 0.501299 -1.998962 -0.250669
+v 0.511893 -2.048961 -0.200668
+v 0.609325 -2.026489 -0.200672
+v 1.006550 -1.962603 -0.250679
+v 1.017064 -2.012255 -0.200678
+v 1.067751 -2.009575 -0.250674
+v 1.067744 -2.009659 -0.944239
+v 1.017056 -2.012352 -0.994233
+v 1.006544 -1.962687 -0.944244
+v 0.501292 -1.999046 -0.944235
+v 0.596938 -1.976986 -0.944239
+v 0.609317 -2.026585 -0.994228
+v 0.511885 -2.049058 -0.994224
+v 0.092360 -2.234632 -0.944202
+v 0.126804 -2.165600 -0.944211
+v 0.139103 -2.214852 -0.994200
+v 0.205971 -2.727201 -0.944143
+v 0.257177 -2.726771 -0.994139
+v 0.267191 -2.776985 -0.944138
+v 0.670236 -2.735601 -0.994142
+v 0.767668 -2.713129 -0.994146
+v 0.777856 -2.764099 -0.944145
+v 0.683406 -2.785883 -0.944141
+v 1.135138 -2.524174 -0.200617
+v 1.148133 -2.573713 -0.250606
+v 1.181362 -2.502144 -0.250615
+v 1.135130 -2.524271 -0.994172
+v 1.181356 -2.502228 -0.944180
+v 1.148126 -2.573797 -0.944171
+v 1.114499 -2.589469 -1.024611
+v 1.072993 -2.619067 -1.074602
+v 0.986635 -2.469137 -1.024625
+v 0.959613 -2.512366 -1.074614
+v 0.822456 -2.406896 -1.024631
+v 0.814032 -2.457175 -1.074619
+v 0.646955 -2.412221 -1.024628
+v 0.658411 -2.461898 -1.074617
+v 0.486852 -2.484303 -1.024618
+v 0.516444 -2.525814 -1.074608
+v 0.366520 -2.612166 -1.024601
+v 0.409743 -2.639193 -1.074593
+v 0.304279 -2.776346 -1.024580
+v 0.354552 -2.784775 -1.074575
+v 0.309605 -2.951846 -1.024559
+v 0.359275 -2.940395 -1.074556
+v 0.381686 -3.111949 -1.024540
+v 0.423191 -3.082363 -1.074539
+v 0.509550 -3.232281 -1.024527
+v 0.536570 -3.189064 -1.074528
+v 0.673729 -3.294522 -1.024521
+v 0.682152 -3.244255 -1.074522
+v 0.849230 -3.289197 -1.024523
+v 0.837773 -3.239532 -1.074524
+v 1.009333 -3.217115 -1.024534
+v 0.979740 -3.175616 -1.074533
+v 1.129665 -3.089252 -1.024551
+v 1.086441 -3.062236 -1.074548
+v 1.191905 -2.925072 -1.024571
+v 1.141631 -2.916655 -1.074567
+v 1.186580 -2.749572 -1.024593
+v 1.136909 -2.761034 -1.074586
+v 1.114507 -2.589362 -0.153605
+v 1.073002 -2.618949 -0.103606
+v 0.986644 -2.469031 -0.153619
+v 0.959623 -2.512248 -0.103618
+v 0.822464 -2.406790 -0.153625
+v 0.814041 -2.457057 -0.103624
+v 0.646964 -2.412115 -0.153622
+v 0.658421 -2.461779 -0.103622
+v 0.486861 -2.484197 -0.153612
+v 0.516453 -2.525696 -0.103612
+v 0.366529 -2.612060 -0.153595
+v 0.409752 -2.639075 -0.103597
+v 0.304288 -2.776240 -0.153575
+v 0.354562 -2.784657 -0.103579
+v 0.309613 -2.951740 -0.153553
+v 0.359284 -2.940277 -0.103560
+v 0.381695 -3.111843 -0.153535
+v 0.423200 -3.082245 -0.103544
+v 0.509558 -3.232175 -0.153521
+v 0.536580 -3.188946 -0.103532
+v 0.673737 -3.294416 -0.153515
+v 0.682162 -3.244136 -0.103526
+v 0.849238 -3.289090 -0.153518
+v 0.837782 -3.239414 -0.103528
+v 1.009341 -3.217009 -0.153528
+v 0.979749 -3.175497 -0.103538
+v 1.129673 -3.089145 -0.153545
+v 1.086450 -3.062118 -0.103553
+v 1.191914 -2.924966 -0.153565
+v 1.141641 -2.916536 -0.103571
+v 1.186588 -2.749465 -0.153587
+v 1.136918 -2.760916 -0.103590
+v 0.051854 -2.000417 -0.200653
+v 0.002843 -2.016701 -0.250644
+v 0.078050 -2.044925 -0.250645
+v 0.565162 -1.876527 -0.250686
+v 0.538253 -1.830916 -0.200694
+v 0.454283 -1.885202 -0.200684
+v 0.484820 -1.928467 -0.250676
+v -0.468300 -1.205825 -0.250710
+v -0.466297 -1.291025 -0.250700
+v -0.434796 -1.247655 -0.200712
+v -0.161434 -0.758619 -0.250772
+v -0.236299 -0.807018 -0.250763
+v -0.208910 -0.859361 -0.200764
+v -0.124939 -0.805075 -0.200774
+v 0.297459 -0.710772 -0.250799
+v 0.321857 -0.758489 -0.200800
+v 0.374327 -0.747573 -0.250798
+v 0.374294 -0.747648 -0.944364
+v 0.321820 -0.758575 -0.994355
+v 0.297426 -0.710847 -0.944364
+v -0.236331 -0.807093 -0.944329
+v -0.161466 -0.758694 -0.944338
+v -0.124976 -0.805160 -0.994330
+v -0.208947 -0.859446 -0.994320
+v -0.466329 -1.291100 -0.944266
+v -0.468332 -1.205900 -0.944275
+v -0.434833 -1.247741 -0.994267
+v 0.002811 -2.016775 -0.944210
+v 0.051817 -2.000502 -0.994209
+v 0.078018 -2.045000 -0.944210
+v 0.454246 -1.885288 -0.994240
+v 0.538216 -1.831002 -0.994250
+v 0.565130 -1.876602 -0.944251
+v 0.484788 -1.928542 -0.944242
+v 0.808507 -1.511251 -0.200741
+v 0.838332 -1.553413 -0.250733
+v 0.843467 -1.473249 -0.250742
+v 0.808470 -1.511336 -0.994297
+v 0.843434 -1.473324 -0.944308
+v 0.838299 -1.553488 -0.944299
+v 0.788494 -1.544459 -1.024740
+v 0.759533 -1.586414 -1.074729
+v 0.627314 -1.474817 -1.024740
+v 0.616611 -1.524661 -1.074729
+v 0.451753 -1.472158 -1.024732
+v 0.460937 -1.522303 -1.074722
+v 0.288538 -1.536885 -1.024717
+v 0.316210 -1.579698 -1.074709
+v 0.162517 -1.659145 -1.024698
+v 0.204464 -1.688109 -1.074692
+v 0.092875 -1.820325 -1.024677
+v 0.142711 -1.831030 -1.074674
+v 0.090216 -1.995886 -1.024658
+v 0.140353 -1.986705 -1.074657
+v 0.154943 -2.159101 -1.024644
+v 0.197748 -2.131432 -1.074644
+v 0.277203 -2.285122 -1.024636
+v 0.306159 -2.243178 -1.074637
+v 0.438383 -2.354764 -1.024636
+v 0.449081 -2.304930 -1.074637
+v 0.613944 -2.357423 -1.024644
+v 0.604755 -2.307288 -1.074644
+v 0.777159 -2.292696 -1.024659
+v 0.749482 -2.249893 -1.074657
+v 0.903180 -2.170435 -1.024678
+v 0.861228 -2.141482 -1.074674
+v 0.972821 -2.009256 -1.024698
+v 0.922980 -1.998561 -1.074692
+v 0.975481 -1.833695 -1.024717
+v 0.925339 -1.842886 -1.074709
+v 0.910753 -1.670479 -1.024732
+v 0.867943 -1.698160 -1.074722
+v 0.788534 -1.544365 -0.153734
+v 0.759578 -1.586309 -0.103733
+v 0.627355 -1.474723 -0.153734
+v 0.616656 -1.524557 -0.103733
+v 0.451794 -1.472064 -0.153726
+v 0.460982 -1.522198 -0.103726
+v 0.288578 -1.536791 -0.153711
+v 0.316255 -1.579593 -0.103713
+v 0.162557 -1.659051 -0.153692
+v 0.204510 -1.688004 -0.103696
+v 0.092916 -1.820230 -0.153672
+v 0.142757 -1.830926 -0.103678
+v 0.090256 -1.995792 -0.153652
+v 0.140399 -1.986600 -0.103661
+v 0.154984 -2.159007 -0.153638
+v 0.197794 -2.131327 -0.103648
+v 0.277244 -2.285028 -0.153630
+v 0.306205 -2.243073 -0.103641
+v 0.438423 -2.354670 -0.153630
+v 0.449126 -2.304825 -0.103641
+v 0.613984 -2.357329 -0.153638
+v 0.604801 -2.307184 -0.103648
+v 0.777200 -2.292602 -0.153653
+v 0.749527 -2.249788 -0.103661
+v 0.903220 -2.170341 -0.153672
+v 0.861273 -2.141378 -0.103678
+v 0.972862 -2.009162 -0.153692
+v 0.923026 -1.998456 -0.103696
+v 0.975521 -1.833601 -0.153711
+v 0.925384 -1.842782 -0.103713
+v 0.910794 -1.670386 -0.153726
+v 0.867989 -1.698055 -0.103726
+v -1.060353 -3.345630 0.204984
+v -1.016532 -3.320005 0.254971
+v -1.041822 -3.392878 0.254983
+v -1.570837 -3.656546 0.255072
+v -1.528143 -3.630547 0.205069
+v -1.502132 -3.673239 0.255068
+v -2.271708 -2.409487 0.998533
+v -2.297719 -2.366796 0.948534
+v -2.314412 -2.435501 0.948545
+v -2.011359 -2.836940 0.998565
+v -2.063372 -2.751543 0.998559
+v -2.080070 -2.820255 0.948575
+v -1.693160 -2.055452 0.948431
+v -1.771232 -2.046128 0.948438
+v -1.736068 -2.083245 0.998434
+v -1.346646 -2.431018 0.948448
+v -1.399429 -2.348822 0.948442
+v -1.444405 -2.374549 0.998445
+v -1.389811 -2.458373 0.998451
+v -1.016463 -3.319910 0.948536
+v -1.060274 -3.345521 0.998539
+v -1.041752 -3.392783 0.948549
+v -1.399498 -2.348917 0.254876
+v -1.346716 -2.431113 0.254882
+v -1.389890 -2.458482 0.204895
+v -1.444485 -2.374657 0.204889
+v -1.736147 -2.083354 0.204879
+v -1.771301 -2.046223 0.254872
+v -1.693230 -2.055547 0.254865
+v -2.297789 -2.366891 0.254969
+v -2.271788 -2.409596 0.204977
+v -2.314481 -2.435596 0.254980
+v -2.011439 -2.837049 0.205009
+v -2.080139 -2.820350 0.255009
+v -2.063452 -2.751652 0.205003
+v -1.502062 -3.673144 0.948633
+v -1.528064 -3.630438 0.998625
+v -1.570767 -3.656451 0.948638
+v -1.348403 -1.866594 0.998360
+v -1.361625 -1.817128 0.948359
+v -1.394533 -1.888845 0.948372
+v -1.299149 -2.294082 0.948424
+v -1.254454 -2.380092 0.948434
+v -1.207637 -2.357483 0.998422
+v -1.253742 -2.268757 0.998412
+v -0.837620 -1.600145 0.948287
+v -0.913069 -1.584042 0.948290
+v -0.882227 -1.624352 0.998289
+v -0.537516 -2.008236 0.948324
+v -0.582776 -1.921137 0.948315
+v -0.628544 -1.943881 0.998317
+v -0.582439 -2.032607 0.998326
+v -0.913122 -1.584144 0.254725
+v -0.837673 -1.600247 0.254721
+v -0.882287 -1.624469 0.204733
+v -0.537569 -2.008338 0.254759
+v -0.582500 -2.032724 0.204771
+v -0.628605 -1.943998 0.204761
+v -0.582829 -1.921239 0.254749
+v -1.361678 -1.817230 0.254794
+v -1.348464 -1.866711 0.204805
+v -1.394586 -1.888948 0.254807
+v -1.254508 -2.380194 0.254868
+v -1.299201 -2.294184 0.254859
+v -1.253803 -2.268874 0.204857
+v -1.207698 -2.357600 0.204866
+v -0.900068 -2.705358 0.948454
+v -0.932952 -2.666099 0.998446
+v -0.977670 -2.691066 0.948458
+v -0.933012 -2.666215 0.204891
+v -0.900121 -2.705460 0.254889
+v -0.977723 -2.691168 0.254893
+v -0.466836 -2.423973 0.204819
+v -0.421375 -2.401378 0.254808
+v -0.451565 -2.472374 0.254820
+v -0.451512 -2.472272 0.948386
+v -0.421322 -2.401276 0.948373
+v -0.466775 -2.423856 0.998375
+v -1.001296 -2.662533 0.174448
+v -1.040324 -2.629746 0.124451
+v -0.916731 -2.508658 0.174419
+v -0.965339 -2.493302 0.124426
+v -0.897488 -2.334135 0.174392
+v -0.948275 -2.338547 0.124402
+v -0.946497 -2.165532 0.174371
+v -0.991733 -2.189044 0.124383
+v -1.056298 -2.028518 0.174359
+v -1.089095 -2.067550 0.124372
+v -1.210172 -1.943953 0.174358
+v -1.225540 -1.992564 0.124372
+v -1.384696 -1.924710 0.174369
+v -1.380294 -1.975501 0.124381
+v -1.553298 -1.973719 0.174389
+v -1.529798 -2.018959 0.124399
+v -1.690312 -2.083519 0.174416
+v -1.651291 -2.116321 0.124423
+v -1.774878 -2.237394 0.174445
+v -1.726277 -2.252765 0.124448
+v -1.794120 -2.411918 0.174472
+v -1.743340 -2.407520 0.124473
+v -1.745111 -2.580521 0.174493
+v -1.699883 -2.557024 0.124491
+v -1.635311 -2.717534 0.174505
+v -1.602520 -2.678517 0.124502
+v -1.481436 -2.802099 0.174506
+v -1.466076 -2.753503 0.124502
+v -1.306912 -2.821342 0.174495
+v -1.311322 -2.770566 0.124493
+v -1.138310 -2.772333 0.174475
+v -1.161817 -2.727108 0.124475
+v -1.001230 -2.662405 1.045454
+v -1.040250 -2.629603 1.095447
+v -0.916664 -2.508530 1.045425
+v -0.965264 -2.493159 1.095421
+v -0.897421 -2.334007 1.045398
+v -0.948201 -2.338404 1.095397
+v -0.946431 -2.165404 1.045377
+v -0.991658 -2.188900 1.095379
+v -1.056231 -2.028390 1.045365
+v -1.089021 -2.067407 1.095368
+v -1.210105 -1.943825 1.045364
+v -1.225465 -1.992421 1.095368
+v -1.384629 -1.924582 1.045375
+v -1.380220 -1.975358 1.095377
+v -1.553232 -1.973591 1.045395
+v -1.529724 -2.018816 1.095395
+v -1.690246 -2.083391 1.045421
+v -1.651217 -2.116178 1.095418
+v -1.774811 -2.237266 1.045451
+v -1.726203 -2.252622 1.095444
+v -1.794054 -2.411790 1.045478
+v -1.743266 -2.407377 1.095468
+v -1.745044 -2.580392 1.045499
+v -1.699808 -2.556881 1.095487
+v -1.635244 -2.717406 1.045511
+v -1.602446 -2.678374 1.095497
+v -1.481369 -2.801971 1.045511
+v -1.466001 -2.753360 1.095498
+v -1.306846 -2.821214 1.045501
+v -1.311247 -2.770423 1.095489
+v -1.138243 -2.772205 1.045481
+v -1.161743 -2.726965 1.095471
+v -0.781442 -1.536473 0.998249
+v -0.817599 -1.499608 0.948249
+v -0.809907 -1.579568 0.948260
+v -0.444597 -1.943141 0.948311
+v -0.415455 -1.898921 0.998301
+v -0.501117 -1.847344 0.998293
+v -0.526557 -1.893793 0.948304
+v -0.296221 -0.720083 0.948147
+v -0.371874 -0.759320 0.948152
+v -0.319081 -0.768553 0.998149
+v 0.240338 -0.799233 0.948162
+v 0.163966 -0.753250 0.948155
+v 0.128976 -0.800846 0.998156
+v 0.214637 -0.852422 0.998164
+v 0.484958 -1.190427 0.948216
+v 0.452809 -1.233305 0.998217
+v 0.485677 -1.275647 0.948228
+v 0.485681 -1.275741 0.254662
+v 0.452814 -1.233412 0.204661
+v 0.484963 -1.190521 0.254651
+v 0.163970 -0.753343 0.254589
+v 0.240343 -0.799327 0.254596
+v 0.214643 -0.852529 0.204608
+v 0.128981 -0.800953 0.204601
+v -0.371870 -0.759413 0.254586
+v -0.296216 -0.720177 0.254582
+v -0.319075 -0.768660 0.204593
+v -0.817594 -1.499702 0.254683
+v -0.781436 -1.536580 0.204693
+v -0.809902 -1.579661 0.254694
+v -0.501111 -1.847451 0.204737
+v -0.415449 -1.899028 0.204745
+v -0.444592 -1.943234 0.254746
+v -0.526552 -1.893887 0.254738
+v -0.009552 -2.001224 0.998317
+v -0.034315 -2.046548 0.948328
+v 0.039952 -2.015936 0.948325
+v -0.009547 -2.001331 0.204762
+v 0.039957 -2.016030 0.254759
+v -0.034310 -2.046642 0.254763
+v -0.048074 -1.997944 0.174314
+v -0.098481 -1.990371 0.124317
+v -0.056339 -1.822558 0.174290
+v -0.105810 -1.834852 0.124296
+v -0.131092 -1.663684 0.174268
+v -0.172096 -1.693975 0.124277
+v -0.260954 -1.545511 0.174251
+v -0.287247 -1.589188 0.124262
+v -0.426153 -1.486030 0.174242
+v -0.433733 -1.536444 0.124254
+v -0.601539 -1.494295 0.174242
+v -0.589252 -1.543773 0.124254
+v -0.760413 -1.569048 0.174251
+v -0.730129 -1.610059 0.124262
+v -0.878586 -1.698909 0.174268
+v -0.834915 -1.725209 0.124276
+v -0.938068 -1.864109 0.174289
+v -0.887659 -1.871696 0.124296
+v -0.929803 -2.039495 0.174313
+v -0.880331 -2.027215 0.124317
+v -0.855049 -2.198368 0.174335
+v -0.814045 -2.168092 0.124336
+v -0.725188 -2.316541 0.174352
+v -0.698894 -2.272878 0.124351
+v -0.559989 -2.376023 0.174361
+v -0.552408 -2.325622 0.124359
+v -0.384602 -2.367758 0.174361
+v -0.396889 -2.318293 0.124360
+v -0.225729 -2.293005 0.174352
+v -0.256012 -2.252008 0.124352
+v -0.107556 -2.163143 0.174336
+v -0.151225 -2.136857 0.124337
+v -0.048080 -1.997827 1.045320
+v -0.098488 -1.990240 1.095313
+v -0.056345 -1.822440 1.045296
+v -0.105817 -1.834720 1.095292
+v -0.131099 -1.663567 1.045274
+v -0.172103 -1.693844 1.095273
+v -0.260960 -1.545394 1.045257
+v -0.287254 -1.589057 1.095258
+v -0.426159 -1.485912 1.045248
+v -0.433739 -1.536313 1.095250
+v -0.601546 -1.494177 1.045248
+v -0.589259 -1.543642 1.095250
+v -0.760419 -1.568931 1.045257
+v -0.730136 -1.609927 1.095258
+v -0.878592 -1.698792 1.045273
+v -0.834922 -1.725078 1.095272
+v -0.938074 -1.863991 1.045295
+v -0.887666 -1.871565 1.095292
+v -0.929809 -2.039378 1.045319
+v -0.880337 -2.027084 1.095313
+v -0.855055 -2.198251 1.045341
+v -0.814052 -2.167961 1.095332
+v -0.725194 -2.316424 1.045358
+v -0.698901 -2.272747 1.095347
+v -0.559995 -2.375905 1.045367
+v -0.552415 -2.325491 1.095355
+v -0.384608 -2.367640 1.045367
+v -0.396895 -2.318162 1.095355
+v -0.225735 -2.292887 1.045358
+v -0.256019 -2.251877 1.095347
+v -0.107562 -2.163026 1.045341
+v -0.151232 -2.136725 1.095333
+v 1.101291 -1.320538 -0.840761
+v 1.101338 -1.320351 0.842595
+v 1.328752 -0.322680 -0.840879
+v 1.328800 -0.322493 0.842477
+v -0.812620 -1.086104 1.078133
+v -0.774987 -1.145960 1.078138
+v -0.763874 -1.097209 1.128127
+v 1.092597 -1.540862 1.083054
+v 1.048288 -1.510291 1.128122
+v 1.037175 -1.559042 1.078133
+v -0.390346 0.766387 1.077915
+v -0.341599 0.755281 1.127910
+v -0.330490 0.804020 1.077909
+v 1.148749 0.415557 1.127905
+v 1.204215 0.412422 1.077909
+v 1.136237 0.469680 1.077904
+v -0.341664 0.755031 -1.126456
+v -0.390407 0.766147 -1.076461
+v -0.330551 0.803781 -1.076466
+v 1.204154 0.412182 -1.076467
+v 1.148685 0.415306 -1.126460
+v 1.136176 0.469441 -1.076471
+v -0.812681 -1.086343 -1.076243
+v -0.763938 -1.097460 -1.126238
+v -0.775048 -1.146199 -1.076237
+v 1.092535 -1.541102 -1.081172
+v 1.037114 -1.559281 -1.076243
+v 1.048224 -1.510542 -1.126243
+v -0.590372 -0.111114 1.078018
+v -0.612594 -0.208603 1.078029
+v -0.552737 -0.170964 1.128018
+v 1.413212 -0.134345 1.082889
+v 1.400655 -0.058908 1.077956
+v 1.367592 -0.109526 1.127957
+v -0.612655 -0.208842 -1.076346
+v -0.590433 -0.111353 -1.076357
+v -0.552801 -0.171215 -1.126347
+v 1.413150 -0.134586 -1.081337
+v 1.367528 -0.109777 -1.126408
+v 1.400594 -0.059147 -1.076420
+v 1.100138 -1.507749 -1.029862
+v 1.117414 -1.431964 -0.988271
+v 1.106303 -1.480703 -0.938270
+v 1.198971 -1.464120 -0.953286
+v 1.142056 -1.488853 -0.938271
+v 1.153166 -1.440113 -0.988271
+v 1.100197 -1.507520 1.031738
+v 1.106357 -1.480494 0.940139
+v 1.117470 -1.431744 0.990128
+v 1.199025 -1.463908 0.955146
+v 1.153222 -1.439894 0.990128
+v 1.142109 -1.488644 0.940139
+v 1.405550 -0.167928 -1.030020
+v 1.399390 -0.194954 -0.938422
+v 1.388277 -0.243704 -0.988411
+v 1.476037 -0.248652 -0.951260
+v 1.424030 -0.251854 -0.988411
+v 1.435142 -0.203103 -0.938422
+v 1.405608 -0.167699 1.031580
+v 1.388333 -0.243484 0.989989
+v 1.399443 -0.194745 0.939988
+v 1.476091 -0.248440 0.952834
+v 1.435196 -0.202895 0.939988
+v 1.424086 -0.251634 0.989988
+v 1.176515 -1.337685 -0.840762
+v 1.217021 -1.384940 -0.876028
+v 1.176563 -1.337498 0.842595
+v 1.217070 -1.384745 0.877869
+v 1.403976 -0.339827 -0.840879
+v 1.460651 -0.316149 -0.878422
+v 1.404024 -0.339640 0.842477
+v 1.460701 -0.315953 0.880012
+v 1.101311 -1.320460 -0.140785
+v 1.328772 -0.322604 -0.154878
+v 0.976904 -1.372967 -0.082841
+v 1.232440 -0.251950 -0.082973
+v 1.232435 -0.251966 -0.229564
+v 0.976900 -1.372984 -0.229432
+v 1.066980 -1.393808 -0.229432
+v 1.322578 -0.272514 -0.229564
+v 1.322582 -0.272498 -0.082973
+v 1.066984 -1.393792 -0.082841
+v 1.127923 -1.407487 -0.082842
+v 1.163856 -1.384820 -0.112842
+v 1.383479 -0.286379 -0.082973
+v 1.406058 -0.322296 -0.112967
+v 1.383474 -0.286396 -0.229564
+v 1.406055 -0.322306 -0.199564
+v 1.127918 -1.407503 -0.229433
+v 1.163853 -1.384830 -0.199439
+v 1.276700 -0.478829 0.912138
+v 1.299397 -0.379261 0.912127
+v 1.299366 -0.379382 -0.172101
+v 1.276670 -0.478949 -0.172089
+v 1.363652 -0.467886 0.882137
+v 1.327739 -0.490463 0.912138
+v 1.373015 -0.426813 0.882133
+v 1.350435 -0.390896 0.912126
+v 1.372985 -0.426926 -0.142101
+v 1.350405 -0.391016 -0.172101
+v 1.363623 -0.468000 -0.142096
+v 1.327708 -0.490584 -0.172089
+v 1.231308 -0.677964 0.912162
+v 1.254004 -0.578396 0.912150
+v 1.253973 -0.578517 -0.172078
+v 1.231277 -0.678084 -0.172066
+v 1.318259 -0.667021 0.882161
+v 1.282346 -0.689598 0.912162
+v 1.327622 -0.625947 0.882156
+v 1.305043 -0.590030 0.912150
+v 1.327593 -0.626061 -0.142077
+v 1.305012 -0.590151 -0.172078
+v 1.318230 -0.667135 -0.142072
+v 1.282316 -0.689718 -0.172066
+v 1.185915 -0.877098 0.912185
+v 1.208611 -0.777531 0.912173
+v 1.208580 -0.777651 -0.172054
+v 1.185884 -0.877219 -0.172042
+v 1.272866 -0.866156 0.882184
+v 1.236954 -0.888733 0.912185
+v 1.282229 -0.825082 0.882179
+v 1.259650 -0.789165 0.912173
+v 1.282200 -0.825196 -0.142054
+v 1.259619 -0.789286 -0.172054
+v 1.272837 -0.866270 -0.142049
+v 1.236923 -0.888853 -0.172043
+v 1.140522 -1.076233 0.912209
+v 1.163219 -0.976666 0.912197
+v 1.163188 -0.976786 -0.172031
+v 1.140491 -1.076354 -0.172019
+v 1.227473 -1.065291 0.882208
+v 1.191561 -1.087867 0.912208
+v 1.236836 -1.024217 0.882203
+v 1.214257 -0.988300 0.912197
+v 1.236807 -1.024331 -0.142031
+v 1.214226 -0.988420 -0.172031
+v 1.227445 -1.065405 -0.142026
+v 1.191530 -1.087988 -0.172019
+v 1.095129 -1.275368 0.912232
+v 1.117826 -1.175801 0.912220
+v 1.117795 -1.175921 -0.172007
+v 1.095099 -1.275489 -0.171996
+v 1.182081 -1.264426 0.882231
+v 1.146168 -1.287002 0.912232
+v 1.191444 -1.223352 0.882226
+v 1.168864 -1.187435 0.912220
+v 1.191414 -1.223466 -0.142007
+v 1.168834 -1.187555 -0.172007
+v 1.182052 -1.264539 -0.142002
+v 1.146137 -1.287123 -0.171996
+v 0.779637 -0.777131 -0.735993
+v 0.798640 -0.693764 -0.678875
+v 0.811339 -0.638055 -0.593383
+v 0.815801 -0.618485 -0.492533
+v 0.811345 -0.638032 -0.391678
+v 0.798651 -0.693723 -0.306173
+v 0.779650 -0.777076 -0.249035
+v 0.757237 -0.875404 -0.228962
+v 0.734822 -0.973737 -0.249012
+v 0.715818 -1.057103 -0.306130
+v 0.703119 -1.112812 -0.391622
+v 0.698658 -1.132382 -0.492472
+v 0.703113 -1.112835 -0.593327
+v 0.715808 -1.057144 -0.678832
+v 0.734808 -0.973791 -0.735970
+v 0.757222 -0.875463 -0.756042
+v 1.286091 -0.892577 -0.735995
+v 1.305094 -0.809211 -0.678876
+v 1.317794 -0.753501 -0.593384
+v 1.322255 -0.733931 -0.492534
+v 1.317799 -0.753479 -0.391680
+v 1.305105 -0.809169 -0.306174
+v 1.286105 -0.892522 -0.249036
+v 1.263691 -0.990850 -0.228964
+v 1.241276 -1.089183 -0.249013
+v 1.222273 -1.172549 -0.306132
+v 1.209574 -1.228258 -0.391624
+v 1.205112 -1.247829 -0.492474
+v 1.209568 -1.228281 -0.593328
+v 1.222262 -1.172590 -0.678833
+v 1.241262 -1.089237 -0.735972
+v 1.263676 -0.990909 -0.756044
+v 1.280462 -0.917271 -0.674828
+v 1.294692 -0.854847 -0.632058
+v 1.304201 -0.813133 -0.568042
+v 1.307541 -0.798478 -0.492527
+v 1.304205 -0.813116 -0.417007
+v 1.294700 -0.854816 -0.352982
+v 1.280472 -0.917231 -0.310197
+v 1.263689 -0.990858 -0.295167
+v 1.246905 -1.064488 -0.310180
+v 1.232675 -1.126912 -0.352950
+v 1.223166 -1.168627 -0.416966
+v 1.219826 -1.183281 -0.492481
+v 1.223162 -1.168644 -0.568000
+v 1.232667 -1.126943 -0.632026
+v 1.246895 -1.064529 -0.674811
+v 1.263678 -0.990902 -0.689841
+v 1.251975 -0.910778 -0.674828
+v 1.266205 -0.848354 -0.632058
+v 1.275714 -0.806639 -0.568042
+v 1.279054 -0.791985 -0.492527
+v 1.275718 -0.806622 -0.417007
+v 1.266213 -0.848322 -0.352982
+v 1.251985 -0.910737 -0.310197
+v 1.235202 -0.984364 -0.295167
+v 1.218418 -1.057995 -0.310180
+v 1.204188 -1.120419 -0.352950
+v 1.194679 -1.162133 -0.416965
+v 1.191339 -1.176787 -0.492481
+v 1.194675 -1.162150 -0.568000
+v 1.204180 -1.120450 -0.632026
+v 1.218408 -1.058035 -0.674810
+v 1.235191 -0.984408 -0.689840
+v 0.998470 -0.384884 -0.817801
+v 1.011989 -0.325577 -0.777167
+v 1.021023 -0.285945 -0.716348
+v 1.024197 -0.272023 -0.644603
+v 1.021027 -0.285929 -0.572855
+v 1.011996 -0.325547 -0.512026
+v 0.998480 -0.384845 -0.471378
+v 0.982534 -0.454795 -0.457099
+v 0.966588 -0.524749 -0.471362
+v 0.953069 -0.584056 -0.511996
+v 0.944035 -0.623688 -0.572815
+v 0.940861 -0.637610 -0.644560
+v 0.944031 -0.623704 -0.716308
+v 0.953062 -0.584086 -0.777136
+v 0.966579 -0.524788 -0.817784
+v 0.982524 -0.454837 -0.832064
+v 1.358762 -0.467012 -0.817802
+v 1.372281 -0.407705 -0.777168
+v 1.381315 -0.368074 -0.716349
+v 1.384489 -0.354151 -0.644604
+v 1.381319 -0.368057 -0.572856
+v 1.372289 -0.407676 -0.512028
+v 1.358772 -0.466973 -0.471379
+v 1.342827 -0.536924 -0.457100
+v 1.326881 -0.606878 -0.471363
+v 1.313362 -0.666185 -0.511997
+v 1.304327 -0.705816 -0.572816
+v 1.301154 -0.719738 -0.644561
+v 1.304323 -0.705832 -0.716309
+v 1.313354 -0.666214 -0.777137
+v 1.326871 -0.606916 -0.817786
+v 1.342816 -0.536966 -0.832065
+v 1.354758 -0.484580 -0.774288
+v 1.364881 -0.440171 -0.743861
+v 1.371645 -0.410495 -0.698321
+v 1.374022 -0.400070 -0.644599
+v 1.371648 -0.410483 -0.590874
+v 1.364886 -0.440149 -0.545326
+v 1.354765 -0.484551 -0.514889
+v 1.342825 -0.536929 -0.504197
+v 1.330885 -0.589310 -0.514877
+v 1.320762 -0.633719 -0.545303
+v 1.313997 -0.663394 -0.590844
+v 1.311621 -0.673819 -0.644566
+v 1.313994 -0.663406 -0.698291
+v 1.320756 -0.633741 -0.743838
+v 1.330878 -0.589339 -0.774275
+v 1.342817 -0.536960 -0.784968
+v 1.316088 -0.475765 -0.774288
+v 1.326211 -0.431357 -0.743861
+v 1.332976 -0.401681 -0.698320
+v 1.335352 -0.391256 -0.644598
+v 1.332979 -0.401669 -0.590874
+v 1.326217 -0.431334 -0.545326
+v 1.316095 -0.475736 -0.514889
+v 1.304156 -0.528114 -0.504197
+v 1.292215 -0.580495 -0.514877
+v 1.282092 -0.624904 -0.545303
+v 1.275328 -0.654580 -0.590844
+v 1.272951 -0.665005 -0.644566
+v 1.275325 -0.654592 -0.698291
+v 1.282087 -0.624926 -0.743838
+v 1.292208 -0.580524 -0.774275
+v 1.304148 -0.528146 -0.784968
+v 1.367183 -0.010016 0.973318
+v 1.362287 0.001777 0.986084
+v 1.411648 0.007742 0.973314
+v 1.418543 0.024429 0.973312
+v 1.406752 0.019534 0.986080
+v 1.205961 0.378211 0.973279
+v 1.210858 0.366422 0.986047
+v 1.267114 0.389075 0.973276
+v 1.250427 0.395969 0.973276
+v 1.255324 0.384180 0.986044
+v 1.210830 0.366312 -0.005834
+v 1.205934 0.378104 0.006932
+v 1.267087 0.388967 0.006929
+v 1.255296 0.384069 -0.005837
+v 1.250399 0.395862 0.006929
+v 1.367155 -0.010123 0.006971
+v 1.362258 0.001666 -0.005798
+v 1.418515 0.024322 0.006965
+v 1.411621 0.007635 0.006967
+v 1.406724 0.019424 -0.005801
+v 1.279687 0.224533 -0.060987
+v 1.327177 0.244254 -0.060991
+v 1.214697 0.381029 -0.061003
+v 1.262188 0.400750 -0.061006
+v 1.214690 0.380998 -0.331312
+v 1.262181 0.400720 -0.331316
+v 1.279679 0.224503 -0.331296
+v 1.327170 0.244224 -0.331300
+v 1.279677 0.224495 -0.399436
+v 1.327168 0.244217 -0.399440
+v 1.214688 0.380991 -0.399452
+v 1.262179 0.400713 -0.399455
+v 1.214680 0.380961 -0.669761
+v 1.262171 0.400683 -0.669764
+v 1.279669 0.224465 -0.669745
+v 1.327160 0.244187 -0.669749
+v 1.279668 0.224459 -0.725425
+v 1.327159 0.244181 -0.725428
+v 1.214679 0.380955 -0.725440
+v 1.262169 0.400676 -0.725444
+v 1.214671 0.380925 -0.995749
+v 1.262162 0.400646 -0.995753
+v 1.279660 0.224429 -0.995734
+v 1.327151 0.244150 -0.995737
+v 1.104523 0.021263 -1.022342
+v 1.086550 0.064550 -0.991031
+v 1.074541 0.093476 -0.944167
+v 1.070325 0.103638 -0.888884
+v 1.074544 0.093489 -0.833600
+v 1.086555 0.064573 -0.786730
+v 1.104530 0.021293 -0.755410
+v 1.125733 -0.029762 -0.744408
+v 1.146935 -0.080820 -0.755400
+v 1.164909 -0.124106 -0.786711
+v 1.176918 -0.153032 -0.833575
+v 1.181133 -0.163194 -0.888858
+v 1.176914 -0.153045 -0.944142
+v 1.164903 -0.124129 -0.991012
+v 1.146928 -0.080849 -1.022332
+v 1.125725 -0.029794 -1.033334
+v 1.367491 0.130467 -1.022362
+v 1.349517 0.173753 -0.991051
+v 1.337508 0.202680 -0.944187
+v 1.333292 0.212842 -0.888904
+v 1.337511 0.202692 -0.833619
+v 1.349523 0.173776 -0.786749
+v 1.367498 0.130497 -0.755430
+v 1.388701 0.079442 -0.744428
+v 1.409903 0.028384 -0.755419
+v 1.427876 -0.014903 -0.786731
+v 1.439885 -0.043829 -0.833595
+v 1.444101 -0.053991 -0.888877
+v 1.439882 -0.043841 -0.944162
+v 1.427871 -0.014925 -0.991032
+v 1.409895 0.028354 -1.022352
+v 1.388693 0.079410 -1.033354
+v 1.372818 0.117645 -0.988833
+v 1.359359 0.150058 -0.965387
+v 1.350367 0.171717 -0.930296
+v 1.347210 0.179327 -0.888901
+v 1.350369 0.171727 -0.847504
+v 1.359364 0.150075 -0.812408
+v 1.372823 0.117667 -0.788956
+v 1.388700 0.079438 -0.780718
+v 1.404576 0.041206 -0.788948
+v 1.418034 0.008793 -0.812394
+v 1.427026 -0.012866 -0.847486
+v 1.430183 -0.020475 -0.888881
+v 1.427024 -0.012876 -0.930277
+v 1.418030 0.008776 -0.965373
+v 1.404570 0.041184 -0.988825
+v 1.388694 0.079414 -0.997063
+v 1.427038 0.140161 -0.988837
+v 1.413579 0.172574 -0.965391
+v 1.404587 0.194234 -0.930300
+v 1.401430 0.201843 -0.888905
+v 1.404590 0.194243 -0.847508
+v 1.413584 0.172591 -0.812412
+v 1.427043 0.140183 -0.788960
+v 1.442920 0.101954 -0.780722
+v 1.458796 0.063722 -0.788952
+v 1.472254 0.031310 -0.812398
+v 1.481246 0.009650 -0.847490
+v 1.484403 0.002041 -0.888885
+v 1.481244 0.009641 -0.930281
+v 1.472250 0.031293 -0.965377
+v 1.458790 0.063700 -0.988829
+v 1.442914 0.101930 -0.997067
+v -1.495636 -0.311533 0.989044
+v -1.458003 -0.371389 0.989050
+v -1.446890 -0.322639 1.039039
+v -0.635993 -0.558766 0.989047
+v -0.576137 -0.521133 0.989042
+v -0.624880 -0.510016 1.039037
+v -1.167560 0.902765 0.988900
+v -1.227416 0.865132 0.988906
+v -1.178670 0.854026 1.038901
+v -0.307916 0.655532 0.988903
+v -0.345549 0.715388 0.988898
+v -0.356659 0.666649 1.038898
+v -1.178728 0.853796 -1.037421
+v -1.227472 0.864912 -0.987426
+v -1.167616 0.902546 -0.987432
+v -0.307972 0.655313 -0.987429
+v -0.356718 0.666419 -1.037424
+v -0.345605 0.715169 -0.987435
+v -1.458059 -0.371609 -0.987282
+v -1.495692 -0.311753 -0.987288
+v -1.446949 -0.322870 -1.037283
+v -0.576193 -0.521353 -0.987291
+v -0.636049 -0.558986 -0.987285
+v -0.624939 -0.510247 -1.037286
+v -0.319824 1.832872 -0.416676
+v -0.368612 1.844002 -0.341782
+v -0.441632 1.860653 -0.291739
+v -0.527765 1.880289 -0.274166
+v -0.613899 1.899921 -0.291738
+v -0.686922 1.916561 -0.341780
+v -0.735715 1.927674 -0.416674
+v -0.752850 1.931570 -0.505017
+v -0.735720 1.927655 -0.593361
+v -0.686931 1.916525 -0.668255
+v -0.613912 1.899874 -0.718297
+v -0.527778 1.880238 -0.735870
+v -0.441644 1.860606 -0.718298
+v -0.368622 1.843966 -0.668256
+v -0.319829 1.832852 -0.593362
+v -0.302693 1.828957 -0.505019
+v -0.656783 0.354653 -0.416502
+v -0.705572 0.365783 -0.341608
+v -0.778591 0.382434 -0.291565
+v -0.864725 0.402070 -0.273992
+v -0.950859 0.421702 -0.291564
+v -1.023881 0.438342 -0.341607
+v -1.072674 0.449455 -0.416500
+v -1.089810 0.453351 -0.504843
+v -1.072679 0.449436 -0.593187
+v -1.023890 0.438305 -0.668081
+v -0.950871 0.421655 -0.718123
+v -0.864738 0.402019 -0.735696
+v -0.778604 0.382387 -0.718124
+v -0.705581 0.365747 -0.668082
+v -0.656788 0.354633 -0.593188
+v -0.639653 0.350738 -0.504845
+v -0.313476 2.237765 -0.505064
+v -0.331111 2.230227 -0.416719
+v -0.331116 2.230207 -0.593406
+v -0.381348 2.208703 -0.668296
+v -0.456522 2.176528 -0.718333
+v -0.545196 2.138578 -0.735899
+v -0.633868 2.100632 -0.718319
+v -0.709040 2.068468 -0.668271
+v -0.759268 2.046980 -0.593373
+v -0.776903 2.039442 -0.505029
+v -0.759263 2.047000 -0.416687
+v -0.709031 2.068504 -0.341797
+v -0.633856 2.100680 -0.291760
+v -0.545183 2.138629 -0.274194
+v -0.456510 2.176575 -0.291774
+v -0.381338 2.208739 -0.341822
+v -0.660612 2.609242 -0.505095
+v -0.665461 2.587971 -0.416750
+v -0.665466 2.587952 -0.593436
+v -0.679282 2.527342 -0.668323
+v -0.699954 2.436654 -0.718355
+v -0.724332 2.329712 -0.735915
+v -0.748694 2.222838 -0.718329
+v -0.769318 2.132358 -0.668276
+v -0.783062 2.072064 -0.593376
+v -0.787871 2.050968 -0.505029
+v -0.783057 2.072084 -0.416689
+v -0.769309 2.132394 -0.341802
+v -0.748681 2.222886 -0.291770
+v -0.724318 2.329764 -0.274210
+v -0.699942 2.436701 -0.291796
+v -0.679273 2.527379 -0.341849
+v -0.671245 2.562597 -0.505090
+v -0.675283 2.544880 -0.431507
+v -0.675288 2.544863 -0.578668
+v -0.686795 2.494383 -0.641041
+v -0.704013 2.418849 -0.682712
+v -0.724316 2.329778 -0.697338
+v -0.744607 2.240763 -0.682691
+v -0.761786 2.165401 -0.641002
+v -0.773233 2.115185 -0.578618
+v -0.777238 2.097614 -0.505035
+v -0.773228 2.115201 -0.431457
+v -0.761778 2.165432 -0.369084
+v -0.744597 2.240803 -0.327413
+v -0.724306 2.329821 -0.312787
+v -0.704003 2.418889 -0.327434
+v -0.686787 2.494413 -0.369123
+v -0.346413 2.212333 -0.505060
+v -0.360819 2.206240 -0.441729
+v -0.360823 2.206225 -0.568389
+v -0.401854 2.188846 -0.622074
+v -0.463253 2.162844 -0.657943
+v -0.535657 2.132184 -0.670535
+v -0.608017 2.101544 -0.657932
+v -0.669281 2.075606 -0.622054
+v -0.710106 2.058324 -0.568363
+v -0.724394 2.052281 -0.505032
+v -0.710102 2.058339 -0.441703
+v -0.669274 2.075633 -0.388017
+v -0.608008 2.101578 -0.352148
+v -0.535647 2.132221 -0.339557
+v -0.463244 2.162878 -0.352159
+v -0.401847 2.188872 -0.388038
+v -0.345942 1.841069 -0.505019
+v -0.359835 1.844192 -0.441689
+v -0.359838 1.844178 -0.568349
+v -0.399407 1.853045 -0.622037
+v -0.458618 1.866319 -0.657910
+v -0.528442 1.881975 -0.670507
+v -0.598223 1.897625 -0.657910
+v -0.657303 1.910878 -0.622036
+v -0.696674 1.919713 -0.568348
+v -0.710453 1.922810 -0.505017
+v -0.696670 1.919727 -0.441688
+v -0.657297 1.910904 -0.387999
+v -0.598215 1.897659 -0.352126
+v -0.528432 1.882012 -0.339529
+v -0.458609 1.866352 -0.352127
+v -0.399401 1.853071 -0.388000
+v -0.468268 1.304431 -0.504956
+v -0.482161 1.307554 -0.441626
+v -0.482165 1.307541 -0.568286
+v -0.521734 1.316407 -0.621974
+v -0.580944 1.329681 -0.657847
+v -0.650768 1.345338 -0.670444
+v -0.720550 1.360988 -0.657847
+v -0.779630 1.374241 -0.621973
+v -0.819001 1.383076 -0.568285
+v -0.832780 1.386173 -0.504954
+v -0.818997 1.383090 -0.441625
+v -0.779623 1.374267 -0.387936
+v -0.720541 1.361022 -0.352063
+v -0.650759 1.345375 -0.339466
+v -0.580936 1.329715 -0.352063
+v -0.521727 1.316433 -0.387937
+v -0.648498 0.391000 -0.416506
+v -0.697373 0.401752 -0.341612
+v -0.770520 0.417843 -0.291569
+v -0.856803 0.436825 -0.273996
+v -0.943085 0.455807 -0.291568
+v -1.016232 0.471901 -0.341610
+v -1.065106 0.482654 -0.416504
+v -1.082269 0.486431 -0.504847
+v -1.065107 0.482657 -0.593191
+v -1.016231 0.471906 -0.668085
+v -0.943084 0.455814 -0.718127
+v -0.856802 0.436832 -0.735700
+v -0.770520 0.417850 -0.718128
+v -0.697373 0.401757 -0.668086
+v -0.648498 0.391003 -0.593193
+v -0.631335 0.387226 -0.504849
+v -0.648498 0.391000 -0.416506
+v -0.697373 0.401752 -0.341612
+v -0.770520 0.417843 -0.291569
+v -0.856803 0.436825 -0.273996
+v -0.943085 0.455807 -0.291568
+v -1.016232 0.471901 -0.341610
+v -1.065106 0.482654 -0.416504
+v -1.082269 0.486431 -0.504847
+v -1.065107 0.482657 -0.593191
+v -1.016231 0.471906 -0.668085
+v -0.943084 0.455814 -0.718127
+v -0.856802 0.436832 -0.735700
+v -0.770520 0.417850 -0.718128
+v -0.697373 0.401757 -0.668086
+v -0.648498 0.391003 -0.593193
+v -0.631335 0.387226 -0.504849
+v -0.679212 2.620039 -0.505096
+v -0.684061 2.598768 -0.416750
+v -0.689845 2.573394 -0.505091
+v -0.693883 2.555677 -0.431508
+v -0.684066 2.598749 -0.593437
+v -0.693888 2.555660 -0.578669
+v -0.697882 2.538139 -0.668323
+v -0.705395 2.505180 -0.641042
+v -0.718554 2.447451 -0.718355
+v -0.722613 2.429646 -0.682713
+v -0.742931 2.340510 -0.735915
+v -0.742916 2.340575 -0.697339
+v -0.767293 2.233636 -0.718330
+v -0.763207 2.251560 -0.682692
+v -0.787918 2.143155 -0.668277
+v -0.780386 2.176198 -0.641003
+v -0.801662 2.082861 -0.593376
+v -0.791833 2.125982 -0.578619
+v -0.806471 2.061765 -0.505030
+v -0.795838 2.108411 -0.505036
+v -0.801657 2.082881 -0.416690
+v -0.791828 2.125998 -0.431457
+v -0.787909 2.143191 -0.341803
+v -0.780378 2.176229 -0.369085
+v -0.767281 2.233683 -0.291771
+v -0.763197 2.251600 -0.327413
+v -0.742918 2.340562 -0.274211
+v -0.742905 2.340618 -0.312788
+v -0.718542 2.447498 -0.291796
+v -0.722603 2.429686 -0.327434
+v -0.697872 2.538176 -0.341850
+v -0.705387 2.505210 -0.369124
+v -0.319795 1.832983 0.578355
+v -0.368584 1.844113 0.653249
+v -0.441604 1.860764 0.703292
+v -0.527737 1.880400 0.720865
+v -0.613871 1.900032 0.703293
+v -0.686893 1.916671 0.653251
+v -0.735686 1.927785 0.578357
+v -0.752822 1.931681 0.490014
+v -0.735692 1.927765 0.401670
+v -0.686903 1.916635 0.326776
+v -0.613883 1.899985 0.276734
+v -0.527750 1.880349 0.259161
+v -0.441616 1.860716 0.276733
+v -0.368593 1.844077 0.326775
+v -0.319801 1.832963 0.401669
+v -0.302665 1.829068 0.490012
+v -0.656755 0.354764 0.578529
+v -0.705544 0.365894 0.653423
+v -0.778563 0.382544 0.703466
+v -0.864697 0.402181 0.721039
+v -0.950831 0.421813 0.703466
+v -1.023853 0.438452 0.653424
+v -1.072646 0.449566 0.578531
+v -1.089782 0.453462 0.490188
+v -1.072651 0.449546 0.401844
+v -1.023862 0.438416 0.326950
+v -0.950843 0.421766 0.276907
+v -0.864710 0.402130 0.259334
+v -0.778575 0.382497 0.276907
+v -0.705553 0.365858 0.326949
+v -0.656760 0.354744 0.401843
+v -0.639625 0.350849 0.490186
+v -0.313448 2.237876 0.489967
+v -0.331083 2.230338 0.578312
+v -0.331088 2.230318 0.401625
+v -0.381320 2.208814 0.326735
+v -0.456494 2.176638 0.276698
+v -0.545168 2.138689 0.259132
+v -0.633840 2.100743 0.276712
+v -0.709012 2.068578 0.326760
+v -0.759240 2.047091 0.401658
+v -0.776875 2.039552 0.490002
+v -0.759234 2.047111 0.578344
+v -0.709003 2.068615 0.653234
+v -0.633828 2.100790 0.703271
+v -0.545154 2.138740 0.720837
+v -0.456482 2.176686 0.703257
+v -0.381310 2.208850 0.653209
+v -0.660584 2.609352 0.489935
+v -0.665433 2.588082 0.578281
+v -0.665437 2.588062 0.401595
+v -0.679253 2.527454 0.326708
+v -0.699926 2.436764 0.276676
+v -0.724303 2.329823 0.259116
+v -0.748665 2.222949 0.276701
+v -0.769290 2.132468 0.326755
+v -0.783034 2.072175 0.401655
+v -0.787842 2.051078 0.490001
+v -0.783029 2.072195 0.578342
+v -0.769281 2.132504 0.653229
+v -0.748653 2.222997 0.703260
+v -0.724290 2.329875 0.720820
+v -0.699914 2.436811 0.703235
+v -0.679245 2.527490 0.653182
+v -0.671217 2.562707 0.489941
+v -0.675255 2.544991 0.563524
+v -0.675259 2.544974 0.416362
+v -0.686767 2.494493 0.353990
+v -0.703985 2.418959 0.312319
+v -0.724288 2.329888 0.297693
+v -0.744579 2.240874 0.312340
+v -0.761758 2.165512 0.354029
+v -0.773205 2.115295 0.416413
+v -0.777209 2.097724 0.489996
+v -0.773200 2.115312 0.563574
+v -0.761750 2.165543 0.625947
+v -0.744569 2.240914 0.667618
+v -0.724277 2.329931 0.682244
+v -0.703975 2.418999 0.667597
+v -0.686759 2.494524 0.625908
+v -0.346385 2.212444 0.489971
+v -0.360791 2.206351 0.553302
+v -0.360795 2.206336 0.426642
+v -0.401826 2.188957 0.372957
+v -0.463224 2.162954 0.337088
+v -0.535629 2.132294 0.324496
+v -0.607989 2.101655 0.337098
+v -0.669252 2.075717 0.372977
+v -0.710078 2.058435 0.426668
+v -0.724366 2.052391 0.489999
+v -0.710074 2.058449 0.553328
+v -0.669246 2.075743 0.607014
+v -0.607980 2.101689 0.642883
+v -0.535619 2.132331 0.655474
+v -0.463216 2.162989 0.642871
+v -0.401819 2.188982 0.606993
+v -0.345914 1.841180 0.490012
+v -0.359806 1.844303 0.553342
+v -0.359810 1.844289 0.426682
+v -0.399379 1.853155 0.372994
+v -0.458590 1.866429 0.337120
+v -0.528413 1.882086 0.324523
+v -0.598195 1.897736 0.337121
+v -0.657275 1.910989 0.372995
+v -0.696646 1.919824 0.426683
+v -0.710425 1.922921 0.490013
+v -0.696642 1.919838 0.553343
+v -0.657269 1.911015 0.607032
+v -0.598186 1.897770 0.642905
+v -0.528404 1.882123 0.655502
+v -0.458581 1.866463 0.642904
+v -0.399372 1.853182 0.607031
+v -0.468240 1.304542 0.490075
+v -0.482133 1.307665 0.553405
+v -0.482136 1.307651 0.426745
+v -0.521705 1.316518 0.373057
+v -0.580916 1.329792 0.337184
+v -0.650740 1.345448 0.324587
+v -0.720522 1.361098 0.337184
+v -0.779602 1.374351 0.373058
+v -0.818972 1.383186 0.426746
+v -0.832752 1.386284 0.490077
+v -0.818969 1.383200 0.553406
+v -0.779595 1.374377 0.607095
+v -0.720513 1.361132 0.642968
+v -0.650731 1.345485 0.655565
+v -0.580907 1.329826 0.642967
+v -0.521699 1.316544 0.607094
+v -0.648499 0.390984 0.578525
+v -0.697374 0.401735 0.653419
+v -0.770521 0.417826 0.703462
+v -0.856803 0.436808 0.721035
+v -0.943086 0.455791 0.703462
+v -1.016232 0.471884 0.653420
+v -1.065107 0.482637 0.578527
+v -1.082270 0.486415 0.490184
+v -1.065107 0.482640 0.401840
+v -1.016232 0.471889 0.326946
+v -0.943085 0.455798 0.276903
+v -0.856803 0.436816 0.259330
+v -0.770521 0.417833 0.276903
+v -0.697374 0.401740 0.326945
+v -0.648499 0.390987 0.401838
+v -0.631336 0.387209 0.490182
+v -0.648499 0.390984 0.578525
+v -0.697374 0.401735 0.653419
+v -0.770521 0.417826 0.703462
+v -0.856803 0.436808 0.721035
+v -0.943086 0.455791 0.703462
+v -1.016232 0.471884 0.653420
+v -1.065107 0.482637 0.578527
+v -1.082270 0.486415 0.490184
+v -1.065107 0.482640 0.401840
+v -1.016232 0.471889 0.326946
+v -0.943085 0.455798 0.276903
+v -0.856803 0.436816 0.259330
+v -0.770521 0.417833 0.276903
+v -0.697374 0.401740 0.326945
+v -0.648499 0.390987 0.401838
+v -0.631336 0.387209 0.490182
+v -0.679184 2.620150 0.489935
+v -0.684033 2.598879 0.578281
+v -0.689817 2.573504 0.489940
+v -0.693855 2.555788 0.563523
+v -0.684037 2.598859 0.401594
+v -0.693859 2.555771 0.416362
+v -0.697853 2.538251 0.326707
+v -0.705366 2.505291 0.353989
+v -0.718526 2.447561 0.276676
+v -0.722585 2.429756 0.312318
+v -0.742903 2.340621 0.259116
+v -0.742888 2.340686 0.297692
+v -0.767265 2.233746 0.276701
+v -0.763179 2.251671 0.312339
+v -0.787890 2.143265 0.326754
+v -0.780358 2.176309 0.354028
+v -0.801634 2.082972 0.401655
+v -0.791804 2.126092 0.416413
+v -0.806442 2.061876 0.490001
+v -0.795809 2.108521 0.489995
+v -0.801629 2.082992 0.578341
+v -0.791800 2.126109 0.563574
+v -0.787881 2.143302 0.653228
+v -0.780350 2.176340 0.625946
+v -0.767253 2.233794 0.703260
+v -0.763169 2.251711 0.667617
+v -0.742890 2.340672 0.720820
+v -0.742877 2.340728 0.682243
+v -0.718514 2.447608 0.703235
+v -0.722574 2.429796 0.667596
+v -0.697844 2.538287 0.653181
+v -0.705359 2.505321 0.625907
+v 0.118709 0.981493 -0.144974
+v 0.199153 0.963141 -0.268461
+v 0.319549 0.935687 -0.350973
+v 0.461568 0.903310 -0.379948
+v 0.603589 0.870940 -0.350974
+v 0.723990 0.843505 -0.268463
+v 0.804441 0.825180 -0.144976
+v 0.832695 0.818757 0.000686
+v 0.804450 0.825213 0.146349
+v 0.724005 0.843564 0.269837
+v 0.603609 0.871018 0.352349
+v 0.461590 0.903395 0.381323
+v 0.319569 0.935765 0.352349
+v 0.199168 0.963201 0.269838
+v 0.118717 0.981525 0.146352
+v 0.090463 0.987948 0.000689
+v 0.022919 0.561269 -0.144925
+v 0.103363 0.542918 -0.268412
+v 0.223759 0.515464 -0.350924
+v 0.365778 0.483087 -0.379899
+v 0.507799 0.450717 -0.350925
+v 0.628200 0.423281 -0.268414
+v 0.708651 0.404957 -0.144927
+v 0.736905 0.398533 0.000736
+v 0.708660 0.404989 0.146399
+v 0.628216 0.423341 0.269886
+v 0.507819 0.450795 0.352398
+v 0.365800 0.483171 0.381373
+v 0.223779 0.515542 0.352399
+v 0.103378 0.542977 0.269888
+v 0.022927 0.561302 0.146401
+v -0.005326 0.567725 0.000738
+vt 0.495494 0.364128
+vt 0.495483 0.270392
+vt 0.533391 0.270388
+vt 0.533402 0.364124
+vt 0.552064 0.270467
+vt 0.595221 0.270469
+vt 0.595219 0.317337
+vt 0.595218 0.364205
+vt 0.552061 0.364203
+vt 0.060975 0.285684
+vt 0.078954 0.285360
+vt 0.080339 0.362071
+vt 0.006801 0.363399
+vt 0.004996 0.263468
+vt 0.022342 0.266127
+vt 0.013671 0.335827
+vt 0.064369 0.334911
+vt 0.200992 0.335826
+vt 0.192321 0.266127
+vt 0.209667 0.263468
+vt 0.207862 0.363399
+vt 0.134324 0.362071
+vt 0.135710 0.285359
+vt 0.153688 0.285684
+vt 0.150295 0.334911
+vt 0.785604 0.372915
+vt 0.778054 0.416742
+vt 0.768042 0.416743
+vt 0.768036 0.372917
+vt 0.778055 0.422826
+vt 0.785615 0.466651
+vt 0.768048 0.466653
+vt 0.768042 0.422827
+vt 0.741596 0.464066
+vt 0.741584 0.370330
+vt 0.759407 0.370327
+vt 0.759418 0.464064
+vt 0.732646 0.464063
+vt 0.669529 0.464064
+vt 0.669526 0.370328
+vt 0.732642 0.370327
+vt 0.352611 0.359767
+vt 0.258874 0.359764
+vt 0.258878 0.259266
+vt 0.352614 0.259269
+vt 0.973851 0.380402
+vt 0.973842 0.456369
+vt 0.966146 0.474706
+vt 0.887797 0.474697
+vt 0.880106 0.456358
+vt 0.880115 0.380390
+vt 0.084788 0.285254
+vt 0.099406 0.284990
+vt 0.101321 0.361692
+vt 0.086185 0.361965
+vt 0.582981 0.386023
+vt 0.621137 0.386022
+vt 0.659293 0.386021
+vt 0.659295 0.462723
+vt 0.582984 0.462725
+vt 0.115255 0.284990
+vt 0.129875 0.285254
+vt 0.128477 0.361965
+vt 0.113341 0.361692
+vt 0.115387 0.278907
+vt 0.115492 0.273098
+vt 0.130090 0.273361
+vt 0.129985 0.279171
+vt 0.800590 0.372871
+vt 0.800451 0.416786
+vt 0.794641 0.416786
+vt 0.794780 0.372870
+vt 0.624179 0.379939
+vt 0.624179 0.374129
+vt 0.659292 0.374128
+vt 0.659292 0.379938
+vt 0.582981 0.379941
+vt 0.582981 0.374131
+vt 0.618094 0.374130
+vt 0.618095 0.379939
+vt 0.084678 0.279171
+vt 0.084573 0.273361
+vt 0.099170 0.273097
+vt 0.099275 0.278907
+vt 0.794641 0.422782
+vt 0.800451 0.422782
+vt 0.800586 0.466695
+vt 0.794777 0.466695
+vt 0.557936 0.371142
+vt 0.572737 0.377529
+vt 0.572741 0.413684
+vt 0.550607 0.413687
+vt 0.572742 0.419768
+vt 0.572746 0.455923
+vt 0.557947 0.462314
+vt 0.550608 0.419771
+vt 0.539699 0.367165
+vt 0.489001 0.367171
+vt 0.536234 0.364124
+vt 0.536223 0.270388
+vt 0.546042 0.367245
+vt 0.595269 0.367247
+vt 0.539687 0.267345
+vt 0.488989 0.267351
+vt 0.546046 0.267424
+vt 0.595272 0.267426
+vt 0.153901 0.282645
+vt 0.136333 0.282328
+vt 0.598311 0.270469
+vt 0.598309 0.314295
+vt 0.598309 0.320379
+vt 0.598308 0.364205
+vt 0.060761 0.282645
+vt 0.078329 0.282328
+vt 0.022718 0.263107
+vt 0.004896 0.260375
+vt 0.762050 0.464063
+vt 0.762038 0.370327
+vt 0.025350 0.266586
+vt 0.017498 0.329703
+vt 0.191944 0.263107
+vt 0.209767 0.260375
+vt 0.189313 0.266586
+vt 0.197165 0.329703
+vt 0.492817 0.270393
+vt 0.492828 0.364129
+vt 0.001944 0.262956
+vt 0.003759 0.363454
+vt 0.738644 0.464066
+vt 0.738632 0.370330
+vt 0.212719 0.262956
+vt 0.210903 0.363454
+vt 0.207807 0.366441
+vt 0.131839 0.365069
+vt 0.258874 0.362751
+vt 0.352610 0.362754
+vt 0.006856 0.366441
+vt 0.082823 0.365069
+vt 0.101160 0.364737
+vt 0.104125 0.361641
+vt 0.102198 0.284939
+vt 0.965127 0.477671
+vt 0.888816 0.477662
+vt 0.110535 0.361642
+vt 0.112462 0.284940
+vt 0.113501 0.364738
+vt 0.133294 0.279231
+vt 0.133399 0.273421
+vt 0.788643 0.372871
+vt 0.781078 0.416786
+vt 0.112594 0.278857
+vt 0.112699 0.273047
+vt 0.102067 0.278856
+vt 0.101962 0.273047
+vt 0.788655 0.466695
+vt 0.781079 0.422782
+vt 0.081368 0.279231
+vt 0.081263 0.273421
+vt 0.803549 0.422826
+vt 0.803680 0.465369
+vt 0.803549 0.416742
+vt 0.803683 0.374197
+vt 0.618094 0.371143
+vt 0.581939 0.371144
+vt 0.624178 0.371143
+vt 0.660333 0.371142
+vt 0.130596 0.270328
+vt 0.115795 0.270061
+vt 0.084066 0.270328
+vt 0.098865 0.270060
+vt 0.338874 0.970611
+vt 0.341803 0.964314
+vt 0.344893 0.967146
+vt 0.329798 0.970610
+vt 0.326869 0.964314
+vt 0.332887 0.967778
+vt 0.194499 0.332667
+vt 0.020164 0.332667
+vt 0.969346 0.474867
+vt 0.884597 0.474857
+vt 0.663539 0.374179
+vt 0.578733 0.374181
+vt 0.470589 0.374184
+vt 0.542215 0.372176
+vt 0.542212 0.458587
+vt 0.470587 0.458585
+vt 0.914240 0.484706
+vt 0.939416 0.490090
+vt 0.935405 0.555183
+vt 0.915519 0.555542
+vt 0.294669 0.366651
+vt 0.294658 0.451052
+vt 0.275019 0.451050
+vt 0.275030 0.366649
+vt 0.306819 0.369694
+vt 0.332366 0.369691
+vt 0.332376 0.454092
+vt 0.306829 0.454095
+vt 0.268364 0.370336
+vt 0.268366 0.454736
+vt 0.203929 0.454738
+vt 0.203926 0.370337
+vt 0.742414 0.567801
+vt 0.767590 0.562417
+vt 0.766311 0.633253
+vt 0.746425 0.632894
+vt 0.467600 0.458584
+vt 0.467603 0.374184
+vt 0.470641 0.461627
+vt 0.541477 0.461629
+vt 0.915574 0.558583
+vt 0.935213 0.558228
+vt 0.544617 0.458587
+vt 0.544620 0.374186
+vt 0.914103 0.481566
+vt 0.939650 0.487029
+vt 0.297912 0.366651
+vt 0.297902 0.451052
+vt 0.938456 0.555138
+vt 0.942424 0.490701
+vt 0.335149 0.454091
+vt 0.335139 0.369690
+vt 0.294850 0.454094
+vt 0.274964 0.454092
+vt 0.203885 0.457780
+vt 0.268977 0.457778
+vt 0.332130 0.366649
+vt 0.306954 0.366652
+vt 0.470644 0.371142
+vt 0.541480 0.371144
+vt 0.911184 0.483971
+vt 0.303899 0.367684
+vt 0.377839 0.371686
+vt 0.424653 0.371687
+vt 0.424651 0.454251
+vt 0.377836 0.454250
+vt 0.389150 0.746439
+vt 0.409216 0.746077
+vt 0.412049 0.792788
+vt 0.386293 0.793254
+vt 0.062380 0.370339
+vt 0.062370 0.452902
+vt 0.036614 0.452899
+vt 0.036624 0.370336
+vt 0.007996 0.373380
+vt 0.027466 0.373378
+vt 0.027476 0.455941
+vt 0.008006 0.455944
+vt 0.048707 0.459839
+vt 0.048710 0.542403
+vt 0.001999 0.542404
+vt 0.001996 0.459841
+vt 0.069130 0.802869
+vt 0.089196 0.803231
+vt 0.092053 0.850046
+vt 0.066297 0.849580
+vt 0.374850 0.454249
+vt 0.374852 0.371686
+vt 0.377891 0.457291
+vt 0.424705 0.457293
+vt 0.386348 0.796295
+vt 0.412104 0.795830
+vt 0.427758 0.454251
+vt 0.427761 0.371687
+vt 0.389691 0.743387
+vt 0.409161 0.743035
+vt 0.065367 0.370339
+vt 0.065357 0.452902
+vt 0.415090 0.792733
+vt 0.412257 0.746022
+vt 0.030572 0.455941
+vt 0.030562 0.373377
+vt 0.062315 0.455944
+vt 0.036559 0.455941
+vt 0.001944 0.545446
+vt 0.048655 0.545444
+vt 0.027520 0.370336
+vt 0.007454 0.370338
+vt 0.377894 0.368644
+vt 0.424708 0.368645
+vt 0.186915 0.935184
+vt 0.183440 0.935091
+vt 0.183439 0.903489
+vt 0.186914 0.903582
+vt 0.178238 0.935028
+vt 0.178237 0.903426
+vt 0.172101 0.935006
+vt 0.172100 0.903404
+vt 0.165964 0.935028
+vt 0.165963 0.903426
+vt 0.160762 0.935091
+vt 0.160760 0.903489
+vt 0.157285 0.935185
+vt 0.157284 0.903583
+vt 0.248604 0.932810
+vt 0.242468 0.932921
+vt 0.241897 0.901319
+vt 0.248033 0.901208
+vt 0.236332 0.933032
+vt 0.235762 0.901430
+vt 0.231130 0.933126
+vt 0.230560 0.901524
+vt 0.115678 0.935158
+vt 0.110476 0.935220
+vt 0.110477 0.903618
+vt 0.115679 0.903556
+vt 0.104339 0.935242
+vt 0.104340 0.903640
+vt 0.098202 0.935220
+vt 0.098203 0.903618
+vt 0.093000 0.935157
+vt 0.093001 0.903555
+vt 0.089523 0.935063
+vt 0.089524 0.903461
+vt 0.224002 0.934503
+vt 0.217867 0.934392
+vt 0.218437 0.902790
+vt 0.224573 0.902901
+vt 0.211731 0.934281
+vt 0.212302 0.902679
+vt 0.454884 0.933914
+vt 0.448748 0.935134
+vt 0.442612 0.933912
+vt 0.437411 0.930435
+vt 0.433936 0.925233
+vt 0.432716 0.919096
+vt 0.433938 0.912959
+vt 0.437414 0.907757
+vt 0.442616 0.904282
+vt 0.448752 0.903062
+vt 0.454887 0.904283
+vt 0.460088 0.907760
+vt 0.463563 0.912963
+vt 0.464783 0.919100
+vt 0.463562 0.925236
+vt 0.460086 0.930438
+vt 0.248848 0.937997
+vt 0.252743 0.940599
+vt 0.255346 0.944494
+vt 0.256260 0.949089
+vt 0.255347 0.953684
+vt 0.252745 0.957580
+vt 0.248850 0.960184
+vt 0.244256 0.961098
+vt 0.239662 0.960185
+vt 0.235766 0.957582
+vt 0.233163 0.953687
+vt 0.232249 0.949092
+vt 0.233162 0.944497
+vt 0.235764 0.940601
+vt 0.239659 0.937998
+vt 0.244253 0.937083
+vt 0.492937 0.904282
+vt 0.498139 0.907757
+vt 0.495291 0.910606
+vt 0.491396 0.908004
+vt 0.501615 0.912959
+vt 0.497894 0.914501
+vt 0.502836 0.919096
+vt 0.498809 0.919096
+vt 0.501616 0.925233
+vt 0.497895 0.923692
+vt 0.498141 0.930435
+vt 0.495293 0.927587
+vt 0.492940 0.933912
+vt 0.491399 0.930191
+vt 0.486805 0.935134
+vt 0.486804 0.931105
+vt 0.480669 0.933914
+vt 0.482210 0.930192
+vt 0.475467 0.930438
+vt 0.478315 0.927589
+vt 0.471991 0.925236
+vt 0.475712 0.923694
+vt 0.470770 0.919100
+vt 0.474797 0.919099
+vt 0.471989 0.912963
+vt 0.475711 0.914504
+vt 0.475464 0.907760
+vt 0.478313 0.910608
+vt 0.480666 0.904283
+vt 0.482207 0.908005
+vt 0.486801 0.903062
+vt 0.486802 0.907090
+vt 0.490190 0.939029
+vt 0.490261 0.941631
+vt 0.489060 0.941631
+vt 0.488990 0.939028
+vt 0.490307 0.945526
+vt 0.489107 0.945526
+vt 0.490324 0.950121
+vt 0.489123 0.950121
+vt 0.490307 0.954716
+vt 0.489107 0.954716
+vt 0.490260 0.958612
+vt 0.489059 0.958612
+vt 0.490190 0.961216
+vt 0.488989 0.961215
+vt 0.918953 0.981229
+vt 0.918870 0.985823
+vt 0.917669 0.985801
+vt 0.917752 0.981207
+vt 0.918787 0.990417
+vt 0.917586 0.990395
+vt 0.918716 0.994312
+vt 0.917516 0.994291
+vt 0.918670 0.996915
+vt 0.917469 0.996894
+vt 0.900157 0.979605
+vt 0.900141 0.984200
+vt 0.898940 0.984200
+vt 0.898957 0.979605
+vt 0.900157 0.988795
+vt 0.898957 0.988795
+vt 0.900205 0.992691
+vt 0.899004 0.992691
+vt 0.900275 0.995295
+vt 0.899074 0.995295
+vt 0.532957 0.962555
+vt 0.533040 0.967149
+vt 0.531839 0.967171
+vt 0.531756 0.962576
+vt 0.533123 0.971743
+vt 0.531922 0.971765
+vt 0.778699 0.990010
+vt 0.777366 0.989974
+vt 0.777365 0.977847
+vt 0.778699 0.977883
+vt 0.775370 0.989950
+vt 0.775369 0.977823
+vt 0.773015 0.989941
+vt 0.773014 0.977815
+vt 0.770660 0.989950
+vt 0.770660 0.977823
+vt 0.768663 0.989974
+vt 0.768663 0.977847
+vt 0.767329 0.990010
+vt 0.767329 0.977884
+vt 0.803859 0.990247
+vt 0.801504 0.990289
+vt 0.801285 0.978163
+vt 0.803640 0.978120
+vt 0.799150 0.990332
+vt 0.798931 0.978205
+vt 0.797154 0.990368
+vt 0.796935 0.978241
+vt 0.795820 0.990392
+vt 0.795601 0.978265
+vt 0.761342 0.989861
+vt 0.758987 0.989870
+vt 0.758987 0.977743
+vt 0.761342 0.977735
+vt 0.756632 0.989861
+vt 0.756633 0.977735
+vt 0.754636 0.989837
+vt 0.754636 0.977711
+vt 0.753302 0.989801
+vt 0.753302 0.977675
+vt 0.789395 0.990026
+vt 0.787041 0.989984
+vt 0.787260 0.977857
+vt 0.789614 0.977900
+vt 0.784686 0.989941
+vt 0.784905 0.977815
+vt 0.836643 0.990368
+vt 0.834289 0.990837
+vt 0.831934 0.990368
+vt 0.829939 0.989034
+vt 0.828605 0.987037
+vt 0.828137 0.984682
+vt 0.828606 0.982328
+vt 0.829940 0.980331
+vt 0.831936 0.978998
+vt 0.834290 0.978530
+vt 0.836645 0.978998
+vt 0.838640 0.980332
+vt 0.839974 0.982329
+vt 0.840442 0.984684
+vt 0.839973 0.987039
+vt 0.838639 0.989035
+vt 0.818352 0.978588
+vt 0.820348 0.979922
+vt 0.821682 0.981918
+vt 0.822150 0.984273
+vt 0.821682 0.986628
+vt 0.820349 0.988624
+vt 0.818353 0.989958
+vt 0.815999 0.990427
+vt 0.813644 0.989959
+vt 0.811648 0.988625
+vt 0.810314 0.986629
+vt 0.809846 0.984274
+vt 0.810314 0.981920
+vt 0.811647 0.979923
+vt 0.813643 0.978589
+vt 0.815997 0.978120
+vt 0.151297 0.935241
+vt 0.147821 0.935147
+vt 0.147820 0.903545
+vt 0.151296 0.903639
+vt 0.142619 0.935085
+vt 0.142618 0.903483
+vt 0.136483 0.935063
+vt 0.136482 0.903461
+vt 0.130346 0.935085
+vt 0.130345 0.903483
+vt 0.125143 0.935148
+vt 0.125142 0.903546
+vt 0.121667 0.935242
+vt 0.121665 0.903640
+vt 0.276111 0.932810
+vt 0.269975 0.932921
+vt 0.269404 0.901319
+vt 0.275540 0.901208
+vt 0.263839 0.933032
+vt 0.263269 0.901430
+vt 0.258637 0.933126
+vt 0.258067 0.901524
+vt 0.255161 0.933188
+vt 0.254590 0.901586
+vt 0.083535 0.934845
+vt 0.077398 0.934867
+vt 0.077399 0.903265
+vt 0.083536 0.903243
+vt 0.071262 0.934844
+vt 0.071263 0.903242
+vt 0.066059 0.934781
+vt 0.066060 0.903180
+vt 0.062582 0.934687
+vt 0.062583 0.903085
+vt 0.205173 0.934503
+vt 0.199038 0.934392
+vt 0.199608 0.902790
+vt 0.205744 0.902901
+vt 0.192902 0.934281
+vt 0.193473 0.902679
+vt 0.416830 0.933796
+vt 0.410695 0.935015
+vt 0.404559 0.933794
+vt 0.399358 0.930317
+vt 0.395883 0.925114
+vt 0.394663 0.918978
+vt 0.395885 0.912841
+vt 0.399361 0.907639
+vt 0.404563 0.904164
+vt 0.410698 0.902944
+vt 0.416834 0.904165
+vt 0.422035 0.907642
+vt 0.425510 0.912845
+vt 0.426730 0.918981
+vt 0.425509 0.925118
+vt 0.422032 0.930320
+vt 0.279276 0.937997
+vt 0.283171 0.940599
+vt 0.285774 0.944494
+vt 0.286689 0.949089
+vt 0.285775 0.953684
+vt 0.283173 0.957580
+vt 0.279279 0.960184
+vt 0.274684 0.961098
+vt 0.270090 0.960185
+vt 0.266195 0.957582
+vt 0.263592 0.953687
+vt 0.262677 0.949092
+vt 0.263591 0.944497
+vt 0.266193 0.940601
+vt 0.270087 0.937998
+vt 0.274682 0.937083
+vt 0.341521 0.901687
+vt 0.346723 0.905162
+vt 0.343875 0.908011
+vt 0.339980 0.905408
+vt 0.350199 0.910364
+vt 0.346478 0.911906
+vt 0.351420 0.916501
+vt 0.347392 0.916501
+vt 0.350201 0.922637
+vt 0.346479 0.921096
+vt 0.346726 0.927840
+vt 0.343877 0.924992
+vt 0.341524 0.931317
+vt 0.339983 0.927595
+vt 0.335389 0.932538
+vt 0.335388 0.928510
+vt 0.329253 0.931318
+vt 0.330794 0.927597
+vt 0.324051 0.927843
+vt 0.326899 0.924994
+vt 0.320575 0.922641
+vt 0.324296 0.921099
+vt 0.319354 0.916504
+vt 0.323381 0.916504
+vt 0.320573 0.910368
+vt 0.324295 0.911909
+vt 0.324048 0.905165
+vt 0.326897 0.908013
+vt 0.329250 0.901688
+vt 0.330791 0.905410
+vt 0.335385 0.900467
+vt 0.335386 0.904495
+vt 0.497797 0.939029
+vt 0.497868 0.941631
+vt 0.496667 0.941631
+vt 0.496597 0.939029
+vt 0.497915 0.945526
+vt 0.496714 0.945526
+vt 0.497931 0.950121
+vt 0.496730 0.950121
+vt 0.497914 0.954716
+vt 0.496714 0.954716
+vt 0.497867 0.958612
+vt 0.496667 0.958612
+vt 0.497797 0.961216
+vt 0.496596 0.961216
+vt 0.926423 0.981229
+vt 0.926340 0.985823
+vt 0.925139 0.985801
+vt 0.925223 0.981207
+vt 0.926257 0.990417
+vt 0.925057 0.990396
+vt 0.926187 0.994312
+vt 0.924986 0.994291
+vt 0.926140 0.996915
+vt 0.924939 0.996894
+vt 0.892835 0.979605
+vt 0.892819 0.984200
+vt 0.891619 0.984200
+vt 0.891635 0.979605
+vt 0.892836 0.988796
+vt 0.891635 0.988796
+vt 0.892883 0.992691
+vt 0.891682 0.992691
+vt 0.892953 0.995295
+vt 0.891753 0.995295
+vt 0.540310 0.960965
+vt 0.540393 0.965559
+vt 0.539193 0.965581
+vt 0.539110 0.960986
+vt 0.540476 0.970153
+vt 0.539276 0.970175
+vt 0.973851 0.997927
+vt 0.972069 0.997879
+vt 0.972068 0.981672
+vt 0.973850 0.981721
+vt 0.969401 0.997847
+vt 0.969400 0.981640
+vt 0.966254 0.997836
+vt 0.966253 0.981629
+vt 0.963107 0.997847
+vt 0.963106 0.981640
+vt 0.960438 0.997880
+vt 0.960438 0.981673
+vt 0.958655 0.997928
+vt 0.958655 0.981721
+vt 0.954550 0.977620
+vt 0.951404 0.977677
+vt 0.951111 0.961470
+vt 0.954257 0.961414
+vt 0.948257 0.977734
+vt 0.947964 0.961527
+vt 0.945589 0.977782
+vt 0.945296 0.961576
+vt 0.943806 0.977814
+vt 0.943514 0.961608
+vt 0.952667 0.997997
+vt 0.949520 0.998008
+vt 0.949521 0.981801
+vt 0.952668 0.981790
+vt 0.946373 0.997997
+vt 0.946374 0.981790
+vt 0.943705 0.997964
+vt 0.943705 0.981757
+vt 0.941922 0.997916
+vt 0.941922 0.981709
+vt 0.966923 0.977734
+vt 0.963776 0.977677
+vt 0.964069 0.961471
+vt 0.967216 0.961527
+vt 0.960630 0.977621
+vt 0.960922 0.961414
+vt 0.909239 0.975085
+vt 0.906093 0.975710
+vt 0.902946 0.975084
+vt 0.900279 0.973301
+vt 0.898497 0.970633
+vt 0.897871 0.967485
+vt 0.898497 0.964338
+vt 0.900280 0.961671
+vt 0.902948 0.959888
+vt 0.906094 0.959263
+vt 0.909241 0.959889
+vt 0.911908 0.961672
+vt 0.913691 0.964340
+vt 0.914316 0.967487
+vt 0.913690 0.970635
+vt 0.911907 0.973302
+vt 0.932061 0.961490
+vt 0.934728 0.963272
+vt 0.936511 0.965940
+vt 0.937137 0.969087
+vt 0.936512 0.972234
+vt 0.934730 0.974903
+vt 0.932062 0.976686
+vt 0.928916 0.977312
+vt 0.925769 0.976686
+vt 0.923101 0.974904
+vt 0.921319 0.972236
+vt 0.920692 0.969089
+vt 0.921318 0.965942
+vt 0.923100 0.963274
+vt 0.925767 0.961491
+vt 0.928914 0.960864
+vt 0.656678 0.893931
+vt 0.628959 0.893930
+vt 0.628960 0.859695
+vt 0.656679 0.859696
+vt 0.420610 0.684744
+vt 0.420612 0.710092
+vt 0.392894 0.710095
+vt 0.392891 0.684748
+vt 0.120590 0.650294
+vt 0.070888 0.642571
+vt 0.081919 0.619623
+vt 0.117650 0.625175
+vt 0.109232 0.679349
+vt 0.073502 0.673797
+vt 0.069954 0.648583
+vt 0.119656 0.656306
+vt 0.420613 0.715885
+vt 0.420616 0.739137
+vt 0.392897 0.739141
+vt 0.392894 0.715888
+vt 0.731018 0.711649
+vt 0.703300 0.711645
+vt 0.703303 0.688451
+vt 0.731022 0.688454
+vt 0.731015 0.742886
+vt 0.703296 0.742883
+vt 0.703299 0.717400
+vt 0.731018 0.717403
+vt 0.919339 0.922427
+vt 0.947057 0.922426
+vt 0.947058 0.956662
+vt 0.919339 0.956663
+vt 0.376125 0.617488
+vt 0.386549 0.640531
+vt 0.336847 0.648254
+vt 0.340394 0.623040
+vt 0.387483 0.646543
+vt 0.384543 0.671662
+vt 0.348812 0.677214
+vt 0.337781 0.654266
+vt 0.659721 0.859442
+vt 0.659720 0.895173
+vt 0.656679 0.856336
+vt 0.628960 0.856335
+vt 0.389849 0.684377
+vt 0.389852 0.709497
+vt 0.389852 0.715509
+vt 0.389855 0.738551
+vt 0.656678 0.898255
+vt 0.628959 0.898254
+vt 0.078838 0.619012
+vt 0.067689 0.642206
+vt 0.066794 0.647960
+vt 0.070380 0.673444
+vt 0.073810 0.676923
+vt 0.108045 0.682243
+vt 0.731015 0.746366
+vt 0.703296 0.746363
+vt 0.950100 0.956969
+vt 0.950099 0.921239
+vt 0.700254 0.743236
+vt 0.700257 0.718022
+vt 0.700258 0.712010
+vt 0.700261 0.689062
+vt 0.625917 0.895172
+vt 0.625918 0.859441
+vt 0.423652 0.684373
+vt 0.423655 0.709493
+vt 0.423655 0.715505
+vt 0.423658 0.738548
+vt 0.919338 0.918168
+vt 0.947057 0.918167
+vt 0.112305 0.679938
+vt 0.004985 0.898587
+vt 0.004986 0.891358
+vt 0.038886 0.891362
+vt 0.038886 0.898591
+vt 0.004987 0.881669
+vt 0.038887 0.881673
+vt 0.004988 0.870994
+vt 0.038888 0.870998
+vt 0.004989 0.860960
+vt 0.038890 0.860964
+vt 0.004990 0.853094
+vt 0.038891 0.853098
+vt 0.930203 0.877328
+vt 0.939892 0.877329
+vt 0.939891 0.911230
+vt 0.930201 0.911229
+vt 0.950566 0.877329
+vt 0.950565 0.911230
+vt 0.960600 0.877329
+vt 0.960599 0.911230
+vt 0.968467 0.877329
+vt 0.968465 0.911229
+vt 0.793273 0.877252
+vt 0.802963 0.877251
+vt 0.802966 0.911152
+vt 0.793277 0.911153
+vt 0.813637 0.877250
+vt 0.813641 0.911151
+vt 0.823671 0.877249
+vt 0.823675 0.911149
+vt 0.831537 0.877248
+vt 0.831541 0.911148
+vt 0.922824 0.911229
+vt 0.913135 0.911230
+vt 0.913134 0.877329
+vt 0.922823 0.877328
+vt 0.902461 0.911230
+vt 0.902459 0.877329
+vt 0.892427 0.911230
+vt 0.892425 0.877329
+vt 0.374851 0.800190
+vt 0.384316 0.800590
+vt 0.392907 0.804581
+vt 0.399318 0.811557
+vt 0.402571 0.820454
+vt 0.402171 0.829919
+vt 0.398179 0.838511
+vt 0.391204 0.844921
+vt 0.382306 0.848174
+vt 0.372841 0.847774
+vt 0.364250 0.843783
+vt 0.357840 0.836807
+vt 0.354587 0.827910
+vt 0.354986 0.818445
+vt 0.358978 0.809853
+vt 0.365953 0.803443
+vt 0.305007 0.838657
+vt 0.301016 0.830065
+vt 0.300616 0.820600
+vt 0.303869 0.811703
+vt 0.310279 0.804727
+vt 0.318871 0.800736
+vt 0.328336 0.800336
+vt 0.337233 0.803589
+vt 0.344209 0.809999
+vt 0.348200 0.818591
+vt 0.348600 0.828056
+vt 0.345347 0.836953
+vt 0.338937 0.843929
+vt 0.330345 0.847920
+vt 0.320880 0.848320
+vt 0.311983 0.845067
+vt 0.894040 0.914272
+vt 0.902937 0.914272
+vt 0.887064 0.914271
+vt 0.884560 0.911229
+vt 0.001944 0.889527
+vt 0.001945 0.880935
+vt 0.001946 0.871470
+vt 0.001947 0.862573
+vt 0.001948 0.855597
+vt 0.932033 0.874286
+vt 0.940625 0.874287
+vt 0.950090 0.874287
+vt 0.958987 0.874287
+vt 0.965963 0.874286
+vt 0.795104 0.874210
+vt 0.803695 0.874209
+vt 0.813160 0.874208
+vt 0.822058 0.874207
+vt 0.829033 0.874206
+vt 0.920994 0.914271
+vt 0.912402 0.914271
+vt 0.894038 0.874287
+vt 0.884559 0.877329
+vt 0.887062 0.874286
+vt 0.902935 0.874287
+vt 0.041929 0.889532
+vt 0.041930 0.880940
+vt 0.041931 0.871475
+vt 0.041932 0.862577
+vt 0.041933 0.855602
+vt 0.932032 0.914271
+vt 0.940623 0.914271
+vt 0.950088 0.914272
+vt 0.958986 0.914272
+vt 0.965961 0.914271
+vt 0.795108 0.914195
+vt 0.803700 0.914194
+vt 0.813165 0.914193
+vt 0.822062 0.914192
+vt 0.829038 0.914191
+vt 0.920992 0.874286
+vt 0.912400 0.874286
+vt 0.693758 0.856775
+vt 0.692281 0.868839
+vt 0.665854 0.867563
+vt 0.667300 0.856335
+vt 0.958656 0.935839
+vt 0.961134 0.933066
+vt 0.969116 0.943181
+vt 0.958641 0.952477
+vt 0.305615 0.524324
+vt 0.296907 0.535440
+vt 0.284983 0.526765
+vt 0.287210 0.523632
+vt 0.557780 0.556084
+vt 0.559883 0.553611
+vt 0.580064 0.550333
+vt 0.581133 0.552206
+vt 0.970271 0.945455
+vt 0.957331 0.957519
+vt 0.309306 0.524587
+vt 0.298078 0.537828
+vt 0.957973 0.932641
+vt 0.959845 0.931465
+vt 0.552670 0.557558
+vt 0.553946 0.554424
+vt 0.691216 0.884351
+vt 0.671242 0.884697
+vt 0.961950 0.927535
+vt 0.972363 0.929909
+vt 0.281114 0.540752
+vt 0.278407 0.529758
+vt 0.118062 0.959318
+vt 0.113982 0.957190
+vt 0.114456 0.939500
+vt 0.119108 0.939137
+vt 0.695283 0.871113
+vt 0.693595 0.884385
+vt 0.280944 0.542391
+vt 0.960480 0.926814
+vt 0.121278 0.965255
+vt 0.114702 0.961204
+vt 0.689459 0.893870
+vt 0.676048 0.895238
+vt 0.961555 0.920682
+vt 0.971353 0.920571
+vt 0.270255 0.541509
+vt 0.270459 0.531088
+vt 0.107013 0.953376
+vt 0.108196 0.941498
+vt 0.973063 0.920424
+vt 0.973851 0.929943
+vt 0.270403 0.543015
+vt 0.960228 0.920554
+vt 0.106754 0.956078
+vt 0.688004 0.896127
+vt 0.677999 0.897148
+vt 0.962249 0.918358
+vt 0.969325 0.918277
+vt 0.268383 0.539698
+vt 0.268535 0.532156
+vt 0.105023 0.952094
+vt 0.105906 0.943233
+vt 0.970601 0.918167
+vt 0.864573 0.993369
+vt 0.866766 0.991417
+vt 0.867890 0.992564
+vt 0.866079 0.994905
+vt 0.961258 0.918263
+vt 0.104830 0.954110
+vt 0.865977 0.981413
+vt 0.871154 0.985893
+vt 0.874329 0.979605
+vt 0.867252 0.980210
+vt 0.875432 0.991609
+vt 0.876265 0.989593
+vt 0.875319 0.980732
+vt 0.288189 0.493516
+vt 0.307937 0.493519
+vt 0.307935 0.518354
+vt 0.288186 0.518352
+vt 0.581775 0.558032
+vt 0.585517 0.582113
+vt 0.553088 0.587152
+vt 0.553598 0.562410
+vt 0.586451 0.588125
+vt 0.590193 0.612206
+vt 0.562016 0.616584
+vt 0.554022 0.593164
+vt 0.849402 0.948013
+vt 0.856762 0.928248
+vt 0.869644 0.941112
+vt 0.868345 0.948012
+vt 0.861682 0.924614
+vt 0.876554 0.921636
+vt 0.876555 0.935370
+vt 0.873649 0.936563
+vt 0.592729 0.556330
+vt 0.601146 0.610504
+vt 0.596154 0.611280
+vt 0.591945 0.584193
+vt 0.587737 0.557106
+vt 0.317887 0.674295
+vt 0.316835 0.674362
+vt 0.316841 0.620188
+vt 0.317893 0.620121
+vt 0.303177 0.563257
+vt 0.303178 0.549522
+vt 0.318049 0.552501
+vt 0.306083 0.564450
+vt 0.322970 0.556135
+vt 0.330330 0.575900
+vt 0.311386 0.575899
+vt 0.310087 0.568999
+vt 0.331648 0.609605
+vt 0.311900 0.609604
+vt 0.311900 0.581911
+vt 0.331649 0.581912
+vt 0.542407 0.584773
+vt 0.515320 0.580564
+vt 0.488233 0.576355
+vt 0.491744 0.553751
+vt 0.545918 0.562169
+vt 0.362800 0.681109
+vt 0.380874 0.681669
+vt 0.380880 0.735843
+vt 0.362806 0.735283
+vt 0.580875 0.690511
+vt 0.594280 0.688429
+vt 0.602697 0.742603
+vt 0.589292 0.744685
+vt 0.511409 0.585924
+vt 0.506370 0.618353
+vt 0.482950 0.610359
+vt 0.487328 0.582182
+vt 0.541502 0.590600
+vt 0.537124 0.618777
+vt 0.512382 0.619287
+vt 0.517421 0.586858
+vt 0.307938 0.487598
+vt 0.288189 0.487596
+vt 0.288192 0.464087
+vt 0.307941 0.464089
+vt 0.285144 0.518779
+vt 0.285147 0.494037
+vt 0.956087 0.936325
+vt 0.956089 0.955269
+vt 0.584139 0.551522
+vt 0.587320 0.554092
+vt 0.594221 0.553019
+vt 0.603572 0.613205
+vt 0.596672 0.614278
+vt 0.605255 0.609866
+vt 0.596838 0.555692
+vt 0.319980 0.617488
+vt 0.317075 0.617673
+vt 0.875735 0.938495
+vt 0.876787 0.938063
+vt 0.854508 0.925127
+vt 0.846091 0.947731
+vt 0.546449 0.558750
+vt 0.492275 0.550333
+vt 0.858540 0.921709
+vt 0.876614 0.918089
+vt 0.325223 0.553948
+vt 0.333640 0.576552
+vt 0.321191 0.550530
+vt 0.303117 0.546910
+vt 0.300135 0.562724
+vt 0.300135 0.549319
+vt 0.314032 0.620834
+vt 0.314026 0.675008
+vt 0.879596 0.933903
+vt 0.879596 0.920498
+vt 0.383862 0.735469
+vt 0.383855 0.681295
+vt 0.334691 0.582379
+vt 0.334690 0.610556
+vt 0.307942 0.461677
+vt 0.288193 0.461675
+vt 0.310983 0.464608
+vt 0.310980 0.488028
+vt 0.310980 0.494040
+vt 0.310977 0.518782
+vt 0.542928 0.617791
+vt 0.546683 0.591334
+vt 0.285147 0.488025
+vt 0.285150 0.464605
+vt 0.562967 0.619515
+vt 0.590660 0.615212
+vt 0.283511 0.525105
+vt 0.608121 0.612499
+vt 0.598769 0.552313
+vt 0.302944 0.566884
+vt 0.317067 0.677859
+vt 0.331648 0.613593
+vt 0.558978 0.617103
+vt 0.847152 0.954292
+vt 0.845040 0.953558
+vt 0.852193 0.951388
+vt 0.249698 0.363080
+vt 0.221979 0.363078
+vt 0.221987 0.279552
+vt 0.249706 0.279553
+vt 0.221987 0.274817
+vt 0.221986 0.257969
+vt 0.249705 0.257970
+vt 0.249706 0.274818
+vt 0.418382 0.153813
+vt 0.468017 0.252588
+vt 0.442206 0.255499
+vt 0.399505 0.170523
+vt 0.448492 0.145907
+vt 0.491193 0.230883
+vt 0.473453 0.249856
+vt 0.423818 0.151081
+vt 0.375977 0.766107
+vt 0.375980 0.790986
+vt 0.348261 0.790989
+vt 0.348258 0.766111
+vt 0.340983 0.772419
+vt 0.313264 0.772416
+vt 0.313267 0.746207
+vt 0.340986 0.746210
+vt 0.340981 0.795533
+vt 0.313262 0.795530
+vt 0.313264 0.777516
+vt 0.340983 0.777519
+vt 0.217186 0.251162
+vt 0.266821 0.152388
+vt 0.285698 0.169098
+vt 0.242997 0.254074
+vt 0.194010 0.229458
+vt 0.236711 0.144482
+vt 0.261385 0.149656
+vt 0.211750 0.248431
+vt 0.368855 0.368644
+vt 0.368863 0.452170
+vt 0.341144 0.452171
+vt 0.341136 0.368645
+vt 0.252748 0.277561
+vt 0.252740 0.362537
+vt 0.398013 0.167780
+vt 0.417047 0.150932
+vt 0.348257 0.760855
+vt 0.375976 0.760852
+vt 0.422302 0.148291
+vt 0.447181 0.143073
+vt 0.340987 0.741821
+vt 0.313268 0.741818
+vt 0.443462 0.258419
+vt 0.469671 0.255462
+vt 0.474772 0.252899
+vt 0.492785 0.233634
+vt 0.310225 0.744950
+vt 0.310222 0.770760
+vt 0.218937 0.362536
+vt 0.218945 0.277560
+vt 0.210431 0.251474
+vt 0.192417 0.232209
+vt 0.375975 0.741818
+vt 0.379017 0.743309
+vt 0.379019 0.762186
+vt 0.379019 0.767623
+vt 0.379022 0.792296
+vt 0.451524 0.145167
+vt 0.493497 0.228693
+vt 0.348261 0.795333
+vt 0.375980 0.795329
+vt 0.233678 0.143742
+vt 0.191706 0.227268
+vt 0.368863 0.457110
+vt 0.341144 0.457112
+vt 0.439073 0.256041
+vt 0.310222 0.776197
+vt 0.269194 0.870850
+vt 0.269194 0.881453
+vt 0.235293 0.881454
+vt 0.235293 0.870852
+vt 0.269194 0.890745
+vt 0.235293 0.890746
+vt 0.269193 0.897312
+vt 0.235292 0.897314
+vt 0.140203 0.891078
+vt 0.140204 0.880780
+vt 0.174104 0.880784
+vt 0.174103 0.891082
+vt 0.140205 0.870177
+vt 0.174106 0.870181
+vt 0.140206 0.860885
+vt 0.174107 0.860889
+vt 0.140207 0.854318
+vt 0.174108 0.854322
+vt 0.187748 0.890356
+vt 0.187749 0.880057
+vt 0.221649 0.880058
+vt 0.221649 0.890357
+vt 0.187749 0.869455
+vt 0.221650 0.869456
+vt 0.187749 0.860162
+vt 0.221649 0.860164
+vt 0.187748 0.853595
+vt 0.221649 0.853597
+vt 0.847343 0.877251
+vt 0.857642 0.877250
+vt 0.857646 0.911151
+vt 0.847347 0.911152
+vt 0.868244 0.877249
+vt 0.868248 0.911150
+vt 0.877536 0.877248
+vt 0.877540 0.911148
+vt 0.269192 0.852125
+vt 0.269193 0.860552
+vt 0.235292 0.860553
+vt 0.235291 0.852126
+vt 0.851615 0.824401
+vt 0.859087 0.830224
+vt 0.863762 0.838464
+vt 0.864928 0.847865
+vt 0.862408 0.856997
+vt 0.856584 0.864470
+vt 0.848345 0.869145
+vt 0.838943 0.870311
+vt 0.829811 0.867790
+vt 0.822339 0.861967
+vt 0.817664 0.853727
+vt 0.816498 0.844326
+vt 0.819018 0.835194
+vt 0.824841 0.827721
+vt 0.833081 0.823046
+vt 0.842482 0.821880
+vt 0.887498 0.869137
+vt 0.879259 0.864461
+vt 0.873435 0.856989
+vt 0.870915 0.847857
+vt 0.872081 0.838455
+vt 0.876756 0.830216
+vt 0.884228 0.824393
+vt 0.893360 0.821872
+vt 0.902762 0.823038
+vt 0.911001 0.827713
+vt 0.916825 0.835186
+vt 0.919345 0.844318
+vt 0.918179 0.853719
+vt 0.913504 0.861959
+vt 0.906032 0.867782
+vt 0.896900 0.870302
+vt 0.272236 0.871076
+vt 0.272235 0.861944
+vt 0.272236 0.880478
+vt 0.272236 0.888717
+vt 0.140202 0.899505
+vt 0.137160 0.897158
+vt 0.137161 0.889685
+vt 0.137162 0.880553
+vt 0.137163 0.871152
+vt 0.137164 0.862912
+vt 0.187747 0.898783
+vt 0.184705 0.896435
+vt 0.184706 0.888963
+vt 0.184706 0.879831
+vt 0.184706 0.870430
+vt 0.184706 0.862190
+vt 0.838916 0.877252
+vt 0.841263 0.874210
+vt 0.848735 0.874209
+vt 0.857867 0.874208
+vt 0.867269 0.874207
+vt 0.875508 0.874206
+vt 0.272234 0.854472
+vt 0.232251 0.871078
+vt 0.232251 0.880479
+vt 0.232250 0.861946
+vt 0.232251 0.888719
+vt 0.177145 0.897162
+vt 0.174103 0.899509
+vt 0.177146 0.889690
+vt 0.177147 0.880558
+vt 0.177148 0.871157
+vt 0.177149 0.862917
+vt 0.224690 0.896437
+vt 0.221648 0.898784
+vt 0.224690 0.888965
+vt 0.224691 0.879833
+vt 0.224691 0.870431
+vt 0.224691 0.862191
+vt 0.841268 0.914194
+vt 0.838920 0.911153
+vt 0.848740 0.914194
+vt 0.857872 0.914193
+vt 0.867273 0.914192
+vt 0.875513 0.914191
+vt 0.232249 0.854473
+vt 0.233990 0.796443
+vt 0.223387 0.796443
+vt 0.223385 0.745515
+vt 0.233988 0.745515
+vt 0.214095 0.796443
+vt 0.214093 0.745515
+vt 0.207528 0.796442
+vt 0.207526 0.745514
+vt 0.192939 0.796046
+vt 0.182640 0.796045
+vt 0.182646 0.745117
+vt 0.192944 0.745118
+vt 0.172037 0.796044
+vt 0.172043 0.745116
+vt 0.162745 0.796042
+vt 0.162751 0.745114
+vt 0.156178 0.796041
+vt 0.156184 0.745113
+vt 0.267303 0.742471
+vt 0.277602 0.742472
+vt 0.277600 0.793399
+vt 0.267301 0.793399
+vt 0.288204 0.742472
+vt 0.288202 0.793400
+vt 0.297496 0.742472
+vt 0.297494 0.793399
+vt 0.304063 0.742471
+vt 0.304061 0.793399
+vt 0.118956 0.744071
+vt 0.129255 0.744070
+vt 0.129261 0.794997
+vt 0.118962 0.794998
+vt 0.139857 0.744068
+vt 0.139863 0.794996
+vt 0.149150 0.744067
+vt 0.149156 0.794995
+vt 0.252715 0.796441
+vt 0.244289 0.796442
+vt 0.244287 0.745514
+vt 0.252713 0.745513
+vt 0.241492 0.709272
+vt 0.244334 0.698973
+vt 0.250902 0.690546
+vt 0.260194 0.685274
+vt 0.270796 0.683959
+vt 0.281095 0.686801
+vt 0.289522 0.693368
+vt 0.294794 0.702661
+vt 0.296109 0.713263
+vt 0.293267 0.723562
+vt 0.286700 0.731989
+vt 0.277407 0.737261
+vt 0.266805 0.738576
+vt 0.256506 0.735734
+vt 0.248079 0.729166
+vt 0.242807 0.719874
+vt 0.778664 0.869145
+vt 0.770424 0.864470
+vt 0.764601 0.856997
+vt 0.762080 0.847865
+vt 0.763246 0.838464
+vt 0.767922 0.830224
+vt 0.775394 0.824401
+vt 0.784526 0.821880
+vt 0.793927 0.823046
+vt 0.802167 0.827721
+vt 0.807990 0.835194
+vt 0.810511 0.844326
+vt 0.809345 0.853727
+vt 0.804670 0.861967
+vt 0.797197 0.867790
+vt 0.788065 0.870311
+vt 0.233762 0.742472
+vt 0.224360 0.742473
+vt 0.242894 0.742472
+vt 0.216121 0.742472
+vt 0.199025 0.742076
+vt 0.201371 0.745119
+vt 0.191552 0.742076
+vt 0.182420 0.742075
+vt 0.173019 0.742074
+vt 0.164779 0.742073
+vt 0.261221 0.796439
+vt 0.258874 0.793397
+vt 0.268693 0.796440
+vt 0.277826 0.796441
+vt 0.287227 0.796441
+vt 0.295467 0.796441
+vt 0.112883 0.798041
+vt 0.110535 0.794999
+vt 0.120355 0.798040
+vt 0.129487 0.798039
+vt 0.138889 0.798038
+vt 0.147128 0.798037
+vt 0.250366 0.742471
+vt 0.221089 0.502488
+vt 0.232541 0.533243
+vt 0.208202 0.537714
+vt 0.198251 0.510992
+vt 0.259579 0.518583
+vt 0.238243 0.531120
+vt 0.226791 0.500365
+vt 0.249629 0.491861
+vt 0.520102 0.930563
+vt 0.518796 0.924020
+vt 0.531645 0.911805
+vt 0.539021 0.930536
+vt 0.511886 0.918587
+vt 0.511869 0.905561
+vt 0.526724 0.908362
+vt 0.514785 0.919712
+vt 0.188207 0.484042
+vt 0.239585 0.464911
+vt 0.247571 0.486336
+vt 0.221882 0.495901
+vt 0.196193 0.505467
+vt 0.865558 0.508598
+vt 0.885281 0.508607
+vt 0.885264 0.533039
+vt 0.865541 0.533031
+vt 0.244927 0.643708
+vt 0.226008 0.643680
+vt 0.233384 0.624949
+vt 0.246234 0.637165
+vt 0.238305 0.621507
+vt 0.253161 0.618705
+vt 0.253144 0.631731
+vt 0.250244 0.632857
+vt 0.244406 0.649409
+vt 0.244372 0.675672
+vt 0.224649 0.675643
+vt 0.224683 0.649380
+vt 0.640221 0.690056
+vt 0.640171 0.741434
+vt 0.639124 0.741282
+vt 0.639174 0.689904
+vt 0.717296 0.616354
+vt 0.712563 0.614591
+vt 0.722129 0.588902
+vt 0.731694 0.563213
+vt 0.736427 0.564976
+vt 0.611713 0.744802
+vt 0.611663 0.693425
+vt 0.629717 0.692139
+vt 0.629768 0.743517
+vt 0.574888 0.691126
+vt 0.555757 0.742503
+vt 0.543044 0.737769
+vt 0.562175 0.686392
+vt 0.885314 0.481574
+vt 0.885287 0.502992
+vt 0.865564 0.502984
+vt 0.865591 0.481566
+vt 0.726041 0.561108
+vt 0.717537 0.583946
+vt 0.686782 0.572494
+vt 0.699319 0.551157
+vt 0.715414 0.589647
+vt 0.706910 0.612485
+vt 0.680188 0.602535
+vt 0.684659 0.578195
+vt 0.193320 0.512757
+vt 0.202315 0.537920
+vt 0.535946 0.934359
+vt 0.520472 0.934196
+vt 0.193275 0.506358
+vt 0.186294 0.487627
+vt 0.868490 0.539058
+vt 0.885393 0.538638
+vt 0.209232 0.540622
+vt 0.233664 0.536134
+vt 0.248954 0.640089
+vt 0.248009 0.644822
+vt 0.252324 0.636196
+vt 0.253370 0.635790
+vt 0.635804 0.688451
+vt 0.635754 0.739829
+vt 0.516070 0.924821
+vt 0.517015 0.929554
+vt 0.637039 0.744979
+vt 0.639939 0.745401
+vt 0.529856 0.904984
+vt 0.511801 0.901579
+vt 0.186998 0.480806
+vt 0.238376 0.461675
+vt 0.243373 0.466373
+vt 0.250355 0.485104
+vt 0.626580 0.688429
+vt 0.611724 0.689486
+vt 0.256184 0.631848
+vt 0.256201 0.619135
+vt 0.643035 0.691527
+vt 0.642985 0.742905
+vt 0.508839 0.916580
+vt 0.508823 0.903867
+vt 0.608734 0.743953
+vt 0.608684 0.692575
+vt 0.252478 0.490803
+vt 0.262258 0.517067
+vt 0.224642 0.680035
+vt 0.244365 0.680064
+vt 0.260697 0.521459
+vt 0.239279 0.534043
+vt 0.247411 0.677197
+vt 0.247446 0.650475
+vt 0.888360 0.482694
+vt 0.888333 0.504031
+vt 0.888327 0.509732
+vt 0.888310 0.534072
+vt 0.705111 0.618065
+vt 0.683014 0.609574
+vt 0.191452 0.510181
+vt 0.203205 0.540958
+vt 0.512700 0.920928
+vt 0.533891 0.908220
+vt 0.231132 0.623488
+vt 0.235168 0.620251
+vt 0.711554 0.617458
+vt 0.707922 0.619336
+vt 0.888390 0.541111
+vt 0.189591 0.541855
+vt 0.180901 0.516674
+vt 0.649630 0.917623
+vt 0.649568 0.902149
+vt 0.659587 0.910848
+vt 0.651869 0.920973
+vt 0.887944 0.541978
+vt 0.875977 0.549725
+vt 0.703712 0.619693
+vt 0.684591 0.612426
+vt 0.181432 0.513524
+vt 0.192538 0.544341
+vt 0.706477 0.621575
+vt 0.678307 0.607101
+vt 0.678971 0.610441
+vt 0.027124 0.965410
+vt 0.001944 0.966946
+vt 0.006136 0.949763
+vt 0.025209 0.949912
+vt 0.662411 0.924100
+vt 0.652424 0.926491
+vt 0.894558 0.545715
+vt 0.891826 0.556131
+vt 0.212702 0.957518
+vt 0.211855 0.938398
+vt 0.216502 0.938927
+vt 0.216802 0.955753
+vt 0.030274 0.963106
+vt 0.027837 0.949853
+vt 0.874835 0.552672
+vt 0.892018 0.558200
+vt 0.649987 0.922544
+vt 0.650530 0.927191
+vt 0.209428 0.963138
+vt 0.216042 0.959836
+vt 0.010615 0.939175
+vt 0.023552 0.940410
+vt 0.660902 0.933413
+vt 0.651476 0.933317
+vt 0.902555 0.548037
+vt 0.902739 0.557978
+vt 0.222742 0.940894
+vt 0.223808 0.952287
+vt 0.025477 0.940541
+vt 0.902606 0.559763
+vt 0.649873 0.933431
+vt 0.224039 0.955161
+vt 0.012948 0.937244
+vt 0.022599 0.938166
+vt 0.658538 0.935690
+vt 0.651727 0.935619
+vt 0.904499 0.549476
+vt 0.904636 0.556672
+vt 0.225015 0.942824
+vt 0.225810 0.951323
+vt 0.730281 0.955100
+vt 0.731632 0.957024
+vt 0.728925 0.957978
+vt 0.727917 0.956542
+vt 0.727899 0.969962
+vt 0.726115 0.971166
+vt 0.724809 0.968527
+vt 0.726140 0.967629
+vt 0.650530 0.935704
+vt 0.225982 0.953467
+vt 0.722953 0.961330
+vt 0.721106 0.954527
+vt 0.717613 0.966075
+vt 0.717202 0.963932
+vt 0.719909 0.955433
+vt 0.460452 0.738244
+vt 0.432733 0.738285
+vt 0.432691 0.705817
+vt 0.460410 0.705776
+vt 0.432684 0.701181
+vt 0.432653 0.686205
+vt 0.460372 0.686165
+vt 0.460402 0.701140
+vt 0.454794 0.570911
+vt 0.407658 0.588463
+vt 0.406067 0.563051
+vt 0.439953 0.550433
+vt 0.459084 0.601811
+vt 0.425198 0.614429
+vt 0.409781 0.594165
+vt 0.456917 0.576613
+vt 0.472531 0.715696
+vt 0.472517 0.690269
+vt 0.500236 0.690257
+vt 0.500250 0.715684
+vt 0.506256 0.712330
+vt 0.533975 0.712342
+vt 0.533961 0.738026
+vt 0.506242 0.738014
+vt 0.506293 0.686392
+vt 0.534011 0.686404
+vt 0.533980 0.706885
+vt 0.506261 0.706873
+vt 0.242339 0.576780
+vt 0.289475 0.594332
+vt 0.274634 0.614810
+vt 0.240748 0.602192
+vt 0.259879 0.550815
+vt 0.293765 0.563433
+vt 0.291598 0.588630
+vt 0.244462 0.571078
+vt 0.913351 0.918207
+vt 0.913309 0.950675
+vt 0.885590 0.950635
+vt 0.885632 0.918167
+vt 0.463448 0.704027
+vt 0.463492 0.737914
+vt 0.442840 0.549237
+vt 0.457816 0.569902
+vt 0.500256 0.721178
+vt 0.472537 0.721190
+vt 0.459861 0.575396
+vt 0.462048 0.600822
+vt 0.460454 0.740905
+vt 0.432735 0.740946
+vt 0.403075 0.564023
+vt 0.404683 0.589707
+vt 0.406715 0.595164
+vt 0.422297 0.615645
+vt 0.537007 0.739000
+vt 0.537021 0.713588
+vt 0.429689 0.737963
+vt 0.429645 0.704076
+vt 0.537026 0.707887
+vt 0.537057 0.687623
+vt 0.472567 0.741854
+vt 0.469529 0.740661
+vt 0.469499 0.720183
+vt 0.469493 0.714481
+vt 0.469479 0.689283
+vt 0.459458 0.604915
+vt 0.426990 0.617005
+vt 0.500238 0.686165
+vt 0.472519 0.686177
+vt 0.294148 0.560326
+vt 0.261680 0.548236
+vt 0.913302 0.955368
+vt 0.885583 0.955328
+vt 0.405736 0.559925
+vt 0.533963 0.742124
+vt 0.256987 0.549596
+vt 0.621050 0.774640
+vt 0.621034 0.785036
+vt 0.587133 0.784986
+vt 0.587149 0.774590
+vt 0.621018 0.793698
+vt 0.587117 0.793649
+vt 0.621006 0.799308
+vt 0.587105 0.799258
+vt 0.394712 0.861176
+vt 0.394705 0.871723
+vt 0.360805 0.871708
+vt 0.360812 0.861161
+vt 0.394704 0.882119
+vt 0.360804 0.882104
+vt 0.394710 0.890781
+vt 0.360809 0.890767
+vt 0.394721 0.896391
+vt 0.360820 0.896376
+vt 0.313308 0.887479
+vt 0.313293 0.876932
+vt 0.347194 0.876883
+vt 0.347208 0.887430
+vt 0.313277 0.866536
+vt 0.347178 0.866487
+vt 0.313262 0.857874
+vt 0.347162 0.857825
+vt 0.313250 0.852264
+vt 0.347150 0.852215
+vt 0.777251 0.911163
+vt 0.766704 0.911170
+vt 0.766689 0.877269
+vt 0.777236 0.877262
+vt 0.756308 0.911171
+vt 0.756293 0.877270
+vt 0.621081 0.748747
+vt 0.621075 0.755000
+vt 0.587175 0.754951
+vt 0.587180 0.748697
+vt 0.621064 0.764093
+vt 0.587164 0.764043
+vt 0.761349 0.769547
+vt 0.769412 0.774522
+vt 0.774957 0.782203
+vt 0.777141 0.791421
+vt 0.775630 0.800774
+vt 0.770656 0.808836
+vt 0.762975 0.814381
+vt 0.753757 0.816565
+vt 0.744404 0.815055
+vt 0.736342 0.810080
+vt 0.730797 0.802399
+vt 0.728613 0.793181
+vt 0.730123 0.783828
+vt 0.735097 0.775766
+vt 0.742779 0.770221
+vt 0.751997 0.768037
+vt 0.797930 0.815802
+vt 0.790249 0.810257
+vt 0.785275 0.802194
+vt 0.783764 0.792842
+vt 0.785948 0.783623
+vt 0.791493 0.775942
+vt 0.799556 0.770968
+vt 0.808908 0.769458
+vt 0.818126 0.771641
+vt 0.825808 0.777186
+vt 0.830782 0.785249
+vt 0.832292 0.794601
+vt 0.830108 0.803820
+vt 0.824563 0.811501
+vt 0.816501 0.816475
+vt 0.807149 0.817985
+vt 0.624091 0.774532
+vt 0.624104 0.765179
+vt 0.624076 0.783750
+vt 0.624063 0.791431
+vt 0.394724 0.852083
+vt 0.397769 0.854197
+vt 0.397758 0.862260
+vt 0.397752 0.871612
+vt 0.397751 0.880830
+vt 0.397756 0.888511
+vt 0.313319 0.896572
+vt 0.310273 0.894464
+vt 0.310263 0.886401
+vt 0.310250 0.877049
+vt 0.310236 0.867831
+vt 0.310222 0.860150
+vt 0.786343 0.911151
+vt 0.784232 0.914190
+vt 0.776170 0.914201
+vt 0.766817 0.914207
+vt 0.757599 0.914208
+vt 0.749918 0.914203
+vt 0.747645 0.911165
+vt 0.624113 0.757117
+vt 0.584106 0.774473
+vt 0.584091 0.783692
+vt 0.584119 0.765121
+vt 0.584078 0.791373
+vt 0.357784 0.854180
+vt 0.360824 0.852069
+vt 0.357773 0.862242
+vt 0.357767 0.871595
+vt 0.357766 0.880813
+vt 0.357771 0.888494
+vt 0.350257 0.894406
+vt 0.347219 0.896522
+vt 0.350248 0.886343
+vt 0.350235 0.876991
+vt 0.350220 0.867773
+vt 0.350207 0.860092
+vt 0.784215 0.874206
+vt 0.786329 0.877250
+vt 0.776152 0.874216
+vt 0.766800 0.874223
+vt 0.757582 0.874223
+vt 0.747631 0.877265
+vt 0.749901 0.874219
+vt 0.584128 0.757059
+vt 0.084491 0.231533
+vt 0.056772 0.231574
+vt 0.056631 0.146748
+vt 0.084350 0.146708
+vt 0.204728 0.733904
+vt 0.204723 0.708871
+vt 0.232442 0.708859
+vt 0.232446 0.733892
+vt 0.356473 0.147456
+vt 0.310022 0.247767
+vt 0.291685 0.229371
+vt 0.331647 0.143073
+vt 0.381396 0.166110
+vt 0.341434 0.252408
+vt 0.315543 0.250324
+vt 0.361994 0.150013
+vt 0.204724 0.703534
+vt 0.204740 0.683971
+vt 0.232458 0.683959
+vt 0.232443 0.703522
+vt 0.084517 0.255128
+vt 0.056798 0.255168
+vt 0.056779 0.236489
+vt 0.084497 0.236448
+vt 0.808288 0.922400
+vt 0.836007 0.922412
+vt 0.835998 0.948702
+vt 0.808280 0.948690
+vt 0.167381 0.251402
+vt 0.120931 0.151091
+vt 0.145757 0.146708
+vt 0.185719 0.233006
+vt 0.135970 0.256043
+vt 0.096008 0.169745
+vt 0.115410 0.153647
+vt 0.161860 0.253958
+vt 0.461607 0.373380
+vt 0.461466 0.458206
+vt 0.433747 0.458165
+vt 0.433888 0.373340
+vt 0.087392 0.147345
+vt 0.087535 0.233643
+vt 0.232452 0.738166
+vt 0.204733 0.738178
+vt 0.235493 0.735109
+vt 0.235489 0.710283
+vt 0.235490 0.704762
+vt 0.235505 0.685360
+vt 0.087554 0.252039
+vt 0.808281 0.953870
+vt 0.836000 0.953882
+vt 0.313980 0.253254
+vt 0.340270 0.255371
+vt 0.053732 0.233693
+vt 0.053751 0.252089
+vt 0.053589 0.147395
+vt 0.839045 0.947141
+vt 0.839054 0.921251
+vt 0.201690 0.735124
+vt 0.201686 0.710298
+vt 0.201687 0.704777
+vt 0.201702 0.685375
+vt 0.383861 0.168029
+vt 0.344580 0.252855
+vt 0.433894 0.368637
+vt 0.461613 0.368677
+vt 0.093540 0.171655
+vt 0.132821 0.256480
+vt 0.836012 0.918102
+vt 0.808293 0.918090
+vt 0.308800 0.250856
+vt 0.839047 0.952662
+vt 0.382798 0.163326
+vt 0.094603 0.166952
+vt 0.008260 0.744997
+vt 0.017379 0.745010
+vt 0.017357 0.795937
+vt 0.008238 0.795925
+vt 0.027934 0.745016
+vt 0.027912 0.795944
+vt 0.038318 0.745017
+vt 0.038296 0.795945
+vt 0.046951 0.745012
+vt 0.046929 0.795940
+vt 0.052518 0.745001
+vt 0.052496 0.795929
+vt 0.106211 0.686196
+vt 0.116766 0.686181
+vt 0.116841 0.737109
+vt 0.106286 0.737123
+vt 0.127151 0.686165
+vt 0.127225 0.737092
+vt 0.135783 0.686149
+vt 0.135857 0.737077
+vt 0.141350 0.686137
+vt 0.141424 0.737065
+vt 0.094348 0.798966
+vt 0.083793 0.798973
+vt 0.083771 0.748046
+vt 0.094326 0.748039
+vt 0.073409 0.798974
+vt 0.073387 0.748047
+vt 0.064776 0.798969
+vt 0.064754 0.748041
+vt 0.059209 0.798958
+vt 0.059187 0.748030
+vt 0.081987 0.741087
+vt 0.071432 0.741073
+vt 0.071506 0.690145
+vt 0.082061 0.690160
+vt 0.061048 0.741056
+vt 0.061122 0.690129
+vt 0.001966 0.744982
+vt 0.001944 0.795910
+vt 0.309316 0.692012
+vt 0.317949 0.685718
+vt 0.328333 0.683206
+vt 0.338888 0.684860
+vt 0.348007 0.690426
+vt 0.354301 0.699059
+vt 0.356813 0.709443
+vt 0.355160 0.719998
+vt 0.349593 0.729117
+vt 0.340960 0.735411
+vt 0.330576 0.737923
+vt 0.320021 0.736270
+vt 0.310902 0.730703
+vt 0.304608 0.722070
+vt 0.302096 0.711686
+vt 0.303749 0.701131
+vt 0.926798 0.854496
+vt 0.925332 0.845137
+vt 0.927559 0.835929
+vt 0.933141 0.828274
+vt 0.941227 0.823338
+vt 0.950586 0.821872
+vt 0.959794 0.824099
+vt 0.967449 0.829681
+vt 0.972385 0.837767
+vt 0.973851 0.847126
+vt 0.971624 0.856334
+vt 0.966042 0.863989
+vt 0.957956 0.868925
+vt 0.948597 0.870391
+vt 0.939389 0.868164
+vt 0.931734 0.862582
+vt 0.010338 0.798965
+vt 0.018424 0.798975
+vt 0.052489 0.690114
+vt 0.054775 0.687074
+vt 0.062430 0.687087
+vt 0.027784 0.798982
+vt 0.036992 0.798982
+vt 0.044646 0.798978
+vt 0.099273 0.740172
+vt 0.097167 0.737134
+vt 0.107359 0.740163
+vt 0.116718 0.740150
+vt 0.125926 0.740135
+vt 0.133581 0.740122
+vt 0.101342 0.744982
+vt 0.103445 0.748027
+vt 0.093256 0.744993
+vt 0.083897 0.744999
+vt 0.074689 0.745000
+vt 0.067034 0.744995
+vt 0.089083 0.687124
+vt 0.091180 0.690171
+vt 0.080997 0.687115
+vt 0.071638 0.687102
+vt 0.668580 0.755910
+vt 0.668568 0.765028
+vt 0.634667 0.765014
+vt 0.634680 0.755895
+vt 0.668561 0.775584
+vt 0.634660 0.775569
+vt 0.668560 0.785968
+vt 0.634660 0.785953
+vt 0.668566 0.794600
+vt 0.634665 0.794586
+vt 0.668577 0.800167
+vt 0.634676 0.800152
+vt 0.408397 0.889930
+vt 0.408382 0.879375
+vt 0.442283 0.879326
+vt 0.442297 0.889881
+vt 0.408366 0.868991
+vt 0.442266 0.868941
+vt 0.408350 0.860358
+vt 0.442251 0.860309
+vt 0.408338 0.854791
+vt 0.442239 0.854742
+vt 0.455900 0.890048
+vt 0.455893 0.879493
+vt 0.489794 0.879478
+vt 0.489801 0.890034
+vt 0.455893 0.869109
+vt 0.489793 0.869094
+vt 0.455898 0.860476
+vt 0.489799 0.860462
+vt 0.455909 0.854910
+vt 0.489810 0.854895
+vt 0.731560 0.909719
+vt 0.721005 0.909705
+vt 0.721054 0.875804
+vt 0.731609 0.875819
+vt 0.710621 0.909688
+vt 0.710670 0.875788
+vt 0.668595 0.749615
+vt 0.634695 0.749601
+vt 0.908125 0.771685
+vt 0.917332 0.769458
+vt 0.926692 0.770924
+vt 0.934778 0.775860
+vt 0.940359 0.783515
+vt 0.942586 0.792723
+vt 0.941120 0.802083
+vt 0.936184 0.810169
+vt 0.928529 0.815750
+vt 0.919321 0.817977
+vt 0.909962 0.816511
+vt 0.901876 0.811575
+vt 0.896295 0.803920
+vt 0.894068 0.794712
+vt 0.895534 0.785353
+vt 0.900470 0.777267
+vt 0.840382 0.802083
+vt 0.838916 0.792723
+vt 0.841143 0.783515
+vt 0.846725 0.775861
+vt 0.854811 0.770924
+vt 0.864170 0.769458
+vt 0.873378 0.771685
+vt 0.881033 0.777267
+vt 0.885969 0.785353
+vt 0.887435 0.794712
+vt 0.885208 0.803920
+vt 0.879626 0.811575
+vt 0.871540 0.816511
+vt 0.862181 0.817977
+vt 0.852973 0.815750
+vt 0.845318 0.810169
+vt 0.704265 0.912717
+vt 0.701988 0.909673
+vt 0.711920 0.912731
+vt 0.671625 0.758013
+vt 0.671614 0.766098
+vt 0.671608 0.775458
+vt 0.671607 0.784666
+vt 0.671612 0.792321
+vt 0.408408 0.899049
+vt 0.405361 0.896952
+vt 0.405352 0.888866
+vt 0.405339 0.879507
+vt 0.405324 0.870299
+vt 0.405311 0.862644
+vt 0.455913 0.899167
+vt 0.452873 0.897067
+vt 0.452862 0.888981
+vt 0.452856 0.879622
+vt 0.452855 0.870414
+vt 0.452860 0.862759
+vt 0.740679 0.909730
+vt 0.738573 0.912768
+vt 0.730487 0.912758
+vt 0.721128 0.912745
+vt 0.631640 0.757995
+vt 0.631629 0.766081
+vt 0.702037 0.875772
+vt 0.704323 0.872733
+vt 0.711978 0.872746
+vt 0.631623 0.775440
+vt 0.631622 0.784648
+vt 0.631627 0.792303
+vt 0.445346 0.896894
+vt 0.442308 0.899000
+vt 0.445337 0.888808
+vt 0.445324 0.879448
+vt 0.445309 0.870240
+vt 0.445296 0.862586
+vt 0.492858 0.897049
+vt 0.489813 0.899152
+vt 0.492847 0.888964
+vt 0.492841 0.879604
+vt 0.492840 0.870396
+vt 0.492845 0.862741
+vt 0.738631 0.872783
+vt 0.740728 0.875829
+vt 0.730545 0.872774
+vt 0.721186 0.872761
+vt 0.116599 0.430961
+vt 0.074397 0.430963
+vt 0.074397 0.374494
+vt 0.116599 0.374492
+vt 0.647364 0.849306
+vt 0.617135 0.849311
+vt 0.617129 0.807109
+vt 0.647358 0.807104
+vt 0.803074 0.271445
+vt 0.824995 0.323556
+vt 0.784177 0.340726
+vt 0.772354 0.284368
+vt 0.827354 0.329164
+vt 0.836803 0.351627
+vt 0.801627 0.366424
+vt 0.786705 0.346263
+vt 0.097586 0.460587
+vt 0.097587 0.515501
+vt 0.097587 0.540769
+vt 0.055385 0.540767
+vt 0.055385 0.515500
+vt 0.055384 0.460585
+vt 0.084260 0.856988
+vt 0.084254 0.899190
+vt 0.049678 0.899185
+vt 0.049685 0.856983
+vt 0.819119 0.438109
+vt 0.859767 0.455208
+vt 0.844846 0.475370
+vt 0.809669 0.460573
+vt 0.843398 0.380390
+vt 0.874119 0.393313
+vt 0.862296 0.449671
+vt 0.821478 0.432501
+vt 0.074397 0.436386
+vt 0.116599 0.436384
+vt 0.116598 0.456688
+vt 0.074396 0.456690
+vt 0.119640 0.373346
+vt 0.119641 0.429704
+vt 0.116598 0.370336
+vt 0.074396 0.370337
+vt 0.646669 0.804062
+vt 0.615949 0.804067
+vt 0.805878 0.270266
+vt 0.828978 0.325180
+vt 0.839607 0.350448
+vt 0.613145 0.807109
+vt 0.613151 0.849311
+vt 0.050865 0.853940
+vt 0.086041 0.853946
+vt 0.097587 0.544752
+vt 0.055385 0.544751
+vt 0.100629 0.541948
+vt 0.100629 0.519485
+vt 0.100628 0.513877
+vt 0.100627 0.461766
+vt 0.088874 0.856989
+vt 0.088868 0.899191
+vt 0.071353 0.455405
+vt 0.071355 0.435243
+vt 0.071355 0.429706
+vt 0.071354 0.373348
+vt 0.646676 0.852348
+vt 0.615956 0.852353
+vt 0.119641 0.435241
+vt 0.119640 0.455403
+vt 0.803407 0.368976
+vt 0.837982 0.354432
+vt 0.798793 0.367710
+vt 0.549576 0.806337
+vt 0.549571 0.848539
+vt 0.519600 0.848535
+vt 0.519605 0.806333
+vt 0.150455 0.737454
+vt 0.150455 0.712128
+vt 0.192657 0.712128
+vt 0.192657 0.737453
+vt 0.013545 0.650112
+vt 0.055319 0.659748
+vt 0.045231 0.682431
+vt 0.014082 0.675246
+vt 0.026404 0.621825
+vt 0.057553 0.629009
+vt 0.056687 0.653819
+vt 0.014912 0.644184
+vt 0.150455 0.706381
+vt 0.150453 0.683851
+vt 0.192655 0.683850
+vt 0.192657 0.706380
+vt 0.649023 0.722919
+vt 0.691225 0.722919
+vt 0.691224 0.745706
+vt 0.649022 0.745705
+vt 0.649024 0.692175
+vt 0.691226 0.692176
+vt 0.691225 0.717099
+vt 0.649023 0.717099
+vt 0.099681 0.899565
+vt 0.099676 0.857363
+vt 0.129648 0.857360
+vt 0.129653 0.899562
+vt 0.293827 0.618705
+vt 0.305318 0.641064
+vt 0.263544 0.650700
+vt 0.262677 0.625890
+vt 0.306686 0.646993
+vt 0.306148 0.672127
+vt 0.274999 0.679311
+vt 0.264911 0.656628
+vt 0.519632 0.803291
+vt 0.550781 0.803295
+vt 0.516576 0.806333
+vt 0.516570 0.848535
+vt 0.195699 0.738063
+vt 0.195699 0.712929
+vt 0.195699 0.707000
+vt 0.195697 0.684641
+vt 0.553777 0.806337
+vt 0.553772 0.848539
+vt 0.048227 0.683179
+vt 0.058362 0.660392
+vt 0.059704 0.654572
+vt 0.060574 0.629649
+vt 0.057716 0.625925
+vt 0.027744 0.619012
+vt 0.649023 0.688451
+vt 0.691225 0.688452
+vt 0.129484 0.854318
+vt 0.098335 0.854322
+vt 0.694267 0.691536
+vt 0.694267 0.716346
+vt 0.694267 0.722274
+vt 0.694265 0.744957
+vt 0.550775 0.851581
+vt 0.519626 0.851577
+vt 0.147413 0.738063
+vt 0.147413 0.712929
+vt 0.147413 0.707001
+vt 0.147411 0.684642
+vt 0.095326 0.899566
+vt 0.095321 0.857364
+vt 0.023389 0.621034
+vt 0.782521 0.761099
+vt 0.774741 0.761100
+vt 0.774742 0.708102
+vt 0.782522 0.708101
+vt 0.764751 0.761101
+vt 0.764752 0.708102
+vt 0.754072 0.761100
+vt 0.754073 0.708102
+vt 0.744330 0.761100
+vt 0.744331 0.708101
+vt 0.737009 0.761099
+vt 0.737009 0.708100
+vt 0.676962 0.681514
+vt 0.666972 0.681512
+vt 0.666978 0.628514
+vt 0.676968 0.628515
+vt 0.656293 0.681511
+vt 0.656300 0.628512
+vt 0.646551 0.681510
+vt 0.646558 0.628511
+vt 0.639229 0.681509
+vt 0.639236 0.628510
+vt 0.796289 0.709522
+vt 0.806279 0.709522
+vt 0.806279 0.762521
+vt 0.796289 0.762521
+vt 0.816958 0.709522
+vt 0.816958 0.762521
+vt 0.826699 0.709522
+vt 0.826700 0.762520
+vt 0.834021 0.709521
+vt 0.834022 0.762519
+vt 0.700259 0.628515
+vt 0.710249 0.628514
+vt 0.710256 0.681512
+vt 0.700266 0.681514
+vt 0.720928 0.628512
+vt 0.720935 0.681511
+vt 0.730670 0.628511
+vt 0.730676 0.681510
+vt 0.294342 0.818827
+vt 0.294629 0.828296
+vt 0.291271 0.837154
+vt 0.284779 0.844053
+vt 0.276140 0.847942
+vt 0.266671 0.848230
+vt 0.257813 0.844872
+vt 0.250914 0.838379
+vt 0.247025 0.829741
+vt 0.246737 0.820272
+vt 0.250096 0.811413
+vt 0.256588 0.804514
+vt 0.265226 0.800625
+vt 0.274696 0.800338
+vt 0.283554 0.803696
+vt 0.290453 0.810189
+vt 0.229675 0.844871
+vt 0.220817 0.848230
+vt 0.211348 0.847942
+vt 0.202709 0.844053
+vt 0.196217 0.837154
+vt 0.192859 0.828296
+vt 0.193146 0.818827
+vt 0.197035 0.810188
+vt 0.203934 0.803696
+vt 0.212792 0.800338
+vt 0.222261 0.800625
+vt 0.230900 0.804514
+vt 0.237392 0.811413
+vt 0.240751 0.820271
+vt 0.240463 0.829741
+vt 0.236574 0.838379
+vt 0.728869 0.625469
+vt 0.720231 0.625470
+vt 0.779996 0.764141
+vt 0.773097 0.764142
+vt 0.764239 0.764142
+vt 0.754769 0.764142
+vt 0.746131 0.764142
+vt 0.684742 0.681515
+vt 0.682216 0.684556
+vt 0.675317 0.684555
+vt 0.666459 0.684554
+vt 0.656990 0.684553
+vt 0.648352 0.684552
+vt 0.788509 0.709521
+vt 0.791034 0.706479
+vt 0.797933 0.706480
+vt 0.806791 0.706480
+vt 0.816261 0.706480
+vt 0.824899 0.706479
+vt 0.692479 0.628516
+vt 0.695004 0.625473
+vt 0.701903 0.625473
+vt 0.710761 0.625471
+vt 0.779996 0.705058
+vt 0.773098 0.705059
+vt 0.728876 0.684552
+vt 0.720238 0.684553
+vt 0.764239 0.705059
+vt 0.754770 0.705059
+vt 0.746132 0.705059
+vt 0.682223 0.625473
+vt 0.684749 0.628516
+vt 0.675325 0.625473
+vt 0.666466 0.625471
+vt 0.656997 0.625470
+vt 0.648359 0.625469
+vt 0.791035 0.765562
+vt 0.788509 0.762520
+vt 0.797934 0.765563
+vt 0.806792 0.765563
+vt 0.816261 0.765563
+vt 0.824899 0.765562
+vt 0.695011 0.684556
+vt 0.692486 0.681515
+vt 0.701910 0.684555
+vt 0.710769 0.684554
+vt 0.669258 0.547343
+vt 0.627057 0.547345
+vt 0.627060 0.518799
+vt 0.669262 0.518797
+vt 0.627060 0.514223
+vt 0.627058 0.489471
+vt 0.669260 0.489469
+vt 0.669262 0.514221
+vt 0.546437 0.490301
+vt 0.608857 0.530655
+vt 0.585230 0.544399
+vt 0.539426 0.514788
+vt 0.569191 0.468747
+vt 0.614995 0.498359
+vt 0.612160 0.525545
+vt 0.549740 0.485192
+vt 0.627057 0.484583
+vt 0.627055 0.467961
+vt 0.669257 0.467959
+vt 0.669259 0.484581
+vt 0.403412 0.527802
+vt 0.445614 0.527804
+vt 0.445611 0.541921
+vt 0.403409 0.541919
+vt 0.403414 0.495324
+vt 0.445616 0.495326
+vt 0.445615 0.523249
+vt 0.403413 0.523246
+vt 0.403411 0.462101
+vt 0.445613 0.462103
+vt 0.445616 0.490649
+vt 0.403414 0.490647
+vt 0.501226 0.467651
+vt 0.520677 0.484096
+vt 0.458256 0.524450
+vt 0.455422 0.497263
+vt 0.523980 0.489205
+vt 0.530990 0.513692
+vt 0.485187 0.543304
+vt 0.461560 0.529559
+vt 0.538435 0.517770
+vt 0.582591 0.546316
+vt 0.672304 0.515814
+vt 0.672302 0.491328
+vt 0.546964 0.483554
+vt 0.566625 0.466932
+vt 0.591689 0.855476
+vt 0.596874 0.855477
+vt 0.596869 0.897679
+vt 0.591685 0.897678
+vt 0.587775 0.546438
+vt 0.612042 0.532321
+vt 0.614987 0.527766
+vt 0.617898 0.499843
+vt 0.615659 0.495166
+vt 0.571503 0.466620
+vt 0.454757 0.494070
+vt 0.498913 0.465524
+vt 0.448658 0.493842
+vt 0.448657 0.521028
+vt 0.458374 0.531225
+vt 0.482641 0.545342
+vt 0.487825 0.545220
+vt 0.531981 0.516674
+vt 0.624018 0.515817
+vt 0.624016 0.491330
+vt 0.523451 0.482458
+vt 0.503790 0.465836
+vt 0.607978 0.897678
+vt 0.603100 0.897679
+vt 0.603096 0.855477
+vt 0.607973 0.855476
+vt 0.672301 0.486218
+vt 0.448656 0.526138
+vt 0.624015 0.486220
+vt 0.958782 0.699542
+vt 0.948974 0.699542
+vt 0.948977 0.646543
+vt 0.958784 0.646543
+vt 0.938292 0.699541
+vt 0.938294 0.646542
+vt 0.928361 0.699540
+vt 0.928363 0.646541
+vt 0.920692 0.699539
+vt 0.920695 0.646540
+vt 0.776211 0.698121
+vt 0.766404 0.698120
+vt 0.766409 0.645121
+vt 0.776217 0.645122
+vt 0.755721 0.698118
+vt 0.755727 0.645120
+vt 0.745790 0.698117
+vt 0.745796 0.645119
+vt 0.738122 0.698117
+vt 0.738127 0.645118
+vt 0.935759 0.709523
+vt 0.945567 0.709523
+vt 0.945569 0.762522
+vt 0.935762 0.762522
+vt 0.956249 0.709522
+vt 0.956252 0.762521
+vt 0.966180 0.709522
+vt 0.966183 0.762520
+vt 0.973848 0.709520
+vt 0.973851 0.762519
+vt 0.783764 0.645123
+vt 0.793572 0.645121
+vt 0.793577 0.698120
+vt 0.783770 0.698121
+vt 0.804254 0.645120
+vt 0.804260 0.698119
+vt 0.814186 0.645119
+vt 0.814191 0.698118
+vt 0.966221 0.699541
+vt 0.966223 0.646542
+vt 0.573198 0.762332
+vt 0.576691 0.771138
+vt 0.576547 0.780611
+vt 0.572790 0.789307
+vt 0.565990 0.795904
+vt 0.557184 0.799396
+vt 0.547712 0.799253
+vt 0.539015 0.795495
+vt 0.532419 0.788696
+vt 0.528926 0.779889
+vt 0.529070 0.770417
+vt 0.532827 0.761720
+vt 0.539627 0.755124
+vt 0.548433 0.751631
+vt 0.557905 0.751775
+vt 0.566602 0.755533
+vt 0.186728 0.820721
+vt 0.186872 0.830194
+vt 0.183379 0.839000
+vt 0.176783 0.845799
+vt 0.168086 0.849557
+vt 0.158614 0.849700
+vt 0.149808 0.846208
+vt 0.143008 0.839611
+vt 0.139251 0.830915
+vt 0.139107 0.821443
+vt 0.142600 0.812636
+vt 0.149196 0.805837
+vt 0.157893 0.802079
+vt 0.167365 0.801936
+vt 0.176171 0.805428
+vt 0.182971 0.812025
+vt 0.819301 0.642077
+vt 0.821854 0.645119
+vt 0.812501 0.642078
+vt 0.957020 0.702583
+vt 0.948323 0.702583
+vt 0.938851 0.702583
+vt 0.547874 0.748580
+vt 0.537943 0.752519
+vt 0.930044 0.702582
+vt 0.923245 0.702581
+vt 0.774449 0.701163
+vt 0.765752 0.701162
+vt 0.756280 0.701161
+vt 0.747473 0.701160
+vt 0.740674 0.701159
+vt 0.937521 0.706481
+vt 0.946218 0.706480
+vt 0.955690 0.706480
+vt 0.964496 0.706479
+vt 0.971296 0.706478
+vt 0.785526 0.642081
+vt 0.794223 0.642079
+vt 0.803695 0.642078
+vt 0.957022 0.643501
+vt 0.948326 0.643500
+vt 0.821859 0.698118
+vt 0.819307 0.701160
+vt 0.812508 0.701161
+vt 0.938853 0.643500
+vt 0.930047 0.643499
+vt 0.923248 0.643498
+vt 0.774455 0.642080
+vt 0.765759 0.642079
+vt 0.756286 0.642078
+vt 0.747480 0.642077
+vt 0.740680 0.642077
+vt 0.937524 0.765563
+vt 0.946220 0.765563
+vt 0.955693 0.765563
+vt 0.964499 0.765562
+vt 0.971299 0.765561
+vt 0.785532 0.701163
+vt 0.794229 0.701162
+vt 0.803701 0.701161
+vt 0.891773 0.353637
+vt 0.849571 0.353643
+vt 0.849566 0.299556
+vt 0.891768 0.299550
+vt 0.849565 0.295122
+vt 0.849560 0.278063
+vt 0.891762 0.278057
+vt 0.891767 0.295116
+vt 0.736522 0.363835
+vt 0.707115 0.315552
+vt 0.744935 0.292517
+vt 0.764987 0.346498
+vt 0.703950 0.310356
+vt 0.691273 0.289542
+vt 0.723866 0.269691
+vt 0.741613 0.287416
+vt 0.721374 0.754441
+vt 0.721370 0.785431
+vt 0.721369 0.799690
+vt 0.679167 0.799695
+vt 0.679168 0.785435
+vt 0.679172 0.754445
+vt 0.524098 0.855482
+vt 0.524092 0.897684
+vt 0.504580 0.897678
+vt 0.504586 0.855476
+vt 0.620273 0.323509
+vt 0.657935 0.346448
+vt 0.640188 0.364174
+vt 0.607596 0.344323
+vt 0.652845 0.270030
+vt 0.681309 0.287367
+vt 0.661257 0.341348
+vt 0.623437 0.318313
+vt 0.849571 0.358645
+vt 0.891773 0.358639
+vt 0.891774 0.376490
+vt 0.849572 0.376496
+vt 0.894809 0.297991
+vt 0.894815 0.351972
+vt 0.766114 0.349373
+vt 0.738105 0.366432
+vt 0.733925 0.365417
+vt 0.702935 0.314536
+vt 0.688676 0.291124
+vt 0.679172 0.750265
+vt 0.721374 0.750261
+vt 0.606013 0.346920
+vt 0.638049 0.366432
+vt 0.500405 0.855476
+vt 0.500400 0.897678
+vt 0.604997 0.342740
+vt 0.619257 0.319328
+vt 0.650247 0.268448
+vt 0.614511 0.856248
+vt 0.619261 0.856248
+vt 0.619257 0.898450
+vt 0.614506 0.898450
+vt 0.642799 0.365865
+vt 0.660672 0.348014
+vt 0.846528 0.351979
+vt 0.846523 0.297998
+vt 0.682436 0.284491
+vt 0.654427 0.267432
+vt 0.744350 0.285850
+vt 0.726477 0.267999
+vt 0.721727 0.267432
+vt 0.689691 0.286944
+vt 0.846529 0.357079
+vt 0.894815 0.357073
+vt 0.587061 0.806338
+vt 0.587057 0.848540
+vt 0.559764 0.848535
+vt 0.559767 0.806333
+vt 0.425469 0.794562
+vt 0.425472 0.769905
+vt 0.467674 0.769911
+vt 0.467671 0.794569
+vt 0.346437 0.572361
+vt 0.384479 0.592129
+vt 0.369043 0.611572
+vt 0.340678 0.596832
+vt 0.365957 0.548184
+vt 0.394323 0.562924
+vt 0.387285 0.586730
+vt 0.349243 0.566962
+vt 0.425473 0.764671
+vt 0.425475 0.745749
+vt 0.467676 0.745755
+vt 0.467675 0.764677
+vt 0.607158 0.806336
+vt 0.607155 0.848538
+vt 0.591648 0.848540
+vt 0.591651 0.806338
+vt 0.477579 0.750345
+vt 0.519781 0.750338
+vt 0.519784 0.774254
+vt 0.477582 0.774260
+vt 0.054988 0.568784
+vt 0.016946 0.588552
+vt 0.011186 0.564081
+vt 0.039552 0.549341
+vt 0.064831 0.597989
+vt 0.036465 0.612729
+vt 0.019751 0.593950
+vt 0.057793 0.574183
+vt 0.535550 0.855481
+vt 0.562844 0.855476
+vt 0.562847 0.897678
+vt 0.535553 0.897682
+vt 0.560571 0.803291
+vt 0.588937 0.803295
+vt 0.467670 0.798933
+vt 0.425468 0.798926
+vt 0.470713 0.795923
+vt 0.470716 0.771452
+vt 0.470717 0.766053
+vt 0.470718 0.747275
+vt 0.371758 0.613045
+vt 0.387264 0.593513
+vt 0.477583 0.779560
+vt 0.519785 0.779554
+vt 0.390018 0.588213
+vt 0.397088 0.564298
+vt 0.522828 0.797612
+vt 0.519786 0.799086
+vt 0.522826 0.778169
+vt 0.588934 0.851581
+vt 0.560568 0.851577
+vt 0.522826 0.772770
+vt 0.522823 0.748964
+vt 0.422427 0.795916
+vt 0.422430 0.771445
+vt 0.422431 0.766046
+vt 0.422432 0.747267
+vt 0.367958 0.545795
+vt 0.395251 0.559978
+vt 0.530831 0.897683
+vt 0.530828 0.855481
+vt 0.038467 0.615117
+vt 0.065760 0.600934
+vt 0.519780 0.746019
+vt 0.477578 0.746025
+vt 0.363236 0.546665
+vt 0.033745 0.614247
+vt 0.442420 0.626229
+vt 0.451783 0.626227
+vt 0.451791 0.679226
+vt 0.442428 0.679228
+vt 0.462403 0.626226
+vt 0.462410 0.679224
+vt 0.472662 0.626224
+vt 0.472670 0.679223
+vt 0.480999 0.626224
+vt 0.481006 0.679222
+vt 0.867986 0.699542
+vt 0.858623 0.699542
+vt 0.858627 0.646544
+vt 0.867990 0.646544
+vt 0.848003 0.699542
+vt 0.848007 0.646543
+vt 0.837744 0.699541
+vt 0.837748 0.646542
+vt 0.829407 0.699539
+vt 0.829411 0.646540
+vt 0.525666 0.679228
+vt 0.516303 0.679226
+vt 0.516310 0.626227
+vt 0.525673 0.626229
+vt 0.505683 0.679224
+vt 0.505691 0.626226
+vt 0.495424 0.679223
+vt 0.495432 0.626224
+vt 0.487087 0.679222
+vt 0.487095 0.626224
+vt 0.875050 0.646544
+vt 0.884413 0.646544
+vt 0.884417 0.699543
+vt 0.875054 0.699543
+vt 0.895032 0.646543
+vt 0.895036 0.699542
+vt 0.905291 0.646542
+vt 0.905295 0.699541
+vt 0.435739 0.626231
+vt 0.435747 0.679229
+vt 0.743100 0.866193
+vt 0.734003 0.868838
+vt 0.724587 0.867799
+vt 0.716284 0.863237
+vt 0.710360 0.855844
+vt 0.707716 0.846747
+vt 0.708754 0.837331
+vt 0.713317 0.829028
+vt 0.720709 0.823104
+vt 0.729806 0.820460
+vt 0.739223 0.821498
+vt 0.747525 0.826061
+vt 0.753449 0.833453
+vt 0.756094 0.842550
+vt 0.755055 0.851967
+vt 0.750493 0.860269
+vt 0.700691 0.820933
+vt 0.701729 0.830349
+vt 0.699085 0.839446
+vt 0.693160 0.846839
+vt 0.684858 0.851402
+vt 0.675441 0.852440
+vt 0.666344 0.849796
+vt 0.658952 0.843871
+vt 0.654389 0.835569
+vt 0.653351 0.826153
+vt 0.655995 0.817056
+vt 0.661919 0.809663
+vt 0.670222 0.805100
+vt 0.679638 0.804062
+vt 0.688735 0.806706
+vt 0.696128 0.812631
+vt 0.911253 0.643498
+vt 0.913628 0.646540
+vt 0.903861 0.643500
+vt 0.444415 0.623187
+vt 0.452718 0.623185
+vt 0.462134 0.623184
+vt 0.471231 0.623183
+vt 0.478624 0.623182
+vt 0.865990 0.702584
+vt 0.857687 0.702584
+vt 0.848271 0.702583
+vt 0.839174 0.702582
+vt 0.831781 0.702581
+vt 0.523670 0.682270
+vt 0.515367 0.682268
+vt 0.505951 0.682267
+vt 0.496854 0.682266
+vt 0.489461 0.682265
+vt 0.877045 0.643501
+vt 0.885347 0.643501
+vt 0.894764 0.643501
+vt 0.444424 0.682270
+vt 0.452726 0.682268
+vt 0.913632 0.699539
+vt 0.911258 0.702581
+vt 0.903865 0.702583
+vt 0.462143 0.682267
+vt 0.471240 0.682266
+vt 0.478632 0.682265
+vt 0.865994 0.643501
+vt 0.857692 0.643501
+vt 0.848276 0.643501
+vt 0.839179 0.643499
+vt 0.831786 0.643498
+vt 0.523678 0.623187
+vt 0.515376 0.623185
+vt 0.505960 0.623184
+vt 0.496863 0.623183
+vt 0.489470 0.623182
+vt 0.877050 0.702584
+vt 0.885352 0.702584
+vt 0.894768 0.702584
+vt 0.762851 0.531401
+vt 0.805053 0.531401
+vt 0.805047 0.558522
+vt 0.762845 0.558522
+vt 0.817233 0.558098
+vt 0.817235 0.540857
+vt 0.859437 0.540857
+vt 0.859434 0.558098
+vt 0.337086 0.473309
+vt 0.375426 0.536986
+vt 0.348163 0.538951
+vt 0.320029 0.492225
+vt 0.366997 0.463945
+vt 0.395131 0.510672
+vt 0.380638 0.533847
+vt 0.342299 0.470170
+vt 0.817236 0.535869
+vt 0.817237 0.510905
+vt 0.859439 0.510905
+vt 0.859438 0.535870
+vt 0.762851 0.498796
+vt 0.805053 0.498796
+vt 0.805053 0.526797
+vt 0.762851 0.526798
+vt 0.762847 0.479265
+vt 0.805049 0.479264
+vt 0.805052 0.494149
+vt 0.762850 0.494149
+vt 0.859438 0.506386
+vt 0.817237 0.506386
+vt 0.817231 0.479264
+vt 0.859433 0.479265
+vt 0.754735 0.498094
+vt 0.748510 0.522793
+vt 0.684833 0.484453
+vt 0.708008 0.469961
+vt 0.745371 0.528005
+vt 0.726456 0.545062
+vt 0.679729 0.516928
+vt 0.681694 0.489665
+vt 0.317829 0.494468
+vt 0.344950 0.539513
+vt 0.580280 0.855476
+vt 0.585145 0.855477
+vt 0.585140 0.897679
+vt 0.580274 0.897678
+vt 0.318297 0.489602
+vt 0.335538 0.470482
+vt 0.340525 0.467480
+vt 0.365490 0.461188
+vt 0.349554 0.541900
+vt 0.377555 0.539882
+vt 0.382202 0.537084
+vt 0.397087 0.513281
+vt 0.397130 0.508095
+vt 0.370009 0.463050
+vt 0.574055 0.897678
+vt 0.568869 0.897679
+vt 0.568864 0.855477
+vt 0.574049 0.855476
+vt 0.710584 0.467961
+vt 0.755629 0.495082
+vt 0.705399 0.468005
+vt 0.681595 0.482889
+vt 0.808094 0.500925
+vt 0.808095 0.528188
+vt 0.679167 0.520141
+vt 0.724212 0.547262
+vt 0.729077 0.546794
+vt 0.748197 0.529553
+vt 0.814193 0.534096
+vt 0.814194 0.509398
+vt 0.808094 0.495713
+vt 0.814193 0.539308
+vt 0.603933 0.628491
+vt 0.614605 0.628489
+vt 0.614612 0.681488
+vt 0.603941 0.681490
+vt 0.624272 0.628488
+vt 0.624279 0.681487
+vt 0.631463 0.628487
+vt 0.631470 0.681486
+vt 0.921871 0.762521
+vt 0.911819 0.762522
+vt 0.911818 0.709523
+vt 0.921870 0.709522
+vt 0.901147 0.762522
+vt 0.901146 0.709523
+vt 0.891480 0.762521
+vt 0.891479 0.709522
+vt 0.884289 0.762520
+vt 0.884289 0.709521
+vt 0.570311 0.679454
+vt 0.560259 0.679453
+vt 0.560267 0.626454
+vt 0.570319 0.626455
+vt 0.549588 0.679451
+vt 0.549595 0.626453
+vt 0.539920 0.679450
+vt 0.539928 0.626451
+vt 0.532730 0.679449
+vt 0.532737 0.626450
+vt 0.847911 0.709522
+vt 0.857963 0.709523
+vt 0.857963 0.762522
+vt 0.847911 0.762521
+vt 0.868635 0.709523
+vt 0.868634 0.762522
+vt 0.878302 0.709522
+vt 0.878301 0.762521
+vt 0.585980 0.628493
+vt 0.593881 0.628492
+vt 0.593889 0.681491
+vt 0.585987 0.681492
+vt 0.453368 0.839361
+vt 0.446992 0.846368
+vt 0.438420 0.850401
+vt 0.428957 0.850847
+vt 0.420043 0.847638
+vt 0.413037 0.841262
+vt 0.409003 0.832690
+vt 0.408557 0.823227
+vt 0.411767 0.814314
+vt 0.418143 0.807307
+vt 0.426715 0.803273
+vt 0.436178 0.802828
+vt 0.445091 0.806037
+vt 0.452098 0.812413
+vt 0.456131 0.820985
+vt 0.456577 0.830448
+vt 0.510138 0.832843
+vt 0.506104 0.841415
+vt 0.499098 0.847791
+vt 0.490184 0.851000
+vt 0.480721 0.850554
+vt 0.472149 0.846521
+vt 0.465773 0.839514
+vt 0.462564 0.830601
+vt 0.463010 0.821138
+vt 0.467043 0.812566
+vt 0.474050 0.806190
+vt 0.482963 0.802980
+vt 0.492426 0.803426
+vt 0.500998 0.807460
+vt 0.507374 0.814466
+vt 0.510584 0.823380
+vt 0.604394 0.625449
+vt 0.595481 0.625450
+vt 0.613857 0.625447
+vt 0.622429 0.625446
+vt 0.929772 0.762520
+vt 0.927277 0.765562
+vt 0.920271 0.765563
+vt 0.911357 0.765563
+vt 0.901894 0.765563
+vt 0.893322 0.765563
+vt 0.578213 0.679455
+vt 0.575718 0.682497
+vt 0.568711 0.682496
+vt 0.559798 0.682495
+vt 0.550335 0.682494
+vt 0.541763 0.682492
+vt 0.840009 0.709521
+vt 0.842504 0.706479
+vt 0.849511 0.706480
+vt 0.858424 0.706480
+vt 0.867887 0.706480
+vt 0.876459 0.706480
+vt 0.588474 0.625451
+vt 0.604402 0.684532
+vt 0.613865 0.684530
+vt 0.595489 0.684533
+vt 0.622437 0.684529
+vt 0.927277 0.706479
+vt 0.929772 0.709521
+vt 0.920270 0.706480
+vt 0.911357 0.706480
+vt 0.901894 0.706480
+vt 0.893322 0.706480
+vt 0.575726 0.623414
+vt 0.578220 0.626456
+vt 0.568719 0.623413
+vt 0.559806 0.623412
+vt 0.550343 0.623411
+vt 0.541771 0.623409
+vt 0.842504 0.765562
+vt 0.840009 0.762520
+vt 0.849510 0.765563
+vt 0.858424 0.765563
+vt 0.867887 0.765563
+vt 0.876459 0.765563
+vt 0.588482 0.684534
+vt 0.359680 0.364749
+vt 0.359673 0.304913
+vt 0.420390 0.304055
+vt 0.420397 0.364742
+vt 0.359668 0.262320
+vt 0.420386 0.262313
+vt 0.277906 0.136436
+vt 0.277892 0.004748
+vt 0.279921 0.007870
+vt 0.281567 0.013443
+vt 0.281580 0.127740
+vt 0.279935 0.133314
+vt 0.363475 0.004738
+vt 0.361446 0.007860
+vt 0.356835 0.010392
+vt 0.284533 0.010401
+vt 0.363490 0.136426
+vt 0.361460 0.133304
+vt 0.359815 0.127731
+vt 0.359802 0.013434
+vt 0.284546 0.130782
+vt 0.356849 0.130773
+vt 0.511125 0.261321
+vt 0.511112 0.145198
+vt 0.515930 0.149899
+vt 0.515942 0.256619
+vt 0.585071 0.145321
+vt 0.580964 0.149753
+vt 0.585084 0.261181
+vt 0.580976 0.256750
+vt 0.432712 0.262313
+vt 0.432709 0.364742
+vt 0.428132 0.364742
+vt 0.428133 0.322150
+vt 0.428135 0.262313
+vt 0.179773 0.618104
+vt 0.193613 0.678822
+vt 0.189036 0.679865
+vt 0.175196 0.619148
+vt 0.044150 0.148992
+vt 0.044153 0.251420
+vt 0.039576 0.251420
+vt 0.039574 0.190734
+vt 0.039573 0.148992
+vt 0.218337 0.619148
+vt 0.204496 0.679865
+vt 0.199919 0.678822
+vt 0.213759 0.618105
+vt 0.409502 0.005035
+vt 0.519768 0.005034
+vt 0.519772 0.136123
+vt 0.409506 0.136124
+vt 0.115176 0.001992
+vt 0.134605 0.087225
+vt 0.121289 0.119176
+vt 0.030604 0.139847
+vt 0.017757 0.083487
+vt 0.004910 0.027127
+vt 0.816092 0.001998
+vt 0.816077 0.133087
+vt 0.762683 0.133081
+vt 0.762698 0.001992
+vt 0.875403 0.133094
+vt 0.822009 0.133088
+vt 0.822024 0.001999
+vt 0.875418 0.002005
+vt 0.973094 0.140031
+vt 0.973090 0.271120
+vt 0.883843 0.271120
+vt 0.883846 0.140031
+vt 0.368080 0.136126
+vt 0.368065 0.005037
+vt 0.396745 0.005034
+vt 0.396759 0.136123
+vt 0.257343 0.022664
+vt 0.270659 0.054614
+vt 0.251230 0.139847
+vt 0.140964 0.114712
+vt 0.153811 0.058352
+vt 0.166658 0.001992
+vt 0.407216 0.136123
+vt 0.407213 0.005034
+vt 0.410182 0.139165
+vt 0.520448 0.139165
+vt 0.001944 0.027803
+vt 0.014115 0.081197
+vt 0.015467 0.087129
+vt 0.279766 0.139178
+vt 0.365000 0.139168
+vt 0.523144 0.136423
+vt 0.523141 0.004735
+vt 0.027638 0.140523
+vt 0.031280 0.142813
+vt 0.120527 0.122469
+vt 0.877708 0.002006
+vt 0.877693 0.133095
+vt 0.396950 0.139165
+vt 0.400243 0.136123
+vt 0.400229 0.005034
+vt 0.874727 0.136136
+vt 0.818367 0.136130
+vt 0.883167 0.274162
+vt 0.973851 0.274162
+vt 0.396935 0.001992
+vt 0.364985 0.001995
+vt 0.762007 0.136123
+vt 0.410179 0.001992
+vt 0.520445 0.001992
+vt 0.279751 0.002005
+vt 0.004234 0.024161
+vt 0.880201 0.271120
+vt 0.759041 0.133081
+vt 0.499484 0.146103
+vt 0.501659 0.146103
+vt 0.501662 0.260400
+vt 0.499487 0.260400
+vt 0.817866 0.565384
+vt 0.820042 0.565879
+vt 0.803560 0.638182
+vt 0.801385 0.637686
+vt 0.773577 0.562913
+vt 0.775752 0.562417
+vt 0.792234 0.634720
+vt 0.790058 0.635216
+vt 0.389851 0.143073
+vt 0.392026 0.143073
+vt 0.392023 0.257370
+vt 0.389847 0.257370
+vt 0.500160 0.143060
+vt 0.502335 0.143060
+vt 0.505122 0.145189
+vt 0.505125 0.261313
+vt 0.512573 0.143069
+vt 0.584876 0.143060
+vt 0.500163 0.263441
+vt 0.502339 0.263441
+vt 0.512586 0.263450
+vt 0.584889 0.263441
+vt 0.818542 0.562417
+vt 0.820718 0.562913
+vt 0.587842 0.146102
+vt 0.587855 0.260399
+vt 0.790734 0.638182
+vt 0.792910 0.637686
+vt 0.518806 0.152044
+vt 0.518817 0.254473
+vt 0.579523 0.152037
+vt 0.579534 0.254466
+vt 0.047599 0.146708
+vt 0.047602 0.253704
+vt 0.823206 0.565685
+vt 0.795398 0.634914
+vt 0.646208 0.553340
+vt 0.651689 0.552073
+vt 0.667241 0.620301
+vt 0.661756 0.621551
+vt 0.655397 0.551240
+vt 0.670947 0.619456
+vt 0.568810 0.971342
+vt 0.568810 0.965857
+vt 0.568810 0.962151
+vt 0.577730 0.962152
+vt 0.577730 0.965857
+vt 0.577730 0.971342
+vt 0.629656 0.551240
+vt 0.635141 0.552490
+vt 0.619589 0.620718
+vt 0.614108 0.619451
+vt 0.638847 0.553335
+vt 0.623297 0.621551
+vt 0.716730 0.986437
+vt 0.716730 0.980956
+vt 0.716730 0.977248
+vt 0.725650 0.977248
+vt 0.725650 0.980956
+vt 0.725650 0.986437
+vt 0.468043 0.549237
+vt 0.476963 0.549238
+vt 0.476955 0.617449
+vt 0.468035 0.617448
+vt 0.007213 0.619012
+vt 0.007221 0.683664
+vt 0.001951 0.683665
+vt 0.001944 0.619012
+vt 0.723824 0.975061
+vt 0.718555 0.975061
+vt 0.657583 0.552619
+vt 0.672321 0.617271
+vt 0.570635 0.960778
+vt 0.575904 0.960778
+vt 0.640221 0.555520
+vt 0.625483 0.620172
+vt 0.363192 0.964344
+vt 0.366297 0.963636
+vt 0.367678 0.969694
+vt 0.364573 0.970402
+vt 0.170019 0.547765
+vt 0.173124 0.547765
+vt 0.173122 0.613738
+vt 0.170017 0.613738
+vt 0.447504 0.965739
+vt 0.450610 0.966447
+vt 0.449229 0.972506
+vt 0.446123 0.971798
+vt 0.104774 0.547765
+vt 0.107880 0.547765
+vt 0.107881 0.613738
+vt 0.104776 0.613738
+vt 0.204590 0.614209
+vt 0.204597 0.548236
+vt 0.210656 0.548237
+vt 0.210649 0.614210
+vt 0.146669 0.617633
+vt 0.149168 0.617633
+vt 0.149175 0.679955
+vt 0.146676 0.679956
+vt 0.110067 0.611913
+vt 0.110065 0.549590
+vt 0.368483 0.965010
+vt 0.369052 0.967509
+vt 0.174498 0.549590
+vt 0.174496 0.611913
+vt 0.451984 0.968632
+vt 0.451414 0.971131
+vt 0.434276 0.966447
+vt 0.437382 0.965739
+vt 0.438763 0.971798
+vt 0.435657 0.972506
+vt 0.071749 0.548647
+vt 0.074854 0.548647
+vt 0.074853 0.614620
+vt 0.071747 0.614620
+vt 0.423810 0.966074
+vt 0.426915 0.966782
+vt 0.425534 0.972840
+vt 0.422429 0.972132
+vt 0.127333 0.547765
+vt 0.130438 0.547765
+vt 0.130440 0.613738
+vt 0.127335 0.613738
+vt 0.228695 0.614209
+vt 0.228703 0.548236
+vt 0.234761 0.548237
+vt 0.234754 0.614210
+vt 0.127651 0.617633
+vt 0.130150 0.617633
+vt 0.130157 0.679955
+vt 0.127658 0.679956
+vt 0.132626 0.611913
+vt 0.132624 0.549590
+vt 0.439567 0.967113
+vt 0.440136 0.969612
+vt 0.076228 0.550472
+vt 0.076227 0.612795
+vt 0.428289 0.968967
+vt 0.427719 0.971466
+vt 0.410581 0.967001
+vt 0.413687 0.966293
+vt 0.415068 0.972351
+vt 0.411962 0.973059
+vt 0.159551 0.547765
+vt 0.162656 0.547765
+vt 0.162654 0.613738
+vt 0.159549 0.613738
+vt 0.400115 0.966293
+vt 0.403221 0.967001
+vt 0.401839 0.973059
+vt 0.398734 0.972351
+vt 0.093495 0.548647
+vt 0.096600 0.548647
+vt 0.096602 0.614620
+vt 0.093496 0.614620
+vt 0.192538 0.614209
+vt 0.192545 0.548236
+vt 0.198603 0.548237
+vt 0.198596 0.614210
+vt 0.156178 0.617633
+vt 0.158677 0.617633
+vt 0.158684 0.679955
+vt 0.156185 0.679956
+vt 0.098787 0.612795
+vt 0.098785 0.550472
+vt 0.415872 0.967667
+vt 0.416442 0.970166
+vt 0.164030 0.549590
+vt 0.164028 0.611913
+vt 0.404595 0.969186
+vt 0.404025 0.971685
+vt 0.469818 0.966447
+vt 0.472923 0.965739
+vt 0.474304 0.971798
+vt 0.471199 0.972506
+vt 0.149082 0.547765
+vt 0.152188 0.547765
+vt 0.152186 0.613738
+vt 0.149080 0.613738
+vt 0.388268 0.966293
+vt 0.391373 0.967001
+vt 0.389992 0.973059
+vt 0.386887 0.972351
+vt 0.116053 0.547765
+vt 0.119159 0.547765
+vt 0.119161 0.613738
+vt 0.116055 0.613738
+vt 0.216643 0.614209
+vt 0.216650 0.548236
+vt 0.222708 0.548237
+vt 0.222701 0.614210
+vt 0.137160 0.617633
+vt 0.139659 0.617633
+vt 0.139666 0.679955
+vt 0.137167 0.679956
+vt 0.121346 0.611913
+vt 0.121344 0.549590
+vt 0.475109 0.967113
+vt 0.475678 0.969612
+vt 0.153562 0.549590
+vt 0.153560 0.611913
+vt 0.392747 0.969186
+vt 0.392177 0.971685
+vt 0.457971 0.966447
+vt 0.461076 0.965739
+vt 0.462457 0.971798
+vt 0.459352 0.972506
+vt 0.138614 0.547765
+vt 0.141720 0.547765
+vt 0.141718 0.613738
+vt 0.138612 0.613738
+vt 0.376420 0.963636
+vt 0.379526 0.964344
+vt 0.378145 0.970402
+vt 0.375039 0.969694
+vt 0.082215 0.548647
+vt 0.085321 0.548647
+vt 0.085323 0.614620
+vt 0.082217 0.614620
+vt 0.180485 0.614209
+vt 0.180492 0.548236
+vt 0.186551 0.548237
+vt 0.186543 0.614210
+vt 0.165687 0.617633
+vt 0.168186 0.617633
+vt 0.168193 0.679955
+vt 0.165694 0.679956
+vt 0.087508 0.612795
+vt 0.087506 0.550472
+vt 0.463261 0.967113
+vt 0.463831 0.969612
+vt 0.143094 0.549590
+vt 0.143092 0.611913
+vt 0.380900 0.966529
+vt 0.380330 0.969028
+vt 0.601578 0.934591
+vt 0.598103 0.933435
+vt 0.598103 0.902618
+vt 0.601578 0.903774
+vt 0.592901 0.932662
+vt 0.592901 0.901845
+vt 0.586764 0.932390
+vt 0.586764 0.901574
+vt 0.580627 0.932662
+vt 0.580627 0.901845
+vt 0.575425 0.933434
+vt 0.575425 0.902617
+vt 0.571948 0.934590
+vt 0.571948 0.903773
+vt 0.802293 0.948920
+vt 0.796310 0.950283
+vt 0.789285 0.919467
+vt 0.795268 0.918103
+vt 0.790326 0.951647
+vt 0.783302 0.920831
+vt 0.785254 0.952804
+vt 0.778229 0.921987
+vt 0.781864 0.953576
+vt 0.774839 0.922760
+vt 0.565961 0.934322
+vt 0.559825 0.934594
+vt 0.559824 0.903777
+vt 0.565961 0.903506
+vt 0.553688 0.934323
+vt 0.553688 0.903506
+vt 0.548485 0.933550
+vt 0.548485 0.902734
+vt 0.545008 0.932394
+vt 0.545008 0.901577
+vt 0.636556 0.935694
+vt 0.630573 0.934330
+vt 0.637598 0.903513
+vt 0.643581 0.904877
+vt 0.624590 0.932966
+vt 0.631615 0.902150
+vt 0.379023 0.931138
+vt 0.373040 0.932358
+vt 0.367057 0.931136
+vt 0.361985 0.927660
+vt 0.358596 0.922457
+vt 0.357407 0.916320
+vt 0.358598 0.910183
+vt 0.361988 0.904981
+vt 0.367060 0.901506
+vt 0.373044 0.900286
+vt 0.379027 0.901507
+vt 0.384098 0.904984
+vt 0.387487 0.910187
+vt 0.388677 0.916324
+vt 0.387486 0.922460
+vt 0.384096 0.927662
+vt 0.309292 0.937538
+vt 0.313090 0.940140
+vt 0.315629 0.944035
+vt 0.316520 0.948630
+vt 0.315630 0.953226
+vt 0.313092 0.957121
+vt 0.309294 0.959725
+vt 0.304814 0.960639
+vt 0.300334 0.959726
+vt 0.296536 0.957123
+vt 0.293998 0.953228
+vt 0.293106 0.948633
+vt 0.293997 0.944038
+vt 0.296534 0.940142
+vt 0.300332 0.937539
+vt 0.304812 0.936624
+vt 0.303714 0.901878
+vt 0.308786 0.905353
+vt 0.306010 0.908202
+vt 0.302211 0.905600
+vt 0.312176 0.910555
+vt 0.308548 0.912097
+vt 0.313367 0.916692
+vt 0.309439 0.916692
+vt 0.312178 0.922828
+vt 0.308549 0.921287
+vt 0.308789 0.928031
+vt 0.306011 0.925183
+vt 0.303717 0.931508
+vt 0.302214 0.927787
+vt 0.297734 0.932729
+vt 0.297734 0.928701
+vt 0.291751 0.931509
+vt 0.293253 0.927788
+vt 0.286678 0.928034
+vt 0.289455 0.925185
+vt 0.283288 0.922832
+vt 0.286917 0.921290
+vt 0.282098 0.916695
+vt 0.286025 0.916695
+vt 0.283287 0.910559
+vt 0.286916 0.912100
+vt 0.286676 0.905356
+vt 0.289453 0.908204
+vt 0.291747 0.901879
+vt 0.293251 0.905601
+vt 0.297731 0.900658
+vt 0.297731 0.904686
+vt 0.505937 0.939029
+vt 0.506802 0.941631
+vt 0.505069 0.941631
+vt 0.504203 0.939029
+vt 0.507381 0.945526
+vt 0.505648 0.945526
+vt 0.507584 0.950121
+vt 0.505851 0.950121
+vt 0.507381 0.954716
+vt 0.505648 0.954716
+vt 0.506803 0.958612
+vt 0.505070 0.958612
+vt 0.505937 0.961216
+vt 0.504204 0.961216
+vt 0.911482 0.980000
+vt 0.910461 0.984480
+vt 0.908728 0.984085
+vt 0.909749 0.979605
+vt 0.909440 0.988961
+vt 0.907706 0.988566
+vt 0.908574 0.992759
+vt 0.906840 0.992364
+vt 0.907995 0.995297
+vt 0.906262 0.994902
+vt 0.884188 0.979605
+vt 0.883985 0.984200
+vt 0.882251 0.984200
+vt 0.882455 0.979605
+vt 0.884188 0.988796
+vt 0.882454 0.988796
+vt 0.884766 0.992691
+vt 0.883033 0.992691
+vt 0.885632 0.995295
+vt 0.883898 0.995295
+vt 0.560780 0.960782
+vt 0.561802 0.965263
+vt 0.560068 0.965658
+vt 0.559047 0.961178
+vt 0.562823 0.969743
+vt 0.561090 0.970138
+vt 0.384551 0.959741
+vt 0.382078 0.958918
+vt 0.382078 0.936995
+vt 0.384551 0.937818
+vt 0.378378 0.958369
+vt 0.378378 0.936446
+vt 0.374012 0.958175
+vt 0.374012 0.936252
+vt 0.369646 0.958368
+vt 0.369646 0.936445
+vt 0.365945 0.958918
+vt 0.365945 0.936995
+vt 0.363472 0.959740
+vt 0.363472 0.937817
+vt 0.202333 0.961003
+vt 0.198077 0.961973
+vt 0.193080 0.940050
+vt 0.197336 0.939080
+vt 0.193820 0.962944
+vt 0.188823 0.941021
+vt 0.190212 0.963766
+vt 0.185214 0.941843
+vt 0.187800 0.964316
+vt 0.182803 0.942393
+vt 0.406904 0.962205
+vt 0.402539 0.962398
+vt 0.402539 0.940475
+vt 0.406904 0.940282
+vt 0.398173 0.962205
+vt 0.398173 0.940282
+vt 0.394472 0.961656
+vt 0.394472 0.939733
+vt 0.391998 0.960833
+vt 0.391998 0.938910
+vt 0.351065 0.960297
+vt 0.346809 0.959326
+vt 0.351806 0.937403
+vt 0.356062 0.938374
+vt 0.342552 0.958356
+vt 0.347549 0.936433
+vt 0.447314 0.960976
+vt 0.443057 0.961844
+vt 0.438801 0.960975
+vt 0.435192 0.958502
+vt 0.432782 0.954801
+vt 0.431936 0.950435
+vt 0.432783 0.946070
+vt 0.435194 0.942369
+vt 0.438803 0.939896
+vt 0.443060 0.939028
+vt 0.447316 0.939897
+vt 0.450924 0.942371
+vt 0.453335 0.946072
+vt 0.454181 0.950438
+vt 0.453334 0.954803
+vt 0.450922 0.958504
+vt 0.705896 0.955177
+vt 0.708598 0.957029
+vt 0.710404 0.959800
+vt 0.711038 0.963069
+vt 0.710404 0.966338
+vt 0.708599 0.969109
+vt 0.705897 0.970961
+vt 0.702710 0.971612
+vt 0.699523 0.970962
+vt 0.696821 0.969111
+vt 0.695015 0.966339
+vt 0.694381 0.963071
+vt 0.695015 0.959802
+vt 0.696820 0.957030
+vt 0.699521 0.955178
+vt 0.702708 0.954527
+vt 0.475840 0.939896
+vt 0.479449 0.942369
+vt 0.477473 0.944396
+vt 0.474771 0.942544
+vt 0.481860 0.946070
+vt 0.479279 0.947167
+vt 0.482708 0.950435
+vt 0.479913 0.950435
+vt 0.481861 0.954801
+vt 0.479280 0.953704
+vt 0.479451 0.958502
+vt 0.477475 0.956476
+vt 0.475843 0.960975
+vt 0.474773 0.958328
+vt 0.471586 0.961844
+vt 0.471586 0.958979
+vt 0.467330 0.960976
+vt 0.468399 0.958329
+vt 0.463721 0.958504
+vt 0.465696 0.956477
+vt 0.461310 0.954803
+vt 0.463891 0.953706
+vt 0.460462 0.950438
+vt 0.463256 0.950437
+vt 0.461309 0.946072
+vt 0.463890 0.947168
+vt 0.463719 0.942371
+vt 0.465695 0.944397
+vt 0.467327 0.939897
+vt 0.468397 0.942545
+vt 0.471584 0.939029
+vt 0.471584 0.941894
+vt 0.934763 0.981207
+vt 0.935379 0.983058
+vt 0.933026 0.983058
+vt 0.932410 0.981207
+vt 0.935790 0.985829
+vt 0.933438 0.985829
+vt 0.935935 0.989098
+vt 0.933582 0.989098
+vt 0.935791 0.992367
+vt 0.933438 0.992367
+vt 0.935379 0.995139
+vt 0.933026 0.995139
+vt 0.934763 0.996991
+vt 0.932410 0.996991
+vt 0.736470 0.978211
+vt 0.735744 0.981398
+vt 0.733391 0.980862
+vt 0.734117 0.977675
+vt 0.735017 0.984585
+vt 0.732664 0.984049
+vt 0.734401 0.987287
+vt 0.732048 0.986751
+vt 0.733990 0.989093
+vt 0.731637 0.988557
+vt 0.709716 0.975507
+vt 0.709572 0.978775
+vt 0.707219 0.978775
+vt 0.707363 0.975507
+vt 0.709716 0.982045
+vt 0.707363 0.982045
+vt 0.710127 0.984816
+vt 0.707775 0.984816
+vt 0.710743 0.986668
+vt 0.708390 0.986668
+vt 0.484018 0.965739
+vt 0.484745 0.968926
+vt 0.482392 0.969463
+vt 0.481665 0.966275
+vt 0.485471 0.972113
+vt 0.483118 0.972650
+vt 0.327636 0.618265
+vt 0.330342 0.618265
+vt 0.330343 0.677065
+vt 0.327638 0.677065
+vt 0.335752 0.937514
+vt 0.326538 0.959701
+vt 0.323832 0.958621
+vt 0.333046 0.936433
+vt 0.394916 0.621679
+vt 0.417103 0.621676
+vt 0.417110 0.680476
+vt 0.394922 0.680479
+vt 0.427036 0.620900
+vt 0.427034 0.679700
+vt 0.424329 0.679700
+vt 0.424330 0.620900
+vt 0.415624 0.938910
+vt 0.424838 0.961098
+vt 0.422132 0.962179
+vt 0.412918 0.939991
+vt 0.327340 0.677842
+vt 0.330045 0.677842
+vt 0.393907 0.680479
+vt 0.393900 0.621679
+vt 0.336469 0.937811
+vt 0.327255 0.959999
+vt 0.323534 0.959338
+vt 0.326240 0.960419
+vt 0.428051 0.620900
+vt 0.428050 0.679700
+vt 0.424626 0.680476
+vt 0.427332 0.680477
+vt 0.416805 0.620899
+vt 0.394617 0.620902
+vt 0.327338 0.617489
+vt 0.330044 0.617488
+vt 0.336050 0.936796
+vt 0.600502 0.961677
+vt 0.603391 0.962877
+vt 0.599437 0.972399
+vt 0.596547 0.971199
+vt 0.840818 0.958187
+vt 0.843708 0.958187
+vt 0.843708 0.974635
+vt 0.840818 0.974635
+vt 0.583716 0.961934
+vt 0.586606 0.960734
+vt 0.590561 0.970256
+vt 0.587671 0.971456
+vt 0.850327 0.958187
+vt 0.853216 0.958187
+vt 0.853217 0.974635
+vt 0.850327 0.974635
+vt 0.738124 0.973780
+vt 0.738122 0.957332
+vt 0.747644 0.957331
+vt 0.747646 0.973779
+vt 0.789470 0.973919
+vt 0.789472 0.957471
+vt 0.798994 0.957472
+vt 0.798992 0.973920
+vt 0.651825 0.961074
+vt 0.654715 0.962274
+vt 0.650761 0.971796
+vt 0.647871 0.970596
+vt 0.859836 0.958187
+vt 0.862726 0.958187
+vt 0.862725 0.974635
+vt 0.859836 0.974635
+vt 0.635040 0.962766
+vt 0.637930 0.961566
+vt 0.641884 0.971088
+vt 0.638995 0.972288
+vt 0.869344 0.958187
+vt 0.872234 0.958187
+vt 0.872235 0.974635
+vt 0.869345 0.974635
+vt 0.755240 0.973780
+vt 0.755238 0.957332
+vt 0.764760 0.957331
+vt 0.764762 0.973779
+vt 0.806586 0.974225
+vt 0.806588 0.957777
+vt 0.816110 0.957778
+vt 0.816108 0.974225
+vt 0.626164 0.961677
+vt 0.629053 0.962877
+vt 0.625099 0.972399
+vt 0.622209 0.971199
+vt 0.878854 0.959263
+vt 0.881744 0.959263
+vt 0.881743 0.975711
+vt 0.878853 0.975710
+vt 0.609378 0.962877
+vt 0.612268 0.961677
+vt 0.616222 0.971199
+vt 0.613333 0.972399
+vt 0.888362 0.959263
+vt 0.891252 0.959263
+vt 0.891252 0.975710
+vt 0.888363 0.975711
+vt 0.772356 0.973920
+vt 0.772354 0.957472
+vt 0.781876 0.957471
+vt 0.781878 0.973919
+vt 0.823702 0.974225
+vt 0.823704 0.957777
+vt 0.833226 0.957778
+vt 0.833224 0.974225
+vt 0.623141 0.955701
+vt 0.621236 0.956795
+vt 0.621237 0.940794
+vt 0.623143 0.939700
+vt 0.618385 0.957525
+vt 0.618386 0.941524
+vt 0.615021 0.957782
+vt 0.615022 0.941781
+vt 0.611657 0.957525
+vt 0.611658 0.941524
+vt 0.608805 0.956794
+vt 0.608806 0.940793
+vt 0.606899 0.955701
+vt 0.606900 0.939700
+vt 0.524319 0.958660
+vt 0.521213 0.957370
+vt 0.527858 0.941369
+vt 0.530964 0.942659
+vt 0.518106 0.956080
+vt 0.524751 0.940079
+vt 0.515472 0.954986
+vt 0.522117 0.938985
+vt 0.513712 0.954255
+vt 0.520357 0.938254
+vt 0.641207 0.955846
+vt 0.637843 0.955590
+vt 0.637842 0.939589
+vt 0.641206 0.939845
+vt 0.634479 0.955846
+vt 0.634478 0.939845
+vt 0.631627 0.956577
+vt 0.631626 0.940576
+vt 0.629722 0.957671
+vt 0.629721 0.941670
+vt 0.551293 0.954490
+vt 0.548187 0.955780
+vt 0.541542 0.939779
+vt 0.544649 0.938489
+vt 0.545080 0.957070
+vt 0.538435 0.941069
+vt 0.682783 0.955819
+vt 0.679677 0.956488
+vt 0.676570 0.955818
+vt 0.673937 0.953913
+vt 0.672177 0.951061
+vt 0.671560 0.947697
+vt 0.672178 0.944333
+vt 0.673938 0.941481
+vt 0.676572 0.939576
+vt 0.679679 0.938907
+vt 0.682785 0.939577
+vt 0.685419 0.941482
+vt 0.687178 0.944334
+vt 0.687796 0.947698
+vt 0.687177 0.951062
+vt 0.685417 0.953914
+vt 0.854833 0.979031
+vt 0.856805 0.980457
+vt 0.858123 0.982592
+vt 0.858586 0.985111
+vt 0.858124 0.987630
+vt 0.856806 0.989766
+vt 0.854834 0.991193
+vt 0.852508 0.991694
+vt 0.850182 0.991193
+vt 0.848210 0.989766
+vt 0.846892 0.987631
+vt 0.846429 0.985112
+vt 0.846891 0.982593
+vt 0.848209 0.980458
+vt 0.850181 0.979031
+vt 0.852507 0.978530
+vt 0.659962 0.940267
+vt 0.662596 0.942173
+vt 0.661154 0.943734
+vt 0.659182 0.942307
+vt 0.664356 0.945024
+vt 0.662472 0.945869
+vt 0.664974 0.948388
+vt 0.662935 0.948388
+vt 0.664357 0.951752
+vt 0.662473 0.950907
+vt 0.662597 0.954604
+vt 0.661155 0.953043
+vt 0.659964 0.956510
+vt 0.659183 0.954470
+vt 0.656857 0.957179
+vt 0.656857 0.954971
+vt 0.653751 0.956510
+vt 0.654531 0.954470
+vt 0.651117 0.954605
+vt 0.652559 0.953044
+vt 0.649357 0.951753
+vt 0.651241 0.950908
+vt 0.648738 0.948390
+vt 0.650778 0.948389
+vt 0.649356 0.945026
+vt 0.651240 0.945870
+vt 0.651115 0.942174
+vt 0.652557 0.943735
+vt 0.653749 0.940268
+vt 0.654529 0.942308
+vt 0.656855 0.939599
+vt 0.656856 0.941807
+vt 0.744015 0.989837
+vt 0.743196 0.988410
+vt 0.746495 0.988410
+vt 0.747314 0.989837
+vt 0.742649 0.986275
+vt 0.745948 0.986275
+vt 0.742457 0.983756
+vt 0.745756 0.983756
+vt 0.742649 0.981237
+vt 0.745948 0.981237
+vt 0.743197 0.979101
+vt 0.746496 0.979102
+vt 0.744016 0.977674
+vt 0.747315 0.977675
+vt 0.546463 0.968907
+vt 0.547429 0.966581
+vt 0.550728 0.967951
+vt 0.549762 0.970277
+vt 0.548395 0.964255
+vt 0.551694 0.965625
+vt 0.549214 0.962283
+vt 0.552513 0.963653
+vt 0.549761 0.960965
+vt 0.553060 0.962335
+vt 0.492824 0.973711
+vt 0.493016 0.971192
+vt 0.496316 0.971192
+vt 0.496123 0.973711
+vt 0.492824 0.968673
+vt 0.496123 0.968673
+vt 0.492277 0.966538
+vt 0.495576 0.966537
+vt 0.491458 0.965111
+vt 0.494757 0.965110
+vt 0.317583 0.970557
+vt 0.316617 0.968231
+vt 0.319916 0.966860
+vt 0.320882 0.969187
+vt 0.315651 0.965904
+vt 0.318950 0.964534
+vt 0.820551 0.143074
+vt 0.870568 0.143074
+vt 0.870572 0.263329
+vt 0.820554 0.263329
+vt 0.178611 0.371012
+vt 0.194932 0.442610
+vt 0.144914 0.454011
+vt 0.128594 0.382414
+vt 0.809984 0.140232
+vt 0.809971 0.260487
+vt 0.738373 0.260479
+vt 0.738387 0.140223
+vt 0.653492 0.143282
+vt 0.725089 0.143273
+vt 0.725102 0.263529
+vt 0.653505 0.263537
+vt 0.647505 0.140232
+vt 0.647501 0.260488
+vt 0.597484 0.260488
+vt 0.597487 0.140232
+vt 0.173070 0.472273
+vt 0.156749 0.543870
+vt 0.106732 0.532469
+vt 0.123052 0.460872
+vt 0.818264 0.263329
+vt 0.818261 0.143073
+vt 0.821230 0.266371
+vt 0.871248 0.266371
+vt 0.125628 0.383089
+vt 0.141948 0.454687
+vt 0.874214 0.263329
+vt 0.874210 0.143073
+vt 0.181577 0.370336
+vt 0.197898 0.441933
+vt 0.812274 0.140232
+vt 0.812261 0.260488
+vt 0.145590 0.456977
+vt 0.195608 0.445575
+vt 0.728745 0.263528
+vt 0.728731 0.143273
+vt 0.809294 0.263529
+vt 0.737697 0.263521
+vt 0.596808 0.263529
+vt 0.646825 0.263530
+vt 0.725765 0.140231
+vt 0.654167 0.140240
+vt 0.821227 0.140031
+vt 0.871244 0.140031
+vt 0.127918 0.379447
+vt 0.593842 0.260487
+vt 0.734731 0.260478
+vt 0.707399 0.089727
+vt 0.704431 0.090404
+vt 0.684426 0.002646
+vt 0.687400 0.001992
+vt 0.699988 0.091417
+vt 0.679976 0.003625
+vt 0.694747 0.092612
+vt 0.674726 0.004780
+vt 0.689506 0.093807
+vt 0.669475 0.005935
+vt 0.685062 0.094819
+vt 0.665025 0.006915
+vt 0.682094 0.095495
+vt 0.662051 0.007569
+vt 0.482620 0.351873
+vt 0.477245 0.352110
+vt 0.477255 0.264176
+vt 0.482631 0.263947
+vt 0.471869 0.351872
+vt 0.471880 0.263947
+vt 0.467312 0.351194
+vt 0.467323 0.263293
+vt 0.464267 0.350181
+vt 0.464278 0.262313
+vt 0.733428 0.044517
+vt 0.738669 0.045712
+vt 0.718649 0.133540
+vt 0.713399 0.132385
+vt 0.743910 0.046906
+vt 0.723899 0.134695
+vt 0.748353 0.047919
+vt 0.728350 0.135674
+vt 0.751322 0.048595
+vt 0.731324 0.136329
+vt 0.558705 0.089955
+vt 0.553330 0.089718
+vt 0.553320 0.001992
+vt 0.558695 0.002222
+vt 0.547954 0.089956
+vt 0.547944 0.002222
+vt 0.553333 0.114593
+vt 0.547957 0.114135
+vt 0.558708 0.114133
+vt 0.747579 0.025726
+vt 0.750636 0.024417
+vt 0.743005 0.027683
+vt 0.737609 0.029993
+vt 0.732214 0.032301
+vt 0.467311 0.360440
+vt 0.464266 0.362397
+vt 0.471869 0.359132
+vt 0.477244 0.358674
+vt 0.482619 0.359133
+vt 0.683717 0.104064
+vt 0.680661 0.102756
+vt 0.688291 0.106022
+vt 0.693687 0.108331
+vt 0.699082 0.110640
+vt 0.703656 0.112597
+vt 0.706713 0.113905
+vt 0.553335 0.137197
+vt 0.547959 0.135902
+vt 0.558710 0.135901
+vt 0.729451 0.006337
+vt 0.730291 0.002649
+vt 0.728193 0.011855
+vt 0.726709 0.018362
+vt 0.725227 0.024865
+vt 0.727640 0.034259
+vt 0.723972 0.030371
+vt 0.471868 0.360659
+vt 0.467311 0.364327
+vt 0.477244 0.359375
+vt 0.482619 0.360660
+vt 0.680049 0.107952
+vt 0.679213 0.104282
+vt 0.681305 0.113458
+vt 0.682787 0.119962
+vt 0.684270 0.126468
+vt 0.685528 0.131986
+vt 0.686368 0.135673
+vt 0.062715 0.958184
+vt 0.059746 0.962741
+vt 0.055303 0.965786
+vt 0.050062 0.966855
+vt 0.044821 0.965786
+vt 0.040378 0.962741
+vt 0.037409 0.958184
+vt 0.036366 0.952808
+vt 0.037408 0.947433
+vt 0.040377 0.942876
+vt 0.044820 0.939831
+vt 0.050061 0.938761
+vt 0.055302 0.939831
+vt 0.059745 0.942876
+vt 0.062714 0.947433
+vt 0.063757 0.952808
+vt 0.721899 0.949338
+vt 0.716523 0.950633
+vt 0.716523 0.947794
+vt 0.721001 0.946716
+vt 0.711148 0.949337
+vt 0.712046 0.946715
+vt 0.706591 0.945649
+vt 0.708251 0.943644
+vt 0.703547 0.940131
+vt 0.705716 0.939048
+vt 0.702478 0.933624
+vt 0.704826 0.933628
+vt 0.703548 0.927121
+vt 0.705717 0.928211
+vt 0.706594 0.921615
+vt 0.708254 0.923626
+vt 0.711151 0.917946
+vt 0.712049 0.920570
+vt 0.716527 0.916663
+vt 0.716527 0.919501
+vt 0.721902 0.917948
+vt 0.721004 0.920571
+vt 0.726459 0.921617
+vt 0.724799 0.923628
+vt 0.729503 0.927124
+vt 0.727335 0.928214
+vt 0.730572 0.933627
+vt 0.728225 0.933630
+vt 0.729502 0.940134
+vt 0.727333 0.939050
+vt 0.726456 0.945651
+vt 0.724797 0.943645
+vt 0.958174 0.557044
+vt 0.953696 0.558122
+vt 0.953698 0.536810
+vt 0.957551 0.536439
+vt 0.949219 0.557043
+vt 0.949844 0.536438
+vt 0.837938 0.637281
+vt 0.837238 0.634210
+vt 0.854576 0.615618
+vt 0.857072 0.616676
+vt 0.836190 0.629613
+vt 0.850840 0.614036
+vt 0.834954 0.624194
+vt 0.846434 0.612171
+vt 0.833720 0.618777
+vt 0.842031 0.610306
+vt 0.832674 0.614192
+vt 0.838303 0.608728
+vt 0.831978 0.611136
+vt 0.835819 0.607676
+vt 0.303962 0.896762
+vt 0.299485 0.895693
+vt 0.299485 0.892934
+vt 0.303338 0.893302
+vt 0.295008 0.896763
+vt 0.295631 0.893303
+vt 0.933755 0.589280
+vt 0.934452 0.586224
+vt 0.940081 0.591688
+vt 0.937596 0.592740
+vt 0.935498 0.581638
+vt 0.943809 0.590109
+vt 0.936732 0.576221
+vt 0.948212 0.588244
+vt 0.937968 0.570801
+vt 0.952617 0.586379
+vt 0.939015 0.566206
+vt 0.956353 0.584797
+vt 0.939715 0.563135
+vt 0.958850 0.583741
+vt 0.953700 0.514219
+vt 0.957554 0.514409
+vt 0.949847 0.514408
+vt 0.854724 0.595186
+vt 0.857132 0.594646
+vt 0.851122 0.595993
+vt 0.846873 0.596946
+vt 0.842627 0.597898
+vt 0.839032 0.598705
+vt 0.836636 0.599242
+vt 0.299484 0.885056
+vt 0.303337 0.884868
+vt 0.295630 0.884869
+vt 0.940810 0.601711
+vt 0.938414 0.601174
+vt 0.944405 0.602517
+vt 0.948651 0.603469
+vt 0.952899 0.604422
+vt 0.956502 0.605230
+vt 0.958910 0.605770
+vt 0.953704 0.481566
+vt 0.957558 0.481756
+vt 0.949851 0.481755
+vt 0.847281 0.562532
+vt 0.849689 0.561993
+vt 0.843678 0.563340
+vt 0.839430 0.564293
+vt 0.835184 0.565245
+vt 0.618603 0.934998
+vt 0.615008 0.935805
+vt 0.607565 0.903152
+vt 0.611160 0.902345
+vt 0.829193 0.566589
+vt 0.831589 0.566051
+vt 0.299480 0.852403
+vt 0.303333 0.852215
+vt 0.295626 0.852216
+vt 0.933366 0.634364
+vt 0.930971 0.633827
+vt 0.936961 0.635170
+vt 0.941207 0.636122
+vt 0.945456 0.637075
+vt 0.949059 0.637883
+vt 0.951466 0.638424
+vt 0.154586 0.939137
+vt 0.155240 0.942111
+vt 0.153052 0.942610
+vt 0.152374 0.939641
+vt 0.156219 0.946562
+vt 0.154065 0.947053
+vt 0.157374 0.951812
+vt 0.155260 0.952294
+vt 0.158529 0.957062
+vt 0.156454 0.957535
+vt 0.159509 0.961513
+vt 0.157467 0.961978
+vt 0.160163 0.964486
+vt 0.158143 0.964947
+vt 0.599200 0.938486
+vt 0.599430 0.943861
+vt 0.597417 0.943861
+vt 0.597180 0.938486
+vt 0.599200 0.949237
+vt 0.597179 0.949237
+vt 0.598546 0.953794
+vt 0.596502 0.953794
+vt 0.597567 0.956839
+vt 0.595489 0.956839
+vt 0.557453 0.956414
+vt 0.558608 0.951164
+vt 0.560726 0.951646
+vt 0.559531 0.956888
+vt 0.559763 0.945914
+vt 0.561921 0.946405
+vt 0.560742 0.941463
+vt 0.562933 0.941962
+vt 0.561397 0.938489
+vt 0.563610 0.938993
+vt 0.701232 0.975507
+vt 0.701002 0.980882
+vt 0.698782 0.980882
+vt 0.699019 0.975507
+vt 0.701232 0.986258
+vt 0.699020 0.986258
+vt 0.661834 0.961074
+vt 0.662129 0.966450
+vt 0.660997 0.966450
+vt 0.660702 0.961074
+vt 0.518405 0.967032
+vt 0.518159 0.971509
+vt 0.517028 0.971509
+vt 0.517273 0.967032
+vt 0.661834 0.971825
+vt 0.660702 0.971825
+vt 0.518159 0.962555
+vt 0.517027 0.962555
+vt 0.728319 0.005680
+vt 0.729159 0.001992
+vt 0.836806 0.637938
+vt 0.836106 0.634867
+vt 0.727061 0.011198
+vt 0.835058 0.630270
+vt 0.725578 0.017705
+vt 0.833823 0.624851
+vt 0.724095 0.024208
+vt 0.832588 0.619434
+vt 0.722840 0.029714
+vt 0.831543 0.614849
+vt 0.723136 0.034040
+vt 0.722004 0.033383
+vt 0.830846 0.611793
+vt 0.676952 0.960383
+vt 0.676659 0.965758
+vt 0.675527 0.965758
+vt 0.675820 0.960383
+vt 0.510797 0.969587
+vt 0.511040 0.974065
+vt 0.509909 0.974065
+vt 0.509665 0.969587
+vt 0.676952 0.971134
+vt 0.675820 0.971134
+vt 0.511041 0.965110
+vt 0.509909 0.965110
+vt 0.678918 0.108609
+vt 0.678081 0.104939
+vt 0.932624 0.588623
+vt 0.933320 0.585567
+vt 0.680173 0.114115
+vt 0.934366 0.580981
+vt 0.681655 0.120618
+vt 0.935601 0.575564
+vt 0.683138 0.127125
+vt 0.936836 0.570144
+vt 0.684396 0.132643
+vt 0.937883 0.565549
+vt 0.685237 0.136330
+vt 0.938583 0.562478
+vt 0.610411 0.089734
+vt 0.607442 0.090412
+vt 0.587436 0.002646
+vt 0.590410 0.001992
+vt 0.602999 0.091425
+vt 0.582985 0.003625
+vt 0.597758 0.092620
+vt 0.577735 0.004780
+vt 0.592517 0.093814
+vt 0.572485 0.005935
+vt 0.588074 0.094827
+vt 0.568034 0.006915
+vt 0.585105 0.095503
+vt 0.565060 0.007569
+vt 0.457897 0.351880
+vt 0.452522 0.352118
+vt 0.452532 0.264176
+vt 0.457908 0.263947
+vt 0.447146 0.351879
+vt 0.447157 0.263947
+vt 0.442589 0.351202
+vt 0.442599 0.263293
+vt 0.439544 0.350189
+vt 0.439554 0.262313
+vt 0.636439 0.044517
+vt 0.641680 0.045712
+vt 0.621658 0.133548
+vt 0.616408 0.132393
+vt 0.646921 0.046906
+vt 0.626908 0.134703
+vt 0.651365 0.047919
+vt 0.631359 0.135682
+vt 0.654334 0.048595
+vt 0.634333 0.136336
+vt 0.541589 0.089963
+vt 0.536214 0.089726
+vt 0.536204 0.001992
+vt 0.541579 0.002222
+vt 0.530838 0.089964
+vt 0.530828 0.002222
+vt 0.536217 0.114601
+vt 0.530841 0.114142
+vt 0.541592 0.114141
+vt 0.650590 0.025726
+vt 0.653647 0.024417
+vt 0.646016 0.027683
+vt 0.640620 0.029993
+vt 0.635225 0.032301
+vt 0.442588 0.360447
+vt 0.439543 0.362405
+vt 0.447145 0.359140
+vt 0.452521 0.358681
+vt 0.457896 0.359141
+vt 0.586728 0.104072
+vt 0.583672 0.102764
+vt 0.591303 0.106030
+vt 0.596698 0.108339
+vt 0.602094 0.110648
+vt 0.606668 0.112605
+vt 0.609724 0.113913
+vt 0.536219 0.137204
+vt 0.530843 0.135910
+vt 0.541594 0.135909
+vt 0.632462 0.006337
+vt 0.633302 0.002649
+vt 0.631204 0.011855
+vt 0.629720 0.018362
+vt 0.628238 0.024865
+vt 0.630651 0.034259
+vt 0.626983 0.030371
+vt 0.447145 0.360666
+vt 0.442588 0.364335
+vt 0.452521 0.359383
+vt 0.457896 0.360668
+vt 0.583060 0.107960
+vt 0.582224 0.104290
+vt 0.584316 0.113466
+vt 0.585798 0.119969
+vt 0.587281 0.126476
+vt 0.588539 0.131994
+vt 0.589379 0.135681
+vt 0.096947 0.958559
+vt 0.093978 0.963116
+vt 0.089535 0.966161
+vt 0.084294 0.967231
+vt 0.079053 0.966161
+vt 0.074610 0.963116
+vt 0.071641 0.958559
+vt 0.070598 0.953184
+vt 0.071640 0.947808
+vt 0.074609 0.943251
+vt 0.079052 0.940206
+vt 0.084293 0.939137
+vt 0.089534 0.940206
+vt 0.093977 0.943251
+vt 0.096946 0.947808
+vt 0.097989 0.953184
+vt 0.687818 0.933718
+vt 0.682443 0.935012
+vt 0.682443 0.932174
+vt 0.686920 0.931096
+vt 0.677067 0.933717
+vt 0.677966 0.931095
+vt 0.672511 0.930029
+vt 0.674171 0.928024
+vt 0.669466 0.924511
+vt 0.671635 0.923427
+vt 0.668398 0.918004
+vt 0.670745 0.918008
+vt 0.669468 0.911501
+vt 0.671636 0.912591
+vt 0.672513 0.905995
+vt 0.674173 0.908006
+vt 0.677071 0.902326
+vt 0.677969 0.904950
+vt 0.682447 0.901043
+vt 0.682446 0.903881
+vt 0.687822 0.902328
+vt 0.686924 0.904951
+vt 0.692379 0.905997
+vt 0.690719 0.908008
+vt 0.695423 0.911504
+vt 0.693254 0.912594
+vt 0.696492 0.918007
+vt 0.694144 0.918010
+vt 0.695422 0.924514
+vt 0.693253 0.923430
+vt 0.692376 0.930031
+vt 0.690716 0.928025
+vt 0.973851 0.557044
+vt 0.969373 0.558122
+vt 0.969375 0.536810
+vt 0.973229 0.536439
+vt 0.964896 0.557043
+vt 0.965522 0.536438
+vt 0.871863 0.638946
+vt 0.871163 0.635875
+vt 0.888501 0.617283
+vt 0.890998 0.618341
+vt 0.870116 0.631278
+vt 0.884765 0.615701
+vt 0.868880 0.625859
+vt 0.880360 0.613836
+vt 0.867646 0.620442
+vt 0.875957 0.611971
+vt 0.866600 0.615857
+vt 0.872229 0.610393
+vt 0.865904 0.612801
+vt 0.869745 0.609341
+vt 0.288748 0.896672
+vt 0.284271 0.895603
+vt 0.284270 0.892844
+vt 0.288124 0.893212
+vt 0.279794 0.896673
+vt 0.280417 0.893213
+vt 0.350880 0.967248
+vt 0.351576 0.964191
+vt 0.357205 0.969656
+vt 0.354721 0.970708
+vt 0.900526 0.587403
+vt 0.901572 0.582817
+vt 0.909883 0.591289
+vt 0.906155 0.592868
+vt 0.902807 0.577401
+vt 0.914286 0.589424
+vt 0.904042 0.571981
+vt 0.918692 0.587559
+vt 0.905089 0.567386
+vt 0.922427 0.585977
+vt 0.905789 0.564315
+vt 0.924924 0.584920
+vt 0.969378 0.514219
+vt 0.973231 0.514409
+vt 0.965524 0.514408
+vt 0.888650 0.596851
+vt 0.891058 0.596311
+vt 0.885047 0.597658
+vt 0.880799 0.598611
+vt 0.876553 0.599563
+vt 0.872958 0.600370
+vt 0.870562 0.600907
+vt 0.284270 0.884966
+vt 0.288123 0.884778
+vt 0.280416 0.884779
+vt 0.903671 0.593920
+vt 0.906884 0.602891
+vt 0.904488 0.602354
+vt 0.910479 0.603697
+vt 0.914725 0.604649
+vt 0.918974 0.605602
+vt 0.922576 0.606410
+vt 0.924984 0.606950
+vt 0.969382 0.481566
+vt 0.973235 0.481756
+vt 0.965528 0.481755
+vt 0.881207 0.564197
+vt 0.883615 0.563658
+vt 0.877604 0.565005
+vt 0.873355 0.565958
+vt 0.869109 0.566910
+vt 0.865515 0.567716
+vt 0.863119 0.568254
+vt 0.284266 0.852313
+vt 0.288119 0.852125
+vt 0.280412 0.852125
+vt 0.899441 0.635544
+vt 0.897045 0.635007
+vt 0.903036 0.636350
+vt 0.907282 0.637302
+vt 0.911530 0.638255
+vt 0.915133 0.639063
+vt 0.917540 0.639603
+vt 0.169793 0.939080
+vt 0.170447 0.942054
+vt 0.168266 0.942551
+vt 0.167589 0.939583
+vt 0.171426 0.946505
+vt 0.169279 0.946994
+vt 0.172581 0.951755
+vt 0.170474 0.952235
+vt 0.173736 0.957005
+vt 0.171668 0.957476
+vt 0.174715 0.961456
+vt 0.172681 0.961920
+vt 0.175369 0.964430
+vt 0.173357 0.964889
+vt 0.587782 0.938486
+vt 0.588012 0.943861
+vt 0.586007 0.943861
+vt 0.585769 0.938486
+vt 0.587782 0.949237
+vt 0.585768 0.949237
+vt 0.587128 0.953794
+vt 0.585091 0.953794
+vt 0.586149 0.956839
+vt 0.584078 0.956839
+vt 0.570765 0.956411
+vt 0.571920 0.951161
+vt 0.574031 0.951642
+vt 0.572836 0.956883
+vt 0.573075 0.945911
+vt 0.575226 0.946401
+vt 0.574055 0.941460
+vt 0.576238 0.941957
+vt 0.574709 0.938486
+vt 0.576914 0.938988
+vt 0.692795 0.975507
+vt 0.692565 0.980882
+vt 0.690353 0.980882
+vt 0.690590 0.975507
+vt 0.692795 0.986258
+vt 0.690591 0.986258
+vt 0.684071 0.960383
+vt 0.684366 0.965758
+vt 0.683234 0.965758
+vt 0.682939 0.960383
+vt 0.525770 0.967032
+vt 0.525524 0.971509
+vt 0.524392 0.971509
+vt 0.524638 0.967032
+vt 0.684071 0.971134
+vt 0.682939 0.971134
+vt 0.525524 0.962555
+vt 0.524392 0.962555
+vt 0.631330 0.005680
+vt 0.632171 0.001992
+vt 0.870732 0.639603
+vt 0.870032 0.636532
+vt 0.630072 0.011198
+vt 0.868984 0.631935
+vt 0.628589 0.017705
+vt 0.867748 0.626516
+vt 0.627106 0.024208
+vt 0.866514 0.621099
+vt 0.625851 0.029714
+vt 0.865469 0.616514
+vt 0.626147 0.034040
+vt 0.625015 0.033383
+vt 0.864772 0.613458
+vt 0.669540 0.961074
+vt 0.669248 0.966450
+vt 0.668116 0.966450
+vt 0.668409 0.961074
+vt 0.503434 0.969587
+vt 0.503678 0.974065
+vt 0.502546 0.974065
+vt 0.502302 0.969587
+vt 0.669541 0.971825
+vt 0.668409 0.971825
+vt 0.503678 0.965110
+vt 0.502546 0.965110
+vt 0.581929 0.108617
+vt 0.581092 0.104947
+vt 0.899830 0.590460
+vt 0.898698 0.589803
+vt 0.899395 0.586747
+vt 0.583184 0.114123
+vt 0.900440 0.582160
+vt 0.584666 0.120626
+vt 0.901675 0.576744
+vt 0.586150 0.127133
+vt 0.902910 0.571324
+vt 0.587407 0.132651
+vt 0.903958 0.566729
+vt 0.588248 0.136338
+vt 0.904658 0.563658
+vt 0.098039 0.844594
+vt 0.099156 0.839700
+vt 0.124726 0.845528
+vt 0.123609 0.850423
+vt 0.100827 0.832374
+vt 0.126396 0.838202
+vt 0.102797 0.823732
+vt 0.128366 0.829561
+vt 0.104766 0.815091
+vt 0.130336 0.820919
+vt 0.106436 0.807764
+vt 0.132005 0.813593
+vt 0.107551 0.802869
+vt 0.133120 0.808698
+vt 0.053806 0.903085
+vt 0.053415 0.911949
+vt 0.027846 0.911952
+vt 0.028236 0.903088
+vt 0.053808 0.920812
+vt 0.028238 0.920815
+vt 0.054925 0.928326
+vt 0.029355 0.928329
+vt 0.056595 0.933346
+vt 0.031026 0.933349
+vt 0.762128 0.918103
+vt 0.764098 0.926745
+vt 0.738529 0.932573
+vt 0.736559 0.923932
+vt 0.766068 0.935386
+vt 0.740498 0.941215
+vt 0.767738 0.942712
+vt 0.742168 0.948541
+vt 0.768853 0.947608
+vt 0.743283 0.953436
+vt 0.145378 0.964708
+vt 0.136515 0.965099
+vt 0.136518 0.939530
+vt 0.145381 0.939139
+vt 0.127651 0.964706
+vt 0.127654 0.939137
+vt 0.016865 0.834901
+vt 0.015147 0.826038
+vt 0.016866 0.817175
+vt 0.021761 0.809661
+vt 0.029087 0.804640
+vt 0.037729 0.802877
+vt 0.046371 0.804640
+vt 0.053696 0.809661
+vt 0.058591 0.817175
+vt 0.060310 0.826038
+vt 0.058591 0.834901
+vt 0.053695 0.842415
+vt 0.046369 0.847436
+vt 0.037728 0.849199
+vt 0.029086 0.847436
+vt 0.021760 0.842415
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.999837 -0.018060 0.000034
+vn 0.999837 -0.018059 0.000034
+vn 0.999837 -0.018060 0.000034
+vn 0.999837 -0.018059 0.000034
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000034
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000034
+vn 0.988458 0.151496 0.000014
+vn 0.988458 0.151496 0.000014
+vn 0.988458 0.151496 0.000014
+vn 0.988458 0.151496 0.000014
+vn -0.123456 0.992350 -0.000123
+vn -0.123456 0.992350 -0.000123
+vn -0.123456 0.992350 -0.000123
+vn -0.123456 0.992350 -0.000123
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.008421 0.391492 0.920143
+vn 0.008421 0.391492 0.920143
+vn 0.008421 0.391492 0.920143
+vn 0.008421 0.391492 0.920143
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.008481 0.391269 -0.920237
+vn 0.008481 0.391269 -0.920237
+vn 0.008481 0.391269 -0.920237
+vn 0.008481 0.391269 -0.920237
+vn 0.007187 0.396099 -0.918180
+vn 0.007187 0.396099 -0.918180
+vn 0.007187 0.396099 -0.918180
+vn 0.007187 0.396099 -0.918180
+vn -0.017794 -0.985319 -0.169793
+vn -0.017794 -0.985319 -0.169793
+vn -0.017794 -0.985319 -0.169793
+vn -0.017794 -0.985319 -0.169793
+vn 0.018056 0.999837 -0.000120
+vn 0.018056 0.999837 -0.000120
+vn 0.018055 0.999837 -0.000120
+vn 0.018055 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000119
+vn 0.018060 0.999837 -0.000119
+vn 0.018060 0.999837 -0.000119
+vn 0.018060 0.999837 -0.000119
+vn 0.018056 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000119
+vn 0.018056 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000119
+vn 0.007118 0.396320 0.918085
+vn 0.007118 0.396320 0.918085
+vn 0.007118 0.396320 0.918085
+vn 0.007118 0.396320 0.918085
+vn -0.017805 -0.985279 0.170027
+vn -0.017805 -0.985279 0.170027
+vn -0.017805 -0.985279 0.170027
+vn -0.017805 -0.985279 0.170027
+vn 0.999837 -0.018061 0.000034
+vn 0.999837 -0.018061 0.000034
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.706967 -0.012685 0.707132
+vn 0.706967 -0.012685 0.707132
+vn 0.706967 -0.012685 0.707132
+vn 0.706967 -0.012685 0.707132
+vn 0.675729 -0.737150 0.000110
+vn 0.675729 -0.737150 0.000110
+vn 0.675729 -0.737150 0.000110
+vn 0.675729 -0.737150 0.000110
+vn -0.048653 -0.705349 0.707189
+vn -0.048653 -0.705349 0.707189
+vn -0.048653 -0.705349 0.707189
+vn -0.048653 -0.705349 0.707189
+vn 0.707013 -0.012854 -0.707083
+vn 0.707013 -0.012854 -0.707083
+vn 0.707013 -0.012854 -0.707083
+vn 0.707013 -0.012854 -0.707083
+vn -0.048607 -0.705518 -0.707023
+vn -0.048607 -0.705518 -0.707023
+vn -0.048607 -0.705518 -0.707023
+vn -0.048607 -0.705518 -0.707023
+vn 0.707016 -0.012854 -0.707080
+vn 0.707016 -0.012854 -0.707080
+vn 0.707016 -0.012854 -0.707080
+vn 0.707016 -0.012854 -0.707080
+vn 0.675731 -0.737148 0.000110
+vn 0.675731 -0.737148 0.000110
+vn 0.675731 -0.737148 0.000110
+vn 0.675731 -0.737149 0.000110
+vn 0.675731 -0.737149 0.000110
+vn 0.675730 -0.737149 0.000111
+vn 0.675730 -0.737150 0.000111
+vn 0.675730 -0.737150 0.000111
+vn 0.675731 -0.737148 0.000110
+vn 0.675730 -0.737149 0.000111
+vn 0.675731 -0.737149 0.000110
+vn 0.706971 -0.012687 0.707129
+vn 0.706971 -0.012687 0.707129
+vn 0.706971 -0.012687 0.707129
+vn 0.706971 -0.012687 0.707129
+vn 0.698920 0.107207 0.707119
+vn 0.698920 0.107207 0.707119
+vn 0.698920 0.107207 0.707119
+vn 0.698920 0.107207 0.707119
+vn 0.603173 0.797610 -0.000076
+vn 0.603173 0.797610 -0.000076
+vn 0.603173 0.797610 -0.000076
+vn 0.603173 0.797610 -0.000076
+vn -0.087319 0.701778 0.707024
+vn -0.087319 0.701778 0.707024
+vn -0.087319 0.701778 0.707024
+vn -0.087319 0.701778 0.707024
+vn 0.698966 0.107037 -0.707099
+vn 0.698966 0.107037 -0.707099
+vn 0.698966 0.107037 -0.707099
+vn 0.698966 0.107037 -0.707099
+vn -0.087273 0.701611 -0.707196
+vn -0.087273 0.701611 -0.707196
+vn -0.087273 0.701611 -0.707196
+vn -0.087273 0.701611 -0.707196
+vn 0.668762 0.743476 -0.000067
+vn 0.668762 0.743476 -0.000067
+vn 0.668762 0.743476 -0.000067
+vn 0.668762 0.743476 -0.000067
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn 0.752866 -0.658174 0.000103
+vn 0.752866 -0.658174 0.000103
+vn 0.752866 -0.658174 0.000103
+vn 0.752866 -0.658174 0.000103
+vn -0.012747 -0.707075 -0.707023
+vn -0.012747 -0.707075 -0.707024
+vn -0.012747 -0.707075 -0.707023
+vn -0.012747 -0.707075 -0.707024
+vn -0.706961 0.012685 -0.707139
+vn -0.706961 0.012685 -0.707139
+vn -0.706961 0.012685 -0.707139
+vn -0.706961 0.012685 -0.707139
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.707015 0.012855 0.707082
+vn -0.707015 0.012855 0.707082
+vn -0.707015 0.012855 0.707082
+vn -0.707015 0.012855 0.707082
+vn 0.003776 0.199881 0.979813
+vn 0.003776 0.199881 0.979813
+vn 0.003776 0.199881 0.979813
+vn 0.003776 0.199881 0.979813
+vn -0.701602 0.286641 0.652373
+vn -0.701602 0.286641 0.652373
+vn -0.701602 0.286642 0.652373
+vn -0.701602 0.286641 0.652373
+vn 0.020763 0.833940 0.551464
+vn 0.020763 0.833940 0.551464
+vn 0.020763 0.833940 0.551464
+vn 0.020763 0.833940 0.551464
+vn -0.691681 0.722203 -0.000109
+vn -0.691681 0.722203 -0.000109
+vn -0.691681 0.722203 -0.000109
+vn -0.691681 0.722203 -0.000109
+vn 0.020799 0.833811 -0.551658
+vn 0.020799 0.833811 -0.551657
+vn 0.020799 0.833811 -0.551657
+vn 0.020799 0.833811 -0.551657
+vn -0.701563 0.286484 -0.652484
+vn -0.701563 0.286484 -0.652484
+vn -0.701563 0.286484 -0.652484
+vn -0.701563 0.286484 -0.652484
+vn 0.003840 0.199645 -0.979861
+vn 0.003840 0.199645 -0.979861
+vn 0.003840 0.199645 -0.979861
+vn 0.003840 0.199645 -0.979861
+vn 0.007885 0.395841 -0.918285
+vn 0.007885 0.395841 -0.918285
+vn 0.007885 0.395841 -0.918285
+vn 0.007885 0.395841 -0.918285
+vn -0.008571 -0.476202 -0.879294
+vn -0.008571 -0.476202 -0.879294
+vn -0.008571 -0.476202 -0.879294
+vn -0.008571 -0.476202 -0.879294
+vn 0.694411 -0.709496 -0.120038
+vn 0.694411 -0.709496 -0.120038
+vn 0.694411 -0.709496 -0.120038
+vn 0.694411 -0.709496 -0.120038
+vn 0.021587 0.999767 -0.000120
+vn 0.021587 0.999767 -0.000120
+vn 0.021587 0.999767 -0.000120
+vn 0.021584 0.999767 -0.000119
+vn 0.021581 0.999767 -0.000119
+vn 0.021587 0.999767 -0.000120
+vn 0.021584 0.999767 -0.000119
+vn 0.015103 0.835344 -0.549520
+vn 0.015103 0.835344 -0.549520
+vn 0.015103 0.835344 -0.549520
+vn 0.015103 0.835344 -0.549520
+vn 0.021584 0.999767 -0.000119
+vn 0.021580 0.999767 -0.000119
+vn 0.021581 0.999767 -0.000119
+vn 0.021580 0.999767 -0.000119
+vn 0.015066 0.835472 0.549327
+vn 0.015066 0.835472 0.549327
+vn 0.015066 0.835472 0.549327
+vn 0.015066 0.835472 0.549327
+vn 0.007826 0.396062 0.918190
+vn 0.007826 0.396062 0.918190
+vn 0.007826 0.396062 0.918190
+vn 0.007826 0.396062 0.918190
+vn 0.694403 -0.709467 0.120252
+vn 0.694403 -0.709467 0.120252
+vn 0.694403 -0.709467 0.120252
+vn 0.694403 -0.709467 0.120252
+vn -0.008630 -0.475989 0.879409
+vn -0.008630 -0.475989 0.879409
+vn -0.008630 -0.475989 0.879409
+vn -0.008630 -0.475989 0.879409
+vn -0.018060 -0.999837 0.000120
+vn -0.018060 -0.999837 0.000120
+vn -0.018060 -0.999837 0.000120
+vn -0.018060 -0.999837 0.000120
+vn 0.694406 -0.709464 0.120252
+vn 0.694406 -0.709464 0.120252
+vn 0.694406 -0.709464 0.120252
+vn 0.694406 -0.709464 0.120252
+vn 0.694414 -0.709493 -0.120036
+vn 0.694414 -0.709493 -0.120036
+vn 0.694414 -0.709493 -0.120036
+vn 0.694414 -0.709493 -0.120036
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694215 -0.000059
+vn 0.719767 0.694215 -0.000059
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694215 -0.000059
+vn 0.719767 0.694215 -0.000059
+vn 0.712072 0.267316 -0.649228
+vn 0.712072 0.267316 -0.649228
+vn 0.712071 0.267316 -0.649228
+vn 0.712072 0.267316 -0.649228
+vn 0.712029 0.267471 0.649210
+vn 0.712029 0.267471 0.649210
+vn 0.712029 0.267471 0.649210
+vn 0.712029 0.267471 0.649210
+vn 0.282098 -0.307667 0.908714
+vn 0.282098 -0.307667 0.908714
+vn 0.282098 -0.307667 0.908714
+vn 0.282161 -0.307882 -0.908622
+vn 0.282161 -0.307882 -0.908622
+vn 0.282161 -0.307882 -0.908622
+vn 0.546652 -0.596392 -0.587782
+vn 0.546652 -0.596392 -0.587782
+vn 0.546652 -0.596392 -0.587782
+vn 0.546620 -0.596256 0.587950
+vn 0.546620 -0.596256 0.587950
+vn 0.546620 -0.596256 0.587950
+vn 0.494681 0.654229 0.572079
+vn 0.494681 0.654229 0.572079
+vn 0.494681 0.654229 0.572079
+vn 0.494712 0.654101 -0.572200
+vn 0.494712 0.654101 -0.572200
+vn 0.494712 0.654101 -0.572200
+vn 0.268488 0.298336 -0.915920
+vn 0.268488 0.298336 -0.915920
+vn 0.268488 0.298336 -0.915920
+vn 0.268423 0.298557 0.915867
+vn 0.268423 0.298557 0.915867
+vn 0.268423 0.298557 0.915867
+vn 0.591594 -0.517122 0.618547
+vn 0.591594 -0.517123 0.618548
+vn 0.591594 -0.517122 0.618547
+vn 0.591634 -0.517272 -0.618385
+vn 0.591634 -0.517272 -0.618385
+vn 0.591634 -0.517272 -0.618385
+vn -0.587662 -0.566896 -0.577307
+vn -0.587662 -0.566896 -0.577307
+vn -0.587662 -0.566896 -0.577307
+vn -0.587702 -0.566765 0.577393
+vn -0.587702 -0.566765 0.577393
+vn -0.587702 -0.566765 0.577393
+vn -0.632521 0.163885 0.757007
+vn -0.632521 0.163885 0.757007
+vn -0.632521 0.163885 0.757007
+vn -0.527105 0.710630 0.466010
+vn -0.527106 0.710629 0.466010
+vn -0.527106 0.710629 0.466010
+vn -0.527081 0.710520 -0.466205
+vn -0.527081 0.710520 -0.466205
+vn -0.527081 0.710520 -0.466205
+vn -0.632471 0.163698 -0.757089
+vn -0.632471 0.163698 -0.757089
+vn -0.632471 0.163698 -0.757089
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.018057 0.835287 -0.549518
+vn 0.018057 0.835287 -0.549518
+vn 0.018057 0.835287 -0.549518
+vn 0.018057 0.835287 -0.549518
+vn 0.018017 0.835415 0.549325
+vn 0.018017 0.835415 0.549325
+vn 0.018017 0.835415 0.549325
+vn 0.018017 0.835415 0.549325
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.698593 -0.715519 0.000107
+vn 0.698593 -0.715519 0.000107
+vn 0.698593 -0.715519 0.000107
+vn 0.698593 -0.715519 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.632306 -0.377837 -0.676335
+vn 0.632306 -0.377837 -0.676335
+vn 0.632306 -0.377837 -0.676335
+vn 0.556051 0.691400 -0.461273
+vn 0.556051 0.691400 -0.461273
+vn 0.556051 0.691400 -0.461273
+vn 0.632265 -0.377680 0.676461
+vn 0.632265 -0.377680 0.676461
+vn 0.632265 -0.377680 0.676461
+vn 0.556010 0.691516 0.461149
+vn 0.556010 0.691516 0.461149
+vn 0.556010 0.691516 0.461149
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.000032 0.000119 1.000000
+vn -0.000032 0.000119 1.000000
+vn -0.000032 0.000119 1.000000
+vn -0.000032 0.000119 1.000000
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.977890 0.209120 0.000007
+vn 0.977890 0.209120 0.000007
+vn 0.977890 0.209120 0.000007
+vn 0.977890 0.209120 0.000007
+vn -0.061458 0.998110 -0.000122
+vn -0.061458 0.998110 -0.000122
+vn -0.061458 0.998110 -0.000122
+vn -0.061458 0.998110 -0.000122
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn -0.719756 -0.694227 0.000060
+vn -0.719756 -0.694227 0.000060
+vn -0.719756 -0.694227 0.000060
+vn -0.719756 -0.694227 0.000060
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.707016 0.012855 0.707080
+vn -0.707016 0.012855 0.707080
+vn -0.707016 0.012855 0.707080
+vn -0.707016 0.012855 0.707080
+vn 0.771826 -0.635834 0.000102
+vn 0.771826 -0.635834 0.000102
+vn 0.771826 -0.635834 0.000102
+vn 0.771826 -0.635834 0.000102
+vn 0.691449 0.147954 0.707112
+vn 0.691449 0.147954 0.707112
+vn 0.691449 0.147954 0.707112
+vn 0.691449 0.147954 0.707112
+vn -0.723974 0.689827 -0.000106
+vn -0.723974 0.689827 -0.000106
+vn -0.723974 0.689827 -0.000106
+vn -0.723974 0.689827 -0.000106
+vn -0.043501 0.705901 0.706973
+vn -0.043501 0.705901 0.706973
+vn -0.043501 0.705901 0.706973
+vn -0.043501 0.705901 0.706973
+vn 0.602702 0.797967 -0.000076
+vn 0.602702 0.797966 -0.000076
+vn 0.602702 0.797967 -0.000076
+vn 0.602702 0.797966 -0.000076
+vn -0.706969 0.012685 -0.707131
+vn -0.706969 0.012685 -0.707131
+vn -0.706969 0.012685 -0.707131
+vn -0.706969 0.012685 -0.707131
+vn -0.043455 0.705733 -0.707144
+vn -0.043455 0.705733 -0.707144
+vn -0.043455 0.705733 -0.707144
+vn -0.043455 0.705733 -0.707144
+vn 0.691496 0.147787 -0.707101
+vn 0.691496 0.147787 -0.707101
+vn 0.691496 0.147787 -0.707101
+vn 0.691496 0.147787 -0.707101
+vn -0.021752 -0.557149 -0.830128
+vn -0.021752 -0.557149 -0.830128
+vn -0.021752 -0.557149 -0.830128
+vn -0.021752 -0.557149 -0.830128
+vn -0.587702 -0.566766 0.577392
+vn -0.587702 -0.566766 0.577392
+vn -0.587702 -0.566766 0.577392
+vn 0.595327 -0.490368 0.636494
+vn 0.595327 -0.490368 0.636494
+vn 0.595327 -0.490368 0.636494
+vn -0.598283 0.570106 0.563060
+vn -0.598283 0.570106 0.563060
+vn -0.598283 0.570106 0.563060
+vn 0.501146 0.663599 0.555418
+vn 0.501146 0.663599 0.555418
+vn 0.501146 0.663599 0.555418
+vn -0.598240 0.569981 -0.563233
+vn -0.598240 0.569981 -0.563233
+vn -0.598240 0.569981 -0.563233
+vn 0.501184 0.663455 -0.555555
+vn 0.501184 0.663455 -0.555555
+vn 0.501184 0.663455 -0.555555
+vn -0.587665 -0.566900 -0.577299
+vn -0.587665 -0.566900 -0.577299
+vn -0.587665 -0.566900 -0.577299
+vn 0.692151 -0.075970 -0.717744
+vn 0.692151 -0.075970 -0.717744
+vn 0.692151 -0.075970 -0.717744
+vn 0.060912 -0.998143 0.000121
+vn 0.060912 -0.998143 0.000121
+vn 0.060912 -0.998143 0.000121
+vn 0.060912 -0.998143 0.000121
+vn -0.000033 0.000120 1.000000
+vn -0.000033 0.000120 1.000000
+vn -0.000033 0.000120 1.000000
+vn -0.000033 0.000120 1.000000
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.060540 0.998166 -0.000117
+vn 0.060540 0.998166 -0.000117
+vn 0.060540 0.998166 -0.000117
+vn 0.060540 0.998166 -0.000117
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn 0.043116 -0.706810 0.706089
+vn 0.043116 -0.706810 0.706089
+vn 0.043116 -0.706810 0.706089
+vn 0.043116 -0.706810 0.706089
+vn -0.707014 0.012854 0.707082
+vn -0.707014 0.012854 0.707082
+vn -0.707014 0.012854 0.707082
+vn -0.707014 0.012854 0.707083
+vn 0.755503 -0.655145 0.000103
+vn 0.755503 -0.655145 0.000103
+vn 0.755503 -0.655145 0.000103
+vn 0.755503 -0.655145 0.000103
+vn 0.706963 -0.012687 0.707137
+vn 0.706963 -0.012687 0.707137
+vn 0.706963 -0.012687 0.707137
+vn 0.706963 -0.012687 0.707137
+vn -0.694220 0.719763 -0.000109
+vn -0.694220 0.719763 -0.000109
+vn -0.694220 0.719763 -0.000109
+vn -0.694220 0.719763 -0.000109
+vn 0.042804 0.706216 0.706702
+vn 0.042804 0.706216 0.706702
+vn 0.042804 0.706216 0.706702
+vn 0.042804 0.706216 0.706702
+vn 0.719760 0.694224 -0.000060
+vn 0.719760 0.694223 -0.000060
+vn 0.719760 0.694223 -0.000060
+vn 0.719760 0.694223 -0.000060
+vn -0.706973 0.012686 -0.707126
+vn -0.706973 0.012686 -0.707126
+vn -0.706973 0.012686 -0.707126
+vn -0.706973 0.012686 -0.707126
+vn 0.042851 0.706047 -0.706868
+vn 0.042851 0.706047 -0.706868
+vn 0.042851 0.706047 -0.706868
+vn 0.042851 0.706047 -0.706868
+vn 0.707016 -0.012857 -0.707081
+vn 0.707016 -0.012857 -0.707081
+vn 0.707016 -0.012857 -0.707081
+vn 0.707016 -0.012857 -0.707081
+vn 0.043163 -0.706983 -0.705913
+vn 0.043163 -0.706983 -0.705913
+vn 0.043163 -0.706983 -0.705913
+vn 0.043163 -0.706983 -0.705913
+vn -0.587706 -0.566758 0.577397
+vn -0.587705 -0.566758 0.577397
+vn -0.587706 -0.566758 0.577397
+vn 0.635909 -0.551399 0.539981
+vn 0.635909 -0.551399 0.539981
+vn 0.635909 -0.551399 0.539981
+vn -0.566838 0.587765 0.577258
+vn -0.566838 0.587765 0.577258
+vn -0.566838 0.587765 0.577258
+vn 0.587661 0.566897 0.577307
+vn 0.587661 0.566897 0.577307
+vn 0.587661 0.566897 0.577307
+vn -0.566814 0.587609 -0.577441
+vn -0.566814 0.587609 -0.577441
+vn -0.566814 0.587609 -0.577441
+vn 0.587695 0.566770 -0.577396
+vn 0.587695 0.566770 -0.577396
+vn 0.587695 0.566770 -0.577396
+vn -0.587669 -0.566904 -0.577291
+vn -0.587669 -0.566904 -0.577291
+vn -0.587669 -0.566904 -0.577291
+vn 0.635958 -0.551519 -0.539801
+vn 0.635958 -0.551519 -0.539801
+vn 0.635958 -0.551519 -0.539801
+vn 0.006941 0.382513 -0.923924
+vn 0.012793 0.706906 -0.707192
+vn 0.006941 0.382512 -0.923924
+vn 0.012793 0.706906 -0.707192
+vn 0.012793 0.706906 -0.707192
+vn 0.016697 0.923681 -0.382799
+vn 0.012793 0.706906 -0.707192
+vn 0.016697 0.923681 -0.382799
+vn 0.016697 0.923681 -0.382799
+vn 0.018059 0.999837 -0.000120
+vn 0.016697 0.923681 -0.382799
+vn 0.018059 0.999837 -0.000120
+vn 0.018059 0.999837 -0.000120
+vn 0.016672 0.923774 0.382575
+vn 0.018059 0.999837 -0.000120
+vn 0.016672 0.923774 0.382576
+vn 0.016672 0.923774 0.382575
+vn 0.012747 0.707077 0.707022
+vn 0.016672 0.923774 0.382576
+vn 0.012747 0.707078 0.707021
+vn 0.012747 0.707077 0.707022
+vn 0.006881 0.382731 0.923834
+vn 0.012747 0.707078 0.707021
+vn 0.006881 0.382731 0.923834
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000121 1.000000
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000121 1.000000
+vn -0.006941 -0.382511 0.923925
+vn -0.000033 0.000119 1.000000
+vn -0.006941 -0.382510 0.923925
+vn -0.006941 -0.382511 0.923925
+vn -0.012794 -0.706908 0.707190
+vn -0.006941 -0.382510 0.923925
+vn -0.012794 -0.706908 0.707190
+vn -0.012794 -0.706908 0.707190
+vn -0.016698 -0.923683 0.382794
+vn -0.012794 -0.706908 0.707190
+vn -0.016698 -0.923683 0.382794
+vn -0.016698 -0.923683 0.382794
+vn -0.018060 -0.999837 0.000119
+vn -0.016698 -0.923683 0.382794
+vn -0.018060 -0.999837 0.000118
+vn -0.018060 -0.999837 0.000119
+vn -0.016672 -0.923773 -0.382577
+vn -0.018060 -0.999837 0.000118
+vn -0.016672 -0.923773 -0.382577
+vn -0.016672 -0.923773 -0.382577
+vn -0.012747 -0.707077 -0.707021
+vn -0.016672 -0.923773 -0.382577
+vn -0.012747 -0.707077 -0.707021
+vn -0.012747 -0.707077 -0.707021
+vn -0.006881 -0.382731 -0.923834
+vn -0.012747 -0.707077 -0.707021
+vn -0.006881 -0.382731 -0.923834
+vn -0.006881 -0.382731 -0.923834
+vn 0.000033 -0.000120 -1.000000
+vn -0.006881 -0.382731 -0.923834
+vn 0.000033 -0.000120 -1.000000
+vn 0.000033 -0.000120 -1.000000
+vn 0.006941 0.382513 -0.923924
+vn 0.000033 -0.000120 -1.000000
+vn 0.006941 0.382512 -0.923924
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018057 0.000031
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018057 0.000031
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018057 0.000031
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018057 0.000031
+vn -0.010047 -0.555382 0.831535
+vn -0.010047 -0.555382 0.831535
+vn -0.010047 -0.555382 0.831535
+vn -0.010047 -0.555382 0.831535
+vn -0.015020 -0.831267 0.555670
+vn -0.015020 -0.831267 0.555670
+vn -0.015020 -0.831267 0.555671
+vn -0.015020 -0.831267 0.555670
+vn -0.017707 -0.980602 0.195208
+vn -0.017707 -0.980602 0.195208
+vn -0.017707 -0.980602 0.195208
+vn -0.017707 -0.980602 0.195208
+vn -0.017722 -0.980650 -0.194967
+vn -0.017722 -0.980650 -0.194967
+vn -0.017722 -0.980650 -0.194967
+vn -0.017722 -0.980650 -0.194967
+vn -0.015035 -0.831395 -0.555479
+vn -0.015035 -0.831395 -0.555479
+vn -0.015035 -0.831395 -0.555479
+vn -0.015035 -0.831395 -0.555479
+vn -0.010057 -0.555581 -0.831402
+vn -0.010057 -0.555581 -0.831402
+vn -0.010057 -0.555581 -0.831402
+vn -0.010057 -0.555581 -0.831402
+vn -0.003508 -0.195178 -0.980762
+vn -0.003508 -0.195178 -0.980762
+vn -0.003508 -0.195178 -0.980762
+vn -0.003508 -0.195178 -0.980762
+vn 0.003549 0.194942 -0.980808
+vn 0.003549 0.194942 -0.980808
+vn 0.003549 0.194942 -0.980808
+vn 0.003549 0.194942 -0.980808
+vn 0.010044 0.555381 -0.831536
+vn 0.010044 0.555381 -0.831536
+vn 0.010044 0.555381 -0.831535
+vn 0.010044 0.555381 -0.831535
+vn 0.015016 0.831268 -0.555669
+vn 0.015016 0.831268 -0.555669
+vn 0.015016 0.831268 -0.555669
+vn 0.015016 0.831268 -0.555669
+vn 0.017707 0.980602 -0.195208
+vn 0.017707 0.980602 -0.195208
+vn 0.017707 0.980602 -0.195208
+vn 0.017707 0.980602 -0.195208
+vn 0.017693 0.980649 0.194975
+vn 0.017693 0.980649 0.194975
+vn 0.017693 0.980649 0.194975
+vn 0.017693 0.980649 0.194975
+vn 0.015000 0.831401 0.555471
+vn 0.015000 0.831401 0.555471
+vn 0.015000 0.831401 0.555471
+vn 0.015000 0.831401 0.555471
+vn 0.010008 0.555580 0.831403
+vn 0.010008 0.555580 0.831403
+vn 0.010008 0.555580 0.831403
+vn 0.010008 0.555580 0.831403
+vn 0.003502 0.195177 0.980762
+vn 0.003502 0.195177 0.980762
+vn 0.003502 0.195177 0.980762
+vn 0.003502 0.195177 0.980762
+vn -0.003543 -0.194943 0.980808
+vn -0.003543 -0.194943 0.980808
+vn -0.003543 -0.194943 0.980808
+vn -0.003543 -0.194943 0.980808
+vn 0.006942 0.382511 -0.923925
+vn 0.012793 0.706908 -0.707190
+vn 0.006942 0.382513 -0.923924
+vn 0.012793 0.706907 -0.707191
+vn 0.012793 0.706908 -0.707190
+vn 0.016698 0.923683 -0.382794
+vn 0.012793 0.706907 -0.707191
+vn 0.016698 0.923683 -0.382794
+vn 0.016698 0.923683 -0.382794
+vn 0.018062 0.999837 -0.000114
+vn 0.016698 0.923683 -0.382794
+vn 0.018062 0.999837 -0.000118
+vn 0.018062 0.999837 -0.000114
+vn 0.016674 0.923774 0.382575
+vn 0.018062 0.999837 -0.000118
+vn 0.016674 0.923773 0.382577
+vn 0.016674 0.923774 0.382575
+vn 0.012748 0.707078 0.707021
+vn 0.016674 0.923773 0.382577
+vn 0.012748 0.707078 0.707021
+vn 0.012748 0.707078 0.707021
+vn 0.006881 0.382741 0.923830
+vn 0.012748 0.707078 0.707021
+vn 0.006881 0.382741 0.923830
+vn 0.006881 0.382741 0.923830
+vn -0.000033 0.000117 1.000000
+vn 0.006881 0.382741 0.923830
+vn -0.000033 0.000117 1.000000
+vn -0.000033 0.000117 1.000000
+vn -0.006942 -0.382520 0.923921
+vn -0.000033 0.000117 1.000000
+vn -0.006942 -0.382520 0.923921
+vn -0.006942 -0.382520 0.923921
+vn -0.012794 -0.706906 0.707191
+vn -0.006942 -0.382520 0.923921
+vn -0.012794 -0.706907 0.707191
+vn -0.012794 -0.706906 0.707191
+vn -0.016699 -0.923678 0.382805
+vn -0.012794 -0.706907 0.707191
+vn -0.016699 -0.923678 0.382805
+vn -0.016699 -0.923678 0.382805
+vn -0.018061 -0.999837 0.000130
+vn -0.016699 -0.923678 0.382805
+vn -0.018061 -0.999837 0.000130
+vn -0.018061 -0.999837 0.000130
+vn -0.016673 -0.923771 -0.382583
+vn -0.018061 -0.999837 0.000130
+vn -0.016673 -0.923771 -0.382582
+vn -0.016673 -0.923771 -0.382583
+vn -0.012748 -0.707077 -0.707022
+vn -0.016673 -0.923771 -0.382582
+vn -0.012748 -0.707077 -0.707022
+vn -0.012748 -0.707077 -0.707022
+vn -0.006881 -0.382730 -0.923835
+vn -0.012748 -0.707077 -0.707022
+vn -0.006881 -0.382730 -0.923835
+vn -0.006881 -0.382730 -0.923835
+vn 0.000033 -0.000117 -1.000000
+vn -0.006881 -0.382730 -0.923835
+vn 0.000033 -0.000117 -1.000000
+vn 0.000033 -0.000117 -1.000000
+vn 0.006942 0.382511 -0.923925
+vn 0.000033 -0.000117 -1.000000
+vn 0.006942 0.382513 -0.923924
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.006941 0.382511 -0.923925
+vn 0.012792 0.706907 -0.707191
+vn 0.006941 0.382512 -0.923925
+vn 0.012792 0.706906 -0.707192
+vn 0.012792 0.706907 -0.707191
+vn 0.016697 0.923682 -0.382796
+vn 0.012792 0.706906 -0.707192
+vn 0.016697 0.923682 -0.382796
+vn 0.016697 0.923682 -0.382796
+vn 0.018060 0.999837 -0.000122
+vn 0.016697 0.923682 -0.382796
+vn 0.018060 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000122
+vn 0.016673 0.923773 0.382578
+vn 0.018060 0.999837 -0.000120
+vn 0.016673 0.923773 0.382577
+vn 0.016673 0.923773 0.382578
+vn 0.012747 0.707076 0.707023
+vn 0.016673 0.923773 0.382577
+vn 0.012747 0.707075 0.707024
+vn 0.012747 0.707076 0.707023
+vn 0.006881 0.382731 0.923834
+vn 0.012747 0.707075 0.707024
+vn 0.006881 0.382731 0.923834
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000122 1.000000
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000122 1.000000
+vn -0.000033 0.000122 1.000000
+vn -0.006942 -0.382512 0.923925
+vn -0.000033 0.000122 1.000000
+vn -0.006942 -0.382513 0.923924
+vn -0.006942 -0.382512 0.923925
+vn -0.012794 -0.706905 0.707192
+vn -0.006942 -0.382513 0.923924
+vn -0.012794 -0.706904 0.707194
+vn -0.012794 -0.706905 0.707192
+vn -0.016697 -0.923682 0.382796
+vn -0.012794 -0.706904 0.707194
+vn -0.016697 -0.923682 0.382796
+vn -0.016697 -0.923682 0.382796
+vn -0.018060 -0.999837 0.000118
+vn -0.016697 -0.923682 0.382796
+vn -0.018060 -0.999837 0.000117
+vn -0.018060 -0.999837 0.000118
+vn -0.016672 -0.923775 -0.382574
+vn -0.018060 -0.999837 0.000117
+vn -0.016672 -0.923774 -0.382574
+vn -0.016672 -0.923775 -0.382574
+vn -0.012747 -0.707078 -0.707021
+vn -0.016672 -0.923774 -0.382574
+vn -0.012747 -0.707078 -0.707020
+vn -0.012747 -0.707078 -0.707021
+vn -0.006881 -0.382735 -0.923833
+vn -0.012747 -0.707078 -0.707020
+vn -0.006881 -0.382736 -0.923832
+vn -0.006881 -0.382735 -0.923833
+vn 0.000032 -0.000120 -1.000000
+vn -0.006881 -0.382736 -0.923832
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000120 -1.000000
+vn 0.006941 0.382511 -0.923925
+vn 0.000032 -0.000119 -1.000000
+vn 0.006941 0.382512 -0.923925
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018058 0.000032
+vn -0.010070 -0.555386 0.831532
+vn -0.010070 -0.555386 0.831532
+vn -0.010070 -0.555386 0.831532
+vn -0.010070 -0.555386 0.831532
+vn -0.015036 -0.831265 0.555674
+vn -0.015036 -0.831265 0.555674
+vn -0.015036 -0.831265 0.555674
+vn -0.015036 -0.831265 0.555674
+vn -0.017736 -0.980600 0.195213
+vn -0.017736 -0.980600 0.195213
+vn -0.017736 -0.980600 0.195213
+vn -0.017736 -0.980600 0.195213
+vn -0.017729 -0.980648 -0.194977
+vn -0.017729 -0.980648 -0.194977
+vn -0.017729 -0.980648 -0.194977
+vn -0.017729 -0.980648 -0.194977
+vn -0.014991 -0.831402 -0.555469
+vn -0.014991 -0.831402 -0.555469
+vn -0.014991 -0.831402 -0.555469
+vn -0.014991 -0.831402 -0.555469
+vn -0.009988 -0.555582 -0.831402
+vn -0.009988 -0.555582 -0.831402
+vn -0.009988 -0.555582 -0.831402
+vn -0.009988 -0.555582 -0.831402
+vn -0.003477 -0.195171 -0.980763
+vn -0.003477 -0.195171 -0.980763
+vn -0.003477 -0.195171 -0.980763
+vn -0.003477 -0.195171 -0.980763
+vn 0.003577 0.194936 -0.980809
+vn 0.003577 0.194936 -0.980809
+vn 0.003577 0.194936 -0.980809
+vn 0.003577 0.194936 -0.980809
+vn 0.010079 0.555382 -0.831534
+vn 0.010079 0.555382 -0.831534
+vn 0.010079 0.555382 -0.831534
+vn 0.010079 0.555382 -0.831534
+vn 0.015030 0.831266 -0.555672
+vn 0.015030 0.831266 -0.555672
+vn 0.015030 0.831266 -0.555672
+vn 0.015030 0.831266 -0.555672
+vn 0.017730 0.980603 -0.195203
+vn 0.017730 0.980603 -0.195203
+vn 0.017730 0.980603 -0.195203
+vn 0.017730 0.980603 -0.195203
+vn 0.017705 0.980650 0.194968
+vn 0.017705 0.980650 0.194968
+vn 0.017705 0.980650 0.194968
+vn 0.017705 0.980650 0.194968
+vn 0.014970 0.831400 0.555473
+vn 0.014970 0.831400 0.555473
+vn 0.014970 0.831400 0.555473
+vn 0.014970 0.831400 0.555473
+vn 0.009984 0.555580 0.831403
+vn 0.009984 0.555580 0.831403
+vn 0.009984 0.555580 0.831403
+vn 0.009984 0.555580 0.831403
+vn 0.003479 0.195172 0.980763
+vn 0.003479 0.195172 0.980763
+vn 0.003479 0.195172 0.980763
+vn 0.003479 0.195172 0.980763
+vn -0.003573 -0.194937 0.980809
+vn -0.003573 -0.194937 0.980809
+vn -0.003573 -0.194937 0.980809
+vn -0.003573 -0.194937 0.980809
+vn 0.006942 0.382506 -0.923927
+vn 0.012793 0.706912 -0.707186
+vn 0.006942 0.382508 -0.923926
+vn 0.012793 0.706913 -0.707185
+vn 0.012793 0.706912 -0.707186
+vn 0.016696 0.923683 -0.382794
+vn 0.012793 0.706913 -0.707185
+vn 0.016696 0.923683 -0.382793
+vn 0.016696 0.923683 -0.382794
+vn 0.018059 0.999837 -0.000126
+vn 0.016696 0.923683 -0.382793
+vn 0.018059 0.999837 -0.000126
+vn 0.018059 0.999837 -0.000126
+vn 0.016672 0.923774 0.382576
+vn 0.018059 0.999837 -0.000126
+vn 0.016672 0.923775 0.382573
+vn 0.016672 0.923774 0.382576
+vn 0.012747 0.707078 0.707020
+vn 0.016672 0.923775 0.382573
+vn 0.012747 0.707076 0.707023
+vn 0.012747 0.707078 0.707020
+vn 0.006882 0.382729 0.923835
+vn 0.012747 0.707076 0.707023
+vn 0.006882 0.382732 0.923834
+vn 0.006882 0.382729 0.923835
+vn -0.000033 0.000122 1.000000
+vn 0.006882 0.382732 0.923834
+vn -0.000033 0.000121 1.000000
+vn -0.000033 0.000122 1.000000
+vn -0.006942 -0.382505 0.923927
+vn -0.000033 0.000121 1.000000
+vn -0.006942 -0.382507 0.923927
+vn -0.006942 -0.382505 0.923927
+vn -0.012794 -0.706907 0.707191
+vn -0.006942 -0.382507 0.923927
+vn -0.012794 -0.706906 0.707192
+vn -0.012794 -0.706907 0.707191
+vn -0.016698 -0.923682 0.382795
+vn -0.012794 -0.706906 0.707192
+vn -0.016698 -0.923682 0.382796
+vn -0.016698 -0.923682 0.382795
+vn -0.018060 -0.999837 0.000115
+vn -0.016698 -0.923682 0.382796
+vn -0.018060 -0.999837 0.000115
+vn -0.018060 -0.999837 0.000115
+vn -0.016673 -0.923774 -0.382576
+vn -0.018060 -0.999837 0.000115
+vn -0.016673 -0.923774 -0.382576
+vn -0.016673 -0.923774 -0.382576
+vn -0.012748 -0.707079 -0.707019
+vn -0.016673 -0.923774 -0.382576
+vn -0.012748 -0.707079 -0.707020
+vn -0.012748 -0.707079 -0.707019
+vn -0.006882 -0.382730 -0.923835
+vn -0.012748 -0.707079 -0.707020
+vn -0.006882 -0.382729 -0.923835
+vn -0.006882 -0.382730 -0.923835
+vn 0.000033 -0.000119 -1.000000
+vn -0.006882 -0.382729 -0.923835
+vn 0.000033 -0.000124 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.006942 0.382506 -0.923927
+vn 0.000033 -0.000124 -1.000000
+vn 0.006942 0.382508 -0.923926
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.153537 -0.988143 0.000121
+vn 0.153537 -0.988143 0.000121
+vn 0.153537 -0.988143 0.000121
+vn 0.153537 -0.988143 0.000121
+vn 0.993220 -0.116251 0.000052
+vn 0.993220 -0.116251 0.000052
+vn 0.993220 -0.116251 0.000052
+vn 0.993220 -0.116251 0.000052
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn 0.911117 0.412147 -0.000012
+vn 0.911117 0.412147 -0.000012
+vn 0.911117 0.412147 -0.000012
+vn 0.911117 0.412147 -0.000012
+vn -0.901283 -0.433231 0.000017
+vn -0.901283 -0.433231 0.000017
+vn -0.901283 -0.433231 0.000017
+vn -0.901283 -0.433231 0.000017
+vn -0.990247 0.139326 -0.000054
+vn -0.990247 0.139326 -0.000054
+vn -0.990247 0.139326 -0.000054
+vn -0.990247 0.139326 -0.000054
+vn -0.153538 0.988143 -0.000122
+vn -0.153538 0.988143 -0.000122
+vn -0.153538 0.988143 -0.000122
+vn -0.153538 0.988143 -0.000122
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.108540 -0.698637 0.707195
+vn 0.108540 -0.698637 0.707195
+vn 0.108540 -0.698638 0.707195
+vn 0.108540 -0.698637 0.707195
+vn 0.720286 -0.693677 0.000109
+vn 0.720286 -0.693677 0.000109
+vn 0.720286 -0.693677 0.000109
+vn 0.720286 -0.693677 0.000109
+vn 0.702280 -0.082119 0.707149
+vn 0.702280 -0.082119 0.707149
+vn 0.702280 -0.082119 0.707149
+vn 0.702280 -0.082119 0.707149
+vn 0.644231 0.291515 0.707096
+vn 0.644231 0.291515 0.707096
+vn 0.644231 0.291515 0.707096
+vn 0.644231 0.291515 0.707096
+vn 0.988143 0.153539 0.000020
+vn 0.988143 0.153539 0.000020
+vn 0.988143 0.153539 0.000020
+vn 0.988143 0.153539 0.000020
+vn -0.465573 -0.885009 0.000085
+vn -0.465573 -0.885009 0.000085
+vn -0.465573 -0.885009 0.000085
+vn -0.465573 -0.885009 0.000085
+vn -0.637329 -0.306257 0.707120
+vn -0.637329 -0.306257 0.707120
+vn -0.637329 -0.306257 0.707120
+vn -0.637329 -0.306257 0.707120
+vn -0.988143 -0.153534 -0.000020
+vn -0.988143 -0.153534 -0.000020
+vn -0.988143 -0.153534 -0.000020
+vn -0.988143 -0.153534 -0.000020
+vn -0.700242 0.098602 0.707063
+vn -0.700242 0.098602 0.707063
+vn -0.700242 0.098602 0.707063
+vn -0.700242 0.098602 0.707063
+vn -0.108595 0.698805 0.707021
+vn -0.108595 0.698805 0.707021
+vn -0.108595 0.698805 0.707021
+vn -0.108595 0.698806 0.707021
+vn -0.712167 0.702010 -0.000109
+vn -0.712167 0.702010 -0.000109
+vn -0.712167 0.702010 -0.000109
+vn -0.712167 0.702010 -0.000109
+vn -0.108540 0.698643 -0.707190
+vn -0.108540 0.698643 -0.707190
+vn -0.108540 0.698643 -0.707190
+vn -0.108540 0.698643 -0.707190
+vn -0.700183 0.098436 -0.707145
+vn -0.700183 0.098436 -0.707145
+vn -0.700183 0.098436 -0.707145
+vn -0.700183 0.098436 -0.707145
+vn -0.637271 -0.306421 -0.707101
+vn -0.637272 -0.306421 -0.707101
+vn -0.637271 -0.306421 -0.707101
+vn -0.637272 -0.306421 -0.707101
+vn 0.108594 -0.698804 -0.707022
+vn 0.108594 -0.698804 -0.707022
+vn 0.108594 -0.698804 -0.707022
+vn 0.108594 -0.698804 -0.707022
+vn 0.702342 -0.082284 -0.707068
+vn 0.702342 -0.082284 -0.707068
+vn 0.702342 -0.082284 -0.707068
+vn 0.702342 -0.082284 -0.707068
+vn 0.644285 0.291350 -0.707115
+vn 0.644285 0.291350 -0.707115
+vn 0.644285 0.291350 -0.707115
+vn 0.644285 0.291350 -0.707115
+vn 0.475841 0.879531 -0.000086
+vn 0.475841 0.879531 -0.000086
+vn 0.475841 0.879531 -0.000086
+vn 0.475841 0.879531 -0.000086
+vn 0.603626 -0.581286 0.545657
+vn 0.603626 -0.581286 0.545657
+vn 0.603626 -0.581286 0.545657
+vn 0.682168 0.106086 0.723458
+vn 0.682169 0.106086 0.723458
+vn 0.682169 0.106086 0.723458
+vn 0.682168 0.106086 0.723458
+vn -0.390496 -0.742185 0.544678
+vn -0.390496 -0.742185 0.544678
+vn -0.390496 -0.742185 0.544678
+vn -0.678861 -0.105391 0.726664
+vn -0.678861 -0.105391 0.726664
+vn -0.678861 -0.105391 0.726664
+vn -0.678861 -0.105391 0.726664
+vn -0.597321 0.588836 0.544499
+vn -0.597321 0.588836 0.544499
+vn -0.597321 0.588836 0.544499
+vn -0.597271 0.588709 -0.544692
+vn -0.597271 0.588709 -0.544692
+vn -0.597271 0.588709 -0.544692
+vn -0.678803 -0.105559 -0.726693
+vn -0.678803 -0.105559 -0.726693
+vn -0.678803 -0.105559 -0.726693
+vn -0.678803 -0.105559 -0.726693
+vn -0.390444 -0.742316 -0.544537
+vn -0.390444 -0.742316 -0.544537
+vn -0.390444 -0.742316 -0.544537
+vn 0.603674 -0.581411 -0.545472
+vn 0.603674 -0.581411 -0.545472
+vn 0.603674 -0.581411 -0.545472
+vn 0.682229 0.105912 -0.723427
+vn 0.682229 0.105912 -0.723427
+vn 0.682229 0.105912 -0.723427
+vn 0.682229 0.105912 -0.723427
+vn 0.398767 0.737167 0.545500
+vn 0.398767 0.737167 0.545500
+vn 0.398767 0.737167 0.545500
+vn 0.398809 0.737049 -0.545628
+vn 0.398809 0.737049 -0.545628
+vn 0.398809 0.737049 -0.545628
+vn -0.519994 0.854170 -0.000120
+vn -0.807290 0.590155 -0.000100
+vn -0.519995 0.854169 -0.000120
+vn -0.807290 0.590155 -0.000100
+vn -0.807290 0.590155 -0.000100
+vn -0.971681 0.236296 -0.000066
+vn -0.807290 0.590155 -0.000100
+vn -0.971681 0.236297 -0.000066
+vn -0.971681 0.236296 -0.000066
+vn -0.988143 -0.153536 -0.000021
+vn -0.971681 0.236297 -0.000066
+vn -0.988143 -0.153537 -0.000021
+vn -0.988143 -0.153536 -0.000021
+vn -0.854169 -0.519995 0.000027
+vn -0.988143 -0.153537 -0.000021
+vn -0.854169 -0.519995 0.000027
+vn -0.854169 -0.519995 0.000027
+vn -0.590154 -0.807290 0.000071
+vn -0.854169 -0.519995 0.000027
+vn -0.590155 -0.807290 0.000071
+vn -0.590154 -0.807290 0.000071
+vn -0.236296 -0.971681 0.000104
+vn -0.590155 -0.807290 0.000071
+vn -0.236296 -0.971681 0.000104
+vn -0.236296 -0.971681 0.000104
+vn 0.153536 -0.988143 0.000121
+vn -0.236296 -0.971681 0.000104
+vn 0.153536 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.519995 -0.854169 0.000120
+vn 0.153536 -0.988143 0.000121
+vn 0.519995 -0.854169 0.000120
+vn 0.519995 -0.854169 0.000120
+vn 0.807289 -0.590156 0.000100
+vn 0.519995 -0.854169 0.000120
+vn 0.807289 -0.590156 0.000100
+vn 0.807289 -0.590156 0.000100
+vn 0.971681 -0.236298 0.000065
+vn 0.807289 -0.590156 0.000100
+vn 0.971681 -0.236298 0.000065
+vn 0.971681 -0.236298 0.000065
+vn 0.988143 0.153539 0.000021
+vn 0.971681 -0.236298 0.000065
+vn 0.988143 0.153539 0.000021
+vn 0.988143 0.153539 0.000021
+vn 0.854168 0.519998 -0.000027
+vn 0.988143 0.153539 0.000021
+vn 0.854168 0.519998 -0.000027
+vn 0.854168 0.519998 -0.000027
+vn 0.590157 0.807289 -0.000072
+vn 0.854168 0.519998 -0.000027
+vn 0.590157 0.807288 -0.000072
+vn 0.590157 0.807289 -0.000072
+vn 0.236296 0.971681 -0.000105
+vn 0.590157 0.807288 -0.000072
+vn 0.236295 0.971681 -0.000105
+vn 0.236296 0.971681 -0.000105
+vn -0.153539 0.988143 -0.000121
+vn 0.236295 0.971681 -0.000105
+vn -0.153538 0.988143 -0.000121
+vn -0.153539 0.988143 -0.000121
+vn -0.519994 0.854170 -0.000120
+vn -0.153538 0.988143 -0.000121
+vn -0.519995 0.854169 -0.000120
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.364079 0.598018 -0.714017
+vn -0.364080 0.598018 -0.714017
+vn -0.107482 0.691830 -0.714016
+vn -0.107482 0.691830 -0.714016
+vn -0.364080 0.598018 -0.714017
+vn -0.364079 0.598018 -0.714017
+vn -0.565245 0.413150 -0.714006
+vn -0.565245 0.413150 -0.714006
+vn -0.565245 0.413150 -0.714006
+vn -0.565245 0.413150 -0.714006
+vn -0.680354 0.165374 -0.713982
+vn -0.680354 0.165374 -0.713982
+vn -0.680354 0.165374 -0.713982
+vn -0.680354 0.165374 -0.713982
+vn -0.691879 -0.107592 -0.713952
+vn -0.691879 -0.107592 -0.713952
+vn -0.691879 -0.107592 -0.713952
+vn -0.691879 -0.107592 -0.713952
+vn -0.598069 -0.364190 -0.713918
+vn -0.598069 -0.364190 -0.713918
+vn -0.598069 -0.364190 -0.713918
+vn -0.598069 -0.364190 -0.713918
+vn -0.413208 -0.565361 -0.713881
+vn -0.413207 -0.565361 -0.713881
+vn -0.413208 -0.565361 -0.713881
+vn -0.413207 -0.565361 -0.713881
+vn -0.165432 -0.680472 -0.713855
+vn -0.165432 -0.680472 -0.713855
+vn -0.165432 -0.680472 -0.713855
+vn -0.165432 -0.680472 -0.713855
+vn 0.107537 -0.691996 -0.713847
+vn 0.107536 -0.691996 -0.713847
+vn 0.107537 -0.691996 -0.713847
+vn 0.107536 -0.691996 -0.713847
+vn 0.364137 -0.598184 -0.713849
+vn 0.364137 -0.598184 -0.713849
+vn 0.364137 -0.598184 -0.713849
+vn 0.364137 -0.598184 -0.713849
+vn 0.565303 -0.413320 -0.713862
+vn 0.565304 -0.413320 -0.713862
+vn 0.565303 -0.413320 -0.713862
+vn 0.565304 -0.413320 -0.713862
+vn 0.680411 -0.165543 -0.713888
+vn 0.680411 -0.165544 -0.713888
+vn 0.680411 -0.165543 -0.713888
+vn 0.680411 -0.165544 -0.713888
+vn 0.691936 0.107426 -0.713922
+vn 0.691936 0.107425 -0.713922
+vn 0.691936 0.107426 -0.713922
+vn 0.691936 0.107425 -0.713922
+vn 0.598126 0.364025 -0.713954
+vn 0.598126 0.364026 -0.713954
+vn 0.598126 0.364025 -0.713954
+vn 0.598126 0.364026 -0.713954
+vn 0.413264 0.565194 -0.713981
+vn 0.413264 0.565194 -0.713981
+vn 0.413264 0.565194 -0.713981
+vn 0.413264 0.565194 -0.713981
+vn 0.165487 0.680303 -0.714004
+vn 0.165487 0.680303 -0.714004
+vn 0.165487 0.680303 -0.714004
+vn 0.165487 0.680303 -0.714004
+vn -0.107482 0.691830 -0.714016
+vn -0.107482 0.691830 -0.714016
+vn -0.364139 0.598188 0.713845
+vn -0.364138 0.598188 0.713845
+vn -0.565304 0.413320 0.713861
+vn -0.565304 0.413320 0.713861
+vn -0.364138 0.598188 0.713845
+vn -0.364139 0.598188 0.713845
+vn -0.107537 0.691999 0.713844
+vn -0.107539 0.691999 0.713844
+vn -0.565304 0.413320 0.713861
+vn -0.565304 0.413320 0.713861
+vn -0.680411 0.165541 0.713888
+vn -0.680412 0.165541 0.713888
+vn -0.680411 0.165541 0.713888
+vn -0.680412 0.165541 0.713888
+vn -0.691939 -0.107425 0.713919
+vn -0.691939 -0.107424 0.713919
+vn -0.691939 -0.107425 0.713919
+vn -0.691939 -0.107424 0.713919
+vn -0.598129 -0.364023 0.713953
+vn -0.598129 -0.364022 0.713954
+vn -0.598129 -0.364023 0.713953
+vn -0.598129 -0.364022 0.713954
+vn -0.413262 -0.565194 0.713982
+vn -0.413262 -0.565193 0.713982
+vn -0.413262 -0.565194 0.713982
+vn -0.413262 -0.565193 0.713982
+vn -0.165486 -0.680306 0.714002
+vn -0.165486 -0.680306 0.714002
+vn -0.165486 -0.680306 0.714002
+vn -0.165486 -0.680306 0.714002
+vn 0.107480 -0.691829 0.714018
+vn 0.107479 -0.691829 0.714018
+vn 0.107480 -0.691829 0.714018
+vn 0.107479 -0.691829 0.714018
+vn 0.364077 -0.598014 0.714022
+vn 0.364076 -0.598015 0.714022
+vn 0.364077 -0.598014 0.714022
+vn 0.364076 -0.598015 0.714022
+vn 0.565245 -0.413150 0.714007
+vn 0.565245 -0.413150 0.714007
+vn 0.565245 -0.413150 0.714007
+vn 0.565245 -0.413150 0.714007
+vn 0.680357 -0.165375 0.713979
+vn 0.680357 -0.165375 0.713979
+vn 0.680357 -0.165375 0.713979
+vn 0.680357 -0.165375 0.713979
+vn 0.691883 0.107595 0.713948
+vn 0.691883 0.107595 0.713948
+vn 0.691883 0.107595 0.713948
+vn 0.691883 0.107595 0.713948
+vn 0.598071 0.364194 0.713915
+vn 0.598071 0.364193 0.713915
+vn 0.598071 0.364194 0.713915
+vn 0.598071 0.364193 0.713915
+vn 0.413209 0.565359 0.713882
+vn 0.413209 0.565359 0.713882
+vn 0.413209 0.565359 0.713882
+vn 0.413209 0.565359 0.713882
+vn 0.165431 0.680471 0.713857
+vn 0.165431 0.680471 0.713857
+vn 0.165431 0.680471 0.713857
+vn 0.165431 0.680471 0.713857
+vn -0.107539 0.691999 0.713844
+vn -0.107537 0.691999 0.713844
+vn -0.065541 0.659157 0.749143
+vn -0.065541 0.659157 0.749143
+vn -0.065541 0.659157 0.749143
+vn -0.065541 0.659157 0.749143
+vn 0.986488 0.162582 -0.020227
+vn 0.986488 0.162582 -0.020227
+vn 0.986488 0.162582 -0.020227
+vn 0.986488 0.162582 -0.020227
+vn -0.985714 -0.104087 -0.132418
+vn -0.985714 -0.104087 -0.132418
+vn -0.985714 -0.104087 -0.132418
+vn -0.985714 -0.104087 -0.132418
+vn 0.122591 -0.573453 -0.810014
+vn 0.122591 -0.573453 -0.810014
+vn 0.122591 -0.573453 -0.810014
+vn 0.122591 -0.573453 -0.810014
+vn 0.639073 0.559463 0.527814
+vn 0.639073 0.559463 0.527814
+vn 0.639073 0.559463 0.527814
+vn 0.639073 0.559463 0.527814
+vn -0.665958 0.425907 0.612457
+vn -0.665958 0.425907 0.612457
+vn -0.665958 0.425907 0.612457
+vn -0.665958 0.425907 0.612457
+vn 0.649007 -0.318216 -0.691034
+vn 0.649007 -0.318216 -0.691034
+vn 0.649007 -0.318216 -0.691034
+vn 0.649007 -0.318216 -0.691034
+vn -0.455835 -0.315004 -0.832458
+vn -0.455835 -0.315004 -0.832458
+vn -0.455835 -0.315004 -0.832458
+vn -0.455835 -0.315004 -0.832458
+vn -0.118948 0.966968 0.225442
+vn -0.118948 0.966968 0.225442
+vn -0.118948 0.966968 0.225442
+vn -0.118948 0.966968 0.225442
+vn 0.979696 0.165016 -0.113865
+vn 0.979696 0.165016 -0.113865
+vn 0.979696 0.165016 -0.113865
+vn 0.979696 0.165016 -0.113865
+vn -0.915195 0.037712 -0.401244
+vn -0.915195 0.037712 -0.401244
+vn -0.915195 0.037712 -0.401244
+vn -0.915195 0.037712 -0.401244
+vn 0.156150 -0.968701 -0.192964
+vn 0.156150 -0.968701 -0.192964
+vn 0.156150 -0.968701 -0.192964
+vn 0.156150 -0.968701 -0.192964
+vn 0.488757 0.858209 0.156822
+vn 0.488757 0.858209 0.156822
+vn 0.488757 0.858209 0.156822
+vn 0.488757 0.858209 0.156822
+vn -0.606418 0.794695 0.026777
+vn -0.606418 0.794695 0.026777
+vn -0.606418 0.794695 0.026777
+vn -0.606418 0.794695 0.026777
+vn 0.517478 -0.832664 -0.197201
+vn 0.517477 -0.832664 -0.197201
+vn 0.517478 -0.832664 -0.197201
+vn 0.517478 -0.832664 -0.197201
+vn -0.180712 -0.868340 -0.461876
+vn -0.180712 -0.868340 -0.461876
+vn -0.180712 -0.868340 -0.461876
+vn -0.180712 -0.868340 -0.461876
+vn -0.103898 0.994301 -0.023893
+vn -0.103898 0.994301 -0.023893
+vn -0.103898 0.994301 -0.023893
+vn -0.103898 0.994301 -0.023893
+vn 0.940228 0.125481 -0.316584
+vn 0.940228 0.125481 -0.316584
+vn 0.940228 0.125481 -0.316584
+vn 0.940228 0.125481 -0.316584
+vn -0.863978 -0.067018 -0.499050
+vn -0.863978 -0.067018 -0.499050
+vn -0.863978 -0.067018 -0.499050
+vn -0.863978 -0.067018 -0.499050
+vn 0.129201 -0.990866 -0.038616
+vn 0.129201 -0.990866 -0.038616
+vn 0.129201 -0.990866 -0.038616
+vn 0.129201 -0.990866 -0.038616
+vn 0.614667 0.759781 -0.211939
+vn 0.614667 0.759781 -0.211939
+vn 0.614667 0.759781 -0.211939
+vn 0.614667 0.759781 -0.211939
+vn -0.614251 0.748575 -0.249663
+vn -0.614251 0.748575 -0.249663
+vn -0.614251 0.748575 -0.249663
+vn -0.614251 0.748575 -0.249663
+vn 0.612932 -0.768524 -0.183536
+vn 0.612932 -0.768524 -0.183536
+vn 0.612932 -0.768524 -0.183536
+vn 0.612932 -0.768524 -0.183536
+vn -0.279330 -0.908897 -0.309647
+vn -0.279330 -0.908897 -0.309647
+vn -0.279330 -0.908897 -0.309647
+vn -0.279330 -0.908897 -0.309647
+vn 0.023119 0.668119 -0.743695
+vn 0.023119 0.668119 -0.743695
+vn 0.023119 0.668119 -0.743695
+vn 0.023119 0.668119 -0.743695
+vn 0.747695 0.057288 -0.661566
+vn 0.747695 0.057288 -0.661566
+vn 0.747695 0.057288 -0.661566
+vn 0.747695 0.057288 -0.661566
+vn -0.667370 -0.099475 -0.738053
+vn -0.667370 -0.099475 -0.738053
+vn -0.667370 -0.099475 -0.738053
+vn -0.667370 -0.099475 -0.738052
+vn 0.140665 -0.858677 -0.492835
+vn 0.140665 -0.858677 -0.492835
+vn 0.140665 -0.858678 -0.492835
+vn 0.140665 -0.858678 -0.492835
+vn 0.500166 0.405722 -0.764999
+vn 0.500166 0.405722 -0.764999
+vn 0.500166 0.405722 -0.764999
+vn 0.500166 0.405722 -0.764999
+vn -0.338883 0.428046 -0.837815
+vn -0.338883 0.428046 -0.837815
+vn -0.338883 0.428046 -0.837815
+vn -0.338883 0.428046 -0.837815
+vn 0.533014 -0.543605 -0.648374
+vn 0.533014 -0.543605 -0.648374
+vn 0.533014 -0.543605 -0.648374
+vn 0.533014 -0.543605 -0.648374
+vn -0.237694 -0.725437 -0.645944
+vn -0.237694 -0.725437 -0.645944
+vn -0.237694 -0.725437 -0.645944
+vn -0.237694 -0.725437 -0.645943
+vn 0.101771 -0.003555 -0.994802
+vn 0.101771 -0.003555 -0.994802
+vn 0.101771 -0.003555 -0.994802
+vn 0.098406 -0.003111 -0.995142
+vn 0.098406 -0.003111 -0.995142
+vn 0.098406 -0.003111 -0.995142
+vn 0.099458 -0.007442 -0.995014
+vn 0.099458 -0.007442 -0.995014
+vn 0.099458 -0.007442 -0.995014
+vn 0.099594 -0.004696 -0.995017
+vn 0.099594 -0.004696 -0.995017
+vn 0.099594 -0.004696 -0.995017
+vn 0.094221 0.003041 -0.995547
+vn 0.094221 0.003041 -0.995547
+vn 0.094221 0.003041 -0.995547
+vn 0.100654 -0.004975 -0.994909
+vn 0.100654 -0.004975 -0.994909
+vn 0.100654 -0.004975 -0.994909
+vn 0.094292 -0.011324 -0.995480
+vn 0.094292 -0.011324 -0.995480
+vn 0.094292 -0.011324 -0.995480
+vn 0.094859 -0.001236 -0.995490
+vn 0.094859 -0.001236 -0.995490
+vn 0.094859 -0.001236 -0.995490
+vn -0.999787 0.020623 -0.000041
+vn -0.999787 0.020623 -0.000041
+vn -0.999787 0.020623 -0.000041
+vn -0.999787 0.020623 -0.000041
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn -0.153536 0.988143 -0.000120
+vn -0.153536 0.988143 -0.000120
+vn -0.153535 0.988143 -0.000120
+vn -0.153535 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153538 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153538 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153536 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153536 0.988143 -0.000120
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.912480 -0.141828 -0.383752
+vn -0.912480 -0.141828 -0.383752
+vn -0.912480 -0.141828 -0.383752
+vn -0.912480 -0.141828 -0.383752
+vn 0.153538 -0.988143 0.000120
+vn 0.153538 -0.988143 0.000120
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.153538 -0.988143 0.000122
+vn 0.153539 -0.988143 0.000122
+vn 0.153538 -0.988143 0.000122
+vn 0.153537 -0.988143 0.000122
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153538 -0.988143 0.000122
+vn 0.153537 -0.988143 0.000122
+vn 0.153536 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.968453 0.150502 0.198617
+vn 0.968453 0.150502 0.198617
+vn 0.968453 0.150502 0.198617
+vn 0.968453 0.150502 0.198617
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.706928 0.014501 -0.707137
+vn -0.706928 0.014501 -0.707137
+vn -0.706928 0.014501 -0.707137
+vn -0.706928 0.014501 -0.707137
+vn -0.967981 0.248438 -0.035945
+vn -0.967981 0.248438 -0.035945
+vn -0.967981 0.248438 -0.035945
+vn -0.967981 0.248438 -0.035945
+vn 0.046864 -0.236359 -0.970535
+vn 0.046864 -0.236359 -0.970535
+vn 0.046864 -0.236359 -0.970535
+vn 0.046864 -0.236359 -0.970535
+vn -0.090712 -0.014218 -0.995776
+vn -0.090712 -0.014218 -0.995776
+vn -0.090712 -0.014218 -0.995776
+vn -0.090711 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn -0.090711 -0.014218 -0.995776
+vn -0.090712 -0.014218 -0.995776
+vn -0.090711 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn 0.609683 0.750957 -0.253673
+vn 0.614482 0.788923 0.003661
+vn 0.614402 0.764031 -0.196893
+vn 0.614482 0.788923 0.003661
+vn 0.309041 0.284365 -0.907541
+vn 0.309041 0.284365 -0.907541
+vn 0.309041 0.284365 -0.907541
+vn 0.609683 0.750957 -0.253673
+vn 0.614402 0.764031 -0.196893
+vn -0.236338 0.678783 -0.695268
+vn -0.236338 0.678783 -0.695268
+vn -0.236338 0.678783 -0.695268
+vn -0.236338 0.678783 -0.695268
+vn -0.019214 -0.718660 -0.695096
+vn -0.019214 -0.718660 -0.695096
+vn -0.019214 -0.718660 -0.695096
+vn -0.019214 -0.718660 -0.695096
+vn -0.621651 -0.096687 -0.777304
+vn -0.621651 -0.096687 -0.777304
+vn -0.621651 -0.096687 -0.777304
+vn -0.621651 -0.096687 -0.777304
+vn -0.536650 -0.799009 -0.271278
+vn -0.536650 -0.799009 -0.271278
+vn -0.536650 -0.799009 -0.271278
+vn -0.536650 -0.799009 -0.271278
+vn -0.753781 0.598439 -0.271451
+vn -0.753781 0.598439 -0.271451
+vn -0.753781 0.598439 -0.271451
+vn -0.753781 0.598439 -0.271451
+vn 0.132718 0.736296 0.663517
+vn 0.132718 0.736296 0.663517
+vn 0.132718 0.736296 0.663517
+vn 0.132718 0.736296 0.663517
+vn 0.749953 0.116608 0.651133
+vn 0.749953 0.116608 0.651133
+vn 0.749953 0.116608 0.651133
+vn 0.749953 0.116608 0.651133
+vn 0.576232 0.805144 0.140356
+vn 0.576232 0.805144 0.140356
+vn 0.576232 0.805144 0.140356
+vn 0.576232 0.805144 0.140356
+vn 0.349852 -0.661152 0.663688
+vn 0.349852 -0.661151 0.663688
+vn 0.349852 -0.661152 0.663689
+vn 0.349852 -0.661152 0.663688
+vn 0.793366 -0.592302 0.140530
+vn 0.793366 -0.592302 0.140530
+vn 0.793366 -0.592302 0.140530
+vn 0.793366 -0.592302 0.140530
+vn 0.108594 -0.698806 -0.707020
+vn 0.108594 -0.698806 -0.707020
+vn 0.108594 -0.698806 -0.707020
+vn 0.108594 -0.698806 -0.707020
+vn -0.548480 -0.085325 -0.831799
+vn -0.548480 -0.085325 -0.831799
+vn -0.548480 -0.085325 -0.831799
+vn -0.548480 -0.085325 -0.831799
+vn -0.108540 0.698636 -0.707196
+vn -0.108540 0.698636 -0.707197
+vn -0.108540 0.698636 -0.707196
+vn -0.108540 0.698636 -0.707196
+vn 0.764990 0.118787 -0.632993
+vn 0.764990 0.118787 -0.632993
+vn 0.764990 0.118787 -0.632993
+vn 0.764990 0.118787 -0.632993
+vn 0.173277 0.027045 0.984502
+vn 0.173277 0.027045 0.984502
+vn 0.173278 0.027045 0.984502
+vn 0.173281 0.027045 0.984501
+vn 0.173285 0.027046 0.984500
+vn 0.173278 0.027045 0.984502
+vn 0.173281 0.027045 0.984501
+vn 0.108540 -0.698636 0.707196
+vn 0.108540 -0.698636 0.707196
+vn 0.108540 -0.698636 0.707196
+vn 0.108540 -0.698636 0.707196
+vn 0.173281 0.027045 0.984501
+vn 0.173285 0.027046 0.984500
+vn 0.173285 0.027046 0.984500
+vn 0.173285 0.027046 0.984500
+vn -0.517447 -0.855715 0.000080
+vn -0.517447 -0.855715 0.000080
+vn -0.517447 -0.855715 0.000080
+vn -0.517447 -0.855715 0.000080
+vn -0.669223 -0.228324 0.707113
+vn -0.669223 -0.228324 0.707113
+vn -0.669223 -0.228324 0.707113
+vn -0.669223 -0.228324 0.707113
+vn -0.988143 -0.153539 -0.000020
+vn -0.988143 -0.153539 -0.000020
+vn -0.988143 -0.153539 -0.000020
+vn -0.988143 -0.153539 -0.000020
+vn -0.706985 0.014664 0.707076
+vn -0.706985 0.014664 0.707076
+vn -0.706985 0.014664 0.707076
+vn -0.706985 0.014664 0.707076
+vn -0.040938 0.326049 0.944466
+vn -0.040938 0.326049 0.944466
+vn -0.040938 0.326049 0.944466
+vn -0.040938 0.326049 0.944466
+vn -0.669174 -0.228491 -0.707105
+vn -0.669174 -0.228491 -0.707105
+vn -0.669174 -0.228491 -0.707105
+vn -0.669174 -0.228491 -0.707105
+vn 0.108596 -0.698808 -0.707017
+vn 0.108596 -0.698808 -0.707018
+vn 0.108596 -0.698808 -0.707017
+vn 0.108596 -0.698808 -0.707017
+vn -0.651104 0.188524 -0.735202
+vn -0.651104 0.188524 -0.735202
+vn -0.651104 0.188524 -0.735202
+vn -0.651104 0.188524 -0.735202
+vn -0.321674 -0.789987 -0.521964
+vn -0.321674 -0.789987 -0.521964
+vn -0.321674 -0.789987 -0.521964
+vn -0.321674 -0.789987 -0.521964
+vn -0.546201 0.655013 -0.522133
+vn -0.546201 0.655013 -0.522133
+vn -0.546201 0.655013 -0.522133
+vn -0.546201 0.655013 -0.522133
+vn 0.372465 0.839300 0.396038
+vn 0.372465 0.839300 0.396038
+vn 0.372465 0.839300 0.396038
+vn 0.372465 0.839300 0.396038
+vn 0.609568 -0.686612 0.396221
+vn 0.609568 -0.686612 0.396221
+vn 0.609568 -0.686612 0.396221
+vn 0.609568 -0.686612 0.396221
+vn -0.377053 -0.608490 -0.698262
+vn -0.377053 -0.608490 -0.698262
+vn -0.377053 -0.608490 -0.698262
+vn -0.543889 0.465224 -0.698392
+vn -0.543889 0.465224 -0.698392
+vn -0.543889 0.465224 -0.698392
+vn 0.499406 0.712414 -0.493010
+vn 0.499406 0.712414 -0.493010
+vn 0.499406 0.712415 -0.493010
+vn 0.692041 -0.527422 -0.492853
+vn 0.692042 -0.527422 -0.492853
+vn 0.692042 -0.527422 -0.492853
+vn 0.243844 -0.684075 0.687446
+vn 0.243844 -0.684075 0.687446
+vn 0.243844 -0.684075 0.687446
+vn 0.243844 -0.684075 0.687446
+vn -0.431370 -0.713272 0.552416
+vn -0.431370 -0.713272 0.552416
+vn -0.431370 -0.713272 0.552416
+vn -0.692434 -0.107504 0.713427
+vn -0.692434 -0.107504 0.713427
+vn -0.692434 -0.107504 0.713427
+vn -0.692434 -0.107504 0.713427
+vn -0.712133 0.324217 0.622696
+vn -0.712133 0.324217 0.622696
+vn -0.712133 0.324217 0.622696
+vn -0.712133 0.324217 0.622696
+vn -0.692379 -0.107672 -0.713455
+vn -0.692379 -0.107672 -0.713455
+vn -0.692379 -0.107672 -0.713455
+vn -0.692379 -0.107672 -0.713455
+vn -0.431327 -0.713409 -0.552273
+vn -0.431327 -0.713409 -0.552273
+vn -0.431327 -0.713409 -0.552273
+vn 0.047452 -0.709678 -0.702926
+vn 0.047452 -0.709678 -0.702926
+vn 0.047452 -0.709678 -0.702926
+vn 0.047452 -0.709678 -0.702926
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn -0.449003 -0.893530 0.000086
+vn -0.449003 -0.893530 0.000086
+vn -0.449003 -0.893530 0.000086
+vn -0.449003 -0.893530 0.000086
+vn 0.748789 -0.662809 0.000107
+vn 0.748789 -0.662809 0.000107
+vn 0.748789 -0.662808 0.000107
+vn 0.748789 -0.662809 0.000107
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000118 1.000000
+vn -0.000039 0.000118 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000118 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000118 1.000000
+vn 0.978706 -0.205267 0.000063
+vn 0.978706 -0.205267 0.000063
+vn 0.978706 -0.205267 0.000063
+vn 0.978706 -0.205267 0.000063
+vn -0.993698 0.112092 -0.000052
+vn -0.993698 0.112092 -0.000052
+vn -0.993698 0.112092 -0.000052
+vn -0.993698 0.112092 -0.000052
+vn -0.682972 0.730445 -0.000113
+vn -0.682972 0.730445 -0.000113
+vn -0.682972 0.730445 -0.000113
+vn -0.682972 0.730445 -0.000113
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000118 -1.000000
+vn 0.000039 -0.000118 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.449003 0.893530 -0.000089
+vn 0.449003 0.893530 -0.000089
+vn 0.449003 0.893530 -0.000089
+vn 0.449003 0.893530 -0.000089
+vn -0.317519 -0.631735 0.707173
+vn -0.317519 -0.631735 0.707173
+vn -0.317519 -0.631735 0.707173
+vn -0.317519 -0.631735 0.707173
+vn 0.189141 -0.981950 0.000123
+vn 0.189141 -0.981950 0.000123
+vn 0.189141 -0.981950 0.000123
+vn 0.189141 -0.981950 0.000123
+vn 0.529445 -0.468594 0.707183
+vn 0.529445 -0.468594 0.707183
+vn 0.529445 -0.468594 0.707183
+vn 0.529445 -0.468594 0.707183
+vn 0.893532 -0.449000 0.000088
+vn 0.893532 -0.449000 0.000088
+vn 0.893532 -0.449000 0.000088
+vn 0.893532 -0.449000 0.000088
+vn 0.692021 -0.145063 0.707151
+vn 0.692021 -0.145063 0.707151
+vn 0.692021 -0.145063 0.707151
+vn 0.692021 -0.145063 0.707151
+vn -0.879298 -0.476272 0.000021
+vn -0.879298 -0.476272 0.000021
+vn -0.879298 -0.476272 0.000021
+vn -0.879298 -0.476272 0.000021
+vn -0.702678 0.079344 0.707070
+vn -0.702678 0.079344 0.707070
+vn -0.702678 0.079344 0.707070
+vn -0.702678 0.079344 0.707070
+vn -0.893532 0.448999 -0.000088
+vn -0.893532 0.448999 -0.000088
+vn -0.893532 0.448999 -0.000088
+vn -0.893532 0.448999 -0.000088
+vn -0.482956 0.516579 0.707036
+vn -0.482956 0.516579 0.707036
+vn -0.482956 0.516579 0.707036
+vn -0.482956 0.516579 0.707036
+vn -0.702625 0.079178 -0.707141
+vn -0.702625 0.079178 -0.707141
+vn -0.702625 0.079178 -0.707141
+vn -0.702625 0.079178 -0.707141
+vn -0.317467 -0.631907 -0.707042
+vn -0.317467 -0.631907 -0.707042
+vn -0.317467 -0.631907 -0.707042
+vn -0.317467 -0.631907 -0.707042
+vn -0.482902 0.516415 -0.707192
+vn -0.482902 0.516415 -0.707192
+vn -0.482902 0.516415 -0.707192
+vn -0.482902 0.516415 -0.707192
+vn 0.529501 -0.468758 -0.707032
+vn 0.529501 -0.468758 -0.707032
+vn 0.529501 -0.468758 -0.707032
+vn 0.529501 -0.468758 -0.707032
+vn 0.692081 -0.145227 -0.707060
+vn 0.692081 -0.145227 -0.707059
+vn 0.692081 -0.145227 -0.707060
+vn 0.692081 -0.145227 -0.707059
+vn 0.317462 0.631897 0.707053
+vn 0.317462 0.631897 0.707053
+vn 0.317462 0.631897 0.707053
+vn 0.317462 0.631897 0.707053
+vn 0.900791 0.434253 -0.000015
+vn 0.900791 0.434253 -0.000015
+vn 0.900791 0.434253 -0.000015
+vn 0.900791 0.434253 -0.000015
+vn 0.317522 0.631740 -0.707167
+vn 0.317522 0.631740 -0.707167
+vn 0.317522 0.631740 -0.707167
+vn 0.317522 0.631740 -0.707167
+vn -0.142596 0.989781 -0.000123
+vn -0.142596 0.989781 -0.000123
+vn -0.142596 0.989781 -0.000123
+vn -0.142596 0.989781 -0.000123
+vn 0.158428 -0.822506 0.546245
+vn 0.158428 -0.822506 0.546245
+vn 0.158428 -0.822506 0.546245
+vn 0.618263 -0.310605 0.721994
+vn 0.618263 -0.310605 0.721994
+vn 0.618263 -0.310605 0.721994
+vn 0.618263 -0.310605 0.721994
+vn -0.738229 -0.399786 0.543313
+vn -0.738229 -0.399786 0.543313
+vn -0.738229 -0.399786 0.543313
+vn -0.604496 0.303834 0.736390
+vn -0.604496 0.303834 0.736390
+vn -0.604496 0.303834 0.736390
+vn -0.604496 0.303834 0.736390
+vn -0.738190 -0.399916 -0.543270
+vn -0.738190 -0.399916 -0.543270
+vn -0.738190 -0.399916 -0.543270
+vn -0.604435 0.303664 -0.736510
+vn -0.604435 0.303664 -0.736510
+vn -0.604435 0.303664 -0.736510
+vn -0.604435 0.303664 -0.736510
+vn 0.158456 -0.822635 -0.546043
+vn 0.158456 -0.822635 -0.546043
+vn 0.158456 -0.822635 -0.546043
+vn 0.618323 -0.310783 -0.721866
+vn 0.618323 -0.310783 -0.721866
+vn 0.618323 -0.310783 -0.721866
+vn 0.618323 -0.310783 -0.721866
+vn 0.754563 0.363834 0.546131
+vn 0.754563 0.363834 0.546131
+vn 0.754563 0.363834 0.546131
+vn 0.754606 0.363706 -0.546157
+vn 0.754606 0.363706 -0.546158
+vn 0.754606 0.363706 -0.546158
+vn -0.119693 0.830900 -0.543396
+vn -0.119693 0.830900 -0.543396
+vn -0.119693 0.830900 -0.543396
+vn -0.119736 0.831016 0.543208
+vn -0.119736 0.831017 0.543208
+vn -0.119736 0.831017 0.543208
+vn 0.072886 0.997340 -0.000113
+vn -0.314328 0.949314 -0.000123
+vn 0.072886 0.997340 -0.000113
+vn -0.314328 0.949314 -0.000123
+vn -0.314328 0.949314 -0.000123
+vn -0.653688 0.756764 -0.000114
+vn -0.314328 0.949314 -0.000123
+vn -0.653688 0.756764 -0.000114
+vn -0.653688 0.756764 -0.000114
+vn -0.893530 0.449003 -0.000087
+vn -0.653688 0.756764 -0.000114
+vn -0.893530 0.449003 -0.000087
+vn -0.893530 0.449003 -0.000087
+vn -0.997340 0.072887 -0.000047
+vn -0.893530 0.449003 -0.000087
+vn -0.997340 0.072887 -0.000047
+vn -0.997340 0.072887 -0.000047
+vn -0.949315 -0.314328 -0.000001
+vn -0.997340 0.072887 -0.000047
+vn -0.949315 -0.314328 -0.000001
+vn -0.949315 -0.314328 -0.000001
+vn -0.756764 -0.653688 0.000046
+vn -0.949315 -0.314328 -0.000001
+vn -0.756764 -0.653688 0.000046
+vn -0.756764 -0.653688 0.000046
+vn -0.449005 -0.893529 0.000086
+vn -0.756764 -0.653688 0.000046
+vn -0.449005 -0.893529 0.000086
+vn -0.449005 -0.893529 0.000086
+vn -0.072886 -0.997340 0.000113
+vn -0.449005 -0.893529 0.000086
+vn -0.072885 -0.997340 0.000113
+vn -0.072886 -0.997340 0.000113
+vn 0.314328 -0.949314 0.000122
+vn -0.072885 -0.997340 0.000113
+vn 0.314328 -0.949314 0.000122
+vn 0.314328 -0.949314 0.000122
+vn 0.653688 -0.756765 0.000112
+vn 0.314328 -0.949314 0.000122
+vn 0.653688 -0.756764 0.000112
+vn 0.653688 -0.756765 0.000112
+vn 0.893530 -0.449003 0.000086
+vn 0.653688 -0.756764 0.000112
+vn 0.893530 -0.449003 0.000086
+vn 0.893530 -0.449003 0.000086
+vn 0.997340 -0.072886 0.000047
+vn 0.893530 -0.449003 0.000086
+vn 0.997340 -0.072886 0.000047
+vn 0.997340 -0.072886 0.000047
+vn 0.949315 0.314327 0.000000
+vn 0.997340 -0.072886 0.000047
+vn 0.949315 0.314327 0.000000
+vn 0.949315 0.314327 0.000000
+vn 0.756763 0.653689 -0.000047
+vn 0.949315 0.314327 0.000000
+vn 0.756764 0.653689 -0.000047
+vn 0.756763 0.653689 -0.000047
+vn 0.449005 0.893529 -0.000086
+vn 0.756764 0.653689 -0.000047
+vn 0.449005 0.893529 -0.000086
+vn 0.449005 0.893529 -0.000086
+vn 0.072886 0.997340 -0.000113
+vn 0.449005 0.893529 -0.000086
+vn 0.072886 0.997340 -0.000113
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn 0.051063 0.698266 -0.714015
+vn 0.051063 0.698266 -0.714015
+vn 0.314426 0.625577 -0.713995
+vn 0.314426 0.625577 -0.713995
+vn 0.051063 0.698266 -0.714015
+vn 0.051063 0.698266 -0.714015
+vn -0.220070 0.664639 -0.714020
+vn -0.220069 0.664639 -0.714020
+vn -0.220070 0.664639 -0.714020
+vn -0.220069 0.664639 -0.714020
+vn -0.457694 0.529813 -0.714013
+vn -0.457692 0.529814 -0.714013
+vn -0.457694 0.529813 -0.714013
+vn -0.457692 0.529814 -0.714013
+vn -0.625637 0.314315 -0.713992
+vn -0.625636 0.314317 -0.713992
+vn -0.625637 0.314315 -0.713992
+vn -0.625636 0.314317 -0.713992
+vn -0.698328 0.050953 -0.713962
+vn -0.698328 0.050954 -0.713962
+vn -0.698328 0.050953 -0.713962
+vn -0.698328 0.050954 -0.713962
+vn -0.664698 -0.220180 -0.713931
+vn -0.664698 -0.220180 -0.713931
+vn -0.664698 -0.220180 -0.713931
+vn -0.664698 -0.220180 -0.713931
+vn -0.529869 -0.457805 -0.713900
+vn -0.529869 -0.457805 -0.713900
+vn -0.529869 -0.457805 -0.713900
+vn -0.529869 -0.457805 -0.713900
+vn -0.314371 -0.625744 -0.713873
+vn -0.314370 -0.625744 -0.713874
+vn -0.314371 -0.625744 -0.713873
+vn -0.314370 -0.625744 -0.713874
+vn -0.051006 -0.698432 -0.713857
+vn -0.051006 -0.698432 -0.713857
+vn -0.051006 -0.698432 -0.713857
+vn -0.051006 -0.698432 -0.713857
+vn 0.220126 -0.664807 -0.713846
+vn 0.220127 -0.664806 -0.713846
+vn 0.220126 -0.664807 -0.713846
+vn 0.220127 -0.664806 -0.713846
+vn 0.457753 -0.529984 -0.713848
+vn 0.457753 -0.529984 -0.713848
+vn 0.457753 -0.529984 -0.713848
+vn 0.457753 -0.529984 -0.713848
+vn 0.625695 -0.314485 -0.713866
+vn 0.625695 -0.314485 -0.713866
+vn 0.625695 -0.314485 -0.713866
+vn 0.625695 -0.314485 -0.713866
+vn 0.698385 -0.051118 -0.713895
+vn 0.698385 -0.051119 -0.713895
+vn 0.698385 -0.051118 -0.713895
+vn 0.698385 -0.051119 -0.713895
+vn 0.664754 0.220014 -0.713930
+vn 0.664755 0.220013 -0.713930
+vn 0.664754 0.220014 -0.713930
+vn 0.664755 0.220013 -0.713930
+vn 0.529926 0.457636 -0.713966
+vn 0.529926 0.457636 -0.713966
+vn 0.529926 0.457636 -0.713966
+vn 0.529926 0.457636 -0.713966
+vn 0.314426 0.625577 -0.713995
+vn 0.314426 0.625577 -0.713995
+vn 0.051009 0.698436 0.713852
+vn 0.051008 0.698436 0.713852
+vn -0.220125 0.664806 0.713848
+vn -0.220124 0.664806 0.713848
+vn 0.051008 0.698436 0.713852
+vn 0.051009 0.698436 0.713852
+vn 0.314372 0.625747 0.713870
+vn 0.314373 0.625747 0.713870
+vn -0.220125 0.664806 0.713848
+vn -0.220124 0.664806 0.713848
+vn -0.457748 0.529977 0.713856
+vn -0.457748 0.529978 0.713856
+vn -0.457748 0.529977 0.713856
+vn -0.457748 0.529978 0.713856
+vn -0.625690 0.314481 0.713872
+vn -0.625690 0.314481 0.713872
+vn -0.625690 0.314481 0.713872
+vn -0.625690 0.314481 0.713872
+vn -0.698381 0.051122 0.713898
+vn -0.698381 0.051120 0.713898
+vn -0.698381 0.051122 0.713898
+vn -0.698381 0.051120 0.713898
+vn -0.664752 -0.220012 0.713933
+vn -0.664751 -0.220012 0.713933
+vn -0.664752 -0.220012 0.713933
+vn -0.664751 -0.220012 0.713933
+vn -0.529926 -0.457639 0.713964
+vn -0.529926 -0.457639 0.713964
+vn -0.529926 -0.457639 0.713964
+vn -0.529926 -0.457639 0.713964
+vn -0.314427 -0.625580 0.713992
+vn -0.314427 -0.625580 0.713992
+vn -0.314427 -0.625580 0.713992
+vn -0.314427 -0.625580 0.713992
+vn -0.051065 -0.698268 0.714013
+vn -0.051065 -0.698268 0.714013
+vn -0.051065 -0.698268 0.714013
+vn -0.051065 -0.698268 0.714013
+vn 0.220066 -0.664638 0.714022
+vn 0.220066 -0.664638 0.714022
+vn 0.220066 -0.664638 0.714022
+vn 0.220066 -0.664638 0.714022
+vn 0.457690 -0.529808 0.714019
+vn 0.457690 -0.529808 0.714019
+vn 0.457690 -0.529808 0.714019
+vn 0.457690 -0.529808 0.714019
+vn 0.625629 -0.314310 0.714001
+vn 0.625629 -0.314311 0.714001
+vn 0.625629 -0.314310 0.714001
+vn 0.625629 -0.314311 0.714001
+vn 0.698319 -0.050952 0.713971
+vn 0.698319 -0.050951 0.713971
+vn 0.698319 -0.050952 0.713971
+vn 0.698319 -0.050951 0.713971
+vn 0.664693 0.220180 0.713936
+vn 0.664693 0.220180 0.713936
+vn 0.664693 0.220180 0.713936
+vn 0.664693 0.220180 0.713936
+vn 0.529868 0.457805 0.713901
+vn 0.529868 0.457804 0.713901
+vn 0.529868 0.457805 0.713901
+vn 0.529868 0.457804 0.713901
+vn 0.314373 0.625747 0.713870
+vn 0.314372 0.625747 0.713870
+vn 0.072885 0.997340 -0.000113
+vn -0.314328 0.949314 -0.000123
+vn 0.072886 0.997340 -0.000113
+vn -0.314328 0.949314 -0.000123
+vn -0.314328 0.949314 -0.000123
+vn -0.653687 0.756765 -0.000114
+vn -0.314328 0.949314 -0.000123
+vn -0.653688 0.756764 -0.000114
+vn -0.653687 0.756765 -0.000114
+vn -0.893530 0.449004 -0.000087
+vn -0.653688 0.756764 -0.000114
+vn -0.893530 0.449003 -0.000087
+vn -0.893530 0.449004 -0.000087
+vn -0.997340 0.072887 -0.000048
+vn -0.893530 0.449003 -0.000087
+vn -0.997340 0.072888 -0.000048
+vn -0.997340 0.072887 -0.000048
+vn -0.949315 -0.314328 -0.000001
+vn -0.997340 0.072888 -0.000048
+vn -0.949315 -0.314327 -0.000001
+vn -0.949315 -0.314328 -0.000001
+vn -0.756764 -0.653688 0.000047
+vn -0.949315 -0.314327 -0.000001
+vn -0.756764 -0.653688 0.000047
+vn -0.756764 -0.653688 0.000047
+vn -0.449005 -0.893529 0.000087
+vn -0.756764 -0.653688 0.000047
+vn -0.449005 -0.893529 0.000087
+vn -0.449005 -0.893529 0.000087
+vn -0.072886 -0.997340 0.000114
+vn -0.449005 -0.893529 0.000087
+vn -0.072886 -0.997340 0.000114
+vn -0.072886 -0.997340 0.000114
+vn 0.314327 -0.949315 0.000123
+vn -0.072886 -0.997340 0.000114
+vn 0.314327 -0.949315 0.000123
+vn 0.314327 -0.949315 0.000123
+vn 0.653688 -0.756764 0.000114
+vn 0.314327 -0.949315 0.000123
+vn 0.653688 -0.756764 0.000114
+vn 0.653688 -0.756764 0.000114
+vn 0.893530 -0.449003 0.000087
+vn 0.653688 -0.756764 0.000114
+vn 0.893530 -0.449003 0.000087
+vn 0.893530 -0.449003 0.000087
+vn 0.997340 -0.072885 0.000048
+vn 0.893530 -0.449003 0.000087
+vn 0.997341 -0.072884 0.000048
+vn 0.997340 -0.072885 0.000048
+vn 0.949315 0.314327 0.000001
+vn 0.997341 -0.072884 0.000048
+vn 0.949315 0.314328 0.000001
+vn 0.949315 0.314327 0.000001
+vn 0.756765 0.653687 -0.000047
+vn 0.949315 0.314328 0.000001
+vn 0.756765 0.653687 -0.000047
+vn 0.756765 0.653687 -0.000047
+vn 0.449004 0.893530 -0.000087
+vn 0.756765 0.653687 -0.000047
+vn 0.449003 0.893530 -0.000087
+vn 0.449004 0.893530 -0.000087
+vn 0.072885 0.997340 -0.000113
+vn 0.449003 0.893530 -0.000087
+vn 0.072886 0.997340 -0.000113
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn 0.051006 0.698435 0.713854
+vn 0.051006 0.698435 0.713854
+vn -0.220127 0.664809 0.713844
+vn -0.220126 0.664810 0.713844
+vn 0.051006 0.698435 0.713854
+vn 0.051006 0.698435 0.713854
+vn 0.314369 0.625742 0.713876
+vn 0.314369 0.625742 0.713876
+vn -0.220127 0.664809 0.713844
+vn -0.220126 0.664810 0.713844
+vn -0.457751 0.529983 0.713850
+vn -0.457750 0.529984 0.713850
+vn -0.457751 0.529983 0.713850
+vn -0.457750 0.529984 0.713850
+vn -0.625689 0.314484 0.713872
+vn -0.625689 0.314484 0.713872
+vn -0.625689 0.314484 0.713872
+vn -0.625689 0.314484 0.713872
+vn -0.698376 0.051120 0.713903
+vn -0.698376 0.051119 0.713903
+vn -0.698376 0.051120 0.713903
+vn -0.698376 0.051119 0.713903
+vn -0.664746 -0.220013 0.713938
+vn -0.664746 -0.220012 0.713938
+vn -0.664746 -0.220013 0.713938
+vn -0.664746 -0.220012 0.713938
+vn -0.529921 -0.457636 0.713970
+vn -0.529922 -0.457635 0.713970
+vn -0.529921 -0.457636 0.713970
+vn -0.529922 -0.457635 0.713970
+vn -0.314425 -0.625575 0.713998
+vn -0.314426 -0.625575 0.713998
+vn -0.314425 -0.625575 0.713998
+vn -0.314426 -0.625575 0.713998
+vn -0.051063 -0.698268 0.714013
+vn -0.051064 -0.698268 0.714013
+vn -0.051063 -0.698268 0.714013
+vn -0.051064 -0.698268 0.714013
+vn 0.220069 -0.664642 0.714018
+vn 0.220070 -0.664641 0.714018
+vn 0.220069 -0.664642 0.714018
+vn 0.220070 -0.664641 0.714018
+vn 0.457692 -0.529811 0.714016
+vn 0.457692 -0.529811 0.714016
+vn 0.457692 -0.529811 0.714016
+vn 0.457692 -0.529811 0.714016
+vn 0.625631 -0.314313 0.713998
+vn 0.625632 -0.314312 0.713998
+vn 0.625631 -0.314313 0.713998
+vn 0.625632 -0.314312 0.713998
+vn 0.698325 -0.050952 0.713965
+vn 0.698325 -0.050952 0.713965
+vn 0.698325 -0.050952 0.713965
+vn 0.698325 -0.050952 0.713965
+vn 0.664698 0.220180 0.713931
+vn 0.664697 0.220181 0.713931
+vn 0.664698 0.220180 0.713931
+vn 0.664697 0.220181 0.713931
+vn 0.529869 0.457802 0.713903
+vn 0.529868 0.457802 0.713902
+vn 0.529869 0.457802 0.713903
+vn 0.529868 0.457802 0.713902
+vn 0.314369 0.625742 0.713876
+vn 0.314369 0.625742 0.713876
+vn 0.001457 -0.000431 -0.999999
+vn 0.001458 -0.000434 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001458 -0.000434 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001456 -0.000433 -0.999999
+vn 0.001456 -0.000433 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001457 -0.000431 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn -0.348954 0.937139 -0.000915
+vn -0.348954 0.937140 -0.000914
+vn -0.348954 0.937139 -0.000915
+vn -0.348954 0.937140 -0.000914
+vn -0.348956 0.937139 -0.000912
+vn -0.348956 0.937139 -0.000912
+vn -0.348954 0.937139 -0.000912
+vn -0.348955 0.937139 -0.000912
+vn -0.348954 0.937139 -0.000912
+vn -0.348955 0.937139 -0.000912
+vn -0.348954 0.937140 -0.000914
+vn -0.348954 0.937140 -0.000914
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn -0.983540 -0.180684 -0.001357
+vn -0.983540 -0.180684 -0.001357
+vn -0.983540 -0.180684 -0.001357
+vn -0.983540 -0.180684 -0.001357
+vn 0.348956 -0.937139 0.000914
+vn 0.348955 -0.937139 0.000913
+vn 0.348952 -0.937140 0.000912
+vn 0.348952 -0.937140 0.000912
+vn 0.348955 -0.937139 0.000914
+vn 0.348956 -0.937139 0.000917
+vn 0.348954 -0.937139 0.000913
+vn 0.348957 -0.937138 0.000917
+vn 0.348955 -0.937139 0.000916
+vn 0.348954 -0.937140 0.000916
+vn 0.348955 -0.937139 0.000916
+vn 0.348954 -0.937140 0.000916
+vn 0.348954 -0.937139 0.000913
+vn 0.348952 -0.937140 0.000912
+vn 0.348955 -0.937139 0.000914
+vn 0.348952 -0.937140 0.000912
+vn 0.348955 -0.937139 0.000916
+vn 0.348955 -0.937139 0.000913
+vn 0.348955 -0.937139 0.000916
+vn 0.348956 -0.937139 0.000914
+vn -0.865819 -0.322024 0.382959
+vn -0.865819 -0.322024 0.382959
+vn -0.865819 -0.322024 0.382959
+vn -0.865819 -0.322024 0.382959
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn 0.918726 0.341905 -0.197592
+vn 0.918726 0.341905 -0.197592
+vn 0.918726 0.341905 -0.197592
+vn 0.918726 0.341905 -0.197592
+vn -0.001459 0.000433 0.999999
+vn -0.001459 0.000433 0.999999
+vn -0.001459 0.000433 0.999999
+vn -0.001459 0.000433 0.999999
+vn -0.862185 -0.506592 -0.001037
+vn -0.862185 -0.506592 -0.001037
+vn -0.862185 -0.506592 -0.001037
+vn -0.862185 -0.506592 -0.001037
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000432 0.999999
+vn -0.001457 0.000432 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn 0.165653 0.060722 -0.984313
+vn 0.165653 0.060722 -0.984313
+vn 0.165652 0.060724 -0.984313
+vn 0.165657 0.060725 -0.984312
+vn 0.165662 0.060726 -0.984311
+vn 0.165661 0.060727 -0.984311
+vn 0.165663 0.060726 -0.984311
+vn 0.165657 0.060725 -0.984312
+vn 0.165652 0.060724 -0.984313
+vn 0.165657 0.060725 -0.984312
+vn 0.165661 0.060727 -0.984311
+vn -0.167312 0.477519 -0.862544
+vn -0.167312 0.477519 -0.862544
+vn -0.167312 0.477518 -0.862545
+vn -0.167312 0.477518 -0.862545
+vn 0.443631 0.896202 -0.003600
+vn 0.443631 0.896202 -0.003600
+vn 0.443631 0.896202 -0.003600
+vn 0.443631 0.896202 -0.003600
+vn -0.017125 0.747512 -0.664028
+vn -0.017125 0.747512 -0.664028
+vn -0.017125 0.747512 -0.664028
+vn -0.017125 0.747512 -0.664028
+vn -0.998146 0.049145 0.035899
+vn -0.998146 0.049145 0.035899
+vn -0.998146 0.049145 0.035899
+vn -0.998146 0.049145 0.035899
+vn -0.694438 -0.128069 -0.708064
+vn -0.694438 -0.128069 -0.708064
+vn -0.694438 -0.128069 -0.708064
+vn -0.694438 -0.128069 -0.708064
+vn 0.124643 -0.707446 0.695690
+vn 0.124643 -0.707446 0.695690
+vn 0.124643 -0.707446 0.695690
+vn 0.124643 -0.707446 0.695690
+vn -0.365483 -0.890363 0.271435
+vn -0.365483 -0.890363 0.271435
+vn -0.365483 -0.890363 0.271435
+vn -0.365483 -0.890363 0.271435
+vn -0.590539 -0.219136 0.776687
+vn -0.590539 -0.219136 0.776687
+vn -0.590539 -0.219136 0.776687
+vn -0.590539 -0.219136 0.776687
+vn -0.368850 0.617867 0.694399
+vn -0.368850 0.617867 0.694399
+vn -0.368850 0.617867 0.694399
+vn -0.368850 0.617867 0.694399
+vn -0.858970 0.434963 0.270143
+vn -0.858970 0.434963 0.270143
+vn -0.858970 0.434963 0.270143
+vn -0.858970 0.434963 0.270143
+vn 0.402887 0.904422 -0.140366
+vn 0.402887 0.904422 -0.140366
+vn 0.402887 0.904422 -0.140366
+vn 0.402887 0.904422 -0.140366
+vn 0.712056 0.264507 -0.650394
+vn 0.712056 0.264507 -0.650394
+vn 0.712056 0.264507 -0.650394
+vn 0.712056 0.264507 -0.650394
+vn 0.476369 -0.577810 -0.662728
+vn 0.476369 -0.577810 -0.662728
+vn 0.476369 -0.577810 -0.662728
+vn 0.476369 -0.577810 -0.662728
+vn 0.896382 -0.420901 -0.139072
+vn 0.896382 -0.420901 -0.139072
+vn 0.896382 -0.420901 -0.139072
+vn 0.896382 -0.420901 -0.139072
+vn 0.245716 -0.662349 0.707755
+vn 0.245716 -0.662349 0.707755
+vn 0.245716 -0.662349 0.707755
+vn 0.245716 -0.662349 0.707755
+vn -0.521274 -0.193291 0.831211
+vn -0.521274 -0.193291 0.831211
+vn -0.521274 -0.193291 0.831211
+vn -0.521274 -0.193291 0.831211
+vn -0.247778 0.662957 0.706466
+vn -0.247778 0.662957 0.706466
+vn -0.247778 0.662957 0.706466
+vn -0.247778 0.662957 0.706466
+vn 0.724616 0.270436 0.633873
+vn 0.724617 0.270436 0.633873
+vn 0.724616 0.270436 0.633873
+vn 0.724616 0.270436 0.633873
+vn 0.247777 -0.662964 -0.706460
+vn 0.247777 -0.662964 -0.706460
+vn 0.247777 -0.662964 -0.706460
+vn 0.247777 -0.662964 -0.706460
+vn -0.334955 -0.942234 -0.000078
+vn -0.334955 -0.942234 -0.000078
+vn -0.334955 -0.942234 -0.000078
+vn -0.334955 -0.942234 -0.000078
+vn -0.608625 -0.358520 -0.707841
+vn -0.608625 -0.358520 -0.707841
+vn -0.608625 -0.358520 -0.707841
+vn -0.608625 -0.358520 -0.707841
+vn -0.937137 -0.348961 -0.001216
+vn -0.937136 -0.348961 -0.001216
+vn -0.937137 -0.348961 -0.001216
+vn -0.937136 -0.348961 -0.001216
+vn 0.245718 -0.662352 0.707752
+vn 0.245718 -0.662352 0.707752
+vn 0.245718 -0.662352 0.707752
+vn 0.245718 -0.662352 0.707752
+vn -0.610685 -0.357908 0.706375
+vn -0.610685 -0.357908 0.706375
+vn -0.610685 -0.357908 0.706375
+vn -0.610685 -0.357908 0.706375
+vn -0.696496 -0.127457 0.706150
+vn -0.696496 -0.127457 0.706150
+vn -0.696496 -0.127457 0.706150
+vn -0.696496 -0.127457 0.706150
+vn -0.087440 -0.031587 0.995669
+vn -0.087440 -0.031587 0.995669
+vn -0.087440 -0.031587 0.995669
+vn -0.087441 -0.031588 0.995669
+vn -0.087441 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087441 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087440 -0.031587 0.995669
+vn -0.000356 0.018404 0.999831
+vn -0.000356 0.018404 0.999831
+vn -0.000356 0.018404 0.999831
+vn -0.000356 0.018404 0.999831
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn -0.725993 0.280909 -0.627713
+vn -0.725993 0.280909 -0.627713
+vn -0.725993 0.280909 -0.627713
+vn -0.725993 0.280909 -0.627713
+vn -0.157121 -0.838198 0.522242
+vn -0.157121 -0.838198 0.522242
+vn -0.157121 -0.838198 0.522242
+vn -0.157121 -0.838198 0.522242
+vn -0.667397 0.532206 0.520901
+vn -0.667397 0.532206 0.520901
+vn -0.667397 0.532206 0.520901
+vn -0.667397 0.532206 0.520901
+vn 0.196570 0.896735 -0.396519
+vn 0.196570 0.896735 -0.396519
+vn 0.196570 0.896735 -0.396519
+vn 0.196570 0.896735 -0.396519
+vn 0.735447 -0.550464 -0.395104
+vn 0.735447 -0.550464 -0.395104
+vn 0.735447 -0.550464 -0.395104
+vn 0.735447 -0.550464 -0.395104
+vn -0.248045 -0.671417 0.698335
+vn -0.248045 -0.671418 0.698335
+vn -0.248045 -0.671418 0.698335
+vn -0.627217 0.346872 0.697337
+vn -0.627217 0.346872 0.697337
+vn -0.627217 0.346872 0.697337
+vn 0.345318 0.798554 0.493018
+vn 0.345318 0.798554 0.493018
+vn 0.345318 0.798554 0.493018
+vn 0.783182 -0.377390 0.494168
+vn 0.783182 -0.377390 0.494168
+vn 0.783182 -0.377390 0.494168
+vn 0.377252 -0.621532 -0.686570
+vn 0.377252 -0.621532 -0.686570
+vn 0.377252 -0.621532 -0.686570
+vn 0.377252 -0.621532 -0.686570
+vn -0.278412 -0.785697 -0.552420
+vn -0.278412 -0.785697 -0.552420
+vn -0.278412 -0.785697 -0.552420
+vn -0.655633 -0.244830 -0.714286
+vn -0.655633 -0.244830 -0.714286
+vn -0.655633 -0.244830 -0.714285
+vn -0.655633 -0.244830 -0.714285
+vn -0.280029 -0.785226 0.552272
+vn -0.280029 -0.785226 0.552272
+vn -0.280029 -0.785226 0.552272
+vn -0.657700 -0.244208 0.712596
+vn -0.657700 -0.244208 0.712596
+vn -0.657700 -0.244208 0.712596
+vn -0.657700 -0.244208 0.712596
+vn 0.188061 -0.685272 0.703588
+vn 0.188061 -0.685272 0.703588
+vn 0.188061 -0.685272 0.703588
+vn 0.188061 -0.685272 0.703588
+vn 0.111008 0.439642 0.891287
+vn 0.111008 0.439642 0.891287
+vn 0.111008 0.439642 0.891287
+vn 0.111008 0.439642 0.891287
+vn 0.111008 0.439642 0.891287
+vn -0.662900 0.189766 0.724260
+vn -0.662900 0.189766 0.724260
+vn -0.662900 0.189766 0.724260
+vn -0.662900 0.189766 0.724260
+vn -0.171672 0.575731 -0.799414
+vn -0.171672 0.575731 -0.799414
+vn -0.171672 0.575731 -0.799414
+vn -0.171672 0.575730 -0.799414
+vn 0.938300 0.345145 0.021642
+vn 0.938300 0.345145 0.021642
+vn 0.938300 0.345145 0.021642
+vn 0.938300 0.345145 0.021642
+vn -0.948519 -0.284260 0.139668
+vn -0.948519 -0.284260 0.139668
+vn -0.948519 -0.284260 0.139668
+vn -0.948519 -0.284260 0.139668
+vn 0.295909 -0.726690 0.619968
+vn 0.295909 -0.726690 0.619968
+vn 0.295909 -0.726690 0.619968
+vn 0.295909 -0.726690 0.619968
+vn 0.491193 0.652189 -0.577390
+vn 0.491192 0.652190 -0.577390
+vn 0.491192 0.652190 -0.577390
+vn 0.491192 0.652190 -0.577390
+vn -0.688836 0.268436 -0.673385
+vn -0.688836 0.268436 -0.673385
+vn -0.688836 0.268436 -0.673385
+vn -0.688836 0.268436 -0.673385
+vn 0.682105 -0.399538 0.612456
+vn 0.682105 -0.399538 0.612456
+vn 0.682105 -0.399538 0.612456
+vn 0.682105 -0.399538 0.612456
+vn -0.213115 -0.595624 0.774476
+vn -0.213115 -0.595624 0.774476
+vn -0.213115 -0.595624 0.774476
+vn -0.213115 -0.595624 0.774476
+vn -0.308538 0.923670 -0.227239
+vn -0.308538 0.923670 -0.227239
+vn -0.308538 0.923670 -0.227239
+vn -0.308538 0.923670 -0.227239
+vn 0.925404 0.358297 0.123496
+vn 0.925404 0.358297 0.123496
+vn 0.925404 0.358297 0.123496
+vn 0.925404 0.358297 0.123496
+vn -0.908029 -0.147448 0.392100
+vn -0.908029 -0.147448 0.392100
+vn -0.908029 -0.147448 0.392100
+vn -0.908029 -0.147448 0.392100
+vn 0.345645 -0.917850 0.195141
+vn 0.345645 -0.917850 0.195141
+vn 0.345645 -0.917850 0.195141
+vn 0.345645 -0.917850 0.195141
+vn 0.307920 0.939109 -0.152510
+vn 0.307920 0.939109 -0.152510
+vn 0.307920 0.939109 -0.152510
+vn 0.307920 0.939109 -0.152510
+vn -0.753406 0.656711 -0.033316
+vn -0.753406 0.656711 -0.033316
+vn -0.753406 0.656711 -0.033316
+vn -0.753406 0.656711 -0.033316
+vn 0.672221 -0.712011 0.202877
+vn 0.672221 -0.712011 0.202877
+vn 0.672221 -0.712011 0.202877
+vn 0.672221 -0.712011 0.202877
+vn -0.007147 -0.887568 0.460622
+vn -0.007147 -0.887568 0.460622
+vn -0.007147 -0.887568 0.460622
+vn -0.007147 -0.887568 0.460622
+vn -0.301747 0.953129 0.022210
+vn -0.301747 0.953129 0.022210
+vn -0.301747 0.953129 0.022210
+vn -0.301747 0.953129 0.022210
+vn 0.892685 0.311363 0.325833
+vn 0.892685 0.311363 0.325833
+vn 0.892685 0.311363 0.325833
+vn 0.892685 0.311363 0.325833
+vn -0.837784 -0.239889 0.490481
+vn -0.837784 -0.239889 0.490481
+vn -0.837784 -0.239889 0.490481
+vn -0.837784 -0.239889 0.490481
+vn 0.325225 -0.944768 0.040536
+vn 0.325225 -0.944767 0.040536
+vn 0.325225 -0.944767 0.040536
+vn 0.325225 -0.944768 0.040536
+vn 0.447401 0.867471 0.217546
+vn 0.447401 0.867471 0.217546
+vn 0.447401 0.867471 0.217546
+vn 0.447401 0.867471 0.217546
+vn -0.754532 0.609594 0.243055
+vn -0.754532 0.609594 0.243055
+vn -0.754532 0.609594 0.243055
+vn -0.754532 0.609594 0.243055
+vn 0.752973 -0.629991 0.190113
+vn 0.752973 -0.629991 0.190113
+vn 0.752973 -0.629991 0.190113
+vn 0.752974 -0.629990 0.190113
+vn -0.094105 -0.946902 0.307443
+vn -0.094105 -0.946902 0.307443
+vn -0.094105 -0.946902 0.307443
+vn -0.094105 -0.946902 0.307443
+vn -0.118905 0.658131 0.743455
+vn -0.118905 0.658131 0.743455
+vn -0.118905 0.658131 0.743455
+vn -0.118905 0.658130 0.743455
+vn 0.714384 0.205418 0.668923
+vn 0.714384 0.205418 0.668923
+vn 0.714384 0.205418 0.668923
+vn 0.714384 0.205418 0.668923
+vn -0.641026 -0.232511 0.731453
+vn -0.641026 -0.232511 0.731453
+vn -0.641026 -0.232511 0.731453
+vn -0.641026 -0.232511 0.731453
+vn 0.305415 -0.813581 0.494780
+vn 0.305415 -0.813581 0.494780
+vn 0.305415 -0.813581 0.494780
+vn 0.305415 -0.813581 0.494780
+vn 0.400907 0.496885 0.769662
+vn 0.400907 0.496885 0.769662
+vn 0.400907 0.496885 0.769662
+vn 0.400907 0.496885 0.769662
+vn -0.426214 0.350100 0.834129
+vn -0.426214 0.350100 0.834129
+vn -0.426214 0.350100 0.834129
+vn -0.426214 0.350100 0.834129
+vn 0.624922 -0.426328 0.654001
+vn 0.624922 -0.426327 0.654001
+vn 0.624922 -0.426327 0.654001
+vn 0.624922 -0.426328 0.654001
+vn -0.093491 -0.759259 0.644038
+vn -0.093491 -0.759259 0.644038
+vn -0.093491 -0.759259 0.644038
+vn -0.093491 -0.759259 0.644038
+vn 0.090587 0.015607 0.995766
+vn 0.090587 0.015607 0.995766
+vn 0.090587 0.015607 0.995766
+vn 0.087197 0.015367 0.996073
+vn 0.087197 0.015367 0.996073
+vn 0.087197 0.015367 0.996073
+vn 0.089096 0.011336 0.995959
+vn 0.089096 0.011336 0.995959
+vn 0.089096 0.011336 0.995959
+vn 0.088678 0.014044 0.995961
+vn 0.088678 0.014044 0.995961
+vn 0.088678 0.014044 0.995961
+vn 0.081864 0.020548 0.996432
+vn 0.081864 0.020548 0.996432
+vn 0.081864 0.020548 0.996432
+vn 0.089768 0.013974 0.995865
+vn 0.089768 0.013974 0.995865
+vn 0.089768 0.013974 0.995865
+vn 0.084811 0.006484 0.996376
+vn 0.084811 0.006484 0.996376
+vn 0.084811 0.006484 0.996376
+vn 0.083359 0.016473 0.996383
+vn 0.083359 0.016473 0.996383
+vn 0.083359 0.016473 0.996383
+vn -0.348953 0.937140 -0.000914
+vn -0.348953 0.937140 -0.000914
+vn -0.348953 0.937140 -0.000914
+vn -0.348953 0.937140 -0.000914
+vn 0.809722 0.586813 0.000925
+vn 0.809722 0.586813 0.000925
+vn 0.809722 0.586813 0.000925
+vn 0.809722 0.586813 0.000925
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001458 -0.000435 -0.999999
+vn 0.001458 -0.000435 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.996321 0.085689 0.001415
+vn 0.996321 0.085689 0.001415
+vn 0.996321 0.085689 0.001415
+vn 0.996321 0.085689 0.001415
+vn -0.998045 -0.062486 -0.001428
+vn -0.998045 -0.062486 -0.001428
+vn -0.998045 -0.062486 -0.001428
+vn -0.998045 -0.062486 -0.001428
+vn -0.795851 -0.605492 -0.000898
+vn -0.795851 -0.605492 -0.000898
+vn -0.795851 -0.605492 -0.000898
+vn -0.795851 -0.605492 -0.000898
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn 0.348954 -0.937139 0.000914
+vn 0.348954 -0.937139 0.000914
+vn 0.348954 -0.937139 0.000914
+vn 0.348954 -0.937139 0.000914
+vn -0.245717 0.662352 -0.707752
+vn -0.245717 0.662352 -0.707752
+vn -0.245717 0.662352 -0.707752
+vn -0.245717 0.662352 -0.707752
+vn 0.289412 0.957205 0.000007
+vn 0.289412 0.957205 0.000007
+vn 0.289412 0.957205 0.000007
+vn 0.289412 0.957205 0.000007
+vn 0.573588 0.414632 -0.706454
+vn 0.573588 0.414632 -0.706454
+vn 0.573588 0.414632 -0.706454
+vn 0.573588 0.414632 -0.706454
+vn 0.937137 0.348959 0.001215
+vn 0.937137 0.348959 0.001215
+vn 0.937137 0.348959 0.001215
+vn 0.937137 0.348959 0.001215
+vn 0.705530 0.060284 -0.706112
+vn 0.705530 0.060284 -0.706112
+vn 0.705530 0.060284 -0.706112
+vn 0.705530 0.060284 -0.706112
+vn -0.838700 0.544592 -0.001459
+vn -0.838700 0.544592 -0.001459
+vn -0.838700 0.544592 -0.001459
+vn -0.838700 0.544592 -0.001459
+vn -0.704693 -0.044492 -0.708116
+vn -0.704693 -0.044492 -0.708116
+vn -0.704693 -0.044492 -0.708116
+vn -0.704693 -0.044492 -0.708116
+vn -0.937137 -0.348959 -0.001215
+vn -0.937137 -0.348959 -0.001215
+vn -0.937137 -0.348959 -0.001215
+vn -0.937137 -0.348959 -0.001215
+vn -0.561722 -0.428454 -0.707740
+vn -0.561721 -0.428454 -0.707740
+vn -0.561721 -0.428454 -0.707740
+vn -0.561721 -0.428454 -0.707740
+vn -0.706751 -0.043878 0.706101
+vn -0.706750 -0.043878 0.706101
+vn -0.706750 -0.043878 0.706101
+vn -0.706751 -0.043878 0.706101
+vn -0.247777 0.662961 0.706462
+vn -0.247777 0.662961 0.706462
+vn -0.247777 0.662961 0.706462
+vn -0.247777 0.662961 0.706462
+vn -0.563787 -0.427844 0.706466
+vn -0.563787 -0.427844 0.706466
+vn -0.563787 -0.427844 0.706466
+vn -0.563787 -0.427844 0.706466
+vn 0.571531 0.415246 0.707759
+vn 0.571531 0.415246 0.707759
+vn 0.571531 0.415246 0.707759
+vn 0.571531 0.415246 0.707759
+vn 0.703473 0.060898 0.708108
+vn 0.703473 0.060898 0.708108
+vn 0.703473 0.060898 0.708108
+vn 0.703473 0.060898 0.708108
+vn 0.247775 -0.662955 -0.706469
+vn 0.247775 -0.662955 -0.706469
+vn 0.247775 -0.662955 -0.706469
+vn 0.247775 -0.662955 -0.706469
+vn 0.844974 -0.534805 0.001463
+vn 0.844974 -0.534805 0.001463
+vn 0.844974 -0.534805 0.001463
+vn 0.844974 -0.534805 0.001463
+vn 0.245718 -0.662354 0.707750
+vn 0.245718 -0.662354 0.707750
+vn 0.245718 -0.662354 0.707750
+vn 0.245718 -0.662354 0.707750
+vn -0.278261 -0.960506 0.000010
+vn -0.278261 -0.960506 0.000010
+vn -0.278261 -0.960506 0.000010
+vn -0.278261 -0.960506 0.000010
+vn 0.243343 0.801966 -0.545559
+vn 0.243343 0.801966 -0.545559
+vn 0.243343 0.801966 -0.545559
+vn 0.648037 0.240602 -0.722605
+vn 0.648037 0.240602 -0.722605
+vn 0.648037 0.240602 -0.722605
+vn 0.648037 0.240602 -0.722605
+vn -0.702622 0.456513 -0.545819
+vn -0.702622 0.456513 -0.545819
+vn -0.702622 0.456513 -0.545819
+vn -0.642736 -0.240037 -0.727511
+vn -0.642736 -0.240037 -0.727511
+vn -0.642736 -0.240037 -0.727511
+vn -0.642736 -0.240037 -0.727511
+vn -0.704198 0.456984 0.543388
+vn -0.704198 0.456984 0.543388
+vn -0.704198 0.456984 0.543388
+vn -0.644853 -0.239412 0.725842
+vn -0.644853 -0.239412 0.725842
+vn -0.644853 -0.239412 0.725842
+vn -0.644853 -0.239412 0.725842
+vn 0.241751 0.802439 0.545571
+vn 0.241751 0.802439 0.545571
+vn 0.241751 0.802439 0.545571
+vn 0.645932 0.241230 0.724279
+vn 0.645932 0.241230 0.724279
+vn 0.645932 0.241230 0.724279
+vn 0.645932 0.241230 0.724279
+vn 0.708933 -0.448439 -0.544349
+vn 0.708933 -0.448439 -0.544349
+vn 0.708933 -0.448439 -0.544349
+vn 0.707358 -0.447967 0.546782
+vn 0.707358 -0.447967 0.546782
+vn 0.707358 -0.447967 0.546782
+vn -0.234170 -0.805338 0.544605
+vn -0.234170 -0.805338 0.544605
+vn -0.234170 -0.805338 0.544605
+vn -0.232582 -0.805804 -0.544597
+vn -0.232582 -0.805804 -0.544597
+vn -0.232582 -0.805804 -0.544597
+vn -0.036235 -0.999343 0.000380
+vn -0.415908 -0.909407 -0.000213
+vn -0.036235 -0.999343 0.000380
+vn -0.415908 -0.909407 -0.000213
+vn -0.415908 -0.909407 -0.000213
+vn -0.732264 -0.681021 -0.000773
+vn -0.415908 -0.909407 -0.000213
+vn -0.732264 -0.681021 -0.000773
+vn -0.732264 -0.681021 -0.000773
+vn -0.937139 -0.348955 -0.001216
+vn -0.732264 -0.681021 -0.000773
+vn -0.937139 -0.348955 -0.001216
+vn -0.937139 -0.348955 -0.001216
+vn -0.999342 0.036237 -0.001472
+vn -0.937139 -0.348955 -0.001216
+vn -0.999342 0.036237 -0.001472
+vn -0.999342 0.036237 -0.001472
+vn -0.909405 0.415908 -0.001505
+vn -0.999342 0.036237 -0.001472
+vn -0.909405 0.415908 -0.001505
+vn -0.909405 0.415908 -0.001505
+vn -0.681021 0.732263 -0.001309
+vn -0.909405 0.415908 -0.001505
+vn -0.681021 0.732263 -0.001309
+vn -0.681021 0.732263 -0.001309
+vn -0.348954 0.937139 -0.000914
+vn -0.681021 0.732263 -0.001309
+vn -0.348954 0.937139 -0.000914
+vn -0.348954 0.937139 -0.000914
+vn 0.036236 0.999343 -0.000380
+vn -0.348954 0.937139 -0.000914
+vn 0.036236 0.999343 -0.000380
+vn 0.036236 0.999343 -0.000380
+vn 0.415909 0.909406 0.000212
+vn 0.036236 0.999343 -0.000380
+vn 0.415909 0.909406 0.000212
+vn 0.415909 0.909406 0.000212
+vn 0.732263 0.681021 0.000773
+vn 0.415909 0.909406 0.000212
+vn 0.732263 0.681021 0.000773
+vn 0.732263 0.681021 0.000773
+vn 0.937139 0.348955 0.001215
+vn 0.732263 0.681021 0.000773
+vn 0.937139 0.348955 0.001215
+vn 0.937139 0.348955 0.001215
+vn 0.999342 -0.036238 0.001472
+vn 0.937139 0.348955 0.001215
+vn 0.999342 -0.036237 0.001472
+vn 0.999342 -0.036238 0.001472
+vn 0.909404 -0.415911 0.001505
+vn 0.999342 -0.036237 0.001472
+vn 0.909404 -0.415911 0.001505
+vn 0.909404 -0.415911 0.001505
+vn 0.681019 -0.732265 0.001310
+vn 0.909404 -0.415911 0.001505
+vn 0.681018 -0.732265 0.001310
+vn 0.681019 -0.732265 0.001310
+vn 0.348954 -0.937140 0.000915
+vn 0.681018 -0.732265 0.001310
+vn 0.348954 -0.937139 0.000915
+vn 0.348954 -0.937140 0.000915
+vn -0.036235 -0.999343 0.000380
+vn 0.348954 -0.937139 0.000915
+vn -0.036235 -0.999343 0.000380
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn -0.026412 -0.699445 0.714198
+vn -0.026412 -0.699445 0.714198
+vn 0.243304 -0.655890 0.714570
+vn 0.243303 -0.655891 0.714570
+vn -0.026412 -0.699445 0.714198
+vn -0.026412 -0.699445 0.714198
+vn -0.292266 -0.636470 0.713784
+vn -0.292266 -0.636470 0.713784
+vn -0.292266 -0.636470 0.713784
+vn -0.292266 -0.636470 0.713784
+vn -0.513782 -0.476551 0.713391
+vn -0.513782 -0.476552 0.713391
+vn -0.513782 -0.476551 0.713391
+vn -0.513782 -0.476552 0.713391
+vn -0.657237 -0.244033 0.713083
+vn -0.657238 -0.244033 0.713083
+vn -0.657237 -0.244033 0.713083
+vn -0.657238 -0.244033 0.713083
+vn -0.700796 0.025682 0.712900
+vn -0.700796 0.025683 0.712900
+vn -0.700796 0.025682 0.712900
+vn -0.700796 0.025683 0.712900
+vn -0.637822 0.291534 0.712875
+vn -0.637822 0.291534 0.712875
+vn -0.637822 0.291534 0.712875
+vn -0.637822 0.291534 0.712875
+vn -0.477900 0.513050 0.713016
+vn -0.477900 0.513050 0.713016
+vn -0.477900 0.513050 0.713016
+vn -0.477900 0.513050 0.713016
+vn -0.245382 0.656506 0.713294
+vn -0.245382 0.656506 0.713294
+vn -0.245382 0.656506 0.713294
+vn -0.245382 0.656506 0.713294
+vn 0.024332 0.700060 0.713669
+vn 0.024332 0.700060 0.713669
+vn 0.024332 0.700060 0.713669
+vn 0.024332 0.700060 0.713669
+vn 0.290185 0.637086 0.714083
+vn 0.290185 0.637086 0.714083
+vn 0.290185 0.637086 0.714083
+vn 0.290185 0.637086 0.714083
+vn 0.511701 0.477171 0.714472
+vn 0.511700 0.477171 0.714472
+vn 0.511701 0.477171 0.714472
+vn 0.511700 0.477171 0.714472
+vn 0.655158 0.244652 0.714782
+vn 0.655158 0.244652 0.714782
+vn 0.655158 0.244652 0.714782
+vn 0.655158 0.244652 0.714782
+vn 0.698714 -0.025065 0.714962
+vn 0.698714 -0.025065 0.714962
+vn 0.698714 -0.025065 0.714962
+vn 0.698714 -0.025065 0.714962
+vn 0.635739 -0.290918 0.714985
+vn 0.635739 -0.290918 0.714985
+vn 0.635739 -0.290918 0.714985
+vn 0.635739 -0.290918 0.714985
+vn 0.475819 -0.512435 0.714847
+vn 0.475820 -0.512434 0.714847
+vn 0.475819 -0.512435 0.714847
+vn 0.475820 -0.512434 0.714847
+vn 0.243303 -0.655891 0.714570
+vn 0.243304 -0.655890 0.714570
+vn -0.024332 -0.700062 -0.713668
+vn -0.024332 -0.700062 -0.713668
+vn -0.290186 -0.637088 -0.714080
+vn -0.290185 -0.637089 -0.714080
+vn -0.024332 -0.700062 -0.713668
+vn -0.024332 -0.700062 -0.713668
+vn 0.245383 -0.656505 -0.713294
+vn 0.245384 -0.656505 -0.713294
+vn -0.290186 -0.637088 -0.714080
+vn -0.290185 -0.637089 -0.714080
+vn -0.511703 -0.477169 -0.714472
+vn -0.511702 -0.477170 -0.714472
+vn -0.511703 -0.477169 -0.714472
+vn -0.511702 -0.477170 -0.714472
+vn -0.655158 -0.244653 -0.714782
+vn -0.655158 -0.244653 -0.714782
+vn -0.655158 -0.244653 -0.714782
+vn -0.655158 -0.244653 -0.714782
+vn -0.698714 0.025062 -0.714962
+vn -0.698714 0.025063 -0.714962
+vn -0.698714 0.025062 -0.714962
+vn -0.698714 0.025063 -0.714962
+vn -0.635740 0.290916 -0.714985
+vn -0.635740 0.290916 -0.714985
+vn -0.635740 0.290916 -0.714985
+vn -0.635740 0.290916 -0.714985
+vn -0.475819 0.512431 -0.714850
+vn -0.475818 0.512432 -0.714850
+vn -0.475819 0.512431 -0.714850
+vn -0.475818 0.512432 -0.714850
+vn -0.243300 0.655889 -0.714573
+vn -0.243301 0.655888 -0.714573
+vn -0.243300 0.655889 -0.714573
+vn -0.243301 0.655888 -0.714573
+vn 0.026414 0.699447 -0.714196
+vn 0.026413 0.699447 -0.714196
+vn 0.026414 0.699447 -0.714196
+vn 0.026413 0.699447 -0.714196
+vn 0.292265 0.636471 -0.713783
+vn 0.292265 0.636471 -0.713783
+vn 0.292265 0.636471 -0.713783
+vn 0.292265 0.636471 -0.713783
+vn 0.513781 0.476550 -0.713393
+vn 0.513781 0.476550 -0.713393
+vn 0.513781 0.476550 -0.713393
+vn 0.513781 0.476550 -0.713393
+vn 0.657236 0.244032 -0.713085
+vn 0.657236 0.244033 -0.713085
+vn 0.657236 0.244032 -0.713085
+vn 0.657236 0.244033 -0.713085
+vn 0.700791 -0.025684 -0.712904
+vn 0.700791 -0.025682 -0.712904
+vn 0.700791 -0.025684 -0.712904
+vn 0.700791 -0.025682 -0.712904
+vn 0.637818 -0.291536 -0.712878
+vn 0.637818 -0.291535 -0.712878
+vn 0.637818 -0.291536 -0.712878
+vn 0.637818 -0.291535 -0.712878
+vn 0.477899 -0.513051 -0.713015
+vn 0.477900 -0.513051 -0.713015
+vn 0.477899 -0.513051 -0.713015
+vn 0.477900 -0.513051 -0.713015
+vn 0.245384 -0.656505 -0.713294
+vn 0.245383 -0.656505 -0.713294
+vn 0.420203 0.907430 0.000220
+vn 0.420203 0.907430 0.000220
+vn 0.420203 0.907430 0.000220
+vn 0.420203 0.907430 0.000220
+vn 0.984768 -0.173867 0.001510
+vn 0.984768 -0.173867 0.001510
+vn 0.984768 -0.173867 0.001510
+vn 0.984768 -0.173867 0.001510
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.769599 -0.638526 0.001398
+vn 0.769599 -0.638526 0.001398
+vn 0.769599 -0.638526 0.001398
+vn 0.769599 -0.638526 0.001398
+vn -0.705979 0.708232 -0.001335
+vn -0.705979 0.708232 -0.001335
+vn -0.705979 0.708232 -0.001335
+vn -0.705979 0.708232 -0.001335
+vn -0.996773 0.080258 -0.001488
+vn -0.996773 0.080258 -0.001488
+vn -0.996773 0.080258 -0.001488
+vn -0.996773 0.080258 -0.001488
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.420203 -0.907430 -0.000218
+vn -0.420203 -0.907430 -0.000218
+vn -0.420203 -0.907430 -0.000218
+vn -0.420203 -0.907430 -0.000218
+vn 0.298158 0.641343 -0.706952
+vn 0.298158 0.641343 -0.706952
+vn 0.298158 0.641343 -0.706952
+vn 0.298158 0.641343 -0.706952
+vn 0.886443 0.462836 0.001091
+vn 0.886444 0.462835 0.001091
+vn 0.886443 0.462836 0.001091
+vn 0.886443 0.462836 0.001091
+vn 0.697366 -0.123248 -0.706038
+vn 0.697367 -0.123248 -0.706038
+vn 0.697366 -0.123248 -0.706038
+vn 0.697366 -0.123248 -0.706038
+vn 0.907429 -0.420202 0.001504
+vn 0.907429 -0.420202 0.001504
+vn 0.907429 -0.420202 0.001504
+vn 0.907429 -0.420202 0.001504
+vn 0.545217 -0.451810 -0.706121
+vn 0.545217 -0.451810 -0.706121
+vn 0.545217 -0.451810 -0.706121
+vn 0.545217 -0.451810 -0.706121
+vn -0.174169 0.984716 -0.000680
+vn -0.174169 0.984716 -0.000680
+vn -0.174169 0.984716 -0.000680
+vn -0.174169 0.984716 -0.000680
+vn -0.498168 0.500486 -0.708055
+vn -0.498168 0.500486 -0.708055
+vn -0.498168 0.500486 -0.708055
+vn -0.498168 0.500486 -0.708055
+vn -0.907428 0.420206 -0.001504
+vn -0.907428 0.420206 -0.001504
+vn -0.907428 0.420206 -0.001504
+vn -0.907428 0.420206 -0.001504
+vn -0.703786 0.056445 -0.708166
+vn -0.703786 0.056445 -0.708166
+vn -0.703786 0.056445 -0.708166
+vn -0.703786 0.056445 -0.708166
+vn -0.500234 0.501103 0.706160
+vn -0.500234 0.501103 0.706160
+vn -0.500234 0.501103 0.706160
+vn -0.500234 0.501103 0.706160
+vn 0.296100 0.641959 0.707258
+vn 0.296100 0.641959 0.707258
+vn 0.296100 0.641959 0.707258
+vn 0.296100 0.641959 0.707258
+vn -0.705855 0.057057 0.706055
+vn -0.705855 0.057057 0.706055
+vn -0.705855 0.057057 0.706055
+vn -0.705855 0.057057 0.706055
+vn 0.695310 -0.122636 0.708170
+vn 0.695310 -0.122636 0.708170
+vn 0.695310 -0.122636 0.708170
+vn 0.695310 -0.122636 0.708170
+vn 0.543162 -0.451204 0.708089
+vn 0.543162 -0.451204 0.708089
+vn 0.543162 -0.451204 0.708089
+vn 0.543162 -0.451204 0.708089
+vn -0.296095 -0.641950 -0.707268
+vn -0.296095 -0.641950 -0.707268
+vn -0.296095 -0.641950 -0.707268
+vn -0.296095 -0.641950 -0.707268
+vn 0.220445 -0.975399 0.000745
+vn 0.220445 -0.975399 0.000745
+vn 0.220445 -0.975399 0.000745
+vn 0.220445 -0.975399 0.000745
+vn -0.298159 -0.641346 0.706949
+vn -0.298159 -0.641346 0.706949
+vn -0.298159 -0.641346 0.706949
+vn -0.298159 -0.641346 0.706949
+vn -0.863620 -0.504142 -0.001040
+vn -0.863620 -0.504142 -0.001040
+vn -0.863620 -0.504142 -0.001040
+vn -0.863620 -0.504142 -0.001040
+vn 0.743367 0.387473 -0.545225
+vn 0.743367 0.387473 -0.545225
+vn 0.743367 0.387473 -0.545225
+vn 0.628959 -0.291079 -0.720891
+vn 0.628959 -0.291079 -0.720891
+vn 0.628959 -0.291079 -0.720891
+vn 0.628959 -0.291079 -0.720891
+vn -0.145433 0.826472 -0.543869
+vn -0.145433 0.826472 -0.543869
+vn -0.145433 0.826472 -0.543869
+vn -0.612791 0.283945 -0.737470
+vn -0.612791 0.283945 -0.737470
+vn -0.612791 0.283945 -0.737470
+vn -0.612791 0.283945 -0.737470
+vn -0.147017 0.826950 0.542715
+vn -0.147017 0.826950 0.542715
+vn -0.147017 0.826950 0.542715
+vn -0.614943 0.284587 0.735429
+vn -0.614943 0.284587 0.735429
+vn -0.614943 0.284587 0.735429
+vn -0.614943 0.284587 0.735429
+vn 0.741770 0.387956 0.547054
+vn 0.741770 0.387956 0.547054
+vn 0.741770 0.387956 0.547054
+vn 0.626861 -0.290455 0.722967
+vn 0.626861 -0.290455 0.722967
+vn 0.626861 -0.290455 0.722967
+vn 0.626861 -0.290455 0.722967
+vn 0.185458 -0.817312 -0.545533
+vn 0.185458 -0.817312 -0.545533
+vn 0.185458 -0.817312 -0.545533
+vn 0.183869 -0.816852 0.546759
+vn 0.183869 -0.816852 0.546759
+vn 0.183869 -0.816852 0.546759
+vn -0.725836 -0.423015 0.542420
+vn -0.725836 -0.423015 0.542420
+vn -0.725837 -0.423015 0.542420
+vn -0.724251 -0.423478 -0.544175
+vn -0.724251 -0.423478 -0.544175
+vn -0.724251 -0.423478 -0.544175
+vn -0.735475 -0.677552 -0.000779
+vn -0.938777 -0.344522 -0.001218
+vn -0.735475 -0.677552 -0.000779
+vn -0.938777 -0.344522 -0.001218
+vn -0.938777 -0.344522 -0.001218
+vn -0.999160 0.040957 -0.001473
+vn -0.938777 -0.344522 -0.001218
+vn -0.999160 0.040957 -0.001473
+vn -0.999160 0.040957 -0.001473
+vn -0.907429 0.420202 -0.001504
+vn -0.999160 0.040957 -0.001473
+vn -0.907430 0.420201 -0.001504
+vn -0.907429 0.420202 -0.001504
+vn -0.677551 0.735475 -0.001306
+vn -0.907430 0.420201 -0.001504
+vn -0.677550 0.735475 -0.001306
+vn -0.677551 0.735475 -0.001306
+vn -0.344520 0.938778 -0.000908
+vn -0.677550 0.735475 -0.001306
+vn -0.344521 0.938778 -0.000908
+vn -0.344520 0.938778 -0.000908
+vn 0.040959 0.999161 -0.000373
+vn -0.344521 0.938778 -0.000908
+vn 0.040959 0.999161 -0.000373
+vn 0.040959 0.999161 -0.000373
+vn 0.420202 0.907431 0.000219
+vn 0.040959 0.999161 -0.000373
+vn 0.420202 0.907431 0.000219
+vn 0.420202 0.907431 0.000219
+vn 0.735475 0.677552 0.000778
+vn 0.420202 0.907431 0.000219
+vn 0.735475 0.677552 0.000778
+vn 0.735475 0.677552 0.000778
+vn 0.938777 0.344522 0.001218
+vn 0.735475 0.677552 0.000778
+vn 0.938777 0.344523 0.001218
+vn 0.938777 0.344522 0.001218
+vn 0.999160 -0.040958 0.001473
+vn 0.938777 0.344523 0.001218
+vn 0.999160 -0.040959 0.001473
+vn 0.999160 -0.040958 0.001473
+vn 0.907429 -0.420203 0.001504
+vn 0.999160 -0.040959 0.001473
+vn 0.907429 -0.420203 0.001504
+vn 0.907429 -0.420203 0.001504
+vn 0.677551 -0.735475 0.001306
+vn 0.907429 -0.420203 0.001504
+vn 0.677551 -0.735475 0.001306
+vn 0.677551 -0.735475 0.001306
+vn 0.344521 -0.938778 0.000909
+vn 0.677551 -0.735475 0.001306
+vn 0.344520 -0.938778 0.000909
+vn 0.344521 -0.938778 0.000909
+vn -0.040958 -0.999161 0.000373
+vn 0.344520 -0.938778 0.000909
+vn -0.040958 -0.999161 0.000373
+vn -0.040958 -0.999161 0.000373
+vn -0.420202 -0.907431 -0.000220
+vn -0.040958 -0.999161 0.000373
+vn -0.420201 -0.907431 -0.000220
+vn -0.420202 -0.907431 -0.000220
+vn -0.735475 -0.677552 -0.000779
+vn -0.420201 -0.907431 -0.000220
+vn -0.735475 -0.677552 -0.000779
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn -0.513950 -0.474742 -0.714476
+vn -0.513950 -0.474742 -0.714476
+vn -0.656301 -0.241548 -0.714789
+vn -0.656301 -0.241548 -0.714789
+vn -0.513950 -0.474742 -0.714476
+vn -0.513950 -0.474742 -0.714476
+vn -0.293192 -0.635707 -0.714083
+vn -0.293193 -0.635707 -0.714083
+vn -0.656301 -0.241548 -0.714789
+vn -0.656301 -0.241548 -0.714789
+vn -0.698581 0.028372 -0.714968
+vn -0.698581 0.028371 -0.714968
+vn -0.698581 0.028372 -0.714968
+vn -0.698581 0.028371 -0.714968
+vn -0.634353 0.293922 -0.714987
+vn -0.634353 0.293922 -0.714987
+vn -0.634353 0.293922 -0.714987
+vn -0.634353 0.293922 -0.714987
+vn -0.473391 0.514680 -0.714847
+vn -0.473391 0.514680 -0.714847
+vn -0.473391 0.514680 -0.714847
+vn -0.473391 0.514680 -0.714847
+vn -0.240198 0.657035 -0.714570
+vn -0.240197 0.657035 -0.714570
+vn -0.240198 0.657035 -0.714570
+vn -0.240197 0.657035 -0.714570
+vn 0.029720 0.699317 -0.714193
+vn 0.029720 0.699317 -0.714193
+vn 0.029720 0.699317 -0.714193
+vn 0.029720 0.699317 -0.714193
+vn 0.295271 0.635088 -0.713777
+vn 0.295271 0.635088 -0.713777
+vn 0.295271 0.635088 -0.713777
+vn 0.295271 0.635088 -0.713777
+vn 0.516031 0.474122 -0.713387
+vn 0.516031 0.474122 -0.713387
+vn 0.516031 0.474122 -0.713387
+vn 0.516031 0.474122 -0.713387
+vn 0.658385 0.240929 -0.713080
+vn 0.658385 0.240928 -0.713080
+vn 0.658385 0.240929 -0.713080
+vn 0.658385 0.240928 -0.713080
+vn 0.700666 -0.028987 -0.712900
+vn 0.700666 -0.028988 -0.712900
+vn 0.700666 -0.028987 -0.712900
+vn 0.700666 -0.028988 -0.712900
+vn 0.636436 -0.294540 -0.712878
+vn 0.636436 -0.294541 -0.712878
+vn 0.636436 -0.294540 -0.712878
+vn 0.636436 -0.294541 -0.712878
+vn 0.475472 -0.515300 -0.713017
+vn 0.475472 -0.515299 -0.713017
+vn 0.475472 -0.515300 -0.713017
+vn 0.475472 -0.515299 -0.713017
+vn 0.242280 -0.657655 -0.713295
+vn 0.242280 -0.657655 -0.713295
+vn 0.242280 -0.657655 -0.713295
+vn 0.242280 -0.657655 -0.713295
+vn -0.027641 -0.699937 -0.713670
+vn -0.027641 -0.699937 -0.713670
+vn -0.027641 -0.699937 -0.713670
+vn -0.027641 -0.699937 -0.713670
+vn -0.293193 -0.635707 -0.714083
+vn -0.293192 -0.635707 -0.714083
+vn -0.735475 -0.677551 -0.000778
+vn -0.938778 -0.344521 -0.001219
+vn -0.735475 -0.677551 -0.000778
+vn -0.938778 -0.344522 -0.001219
+vn -0.938778 -0.344521 -0.001219
+vn -0.999160 0.040956 -0.001474
+vn -0.938778 -0.344522 -0.001219
+vn -0.999160 0.040956 -0.001474
+vn -0.999160 0.040956 -0.001474
+vn -0.907429 0.420202 -0.001505
+vn -0.999160 0.040956 -0.001474
+vn -0.907429 0.420202 -0.001505
+vn -0.907429 0.420202 -0.001505
+vn -0.677550 0.735476 -0.001306
+vn -0.907429 0.420202 -0.001505
+vn -0.677550 0.735476 -0.001306
+vn -0.677550 0.735476 -0.001306
+vn -0.344521 0.938778 -0.000909
+vn -0.677550 0.735476 -0.001306
+vn -0.344521 0.938778 -0.000909
+vn -0.344521 0.938778 -0.000909
+vn 0.040957 0.999161 -0.000373
+vn -0.344521 0.938778 -0.000909
+vn 0.040957 0.999161 -0.000373
+vn 0.040957 0.999161 -0.000373
+vn 0.420202 0.907431 0.000219
+vn 0.040957 0.999161 -0.000373
+vn 0.420203 0.907430 0.000219
+vn 0.420202 0.907431 0.000219
+vn 0.735476 0.677551 0.000778
+vn 0.420203 0.907430 0.000219
+vn 0.735475 0.677551 0.000778
+vn 0.735476 0.677551 0.000778
+vn 0.938777 0.344523 0.001219
+vn 0.735475 0.677551 0.000778
+vn 0.938777 0.344523 0.001219
+vn 0.938777 0.344523 0.001219
+vn 0.999160 -0.040956 0.001475
+vn 0.938777 0.344523 0.001219
+vn 0.999160 -0.040956 0.001475
+vn 0.999160 -0.040956 0.001475
+vn 0.907429 -0.420203 0.001505
+vn 0.999160 -0.040956 0.001475
+vn 0.907429 -0.420203 0.001505
+vn 0.907429 -0.420203 0.001505
+vn 0.677550 -0.735476 0.001306
+vn 0.907429 -0.420203 0.001505
+vn 0.677550 -0.735476 0.001306
+vn 0.677550 -0.735476 0.001306
+vn 0.344520 -0.938779 0.000908
+vn 0.677550 -0.735476 0.001306
+vn 0.344519 -0.938779 0.000908
+vn 0.344520 -0.938779 0.000908
+vn -0.040959 -0.999161 0.000373
+vn 0.344519 -0.938779 0.000908
+vn -0.040958 -0.999161 0.000373
+vn -0.040959 -0.999161 0.000373
+vn -0.420202 -0.907431 -0.000219
+vn -0.040958 -0.999161 0.000373
+vn -0.420202 -0.907431 -0.000219
+vn -0.420202 -0.907431 -0.000219
+vn -0.735475 -0.677551 -0.000778
+vn -0.420202 -0.907431 -0.000219
+vn -0.735475 -0.677551 -0.000778
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn -0.516033 -0.474125 0.713383
+vn -0.516034 -0.474124 0.713383
+vn -0.295272 -0.635089 0.713776
+vn -0.295273 -0.635088 0.713776
+vn -0.516034 -0.474124 0.713383
+vn -0.516033 -0.474125 0.713383
+vn -0.658390 -0.240930 0.713075
+vn -0.658389 -0.240931 0.713075
+vn -0.658390 -0.240930 0.713075
+vn -0.658389 -0.240931 0.713075
+vn -0.700667 0.028987 0.712900
+vn -0.700667 0.028987 0.712900
+vn -0.700667 0.028987 0.712900
+vn -0.700667 0.028987 0.712900
+vn -0.636431 0.294538 0.712883
+vn -0.636431 0.294538 0.712883
+vn -0.636431 0.294538 0.712883
+vn -0.636431 0.294538 0.712883
+vn -0.475468 0.515296 0.713022
+vn -0.475468 0.515297 0.713022
+vn -0.475468 0.515296 0.713022
+vn -0.475468 0.515297 0.713022
+vn -0.242278 0.657653 0.713298
+vn -0.242278 0.657653 0.713298
+vn -0.242278 0.657653 0.713298
+vn -0.242278 0.657653 0.713298
+vn 0.027640 0.699935 0.713671
+vn 0.027639 0.699935 0.713671
+vn 0.027640 0.699935 0.713671
+vn 0.027639 0.699935 0.713671
+vn 0.293193 0.635704 0.714086
+vn 0.293191 0.635705 0.714086
+vn 0.293193 0.635704 0.714086
+vn 0.293191 0.635705 0.714086
+vn 0.513950 0.474741 0.714476
+vn 0.513950 0.474741 0.714476
+vn 0.513950 0.474741 0.714476
+vn 0.513950 0.474741 0.714476
+vn 0.656306 0.241549 0.714785
+vn 0.656306 0.241549 0.714785
+vn 0.656306 0.241549 0.714785
+vn 0.656306 0.241549 0.714785
+vn 0.698586 -0.028371 0.714964
+vn 0.698586 -0.028370 0.714964
+vn 0.698586 -0.028371 0.714964
+vn 0.698586 -0.028370 0.714964
+vn 0.634354 -0.293923 0.714985
+vn 0.634354 -0.293923 0.714985
+vn 0.634354 -0.293923 0.714985
+vn 0.634354 -0.293923 0.714985
+vn 0.473389 -0.514682 0.714846
+vn 0.473390 -0.514681 0.714846
+vn 0.473389 -0.514682 0.714846
+vn 0.473390 -0.514681 0.714846
+vn 0.240199 -0.657039 0.714566
+vn 0.240198 -0.657039 0.714566
+vn 0.240199 -0.657039 0.714566
+vn 0.240198 -0.657039 0.714566
+vn -0.029720 -0.699321 0.714189
+vn -0.029720 -0.699321 0.714189
+vn -0.029720 -0.699321 0.714189
+vn -0.029720 -0.699321 0.714189
+vn -0.295273 -0.635088 0.713776
+vn -0.295272 -0.635089 0.713776
+vn -0.513950 -0.474740 -0.714478
+vn -0.513949 -0.474741 -0.714477
+vn -0.656309 -0.241549 -0.714781
+vn -0.656309 -0.241550 -0.714781
+vn -0.513949 -0.474741 -0.714477
+vn -0.513950 -0.474740 -0.714478
+vn -0.293191 -0.635704 -0.714086
+vn -0.293190 -0.635705 -0.714086
+vn -0.656309 -0.241549 -0.714781
+vn -0.656309 -0.241550 -0.714781
+vn -0.698590 0.028370 -0.714959
+vn -0.698590 0.028371 -0.714959
+vn -0.698590 0.028370 -0.714959
+vn -0.698590 0.028371 -0.714959
+vn -0.634358 0.293925 -0.714981
+vn -0.634358 0.293925 -0.714981
+vn -0.634358 0.293925 -0.714981
+vn -0.634358 0.293925 -0.714981
+vn -0.473395 0.514686 -0.714839
+vn -0.473395 0.514686 -0.714839
+vn -0.473395 0.514686 -0.714839
+vn -0.473395 0.514686 -0.714839
+vn -0.240201 0.657042 -0.714562
+vn -0.240200 0.657042 -0.714562
+vn -0.240201 0.657042 -0.714562
+vn -0.240200 0.657042 -0.714562
+vn 0.029719 0.699321 -0.714190
+vn 0.029719 0.699321 -0.714190
+vn 0.029719 0.699321 -0.714190
+vn 0.029719 0.699321 -0.714190
+vn 0.295273 0.635088 -0.713776
+vn 0.295272 0.635089 -0.713776
+vn 0.295273 0.635088 -0.713776
+vn 0.295272 0.635089 -0.713776
+vn 0.516034 0.474125 -0.713383
+vn 0.516033 0.474125 -0.713383
+vn 0.516034 0.474125 -0.713383
+vn 0.516033 0.474125 -0.713383
+vn 0.658387 0.240932 -0.713076
+vn 0.658387 0.240933 -0.713076
+vn 0.658387 0.240932 -0.713076
+vn 0.658387 0.240933 -0.713076
+vn 0.700663 -0.028987 -0.712903
+vn 0.700663 -0.028987 -0.712903
+vn 0.700663 -0.028987 -0.712903
+vn 0.700663 -0.028987 -0.712903
+vn 0.636432 -0.294541 -0.712882
+vn 0.636432 -0.294541 -0.712882
+vn 0.636432 -0.294541 -0.712882
+vn 0.636432 -0.294541 -0.712882
+vn 0.475471 -0.515300 -0.713017
+vn 0.475471 -0.515300 -0.713017
+vn 0.475471 -0.515300 -0.713017
+vn 0.475471 -0.515300 -0.713017
+vn 0.242279 -0.657656 -0.713295
+vn 0.242279 -0.657656 -0.713295
+vn 0.242279 -0.657656 -0.713295
+vn 0.242279 -0.657656 -0.713295
+vn -0.027639 -0.699937 -0.713670
+vn -0.027640 -0.699937 -0.713670
+vn -0.027639 -0.699937 -0.713670
+vn -0.027640 -0.699937 -0.713670
+vn -0.293190 -0.635705 -0.714086
+vn -0.293191 -0.635704 -0.714086
+vn -0.205308 0.978697 -0.000150
+vn -0.205308 0.978697 -0.000150
+vn -0.205308 0.978697 -0.000150
+vn -0.205308 0.978697 -0.000150
+vn 0.921767 0.387744 -0.000019
+vn 0.921767 0.387744 -0.000019
+vn 0.921767 0.387744 -0.000019
+vn 0.921767 0.387744 -0.000019
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn -0.921768 -0.387743 0.000019
+vn -0.921768 -0.387743 0.000019
+vn -0.921768 -0.387743 0.000019
+vn -0.921768 -0.387743 0.000019
+vn -0.000040 0.000145 1.000000
+vn -0.000041 0.000144 1.000000
+vn -0.000040 0.000145 1.000000
+vn -0.000041 0.000144 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000145 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000145 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.594894 0.803804 -0.000140
+vn -0.594894 0.803804 -0.000140
+vn -0.594894 0.803804 -0.000140
+vn -0.594894 0.803804 -0.000140
+vn -0.145147 0.691941 -0.707213
+vn -0.145147 0.691941 -0.707213
+vn -0.145147 0.691941 -0.707213
+vn -0.145147 0.691941 -0.707213
+vn 0.464366 0.885643 -0.000109
+vn 0.464366 0.885643 -0.000109
+vn 0.464366 0.885643 -0.000109
+vn 0.464366 0.885643 -0.000109
+vn 0.651817 0.274074 -0.707120
+vn 0.651817 0.274074 -0.707119
+vn 0.651817 0.274074 -0.707119
+vn 0.651817 0.274074 -0.707120
+vn 0.274203 -0.651888 -0.707004
+vn 0.274203 -0.651888 -0.707004
+vn 0.274203 -0.651888 -0.707004
+vn 0.274202 -0.651886 -0.707006
+vn 0.274200 -0.651883 -0.707010
+vn 0.274201 -0.651883 -0.707009
+vn 0.274200 -0.651883 -0.707010
+vn 0.274202 -0.651886 -0.707006
+vn 0.274203 -0.651888 -0.707004
+vn 0.274202 -0.651886 -0.707006
+vn 0.274201 -0.651883 -0.707009
+vn 0.925964 -0.377611 0.000091
+vn 0.925964 -0.377611 0.000091
+vn 0.925964 -0.377611 0.000091
+vn 0.925964 -0.377611 0.000091
+vn -0.651818 -0.274074 0.707119
+vn -0.651818 -0.274074 0.707119
+vn -0.651818 -0.274074 0.707119
+vn -0.651818 -0.274074 0.707119
+vn -0.377615 -0.925963 0.000119
+vn -0.377615 -0.925963 0.000119
+vn -0.377615 -0.925963 0.000119
+vn -0.377615 -0.925963 0.000119
+vn 0.274148 -0.651689 0.707209
+vn 0.274148 -0.651689 0.707209
+vn 0.274149 -0.651689 0.707208
+vn 0.274149 -0.651688 0.707209
+vn 0.274148 -0.651688 0.707210
+vn 0.274149 -0.651689 0.707208
+vn 0.274149 -0.651688 0.707209
+vn 0.274149 -0.651688 0.707209
+vn 0.274148 -0.651688 0.707210
+vn 0.274148 -0.651688 0.707210
+vn 0.274148 -0.651688 0.707210
+vn -0.964371 0.264555 -0.000077
+vn -0.964371 0.264555 -0.000077
+vn -0.964371 0.264555 -0.000077
+vn -0.964371 0.264555 -0.000077
+vn -0.420684 0.568481 0.707004
+vn -0.420684 0.568481 0.707004
+vn -0.420684 0.568481 0.707004
+vn -0.420684 0.568481 0.707004
+vn -0.409549 0.912288 -0.000149
+vn -0.409549 0.912288 -0.000149
+vn -0.409549 0.912288 -0.000149
+vn -0.409549 0.912288 -0.000149
+vn -0.145202 0.692143 0.707004
+vn -0.145202 0.692143 0.707004
+vn -0.145202 0.692143 0.707004
+vn -0.145202 0.692143 0.707004
+vn 0.651759 0.274278 0.707093
+vn 0.651759 0.274278 0.707093
+vn 0.651759 0.274278 0.707093
+vn 0.651759 0.274278 0.707093
+vn -0.420624 0.568272 -0.707208
+vn -0.420624 0.568272 -0.707208
+vn -0.420624 0.568272 -0.707208
+vn -0.420624 0.568272 -0.707208
+vn -0.651764 -0.274280 -0.707088
+vn -0.651764 -0.274280 -0.707088
+vn -0.651764 -0.274280 -0.707088
+vn -0.651764 -0.274280 -0.707088
+vn 0.387595 0.739098 -0.550912
+vn 0.387595 0.739098 -0.550912
+vn 0.387595 0.739098 -0.550912
+vn 0.756069 -0.308404 -0.577275
+vn 0.756069 -0.308404 -0.577275
+vn 0.756069 -0.308404 -0.577275
+vn -0.308340 -0.755959 0.577454
+vn -0.308340 -0.755959 0.577454
+vn -0.308340 -0.755959 0.577454
+vn -0.807149 0.221497 0.547220
+vn -0.807149 0.221497 0.547220
+vn -0.807149 0.221497 0.547220
+vn -0.287577 0.635080 0.716919
+vn -0.287577 0.635080 0.716919
+vn -0.287577 0.635080 0.716919
+vn -0.287577 0.635080 0.716919
+vn 0.387545 0.739257 0.550734
+vn 0.387545 0.739257 0.550734
+vn 0.387545 0.739257 0.550734
+vn -0.287516 0.634872 -0.717128
+vn -0.287516 0.634872 -0.717128
+vn -0.287516 0.634872 -0.717128
+vn -0.287516 0.634872 -0.717128
+vn -0.807105 0.221332 -0.547351
+vn -0.807105 0.221332 -0.547351
+vn -0.807105 0.221332 -0.547351
+vn -0.308309 -0.756124 -0.577254
+vn -0.308309 -0.756124 -0.577254
+vn -0.308309 -0.756124 -0.577254
+vn 0.756023 -0.308233 0.577427
+vn 0.756023 -0.308233 0.577427
+vn 0.756023 -0.308233 0.577427
+vn -0.974417 -0.224749 0.000037
+vn -0.974417 -0.224749 0.000037
+vn -0.974417 -0.224749 0.000037
+vn -0.974417 -0.224749 0.000037
+vn -0.021373 -0.999772 0.000121
+vn -0.021373 -0.999772 0.000121
+vn -0.021373 -0.999772 0.000121
+vn -0.021373 -0.999772 0.000121
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000009 0.000122 1.000000
+vn 0.000009 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.457114 -0.889408 0.000104
+vn 0.457114 -0.889408 0.000104
+vn 0.457114 -0.889408 0.000104
+vn 0.457114 -0.889408 0.000104
+vn -0.406372 0.913708 -0.000107
+vn -0.406372 0.913708 -0.000107
+vn -0.406372 0.913708 -0.000107
+vn -0.406372 0.913708 -0.000107
+vn -0.034887 0.999391 -0.000121
+vn -0.034887 0.999391 -0.000121
+vn -0.034887 0.999391 -0.000121
+vn -0.034887 0.999391 -0.000121
+vn 0.974416 0.224750 -0.000036
+vn 0.974416 0.224750 -0.000036
+vn 0.974416 0.224750 -0.000036
+vn 0.974416 0.224750 -0.000036
+vn -0.000009 -0.000122 -1.000000
+vn -0.000009 -0.000122 -1.000000
+vn -0.000008 -0.000121 -1.000000
+vn -0.000008 -0.000121 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000009 -0.000122 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000009 -0.000122 -1.000000
+vn -0.689014 -0.158836 0.707128
+vn -0.689014 -0.158836 0.707128
+vn -0.689014 -0.158836 0.707128
+vn -0.689014 -0.158836 0.707128
+vn -0.630920 -0.775848 0.000100
+vn -0.630920 -0.775848 0.000100
+vn -0.630920 -0.775848 0.000100
+vn -0.630920 -0.775848 0.000100
+vn -0.015107 -0.706858 0.707194
+vn -0.015107 -0.706858 0.707194
+vn -0.015107 -0.706858 0.707194
+vn -0.015107 -0.706858 0.707194
+vn 0.323234 -0.628818 0.707183
+vn 0.323234 -0.628818 0.707183
+vn 0.323234 -0.628818 0.707183
+vn 0.323234 -0.628818 0.707183
+vn 0.224743 -0.974418 0.000116
+vn 0.224743 -0.974418 0.000116
+vn 0.224744 -0.974418 0.000116
+vn 0.224744 -0.974418 0.000116
+vn -0.894802 0.446464 -0.000045
+vn -0.894802 0.446464 -0.000045
+vn -0.894802 0.446464 -0.000045
+vn -0.894802 0.446464 -0.000045
+vn -0.287339 0.646170 0.707036
+vn -0.287339 0.646170 0.707036
+vn -0.287339 0.646170 0.707036
+vn -0.287339 0.646170 0.707036
+vn -0.224747 0.974417 -0.000117
+vn -0.224747 0.974417 -0.000117
+vn -0.224747 0.974417 -0.000117
+vn -0.224747 0.974417 -0.000117
+vn -0.024661 0.706760 0.707023
+vn -0.024661 0.706760 0.707023
+vn -0.024661 0.706761 0.707023
+vn -0.024661 0.706761 0.707023
+vn 0.689027 0.159009 0.707077
+vn 0.689027 0.159009 0.707077
+vn 0.689027 0.159009 0.707077
+vn 0.689027 0.159009 0.707077
+vn 0.608853 0.793283 -0.000102
+vn 0.608853 0.793283 -0.000102
+vn 0.608853 0.793283 -0.000102
+vn 0.608853 0.793283 -0.000102
+vn 0.689008 0.158836 -0.707134
+vn 0.689008 0.158836 -0.707134
+vn 0.689008 0.158836 -0.707134
+vn 0.689009 0.158836 -0.707134
+vn -0.024674 0.706590 -0.707193
+vn -0.024674 0.706590 -0.707193
+vn -0.024674 0.706590 -0.707193
+vn -0.024674 0.706590 -0.707193
+vn -0.287355 0.646003 -0.707183
+vn -0.287355 0.646003 -0.707183
+vn -0.287355 0.646003 -0.707183
+vn -0.287355 0.646003 -0.707183
+vn -0.689029 -0.159009 -0.707075
+vn -0.689029 -0.159009 -0.707075
+vn -0.689029 -0.159009 -0.707075
+vn -0.689029 -0.159009 -0.707075
+vn -0.015119 -0.707033 -0.707019
+vn -0.015119 -0.707033 -0.707019
+vn -0.015119 -0.707033 -0.707019
+vn -0.015119 -0.707033 -0.707019
+vn 0.323223 -0.628991 -0.707034
+vn 0.323223 -0.628991 -0.707034
+vn 0.323223 -0.628991 -0.707034
+vn 0.323223 -0.628991 -0.707034
+vn 0.907004 -0.421121 0.000042
+vn 0.907004 -0.421121 0.000042
+vn 0.907004 -0.421121 0.000042
+vn 0.907004 -0.421121 0.000042
+vn -0.528267 -0.649548 0.546829
+vn -0.528267 -0.649548 0.546829
+vn -0.528267 -0.649548 0.546829
+vn 0.155838 -0.675515 0.720690
+vn 0.155838 -0.675515 0.720690
+vn 0.155838 -0.675515 0.720690
+vn 0.155838 -0.675515 0.720690
+vn -0.746834 0.372696 0.550760
+vn -0.746834 0.372696 0.550760
+vn -0.746834 0.372696 0.550760
+vn -0.157153 0.681484 0.714760
+vn -0.157153 0.681484 0.714760
+vn -0.157153 0.681484 0.714760
+vn -0.157153 0.681484 0.714760
+vn 0.508179 0.662179 0.550702
+vn 0.508179 0.662179 0.550702
+vn 0.508179 0.662179 0.550702
+vn 0.508170 0.662035 -0.550884
+vn 0.508170 0.662035 -0.550884
+vn 0.508170 0.662035 -0.550884
+vn -0.157173 0.681311 -0.714921
+vn -0.157173 0.681310 -0.714921
+vn -0.157173 0.681310 -0.714921
+vn -0.157173 0.681310 -0.714921
+vn -0.746846 0.372572 -0.550827
+vn -0.746846 0.372572 -0.550827
+vn -0.746846 0.372572 -0.550827
+vn -0.528281 -0.649687 -0.546650
+vn -0.528281 -0.649687 -0.546650
+vn -0.528281 -0.649687 -0.546650
+vn 0.155812 -0.675690 -0.720531
+vn 0.155812 -0.675690 -0.720531
+vn 0.155812 -0.675690 -0.720531
+vn 0.155812 -0.675690 -0.720531
+vn 0.759440 -0.352533 0.546782
+vn 0.759440 -0.352533 0.546782
+vn 0.759440 -0.352533 0.546782
+vn 0.759425 -0.352675 -0.546712
+vn 0.759425 -0.352675 -0.546712
+vn 0.759425 -0.352675 -0.546712
+vn 0.814236 0.580535 -0.000079
+vn 0.530094 0.847939 -0.000109
+vn 0.814236 0.580534 -0.000079
+vn 0.530093 0.847939 -0.000109
+vn 0.530094 0.847939 -0.000109
+vn 0.165253 0.986251 -0.000122
+vn 0.530093 0.847939 -0.000109
+vn 0.165254 0.986251 -0.000122
+vn 0.165253 0.986251 -0.000122
+vn -0.224749 0.974417 -0.000116
+vn 0.165254 0.986251 -0.000122
+vn -0.224750 0.974416 -0.000116
+vn -0.224749 0.974417 -0.000116
+vn -0.580534 0.814236 -0.000093
+vn -0.224750 0.974416 -0.000116
+vn -0.580534 0.814236 -0.000093
+vn -0.580534 0.814236 -0.000093
+vn -0.847938 0.530095 -0.000056
+vn -0.580534 0.814236 -0.000093
+vn -0.847938 0.530095 -0.000056
+vn -0.847938 0.530095 -0.000056
+vn -0.986251 0.165253 -0.000010
+vn -0.847938 0.530095 -0.000056
+vn -0.986251 0.165252 -0.000010
+vn -0.986251 0.165253 -0.000010
+vn -0.974417 -0.224750 0.000037
+vn -0.986251 0.165252 -0.000010
+vn -0.974416 -0.224750 0.000037
+vn -0.974417 -0.224750 0.000037
+vn -0.814235 -0.580535 0.000079
+vn -0.974416 -0.224750 0.000037
+vn -0.814236 -0.580535 0.000079
+vn -0.814235 -0.580535 0.000079
+vn -0.530096 -0.847938 0.000108
+vn -0.814236 -0.580535 0.000079
+vn -0.530095 -0.847938 0.000108
+vn -0.530096 -0.847938 0.000108
+vn -0.165252 -0.986251 0.000122
+vn -0.530095 -0.847938 0.000108
+vn -0.165252 -0.986251 0.000122
+vn -0.165252 -0.986251 0.000122
+vn 0.224749 -0.974417 0.000117
+vn -0.165252 -0.986251 0.000122
+vn 0.224748 -0.974417 0.000117
+vn 0.224749 -0.974417 0.000117
+vn 0.580535 -0.814235 0.000094
+vn 0.224748 -0.974417 0.000117
+vn 0.580535 -0.814235 0.000094
+vn 0.580535 -0.814235 0.000094
+vn 0.847939 -0.530094 0.000057
+vn 0.580535 -0.814235 0.000094
+vn 0.847939 -0.530095 0.000057
+vn 0.847939 -0.530094 0.000057
+vn 0.986252 -0.165251 0.000011
+vn 0.847939 -0.530095 0.000057
+vn 0.986252 -0.165250 0.000011
+vn 0.986252 -0.165251 0.000011
+vn 0.974417 0.224748 -0.000037
+vn 0.986252 -0.165250 0.000011
+vn 0.974417 0.224747 -0.000037
+vn 0.974417 0.224748 -0.000037
+vn 0.814236 0.580535 -0.000079
+vn 0.974417 0.224747 -0.000037
+vn 0.814236 0.580534 -0.000079
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.570131 0.406413 -0.713989
+vn 0.570132 0.406412 -0.713988
+vn 0.682294 0.157285 -0.713958
+vn 0.682294 0.157284 -0.713958
+vn 0.570132 0.406412 -0.713988
+vn 0.570131 0.406413 -0.713989
+vn 0.371174 0.593650 -0.714009
+vn 0.371173 0.593650 -0.714010
+vn 0.371174 0.593650 -0.714009
+vn 0.371173 0.593650 -0.714010
+vn 0.115704 0.690500 -0.714018
+vn 0.115704 0.690500 -0.714019
+vn 0.115704 0.690500 -0.714018
+vn 0.115704 0.690500 -0.714019
+vn -0.157380 0.682212 -0.714015
+vn -0.157380 0.682212 -0.714015
+vn -0.157380 0.682212 -0.714015
+vn -0.157380 0.682212 -0.714015
+vn -0.406504 0.570051 -0.714000
+vn -0.406504 0.570052 -0.714000
+vn -0.406504 0.570051 -0.714000
+vn -0.406504 0.570052 -0.714000
+vn -0.593746 0.371092 -0.713972
+vn -0.593745 0.371093 -0.713972
+vn -0.593746 0.371092 -0.713972
+vn -0.593745 0.371093 -0.713972
+vn -0.690596 0.115624 -0.713939
+vn -0.690596 0.115625 -0.713939
+vn -0.690596 0.115624 -0.713939
+vn -0.690596 0.115625 -0.713939
+vn -0.682307 -0.157461 -0.713907
+vn -0.682307 -0.157460 -0.713907
+vn -0.682307 -0.157461 -0.713907
+vn -0.682307 -0.157460 -0.713907
+vn -0.570149 -0.406585 -0.713876
+vn -0.570148 -0.406585 -0.713876
+vn -0.570149 -0.406585 -0.713876
+vn -0.570148 -0.406585 -0.713876
+vn -0.371190 -0.593830 -0.713852
+vn -0.371191 -0.593829 -0.713852
+vn -0.371190 -0.593830 -0.713852
+vn -0.371191 -0.593829 -0.713852
+vn -0.115718 -0.690677 -0.713845
+vn -0.115719 -0.690677 -0.713845
+vn -0.115718 -0.690677 -0.713845
+vn -0.115719 -0.690677 -0.713845
+vn 0.157365 -0.682386 -0.713853
+vn 0.157365 -0.682386 -0.713853
+vn 0.157365 -0.682386 -0.713853
+vn 0.157365 -0.682386 -0.713853
+vn 0.406488 -0.570222 -0.713873
+vn 0.406488 -0.570222 -0.713873
+vn 0.406488 -0.570222 -0.713873
+vn 0.406488 -0.570222 -0.713873
+vn 0.593728 -0.371264 -0.713898
+vn 0.593728 -0.371263 -0.713898
+vn 0.593728 -0.371264 -0.713898
+vn 0.593728 -0.371263 -0.713898
+vn 0.690580 -0.115799 -0.713926
+vn 0.690580 -0.115798 -0.713926
+vn 0.690580 -0.115799 -0.713926
+vn 0.690580 -0.115798 -0.713926
+vn 0.682294 0.157284 -0.713958
+vn 0.682294 0.157285 -0.713958
+vn 0.570146 0.406583 0.713880
+vn 0.570145 0.406584 0.713880
+vn 0.371186 0.593828 0.713855
+vn 0.371186 0.593828 0.713855
+vn 0.570145 0.406584 0.713880
+vn 0.570146 0.406583 0.713880
+vn 0.682306 0.157460 0.713908
+vn 0.682306 0.157459 0.713908
+vn 0.371186 0.593828 0.713855
+vn 0.371186 0.593828 0.713855
+vn 0.115721 0.690676 0.713846
+vn 0.115721 0.690676 0.713846
+vn 0.115721 0.690676 0.713846
+vn 0.115721 0.690676 0.713846
+vn -0.157366 0.682388 0.713851
+vn -0.157365 0.682388 0.713851
+vn -0.157366 0.682388 0.713851
+vn -0.157365 0.682388 0.713851
+vn -0.406494 0.570230 0.713863
+vn -0.406493 0.570230 0.713863
+vn -0.406494 0.570230 0.713863
+vn -0.406493 0.570230 0.713863
+vn -0.593737 0.371269 0.713887
+vn -0.593737 0.371270 0.713888
+vn -0.593737 0.371269 0.713887
+vn -0.593737 0.371270 0.713888
+vn -0.690584 0.115801 0.713922
+vn -0.690584 0.115799 0.713922
+vn -0.690584 0.115801 0.713922
+vn -0.690584 0.115799 0.713922
+vn -0.682294 -0.157285 0.713958
+vn -0.682294 -0.157287 0.713958
+vn -0.682294 -0.157285 0.713958
+vn -0.682294 -0.157287 0.713958
+vn -0.570133 -0.406413 0.713986
+vn -0.570133 -0.406413 0.713986
+vn -0.570133 -0.406413 0.713986
+vn -0.570133 -0.406413 0.713986
+vn -0.371174 -0.593650 0.714010
+vn -0.371174 -0.593650 0.714010
+vn -0.371174 -0.593650 0.714010
+vn -0.371174 -0.593650 0.714010
+vn -0.115703 -0.690502 0.714017
+vn -0.115705 -0.690502 0.714017
+vn -0.115703 -0.690502 0.714017
+vn -0.115705 -0.690502 0.714017
+vn 0.157381 -0.682217 0.714011
+vn 0.157381 -0.682217 0.714011
+vn 0.157381 -0.682217 0.714011
+vn 0.157381 -0.682217 0.714011
+vn 0.406506 -0.570052 0.713998
+vn 0.406506 -0.570052 0.713999
+vn 0.406506 -0.570052 0.713998
+vn 0.406506 -0.570052 0.713999
+vn 0.593742 -0.371093 0.713975
+vn 0.593742 -0.371092 0.713975
+vn 0.593742 -0.371093 0.713975
+vn 0.593742 -0.371092 0.713975
+vn 0.690592 -0.115624 0.713942
+vn 0.690592 -0.115625 0.713942
+vn 0.690592 -0.115624 0.713942
+vn 0.690592 -0.115625 0.713942
+vn 0.682306 0.157459 0.713908
+vn 0.682306 0.157460 0.713908
+vn -0.839789 -0.542913 0.000097
+vn -0.839789 -0.542913 0.000097
+vn -0.839789 -0.542913 0.000097
+vn -0.839789 -0.542913 0.000097
+vn 0.275241 -0.961375 0.000091
+vn 0.275241 -0.961375 0.000091
+vn 0.275241 -0.961375 0.000091
+vn 0.275241 -0.961375 0.000091
+vn 0.000046 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000109 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000047 0.000109 1.000000
+vn 0.763660 -0.645619 0.000034
+vn 0.763660 -0.645619 0.000034
+vn 0.763660 -0.645619 0.000034
+vn 0.763660 -0.645619 0.000034
+vn -0.864379 0.502841 -0.000015
+vn -0.864379 0.502841 -0.000015
+vn -0.864379 0.502841 -0.000015
+vn -0.864379 0.502841 -0.000015
+vn -0.103704 0.994608 -0.000103
+vn -0.103704 0.994608 -0.000103
+vn -0.103704 0.994608 -0.000103
+vn -0.103704 0.994608 -0.000103
+vn 0.839789 0.542913 -0.000099
+vn 0.839789 0.542913 -0.000099
+vn 0.839789 0.542913 -0.000099
+vn 0.839789 0.542913 -0.000099
+vn -0.000046 -0.000107 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.000046 -0.000107 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.593785 -0.383819 0.707180
+vn -0.593785 -0.383819 0.707180
+vn -0.593785 -0.383819 0.707180
+vn -0.593785 -0.383819 0.707180
+vn -0.351363 -0.936239 0.000117
+vn -0.351363 -0.936239 0.000117
+vn -0.351363 -0.936239 0.000117
+vn -0.351363 -0.936239 0.000117
+vn 0.194659 -0.679725 0.707165
+vn 0.194659 -0.679725 0.707165
+vn 0.194659 -0.679725 0.707165
+vn 0.194659 -0.679725 0.707165
+vn 0.540023 -0.456448 0.707128
+vn 0.540023 -0.456448 0.707128
+vn 0.540023 -0.456448 0.707128
+vn 0.540023 -0.456448 0.707128
+vn 0.542913 -0.839789 0.000066
+vn 0.542913 -0.839789 0.000066
+vn 0.542913 -0.839789 0.000066
+vn 0.542913 -0.839789 0.000066
+vn -0.999724 -0.023502 0.000049
+vn -0.999724 -0.023502 0.000049
+vn -0.999724 -0.023502 0.000049
+vn -0.999724 -0.023502 0.000049
+vn -0.611174 0.355638 0.707098
+vn -0.611174 0.355638 0.707098
+vn -0.611174 0.355638 0.707098
+vn -0.611174 0.355638 0.707098
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.073296 0.703369 0.707036
+vn -0.073296 0.703368 0.707036
+vn -0.073296 0.703369 0.707036
+vn -0.073296 0.703369 0.707036
+vn 0.593850 0.383971 0.707042
+vn 0.593850 0.383971 0.707042
+vn 0.593850 0.383971 0.707042
+vn 0.593850 0.383971 0.707042
+vn 0.431819 0.901960 -0.000118
+vn 0.431819 0.901960 -0.000118
+vn 0.431819 0.901960 -0.000118
+vn 0.431819 0.901960 -0.000118
+vn 0.593788 0.383821 -0.707176
+vn 0.593788 0.383821 -0.707176
+vn 0.593788 0.383821 -0.707176
+vn 0.593788 0.383821 -0.707176
+vn -0.073361 0.703221 -0.707177
+vn -0.073361 0.703221 -0.707177
+vn -0.073361 0.703220 -0.707177
+vn -0.073361 0.703221 -0.707177
+vn -0.611245 0.355488 -0.707112
+vn -0.611245 0.355488 -0.707112
+vn -0.611245 0.355488 -0.707112
+vn -0.611245 0.355488 -0.707112
+vn -0.593855 -0.383974 -0.707036
+vn -0.593855 -0.383974 -0.707036
+vn -0.593855 -0.383974 -0.707036
+vn -0.593855 -0.383974 -0.707036
+vn 0.194591 -0.679873 -0.707041
+vn 0.194591 -0.679873 -0.707041
+vn 0.194591 -0.679873 -0.707041
+vn 0.194591 -0.679873 -0.707041
+vn 0.539956 -0.456598 -0.707083
+vn 0.539956 -0.456598 -0.707082
+vn 0.539956 -0.456598 -0.707082
+vn 0.539956 -0.456598 -0.707083
+vn 0.997955 -0.063924 -0.000041
+vn 0.997955 -0.063924 -0.000041
+vn 0.997955 -0.063924 -0.000041
+vn 0.997955 -0.063924 -0.000041
+vn -0.294663 -0.785192 0.544654
+vn -0.294663 -0.785192 0.544654
+vn -0.294663 -0.785192 0.544654
+vn 0.372915 -0.576693 0.726883
+vn 0.372915 -0.576693 0.726883
+vn 0.372915 -0.576693 0.726883
+vn 0.372915 -0.576693 0.726883
+vn -0.838090 -0.019638 0.545179
+vn -0.838090 -0.019638 0.545179
+vn -0.838090 -0.019638 0.545179
+vn -0.351534 0.543903 0.761967
+vn -0.351534 0.543903 0.761967
+vn -0.351534 0.543903 0.761967
+vn -0.351534 0.543903 0.761967
+vn 0.362035 0.756216 0.545039
+vn 0.362035 0.756216 0.545039
+vn 0.362035 0.756216 0.545039
+vn 0.361987 0.756099 -0.545234
+vn 0.361987 0.756099 -0.545234
+vn 0.361987 0.756099 -0.545234
+vn -0.351614 0.543745 -0.762043
+vn -0.351614 0.543745 -0.762043
+vn -0.351614 0.543745 -0.762043
+vn -0.351614 0.543745 -0.762043
+vn -0.838145 -0.019761 -0.545089
+vn -0.838145 -0.019761 -0.545089
+vn -0.838145 -0.019761 -0.545089
+vn -0.294724 -0.785303 -0.544460
+vn -0.294724 -0.785303 -0.544460
+vn -0.294724 -0.785303 -0.544460
+vn 0.372844 -0.576849 -0.726796
+vn 0.372844 -0.576849 -0.726796
+vn 0.372844 -0.576849 -0.726796
+vn 0.372844 -0.576849 -0.726796
+vn 0.837027 -0.053555 0.544535
+vn 0.837027 -0.053555 0.544535
+vn 0.837027 -0.053555 0.544535
+vn 0.836979 -0.053674 -0.544597
+vn 0.836979 -0.053674 -0.544597
+vn 0.836979 -0.053674 -0.544597
+vn 0.568101 0.822959 -0.000115
+vn 0.209924 0.977718 -0.000115
+vn 0.568102 0.822958 -0.000115
+vn 0.209924 0.977718 -0.000115
+vn 0.209924 0.977718 -0.000115
+vn -0.180212 0.983628 -0.000098
+vn 0.209924 0.977718 -0.000115
+vn -0.180213 0.983628 -0.000098
+vn -0.180212 0.983628 -0.000098
+vn -0.542911 0.839790 -0.000066
+vn -0.180213 0.983628 -0.000098
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.822959 0.568100 -0.000023
+vn -0.542911 0.839790 -0.000066
+vn -0.822959 0.568101 -0.000023
+vn -0.822959 0.568100 -0.000023
+vn -0.977718 0.209924 0.000023
+vn -0.822959 0.568101 -0.000023
+vn -0.977718 0.209923 0.000023
+vn -0.977718 0.209924 0.000023
+vn -0.983628 -0.180213 0.000065
+vn -0.977718 0.209923 0.000023
+vn -0.983628 -0.180213 0.000065
+vn -0.983628 -0.180213 0.000065
+vn -0.839789 -0.542913 0.000098
+vn -0.983628 -0.180213 0.000065
+vn -0.839789 -0.542913 0.000098
+vn -0.839789 -0.542913 0.000098
+vn -0.568101 -0.822959 0.000116
+vn -0.839789 -0.542913 0.000098
+vn -0.568102 -0.822958 0.000116
+vn -0.568101 -0.822959 0.000116
+vn -0.209924 -0.977718 0.000115
+vn -0.568102 -0.822958 0.000116
+vn -0.209924 -0.977718 0.000115
+vn -0.209924 -0.977718 0.000115
+vn 0.180212 -0.983628 0.000098
+vn -0.209924 -0.977718 0.000115
+vn 0.180212 -0.983628 0.000098
+vn 0.180212 -0.983628 0.000098
+vn 0.542915 -0.839788 0.000065
+vn 0.180212 -0.983628 0.000098
+vn 0.542914 -0.839788 0.000065
+vn 0.542915 -0.839788 0.000065
+vn 0.822960 -0.568100 0.000023
+vn 0.542914 -0.839788 0.000065
+vn 0.822960 -0.568099 0.000023
+vn 0.822960 -0.568100 0.000023
+vn 0.977718 -0.209924 -0.000023
+vn 0.822960 -0.568099 0.000023
+vn 0.977718 -0.209924 -0.000023
+vn 0.977718 -0.209924 -0.000023
+vn 0.983628 0.180213 -0.000065
+vn 0.977718 -0.209924 -0.000023
+vn 0.983628 0.180212 -0.000065
+vn 0.983628 0.180213 -0.000065
+vn 0.839790 0.542912 -0.000097
+vn 0.983628 0.180212 -0.000065
+vn 0.839789 0.542913 -0.000097
+vn 0.839790 0.542912 -0.000097
+vn 0.568101 0.822959 -0.000115
+vn 0.839789 0.542913 -0.000097
+vn 0.568102 0.822958 -0.000115
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.397759 0.576169 -0.714014
+vn 0.397759 0.576169 -0.714014
+vn 0.588000 0.380077 -0.714001
+vn 0.588000 0.380078 -0.714001
+vn 0.397759 0.576169 -0.714014
+vn 0.397759 0.576169 -0.714014
+vn 0.146958 0.684535 -0.714013
+vn 0.146958 0.684535 -0.714013
+vn 0.146958 0.684535 -0.714013
+vn 0.146958 0.684535 -0.714013
+vn -0.126222 0.688674 -0.714000
+vn -0.126222 0.688675 -0.714000
+vn -0.126222 0.688674 -0.714000
+vn -0.126222 0.688675 -0.714000
+vn -0.380190 0.587958 -0.713975
+vn -0.380190 0.587958 -0.713975
+vn -0.380190 0.587958 -0.713975
+vn -0.380190 0.587958 -0.713975
+vn -0.576286 0.397719 -0.713943
+vn -0.576286 0.397719 -0.713943
+vn -0.576286 0.397719 -0.713943
+vn -0.576286 0.397719 -0.713943
+vn -0.684654 0.146915 -0.713908
+vn -0.684654 0.146917 -0.713908
+vn -0.684654 0.146915 -0.713908
+vn -0.684654 0.146917 -0.713908
+vn -0.688792 -0.126265 -0.713879
+vn -0.688792 -0.126264 -0.713879
+vn -0.688792 -0.126265 -0.713879
+vn -0.688792 -0.126264 -0.713879
+vn -0.588071 -0.380234 -0.713859
+vn -0.588071 -0.380234 -0.713859
+vn -0.588071 -0.380234 -0.713859
+vn -0.588071 -0.380234 -0.713859
+vn -0.397826 -0.576327 -0.713850
+vn -0.397826 -0.576326 -0.713850
+vn -0.397826 -0.576327 -0.713850
+vn -0.397826 -0.576326 -0.713850
+vn -0.147023 -0.684688 -0.713854
+vn -0.147024 -0.684687 -0.713854
+vn -0.147023 -0.684688 -0.713854
+vn -0.147024 -0.684687 -0.713854
+vn 0.126153 -0.688824 -0.713868
+vn 0.126153 -0.688824 -0.713868
+vn 0.126153 -0.688824 -0.713868
+vn 0.126153 -0.688824 -0.713868
+vn 0.380120 -0.588107 -0.713890
+vn 0.380120 -0.588107 -0.713890
+vn 0.380120 -0.588107 -0.713890
+vn 0.380120 -0.588107 -0.713890
+vn 0.576215 -0.397867 -0.713917
+vn 0.576215 -0.397868 -0.713917
+vn 0.576215 -0.397867 -0.713917
+vn 0.576215 -0.397868 -0.713917
+vn 0.684581 -0.147068 -0.713947
+vn 0.684581 -0.147068 -0.713947
+vn 0.684581 -0.147068 -0.713947
+vn 0.684581 -0.147068 -0.713947
+vn 0.688719 0.126110 -0.713976
+vn 0.688719 0.126110 -0.713976
+vn 0.688719 0.126110 -0.713976
+vn 0.688719 0.126110 -0.713976
+vn 0.588000 0.380078 -0.714001
+vn 0.588000 0.380077 -0.714001
+vn 0.397827 0.576327 0.713849
+vn 0.397827 0.576327 0.713850
+vn 0.147025 0.684689 0.713852
+vn 0.147026 0.684689 0.713852
+vn 0.397827 0.576327 0.713850
+vn 0.397827 0.576327 0.713849
+vn 0.588068 0.380234 0.713861
+vn 0.588068 0.380234 0.713861
+vn 0.147025 0.684689 0.713852
+vn 0.147026 0.684689 0.713852
+vn -0.126153 0.688829 0.713863
+vn -0.126152 0.688829 0.713863
+vn -0.126153 0.688829 0.713863
+vn -0.126152 0.688829 0.713863
+vn -0.380120 0.588111 0.713887
+vn -0.380121 0.588110 0.713887
+vn -0.380120 0.588111 0.713887
+vn -0.380121 0.588110 0.713887
+vn -0.576214 0.397867 0.713919
+vn -0.576214 0.397866 0.713919
+vn -0.576214 0.397867 0.713919
+vn -0.576214 0.397866 0.713919
+vn -0.684575 0.147068 0.713952
+vn -0.684575 0.147069 0.713952
+vn -0.684575 0.147068 0.713952
+vn -0.684575 0.147069 0.713952
+vn -0.688712 -0.126109 0.713983
+vn -0.688712 -0.126109 0.713983
+vn -0.688712 -0.126109 0.713983
+vn -0.688712 -0.126109 0.713983
+vn -0.587997 -0.380078 0.714003
+vn -0.587997 -0.380078 0.714003
+vn -0.587997 -0.380078 0.714003
+vn -0.587997 -0.380078 0.714003
+vn -0.397759 -0.576170 0.714014
+vn -0.397759 -0.576170 0.714014
+vn -0.397759 -0.576170 0.714014
+vn -0.397759 -0.576170 0.714014
+vn -0.146958 -0.684533 0.714015
+vn -0.146958 -0.684533 0.714015
+vn -0.146958 -0.684533 0.714015
+vn -0.146958 -0.684533 0.714015
+vn 0.126221 -0.688672 0.714002
+vn 0.126220 -0.688672 0.714002
+vn 0.126221 -0.688672 0.714002
+vn 0.126220 -0.688672 0.714002
+vn 0.380190 -0.587955 0.713977
+vn 0.380190 -0.587955 0.713977
+vn 0.380190 -0.587955 0.713977
+vn 0.380190 -0.587955 0.713977
+vn 0.576284 -0.397718 0.713945
+vn 0.576284 -0.397718 0.713945
+vn 0.576284 -0.397718 0.713945
+vn 0.576284 -0.397718 0.713945
+vn 0.684648 -0.146917 0.713914
+vn 0.684648 -0.146916 0.713914
+vn 0.684648 -0.146917 0.713914
+vn 0.684648 -0.146916 0.713914
+vn 0.688785 0.126265 0.713885
+vn 0.688785 0.126266 0.713885
+vn 0.688785 0.126265 0.713885
+vn 0.688785 0.126266 0.713885
+vn 0.588068 0.380234 0.713861
+vn 0.588068 0.380234 0.713861
+vn 0.937417 0.348208 -0.000142
+vn 0.937417 0.348208 -0.000142
+vn 0.937417 0.348208 -0.000142
+vn 0.937417 0.348208 -0.000142
+vn 0.520180 -0.854057 0.000064
+vn 0.520180 -0.854057 0.000064
+vn 0.520180 -0.854057 0.000064
+vn 0.520180 -0.854057 0.000064
+vn -0.000099 -0.000137 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000099 -0.000137 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.520180 0.854057 -0.000065
+vn -0.520180 0.854057 -0.000065
+vn -0.520180 0.854057 -0.000065
+vn -0.520180 0.854057 -0.000065
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000138 1.000000
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000138 1.000000
+vn 0.000100 0.000137 1.000000
+vn 0.000100 0.000137 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.706671 0.707542 -0.000168
+vn 0.706672 0.707542 -0.000168
+vn 0.706672 0.707542 -0.000168
+vn 0.706672 0.707542 -0.000168
+vn 0.662785 0.246125 -0.707205
+vn 0.662785 0.246125 -0.707205
+vn 0.662785 0.246125 -0.707205
+vn 0.662785 0.246125 -0.707205
+vn 0.944728 -0.327854 -0.000050
+vn 0.944728 -0.327854 -0.000050
+vn 0.944728 -0.327854 -0.000050
+vn 0.944728 -0.327854 -0.000050
+vn 0.367752 -0.604005 -0.707061
+vn 0.367752 -0.604005 -0.707061
+vn 0.367752 -0.604005 -0.707061
+vn 0.367752 -0.604005 -0.707061
+vn -0.603980 -0.367920 -0.706996
+vn -0.603980 -0.367920 -0.706996
+vn -0.603980 -0.367919 -0.706996
+vn -0.603981 -0.367920 -0.706995
+vn -0.603982 -0.367921 -0.706994
+vn -0.603982 -0.367920 -0.706994
+vn -0.603982 -0.367921 -0.706994
+vn -0.603981 -0.367920 -0.706995
+vn -0.603980 -0.367919 -0.706996
+vn -0.603981 -0.367920 -0.706995
+vn -0.603982 -0.367920 -0.706994
+vn -0.236099 -0.971729 0.000157
+vn -0.236099 -0.971729 0.000157
+vn -0.236099 -0.971729 0.000157
+vn -0.236099 -0.971729 0.000157
+vn -0.367754 0.604009 0.707057
+vn -0.367754 0.604009 0.707057
+vn -0.367754 0.604009 0.707057
+vn -0.367754 0.604009 0.707057
+vn -0.971732 0.236086 0.000065
+vn -0.971732 0.236086 0.000065
+vn -0.971732 0.236086 0.000065
+vn -0.971732 0.236086 0.000065
+vn -0.603838 -0.367725 0.707218
+vn -0.603838 -0.367725 0.707219
+vn -0.603837 -0.367725 0.707219
+vn -0.603834 -0.367724 0.707222
+vn -0.603833 -0.367724 0.707223
+vn -0.603837 -0.367725 0.707219
+vn -0.603834 -0.367724 0.707222
+vn -0.603834 -0.367724 0.707222
+vn -0.603834 -0.367724 0.707223
+vn -0.603833 -0.367724 0.707223
+vn -0.603834 -0.367724 0.707223
+vn 0.118584 0.992944 -0.000148
+vn 0.118584 0.992944 -0.000148
+vn 0.118584 0.992944 -0.000148
+vn 0.118584 0.992944 -0.000148
+vn 0.499764 0.500406 0.706986
+vn 0.499764 0.500406 0.706986
+vn 0.499764 0.500406 0.706986
+vn 0.499764 0.500406 0.706986
+vn 0.841447 0.540340 -0.000158
+vn 0.841447 0.540340 -0.000158
+vn 0.841447 0.540340 -0.000158
+vn 0.841447 0.540340 -0.000158
+vn 0.662923 0.246316 0.707009
+vn 0.662923 0.246316 0.707009
+vn 0.662923 0.246316 0.707009
+vn 0.662923 0.246316 0.707009
+vn 0.367889 -0.603806 0.707160
+vn 0.367889 -0.603806 0.707160
+vn 0.367889 -0.603806 0.707160
+vn 0.367890 -0.603806 0.707160
+vn 0.499621 0.500212 -0.707225
+vn 0.499621 0.500212 -0.707225
+vn 0.499621 0.500212 -0.707225
+vn 0.499621 0.500212 -0.707225
+vn -0.367894 0.603813 -0.707152
+vn -0.367894 0.603813 -0.707152
+vn -0.367894 0.603813 -0.707152
+vn -0.367894 0.603813 -0.707152
+vn 0.788434 -0.273711 -0.550867
+vn 0.788434 -0.273711 -0.550867
+vn 0.788434 -0.273711 -0.550867
+vn -0.192827 -0.793495 -0.577220
+vn -0.192827 -0.793495 -0.577220
+vn -0.192827 -0.793495 -0.577220
+vn -0.793363 0.192850 0.577394
+vn -0.793363 0.192850 0.577394
+vn -0.793363 0.192850 0.577394
+vn 0.099305 0.831110 0.547170
+vn 0.099305 0.831110 0.547170
+vn 0.099305 0.831110 0.547170
+vn 0.585373 0.378654 0.716909
+vn 0.585373 0.378654 0.716909
+vn 0.585373 0.378654 0.716909
+vn 0.585373 0.378654 0.716909
+vn 0.788546 -0.273548 0.550787
+vn 0.788546 -0.273548 0.550787
+vn 0.788546 -0.273548 0.550787
+vn 0.585234 0.378457 -0.717127
+vn 0.585234 0.378457 -0.717127
+vn 0.585234 0.378457 -0.717127
+vn 0.585234 0.378457 -0.717127
+vn 0.099190 0.830958 -0.547421
+vn 0.099190 0.830958 -0.547421
+vn 0.099190 0.830958 -0.547421
+vn -0.793481 0.192681 -0.577288
+vn -0.793481 0.192681 -0.577288
+vn -0.793481 0.192681 -0.577288
+vn -0.192712 -0.793332 0.577483
+vn -0.192712 -0.793332 0.577483
+vn -0.192712 -0.793332 0.577483
+vn -0.461099 0.887349 -0.000095
+vn -0.461099 0.887349 -0.000095
+vn -0.461099 0.887349 -0.000095
+vn -0.461099 0.887349 -0.000095
+vn -0.973398 -0.229119 0.000108
+vn -0.973398 -0.229119 0.000108
+vn -0.973398 -0.229119 0.000108
+vn -0.973398 -0.229119 0.000108
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn -0.746976 -0.664851 0.000155
+vn -0.746976 -0.664851 0.000155
+vn -0.746976 -0.664851 0.000155
+vn -0.746976 -0.664851 0.000155
+vn 0.783184 0.621790 -0.000151
+vn 0.783184 0.621790 -0.000151
+vn 0.783184 0.621790 -0.000151
+vn 0.783184 0.621790 -0.000151
+vn 0.958972 0.283500 -0.000115
+vn 0.958972 0.283500 -0.000115
+vn 0.958972 0.283500 -0.000115
+vn 0.958972 0.283500 -0.000115
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn 0.461099 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn -0.325992 0.627555 0.707039
+vn -0.325992 0.627555 0.707039
+vn -0.325992 0.627555 0.707039
+vn -0.325992 0.627555 0.707039
+vn -0.908884 0.417049 0.000008
+vn -0.908884 0.417049 0.000008
+vn -0.908884 0.417049 0.000008
+vn -0.908884 0.417049 0.000008
+vn -0.688237 -0.161905 0.707189
+vn -0.688237 -0.161905 0.707189
+vn -0.688237 -0.161905 0.707189
+vn -0.688237 -0.161905 0.707189
+vn -0.887348 -0.461100 0.000136
+vn -0.887348 -0.461100 0.000136
+vn -0.887348 -0.461100 0.000136
+vn -0.887349 -0.461099 0.000136
+vn -0.528137 -0.470016 0.707217
+vn -0.528137 -0.470016 0.707217
+vn -0.528137 -0.470016 0.707217
+vn -0.528137 -0.470016 0.707217
+vn 0.208728 0.977974 -0.000160
+vn 0.208728 0.977974 -0.000160
+vn 0.208728 0.977974 -0.000160
+vn 0.208728 0.977974 -0.000160
+vn 0.553851 0.439779 0.706996
+vn 0.553851 0.439779 0.706996
+vn 0.553851 0.439779 0.706996
+vn 0.553851 0.439779 0.706996
+vn 0.887348 0.461100 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.678149 0.200568 0.707026
+vn 0.678149 0.200568 0.707026
+vn 0.678149 0.200568 0.707026
+vn 0.678149 0.200568 0.707026
+vn 0.553743 0.439569 -0.707212
+vn 0.553743 0.439569 -0.707212
+vn 0.553743 0.439569 -0.707212
+vn 0.553743 0.439569 -0.707212
+vn -0.326101 0.627347 -0.707173
+vn -0.326101 0.627347 -0.707173
+vn -0.326101 0.627347 -0.707173
+vn -0.326101 0.627347 -0.707173
+vn 0.678041 0.200360 -0.707189
+vn 0.678041 0.200360 -0.707189
+vn 0.678041 0.200360 -0.707189
+vn 0.678041 0.200360 -0.707189
+vn -0.688350 -0.162115 -0.707031
+vn -0.688350 -0.162115 -0.707031
+vn -0.688350 -0.162115 -0.707031
+vn -0.688350 -0.162115 -0.707031
+vn -0.528241 -0.470223 -0.707002
+vn -0.528241 -0.470223 -0.707002
+vn -0.528241 -0.470223 -0.707002
+vn -0.528241 -0.470223 -0.707002
+vn 0.326101 -0.627349 0.707171
+vn 0.326101 -0.627349 0.707172
+vn 0.326101 -0.627349 0.707171
+vn 0.326101 -0.627349 0.707171
+vn -0.181121 -0.983461 0.000159
+vn -0.181121 -0.983461 0.000159
+vn -0.181121 -0.983461 0.000159
+vn -0.181121 -0.983461 0.000159
+vn 0.325992 -0.627555 -0.707039
+vn 0.325992 -0.627556 -0.707038
+vn 0.325992 -0.627555 -0.707039
+vn 0.325992 -0.627555 -0.707039
+vn 0.920253 -0.391323 -0.000013
+vn 0.920253 -0.391323 -0.000013
+vn 0.920253 -0.391323 -0.000013
+vn 0.920253 -0.391323 -0.000013
+vn -0.760961 0.349275 0.546759
+vn -0.760961 0.349275 0.546759
+vn -0.760961 0.349275 0.546759
+vn -0.615178 -0.319590 0.720707
+vn -0.615178 -0.319590 0.720707
+vn -0.615178 -0.319590 0.720707
+vn -0.615178 -0.319590 0.720707
+vn 0.174253 0.816340 0.550659
+vn 0.174253 0.816340 0.550659
+vn 0.174253 0.816340 0.550659
+vn 0.620571 0.322544 0.714742
+vn 0.620571 0.322544 0.714742
+vn 0.620572 0.322544 0.714742
+vn 0.620571 0.322544 0.714742
+vn 0.174167 0.816177 -0.550927
+vn 0.174167 0.816177 -0.550927
+vn 0.174167 0.816177 -0.550927
+vn 0.620459 0.322332 -0.714936
+vn 0.620459 0.322332 -0.714936
+vn 0.620459 0.322332 -0.714936
+vn 0.620459 0.322332 -0.714936
+vn -0.761051 0.349113 -0.546737
+vn -0.761051 0.349113 -0.546737
+vn -0.761051 0.349113 -0.546737
+vn -0.615293 -0.319798 -0.720517
+vn -0.615293 -0.319798 -0.720516
+vn -0.615293 -0.319798 -0.720517
+vn -0.615293 -0.319798 -0.720517
+vn -0.151610 -0.823374 0.546873
+vn -0.151610 -0.823374 0.546873
+vn -0.151610 -0.823374 0.546873
+vn -0.151695 -0.823525 -0.546621
+vn -0.151695 -0.823525 -0.546621
+vn -0.151695 -0.823525 -0.546621
+vn 0.768041 -0.326691 -0.550806
+vn 0.768041 -0.326691 -0.550806
+vn 0.768041 -0.326691 -0.550806
+vn 0.768123 -0.326530 0.550786
+vn 0.768123 -0.326530 0.550786
+vn 0.768122 -0.326530 0.550787
+vn 0.765574 -0.643349 0.000036
+vn 0.953496 -0.301406 -0.000029
+vn 0.765574 -0.643348 0.000036
+vn 0.953496 -0.301406 -0.000029
+vn 0.953496 -0.301406 -0.000029
+vn 0.996258 0.086426 -0.000089
+vn 0.953496 -0.301406 -0.000029
+vn 0.996258 0.086426 -0.000089
+vn 0.996258 0.086426 -0.000089
+vn 0.887348 0.461100 -0.000136
+vn 0.996258 0.086426 -0.000089
+vn 0.887349 0.461099 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.643350 0.765573 -0.000162
+vn 0.887349 0.461099 -0.000136
+vn 0.643349 0.765573 -0.000162
+vn 0.643350 0.765573 -0.000162
+vn 0.301404 0.953497 -0.000163
+vn 0.643349 0.765573 -0.000162
+vn 0.301404 0.953497 -0.000163
+vn 0.301404 0.953497 -0.000163
+vn -0.086424 0.996258 -0.000140
+vn 0.301404 0.953497 -0.000163
+vn -0.086425 0.996258 -0.000140
+vn -0.086424 0.996258 -0.000140
+vn -0.461098 0.887349 -0.000095
+vn -0.086425 0.996258 -0.000140
+vn -0.461097 0.887350 -0.000095
+vn -0.461098 0.887349 -0.000095
+vn -0.765573 0.643349 -0.000036
+vn -0.461097 0.887350 -0.000095
+vn -0.765573 0.643349 -0.000036
+vn -0.765573 0.643349 -0.000036
+vn -0.953497 0.301403 0.000029
+vn -0.765573 0.643349 -0.000036
+vn -0.953497 0.301402 0.000029
+vn -0.953497 0.301403 0.000029
+vn -0.996258 -0.086428 0.000089
+vn -0.953497 0.301402 0.000029
+vn -0.996258 -0.086427 0.000089
+vn -0.996258 -0.086428 0.000089
+vn -0.887349 -0.461099 0.000136
+vn -0.996258 -0.086427 0.000089
+vn -0.887348 -0.461100 0.000136
+vn -0.887349 -0.461099 0.000136
+vn -0.643348 -0.765574 0.000162
+vn -0.887348 -0.461100 0.000136
+vn -0.643349 -0.765573 0.000162
+vn -0.643348 -0.765574 0.000162
+vn -0.301404 -0.953497 0.000163
+vn -0.643349 -0.765573 0.000162
+vn -0.301404 -0.953497 0.000163
+vn -0.301404 -0.953497 0.000163
+vn 0.086425 -0.996258 0.000140
+vn -0.301404 -0.953497 0.000163
+vn 0.086426 -0.996258 0.000140
+vn 0.086425 -0.996258 0.000140
+vn 0.461099 -0.887349 0.000095
+vn 0.086426 -0.996258 0.000140
+vn 0.461098 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn 0.765574 -0.643349 0.000036
+vn 0.461098 -0.887349 0.000095
+vn 0.765574 -0.643348 0.000036
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.536013 -0.450588 -0.713905
+vn 0.536013 -0.450588 -0.713905
+vn 0.322813 -0.621442 -0.713863
+vn 0.322812 -0.621443 -0.713863
+vn 0.536013 -0.450588 -0.713905
+vn 0.536013 -0.450588 -0.713905
+vn 0.667598 -0.211151 -0.713953
+vn 0.667598 -0.211151 -0.713953
+vn 0.667598 -0.211151 -0.713953
+vn 0.667598 -0.211151 -0.713953
+vn 0.697539 0.060410 -0.713996
+vn 0.697539 0.060411 -0.713996
+vn 0.697539 0.060410 -0.713996
+vn 0.697539 0.060411 -0.713996
+vn 0.621282 0.322764 -0.714025
+vn 0.621282 0.322763 -0.714025
+vn 0.621282 0.322764 -0.714025
+vn 0.621282 0.322763 -0.714025
+vn 0.450429 0.535962 -0.714044
+vn 0.450430 0.535961 -0.714044
+vn 0.450429 0.535962 -0.714044
+vn 0.450430 0.535961 -0.714044
+vn 0.210993 0.667547 -0.714047
+vn 0.210993 0.667547 -0.714047
+vn 0.210993 0.667547 -0.714047
+vn 0.210993 0.667547 -0.714047
+vn -0.060572 0.697488 -0.714032
+vn -0.060572 0.697488 -0.714032
+vn -0.060572 0.697488 -0.714032
+vn -0.060572 0.697488 -0.714032
+vn -0.322922 0.621227 -0.714002
+vn -0.322922 0.621227 -0.714002
+vn -0.322922 0.621227 -0.714002
+vn -0.322922 0.621227 -0.714002
+vn -0.536118 0.450376 -0.713960
+vn -0.536118 0.450376 -0.713960
+vn -0.536118 0.450376 -0.713960
+vn -0.536118 0.450376 -0.713960
+vn -0.667704 0.210941 -0.713915
+vn -0.667704 0.210942 -0.713915
+vn -0.667704 0.210941 -0.713915
+vn -0.667704 0.210942 -0.713915
+vn -0.697648 -0.060621 -0.713871
+vn -0.697648 -0.060621 -0.713871
+vn -0.697648 -0.060621 -0.713871
+vn -0.697648 -0.060621 -0.713871
+vn -0.621389 -0.322973 -0.713838
+vn -0.621389 -0.322973 -0.713838
+vn -0.621389 -0.322973 -0.713838
+vn -0.621389 -0.322973 -0.713838
+vn -0.450537 -0.536173 -0.713817
+vn -0.450536 -0.536174 -0.713817
+vn -0.450537 -0.536173 -0.713817
+vn -0.450536 -0.536174 -0.713817
+vn -0.211103 -0.667761 -0.713814
+vn -0.211103 -0.667761 -0.713814
+vn -0.211103 -0.667761 -0.713814
+vn -0.211103 -0.667761 -0.713814
+vn 0.060462 -0.697702 -0.713832
+vn 0.060462 -0.697702 -0.713832
+vn 0.060462 -0.697702 -0.713832
+vn 0.060462 -0.697702 -0.713832
+vn 0.322812 -0.621443 -0.713863
+vn 0.322813 -0.621442 -0.713863
+vn 0.536121 -0.450376 0.713958
+vn 0.536120 -0.450378 0.713958
+vn 0.667705 -0.210943 0.713914
+vn 0.667705 -0.210943 0.713914
+vn 0.536120 -0.450378 0.713958
+vn 0.536121 -0.450376 0.713958
+vn 0.322922 -0.621228 0.714001
+vn 0.322923 -0.621227 0.714001
+vn 0.667705 -0.210943 0.713914
+vn 0.667705 -0.210943 0.713914
+vn 0.697649 0.060622 0.713870
+vn 0.697649 0.060620 0.713870
+vn 0.697649 0.060622 0.713870
+vn 0.697649 0.060620 0.713870
+vn 0.621394 0.322976 0.713832
+vn 0.621394 0.322975 0.713832
+vn 0.621394 0.322976 0.713832
+vn 0.621394 0.322975 0.713832
+vn 0.450540 0.536175 0.713814
+vn 0.450540 0.536175 0.713814
+vn 0.450540 0.536175 0.713814
+vn 0.450540 0.536175 0.713814
+vn 0.211103 0.667761 0.713814
+vn 0.211104 0.667761 0.713814
+vn 0.211103 0.667761 0.713814
+vn 0.211104 0.667761 0.713814
+vn -0.060462 0.697702 0.713832
+vn -0.060461 0.697702 0.713832
+vn -0.060462 0.697702 0.713832
+vn -0.060461 0.697702 0.713832
+vn -0.322813 0.621439 0.713867
+vn -0.322813 0.621439 0.713867
+vn -0.322813 0.621439 0.713867
+vn -0.322813 0.621439 0.713867
+vn -0.536009 0.450586 0.713909
+vn -0.536010 0.450585 0.713909
+vn -0.536009 0.450586 0.713909
+vn -0.536010 0.450585 0.713909
+vn -0.667594 0.211152 0.713956
+vn -0.667594 0.211151 0.713956
+vn -0.667594 0.211152 0.713956
+vn -0.667594 0.211151 0.713956
+vn -0.697536 -0.060413 0.713998
+vn -0.697536 -0.060413 0.713998
+vn -0.697536 -0.060413 0.713998
+vn -0.697536 -0.060413 0.713998
+vn -0.621278 -0.322763 0.714029
+vn -0.621279 -0.322762 0.714029
+vn -0.621278 -0.322763 0.714029
+vn -0.621279 -0.322762 0.714029
+vn -0.450427 -0.535960 0.714046
+vn -0.450427 -0.535960 0.714046
+vn -0.450427 -0.535960 0.714046
+vn -0.450427 -0.535960 0.714046
+vn -0.210993 -0.667548 0.714046
+vn -0.210993 -0.667548 0.714046
+vn -0.210993 -0.667548 0.714046
+vn -0.210993 -0.667548 0.714046
+vn 0.060571 -0.697489 0.714031
+vn 0.060569 -0.697490 0.714031
+vn 0.060571 -0.697489 0.714031
+vn 0.060569 -0.697490 0.714031
+vn 0.322923 -0.621227 0.714001
+vn 0.322922 -0.621228 0.714001
+vn -0.856700 0.515815 -0.000075
+vn -0.856700 0.515815 -0.000075
+vn -0.856700 0.515815 -0.000075
+vn -0.856700 0.515815 -0.000075
+vn -0.742651 -0.669679 0.000085
+vn -0.742651 -0.669679 0.000085
+vn -0.742651 -0.669679 0.000085
+vn -0.742651 -0.669679 0.000085
+vn -0.000008 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000006 0.000134 1.000000
+vn -0.000006 0.000134 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000008 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.244397 -0.969675 0.000129
+vn -0.244397 -0.969675 0.000129
+vn -0.244397 -0.969675 0.000129
+vn -0.244397 -0.969675 0.000129
+vn 0.071885 0.997413 -0.000134
+vn 0.071885 0.997413 -0.000134
+vn 0.071885 0.997413 -0.000134
+vn 0.071885 0.997413 -0.000134
+vn 0.847878 0.530192 -0.000066
+vn 0.847878 0.530192 -0.000066
+vn 0.847878 0.530192 -0.000066
+vn 0.847878 0.530192 -0.000066
+vn 0.856700 -0.515815 0.000076
+vn 0.856700 -0.515815 0.000076
+vn 0.856700 -0.515815 0.000076
+vn 0.856700 -0.515815 0.000076
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn -0.605787 0.364834 0.707049
+vn -0.605787 0.364834 0.707049
+vn -0.605787 0.364834 0.707049
+vn -0.605787 0.364834 0.707049
+vn -0.995405 -0.095756 0.000006
+vn -0.995405 -0.095756 0.000006
+vn -0.995405 -0.095756 0.000006
+vn -0.995405 -0.095756 0.000006
+vn -0.525138 -0.473439 0.707167
+vn -0.525138 -0.473439 0.707167
+vn -0.525138 -0.473439 0.707167
+vn -0.525138 -0.473439 0.707167
+vn -0.172819 -0.685572 0.707195
+vn -0.172819 -0.685572 0.707195
+vn -0.172819 -0.685572 0.707195
+vn -0.172819 -0.685572 0.707195
+vn -0.515813 -0.856701 0.000112
+vn -0.515813 -0.856701 0.000112
+vn -0.515813 -0.856701 0.000112
+vn -0.515813 -0.856701 0.000112
+vn -0.460399 0.887712 -0.000123
+vn -0.460399 0.887712 -0.000123
+vn -0.460399 0.887712 -0.000123
+vn -0.460399 0.887712 -0.000123
+vn 0.050827 0.705376 0.707008
+vn 0.050827 0.705376 0.707008
+vn 0.050827 0.705376 0.707008
+vn 0.050827 0.705376 0.707008
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.599536 0.374997 0.707060
+vn 0.599536 0.374997 0.707060
+vn 0.599536 0.374997 0.707060
+vn 0.599536 0.374997 0.707060
+vn 0.605772 -0.364640 0.707162
+vn 0.605772 -0.364640 0.707162
+vn 0.605772 -0.364640 0.707162
+vn 0.605772 -0.364640 0.707162
+vn 0.999964 0.008431 0.000005
+vn 0.999964 0.008431 0.000005
+vn 0.999964 0.008431 0.000005
+vn 0.999964 0.008431 0.000005
+vn 0.605780 -0.364830 -0.707057
+vn 0.605780 -0.364830 -0.707057
+vn 0.605780 -0.364830 -0.707057
+vn 0.605780 -0.364830 -0.707057
+vn 0.599548 0.374807 -0.707151
+vn 0.599548 0.374807 -0.707151
+vn 0.599548 0.374807 -0.707151
+vn 0.599548 0.374807 -0.707151
+vn 0.050836 0.705183 -0.707201
+vn 0.050836 0.705183 -0.707201
+vn 0.050836 0.705183 -0.707201
+vn 0.050836 0.705183 -0.707201
+vn -0.605772 0.364640 -0.707162
+vn -0.605772 0.364640 -0.707162
+vn -0.605772 0.364640 -0.707162
+vn -0.605772 0.364640 -0.707162
+vn -0.525129 -0.473629 -0.707047
+vn -0.525129 -0.473629 -0.707047
+vn -0.525129 -0.473629 -0.707047
+vn -0.525129 -0.473629 -0.707047
+vn -0.172810 -0.685761 -0.707014
+vn -0.172810 -0.685761 -0.707014
+vn -0.172810 -0.685761 -0.707014
+vn -0.172810 -0.685761 -0.707014
+vn 0.381086 -0.924540 0.000128
+vn 0.381086 -0.924540 0.000128
+vn 0.381086 -0.924540 0.000128
+vn 0.381086 -0.924540 0.000128
+vn -0.834870 -0.080239 0.544567
+vn -0.834870 -0.080239 0.544567
+vn -0.834870 -0.080239 0.544567
+vn -0.354273 -0.588288 0.726917
+vn -0.354273 -0.588288 0.726917
+vn -0.354273 -0.588288 0.726917
+vn -0.354273 -0.588288 0.726917
+vn -0.385987 0.744290 0.545020
+vn -0.385987 0.744290 0.545020
+vn -0.385987 0.744290 0.545020
+vn 0.334019 0.554879 0.761932
+vn 0.334019 0.554879 0.761932
+vn 0.334019 0.554879 0.761932
+vn 0.334019 0.554879 0.761932
+vn 0.838314 0.007150 0.545140
+vn 0.838314 0.007150 0.545140
+vn 0.838314 0.007150 0.545140
+vn 0.838322 0.006993 -0.545131
+vn 0.838322 0.006993 -0.545131
+vn 0.838322 0.006993 -0.545131
+vn 0.334030 0.554672 -0.762078
+vn 0.334030 0.554672 -0.762078
+vn 0.334030 0.554672 -0.762078
+vn 0.334030 0.554672 -0.762078
+vn -0.385961 0.744146 -0.545235
+vn -0.385961 0.744146 -0.545235
+vn -0.385961 0.744146 -0.545235
+vn -0.834862 -0.080386 -0.544558
+vn -0.834862 -0.080386 -0.544558
+vn -0.834862 -0.080386 -0.544558
+vn -0.354254 -0.588485 -0.726766
+vn -0.354254 -0.588485 -0.726766
+vn -0.354254 -0.588485 -0.726766
+vn -0.354254 -0.588485 -0.726766
+vn 0.319618 -0.775356 0.544672
+vn 0.319618 -0.775356 0.544672
+vn 0.319618 -0.775356 0.544672
+vn 0.319623 -0.775499 -0.544465
+vn 0.319623 -0.775499 -0.544465
+vn 0.319623 -0.775499 -0.544465
+vn 0.988881 -0.148707 0.000027
+vn 0.970515 0.241042 -0.000026
+vn 0.988881 -0.148707 0.000027
+vn 0.970515 0.241042 -0.000026
+vn 0.970515 0.241042 -0.000026
+vn 0.804396 0.594094 -0.000074
+vn 0.970515 0.241042 -0.000026
+vn 0.804396 0.594093 -0.000074
+vn 0.804396 0.594094 -0.000074
+vn 0.515815 0.856700 -0.000112
+vn 0.804396 0.594093 -0.000074
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.148706 0.988881 -0.000133
+vn 0.515815 0.856700 -0.000112
+vn 0.148706 0.988881 -0.000133
+vn 0.148706 0.988881 -0.000133
+vn -0.241042 0.970515 -0.000133
+vn 0.148706 0.988881 -0.000133
+vn -0.241042 0.970515 -0.000133
+vn -0.241042 0.970515 -0.000133
+vn -0.594092 0.804397 -0.000113
+vn -0.241042 0.970515 -0.000133
+vn -0.594092 0.804397 -0.000113
+vn -0.594092 0.804397 -0.000113
+vn -0.856700 0.515816 -0.000075
+vn -0.594092 0.804397 -0.000113
+vn -0.856699 0.515816 -0.000075
+vn -0.856700 0.515816 -0.000075
+vn -0.988881 0.148707 -0.000027
+vn -0.856699 0.515816 -0.000075
+vn -0.988881 0.148706 -0.000027
+vn -0.988881 0.148707 -0.000027
+vn -0.970514 -0.241044 0.000026
+vn -0.988881 0.148706 -0.000027
+vn -0.970514 -0.241044 0.000026
+vn -0.970514 -0.241044 0.000026
+vn -0.804396 -0.594094 0.000074
+vn -0.970514 -0.241044 0.000026
+vn -0.804395 -0.594094 0.000074
+vn -0.804396 -0.594094 0.000074
+vn -0.515816 -0.856700 0.000112
+vn -0.804395 -0.594094 0.000074
+vn -0.515816 -0.856700 0.000112
+vn -0.515816 -0.856700 0.000112
+vn -0.148706 -0.988881 0.000133
+vn -0.515816 -0.856700 0.000112
+vn -0.148706 -0.988881 0.000133
+vn -0.148706 -0.988881 0.000133
+vn 0.241041 -0.970515 0.000133
+vn -0.148706 -0.988881 0.000133
+vn 0.241041 -0.970515 0.000133
+vn 0.241041 -0.970515 0.000133
+vn 0.594093 -0.804396 0.000113
+vn 0.241041 -0.970515 0.000133
+vn 0.594093 -0.804396 0.000113
+vn 0.594093 -0.804396 0.000113
+vn 0.856699 -0.515816 0.000075
+vn 0.594093 -0.804396 0.000113
+vn 0.856700 -0.515816 0.000075
+vn 0.856699 -0.515816 0.000075
+vn 0.988881 -0.148707 0.000027
+vn 0.856700 -0.515816 0.000075
+vn 0.988881 -0.148707 0.000027
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn 0.692440 -0.104225 -0.713908
+vn 0.692440 -0.104224 -0.713908
+vn 0.599882 -0.361280 -0.713875
+vn 0.599883 -0.361280 -0.713875
+vn 0.692440 -0.104224 -0.713908
+vn 0.692440 -0.104225 -0.713908
+vn 0.679575 0.168685 -0.713949
+vn 0.679575 0.168684 -0.713949
+vn 0.679575 0.168685 -0.713949
+vn 0.679575 0.168684 -0.713949
+vn 0.563252 0.415894 -0.713989
+vn 0.563252 0.415893 -0.713989
+vn 0.563252 0.415894 -0.713989
+vn 0.563252 0.415893 -0.713989
+vn 0.361183 0.599774 -0.714015
+vn 0.361183 0.599774 -0.714015
+vn 0.361183 0.599774 -0.714015
+vn 0.361183 0.599774 -0.714015
+vn 0.104130 0.692332 -0.714026
+vn 0.104130 0.692332 -0.714026
+vn 0.104130 0.692332 -0.714026
+vn 0.104130 0.692332 -0.714026
+vn -0.168776 0.679471 -0.714027
+vn -0.168776 0.679471 -0.714027
+vn -0.168776 0.679471 -0.714027
+vn -0.168776 0.679471 -0.714027
+vn -0.415985 0.563153 -0.714013
+vn -0.415985 0.563153 -0.714013
+vn -0.415985 0.563153 -0.714013
+vn -0.415985 0.563153 -0.714013
+vn -0.599865 0.361083 -0.713989
+vn -0.599865 0.361084 -0.713989
+vn -0.599865 0.361083 -0.713989
+vn -0.599865 0.361084 -0.713989
+vn -0.692417 0.104030 -0.713958
+vn -0.692417 0.104030 -0.713958
+vn -0.692417 0.104030 -0.713958
+vn -0.692417 0.104030 -0.713958
+vn -0.679560 -0.168877 -0.713918
+vn -0.679559 -0.168878 -0.713918
+vn -0.679560 -0.168877 -0.713918
+vn -0.679559 -0.168878 -0.713918
+vn -0.563246 -0.416090 -0.713878
+vn -0.563246 -0.416091 -0.713878
+vn -0.563246 -0.416090 -0.713878
+vn -0.563246 -0.416091 -0.713878
+vn -0.361178 -0.599972 -0.713852
+vn -0.361178 -0.599972 -0.713852
+vn -0.361178 -0.599972 -0.713852
+vn -0.361178 -0.599972 -0.713852
+vn -0.104122 -0.692524 -0.713841
+vn -0.104121 -0.692524 -0.713841
+vn -0.104122 -0.692524 -0.713841
+vn -0.104121 -0.692524 -0.713841
+vn 0.168785 -0.679660 -0.713845
+vn 0.168784 -0.679660 -0.713845
+vn 0.168785 -0.679660 -0.713845
+vn 0.168784 -0.679660 -0.713845
+vn 0.415996 -0.563343 -0.713857
+vn 0.415996 -0.563343 -0.713857
+vn 0.415996 -0.563343 -0.713857
+vn 0.415996 -0.563343 -0.713857
+vn 0.599883 -0.361280 -0.713875
+vn 0.599882 -0.361280 -0.713875
+vn 0.692423 -0.104030 0.713953
+vn 0.692423 -0.104031 0.713953
+vn 0.679561 0.168878 0.713916
+vn 0.679562 0.168878 0.713916
+vn 0.692423 -0.104031 0.713953
+vn 0.692423 -0.104030 0.713953
+vn 0.599868 -0.361088 0.713985
+vn 0.599868 -0.361087 0.713985
+vn 0.679561 0.168878 0.713916
+vn 0.679562 0.168878 0.713916
+vn 0.563245 0.416090 0.713880
+vn 0.563245 0.416090 0.713880
+vn 0.563245 0.416090 0.713880
+vn 0.563245 0.416090 0.713880
+vn 0.361179 0.599970 0.713852
+vn 0.361179 0.599971 0.713853
+vn 0.361179 0.599970 0.713852
+vn 0.361179 0.599971 0.713853
+vn 0.104123 0.692527 0.713838
+vn 0.104122 0.692527 0.713838
+vn 0.104123 0.692527 0.713838
+vn 0.104122 0.692527 0.713838
+vn -0.168786 0.679667 0.713837
+vn -0.168787 0.679667 0.713837
+vn -0.168786 0.679667 0.713837
+vn -0.168787 0.679667 0.713837
+vn -0.416001 0.563349 0.713850
+vn -0.416002 0.563348 0.713850
+vn -0.416001 0.563349 0.713850
+vn -0.416002 0.563348 0.713850
+vn -0.599880 0.361278 0.713878
+vn -0.599881 0.361277 0.713878
+vn -0.599880 0.361278 0.713878
+vn -0.599881 0.361277 0.713878
+vn -0.692433 0.104224 0.713915
+vn -0.692433 0.104224 0.713915
+vn -0.692433 0.104224 0.713915
+vn -0.692433 0.104224 0.713915
+vn -0.679572 -0.168685 0.713952
+vn -0.679572 -0.168685 0.713952
+vn -0.679572 -0.168685 0.713952
+vn -0.679572 -0.168685 0.713952
+vn -0.563254 -0.415895 0.713986
+vn -0.563254 -0.415896 0.713986
+vn -0.563254 -0.415895 0.713986
+vn -0.563254 -0.415896 0.713986
+vn -0.361184 -0.599775 0.714014
+vn -0.361184 -0.599775 0.714014
+vn -0.361184 -0.599775 0.714014
+vn -0.361184 -0.599775 0.714014
+vn -0.104129 -0.692332 0.714027
+vn -0.104129 -0.692332 0.714027
+vn -0.104129 -0.692332 0.714027
+vn -0.104129 -0.692332 0.714027
+vn 0.168775 -0.679473 0.714025
+vn 0.168775 -0.679473 0.714025
+vn 0.168775 -0.679473 0.714025
+vn 0.168775 -0.679473 0.714025
+vn 0.415988 -0.563154 0.714011
+vn 0.415988 -0.563154 0.714011
+vn 0.415988 -0.563154 0.714011
+vn 0.415988 -0.563154 0.714011
+vn 0.599868 -0.361087 0.713985
+vn 0.599868 -0.361088 0.713985
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222248 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222248 -0.000003
+vn 0.974991 -0.222246 -0.000006
+vn 0.974991 -0.222246 -0.000006
+vn 0.974990 -0.222248 -0.000006
+vn 0.974991 -0.222243 -0.000003
+vn 0.974990 -0.222251 -0.000002
+vn 0.974991 -0.222243 -0.000003
+vn 0.974991 -0.222246 -0.000006
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222251 -0.000002
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222250 -0.000006
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222250 -0.000006
+vn 0.974990 -0.222250 -0.000003
+vn 0.974990 -0.222249 -0.000004
+vn 0.974990 -0.222250 -0.000003
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222246 -0.000006
+vn 0.974990 -0.222249 -0.000004
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222248 -0.000006
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222251 -0.000002
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222243 -0.000003
+vn 0.974990 -0.222248 -0.000006
+vn 0.974991 -0.222243 -0.000003
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222250 -0.000006
+vn 0.974990 -0.222250 -0.000003
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000004
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222250 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.000032 0.000110 1.000000
+vn 0.000032 0.000110 1.000000
+vn 0.000032 0.000110 1.000000
+vn 0.000032 0.000110 1.000000
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.923040 0.384703 -0.000069
+vn 0.923040 0.384703 -0.000069
+vn 0.923040 0.384703 -0.000069
+vn 0.923040 0.384703 -0.000069
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.846577 -0.532266 0.000083
+vn -0.846577 -0.532266 0.000083
+vn -0.846577 -0.532266 0.000083
+vn -0.846577 -0.532266 0.000083
+vn -0.157132 -0.689336 0.707196
+vn -0.157132 -0.689336 0.707196
+vn -0.157132 -0.689336 0.707196
+vn -0.157132 -0.689336 0.707196
+vn -0.689400 0.157232 0.707111
+vn -0.689400 0.157232 0.707111
+vn -0.689400 0.157232 0.707111
+vn -0.689399 0.157231 0.707112
+vn -0.689398 0.157231 0.707113
+vn -0.689400 0.157232 0.707111
+vn -0.689399 0.157231 0.707112
+vn 0.652847 -0.148729 0.742745
+vn 0.652847 -0.148729 0.742745
+vn 0.652847 -0.148729 0.742745
+vn 0.652847 -0.148729 0.742745
+vn 0.311683 -0.950186 0.000097
+vn 0.311683 -0.950186 0.000097
+vn 0.311683 -0.950186 0.000097
+vn 0.311683 -0.950186 0.000097
+vn -0.689397 0.157231 0.707114
+vn -0.689398 0.157231 0.707113
+vn -0.689397 0.157231 0.707114
+vn -0.689399 0.157231 0.707112
+vn 0.157175 0.689507 0.707019
+vn 0.157175 0.689507 0.707019
+vn 0.157175 0.689507 0.707019
+vn 0.157175 0.689507 0.707019
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn 0.652708 0.272104 0.707059
+vn 0.652708 0.272104 0.707059
+vn 0.652708 0.272104 0.707059
+vn 0.652708 0.272104 0.707059
+vn 0.644227 0.764834 -0.000103
+vn 0.644227 0.764835 -0.000103
+vn 0.644227 0.764834 -0.000103
+vn 0.644227 0.764835 -0.000103
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707103
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707103
+vn 0.157134 0.689344 -0.707188
+vn 0.157134 0.689344 -0.707188
+vn 0.157134 0.689344 -0.707188
+vn 0.157134 0.689344 -0.707188
+vn 0.652662 0.271945 -0.707162
+vn 0.652662 0.271945 -0.707162
+vn 0.652662 0.271945 -0.707162
+vn 0.652662 0.271945 -0.707162
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707103
+vn -0.157173 -0.689499 -0.707027
+vn -0.157173 -0.689499 -0.707027
+vn -0.157173 -0.689499 -0.707027
+vn -0.157173 -0.689499 -0.707027
+vn 0.652805 -0.148894 -0.742749
+vn 0.652805 -0.148894 -0.742749
+vn 0.652805 -0.148894 -0.742749
+vn 0.652805 -0.148894 -0.742749
+vn 0.986429 0.164189 -0.000046
+vn 0.986429 0.164189 -0.000046
+vn 0.986429 0.164189 -0.000046
+vn 0.986429 0.164189 -0.000046
+vn -0.691202 -0.434529 0.577429
+vn -0.691202 -0.434529 0.577429
+vn -0.691202 -0.434529 0.577429
+vn 0.178311 -0.723964 0.666395
+vn 0.178311 -0.723964 0.666395
+vn 0.178311 -0.723964 0.666395
+vn -0.434574 0.691291 0.577289
+vn -0.434574 0.691291 0.577289
+vn -0.434574 0.691291 0.577289
+vn 0.535990 0.636390 0.554727
+vn 0.535990 0.636390 0.554727
+vn 0.535990 0.636390 0.554727
+vn -0.434613 0.691167 -0.577408
+vn -0.434613 0.691167 -0.577408
+vn -0.434613 0.691167 -0.577408
+vn 0.535960 0.636255 -0.554911
+vn 0.535960 0.636255 -0.554911
+vn 0.535960 0.636255 -0.554911
+vn -0.691243 -0.434660 -0.577282
+vn -0.691243 -0.434660 -0.577281
+vn -0.691243 -0.434660 -0.577282
+vn 0.178268 -0.724115 -0.666242
+vn 0.178268 -0.724115 -0.666242
+vn 0.178268 -0.724115 -0.666242
+vn 0.737209 0.165551 0.655070
+vn 0.737209 0.165551 0.655070
+vn 0.737208 0.165551 0.655070
+vn 0.737175 0.165395 -0.655147
+vn 0.737175 0.165395 -0.655147
+vn 0.737175 0.165395 -0.655147
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.222241 0.974992 -0.000115
+vn 0.222241 0.974992 -0.000115
+vn 0.222241 0.974992 -0.000115
+vn 0.222241 0.974992 -0.000115
+vn -0.157174 -0.689494 -0.707032
+vn -0.157174 -0.689494 -0.707032
+vn -0.157174 -0.689494 -0.707032
+vn -0.157174 -0.689494 -0.707032
+vn 0.398572 -0.917137 0.000091
+vn 0.398572 -0.917137 0.000091
+vn 0.398572 -0.917137 0.000091
+vn 0.398572 -0.917137 0.000091
+vn 0.570570 -0.129425 -0.810987
+vn 0.570570 -0.129425 -0.810987
+vn 0.570570 -0.129425 -0.810987
+vn 0.570570 -0.129425 -0.810987
+vn -0.157142 -0.689342 0.707188
+vn -0.157142 -0.689342 0.707188
+vn -0.157142 -0.689342 0.707188
+vn -0.157142 -0.689342 0.707188
+vn 0.570612 -0.129244 0.810986
+vn 0.570612 -0.129244 0.810986
+vn 0.570612 -0.129244 0.810986
+vn 0.570612 -0.129244 0.810986
+vn 0.157129 0.689341 -0.707191
+vn 0.157129 0.689341 -0.707191
+vn 0.157129 0.689341 -0.707191
+vn 0.157129 0.689341 -0.707191
+vn 0.744084 0.668086 -0.000095
+vn 0.744084 0.668086 -0.000095
+vn 0.744084 0.668086 -0.000095
+vn 0.744084 0.668086 -0.000095
+vn 0.157182 0.689497 0.707027
+vn 0.157182 0.689497 0.707027
+vn 0.157182 0.689497 0.707027
+vn 0.157182 0.689497 0.707027
+vn 0.759212 0.650844 -0.000094
+vn 0.759212 0.650844 -0.000094
+vn 0.759212 0.650844 -0.000094
+vn 0.759212 0.650844 -0.000094
+vn 0.574139 -0.129892 0.808389
+vn 0.574139 -0.129892 0.808389
+vn 0.574139 -0.129892 0.808389
+vn 0.574139 -0.129892 0.808389
+vn 0.574101 -0.130074 -0.808387
+vn 0.574101 -0.130074 -0.808387
+vn 0.574101 -0.130074 -0.808387
+vn 0.574101 -0.130074 -0.808387
+vn 0.385552 -0.922686 0.000092
+vn 0.385551 -0.922687 0.000092
+vn 0.385552 -0.922686 0.000092
+vn 0.385552 -0.922686 0.000092
+vn 0.136497 -0.724359 -0.675776
+vn 0.136497 -0.724359 -0.675776
+vn 0.136497 -0.724359 -0.675776
+vn 0.136532 -0.724221 0.675916
+vn 0.136532 -0.724221 0.675916
+vn 0.136532 -0.724221 0.675916
+vn 0.445136 0.589609 -0.673955
+vn 0.445136 0.589608 -0.673956
+vn 0.445136 0.589608 -0.673956
+vn 0.445165 0.589761 0.673803
+vn 0.445165 0.589761 0.673803
+vn 0.445165 0.589761 0.673803
+vn 0.000026 0.000112 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000026 0.000112 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000033 0.000110 1.000000
+vn 0.000033 0.000110 1.000000
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn -0.000026 -0.000112 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000033 -0.000110 -1.000000
+vn -0.000033 -0.000110 -1.000000
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.974990 0.222249 0.000005
+vn -0.974990 0.222249 0.000005
+vn -0.974990 0.222249 0.000005
+vn -0.974990 0.222249 0.000005
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000007
+vn 0.533570 -0.845756 0.000076
+vn 0.533570 -0.845756 0.000076
+vn 0.533570 -0.845756 0.000076
+vn 0.533570 -0.845756 0.000076
+vn 0.689444 -0.157076 0.707102
+vn 0.689444 -0.157076 0.707102
+vn 0.689444 -0.157076 0.707102
+vn 0.689444 -0.157076 0.707102
+vn 0.846575 0.532269 -0.000091
+vn 0.846575 0.532269 -0.000091
+vn 0.846575 0.532269 -0.000091
+vn 0.846575 0.532269 -0.000091
+vn 0.689402 -0.157232 -0.707109
+vn 0.689402 -0.157232 -0.707109
+vn 0.689402 -0.157232 -0.707109
+vn 0.689402 -0.157232 -0.707109
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.222253 0.974989 -0.000115
+vn 0.222253 0.974989 -0.000115
+vn 0.222253 0.974989 -0.000115
+vn 0.222253 0.974989 -0.000115
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.532272 -0.846573 0.000079
+vn 0.532272 -0.846573 0.000079
+vn 0.532272 -0.846573 0.000079
+vn 0.532272 -0.846573 0.000079
+vn 0.689434 -0.157077 0.707112
+vn 0.689434 -0.157077 0.707112
+vn 0.689434 -0.157077 0.707112
+vn 0.689434 -0.157077 0.707112
+vn 0.846575 0.532270 -0.000083
+vn 0.846575 0.532270 -0.000083
+vn 0.846575 0.532270 -0.000083
+vn 0.846575 0.532270 -0.000083
+vn 0.689399 -0.157232 -0.707111
+vn 0.689399 -0.157232 -0.707111
+vn 0.689399 -0.157232 -0.707111
+vn 0.689399 -0.157232 -0.707111
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.222242 0.974992 -0.000115
+vn 0.222242 0.974992 -0.000115
+vn 0.222242 0.974992 -0.000115
+vn 0.222242 0.974992 -0.000115
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.222245 -0.974991 0.000114
+vn -0.222245 -0.974991 0.000114
+vn -0.222245 -0.974991 0.000114
+vn -0.222245 -0.974991 0.000114
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.532270 -0.846575 0.000079
+vn 0.532270 -0.846575 0.000079
+vn 0.532270 -0.846575 0.000079
+vn 0.532270 -0.846575 0.000079
+vn 0.689447 -0.157076 0.707100
+vn 0.689447 -0.157076 0.707100
+vn 0.689447 -0.157076 0.707100
+vn 0.689447 -0.157076 0.707100
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.689410 -0.157236 -0.707101
+vn 0.689409 -0.157235 -0.707101
+vn 0.689410 -0.157236 -0.707101
+vn 0.689409 -0.157235 -0.707101
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.222252 0.974989 -0.000115
+vn 0.222252 0.974989 -0.000115
+vn 0.222252 0.974989 -0.000115
+vn 0.222252 0.974989 -0.000115
+vn -0.000034 -0.000108 -1.000000
+vn -0.000034 -0.000108 -1.000000
+vn -0.000034 -0.000108 -1.000000
+vn -0.000034 -0.000108 -1.000000
+vn -0.222252 -0.974989 0.000115
+vn -0.222252 -0.974989 0.000115
+vn -0.222252 -0.974989 0.000115
+vn -0.222252 -0.974989 0.000115
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.532275 -0.846571 0.000079
+vn 0.532275 -0.846571 0.000079
+vn 0.532275 -0.846571 0.000079
+vn 0.532275 -0.846571 0.000079
+vn 0.689453 -0.157074 0.707095
+vn 0.689453 -0.157074 0.707095
+vn 0.689453 -0.157074 0.707095
+vn 0.689453 -0.157074 0.707095
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.689406 -0.157229 -0.707106
+vn 0.689406 -0.157229 -0.707106
+vn 0.689406 -0.157229 -0.707106
+vn 0.689406 -0.157229 -0.707106
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.222247 0.974990 -0.000114
+vn 0.222247 0.974990 -0.000114
+vn 0.222247 0.974990 -0.000114
+vn 0.222247 0.974990 -0.000114
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.222243 -0.974991 0.000115
+vn -0.222243 -0.974991 0.000115
+vn -0.222243 -0.974991 0.000115
+vn -0.222243 -0.974991 0.000115
+vn -0.974989 0.222255 0.000003
+vn -0.974989 0.222255 0.000003
+vn -0.974989 0.222255 0.000003
+vn -0.974989 0.222255 0.000003
+vn 0.974992 -0.222242 -0.000002
+vn 0.974992 -0.222242 -0.000002
+vn 0.974992 -0.222242 -0.000002
+vn 0.974992 -0.222242 -0.000002
+vn 0.532261 -0.846581 0.000079
+vn 0.532261 -0.846581 0.000079
+vn 0.532261 -0.846581 0.000079
+vn 0.532261 -0.846581 0.000079
+vn 0.689444 -0.157078 0.707103
+vn 0.689444 -0.157078 0.707103
+vn 0.689444 -0.157078 0.707103
+vn 0.689444 -0.157078 0.707103
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.689393 -0.157226 -0.707120
+vn 0.689393 -0.157226 -0.707119
+vn 0.689393 -0.157226 -0.707120
+vn 0.689393 -0.157226 -0.707119
+vn 0.000026 0.000115 1.000000
+vn 0.000026 0.000115 1.000000
+vn 0.000026 0.000115 1.000000
+vn 0.000026 0.000115 1.000000
+vn 0.222245 0.974991 -0.000114
+vn 0.222245 0.974991 -0.000114
+vn 0.222245 0.974991 -0.000114
+vn 0.222245 0.974991 -0.000114
+vn -0.000024 -0.000105 -1.000000
+vn -0.000024 -0.000105 -1.000000
+vn -0.000024 -0.000105 -1.000000
+vn -0.000024 -0.000105 -1.000000
+vn -0.222246 -0.974991 0.000115
+vn -0.222246 -0.974991 0.000115
+vn -0.222246 -0.974991 0.000115
+vn -0.222246 -0.974991 0.000115
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn 0.974991 -0.222246 -0.000004
+vn 0.974991 -0.222246 -0.000004
+vn 0.974991 -0.222246 -0.000004
+vn 0.974991 -0.222246 -0.000004
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.689440 -0.157072 0.707107
+vn 0.689440 -0.157072 0.707107
+vn 0.689440 -0.157072 0.707107
+vn 0.689440 -0.157072 0.707107
+vn 0.846578 0.532264 -0.000083
+vn 0.846578 0.532264 -0.000083
+vn 0.846578 0.532264 -0.000083
+vn 0.846578 0.532264 -0.000083
+vn 0.689405 -0.157230 -0.707106
+vn 0.689405 -0.157230 -0.707106
+vn 0.689405 -0.157230 -0.707106
+vn 0.689405 -0.157230 -0.707106
+vn 0.085025 0.373010 -0.923923
+vn 0.157134 0.689342 -0.707189
+vn 0.085024 0.373009 -0.923924
+vn 0.157134 0.689343 -0.707188
+vn 0.157134 0.689342 -0.707189
+vn 0.205321 0.900730 -0.382791
+vn 0.157134 0.689343 -0.707188
+vn 0.205321 0.900730 -0.382791
+vn 0.205321 0.900730 -0.382791
+vn 0.222249 0.974990 -0.000115
+vn 0.205321 0.900730 -0.382791
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.205343 0.900816 0.382577
+vn 0.222249 0.974990 -0.000115
+vn 0.205343 0.900815 0.382578
+vn 0.205343 0.900816 0.382577
+vn 0.157174 0.689502 0.707024
+vn 0.205343 0.900815 0.382578
+vn 0.157174 0.689502 0.707024
+vn 0.157174 0.689502 0.707024
+vn 0.085077 0.373217 0.923835
+vn 0.157174 0.689502 0.707024
+vn 0.085077 0.373217 0.923835
+vn 0.085077 0.373217 0.923835
+vn 0.000028 0.000111 1.000000
+vn 0.085077 0.373217 0.923835
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.085025 -0.373011 0.923923
+vn 0.000028 0.000111 1.000000
+vn -0.085025 -0.373011 0.923923
+vn -0.085025 -0.373011 0.923923
+vn -0.157133 -0.689345 0.707186
+vn -0.085025 -0.373011 0.923923
+vn -0.157133 -0.689345 0.707186
+vn -0.157133 -0.689345 0.707186
+vn -0.205320 -0.900730 0.382791
+vn -0.157133 -0.689345 0.707186
+vn -0.205320 -0.900731 0.382790
+vn -0.205320 -0.900730 0.382791
+vn -0.222249 -0.974990 0.000117
+vn -0.205320 -0.900731 0.382790
+vn -0.222249 -0.974990 0.000118
+vn -0.222249 -0.974990 0.000117
+vn -0.205341 -0.900815 -0.382580
+vn -0.222249 -0.974990 0.000118
+vn -0.205341 -0.900815 -0.382581
+vn -0.205341 -0.900815 -0.382580
+vn -0.157173 -0.689502 -0.707024
+vn -0.205341 -0.900815 -0.382581
+vn -0.157173 -0.689502 -0.707025
+vn -0.157173 -0.689502 -0.707024
+vn -0.085078 -0.373216 -0.923835
+vn -0.157173 -0.689502 -0.707025
+vn -0.085078 -0.373217 -0.923835
+vn -0.085078 -0.373216 -0.923835
+vn -0.000029 -0.000110 -1.000000
+vn -0.085078 -0.373217 -0.923835
+vn -0.000029 -0.000110 -1.000000
+vn -0.000029 -0.000110 -1.000000
+vn 0.085025 0.373010 -0.923923
+vn -0.000029 -0.000110 -1.000000
+vn 0.085024 0.373009 -0.923924
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222250 -0.000002
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222250 -0.000002
+vn 0.974990 -0.222250 -0.000002
+vn 0.974990 -0.222251 0.000000
+vn 0.974990 -0.222250 -0.000002
+vn 0.974989 -0.222251 0.000000
+vn 0.974990 -0.222251 0.000000
+vn 0.974991 -0.222246 -0.000003
+vn 0.974989 -0.222251 0.000000
+vn 0.974991 -0.222246 -0.000003
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222246 -0.000007
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222246 -0.000007
+vn 0.974991 -0.222246 -0.000007
+vn 0.974992 -0.222241 -0.000009
+vn 0.974991 -0.222246 -0.000007
+vn 0.974992 -0.222241 -0.000009
+vn 0.974992 -0.222241 -0.000009
+vn 0.974992 -0.222241 -0.000006
+vn 0.974992 -0.222241 -0.000009
+vn 0.974992 -0.222241 -0.000006
+vn 0.974992 -0.222241 -0.000006
+vn 0.974990 -0.222247 -0.000003
+vn 0.974992 -0.222241 -0.000006
+vn 0.974990 -0.222247 -0.000003
+vn 0.974990 -0.222247 -0.000003
+vn 0.974991 -0.222245 -0.000004
+vn 0.974990 -0.222247 -0.000003
+vn 0.974991 -0.222245 -0.000004
+vn 0.974991 -0.222245 -0.000004
+vn 0.974990 -0.222248 -0.000004
+vn 0.974991 -0.222245 -0.000004
+vn 0.974990 -0.222247 -0.000004
+vn 0.974990 -0.222248 -0.000004
+vn 0.974989 -0.222252 -0.000007
+vn 0.974990 -0.222247 -0.000004
+vn 0.974989 -0.222252 -0.000007
+vn 0.974989 -0.222252 -0.000007
+vn 0.974990 -0.222249 -0.000008
+vn 0.974989 -0.222252 -0.000007
+vn 0.974990 -0.222249 -0.000008
+vn 0.974990 -0.222249 -0.000008
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222249 -0.000008
+vn 0.974990 -0.222247 -0.000005
+vn -0.085013 -0.373014 0.923923
+vn -0.157128 -0.689348 0.707184
+vn -0.085012 -0.373011 0.923924
+vn -0.157128 -0.689345 0.707187
+vn -0.157128 -0.689348 0.707184
+vn -0.205317 -0.900730 0.382792
+vn -0.157128 -0.689345 0.707187
+vn -0.205317 -0.900731 0.382792
+vn -0.205317 -0.900730 0.382792
+vn -0.222245 -0.974991 0.000115
+vn -0.205317 -0.900731 0.382792
+vn -0.222245 -0.974991 0.000116
+vn -0.222245 -0.974991 0.000115
+vn -0.205344 -0.900816 -0.382577
+vn -0.222245 -0.974991 0.000116
+vn -0.205345 -0.900816 -0.382575
+vn -0.205344 -0.900816 -0.382577
+vn -0.157180 -0.689498 -0.707027
+vn -0.205345 -0.900816 -0.382575
+vn -0.157181 -0.689499 -0.707026
+vn -0.157180 -0.689498 -0.707027
+vn -0.085079 -0.373216 -0.923835
+vn -0.157181 -0.689499 -0.707026
+vn -0.085080 -0.373218 -0.923834
+vn -0.085079 -0.373216 -0.923835
+vn -0.000026 -0.000108 -1.000000
+vn -0.085080 -0.373218 -0.923834
+vn -0.000027 -0.000111 -1.000000
+vn -0.000026 -0.000108 -1.000000
+vn 0.085021 0.373011 -0.923923
+vn -0.000027 -0.000111 -1.000000
+vn 0.085022 0.373015 -0.923922
+vn 0.085021 0.373011 -0.923923
+vn 0.157123 0.689345 -0.707189
+vn 0.085022 0.373015 -0.923922
+vn 0.157123 0.689347 -0.707187
+vn 0.157123 0.689345 -0.707189
+vn 0.205318 0.900733 -0.382786
+vn 0.157123 0.689347 -0.707187
+vn 0.205318 0.900730 -0.382792
+vn 0.205318 0.900733 -0.382786
+vn 0.222258 0.974988 -0.000116
+vn 0.205318 0.900730 -0.382792
+vn 0.222258 0.974988 -0.000117
+vn 0.222258 0.974988 -0.000116
+vn 0.205346 0.900816 0.382575
+vn 0.222258 0.974988 -0.000117
+vn 0.205346 0.900815 0.382577
+vn 0.205346 0.900816 0.382575
+vn 0.157176 0.689500 0.707026
+vn 0.205346 0.900815 0.382577
+vn 0.157177 0.689502 0.707024
+vn 0.157176 0.689500 0.707026
+vn 0.085099 0.373210 0.923836
+vn 0.157177 0.689502 0.707024
+vn 0.085099 0.373211 0.923835
+vn 0.085099 0.373210 0.923836
+vn 0.000053 0.000108 1.000000
+vn 0.085099 0.373211 0.923835
+vn 0.000053 0.000106 1.000000
+vn 0.000053 0.000108 1.000000
+vn -0.085013 -0.373014 0.923923
+vn 0.000053 0.000106 1.000000
+vn -0.085012 -0.373011 0.923924
+vn 0.085025 0.373010 -0.923923
+vn 0.157133 0.689343 -0.707188
+vn 0.085024 0.373009 -0.923924
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707188
+vn 0.205320 0.900730 -0.382791
+vn 0.157133 0.689343 -0.707189
+vn 0.205320 0.900731 -0.382790
+vn 0.205320 0.900730 -0.382791
+vn 0.222248 0.974990 -0.000118
+vn 0.205320 0.900731 -0.382790
+vn 0.222248 0.974990 -0.000119
+vn 0.222248 0.974990 -0.000118
+vn 0.205341 0.900815 0.382580
+vn 0.222248 0.974990 -0.000119
+vn 0.205341 0.900815 0.382579
+vn 0.205341 0.900815 0.382580
+vn 0.157175 0.689503 0.707023
+vn 0.205341 0.900815 0.382579
+vn 0.157175 0.689502 0.707024
+vn 0.157175 0.689503 0.707023
+vn 0.085078 0.373216 0.923835
+vn 0.157175 0.689502 0.707024
+vn 0.085077 0.373215 0.923836
+vn 0.085078 0.373216 0.923835
+vn 0.000027 0.000107 1.000000
+vn 0.085077 0.373215 0.923836
+vn 0.000027 0.000108 1.000000
+vn 0.000027 0.000107 1.000000
+vn -0.085025 -0.373008 0.923924
+vn 0.000027 0.000108 1.000000
+vn -0.085025 -0.373008 0.923924
+vn -0.085025 -0.373008 0.923924
+vn -0.157134 -0.689342 0.707189
+vn -0.085025 -0.373008 0.923924
+vn -0.157133 -0.689342 0.707189
+vn -0.157134 -0.689342 0.707189
+vn -0.205320 -0.900732 0.382788
+vn -0.157133 -0.689342 0.707189
+vn -0.205320 -0.900732 0.382788
+vn -0.205320 -0.900732 0.382788
+vn -0.222247 -0.974990 0.000115
+vn -0.205320 -0.900732 0.382788
+vn -0.222247 -0.974990 0.000115
+vn -0.222247 -0.974990 0.000115
+vn -0.205341 -0.900816 -0.382577
+vn -0.222247 -0.974990 0.000115
+vn -0.205341 -0.900816 -0.382577
+vn -0.205341 -0.900816 -0.382577
+vn -0.157173 -0.689501 -0.707026
+vn -0.205341 -0.900816 -0.382577
+vn -0.157173 -0.689500 -0.707027
+vn -0.157173 -0.689501 -0.707026
+vn -0.085078 -0.373217 -0.923835
+vn -0.157173 -0.689500 -0.707027
+vn -0.085079 -0.373218 -0.923834
+vn -0.085078 -0.373217 -0.923835
+vn -0.000029 -0.000113 -1.000000
+vn -0.085079 -0.373218 -0.923834
+vn -0.000029 -0.000110 -1.000000
+vn -0.000029 -0.000113 -1.000000
+vn 0.085025 0.373010 -0.923923
+vn -0.000029 -0.000110 -1.000000
+vn 0.085024 0.373009 -0.923924
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222248 -0.000007
+vn 0.974992 -0.222242 -0.000005
+vn 0.974990 -0.222248 -0.000007
+vn 0.974992 -0.222242 -0.000005
+vn 0.974992 -0.222242 -0.000005
+vn 0.974991 -0.222246 -0.000003
+vn 0.974992 -0.222242 -0.000005
+vn 0.974991 -0.222246 -0.000003
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222250 -0.000009
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222250 -0.000009
+vn 0.974990 -0.222250 -0.000009
+vn 0.974989 -0.222251 -0.000007
+vn 0.974990 -0.222250 -0.000009
+vn 0.974989 -0.222251 -0.000007
+vn 0.974989 -0.222251 -0.000007
+vn 0.974990 -0.222248 -0.000011
+vn 0.974989 -0.222251 -0.000007
+vn 0.974990 -0.222248 -0.000011
+vn 0.974990 -0.222248 -0.000011
+vn 0.974991 -0.222243 -0.000012
+vn 0.974990 -0.222248 -0.000011
+vn 0.974991 -0.222243 -0.000012
+vn 0.974991 -0.222243 -0.000012
+vn 0.974991 -0.222245 -0.000012
+vn 0.974991 -0.222243 -0.000012
+vn 0.974991 -0.222245 -0.000012
+vn 0.974991 -0.222245 -0.000012
+vn 0.974990 -0.222247 -0.000005
+vn 0.974991 -0.222245 -0.000012
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000005
+vn 0.974991 -0.222244 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974991 -0.222244 -0.000002
+vn 0.974991 -0.222244 -0.000002
+vn 0.974991 -0.222245 -0.000005
+vn 0.974991 -0.222244 -0.000002
+vn 0.974991 -0.222245 -0.000005
+vn 0.974991 -0.222245 -0.000005
+vn 0.974990 -0.222249 0.000001
+vn 0.974991 -0.222245 -0.000005
+vn 0.974990 -0.222249 0.000001
+vn 0.974990 -0.222249 0.000001
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222249 0.000001
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222248 -0.000007
+vn -0.085026 -0.373017 0.923921
+vn -0.157123 -0.689346 0.707188
+vn -0.085026 -0.373014 0.923922
+vn -0.157123 -0.689346 0.707188
+vn -0.157123 -0.689346 0.707188
+vn -0.205300 -0.900733 0.382794
+vn -0.157123 -0.689346 0.707188
+vn -0.205300 -0.900734 0.382792
+vn -0.205300 -0.900733 0.382794
+vn -0.222230 -0.974994 0.000117
+vn -0.205300 -0.900734 0.382792
+vn -0.222230 -0.974994 0.000113
+vn -0.222230 -0.974994 0.000117
+vn -0.205333 -0.900819 -0.382575
+vn -0.222230 -0.974994 0.000113
+vn -0.205332 -0.900819 -0.382576
+vn -0.205333 -0.900819 -0.382575
+vn -0.157173 -0.689501 -0.707026
+vn -0.205332 -0.900819 -0.382576
+vn -0.157173 -0.689502 -0.707025
+vn -0.157173 -0.689501 -0.707026
+vn -0.085076 -0.373212 -0.923837
+vn -0.157173 -0.689502 -0.707025
+vn -0.085077 -0.373214 -0.923836
+vn -0.085076 -0.373212 -0.923837
+vn -0.000025 -0.000108 -1.000000
+vn -0.085077 -0.373214 -0.923836
+vn -0.000025 -0.000109 -1.000000
+vn -0.000025 -0.000108 -1.000000
+vn 0.085028 0.373003 -0.923926
+vn -0.000025 -0.000109 -1.000000
+vn 0.085028 0.373002 -0.923926
+vn 0.085028 0.373003 -0.923926
+vn 0.157134 0.689341 -0.707190
+vn 0.085028 0.373002 -0.923926
+vn 0.157134 0.689341 -0.707191
+vn 0.157134 0.689341 -0.707190
+vn 0.205311 0.900733 -0.382788
+vn 0.157134 0.689341 -0.707191
+vn 0.205311 0.900734 -0.382787
+vn 0.205311 0.900733 -0.382788
+vn 0.222232 0.974994 -0.000116
+vn 0.205311 0.900734 -0.382787
+vn 0.222232 0.974994 -0.000115
+vn 0.222232 0.974994 -0.000116
+vn 0.205332 0.900818 0.382577
+vn 0.222232 0.974994 -0.000115
+vn 0.205332 0.900818 0.382577
+vn 0.205332 0.900818 0.382577
+vn 0.157172 0.689497 0.707030
+vn 0.205332 0.900818 0.382577
+vn 0.157172 0.689496 0.707030
+vn 0.157172 0.689497 0.707030
+vn 0.085077 0.373220 0.923834
+vn 0.157172 0.689496 0.707030
+vn 0.085077 0.373220 0.923834
+vn 0.085077 0.373220 0.923834
+vn 0.000027 0.000117 1.000000
+vn 0.085077 0.373220 0.923834
+vn 0.000027 0.000119 1.000000
+vn 0.000027 0.000117 1.000000
+vn -0.085026 -0.373017 0.923921
+vn 0.000027 0.000119 1.000000
+vn -0.085026 -0.373014 0.923922
+vn 0.370883 -0.928680 0.000092
+vn 0.370883 -0.928680 0.000092
+vn 0.370883 -0.928680 0.000092
+vn 0.370883 -0.928680 0.000092
+vn 0.000032 0.000114 1.000000
+vn 0.000032 0.000114 1.000000
+vn 0.000032 0.000114 1.000000
+vn 0.000032 0.000114 1.000000
+vn 0.923532 0.383521 -0.000069
+vn 0.923532 0.383521 -0.000069
+vn 0.923532 0.383521 -0.000069
+vn 0.923532 0.383521 -0.000069
+vn -0.370883 0.928680 -0.000092
+vn -0.370883 0.928680 -0.000092
+vn -0.370883 0.928680 -0.000092
+vn -0.370883 0.928680 -0.000092
+vn -0.000024 -0.000109 -1.000000
+vn -0.000024 -0.000109 -1.000000
+vn -0.000024 -0.000109 -1.000000
+vn -0.000024 -0.000109 -1.000000
+vn 0.262291 -0.656622 0.707143
+vn 0.262291 -0.656622 0.707143
+vn 0.262291 -0.656622 0.707143
+vn 0.262291 -0.656622 0.707143
+vn 0.924221 -0.381858 0.000016
+vn 0.924221 -0.381858 0.000016
+vn 0.924221 -0.381858 0.000016
+vn 0.924221 -0.381858 0.000016
+vn 0.653058 0.271269 0.707056
+vn 0.653058 0.271269 0.707056
+vn 0.653058 0.271269 0.707056
+vn 0.653058 0.271269 0.707056
+vn -0.262247 0.656786 0.707007
+vn -0.262247 0.656786 0.707007
+vn -0.262247 0.656786 0.707007
+vn -0.262247 0.656786 0.707007
+vn 0.381848 0.924225 -0.000114
+vn 0.381848 0.924225 -0.000114
+vn 0.381848 0.924225 -0.000114
+vn 0.381848 0.924225 -0.000114
+vn -0.262273 0.656624 -0.707148
+vn -0.262273 0.656624 -0.707148
+vn -0.262273 0.656624 -0.707148
+vn -0.262273 0.656624 -0.707148
+vn 0.653012 0.271110 -0.707159
+vn 0.653012 0.271110 -0.707159
+vn 0.653012 0.271110 -0.707159
+vn 0.653012 0.271110 -0.707159
+vn 0.262245 -0.656801 -0.706994
+vn 0.262245 -0.656801 -0.706994
+vn 0.262245 -0.656801 -0.706994
+vn 0.262245 -0.656801 -0.706994
+vn 0.754628 -0.311738 0.577370
+vn 0.754628 -0.311738 0.577370
+vn 0.754628 -0.311738 0.577370
+vn 0.311795 0.754700 0.577245
+vn 0.311795 0.754700 0.577245
+vn 0.311795 0.754700 0.577245
+vn 0.311760 0.754554 -0.577454
+vn 0.311760 0.754554 -0.577454
+vn 0.311760 0.754554 -0.577454
+vn 0.754610 -0.311831 -0.577343
+vn 0.754610 -0.311831 -0.577343
+vn 0.754610 -0.311831 -0.577343
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.383515 0.923535 -0.000094
+vn -0.383515 0.923535 -0.000094
+vn -0.383515 0.923535 -0.000094
+vn -0.383515 0.923535 -0.000094
+vn -0.000036 -0.000117 -1.000000
+vn -0.000036 -0.000117 -1.000000
+vn -0.000036 -0.000117 -1.000000
+vn -0.000036 -0.000117 -1.000000
+vn 0.383510 -0.923537 0.000092
+vn 0.383510 -0.923537 0.000092
+vn 0.383510 -0.923537 0.000092
+vn 0.383510 -0.923537 0.000092
+vn 0.923532 0.383521 -0.000066
+vn 0.923532 0.383521 -0.000066
+vn 0.923532 0.383521 -0.000066
+vn 0.923532 0.383521 -0.000066
+vn -0.923531 -0.383524 0.000069
+vn -0.923531 -0.383524 0.000069
+vn -0.923531 -0.383524 0.000069
+vn -0.923531 -0.383524 0.000069
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.383523 0.923531 -0.000091
+vn -0.383523 0.923531 -0.000091
+vn -0.383523 0.923531 -0.000091
+vn -0.383523 0.923531 -0.000091
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn 0.383523 -0.923531 0.000091
+vn 0.383523 -0.923531 0.000091
+vn 0.383523 -0.923531 0.000091
+vn 0.383523 -0.923531 0.000091
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923532 -0.383521 0.000070
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.383510 0.923537 -0.000092
+vn -0.383510 0.923537 -0.000092
+vn -0.383510 0.923537 -0.000092
+vn -0.383510 0.923537 -0.000092
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn 0.383515 -0.923535 0.000093
+vn 0.383515 -0.923535 0.000093
+vn 0.383515 -0.923535 0.000093
+vn 0.383515 -0.923535 0.000093
+vn 0.923531 0.383524 -0.000069
+vn 0.923531 0.383524 -0.000069
+vn 0.923531 0.383524 -0.000069
+vn 0.923531 0.383524 -0.000069
+vn -0.923533 -0.383520 0.000070
+vn -0.923533 -0.383520 0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923533 -0.383520 0.000070
+vn -0.146796 0.353322 -0.923913
+vn -0.271209 0.652954 -0.707175
+vn -0.146795 0.353321 -0.923913
+vn -0.271209 0.652955 -0.707174
+vn -0.271209 0.652954 -0.707175
+vn -0.354338 0.853189 -0.382771
+vn -0.271209 0.652955 -0.707174
+vn -0.354337 0.853189 -0.382772
+vn -0.354338 0.853189 -0.382771
+vn -0.383521 0.923532 -0.000095
+vn -0.354337 0.853189 -0.382772
+vn -0.383521 0.923532 -0.000093
+vn -0.383521 0.923532 -0.000095
+vn -0.354314 0.853275 0.382601
+vn -0.383521 0.923532 -0.000093
+vn -0.354315 0.853275 0.382600
+vn -0.354314 0.853275 0.382601
+vn -0.271168 0.653113 0.707044
+vn -0.354315 0.853275 0.382600
+vn -0.271169 0.653115 0.707042
+vn -0.271168 0.653113 0.707044
+vn -0.146740 0.353525 0.923844
+vn -0.271169 0.653115 0.707042
+vn -0.146739 0.353523 0.923845
+vn -0.146740 0.353525 0.923844
+vn 0.000028 0.000114 1.000000
+vn -0.146739 0.353523 0.923845
+vn 0.000028 0.000114 1.000000
+vn 0.000028 0.000114 1.000000
+vn 0.146792 -0.353317 0.923915
+vn 0.000028 0.000114 1.000000
+vn 0.146793 -0.353319 0.923914
+vn 0.146792 -0.353317 0.923915
+vn 0.271209 -0.652959 0.707170
+vn 0.146793 -0.353319 0.923914
+vn 0.271209 -0.652959 0.707170
+vn 0.271209 -0.652959 0.707170
+vn 0.354336 -0.853191 0.382767
+vn 0.271209 -0.652959 0.707170
+vn 0.354335 -0.853191 0.382769
+vn 0.354336 -0.853191 0.382767
+vn 0.383518 -0.923533 0.000093
+vn 0.354335 -0.853191 0.382769
+vn 0.383518 -0.923533 0.000090
+vn 0.383518 -0.923533 0.000093
+vn 0.354314 -0.853276 -0.382599
+vn 0.383518 -0.923533 0.000090
+vn 0.354314 -0.853276 -0.382598
+vn 0.354314 -0.853276 -0.382599
+vn 0.271169 -0.653117 -0.707040
+vn 0.354314 -0.853276 -0.382598
+vn 0.271169 -0.653117 -0.707040
+vn 0.271169 -0.653117 -0.707040
+vn 0.146740 -0.353528 -0.923843
+vn 0.271169 -0.653117 -0.707040
+vn 0.146740 -0.353526 -0.923843
+vn 0.146740 -0.353528 -0.923843
+vn -0.000031 -0.000110 -1.000000
+vn 0.146740 -0.353526 -0.923843
+vn -0.000030 -0.000110 -1.000000
+vn -0.000031 -0.000110 -1.000000
+vn -0.146796 0.353322 -0.923913
+vn -0.000030 -0.000110 -1.000000
+vn -0.146795 0.353321 -0.923913
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923530 0.383526 -0.000065
+vn 0.923531 0.383524 -0.000065
+vn 0.923530 0.383526 -0.000065
+vn 0.923531 0.383524 -0.000065
+vn 0.923531 0.383524 -0.000065
+vn 0.923533 0.383519 -0.000068
+vn 0.923531 0.383524 -0.000065
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923531 0.383525 -0.000071
+vn 0.923533 0.383519 -0.000068
+vn 0.923531 0.383525 -0.000071
+vn 0.923531 0.383525 -0.000071
+vn 0.923533 0.383520 -0.000070
+vn 0.923531 0.383525 -0.000071
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000071
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000071
+vn 0.923533 0.383520 -0.000071
+vn 0.923532 0.383522 -0.000072
+vn 0.923533 0.383520 -0.000071
+vn 0.923532 0.383522 -0.000072
+vn 0.923532 0.383522 -0.000072
+vn 0.923536 0.383512 -0.000070
+vn 0.923532 0.383522 -0.000072
+vn 0.923536 0.383512 -0.000070
+vn 0.923536 0.383512 -0.000070
+vn 0.923535 0.383513 -0.000067
+vn 0.923536 0.383512 -0.000070
+vn 0.923535 0.383513 -0.000067
+vn 0.923535 0.383513 -0.000067
+vn 0.923534 0.383516 -0.000063
+vn 0.923535 0.383513 -0.000067
+vn 0.923534 0.383516 -0.000063
+vn 0.923534 0.383516 -0.000063
+vn 0.923535 0.383514 -0.000067
+vn 0.923534 0.383516 -0.000063
+vn 0.923535 0.383514 -0.000067
+vn 0.923535 0.383514 -0.000067
+vn 0.923533 0.383519 -0.000065
+vn 0.923535 0.383514 -0.000067
+vn 0.923533 0.383519 -0.000065
+vn 0.923533 0.383519 -0.000065
+vn 0.923531 0.383524 -0.000067
+vn 0.923533 0.383519 -0.000065
+vn 0.923531 0.383524 -0.000067
+vn 0.923531 0.383524 -0.000067
+vn 0.923534 0.383516 -0.000072
+vn 0.923531 0.383524 -0.000067
+vn 0.923534 0.383516 -0.000072
+vn 0.923534 0.383516 -0.000072
+vn 0.923535 0.383514 -0.000069
+vn 0.923534 0.383516 -0.000072
+vn 0.923535 0.383514 -0.000069
+vn 0.923535 0.383514 -0.000069
+vn 0.923530 0.383526 -0.000065
+vn 0.923535 0.383514 -0.000069
+vn 0.923530 0.383526 -0.000065
+vn -0.146791 0.353319 -0.923915
+vn -0.271209 0.652956 -0.707173
+vn -0.146790 0.353317 -0.923916
+vn -0.271209 0.652955 -0.707174
+vn -0.271209 0.652956 -0.707173
+vn -0.354340 0.853187 -0.382773
+vn -0.271209 0.652955 -0.707174
+vn -0.354340 0.853187 -0.382774
+vn -0.354340 0.853187 -0.382773
+vn -0.383519 0.923533 -0.000095
+vn -0.354340 0.853187 -0.382774
+vn -0.383519 0.923533 -0.000093
+vn -0.383519 0.923533 -0.000095
+vn -0.354310 0.853277 0.382601
+vn -0.383519 0.923533 -0.000093
+vn -0.354309 0.853276 0.382603
+vn -0.354310 0.853277 0.382601
+vn -0.271166 0.653115 0.707043
+vn -0.354309 0.853276 0.382603
+vn -0.271166 0.653115 0.707043
+vn -0.271166 0.653115 0.707043
+vn -0.146740 0.353524 0.923844
+vn -0.271166 0.653115 0.707043
+vn -0.146740 0.353524 0.923844
+vn -0.146740 0.353524 0.923844
+vn 0.000025 0.000116 1.000000
+vn -0.146740 0.353524 0.923844
+vn 0.000026 0.000114 1.000000
+vn 0.000025 0.000116 1.000000
+vn 0.146793 -0.353319 0.923914
+vn 0.000026 0.000114 1.000000
+vn 0.146793 -0.353316 0.923915
+vn 0.146793 -0.353319 0.923914
+vn 0.271215 -0.652965 0.707163
+vn 0.146793 -0.353316 0.923915
+vn 0.271215 -0.652964 0.707163
+vn 0.271215 -0.652965 0.707163
+vn 0.354338 -0.853191 0.382765
+vn 0.271215 -0.652964 0.707163
+vn 0.354338 -0.853191 0.382766
+vn 0.354338 -0.853191 0.382765
+vn 0.383521 -0.923532 0.000097
+vn 0.354338 -0.853191 0.382766
+vn 0.383521 -0.923532 0.000096
+vn 0.383521 -0.923532 0.000097
+vn 0.354322 -0.853273 -0.382597
+vn 0.383521 -0.923532 0.000096
+vn 0.354322 -0.853273 -0.382598
+vn 0.354322 -0.853273 -0.382597
+vn 0.271176 -0.653112 -0.707042
+vn 0.354322 -0.853273 -0.382598
+vn 0.271176 -0.653112 -0.707042
+vn 0.271176 -0.653112 -0.707042
+vn 0.146742 -0.353522 -0.923845
+vn 0.271176 -0.653112 -0.707042
+vn 0.146741 -0.353520 -0.923846
+vn 0.146742 -0.353522 -0.923845
+vn -0.000026 -0.000115 -1.000000
+vn 0.146741 -0.353520 -0.923846
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.146791 0.353319 -0.923915
+vn -0.000026 -0.000115 -1.000000
+vn -0.146790 0.353317 -0.923916
+vn -0.222249 -0.974990 0.000115
+vn -0.222249 -0.974990 0.000115
+vn -0.222249 -0.974990 0.000115
+vn -0.222249 -0.974990 0.000115
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.846578 -0.532264 0.000083
+vn -0.846578 -0.532264 0.000083
+vn -0.846578 -0.532265 0.000083
+vn -0.846578 -0.532264 0.000083
+vn -0.157134 -0.689346 0.707185
+vn -0.157134 -0.689346 0.707185
+vn -0.157134 -0.689346 0.707185
+vn -0.157134 -0.689346 0.707185
+vn -0.689403 0.157232 0.707108
+vn -0.689403 0.157232 0.707108
+vn -0.689403 0.157232 0.707108
+vn -0.689403 0.157232 0.707108
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.689442 -0.157075 0.707105
+vn 0.689442 -0.157075 0.707105
+vn 0.689442 -0.157075 0.707105
+vn 0.689442 -0.157075 0.707105
+vn -0.532270 0.846575 -0.000079
+vn -0.532270 0.846575 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn 0.157173 0.689499 0.707028
+vn 0.157173 0.689499 0.707028
+vn 0.157173 0.689499 0.707027
+vn 0.157173 0.689499 0.707027
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn -0.689441 0.157075 -0.707106
+vn -0.689441 0.157075 -0.707106
+vn -0.689441 0.157075 -0.707106
+vn -0.689441 0.157075 -0.707106
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707189
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn -0.157175 -0.689503 -0.707023
+vn -0.157175 -0.689503 -0.707023
+vn -0.157175 -0.689503 -0.707023
+vn -0.157175 -0.689503 -0.707023
+vn -0.691212 -0.434525 0.577419
+vn -0.691212 -0.434525 0.577419
+vn -0.691212 -0.434525 0.577419
+vn 0.434604 -0.691170 0.577411
+vn 0.434604 -0.691170 0.577411
+vn 0.434604 -0.691170 0.577411
+vn -0.434576 0.691293 0.577284
+vn -0.434576 0.691293 0.577284
+vn -0.434576 0.691293 0.577284
+vn 0.691245 0.434651 0.577286
+vn 0.691245 0.434651 0.577286
+vn 0.691245 0.434651 0.577286
+vn -0.434618 0.691157 -0.577416
+vn -0.434618 0.691157 -0.577416
+vn -0.434618 0.691157 -0.577416
+vn 0.691212 0.434525 -0.577420
+vn 0.691212 0.434526 -0.577420
+vn 0.691212 0.434526 -0.577420
+vn -0.691245 -0.434660 -0.577279
+vn -0.691245 -0.434660 -0.577279
+vn -0.691245 -0.434660 -0.577279
+vn 0.434575 -0.691294 -0.577284
+vn 0.434575 -0.691294 -0.577284
+vn 0.434575 -0.691294 -0.577284
+vn 0.910790 -0.158077 0.381409
+vn 0.698383 -0.122443 0.705173
+vn 0.900644 -0.205256 0.383027
+vn 0.688977 -0.156969 0.707581
+vn 0.698383 -0.122443 0.705173
+vn 0.380481 -0.067472 0.922324
+vn 0.688977 -0.156969 0.707581
+vn 0.372351 -0.084769 0.924213
+vn 0.380481 -0.067472 0.922324
+vn 0.005283 0.000111 0.999986
+vn 0.372351 -0.084769 0.924213
+vn -0.000886 0.000320 1.000000
+vn 0.005283 0.000111 0.999986
+vn -0.370643 0.070915 0.926064
+vn -0.000886 0.000320 1.000000
+vn -0.373861 0.085330 0.923551
+vn -0.370643 0.070915 0.926064
+vn -0.690599 0.133639 0.710784
+vn -0.373861 0.085330 0.923551
+vn -0.689853 0.157335 0.706646
+vn -0.690599 0.133639 0.710784
+vn -0.905522 0.176961 0.385635
+vn -0.689853 0.157335 0.706646
+vn -0.900893 0.205403 0.382363
+vn -0.905522 0.176961 0.385635
+vn -0.981315 0.192407 0.000009
+vn -0.900893 0.205403 0.382363
+vn -0.974990 0.222249 0.000023
+vn -0.981315 0.192407 0.000009
+vn -0.905544 0.176875 -0.385623
+vn -0.974990 0.222249 0.000023
+vn -0.900925 0.205321 -0.382331
+vn -0.905544 0.176875 -0.385623
+vn -0.690636 0.133479 -0.710778
+vn -0.900925 0.205321 -0.382331
+vn -0.689905 0.157180 -0.706630
+vn -0.690636 0.133479 -0.710778
+vn -0.370695 0.070708 -0.926059
+vn -0.689905 0.157180 -0.706630
+vn -0.373924 0.085127 -0.923545
+vn -0.370695 0.070708 -0.926059
+vn 0.005222 -0.000111 -0.999986
+vn -0.373924 0.085127 -0.923545
+vn -0.000947 0.000098 -1.000000
+vn 0.005222 -0.000111 -0.999986
+vn 0.380426 -0.067676 -0.922332
+vn -0.000947 0.000098 -1.000000
+vn 0.372308 -0.084976 -0.924211
+vn 0.380426 -0.067676 -0.922332
+vn 0.698342 -0.122599 -0.705187
+vn 0.372308 -0.084976 -0.924211
+vn 0.688950 -0.157129 -0.707573
+vn 0.698342 -0.122599 -0.705187
+vn 0.910768 -0.158161 -0.381428
+vn 0.688950 -0.157129 -0.707573
+vn 0.900634 -0.205344 -0.383005
+vn 0.910768 -0.158161 -0.381428
+vn 0.985372 -0.170415 -0.000009
+vn 0.900634 -0.205344 -0.383005
+vn 0.974990 -0.222249 0.000013
+vn 0.985372 -0.170415 -0.000009
+vn 0.910790 -0.158077 0.381409
+vn 0.974990 -0.222249 0.000013
+vn 0.900644 -0.205256 0.383027
+vn 0.910790 -0.158077 0.381409
+vn 0.985372 -0.170415 -0.000009
+vn 0.836972 0.383316 0.390572
+vn 0.908498 0.417889 -0.000072
+vn 0.910768 -0.158161 -0.381428
+vn 0.836950 0.383227 -0.390706
+vn 0.985372 -0.170415 -0.000009
+vn 0.908498 0.417889 -0.000072
+vn 0.698342 -0.122599 -0.705187
+vn 0.640906 0.289455 -0.710954
+vn 0.910768 -0.158161 -0.381428
+vn 0.836950 0.383227 -0.390706
+vn 0.380426 -0.067676 -0.922332
+vn 0.361277 0.159167 -0.918774
+vn 0.698342 -0.122599 -0.705187
+vn 0.640906 0.289455 -0.710954
+vn 0.005222 -0.000111 -0.999986
+vn 0.036536 0.014547 -0.999226
+vn 0.380426 -0.067676 -0.922332
+vn 0.361277 0.159167 -0.918774
+vn -0.370695 0.070708 -0.926059
+vn -0.304139 -0.125566 -0.944316
+vn 0.005222 -0.000111 -0.999986
+vn 0.036536 0.014547 -0.999226
+vn -0.370695 0.070708 -0.926059
+vn -0.690636 0.133479 -0.710778
+vn -0.304139 -0.125566 -0.944316
+vn -0.626576 -0.236044 -0.742756
+vn -0.690636 0.133479 -0.710778
+vn -0.905544 0.176875 -0.385623
+vn -0.626576 -0.236044 -0.742756
+vn -0.870877 -0.279496 -0.404297
+vn -0.905544 0.176875 -0.385623
+vn -0.981315 0.192407 0.000009
+vn -0.870877 -0.279496 -0.404297
+vn -0.962458 -0.271431 0.000057
+vn -0.905522 0.176961 0.385635
+vn -0.870855 -0.279405 0.404406
+vn -0.981315 0.192407 0.000009
+vn -0.962458 -0.271431 0.000057
+vn -0.690599 0.133639 0.710784
+vn -0.626533 -0.235878 0.742844
+vn -0.905522 0.176961 0.385635
+vn -0.870855 -0.279405 0.404406
+vn -0.370643 0.070915 0.926064
+vn -0.304083 -0.125354 0.944362
+vn -0.690599 0.133639 0.710784
+vn -0.626533 -0.235878 0.742844
+vn -0.370643 0.070915 0.926064
+vn 0.005283 0.000111 0.999986
+vn -0.304083 -0.125354 0.944362
+vn 0.036599 0.014773 0.999221
+vn 0.005283 0.000111 0.999986
+vn 0.380481 -0.067472 0.922324
+vn 0.036599 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.380481 -0.067472 0.922324
+vn 0.698383 -0.122443 0.705173
+vn 0.361329 0.159371 0.918718
+vn 0.640945 0.289611 0.710855
+vn 0.698383 -0.122443 0.705173
+vn 0.910790 -0.158077 0.381409
+vn 0.640945 0.289611 0.710855
+vn 0.836972 0.383316 0.390572
+vn 0.836972 0.383316 0.390572
+vn 0.908498 0.417889 -0.000072
+vn 0.681798 0.637265 0.359228
+vn 0.730616 0.682789 -0.000098
+vn 0.836950 0.383227 -0.390706
+vn 0.681779 0.637185 -0.359407
+vn 0.908498 0.417889 -0.000072
+vn 0.730616 0.682789 -0.000098
+vn 0.640906 0.289455 -0.710954
+vn 0.539219 0.504089 -0.674639
+vn 0.836950 0.383227 -0.390706
+vn 0.681779 0.637185 -0.359407
+vn 0.361277 0.159167 -0.918774
+vn 0.319664 0.298980 -0.899125
+vn 0.640906 0.289455 -0.710954
+vn 0.539219 0.504089 -0.674639
+vn 0.036536 0.014547 -0.999226
+vn 0.052540 0.049039 -0.997414
+vn 0.361277 0.159167 -0.918774
+vn 0.319664 0.298980 -0.899125
+vn -0.304139 -0.125566 -0.944316
+vn -0.226961 -0.213369 -0.950243
+vn 0.036536 0.014547 -0.999226
+vn 0.052540 0.049039 -0.997414
+vn -0.626576 -0.236044 -0.742756
+vn -0.479481 -0.452103 -0.752131
+vn -0.304139 -0.125566 -0.944316
+vn -0.226961 -0.213369 -0.950243
+vn -0.870877 -0.279496 -0.404297
+vn -0.659548 -0.624670 -0.418072
+vn -0.626576 -0.236044 -0.742756
+vn -0.479481 -0.452103 -0.752131
+vn -0.962458 -0.271431 0.000057
+vn -0.710568 -0.674723 -0.199603
+vn -0.870877 -0.279496 -0.404297
+vn -0.659548 -0.624670 -0.418072
+vn -0.962458 -0.271431 0.000057
+vn -0.870855 -0.279405 0.404406
+vn -0.710553 -0.674682 0.199798
+vn -0.659522 -0.624580 0.418247
+vn -0.870855 -0.279405 0.404406
+vn -0.626533 -0.235878 0.742844
+vn -0.659522 -0.624580 0.418247
+vn -0.479435 -0.451939 0.752258
+vn -0.626533 -0.235878 0.742844
+vn -0.304083 -0.125354 0.944362
+vn -0.479435 -0.451939 0.752258
+vn -0.226902 -0.213157 0.950305
+vn -0.304083 -0.125354 0.944362
+vn 0.036599 0.014773 0.999221
+vn -0.226902 -0.213157 0.950305
+vn 0.052604 0.049266 0.997400
+vn 0.036599 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.052604 0.049266 0.997400
+vn 0.319716 0.299179 0.899040
+vn 0.361329 0.159371 0.918718
+vn 0.640945 0.289611 0.710855
+vn 0.319716 0.299179 0.899040
+vn 0.539255 0.504238 0.674499
+vn 0.640945 0.289611 0.710855
+vn 0.836972 0.383316 0.390572
+vn 0.539255 0.504238 0.674499
+vn 0.681798 0.637265 0.359228
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.974990 0.222250 0.000005
+vn -0.974990 0.222250 0.000005
+vn -0.974991 0.222246 0.000002
+vn -0.974991 0.222246 0.000002
+vn -0.974990 0.222250 0.000005
+vn -0.974989 0.222252 0.000005
+vn -0.974990 0.222250 0.000005
+vn -0.974989 0.222251 0.000004
+vn -0.974989 0.222252 0.000005
+vn -0.974990 0.222250 -0.000002
+vn -0.974989 0.222251 0.000004
+vn -0.974990 0.222250 -0.000003
+vn -0.974990 0.222250 -0.000002
+vn -0.974990 0.222248 -0.000005
+vn -0.974990 0.222250 -0.000003
+vn -0.974990 0.222247 -0.000005
+vn -0.974990 0.222248 -0.000005
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222247 -0.000005
+vn -0.974990 0.222248 0.000002
+vn -0.974989 0.222251 0.000005
+vn -0.974990 0.222251 0.000005
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222248 -0.000002
+vn -0.974990 0.222249 -0.000001
+vn -0.974989 0.222251 0.000005
+vn -0.974990 0.222251 0.000005
+vn -0.974991 0.222245 -0.000002
+vn -0.974991 0.222246 -0.000002
+vn -0.974990 0.222248 -0.000002
+vn -0.974990 0.222249 -0.000001
+vn -0.974990 0.222250 0.000004
+vn -0.974990 0.222250 0.000004
+vn -0.974991 0.222245 -0.000002
+vn -0.974991 0.222246 -0.000002
+vn -0.974990 0.222250 0.000004
+vn -0.974989 0.222253 0.000004
+vn -0.974990 0.222250 0.000004
+vn -0.974989 0.222253 0.000003
+vn -0.974989 0.222253 0.000004
+vn -0.974990 0.222251 0.000002
+vn -0.974989 0.222253 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222251 0.000002
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000002
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222250 0.000002
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222250 0.000009
+vn -0.974990 0.222250 0.000008
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222250 0.000006
+vn -0.974989 0.222251 0.000007
+vn -0.974990 0.222250 0.000009
+vn -0.974990 0.222250 0.000008
+vn -0.974991 0.222246 0.000002
+vn -0.974991 0.222246 0.000002
+vn -0.974990 0.222250 0.000006
+vn -0.974989 0.222251 0.000007
+vn -0.734614 -0.678486 0.000102
+vn -0.911179 -0.412010 0.000076
+vn -0.684651 -0.622670 -0.378859
+vn -0.829660 -0.370157 -0.417909
+vn -0.734614 -0.678486 0.000102
+vn -0.684629 -0.622585 0.379040
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.684629 -0.622585 0.379040
+vn -0.546359 -0.467487 0.694945
+vn -0.829637 -0.370064 0.418038
+vn -0.623331 -0.263640 0.736175
+vn -0.546359 -0.467487 0.694945
+vn -0.349228 -0.245524 0.904300
+vn -0.623331 -0.263640 0.736175
+vn -0.359221 -0.127384 0.924518
+vn -0.349228 -0.245524 0.904300
+vn -0.122325 0.009430 0.992445
+vn -0.359221 -0.127384 0.924518
+vn -0.073925 0.016453 0.997128
+vn -0.122325 0.009430 0.992445
+vn 0.116796 0.272223 0.955120
+vn -0.073925 0.016453 0.997128
+vn 0.227273 0.156255 0.961213
+vn 0.116796 0.272223 0.955120
+vn 0.355262 0.516091 0.779384
+vn 0.227273 0.156255 0.961213
+vn 0.541779 0.275095 0.794228
+vn 0.355262 0.516091 0.779384
+vn 0.560759 0.695190 0.449733
+vn 0.541779 0.275095 0.794228
+vn 0.818288 0.342765 0.461429
+vn 0.560759 0.695190 0.449733
+vn 0.650222 0.759744 -0.000108
+vn 0.818288 0.342765 0.461429
+vn 0.934036 0.357180 -0.000072
+vn 0.560729 0.695092 -0.449922
+vn 0.818263 0.342660 -0.461552
+vn 0.650222 0.759744 -0.000108
+vn 0.934036 0.357180 -0.000072
+vn 0.355223 0.515922 -0.779514
+vn 0.541740 0.274919 -0.794315
+vn 0.560729 0.695092 -0.449922
+vn 0.818263 0.342660 -0.461552
+vn 0.116740 0.272006 -0.955188
+vn 0.227216 0.156038 -0.961262
+vn 0.355223 0.515922 -0.779514
+vn 0.541740 0.274919 -0.794315
+vn -0.122380 0.009209 -0.992441
+vn -0.073981 0.016231 -0.997128
+vn 0.116740 0.272006 -0.955188
+vn 0.227216 0.156038 -0.961262
+vn -0.349279 -0.245726 -0.904225
+vn -0.359275 -0.127591 -0.924469
+vn -0.122380 0.009209 -0.992441
+vn -0.073981 0.016231 -0.997128
+vn -0.546395 -0.467639 -0.694814
+vn -0.623372 -0.263800 -0.736082
+vn -0.349279 -0.245726 -0.904225
+vn -0.359275 -0.127591 -0.924469
+vn -0.684651 -0.622670 -0.378859
+vn -0.829660 -0.370157 -0.417909
+vn -0.546395 -0.467639 -0.694814
+vn -0.623372 -0.263800 -0.736082
+vn -0.911179 -0.412010 0.000076
+vn -0.990921 0.134444 0.000013
+vn -0.829660 -0.370157 -0.417909
+vn -0.898997 0.122431 -0.420494
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.990921 0.134444 0.000013
+vn -0.898973 0.122524 0.420518
+vn -0.829637 -0.370064 0.418038
+vn -0.623331 -0.263640 0.736175
+vn -0.898973 0.122524 0.420518
+vn -0.661033 0.091256 0.744787
+vn -0.623331 -0.263640 0.736175
+vn -0.359221 -0.127384 0.924518
+vn -0.661033 0.091256 0.744787
+vn -0.347825 0.048815 0.936288
+vn -0.359221 -0.127384 0.924518
+vn -0.073925 0.016453 0.997128
+vn -0.347825 0.048815 0.936288
+vn -0.008734 0.000347 0.999962
+vn -0.073925 0.016453 0.997128
+vn 0.227273 0.156255 0.961213
+vn -0.008734 0.000347 0.999962
+vn 0.331403 -0.051587 0.942078
+vn 0.227273 0.156255 0.961213
+vn 0.541779 0.275095 0.794228
+vn 0.331403 -0.051587 0.942078
+vn 0.648539 -0.102868 0.754199
+vn 0.541779 0.275095 0.794228
+vn 0.818288 0.342765 0.461429
+vn 0.648539 -0.102868 0.754199
+vn 0.892392 -0.143572 0.427813
+vn 0.818288 0.342765 0.461429
+vn 0.934036 0.357180 -0.000072
+vn 0.892392 -0.143572 0.427813
+vn 0.987188 -0.159563 -0.000014
+vn 0.818263 0.342660 -0.461552
+vn 0.892368 -0.143667 -0.427831
+vn 0.934036 0.357180 -0.000072
+vn 0.987188 -0.159563 -0.000014
+vn 0.541740 0.274919 -0.794315
+vn 0.648501 -0.103036 -0.754208
+vn 0.818263 0.342660 -0.461552
+vn 0.892368 -0.143667 -0.427831
+vn 0.227216 0.156038 -0.961262
+vn 0.331347 -0.051796 -0.942086
+vn 0.541740 0.274919 -0.794315
+vn 0.648501 -0.103036 -0.754208
+vn -0.073981 0.016231 -0.997128
+vn -0.008788 0.000124 -0.999961
+vn 0.227216 0.156038 -0.961262
+vn 0.331347 -0.051796 -0.942086
+vn -0.359275 -0.127591 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.073981 0.016231 -0.997128
+vn -0.008788 0.000124 -0.999961
+vn -0.623372 -0.263800 -0.736082
+vn -0.661080 0.091091 -0.744766
+vn -0.359275 -0.127591 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.829660 -0.370157 -0.417909
+vn -0.898997 0.122431 -0.420494
+vn -0.623372 -0.263800 -0.736082
+vn -0.661080 0.091091 -0.744766
+vn -0.898997 0.122431 -0.420494
+vn -0.990921 0.134444 0.000013
+vn -0.882925 0.201212 -0.424213
+vn -0.974990 0.222248 0.000002
+vn -0.990921 0.134444 0.000013
+vn -0.898973 0.122524 0.420518
+vn -0.974990 0.222248 0.000002
+vn -0.882901 0.201307 0.424219
+vn -0.898973 0.122524 0.420518
+vn -0.661033 0.091256 0.744787
+vn -0.882901 0.201307 0.424219
+vn -0.645795 0.147297 0.749168
+vn -0.661033 0.091256 0.744787
+vn -0.347825 0.048815 0.936288
+vn -0.645795 0.147297 0.749168
+vn -0.335173 0.076513 0.939045
+vn -0.347825 0.048815 0.936288
+vn -0.008734 0.000347 0.999962
+vn -0.335173 0.076513 0.939045
+vn 0.000404 0.000025 1.000000
+vn -0.008734 0.000347 0.999962
+vn 0.331403 -0.051587 0.942078
+vn 0.000404 0.000025 1.000000
+vn 0.336307 -0.076551 0.938636
+vn 0.331403 -0.051587 0.942078
+vn 0.648539 -0.102868 0.754199
+vn 0.336307 -0.076551 0.938636
+vn 0.647499 -0.147510 0.747653
+vn 0.648539 -0.102868 0.754199
+vn 0.892392 -0.143572 0.427813
+vn 0.647499 -0.147510 0.747653
+vn 0.884006 -0.201461 0.421838
+vn 0.892392 -0.143572 0.427813
+vn 0.987188 -0.159563 -0.000014
+vn 0.884006 -0.201461 0.421838
+vn 0.974990 -0.222250 -0.000006
+vn 0.987188 -0.159563 -0.000014
+vn 0.892368 -0.143667 -0.427831
+vn 0.974990 -0.222250 -0.000006
+vn 0.883981 -0.201554 -0.421845
+vn 0.648501 -0.103036 -0.754208
+vn 0.647462 -0.147677 -0.747653
+vn 0.892368 -0.143667 -0.427831
+vn 0.883981 -0.201554 -0.421845
+vn 0.331347 -0.051796 -0.942086
+vn 0.336253 -0.076759 -0.938638
+vn 0.648501 -0.103036 -0.754208
+vn 0.647462 -0.147677 -0.747653
+vn -0.008788 0.000124 -0.999961
+vn 0.000350 -0.000197 -1.000000
+vn 0.331347 -0.051796 -0.942086
+vn 0.336253 -0.076759 -0.938638
+vn -0.347879 0.048607 -0.936279
+vn -0.335230 0.076305 -0.939041
+vn -0.008788 0.000124 -0.999961
+vn 0.000350 -0.000197 -1.000000
+vn -0.661080 0.091091 -0.744766
+vn -0.645840 0.147130 -0.749162
+vn -0.347879 0.048607 -0.936279
+vn -0.335230 0.076305 -0.939041
+vn -0.898997 0.122431 -0.420494
+vn -0.882925 0.201212 -0.424213
+vn -0.661080 0.091091 -0.744766
+vn -0.645840 0.147130 -0.749162
+vn 0.900923 -0.205322 0.382336
+vn 0.689908 -0.157181 0.706626
+vn 0.900784 -0.205291 0.382680
+vn 0.689443 -0.157075 0.707103
+vn 0.689908 -0.157181 0.706626
+vn 0.373927 -0.085128 0.923543
+vn 0.689443 -0.157075 0.707103
+vn 0.373141 -0.084949 0.923877
+vn 0.373927 -0.085128 0.923543
+vn 0.000946 -0.000100 1.000000
+vn 0.373141 -0.084949 0.923877
+vn 0.000031 0.000108 1.000000
+vn 0.000946 -0.000100 1.000000
+vn -0.372314 0.084966 0.924209
+vn 0.000031 0.000108 1.000000
+vn -0.373089 0.085142 0.923881
+vn -0.372314 0.084966 0.924209
+vn -0.688957 0.157115 0.707569
+vn -0.373089 0.085142 0.923881
+vn -0.689407 0.157217 0.707107
+vn -0.688957 0.157115 0.707569
+vn -0.900634 0.205344 0.383005
+vn -0.689407 0.157217 0.707107
+vn -0.900763 0.205374 0.382686
+vn -0.900634 0.205344 0.383005
+vn -0.974989 0.222252 -0.000010
+vn -0.900763 0.205374 0.382686
+vn -0.974989 0.222252 0.000007
+vn -0.900646 0.205248 -0.383028
+vn -0.900786 0.205280 -0.382682
+vn -0.974989 0.222252 -0.000010
+vn -0.974989 0.222252 0.000007
+vn -0.688974 0.156962 -0.707586
+vn -0.689440 0.157068 -0.707109
+vn -0.900646 0.205248 -0.383028
+vn -0.900786 0.205280 -0.382682
+vn -0.372348 0.084770 -0.924214
+vn -0.373138 0.084950 -0.923879
+vn -0.688974 0.156962 -0.707586
+vn -0.689440 0.157068 -0.707109
+vn 0.000889 -0.000316 -1.000000
+vn -0.000031 -0.000107 -1.000000
+vn -0.372348 0.084770 -0.924214
+vn -0.373138 0.084950 -0.923879
+vn 0.373863 -0.085325 -0.923551
+vn 0.373085 -0.085148 -0.923882
+vn 0.000889 -0.000316 -1.000000
+vn -0.000031 -0.000107 -1.000000
+vn 0.689851 -0.157327 -0.706650
+vn 0.689401 -0.157225 -0.707111
+vn 0.373863 -0.085325 -0.923551
+vn 0.373085 -0.085148 -0.923882
+vn 0.900892 -0.205400 -0.382368
+vn 0.900764 -0.205371 -0.382684
+vn 0.689851 -0.157327 -0.706650
+vn 0.689401 -0.157225 -0.707111
+vn 0.900892 -0.205400 -0.382368
+vn 0.974989 -0.222252 -0.000019
+vn 0.900764 -0.205371 -0.382684
+vn 0.974989 -0.222252 -0.000004
+vn 0.974989 -0.222252 -0.000019
+vn 0.900923 -0.205322 0.382336
+vn 0.974989 -0.222252 -0.000004
+vn 0.900784 -0.205291 0.382680
+vn 0.488620 0.841774 0.229493
+vn 0.488620 0.841774 0.229493
+vn 0.488620 0.841774 0.229493
+vn 0.488620 0.841774 0.229493
+vn -0.488624 -0.841772 -0.229492
+vn -0.488624 -0.841772 -0.229492
+vn -0.488624 -0.841772 -0.229492
+vn -0.488624 -0.841772 -0.229492
+vn 0.488618 0.841718 -0.229703
+vn 0.488618 0.841718 -0.229703
+vn 0.488618 0.841718 -0.229703
+vn 0.488618 0.841718 -0.229703
+vn -0.488614 -0.841715 0.229722
+vn -0.488614 -0.841715 0.229722
+vn -0.488614 -0.841715 0.229722
+vn -0.488614 -0.841715 0.229722
+vn 0.393452 0.677770 -0.621147
+vn 0.393452 0.677770 -0.621147
+vn 0.393452 0.677770 -0.621147
+vn 0.393452 0.677770 -0.621147
+vn -0.393469 -0.677776 0.621129
+vn -0.393469 -0.677776 0.621129
+vn -0.393469 -0.677776 0.621129
+vn -0.393469 -0.677776 0.621129
+vn 0.246414 0.424496 -0.871254
+vn 0.246414 0.424496 -0.871254
+vn 0.246414 0.424496 -0.871254
+vn 0.246414 0.424496 -0.871254
+vn -0.246448 -0.424480 0.871252
+vn -0.246448 -0.424480 0.871252
+vn -0.246448 -0.424480 0.871252
+vn -0.246448 -0.424480 0.871252
+vn 0.083025 0.143016 -0.986232
+vn 0.083025 0.143016 -0.986232
+vn 0.083025 0.143016 -0.986232
+vn 0.083025 0.143016 -0.986232
+vn -0.083067 -0.143010 0.986229
+vn -0.083067 -0.143010 0.986229
+vn -0.083067 -0.143010 0.986229
+vn -0.083067 -0.143010 0.986229
+vn -0.083176 -0.143310 -0.986176
+vn -0.083176 -0.143310 -0.986176
+vn -0.083176 -0.143310 -0.986176
+vn -0.083176 -0.143310 -0.986176
+vn 0.083141 0.143319 0.986178
+vn 0.083141 0.143319 0.986178
+vn 0.083141 0.143319 0.986178
+vn 0.083141 0.143319 0.986178
+vn -0.246896 -0.425379 -0.870687
+vn -0.246896 -0.425379 -0.870687
+vn -0.246896 -0.425379 -0.870687
+vn -0.246896 -0.425379 -0.870687
+vn 0.246875 0.425377 0.870693
+vn 0.246875 0.425377 0.870693
+vn 0.246875 0.425377 0.870693
+vn 0.246875 0.425377 0.870693
+vn -0.394244 -0.679193 -0.619087
+vn -0.394244 -0.679193 -0.619087
+vn -0.394244 -0.679193 -0.619087
+vn -0.394244 -0.679193 -0.619087
+vn 0.394239 0.679209 0.619072
+vn 0.394239 0.679209 0.619072
+vn 0.394239 0.679209 0.619072
+vn 0.394239 0.679209 0.619072
+vn -0.488840 -0.842133 -0.227701
+vn -0.488840 -0.842133 -0.227701
+vn -0.488840 -0.842133 -0.227701
+vn -0.488840 -0.842133 -0.227701
+vn 0.488835 0.842136 0.227701
+vn 0.488835 0.842136 0.227701
+vn 0.488835 0.842136 0.227701
+vn 0.488835 0.842136 0.227701
+vn -0.488827 -0.842080 0.227924
+vn -0.488827 -0.842080 0.227924
+vn -0.488827 -0.842080 0.227924
+vn -0.488827 -0.842080 0.227924
+vn 0.488823 0.842083 -0.227920
+vn 0.488823 0.842083 -0.227920
+vn 0.488823 0.842083 -0.227920
+vn 0.488823 0.842083 -0.227920
+vn -0.394218 -0.679060 0.619250
+vn -0.394218 -0.679060 0.619250
+vn -0.394218 -0.679060 0.619250
+vn -0.394218 -0.679060 0.619250
+vn 0.394206 0.679069 -0.619247
+vn 0.394206 0.679069 -0.619247
+vn 0.394206 0.679069 -0.619247
+vn 0.394206 0.679069 -0.619247
+vn -0.246863 -0.425179 0.870794
+vn -0.246863 -0.425179 0.870794
+vn -0.246863 -0.425179 0.870794
+vn -0.246863 -0.425179 0.870794
+vn 0.246838 0.425185 -0.870798
+vn 0.246838 0.425185 -0.870798
+vn 0.246838 0.425185 -0.870798
+vn 0.246838 0.425185 -0.870798
+vn -0.083119 -0.143086 0.986214
+vn -0.083119 -0.143086 0.986214
+vn -0.083119 -0.143086 0.986214
+vn -0.083119 -0.143086 0.986214
+vn 0.083089 0.143093 -0.986215
+vn 0.083089 0.143093 -0.986215
+vn 0.083089 0.143093 -0.986215
+vn 0.083089 0.143093 -0.986215
+vn 0.083120 0.143230 0.986193
+vn 0.083120 0.143230 0.986193
+vn 0.083120 0.143230 0.986193
+vn 0.083120 0.143230 0.986193
+vn -0.083114 -0.143226 -0.986194
+vn -0.083114 -0.143226 -0.986194
+vn -0.083114 -0.143226 -0.986194
+vn -0.083114 -0.143226 -0.986194
+vn 0.246505 0.424674 0.871141
+vn 0.246505 0.424674 0.871141
+vn 0.246505 0.424674 0.871141
+vn 0.246505 0.424674 0.871141
+vn -0.246494 -0.424683 -0.871140
+vn -0.246494 -0.424683 -0.871140
+vn -0.246494 -0.424683 -0.871140
+vn -0.246494 -0.424683 -0.871140
+vn 0.393507 0.677904 0.620966
+vn 0.393507 0.677904 0.620966
+vn 0.393507 0.677904 0.620966
+vn 0.393507 0.677904 0.620966
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn 0.910790 -0.158080 0.381409
+vn 0.698382 -0.122446 0.705174
+vn 0.900644 -0.205257 0.383027
+vn 0.688975 -0.156968 0.707583
+vn 0.698382 -0.122446 0.705174
+vn 0.380481 -0.067473 0.922324
+vn 0.688975 -0.156968 0.707583
+vn 0.372352 -0.084769 0.924212
+vn 0.380481 -0.067473 0.922324
+vn 0.005281 0.000112 0.999986
+vn 0.372352 -0.084769 0.924212
+vn -0.000889 0.000320 1.000000
+vn 0.005281 0.000112 0.999986
+vn -0.370646 0.070916 0.926063
+vn -0.000889 0.000320 1.000000
+vn -0.373863 0.085330 0.923550
+vn -0.370646 0.070916 0.926063
+vn -0.690600 0.133640 0.710783
+vn -0.373863 0.085330 0.923550
+vn -0.689853 0.157335 0.706645
+vn -0.690600 0.133640 0.710783
+vn -0.905520 0.176963 0.385640
+vn -0.689853 0.157335 0.706645
+vn -0.900890 0.205403 0.382370
+vn -0.905520 0.176963 0.385640
+vn -0.981315 0.192409 0.000010
+vn -0.900890 0.205403 0.382370
+vn -0.974990 0.222249 0.000022
+vn -0.981315 0.192409 0.000010
+vn -0.905543 0.176877 -0.385624
+vn -0.974990 0.222249 0.000022
+vn -0.900925 0.205320 -0.382333
+vn -0.905543 0.176877 -0.385624
+vn -0.690637 0.133482 -0.710776
+vn -0.900925 0.205320 -0.382333
+vn -0.689907 0.157181 -0.706627
+vn -0.690637 0.133482 -0.710776
+vn -0.370697 0.070710 -0.926058
+vn -0.689907 0.157181 -0.706627
+vn -0.373927 0.085128 -0.923543
+vn -0.370697 0.070710 -0.926058
+vn 0.005224 -0.000111 -0.999986
+vn -0.373927 0.085128 -0.923543
+vn -0.000944 0.000098 -1.000000
+vn 0.005224 -0.000111 -0.999986
+vn 0.380426 -0.067678 -0.922332
+vn -0.000944 0.000098 -1.000000
+vn 0.372309 -0.084977 -0.924210
+vn 0.380426 -0.067678 -0.922332
+vn 0.698342 -0.122601 -0.705186
+vn 0.372309 -0.084977 -0.924210
+vn 0.688950 -0.157129 -0.707572
+vn 0.698342 -0.122601 -0.705186
+vn 0.910768 -0.158164 -0.381425
+vn 0.688950 -0.157129 -0.707572
+vn 0.900634 -0.205344 -0.383003
+vn 0.910768 -0.158164 -0.381425
+vn 0.985372 -0.170419 -0.000011
+vn 0.900634 -0.205344 -0.383003
+vn 0.974990 -0.222249 0.000010
+vn 0.985372 -0.170419 -0.000011
+vn 0.910790 -0.158080 0.381409
+vn 0.974990 -0.222249 0.000010
+vn 0.900644 -0.205257 0.383027
+vn 0.910790 -0.158080 0.381409
+vn 0.985372 -0.170419 -0.000011
+vn 0.836973 0.383317 0.390570
+vn 0.908498 0.417889 -0.000073
+vn 0.910768 -0.158164 -0.381425
+vn 0.836952 0.383228 -0.390702
+vn 0.985372 -0.170419 -0.000011
+vn 0.908498 0.417889 -0.000073
+vn 0.698342 -0.122601 -0.705186
+vn 0.640906 0.289455 -0.710953
+vn 0.910768 -0.158164 -0.381425
+vn 0.836952 0.383228 -0.390702
+vn 0.380426 -0.067678 -0.922332
+vn 0.361276 0.159165 -0.918774
+vn 0.698342 -0.122601 -0.705186
+vn 0.640906 0.289455 -0.710953
+vn 0.005224 -0.000111 -0.999986
+vn 0.036537 0.014548 -0.999226
+vn 0.380426 -0.067678 -0.922332
+vn 0.361276 0.159165 -0.918774
+vn -0.370697 0.070710 -0.926058
+vn -0.304137 -0.125566 -0.944317
+vn 0.005224 -0.000111 -0.999986
+vn 0.036537 0.014548 -0.999226
+vn -0.370697 0.070710 -0.926058
+vn -0.690637 0.133482 -0.710776
+vn -0.304137 -0.125566 -0.944317
+vn -0.626575 -0.236044 -0.742757
+vn -0.690637 0.133482 -0.710776
+vn -0.905543 0.176877 -0.385624
+vn -0.626575 -0.236044 -0.742757
+vn -0.870877 -0.279495 -0.404296
+vn -0.905543 0.176877 -0.385624
+vn -0.981315 0.192409 0.000010
+vn -0.870877 -0.279495 -0.404296
+vn -0.962459 -0.271428 0.000063
+vn -0.905520 0.176963 0.385640
+vn -0.870853 -0.279408 0.404409
+vn -0.981315 0.192409 0.000010
+vn -0.962459 -0.271428 0.000063
+vn -0.690600 0.133640 0.710783
+vn -0.626535 -0.235880 0.742843
+vn -0.905520 0.176963 0.385640
+vn -0.870853 -0.279408 0.404409
+vn -0.370646 0.070916 0.926063
+vn -0.304083 -0.125352 0.944363
+vn -0.690600 0.133640 0.710783
+vn -0.626535 -0.235880 0.742843
+vn -0.370646 0.070916 0.926063
+vn 0.005281 0.000112 0.999986
+vn -0.304083 -0.125352 0.944363
+vn 0.036596 0.014773 0.999221
+vn 0.005281 0.000112 0.999986
+vn 0.380481 -0.067473 0.922324
+vn 0.036596 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.380481 -0.067473 0.922324
+vn 0.698382 -0.122446 0.705174
+vn 0.361329 0.159371 0.918718
+vn 0.640944 0.289611 0.710856
+vn 0.698382 -0.122446 0.705174
+vn 0.910790 -0.158080 0.381409
+vn 0.640944 0.289611 0.710856
+vn 0.836973 0.383317 0.390570
+vn 0.836973 0.383317 0.390570
+vn 0.908498 0.417889 -0.000073
+vn 0.681799 0.637267 0.359224
+vn 0.730615 0.682790 -0.000095
+vn 0.836952 0.383228 -0.390702
+vn 0.681780 0.637186 -0.359402
+vn 0.908498 0.417889 -0.000073
+vn 0.730615 0.682790 -0.000095
+vn 0.640906 0.289455 -0.710953
+vn 0.539219 0.504087 -0.674640
+vn 0.836952 0.383228 -0.390702
+vn 0.681780 0.637186 -0.359402
+vn 0.361276 0.159165 -0.918774
+vn 0.319664 0.298978 -0.899126
+vn 0.640906 0.289455 -0.710953
+vn 0.539219 0.504087 -0.674640
+vn 0.036537 0.014548 -0.999226
+vn 0.052543 0.049041 -0.997414
+vn 0.361276 0.159165 -0.918774
+vn 0.319664 0.298978 -0.899126
+vn -0.304137 -0.125566 -0.944317
+vn -0.226958 -0.213369 -0.950244
+vn 0.036537 0.014548 -0.999226
+vn 0.052543 0.049041 -0.997414
+vn -0.626575 -0.236044 -0.742757
+vn -0.479479 -0.452105 -0.752131
+vn -0.304137 -0.125566 -0.944317
+vn -0.226958 -0.213369 -0.950244
+vn -0.870877 -0.279495 -0.404296
+vn -0.659553 -0.624665 -0.418072
+vn -0.626575 -0.236044 -0.742757
+vn -0.479479 -0.452105 -0.752131
+vn -0.962459 -0.271428 0.000063
+vn -0.710580 -0.674709 -0.199608
+vn -0.870877 -0.279495 -0.404296
+vn -0.659553 -0.624665 -0.418072
+vn -0.962459 -0.271428 0.000063
+vn -0.870853 -0.279408 0.404409
+vn -0.710557 -0.674676 0.199803
+vn -0.659520 -0.624583 0.418246
+vn -0.870853 -0.279408 0.404409
+vn -0.626535 -0.235880 0.742843
+vn -0.659520 -0.624583 0.418246
+vn -0.479433 -0.451939 0.752260
+vn -0.626535 -0.235880 0.742843
+vn -0.304083 -0.125352 0.944363
+vn -0.479433 -0.451939 0.752260
+vn -0.226904 -0.213152 0.950306
+vn -0.304083 -0.125352 0.944363
+vn 0.036596 0.014773 0.999221
+vn -0.226904 -0.213152 0.950306
+vn 0.052599 0.049265 0.997400
+vn 0.036596 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.052599 0.049265 0.997400
+vn 0.319714 0.299179 0.899041
+vn 0.361329 0.159371 0.918718
+vn 0.640944 0.289611 0.710856
+vn 0.319714 0.299179 0.899041
+vn 0.539255 0.504237 0.674499
+vn 0.640944 0.289611 0.710856
+vn 0.836973 0.383317 0.390570
+vn 0.539255 0.504237 0.674499
+vn 0.681799 0.637267 0.359224
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.974990 0.222247 -0.000002
+vn -0.974990 0.222247 -0.000002
+vn -0.974991 0.222244 0.000002
+vn -0.974991 0.222245 0.000002
+vn -0.974990 0.222247 -0.000002
+vn -0.974990 0.222249 -0.000000
+vn -0.974990 0.222247 -0.000002
+vn -0.974990 0.222249 0.000000
+vn -0.974990 0.222249 -0.000000
+vn -0.974989 0.222251 0.000002
+vn -0.974990 0.222249 0.000000
+vn -0.974989 0.222252 0.000002
+vn -0.974989 0.222251 0.000002
+vn -0.974989 0.222251 -0.000002
+vn -0.974989 0.222252 0.000002
+vn -0.974990 0.222251 -0.000002
+vn -0.974989 0.222251 -0.000002
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222251 -0.000002
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222250 0.000004
+vn -0.974990 0.222250 0.000002
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974989 0.222255 0.000009
+vn -0.974989 0.222255 0.000009
+vn -0.974990 0.222250 0.000004
+vn -0.974990 0.222250 0.000002
+vn -0.974988 0.222257 0.000002
+vn -0.974988 0.222257 0.000002
+vn -0.974989 0.222255 0.000009
+vn -0.974989 0.222255 0.000009
+vn -0.974988 0.222257 0.000002
+vn -0.974989 0.222254 -0.000005
+vn -0.974988 0.222257 0.000002
+vn -0.974989 0.222254 -0.000004
+vn -0.974989 0.222254 -0.000005
+vn -0.974989 0.222252 0.000000
+vn -0.974989 0.222254 -0.000004
+vn -0.974989 0.222251 0.000001
+vn -0.974989 0.222252 0.000000
+vn -0.974989 0.222251 0.000002
+vn -0.974989 0.222251 0.000001
+vn -0.974989 0.222252 0.000001
+vn -0.974989 0.222251 0.000002
+vn -0.974990 0.222250 -0.000005
+vn -0.974989 0.222252 0.000001
+vn -0.974990 0.222250 -0.000005
+vn -0.974991 0.222246 -0.000001
+vn -0.974991 0.222246 -0.000002
+vn -0.974990 0.222250 -0.000005
+vn -0.974990 0.222250 -0.000005
+vn -0.974991 0.222246 0.000005
+vn -0.974991 0.222246 0.000005
+vn -0.974991 0.222246 -0.000001
+vn -0.974991 0.222246 -0.000002
+vn -0.974991 0.222244 0.000002
+vn -0.974991 0.222245 0.000002
+vn -0.974991 0.222246 0.000005
+vn -0.974991 0.222246 0.000005
+vn -0.734613 -0.678486 0.000100
+vn -0.911179 -0.412010 0.000076
+vn -0.684652 -0.622670 -0.378859
+vn -0.829660 -0.370159 -0.417907
+vn -0.734613 -0.678486 0.000100
+vn -0.684630 -0.622585 0.379038
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.684630 -0.622585 0.379038
+vn -0.546354 -0.467483 0.694951
+vn -0.829637 -0.370064 0.418038
+vn -0.623330 -0.263638 0.736176
+vn -0.546354 -0.467483 0.694951
+vn -0.349228 -0.245525 0.904299
+vn -0.623330 -0.263638 0.736176
+vn -0.359222 -0.127385 0.924518
+vn -0.349228 -0.245525 0.904299
+vn -0.122325 0.009429 0.992445
+vn -0.359222 -0.127385 0.924518
+vn -0.073926 0.016450 0.997128
+vn -0.122325 0.009429 0.992445
+vn 0.116798 0.272222 0.955120
+vn -0.073926 0.016450 0.997128
+vn 0.227275 0.156256 0.961213
+vn 0.116798 0.272222 0.955120
+vn 0.355263 0.516094 0.779382
+vn 0.227275 0.156256 0.961213
+vn 0.541781 0.275096 0.794226
+vn 0.355263 0.516094 0.779382
+vn 0.560754 0.695191 0.449738
+vn 0.541781 0.275096 0.794226
+vn 0.818285 0.342764 0.461435
+vn 0.560754 0.695191 0.449738
+vn 0.650227 0.759740 -0.000106
+vn 0.818285 0.342764 0.461435
+vn 0.934037 0.357177 -0.000069
+vn 0.560735 0.695086 -0.449923
+vn 0.818264 0.342659 -0.461550
+vn 0.650227 0.759740 -0.000106
+vn 0.934037 0.357177 -0.000069
+vn 0.355223 0.515917 -0.779517
+vn 0.541738 0.274919 -0.794317
+vn 0.560735 0.695086 -0.449923
+vn 0.818264 0.342659 -0.461550
+vn 0.116742 0.272007 -0.955188
+vn 0.227216 0.156040 -0.961262
+vn 0.355223 0.515917 -0.779517
+vn 0.541738 0.274919 -0.794317
+vn -0.122383 0.009208 -0.992440
+vn -0.073985 0.016229 -0.997127
+vn 0.116742 0.272007 -0.955188
+vn 0.227216 0.156040 -0.961262
+vn -0.349280 -0.245726 -0.904225
+vn -0.359273 -0.127590 -0.924469
+vn -0.122383 0.009208 -0.992440
+vn -0.073985 0.016229 -0.997127
+vn -0.546392 -0.467635 -0.694818
+vn -0.623371 -0.263799 -0.736084
+vn -0.349280 -0.245726 -0.904225
+vn -0.359273 -0.127590 -0.924469
+vn -0.684652 -0.622670 -0.378859
+vn -0.829660 -0.370159 -0.417907
+vn -0.546392 -0.467635 -0.694818
+vn -0.623371 -0.263799 -0.736084
+vn -0.911179 -0.412010 0.000076
+vn -0.990921 0.134443 0.000015
+vn -0.829660 -0.370159 -0.417907
+vn -0.898998 0.122431 -0.420491
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.990921 0.134443 0.000015
+vn -0.898975 0.122523 0.420515
+vn -0.829637 -0.370064 0.418038
+vn -0.623330 -0.263638 0.736176
+vn -0.898975 0.122523 0.420515
+vn -0.661034 0.091256 0.744786
+vn -0.623330 -0.263638 0.736176
+vn -0.359222 -0.127385 0.924518
+vn -0.661034 0.091256 0.744786
+vn -0.347830 0.048815 0.936286
+vn -0.359222 -0.127385 0.924518
+vn -0.073926 0.016450 0.997128
+vn -0.347830 0.048815 0.936286
+vn -0.008730 0.000347 0.999962
+vn -0.073926 0.016450 0.997128
+vn 0.227275 0.156256 0.961213
+vn -0.008730 0.000347 0.999962
+vn 0.331405 -0.051587 0.942077
+vn 0.227275 0.156256 0.961213
+vn 0.541781 0.275096 0.794226
+vn 0.331405 -0.051587 0.942077
+vn 0.648541 -0.102868 0.754197
+vn 0.541781 0.275096 0.794226
+vn 0.818285 0.342764 0.461435
+vn 0.648541 -0.102868 0.754197
+vn 0.892390 -0.143571 0.427816
+vn 0.818285 0.342764 0.461435
+vn 0.934037 0.357177 -0.000069
+vn 0.892390 -0.143571 0.427816
+vn 0.987188 -0.159563 -0.000011
+vn 0.818264 0.342659 -0.461550
+vn 0.892368 -0.143667 -0.427830
+vn 0.934037 0.357177 -0.000069
+vn 0.987188 -0.159563 -0.000011
+vn 0.541738 0.274919 -0.794317
+vn 0.648499 -0.103035 -0.754210
+vn 0.818264 0.342659 -0.461550
+vn 0.892368 -0.143667 -0.427830
+vn 0.227216 0.156040 -0.961262
+vn 0.331348 -0.051796 -0.942086
+vn 0.541738 0.274919 -0.794317
+vn 0.648499 -0.103035 -0.754210
+vn -0.073985 0.016229 -0.997127
+vn -0.008791 0.000125 -0.999961
+vn 0.227216 0.156040 -0.961262
+vn 0.331348 -0.051796 -0.942086
+vn -0.359273 -0.127590 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.073985 0.016229 -0.997127
+vn -0.008791 0.000125 -0.999961
+vn -0.623371 -0.263799 -0.736084
+vn -0.661076 0.091091 -0.744769
+vn -0.359273 -0.127590 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.829660 -0.370159 -0.417907
+vn -0.898998 0.122431 -0.420491
+vn -0.623371 -0.263799 -0.736084
+vn -0.661076 0.091091 -0.744769
+vn -0.898998 0.122431 -0.420491
+vn -0.990921 0.134443 0.000015
+vn -0.882926 0.201214 -0.424210
+vn -0.974990 0.222248 0.000002
+vn -0.990921 0.134443 0.000015
+vn -0.898975 0.122523 0.420515
+vn -0.974990 0.222248 0.000002
+vn -0.882902 0.201307 0.424216
+vn -0.898975 0.122523 0.420515
+vn -0.661034 0.091256 0.744786
+vn -0.882902 0.201307 0.424216
+vn -0.645795 0.147297 0.749168
+vn -0.661034 0.091256 0.744786
+vn -0.347830 0.048815 0.936286
+vn -0.645795 0.147297 0.749168
+vn -0.335176 0.076515 0.939043
+vn -0.347830 0.048815 0.936286
+vn -0.008730 0.000347 0.999962
+vn -0.335176 0.076515 0.939043
+vn 0.000408 0.000026 1.000000
+vn -0.008730 0.000347 0.999962
+vn 0.331405 -0.051587 0.942077
+vn 0.000408 0.000026 1.000000
+vn 0.336309 -0.076551 0.938635
+vn 0.331405 -0.051587 0.942077
+vn 0.648541 -0.102868 0.754197
+vn 0.336309 -0.076551 0.938635
+vn 0.647501 -0.147510 0.747652
+vn 0.648541 -0.102868 0.754197
+vn 0.892390 -0.143571 0.427816
+vn 0.647501 -0.147510 0.747652
+vn 0.884005 -0.201459 0.421840
+vn 0.892390 -0.143571 0.427816
+vn 0.987188 -0.159563 -0.000011
+vn 0.884005 -0.201459 0.421840
+vn 0.974990 -0.222249 0.000000
+vn 0.987188 -0.159563 -0.000011
+vn 0.892368 -0.143667 -0.427830
+vn 0.974990 -0.222249 0.000000
+vn 0.883981 -0.201553 -0.421845
+vn 0.648499 -0.103035 -0.754210
+vn 0.647461 -0.147676 -0.747654
+vn 0.892368 -0.143667 -0.427830
+vn 0.883981 -0.201553 -0.421845
+vn 0.331348 -0.051796 -0.942086
+vn 0.336252 -0.076759 -0.938639
+vn 0.648499 -0.103035 -0.754210
+vn 0.647461 -0.147676 -0.747654
+vn -0.008791 0.000125 -0.999961
+vn 0.000347 -0.000197 -1.000000
+vn 0.331348 -0.051796 -0.942086
+vn 0.336252 -0.076759 -0.938639
+vn -0.347879 0.048607 -0.936279
+vn -0.335227 0.076305 -0.939042
+vn -0.008791 0.000125 -0.999961
+vn 0.000347 -0.000197 -1.000000
+vn -0.661076 0.091091 -0.744769
+vn -0.645838 0.147131 -0.749163
+vn -0.347879 0.048607 -0.936279
+vn -0.335227 0.076305 -0.939042
+vn -0.898998 0.122431 -0.420491
+vn -0.882926 0.201214 -0.424210
+vn -0.661076 0.091091 -0.744769
+vn -0.645838 0.147131 -0.749163
+vn 0.900923 -0.205323 0.382335
+vn 0.689910 -0.157182 0.706625
+vn 0.900784 -0.205292 0.382680
+vn 0.689444 -0.157075 0.707103
+vn 0.689910 -0.157182 0.706625
+vn 0.373927 -0.085130 0.923543
+vn 0.689444 -0.157075 0.707103
+vn 0.373141 -0.084951 0.923877
+vn 0.373927 -0.085130 0.923543
+vn 0.000942 -0.000099 1.000000
+vn 0.373141 -0.084951 0.923877
+vn 0.000024 0.000110 1.000000
+vn 0.000942 -0.000099 1.000000
+vn -0.372313 0.084977 0.924209
+vn 0.000024 0.000110 1.000000
+vn -0.373089 0.085154 0.923879
+vn -0.372313 0.084977 0.924209
+vn -0.688949 0.157134 0.707572
+vn -0.373089 0.085154 0.923879
+vn -0.689400 0.157237 0.707110
+vn -0.688949 0.157134 0.707572
+vn -0.900630 0.205355 0.383008
+vn -0.689400 0.157237 0.707110
+vn -0.900758 0.205385 0.382690
+vn -0.900630 0.205355 0.383008
+vn -0.974988 0.222259 -0.000014
+vn -0.900758 0.205385 0.382690
+vn -0.974988 0.222259 0.000003
+vn -0.900643 0.205260 -0.383028
+vn -0.900783 0.205292 -0.382681
+vn -0.974988 0.222259 -0.000014
+vn -0.974988 0.222259 0.000003
+vn -0.688977 0.156969 -0.707582
+vn -0.689444 0.157076 -0.707103
+vn -0.900643 0.205260 -0.383028
+vn -0.900783 0.205292 -0.382681
+vn -0.372352 0.084771 -0.924212
+vn -0.373143 0.084951 -0.923876
+vn -0.688977 0.156969 -0.707582
+vn -0.689444 0.157076 -0.707103
+vn 0.000892 -0.000317 -1.000000
+vn -0.000024 -0.000108 -1.000000
+vn -0.372352 0.084771 -0.924212
+vn -0.373143 0.084951 -0.923876
+vn 0.373865 -0.085322 -0.923550
+vn 0.373092 -0.085145 -0.923879
+vn 0.000892 -0.000317 -1.000000
+vn -0.000024 -0.000108 -1.000000
+vn 0.689854 -0.157325 -0.706648
+vn 0.689404 -0.157223 -0.707109
+vn 0.373865 -0.085322 -0.923550
+vn 0.373092 -0.085145 -0.923879
+vn 0.900891 -0.205402 -0.382368
+vn 0.900764 -0.205373 -0.382684
+vn 0.689854 -0.157325 -0.706648
+vn 0.689404 -0.157223 -0.707109
+vn 0.900891 -0.205402 -0.382368
+vn 0.974989 -0.222254 -0.000019
+vn 0.900764 -0.205373 -0.382684
+vn 0.974989 -0.222254 -0.000004
+vn 0.974989 -0.222254 -0.000019
+vn 0.900923 -0.205323 0.382335
+vn 0.974989 -0.222254 -0.000004
+vn 0.900784 -0.205292 0.382680
+vn 0.488658 0.841754 0.229485
+vn 0.488658 0.841754 0.229485
+vn 0.488658 0.841754 0.229485
+vn 0.488658 0.841754 0.229485
+vn -0.488624 -0.841775 -0.229480
+vn -0.488624 -0.841775 -0.229480
+vn -0.488624 -0.841775 -0.229480
+vn -0.488624 -0.841775 -0.229480
+vn 0.488636 0.841708 -0.229700
+vn 0.488636 0.841708 -0.229700
+vn 0.488636 0.841708 -0.229700
+vn 0.488636 0.841708 -0.229700
+vn -0.488612 -0.841721 0.229704
+vn -0.488612 -0.841721 0.229704
+vn -0.488612 -0.841721 0.229704
+vn -0.488612 -0.841721 0.229704
+vn 0.393470 0.677774 -0.621131
+vn 0.393470 0.677774 -0.621131
+vn 0.393470 0.677774 -0.621131
+vn 0.393471 0.677774 -0.621131
+vn -0.393477 -0.677766 0.621136
+vn -0.393477 -0.677766 0.621136
+vn -0.393477 -0.677765 0.621136
+vn -0.393477 -0.677765 0.621136
+vn 0.246427 0.424478 -0.871259
+vn 0.246427 0.424478 -0.871259
+vn 0.246427 0.424478 -0.871259
+vn 0.246427 0.424478 -0.871259
+vn -0.246468 -0.424469 0.871252
+vn -0.246468 -0.424469 0.871252
+vn -0.246468 -0.424469 0.871252
+vn -0.246468 -0.424469 0.871252
+vn 0.083023 0.143018 -0.986232
+vn 0.083023 0.143018 -0.986232
+vn 0.083023 0.143018 -0.986232
+vn 0.083023 0.143018 -0.986232
+vn -0.083073 -0.143010 0.986229
+vn -0.083073 -0.143010 0.986229
+vn -0.083073 -0.143010 0.986229
+vn -0.083073 -0.143010 0.986229
+vn -0.083188 -0.143302 -0.986177
+vn -0.083188 -0.143302 -0.986177
+vn -0.083188 -0.143302 -0.986177
+vn -0.083188 -0.143302 -0.986177
+vn 0.083145 0.143319 0.986178
+vn 0.083145 0.143319 0.986178
+vn 0.083145 0.143319 0.986178
+vn 0.083145 0.143319 0.986178
+vn -0.246900 -0.425376 -0.870687
+vn -0.246900 -0.425376 -0.870687
+vn -0.246900 -0.425376 -0.870687
+vn -0.246900 -0.425376 -0.870687
+vn 0.246878 0.425376 0.870693
+vn 0.246878 0.425376 0.870693
+vn 0.246878 0.425376 0.870693
+vn 0.246878 0.425376 0.870693
+vn -0.394247 -0.679199 -0.619078
+vn -0.394247 -0.679199 -0.619078
+vn -0.394247 -0.679199 -0.619078
+vn -0.394247 -0.679199 -0.619078
+vn 0.394261 0.679202 0.619067
+vn 0.394261 0.679202 0.619067
+vn 0.394261 0.679202 0.619067
+vn 0.394261 0.679202 0.619067
+vn -0.488861 -0.842121 -0.227700
+vn -0.488861 -0.842121 -0.227700
+vn -0.488861 -0.842121 -0.227700
+vn -0.488861 -0.842121 -0.227700
+vn 0.488850 0.842128 0.227698
+vn 0.488850 0.842128 0.227698
+vn 0.488850 0.842128 0.227698
+vn 0.488850 0.842128 0.227698
+vn -0.488848 -0.842070 0.227918
+vn -0.488848 -0.842070 0.227918
+vn -0.488848 -0.842070 0.227918
+vn -0.488848 -0.842070 0.227918
+vn 0.488822 0.842084 -0.227919
+vn 0.488822 0.842084 -0.227919
+vn 0.488822 0.842084 -0.227919
+vn 0.488822 0.842084 -0.227919
+vn -0.394240 -0.679052 0.619245
+vn -0.394240 -0.679052 0.619245
+vn -0.394240 -0.679052 0.619245
+vn -0.394240 -0.679052 0.619245
+vn 0.394203 0.679068 -0.619250
+vn 0.394203 0.679068 -0.619250
+vn 0.394203 0.679068 -0.619250
+vn 0.394203 0.679068 -0.619250
+vn -0.246840 -0.425180 0.870800
+vn -0.246840 -0.425180 0.870800
+vn -0.246840 -0.425180 0.870800
+vn -0.246840 -0.425180 0.870800
+vn 0.246856 0.425175 -0.870798
+vn 0.246856 0.425175 -0.870798
+vn 0.246856 0.425175 -0.870798
+vn 0.246856 0.425175 -0.870798
+vn -0.083066 -0.143100 0.986216
+vn -0.083066 -0.143100 0.986216
+vn -0.083066 -0.143100 0.986216
+vn -0.083066 -0.143100 0.986216
+vn 0.083119 0.143093 -0.986213
+vn 0.083119 0.143093 -0.986213
+vn 0.083119 0.143093 -0.986213
+vn 0.083119 0.143093 -0.986213
+vn 0.083138 0.143222 0.986192
+vn 0.083138 0.143222 0.986192
+vn 0.083138 0.143222 0.986192
+vn 0.083138 0.143222 0.986192
+vn -0.083095 -0.143236 -0.986194
+vn -0.083095 -0.143236 -0.986194
+vn -0.083095 -0.143236 -0.986194
+vn -0.083095 -0.143236 -0.986194
+vn 0.246496 0.424673 0.871144
+vn 0.246496 0.424673 0.871144
+vn 0.246496 0.424673 0.871144
+vn 0.246496 0.424673 0.871144
+vn -0.246479 -0.424678 -0.871147
+vn -0.246479 -0.424678 -0.871147
+vn -0.246479 -0.424678 -0.871147
+vn -0.246479 -0.424678 -0.871147
+vn 0.393502 0.677908 0.620965
+vn 0.393502 0.677908 0.620965
+vn 0.393502 0.677908 0.620965
+vn 0.393502 0.677908 0.620965
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.900784 0.205289 -0.382680
+vn -0.689443 0.157076 -0.707104
+vn -0.900784 0.205289 -0.382680
+vn -0.689443 0.157076 -0.707103
+vn -0.689443 0.157076 -0.707104
+vn -0.373141 0.084950 -0.923877
+vn -0.689443 0.157076 -0.707103
+vn -0.373140 0.084950 -0.923878
+vn -0.373141 0.084950 -0.923877
+vn -0.000029 -0.000110 -1.000000
+vn -0.373140 0.084950 -0.923878
+vn -0.000029 -0.000110 -1.000000
+vn -0.000029 -0.000110 -1.000000
+vn 0.373087 -0.085153 -0.923880
+vn -0.000029 -0.000110 -1.000000
+vn 0.373087 -0.085153 -0.923881
+vn 0.373087 -0.085153 -0.923880
+vn 0.689403 -0.157232 -0.707108
+vn 0.373087 -0.085153 -0.923881
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn 0.900762 -0.205374 -0.382687
+vn 0.689403 -0.157232 -0.707108
+vn 0.900762 -0.205374 -0.382686
+vn 0.900762 -0.205374 -0.382687
+vn 0.974990 -0.222249 -0.000005
+vn 0.900762 -0.205374 -0.382686
+vn 0.974990 -0.222249 -0.000005
+vn 0.974990 -0.222249 -0.000005
+vn 0.900785 -0.205288 0.382680
+vn 0.974990 -0.222249 -0.000005
+vn 0.900785 -0.205288 0.382679
+vn 0.900785 -0.205288 0.382680
+vn 0.689443 -0.157075 0.707104
+vn 0.900785 -0.205288 0.382679
+vn 0.689442 -0.157075 0.707105
+vn 0.689443 -0.157075 0.707104
+vn 0.373138 -0.084948 0.923879
+vn 0.689442 -0.157075 0.707105
+vn 0.373139 -0.084948 0.923878
+vn 0.373138 -0.084948 0.923879
+vn 0.000027 0.000112 1.000000
+vn 0.373139 -0.084948 0.923878
+vn 0.000027 0.000112 1.000000
+vn 0.000027 0.000112 1.000000
+vn -0.373086 0.085155 0.923881
+vn 0.000027 0.000112 1.000000
+vn -0.373086 0.085155 0.923881
+vn -0.373086 0.085155 0.923881
+vn -0.689401 0.157233 0.707109
+vn -0.373086 0.085155 0.923881
+vn -0.689402 0.157233 0.707109
+vn -0.689401 0.157233 0.707109
+vn -0.900763 0.205374 0.382685
+vn -0.689402 0.157233 0.707109
+vn -0.900763 0.205374 0.382686
+vn -0.900763 0.205374 0.382685
+vn -0.974990 0.222248 0.000002
+vn -0.900763 0.205374 0.382686
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222248 0.000002
+vn -0.900784 0.205289 -0.382680
+vn -0.974990 0.222248 0.000002
+vn -0.900784 0.205289 -0.382680
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+s 1
+g group5
+usemtl lambert3SG
+f 25/1/1 23/2/2 2/4/3
+f 2/4/3 23/2/2 4/3/4
+s 2
+f 6/5/5 9/6/6 3/9/7
+f 9/6/6 12/7/8 3/9/7
+f 12/7/8 13/8/9 3/9/7
+s 3
+f 28/14/10 16/15/11 38/13/12
+f 16/15/11 26/16/13 38/13/12
+f 38/13/12 26/16/13 40/12/14
+f 26/16/13 1/17/15 40/12/14
+f 40/12/14 1/17/15 69/11/16
+f 15/10/17 69/11/16 1/17/15
+s 4
+f 32/20/18 35/21/19 20/19/20
+f 20/19/20 35/21/19 22/18/21
+f 35/21/19 50/22/22 22/18/21
+f 22/18/21 50/22/22 5/25/23
+f 50/22/22 52/23/24 5/25/23
+f 52/23/24 7/24/25 5/25/23
+s 5
+f 56/26/26 76/27/27 8/29/28
+f 8/29/28 76/27/27 10/28/29
+s 6
+f 70/31/30 14/32/31 75/30/32
+f 75/30/32 14/32/31 11/33/33
+s 7
+f 11/33/34 10/28/35 75/30/36
+f 75/30/36 10/28/35 76/27/37
+s 8
+f 30/34/38 33/35/39 17/37/40
+f 17/37/40 33/35/39 19/36/41
+s 9
+f 21/38/42 24/39/43 18/41/44
+f 18/41/44 24/39/43 27/40/45
+s 10
+f 37/42/46 36/43/47 29/45/48
+f 29/45/48 36/43/47 31/44/49
+s 11
+f 39/46/50 42/47/51 34/51/52
+f 34/51/52 42/47/51 51/50/53
+f 42/47/51 43/48/54 51/50/53
+f 43/48/54 48/49/55 51/50/53
+s 12
+f 68/52/56 67/53/57 41/55/58
+f 41/55/58 67/53/57 44/54/59
+s 13
+f 66/56/60 63/57/61 45/60/62
+f 45/60/62 63/57/61 46/59/63
+f 63/57/61 59/58/64 46/59/63
+s 14
+f 53/62/65 49/63/66 58/61/67
+f 58/61/67 49/63/66 47/64/68
+s 15
+f 57/65/69 90/66/70 54/68/71
+f 54/68/71 90/66/70 85/67/72
+s 16
+f 87/69/73 79/70/74 55/72/75
+f 55/72/75 79/70/74 73/71/76
+s 17
+f 62/73/77 84/74/78 60/76/79
+f 60/76/79 84/74/78 88/75/80
+s 18
+f 65/77/81 96/78/82 61/80/83
+f 61/80/83 96/78/82 81/79/84
+s 19
+f 62/73/85 61/80/86 84/74/87
+f 84/74/87 61/80/86 81/79/88
+s 20
+f 72/81/89 92/82/90 64/84/91
+f 64/84/91 92/82/90 94/83/92
+s 21
+f 74/85/93 78/86/94 71/88/95
+f 71/88/95 78/86/94 93/87/96
+s 22
+f 86/89/97 89/90/98 80/92/99
+f 80/92/99 89/90/98 83/91/100
+s 23
+f 82/93/101 95/94/102 77/96/103
+f 77/96/103 95/94/102 91/95/104
+s 24
+f 77/96/105 80/92/106 82/93/107
+f 82/93/107 80/92/106 83/91/108
+s 25
+f 2/4/109 1/97/110 25/1/111
+f 25/1/111 1/97/110 26/98/112
+s 26
+f 3/99/113 2/4/114 6/100/115
+f 6/100/115 2/4/114 4/3/116
+s 27
+f 1/101/117 3/9/118 15/102/119
+f 15/102/119 3/9/118 13/8/120
+s 28
+f 4/3/121 23/2/122 5/103/123
+f 5/103/123 23/2/122 22/104/124
+s 29
+f 5/105/125 7/106/126 6/5/127
+f 6/5/127 7/106/126 9/6/128
+s 30
+f 8/107/129 7/24/130 56/108/131
+f 56/108/131 7/24/130 52/23/132
+s 31
+f 8/109/133 10/110/134 9/6/135
+f 9/6/135 10/110/134 12/7/136
+s 32
+f 12/7/137 11/111/138 13/8/139
+f 13/8/139 11/111/138 14/112/140
+s off
+f 10/110/141 11/111/142 12/7/143
+s 33
+f 14/113/144 70/114/145 15/10/146
+f 15/10/146 70/114/145 69/11/147
+s 34
+f 16/15/148 28/14/149 17/115/150
+f 17/115/150 28/14/149 30/116/151
+s 35
+f 18/117/152 17/37/153 21/118/154
+f 21/118/154 17/37/153 19/36/155
+s 36
+f 18/119/156 27/120/157 16/15/158
+f 16/15/158 27/120/157 26/16/159
+s 37
+f 20/19/160 19/121/161 32/20/162
+f 32/20/162 19/121/161 33/122/163
+s 38
+f 21/123/164 20/19/165 24/124/166
+f 24/124/166 20/19/165 22/18/167
+s 39
+f 24/125/168 23/2/169 27/126/170
+f 27/126/170 23/2/169 25/1/171
+s 40
+f 29/127/172 28/14/173 37/128/174
+f 37/128/174 28/14/173 38/13/175
+s 41
+f 30/34/176 29/129/177 33/35/178
+f 33/35/178 29/129/177 31/130/179
+s 42
+f 31/131/180 36/132/181 32/20/182
+f 32/20/182 36/132/181 35/21/183
+s 43
+f 35/21/184 34/133/185 50/22/186
+f 50/22/186 34/133/185 51/134/187
+s 44
+f 34/135/188 36/43/189 39/136/190
+f 39/136/190 36/43/189 37/42/191
+s 45
+f 38/13/192 40/12/193 39/137/194
+f 39/137/194 40/12/193 42/138/195
+s 46
+f 41/55/196 40/12/197 68/52/198
+f 68/52/198 40/12/197 69/11/199
+s 47
+f 42/138/200 41/55/201 43/139/202
+f 43/139/202 41/55/201 44/54/203
+s 48
+f 45/140/204 44/54/205 66/141/206
+f 66/141/206 44/54/205 67/53/207
+s 49
+f 43/48/208 45/142/209 48/49/210
+f 48/49/210 45/142/209 46/143/211
+s 50
+f 46/144/212 59/145/213 47/64/214
+f 47/64/214 59/145/213 58/61/215
+s 51
+f 47/64/216 49/63/217 48/146/218
+f 48/146/218 49/63/217 51/134/219
+s 52
+f 50/22/220 49/63/221 52/23/222
+f 52/23/222 49/63/221 53/62/223
+s 53
+f 54/68/224 53/62/225 57/65/226
+f 57/65/226 53/62/225 58/61/227
+s 54
+f 55/147/228 54/68/229 87/148/230
+f 87/148/230 54/68/229 85/67/231
+s 55
+f 55/149/232 73/150/233 56/26/234
+f 56/26/234 73/150/233 76/27/235
+s 56
+f 60/76/236 59/58/237 62/73/238
+f 62/73/238 59/58/237 63/57/239
+s off
+f 61/80/240 62/73/241 63/57/242
+s 57
+f 57/65/243 60/151/244 90/66/245
+f 90/66/245 60/151/244 88/152/246
+s 58
+f 63/57/247 66/56/248 61/80/249
+f 61/80/249 66/56/248 65/77/250
+s 59
+f 65/153/251 64/84/252 96/154/253
+f 96/154/253 64/84/252 94/83/254
+s 60
+f 67/53/255 68/52/256 64/84/257
+f 64/84/257 68/52/256 72/81/258
+s 61
+f 71/155/259 70/31/260 74/156/261
+f 74/156/261 70/31/260 75/30/262
+s 62
+f 72/81/263 71/157/264 92/82/265
+f 92/82/265 71/157/264 93/158/266
+s 63
+f 74/85/267 73/71/268 78/86/269
+f 78/86/269 73/71/268 79/70/270
+s 64
+f 77/159/271 91/160/272 78/86/273
+f 78/86/273 91/160/272 93/87/274
+s 65
+f 80/161/275 79/70/276 86/162/277
+f 86/162/277 79/70/276 87/69/278
+s 66
+f 81/79/279 96/78/280 82/163/281
+f 82/163/281 96/78/280 95/164/282
+s 67
+f 84/74/283 83/165/284 88/75/285
+f 88/75/285 83/165/284 89/166/286
+s 68
+f 81/79/287 82/163/288 84/74/289
+f 84/74/289 82/163/288 83/165/290
+s 69
+f 85/67/291 90/66/292 86/167/293
+f 86/167/293 90/66/292 89/168/294
+s 70
+f 92/82/295 91/169/296 94/83/297
+f 94/83/297 91/169/296 95/170/298
+s off
+f 1/171/299 2/172/300 3/173/301
+f 4/174/302 5/175/303 6/176/304
+f 7/106/305 8/109/306 9/6/307
+f 13/8/308 14/112/309 15/102/310
+f 16/15/311 17/115/312 18/119/313
+f 19/121/314 20/19/315 21/123/316
+f 22/18/317 23/177/318 24/124/319
+f 25/178/320 26/16/321 27/120/322
+f 28/14/323 29/127/324 30/116/325
+f 31/131/326 32/20/327 33/122/328
+f 34/133/329 35/21/330 36/132/331
+f 37/128/332 38/13/333 39/137/334
+f 40/12/335 41/55/336 42/138/337
+f 43/48/338 44/179/339 45/142/340
+f 46/143/341 47/180/342 48/49/343
+f 49/63/344 50/22/345 51/134/346
+s 71
+f 54/68/347 55/147/348 53/62/349
+f 53/62/349 55/147/348 52/23/350
+f 52/23/350 55/147/348 56/108/351
+s 72
+f 57/65/352 58/61/353 60/151/354
+f 60/151/354 58/61/353 59/145/355
+s 73
+f 64/84/356 65/153/357 67/53/358
+f 67/53/358 65/153/357 66/141/359
+s 74
+f 72/81/360 68/52/361 71/157/362
+f 68/52/361 69/11/363 71/157/362
+f 69/11/363 70/114/364 71/157/362
+s 75
+f 73/150/365 74/156/366 76/27/367
+f 76/27/367 74/156/366 75/30/368
+s 76
+f 77/159/369 78/86/370 80/161/371
+f 80/161/371 78/86/370 79/70/372
+s off
+f 85/67/373 86/167/374 87/148/375
+f 88/75/376 89/166/377 90/181/378
+f 91/169/379 92/82/380 93/158/381
+f 94/182/382 95/164/383 96/78/384
+s 77
+f 119/184/385 100/185/386 115/183/387
+f 115/183/387 100/185/386 98/186/388
+s 78
+f 102/187/389 108/188/390 99/190/391
+f 99/190/391 108/188/390 105/189/392
+s 79
+f 104/191/393 110/192/394 97/194/395
+f 97/194/395 110/192/394 116/193/396
+s 80
+f 118/195/397 112/196/398 101/198/399
+f 101/198/399 112/196/398 106/197/400
+s 81
+f 107/199/401 114/200/402 103/202/403
+f 103/202/403 114/200/402 111/201/404
+s 82
+f 120/204/405 117/205/406 113/203/407
+f 113/203/407 117/205/406 109/206/408
+s 83
+f 98/186/409 97/207/410 115/183/411
+f 115/183/411 97/207/410 116/208/412
+s 84
+f 99/209/413 98/186/414 102/210/415
+f 102/210/415 98/186/414 100/185/416
+s 85
+f 97/211/417 99/190/418 104/212/419
+f 104/212/419 99/190/418 105/189/420
+s 86
+f 101/213/421 100/185/422 118/214/423
+f 118/214/423 100/185/422 119/184/424
+s 87
+f 101/215/425 106/216/426 102/187/427
+f 102/187/427 106/216/426 108/188/428
+s 88
+f 104/191/429 103/217/430 110/192/431
+f 110/192/431 103/217/430 111/218/432
+s 89
+f 103/219/433 105/189/434 107/220/435
+f 107/220/435 105/189/434 108/188/436
+s 90
+f 107/221/437 106/197/438 114/222/439
+f 114/222/439 106/197/438 112/196/440
+s 91
+f 109/223/441 117/224/442 110/192/443
+f 110/192/443 117/224/442 116/193/444
+s 92
+f 111/201/445 114/200/446 109/225/447
+f 109/225/447 114/200/446 113/226/448
+s 93
+f 113/227/449 112/196/450 120/228/451
+f 120/228/451 112/196/450 118/195/452
+s 94
+f 117/229/453 120/230/454 115/183/455
+f 115/183/455 120/230/454 119/184/456
+s off
+f 97/207/457 98/186/458 99/209/459
+f 100/231/460 101/215/461 102/187/462
+f 103/219/463 104/212/464 105/189/465
+f 106/216/466 107/220/467 108/188/468
+f 109/223/469 110/192/470 111/218/471
+f 112/196/472 113/227/473 114/222/474
+f 115/183/475 116/208/476 117/229/477
+f 118/195/478 119/232/479 120/228/480
+s 95
+f 139/233/481 143/234/482 122/236/483
+f 122/236/483 143/234/482 124/235/484
+s 96
+f 132/238/485 129/239/486 126/237/487
+f 126/237/487 129/239/486 123/240/488
+s 97
+f 128/241/489 134/242/490 121/244/491
+f 121/244/491 134/242/490 140/243/492
+s 98
+f 142/245/493 136/246/494 125/248/495
+f 125/248/495 136/246/494 130/247/496
+s 99
+f 131/249/497 138/250/498 127/252/499
+f 127/252/499 138/250/498 135/251/500
+s 100
+f 137/253/501 144/254/502 133/256/503
+f 133/256/503 144/254/502 141/255/504
+s 101
+f 122/236/505 121/257/506 139/233/507
+f 139/233/507 121/257/506 140/258/508
+s 102
+f 122/236/509 124/235/510 123/259/511
+f 123/259/511 124/235/510 126/260/512
+s 103
+f 121/261/513 123/240/514 128/262/515
+f 128/262/515 123/240/514 129/239/516
+s 104
+f 125/263/517 124/235/518 142/264/519
+f 142/264/519 124/235/518 143/234/520
+s 105
+f 126/237/521 125/265/522 132/238/523
+f 132/238/523 125/265/522 130/266/524
+s 106
+f 128/241/525 127/267/526 134/242/527
+f 134/242/527 127/267/526 135/268/528
+s 107
+f 127/269/529 129/239/530 131/270/531
+f 131/270/531 129/239/530 132/238/532
+s 108
+f 131/271/533 130/247/534 138/272/535
+f 138/272/535 130/247/534 136/246/536
+s 109
+f 134/242/537 133/273/538 140/243/539
+f 140/243/539 133/273/538 141/274/540
+s 110
+f 135/251/541 138/250/542 133/275/543
+f 133/275/543 138/250/542 137/276/544
+s 111
+f 136/246/545 142/245/546 137/277/547
+f 137/277/547 142/245/546 144/278/548
+s 112
+f 139/233/549 141/279/550 143/234/551
+f 143/234/551 141/279/550 144/280/552
+s off
+f 121/257/553 122/236/554 123/259/555
+f 124/235/556 125/263/557 126/260/558
+f 127/269/559 128/262/560 129/239/561
+f 130/266/562 131/270/563 132/238/564
+f 133/273/565 134/242/566 135/268/567
+f 136/246/568 137/277/569 138/272/570
+f 139/233/571 140/258/572 141/279/573
+f 142/264/574 143/234/575 144/280/576
+s 113
+f 145/281/577 146/282/578 161/284/579
+f 161/284/579 146/282/578 162/283/580
+s 114
+f 146/282/581 147/285/582 162/283/583
+f 162/283/583 147/285/582 163/286/584
+s 115
+f 147/285/585 148/287/586 163/286/587
+f 163/286/587 148/287/586 164/288/588
+s 116
+f 148/287/589 149/289/590 164/288/591
+f 164/288/591 149/289/590 165/290/592
+s 117
+f 149/289/593 150/291/594 165/290/595
+f 165/290/595 150/291/594 166/292/596
+s 118
+f 150/291/597 151/293/598 166/292/599
+f 166/292/599 151/293/598 167/294/600
+s 119
+f 151/295/601 152/296/602 167/298/603
+f 167/298/603 152/296/602 168/297/604
+s 120
+f 152/296/605 153/299/606 168/297/607
+f 168/297/607 153/299/606 169/300/608
+s 121
+f 153/299/609 154/301/610 169/300/611
+f 169/300/611 154/301/610 170/302/612
+s 122
+f 154/303/613 155/304/614 170/306/615
+f 170/306/615 155/304/614 171/305/616
+s 123
+f 155/304/617 156/307/618 171/305/619
+f 171/305/619 156/307/618 172/308/620
+s 124
+f 156/307/621 157/309/622 172/308/623
+f 172/308/623 157/309/622 173/310/624
+s 125
+f 157/309/625 158/311/626 173/310/627
+f 173/310/627 158/311/626 174/312/628
+s 126
+f 158/311/629 159/313/630 174/312/631
+f 174/312/631 159/313/630 175/314/632
+s 127
+f 159/315/633 160/316/634 175/318/635
+f 175/318/635 160/316/634 176/317/636
+s 128
+f 160/316/637 145/319/638 176/317/639
+f 176/317/639 145/319/638 161/320/640
+s 129
+f 145/321/641 160/322/642 146/336/643
+f 160/322/642 159/323/644 146/336/643
+f 159/323/644 158/324/645 146/336/643
+f 158/324/645 157/325/646 146/336/643
+f 157/325/646 156/326/647 146/336/643
+f 156/326/647 155/327/648 146/336/643
+f 155/327/648 154/328/649 146/336/643
+f 154/328/649 153/329/650 146/336/643
+f 153/329/650 152/330/651 146/336/643
+f 152/330/651 151/331/652 146/336/643
+f 151/331/652 150/332/653 146/336/643
+f 150/332/653 149/333/654 146/336/643
+f 149/333/654 148/334/655 146/336/643
+f 148/334/655 147/335/656 146/336/643
+s 130
+f 193/337/657 194/338/658 208/352/659
+f 194/338/658 195/339/660 208/352/659
+f 195/339/660 196/340/661 208/352/659
+f 196/340/661 197/341/662 208/352/659
+f 197/341/662 198/342/663 208/352/659
+f 198/342/663 199/343/664 208/352/659
+f 199/343/664 200/344/665 208/352/659
+f 200/344/665 201/345/666 208/352/659
+f 201/345/666 202/346/667 208/352/659
+f 202/346/667 203/347/668 208/352/659
+f 203/347/668 204/348/669 208/352/659
+f 204/348/669 205/349/670 208/352/659
+f 205/349/670 206/350/671 208/352/659
+f 206/350/671 207/351/672 208/352/659
+s 131
+f 161/353/673 162/354/674 177/356/675
+f 177/356/675 162/354/674 178/355/676
+s 132
+f 162/354/677 163/357/678 178/355/679
+f 178/355/679 163/357/678 179/358/680
+s 133
+f 163/357/681 164/359/682 179/358/683
+f 179/358/683 164/359/682 180/360/684
+s 134
+f 164/359/685 165/361/686 180/360/687
+f 180/360/687 165/361/686 181/362/688
+s 135
+f 165/361/689 166/363/690 181/362/691
+f 181/362/691 166/363/690 182/364/692
+s 136
+f 166/363/693 167/365/694 182/364/695
+f 182/364/695 167/365/694 183/366/696
+s 137
+f 167/365/697 168/367/698 183/366/699
+f 183/366/699 168/367/698 184/368/700
+s 138
+f 168/367/701 169/369/702 184/368/703
+f 184/368/703 169/369/702 185/370/704
+s 139
+f 169/369/705 170/371/706 185/370/707
+f 185/370/707 170/371/706 186/372/708
+s 140
+f 170/371/709 171/373/710 186/372/711
+f 186/372/711 171/373/710 187/374/712
+s 141
+f 171/373/713 172/375/714 187/374/715
+f 187/374/715 172/375/714 188/376/716
+s 142
+f 172/375/717 173/377/718 188/376/719
+f 188/376/719 173/377/718 189/378/720
+s 143
+f 173/377/721 174/379/722 189/378/723
+f 189/378/723 174/379/722 190/380/724
+s 144
+f 174/379/725 175/381/726 190/380/727
+f 190/380/727 175/381/726 191/382/728
+s 145
+f 175/381/729 176/383/730 191/382/731
+f 191/382/731 176/383/730 192/384/732
+s 146
+f 176/383/733 161/353/734 192/384/735
+f 192/384/735 161/353/734 177/356/736
+s 147
+f 177/385/737 178/386/738 193/388/739
+f 193/388/739 178/386/738 194/387/740
+s 148
+f 178/386/741 179/389/742 194/387/743
+f 194/387/743 179/389/742 195/390/744
+s 149
+f 179/389/745 180/391/746 195/390/747
+f 195/390/747 180/391/746 196/392/748
+s 150
+f 180/391/749 181/393/750 196/392/751
+f 196/392/751 181/393/750 197/394/752
+s 151
+f 181/393/753 182/395/754 197/394/755
+f 197/394/755 182/395/754 198/396/756
+s 152
+f 182/395/757 183/397/758 198/396/759
+f 198/396/759 183/397/758 199/398/760
+s 153
+f 183/399/761 184/400/762 199/402/763
+f 199/402/763 184/400/762 200/401/764
+s 154
+f 184/400/765 185/403/766 200/401/767
+f 200/401/767 185/403/766 201/404/768
+s 155
+f 185/403/769 186/405/770 201/404/771
+f 201/404/771 186/405/770 202/406/772
+s 156
+f 186/405/773 187/407/774 202/406/775
+f 202/406/775 187/407/774 203/408/776
+s 157
+f 187/409/777 188/410/778 203/412/779
+f 203/412/779 188/410/778 204/411/780
+s 158
+f 188/410/781 189/413/782 204/411/783
+f 204/411/783 189/413/782 205/414/784
+s 159
+f 189/413/785 190/415/786 205/414/787
+f 205/414/787 190/415/786 206/416/788
+s 160
+f 190/415/789 191/417/790 206/416/791
+f 206/416/791 191/417/790 207/418/792
+s 161
+f 191/419/793 192/420/794 207/422/795
+f 207/422/795 192/420/794 208/421/796
+s 162
+f 192/420/797 177/423/798 208/421/799
+f 208/421/799 177/423/798 193/424/800
+s 163
+f 209/425/801 210/426/802 225/428/803
+f 225/428/803 210/426/802 226/427/804
+s 164
+f 210/426/805 211/429/806 226/427/807
+f 226/427/807 211/429/806 227/430/808
+s 165
+f 211/429/809 212/431/810 227/430/811
+f 227/430/811 212/431/810 228/432/812
+s 166
+f 212/431/813 213/433/814 228/432/815
+f 228/432/815 213/433/814 229/434/816
+s 167
+f 213/433/817 214/435/818 229/434/819
+f 229/434/819 214/435/818 230/436/820
+s 168
+f 214/435/821 215/437/822 230/436/823
+f 230/436/823 215/437/822 231/438/824
+s 169
+f 215/439/825 216/440/826 231/442/827
+f 231/442/827 216/440/826 232/441/828
+s 170
+f 216/440/829 217/443/830 232/441/831
+f 232/441/831 217/443/830 233/444/832
+s 171
+f 217/443/833 218/445/834 233/444/835
+f 233/444/835 218/445/834 234/446/836
+s 172
+f 218/445/837 219/447/838 234/446/839
+f 234/446/839 219/447/838 235/448/840
+s 173
+f 219/449/841 220/450/842 235/452/843
+f 235/452/843 220/450/842 236/451/844
+s 174
+f 220/450/845 221/453/846 236/451/847
+f 236/451/847 221/453/846 237/454/848
+s 175
+f 221/453/849 222/455/850 237/454/851
+f 237/454/851 222/455/850 238/456/852
+s 176
+f 222/455/853 223/457/854 238/456/855
+f 238/456/855 223/457/854 239/458/856
+s 177
+f 223/459/857 224/460/858 239/462/859
+f 239/462/859 224/460/858 240/461/860
+s 178
+f 224/460/861 209/463/862 240/461/863
+f 240/461/863 209/463/862 225/464/864
+s 179
+f 209/465/865 224/466/866 210/480/867
+f 224/466/866 223/467/868 210/480/867
+f 223/467/868 222/468/869 210/480/867
+f 222/468/869 221/469/870 210/480/867
+f 221/469/870 220/470/871 210/480/867
+f 220/470/871 219/471/872 210/480/867
+f 219/471/872 218/472/873 210/480/867
+f 218/472/873 217/473/874 210/480/867
+f 217/473/874 216/474/875 210/480/867
+f 216/474/875 215/475/876 210/480/867
+f 215/475/876 214/476/877 210/480/867
+f 214/476/877 213/477/878 210/480/867
+f 213/477/878 212/478/879 210/480/867
+f 212/478/879 211/479/880 210/480/867
+s 180
+f 225/481/881 226/482/882 240/496/883
+f 226/482/882 227/483/884 240/496/883
+f 227/483/884 228/484/885 240/496/883
+f 228/484/885 229/485/886 240/496/883
+f 229/485/886 230/486/887 240/496/883
+f 230/486/887 231/487/888 240/496/883
+f 231/487/888 232/488/889 240/496/883
+f 232/488/889 233/489/890 240/496/883
+f 233/489/890 234/490/891 240/496/883
+f 234/490/891 235/491/892 240/496/883
+f 235/491/892 236/492/893 240/496/883
+f 236/492/893 237/493/894 240/496/883
+f 237/493/894 238/494/895 240/496/883
+f 238/494/895 239/495/896 240/496/883
+s 181
+f 241/497/897 242/498/898 257/500/899
+f 257/500/899 242/498/898 258/499/900
+s 182
+f 242/498/901 243/501/902 258/499/903
+f 258/499/903 243/501/902 259/502/904
+s 183
+f 243/501/905 244/503/906 259/502/907
+f 259/502/907 244/503/906 260/504/908
+s 184
+f 244/503/909 245/505/910 260/504/911
+f 260/504/911 245/505/910 261/506/912
+s 185
+f 245/505/913 246/507/914 261/506/915
+f 261/506/915 246/507/914 262/508/916
+s 186
+f 246/507/917 247/509/918 262/508/919
+f 262/508/919 247/509/918 263/510/920
+s 187
+f 247/511/921 248/512/922 263/514/923
+f 263/514/923 248/512/922 264/513/924
+s 188
+f 248/512/925 249/515/926 264/513/927
+f 264/513/927 249/515/926 265/516/928
+s 189
+f 249/515/929 250/517/930 265/516/931
+f 265/516/931 250/517/930 266/518/932
+s 190
+f 250/517/933 251/519/934 266/518/935
+f 266/518/935 251/519/934 267/520/936
+s 191
+f 251/521/937 252/522/938 267/524/939
+f 267/524/939 252/522/938 268/523/940
+s 192
+f 252/522/941 253/525/942 268/523/943
+f 268/523/943 253/525/942 269/526/944
+s 193
+f 253/525/945 254/527/946 269/526/947
+f 269/526/947 254/527/946 270/528/948
+s 194
+f 254/527/949 255/529/950 270/528/951
+f 270/528/951 255/529/950 271/530/952
+s 195
+f 255/531/953 256/532/954 271/534/955
+f 271/534/955 256/532/954 272/533/956
+s 196
+f 256/532/957 241/535/958 272/533/959
+f 272/533/959 241/535/958 257/536/960
+s 197
+f 241/537/961 256/538/962 242/552/963
+f 256/538/962 255/539/964 242/552/963
+f 255/539/964 254/540/965 242/552/963
+f 254/540/965 253/541/966 242/552/963
+f 253/541/966 252/542/967 242/552/963
+f 252/542/967 251/543/968 242/552/963
+f 251/543/968 250/544/969 242/552/963
+f 250/544/969 249/545/970 242/552/963
+f 249/545/970 248/546/971 242/552/963
+f 248/546/971 247/547/972 242/552/963
+f 247/547/972 246/548/973 242/552/963
+f 246/548/973 245/549/974 242/552/963
+f 245/549/974 244/550/975 242/552/963
+f 244/550/975 243/551/976 242/552/963
+s 198
+f 289/553/977 290/554/978 304/568/979
+f 290/554/978 291/555/980 304/568/979
+f 291/555/980 292/556/981 304/568/979
+f 292/556/981 293/557/982 304/568/979
+f 293/557/982 294/558/983 304/568/979
+f 294/558/983 295/559/984 304/568/979
+f 295/559/984 296/560/985 304/568/979
+f 296/560/985 297/561/986 304/568/979
+f 297/561/986 298/562/987 304/568/979
+f 298/562/987 299/563/988 304/568/979
+f 299/563/988 300/564/989 304/568/979
+f 300/564/989 301/565/990 304/568/979
+f 301/565/990 302/566/991 304/568/979
+f 302/566/991 303/567/992 304/568/979
+s 199
+f 257/569/993 258/570/994 273/572/995
+f 273/572/995 258/570/994 274/571/996
+s 200
+f 258/570/997 259/573/998 274/571/999
+f 274/571/999 259/573/998 275/574/1000
+s 201
+f 259/573/1001 260/575/1002 275/574/1003
+f 275/574/1003 260/575/1002 276/576/1004
+s 202
+f 260/575/1005 261/577/1006 276/576/1007
+f 276/576/1007 261/577/1006 277/578/1008
+s 203
+f 261/577/1009 262/579/1010 277/578/1011
+f 277/578/1011 262/579/1010 278/580/1012
+s 204
+f 262/579/1013 263/581/1014 278/580/1015
+f 278/580/1015 263/581/1014 279/582/1016
+s 205
+f 263/581/1017 264/583/1018 279/582/1019
+f 279/582/1019 264/583/1018 280/584/1020
+s 206
+f 264/583/1021 265/585/1022 280/584/1023
+f 280/584/1023 265/585/1022 281/586/1024
+s 207
+f 265/585/1025 266/587/1026 281/586/1027
+f 281/586/1027 266/587/1026 282/588/1028
+s 208
+f 266/587/1029 267/589/1030 282/588/1031
+f 282/588/1031 267/589/1030 283/590/1032
+s 209
+f 267/589/1033 268/591/1034 283/590/1035
+f 283/590/1035 268/591/1034 284/592/1036
+s 210
+f 268/591/1037 269/593/1038 284/592/1039
+f 284/592/1039 269/593/1038 285/594/1040
+s 211
+f 269/593/1041 270/595/1042 285/594/1043
+f 285/594/1043 270/595/1042 286/596/1044
+s 212
+f 270/595/1045 271/597/1046 286/596/1047
+f 286/596/1047 271/597/1046 287/598/1048
+s 213
+f 271/597/1049 272/599/1050 287/598/1051
+f 287/598/1051 272/599/1050 288/600/1052
+s 214
+f 272/599/1053 257/569/1054 288/600/1055
+f 288/600/1055 257/569/1054 273/572/1056
+s 215
+f 273/601/1057 274/602/1058 289/604/1059
+f 289/604/1059 274/602/1058 290/603/1060
+s 216
+f 274/602/1061 275/605/1062 290/603/1063
+f 290/603/1063 275/605/1062 291/606/1064
+s 217
+f 275/605/1065 276/607/1066 291/606/1067
+f 291/606/1067 276/607/1066 292/608/1068
+s 218
+f 276/607/1069 277/609/1070 292/608/1071
+f 292/608/1071 277/609/1070 293/610/1072
+s 219
+f 277/609/1073 278/611/1074 293/610/1075
+f 293/610/1075 278/611/1074 294/612/1076
+s 220
+f 278/611/1077 279/613/1078 294/612/1079
+f 294/612/1079 279/613/1078 295/614/1080
+s 221
+f 279/615/1081 280/616/1082 295/618/1083
+f 295/618/1083 280/616/1082 296/617/1084
+s 222
+f 280/616/1085 281/619/1086 296/617/1087
+f 296/617/1087 281/619/1086 297/620/1088
+s 223
+f 281/619/1089 282/621/1090 297/620/1091
+f 297/620/1091 282/621/1090 298/622/1092
+s 224
+f 282/621/1093 283/623/1094 298/622/1095
+f 298/622/1095 283/623/1094 299/624/1096
+s 225
+f 283/625/1097 284/626/1098 299/628/1099
+f 299/628/1099 284/626/1098 300/627/1100
+s 226
+f 284/626/1101 285/629/1102 300/627/1103
+f 300/627/1103 285/629/1102 301/630/1104
+s 227
+f 285/629/1105 286/631/1106 301/630/1107
+f 301/630/1107 286/631/1106 302/632/1108
+s 228
+f 286/631/1109 287/633/1110 302/632/1111
+f 302/632/1111 287/633/1110 303/634/1112
+s 229
+f 287/635/1113 288/636/1114 303/638/1115
+f 303/638/1115 288/636/1114 304/637/1116
+s 230
+f 288/636/1117 273/639/1118 304/637/1119
+f 304/637/1119 273/639/1118 289/640/1120
+s 231
+f 305/641/1121 306/642/1122 321/644/1123
+f 321/644/1123 306/642/1122 322/643/1124
+s 232
+f 306/642/1125 307/645/1126 322/643/1127
+f 322/643/1127 307/645/1126 323/646/1128
+s 233
+f 307/645/1129 308/647/1130 323/646/1131
+f 323/646/1131 308/647/1130 324/648/1132
+s 234
+f 308/647/1133 309/649/1134 324/648/1135
+f 324/648/1135 309/649/1134 325/650/1136
+s 235
+f 309/649/1137 310/651/1138 325/650/1139
+f 325/650/1139 310/651/1138 326/652/1140
+s 236
+f 310/651/1141 311/653/1142 326/652/1143
+f 326/652/1143 311/653/1142 327/654/1144
+s 237
+f 311/655/1145 312/656/1146 327/658/1147
+f 327/658/1147 312/656/1146 328/657/1148
+s 238
+f 312/656/1149 313/659/1150 328/657/1151
+f 328/657/1151 313/659/1150 329/660/1152
+s 239
+f 313/659/1153 314/661/1154 329/660/1155
+f 329/660/1155 314/661/1154 330/662/1156
+s 240
+f 314/661/1157 315/663/1158 330/662/1159
+f 330/662/1159 315/663/1158 331/664/1160
+s 241
+f 315/665/1161 316/666/1162 331/668/1163
+f 331/668/1163 316/666/1162 332/667/1164
+s 242
+f 316/666/1165 317/669/1166 332/667/1167
+f 332/667/1167 317/669/1166 333/670/1168
+s 243
+f 317/669/1169 318/671/1170 333/670/1171
+f 333/670/1171 318/671/1170 334/672/1172
+s 244
+f 318/671/1173 319/673/1174 334/672/1175
+f 334/672/1175 319/673/1174 335/674/1176
+s 245
+f 319/675/1177 320/676/1178 335/678/1179
+f 335/678/1179 320/676/1178 336/677/1180
+s 246
+f 320/676/1181 305/679/1182 336/677/1183
+f 336/677/1183 305/679/1182 321/680/1184
+s 247
+f 305/681/1185 320/682/1186 306/696/1187
+f 320/682/1186 319/683/1188 306/696/1187
+f 319/683/1188 318/684/1189 306/696/1187
+f 318/684/1189 317/685/1190 306/696/1187
+f 317/685/1190 316/686/1191 306/696/1187
+f 316/686/1191 315/687/1192 306/696/1187
+f 315/687/1192 314/688/1193 306/696/1187
+f 314/688/1193 313/689/1194 306/696/1187
+f 313/689/1194 312/690/1195 306/696/1187
+f 312/690/1195 311/691/1196 306/696/1187
+f 311/691/1196 310/692/1197 306/696/1187
+f 310/692/1197 309/693/1198 306/696/1187
+f 309/693/1198 308/694/1199 306/696/1187
+f 308/694/1199 307/695/1200 306/696/1187
+s 248
+f 321/697/1201 322/698/1202 336/712/1203
+f 322/698/1202 323/699/1204 336/712/1203
+f 323/699/1204 324/700/1205 336/712/1203
+f 324/700/1205 325/701/1206 336/712/1203
+f 325/701/1206 326/702/1207 336/712/1203
+f 326/702/1207 327/703/1208 336/712/1203
+f 327/703/1208 328/704/1209 336/712/1203
+f 328/704/1209 329/705/1210 336/712/1203
+f 329/705/1210 330/706/1211 336/712/1203
+f 330/706/1211 331/707/1212 336/712/1203
+f 331/707/1212 332/708/1213 336/712/1203
+f 332/708/1213 333/709/1214 336/712/1203
+f 333/709/1214 334/710/1215 336/712/1203
+f 334/710/1215 335/711/1216 336/712/1203
+s 249
+f 345/713/1217 361/714/1218 338/716/1219
+f 338/716/1219 361/714/1218 364/715/1220
+s 250
+f 366/717/1221 369/718/1222 339/720/1223
+f 339/720/1223 369/718/1222 343/719/1224
+s 251
+f 349/722/1225 346/723/1226 342/721/1227
+f 342/721/1227 346/723/1226 337/724/1228
+s 252
+f 371/725/1229 351/726/1230 341/728/1231
+f 341/728/1231 351/726/1230 350/727/1232
+s 253
+f 342/721/1233 341/728/1234 349/722/1235
+f 349/722/1235 341/728/1234 350/727/1236
+s 254
+f 368/729/1237 374/730/1238 340/732/1239
+f 340/732/1239 374/730/1238 372/731/1240
+s 255
+f 348/733/1241 357/734/1242 344/736/1243
+f 344/736/1243 357/734/1242 362/735/1244
+s 256
+f 353/737/1245 356/738/1246 347/740/1247
+f 347/740/1247 356/738/1246 358/739/1248
+s 257
+f 373/741/1249 376/742/1250 352/744/1251
+f 352/744/1251 376/742/1250 354/743/1252
+s 258
+f 375/745/1253 367/746/1254 355/748/1255
+f 355/748/1255 367/746/1254 359/747/1256
+s 259
+f 365/750/1257 363/751/1258 370/749/1259
+f 370/749/1259 363/751/1258 360/752/1260
+s 260
+f 360/752/1261 359/747/1262 370/749/1263
+f 370/749/1263 359/747/1262 367/746/1264
+s 261
+f 338/716/1265 337/753/1266 345/713/1267
+f 345/713/1267 337/753/1266 346/754/1268
+s 262
+f 339/755/1269 338/716/1270 366/756/1271
+f 366/756/1271 338/716/1270 364/715/1272
+s 263
+f 337/757/1273 339/720/1274 342/758/1275
+f 342/758/1275 339/720/1274 343/719/1276
+s 264
+f 340/732/1277 372/731/1278 341/759/1279
+f 341/759/1279 372/731/1278 371/760/1280
+s 265
+f 340/732/1281 343/719/1282 368/729/1283
+f 368/729/1283 343/719/1282 369/718/1284
+s 266
+f 345/713/1285 344/761/1286 361/714/1287
+f 361/714/1287 344/761/1286 362/762/1288
+s 267
+f 346/723/1289 349/722/1290 344/763/1291
+f 344/763/1291 349/722/1290 348/764/1292
+s 268
+f 348/733/1293 347/740/1294 357/734/1295
+f 357/734/1295 347/740/1294 358/739/1296
+s 269
+f 347/765/1297 350/727/1298 353/766/1299
+f 353/766/1299 350/727/1298 351/726/1300
+s 270
+f 351/726/1301 371/725/1302 352/767/1303
+f 352/767/1303 371/725/1302 373/768/1304
+s 271
+f 353/737/1305 352/769/1306 356/738/1307
+f 356/738/1307 352/769/1306 354/770/1308
+s 272
+f 355/771/1309 354/743/1310 375/772/1311
+f 375/772/1311 354/743/1310 376/742/1312
+s 273
+f 355/773/1313 359/774/1314 356/738/1315
+f 356/738/1315 359/774/1314 358/739/1316
+s 274
+f 357/734/1317 360/775/1318 362/735/1319
+f 362/735/1319 360/775/1318 363/776/1320
+s 275
+f 363/777/1321 365/778/1322 361/714/1323
+f 361/714/1323 365/778/1322 364/715/1324
+s 276
+f 365/779/1325 370/780/1326 366/717/1327
+f 366/717/1327 370/780/1326 369/718/1328
+s 277
+f 368/729/1329 367/781/1330 374/730/1331
+f 374/730/1331 367/781/1330 375/782/1332
+s 278
+f 373/741/1333 372/783/1334 376/742/1335
+f 376/742/1335 372/783/1334 374/784/1336
+s off
+f 337/753/1337 338/716/1338 339/755/1339
+s 279
+f 340/732/1340 341/759/1341 343/719/1342
+f 343/719/1342 341/759/1341 342/758/1343
+s off
+f 344/761/1344 345/713/1345 346/754/1346
+s 280
+f 347/765/1347 348/764/1348 350/727/1349
+f 350/727/1349 348/764/1348 349/722/1350
+s off
+f 351/726/1351 352/767/1352 353/766/1353
+f 354/770/1354 355/773/1355 356/738/1356
+s 281
+f 357/734/1357 358/739/1358 360/775/1359
+f 360/775/1359 358/739/1358 359/774/1360
+s off
+f 361/714/1361 362/762/1362 363/777/1363
+f 364/715/1364 365/778/1365 366/756/1366
+s 282
+f 367/781/1367 368/729/1368 370/780/1369
+f 370/780/1369 368/729/1368 369/718/1370
+s off
+f 371/725/1371 372/785/1372 373/768/1373
+f 374/784/1374 375/772/1375 376/742/1376
+s 283
+f 377/786/1377 379/787/1378 409/789/1379
+f 409/789/1379 379/787/1378 411/788/1380
+s 284
+f 379/787/1381 381/790/1382 411/788/1383
+f 411/788/1383 381/790/1382 413/791/1384
+s 285
+f 381/790/1385 383/792/1386 413/791/1387
+f 413/791/1387 383/792/1386 415/793/1388
+s 286
+f 383/792/1389 385/794/1390 415/793/1391
+f 415/793/1391 385/794/1390 417/795/1392
+s 287
+f 385/794/1393 387/796/1394 417/795/1395
+f 417/795/1395 387/796/1394 419/797/1396
+s 288
+f 387/798/1397 389/799/1398 419/801/1399
+f 419/801/1399 389/799/1398 421/800/1400
+s 289
+f 389/799/1401 391/802/1402 421/800/1403
+f 421/800/1403 391/802/1402 423/803/1404
+s 290
+f 391/802/1405 393/804/1406 423/803/1407
+f 423/803/1407 393/804/1406 425/805/1408
+s 291
+f 393/804/1409 395/806/1410 425/805/1411
+f 425/805/1411 395/806/1410 427/807/1412
+s 292
+f 395/808/1413 397/809/1414 427/811/1415
+f 427/811/1415 397/809/1414 429/810/1416
+s 293
+f 397/809/1417 399/812/1418 429/810/1419
+f 429/810/1419 399/812/1418 431/813/1420
+s 294
+f 399/812/1421 401/814/1422 431/813/1423
+f 431/813/1423 401/814/1422 433/815/1424
+s 295
+f 401/814/1425 403/816/1426 433/815/1427
+f 433/815/1427 403/816/1426 435/817/1428
+s 296
+f 403/818/1429 405/819/1430 435/821/1431
+f 435/821/1431 405/819/1430 437/820/1432
+s 297
+f 405/819/1433 407/822/1434 437/820/1435
+f 437/820/1435 407/822/1434 439/823/1436
+s 298
+f 407/822/1437 377/824/1438 439/823/1439
+f 439/823/1439 377/824/1438 409/825/1440
+s 299
+f 408/826/1441 406/827/1442 378/841/1443
+f 406/827/1442 404/828/1444 378/841/1443
+f 404/828/1444 402/829/1445 378/841/1443
+f 402/829/1445 400/830/1446 378/841/1443
+f 400/830/1446 398/831/1447 378/841/1443
+f 398/831/1447 396/832/1448 378/841/1443
+f 396/832/1448 394/833/1449 378/841/1443
+f 394/833/1449 392/834/1450 378/841/1443
+f 392/834/1450 390/835/1451 378/841/1443
+f 390/835/1451 388/836/1452 378/841/1443
+f 388/836/1452 386/837/1453 378/841/1443
+f 386/837/1453 384/838/1454 378/841/1443
+f 384/838/1454 382/839/1455 378/841/1443
+f 382/839/1455 380/840/1456 378/841/1443
+s 300
+f 412/842/1457 414/843/1458 410/857/1459
+f 414/843/1458 416/844/1460 410/857/1459
+f 416/844/1460 418/845/1461 410/857/1459
+f 418/845/1461 420/846/1462 410/857/1459
+f 420/846/1462 422/847/1463 410/857/1459
+f 422/847/1463 424/848/1464 410/857/1459
+f 424/848/1464 426/849/1465 410/857/1459
+f 426/849/1465 428/850/1466 410/857/1459
+f 428/850/1466 430/851/1467 410/857/1459
+f 430/851/1467 432/852/1468 410/857/1459
+f 432/852/1468 434/853/1469 410/857/1459
+f 434/853/1469 436/854/1470 410/857/1459
+f 436/854/1470 438/855/1471 410/857/1459
+f 438/855/1471 440/856/1472 410/857/1459
+s 301
+f 378/858/1473 377/824/1474 408/859/1475
+f 408/859/1475 377/824/1474 407/822/1476
+s 302
+f 377/824/1477 378/858/1478 379/861/1479
+f 379/861/1479 378/858/1478 380/860/1480
+s 303
+f 379/787/1481 380/862/1482 381/790/1483
+f 381/790/1483 380/862/1482 382/863/1484
+s 304
+f 381/790/1485 382/863/1486 383/792/1487
+f 383/792/1487 382/863/1486 384/864/1488
+s 305
+f 383/792/1489 384/864/1490 385/794/1491
+f 385/794/1491 384/864/1490 386/865/1492
+s 306
+f 385/794/1493 386/865/1494 387/796/1495
+f 387/796/1495 386/865/1494 388/866/1496
+s 307
+f 387/798/1497 388/867/1498 389/799/1499
+f 389/799/1499 388/867/1498 390/868/1500
+s 308
+f 389/799/1501 390/868/1502 391/802/1503
+f 391/802/1503 390/868/1502 392/869/1504
+s 309
+f 391/802/1505 392/869/1506 393/804/1507
+f 393/804/1507 392/869/1506 394/870/1508
+s 310
+f 393/804/1509 394/870/1510 395/806/1511
+f 395/806/1511 394/870/1510 396/871/1512
+s 311
+f 395/808/1513 396/872/1514 397/809/1515
+f 397/809/1515 396/872/1514 398/873/1516
+s 312
+f 397/809/1517 398/873/1518 399/812/1519
+f 399/812/1519 398/873/1518 400/874/1520
+s 313
+f 399/812/1521 400/874/1522 401/814/1523
+f 401/814/1523 400/874/1522 402/875/1524
+s 314
+f 401/814/1525 402/875/1526 403/816/1527
+f 403/816/1527 402/875/1526 404/876/1528
+s 315
+f 403/818/1529 404/877/1530 405/819/1531
+f 405/819/1531 404/877/1530 406/878/1532
+s 316
+f 405/819/1533 406/878/1534 407/822/1535
+f 407/822/1535 406/878/1534 408/859/1536
+s 317
+f 410/879/1537 409/825/1538 412/881/1539
+f 412/881/1539 409/825/1538 411/880/1540
+s 318
+f 409/825/1541 410/879/1542 439/823/1543
+f 439/823/1543 410/879/1542 440/882/1544
+s 319
+f 412/883/1545 411/788/1546 414/884/1547
+f 414/884/1547 411/788/1546 413/791/1548
+s 320
+f 414/884/1549 413/791/1550 416/885/1551
+f 416/885/1551 413/791/1550 415/793/1552
+s 321
+f 416/885/1553 415/793/1554 418/886/1555
+f 418/886/1555 415/793/1554 417/795/1556
+s 322
+f 418/886/1557 417/795/1558 420/887/1559
+f 420/887/1559 417/795/1558 419/797/1560
+s 323
+f 420/888/1561 419/801/1562 422/889/1563
+f 422/889/1563 419/801/1562 421/800/1564
+s 324
+f 422/889/1565 421/800/1566 424/890/1567
+f 424/890/1567 421/800/1566 423/803/1568
+s 325
+f 424/890/1569 423/803/1570 426/891/1571
+f 426/891/1571 423/803/1570 425/805/1572
+s 326
+f 426/891/1573 425/805/1574 428/892/1575
+f 428/892/1575 425/805/1574 427/807/1576
+s 327
+f 428/893/1577 427/811/1578 430/894/1579
+f 430/894/1579 427/811/1578 429/810/1580
+s 328
+f 430/894/1581 429/810/1582 432/895/1583
+f 432/895/1583 429/810/1582 431/813/1584
+s 329
+f 432/895/1585 431/813/1586 434/896/1587
+f 434/896/1587 431/813/1586 433/815/1588
+s 330
+f 434/896/1589 433/815/1590 436/897/1591
+f 436/897/1591 433/815/1590 435/817/1592
+s 331
+f 436/898/1593 435/821/1594 438/899/1595
+f 438/899/1595 435/821/1594 437/820/1596
+s 332
+f 438/899/1597 437/820/1598 440/882/1599
+f 440/882/1599 437/820/1598 439/823/1600
+s 333
+f 449/901/1601 450/902/1602 441/900/1603
+f 441/900/1603 450/902/1602 444/903/1604
+s 334
+f 451/905/1605 452/906/1606 446/904/1607
+f 446/904/1607 452/906/1606 442/907/1608
+s 335
+f 443/908/1609 453/909/1610 448/911/1611
+f 448/911/1611 453/909/1610 454/910/1612
+s 336
+f 447/912/1613 455/913/1614 445/915/1615
+f 445/915/1615 455/913/1614 456/914/1616
+s 337
+f 452/906/1617 449/916/1618 442/907/1619
+f 442/907/1619 449/916/1618 441/917/1620
+s 338
+f 444/918/1621 450/919/1622 443/908/1623
+f 443/908/1623 450/919/1622 453/909/1624
+s 339
+f 456/921/1625 451/905/1626 445/920/1627
+f 445/920/1627 451/905/1626 446/904/1628
+s 340
+f 448/922/1629 454/923/1630 447/912/1631
+f 447/912/1631 454/923/1630 455/913/1632
+s 341
+f 457/924/1633 458/925/1634 449/901/1635
+f 449/901/1635 458/925/1634 450/902/1636
+s 342
+f 459/926/1637 460/927/1638 451/905/1639
+f 451/905/1639 460/927/1638 452/906/1640
+s 343
+f 453/909/1641 461/928/1642 454/910/1643
+f 454/910/1643 461/928/1642 462/929/1644
+s 344
+f 455/930/1645 463/931/1646 456/933/1647
+f 456/933/1647 463/931/1646 464/932/1648
+s 345
+f 460/935/1649 457/924/1650 452/934/1651
+f 452/934/1651 457/924/1650 449/901/1652
+s 346
+f 458/936/1653 461/928/1654 450/919/1655
+f 450/919/1655 461/928/1654 453/909/1656
+s 347
+f 464/937/1657 459/926/1658 456/921/1659
+f 456/921/1659 459/926/1658 451/905/1660
+s 348
+f 454/938/1661 462/939/1662 455/930/1663
+f 455/930/1663 462/939/1662 463/931/1664
+s 349
+f 465/940/1665 466/941/1666 457/924/1667
+f 457/924/1667 466/941/1666 458/925/1668
+s 350
+f 467/942/1669 468/943/1670 459/926/1671
+f 459/926/1671 468/943/1670 460/927/1672
+s 351
+f 461/928/1673 469/944/1674 462/929/1675
+f 462/929/1675 469/944/1674 470/945/1676
+s 352
+f 463/931/1677 471/946/1678 464/932/1679
+f 464/932/1679 471/946/1678 472/947/1680
+s 353
+f 460/927/1681 468/943/1682 457/949/1683
+f 457/949/1683 468/943/1682 465/948/1684
+s 354
+f 466/950/1685 469/944/1686 458/936/1687
+f 458/936/1687 469/944/1686 461/928/1688
+s 355
+f 472/951/1689 467/942/1690 464/937/1691
+f 464/937/1691 467/942/1690 459/926/1692
+s 356
+f 462/939/1693 470/952/1694 463/931/1695
+f 463/931/1695 470/952/1694 471/946/1696
+s 357
+f 465/940/1697 473/953/1698 466/941/1699
+f 466/941/1699 473/953/1698 474/954/1700
+s 358
+f 475/955/1701 476/956/1702 467/942/1703
+f 467/942/1703 476/956/1702 468/943/1704
+s 359
+f 469/944/1705 477/957/1706 470/945/1707
+f 470/945/1707 477/957/1706 478/958/1708
+s 360
+f 479/959/1709 480/960/1710 471/946/1711
+f 471/946/1711 480/960/1710 472/947/1712
+s 361
+f 476/956/1713 473/961/1714 468/943/1715
+f 468/943/1715 473/961/1714 465/948/1716
+s 362
+f 466/962/1717 474/963/1718 469/965/1719
+f 469/965/1719 474/963/1718 477/964/1720
+s 363
+f 480/966/1721 475/955/1722 472/951/1723
+f 472/951/1723 475/955/1722 467/942/1724
+s 364
+f 470/952/1725 478/967/1726 471/946/1727
+f 471/946/1727 478/967/1726 479/959/1728
+s off
+f 473/968/1729 481/969/1730 474/963/1731
+f 475/970/1732 481/969/1733 476/971/1734
+f 477/964/1735 481/969/1736 478/972/1737
+f 479/973/1738 481/969/1739 480/974/1740
+f 476/971/1741 481/969/1742 473/968/1743
+f 474/963/1744 481/969/1745 477/964/1746
+f 480/974/1747 481/969/1748 475/970/1749
+f 478/972/1750 481/969/1751 479/973/1752
+s 365
+f 532/975/1753 525/976/1754 483/978/1755
+f 483/978/1755 525/976/1754 529/977/1756
+s 366
+f 485/979/1757 542/980/1758 482/982/1759
+f 482/982/1759 542/980/1758 533/981/1760
+s 367
+f 541/984/1761 535/985/1762 544/983/1763
+f 544/983/1763 535/985/1762 534/986/1764
+s 368
+f 534/986/1765 533/981/1766 544/983/1767
+f 544/983/1767 533/981/1766 542/980/1768
+s 369
+f 495/988/1769 492/989/1770 547/987/1771
+f 547/987/1771 492/989/1770 486/990/1772
+s 370
+f 498/991/1773 511/992/1774 493/994/1775
+f 493/994/1775 511/992/1774 506/993/1776
+s 371
+f 493/994/1777 492/989/1778 498/991/1779
+f 498/991/1779 492/989/1778 495/988/1780
+s 372
+f 491/995/1781 488/996/1782 484/999/1783
+f 484/999/1783 488/996/1782 543/998/1784
+f 488/996/1782 538/997/1785 543/998/1784
+s 373
+f 494/1000/1786 508/1001/1787 489/1003/1788
+f 489/1003/1788 508/1001/1787 505/1002/1789
+s 374
+f 504/1004/1790 512/1005/1791 490/1007/1792
+f 490/1007/1792 512/1005/1791 501/1006/1793
+s 375
+f 500/1008/1794 516/1009/1795 487/1011/1796
+f 487/1011/1796 516/1009/1795 539/1010/1797
+s 376
+f 523/1012/1798 536/1013/1799 515/1015/1800
+f 515/1015/1800 536/1013/1799 540/1014/1801
+s 377
+f 490/1007/1802 501/1006/1803 487/1011/1804
+f 487/1011/1804 501/1006/1803 500/1008/1805
+s 378
+f 515/1015/1806 540/1014/1807 516/1009/1808
+f 516/1009/1808 540/1014/1807 539/1010/1809
+s 379
+f 546/1016/1810 521/1017/1811 496/1020/1812
+f 496/1020/1812 521/1017/1811 499/1019/1813
+f 521/1017/1811 517/1018/1814 499/1019/1813
+s 380
+f 502/1021/1815 514/1022/1816 497/1024/1817
+f 497/1024/1817 514/1022/1816 509/1023/1818
+s 381
+f 507/1025/1819 510/1026/1820 503/1028/1821
+f 503/1028/1821 510/1026/1820 513/1027/1822
+s 382
+f 527/1030/1823 524/1031/1824 520/1029/1825
+f 520/1029/1825 524/1031/1824 518/1032/1826
+s 383
+f 545/1033/1827 530/1034/1828 519/1036/1829
+f 519/1036/1829 530/1034/1828 528/1035/1830
+s 384
+f 520/1029/1831 519/1036/1832 527/1030/1833
+f 527/1030/1833 519/1036/1832 528/1035/1834
+s 385
+f 526/1037/1835 531/1038/1836 522/1040/1837
+f 522/1040/1837 531/1038/1836 537/1039/1838
+s 386
+f 482/1041/1839 533/1042/1840 483/978/1841
+f 483/978/1841 533/1042/1840 532/975/1842
+s 387
+f 448/911/1843 483/978/1844 443/908/1845
+f 443/908/1845 483/978/1844 529/977/1846
+s 388
+f 482/982/1847 447/912/1848 485/979/1849
+f 485/979/1849 447/912/1848 445/915/1850
+s 389
+f 485/979/1851 484/999/1852 542/980/1853
+f 542/980/1853 484/999/1852 543/998/1854
+s 390
+f 541/984/1855 544/983/1856 538/997/1857
+f 538/997/1857 544/983/1856 543/998/1858
+s off
+f 542/980/1859 543/998/1860 544/983/1861
+s 391
+f 446/904/1862 442/907/1863 486/1043/1864
+f 486/1043/1864 442/907/1863 547/1044/1865
+s 392
+f 485/979/1866 445/915/1867 484/999/1868
+f 445/915/1867 446/1045/1869 484/999/1868
+f 484/999/1868 446/1045/1869 486/1046/1870
+s 393
+f 484/999/1871 486/1046/1872 491/995/1873
+f 491/995/1873 486/1046/1872 492/1047/1874
+s 394
+f 487/1048/1875 539/1049/1876 488/996/1877
+f 488/996/1877 539/1049/1876 538/997/1878
+s 395
+f 489/1050/1879 488/996/1880 494/1051/1881
+f 494/1051/1881 488/996/1880 491/995/1882
+s 396
+f 489/1003/1883 505/1002/1884 490/1052/1885
+f 490/1052/1885 505/1002/1884 504/1053/1886
+s 397
+f 494/1054/1887 493/994/1888 508/1055/1889
+f 508/1055/1889 493/994/1888 506/993/1890
+s 398
+f 496/1056/1891 495/988/1892 546/1057/1893
+f 546/1057/1893 495/988/1892 547/987/1894
+s 399
+f 497/1058/1895 496/1020/1896 502/1059/1897
+f 502/1059/1897 496/1020/1896 499/1019/1898
+s 400
+f 497/1060/1899 509/1061/1900 498/991/1901
+f 498/991/1901 509/1061/1900 511/992/1902
+s 401
+f 499/1062/1903 517/1063/1904 500/1008/1905
+f 500/1008/1905 517/1063/1904 516/1009/1906
+s 402
+f 502/1064/1907 501/1006/1908 514/1065/1909
+f 514/1065/1909 501/1006/1908 512/1005/1910
+s 403
+f 504/1004/1911 503/1066/1912 512/1005/1913
+f 512/1005/1913 503/1066/1912 513/1067/1914
+s 404
+f 503/1068/1915 505/1002/1916 507/1069/1917
+f 507/1069/1917 505/1002/1916 508/1001/1918
+s 405
+f 506/993/1919 511/992/1920 507/1070/1921
+f 507/1070/1921 511/992/1920 510/1071/1922
+s 406
+f 510/1072/1923 509/1023/1924 513/1073/1925
+f 513/1073/1925 509/1023/1924 514/1022/1926
+s 407
+f 518/1032/1927 517/1018/1928 520/1029/1929
+f 520/1029/1929 517/1018/1928 521/1017/1930
+s off
+f 519/1036/1931 520/1029/1932 521/1017/1933
+s 408
+f 515/1015/1934 518/1074/1935 523/1012/1936
+f 523/1012/1936 518/1074/1935 524/1075/1937
+s 409
+f 521/1017/1938 546/1016/1939 519/1036/1940
+f 519/1036/1940 546/1016/1939 545/1033/1941
+s 410
+f 523/1076/1942 522/1040/1943 536/1077/1944
+f 536/1077/1944 522/1040/1943 537/1039/1945
+s 411
+f 524/1078/1946 527/1079/1947 522/1040/1948
+f 522/1040/1948 527/1079/1947 526/1037/1949
+s 412
+f 526/1037/1950 525/976/1951 531/1038/1952
+f 531/1038/1952 525/976/1951 532/975/1953
+s 413
+f 525/976/1954 528/1080/1955 529/977/1956
+f 529/977/1956 528/1080/1955 530/1081/1957
+s 414
+f 530/1034/1958 545/1033/1959 444/1082/1960
+f 444/1082/1960 545/1033/1959 441/1083/1961
+s 415
+f 531/1038/1962 534/1084/1963 537/1039/1964
+f 537/1039/1964 534/1084/1963 535/1085/1965
+s 416
+f 535/985/1966 541/984/1967 536/1086/1968
+f 536/1086/1968 541/984/1967 540/1087/1969
+s 417
+f 483/978/1970 448/911/1971 482/1041/1972
+f 482/1041/1972 448/911/1971 447/1088/1973
+s 418
+f 488/996/1974 489/1050/1975 487/1048/1976
+f 487/1048/1976 489/1050/1975 490/1089/1977
+s 419
+f 491/995/1978 492/1047/1979 494/1051/1980
+f 494/1051/1980 492/1047/1979 493/1090/1981
+s 420
+f 496/1056/1982 497/1060/1983 495/988/1984
+f 495/988/1984 497/1060/1983 498/991/1985
+s 421
+f 499/1062/1986 500/1008/1987 502/1064/1988
+f 502/1064/1988 500/1008/1987 501/1006/1989
+s off
+f 503/1066/1990 504/1004/1991 505/1091/1992
+f 506/1092/1993 507/1069/1994 508/1001/1995
+f 509/1061/1996 510/1071/1997 511/992/1998
+f 512/1005/1999 513/1067/2000 514/1065/2001
+s 422
+f 516/1009/2002 517/1063/2003 515/1015/2004
+f 515/1015/2004 517/1063/2003 518/1074/2005
+s off
+f 522/1093/2006 523/1012/2007 524/1075/2008
+s 423
+f 525/976/2009 526/1037/2010 528/1080/2011
+f 528/1080/2011 526/1037/2010 527/1079/2012
+s 424
+f 530/1081/2013 444/918/2014 529/977/2015
+f 529/977/2015 444/918/2014 443/908/2016
+s 425
+f 531/1038/2017 532/975/2018 534/1084/2019
+f 534/1084/2019 532/975/2018 533/1042/2020
+s off
+f 535/985/2021 536/1086/2022 537/1094/2023
+s 426
+f 538/997/2024 539/1049/2025 541/984/2026
+f 541/984/2026 539/1049/2025 540/1087/2027
+s 427
+f 442/1097/2028 441/1095/2029 547/987/2030
+f 441/1095/2029 545/1096/2031 547/987/2030
+f 545/1096/2031 546/1057/2032 547/987/2030
+s 428
+f 556/1098/2033 562/1099/2034 549/1101/2035
+f 549/1101/2035 562/1099/2034 569/1100/2036
+s 429
+f 571/1102/2037 573/1103/2038 550/1105/2039
+f 550/1105/2039 573/1103/2038 551/1104/2040
+s 430
+f 560/1107/2041 557/1108/2042 554/1106/2043
+f 554/1106/2043 557/1108/2042 548/1109/2044
+s 431
+f 577/1110/2045 587/1111/2046 553/1113/2047
+f 553/1113/2047 587/1111/2046 561/1112/2048
+s 432
+f 554/1106/2049 553/1113/2050 560/1107/2051
+f 560/1107/2051 553/1113/2050 561/1112/2052
+s 433
+f 572/1114/2053 579/1115/2054 552/1117/2055
+f 552/1117/2055 579/1115/2054 578/1116/2056
+s 434
+f 559/1118/2057 568/1119/2058 555/1121/2059
+f 555/1121/2059 568/1119/2058 563/1120/2060
+s 435
+f 586/1122/2061 583/1123/2062 558/1125/2063
+f 558/1125/2063 583/1123/2062 565/1124/2064
+s 436
+f 567/1126/2065 574/1127/2066 564/1129/2067
+f 564/1129/2067 574/1127/2066 570/1128/2068
+s 437
+f 580/1131/2069 575/1132/2070 582/1130/2071
+f 582/1130/2071 575/1132/2070 566/1133/2072
+s 438
+f 567/1126/2073 566/1133/2074 574/1127/2075
+f 574/1127/2075 566/1133/2074 575/1132/2076
+s 439
+f 581/1134/2077 584/1135/2078 576/1137/2079
+f 576/1137/2079 584/1135/2078 585/1136/2080
+s 440
+f 549/1101/2081 548/1138/2082 556/1098/2083
+f 556/1098/2083 548/1138/2082 557/1139/2084
+s 441
+f 550/1105/2085 549/1101/2086 571/1102/2087
+f 571/1102/2087 549/1101/2086 569/1100/2088
+s 442
+f 548/1109/2089 550/1140/2090 554/1106/2091
+f 554/1106/2091 550/1140/2090 551/1141/2092
+s 443
+f 552/1117/2093 551/1142/2094 572/1114/2095
+f 572/1114/2095 551/1142/2094 573/1143/2096
+s 444
+f 552/1144/2097 578/1145/2098 553/1113/2099
+f 553/1113/2099 578/1145/2098 577/1110/2100
+s 445
+f 556/1146/2101 555/1121/2102 562/1147/2103
+f 562/1147/2103 555/1121/2102 563/1120/2104
+s 446
+f 557/1108/2105 560/1107/2106 555/1148/2107
+f 555/1148/2107 560/1107/2106 559/1149/2108
+s 447
+f 559/1118/2109 558/1125/2110 568/1119/2111
+f 568/1119/2111 558/1125/2110 565/1124/2112
+s 448
+f 558/1150/2113 561/1112/2114 586/1151/2115
+f 586/1151/2115 561/1112/2114 587/1111/2116
+s 449
+f 564/1152/2117 563/1120/2118 567/1153/2119
+f 567/1153/2119 563/1120/2118 568/1119/2120
+s 450
+f 564/1154/2121 570/1155/2122 562/1099/2123
+f 562/1099/2123 570/1155/2122 569/1100/2124
+s 451
+f 565/1156/2125 583/1157/2126 566/1133/2127
+f 566/1133/2127 583/1157/2126 582/1130/2128
+s 452
+f 570/1159/2129 574/1160/2130 571/1158/2131
+f 571/1158/2131 574/1160/2130 573/1143/2132
+s 453
+f 572/1114/2133 575/1161/2134 579/1115/2135
+f 579/1115/2135 575/1161/2134 580/1162/2136
+s 454
+f 576/1163/2137 585/1164/2138 577/1110/2139
+f 577/1110/2139 585/1164/2138 587/1111/2140
+s 455
+f 576/1165/2141 578/1116/2142 581/1166/2143
+f 581/1166/2143 578/1116/2142 579/1115/2144
+s 456
+f 581/1167/2145 580/1131/2146 584/1168/2147
+f 584/1168/2147 580/1131/2146 582/1130/2148
+s 457
+f 584/1135/2149 583/1169/2150 585/1136/2151
+f 585/1136/2151 583/1169/2150 586/1170/2152
+s off
+f 548/1138/2153 549/1101/2154 550/1105/2155
+s 458
+f 551/1141/2156 552/1144/2157 554/1106/2158
+f 554/1106/2158 552/1144/2157 553/1113/2159
+s off
+f 555/1148/2160 556/1171/2161 557/1108/2162
+s 459
+f 558/1150/2163 559/1149/2164 561/1112/2165
+f 561/1112/2165 559/1149/2164 560/1107/2166
+s off
+f 562/1147/2167 563/1120/2168 564/1152/2169
+s 460
+f 565/1124/2170 566/1172/2171 568/1119/2172
+f 568/1119/2172 566/1172/2171 567/1153/2173
+s off
+f 569/1100/2174 570/1155/2175 571/1102/2176
+s 461
+f 572/1114/2177 573/1143/2178 575/1161/2179
+f 575/1161/2179 573/1143/2178 574/1160/2180
+s off
+f 576/1163/2181 577/1110/2182 578/1145/2183
+f 579/1115/2184 580/1162/2185 581/1166/2186
+f 582/1130/2187 583/1157/2188 584/1168/2189
+f 585/1164/2190 586/1151/2191 587/1111/2192
+s 462
+f 588/1173/2193 590/1174/2194 620/1176/2195
+f 620/1176/2195 590/1174/2194 622/1175/2196
+s 463
+f 590/1174/2197 592/1177/2198 622/1175/2199
+f 622/1175/2199 592/1177/2198 624/1178/2200
+s 464
+f 592/1177/2201 594/1179/2202 624/1178/2203
+f 624/1178/2203 594/1179/2202 626/1180/2204
+s 465
+f 594/1181/2205 596/1182/2206 626/1184/2207
+f 626/1184/2207 596/1182/2206 628/1183/2208
+s 466
+f 596/1182/2209 598/1185/2210 628/1183/2211
+f 628/1183/2211 598/1185/2210 630/1186/2212
+s 467
+f 598/1185/2213 600/1187/2214 630/1186/2215
+f 630/1186/2215 600/1187/2214 632/1188/2216
+s 468
+f 600/1187/2217 602/1189/2218 632/1188/2219
+f 632/1188/2219 602/1189/2218 634/1190/2220
+s 469
+f 602/1191/2221 604/1192/2222 634/1194/2223
+f 634/1194/2223 604/1192/2222 636/1193/2224
+s 470
+f 604/1192/2225 606/1195/2226 636/1193/2227
+f 636/1193/2227 606/1195/2226 638/1196/2228
+s 471
+f 606/1195/2229 608/1197/2230 638/1196/2231
+f 638/1196/2231 608/1197/2230 640/1198/2232
+s 472
+f 608/1197/2233 610/1199/2234 640/1198/2235
+f 640/1198/2235 610/1199/2234 642/1200/2236
+s 473
+f 610/1201/2237 612/1202/2238 642/1204/2239
+f 642/1204/2239 612/1202/2238 644/1203/2240
+s 474
+f 612/1202/2241 614/1205/2242 644/1203/2243
+f 644/1203/2243 614/1205/2242 646/1206/2244
+s 475
+f 614/1205/2245 616/1207/2246 646/1206/2247
+f 646/1206/2247 616/1207/2246 648/1208/2248
+s 476
+f 616/1209/2249 618/1210/2250 648/1212/2251
+f 648/1212/2251 618/1210/2250 650/1211/2252
+s 477
+f 618/1210/2253 588/1173/2254 650/1211/2255
+f 650/1211/2255 588/1173/2254 620/1176/2256
+s 478
+f 619/1213/2257 617/1214/2258 589/1228/2259
+f 617/1214/2258 615/1215/2260 589/1228/2259
+f 615/1215/2260 613/1216/2261 589/1228/2259
+f 613/1216/2261 611/1217/2262 589/1228/2259
+f 611/1217/2262 609/1218/2263 589/1228/2259
+f 609/1218/2263 607/1219/2264 589/1228/2259
+f 607/1219/2264 605/1220/2265 589/1228/2259
+f 605/1220/2265 603/1221/2266 589/1228/2259
+f 603/1221/2266 601/1222/2267 589/1228/2259
+f 601/1222/2267 599/1223/2268 589/1228/2259
+f 599/1223/2268 597/1224/2269 589/1228/2259
+f 597/1224/2269 595/1225/2270 589/1228/2259
+f 595/1225/2270 593/1226/2271 589/1228/2259
+f 593/1226/2271 591/1227/2272 589/1228/2259
+s 479
+f 623/1229/2273 625/1230/2274 621/1244/2275
+f 625/1230/2274 627/1231/2276 621/1244/2275
+f 627/1231/2276 629/1232/2277 621/1244/2275
+f 629/1232/2277 631/1233/2278 621/1244/2275
+f 631/1233/2278 633/1234/2279 621/1244/2275
+f 633/1234/2279 635/1235/2280 621/1244/2275
+f 635/1235/2280 637/1236/2281 621/1244/2275
+f 637/1236/2281 639/1237/2282 621/1244/2275
+f 639/1237/2282 641/1238/2283 621/1244/2275
+f 641/1238/2283 643/1239/2284 621/1244/2275
+f 643/1239/2284 645/1240/2285 621/1244/2275
+f 645/1240/2285 647/1241/2286 621/1244/2275
+f 647/1241/2286 649/1242/2287 621/1244/2275
+f 649/1242/2287 651/1243/2288 621/1244/2275
+s 480
+f 589/1245/2289 588/1173/2290 619/1246/2291
+f 619/1246/2291 588/1173/2290 618/1210/2292
+s 481
+f 588/1173/2293 589/1245/2294 590/1174/2295
+f 590/1174/2295 589/1245/2294 591/1247/2296
+s 482
+f 590/1174/2297 591/1247/2298 592/1177/2299
+f 592/1177/2299 591/1247/2298 593/1248/2300
+s 483
+f 592/1249/2301 593/1250/2302 594/1181/2303
+f 594/1181/2303 593/1250/2302 595/1251/2304
+s 484
+f 594/1181/2305 595/1251/2306 596/1182/2307
+f 596/1182/2307 595/1251/2306 597/1252/2308
+s 485
+f 596/1182/2309 597/1252/2310 598/1185/2311
+f 598/1185/2311 597/1252/2310 599/1253/2312
+s 486
+f 598/1185/2313 599/1253/2314 600/1187/2315
+f 600/1187/2315 599/1253/2314 601/1254/2316
+s 487
+f 600/1255/2317 601/1256/2318 602/1191/2319
+f 602/1191/2319 601/1256/2318 603/1257/2320
+s 488
+f 602/1191/2321 603/1257/2322 604/1192/2323
+f 604/1192/2323 603/1257/2322 605/1258/2324
+s 489
+f 604/1192/2325 605/1258/2326 606/1195/2327
+f 606/1195/2327 605/1258/2326 607/1259/2328
+s 490
+f 606/1195/2329 607/1259/2330 608/1197/2331
+f 608/1197/2331 607/1259/2330 609/1260/2332
+s 491
+f 608/1261/2333 609/1262/2334 610/1201/2335
+f 610/1201/2335 609/1262/2334 611/1263/2336
+s 492
+f 610/1201/2337 611/1263/2338 612/1202/2339
+f 612/1202/2339 611/1263/2338 613/1264/2340
+s 493
+f 612/1202/2341 613/1264/2342 614/1205/2343
+f 614/1205/2343 613/1264/2342 615/1265/2344
+s 494
+f 614/1205/2345 615/1265/2346 616/1207/2347
+f 616/1207/2347 615/1265/2346 617/1266/2348
+s 495
+f 616/1209/2349 617/1267/2350 618/1210/2351
+f 618/1210/2351 617/1267/2350 619/1246/2352
+s 496
+f 621/1268/2353 620/1176/2354 623/1269/2355
+f 623/1269/2355 620/1176/2354 622/1175/2356
+s 497
+f 620/1176/2357 621/1268/2358 650/1211/2359
+f 650/1211/2359 621/1268/2358 651/1270/2360
+s 498
+f 623/1269/2361 622/1175/2362 625/1271/2363
+f 625/1271/2363 622/1175/2362 624/1178/2364
+s 499
+f 625/1272/2365 624/1273/2366 627/1274/2367
+f 627/1274/2367 624/1273/2366 626/1184/2368
+s 500
+f 627/1274/2369 626/1184/2370 629/1275/2371
+f 629/1275/2371 626/1184/2370 628/1183/2372
+s 501
+f 629/1275/2373 628/1183/2374 631/1276/2375
+f 631/1276/2375 628/1183/2374 630/1186/2376
+s 502
+f 631/1276/2377 630/1186/2378 633/1277/2379
+f 633/1277/2379 630/1186/2378 632/1188/2380
+s 503
+f 633/1278/2381 632/1279/2382 635/1280/2383
+f 635/1280/2383 632/1279/2382 634/1194/2384
+s 504
+f 635/1280/2385 634/1194/2386 637/1281/2387
+f 637/1281/2387 634/1194/2386 636/1193/2388
+s 505
+f 637/1281/2389 636/1193/2390 639/1282/2391
+f 639/1282/2391 636/1193/2390 638/1196/2392
+s 506
+f 639/1282/2393 638/1196/2394 641/1283/2395
+f 641/1283/2395 638/1196/2394 640/1198/2396
+s 507
+f 641/1284/2397 640/1285/2398 643/1286/2399
+f 643/1286/2399 640/1285/2398 642/1204/2400
+s 508
+f 643/1286/2401 642/1204/2402 645/1287/2403
+f 645/1287/2403 642/1204/2402 644/1203/2404
+s 509
+f 645/1287/2405 644/1203/2406 647/1288/2407
+f 647/1288/2407 644/1203/2406 646/1206/2408
+s 510
+f 647/1288/2409 646/1206/2410 649/1289/2411
+f 649/1289/2411 646/1206/2410 648/1208/2412
+s 511
+f 649/1290/2413 648/1212/2414 651/1270/2415
+f 651/1270/2415 648/1212/2414 650/1211/2416
+s 512
+f 652/1291/2417 653/1292/2418 668/1294/2419
+f 668/1294/2419 653/1292/2418 670/1293/2420
+s 513
+f 653/1292/2421 654/1295/2422 670/1293/2423
+f 670/1293/2423 654/1295/2422 672/1296/2424
+s 514
+f 654/1295/2425 655/1297/2426 672/1296/2427
+f 672/1296/2427 655/1297/2426 674/1298/2428
+s 515
+f 655/1299/2429 656/1300/2430 674/1302/2431
+f 674/1302/2431 656/1300/2430 676/1301/2432
+s 516
+f 656/1300/2433 657/1303/2434 676/1301/2435
+f 676/1301/2435 657/1303/2434 678/1304/2436
+s 517
+f 657/1303/2437 658/1305/2438 678/1304/2439
+f 678/1304/2439 658/1305/2438 680/1306/2440
+s 518
+f 658/1305/2441 659/1307/2442 680/1306/2443
+f 680/1306/2443 659/1307/2442 682/1308/2444
+s 519
+f 659/1309/2445 660/1310/2446 682/1312/2447
+f 682/1312/2447 660/1310/2446 684/1311/2448
+s 520
+f 660/1310/2449 661/1313/2450 684/1311/2451
+f 684/1311/2451 661/1313/2450 686/1314/2452
+s 521
+f 661/1313/2453 662/1315/2454 686/1314/2455
+f 686/1314/2455 662/1315/2454 688/1316/2456
+s 522
+f 662/1315/2457 663/1317/2458 688/1316/2459
+f 688/1316/2459 663/1317/2458 690/1318/2460
+s 523
+f 663/1319/2461 664/1320/2462 690/1322/2463
+f 690/1322/2463 664/1320/2462 692/1321/2464
+s 524
+f 664/1320/2465 665/1323/2466 692/1321/2467
+f 692/1321/2467 665/1323/2466 694/1324/2468
+s 525
+f 665/1323/2469 666/1325/2470 694/1324/2471
+f 694/1324/2471 666/1325/2470 696/1326/2472
+s 526
+f 666/1327/2473 667/1328/2474 696/1330/2475
+f 696/1330/2475 667/1328/2474 698/1329/2476
+s 527
+f 667/1328/2477 652/1291/2478 698/1329/2479
+f 698/1329/2479 652/1291/2478 668/1294/2480
+s 528
+f 652/1331/2481 667/1332/2482 653/1346/2483
+f 667/1332/2482 666/1333/2484 653/1346/2483
+f 666/1333/2484 665/1334/2485 653/1346/2483
+f 665/1334/2485 664/1335/2486 653/1346/2483
+f 664/1335/2486 663/1336/2487 653/1346/2483
+f 663/1336/2487 662/1337/2488 653/1346/2483
+f 662/1337/2488 661/1338/2489 653/1346/2483
+f 661/1338/2489 660/1339/2490 653/1346/2483
+f 660/1339/2490 659/1340/2491 653/1346/2483
+f 659/1340/2491 658/1341/2492 653/1346/2483
+f 658/1341/2492 657/1342/2493 653/1346/2483
+f 657/1342/2493 656/1343/2494 653/1346/2483
+f 656/1343/2494 655/1344/2495 653/1346/2483
+f 655/1344/2495 654/1345/2496 653/1346/2483
+s 529
+f 671/1347/2497 673/1348/2498 669/1362/2499
+f 673/1348/2498 675/1349/2500 669/1362/2499
+f 675/1349/2500 677/1350/2501 669/1362/2499
+f 677/1350/2501 679/1351/2502 669/1362/2499
+f 679/1351/2502 681/1352/2503 669/1362/2499
+f 681/1352/2503 683/1353/2504 669/1362/2499
+f 683/1353/2504 685/1354/2505 669/1362/2499
+f 685/1354/2505 687/1355/2506 669/1362/2499
+f 687/1355/2506 689/1356/2507 669/1362/2499
+f 689/1356/2507 691/1357/2508 669/1362/2499
+f 691/1357/2508 693/1358/2509 669/1362/2499
+f 693/1358/2509 695/1359/2510 669/1362/2499
+f 695/1359/2510 697/1360/2511 669/1362/2499
+f 697/1360/2511 699/1361/2512 669/1362/2499
+s 530
+f 669/1363/2513 668/1294/2514 671/1364/2515
+f 671/1364/2515 668/1294/2514 670/1293/2516
+s 531
+f 668/1294/2517 669/1363/2518 698/1329/2519
+f 698/1329/2519 669/1363/2518 699/1365/2520
+s 532
+f 671/1364/2521 670/1293/2522 673/1366/2523
+f 673/1366/2523 670/1293/2522 672/1296/2524
+s 533
+f 673/1367/2525 672/1368/2526 675/1369/2527
+f 675/1369/2527 672/1368/2526 674/1302/2528
+s 534
+f 675/1369/2529 674/1302/2530 677/1370/2531
+f 677/1370/2531 674/1302/2530 676/1301/2532
+s 535
+f 677/1370/2533 676/1301/2534 679/1371/2535
+f 679/1371/2535 676/1301/2534 678/1304/2536
+s 536
+f 679/1371/2537 678/1304/2538 681/1372/2539
+f 681/1372/2539 678/1304/2538 680/1306/2540
+s 537
+f 681/1373/2541 680/1374/2542 683/1375/2543
+f 683/1375/2543 680/1374/2542 682/1312/2544
+s 538
+f 683/1375/2545 682/1312/2546 685/1376/2547
+f 685/1376/2547 682/1312/2546 684/1311/2548
+s 539
+f 685/1376/2549 684/1311/2550 687/1377/2551
+f 687/1377/2551 684/1311/2550 686/1314/2552
+s 540
+f 687/1377/2553 686/1314/2554 689/1378/2555
+f 689/1378/2555 686/1314/2554 688/1316/2556
+s 541
+f 689/1379/2557 688/1380/2558 691/1381/2559
+f 691/1381/2559 688/1380/2558 690/1322/2560
+s 542
+f 691/1381/2561 690/1322/2562 693/1382/2563
+f 693/1382/2563 690/1322/2562 692/1321/2564
+s 543
+f 693/1382/2565 692/1321/2566 695/1383/2567
+f 695/1383/2567 692/1321/2566 694/1324/2568
+s 544
+f 695/1383/2569 694/1324/2570 697/1384/2571
+f 697/1384/2571 694/1324/2570 696/1326/2572
+s 545
+f 697/1385/2573 696/1330/2574 699/1365/2575
+f 699/1365/2575 696/1330/2574 698/1329/2576
+s 546
+f 746/1387/2577 708/1388/2578 748/1386/2579
+f 748/1386/2579 708/1388/2578 701/1389/2580
+s 547
+f 747/1391/2581 750/1392/2582 743/1390/2583
+f 743/1390/2583 750/1392/2582 740/1393/2584
+s 548
+f 747/1391/2585 746/1387/2586 750/1392/2587
+f 750/1392/2587 746/1387/2586 748/1386/2588
+s 549
+f 768/1394/2589 713/1395/2590 704/1397/2591
+f 704/1397/2591 713/1395/2590 718/1396/2592
+s 550
+f 729/1398/2593 733/1399/2594 716/1401/2595
+f 716/1401/2595 733/1399/2594 719/1400/2596
+s 551
+f 716/1401/2597 719/1400/2598 713/1395/2599
+f 713/1395/2599 719/1400/2598 718/1396/2600
+s 552
+f 717/1402/2601 722/1403/2602 700/1406/2603
+f 700/1406/2603 722/1403/2602 749/1405/2604
+f 722/1403/2602 737/1404/2605 749/1405/2604
+s 553
+f 745/1407/2606 754/1408/2607 705/1410/2608
+f 705/1410/2608 754/1408/2607 770/1409/2609
+s 554
+f 758/1411/2610 738/1412/2611 710/1414/2612
+f 710/1414/2612 738/1412/2611 721/1413/2613
+s 555
+f 724/1415/2614 735/1416/2615 711/1418/2616
+f 711/1418/2616 735/1416/2615 725/1417/2617
+s 556
+f 761/1419/2618 751/1420/2619 739/1422/2620
+f 739/1422/2620 751/1420/2619 741/1421/2621
+s 557
+f 711/1418/2622 710/1414/2623 724/1415/2624
+f 724/1415/2624 710/1414/2623 721/1413/2625
+s 558
+f 739/1422/2626 738/1412/2627 761/1419/2628
+f 761/1419/2628 738/1412/2627 758/1411/2629
+s 559
+f 727/1423/2630 730/1424/2631 712/1426/2632
+f 712/1426/2632 730/1424/2631 715/1425/2633
+s 560
+f 714/1427/2634 767/1428/2635 709/1431/2636
+f 767/1428/2635 762/1429/2637 709/1431/2636
+f 762/1429/2637 759/1430/2638 709/1431/2636
+s 561
+f 732/1432/2639 736/1433/2640 720/1435/2641
+f 720/1435/2641 736/1433/2640 723/1434/2642
+s 562
+f 734/1436/2643 731/1437/2644 726/1439/2645
+f 726/1439/2645 731/1437/2644 728/1438/2646
+s 563
+f 753/1440/2647 755/1441/2648 742/1443/2649
+f 742/1443/2649 755/1441/2648 744/1442/2650
+s 564
+f 760/1444/2651 764/1445/2652 752/1447/2653
+f 752/1447/2653 764/1445/2652 756/1446/2654
+s 565
+f 766/1449/2655 771/1450/2656 763/1448/2657
+f 763/1448/2657 771/1450/2656 757/1451/2658
+s 566
+f 757/1451/2659 756/1446/2660 763/1448/2661
+f 763/1448/2661 756/1446/2660 764/1445/2662
+s 567
+f 701/1389/2663 700/1406/2664 748/1386/2665
+f 748/1386/2665 700/1406/2664 749/1405/2666
+s 568
+f 740/1393/2667 750/1392/2668 737/1404/2669
+f 737/1404/2669 750/1392/2668 749/1405/2670
+s off
+f 748/1386/2671 749/1405/2672 750/1392/2673
+s 569
+f 702/1452/2674 701/1389/2675 707/1453/2676
+f 707/1453/2676 701/1389/2675 708/1388/2677
+s 570
+f 704/1397/2678 703/1454/2679 768/1394/2680
+f 768/1394/2680 703/1454/2679 769/1455/2681
+s 571
+f 704/1456/2682 718/1457/2683 700/1406/2684
+f 700/1406/2684 718/1457/2683 717/1402/2685
+s 572
+f 705/1410/2686 770/1409/2687 706/1458/2688
+f 706/1458/2688 770/1409/2687 773/1459/2689
+s 573
+f 708/1388/2690 746/1387/2691 705/1460/2692
+f 705/1460/2692 746/1387/2691 745/1461/2693
+s 574
+f 710/1414/2694 709/1462/2695 758/1411/2696
+f 758/1411/2696 709/1462/2695 759/1463/2697
+s 575
+f 712/1464/2698 711/1418/2699 727/1465/2700
+f 727/1465/2700 711/1418/2699 725/1417/2701
+s 576
+f 709/1466/2702 712/1426/2703 714/1467/2704
+f 714/1467/2704 712/1426/2703 715/1425/2705
+s 577
+f 713/1395/2706 768/1394/2707 714/1468/2708
+f 714/1468/2708 768/1394/2707 767/1469/2709
+s 578
+f 715/1425/2710 730/1424/2711 716/1470/2712
+f 716/1470/2712 730/1424/2711 729/1471/2713
+s 579
+f 720/1472/2714 719/1400/2715 732/1473/2716
+f 732/1473/2716 719/1400/2715 733/1399/2717
+s 580
+f 717/1402/2718 720/1474/2719 722/1403/2720
+f 722/1403/2720 720/1474/2719 723/1475/2721
+s 581
+f 722/1403/2722 721/1476/2723 737/1404/2724
+f 737/1404/2724 721/1476/2723 738/1477/2725
+s 582
+f 723/1434/2726 736/1433/2727 724/1478/2728
+f 724/1478/2728 736/1433/2727 735/1479/2729
+s 583
+f 725/1417/2730 735/1416/2731 726/1480/2732
+f 726/1480/2732 735/1416/2731 734/1481/2733
+s 584
+f 727/1423/2734 726/1482/2735 730/1424/2736
+f 730/1424/2736 726/1482/2735 728/1483/2737
+s 585
+f 729/1398/2738 728/1484/2739 733/1399/2740
+f 733/1399/2740 728/1484/2739 731/1485/2741
+s 586
+f 732/1432/2742 731/1486/2743 736/1433/2744
+f 736/1433/2744 731/1486/2743 734/1487/2745
+s 587
+f 739/1488/2746 741/1489/2747 740/1393/2748
+f 740/1393/2748 741/1489/2747 743/1390/2749
+s 588
+f 742/1490/2750 741/1421/2751 753/1491/2752
+f 753/1491/2752 741/1421/2751 751/1420/2753
+s 589
+f 743/1390/2754 742/1492/2755 747/1391/2756
+f 747/1391/2756 742/1492/2755 744/1493/2757
+s 590
+f 745/1407/2758 744/1442/2759 754/1408/2760
+f 754/1408/2760 744/1442/2759 755/1441/2761
+s 591
+f 752/1494/2762 751/1420/2763 760/1495/2764
+f 760/1495/2764 751/1420/2763 761/1419/2765
+s 592
+f 752/1496/2766 756/1497/2767 753/1440/2768
+f 753/1440/2768 756/1497/2767 755/1441/2769
+s 593
+f 754/1408/2770 757/1498/2771 770/1409/2772
+f 770/1409/2772 757/1498/2771 771/1499/2773
+s 594
+f 760/1444/2774 759/1430/2775 764/1445/2776
+f 764/1445/2776 759/1430/2775 762/1429/2777
+s 595
+f 762/1429/2778 767/1428/2779 763/1448/2780
+f 763/1448/2780 767/1428/2779 766/1449/2781
+s off
+f 762/1429/2782 763/1448/2783 764/1445/2784
+s 596
+f 765/1500/2785 772/1501/2786 766/1449/2787
+f 766/1449/2787 772/1501/2786 771/1450/2788
+s 597
+f 703/1502/2789 704/1456/2790 702/1452/2791
+f 702/1452/2791 704/1456/2790 701/1389/2792
+f 700/1406/2793 701/1389/2792 704/1456/2790
+s 598
+f 706/1503/2794 707/1453/2795 705/1460/2796
+f 705/1460/2796 707/1453/2795 708/1388/2797
+s 599
+f 709/1462/2798 710/1414/2799 712/1464/2800
+f 712/1464/2800 710/1414/2799 711/1418/2801
+s 600
+f 714/1468/2802 715/1504/2803 713/1395/2804
+f 713/1395/2804 715/1504/2803 716/1401/2805
+s 601
+f 717/1505/2806 718/1396/2807 720/1472/2808
+f 720/1472/2808 718/1396/2807 719/1400/2809
+s 602
+f 722/1506/2810 723/1507/2811 721/1413/2812
+f 721/1413/2812 723/1507/2811 724/1415/2813
+s off
+f 725/1417/2814 726/1480/2815 727/1465/2816
+f 728/1483/2817 729/1471/2818 730/1424/2819
+f 731/1485/2820 732/1473/2821 733/1399/2822
+f 734/1487/2823 735/1479/2824 736/1433/2825
+s 603
+f 738/1477/2826 739/1488/2827 737/1404/2828
+f 737/1404/2828 739/1488/2827 740/1393/2829
+s off
+f 741/1489/2830 742/1492/2831 743/1390/2832
+s 604
+f 744/1493/2833 745/1461/2834 747/1391/2835
+f 747/1391/2835 745/1461/2834 746/1387/2836
+s off
+f 751/1420/2837 752/1494/2838 753/1491/2839
+s 605
+f 754/1408/2840 755/1441/2841 757/1498/2842
+f 757/1498/2842 755/1441/2841 756/1497/2843
+s 606
+f 759/1463/2844 760/1495/2845 758/1411/2846
+f 758/1411/2846 760/1495/2845 761/1419/2847
+s 607
+f 767/1428/2848 768/1508/2849 766/1449/2850
+f 766/1449/2850 768/1508/2849 765/1500/2851
+f 765/1500/2851 768/1508/2849 769/1509/2852
+s 608
+f 770/1409/2853 771/1499/2854 773/1459/2855
+f 773/1459/2855 771/1499/2854 772/1510/2856
+s 609
+f 707/1453/2857 775/1511/2858 702/1452/2859
+f 702/1452/2859 775/1511/2858 774/1512/2860
+s 610
+f 703/1514/2861 777/1515/2862 769/1513/2863
+f 769/1513/2863 777/1515/2862 776/1516/2864
+s 611
+f 706/1458/2865 773/1459/2866 778/1518/2867
+f 778/1518/2867 773/1459/2866 779/1517/2868
+s 612
+f 772/1501/2869 765/1500/2870 780/1520/2871
+f 780/1520/2871 765/1500/2870 781/1519/2872
+s 613
+f 702/1452/2873 774/1512/2874 703/1502/2875
+f 703/1502/2875 774/1512/2874 777/1521/2876
+s 614
+f 707/1453/2877 706/1503/2878 775/1511/2879
+f 775/1511/2879 706/1503/2878 778/1522/2880
+s 615
+f 769/1509/2881 776/1523/2882 765/1500/2883
+f 765/1500/2883 776/1523/2882 781/1519/2884
+s 616
+f 773/1524/2885 772/1501/2886 779/1525/2887
+f 779/1525/2887 772/1501/2886 780/1520/2888
+s 617
+f 775/1527/2889 783/1528/2890 774/1526/2891
+f 774/1526/2891 783/1528/2890 782/1529/2892
+s 618
+f 777/1515/2893 785/1530/2894 776/1516/2895
+f 776/1516/2895 785/1530/2894 784/1531/2896
+s 619
+f 778/1518/2897 779/1517/2898 786/1533/2899
+f 786/1533/2899 779/1517/2898 787/1532/2900
+s 620
+f 780/1534/2901 781/1535/2902 788/1537/2903
+f 788/1537/2903 781/1535/2902 789/1536/2904
+s 621
+f 774/1526/2905 782/1529/2906 777/1538/2907
+f 777/1538/2907 782/1529/2906 785/1539/2908
+s 622
+f 778/1518/2909 786/1533/2910 775/1540/2911
+f 775/1540/2911 786/1533/2910 783/1541/2912
+s 623
+f 776/1516/2913 784/1531/2914 781/1542/2915
+f 781/1542/2915 784/1531/2914 789/1543/2916
+s 624
+f 779/1544/2917 780/1534/2918 787/1545/2919
+f 787/1545/2919 780/1534/2918 788/1537/2920
+s 625
+f 783/1528/2921 791/1546/2922 782/1529/2923
+f 782/1529/2923 791/1546/2922 790/1547/2924
+s 626
+f 785/1530/2925 793/1548/2926 784/1531/2927
+f 784/1531/2927 793/1548/2926 792/1549/2928
+s 627
+f 786/1533/2929 787/1532/2930 794/1551/2931
+f 794/1551/2931 787/1532/2930 795/1550/2932
+s 628
+f 788/1537/2933 789/1536/2934 796/1553/2935
+f 796/1553/2935 789/1536/2934 797/1552/2936
+s 629
+f 785/1539/2937 782/1529/2938 793/1554/2939
+f 793/1554/2939 782/1529/2938 790/1547/2940
+s 630
+f 786/1533/2941 794/1551/2942 783/1541/2943
+f 783/1541/2943 794/1551/2942 791/1555/2944
+s 631
+f 784/1531/2945 792/1549/2946 789/1543/2947
+f 789/1543/2947 792/1549/2946 797/1556/2948
+s 632
+f 787/1545/2949 788/1537/2950 795/1557/2951
+f 795/1557/2951 788/1537/2950 796/1553/2952
+s 633
+f 790/1547/2953 791/1546/2954 798/1559/2955
+f 798/1559/2955 791/1546/2954 799/1558/2956
+s 634
+f 793/1548/2957 801/1560/2958 792/1549/2959
+f 792/1549/2959 801/1560/2958 800/1561/2960
+s 635
+f 794/1551/2961 795/1550/2962 802/1563/2963
+f 802/1563/2963 795/1550/2962 803/1562/2964
+s 636
+f 797/1552/2965 805/1564/2966 796/1553/2967
+f 796/1553/2967 805/1564/2966 804/1565/2968
+s 637
+f 790/1567/2969 798/1568/2970 793/1566/2971
+f 793/1566/2971 798/1568/2970 801/1569/2972
+s 638
+f 791/1570/2973 794/1571/2974 799/1573/2975
+f 799/1573/2975 794/1571/2974 802/1572/2976
+s 639
+f 792/1549/2977 800/1561/2978 797/1556/2979
+f 797/1556/2979 800/1561/2978 805/1574/2980
+s 640
+f 795/1557/2981 796/1553/2982 803/1575/2983
+f 803/1575/2983 796/1553/2982 804/1565/2984
+s off
+f 798/1568/2985 799/1573/2986 806/1576/2987
+f 800/1577/2988 801/1569/2989 806/1576/2990
+f 802/1572/2991 803/1578/2992 806/1576/2993
+f 804/1579/2994 805/1580/2995 806/1576/2996
+f 801/1569/2997 798/1568/2998 806/1576/2999
+f 799/1573/3000 802/1572/3001 806/1576/3002
+f 805/1580/3003 800/1577/3004 806/1576/3005
+f 803/1578/3006 804/1579/3007 806/1576/3008
+s 641
+f 815/1581/3009 821/1582/3010 808/1584/3011
+f 808/1584/3011 821/1582/3010 828/1583/3012
+s 642
+f 830/1585/3013 832/1586/3014 809/1588/3015
+f 809/1588/3015 832/1586/3014 810/1587/3016
+s 643
+f 819/1590/3017 816/1591/3018 813/1589/3019
+f 813/1589/3019 816/1591/3018 807/1592/3020
+s 644
+f 836/1593/3021 846/1594/3022 812/1596/3023
+f 812/1596/3023 846/1594/3022 820/1595/3024
+s 645
+f 813/1589/3025 812/1596/3026 819/1590/3027
+f 819/1590/3027 812/1596/3026 820/1595/3028
+s 646
+f 831/1597/3029 838/1598/3030 811/1600/3031
+f 811/1600/3031 838/1598/3030 837/1599/3032
+s 647
+f 818/1601/3033 827/1602/3034 814/1604/3035
+f 814/1604/3035 827/1602/3034 822/1603/3036
+s 648
+f 845/1605/3037 842/1606/3038 817/1608/3039
+f 817/1608/3039 842/1606/3038 824/1607/3040
+s 649
+f 826/1609/3041 833/1610/3042 823/1612/3043
+f 823/1612/3043 833/1610/3042 829/1611/3044
+s 650
+f 839/1614/3045 834/1615/3046 841/1613/3047
+f 841/1613/3047 834/1615/3046 825/1616/3048
+s 651
+f 826/1609/3049 825/1616/3050 833/1610/3051
+f 833/1610/3051 825/1616/3050 834/1615/3052
+s 652
+f 840/1617/3053 843/1618/3054 835/1620/3055
+f 835/1620/3055 843/1618/3054 844/1619/3056
+s 653
+f 808/1584/3057 807/1621/3058 815/1581/3059
+f 815/1581/3059 807/1621/3058 816/1622/3060
+s 654
+f 809/1588/3061 808/1584/3062 830/1585/3063
+f 830/1585/3063 808/1584/3062 828/1583/3064
+s 655
+f 807/1592/3065 809/1623/3066 813/1589/3067
+f 813/1589/3067 809/1623/3066 810/1624/3068
+s 656
+f 811/1600/3069 810/1625/3070 831/1597/3071
+f 831/1597/3071 810/1625/3070 832/1626/3072
+s 657
+f 811/1627/3073 837/1628/3074 812/1596/3075
+f 812/1596/3075 837/1628/3074 836/1593/3076
+s 658
+f 815/1581/3077 814/1629/3078 821/1582/3079
+f 821/1582/3079 814/1629/3078 822/1630/3080
+s 659
+f 816/1591/3081 819/1590/3082 814/1631/3083
+f 814/1631/3083 819/1590/3082 818/1632/3084
+s 660
+f 818/1601/3085 817/1608/3086 827/1602/3087
+f 827/1602/3087 817/1608/3086 824/1607/3088
+s 661
+f 817/1633/3089 820/1595/3090 845/1634/3091
+f 845/1634/3091 820/1595/3090 846/1594/3092
+s 662
+f 823/1635/3093 822/1603/3094 826/1636/3095
+f 826/1636/3095 822/1603/3094 827/1602/3096
+s 663
+f 823/1637/3097 829/1638/3098 821/1582/3099
+f 821/1582/3099 829/1638/3098 828/1583/3100
+s 664
+f 824/1607/3101 842/1606/3102 825/1639/3103
+f 825/1639/3103 842/1606/3102 841/1640/3104
+s 665
+f 829/1642/3105 833/1643/3106 830/1641/3107
+f 830/1641/3107 833/1643/3106 832/1626/3108
+s 666
+f 831/1597/3109 834/1644/3110 838/1598/3111
+f 838/1598/3111 834/1644/3110 839/1645/3112
+s 667
+f 835/1646/3113 844/1647/3114 836/1593/3115
+f 836/1593/3115 844/1647/3114 846/1594/3116
+s 668
+f 835/1648/3117 837/1599/3118 840/1649/3119
+f 840/1649/3119 837/1599/3118 838/1598/3120
+s 669
+f 840/1650/3121 839/1614/3122 843/1651/3123
+f 843/1651/3123 839/1614/3122 841/1613/3124
+s 670
+f 843/1618/3125 842/1652/3126 844/1619/3127
+f 844/1619/3127 842/1652/3126 845/1653/3128
+s off
+f 807/1621/3129 808/1584/3130 809/1588/3131
+s 671
+f 810/1624/3132 811/1627/3133 813/1589/3134
+f 813/1589/3134 811/1627/3133 812/1596/3135
+s off
+f 814/1631/3136 815/1654/3137 816/1591/3138
+s 672
+f 817/1633/3139 818/1632/3140 820/1595/3141
+f 820/1595/3141 818/1632/3140 819/1590/3142
+s off
+f 821/1655/3143 822/1603/3144 823/1635/3145
+s 673
+f 824/1607/3146 825/1639/3147 827/1602/3148
+f 827/1602/3148 825/1639/3147 826/1636/3149
+s off
+f 828/1583/3150 829/1638/3151 830/1585/3152
+s 674
+f 831/1597/3153 832/1626/3154 834/1644/3155
+f 834/1644/3155 832/1626/3154 833/1643/3156
+s off
+f 835/1646/3157 836/1593/3158 837/1628/3159
+f 838/1598/3160 839/1645/3161 840/1649/3162
+f 841/1613/3163 842/1656/3164 843/1651/3165
+f 844/1647/3166 845/1634/3167 846/1594/3168
+s 675
+f 847/1657/3169 849/1658/3170 879/1660/3171
+f 879/1660/3171 849/1658/3170 881/1659/3172
+s 676
+f 849/1658/3173 851/1661/3174 881/1659/3175
+f 881/1659/3175 851/1661/3174 883/1662/3176
+s 677
+f 851/1661/3177 853/1663/3178 883/1662/3179
+f 883/1662/3179 853/1663/3178 885/1664/3180
+s 678
+f 853/1665/3181 855/1666/3182 885/1668/3183
+f 885/1668/3183 855/1666/3182 887/1667/3184
+s 679
+f 855/1666/3185 857/1669/3186 887/1667/3187
+f 887/1667/3187 857/1669/3186 889/1670/3188
+s 680
+f 857/1669/3189 859/1671/3190 889/1670/3191
+f 889/1670/3191 859/1671/3190 891/1672/3192
+s 681
+f 859/1671/3193 861/1673/3194 891/1672/3195
+f 891/1672/3195 861/1673/3194 893/1674/3196
+s 682
+f 861/1675/3197 863/1676/3198 893/1678/3199
+f 893/1678/3199 863/1676/3198 895/1677/3200
+s 683
+f 863/1676/3201 865/1679/3202 895/1677/3203
+f 895/1677/3203 865/1679/3202 897/1680/3204
+s 684
+f 865/1679/3205 867/1681/3206 897/1680/3207
+f 897/1680/3207 867/1681/3206 899/1682/3208
+s 685
+f 867/1681/3209 869/1683/3210 899/1682/3211
+f 899/1682/3211 869/1683/3210 901/1684/3212
+s 686
+f 869/1685/3213 871/1686/3214 901/1688/3215
+f 901/1688/3215 871/1686/3214 903/1687/3216
+s 687
+f 871/1686/3217 873/1689/3218 903/1687/3219
+f 903/1687/3219 873/1689/3218 905/1690/3220
+s 688
+f 873/1691/3221 875/1692/3222 905/1694/3223
+f 905/1694/3223 875/1692/3222 907/1693/3224
+s 689
+f 875/1692/3225 877/1695/3226 907/1693/3227
+f 907/1693/3227 877/1695/3226 909/1696/3228
+s 690
+f 877/1695/3229 847/1657/3230 909/1696/3231
+f 909/1696/3231 847/1657/3230 879/1660/3232
+s 691
+f 878/1697/3233 876/1698/3234 848/1712/3235
+f 876/1698/3234 874/1699/3236 848/1712/3235
+f 874/1699/3236 872/1700/3237 848/1712/3235
+f 872/1700/3237 870/1701/3238 848/1712/3235
+f 870/1701/3238 868/1702/3239 848/1712/3235
+f 868/1702/3239 866/1703/3240 848/1712/3235
+f 866/1703/3240 864/1704/3241 848/1712/3235
+f 864/1704/3241 862/1705/3242 848/1712/3235
+f 862/1705/3242 860/1706/3243 848/1712/3235
+f 860/1706/3243 858/1707/3244 848/1712/3235
+f 858/1707/3244 856/1708/3245 848/1712/3235
+f 856/1708/3245 854/1709/3246 848/1712/3235
+f 854/1709/3246 852/1710/3247 848/1712/3235
+f 852/1710/3247 850/1711/3248 848/1712/3235
+s 692
+f 882/1713/3249 884/1714/3250 880/1728/3251
+f 884/1714/3250 886/1715/3252 880/1728/3251
+f 886/1715/3252 888/1716/3253 880/1728/3251
+f 888/1716/3253 890/1717/3254 880/1728/3251
+f 890/1717/3254 892/1718/3255 880/1728/3251
+f 892/1718/3255 894/1719/3256 880/1728/3251
+f 894/1719/3256 896/1720/3257 880/1728/3251
+f 896/1720/3257 898/1721/3258 880/1728/3251
+f 898/1721/3258 900/1722/3259 880/1728/3251
+f 900/1722/3259 902/1723/3260 880/1728/3251
+f 902/1723/3260 904/1724/3261 880/1728/3251
+f 904/1724/3261 906/1725/3262 880/1728/3251
+f 906/1725/3262 908/1726/3263 880/1728/3251
+f 908/1726/3263 910/1727/3264 880/1728/3251
+s 693
+f 848/1729/3265 847/1657/3266 878/1730/3267
+f 878/1730/3267 847/1657/3266 877/1695/3268
+s 694
+f 847/1657/3269 848/1729/3270 849/1658/3271
+f 849/1658/3271 848/1729/3270 850/1731/3272
+s 695
+f 849/1658/3273 850/1731/3274 851/1661/3275
+f 851/1661/3275 850/1731/3274 852/1732/3276
+s 696
+f 851/1733/3277 852/1734/3278 853/1665/3279
+f 853/1665/3279 852/1734/3278 854/1735/3280
+s 697
+f 853/1665/3281 854/1735/3282 855/1666/3283
+f 855/1666/3283 854/1735/3282 856/1736/3284
+s 698
+f 855/1666/3285 856/1736/3286 857/1669/3287
+f 857/1669/3287 856/1736/3286 858/1737/3288
+s 699
+f 857/1669/3289 858/1737/3290 859/1671/3291
+f 859/1671/3291 858/1737/3290 860/1738/3292
+s 700
+f 859/1739/3293 860/1740/3294 861/1675/3295
+f 861/1675/3295 860/1740/3294 862/1741/3296
+s 701
+f 861/1675/3297 862/1741/3298 863/1676/3299
+f 863/1676/3299 862/1741/3298 864/1742/3300
+s 702
+f 863/1676/3301 864/1742/3302 865/1679/3303
+f 865/1679/3303 864/1742/3302 866/1743/3304
+s 703
+f 865/1679/3305 866/1743/3306 867/1681/3307
+f 867/1681/3307 866/1743/3306 868/1744/3308
+s 704
+f 867/1745/3309 868/1746/3310 869/1685/3311
+f 869/1685/3311 868/1746/3310 870/1747/3312
+s 705
+f 869/1685/3313 870/1747/3314 871/1686/3315
+f 871/1686/3315 870/1747/3314 872/1748/3316
+s 706
+f 871/1686/3317 872/1748/3318 873/1689/3319
+f 873/1689/3319 872/1748/3318 874/1749/3320
+s 707
+f 873/1689/3321 874/1749/3322 875/1751/3323
+f 875/1751/3323 874/1749/3322 876/1750/3324
+s 708
+f 875/1692/3325 876/1752/3326 877/1695/3327
+f 877/1695/3327 876/1752/3326 878/1730/3328
+s 709
+f 880/1753/3329 879/1660/3330 882/1754/3331
+f 882/1754/3331 879/1660/3330 881/1659/3332
+s 710
+f 879/1660/3333 880/1753/3334 909/1696/3335
+f 909/1696/3335 880/1753/3334 910/1755/3336
+s 711
+f 882/1754/3337 881/1659/3338 884/1756/3339
+f 884/1756/3339 881/1659/3338 883/1662/3340
+s 712
+f 884/1757/3341 883/1758/3342 886/1759/3343
+f 886/1759/3343 883/1758/3342 885/1668/3344
+s 713
+f 886/1759/3345 885/1668/3346 888/1760/3347
+f 888/1760/3347 885/1668/3346 887/1667/3348
+s 714
+f 888/1760/3349 887/1667/3350 890/1761/3351
+f 890/1761/3351 887/1667/3350 889/1670/3352
+s 715
+f 890/1761/3353 889/1670/3354 892/1762/3355
+f 892/1762/3355 889/1670/3354 891/1672/3356
+s 716
+f 892/1763/3357 891/1764/3358 894/1765/3359
+f 894/1765/3359 891/1764/3358 893/1678/3360
+s 717
+f 894/1765/3361 893/1678/3362 896/1766/3363
+f 896/1766/3363 893/1678/3362 895/1677/3364
+s 718
+f 896/1766/3365 895/1677/3366 898/1767/3367
+f 898/1767/3367 895/1677/3366 897/1680/3368
+s 719
+f 898/1767/3369 897/1680/3370 900/1768/3371
+f 900/1768/3371 897/1680/3370 899/1682/3372
+s 720
+f 900/1769/3373 899/1770/3374 902/1771/3375
+f 902/1771/3375 899/1770/3374 901/1688/3376
+s 721
+f 902/1771/3377 901/1688/3378 904/1772/3379
+f 904/1772/3379 901/1688/3378 903/1687/3380
+s 722
+f 904/1772/3381 903/1687/3382 906/1773/3383
+f 906/1773/3383 903/1687/3382 905/1690/3384
+s 723
+f 906/1773/3385 905/1690/3386 908/1775/3387
+f 908/1775/3387 905/1690/3386 907/1774/3388
+s 724
+f 908/1776/3389 907/1693/3390 910/1755/3391
+f 910/1755/3391 907/1693/3390 909/1696/3392
+s 725
+f 919/1777/3393 925/1778/3394 912/1780/3395
+f 912/1780/3395 925/1778/3394 932/1779/3396
+s 726
+f 934/1781/3397 936/1782/3398 913/1784/3399
+f 913/1784/3399 936/1782/3398 914/1783/3400
+s 727
+f 923/1786/3401 920/1787/3402 917/1785/3403
+f 917/1785/3403 920/1787/3402 911/1788/3404
+s 728
+f 940/1789/3405 950/1790/3406 916/1792/3407
+f 916/1792/3407 950/1790/3406 924/1791/3408
+s 729
+f 917/1785/3409 916/1792/3410 923/1786/3411
+f 923/1786/3411 916/1792/3410 924/1791/3412
+s 730
+f 935/1793/3413 942/1794/3414 915/1796/3415
+f 915/1796/3415 942/1794/3414 941/1795/3416
+s 731
+f 922/1797/3417 931/1798/3418 918/1800/3419
+f 918/1800/3419 931/1798/3418 926/1799/3420
+s 732
+f 949/1801/3421 946/1802/3422 921/1804/3423
+f 921/1804/3423 946/1802/3422 928/1803/3424
+s 733
+f 930/1805/3425 937/1806/3426 927/1808/3427
+f 927/1808/3427 937/1806/3426 933/1807/3428
+s 734
+f 943/1810/3429 938/1811/3430 945/1809/3431
+f 945/1809/3431 938/1811/3430 929/1812/3432
+s 735
+f 930/1805/3433 929/1812/3434 937/1806/3435
+f 937/1806/3435 929/1812/3434 938/1811/3436
+s 736
+f 944/1813/3437 947/1814/3438 939/1816/3439
+f 939/1816/3439 947/1814/3438 948/1815/3440
+s 737
+f 912/1780/3441 911/1817/3442 919/1777/3443
+f 919/1777/3443 911/1817/3442 920/1818/3444
+s 738
+f 913/1784/3445 912/1819/3446 934/1781/3447
+f 934/1781/3447 912/1819/3446 932/1820/3448
+s 739
+f 911/1821/3449 913/1784/3450 917/1822/3451
+f 917/1822/3451 913/1784/3450 914/1783/3452
+s 740
+f 915/1796/3453 914/1783/3454 935/1793/3455
+f 935/1793/3455 914/1783/3454 936/1782/3456
+s 741
+f 915/1796/3457 941/1795/3458 916/1823/3459
+f 916/1823/3459 941/1795/3458 940/1824/3460
+s 742
+f 919/1777/3461 918/1800/3462 925/1778/3463
+f 925/1778/3463 918/1800/3462 926/1799/3464
+s 743
+f 920/1818/3465 923/1825/3466 918/1800/3467
+f 918/1800/3467 923/1825/3466 922/1797/3468
+s 744
+f 922/1826/3469 921/1804/3470 931/1827/3471
+f 931/1827/3471 921/1804/3470 928/1803/3472
+s 745
+f 921/1828/3473 924/1791/3474 949/1829/3475
+f 949/1829/3475 924/1791/3474 950/1790/3476
+s 746
+f 927/1830/3477 926/1799/3478 930/1831/3479
+f 930/1831/3479 926/1799/3478 931/1798/3480
+s 747
+f 927/1830/3481 933/1832/3482 925/1778/3483
+f 925/1778/3483 933/1832/3482 932/1779/3484
+s 748
+f 928/1803/3485 946/1802/3486 929/1833/3487
+f 929/1833/3487 946/1802/3486 945/1834/3488
+s 749
+f 933/1835/3489 937/1836/3490 934/1781/3491
+f 934/1781/3491 937/1836/3490 936/1782/3492
+s 750
+f 935/1793/3493 938/1837/3494 942/1794/3495
+f 942/1794/3495 938/1837/3494 943/1838/3496
+s 751
+f 939/1839/3497 948/1840/3498 940/1789/3499
+f 940/1789/3499 948/1840/3498 950/1790/3500
+s 752
+f 939/1816/3501 941/1841/3502 944/1813/3503
+f 944/1813/3503 941/1841/3502 942/1842/3504
+s 753
+f 944/1843/3505 943/1810/3506 947/1844/3507
+f 947/1844/3507 943/1810/3506 945/1809/3508
+s 754
+f 947/1845/3509 946/1802/3510 948/1846/3511
+f 948/1846/3511 946/1802/3510 949/1801/3512
+s off
+f 911/1821/3513 912/1819/3514 913/1784/3515
+s 755
+f 914/1783/3516 915/1796/3517 917/1822/3518
+f 917/1822/3518 915/1796/3517 916/1823/3519
+s off
+f 918/1800/3520 919/1777/3521 920/1818/3522
+s 756
+f 921/1828/3523 922/1847/3524 924/1791/3525
+f 924/1791/3525 922/1847/3524 923/1786/3526
+s off
+f 925/1778/3527 926/1799/3528 927/1830/3529
+s 757
+f 928/1803/3530 929/1833/3531 931/1827/3532
+f 931/1827/3532 929/1833/3531 930/1848/3533
+s off
+f 932/1820/3534 933/1835/3535 934/1781/3536
+s 758
+f 935/1793/3537 936/1782/3538 938/1837/3539
+f 938/1837/3539 936/1782/3538 937/1836/3540
+s off
+f 939/1839/3541 940/1789/3542 941/1849/3543
+f 942/1850/3544 943/1810/3545 944/1843/3546
+f 945/1834/3547 946/1802/3548 947/1845/3549
+f 948/1840/3550 949/1829/3551 950/1790/3552
+s 759
+f 951/1851/3553 952/1852/3554 967/1854/3555
+f 967/1854/3555 952/1852/3554 969/1853/3556
+s 760
+f 952/1852/3557 953/1855/3558 969/1853/3559
+f 969/1853/3559 953/1855/3558 971/1856/3560
+s 761
+f 953/1855/3561 954/1857/3562 971/1856/3563
+f 971/1856/3563 954/1857/3562 973/1858/3564
+s 762
+f 954/1857/3565 955/1859/3566 973/1858/3567
+f 973/1858/3567 955/1859/3566 975/1860/3568
+s 763
+f 955/1859/3569 956/1861/3570 975/1860/3571
+f 975/1860/3571 956/1861/3570 977/1862/3572
+s 764
+f 956/1863/3573 957/1864/3574 977/1866/3575
+f 977/1866/3575 957/1864/3574 979/1865/3576
+s 765
+f 957/1864/3577 958/1867/3578 979/1865/3579
+f 979/1865/3579 958/1867/3578 981/1868/3580
+s 766
+f 958/1867/3581 959/1869/3582 981/1868/3583
+f 981/1868/3583 959/1869/3582 983/1870/3584
+s 767
+f 959/1869/3585 960/1871/3586 983/1870/3587
+f 983/1870/3587 960/1871/3586 985/1872/3588
+s 768
+f 960/1873/3589 961/1874/3590 985/1876/3591
+f 985/1876/3591 961/1874/3590 987/1875/3592
+s 769
+f 961/1874/3593 962/1877/3594 987/1875/3595
+f 987/1875/3595 962/1877/3594 989/1878/3596
+s 770
+f 962/1877/3597 963/1879/3598 989/1878/3599
+f 989/1878/3599 963/1879/3598 991/1880/3600
+s 771
+f 963/1879/3601 964/1881/3602 991/1880/3603
+f 991/1880/3603 964/1881/3602 993/1882/3604
+s 772
+f 964/1883/3605 965/1884/3606 993/1886/3607
+f 993/1886/3607 965/1884/3606 995/1885/3608
+s 773
+f 965/1884/3609 966/1887/3610 995/1885/3611
+f 995/1885/3611 966/1887/3610 997/1888/3612
+s 774
+f 966/1889/3613 951/1851/3614 997/1890/3615
+f 997/1890/3615 951/1851/3614 967/1854/3616
+s 775
+f 951/1891/3617 966/1892/3618 952/1906/3619
+f 966/1892/3618 965/1893/3620 952/1906/3619
+f 965/1893/3620 964/1894/3621 952/1906/3619
+f 964/1894/3621 963/1895/3622 952/1906/3619
+f 963/1895/3622 962/1896/3623 952/1906/3619
+f 962/1896/3623 961/1897/3624 952/1906/3619
+f 961/1897/3624 960/1898/3625 952/1906/3619
+f 960/1898/3625 959/1899/3626 952/1906/3619
+f 959/1899/3626 958/1900/3627 952/1906/3619
+f 958/1900/3627 957/1901/3628 952/1906/3619
+f 957/1901/3628 956/1902/3629 952/1906/3619
+f 956/1902/3629 955/1903/3630 952/1906/3619
+f 955/1903/3630 954/1904/3631 952/1906/3619
+f 954/1904/3631 953/1905/3632 952/1906/3619
+s 776
+f 970/1907/3633 972/1908/3634 968/1922/3635
+f 972/1908/3634 974/1909/3636 968/1922/3635
+f 974/1909/3636 976/1910/3637 968/1922/3635
+f 976/1910/3637 978/1911/3638 968/1922/3635
+f 978/1911/3638 980/1912/3639 968/1922/3635
+f 980/1912/3639 982/1913/3640 968/1922/3635
+f 982/1913/3640 984/1914/3641 968/1922/3635
+f 984/1914/3641 986/1915/3642 968/1922/3635
+f 986/1915/3642 988/1916/3643 968/1922/3635
+f 988/1916/3643 990/1917/3644 968/1922/3635
+f 990/1917/3644 992/1918/3645 968/1922/3635
+f 992/1918/3645 994/1919/3646 968/1922/3635
+f 994/1919/3646 996/1920/3647 968/1922/3635
+f 996/1920/3647 998/1921/3648 968/1922/3635
+s 777
+f 968/1923/3649 967/1854/3650 970/1924/3651
+f 970/1924/3651 967/1854/3650 969/1853/3652
+s 778
+f 967/1925/3653 968/1926/3654 997/1888/3655
+f 997/1888/3655 968/1926/3654 998/1927/3656
+s 779
+f 970/1924/3657 969/1853/3658 972/1928/3659
+f 972/1928/3659 969/1853/3658 971/1856/3660
+s 780
+f 972/1928/3661 971/1856/3662 974/1929/3663
+f 974/1929/3663 971/1856/3662 973/1858/3664
+s 781
+f 974/1929/3665 973/1858/3666 976/1930/3667
+f 976/1930/3667 973/1858/3666 975/1860/3668
+s 782
+f 976/1931/3669 975/1932/3670 978/1933/3671
+f 978/1933/3671 975/1932/3670 977/1866/3672
+s 783
+f 978/1933/3673 977/1866/3674 980/1934/3675
+f 980/1934/3675 977/1866/3674 979/1865/3676
+s 784
+f 980/1934/3677 979/1865/3678 982/1935/3679
+f 982/1935/3679 979/1865/3678 981/1868/3680
+s 785
+f 982/1935/3681 981/1868/3682 984/1936/3683
+f 984/1936/3683 981/1868/3682 983/1870/3684
+s 786
+f 984/1937/3685 983/1938/3686 986/1939/3687
+f 986/1939/3687 983/1938/3686 985/1876/3688
+s 787
+f 986/1939/3689 985/1876/3690 988/1940/3691
+f 988/1940/3691 985/1876/3690 987/1875/3692
+s 788
+f 988/1940/3693 987/1875/3694 990/1941/3695
+f 990/1941/3695 987/1875/3694 989/1878/3696
+s 789
+f 990/1941/3697 989/1878/3698 992/1942/3699
+f 992/1942/3699 989/1878/3698 991/1880/3700
+s 790
+f 992/1943/3701 991/1944/3702 994/1945/3703
+f 994/1945/3703 991/1944/3702 993/1886/3704
+s 791
+f 994/1945/3705 993/1886/3706 996/1946/3707
+f 996/1946/3707 993/1886/3706 995/1885/3708
+s 792
+f 996/1946/3709 995/1885/3710 998/1927/3711
+f 998/1927/3711 995/1885/3710 997/1888/3712
+s 793
+f 999/1947/3713 1001/1948/3714 1031/1950/3715
+f 1031/1950/3715 1001/1948/3714 1033/1949/3716
+s 794
+f 1001/1948/3717 1003/1951/3718 1033/1949/3719
+f 1033/1949/3719 1003/1951/3718 1035/1952/3720
+s 795
+f 1003/1951/3721 1005/1953/3722 1035/1952/3723
+f 1035/1952/3723 1005/1953/3722 1037/1954/3724
+s 796
+f 1005/1953/3725 1007/1955/3726 1037/1954/3727
+f 1037/1954/3727 1007/1955/3726 1039/1956/3728
+s 797
+f 1007/1955/3729 1009/1957/3730 1039/1956/3731
+f 1039/1956/3731 1009/1957/3730 1041/1958/3732
+s 798
+f 1009/1959/3733 1011/1960/3734 1041/1962/3735
+f 1041/1962/3735 1011/1960/3734 1043/1961/3736
+s 799
+f 1011/1960/3737 1013/1963/3738 1043/1961/3739
+f 1043/1961/3739 1013/1963/3738 1045/1964/3740
+s 800
+f 1013/1963/3741 1015/1965/3742 1045/1964/3743
+f 1045/1964/3743 1015/1965/3742 1047/1966/3744
+s 801
+f 1015/1965/3745 1017/1967/3746 1047/1966/3747
+f 1047/1966/3747 1017/1967/3746 1049/1968/3748
+s 802
+f 1017/1969/3749 1019/1970/3750 1049/1972/3751
+f 1049/1972/3751 1019/1970/3750 1051/1971/3752
+s 803
+f 1019/1970/3753 1021/1973/3754 1051/1971/3755
+f 1051/1971/3755 1021/1973/3754 1053/1974/3756
+s 804
+f 1021/1973/3757 1023/1975/3758 1053/1974/3759
+f 1053/1974/3759 1023/1975/3758 1055/1976/3760
+s 805
+f 1023/1975/3761 1025/1977/3762 1055/1976/3763
+f 1055/1976/3763 1025/1977/3762 1057/1978/3764
+s 806
+f 1025/1979/3765 1027/1980/3766 1057/1982/3767
+f 1057/1982/3767 1027/1980/3766 1059/1981/3768
+s 807
+f 1027/1980/3769 1029/1983/3770 1059/1981/3771
+f 1059/1981/3771 1029/1983/3770 1061/1984/3772
+s 808
+f 1029/1985/3773 999/1947/3774 1061/1986/3775
+f 1061/1986/3775 999/1947/3774 1031/1950/3776
+s 809
+f 1030/1987/3777 1028/1988/3778 1000/2002/3779
+f 1028/1988/3778 1026/1989/3780 1000/2002/3779
+f 1026/1989/3780 1024/1990/3781 1000/2002/3779
+f 1024/1990/3781 1022/1991/3782 1000/2002/3779
+f 1022/1991/3782 1020/1992/3783 1000/2002/3779
+f 1020/1992/3783 1018/1993/3784 1000/2002/3779
+f 1018/1993/3784 1016/1994/3785 1000/2002/3779
+f 1016/1994/3785 1014/1995/3786 1000/2002/3779
+f 1014/1995/3786 1012/1996/3787 1000/2002/3779
+f 1012/1996/3787 1010/1997/3788 1000/2002/3779
+f 1010/1997/3788 1008/1998/3789 1000/2002/3779
+f 1008/1998/3789 1006/1999/3790 1000/2002/3779
+f 1006/1999/3790 1004/2000/3791 1000/2002/3779
+f 1004/2000/3791 1002/2001/3792 1000/2002/3779
+s 810
+f 1034/2003/3793 1036/2004/3794 1032/2018/3795
+f 1036/2004/3794 1038/2005/3796 1032/2018/3795
+f 1038/2005/3796 1040/2006/3797 1032/2018/3795
+f 1040/2006/3797 1042/2007/3798 1032/2018/3795
+f 1042/2007/3798 1044/2008/3799 1032/2018/3795
+f 1044/2008/3799 1046/2009/3800 1032/2018/3795
+f 1046/2009/3800 1048/2010/3801 1032/2018/3795
+f 1048/2010/3801 1050/2011/3802 1032/2018/3795
+f 1050/2011/3802 1052/2012/3803 1032/2018/3795
+f 1052/2012/3803 1054/2013/3804 1032/2018/3795
+f 1054/2013/3804 1056/2014/3805 1032/2018/3795
+f 1056/2014/3805 1058/2015/3806 1032/2018/3795
+f 1058/2015/3806 1060/2016/3807 1032/2018/3795
+f 1060/2016/3807 1062/2017/3808 1032/2018/3795
+s 811
+f 1000/2019/3809 999/2020/3810 1030/2021/3811
+f 1030/2021/3811 999/2020/3810 1029/1983/3812
+s 812
+f 999/1947/3813 1000/2022/3814 1001/1948/3815
+f 1001/1948/3815 1000/2022/3814 1002/2023/3816
+s 813
+f 1001/1948/3817 1002/2023/3818 1003/1951/3819
+f 1003/1951/3819 1002/2023/3818 1004/2024/3820
+s 814
+f 1003/1951/3821 1004/2024/3822 1005/1953/3823
+f 1005/1953/3823 1004/2024/3822 1006/2025/3824
+s 815
+f 1005/1953/3825 1006/2025/3826 1007/1955/3827
+f 1007/1955/3827 1006/2025/3826 1008/2026/3828
+s 816
+f 1007/2027/3829 1008/2028/3830 1009/1959/3831
+f 1009/1959/3831 1008/2028/3830 1010/2029/3832
+s 817
+f 1009/1959/3833 1010/2029/3834 1011/1960/3835
+f 1011/1960/3835 1010/2029/3834 1012/2030/3836
+s 818
+f 1011/1960/3837 1012/2030/3838 1013/1963/3839
+f 1013/1963/3839 1012/2030/3838 1014/2031/3840
+s 819
+f 1013/1963/3841 1014/2031/3842 1015/1965/3843
+f 1015/1965/3843 1014/2031/3842 1016/2032/3844
+s 820
+f 1015/2033/3845 1016/2034/3846 1017/1969/3847
+f 1017/1969/3847 1016/2034/3846 1018/2035/3848
+s 821
+f 1017/1969/3849 1018/2035/3850 1019/1970/3851
+f 1019/1970/3851 1018/2035/3850 1020/2036/3852
+s 822
+f 1019/1970/3853 1020/2036/3854 1021/1973/3855
+f 1021/1973/3855 1020/2036/3854 1022/2037/3856
+s 823
+f 1021/1973/3857 1022/2037/3858 1023/1975/3859
+f 1023/1975/3859 1022/2037/3858 1024/2038/3860
+s 824
+f 1023/2039/3861 1024/2040/3862 1025/1979/3863
+f 1025/1979/3863 1024/2040/3862 1026/2041/3864
+s 825
+f 1025/1979/3865 1026/2041/3866 1027/1980/3867
+f 1027/1980/3867 1026/2041/3866 1028/2042/3868
+s 826
+f 1027/1980/3869 1028/2042/3870 1029/1983/3871
+f 1029/1983/3871 1028/2042/3870 1030/2021/3872
+s 827
+f 1032/2043/3873 1031/1950/3874 1034/2044/3875
+f 1034/2044/3875 1031/1950/3874 1033/1949/3876
+s 828
+f 1031/2045/3877 1032/2046/3878 1061/1984/3879
+f 1061/1984/3879 1032/2046/3878 1062/2047/3880
+s 829
+f 1034/2044/3881 1033/1949/3882 1036/2048/3883
+f 1036/2048/3883 1033/1949/3882 1035/1952/3884
+s 830
+f 1036/2048/3885 1035/1952/3886 1038/2049/3887
+f 1038/2049/3887 1035/1952/3886 1037/1954/3888
+s 831
+f 1038/2049/3889 1037/1954/3890 1040/2050/3891
+f 1040/2050/3891 1037/1954/3890 1039/1956/3892
+s 832
+f 1040/2051/3893 1039/2052/3894 1042/2053/3895
+f 1042/2053/3895 1039/2052/3894 1041/1962/3896
+s 833
+f 1042/2053/3897 1041/1962/3898 1044/2054/3899
+f 1044/2054/3899 1041/1962/3898 1043/1961/3900
+s 834
+f 1044/2054/3901 1043/1961/3902 1046/2055/3903
+f 1046/2055/3903 1043/1961/3902 1045/1964/3904
+s 835
+f 1046/2055/3905 1045/1964/3906 1048/2056/3907
+f 1048/2056/3907 1045/1964/3906 1047/1966/3908
+s 836
+f 1048/2057/3909 1047/2058/3910 1050/2059/3911
+f 1050/2059/3911 1047/2058/3910 1049/1972/3912
+s 837
+f 1050/2059/3913 1049/1972/3914 1052/2060/3915
+f 1052/2060/3915 1049/1972/3914 1051/1971/3916
+s 838
+f 1052/2060/3917 1051/1971/3918 1054/2061/3919
+f 1054/2061/3919 1051/1971/3918 1053/1974/3920
+s 839
+f 1054/2061/3921 1053/1974/3922 1056/2062/3923
+f 1056/2062/3923 1053/1974/3922 1055/1976/3924
+s 840
+f 1056/2063/3925 1055/2064/3926 1058/2065/3927
+f 1058/2065/3927 1055/2064/3926 1057/1982/3928
+s 841
+f 1058/2065/3929 1057/1982/3930 1060/2066/3931
+f 1060/2066/3931 1057/1982/3930 1059/1981/3932
+s 842
+f 1060/2066/3933 1059/1981/3934 1062/2047/3935
+f 1062/2047/3935 1059/1981/3934 1061/1984/3936
+s 843
+f 1086/2067/3937 1078/2068/3938 1064/2070/3939
+f 1064/2070/3939 1078/2068/3938 1082/2069/3940
+s 844
+f 1084/2071/3941 1098/2072/3942 1065/2074/3943
+f 1065/2074/3943 1098/2072/3942 1068/2073/3944
+s 845
+f 1067/2075/3945 1095/2076/3946 1063/2078/3947
+f 1063/2078/3947 1095/2076/3946 1087/2077/3948
+s 846
+f 1093/2080/3949 1089/2081/3950 1097/2079/3951
+f 1097/2079/3951 1089/2081/3950 1088/2082/3952
+s 847
+f 1087/2077/3953 1095/2076/3954 1088/2082/3955
+f 1088/2082/3955 1095/2076/3954 1097/2079/3956
+s 848
+f 1100/2083/3957 1074/2084/3958 1066/2088/3959
+f 1066/2088/3959 1074/2084/3958 1096/2087/3960
+f 1074/2084/3958 1071/2085/3961 1096/2087/3960
+f 1071/2085/3961 1094/2086/3962 1096/2087/3960
+s 849
+f 1076/2089/3963 1090/2090/3964 1070/2092/3965
+f 1070/2092/3965 1090/2090/3964 1092/2091/3966
+s 850
+f 1080/2094/3967 1077/2095/3968 1073/2093/3969
+f 1073/2093/3969 1077/2095/3968 1069/2096/3970
+s 851
+f 1099/2097/3971 1083/2098/3972 1072/2100/3973
+f 1072/2100/3973 1083/2098/3972 1081/2099/3974
+s 852
+f 1073/2093/3975 1072/2100/3976 1080/2094/3977
+f 1080/2094/3977 1072/2100/3976 1081/2099/3978
+s 853
+f 1079/2101/3979 1085/2102/3980 1075/2104/3981
+f 1075/2104/3981 1085/2102/3980 1091/2103/3982
+s 854
+f 1063/2105/3983 1087/2106/3984 1064/2070/3985
+f 1064/2070/3985 1087/2106/3984 1086/2067/3986
+s 855
+f 1065/2107/3987 1064/2070/3988 1084/2108/3989
+f 1084/2108/3989 1064/2070/3988 1082/2069/3990
+s 856
+f 1063/2109/3991 1065/2074/3992 1067/2110/3993
+f 1067/2110/3993 1065/2074/3992 1068/2073/3994
+s 857
+f 1067/2075/3995 1066/2111/3996 1095/2076/3997
+f 1095/2076/3997 1066/2111/3996 1096/2112/3998
+s 858
+f 1093/2080/3999 1097/2079/4000 1094/2113/4001
+f 1094/2113/4001 1097/2079/4000 1096/2112/4002
+s off
+f 1095/2076/4003 1096/2112/4004 1097/2079/4005
+s 859
+f 1066/2114/4006 1068/2073/4007 1100/2115/4008
+f 1100/2115/4008 1068/2073/4007 1098/2072/4009
+s 860
+f 1070/2092/4010 1069/2116/4011 1076/2089/4012
+f 1076/2089/4012 1069/2116/4011 1077/2117/4013
+s 861
+f 1071/2085/4014 1070/2118/4015 1094/2086/4016
+f 1094/2086/4016 1070/2118/4015 1092/2119/4017
+s 862
+f 1069/2120/4018 1071/2085/4019 1073/2121/4020
+f 1073/2121/4020 1071/2085/4019 1074/2084/4021
+s off
+f 1072/2122/4022 1073/2121/4023 1074/2084/4024
+s 863
+f 1074/2084/4025 1100/2083/4026 1072/2122/4027
+f 1072/2122/4027 1100/2083/4026 1099/2123/4028
+s 864
+f 1076/2089/4029 1075/2124/4030 1090/2090/4031
+f 1090/2090/4031 1075/2124/4030 1091/2125/4032
+s 865
+f 1077/2126/4033 1080/2127/4034 1075/2104/4035
+f 1075/2104/4035 1080/2127/4034 1079/2101/4036
+s 866
+f 1079/2101/4037 1078/2068/4038 1085/2102/4039
+f 1085/2102/4039 1078/2068/4038 1086/2067/4040
+s 867
+f 1078/2068/4041 1081/2128/4042 1082/2069/4043
+f 1082/2069/4043 1081/2128/4042 1083/2129/4044
+s 868
+f 1083/2130/4045 1099/2131/4046 1084/2071/4047
+f 1084/2071/4047 1099/2131/4046 1098/2072/4048
+s 869
+f 1085/2102/4049 1088/2132/4050 1091/2103/4051
+f 1091/2103/4051 1088/2132/4050 1089/2133/4052
+s 870
+f 1089/2081/4053 1093/2080/4054 1090/2134/4055
+f 1090/2134/4055 1093/2080/4054 1092/2135/4056
+s off
+f 1063/2105/4057 1064/2070/4058 1065/2107/4059
+f 1066/2114/4060 1067/2110/4061 1068/2073/4062
+f 1069/2120/4063 1070/2118/4064 1071/2085/4065
+f 1075/2124/4066 1076/2089/4067 1077/2117/4068
+s 871
+f 1078/2068/4069 1079/2101/4070 1081/2128/4071
+f 1081/2128/4071 1079/2101/4070 1080/2127/4072
+s off
+f 1082/2069/4073 1083/2129/4074 1084/2108/4075
+s 872
+f 1086/2067/4076 1087/2106/4077 1085/2102/4078
+f 1085/2102/4078 1087/2106/4077 1088/2132/4079
+s off
+f 1089/2081/4080 1090/2134/4081 1091/2136/4082
+f 1092/2135/4083 1093/2080/4084 1094/2113/4085
+f 1098/2072/4086 1099/2131/4087 1100/2115/4088
+s 873
+f 1109/2137/4089 1125/2138/4090 1102/2140/4091
+f 1102/2140/4091 1125/2138/4090 1128/2139/4092
+s 874
+f 1130/2141/4093 1134/2142/4094 1103/2144/4095
+f 1103/2144/4095 1134/2142/4094 1107/2143/4096
+s 875
+f 1106/2145/4097 1113/2146/4098 1101/2148/4099
+f 1101/2148/4099 1113/2146/4098 1110/2147/4100
+s 876
+f 1116/2150/4101 1114/2151/4102 1135/2149/4103
+f 1135/2149/4103 1114/2151/4102 1105/2152/4104
+s 877
+f 1106/2145/4105 1105/2152/4106 1113/2146/4107
+f 1113/2146/4107 1105/2152/4106 1114/2151/4108
+s 878
+f 1133/2153/4109 1140/2154/4110 1104/2156/4111
+f 1104/2156/4111 1140/2154/4110 1136/2155/4112
+s 879
+f 1112/2157/4113 1121/2158/4114 1108/2160/4115
+f 1108/2160/4115 1121/2158/4114 1126/2159/4116
+s 880
+f 1115/2161/4117 1120/2162/4118 1111/2164/4119
+f 1111/2164/4119 1120/2162/4118 1122/2163/4120
+s 881
+f 1137/2165/4121 1139/2166/4122 1117/2168/4123
+f 1117/2168/4123 1139/2166/4122 1118/2167/4124
+s 882
+f 1132/2170/4125 1123/2171/4126 1138/2169/4127
+f 1138/2169/4127 1123/2171/4126 1119/2172/4128
+s 883
+f 1131/2173/4129 1129/2174/4130 1124/2176/4131
+f 1124/2176/4131 1129/2174/4130 1127/2175/4132
+s 884
+f 1124/2176/4133 1123/2171/4134 1131/2173/4135
+f 1131/2173/4135 1123/2171/4134 1132/2170/4136
+s 885
+f 1101/2177/4137 1110/2178/4138 1102/2140/4139
+f 1102/2140/4139 1110/2178/4138 1109/2137/4140
+s 886
+f 1103/2179/4141 1102/2140/4142 1130/2180/4143
+f 1130/2180/4143 1102/2140/4142 1128/2139/4144
+s 887
+f 1101/2181/4145 1103/2144/4146 1106/2182/4147
+f 1106/2182/4147 1103/2144/4146 1107/2143/4148
+s 888
+f 1104/2156/4149 1136/2155/4150 1105/2183/4151
+f 1105/2183/4151 1136/2155/4150 1135/2184/4152
+s 889
+f 1104/2156/4153 1107/2143/4154 1133/2153/4155
+f 1133/2153/4155 1107/2143/4154 1134/2142/4156
+s 890
+f 1109/2137/4157 1108/2185/4158 1125/2138/4159
+f 1125/2138/4159 1108/2185/4158 1126/2186/4160
+s 891
+f 1110/2147/4161 1113/2146/4162 1108/2187/4163
+f 1108/2187/4163 1113/2146/4162 1112/2188/4164
+s 892
+f 1112/2157/4165 1111/2164/4166 1121/2158/4167
+f 1121/2158/4167 1111/2164/4166 1122/2163/4168
+s 893
+f 1111/2189/4169 1114/2151/4170 1115/2190/4171
+f 1115/2190/4171 1114/2151/4170 1116/2150/4172
+s 894
+f 1117/2191/4173 1116/2150/4174 1137/2192/4175
+f 1137/2192/4175 1116/2150/4174 1135/2149/4176
+s 895
+f 1115/2161/4177 1117/2193/4178 1120/2162/4179
+f 1120/2162/4179 1117/2193/4178 1118/2194/4180
+s 896
+f 1118/2167/4181 1139/2166/4182 1119/2195/4183
+f 1119/2195/4183 1139/2166/4182 1138/2196/4184
+s 897
+f 1119/2197/4185 1123/2198/4186 1120/2162/4187
+f 1120/2162/4187 1123/2198/4186 1122/2163/4188
+s 898
+f 1121/2158/4189 1124/2199/4190 1126/2159/4191
+f 1126/2159/4191 1124/2199/4190 1127/2200/4192
+s 899
+f 1125/2138/4193 1127/2201/4194 1128/2139/4195
+f 1128/2139/4195 1127/2201/4194 1129/2202/4196
+s 900
+f 1129/2203/4197 1131/2204/4198 1130/2141/4199
+f 1130/2141/4199 1131/2204/4198 1134/2142/4200
+s 901
+f 1133/2153/4201 1132/2205/4202 1140/2154/4203
+f 1140/2154/4203 1132/2205/4202 1138/2206/4204
+s 902
+f 1137/2165/4205 1136/2207/4206 1139/2166/4207
+f 1139/2166/4207 1136/2207/4206 1140/2208/4208
+s off
+f 1101/2177/4209 1102/2140/4210 1103/2179/4211
+s 903
+f 1104/2156/4212 1105/2183/4213 1107/2143/4214
+f 1107/2143/4214 1105/2183/4213 1106/2182/4215
+s off
+f 1108/2185/4216 1109/2137/4217 1110/2178/4218
+s 904
+f 1111/2189/4219 1112/2188/4220 1114/2151/4221
+f 1114/2151/4221 1112/2188/4220 1113/2146/4222
+s off
+f 1115/2190/4223 1116/2150/4224 1117/2191/4225
+f 1118/2194/4226 1119/2197/4227 1120/2162/4228
+s 905
+f 1121/2158/4229 1122/2163/4230 1124/2199/4231
+f 1124/2199/4231 1122/2163/4230 1123/2198/4232
+s off
+f 1125/2138/4233 1126/2186/4234 1127/2201/4235
+f 1128/2139/4236 1129/2202/4237 1130/2180/4238
+s 906
+f 1131/2204/4239 1132/2205/4240 1134/2142/4241
+f 1134/2142/4241 1132/2205/4240 1133/2153/4242
+s off
+f 1135/2149/4243 1136/2209/4244 1137/2192/4245
+f 1138/2196/4246 1139/2166/4247 1140/2208/4248
+s 907
+f 1141/2210/4249 1143/2211/4250 1173/2213/4251
+f 1173/2213/4251 1143/2211/4250 1175/2212/4252
+s 908
+f 1143/2211/4253 1145/2214/4254 1175/2212/4255
+f 1175/2212/4255 1145/2214/4254 1177/2215/4256
+s 909
+f 1145/2214/4257 1147/2216/4258 1177/2215/4259
+f 1177/2215/4259 1147/2216/4258 1179/2217/4260
+s 910
+f 1147/2216/4261 1149/2218/4262 1179/2217/4263
+f 1179/2217/4263 1149/2218/4262 1181/2219/4264
+s 911
+f 1149/2218/4265 1151/2220/4266 1181/2219/4267
+f 1181/2219/4267 1151/2220/4266 1183/2221/4268
+s 912
+f 1151/2222/4269 1153/2223/4270 1183/2225/4271
+f 1183/2225/4271 1153/2223/4270 1185/2224/4272
+s 913
+f 1153/2223/4273 1155/2226/4274 1185/2224/4275
+f 1185/2224/4275 1155/2226/4274 1187/2227/4276
+s 914
+f 1155/2226/4277 1157/2228/4278 1187/2227/4279
+f 1187/2227/4279 1157/2228/4278 1189/2229/4280
+s 915
+f 1157/2228/4281 1159/2230/4282 1189/2229/4283
+f 1189/2229/4283 1159/2230/4282 1191/2231/4284
+s 916
+f 1159/2232/4285 1161/2233/4286 1191/2235/4287
+f 1191/2235/4287 1161/2233/4286 1193/2234/4288
+s 917
+f 1161/2233/4289 1163/2236/4290 1193/2234/4291
+f 1193/2234/4291 1163/2236/4290 1195/2237/4292
+s 918
+f 1163/2236/4293 1165/2238/4294 1195/2237/4295
+f 1195/2237/4295 1165/2238/4294 1197/2239/4296
+s 919
+f 1165/2238/4297 1167/2240/4298 1197/2239/4299
+f 1197/2239/4299 1167/2240/4298 1199/2241/4300
+s 920
+f 1167/2242/4301 1169/2243/4302 1199/2245/4303
+f 1199/2245/4303 1169/2243/4302 1201/2244/4304
+s 921
+f 1169/2243/4305 1171/2246/4306 1201/2244/4307
+f 1201/2244/4307 1171/2246/4306 1203/2247/4308
+s 922
+f 1171/2246/4309 1141/2248/4310 1203/2247/4311
+f 1203/2247/4311 1141/2248/4310 1173/2249/4312
+s 923
+f 1172/2250/4313 1170/2251/4314 1142/2265/4315
+f 1170/2251/4314 1168/2252/4316 1142/2265/4315
+f 1168/2252/4316 1166/2253/4317 1142/2265/4315
+f 1166/2253/4317 1164/2254/4318 1142/2265/4315
+f 1164/2254/4318 1162/2255/4319 1142/2265/4315
+f 1162/2255/4319 1160/2256/4320 1142/2265/4315
+f 1160/2256/4320 1158/2257/4321 1142/2265/4315
+f 1158/2257/4321 1156/2258/4322 1142/2265/4315
+f 1156/2258/4322 1154/2259/4323 1142/2265/4315
+f 1154/2259/4323 1152/2260/4324 1142/2265/4315
+f 1152/2260/4324 1150/2261/4325 1142/2265/4315
+f 1150/2261/4325 1148/2262/4326 1142/2265/4315
+f 1148/2262/4326 1146/2263/4327 1142/2265/4315
+f 1146/2263/4327 1144/2264/4328 1142/2265/4315
+s 924
+f 1176/2266/4329 1178/2267/4330 1174/2281/4331
+f 1178/2267/4330 1180/2268/4332 1174/2281/4331
+f 1180/2268/4332 1182/2269/4333 1174/2281/4331
+f 1182/2269/4333 1184/2270/4334 1174/2281/4331
+f 1184/2270/4334 1186/2271/4335 1174/2281/4331
+f 1186/2271/4335 1188/2272/4336 1174/2281/4331
+f 1188/2272/4336 1190/2273/4337 1174/2281/4331
+f 1190/2273/4337 1192/2274/4338 1174/2281/4331
+f 1192/2274/4338 1194/2275/4339 1174/2281/4331
+f 1194/2275/4339 1196/2276/4340 1174/2281/4331
+f 1196/2276/4340 1198/2277/4341 1174/2281/4331
+f 1198/2277/4341 1200/2278/4342 1174/2281/4331
+f 1200/2278/4342 1202/2279/4343 1174/2281/4331
+f 1202/2279/4343 1204/2280/4344 1174/2281/4331
+s 925
+f 1142/2282/4345 1141/2248/4346 1172/2283/4347
+f 1172/2283/4347 1141/2248/4346 1171/2246/4348
+s 926
+f 1141/2210/4349 1142/2284/4350 1143/2211/4351
+f 1143/2211/4351 1142/2284/4350 1144/2285/4352
+s 927
+f 1143/2211/4353 1144/2285/4354 1145/2214/4355
+f 1145/2214/4355 1144/2285/4354 1146/2286/4356
+s 928
+f 1145/2214/4357 1146/2286/4358 1147/2216/4359
+f 1147/2216/4359 1146/2286/4358 1148/2287/4360
+s 929
+f 1147/2216/4361 1148/2287/4362 1149/2218/4363
+f 1149/2218/4363 1148/2287/4362 1150/2288/4364
+s 930
+f 1149/2289/4365 1150/2290/4366 1151/2222/4367
+f 1151/2222/4367 1150/2290/4366 1152/2291/4368
+s 931
+f 1151/2222/4369 1152/2291/4370 1153/2223/4371
+f 1153/2223/4371 1152/2291/4370 1154/2292/4372
+s 932
+f 1153/2223/4373 1154/2292/4374 1155/2226/4375
+f 1155/2226/4375 1154/2292/4374 1156/2293/4376
+s 933
+f 1155/2226/4377 1156/2293/4378 1157/2228/4379
+f 1157/2228/4379 1156/2293/4378 1158/2294/4380
+s 934
+f 1157/2295/4381 1158/2296/4382 1159/2232/4383
+f 1159/2232/4383 1158/2296/4382 1160/2297/4384
+s 935
+f 1159/2232/4385 1160/2297/4386 1161/2233/4387
+f 1161/2233/4387 1160/2297/4386 1162/2298/4388
+s 936
+f 1161/2233/4389 1162/2298/4390 1163/2236/4391
+f 1163/2236/4391 1162/2298/4390 1164/2299/4392
+s 937
+f 1163/2236/4393 1164/2299/4394 1165/2238/4395
+f 1165/2238/4395 1164/2299/4394 1166/2300/4396
+s 938
+f 1165/2301/4397 1166/2302/4398 1167/2242/4399
+f 1167/2242/4399 1166/2302/4398 1168/2303/4400
+s 939
+f 1167/2242/4401 1168/2303/4402 1169/2243/4403
+f 1169/2243/4403 1168/2303/4402 1170/2304/4404
+s 940
+f 1169/2243/4405 1170/2304/4406 1171/2246/4407
+f 1171/2246/4407 1170/2304/4406 1172/2283/4408
+s 941
+f 1174/2305/4409 1173/2213/4410 1176/2306/4411
+f 1176/2306/4411 1173/2213/4410 1175/2212/4412
+s 942
+f 1173/2249/4413 1174/2307/4414 1203/2247/4415
+f 1203/2247/4415 1174/2307/4414 1204/2308/4416
+s 943
+f 1176/2306/4417 1175/2212/4418 1178/2309/4419
+f 1178/2309/4419 1175/2212/4418 1177/2215/4420
+s 944
+f 1178/2309/4421 1177/2215/4422 1180/2310/4423
+f 1180/2310/4423 1177/2215/4422 1179/2217/4424
+s 945
+f 1180/2310/4425 1179/2217/4426 1182/2311/4427
+f 1182/2311/4427 1179/2217/4426 1181/2219/4428
+s 946
+f 1182/2312/4429 1181/2313/4430 1184/2314/4431
+f 1184/2314/4431 1181/2313/4430 1183/2225/4432
+s 947
+f 1184/2314/4433 1183/2225/4434 1186/2315/4435
+f 1186/2315/4435 1183/2225/4434 1185/2224/4436
+s 948
+f 1186/2315/4437 1185/2224/4438 1188/2316/4439
+f 1188/2316/4439 1185/2224/4438 1187/2227/4440
+s 949
+f 1188/2316/4441 1187/2227/4442 1190/2317/4443
+f 1190/2317/4443 1187/2227/4442 1189/2229/4444
+s 950
+f 1190/2318/4445 1189/2319/4446 1192/2320/4447
+f 1192/2320/4447 1189/2319/4446 1191/2235/4448
+s 951
+f 1192/2320/4449 1191/2235/4450 1194/2321/4451
+f 1194/2321/4451 1191/2235/4450 1193/2234/4452
+s 952
+f 1194/2321/4453 1193/2234/4454 1196/2322/4455
+f 1196/2322/4455 1193/2234/4454 1195/2237/4456
+s 953
+f 1196/2322/4457 1195/2237/4458 1198/2323/4459
+f 1198/2323/4459 1195/2237/4458 1197/2239/4460
+s 954
+f 1198/2324/4461 1197/2325/4462 1200/2326/4463
+f 1200/2326/4463 1197/2325/4462 1199/2245/4464
+s 955
+f 1200/2326/4465 1199/2245/4466 1202/2327/4467
+f 1202/2327/4467 1199/2245/4466 1201/2244/4468
+s 956
+f 1202/2327/4469 1201/2244/4470 1204/2308/4471
+f 1204/2308/4471 1201/2244/4470 1203/2247/4472
+s 957
+f 1213/2328/4473 1229/2329/4474 1206/2331/4475
+f 1206/2331/4475 1229/2329/4474 1232/2330/4476
+s 958
+f 1234/2332/4477 1238/2333/4478 1207/2335/4479
+f 1207/2335/4479 1238/2333/4478 1211/2334/4480
+s 959
+f 1217/2337/4481 1214/2338/4482 1210/2336/4483
+f 1210/2336/4483 1214/2338/4482 1205/2339/4484
+s 960
+f 1239/2340/4485 1220/2341/4486 1209/2343/4487
+f 1209/2343/4487 1220/2341/4486 1218/2342/4488
+s 961
+f 1210/2336/4489 1209/2343/4490 1217/2337/4491
+f 1217/2337/4491 1209/2343/4490 1218/2342/4492
+s 962
+f 1237/2344/4493 1244/2345/4494 1208/2347/4495
+f 1208/2347/4495 1244/2345/4494 1240/2346/4496
+s 963
+f 1216/2348/4497 1225/2349/4498 1212/2351/4499
+f 1212/2351/4499 1225/2349/4498 1230/2350/4500
+s 964
+f 1219/2352/4501 1224/2353/4502 1215/2355/4503
+f 1215/2355/4503 1224/2353/4502 1226/2354/4504
+s 965
+f 1241/2356/4505 1243/2357/4506 1221/2359/4507
+f 1221/2359/4507 1243/2357/4506 1222/2358/4508
+s 966
+f 1242/2360/4509 1236/2361/4510 1223/2363/4511
+f 1223/2363/4511 1236/2361/4510 1227/2362/4512
+s 967
+f 1233/2365/4513 1231/2366/4514 1235/2364/4515
+f 1235/2364/4515 1231/2366/4514 1228/2367/4516
+s 968
+f 1228/2367/4517 1227/2362/4518 1235/2364/4519
+f 1235/2364/4519 1227/2362/4518 1236/2361/4520
+s 969
+f 1206/2368/4521 1205/2339/4522 1213/2369/4523
+f 1213/2369/4523 1205/2339/4522 1214/2338/4524
+s 970
+f 1207/2335/4525 1206/2331/4526 1234/2332/4527
+f 1234/2332/4527 1206/2331/4526 1232/2330/4528
+s 971
+f 1205/2370/4529 1207/2335/4530 1210/2371/4531
+f 1210/2371/4531 1207/2335/4530 1211/2334/4532
+s 972
+f 1208/2372/4533 1240/2373/4534 1209/2343/4535
+f 1209/2343/4535 1240/2373/4534 1239/2340/4536
+s 973
+f 1208/2347/4537 1211/2334/4538 1237/2344/4539
+f 1237/2344/4539 1211/2334/4538 1238/2333/4540
+s 974
+f 1213/2374/4541 1212/2375/4542 1229/2377/4543
+f 1229/2377/4543 1212/2375/4542 1230/2376/4544
+s 975
+f 1214/2338/4545 1217/2337/4546 1212/2378/4547
+f 1212/2378/4547 1217/2337/4546 1216/2379/4548
+s 976
+f 1216/2348/4549 1215/2355/4550 1225/2349/4551
+f 1225/2349/4551 1215/2355/4550 1226/2354/4552
+s 977
+f 1215/2380/4553 1218/2342/4554 1219/2381/4555
+f 1219/2381/4555 1218/2342/4554 1220/2341/4556
+s 978
+f 1220/2341/4557 1239/2340/4558 1221/2382/4559
+f 1221/2382/4559 1239/2340/4558 1241/2383/4560
+s 979
+f 1219/2352/4561 1221/2359/4562 1224/2353/4563
+f 1224/2353/4563 1221/2359/4562 1222/2358/4564
+s 980
+f 1223/2363/4565 1222/2384/4566 1242/2360/4567
+f 1242/2360/4567 1222/2384/4566 1243/2385/4568
+s 981
+f 1223/2386/4569 1227/2387/4570 1224/2353/4571
+f 1224/2353/4571 1227/2387/4570 1226/2354/4572
+s 982
+f 1225/2388/4573 1228/2367/4574 1230/2389/4575
+f 1230/2389/4575 1228/2367/4574 1231/2366/4576
+s 983
+f 1231/2366/4577 1233/2365/4578 1229/2390/4579
+f 1229/2390/4579 1233/2365/4578 1232/2391/4580
+s 984
+f 1233/2392/4581 1235/2393/4582 1234/2332/4583
+f 1234/2332/4583 1235/2393/4582 1238/2333/4584
+s 985
+f 1237/2394/4585 1236/2361/4586 1244/2395/4587
+f 1244/2395/4587 1236/2361/4586 1242/2360/4588
+s 986
+f 1241/2396/4589 1240/2397/4590 1243/2399/4591
+f 1243/2399/4591 1240/2397/4590 1244/2398/4592
+s off
+f 1205/2370/4593 1206/2331/4594 1207/2335/4595
+s 987
+f 1208/2347/4596 1209/2400/4597 1211/2334/4598
+f 1211/2334/4598 1209/2400/4597 1210/2371/4599
+s off
+f 1212/2378/4600 1213/2369/4601 1214/2338/4602
+s 988
+f 1215/2380/4603 1216/2379/4604 1218/2342/4605
+f 1218/2342/4605 1216/2379/4604 1217/2337/4606
+s off
+f 1219/2381/4607 1220/2341/4608 1221/2382/4609
+f 1222/2358/4610 1223/2386/4611 1224/2353/4612
+s 989
+f 1225/2349/4613 1226/2354/4614 1228/2401/4615
+f 1228/2401/4615 1226/2354/4614 1227/2387/4616
+s off
+f 1229/2390/4617 1230/2389/4618 1231/2366/4619
+f 1232/2330/4620 1233/2392/4621 1234/2332/4622
+s 990
+f 1235/2393/4623 1236/2402/4624 1238/2333/4625
+f 1238/2333/4625 1236/2402/4624 1237/2344/4626
+s off
+f 1239/2340/4627 1240/2373/4628 1241/2383/4629
+f 1242/2360/4630 1243/2385/4631 1244/2395/4632
+s 991
+f 1245/2403/4633 1247/2404/4634 1277/2406/4635
+f 1277/2406/4635 1247/2404/4634 1279/2405/4636
+s 992
+f 1247/2404/4637 1249/2407/4638 1279/2405/4639
+f 1279/2405/4639 1249/2407/4638 1281/2408/4640
+s 993
+f 1249/2407/4641 1251/2409/4642 1281/2408/4643
+f 1281/2408/4643 1251/2409/4642 1283/2410/4644
+s 994
+f 1251/2409/4645 1253/2411/4646 1283/2410/4647
+f 1283/2410/4647 1253/2411/4646 1285/2412/4648
+s 995
+f 1253/2413/4649 1255/2414/4650 1285/2416/4651
+f 1285/2416/4651 1255/2414/4650 1287/2415/4652
+s 996
+f 1255/2414/4653 1257/2417/4654 1287/2415/4655
+f 1287/2415/4655 1257/2417/4654 1289/2418/4656
+s 997
+f 1257/2417/4657 1259/2419/4658 1289/2418/4659
+f 1289/2418/4659 1259/2419/4658 1291/2420/4660
+s 998
+f 1259/2419/4661 1261/2421/4662 1291/2420/4663
+f 1291/2420/4663 1261/2421/4662 1293/2422/4664
+s 999
+f 1261/2423/4665 1263/2424/4666 1293/2426/4667
+f 1293/2426/4667 1263/2424/4666 1295/2425/4668
+s 1000
+f 1263/2424/4669 1265/2427/4670 1295/2425/4671
+f 1295/2425/4671 1265/2427/4670 1297/2428/4672
+s 1001
+f 1265/2427/4673 1267/2429/4674 1297/2428/4675
+f 1297/2428/4675 1267/2429/4674 1299/2430/4676
+s 1002
+f 1267/2429/4677 1269/2431/4678 1299/2430/4679
+f 1299/2430/4679 1269/2431/4678 1301/2432/4680
+s 1003
+f 1269/2433/4681 1271/2434/4682 1301/2436/4683
+f 1301/2436/4683 1271/2434/4682 1303/2435/4684
+s 1004
+f 1271/2434/4685 1273/2437/4686 1303/2435/4687
+f 1303/2435/4687 1273/2437/4686 1305/2438/4688
+s 1005
+f 1273/2437/4689 1275/2439/4690 1305/2438/4691
+f 1305/2438/4691 1275/2439/4690 1307/2440/4692
+s 1006
+f 1275/2441/4693 1245/2403/4694 1307/2442/4695
+f 1307/2442/4695 1245/2403/4694 1277/2406/4696
+s 1007
+f 1276/2443/4697 1274/2444/4698 1246/2458/4699
+f 1274/2444/4698 1272/2445/4700 1246/2458/4699
+f 1272/2445/4700 1270/2446/4701 1246/2458/4699
+f 1270/2446/4701 1268/2447/4702 1246/2458/4699
+f 1268/2447/4702 1266/2448/4703 1246/2458/4699
+f 1266/2448/4703 1264/2449/4704 1246/2458/4699
+f 1264/2449/4704 1262/2450/4705 1246/2458/4699
+f 1262/2450/4705 1260/2451/4706 1246/2458/4699
+f 1260/2451/4706 1258/2452/4707 1246/2458/4699
+f 1258/2452/4707 1256/2453/4708 1246/2458/4699
+f 1256/2453/4708 1254/2454/4709 1246/2458/4699
+f 1254/2454/4709 1252/2455/4710 1246/2458/4699
+f 1252/2455/4710 1250/2456/4711 1246/2458/4699
+f 1250/2456/4711 1248/2457/4712 1246/2458/4699
+s 1008
+f 1280/2459/4713 1282/2460/4714 1278/2474/4715
+f 1282/2460/4714 1284/2461/4716 1278/2474/4715
+f 1284/2461/4716 1286/2462/4717 1278/2474/4715
+f 1286/2462/4717 1288/2463/4718 1278/2474/4715
+f 1288/2463/4718 1290/2464/4719 1278/2474/4715
+f 1290/2464/4719 1292/2465/4720 1278/2474/4715
+f 1292/2465/4720 1294/2466/4721 1278/2474/4715
+f 1294/2466/4721 1296/2467/4722 1278/2474/4715
+f 1296/2467/4722 1298/2468/4723 1278/2474/4715
+f 1298/2468/4723 1300/2469/4724 1278/2474/4715
+f 1300/2469/4724 1302/2470/4725 1278/2474/4715
+f 1302/2470/4725 1304/2471/4726 1278/2474/4715
+f 1304/2471/4726 1306/2472/4727 1278/2474/4715
+f 1306/2472/4727 1308/2473/4728 1278/2474/4715
+s 1009
+f 1246/2475/4729 1245/2476/4730 1276/2477/4731
+f 1276/2477/4731 1245/2476/4730 1275/2439/4732
+s 1010
+f 1245/2403/4733 1246/2478/4734 1247/2404/4735
+f 1247/2404/4735 1246/2478/4734 1248/2479/4736
+s 1011
+f 1247/2404/4737 1248/2479/4738 1249/2407/4739
+f 1249/2407/4739 1248/2479/4738 1250/2480/4740
+s 1012
+f 1249/2481/4741 1250/2456/4742 1251/2482/4743
+f 1251/2482/4743 1250/2456/4742 1252/2455/4744
+s 1013
+f 1251/2409/4745 1252/2483/4746 1253/2411/4747
+f 1253/2411/4747 1252/2483/4746 1254/2484/4748
+s 1014
+f 1253/2413/4749 1254/2485/4750 1255/2414/4751
+f 1255/2414/4751 1254/2485/4750 1256/2486/4752
+s 1015
+f 1255/2414/4753 1256/2486/4754 1257/2417/4755
+f 1257/2417/4755 1256/2486/4754 1258/2487/4756
+s 1016
+f 1257/2417/4757 1258/2487/4758 1259/2419/4759
+f 1259/2419/4759 1258/2487/4758 1260/2488/4760
+s 1017
+f 1259/2419/4761 1260/2488/4762 1261/2421/4763
+f 1261/2421/4763 1260/2488/4762 1262/2489/4764
+s 1018
+f 1261/2423/4765 1262/2490/4766 1263/2424/4767
+f 1263/2424/4767 1262/2490/4766 1264/2491/4768
+s 1019
+f 1263/2424/4769 1264/2491/4770 1265/2427/4771
+f 1265/2427/4771 1264/2491/4770 1266/2492/4772
+s 1020
+f 1265/2427/4773 1266/2492/4774 1267/2429/4775
+f 1267/2429/4775 1266/2492/4774 1268/2493/4776
+s 1021
+f 1267/2429/4777 1268/2493/4778 1269/2431/4779
+f 1269/2431/4779 1268/2493/4778 1270/2494/4780
+s 1022
+f 1269/2433/4781 1270/2495/4782 1271/2434/4783
+f 1271/2434/4783 1270/2495/4782 1272/2496/4784
+s 1023
+f 1271/2434/4785 1272/2496/4786 1273/2437/4787
+f 1273/2437/4787 1272/2496/4786 1274/2497/4788
+s 1024
+f 1273/2437/4789 1274/2497/4790 1275/2439/4791
+f 1275/2439/4791 1274/2497/4790 1276/2477/4792
+s 1025
+f 1278/2498/4793 1277/2406/4794 1280/2499/4795
+f 1280/2499/4795 1277/2406/4794 1279/2405/4796
+s 1026
+f 1277/2500/4797 1278/2501/4798 1307/2440/4799
+f 1307/2440/4799 1278/2501/4798 1308/2502/4800
+s 1027
+f 1280/2499/4801 1279/2405/4802 1282/2503/4803
+f 1282/2503/4803 1279/2405/4802 1281/2408/4804
+s 1028
+f 1282/2503/4805 1281/2408/4806 1284/2504/4807
+f 1284/2504/4807 1281/2408/4806 1283/2410/4808
+s 1029
+f 1284/2504/4809 1283/2410/4810 1286/2505/4811
+f 1286/2505/4811 1283/2410/4810 1285/2412/4812
+s 1030
+f 1286/2506/4813 1285/2416/4814 1288/2507/4815
+f 1288/2507/4815 1285/2416/4814 1287/2415/4816
+s 1031
+f 1288/2507/4817 1287/2415/4818 1290/2508/4819
+f 1290/2508/4819 1287/2415/4818 1289/2418/4820
+s 1032
+f 1290/2508/4821 1289/2418/4822 1292/2509/4823
+f 1292/2509/4823 1289/2418/4822 1291/2420/4824
+s 1033
+f 1292/2509/4825 1291/2420/4826 1294/2510/4827
+f 1294/2510/4827 1291/2420/4826 1293/2422/4828
+s 1034
+f 1294/2511/4829 1293/2426/4830 1296/2512/4831
+f 1296/2512/4831 1293/2426/4830 1295/2425/4832
+s 1035
+f 1296/2512/4833 1295/2425/4834 1298/2513/4835
+f 1298/2513/4835 1295/2425/4834 1297/2428/4836
+s 1036
+f 1298/2513/4837 1297/2428/4838 1300/2514/4839
+f 1300/2514/4839 1297/2428/4838 1299/2430/4840
+s 1037
+f 1300/2514/4841 1299/2430/4842 1302/2515/4843
+f 1302/2515/4843 1299/2430/4842 1301/2432/4844
+s 1038
+f 1302/2516/4845 1301/2436/4846 1304/2517/4847
+f 1304/2517/4847 1301/2436/4846 1303/2435/4848
+s 1039
+f 1304/2517/4849 1303/2435/4850 1306/2518/4851
+f 1306/2518/4851 1303/2435/4850 1305/2438/4852
+s 1040
+f 1306/2518/4853 1305/2438/4854 1308/2502/4855
+f 1308/2502/4855 1305/2438/4854 1307/2440/4856
+s 1041
+f 1332/2519/4857 1324/2520/4858 1310/2522/4859
+f 1310/2522/4859 1324/2520/4858 1328/2521/4860
+s 1042
+f 1330/2523/4861 1344/2524/4862 1311/2526/4863
+f 1311/2526/4863 1344/2524/4862 1314/2525/4864
+s 1043
+f 1313/2527/4865 1341/2528/4866 1309/2530/4867
+f 1309/2530/4867 1341/2528/4866 1333/2529/4868
+s 1044
+f 1339/2532/4869 1335/2533/4870 1343/2531/4871
+f 1343/2531/4871 1335/2533/4870 1334/2534/4872
+s 1045
+f 1333/2529/4873 1341/2528/4874 1334/2534/4875
+f 1334/2534/4875 1341/2528/4874 1343/2531/4876
+s 1046
+f 1346/2535/4877 1320/2536/4878 1312/2540/4879
+f 1312/2540/4879 1320/2536/4878 1342/2539/4880
+f 1320/2536/4878 1317/2537/4881 1342/2539/4880
+f 1317/2537/4881 1340/2538/4882 1342/2539/4880
+s 1047
+f 1322/2541/4883 1336/2542/4884 1316/2544/4885
+f 1316/2544/4885 1336/2542/4884 1338/2543/4886
+s 1048
+f 1326/2546/4887 1323/2547/4888 1319/2545/4889
+f 1319/2545/4889 1323/2547/4888 1315/2548/4890
+s 1049
+f 1345/2549/4891 1329/2550/4892 1318/2552/4893
+f 1318/2552/4893 1329/2550/4892 1327/2551/4894
+s 1050
+f 1319/2545/4895 1318/2552/4896 1326/2546/4897
+f 1326/2546/4897 1318/2552/4896 1327/2551/4898
+s 1051
+f 1325/2553/4899 1331/2554/4900 1321/2556/4901
+f 1321/2556/4901 1331/2554/4900 1337/2555/4902
+s 1052
+f 1309/2557/4903 1333/2558/4904 1310/2522/4905
+f 1310/2522/4905 1333/2558/4904 1332/2519/4906
+s 1053
+f 1311/2526/4907 1310/2522/4908 1330/2523/4909
+f 1330/2523/4909 1310/2522/4908 1328/2521/4910
+s 1054
+f 1309/2530/4911 1311/2559/4912 1313/2527/4913
+f 1313/2527/4913 1311/2559/4912 1314/2560/4914
+s 1055
+f 1313/2527/4915 1312/2561/4916 1341/2528/4917
+f 1341/2528/4917 1312/2561/4916 1342/2562/4918
+s 1056
+f 1339/2532/4919 1343/2531/4920 1340/2563/4921
+f 1340/2563/4921 1343/2531/4920 1342/2562/4922
+s off
+f 1341/2528/4923 1342/2562/4924 1343/2531/4925
+s 1057
+f 1312/2540/4926 1314/2564/4927 1346/2535/4928
+f 1346/2535/4928 1314/2564/4927 1344/2565/4929
+s 1058
+f 1316/2566/4930 1315/2548/4931 1322/2567/4932
+f 1322/2567/4932 1315/2548/4931 1323/2547/4933
+s 1059
+f 1317/2568/4934 1316/2544/4935 1340/2569/4936
+f 1340/2569/4936 1316/2544/4935 1338/2543/4937
+s 1060
+f 1315/2548/4938 1317/2570/4939 1319/2545/4940
+f 1319/2545/4940 1317/2570/4939 1320/2571/4941
+s off
+f 1318/2552/4942 1319/2545/4943 1320/2571/4944
+s 1061
+f 1320/2571/4945 1346/2572/4946 1318/2552/4947
+f 1318/2552/4947 1346/2572/4946 1345/2549/4948
+s 1062
+f 1322/2573/4949 1321/2574/4950 1336/2576/4951
+f 1336/2576/4951 1321/2574/4950 1337/2575/4952
+s 1063
+f 1323/2547/4953 1326/2546/4954 1321/2577/4955
+f 1321/2577/4955 1326/2546/4954 1325/2578/4956
+s 1064
+f 1325/2553/4957 1324/2520/4958 1331/2554/4959
+f 1331/2554/4959 1324/2520/4958 1332/2519/4960
+s 1065
+f 1324/2520/4961 1327/2579/4962 1328/2521/4963
+f 1328/2521/4963 1327/2579/4962 1329/2580/4964
+s 1066
+f 1329/2550/4965 1345/2549/4966 1330/2581/4967
+f 1330/2581/4967 1345/2549/4966 1344/2582/4968
+s 1067
+f 1331/2583/4969 1334/2534/4970 1337/2584/4971
+f 1337/2584/4971 1334/2534/4970 1335/2533/4972
+s 1068
+f 1335/2533/4973 1339/2532/4974 1336/2585/4975
+f 1336/2585/4975 1339/2532/4974 1338/2586/4976
+s off
+f 1309/2557/4977 1310/2522/4978 1311/2526/4979
+f 1312/2561/4980 1313/2527/4981 1314/2560/4982
+f 1315/2548/4983 1316/2566/4984 1317/2570/4985
+f 1321/2577/4986 1322/2567/4987 1323/2547/4988
+s 1069
+f 1324/2520/4989 1325/2553/4990 1327/2579/4991
+f 1327/2579/4991 1325/2553/4990 1326/2587/4992
+s off
+f 1328/2521/4993 1329/2580/4994 1330/2523/4995
+s 1070
+f 1332/2519/4996 1333/2558/4997 1331/2554/4998
+f 1331/2554/4998 1333/2558/4997 1334/2588/4999
+s off
+f 1335/2533/5000 1336/2585/5001 1337/2584/5002
+f 1338/2586/5003 1339/2532/5004 1340/2563/5005
+f 1344/2582/5006 1345/2549/5007 1346/2572/5008
+s 1071
+f 1355/2589/5009 1361/2590/5010 1348/2592/5011
+f 1348/2592/5011 1361/2590/5010 1368/2591/5012
+s 1072
+f 1370/2593/5013 1372/2594/5014 1349/2596/5015
+f 1349/2596/5015 1372/2594/5014 1350/2595/5016
+s 1073
+f 1353/2597/5017 1359/2598/5018 1347/2600/5019
+f 1347/2600/5019 1359/2598/5018 1356/2599/5020
+s 1074
+f 1386/2602/5021 1360/2603/5022 1376/2601/5023
+f 1376/2601/5023 1360/2603/5022 1352/2604/5024
+s 1075
+f 1353/2597/5025 1352/2604/5026 1359/2598/5027
+f 1359/2598/5027 1352/2604/5026 1360/2603/5028
+s 1076
+f 1371/2605/5029 1380/2606/5030 1351/2608/5031
+f 1351/2608/5031 1380/2606/5030 1377/2607/5032
+s 1077
+f 1358/2609/5033 1367/2610/5034 1354/2612/5035
+f 1354/2612/5035 1367/2610/5034 1362/2611/5036
+s 1078
+f 1385/2613/5037 1382/2614/5038 1357/2616/5039
+f 1357/2616/5039 1382/2614/5038 1364/2615/5040
+s 1079
+f 1373/2618/5041 1369/2619/5042 1366/2617/5043
+f 1366/2617/5043 1369/2619/5042 1363/2620/5044
+s 1080
+f 1381/2621/5045 1378/2622/5046 1365/2624/5047
+f 1365/2624/5047 1378/2622/5046 1374/2623/5048
+s 1081
+f 1366/2617/5049 1365/2624/5050 1373/2618/5051
+f 1373/2618/5051 1365/2624/5050 1374/2623/5052
+s 1082
+f 1379/2625/5053 1383/2626/5054 1375/2628/5055
+f 1375/2628/5055 1383/2626/5054 1384/2627/5056
+s 1083
+f 1347/2629/5057 1356/2630/5058 1348/2592/5059
+f 1348/2592/5059 1356/2630/5058 1355/2589/5060
+s 1084
+f 1349/2596/5061 1348/2631/5062 1370/2593/5063
+f 1370/2593/5063 1348/2631/5062 1368/2632/5064
+s 1085
+f 1347/2633/5065 1349/2596/5066 1353/2634/5067
+f 1353/2634/5067 1349/2596/5066 1350/2595/5068
+s 1086
+f 1351/2608/5069 1350/2595/5070 1371/2605/5071
+f 1371/2605/5071 1350/2595/5070 1372/2594/5072
+s 1087
+f 1351/2608/5073 1377/2607/5074 1352/2635/5075
+f 1352/2635/5075 1377/2607/5074 1376/2636/5076
+s 1088
+f 1355/2589/5077 1354/2612/5078 1361/2590/5079
+f 1361/2590/5079 1354/2612/5078 1362/2611/5080
+s 1089
+f 1356/2599/5081 1359/2598/5082 1354/2637/5083
+f 1354/2637/5083 1359/2598/5082 1358/2638/5084
+s 1090
+f 1358/2639/5085 1357/2616/5086 1367/2640/5087
+f 1367/2640/5087 1357/2616/5086 1364/2615/5088
+s 1091
+f 1357/2641/5089 1360/2603/5090 1385/2642/5091
+f 1385/2642/5091 1360/2603/5090 1386/2602/5092
+s 1092
+f 1363/2643/5093 1362/2644/5094 1366/2645/5095
+f 1366/2645/5095 1362/2644/5094 1367/2640/5096
+s 1093
+f 1361/2590/5097 1363/2646/5098 1368/2591/5099
+f 1368/2591/5099 1363/2646/5098 1369/2647/5100
+s 1094
+f 1364/2615/5101 1382/2614/5102 1365/2648/5103
+f 1365/2648/5103 1382/2614/5102 1381/2649/5104
+s 1095
+f 1369/2650/5105 1373/2651/5106 1370/2593/5107
+f 1370/2593/5107 1373/2651/5106 1372/2594/5108
+s 1096
+f 1371/2605/5109 1374/2652/5110 1380/2606/5111
+f 1380/2606/5111 1374/2652/5110 1378/2653/5112
+s 1097
+f 1376/2601/5113 1375/2654/5114 1386/2602/5115
+f 1386/2602/5115 1375/2654/5114 1384/2655/5116
+s 1098
+f 1375/2628/5117 1377/2656/5118 1379/2625/5119
+f 1379/2625/5119 1377/2656/5118 1380/2657/5120
+s 1099
+f 1378/2622/5121 1381/2621/5122 1379/2658/5123
+f 1379/2658/5123 1381/2621/5122 1383/2659/5124
+s 1100
+f 1383/2660/5125 1382/2614/5126 1384/2661/5127
+f 1384/2661/5127 1382/2614/5126 1385/2613/5128
+s off
+f 1347/2633/5129 1348/2631/5130 1349/2596/5131
+s 1101
+f 1350/2595/5132 1351/2608/5133 1353/2634/5134
+f 1353/2634/5134 1351/2608/5133 1352/2635/5135
+s off
+f 1354/2612/5136 1355/2589/5137 1356/2630/5138
+s 1102
+f 1357/2641/5139 1358/2638/5140 1360/2603/5141
+f 1360/2603/5141 1358/2638/5140 1359/2598/5142
+s off
+f 1361/2590/5143 1362/2611/5144 1363/2646/5145
+s 1103
+f 1364/2615/5146 1365/2648/5147 1367/2640/5148
+f 1367/2640/5148 1365/2648/5147 1366/2645/5149
+s off
+f 1368/2632/5150 1369/2650/5151 1370/2593/5152
+s 1104
+f 1371/2605/5153 1372/2594/5154 1374/2652/5155
+f 1374/2652/5155 1372/2594/5154 1373/2651/5156
+s off
+f 1375/2654/5157 1376/2601/5158 1377/2662/5159
+f 1378/2622/5160 1379/2658/5161 1380/2663/5162
+f 1381/2649/5163 1382/2614/5164 1383/2660/5165
+f 1384/2655/5166 1385/2642/5167 1386/2602/5168
+s 1105
+f 1387/2664/5169 1389/2665/5170 1419/2667/5171
+f 1419/2667/5171 1389/2665/5170 1421/2666/5172
+s 1106
+f 1389/2665/5173 1391/2668/5174 1421/2666/5175
+f 1421/2666/5175 1391/2668/5174 1423/2669/5176
+s 1107
+f 1391/2668/5177 1393/2670/5178 1423/2669/5179
+f 1423/2669/5179 1393/2670/5178 1425/2671/5180
+s 1108
+f 1393/2670/5181 1395/2672/5182 1425/2671/5183
+f 1425/2671/5183 1395/2672/5182 1427/2673/5184
+s 1109
+f 1395/2674/5185 1397/2675/5186 1427/2677/5187
+f 1427/2677/5187 1397/2675/5186 1429/2676/5188
+s 1110
+f 1397/2675/5189 1399/2678/5190 1429/2676/5191
+f 1429/2676/5191 1399/2678/5190 1431/2679/5192
+s 1111
+f 1399/2678/5193 1401/2680/5194 1431/2679/5195
+f 1431/2679/5195 1401/2680/5194 1433/2681/5196
+s 1112
+f 1401/2680/5197 1403/2682/5198 1433/2681/5199
+f 1433/2681/5199 1403/2682/5198 1435/2683/5200
+s 1113
+f 1403/2684/5201 1405/2685/5202 1435/2687/5203
+f 1435/2687/5203 1405/2685/5202 1437/2686/5204
+s 1114
+f 1405/2685/5205 1407/2688/5206 1437/2686/5207
+f 1437/2686/5207 1407/2688/5206 1439/2689/5208
+s 1115
+f 1407/2688/5209 1409/2690/5210 1439/2689/5211
+f 1439/2689/5211 1409/2690/5210 1441/2691/5212
+s 1116
+f 1409/2690/5213 1411/2692/5214 1441/2691/5215
+f 1441/2691/5215 1411/2692/5214 1443/2693/5216
+s 1117
+f 1411/2694/5217 1413/2695/5218 1443/2697/5219
+f 1443/2697/5219 1413/2695/5218 1445/2696/5220
+s 1118
+f 1413/2695/5221 1415/2698/5222 1445/2696/5223
+f 1445/2696/5223 1415/2698/5222 1447/2699/5224
+s 1119
+f 1415/2698/5225 1417/2700/5226 1447/2699/5227
+f 1447/2699/5227 1417/2700/5226 1449/2701/5228
+s 1120
+f 1417/2702/5229 1387/2664/5230 1449/2703/5231
+f 1449/2703/5231 1387/2664/5230 1419/2667/5232
+s 1121
+f 1418/2704/5233 1416/2705/5234 1388/2719/5235
+f 1416/2705/5234 1414/2706/5236 1388/2719/5235
+f 1414/2706/5236 1412/2707/5237 1388/2719/5235
+f 1412/2707/5237 1410/2708/5238 1388/2719/5235
+f 1410/2708/5238 1408/2709/5239 1388/2719/5235
+f 1408/2709/5239 1406/2710/5240 1388/2719/5235
+f 1406/2710/5240 1404/2711/5241 1388/2719/5235
+f 1404/2711/5241 1402/2712/5242 1388/2719/5235
+f 1402/2712/5242 1400/2713/5243 1388/2719/5235
+f 1400/2713/5243 1398/2714/5244 1388/2719/5235
+f 1398/2714/5244 1396/2715/5245 1388/2719/5235
+f 1396/2715/5245 1394/2716/5246 1388/2719/5235
+f 1394/2716/5246 1392/2717/5247 1388/2719/5235
+f 1392/2717/5247 1390/2718/5248 1388/2719/5235
+s 1122
+f 1422/2720/5249 1424/2721/5250 1420/2735/5251
+f 1424/2721/5250 1426/2722/5252 1420/2735/5251
+f 1426/2722/5252 1428/2723/5253 1420/2735/5251
+f 1428/2723/5253 1430/2724/5254 1420/2735/5251
+f 1430/2724/5254 1432/2725/5255 1420/2735/5251
+f 1432/2725/5255 1434/2726/5256 1420/2735/5251
+f 1434/2726/5256 1436/2727/5257 1420/2735/5251
+f 1436/2727/5257 1438/2728/5258 1420/2735/5251
+f 1438/2728/5258 1440/2729/5259 1420/2735/5251
+f 1440/2729/5259 1442/2730/5260 1420/2735/5251
+f 1442/2730/5260 1444/2731/5261 1420/2735/5251
+f 1444/2731/5261 1446/2732/5262 1420/2735/5251
+f 1446/2732/5262 1448/2733/5263 1420/2735/5251
+f 1448/2733/5263 1450/2734/5264 1420/2735/5251
+s 1123
+f 1388/2736/5265 1387/2737/5266 1418/2738/5267
+f 1418/2738/5267 1387/2737/5266 1417/2700/5268
+s 1124
+f 1387/2664/5269 1388/2739/5270 1389/2665/5271
+f 1389/2665/5271 1388/2739/5270 1390/2740/5272
+s 1125
+f 1389/2665/5273 1390/2740/5274 1391/2668/5275
+f 1391/2668/5275 1390/2740/5274 1392/2741/5276
+s 1126
+f 1391/2668/5277 1392/2741/5278 1393/2670/5279
+f 1393/2670/5279 1392/2741/5278 1394/2742/5280
+s 1127
+f 1393/2670/5281 1394/2742/5282 1395/2672/5283
+f 1395/2672/5283 1394/2742/5282 1396/2743/5284
+s 1128
+f 1395/2674/5285 1396/2744/5286 1397/2675/5287
+f 1397/2675/5287 1396/2744/5286 1398/2745/5288
+s 1129
+f 1397/2675/5289 1398/2745/5290 1399/2678/5291
+f 1399/2678/5291 1398/2745/5290 1400/2746/5292
+s 1130
+f 1399/2678/5293 1400/2746/5294 1401/2680/5295
+f 1401/2680/5295 1400/2746/5294 1402/2747/5296
+s 1131
+f 1401/2680/5297 1402/2747/5298 1403/2682/5299
+f 1403/2682/5299 1402/2747/5298 1404/2748/5300
+s 1132
+f 1403/2684/5301 1404/2749/5302 1405/2685/5303
+f 1405/2685/5303 1404/2749/5302 1406/2750/5304
+s 1133
+f 1405/2685/5305 1406/2750/5306 1407/2688/5307
+f 1407/2688/5307 1406/2750/5306 1408/2751/5308
+s 1134
+f 1407/2688/5309 1408/2751/5310 1409/2690/5311
+f 1409/2690/5311 1408/2751/5310 1410/2752/5312
+s 1135
+f 1409/2690/5313 1410/2752/5314 1411/2692/5315
+f 1411/2692/5315 1410/2752/5314 1412/2753/5316
+s 1136
+f 1411/2694/5317 1412/2754/5318 1413/2695/5319
+f 1413/2695/5319 1412/2754/5318 1414/2755/5320
+s 1137
+f 1413/2695/5321 1414/2755/5322 1415/2698/5323
+f 1415/2698/5323 1414/2755/5322 1416/2756/5324
+s 1138
+f 1415/2698/5325 1416/2756/5326 1417/2700/5327
+f 1417/2700/5327 1416/2756/5326 1418/2738/5328
+s 1139
+f 1420/2757/5329 1419/2667/5330 1422/2758/5331
+f 1422/2758/5331 1419/2667/5330 1421/2666/5332
+s 1140
+f 1419/2759/5333 1420/2760/5334 1449/2701/5335
+f 1449/2701/5335 1420/2760/5334 1450/2761/5336
+s 1141
+f 1422/2758/5337 1421/2666/5338 1424/2762/5339
+f 1424/2762/5339 1421/2666/5338 1423/2669/5340
+s 1142
+f 1424/2762/5341 1423/2669/5342 1426/2763/5343
+f 1426/2763/5343 1423/2669/5342 1425/2671/5344
+s 1143
+f 1426/2763/5345 1425/2671/5346 1428/2764/5347
+f 1428/2764/5347 1425/2671/5346 1427/2673/5348
+s 1144
+f 1428/2765/5349 1427/2677/5350 1430/2766/5351
+f 1430/2766/5351 1427/2677/5350 1429/2676/5352
+s 1145
+f 1430/2766/5353 1429/2676/5354 1432/2767/5355
+f 1432/2767/5355 1429/2676/5354 1431/2679/5356
+s 1146
+f 1432/2767/5357 1431/2679/5358 1434/2768/5359
+f 1434/2768/5359 1431/2679/5358 1433/2681/5360
+s 1147
+f 1434/2768/5361 1433/2681/5362 1436/2769/5363
+f 1436/2769/5363 1433/2681/5362 1435/2683/5364
+s 1148
+f 1436/2770/5365 1435/2687/5366 1438/2771/5367
+f 1438/2771/5367 1435/2687/5366 1437/2686/5368
+s 1149
+f 1438/2771/5369 1437/2686/5370 1440/2772/5371
+f 1440/2772/5371 1437/2686/5370 1439/2689/5372
+s 1150
+f 1440/2772/5373 1439/2689/5374 1442/2773/5375
+f 1442/2773/5375 1439/2689/5374 1441/2691/5376
+s 1151
+f 1442/2773/5377 1441/2691/5378 1444/2774/5379
+f 1444/2774/5379 1441/2691/5378 1443/2693/5380
+s 1152
+f 1444/2775/5381 1443/2697/5382 1446/2776/5383
+f 1446/2776/5383 1443/2697/5382 1445/2696/5384
+s 1153
+f 1446/2776/5385 1445/2696/5386 1448/2777/5387
+f 1448/2777/5387 1445/2696/5386 1447/2699/5388
+s 1154
+f 1448/2777/5389 1447/2699/5390 1450/2761/5391
+f 1450/2761/5391 1447/2699/5390 1449/2701/5392
+s 1155
+f 1459/2778/5393 1475/2779/5394 1452/2781/5395
+f 1452/2781/5395 1475/2779/5394 1478/2780/5396
+s 1156
+f 1480/2782/5397 1484/2783/5398 1453/2785/5399
+f 1453/2785/5399 1484/2783/5398 1457/2784/5400
+s 1157
+f 1463/2787/5401 1460/2788/5402 1456/2786/5403
+f 1456/2786/5403 1460/2788/5402 1451/2789/5404
+s 1158
+f 1485/2790/5405 1466/2791/5406 1455/2793/5407
+f 1455/2793/5407 1466/2791/5406 1464/2792/5408
+s 1159
+f 1456/2786/5409 1455/2793/5410 1463/2787/5411
+f 1463/2787/5411 1455/2793/5410 1464/2792/5412
+s 1160
+f 1483/2794/5413 1490/2795/5414 1454/2797/5415
+f 1454/2797/5415 1490/2795/5414 1486/2796/5416
+s 1161
+f 1462/2798/5417 1471/2799/5418 1458/2801/5419
+f 1458/2801/5419 1471/2799/5418 1476/2800/5420
+s 1162
+f 1465/2802/5421 1470/2803/5422 1461/2805/5423
+f 1461/2805/5423 1470/2803/5422 1472/2804/5424
+s 1163
+f 1487/2806/5425 1489/2807/5426 1467/2809/5427
+f 1467/2809/5427 1489/2807/5426 1468/2808/5428
+s 1164
+f 1488/2810/5429 1482/2811/5430 1469/2813/5431
+f 1469/2813/5431 1482/2811/5430 1473/2812/5432
+s 1165
+f 1479/2815/5433 1477/2816/5434 1481/2814/5435
+f 1481/2814/5435 1477/2816/5434 1474/2817/5436
+s 1166
+f 1474/2817/5437 1473/2812/5438 1481/2814/5439
+f 1481/2814/5439 1473/2812/5438 1482/2811/5440
+s 1167
+f 1452/2818/5441 1451/2789/5442 1459/2819/5443
+f 1459/2819/5443 1451/2789/5442 1460/2788/5444
+s 1168
+f 1453/2820/5445 1452/2821/5446 1480/2823/5447
+f 1480/2823/5447 1452/2821/5446 1478/2822/5448
+s 1169
+f 1451/2789/5449 1453/2824/5450 1456/2786/5451
+f 1456/2786/5451 1453/2824/5450 1457/2825/5452
+s 1170
+f 1454/2826/5453 1486/2827/5454 1455/2793/5455
+f 1455/2793/5455 1486/2827/5454 1485/2790/5456
+s 1171
+f 1454/2797/5457 1457/2784/5458 1483/2794/5459
+f 1483/2794/5459 1457/2784/5458 1484/2783/5460
+s 1172
+f 1459/2778/5461 1458/2801/5462 1475/2779/5463
+f 1475/2779/5463 1458/2801/5462 1476/2800/5464
+s 1173
+f 1460/2788/5465 1463/2787/5466 1458/2828/5467
+f 1458/2828/5467 1463/2787/5466 1462/2829/5468
+s 1174
+f 1462/2798/5469 1461/2805/5470 1471/2799/5471
+f 1471/2799/5471 1461/2805/5470 1472/2804/5472
+s 1175
+f 1461/2830/5473 1464/2792/5474 1465/2831/5475
+f 1465/2831/5475 1464/2792/5474 1466/2791/5476
+s 1176
+f 1466/2791/5477 1485/2790/5478 1467/2832/5479
+f 1467/2832/5479 1485/2790/5478 1487/2833/5480
+s 1177
+f 1465/2834/5481 1467/2835/5482 1470/2837/5483
+f 1470/2837/5483 1467/2835/5482 1468/2836/5484
+s 1178
+f 1469/2813/5485 1468/2838/5486 1488/2810/5487
+f 1488/2810/5487 1468/2838/5486 1489/2839/5488
+s 1179
+f 1469/2813/5489 1473/2812/5490 1470/2840/5491
+f 1470/2840/5491 1473/2812/5490 1472/2841/5492
+s 1180
+f 1471/2799/5493 1474/2842/5494 1476/2800/5495
+f 1476/2800/5495 1474/2842/5494 1477/2843/5496
+s 1181
+f 1477/2816/5497 1479/2815/5498 1475/2844/5499
+f 1475/2844/5499 1479/2815/5498 1478/2845/5500
+s 1182
+f 1479/2815/5501 1481/2814/5502 1480/2846/5503
+f 1480/2846/5503 1481/2814/5502 1484/2847/5504
+s 1183
+f 1483/2794/5505 1482/2848/5506 1490/2795/5507
+f 1490/2795/5507 1482/2848/5506 1488/2849/5508
+s 1184
+f 1487/2806/5509 1486/2796/5510 1489/2807/5511
+f 1489/2807/5511 1486/2796/5510 1490/2795/5512
+s off
+f 1451/2789/5513 1452/2818/5514 1453/2824/5515
+s 1185
+f 1454/2826/5516 1455/2793/5517 1457/2825/5518
+f 1457/2825/5518 1455/2793/5517 1456/2786/5519
+s off
+f 1458/2828/5520 1459/2819/5521 1460/2788/5522
+s 1186
+f 1461/2830/5523 1462/2829/5524 1464/2792/5525
+f 1464/2792/5525 1462/2829/5524 1463/2787/5526
+s off
+f 1465/2831/5527 1466/2791/5528 1467/2832/5529
+f 1468/2838/5530 1469/2813/5531 1470/2840/5532
+s 1187
+f 1471/2799/5533 1472/2804/5534 1474/2842/5535
+f 1474/2842/5535 1472/2804/5534 1473/2850/5536
+s off
+f 1475/2779/5537 1476/2800/5538 1477/2843/5539
+f 1478/2845/5540 1479/2815/5541 1480/2846/5542
+s 1188
+f 1481/2851/5543 1482/2848/5544 1484/2783/5545
+f 1484/2783/5545 1482/2848/5544 1483/2794/5546
+s off
+f 1485/2790/5547 1486/2827/5548 1487/2833/5549
+f 1488/2849/5550 1489/2807/5551 1490/2795/5552
+s 1189
+f 1491/2852/5553 1493/2853/5554 1523/2855/5555
+f 1523/2855/5555 1493/2853/5554 1525/2854/5556
+s 1190
+f 1493/2853/5557 1495/2856/5558 1525/2854/5559
+f 1525/2854/5559 1495/2856/5558 1527/2857/5560
+s 1191
+f 1495/2856/5561 1497/2858/5562 1527/2857/5563
+f 1527/2857/5563 1497/2858/5562 1529/2859/5564
+s 1192
+f 1497/2860/5565 1499/2861/5566 1529/2863/5567
+f 1529/2863/5567 1499/2861/5566 1531/2862/5568
+s 1193
+f 1499/2861/5569 1501/2864/5570 1531/2862/5571
+f 1531/2862/5571 1501/2864/5570 1533/2865/5572
+s 1194
+f 1501/2864/5573 1503/2866/5574 1533/2865/5575
+f 1533/2865/5575 1503/2866/5574 1535/2867/5576
+s 1195
+f 1503/2866/5577 1505/2868/5578 1535/2867/5579
+f 1535/2867/5579 1505/2868/5578 1537/2869/5580
+s 1196
+f 1505/2870/5581 1507/2871/5582 1537/2873/5583
+f 1537/2873/5583 1507/2871/5582 1539/2872/5584
+s 1197
+f 1507/2871/5585 1509/2874/5586 1539/2872/5587
+f 1539/2872/5587 1509/2874/5586 1541/2875/5588
+s 1198
+f 1509/2874/5589 1511/2876/5590 1541/2875/5591
+f 1541/2875/5591 1511/2876/5590 1543/2877/5592
+s 1199
+f 1511/2876/5593 1513/2878/5594 1543/2877/5595
+f 1543/2877/5595 1513/2878/5594 1545/2879/5596
+s 1200
+f 1513/2880/5597 1515/2881/5598 1545/2883/5599
+f 1545/2883/5599 1515/2881/5598 1547/2882/5600
+s 1201
+f 1515/2881/5601 1517/2884/5602 1547/2882/5603
+f 1547/2882/5603 1517/2884/5602 1549/2885/5604
+s 1202
+f 1517/2884/5605 1519/2886/5606 1549/2885/5607
+f 1549/2885/5607 1519/2886/5606 1551/2887/5608
+s 1203
+f 1519/2888/5609 1521/2889/5610 1551/2891/5611
+f 1551/2891/5611 1521/2889/5610 1553/2890/5612
+s 1204
+f 1521/2889/5613 1491/2852/5614 1553/2890/5615
+f 1553/2890/5615 1491/2852/5614 1523/2855/5616
+s 1205
+f 1522/2892/5617 1520/2893/5618 1492/2907/5619
+f 1520/2893/5618 1518/2894/5620 1492/2907/5619
+f 1518/2894/5620 1516/2895/5621 1492/2907/5619
+f 1516/2895/5621 1514/2896/5622 1492/2907/5619
+f 1514/2896/5622 1512/2897/5623 1492/2907/5619
+f 1512/2897/5623 1510/2898/5624 1492/2907/5619
+f 1510/2898/5624 1508/2899/5625 1492/2907/5619
+f 1508/2899/5625 1506/2900/5626 1492/2907/5619
+f 1506/2900/5626 1504/2901/5627 1492/2907/5619
+f 1504/2901/5627 1502/2902/5628 1492/2907/5619
+f 1502/2902/5628 1500/2903/5629 1492/2907/5619
+f 1500/2903/5629 1498/2904/5630 1492/2907/5619
+f 1498/2904/5630 1496/2905/5631 1492/2907/5619
+f 1496/2905/5631 1494/2906/5632 1492/2907/5619
+s 1206
+f 1526/2908/5633 1528/2909/5634 1524/2923/5635
+f 1528/2909/5634 1530/2910/5636 1524/2923/5635
+f 1530/2910/5636 1532/2911/5637 1524/2923/5635
+f 1532/2911/5637 1534/2912/5638 1524/2923/5635
+f 1534/2912/5638 1536/2913/5639 1524/2923/5635
+f 1536/2913/5639 1538/2914/5640 1524/2923/5635
+f 1538/2914/5640 1540/2915/5641 1524/2923/5635
+f 1540/2915/5641 1542/2916/5642 1524/2923/5635
+f 1542/2916/5642 1544/2917/5643 1524/2923/5635
+f 1544/2917/5643 1546/2918/5644 1524/2923/5635
+f 1546/2918/5644 1548/2919/5645 1524/2923/5635
+f 1548/2919/5645 1550/2920/5646 1524/2923/5635
+f 1550/2920/5646 1552/2921/5647 1524/2923/5635
+f 1552/2921/5647 1554/2922/5648 1524/2923/5635
+s 1207
+f 1492/2924/5649 1491/2852/5650 1522/2925/5651
+f 1522/2925/5651 1491/2852/5650 1521/2889/5652
+s 1208
+f 1491/2852/5653 1492/2924/5654 1493/2853/5655
+f 1493/2853/5655 1492/2924/5654 1494/2926/5656
+s 1209
+f 1493/2853/5657 1494/2926/5658 1495/2856/5659
+f 1495/2856/5659 1494/2926/5658 1496/2927/5660
+s 1210
+f 1495/2928/5661 1496/2929/5662 1497/2860/5663
+f 1497/2860/5663 1496/2929/5662 1498/2930/5664
+s 1211
+f 1497/2860/5665 1498/2930/5666 1499/2861/5667
+f 1499/2861/5667 1498/2930/5666 1500/2931/5668
+s 1212
+f 1499/2861/5669 1500/2931/5670 1501/2864/5671
+f 1501/2864/5671 1500/2931/5670 1502/2932/5672
+s 1213
+f 1501/2864/5673 1502/2932/5674 1503/2866/5675
+f 1503/2866/5675 1502/2932/5674 1504/2933/5676
+s 1214
+f 1503/2934/5677 1504/2935/5678 1505/2870/5679
+f 1505/2870/5679 1504/2935/5678 1506/2936/5680
+s 1215
+f 1505/2870/5681 1506/2936/5682 1507/2871/5683
+f 1507/2871/5683 1506/2936/5682 1508/2937/5684
+s 1216
+f 1507/2871/5685 1508/2937/5686 1509/2874/5687
+f 1509/2874/5687 1508/2937/5686 1510/2938/5688
+s 1217
+f 1509/2874/5689 1510/2938/5690 1511/2876/5691
+f 1511/2876/5691 1510/2938/5690 1512/2939/5692
+s 1218
+f 1511/2940/5693 1512/2941/5694 1513/2880/5695
+f 1513/2880/5695 1512/2941/5694 1514/2942/5696
+s 1219
+f 1513/2880/5697 1514/2942/5698 1515/2881/5699
+f 1515/2881/5699 1514/2942/5698 1516/2943/5700
+s 1220
+f 1515/2881/5701 1516/2943/5702 1517/2884/5703
+f 1517/2884/5703 1516/2943/5702 1518/2944/5704
+s 1221
+f 1517/2884/5705 1518/2944/5706 1519/2886/5707
+f 1519/2886/5707 1518/2944/5706 1520/2945/5708
+s 1222
+f 1519/2888/5709 1520/2946/5710 1521/2889/5711
+f 1521/2889/5711 1520/2946/5710 1522/2925/5712
+s 1223
+f 1524/2947/5713 1523/2855/5714 1526/2948/5715
+f 1526/2948/5715 1523/2855/5714 1525/2854/5716
+s 1224
+f 1523/2855/5717 1524/2947/5718 1553/2890/5719
+f 1553/2890/5719 1524/2947/5718 1554/2949/5720
+s 1225
+f 1526/2948/5721 1525/2854/5722 1528/2950/5723
+f 1528/2950/5723 1525/2854/5722 1527/2857/5724
+s 1226
+f 1528/2951/5725 1527/2952/5726 1530/2953/5727
+f 1530/2953/5727 1527/2952/5726 1529/2863/5728
+s 1227
+f 1530/2953/5729 1529/2863/5730 1532/2954/5731
+f 1532/2954/5731 1529/2863/5730 1531/2862/5732
+s 1228
+f 1532/2954/5733 1531/2862/5734 1534/2955/5735
+f 1534/2955/5735 1531/2862/5734 1533/2865/5736
+s 1229
+f 1534/2955/5737 1533/2865/5738 1536/2956/5739
+f 1536/2956/5739 1533/2865/5738 1535/2867/5740
+s 1230
+f 1536/2957/5741 1535/2958/5742 1538/2959/5743
+f 1538/2959/5743 1535/2958/5742 1537/2873/5744
+s 1231
+f 1538/2959/5745 1537/2873/5746 1540/2960/5747
+f 1540/2960/5747 1537/2873/5746 1539/2872/5748
+s 1232
+f 1540/2960/5749 1539/2872/5750 1542/2961/5751
+f 1542/2961/5751 1539/2872/5750 1541/2875/5752
+s 1233
+f 1542/2961/5753 1541/2875/5754 1544/2962/5755
+f 1544/2962/5755 1541/2875/5754 1543/2877/5756
+s 1234
+f 1544/2963/5757 1543/2964/5758 1546/2965/5759
+f 1546/2965/5759 1543/2964/5758 1545/2883/5760
+s 1235
+f 1546/2965/5761 1545/2883/5762 1548/2966/5763
+f 1548/2966/5763 1545/2883/5762 1547/2882/5764
+s 1236
+f 1548/2966/5765 1547/2882/5766 1550/2967/5767
+f 1550/2967/5767 1547/2882/5766 1549/2885/5768
+s 1237
+f 1550/2967/5769 1549/2885/5770 1552/2968/5771
+f 1552/2968/5771 1549/2885/5770 1551/2887/5772
+s 1238
+f 1552/2969/5773 1551/2891/5774 1554/2949/5775
+f 1554/2949/5775 1551/2891/5774 1553/2890/5776
+s 1239
+f 1556/2970/5777 1627/2971/5778 1558/2973/5779
+f 1558/2973/5779 1627/2971/5778 1628/2972/5780
+s 1240
+f 1627/2971/5781 1555/2974/5782 1628/2972/5783
+f 1628/2972/5783 1555/2974/5782 1557/2975/5784
+s 1241
+f 1562/2976/5785 1580/2977/5786 1601/2981/5787
+f 1601/2981/5787 1580/2977/5786 1602/2980/5788
+f 1580/2977/5786 1595/2978/5789 1602/2980/5788
+f 1595/2978/5789 1597/2979/5790 1602/2980/5788
+s 1242
+f 1580/2977/5791 1592/2982/5792 1595/2978/5793
+f 1595/2978/5793 1592/2982/5792 1596/2985/5794
+f 1592/2982/5792 1607/2983/5795 1596/2985/5794
+f 1607/2983/5795 1609/2984/5796 1596/2985/5794
+s 1243
+f 1592/2982/5797 1586/2986/5798 1607/2983/5799
+f 1607/2983/5799 1586/2986/5798 1608/2989/5800
+f 1586/2986/5798 1613/2987/5801 1608/2989/5800
+f 1613/2987/5801 1615/2988/5802 1608/2989/5800
+s 1244
+f 1586/2986/5803 1562/2976/5804 1613/2987/5805
+f 1613/2987/5805 1562/2976/5804 1614/2991/5806
+f 1562/2976/5804 1601/2981/5807 1614/2991/5806
+f 1601/2981/5807 1603/2990/5808 1614/2991/5806
+s off
+f 1595/2978/5809 1596/2985/5810 1597/2979/5811
+f 1601/2981/5812 1602/2980/5813 1603/2990/5814
+f 1607/2983/5815 1608/2989/5816 1609/2984/5817
+f 1613/2987/5818 1614/2991/5819 1615/2988/5820
+s 1245
+f 1604/2992/5821 1598/2993/5822 1622/2995/5823
+f 1622/2995/5823 1598/2993/5822 1620/2994/5824
+s 1246
+f 1598/2993/5825 1610/2996/5826 1620/2994/5827
+f 1620/2994/5827 1610/2996/5826 1624/2997/5828
+s 1247
+f 1610/2996/5829 1616/2998/5830 1624/2997/5831
+f 1624/2997/5831 1616/2998/5830 1626/2999/5832
+s 1248
+f 1604/2992/5833 1622/2995/5834 1616/2998/5835
+f 1616/2998/5835 1622/2995/5834 1626/2999/5836
+s 1249
+f 1621/3000/5837 1619/3001/5838 1556/3004/5839
+f 1556/3004/5839 1619/3001/5838 1627/3003/5840
+f 1619/3001/5838 1555/3002/5841 1627/3003/5840
+s 1250
+f 1619/3005/5842 1623/3006/5843 1555/3008/5844
+f 1555/3008/5844 1623/3006/5843 1557/3007/5845
+s 1251
+f 1623/3009/5846 1625/3010/5847 1557/3013/5848
+f 1557/3013/5848 1625/3010/5847 1628/3012/5849
+f 1625/3010/5847 1558/3011/5850 1628/3012/5849
+s 1252
+f 1625/3014/5851 1621/3015/5852 1558/3017/5853
+f 1558/3017/5853 1621/3015/5852 1556/3016/5854
+s 1253
+f 1579/3018/5855 1581/3019/5856 1560/3021/5857
+f 1560/3021/5857 1581/3019/5856 1564/3020/5858
+s 1254
+f 1563/3022/5859 1588/3023/5860 1561/3027/5861
+f 1561/3027/5861 1588/3023/5860 1585/3026/5862
+f 1588/3023/5860 1568/3024/5863 1585/3026/5862
+f 1568/3024/5863 1566/3025/5864 1585/3026/5862
+s 1255
+f 1584/3028/5865 1589/3029/5866 1559/3031/5867
+f 1559/3031/5867 1589/3029/5866 1577/3030/5868
+s 1256
+f 1572/3032/5869 1590/3033/5870 1565/3035/5871
+f 1565/3035/5871 1590/3033/5870 1583/3034/5872
+s 1257
+f 1584/3028/5873 1583/3034/5874 1589/3029/5875
+f 1589/3029/5875 1583/3034/5874 1590/3033/5876
+s 1258
+f 1570/3036/5877 1576/3037/5878 1567/3039/5879
+f 1567/3039/5879 1576/3037/5878 1573/3038/5880
+s 1259
+f 1587/3040/5881 1594/3041/5882 1569/3043/5883
+f 1569/3043/5883 1594/3041/5882 1574/3042/5884
+s 1260
+f 1582/3046/5885 1578/3047/5886 1593/3045/5887
+f 1578/3047/5886 1591/3048/5888 1593/3045/5887
+f 1593/3045/5887 1591/3048/5888 1575/3044/5889
+f 1575/3044/5889 1591/3048/5888 1571/3049/5890
+s 1261
+f 1560/3021/5891 1559/3050/5892 1579/3018/5893
+f 1579/3018/5893 1559/3050/5892 1577/3051/5894
+s 1262
+f 1561/3052/5895 1560/3021/5896 1563/3053/5897
+f 1563/3053/5897 1560/3021/5896 1564/3020/5898
+s 1263
+f 1559/3054/5899 1561/3027/5900 1584/3055/5901
+f 1584/3055/5901 1561/3027/5900 1585/3026/5902
+s off
+f 1583/3056/5903 1584/3055/5904 1585/3026/5905
+s 1264
+f 1562/2976/5906 1586/2986/5907 1563/3057/5908
+f 1563/3057/5908 1586/2986/5907 1588/3058/5909
+s 1265
+f 1562/3059/5910 1564/3020/5911 1580/3060/5912
+f 1580/3060/5912 1564/3020/5911 1581/3019/5913
+s 1266
+f 1565/3061/5914 1583/3056/5915 1566/3025/5916
+f 1566/3025/5916 1583/3056/5915 1585/3026/5917
+s 1267
+f 1567/3062/5918 1566/3025/5919 1570/3063/5920
+f 1570/3063/5920 1566/3025/5919 1568/3024/5921
+s 1268
+f 1565/3035/5922 1567/3064/5923 1572/3032/5924
+f 1572/3032/5924 1567/3064/5923 1573/3065/5925
+s 1269
+f 1569/3043/5926 1568/3066/5927 1587/3040/5928
+f 1587/3040/5928 1568/3066/5927 1588/3058/5929
+s 1270
+f 1570/3067/5930 1569/3043/5931 1576/3068/5932
+f 1576/3068/5932 1569/3043/5931 1574/3042/5933
+s 1271
+f 1572/3032/5934 1571/3069/5935 1590/3033/5936
+f 1590/3033/5936 1571/3069/5935 1591/3070/5937
+s off
+f 1589/3029/5938 1590/3033/5939 1591/3070/5940
+s 1272
+f 1573/3038/5941 1576/3037/5942 1571/3071/5943
+f 1571/3071/5943 1576/3037/5942 1575/3072/5944
+s 1273
+f 1574/3042/5945 1594/3041/5946 1575/3073/5947
+f 1575/3073/5947 1594/3041/5946 1593/3074/5948
+s 1274
+f 1577/3030/5949 1589/3029/5950 1578/3075/5951
+f 1578/3075/5951 1589/3029/5950 1591/3070/5952
+s 1275
+f 1579/3018/5953 1578/3076/5954 1581/3019/5955
+f 1581/3019/5955 1578/3076/5954 1582/3077/5956
+s 1276
+f 1580/2977/5957 1582/3078/5958 1592/2982/5959
+f 1592/2982/5959 1582/3078/5958 1593/3074/5960
+s 1277
+f 1587/3040/5961 1586/2986/5962 1594/3041/5963
+f 1594/3041/5963 1586/2986/5962 1592/2982/5964
+s off
+f 1559/3054/5965 1560/3079/5966 1561/3027/5967
+f 1562/3059/5968 1563/3053/5969 1564/3020/5970
+f 1565/3061/5971 1566/3025/5972 1567/3062/5973
+f 1568/3066/5974 1569/3043/5975 1570/3067/5976
+f 1571/3071/5977 1572/3080/5978 1573/3038/5979
+f 1574/3042/5980 1575/3073/5981 1576/3068/5982
+f 1577/3030/5983 1578/3075/5984 1579/3081/5985
+f 1580/3060/5986 1581/3019/5987 1582/3077/5988
+f 1586/2986/5989 1587/3040/5990 1588/3058/5991
+f 1592/2982/5992 1593/3074/5993 1594/3041/5994
+s 1278
+f 1597/3082/5995 1599/3083/5996 1602/3085/5997
+f 1602/3085/5997 1599/3083/5996 1606/3084/5998
+s 1279
+f 1609/3086/5999 1611/3087/6000 1596/3089/6001
+f 1596/3089/6001 1611/3087/6000 1600/3088/6002
+s 1280
+f 1603/3090/6003 1605/3091/6004 1614/3093/6005
+f 1614/3093/6005 1605/3091/6004 1618/3092/6006
+s 1281
+f 1615/3094/6007 1617/3095/6008 1608/3097/6009
+f 1608/3097/6009 1617/3095/6008 1612/3096/6010
+s 1282
+f 1597/3082/6011 1596/3098/6012 1599/3083/6013
+f 1599/3083/6013 1596/3098/6012 1600/3099/6014
+s 1283
+f 1599/3083/6015 1598/3100/6016 1606/3084/6017
+f 1606/3084/6017 1598/3100/6016 1604/3101/6018
+s 1284
+f 1600/3102/6019 1611/3103/6020 1598/2993/6021
+f 1598/2993/6021 1611/3103/6020 1610/2996/6022
+s 1285
+f 1603/3104/6023 1602/3085/6024 1605/3105/6025
+f 1605/3105/6025 1602/3085/6024 1606/3084/6026
+s 1286
+f 1605/3106/6027 1604/2992/6028 1618/3107/6029
+f 1618/3107/6029 1604/2992/6028 1616/2998/6030
+s 1287
+f 1609/3086/6031 1608/3108/6032 1611/3087/6033
+f 1611/3087/6033 1608/3108/6032 1612/3109/6034
+s 1288
+f 1610/2996/6035 1612/3110/6036 1616/2998/6037
+f 1616/2998/6037 1612/3110/6036 1617/3111/6038
+s 1289
+f 1615/3112/6039 1614/3093/6040 1617/3113/6041
+f 1617/3113/6041 1614/3093/6040 1618/3092/6042
+s 1290
+f 1620/2994/6043 1619/3114/6044 1622/2995/6045
+f 1622/2995/6045 1619/3114/6044 1621/3115/6046
+s 1291
+f 1620/2994/6047 1624/2997/6048 1619/3114/6049
+f 1619/3114/6049 1624/2997/6048 1623/3116/6050
+s 1292
+f 1622/2995/6051 1621/3115/6052 1626/2999/6053
+f 1626/2999/6053 1621/3115/6052 1625/3117/6054
+s 1293
+f 1623/3009/6055 1624/3118/6056 1625/3010/6057
+f 1625/3010/6057 1624/3118/6056 1626/3119/6058
+s off
+f 1598/3100/6059 1599/3083/6060 1600/3099/6061
+f 1604/3101/6062 1605/3105/6063 1606/3084/6064
+f 1610/3120/6065 1611/3087/6066 1612/3109/6067
+f 1616/3121/6068 1617/3113/6069 1618/3092/6070
+s 1294
+f 1629/3122/6071 1636/3123/6072 1630/3125/6073
+f 1630/3125/6073 1636/3123/6072 1635/3124/6074
+s 1295
+f 1635/3124/6075 1636/3123/6076 1639/3127/6077
+f 1639/3127/6077 1636/3123/6076 1637/3126/6078
+s 1296
+f 1630/3128/6079 1635/3129/6080 1631/3133/6081
+f 1631/3133/6081 1635/3129/6080 1634/3132/6082
+f 1635/3129/6080 1639/3130/6083 1634/3132/6082
+f 1639/3130/6083 1641/3131/6084 1634/3132/6082
+s 1297
+f 1631/3134/6085 1634/3135/6086 1632/3137/6087
+f 1632/3137/6087 1634/3135/6086 1633/3136/6088
+s 1298
+f 1633/3136/6089 1634/3135/6090 1643/3139/6091
+f 1643/3139/6091 1634/3135/6090 1641/3138/6092
+s 1299
+f 1632/3140/6093 1633/3141/6094 1629/3145/6095
+f 1629/3145/6095 1633/3141/6094 1636/3144/6096
+f 1633/3141/6094 1643/3142/6097 1636/3144/6096
+f 1643/3142/6097 1637/3143/6098 1636/3144/6096
+s 1300
+f 1632/3146/6099 1629/3147/6100 1631/3149/6101
+f 1631/3149/6101 1629/3147/6100 1630/3148/6102
+s 1301
+f 1644/3150/6103 1642/3151/6104 1638/3153/6105
+f 1638/3153/6105 1642/3151/6104 1640/3152/6106
+s 1302
+f 1638/3154/6107 1637/3143/6108 1644/3155/6109
+f 1644/3155/6109 1637/3143/6108 1643/3142/6110
+s 1303
+f 1637/3126/6111 1638/3156/6112 1639/3127/6113
+f 1639/3127/6113 1638/3156/6112 1640/3157/6114
+s 1304
+f 1639/3130/6115 1640/3158/6116 1641/3131/6117
+f 1641/3131/6117 1640/3158/6116 1642/3159/6118
+s 1305
+f 1641/3138/6119 1642/3160/6120 1643/3139/6121
+f 1643/3139/6121 1642/3160/6120 1644/3161/6122
+s 1306
+f 1645/3162/6123 1650/3163/6124 1646/3165/6125
+f 1646/3165/6125 1650/3163/6124 1652/3164/6126
+s 1307
+f 1646/3166/6127 1652/3167/6128 1647/3169/6129
+f 1647/3169/6129 1652/3167/6128 1654/3168/6130
+s 1308
+f 1647/3170/6131 1654/3171/6132 1648/3173/6133
+f 1648/3173/6133 1654/3171/6132 1656/3172/6134
+s 1309
+f 1648/3174/6135 1656/3175/6136 1645/3177/6137
+f 1645/3177/6137 1656/3175/6136 1650/3176/6138
+s 1310
+f 1648/3178/6139 1645/3179/6140 1647/3181/6141
+f 1647/3181/6141 1645/3179/6140 1646/3180/6142
+s 1311
+f 1655/3182/6143 1653/3183/6144 1649/3185/6145
+f 1649/3185/6145 1653/3183/6144 1651/3184/6146
+s 1312
+f 1649/3186/6147 1650/3176/6148 1655/3187/6149
+f 1655/3187/6149 1650/3176/6148 1656/3175/6150
+s 1313
+f 1650/3163/6151 1649/3188/6152 1652/3164/6153
+f 1652/3164/6153 1649/3188/6152 1651/3189/6154
+s 1314
+f 1652/3167/6155 1651/3190/6156 1654/3168/6157
+f 1654/3168/6157 1651/3190/6156 1653/3191/6158
+s 1315
+f 1654/3171/6159 1653/3192/6160 1656/3172/6161
+f 1656/3172/6161 1653/3192/6160 1655/3193/6162
+s 1316
+f 1657/3194/6163 1662/3195/6164 1658/3197/6165
+f 1658/3197/6165 1662/3195/6164 1664/3196/6166
+s 1317
+f 1658/3198/6167 1664/3199/6168 1659/3201/6169
+f 1659/3201/6169 1664/3199/6168 1666/3200/6170
+s 1318
+f 1659/3202/6171 1666/3203/6172 1660/3205/6173
+f 1660/3205/6173 1666/3203/6172 1668/3204/6174
+s 1319
+f 1660/3206/6175 1668/3207/6176 1657/3209/6177
+f 1657/3209/6177 1668/3207/6176 1662/3208/6178
+s 1320
+f 1660/3210/6179 1657/3211/6180 1659/3213/6181
+f 1659/3213/6181 1657/3211/6180 1658/3212/6182
+s 1321
+f 1667/3214/6183 1665/3215/6184 1661/3217/6185
+f 1661/3217/6185 1665/3215/6184 1663/3216/6186
+s 1322
+f 1661/3218/6187 1662/3208/6188 1667/3219/6189
+f 1667/3219/6189 1662/3208/6188 1668/3207/6190
+s 1323
+f 1662/3195/6191 1661/3220/6192 1664/3196/6193
+f 1664/3196/6193 1661/3220/6192 1663/3221/6194
+s 1324
+f 1664/3199/6195 1663/3222/6196 1666/3200/6197
+f 1666/3200/6197 1663/3222/6196 1665/3223/6198
+s 1325
+f 1666/3203/6199 1665/3224/6200 1668/3204/6201
+f 1668/3204/6201 1665/3224/6200 1667/3225/6202
+s 1326
+f 1669/3226/6203 1674/3227/6204 1670/3229/6205
+f 1670/3229/6205 1674/3227/6204 1676/3228/6206
+s 1327
+f 1670/3230/6207 1676/3231/6208 1671/3233/6209
+f 1671/3233/6209 1676/3231/6208 1678/3232/6210
+s 1328
+f 1671/3234/6211 1678/3235/6212 1672/3237/6213
+f 1672/3237/6213 1678/3235/6212 1680/3236/6214
+s 1329
+f 1672/3238/6215 1680/3239/6216 1669/3241/6217
+f 1669/3241/6217 1680/3239/6216 1674/3240/6218
+s 1330
+f 1672/3242/6219 1669/3243/6220 1671/3245/6221
+f 1671/3245/6221 1669/3243/6220 1670/3244/6222
+s 1331
+f 1679/3246/6223 1677/3247/6224 1673/3249/6225
+f 1673/3249/6225 1677/3247/6224 1675/3248/6226
+s 1332
+f 1673/3250/6227 1674/3240/6228 1679/3251/6229
+f 1679/3251/6229 1674/3240/6228 1680/3239/6230
+s 1333
+f 1674/3227/6231 1673/3252/6232 1676/3228/6233
+f 1676/3228/6233 1673/3252/6232 1675/3253/6234
+s 1334
+f 1676/3231/6235 1675/3254/6236 1678/3232/6237
+f 1678/3232/6237 1675/3254/6236 1677/3255/6238
+s 1335
+f 1678/3235/6239 1677/3256/6240 1680/3236/6241
+f 1680/3236/6241 1677/3256/6240 1679/3257/6242
+s 1336
+f 1681/3258/6243 1686/3259/6244 1682/3261/6245
+f 1682/3261/6245 1686/3259/6244 1688/3260/6246
+s 1337
+f 1682/3262/6247 1688/3263/6248 1683/3265/6249
+f 1683/3265/6249 1688/3263/6248 1690/3264/6250
+s 1338
+f 1683/3266/6251 1690/3267/6252 1684/3269/6253
+f 1684/3269/6253 1690/3267/6252 1692/3268/6254
+s 1339
+f 1684/3270/6255 1692/3271/6256 1681/3273/6257
+f 1681/3273/6257 1692/3271/6256 1686/3272/6258
+s 1340
+f 1684/3274/6259 1681/3275/6260 1683/3277/6261
+f 1683/3277/6261 1681/3275/6260 1682/3276/6262
+s 1341
+f 1691/3278/6263 1689/3279/6264 1685/3281/6265
+f 1685/3281/6265 1689/3279/6264 1687/3280/6266
+s 1342
+f 1685/3282/6267 1686/3272/6268 1691/3283/6269
+f 1691/3283/6269 1686/3272/6268 1692/3271/6270
+s 1343
+f 1686/3259/6271 1685/3284/6272 1688/3260/6273
+f 1688/3260/6273 1685/3284/6272 1687/3285/6274
+s 1344
+f 1688/3263/6275 1687/3286/6276 1690/3264/6277
+f 1690/3264/6277 1687/3286/6276 1689/3287/6278
+s 1345
+f 1690/3267/6279 1689/3288/6280 1692/3268/6281
+f 1692/3268/6281 1689/3288/6280 1691/3289/6282
+s 1346
+f 1693/3290/6283 1698/3291/6284 1694/3293/6285
+f 1694/3293/6285 1698/3291/6284 1700/3292/6286
+s 1347
+f 1694/3294/6287 1700/3295/6288 1695/3297/6289
+f 1695/3297/6289 1700/3295/6288 1702/3296/6290
+s 1348
+f 1695/3298/6291 1702/3299/6292 1696/3301/6293
+f 1696/3301/6293 1702/3299/6292 1704/3300/6294
+s 1349
+f 1696/3302/6295 1704/3303/6296 1693/3305/6297
+f 1693/3305/6297 1704/3303/6296 1698/3304/6298
+s 1350
+f 1696/3306/6299 1693/3307/6300 1695/3309/6301
+f 1695/3309/6301 1693/3307/6300 1694/3308/6302
+s 1351
+f 1703/3310/6303 1701/3311/6304 1697/3313/6305
+f 1697/3313/6305 1701/3311/6304 1699/3312/6306
+s 1352
+f 1697/3314/6307 1698/3304/6308 1703/3315/6309
+f 1703/3315/6309 1698/3304/6308 1704/3303/6310
+s 1353
+f 1698/3291/6311 1697/3316/6312 1700/3292/6313
+f 1700/3292/6313 1697/3316/6312 1699/3317/6314
+s 1354
+f 1700/3295/6315 1699/3318/6316 1702/3296/6317
+f 1702/3296/6317 1699/3318/6316 1701/3319/6318
+s 1355
+f 1702/3299/6319 1701/3320/6320 1704/3300/6321
+f 1704/3300/6321 1701/3320/6320 1703/3321/6322
+s 1356
+f 1705/3322/6323 1706/3323/6324 1721/3325/6325
+f 1721/3325/6325 1706/3323/6324 1722/3324/6326
+s 1357
+f 1706/3323/6327 1707/3326/6328 1722/3324/6329
+f 1722/3324/6329 1707/3326/6328 1723/3327/6330
+s 1358
+f 1707/3326/6331 1708/3328/6332 1723/3327/6333
+f 1723/3327/6333 1708/3328/6332 1724/3329/6334
+s 1359
+f 1708/3328/6335 1709/3330/6336 1724/3329/6337
+f 1724/3329/6337 1709/3330/6336 1725/3331/6338
+s 1360
+f 1709/3330/6339 1710/3332/6340 1725/3331/6341
+f 1725/3331/6341 1710/3332/6340 1726/3333/6342
+s 1361
+f 1710/3332/6343 1711/3334/6344 1726/3333/6345
+f 1726/3333/6345 1711/3334/6344 1727/3335/6346
+s 1362
+f 1711/3336/6347 1712/3337/6348 1727/3339/6349
+f 1727/3339/6349 1712/3337/6348 1728/3338/6350
+s 1363
+f 1712/3337/6351 1713/3340/6352 1728/3338/6353
+f 1728/3338/6353 1713/3340/6352 1729/3341/6354
+s 1364
+f 1713/3340/6355 1714/3342/6356 1729/3341/6357
+f 1729/3341/6357 1714/3342/6356 1730/3343/6358
+s 1365
+f 1714/3342/6359 1715/3344/6360 1730/3343/6361
+f 1730/3343/6361 1715/3344/6360 1731/3345/6362
+s 1366
+f 1715/3346/6363 1716/3347/6364 1731/3349/6365
+f 1731/3349/6365 1716/3347/6364 1732/3348/6366
+s 1367
+f 1716/3347/6367 1717/3350/6368 1732/3348/6369
+f 1732/3348/6369 1717/3350/6368 1733/3351/6370
+s 1368
+f 1717/3350/6371 1718/3352/6372 1733/3351/6373
+f 1733/3351/6373 1718/3352/6372 1734/3353/6374
+s 1369
+f 1718/3352/6375 1719/3354/6376 1734/3353/6377
+f 1734/3353/6377 1719/3354/6376 1735/3355/6378
+s 1370
+f 1719/3356/6379 1720/3357/6380 1735/3359/6381
+f 1735/3359/6381 1720/3357/6380 1736/3358/6382
+s 1371
+f 1720/3357/6383 1705/3360/6384 1736/3358/6385
+f 1736/3358/6385 1705/3360/6384 1721/3361/6386
+s 1372
+f 1705/3362/6387 1720/3363/6388 1706/3377/6389
+f 1720/3363/6388 1719/3364/6390 1706/3377/6389
+f 1719/3364/6390 1718/3365/6391 1706/3377/6389
+f 1718/3365/6391 1717/3366/6392 1706/3377/6389
+f 1717/3366/6392 1716/3367/6393 1706/3377/6389
+f 1716/3367/6393 1715/3368/6394 1706/3377/6389
+f 1715/3368/6394 1714/3369/6395 1706/3377/6389
+f 1714/3369/6395 1713/3370/6396 1706/3377/6389
+f 1713/3370/6396 1712/3371/6397 1706/3377/6389
+f 1712/3371/6397 1711/3372/6398 1706/3377/6389
+f 1711/3372/6398 1710/3373/6399 1706/3377/6389
+f 1710/3373/6399 1709/3374/6400 1706/3377/6389
+f 1709/3374/6400 1708/3375/6401 1706/3377/6389
+f 1708/3375/6401 1707/3376/6402 1706/3377/6389
+s 1373
+f 1753/3378/6403 1754/3379/6404 1768/3393/6405
+f 1754/3379/6404 1755/3380/6406 1768/3393/6405
+f 1755/3380/6406 1756/3381/6407 1768/3393/6405
+f 1756/3381/6407 1757/3382/6408 1768/3393/6405
+f 1757/3382/6408 1758/3383/6409 1768/3393/6405
+f 1758/3383/6409 1759/3384/6410 1768/3393/6405
+f 1759/3384/6410 1760/3385/6411 1768/3393/6405
+f 1760/3385/6411 1761/3386/6412 1768/3393/6405
+f 1761/3386/6412 1762/3387/6413 1768/3393/6405
+f 1762/3387/6413 1763/3388/6414 1768/3393/6405
+f 1763/3388/6414 1764/3389/6415 1768/3393/6405
+f 1764/3389/6415 1765/3390/6416 1768/3393/6405
+f 1765/3390/6416 1766/3391/6417 1768/3393/6405
+f 1766/3391/6417 1767/3392/6418 1768/3393/6405
+s 1374
+f 1721/3394/6419 1722/3395/6420 1737/3397/6421
+f 1737/3397/6421 1722/3395/6420 1738/3396/6422
+s 1375
+f 1722/3395/6423 1723/3398/6424 1738/3396/6425
+f 1738/3396/6425 1723/3398/6424 1739/3399/6426
+s 1376
+f 1723/3398/6427 1724/3400/6428 1739/3399/6429
+f 1739/3399/6429 1724/3400/6428 1740/3401/6430
+s 1377
+f 1724/3400/6431 1725/3402/6432 1740/3401/6433
+f 1740/3401/6433 1725/3402/6432 1741/3403/6434
+s 1378
+f 1725/3402/6435 1726/3404/6436 1741/3403/6437
+f 1741/3403/6437 1726/3404/6436 1742/3405/6438
+s 1379
+f 1726/3404/6439 1727/3406/6440 1742/3405/6441
+f 1742/3405/6441 1727/3406/6440 1743/3407/6442
+s 1380
+f 1727/3406/6443 1728/3408/6444 1743/3407/6445
+f 1743/3407/6445 1728/3408/6444 1744/3409/6446
+s 1381
+f 1728/3408/6447 1729/3410/6448 1744/3409/6449
+f 1744/3409/6449 1729/3410/6448 1745/3411/6450
+s 1382
+f 1729/3410/6451 1730/3412/6452 1745/3411/6453
+f 1745/3411/6453 1730/3412/6452 1746/3413/6454
+s 1383
+f 1730/3412/6455 1731/3414/6456 1746/3413/6457
+f 1746/3413/6457 1731/3414/6456 1747/3415/6458
+s 1384
+f 1731/3414/6459 1732/3416/6460 1747/3415/6461
+f 1747/3415/6461 1732/3416/6460 1748/3417/6462
+s 1385
+f 1732/3416/6463 1733/3418/6464 1748/3417/6465
+f 1748/3417/6465 1733/3418/6464 1749/3419/6466
+s 1386
+f 1733/3418/6467 1734/3420/6468 1749/3419/6469
+f 1749/3419/6469 1734/3420/6468 1750/3421/6470
+s 1387
+f 1734/3420/6471 1735/3422/6472 1750/3421/6473
+f 1750/3421/6473 1735/3422/6472 1751/3423/6474
+s 1388
+f 1735/3422/6475 1736/3424/6476 1751/3423/6477
+f 1751/3423/6477 1736/3424/6476 1752/3425/6478
+s 1389
+f 1736/3424/6479 1721/3394/6480 1752/3425/6481
+f 1752/3425/6481 1721/3394/6480 1737/3397/6482
+s 1390
+f 1737/3426/6483 1738/3427/6484 1753/3429/6485
+f 1753/3429/6485 1738/3427/6484 1754/3428/6486
+s 1391
+f 1738/3427/6487 1739/3430/6488 1754/3428/6489
+f 1754/3428/6489 1739/3430/6488 1755/3431/6490
+s 1392
+f 1739/3430/6491 1740/3432/6492 1755/3431/6493
+f 1755/3431/6493 1740/3432/6492 1756/3433/6494
+s 1393
+f 1740/3432/6495 1741/3434/6496 1756/3433/6497
+f 1756/3433/6497 1741/3434/6496 1757/3435/6498
+s 1394
+f 1741/3434/6499 1742/3436/6500 1757/3435/6501
+f 1757/3435/6501 1742/3436/6500 1758/3437/6502
+s 1395
+f 1742/3436/6503 1743/3438/6504 1758/3437/6505
+f 1758/3437/6505 1743/3438/6504 1759/3439/6506
+s 1396
+f 1743/3440/6507 1744/3441/6508 1759/3443/6509
+f 1759/3443/6509 1744/3441/6508 1760/3442/6510
+s 1397
+f 1744/3441/6511 1745/3444/6512 1760/3442/6513
+f 1760/3442/6513 1745/3444/6512 1761/3445/6514
+s 1398
+f 1745/3444/6515 1746/3446/6516 1761/3445/6517
+f 1761/3445/6517 1746/3446/6516 1762/3447/6518
+s 1399
+f 1746/3446/6519 1747/3448/6520 1762/3447/6521
+f 1762/3447/6521 1747/3448/6520 1763/3449/6522
+s 1400
+f 1747/3450/6523 1748/3451/6524 1763/3453/6525
+f 1763/3453/6525 1748/3451/6524 1764/3452/6526
+s 1401
+f 1748/3451/6527 1749/3454/6528 1764/3452/6529
+f 1764/3452/6529 1749/3454/6528 1765/3455/6530
+s 1402
+f 1749/3454/6531 1750/3456/6532 1765/3455/6533
+f 1765/3455/6533 1750/3456/6532 1766/3457/6534
+s 1403
+f 1750/3456/6535 1751/3458/6536 1766/3457/6537
+f 1766/3457/6537 1751/3458/6536 1767/3459/6538
+s 1404
+f 1751/3460/6539 1752/3461/6540 1767/3463/6541
+f 1767/3463/6541 1752/3461/6540 1768/3462/6542
+s 1405
+f 1752/3461/6543 1737/3464/6544 1768/3462/6545
+f 1768/3462/6545 1737/3464/6544 1753/3465/6546
+s 1406
+f 1769/3466/6547 1770/3467/6548 1785/3469/6549
+f 1785/3469/6549 1770/3467/6548 1786/3468/6550
+s 1407
+f 1770/3467/6551 1771/3470/6552 1786/3468/6553
+f 1786/3468/6553 1771/3470/6552 1787/3471/6554
+s 1408
+f 1771/3470/6555 1772/3472/6556 1787/3471/6557
+f 1787/3471/6557 1772/3472/6556 1788/3473/6558
+s 1409
+f 1772/3472/6559 1773/3474/6560 1788/3473/6561
+f 1788/3473/6561 1773/3474/6560 1789/3475/6562
+s 1410
+f 1773/3474/6563 1774/3476/6564 1789/3475/6565
+f 1789/3475/6565 1774/3476/6564 1790/3477/6566
+s 1411
+f 1774/3476/6567 1775/3478/6568 1790/3477/6569
+f 1790/3477/6569 1775/3478/6568 1791/3479/6570
+s 1412
+f 1775/3480/6571 1776/3481/6572 1791/3483/6573
+f 1791/3483/6573 1776/3481/6572 1792/3482/6574
+s 1413
+f 1776/3481/6575 1777/3484/6576 1792/3482/6577
+f 1792/3482/6577 1777/3484/6576 1793/3485/6578
+s 1414
+f 1777/3484/6579 1778/3486/6580 1793/3485/6581
+f 1793/3485/6581 1778/3486/6580 1794/3487/6582
+s 1415
+f 1778/3486/6583 1779/3488/6584 1794/3487/6585
+f 1794/3487/6585 1779/3488/6584 1795/3489/6586
+s 1416
+f 1779/3490/6587 1780/3491/6588 1795/3493/6589
+f 1795/3493/6589 1780/3491/6588 1796/3492/6590
+s 1417
+f 1780/3491/6591 1781/3494/6592 1796/3492/6593
+f 1796/3492/6593 1781/3494/6592 1797/3495/6594
+s 1418
+f 1781/3494/6595 1782/3496/6596 1797/3495/6597
+f 1797/3495/6597 1782/3496/6596 1798/3497/6598
+s 1419
+f 1782/3496/6599 1783/3498/6600 1798/3497/6601
+f 1798/3497/6601 1783/3498/6600 1799/3499/6602
+s 1420
+f 1783/3500/6603 1784/3501/6604 1799/3503/6605
+f 1799/3503/6605 1784/3501/6604 1800/3502/6606
+s 1421
+f 1784/3501/6607 1769/3504/6608 1800/3502/6609
+f 1800/3502/6609 1769/3504/6608 1785/3505/6610
+s 1422
+f 1769/3506/6611 1784/3507/6612 1770/3521/6613
+f 1784/3507/6612 1783/3508/6614 1770/3521/6613
+f 1783/3508/6614 1782/3509/6615 1770/3521/6613
+f 1782/3509/6615 1781/3510/6616 1770/3521/6613
+f 1781/3510/6616 1780/3511/6617 1770/3521/6613
+f 1780/3511/6617 1779/3512/6618 1770/3521/6613
+f 1779/3512/6618 1778/3513/6619 1770/3521/6613
+f 1778/3513/6619 1777/3514/6620 1770/3521/6613
+f 1777/3514/6620 1776/3515/6621 1770/3521/6613
+f 1776/3515/6621 1775/3516/6622 1770/3521/6613
+f 1775/3516/6622 1774/3517/6623 1770/3521/6613
+f 1774/3517/6623 1773/3518/6624 1770/3521/6613
+f 1773/3518/6624 1772/3519/6625 1770/3521/6613
+f 1772/3519/6625 1771/3520/6626 1770/3521/6613
+s 1423
+f 1817/3522/6627 1818/3523/6628 1832/3537/6629
+f 1818/3523/6628 1819/3524/6630 1832/3537/6629
+f 1819/3524/6630 1820/3525/6631 1832/3537/6629
+f 1820/3525/6631 1821/3526/6632 1832/3537/6629
+f 1821/3526/6632 1822/3527/6633 1832/3537/6629
+f 1822/3527/6633 1823/3528/6634 1832/3537/6629
+f 1823/3528/6634 1824/3529/6635 1832/3537/6629
+f 1824/3529/6635 1825/3530/6636 1832/3537/6629
+f 1825/3530/6636 1826/3531/6637 1832/3537/6629
+f 1826/3531/6637 1827/3532/6638 1832/3537/6629
+f 1827/3532/6638 1828/3533/6639 1832/3537/6629
+f 1828/3533/6639 1829/3534/6640 1832/3537/6629
+f 1829/3534/6640 1830/3535/6641 1832/3537/6629
+f 1830/3535/6641 1831/3536/6642 1832/3537/6629
+s 1424
+f 1785/3538/6643 1786/3539/6644 1801/3541/6645
+f 1801/3541/6645 1786/3539/6644 1802/3540/6646
+s 1425
+f 1786/3539/6647 1787/3542/6648 1802/3540/6649
+f 1802/3540/6649 1787/3542/6648 1803/3543/6650
+s 1426
+f 1787/3542/6651 1788/3544/6652 1803/3543/6653
+f 1803/3543/6653 1788/3544/6652 1804/3545/6654
+s 1427
+f 1788/3544/6655 1789/3546/6656 1804/3545/6657
+f 1804/3545/6657 1789/3546/6656 1805/3547/6658
+s 1428
+f 1789/3546/6659 1790/3548/6660 1805/3547/6661
+f 1805/3547/6661 1790/3548/6660 1806/3549/6662
+s 1429
+f 1790/3548/6663 1791/3550/6664 1806/3549/6665
+f 1806/3549/6665 1791/3550/6664 1807/3551/6666
+s 1430
+f 1791/3550/6667 1792/3552/6668 1807/3551/6669
+f 1807/3551/6669 1792/3552/6668 1808/3553/6670
+s 1431
+f 1792/3552/6671 1793/3554/6672 1808/3553/6673
+f 1808/3553/6673 1793/3554/6672 1809/3555/6674
+s 1432
+f 1793/3554/6675 1794/3556/6676 1809/3555/6677
+f 1809/3555/6677 1794/3556/6676 1810/3557/6678
+s 1433
+f 1794/3556/6679 1795/3558/6680 1810/3557/6681
+f 1810/3557/6681 1795/3558/6680 1811/3559/6682
+s 1434
+f 1795/3558/6683 1796/3560/6684 1811/3559/6685
+f 1811/3559/6685 1796/3560/6684 1812/3561/6686
+s 1435
+f 1796/3560/6687 1797/3562/6688 1812/3561/6689
+f 1812/3561/6689 1797/3562/6688 1813/3563/6690
+s 1436
+f 1797/3562/6691 1798/3564/6692 1813/3563/6693
+f 1813/3563/6693 1798/3564/6692 1814/3565/6694
+s 1437
+f 1798/3564/6695 1799/3566/6696 1814/3565/6697
+f 1814/3565/6697 1799/3566/6696 1815/3567/6698
+s 1438
+f 1799/3566/6699 1800/3568/6700 1815/3567/6701
+f 1815/3567/6701 1800/3568/6700 1816/3569/6702
+s 1439
+f 1800/3568/6703 1785/3538/6704 1816/3569/6705
+f 1816/3569/6705 1785/3538/6704 1801/3541/6706
+s 1440
+f 1801/3570/6707 1802/3571/6708 1817/3573/6709
+f 1817/3573/6709 1802/3571/6708 1818/3572/6710
+s 1441
+f 1802/3571/6711 1803/3574/6712 1818/3572/6713
+f 1818/3572/6713 1803/3574/6712 1819/3575/6714
+s 1442
+f 1803/3574/6715 1804/3576/6716 1819/3575/6717
+f 1819/3575/6717 1804/3576/6716 1820/3577/6718
+s 1443
+f 1804/3576/6719 1805/3578/6720 1820/3577/6721
+f 1820/3577/6721 1805/3578/6720 1821/3579/6722
+s 1444
+f 1805/3578/6723 1806/3580/6724 1821/3579/6725
+f 1821/3579/6725 1806/3580/6724 1822/3581/6726
+s 1445
+f 1806/3580/6727 1807/3582/6728 1822/3581/6729
+f 1822/3581/6729 1807/3582/6728 1823/3583/6730
+s 1446
+f 1807/3584/6731 1808/3585/6732 1823/3587/6733
+f 1823/3587/6733 1808/3585/6732 1824/3586/6734
+s 1447
+f 1808/3585/6735 1809/3588/6736 1824/3586/6737
+f 1824/3586/6737 1809/3588/6736 1825/3589/6738
+s 1448
+f 1809/3588/6739 1810/3590/6740 1825/3589/6741
+f 1825/3589/6741 1810/3590/6740 1826/3591/6742
+s 1449
+f 1810/3590/6743 1811/3592/6744 1826/3591/6745
+f 1826/3591/6745 1811/3592/6744 1827/3593/6746
+s 1450
+f 1811/3594/6747 1812/3595/6748 1827/3597/6749
+f 1827/3597/6749 1812/3595/6748 1828/3596/6750
+s 1451
+f 1812/3595/6751 1813/3598/6752 1828/3596/6753
+f 1828/3596/6753 1813/3598/6752 1829/3599/6754
+s 1452
+f 1813/3598/6755 1814/3600/6756 1829/3599/6757
+f 1829/3599/6757 1814/3600/6756 1830/3601/6758
+s 1453
+f 1814/3600/6759 1815/3602/6760 1830/3601/6761
+f 1830/3601/6761 1815/3602/6760 1831/3603/6762
+s 1454
+f 1815/3604/6763 1816/3605/6764 1831/3607/6765
+f 1831/3607/6765 1816/3605/6764 1832/3606/6766
+s 1455
+f 1816/3605/6767 1801/3608/6768 1832/3606/6769
+f 1832/3606/6769 1801/3608/6768 1817/3609/6770
+s 1456
+f 1848/3610/6771 1851/3611/6772 1833/3613/6773
+f 1833/3613/6773 1851/3611/6772 1835/3612/6774
+s 1457
+f 1837/3614/6775 1842/3615/6776 1834/3617/6777
+f 1834/3617/6777 1842/3615/6776 1839/3616/6778
+s 1458
+f 1850/3618/6779 1845/3619/6780 1836/3621/6781
+f 1836/3621/6781 1845/3619/6780 1840/3620/6782
+s 1459
+f 1841/3622/6783 1847/3623/6784 1838/3625/6785
+f 1838/3625/6785 1847/3623/6784 1844/3624/6786
+s 1460
+f 1852/3627/6787 1849/3628/6788 1846/3626/6789
+f 1846/3626/6789 1849/3628/6788 1843/3629/6790
+s 1461
+f 1834/3630/6791 1833/3613/6792 1837/3631/6793
+f 1837/3631/6793 1833/3613/6792 1835/3612/6794
+s 1462
+f 1836/3621/6795 1835/3632/6796 1850/3618/6797
+f 1850/3618/6797 1835/3632/6796 1851/3633/6798
+s 1463
+f 1837/3614/6799 1836/3634/6800 1842/3615/6801
+f 1842/3615/6801 1836/3634/6800 1840/3635/6802
+s 1464
+f 1838/3636/6803 1839/3616/6804 1841/3637/6805
+f 1841/3637/6805 1839/3616/6804 1842/3615/6806
+s 1465
+f 1841/3622/6807 1840/3638/6808 1847/3623/6809
+f 1847/3623/6809 1840/3638/6808 1845/3639/6810
+s 1466
+f 1844/3624/6811 1847/3623/6812 1843/3640/6813
+f 1843/3640/6813 1847/3623/6812 1846/3641/6814
+s 1467
+f 1846/3642/6815 1845/3619/6816 1852/3643/6817
+f 1852/3643/6817 1845/3619/6816 1850/3618/6818
+s 1468
+f 1849/3644/6819 1852/3645/6820 1848/3610/6821
+f 1848/3610/6821 1852/3645/6820 1851/3611/6822
+s off
+f 1835/3646/6823 1836/3634/6824 1837/3614/6825
+f 1840/3635/6826 1841/3637/6827 1842/3615/6828
+f 1845/3639/6829 1846/3641/6830 1847/3623/6831
+f 1850/3618/6832 1851/3633/6833 1852/3643/6834
+s 1469
+f 1853/3647/6835 1854/3648/6836 1855/3650/6837
+f 1855/3650/6837 1854/3648/6836 1856/3649/6838
+s 1470
+f 1855/3651/6839 1856/3652/6840 1857/3654/6841
+f 1857/3654/6841 1856/3652/6840 1858/3653/6842
+s 1471
+f 1857/3655/6843 1858/3656/6844 1859/3658/6845
+f 1859/3658/6845 1858/3656/6844 1860/3657/6846
+s 1472
+f 1859/3659/6847 1860/3660/6848 1853/3662/6849
+f 1853/3662/6849 1860/3660/6848 1854/3661/6850
+s 1473
+f 1854/3663/6851 1860/3664/6852 1856/3666/6853
+f 1856/3666/6853 1860/3664/6852 1858/3665/6854
+s 1474
+f 1859/3667/6855 1853/3668/6856 1857/3670/6857
+f 1857/3670/6857 1853/3668/6856 1855/3669/6858
+s 1475
+f 1861/3671/6859 1862/3672/6860 1863/3674/6861
+f 1863/3674/6861 1862/3672/6860 1864/3673/6862
+s 1476
+f 1863/3675/6863 1864/3676/6864 1865/3678/6865
+f 1865/3678/6865 1864/3676/6864 1866/3677/6866
+s 1477
+f 1865/3679/6867 1866/3680/6868 1867/3682/6869
+f 1867/3682/6869 1866/3680/6868 1868/3681/6870
+s 1478
+f 1867/3683/6871 1868/3684/6872 1861/3686/6873
+f 1861/3686/6873 1868/3684/6872 1862/3685/6874
+s 1479
+f 1862/3687/6875 1868/3688/6876 1864/3690/6877
+f 1864/3690/6877 1868/3688/6876 1866/3689/6878
+s 1480
+f 1867/3691/6879 1861/3692/6880 1865/3694/6881
+f 1865/3694/6881 1861/3692/6880 1863/3693/6882
+s 1481
+f 1869/3695/6883 1870/3696/6884 1871/3698/6885
+f 1871/3698/6885 1870/3696/6884 1872/3697/6886
+s 1482
+f 1871/3699/6887 1872/3700/6888 1873/3702/6889
+f 1873/3702/6889 1872/3700/6888 1874/3701/6890
+s 1483
+f 1873/3703/6891 1874/3704/6892 1875/3706/6893
+f 1875/3706/6893 1874/3704/6892 1876/3705/6894
+s 1484
+f 1875/3707/6895 1876/3708/6896 1869/3710/6897
+f 1869/3710/6897 1876/3708/6896 1870/3709/6898
+s 1485
+f 1870/3711/6899 1876/3712/6900 1872/3714/6901
+f 1872/3714/6901 1876/3712/6900 1874/3713/6902
+s 1486
+f 1875/3715/6903 1869/3716/6904 1873/3718/6905
+f 1873/3718/6905 1869/3716/6904 1871/3717/6906
+s 1487
+f 1877/3719/6907 1878/3720/6908 1893/3722/6909
+f 1893/3722/6909 1878/3720/6908 1894/3721/6910
+s 1488
+f 1878/3720/6911 1879/3723/6912 1894/3721/6913
+f 1894/3721/6913 1879/3723/6912 1895/3724/6914
+s 1489
+f 1879/3723/6915 1880/3725/6916 1895/3724/6917
+f 1895/3724/6917 1880/3725/6916 1896/3726/6918
+s 1490
+f 1880/3725/6919 1881/3727/6920 1896/3726/6921
+f 1896/3726/6921 1881/3727/6920 1897/3728/6922
+s 1491
+f 1881/3727/6923 1882/3729/6924 1897/3728/6925
+f 1897/3728/6925 1882/3729/6924 1898/3730/6926
+s 1492
+f 1882/3729/6927 1883/3731/6928 1898/3730/6929
+f 1898/3730/6929 1883/3731/6928 1899/3732/6930
+s 1493
+f 1883/3733/6931 1884/3734/6932 1899/3736/6933
+f 1899/3736/6933 1884/3734/6932 1900/3735/6934
+s 1494
+f 1884/3734/6935 1885/3737/6936 1900/3735/6937
+f 1900/3735/6937 1885/3737/6936 1901/3738/6938
+s 1495
+f 1885/3737/6939 1886/3739/6940 1901/3738/6941
+f 1901/3738/6941 1886/3739/6940 1902/3740/6942
+s 1496
+f 1886/3739/6943 1887/3741/6944 1902/3740/6945
+f 1902/3740/6945 1887/3741/6944 1903/3742/6946
+s 1497
+f 1887/3743/6947 1888/3744/6948 1903/3746/6949
+f 1903/3746/6949 1888/3744/6948 1904/3745/6950
+s 1498
+f 1888/3744/6951 1889/3747/6952 1904/3745/6953
+f 1904/3745/6953 1889/3747/6952 1905/3748/6954
+s 1499
+f 1889/3747/6955 1890/3749/6956 1905/3748/6957
+f 1905/3748/6957 1890/3749/6956 1906/3750/6958
+s 1500
+f 1890/3749/6959 1891/3751/6960 1906/3750/6961
+f 1906/3750/6961 1891/3751/6960 1907/3752/6962
+s 1501
+f 1891/3753/6963 1892/3754/6964 1907/3756/6965
+f 1907/3756/6965 1892/3754/6964 1908/3755/6966
+s 1502
+f 1892/3754/6967 1877/3757/6968 1908/3755/6969
+f 1908/3755/6969 1877/3757/6968 1893/3758/6970
+s 1503
+f 1877/3759/6971 1892/3760/6972 1878/3774/6973
+f 1892/3760/6972 1891/3761/6974 1878/3774/6973
+f 1891/3761/6974 1890/3762/6975 1878/3774/6973
+f 1890/3762/6975 1889/3763/6976 1878/3774/6973
+f 1889/3763/6976 1888/3764/6977 1878/3774/6973
+f 1888/3764/6977 1887/3765/6978 1878/3774/6973
+f 1887/3765/6978 1886/3766/6979 1878/3774/6973
+f 1886/3766/6979 1885/3767/6980 1878/3774/6973
+f 1885/3767/6980 1884/3768/6981 1878/3774/6973
+f 1884/3768/6981 1883/3769/6982 1878/3774/6973
+f 1883/3769/6982 1882/3770/6983 1878/3774/6973
+f 1882/3770/6983 1881/3771/6984 1878/3774/6973
+f 1881/3771/6984 1880/3772/6985 1878/3774/6973
+f 1880/3772/6985 1879/3773/6986 1878/3774/6973
+s 1504
+f 1925/3775/6987 1926/3776/6988 1940/3790/6989
+f 1926/3776/6988 1927/3777/6990 1940/3790/6989
+f 1927/3777/6990 1928/3778/6991 1940/3790/6989
+f 1928/3778/6991 1929/3779/6992 1940/3790/6989
+f 1929/3779/6992 1930/3780/6993 1940/3790/6989
+f 1930/3780/6993 1931/3781/6994 1940/3790/6989
+f 1931/3781/6994 1932/3782/6995 1940/3790/6989
+f 1932/3782/6995 1933/3783/6996 1940/3790/6989
+f 1933/3783/6996 1934/3784/6997 1940/3790/6989
+f 1934/3784/6997 1935/3785/6998 1940/3790/6989
+f 1935/3785/6998 1936/3786/6999 1940/3790/6989
+f 1936/3786/6999 1937/3787/7000 1940/3790/6989
+f 1937/3787/7000 1938/3788/7001 1940/3790/6989
+f 1938/3788/7001 1939/3789/7002 1940/3790/6989
+s 1505
+f 1893/3791/7003 1894/3792/7004 1909/3794/7005
+f 1909/3794/7005 1894/3792/7004 1910/3793/7006
+s 1506
+f 1894/3792/7007 1895/3795/7008 1910/3793/7009
+f 1910/3793/7009 1895/3795/7008 1911/3796/7010
+s 1507
+f 1895/3795/7011 1896/3797/7012 1911/3796/7013
+f 1911/3796/7013 1896/3797/7012 1912/3798/7014
+s 1508
+f 1896/3797/7015 1897/3799/7016 1912/3798/7017
+f 1912/3798/7017 1897/3799/7016 1913/3800/7018
+s 1509
+f 1897/3799/7019 1898/3801/7020 1913/3800/7021
+f 1913/3800/7021 1898/3801/7020 1914/3802/7022
+s 1510
+f 1898/3801/7023 1899/3803/7024 1914/3802/7025
+f 1914/3802/7025 1899/3803/7024 1915/3804/7026
+s 1511
+f 1899/3803/7027 1900/3805/7028 1915/3804/7029
+f 1915/3804/7029 1900/3805/7028 1916/3806/7030
+s 1512
+f 1900/3805/7031 1901/3807/7032 1916/3806/7033
+f 1916/3806/7033 1901/3807/7032 1917/3808/7034
+s 1513
+f 1901/3807/7035 1902/3809/7036 1917/3808/7037
+f 1917/3808/7037 1902/3809/7036 1918/3810/7038
+s 1514
+f 1902/3809/7039 1903/3811/7040 1918/3810/7041
+f 1918/3810/7041 1903/3811/7040 1919/3812/7042
+s 1515
+f 1903/3811/7043 1904/3813/7044 1919/3812/7045
+f 1919/3812/7045 1904/3813/7044 1920/3814/7046
+s 1516
+f 1904/3813/7047 1905/3815/7048 1920/3814/7049
+f 1920/3814/7049 1905/3815/7048 1921/3816/7050
+s 1517
+f 1905/3815/7051 1906/3817/7052 1921/3816/7053
+f 1921/3816/7053 1906/3817/7052 1922/3818/7054
+s 1518
+f 1906/3817/7055 1907/3819/7056 1922/3818/7057
+f 1922/3818/7057 1907/3819/7056 1923/3820/7058
+s 1519
+f 1907/3819/7059 1908/3821/7060 1923/3820/7061
+f 1923/3820/7061 1908/3821/7060 1924/3822/7062
+s 1520
+f 1908/3821/7063 1893/3791/7064 1924/3822/7065
+f 1924/3822/7065 1893/3791/7064 1909/3794/7066
+s 1521
+f 1909/3823/7067 1910/3824/7068 1925/3826/7069
+f 1925/3826/7069 1910/3824/7068 1926/3825/7070
+s 1522
+f 1910/3824/7071 1911/3827/7072 1926/3825/7073
+f 1926/3825/7073 1911/3827/7072 1927/3828/7074
+s 1523
+f 1911/3827/7075 1912/3829/7076 1927/3828/7077
+f 1927/3828/7077 1912/3829/7076 1928/3830/7078
+s 1524
+f 1912/3829/7079 1913/3831/7080 1928/3830/7081
+f 1928/3830/7081 1913/3831/7080 1929/3832/7082
+s 1525
+f 1913/3831/7083 1914/3833/7084 1929/3832/7085
+f 1929/3832/7085 1914/3833/7084 1930/3834/7086
+s 1526
+f 1914/3833/7087 1915/3835/7088 1930/3834/7089
+f 1930/3834/7089 1915/3835/7088 1931/3836/7090
+s 1527
+f 1915/3837/7091 1916/3838/7092 1931/3840/7093
+f 1931/3840/7093 1916/3838/7092 1932/3839/7094
+s 1528
+f 1916/3838/7095 1917/3841/7096 1932/3839/7097
+f 1932/3839/7097 1917/3841/7096 1933/3842/7098
+s 1529
+f 1917/3841/7099 1918/3843/7100 1933/3842/7101
+f 1933/3842/7101 1918/3843/7100 1934/3844/7102
+s 1530
+f 1918/3843/7103 1919/3845/7104 1934/3844/7105
+f 1934/3844/7105 1919/3845/7104 1935/3846/7106
+s 1531
+f 1919/3847/7107 1920/3848/7108 1935/3850/7109
+f 1935/3850/7109 1920/3848/7108 1936/3849/7110
+s 1532
+f 1920/3848/7111 1921/3851/7112 1936/3849/7113
+f 1936/3849/7113 1921/3851/7112 1937/3852/7114
+s 1533
+f 1921/3851/7115 1922/3853/7116 1937/3852/7117
+f 1937/3852/7117 1922/3853/7116 1938/3854/7118
+s 1534
+f 1922/3853/7119 1923/3855/7120 1938/3854/7121
+f 1938/3854/7121 1923/3855/7120 1939/3856/7122
+s 1535
+f 1923/3857/7123 1924/3858/7124 1939/3860/7125
+f 1939/3860/7125 1924/3858/7124 1940/3859/7126
+s 1536
+f 1924/3858/7127 1909/3861/7128 1940/3859/7129
+f 1940/3859/7129 1909/3861/7128 1925/3862/7130
+s 1537
+f 1959/3863/7131 1963/3864/7132 1942/3866/7133
+f 1942/3866/7133 1963/3864/7132 1944/3865/7134
+s 1538
+f 1946/3867/7135 1952/3868/7136 1943/3870/7137
+f 1943/3870/7137 1952/3868/7136 1949/3869/7138
+s 1539
+f 1948/3871/7139 1954/3872/7140 1941/3874/7141
+f 1941/3874/7141 1954/3872/7140 1960/3873/7142
+s 1540
+f 1962/3875/7143 1956/3876/7144 1945/3878/7145
+f 1945/3878/7145 1956/3876/7144 1950/3877/7146
+s 1541
+f 1951/3879/7147 1958/3880/7148 1947/3882/7149
+f 1947/3882/7149 1958/3880/7148 1955/3881/7150
+s 1542
+f 1957/3883/7151 1964/3884/7152 1953/3886/7153
+f 1953/3886/7153 1964/3884/7152 1961/3885/7154
+s 1543
+f 1942/3866/7155 1941/3887/7156 1959/3863/7157
+f 1959/3863/7157 1941/3887/7156 1960/3888/7158
+s 1544
+f 1943/3889/7159 1942/3866/7160 1946/3890/7161
+f 1946/3890/7161 1942/3866/7160 1944/3865/7162
+s 1545
+f 1941/3891/7163 1943/3870/7164 1948/3892/7165
+f 1948/3892/7165 1943/3870/7164 1949/3869/7166
+s 1546
+f 1945/3893/7167 1944/3865/7168 1962/3894/7169
+f 1962/3894/7169 1944/3865/7168 1963/3864/7170
+s 1547
+f 1946/3867/7171 1945/3895/7172 1952/3868/7173
+f 1952/3868/7173 1945/3895/7172 1950/3896/7174
+s 1548
+f 1948/3871/7175 1947/3897/7176 1954/3872/7177
+f 1954/3872/7177 1947/3897/7176 1955/3898/7178
+s 1549
+f 1947/3899/7179 1949/3869/7180 1951/3900/7181
+f 1951/3900/7181 1949/3869/7180 1952/3868/7182
+s 1550
+f 1951/3901/7183 1950/3877/7184 1958/3902/7185
+f 1958/3902/7185 1950/3877/7184 1956/3876/7186
+s 1551
+f 1954/3872/7187 1953/3903/7188 1960/3873/7189
+f 1960/3873/7189 1953/3903/7188 1961/3904/7190
+s 1552
+f 1953/3905/7191 1955/3881/7192 1957/3906/7193
+f 1957/3906/7193 1955/3881/7192 1958/3880/7194
+s 1553
+f 1957/3907/7195 1956/3876/7196 1964/3908/7197
+f 1964/3908/7197 1956/3876/7196 1962/3875/7198
+s 1554
+f 1959/3863/7199 1961/3909/7200 1963/3864/7201
+f 1963/3864/7201 1961/3909/7200 1964/3910/7202
+s off
+f 1941/3891/7203 1942/3911/7204 1943/3870/7205
+f 1944/3865/7206 1945/3893/7207 1946/3890/7208
+f 1947/3899/7209 1948/3892/7210 1949/3869/7211
+f 1950/3896/7212 1951/3900/7213 1952/3868/7214
+f 1953/3905/7215 1954/3912/7216 1955/3881/7217
+f 1956/3876/7218 1957/3907/7219 1958/3902/7220
+f 1959/3913/7221 1960/3873/7222 1961/3904/7223
+f 1962/3894/7224 1963/3864/7225 1964/3910/7226
+s 1555
+f 1965/3914/7227 1966/3915/7228 2093/3917/7229
+f 2093/3917/7229 1966/3915/7228 2094/3916/7230
+s 1556
+f 1966/3915/7231 1967/3918/7232 2094/3916/7233
+f 2094/3916/7233 1967/3918/7232 2095/3919/7234
+s 1557
+f 1967/3918/7235 1968/3920/7236 2095/3919/7237
+f 2095/3919/7237 1968/3920/7236 2096/3921/7238
+s 1558
+f 1968/3920/7239 1969/3922/7240 2096/3921/7241
+f 2096/3921/7241 1969/3922/7240 2097/3923/7242
+s 1559
+f 1969/3922/7243 1970/3924/7244 2097/3923/7245
+f 2097/3923/7245 1970/3924/7244 2098/3925/7246
+s 1560
+f 1970/3924/7247 1971/3926/7248 2098/3925/7249
+f 2098/3925/7249 1971/3926/7248 2099/3927/7250
+s 1561
+f 1971/3928/7251 1972/3929/7252 2099/3931/7253
+f 2099/3931/7253 1972/3929/7252 2100/3930/7254
+s 1562
+f 1972/3929/7255 1973/3932/7256 2100/3930/7257
+f 2100/3930/7257 1973/3932/7256 2101/3933/7258
+s 1563
+f 1973/3932/7259 1974/3934/7260 2101/3933/7261
+f 2101/3933/7261 1974/3934/7260 2102/3935/7262
+s 1564
+f 1974/3934/7263 1975/3936/7264 2102/3935/7265
+f 2102/3935/7265 1975/3936/7264 2103/3937/7266
+s 1565
+f 1975/3938/7267 1976/3939/7268 2103/3941/7269
+f 2103/3941/7269 1976/3939/7268 2104/3940/7270
+s 1566
+f 1976/3939/7271 1977/3942/7272 2104/3940/7273
+f 2104/3940/7273 1977/3942/7272 2105/3943/7274
+s 1567
+f 1977/3942/7275 1978/3944/7276 2105/3943/7277
+f 2105/3943/7277 1978/3944/7276 2106/3945/7278
+s 1568
+f 1978/3944/7279 1979/3946/7280 2106/3945/7281
+f 2106/3945/7281 1979/3946/7280 2107/3947/7282
+s 1569
+f 1979/3948/7283 1980/3949/7284 2107/3951/7285
+f 2107/3951/7285 1980/3949/7284 2108/3950/7286
+s 1570
+f 1980/3949/7287 1965/3952/7288 2108/3950/7289
+f 2108/3950/7289 1965/3952/7288 2093/3953/7290
+s 1571
+f 1965/3952/7291 1980/3949/7292 1998/3955/7293
+f 1998/3955/7293 1980/3949/7292 1997/3954/7294
+s 1572
+f 1979/3948/7295 1999/3956/7296 1980/3949/7297
+f 1980/3949/7297 1999/3956/7296 1997/3954/7298
+s 1573
+f 1978/3944/7299 2000/3957/7300 1979/3946/7301
+f 1979/3946/7301 2000/3957/7300 1999/3958/7302
+s 1574
+f 1977/3942/7303 2001/3959/7304 1978/3944/7305
+f 1978/3944/7305 2001/3959/7304 2000/3957/7306
+s 1575
+f 1976/3939/7307 2002/3960/7308 1977/3942/7309
+f 1977/3942/7309 2002/3960/7308 2001/3959/7310
+s 1576
+f 1975/3938/7311 2003/3961/7312 1976/3939/7313
+f 1976/3939/7313 2003/3961/7312 2002/3960/7314
+s 1577
+f 1975/3936/7315 1974/3934/7316 2003/3963/7317
+f 2003/3963/7317 1974/3934/7316 2004/3962/7318
+s 1578
+f 1974/3934/7319 1973/3932/7320 2004/3962/7321
+f 2004/3962/7321 1973/3932/7320 2005/3964/7322
+s 1579
+f 1973/3932/7323 1972/3929/7324 2005/3964/7325
+f 2005/3964/7325 1972/3929/7324 2006/3965/7326
+s 1580
+f 1971/3928/7327 2007/3966/7328 1972/3929/7329
+f 1972/3929/7329 2007/3966/7328 2006/3965/7330
+s 1581
+f 1970/3924/7331 2008/3967/7332 1971/3926/7333
+f 1971/3926/7333 2008/3967/7332 2007/3968/7334
+s 1582
+f 1969/3922/7335 2009/3969/7336 1970/3924/7337
+f 1970/3924/7337 2009/3969/7336 2008/3967/7338
+s 1583
+f 1969/3922/7339 1968/3920/7340 2009/3969/7341
+f 2009/3969/7341 1968/3920/7340 2010/3970/7342
+s 1584
+f 1968/3920/7343 1967/3918/7344 2010/3970/7345
+f 2010/3970/7345 1967/3918/7344 2011/3971/7346
+s 1585
+f 1967/3918/7347 1966/3915/7348 2011/3971/7349
+f 2011/3971/7349 1966/3915/7348 2012/3972/7350
+s 1586
+f 1966/3915/7351 1965/3914/7352 2012/3972/7353
+f 2012/3972/7353 1965/3914/7352 1998/3973/7354
+s 1587
+f 1998/3955/7355 1997/3954/7356 2014/3975/7357
+f 2014/3975/7357 1997/3954/7356 2013/3974/7358
+s 1588
+f 1999/3956/7359 2015/3976/7360 1997/3954/7361
+f 1997/3954/7361 2015/3976/7360 2013/3974/7362
+s 1589
+f 2000/3957/7363 2016/3977/7364 1999/3958/7365
+f 1999/3958/7365 2016/3977/7364 2015/3978/7366
+s 1590
+f 2001/3959/7367 2017/3979/7368 2000/3957/7369
+f 2000/3957/7369 2017/3979/7368 2016/3977/7370
+s 1591
+f 2002/3960/7371 2018/3980/7372 2001/3959/7373
+f 2001/3959/7373 2018/3980/7372 2017/3979/7374
+s 1592
+f 2003/3961/7375 2019/3981/7376 2002/3960/7377
+f 2002/3960/7377 2019/3981/7376 2018/3980/7378
+s 1593
+f 2004/3982/7379 2020/3983/7380 2003/3961/7381
+f 2003/3961/7381 2020/3983/7380 2019/3981/7382
+s 1594
+f 2005/3964/7383 2021/3984/7384 2004/3962/7385
+f 2004/3962/7385 2021/3984/7384 2020/3985/7386
+s 1595
+f 2006/3965/7387 2022/3986/7388 2005/3964/7389
+f 2005/3964/7389 2022/3986/7388 2021/3984/7390
+s 1596
+f 2006/3965/7391 2007/3966/7392 2022/3986/7393
+f 2022/3986/7393 2007/3966/7392 2023/3987/7394
+s 1597
+f 2007/3968/7395 2008/3967/7396 2023/3989/7397
+f 2023/3989/7397 2008/3967/7396 2024/3988/7398
+s 1598
+f 2008/3967/7399 2009/3969/7400 2024/3988/7401
+f 2024/3988/7401 2009/3969/7400 2025/3990/7402
+s 1599
+f 2009/3969/7403 2010/3970/7404 2025/3990/7405
+f 2025/3990/7405 2010/3970/7404 2026/3991/7406
+s 1600
+f 2010/3970/7407 2011/3971/7408 2026/3991/7409
+f 2026/3991/7409 2011/3971/7408 2027/3992/7410
+s 1601
+f 2011/3971/7411 2012/3972/7412 2027/3992/7413
+f 2027/3992/7413 2012/3972/7412 2028/3993/7414
+s 1602
+f 2012/3972/7415 1998/3973/7416 2028/3993/7417
+f 2028/3993/7417 1998/3973/7416 2014/3994/7418
+s 1603
+f 1981/3995/7419 1982/3996/7420 1996/4010/7421
+f 1982/3996/7420 1983/3997/7422 1996/4010/7421
+f 1983/3997/7422 1984/3998/7423 1996/4010/7421
+f 1984/3998/7423 1985/3999/7424 1996/4010/7421
+f 1985/3999/7424 1986/4000/7425 1996/4010/7421
+f 1986/4000/7425 1987/4001/7426 1996/4010/7421
+f 1987/4001/7426 1988/4002/7427 1996/4010/7421
+f 1988/4002/7427 1989/4003/7428 1996/4010/7421
+f 1989/4003/7428 1990/4004/7429 1996/4010/7421
+f 1990/4004/7429 1991/4005/7430 1996/4010/7421
+f 1991/4005/7430 1992/4006/7431 1996/4010/7421
+f 1992/4006/7431 1993/4007/7432 1996/4010/7421
+f 1993/4007/7432 1994/4008/7433 1996/4010/7421
+f 1994/4008/7433 1995/4009/7434 1996/4010/7421
+s 1604
+f 2125/4012/7435 2127/4013/7436 2126/4011/7437
+f 2126/4011/7437 2127/4013/7436 2128/4014/7438
+s 1605
+f 2125/4012/7439 2129/4015/7440 2127/4013/7441
+f 2127/4013/7441 2129/4015/7440 2130/4016/7442
+s 1606
+f 2129/4015/7443 2131/4017/7444 2130/4016/7445
+f 2130/4016/7445 2131/4017/7444 2132/4018/7446
+s 1607
+f 2131/4017/7447 2133/4019/7448 2132/4018/7449
+f 2132/4018/7449 2133/4019/7448 2134/4020/7450
+s 1608
+f 2133/4019/7451 2135/4021/7452 2134/4020/7453
+f 2134/4020/7453 2135/4021/7452 2136/4022/7454
+s 1609
+f 2137/4023/7455 2138/4024/7456 2135/4021/7457
+f 2135/4021/7457 2138/4024/7456 2136/4022/7458
+s 1610
+f 2139/4025/7459 2140/4026/7460 2137/4023/7461
+f 2137/4023/7461 2140/4026/7460 2138/4024/7462
+s 1611
+f 2141/4027/7463 2142/4028/7464 2139/4025/7465
+f 2139/4025/7465 2142/4028/7464 2140/4026/7466
+s 1612
+f 2143/4029/7467 2144/4030/7468 2141/4027/7469
+f 2141/4027/7469 2144/4030/7468 2142/4028/7470
+s 1613
+f 2143/4029/7471 2145/4031/7472 2144/4030/7473
+f 2144/4030/7473 2145/4031/7472 2146/4032/7474
+s 1614
+f 2145/4031/7475 2147/4033/7476 2146/4032/7477
+f 2146/4032/7477 2147/4033/7476 2148/4034/7478
+s 1615
+f 2147/4033/7479 2149/4035/7480 2148/4034/7481
+f 2148/4034/7481 2149/4035/7480 2150/4036/7482
+s 1616
+f 2149/4035/7483 2151/4037/7484 2150/4036/7485
+f 2150/4036/7485 2151/4037/7484 2152/4038/7486
+s 1617
+f 2153/4039/7487 2154/4040/7488 2151/4037/7489
+f 2151/4037/7489 2154/4040/7488 2152/4038/7490
+s 1618
+f 2155/4041/7491 2156/4042/7492 2153/4039/7493
+f 2153/4039/7493 2156/4042/7492 2154/4040/7494
+s 1619
+f 2126/4011/7495 2128/4014/7496 2155/4041/7497
+f 2155/4041/7497 2128/4014/7496 2156/4042/7498
+s 1620
+f 2029/4044/7499 2045/4045/7500 2030/4043/7501
+f 2030/4043/7501 2045/4045/7500 2046/4046/7502
+s 1621
+f 2029/4044/7503 2031/4047/7504 2045/4045/7505
+f 2045/4045/7505 2031/4047/7504 2047/4048/7506
+s 1622
+f 2031/4049/7507 2032/4050/7508 2047/4052/7509
+f 2047/4052/7509 2032/4050/7508 2048/4051/7510
+s 1623
+f 2032/4050/7511 2033/4053/7512 2048/4051/7513
+f 2048/4051/7513 2033/4053/7512 2049/4054/7514
+s 1624
+f 2033/4053/7515 2034/4055/7516 2049/4054/7517
+f 2049/4054/7517 2034/4055/7516 2050/4056/7518
+s 1625
+f 2034/4055/7519 2035/4057/7520 2050/4056/7521
+f 2050/4056/7521 2035/4057/7520 2051/4058/7522
+s 1626
+f 2035/4057/7523 2036/4059/7524 2051/4058/7525
+f 2051/4058/7525 2036/4059/7524 2052/4060/7526
+s 1627
+f 2036/4059/7527 2037/4061/7528 2052/4060/7529
+f 2052/4060/7529 2037/4061/7528 2053/4062/7530
+s 1628
+f 2037/4063/7531 2038/4064/7532 2053/4066/7533
+f 2053/4066/7533 2038/4064/7532 2054/4065/7534
+s 1629
+f 2039/4067/7535 2055/4068/7536 2038/4064/7537
+f 2038/4064/7537 2055/4068/7536 2054/4065/7538
+s 1630
+f 2040/4070/7539 2056/4071/7540 2039/4069/7541
+f 2039/4069/7541 2056/4071/7540 2055/4072/7542
+s 1631
+f 2041/4073/7543 2057/4074/7544 2040/4070/7545
+f 2040/4070/7545 2057/4074/7544 2056/4071/7546
+s 1632
+f 2042/4075/7547 2058/4076/7548 2041/4073/7549
+f 2041/4073/7549 2058/4076/7548 2057/4074/7550
+s 1633
+f 2043/4077/7551 2059/4078/7552 2042/4075/7553
+f 2042/4075/7553 2059/4078/7552 2058/4076/7554
+s 1634
+f 2044/4079/7555 2060/4080/7556 2043/4077/7557
+f 2043/4077/7557 2060/4080/7556 2059/4078/7558
+s 1635
+f 2030/4081/7559 2046/4082/7560 2044/4079/7561
+f 2044/4079/7561 2046/4082/7560 2060/4080/7562
+s 1636
+f 2045/4045/7563 2061/4083/7564 2046/4046/7565
+f 2046/4046/7565 2061/4083/7564 2062/4084/7566
+s 1637
+f 2045/4045/7567 2047/4048/7568 2061/4083/7569
+f 2061/4083/7569 2047/4048/7568 2063/4085/7570
+s 1638
+f 2047/4052/7571 2048/4051/7572 2063/4087/7573
+f 2063/4087/7573 2048/4051/7572 2064/4086/7574
+s 1639
+f 2048/4051/7575 2049/4054/7576 2064/4086/7577
+f 2064/4086/7577 2049/4054/7576 2065/4088/7578
+s 1640
+f 2049/4054/7579 2050/4056/7580 2065/4088/7581
+f 2065/4088/7581 2050/4056/7580 2066/4089/7582
+s 1641
+f 2050/4056/7583 2051/4058/7584 2066/4089/7585
+f 2066/4089/7585 2051/4058/7584 2067/4090/7586
+s 1642
+f 2051/4058/7587 2052/4060/7588 2067/4090/7589
+f 2067/4090/7589 2052/4060/7588 2068/4091/7590
+s 1643
+f 2052/4060/7591 2053/4062/7592 2068/4091/7593
+f 2068/4091/7593 2053/4062/7592 2069/4092/7594
+s 1644
+f 2053/4066/7595 2054/4065/7596 2069/4094/7597
+f 2069/4094/7597 2054/4065/7596 2070/4093/7598
+s 1645
+f 2055/4068/7599 2071/4095/7600 2054/4065/7601
+f 2054/4065/7601 2071/4095/7600 2070/4093/7602
+s 1646
+f 2056/4071/7603 2072/4096/7604 2055/4072/7605
+f 2055/4072/7605 2072/4096/7604 2071/4097/7606
+s 1647
+f 2057/4074/7607 2073/4098/7608 2056/4071/7609
+f 2056/4071/7609 2073/4098/7608 2072/4096/7610
+s 1648
+f 2058/4076/7611 2074/4099/7612 2057/4074/7613
+f 2057/4074/7613 2074/4099/7612 2073/4098/7614
+s 1649
+f 2059/4078/7615 2075/4100/7616 2058/4076/7617
+f 2058/4076/7617 2075/4100/7616 2074/4099/7618
+s 1650
+f 2060/4080/7619 2076/4101/7620 2059/4078/7621
+f 2059/4078/7621 2076/4101/7620 2075/4100/7622
+s 1651
+f 2046/4082/7623 2062/4102/7624 2060/4080/7625
+f 2060/4080/7625 2062/4102/7624 2076/4101/7626
+s 1652
+f 2062/4084/7627 2061/4083/7628 2078/4104/7629
+f 2078/4104/7629 2061/4083/7628 2077/4103/7630
+s 1653
+f 2061/4083/7631 2063/4085/7632 2077/4103/7633
+f 2077/4103/7633 2063/4085/7632 2079/4105/7634
+s 1654
+f 2063/4087/7635 2064/4086/7636 2079/4107/7637
+f 2079/4107/7637 2064/4086/7636 2080/4106/7638
+s 1655
+f 2064/4086/7639 2065/4088/7640 2080/4106/7641
+f 2080/4106/7641 2065/4088/7640 2081/4108/7642
+s 1656
+f 2065/4088/7643 2066/4089/7644 2081/4108/7645
+f 2081/4108/7645 2066/4089/7644 2082/4109/7646
+s 1657
+f 2066/4089/7647 2067/4090/7648 2082/4109/7649
+f 2082/4109/7649 2067/4090/7648 2083/4110/7650
+s 1658
+f 2067/4111/7651 2068/4112/7652 2083/4114/7653
+f 2083/4114/7653 2068/4112/7652 2084/4113/7654
+s 1659
+f 2068/4091/7655 2069/4092/7656 2084/4116/7657
+f 2084/4116/7657 2069/4092/7656 2085/4115/7658
+s 1660
+f 2069/4094/7659 2070/4093/7660 2085/4118/7661
+f 2085/4118/7661 2070/4093/7660 2086/4117/7662
+s 1661
+f 2070/4093/7663 2071/4095/7664 2086/4117/7665
+f 2086/4117/7665 2071/4095/7664 2087/4119/7666
+s 1662
+f 2072/4096/7667 2088/4120/7668 2071/4097/7669
+f 2071/4097/7669 2088/4120/7668 2087/4121/7670
+s 1663
+f 2073/4098/7671 2089/4122/7672 2072/4096/7673
+f 2072/4096/7673 2089/4122/7672 2088/4120/7674
+s 1664
+f 2074/4099/7675 2090/4123/7676 2073/4098/7677
+f 2073/4098/7677 2090/4123/7676 2089/4122/7678
+s 1665
+f 2075/4100/7679 2091/4124/7680 2074/4099/7681
+f 2074/4099/7681 2091/4124/7680 2090/4123/7682
+s 1666
+f 2076/4101/7683 2092/4125/7684 2075/4100/7685
+f 2075/4100/7685 2092/4125/7684 2091/4124/7686
+s 1667
+f 2062/4102/7687 2078/4126/7688 2076/4101/7689
+f 2076/4101/7689 2078/4126/7688 2092/4125/7690
+s 1668
+f 2109/4127/7691 2110/4128/7692 1981/4130/7693
+f 1981/4130/7693 2110/4128/7692 1982/4129/7694
+s 1669
+f 2110/4128/7695 2111/4131/7696 1982/4129/7697
+f 1982/4129/7697 2111/4131/7696 1983/4132/7698
+s 1670
+f 2111/4131/7699 2112/4133/7700 1983/4132/7701
+f 1983/4132/7701 2112/4133/7700 1984/4134/7702
+s 1671
+f 2112/4133/7703 2113/4135/7704 1984/4134/7705
+f 1984/4134/7705 2113/4135/7704 1985/4136/7706
+s 1672
+f 2113/4135/7707 2114/4137/7708 1985/4136/7709
+f 1985/4136/7709 2114/4137/7708 1986/4138/7710
+s 1673
+f 2114/4137/7711 2115/4139/7712 1986/4138/7713
+f 1986/4138/7713 2115/4139/7712 1987/4140/7714
+s 1674
+f 2115/4141/7715 2116/4142/7716 1987/4144/7717
+f 1987/4144/7717 2116/4142/7716 1988/4143/7718
+s 1675
+f 2117/4145/7719 1989/4146/7720 2116/4142/7721
+f 2116/4142/7721 1989/4146/7720 1988/4143/7722
+s 1676
+f 2118/4147/7723 1990/4148/7724 2117/4145/7725
+f 2117/4145/7725 1990/4148/7724 1989/4146/7726
+s 1677
+f 2119/4149/7727 1991/4150/7728 2118/4147/7729
+f 2118/4147/7729 1991/4150/7728 1990/4148/7730
+s 1678
+f 2120/4152/7731 1992/4153/7732 2119/4151/7733
+f 2119/4151/7733 1992/4153/7732 1991/4154/7734
+s 1679
+f 2121/4155/7735 1993/4156/7736 2120/4152/7737
+f 2120/4152/7737 1993/4156/7736 1992/4153/7738
+s 1680
+f 2122/4157/7739 1994/4158/7740 2121/4155/7741
+f 2121/4155/7741 1994/4158/7740 1993/4156/7742
+s 1681
+f 2123/4159/7743 1995/4160/7744 2122/4157/7745
+f 2122/4157/7745 1995/4160/7744 1994/4158/7746
+s 1682
+f 2123/4161/7747 2124/4162/7748 1995/4164/7749
+f 1995/4164/7749 2124/4162/7748 1996/4163/7750
+s 1683
+f 2124/4162/7751 2109/4165/7752 1996/4163/7753
+f 1996/4163/7753 2109/4165/7752 1981/4166/7754
+s 1684
+f 2014/4167/7755 2013/4168/7756 2126/4170/7757
+f 2126/4170/7757 2013/4168/7756 2125/4169/7758
+s 1685
+f 2030/4172/7759 2128/4173/7760 2029/4171/7761
+f 2029/4171/7761 2128/4173/7760 2127/4174/7762
+s 1686
+f 2015/4175/7763 2129/4176/7764 2013/4168/7765
+f 2013/4168/7765 2129/4176/7764 2125/4169/7766
+s 1687
+f 2031/4177/7767 2029/4171/7768 2130/4178/7769
+f 2130/4178/7769 2029/4171/7768 2127/4174/7770
+s 1688
+f 2016/3977/7771 2131/4179/7772 2015/3978/7773
+f 2015/3978/7773 2131/4179/7772 2129/4180/7774
+s 1689
+f 2032/4050/7775 2031/4049/7776 2132/4182/7777
+f 2132/4182/7777 2031/4049/7776 2130/4181/7778
+s 1690
+f 2017/3979/7779 2133/4183/7780 2016/3977/7781
+f 2016/3977/7781 2133/4183/7780 2131/4179/7782
+s 1691
+f 2033/4053/7783 2032/4050/7784 2134/4184/7785
+f 2134/4184/7785 2032/4050/7784 2132/4182/7786
+s 1692
+f 2018/3980/7787 2135/4185/7788 2017/3979/7789
+f 2017/3979/7789 2135/4185/7788 2133/4183/7790
+s 1693
+f 2034/4055/7791 2033/4053/7792 2136/4186/7793
+f 2136/4186/7793 2033/4053/7792 2134/4184/7794
+s 1694
+f 2019/3981/7795 2137/4187/7796 2018/3980/7797
+f 2018/3980/7797 2137/4187/7796 2135/4185/7798
+s 1695
+f 2035/4057/7799 2034/4055/7800 2138/4188/7801
+f 2138/4188/7801 2034/4055/7800 2136/4186/7802
+s 1696
+f 2020/3983/7803 2139/4189/7804 2019/3981/7805
+f 2019/3981/7805 2139/4189/7804 2137/4187/7806
+s 1697
+f 2036/4059/7807 2035/4057/7808 2140/4190/7809
+f 2140/4190/7809 2035/4057/7808 2138/4188/7810
+s 1698
+f 2021/4191/7811 2141/4192/7812 2020/3983/7813
+f 2020/3983/7813 2141/4192/7812 2139/4189/7814
+s 1699
+f 2037/4061/7815 2036/4059/7816 2142/4193/7817
+f 2142/4193/7817 2036/4059/7816 2140/4190/7818
+s 1700
+f 2022/4195/7819 2143/4196/7820 2021/4194/7821
+f 2021/4194/7821 2143/4196/7820 2141/4197/7822
+s 1701
+f 2038/4198/7823 2037/4199/7824 2144/4201/7825
+f 2144/4201/7825 2037/4199/7824 2142/4200/7826
+s 1702
+f 2022/4195/7827 2023/4202/7828 2143/4196/7829
+f 2143/4196/7829 2023/4202/7828 2145/4203/7830
+s 1703
+f 2038/4198/7831 2144/4201/7832 2039/4204/7833
+f 2039/4204/7833 2144/4201/7832 2146/4205/7834
+s 1704
+f 2023/3989/7835 2024/3988/7836 2145/4207/7837
+f 2145/4207/7837 2024/3988/7836 2147/4206/7838
+s 1705
+f 2039/4069/7839 2146/4208/7840 2040/4070/7841
+f 2040/4070/7841 2146/4208/7840 2148/4209/7842
+s 1706
+f 2024/3988/7843 2025/3990/7844 2147/4206/7845
+f 2147/4206/7845 2025/3990/7844 2149/4210/7846
+s 1707
+f 2040/4070/7847 2148/4209/7848 2041/4073/7849
+f 2041/4073/7849 2148/4209/7848 2150/4211/7850
+s 1708
+f 2025/3990/7851 2026/3991/7852 2149/4210/7853
+f 2149/4210/7853 2026/3991/7852 2151/4212/7854
+s 1709
+f 2041/4073/7855 2150/4211/7856 2042/4075/7857
+f 2042/4075/7857 2150/4211/7856 2152/4213/7858
+s 1710
+f 2026/3991/7859 2027/3992/7860 2151/4212/7861
+f 2151/4212/7861 2027/3992/7860 2153/4214/7862
+s 1711
+f 2042/4075/7863 2152/4213/7864 2043/4077/7865
+f 2043/4077/7865 2152/4213/7864 2154/4215/7866
+s 1712
+f 2027/3992/7867 2028/3993/7868 2153/4214/7869
+f 2153/4214/7869 2028/3993/7868 2155/4216/7870
+s 1713
+f 2043/4077/7871 2154/4215/7872 2044/4079/7873
+f 2044/4079/7873 2154/4215/7872 2156/4217/7874
+s 1714
+f 2028/3993/7875 2014/3994/7876 2155/4216/7877
+f 2155/4216/7877 2014/3994/7876 2126/4218/7878
+s 1715
+f 2044/4079/7879 2156/4217/7880 2030/4081/7881
+f 2030/4081/7881 2156/4217/7880 2128/4219/7882
+s 1716
+f 2157/4220/7883 2158/4221/7884 2285/4223/7885
+f 2285/4223/7885 2158/4221/7884 2286/4222/7886
+s 1717
+f 2158/4221/7887 2159/4224/7888 2286/4222/7889
+f 2286/4222/7889 2159/4224/7888 2287/4225/7890
+s 1718
+f 2159/4224/7891 2160/4226/7892 2287/4225/7893
+f 2287/4225/7893 2160/4226/7892 2288/4227/7894
+s 1719
+f 2160/4226/7895 2161/4228/7896 2288/4227/7897
+f 2288/4227/7897 2161/4228/7896 2289/4229/7898
+s 1720
+f 2161/4228/7899 2162/4230/7900 2289/4229/7901
+f 2289/4229/7901 2162/4230/7900 2290/4231/7902
+s 1721
+f 2162/4230/7903 2163/4232/7904 2290/4231/7905
+f 2290/4231/7905 2163/4232/7904 2291/4233/7906
+s 1722
+f 2163/4234/7907 2164/4235/7908 2291/4237/7909
+f 2291/4237/7909 2164/4235/7908 2292/4236/7910
+s 1723
+f 2164/4235/7911 2165/4238/7912 2292/4236/7913
+f 2292/4236/7913 2165/4238/7912 2293/4239/7914
+s 1724
+f 2165/4238/7915 2166/4240/7916 2293/4239/7917
+f 2293/4239/7917 2166/4240/7916 2294/4241/7918
+s 1725
+f 2166/4240/7919 2167/4242/7920 2294/4241/7921
+f 2294/4241/7921 2167/4242/7920 2295/4243/7922
+s 1726
+f 2167/4244/7923 2168/4245/7924 2295/4247/7925
+f 2295/4247/7925 2168/4245/7924 2296/4246/7926
+s 1727
+f 2168/4245/7927 2169/4248/7928 2296/4246/7929
+f 2296/4246/7929 2169/4248/7928 2297/4249/7930
+s 1728
+f 2169/4248/7931 2170/4250/7932 2297/4249/7933
+f 2297/4249/7933 2170/4250/7932 2298/4251/7934
+s 1729
+f 2170/4250/7935 2171/4252/7936 2298/4251/7937
+f 2298/4251/7937 2171/4252/7936 2299/4253/7938
+s 1730
+f 2171/4254/7939 2172/4255/7940 2299/4257/7941
+f 2299/4257/7941 2172/4255/7940 2300/4256/7942
+s 1731
+f 2172/4255/7943 2157/4258/7944 2300/4256/7945
+f 2300/4256/7945 2157/4258/7944 2285/4259/7946
+s 1732
+f 2157/4258/7947 2172/4255/7948 2190/4261/7949
+f 2190/4261/7949 2172/4255/7948 2189/4260/7950
+s 1733
+f 2171/4254/7951 2191/4262/7952 2172/4255/7953
+f 2172/4255/7953 2191/4262/7952 2189/4260/7954
+s 1734
+f 2170/4250/7955 2192/4263/7956 2171/4252/7957
+f 2171/4252/7957 2192/4263/7956 2191/4264/7958
+s 1735
+f 2169/4248/7959 2193/4265/7960 2170/4250/7961
+f 2170/4250/7961 2193/4265/7960 2192/4263/7962
+s 1736
+f 2168/4245/7963 2194/4266/7964 2169/4248/7965
+f 2169/4248/7965 2194/4266/7964 2193/4265/7966
+s 1737
+f 2167/4244/7967 2195/4267/7968 2168/4245/7969
+f 2168/4245/7969 2195/4267/7968 2194/4266/7970
+s 1738
+f 2167/4242/7971 2166/4240/7972 2195/4269/7973
+f 2195/4269/7973 2166/4240/7972 2196/4268/7974
+s 1739
+f 2166/4240/7975 2165/4238/7976 2196/4268/7977
+f 2196/4268/7977 2165/4238/7976 2197/4270/7978
+s 1740
+f 2165/4238/7979 2164/4235/7980 2197/4270/7981
+f 2197/4270/7981 2164/4235/7980 2198/4271/7982
+s 1741
+f 2163/4234/7983 2199/4272/7984 2164/4235/7985
+f 2164/4235/7985 2199/4272/7984 2198/4271/7986
+s 1742
+f 2162/4230/7987 2200/4273/7988 2163/4232/7989
+f 2163/4232/7989 2200/4273/7988 2199/4274/7990
+s 1743
+f 2161/4228/7991 2201/4275/7992 2162/4230/7993
+f 2162/4230/7993 2201/4275/7992 2200/4273/7994
+s 1744
+f 2161/4228/7995 2160/4226/7996 2201/4275/7997
+f 2201/4275/7997 2160/4226/7996 2202/4276/7998
+s 1745
+f 2160/4226/7999 2159/4224/8000 2202/4276/8001
+f 2202/4276/8001 2159/4224/8000 2203/4277/8002
+s 1746
+f 2159/4224/8003 2158/4221/8004 2203/4277/8005
+f 2203/4277/8005 2158/4221/8004 2204/4278/8006
+s 1747
+f 2158/4221/8007 2157/4220/8008 2204/4278/8009
+f 2204/4278/8009 2157/4220/8008 2190/4279/8010
+s 1748
+f 2190/4261/8011 2189/4260/8012 2206/4281/8013
+f 2206/4281/8013 2189/4260/8012 2205/4280/8014
+s 1749
+f 2191/4262/8015 2207/4282/8016 2189/4260/8017
+f 2189/4260/8017 2207/4282/8016 2205/4280/8018
+s 1750
+f 2192/4263/8019 2208/4283/8020 2191/4264/8021
+f 2191/4264/8021 2208/4283/8020 2207/4284/8022
+s 1751
+f 2193/4265/8023 2209/4285/8024 2192/4263/8025
+f 2192/4263/8025 2209/4285/8024 2208/4283/8026
+s 1752
+f 2194/4266/8027 2210/4286/8028 2193/4265/8029
+f 2193/4265/8029 2210/4286/8028 2209/4285/8030
+s 1753
+f 2195/4267/8031 2211/4287/8032 2194/4266/8033
+f 2194/4266/8033 2211/4287/8032 2210/4286/8034
+s 1754
+f 2196/4288/8035 2212/4289/8036 2195/4267/8037
+f 2195/4267/8037 2212/4289/8036 2211/4287/8038
+s 1755
+f 2197/4270/8039 2213/4290/8040 2196/4268/8041
+f 2196/4268/8041 2213/4290/8040 2212/4291/8042
+s 1756
+f 2198/4271/8043 2214/4292/8044 2197/4270/8045
+f 2197/4270/8045 2214/4292/8044 2213/4290/8046
+s 1757
+f 2198/4271/8047 2199/4272/8048 2214/4292/8049
+f 2214/4292/8049 2199/4272/8048 2215/4293/8050
+s 1758
+f 2199/4274/8051 2200/4273/8052 2215/4295/8053
+f 2215/4295/8053 2200/4273/8052 2216/4294/8054
+s 1759
+f 2200/4273/8055 2201/4275/8056 2216/4294/8057
+f 2216/4294/8057 2201/4275/8056 2217/4296/8058
+s 1760
+f 2201/4275/8059 2202/4276/8060 2217/4296/8061
+f 2217/4296/8061 2202/4276/8060 2218/4297/8062
+s 1761
+f 2202/4276/8063 2203/4277/8064 2218/4297/8065
+f 2218/4297/8065 2203/4277/8064 2219/4298/8066
+s 1762
+f 2203/4277/8067 2204/4278/8068 2219/4298/8069
+f 2219/4298/8069 2204/4278/8068 2220/4299/8070
+s 1763
+f 2204/4278/8071 2190/4279/8072 2220/4299/8073
+f 2220/4299/8073 2190/4279/8072 2206/4300/8074
+s 1764
+f 2173/4301/8075 2174/4302/8076 2188/4316/8077
+f 2174/4302/8076 2175/4303/8078 2188/4316/8077
+f 2175/4303/8078 2176/4304/8079 2188/4316/8077
+f 2176/4304/8079 2177/4305/8080 2188/4316/8077
+f 2177/4305/8080 2178/4306/8081 2188/4316/8077
+f 2178/4306/8081 2179/4307/8082 2188/4316/8077
+f 2179/4307/8082 2180/4308/8083 2188/4316/8077
+f 2180/4308/8083 2181/4309/8084 2188/4316/8077
+f 2181/4309/8084 2182/4310/8085 2188/4316/8077
+f 2182/4310/8085 2183/4311/8086 2188/4316/8077
+f 2183/4311/8086 2184/4312/8087 2188/4316/8077
+f 2184/4312/8087 2185/4313/8088 2188/4316/8077
+f 2185/4313/8088 2186/4314/8089 2188/4316/8077
+f 2186/4314/8089 2187/4315/8090 2188/4316/8077
+s 1765
+f 2317/4318/8091 2319/4319/8092 2318/4317/8093
+f 2318/4317/8093 2319/4319/8092 2320/4320/8094
+s 1766
+f 2317/4318/8095 2321/4321/8096 2319/4319/8097
+f 2319/4319/8097 2321/4321/8096 2322/4322/8098
+s 1767
+f 2321/4321/8099 2323/4323/8100 2322/4322/8101
+f 2322/4322/8101 2323/4323/8100 2324/4324/8102
+s 1768
+f 2323/4323/8103 2325/4325/8104 2324/4324/8105
+f 2324/4324/8105 2325/4325/8104 2326/4326/8106
+s 1769
+f 2325/4325/8107 2327/4327/8108 2326/4326/8109
+f 2326/4326/8109 2327/4327/8108 2328/4328/8110
+s 1770
+f 2329/4329/8111 2330/4330/8112 2327/4327/8113
+f 2327/4327/8113 2330/4330/8112 2328/4328/8114
+s 1771
+f 2331/4331/8115 2332/4332/8116 2329/4329/8117
+f 2329/4329/8117 2332/4332/8116 2330/4330/8118
+s 1772
+f 2333/4333/8119 2334/4334/8120 2331/4331/8121
+f 2331/4331/8121 2334/4334/8120 2332/4332/8122
+s 1773
+f 2335/4335/8123 2336/4336/8124 2333/4333/8125
+f 2333/4333/8125 2336/4336/8124 2334/4334/8126
+s 1774
+f 2335/4335/8127 2337/4337/8128 2336/4336/8129
+f 2336/4336/8129 2337/4337/8128 2338/4338/8130
+s 1775
+f 2337/4337/8131 2339/4339/8132 2338/4338/8133
+f 2338/4338/8133 2339/4339/8132 2340/4340/8134
+s 1776
+f 2339/4339/8135 2341/4341/8136 2340/4340/8137
+f 2340/4340/8137 2341/4341/8136 2342/4342/8138
+s 1777
+f 2341/4341/8139 2343/4343/8140 2342/4342/8141
+f 2342/4342/8141 2343/4343/8140 2344/4344/8142
+s 1778
+f 2345/4345/8143 2346/4346/8144 2343/4343/8145
+f 2343/4343/8145 2346/4346/8144 2344/4344/8146
+s 1779
+f 2347/4347/8147 2348/4348/8148 2345/4345/8149
+f 2345/4345/8149 2348/4348/8148 2346/4346/8150
+s 1780
+f 2318/4317/8151 2320/4320/8152 2347/4347/8153
+f 2347/4347/8153 2320/4320/8152 2348/4348/8154
+s 1781
+f 2221/4350/8155 2237/4351/8156 2222/4349/8157
+f 2222/4349/8157 2237/4351/8156 2238/4352/8158
+s 1782
+f 2221/4350/8159 2223/4353/8160 2237/4351/8161
+f 2237/4351/8161 2223/4353/8160 2239/4354/8162
+s 1783
+f 2223/4355/8163 2224/4356/8164 2239/4358/8165
+f 2239/4358/8165 2224/4356/8164 2240/4357/8166
+s 1784
+f 2224/4356/8167 2225/4359/8168 2240/4357/8169
+f 2240/4357/8169 2225/4359/8168 2241/4360/8170
+s 1785
+f 2225/4359/8171 2226/4361/8172 2241/4360/8173
+f 2241/4360/8173 2226/4361/8172 2242/4362/8174
+s 1786
+f 2226/4361/8175 2227/4363/8176 2242/4362/8177
+f 2242/4362/8177 2227/4363/8176 2243/4364/8178
+s 1787
+f 2227/4363/8179 2228/4365/8180 2243/4364/8181
+f 2243/4364/8181 2228/4365/8180 2244/4366/8182
+s 1788
+f 2228/4365/8183 2229/4367/8184 2244/4366/8185
+f 2244/4366/8185 2229/4367/8184 2245/4368/8186
+s 1789
+f 2229/4369/8187 2230/4370/8188 2245/4372/8189
+f 2245/4372/8189 2230/4370/8188 2246/4371/8190
+s 1790
+f 2231/4373/8191 2247/4374/8192 2230/4370/8193
+f 2230/4370/8193 2247/4374/8192 2246/4371/8194
+s 1791
+f 2232/4376/8195 2248/4377/8196 2231/4375/8197
+f 2231/4375/8197 2248/4377/8196 2247/4378/8198
+s 1792
+f 2233/4380/8199 2249/4381/8200 2232/4379/8201
+f 2232/4379/8201 2249/4381/8200 2248/4382/8202
+s 1793
+f 2234/4383/8203 2250/4384/8204 2233/4380/8205
+f 2233/4380/8205 2250/4384/8204 2249/4381/8206
+s 1794
+f 2235/4385/8207 2251/4386/8208 2234/4383/8209
+f 2234/4383/8209 2251/4386/8208 2250/4384/8210
+s 1795
+f 2236/4387/8211 2252/4388/8212 2235/4385/8213
+f 2235/4385/8213 2252/4388/8212 2251/4386/8214
+s 1796
+f 2222/4389/8215 2238/4390/8216 2236/4387/8217
+f 2236/4387/8217 2238/4390/8216 2252/4388/8218
+s 1797
+f 2237/4351/8219 2253/4391/8220 2238/4352/8221
+f 2238/4352/8221 2253/4391/8220 2254/4392/8222
+s 1798
+f 2237/4351/8223 2239/4354/8224 2253/4391/8225
+f 2253/4391/8225 2239/4354/8224 2255/4393/8226
+s 1799
+f 2239/4358/8227 2240/4357/8228 2255/4395/8229
+f 2255/4395/8229 2240/4357/8228 2256/4394/8230
+s 1800
+f 2240/4357/8231 2241/4360/8232 2256/4394/8233
+f 2256/4394/8233 2241/4360/8232 2257/4396/8234
+s 1801
+f 2241/4360/8235 2242/4362/8236 2257/4396/8237
+f 2257/4396/8237 2242/4362/8236 2258/4397/8238
+s 1802
+f 2242/4362/8239 2243/4364/8240 2258/4397/8241
+f 2258/4397/8241 2243/4364/8240 2259/4398/8242
+s 1803
+f 2243/4364/8243 2244/4366/8244 2259/4398/8245
+f 2259/4398/8245 2244/4366/8244 2260/4399/8246
+s 1804
+f 2244/4366/8247 2245/4368/8248 2260/4399/8249
+f 2260/4399/8249 2245/4368/8248 2261/4400/8250
+s 1805
+f 2245/4372/8251 2246/4371/8252 2261/4402/8253
+f 2261/4402/8253 2246/4371/8252 2262/4401/8254
+s 1806
+f 2247/4374/8255 2263/4403/8256 2246/4371/8257
+f 2246/4371/8257 2263/4403/8256 2262/4401/8258
+s 1807
+f 2248/4382/8259 2264/4405/8260 2247/4404/8261
+f 2247/4404/8261 2264/4405/8260 2263/4406/8262
+s 1808
+f 2249/4381/8263 2265/4407/8264 2248/4382/8265
+f 2248/4382/8265 2265/4407/8264 2264/4405/8266
+s 1809
+f 2250/4384/8267 2266/4408/8268 2249/4381/8269
+f 2249/4381/8269 2266/4408/8268 2265/4407/8270
+s 1810
+f 2251/4386/8271 2267/4409/8272 2250/4384/8273
+f 2250/4384/8273 2267/4409/8272 2266/4408/8274
+s 1811
+f 2252/4388/8275 2268/4410/8276 2251/4386/8277
+f 2251/4386/8277 2268/4410/8276 2267/4409/8278
+s 1812
+f 2238/4390/8279 2254/4411/8280 2252/4388/8281
+f 2252/4388/8281 2254/4411/8280 2268/4410/8282
+s 1813
+f 2254/4392/8283 2253/4391/8284 2270/4413/8285
+f 2270/4413/8285 2253/4391/8284 2269/4412/8286
+s 1814
+f 2253/4391/8287 2255/4393/8288 2269/4412/8289
+f 2269/4412/8289 2255/4393/8288 2271/4414/8290
+s 1815
+f 2255/4395/8291 2256/4394/8292 2271/4416/8293
+f 2271/4416/8293 2256/4394/8292 2272/4415/8294
+s 1816
+f 2256/4394/8295 2257/4396/8296 2272/4415/8297
+f 2272/4415/8297 2257/4396/8296 2273/4417/8298
+s 1817
+f 2257/4396/8299 2258/4397/8300 2273/4417/8301
+f 2273/4417/8301 2258/4397/8300 2274/4418/8302
+s 1818
+f 2258/4397/8303 2259/4398/8304 2274/4418/8305
+f 2274/4418/8305 2259/4398/8304 2275/4419/8306
+s 1819
+f 2259/4398/8307 2260/4399/8308 2275/4419/8309
+f 2275/4419/8309 2260/4399/8308 2276/4420/8310
+s 1820
+f 2260/4399/8311 2261/4400/8312 2276/4420/8313
+f 2276/4420/8313 2261/4400/8312 2277/4421/8314
+s 1821
+f 2261/4402/8315 2262/4401/8316 2277/4423/8317
+f 2277/4423/8317 2262/4401/8316 2278/4422/8318
+s 1822
+f 2262/4401/8319 2263/4403/8320 2278/4422/8321
+f 2278/4422/8321 2263/4403/8320 2279/4424/8322
+s 1823
+f 2264/4405/8323 2280/4425/8324 2263/4406/8325
+f 2263/4406/8325 2280/4425/8324 2279/4426/8326
+s 1824
+f 2265/4407/8327 2281/4427/8328 2264/4405/8329
+f 2264/4405/8329 2281/4427/8328 2280/4425/8330
+s 1825
+f 2266/4408/8331 2282/4428/8332 2265/4407/8333
+f 2265/4407/8333 2282/4428/8332 2281/4427/8334
+s 1826
+f 2267/4409/8335 2283/4429/8336 2266/4408/8337
+f 2266/4408/8337 2283/4429/8336 2282/4428/8338
+s 1827
+f 2268/4410/8339 2284/4430/8340 2267/4409/8341
+f 2267/4409/8341 2284/4430/8340 2283/4429/8342
+s 1828
+f 2254/4411/8343 2270/4431/8344 2268/4410/8345
+f 2268/4410/8345 2270/4431/8344 2284/4430/8346
+s 1829
+f 2301/4432/8347 2302/4433/8348 2173/4435/8349
+f 2173/4435/8349 2302/4433/8348 2174/4434/8350
+s 1830
+f 2302/4433/8351 2303/4436/8352 2174/4434/8353
+f 2174/4434/8353 2303/4436/8352 2175/4437/8354
+s 1831
+f 2303/4436/8355 2304/4438/8356 2175/4437/8357
+f 2175/4437/8357 2304/4438/8356 2176/4439/8358
+s 1832
+f 2304/4438/8359 2305/4440/8360 2176/4439/8361
+f 2176/4439/8361 2305/4440/8360 2177/4441/8362
+s 1833
+f 2305/4440/8363 2306/4442/8364 2177/4441/8365
+f 2177/4441/8365 2306/4442/8364 2178/4443/8366
+s 1834
+f 2306/4442/8367 2307/4444/8368 2178/4443/8369
+f 2178/4443/8369 2307/4444/8368 2179/4445/8370
+s 1835
+f 2307/4446/8371 2308/4447/8372 2179/4449/8373
+f 2179/4449/8373 2308/4447/8372 2180/4448/8374
+s 1836
+f 2309/4450/8375 2181/4451/8376 2308/4447/8377
+f 2308/4447/8377 2181/4451/8376 2180/4448/8378
+s 1837
+f 2310/4452/8379 2182/4453/8380 2309/4450/8381
+f 2309/4450/8381 2182/4453/8380 2181/4451/8382
+s 1838
+f 2311/4454/8383 2183/4455/8384 2310/4452/8385
+f 2310/4452/8385 2183/4455/8384 2182/4453/8386
+s 1839
+f 2312/4457/8387 2184/4458/8388 2311/4456/8389
+f 2311/4456/8389 2184/4458/8388 2183/4459/8390
+s 1840
+f 2313/4460/8391 2185/4461/8392 2312/4457/8393
+f 2312/4457/8393 2185/4461/8392 2184/4458/8394
+s 1841
+f 2314/4462/8395 2186/4463/8396 2313/4460/8397
+f 2313/4460/8397 2186/4463/8396 2185/4461/8398
+s 1842
+f 2315/4464/8399 2187/4465/8400 2314/4462/8401
+f 2314/4462/8401 2187/4465/8400 2186/4463/8402
+s 1843
+f 2315/4466/8403 2316/4467/8404 2187/4469/8405
+f 2187/4469/8405 2316/4467/8404 2188/4468/8406
+s 1844
+f 2316/4467/8407 2301/4470/8408 2188/4468/8409
+f 2188/4468/8409 2301/4470/8408 2173/4471/8410
+s 1845
+f 2206/4472/8411 2205/4473/8412 2318/4475/8413
+f 2318/4475/8413 2205/4473/8412 2317/4474/8414
+s 1846
+f 2222/4477/8415 2320/4478/8416 2221/4476/8417
+f 2221/4476/8417 2320/4478/8416 2319/4479/8418
+s 1847
+f 2207/4480/8419 2321/4481/8420 2205/4473/8421
+f 2205/4473/8421 2321/4481/8420 2317/4474/8422
+s 1848
+f 2223/4482/8423 2221/4476/8424 2322/4483/8425
+f 2322/4483/8425 2221/4476/8424 2319/4479/8426
+s 1849
+f 2208/4283/8427 2323/4484/8428 2207/4284/8429
+f 2207/4284/8429 2323/4484/8428 2321/4485/8430
+s 1850
+f 2224/4356/8431 2223/4355/8432 2324/4487/8433
+f 2324/4487/8433 2223/4355/8432 2322/4486/8434
+s 1851
+f 2209/4285/8435 2325/4488/8436 2208/4283/8437
+f 2208/4283/8437 2325/4488/8436 2323/4484/8438
+s 1852
+f 2225/4359/8439 2224/4356/8440 2326/4489/8441
+f 2326/4489/8441 2224/4356/8440 2324/4487/8442
+s 1853
+f 2210/4286/8443 2327/4490/8444 2209/4285/8445
+f 2209/4285/8445 2327/4490/8444 2325/4488/8446
+s 1854
+f 2226/4361/8447 2225/4359/8448 2328/4491/8449
+f 2328/4491/8449 2225/4359/8448 2326/4489/8450
+s 1855
+f 2211/4287/8451 2329/4492/8452 2210/4286/8453
+f 2210/4286/8453 2329/4492/8452 2327/4490/8454
+s 1856
+f 2227/4363/8455 2226/4361/8456 2330/4493/8457
+f 2330/4493/8457 2226/4361/8456 2328/4491/8458
+s 1857
+f 2212/4289/8459 2331/4494/8460 2211/4287/8461
+f 2211/4287/8461 2331/4494/8460 2329/4492/8462
+s 1858
+f 2228/4365/8463 2227/4363/8464 2332/4495/8465
+f 2332/4495/8465 2227/4363/8464 2330/4493/8466
+s 1859
+f 2213/4496/8467 2333/4497/8468 2212/4289/8469
+f 2212/4289/8469 2333/4497/8468 2331/4494/8470
+s 1860
+f 2229/4367/8471 2228/4365/8472 2334/4498/8473
+f 2334/4498/8473 2228/4365/8472 2332/4495/8474
+s 1861
+f 2214/4500/8475 2335/4501/8476 2213/4499/8477
+f 2213/4499/8477 2335/4501/8476 2333/4502/8478
+s 1862
+f 2230/4503/8479 2229/4504/8480 2336/4506/8481
+f 2336/4506/8481 2229/4504/8480 2334/4505/8482
+s 1863
+f 2214/4500/8483 2215/4507/8484 2335/4501/8485
+f 2335/4501/8485 2215/4507/8484 2337/4508/8486
+s 1864
+f 2230/4503/8487 2336/4506/8488 2231/4509/8489
+f 2231/4509/8489 2336/4506/8488 2338/4510/8490
+s 1865
+f 2215/4295/8491 2216/4294/8492 2337/4512/8493
+f 2337/4512/8493 2216/4294/8492 2339/4511/8494
+s 1866
+f 2231/4513/8495 2338/4514/8496 2232/4379/8497
+f 2232/4379/8497 2338/4514/8496 2340/4515/8498
+s 1867
+f 2216/4294/8499 2217/4296/8500 2339/4511/8501
+f 2339/4511/8501 2217/4296/8500 2341/4516/8502
+s 1868
+f 2232/4379/8503 2340/4515/8504 2233/4380/8505
+f 2233/4380/8505 2340/4515/8504 2342/4517/8506
+s 1869
+f 2217/4296/8507 2218/4297/8508 2341/4516/8509
+f 2341/4516/8509 2218/4297/8508 2343/4518/8510
+s 1870
+f 2233/4380/8511 2342/4517/8512 2234/4383/8513
+f 2234/4383/8513 2342/4517/8512 2344/4519/8514
+s 1871
+f 2218/4297/8515 2219/4298/8516 2343/4518/8517
+f 2343/4518/8517 2219/4298/8516 2345/4520/8518
+s 1872
+f 2234/4383/8519 2344/4519/8520 2235/4385/8521
+f 2235/4385/8521 2344/4519/8520 2346/4521/8522
+s 1873
+f 2219/4298/8523 2220/4299/8524 2345/4520/8525
+f 2345/4520/8525 2220/4299/8524 2347/4522/8526
+s 1874
+f 2235/4385/8527 2346/4521/8528 2236/4387/8529
+f 2236/4387/8529 2346/4521/8528 2348/4523/8530
+s 1875
+f 2220/4299/8531 2206/4300/8532 2347/4522/8533
+f 2347/4522/8533 2206/4300/8532 2318/4524/8534
+s 1876
+f 2236/4387/8535 2348/4523/8536 2222/4389/8537
+f 2222/4389/8537 2348/4523/8536 2320/4525/8538
+s 1877
+f 2349/4526/8539 2350/4527/8540 2365/4529/8541
+f 2365/4529/8541 2350/4527/8540 2366/4528/8542
+s 1878
+f 2350/4527/8543 2351/4530/8544 2366/4528/8545
+f 2366/4528/8545 2351/4530/8544 2367/4531/8546
+s 1879
+f 2351/4530/8547 2352/4532/8548 2367/4531/8549
+f 2367/4531/8549 2352/4532/8548 2368/4533/8550
+s 1880
+f 2352/4532/8551 2353/4534/8552 2368/4533/8553
+f 2368/4533/8553 2353/4534/8552 2369/4535/8554
+s 1881
+f 2353/4534/8555 2354/4536/8556 2369/4535/8557
+f 2369/4535/8557 2354/4536/8556 2370/4537/8558
+s 1882
+f 2354/4536/8559 2355/4538/8560 2370/4537/8561
+f 2370/4537/8561 2355/4538/8560 2371/4539/8562
+s 1883
+f 2355/4540/8563 2356/4541/8564 2371/4543/8565
+f 2371/4543/8565 2356/4541/8564 2372/4542/8566
+s 1884
+f 2356/4541/8567 2357/4544/8568 2372/4542/8569
+f 2372/4542/8569 2357/4544/8568 2373/4545/8570
+s 1885
+f 2357/4544/8571 2358/4546/8572 2373/4545/8573
+f 2373/4545/8573 2358/4546/8572 2374/4547/8574
+s 1886
+f 2358/4546/8575 2359/4548/8576 2374/4547/8577
+f 2374/4547/8577 2359/4548/8576 2375/4549/8578
+s 1887
+f 2359/4550/8579 2360/4551/8580 2375/4553/8581
+f 2375/4553/8581 2360/4551/8580 2376/4552/8582
+s 1888
+f 2360/4551/8583 2361/4554/8584 2376/4552/8585
+f 2376/4552/8585 2361/4554/8584 2377/4555/8586
+s 1889
+f 2361/4554/8587 2362/4556/8588 2377/4555/8589
+f 2377/4555/8589 2362/4556/8588 2378/4557/8590
+s 1890
+f 2362/4556/8591 2363/4558/8592 2378/4557/8593
+f 2378/4557/8593 2363/4558/8592 2379/4559/8594
+s 1891
+f 2363/4560/8595 2364/4561/8596 2379/4563/8597
+f 2379/4563/8597 2364/4561/8596 2380/4562/8598
+s 1892
+f 2364/4561/8599 2349/4564/8600 2380/4562/8601
+f 2380/4562/8601 2349/4564/8600 2365/4565/8602
+s 1893
+f 2349/4566/8603 2364/4567/8604 2350/4581/8605
+f 2364/4567/8604 2363/4568/8606 2350/4581/8605
+f 2363/4568/8606 2362/4569/8607 2350/4581/8605
+f 2362/4569/8607 2361/4570/8608 2350/4581/8605
+f 2361/4570/8608 2360/4571/8609 2350/4581/8605
+f 2360/4571/8609 2359/4572/8610 2350/4581/8605
+f 2359/4572/8610 2358/4573/8611 2350/4581/8605
+f 2358/4573/8611 2357/4574/8612 2350/4581/8605
+f 2357/4574/8612 2356/4575/8613 2350/4581/8605
+f 2356/4575/8613 2355/4576/8614 2350/4581/8605
+f 2355/4576/8614 2354/4577/8615 2350/4581/8605
+f 2354/4577/8615 2353/4578/8616 2350/4581/8605
+f 2353/4578/8616 2352/4579/8617 2350/4581/8605
+f 2352/4579/8617 2351/4580/8618 2350/4581/8605
diff --git a/resources/models/Toyrobot-Plastic.mtl b/resources/models/Toyrobot-Plastic.mtl
new file mode 100644 (file)
index 0000000..95647ce
--- /dev/null
@@ -0,0 +1,11 @@
+newmtl lambert3SG
+illum 4
+Kd 0.00 0.00 0.00
+Ka 0.00 0.00 0.00
+Tf 1.00 1.00 1.00
+map_Kd Toyrobot-Plastic_lambert3SG_color.png
+bump Toyrobot-Plastic_lambert3SG_nmap.png -bm 1
+Ni 1.00
+Ks 0.00 0.00 0.00
+map_Ks Toyrobot-Plastic_lambert3SG_gloss.png
+Ns 100.00
diff --git a/resources/models/Toyrobot-Plastic.obj b/resources/models/Toyrobot-Plastic.obj
new file mode 100644 (file)
index 0000000..049046b
--- /dev/null
@@ -0,0 +1,22013 @@
+# This file uses centimeters as units for non-parametric coordinates.
+
+mtllib Toyrobot-Plastic-Triangulated.mtl
+g default
+v 0.266747 1.743998 0.820827
+v 0.314882 1.640511 0.770846
+v 0.365662 1.687059 0.770842
+v 0.314933 1.640326 -0.769657
+v 0.266800 1.743801 -0.819666
+v 0.365712 1.686875 -0.769661
+v 1.075812 1.688031 -0.819633
+v 1.125750 1.684529 -0.769636
+v 1.074971 1.637981 -0.769632
+v 1.125727 1.684616 -0.049379
+v 1.125724 1.684628 0.050611
+v 1.074946 1.638073 0.000620
+v 1.074921 1.638166 0.770871
+v 1.125700 1.684714 0.770867
+v 1.075759 1.688227 0.820860
+v 1.397177 1.053313 0.820947
+v 1.446808 1.059502 0.770953
+v 1.389622 1.102748 0.770946
+v 1.446858 1.059318 -0.769551
+v 1.397231 1.053117 -0.819546
+v 1.389672 1.102563 -0.769558
+v 0.251751 0.910610 -0.819567
+v 0.303680 1.017332 -0.769583
+v 0.352390 0.973517 -0.769576
+v 0.303630 1.017516 0.770920
+v 0.251697 0.910807 0.820926
+v 0.352339 0.973702 0.770927
+v 1.440868 0.768243 0.820982
+v 1.449287 0.718082 0.770994
+v 1.491700 0.766597 0.770989
+v 1.449337 0.717897 -0.769510
+v 1.440921 0.768046 -0.819511
+v 1.491750 0.766412 -0.769514
+v -0.251381 0.798620 -0.769575
+v -0.201392 0.797711 -0.819568
+v -0.202297 0.747730 -0.769567
+v -0.202347 0.747915 0.770936
+v -0.201446 0.797907 0.820925
+v -0.251431 0.798804 0.770928
+v -0.179616 2.006467 0.820781
+v -0.177880 2.102547 0.801431
+v -0.228880 2.047292 0.770780
+v -0.223432 2.348646 0.644310
+v -0.173384 2.351286 0.696894
+v -0.172550 2.397375 0.627555
+v -0.172509 2.397225 -0.626579
+v -0.173338 2.351120 -0.695908
+v -0.223390 2.348492 -0.643326
+v -0.177828 2.102356 -0.800385
+v -0.179562 2.006271 -0.819712
+v -0.228830 2.047107 -0.769724
+v 1.081149 1.983499 -0.819668
+v 1.082880 2.079383 -0.799868
+v 1.182854 2.077577 -0.799864
+v 1.181871 2.023193 -0.770402
+v 1.130965 1.973246 -0.769670
+v 1.187184 2.317492 -0.696332
+v 1.087217 2.319650 -0.696336
+v 1.088045 2.365554 -0.626534
+v 1.188011 2.363395 -0.626530
+v 1.187989 2.363477 0.050531
+v 1.187992 2.363465 -0.049459
+v 1.088024 2.365629 0.000533
+v 1.187139 2.317659 0.697415
+v 1.187970 2.363546 0.627603
+v 1.088004 2.365704 0.627600
+v 1.087171 2.319817 0.697412
+v 1.082828 2.079574 0.801002
+v 1.081096 1.983695 0.820825
+v 1.130915 1.973430 0.770833
+v 1.181821 2.023377 0.771556
+v 1.182802 2.077768 0.801005
+v 1.179600 1.898864 -0.048676
+v 1.179597 1.898876 0.049860
+v 1.128696 1.849179 0.050591
+v 1.128699 1.849167 -0.049399
+v 1.325984 1.947098 0.050586
+v 1.275079 1.897151 0.049863
+v 1.275082 1.897139 -0.048673
+v 1.325987 1.947086 -0.049404
+v 1.283471 2.361752 0.050535
+v 1.332554 2.310862 0.050542
+v 1.332558 2.310850 -0.049448
+v 1.283474 2.361740 -0.049455
+v 1.278336 2.075852 -0.799861
+v 1.328187 2.067535 -0.748609
+v 1.277353 2.021468 -0.770398
+v 1.283493 2.361671 -0.626527
+v 1.332577 2.310779 -0.643640
+v 1.282666 2.315768 -0.696328
+v 1.328138 2.067715 0.749762
+v 1.278284 2.076044 0.801009
+v 1.277302 2.021652 0.771559
+v 1.282620 2.315935 0.697419
+v 1.332535 2.310934 0.644735
+v 1.283452 2.361821 0.627607
+v 0.166796 0.918150 0.692005
+v 0.215880 0.867261 0.692013
+v 0.216781 0.917253 0.742002
+v 1.393002 0.845999 0.692054
+v 1.432534 0.893986 0.692049
+v 1.380929 0.896226 0.742042
+v 0.223413 1.294207 0.691962
+v 0.172626 1.240905 0.691967
+v 0.222684 1.244059 0.741963
+v 1.342749 1.313839 0.691996
+v 1.282408 1.359414 0.691989
+v 1.292448 1.309982 0.741990
+v 0.222733 1.243881 -0.745109
+v 0.172671 1.240739 -0.695115
+v 0.223459 1.294040 -0.695120
+v 1.342794 1.313673 -0.695085
+v 1.292496 1.309804 -0.745081
+v 1.282454 1.359248 -0.695093
+v 0.215925 0.867095 -0.695069
+v 0.166841 0.917984 -0.695076
+v 0.216830 0.917075 -0.745070
+v 1.432579 0.893819 -0.695032
+v 1.393049 0.845829 -0.728073
+v 1.380978 0.896048 -0.745029
+v 0.178368 1.345627 0.679069
+v 0.227452 1.294737 0.679077
+v 0.228353 1.344730 0.729066
+v 0.996816 1.341688 0.679096
+v 1.047883 1.400577 0.679091
+v 0.997717 1.391681 0.729085
+v 0.236903 1.817995 0.679014
+v 0.186013 1.768912 0.679019
+v 0.235998 1.768015 0.729015
+v 1.053663 1.720545 0.679053
+v 1.004579 1.771435 0.679045
+v 1.003674 1.721454 0.729046
+v 0.236046 1.767840 -0.727862
+v 0.186058 1.768749 -0.677869
+v 0.236947 1.817833 -0.677873
+v 1.053707 1.720383 -0.677835
+v 1.003722 1.721280 -0.727831
+v 1.004623 1.771272 -0.677842
+v 0.227496 1.294575 -0.677811
+v 0.178412 1.345464 -0.677818
+v 0.228400 1.344555 -0.727812
+v 1.047927 1.400415 -0.677796
+v 0.996861 1.341526 -0.677791
+v 0.997765 1.391507 -0.727792
+v 0.736370 2.066616 0.151172
+v 0.737912 2.152107 0.208290
+v 0.738941 2.209237 0.293781
+v 0.739300 2.229307 0.394631
+v 0.738935 2.209261 0.495486
+v 0.737900 2.152152 0.580992
+v 0.736354 2.066675 0.638130
+v 0.734532 1.965841 0.658203
+v 0.732712 1.865003 0.638154
+v 0.731169 1.779511 0.581036
+v 0.730140 1.722382 0.495544
+v 0.729781 1.702312 0.394694
+v 0.730147 1.722358 0.293840
+v 0.731182 1.779467 0.208334
+v 0.732727 1.864944 0.151196
+v 0.734550 1.965778 0.131123
+v 1.255731 2.057235 0.151190
+v 1.257273 2.142726 0.208308
+v 1.258302 2.199856 0.293800
+v 1.258661 2.219926 0.394650
+v 1.258296 2.199880 0.495504
+v 1.257261 2.142771 0.581010
+v 1.255715 2.057294 0.638148
+v 1.253893 1.956460 0.658221
+v 1.252073 1.855621 0.638172
+v 1.250530 1.770130 0.581054
+v 1.249501 1.713001 0.495562
+v 1.249143 1.692931 0.394712
+v 1.249508 1.712977 0.293858
+v 1.250543 1.770086 0.208352
+v 1.252089 1.855563 0.151214
+v 1.253911 1.956397 0.131141
+v 1.255272 2.031912 0.212357
+v 1.256427 2.095927 0.255126
+v 1.257197 2.138705 0.319142
+v 1.257466 2.153733 0.394657
+v 1.257192 2.138723 0.470177
+v 1.256417 2.095960 0.534202
+v 1.255260 2.031955 0.576987
+v 1.253896 1.956452 0.592018
+v 1.252532 1.880945 0.577005
+v 1.251377 1.816930 0.534236
+v 1.250607 1.774152 0.470220
+v 1.250338 1.759124 0.394705
+v 1.250612 1.774134 0.319185
+v 1.251387 1.816896 0.255160
+v 1.252544 1.880901 0.212375
+v 1.253908 1.956405 0.197344
+v 1.235541 2.032268 0.212356
+v 1.236695 2.096283 0.255126
+v 1.237466 2.139061 0.319141
+v 1.237735 2.154089 0.394657
+v 1.237461 2.139080 0.470176
+v 1.236686 2.096317 0.534202
+v 1.235529 2.032312 0.576987
+v 1.234164 1.956809 0.592017
+v 1.232801 1.881301 0.577005
+v 1.231646 1.817286 0.534235
+v 1.230876 1.774508 0.470220
+v 1.230607 1.759480 0.394704
+v 1.230881 1.774490 0.319185
+v 1.231655 1.817253 0.255159
+v 1.232813 1.881258 0.212374
+v 1.234177 1.956761 0.197344
+v 1.054750 1.998713 0.240317
+v 1.055342 2.031518 0.262235
+v 1.055737 2.053441 0.295041
+v 1.055875 2.061142 0.333740
+v 1.055734 2.053450 0.372441
+v 1.055337 2.031536 0.405251
+v 1.054744 1.998736 0.427177
+v 1.054045 1.960043 0.434880
+v 1.053346 1.921348 0.427186
+v 1.052755 1.888543 0.405268
+v 1.052360 1.866621 0.372463
+v 1.052222 1.858919 0.333764
+v 1.052362 1.866611 0.295063
+v 1.052759 1.888526 0.262252
+v 1.053352 1.921326 0.240326
+v 1.054052 1.960019 0.232624
+v 1.254044 1.995113 0.240324
+v 1.254636 2.027919 0.262242
+v 1.255031 2.049841 0.295048
+v 1.255168 2.057542 0.333747
+v 1.255028 2.049850 0.372447
+v 1.254631 2.027936 0.405258
+v 1.254038 1.995136 0.427184
+v 1.253339 1.956443 0.434887
+v 1.252640 1.917748 0.427193
+v 1.252048 1.884943 0.405275
+v 1.251653 1.863021 0.372470
+v 1.251516 1.855319 0.333771
+v 1.251656 1.863011 0.295070
+v 1.252053 1.884926 0.262259
+v 1.252646 1.917726 0.240333
+v 1.253345 1.956419 0.232631
+v 0.736396 2.066521 -0.640283
+v 0.737938 2.152012 -0.583165
+v 0.738967 2.209142 -0.497673
+v 0.739326 2.229212 -0.396823
+v 0.738961 2.209167 -0.295969
+v 0.737926 2.152057 -0.210463
+v 0.736380 2.066580 -0.153325
+v 0.734558 1.965746 -0.133252
+v 0.732737 1.864908 -0.153301
+v 0.731195 1.779417 -0.210419
+v 0.730166 1.722287 -0.295910
+v 0.729807 1.702218 -0.396760
+v 0.730173 1.722263 -0.497615
+v 0.731207 1.779372 -0.583120
+v 0.732753 1.864849 -0.640259
+v 0.734575 1.965683 -0.660332
+v 1.255757 2.057140 -0.640265
+v 1.257299 2.142632 -0.583147
+v 1.258328 2.199761 -0.497655
+v 1.258687 2.219831 -0.396805
+v 1.258322 2.199785 -0.295950
+v 1.257287 2.142676 -0.210445
+v 1.255741 2.057199 -0.153307
+v 1.253919 1.956365 -0.133234
+v 1.252099 1.855527 -0.153282
+v 1.250556 1.770036 -0.210401
+v 1.249527 1.712906 -0.295892
+v 1.249168 1.692837 -0.396742
+v 1.249534 1.712882 -0.497597
+v 1.250569 1.769991 -0.583102
+v 1.252114 1.855468 -0.640241
+v 1.253936 1.956302 -0.660314
+v 1.255298 2.031817 -0.579098
+v 1.256452 2.095832 -0.536328
+v 1.257223 2.138610 -0.472313
+v 1.257492 2.153638 -0.396797
+v 1.257218 2.138628 -0.321278
+v 1.256443 2.095866 -0.257252
+v 1.255286 2.031861 -0.214467
+v 1.253921 1.956357 -0.199437
+v 1.252558 1.880850 -0.214449
+v 1.251403 1.816835 -0.257219
+v 1.250633 1.774057 -0.321234
+v 1.250364 1.759029 -0.396750
+v 1.250638 1.774039 -0.472269
+v 1.251412 1.816802 -0.536295
+v 1.252570 1.880807 -0.579080
+v 1.253934 1.956310 -0.594110
+v 1.235566 2.032173 -0.579099
+v 1.236721 2.096188 -0.536329
+v 1.237492 2.138966 -0.472314
+v 1.237761 2.153995 -0.396798
+v 1.237487 2.138985 -0.321279
+v 1.236712 2.096222 -0.257253
+v 1.235554 2.032217 -0.214468
+v 1.234190 1.956714 -0.199438
+v 1.232827 1.881207 -0.214450
+v 1.231672 1.817191 -0.257220
+v 1.230902 1.774413 -0.321235
+v 1.230633 1.759386 -0.396751
+v 1.230906 1.774395 -0.472270
+v 1.231681 1.817158 -0.536296
+v 1.232839 1.881163 -0.579081
+v 1.234203 1.956667 -0.594111
+v 0.986768 2.012876 -0.505810
+v 0.987559 2.056719 -0.476517
+v 0.988087 2.086017 -0.432673
+v 0.988271 2.096310 -0.380953
+v 0.988083 2.086030 -0.329231
+v 0.987553 2.056742 -0.285380
+v 0.986760 2.012906 -0.256077
+v 0.985825 1.961194 -0.245783
+v 0.984892 1.909480 -0.256065
+v 0.984101 1.865636 -0.285357
+v 0.983573 1.836338 -0.329201
+v 0.983389 1.826045 -0.380921
+v 0.983576 1.836326 -0.432643
+v 0.984107 1.865613 -0.476494
+v 0.984900 1.909450 -0.505797
+v 0.985834 1.961161 -0.516091
+v 1.253118 2.008065 -0.505800
+v 1.253909 2.051908 -0.476508
+v 1.254437 2.081206 -0.432664
+v 1.254621 2.091499 -0.380944
+v 1.254433 2.081219 -0.329221
+v 1.253903 2.051931 -0.285371
+v 1.253110 2.008095 -0.256068
+v 1.252175 1.956383 -0.245774
+v 1.251242 1.904669 -0.256055
+v 1.250451 1.860825 -0.285348
+v 1.249923 1.831527 -0.329192
+v 1.249739 1.821234 -0.380912
+v 1.249927 1.831515 -0.432634
+v 1.250457 1.860802 -0.476485
+v 1.251250 1.904639 -0.505788
+v 1.252184 1.956351 -0.516082
+v 2.265222 -0.737460 1.947940
+v 2.261059 -0.788708 1.897951
+v 2.316273 -0.731376 1.897947
+v 2.350237 -0.219596 1.897888
+v 2.298188 -0.225835 1.947882
+v 2.313540 -0.324640 1.947894
+v 2.365031 -0.314803 1.897900
+v 1.627362 -0.838747 1.897933
+v 1.698423 -0.876130 1.897940
+v 1.678005 -0.828702 1.947928
+v 1.429440 -0.362997 1.897869
+v 1.444134 -0.457564 1.897881
+v 1.496718 -0.451557 1.947877
+v 1.481366 -0.352753 1.947865
+v 1.539667 0.061619 1.947819
+v 1.544733 0.112994 1.897818
+v 1.488366 0.055811 1.897822
+v 1.544751 0.112941 1.442273
+v 1.539689 0.061554 1.392284
+v 1.488383 0.055758 1.442278
+v 1.444151 -0.457617 1.442336
+v 1.429458 -0.363050 1.442324
+v 1.481388 -0.352818 1.392330
+v 1.496740 -0.451622 1.392342
+v 1.698441 -0.876183 1.442395
+v 1.627379 -0.838800 1.442387
+v 1.678027 -0.828766 1.392393
+v 2.261077 -0.788761 1.442406
+v 2.265244 -0.737525 1.392406
+v 2.316291 -0.731429 1.442402
+v 2.298210 -0.225900 1.392347
+v 2.350255 -0.219649 1.442343
+v 2.365048 -0.314857 1.442355
+v 2.313562 -0.324705 1.392359
+v 2.126884 0.152860 1.947831
+v 2.177376 0.162542 1.897837
+v 2.107369 0.200417 1.897830
+v 2.177394 0.162488 1.442292
+v 2.126906 0.152795 1.392296
+v 2.107387 0.200363 1.442285
+v 2.201509 0.129214 1.391500
+v 2.228018 0.085668 1.341511
+v 2.072227 0.010408 1.391508
+v 2.113380 -0.019681 1.341519
+v 1.998251 -0.148829 1.391524
+v 2.047783 -0.160880 1.341533
+v 1.990843 -0.324254 1.391544
+v 2.041215 -0.316433 1.341551
+v 2.051131 -0.489160 1.391566
+v 2.094674 -0.462659 1.341570
+v 2.169937 -0.618442 1.391586
+v 2.200022 -0.577297 1.341587
+v 2.329174 -0.692418 1.391601
+v 2.341221 -0.642893 1.341600
+v 2.504599 -0.699826 1.391608
+v 2.496774 -0.649462 1.341607
+v 2.669505 -0.639538 1.391608
+v 2.643001 -0.596003 1.341607
+v 2.798787 -0.520732 1.391599
+v 2.757638 -0.490655 1.341599
+v 2.872764 -0.361495 1.391583
+v 2.823235 -0.349456 1.341585
+v 2.880172 -0.186070 1.391563
+v 2.829804 -0.193903 1.341567
+v 2.819883 -0.021164 1.391541
+v 2.776344 -0.047676 1.341548
+v 2.701077 0.108118 1.391522
+v 2.670996 0.066961 1.341530
+v 2.541840 0.182095 1.391507
+v 2.529797 0.132558 1.341517
+v 2.366416 0.189502 1.391499
+v 2.374244 0.139126 1.341510
+v 2.201488 0.129279 1.948639
+v 2.227992 0.085744 1.998641
+v 2.072205 0.010473 1.948648
+v 2.113354 -0.019604 1.998648
+v 1.998229 -0.148764 1.948664
+v 2.047758 -0.160803 1.998662
+v 1.990821 -0.324188 1.948684
+v 2.041189 -0.316356 1.998680
+v 2.051109 -0.489095 1.948706
+v 2.094648 -0.462583 1.998699
+v 2.169915 -0.618377 1.948726
+v 2.199996 -0.577220 1.998717
+v 2.329152 -0.692353 1.948740
+v 2.341195 -0.642817 1.998730
+v 2.504577 -0.699761 1.948748
+v 2.496749 -0.649385 1.998737
+v 2.669483 -0.639473 1.948748
+v 2.642975 -0.595926 1.998736
+v 2.798766 -0.520667 1.948739
+v 2.757612 -0.490578 1.998729
+v 2.872742 -0.361430 1.948723
+v 2.823209 -0.349379 1.998715
+v 2.880150 -0.186005 1.948703
+v 2.829778 -0.193826 1.998697
+v 2.819861 -0.021099 1.948681
+v 2.776318 -0.047599 1.998677
+v 2.701055 0.108184 1.948661
+v 2.670970 0.067038 1.998660
+v 2.541819 0.182160 1.948646
+v 2.529772 0.132635 1.998647
+v 2.366394 0.189567 1.948639
+v 2.374218 0.139203 1.998640
+v 2.967321 0.370475 1.913152
+v 3.015045 0.392011 1.830297
+v 2.480725 0.304449 1.859724
+v 2.532502 0.308767 1.920385
+v 2.968843 0.381027 1.504295
+v 3.018237 0.392265 1.556861
+v 2.585054 0.317288 1.496457
+v 2.501065 0.293067 1.557250
+v 2.943043 0.583141 1.714886
+v 2.508739 0.526384 1.735850
+v 3.001752 0.432981 1.511278
+v 2.992381 0.564160 1.677511
+v 2.459165 0.487136 1.716603
+v 2.522041 0.344559 1.520642
+v 2.619611 0.357929 1.467793
+v 2.951271 0.411800 1.484972
+v 2.925544 0.641977 1.459963
+v 2.597282 0.601370 1.454267
+v 2.982331 0.446400 1.420382
+v 2.964637 0.617530 1.459392
+v 2.559389 0.574428 1.457060
+v 2.588613 0.393754 1.412569
+v 2.654576 0.380753 1.400741
+v 2.945304 0.422234 1.408531
+v 2.896673 0.629032 1.303517
+v 2.676273 0.611630 1.281032
+v 2.937283 0.439905 1.307750
+v 2.923174 0.600930 1.305939
+v 2.651016 0.586874 1.278600
+v 2.672854 0.415605 1.281953
+v 2.717261 0.397266 1.286208
+v 2.912475 0.418087 1.305648
+v 2.872759 0.588565 1.266419
+v 2.708339 0.575583 1.249645
+v 2.902461 0.451297 1.269572
+v 2.892528 0.567600 1.268226
+v 2.689497 0.557115 1.247831
+v 2.705194 0.433169 1.250327
+v 2.738323 0.419488 1.253501
+v 2.883954 0.435021 1.268004
+v 2.799132 0.503480 1.259191
+v 2.516324 0.213319 1.523287
+v 2.466172 0.206303 1.573281
+v 3.077368 0.300493 1.514154
+v 2.979398 0.285271 1.523296
+v 3.070524 0.350031 1.564844
+v 3.337619 -0.621476 1.543616
+v 3.297750 -0.577081 1.498818
+v 3.365279 -0.566595 1.443508
+v 3.412371 -0.609869 1.477804
+v 3.159413 0.313239 1.498709
+v 3.183929 0.367649 1.543495
+v 3.258682 0.379256 1.477682
+v 3.226941 0.323725 1.443398
+v 3.395344 0.400524 1.755208
+v 3.446632 0.357903 1.792246
+v 3.502809 0.366624 1.725982
+v 3.455067 0.409794 1.674344
+v 3.584970 -0.532417 1.792356
+v 3.549034 -0.588600 1.755330
+v 3.608757 -0.579330 1.674465
+v 3.641146 -0.523696 1.726092
+v 3.440741 -0.554878 1.380052
+v 3.431982 -0.606827 1.430052
+v 3.372379 -0.565494 1.426218
+v 3.278292 0.382297 1.429931
+v 3.302403 0.335442 1.379942
+v 3.234042 0.324826 1.426108
+v 3.562296 0.375830 1.428947
+v 3.522707 0.369673 1.379947
+v 3.504014 0.417370 1.429935
+v 3.657704 -0.571755 1.430057
+v 3.661045 -0.520647 1.380056
+v 3.700634 -0.514490 1.429056
+v 3.125396 -0.654407 1.897969
+v 3.224202 -0.639058 1.876295
+v 3.213484 -0.590121 1.930694
+v 3.117718 -0.604999 1.947958
+v 3.040874 -0.110437 1.947897
+v 3.056226 -0.209241 1.947909
+v 3.144315 -0.144961 1.930639
+v 2.604730 -0.685484 1.897953
+v 2.670282 -0.725123 1.897960
+v 2.654645 -0.676951 1.947948
+v 2.457740 -0.201821 1.897890
+v 2.472858 -0.299120 1.897902
+v 2.523273 -0.292052 1.947898
+v 2.507920 -0.193247 1.947886
+v 2.466159 0.206341 1.897843
+v 2.516307 0.213369 1.947839
+v 2.472871 -0.299158 1.573340
+v 2.457752 -0.201859 1.573328
+v 2.507937 -0.193297 1.523334
+v 2.523289 -0.292101 1.523346
+v 2.654662 -0.677001 1.523396
+v 2.670295 -0.725161 1.573398
+v 2.604743 -0.685522 1.573390
+v 3.215706 -0.589827 1.514264
+v 3.224214 -0.639094 1.564966
+v 3.125409 -0.654445 1.573407
+v 3.117735 -0.605049 1.523406
+v 3.040890 -0.110487 1.523345
+v 3.146537 -0.144667 1.514209
+v 3.056242 -0.209291 1.523357
+v 2.979381 0.285321 1.947849
+v 3.075146 0.300199 1.930584
+v 3.070512 0.350067 1.876174
+v 1.002777 -0.749077 1.947892
+v 0.970039 -0.788583 1.897901
+v 1.047848 -0.773595 1.897902
+v 1.324746 -0.460778 1.897877
+v 1.368145 -0.374412 1.897868
+v 1.322285 -0.349497 1.947858
+v 1.277389 -0.438841 1.947867
+v -0.441742 -0.026660 1.897757
+v -0.402674 -0.098788 1.897767
+v -0.393762 -0.047309 1.947756
+v -0.351033 0.487892 1.897700
+v -0.393155 0.404067 1.897708
+v -0.345913 0.376876 1.947708
+v -0.301017 0.466220 1.947699
+v -0.402656 -0.098841 1.442222
+v -0.441724 -0.026713 1.442212
+v -0.393740 -0.047374 1.392221
+v -0.351015 0.487839 1.442155
+v -0.300995 0.466155 1.392165
+v -0.345891 0.376811 1.392173
+v -0.393137 0.404014 1.442163
+v 0.970057 -0.788636 1.442356
+v 1.002798 -0.749142 1.392358
+v 1.047866 -0.773649 1.442357
+v 1.368163 -0.374465 1.442323
+v 1.324764 -0.460831 1.442332
+v 1.277411 -0.438906 1.392332
+v 1.322307 -0.349562 1.392323
+v 1.419488 0.105835 1.897814
+v 1.407330 0.055997 1.947814
+v 1.453898 0.034456 1.897824
+v 1.453916 0.034403 1.442279
+v 1.407352 0.055932 1.392280
+v 1.419506 0.105781 1.442269
+v 0.010814 0.757699 1.392143
+v -0.034397 0.783879 1.442133
+v 0.046793 0.795576 1.442135
+v 0.046776 0.795630 1.897680
+v -0.034415 0.783933 1.897678
+v 0.010792 0.757764 1.947677
+v 1.390702 0.025402 1.391480
+v 1.386988 -0.025443 1.341491
+v 1.216455 0.003790 1.391476
+v 1.232480 -0.044607 1.341487
+v 1.063743 -0.082858 1.391480
+v 1.097067 -0.121439 1.341491
+v 0.955814 -0.221350 1.391492
+v 1.001364 -0.244243 1.341501
+v 0.909100 -0.390603 1.391510
+v 0.959940 -0.394324 1.341517
+v 0.930711 -0.564849 1.391531
+v 0.979104 -0.548832 1.341536
+v 1.017359 -0.717561 1.391552
+v 1.055936 -0.684246 1.341555
+v 1.155851 -0.825490 1.391570
+v 1.178741 -0.779949 1.341571
+v 1.325104 -0.872205 1.391582
+v 1.328821 -0.821372 1.341582
+v 1.499350 -0.850593 1.391587
+v 1.483330 -0.802208 1.341586
+v 1.652062 -0.763945 1.391583
+v 1.618743 -0.725376 1.341582
+v 1.759991 -0.625453 1.391571
+v 1.714446 -0.602571 1.341571
+v 1.806706 -0.456200 1.391553
+v 1.755869 -0.452491 1.341555
+v 1.785094 -0.281954 1.391532
+v 1.736706 -0.297983 1.341537
+v 1.698447 -0.129242 1.391510
+v 1.659873 -0.162569 1.341518
+v 1.559954 -0.021313 1.391492
+v 1.537069 -0.066866 1.341502
+v 1.390680 0.025467 1.948620
+v 1.386963 -0.025366 1.998621
+v 1.216434 0.003855 1.948616
+v 1.232454 -0.044530 1.998617
+v 1.063722 -0.082792 1.948620
+v 1.097041 -0.121362 1.998620
+v 0.955793 -0.221285 1.948632
+v 1.001338 -0.244167 1.998631
+v 0.909078 -0.390538 1.948649
+v 0.959915 -0.394247 1.998647
+v 0.930689 -0.564784 1.948671
+v 0.979078 -0.548755 1.998666
+v 1.017337 -0.717496 1.948692
+v 1.055911 -0.684169 1.998685
+v 1.155829 -0.825425 1.948710
+v 1.178715 -0.779872 1.998701
+v 1.325082 -0.872140 1.948722
+v 1.328796 -0.821295 1.998711
+v 1.499329 -0.850528 1.948727
+v 1.483304 -0.802132 1.998715
+v 1.652041 -0.763881 1.948723
+v 1.618717 -0.725299 1.998712
+v 1.759970 -0.625388 1.948711
+v 1.714420 -0.602494 1.998701
+v 1.806684 -0.456135 1.948693
+v 1.755843 -0.452414 1.998685
+v 1.785073 -0.281889 1.948671
+v 1.736680 -0.297906 1.998666
+v 1.698425 -0.129177 1.948650
+v 1.659847 -0.162492 1.998647
+v 1.559932 -0.021248 1.948632
+v 1.537043 -0.066789 1.998631
+v 0.319154 0.563833 1.111545
+v 0.144908 0.542221 1.111541
+v -0.007805 0.455573 1.111545
+v -0.115734 0.317081 1.111557
+v -0.162448 0.147828 1.111575
+v -0.140837 -0.026418 1.111596
+v -0.054189 -0.179130 1.111617
+v 0.084303 -0.287059 1.111635
+v 0.253556 -0.333774 1.111647
+v 0.427802 -0.312162 1.111652
+v 0.580514 -0.225515 1.111647
+v 0.688443 -0.087022 1.111635
+v 0.735158 0.082231 1.111618
+v 0.713546 0.256477 1.111596
+v 0.626899 0.409189 1.111575
+v 0.488406 0.517118 1.111557
+v 0.319121 0.563930 1.948515
+v 0.315404 0.513097 1.998515
+v 0.144875 0.542319 1.948510
+v 0.160895 0.493934 1.998512
+v -0.007837 0.455671 1.948514
+v 0.025482 0.417101 1.998515
+v -0.115766 0.317179 1.948527
+v -0.070221 0.294297 1.998526
+v -0.162481 0.147926 1.948545
+v -0.111644 0.144217 1.998542
+v -0.140870 -0.026320 1.948566
+v -0.092481 -0.010292 1.998560
+v -0.054222 -0.179032 1.948587
+v -0.015648 -0.145705 1.998579
+v 0.084270 -0.286961 1.948605
+v 0.107156 -0.241408 1.998595
+v 0.253523 -0.333676 1.948617
+v 0.257237 -0.282831 1.998606
+v 0.427770 -0.312064 1.948621
+v 0.411745 -0.263668 1.998610
+v 0.580482 -0.225417 1.948617
+v 0.547158 -0.186835 1.998606
+v 0.688411 -0.086924 1.948605
+v 0.642861 -0.064031 1.998595
+v 0.735125 0.082329 1.948587
+v 0.684284 0.086050 1.998580
+v 0.713513 0.256575 1.948566
+v 0.665121 0.240558 1.998561
+v 0.626866 0.409287 1.948545
+v 0.588288 0.375971 1.998542
+v 0.488374 0.517216 1.948527
+v 0.465484 0.471675 1.998526
+v 2.909698 0.662301 -1.924976
+v 2.818896 0.628473 -1.942345
+v 2.789885 0.709511 -1.887078
+v 2.832211 0.740219 -1.820080
+v 2.895050 0.710248 -1.870623
+v 2.331936 0.448009 -1.892981
+v 2.326419 0.547068 -1.844509
+v 2.376349 0.561688 -1.893475
+v 2.379726 0.464943 -1.942914
+v 3.303373 -0.152128 -1.492602
+v 3.351428 -0.187627 -1.537310
+v 3.422229 -0.161200 -1.471404
+v 3.367349 -0.128252 -1.437223
+v 3.002127 0.750444 -1.538225
+v 2.988963 0.692237 -1.493427
+v 3.052940 0.716114 -1.438046
+v 3.072928 0.776871 -1.472319
+v 3.261792 0.793542 -1.786315
+v 3.202879 0.824990 -1.749394
+v 3.259458 0.846137 -1.668528
+v 3.314985 0.813414 -1.719998
+v 3.552179 -0.113081 -1.748479
+v 3.576202 -0.050823 -1.785491
+v 3.629394 -0.030952 -1.719174
+v 3.608759 -0.091934 -1.667613
+v 3.440728 -0.154264 -1.423744
+v 3.438807 -0.101582 -1.373775
+v 3.374027 -0.125749 -1.420020
+v 3.124398 0.742784 -1.374599
+v 3.091428 0.783806 -1.424659
+v 3.059618 0.718617 -1.420844
+v 3.333331 0.820582 -1.374328
+v 3.370940 0.834539 -1.423276
+v 3.305500 0.863519 -1.424381
+v 3.647738 -0.023784 -1.373504
+v 3.654800 -0.074552 -1.423467
+v 3.685349 -0.009827 -1.422453
+v 3.224106 -0.182065 -1.924153
+v 3.244350 -0.227822 -1.869707
+v 3.150679 -0.262724 -1.891481
+v 3.133305 -0.215893 -1.941522
+v 2.719055 -0.423444 -1.892040
+v 2.646876 -0.397785 -1.892157
+v 2.694135 -0.379423 -1.942091
+v 2.440061 -0.045798 -1.892610
+v 2.405700 0.046479 -1.892700
+v 2.453210 0.064934 -1.942634
+v 2.488102 -0.028771 -1.942543
+v 2.958654 0.253142 -1.941978
+v 3.066901 0.240118 -1.924565
+v 2.993547 0.159438 -1.941888
+v 2.718583 -0.423303 -1.567899
+v 2.693516 -0.379240 -1.517960
+v 2.646404 -0.397644 -1.568015
+v 2.405227 0.046619 -1.568559
+v 2.439588 -0.045658 -1.568469
+v 2.487484 -0.028587 -1.518412
+v 2.452592 0.065118 -1.518504
+v 3.243898 -0.227687 -1.558782
+v 3.225589 -0.181107 -1.508134
+v 3.132686 -0.215709 -1.517390
+v 3.150206 -0.262583 -1.567340
+v 3.068384 0.241076 -1.508546
+v 2.958036 0.253326 -1.517848
+v 2.992928 0.159621 -1.517757
+v 2.788703 0.720345 -1.523335
+v 2.818277 0.628657 -1.518215
+v 2.911180 0.663259 -1.508958
+v 2.894597 0.710383 -1.559698
+v 2.834899 0.741248 -1.565781
+v 2.331463 0.448149 -1.568841
+v 2.379107 0.465126 -1.518783
+v 2.425561 0.580809 -1.517474
+v 2.348207 0.540157 -1.566724
+v 2.725502 0.913613 -1.715002
+v 2.311681 0.770800 -1.740245
+v 2.811167 0.778030 -1.510723
+v 2.777277 0.904879 -1.677126
+v 2.270815 0.722367 -1.721467
+v 2.359113 0.595061 -1.524798
+v 2.451482 0.627686 -1.470990
+v 2.765712 0.747104 -1.484906
+v 2.694027 0.967387 -1.460304
+v 2.380573 0.861660 -1.457845
+v 2.788550 0.787150 -1.420033
+v 2.737226 0.951290 -1.459328
+v 2.348894 0.827659 -1.460996
+v 2.413376 0.656479 -1.416100
+v 2.480485 0.656977 -1.403609
+v 2.757017 0.756023 -1.408535
+v 2.666802 0.948694 -1.304144
+v 2.454180 0.887343 -1.283840
+v 2.744616 0.771585 -1.307850
+v 2.698430 0.926491 -1.306285
+v 2.434387 0.858014 -1.281643
+v 2.490217 0.694628 -1.284668
+v 2.537443 0.685589 -1.288468
+v 2.724677 0.745226 -1.305981
+v 2.651139 0.904197 -1.267259
+v 2.492522 0.858429 -1.252112
+v 2.707839 0.775699 -1.270027
+v 2.674734 0.887634 -1.268856
+v 2.477757 0.836550 -1.250474
+v 2.518056 0.718288 -1.252733
+v 2.553287 0.711545 -1.255569
+v 2.692965 0.756034 -1.268633
+v 2.596037 0.806047 -1.260708
+v 2.010402 0.327421 -1.943668
+v 1.981654 0.370113 -1.893734
+v 2.057843 0.347077 -1.893613
+v 2.303962 0.007466 -1.893107
+v 2.337584 -0.082827 -1.893019
+v 2.289196 -0.102836 -1.943076
+v 2.254304 -0.009131 -1.943167
+v 1.404331 0.104079 -1.894460
+v 1.448059 0.171423 -1.894425
+v 1.453495 0.120050 -1.944390
+v 1.464154 -0.407713 -1.894151
+v 1.430758 -0.318027 -1.894238
+v 1.479643 -0.297585 -1.944171
+v 1.514535 -0.391290 -1.944080
+v 1.447395 0.171620 -1.438881
+v 1.403667 0.104277 -1.438915
+v 1.452686 0.120290 -1.388856
+v 1.463490 -0.407516 -1.438607
+v 1.513725 -0.391049 -1.388545
+v 1.478833 -0.297345 -1.388637
+v 1.430094 -0.317830 -1.438694
+v 1.980990 0.370310 -1.438189
+v 2.009593 0.327661 -1.388134
+v 2.057180 0.347274 -1.438068
+v 2.336920 -0.082630 -1.437474
+v 2.303298 0.007663 -1.437563
+v 2.253495 -0.008891 -1.387633
+v 2.288386 -0.102595 -1.387541
+v 2.330954 -0.567958 -1.892819
+v 2.324811 -0.516945 -1.942844
+v 2.373523 -0.500701 -1.892786
+v 2.372859 -0.500503 -1.437241
+v 2.324002 -0.516705 -1.387310
+v 2.330291 -0.567760 -1.437274
+v 1.767094 -0.724076 -1.388032
+v 1.719572 -0.744108 -1.438088
+v 1.796696 -0.766451 -1.437966
+v 1.797360 -0.766648 -1.893510
+v 1.720236 -0.744305 -1.893632
+v 1.767904 -0.724316 -1.943566
+v 2.377564 -0.459672 -1.386454
+v 2.379338 -0.408710 -1.336479
+v 2.206711 -0.419201 -1.386721
+v 2.227839 -0.372822 -1.336715
+v 2.064351 -0.316427 -1.386973
+v 2.101605 -0.281691 -1.336938
+v 1.972157 -0.166998 -1.387172
+v 2.019855 -0.149188 -1.337115
+v 1.944166 0.006338 -1.387288
+v 1.995034 0.004513 -1.337218
+v 1.984638 0.177191 -1.387303
+v 2.030921 0.156012 -1.337231
+v 2.087411 0.319551 -1.387214
+v 2.122053 0.282246 -1.337153
+v 2.236840 0.411745 -1.387037
+v 2.254555 0.363996 -1.336995
+v 2.410176 0.439737 -1.386796
+v 2.408256 0.388817 -1.336782
+v 2.581029 0.399265 -1.386530
+v 2.559755 0.352930 -1.336546
+v 2.723389 0.296491 -1.386278
+v 2.685989 0.261798 -1.336322
+v 2.815583 0.147062 -1.386079
+v 2.767740 0.129296 -1.336146
+v 2.843574 -0.026274 -1.385963
+v 2.792560 -0.024405 -1.336043
+v 2.803102 -0.197127 -1.385948
+v 2.756673 -0.175905 -1.336030
+v 2.700328 -0.339487 -1.386036
+v 2.665541 -0.302138 -1.336108
+v 2.550899 -0.431680 -1.386214
+v 2.533039 -0.383889 -1.336266
+v 2.378376 -0.459913 -1.943594
+v 2.380296 -0.408994 -1.993608
+v 2.207523 -0.419442 -1.943860
+v 2.228796 -0.373107 -1.993844
+v 2.065163 -0.316668 -1.944112
+v 2.102562 -0.281975 -1.994067
+v 1.972970 -0.167239 -1.944311
+v 2.020813 -0.149473 -1.994244
+v 1.944978 0.006097 -1.944427
+v 1.995991 0.004228 -1.994346
+v 1.985450 0.176950 -1.944442
+v 2.031879 0.155728 -1.994360
+v 2.088223 0.319310 -1.944354
+v 2.123010 0.281961 -1.994282
+v 2.237652 0.411504 -1.944176
+v 2.255513 0.363712 -1.994124
+v 2.410988 0.439495 -1.943935
+v 2.409214 0.388533 -1.993911
+v 2.581841 0.399024 -1.943669
+v 2.560713 0.352645 -1.993675
+v 2.724201 0.296250 -1.943417
+v 2.686947 0.261514 -1.993451
+v 2.816395 0.146821 -1.943218
+v 2.768697 0.129011 -1.993275
+v 2.844386 -0.026515 -1.943102
+v 2.793517 -0.024690 -1.993172
+v 2.803914 -0.197368 -1.943087
+v 2.757630 -0.176189 -1.993159
+v 2.701140 -0.339728 -1.943175
+v 2.666498 -0.302423 -1.993237
+v 2.551711 -0.431922 -1.943353
+v 2.533996 -0.384173 -1.993394
+v 1.405908 0.088515 -1.944445
+v 1.416391 0.138743 -1.894457
+v 1.453065 0.068502 -1.894373
+v 1.380430 -0.342900 -1.894301
+v 1.339814 -0.430609 -1.894322
+v 1.291855 -0.410225 -1.944396
+v 1.333871 -0.319491 -1.944374
+v -0.058450 0.770005 -1.896879
+v 0.022325 0.784292 -1.896768
+v -0.012354 0.745268 -1.946796
+v -0.404860 0.378863 -1.897215
+v -0.365439 0.463992 -1.897194
+v -0.314681 0.443903 -1.947106
+v -0.356697 0.353169 -1.947128
+v 0.021662 0.784489 -1.441223
+v -0.059114 0.770202 -1.441335
+v -0.013164 0.745509 -1.391262
+v -0.405524 0.379060 -1.441670
+v -0.357507 0.353409 -1.391594
+v -0.315491 0.444143 -1.391572
+v -0.366103 0.464189 -1.441650
+v 1.415727 0.138940 -1.438913
+v 1.405098 0.088755 -1.388911
+v 1.452402 0.068699 -1.438829
+v 1.339151 -0.430412 -1.438778
+v 1.379766 -0.342702 -1.438756
+v 1.333062 -0.319251 -1.388839
+v 1.291046 -0.409985 -1.388861
+v 0.995771 -0.769589 -1.894677
+v 1.027303 -0.729083 -1.944643
+v 1.073061 -0.752121 -1.894572
+v 1.072397 -0.751923 -1.439027
+v 1.026494 -0.728843 -1.389109
+v 0.995107 -0.769391 -1.439132
+v -0.391768 -0.072089 -1.391460
+v -0.440313 -0.053001 -1.441534
+v -0.398959 -0.123842 -1.441443
+v -0.398295 -0.124040 -1.896988
+v -0.439649 -0.053198 -1.897079
+v -0.390958 -0.072330 -1.946994
+v -0.048599 -0.192767 -1.110275
+v -0.140085 -0.042903 -1.110473
+v -0.167257 0.130563 -1.110588
+v -0.125979 0.301223 -1.110602
+v -0.022533 0.443096 -1.110512
+v 0.127330 0.534582 -1.110334
+v 0.300796 0.561754 -1.110093
+v 0.471456 0.520476 -1.109826
+v 0.613328 0.417030 -1.109575
+v 0.704815 0.267167 -1.109376
+v 0.731987 0.093701 -1.109262
+v 0.690708 -0.076959 -1.109248
+v 0.587263 -0.218832 -1.109337
+v 0.437399 -0.310318 -1.109516
+v 0.263933 -0.337490 -1.109757
+v 0.093273 -0.296212 -1.110024
+v -0.047379 -0.193129 -1.947244
+v -0.009816 -0.158613 -1.997199
+v -0.138866 -0.043266 -1.947442
+v -0.090939 -0.025725 -1.997375
+v -0.166038 0.130200 -1.947557
+v -0.115033 0.128091 -1.997476
+v -0.124759 0.300860 -1.947570
+v -0.078430 0.279419 -1.997489
+v -0.021314 0.442733 -1.947481
+v 0.013297 0.405221 -1.997409
+v 0.128550 0.534220 -1.947302
+v 0.146184 0.486344 -1.997251
+v 0.302015 0.561392 -1.947061
+v 0.300000 0.510438 -1.997037
+v 0.472675 0.520113 -1.946795
+v 0.451329 0.473836 -1.996801
+v 0.614548 0.416668 -1.946543
+v 0.577130 0.382108 -1.996578
+v 0.706034 0.266804 -1.946345
+v 0.658253 0.249221 -1.996402
+v 0.733206 0.093338 -1.946230
+v 0.682347 0.095405 -1.996300
+v 0.691927 -0.077322 -1.946217
+v 0.645745 -0.055924 -1.996288
+v 0.588482 -0.219194 -1.946306
+v 0.554017 -0.181726 -1.996367
+v 0.438619 -0.310681 -1.946485
+v 0.421130 -0.262849 -1.996526
+v 0.265153 -0.337853 -1.946726
+v 0.267314 -0.286943 -1.996740
+v 0.094493 -0.296574 -1.946992
+v 0.115985 -0.250340 -1.996976
+v 1.040036 -0.696812 -1.388301
+v 1.077454 -0.662253 -1.338266
+v 0.948550 -0.546949 -1.388499
+v 0.996330 -0.529366 -1.338442
+v 0.921378 -0.373483 -1.388614
+v 0.972237 -0.375549 -1.338544
+v 0.962656 -0.202823 -1.388627
+v 1.008839 -0.224221 -1.338556
+v 1.066102 -0.060950 -1.388538
+v 1.100567 -0.098419 -1.338477
+v 1.215965 0.030536 -1.388359
+v 1.233454 -0.017296 -1.338318
+v 1.389431 0.057708 -1.388118
+v 1.387270 0.006798 -1.338104
+v 1.560091 0.016430 -1.387852
+v 1.538598 -0.029804 -1.337868
+v 1.701963 -0.087016 -1.387600
+v 1.664400 -0.121532 -1.337645
+v 1.793449 -0.236879 -1.387402
+v 1.745523 -0.254419 -1.337469
+v 1.820621 -0.410345 -1.387287
+v 1.769617 -0.408235 -1.337368
+v 1.779343 -0.581005 -1.387274
+v 1.733014 -0.559564 -1.337355
+v 1.675897 -0.722878 -1.387363
+v 1.641287 -0.685365 -1.337435
+v 1.526034 -0.814364 -1.387542
+v 1.508399 -0.766489 -1.337593
+v 1.352568 -0.841536 -1.387783
+v 1.354583 -0.790583 -1.337807
+v 1.181908 -0.800257 -1.388049
+v 1.203255 -0.753980 -1.338043
+v 1.040848 -0.697054 -1.945440
+v 1.078411 -0.662537 -1.995395
+v 0.949362 -0.547190 -1.945638
+v 0.997288 -0.529650 -1.995571
+v 0.922190 -0.373724 -1.945753
+v 0.973194 -0.375834 -1.995673
+v 0.963468 -0.203064 -1.945766
+v 1.009797 -0.224505 -1.995685
+v 1.066914 -0.061192 -1.945677
+v 1.101524 -0.098704 -1.995606
+v 1.216777 0.030295 -1.945498
+v 1.234411 -0.017580 -1.995447
+v 1.390243 0.057467 -1.945257
+v 1.388228 0.006514 -1.995233
+v 1.560902 0.016189 -1.944991
+v 1.539556 -0.030089 -1.994997
+v 1.702775 -0.087257 -1.944739
+v 1.665358 -0.121816 -1.994774
+v 1.794261 -0.237120 -1.944541
+v 1.746481 -0.254704 -1.994598
+v 1.821434 -0.410586 -1.944427
+v 1.770575 -0.408520 -1.994496
+v 1.780155 -0.581246 -1.944413
+v 1.733972 -0.559848 -1.994484
+v 1.676709 -0.723119 -1.944502
+v 1.642244 -0.685650 -1.994564
+v 1.526846 -0.814605 -1.944681
+v 1.509357 -0.766773 -1.994722
+v 1.353380 -0.841777 -1.944922
+v 1.355541 -0.790867 -1.994936
+v 1.182720 -0.800499 -1.945188
+v 1.204213 -0.754265 -1.995172
+v 1.752412 -2.712670 -0.994109
+v 1.733575 -2.665531 -0.944121
+v 1.801889 -2.701350 -0.944113
+v 1.984172 -3.263623 -0.944025
+v 1.964789 -3.217547 -0.994027
+v 2.010871 -3.198154 -0.944033
+v 0.647008 -3.771745 -0.200444
+v 0.600926 -3.791138 -0.250438
+v 0.666395 -3.817836 -0.250431
+v 1.108349 -3.577681 -0.200453
+v 1.016182 -3.616452 -0.200451
+v 1.081653 -3.643157 -0.250440
+v 0.382701 -3.147084 -0.250540
+v 0.361900 -3.222909 -0.250530
+v 0.403826 -3.193638 -0.200537
+v 0.805511 -2.860111 -0.250564
+v 0.716395 -2.900118 -0.250562
+v 0.735170 -2.948412 -0.200559
+v 0.826165 -2.906855 -0.200562
+v 1.733547 -2.665431 -0.250556
+v 1.752380 -2.712555 -0.200553
+v 1.801862 -2.701250 -0.250548
+v 0.716423 -2.900218 -0.944128
+v 0.805539 -2.860212 -0.944130
+v 0.826197 -2.906970 -0.994117
+v 0.735202 -2.948527 -0.994115
+v 0.403858 -3.193753 -0.994093
+v 0.361928 -3.223010 -0.944095
+v 0.382729 -3.147185 -0.944106
+v 0.600954 -3.791238 -0.944003
+v 0.647039 -3.771860 -0.993999
+v 0.666423 -3.817937 -0.943997
+v 1.108381 -3.577796 -0.994009
+v 1.081681 -3.643258 -0.944006
+v 1.016214 -3.616566 -0.994007
+v 2.010843 -3.198054 -0.250467
+v 1.964757 -3.217432 -0.200471
+v 1.984145 -3.263523 -0.250459
+v 0.257185 -2.726674 -0.200583
+v 0.205978 -2.727117 -0.250578
+v 0.267198 -2.776901 -0.250572
+v 0.777863 -2.764014 -0.250579
+v 0.767676 -2.713032 -0.200590
+v 0.670244 -2.735505 -0.200586
+v 0.683413 -2.785799 -0.250575
+v 0.126811 -2.165515 -0.250645
+v 0.092367 -2.234548 -0.250637
+v 0.139111 -2.214756 -0.200645
+v 0.596945 -1.976901 -0.250673
+v 0.501299 -1.998962 -0.250669
+v 0.511893 -2.048961 -0.200668
+v 0.609325 -2.026489 -0.200672
+v 1.006550 -1.962603 -0.250679
+v 1.017064 -2.012255 -0.200678
+v 1.067751 -2.009575 -0.250674
+v 1.067744 -2.009659 -0.944239
+v 1.017056 -2.012352 -0.994233
+v 1.006544 -1.962687 -0.944244
+v 0.501292 -1.999046 -0.944235
+v 0.596938 -1.976986 -0.944239
+v 0.609317 -2.026585 -0.994228
+v 0.511885 -2.049058 -0.994224
+v 0.092360 -2.234632 -0.944202
+v 0.126804 -2.165600 -0.944211
+v 0.139103 -2.214852 -0.994200
+v 0.205971 -2.727201 -0.944143
+v 0.257177 -2.726771 -0.994139
+v 0.267191 -2.776985 -0.944138
+v 0.670236 -2.735601 -0.994142
+v 0.767668 -2.713129 -0.994146
+v 0.777856 -2.764099 -0.944145
+v 0.683406 -2.785883 -0.944141
+v 1.135138 -2.524174 -0.200617
+v 1.148133 -2.573713 -0.250606
+v 1.181362 -2.502144 -0.250615
+v 1.135130 -2.524271 -0.994172
+v 1.181356 -2.502228 -0.944180
+v 1.148126 -2.573797 -0.944171
+v 1.114499 -2.589469 -1.024611
+v 1.072993 -2.619067 -1.074602
+v 0.986635 -2.469137 -1.024625
+v 0.959613 -2.512366 -1.074614
+v 0.822456 -2.406896 -1.024631
+v 0.814032 -2.457175 -1.074619
+v 0.646955 -2.412221 -1.024628
+v 0.658411 -2.461898 -1.074617
+v 0.486852 -2.484303 -1.024618
+v 0.516444 -2.525814 -1.074608
+v 0.366520 -2.612166 -1.024601
+v 0.409743 -2.639193 -1.074593
+v 0.304279 -2.776346 -1.024580
+v 0.354552 -2.784775 -1.074575
+v 0.309605 -2.951846 -1.024559
+v 0.359275 -2.940395 -1.074556
+v 0.381686 -3.111949 -1.024540
+v 0.423191 -3.082363 -1.074539
+v 0.509550 -3.232281 -1.024527
+v 0.536570 -3.189064 -1.074528
+v 0.673729 -3.294522 -1.024521
+v 0.682152 -3.244255 -1.074522
+v 0.849230 -3.289197 -1.024523
+v 0.837773 -3.239532 -1.074524
+v 1.009333 -3.217115 -1.024534
+v 0.979740 -3.175616 -1.074533
+v 1.129665 -3.089252 -1.024551
+v 1.086441 -3.062236 -1.074548
+v 1.191905 -2.925072 -1.024571
+v 1.141631 -2.916655 -1.074567
+v 1.186580 -2.749572 -1.024593
+v 1.136909 -2.761034 -1.074586
+v 1.114507 -2.589362 -0.153605
+v 1.073002 -2.618949 -0.103606
+v 0.986644 -2.469031 -0.153619
+v 0.959623 -2.512248 -0.103618
+v 0.822464 -2.406790 -0.153625
+v 0.814041 -2.457057 -0.103624
+v 0.646964 -2.412115 -0.153622
+v 0.658421 -2.461779 -0.103622
+v 0.486861 -2.484197 -0.153612
+v 0.516453 -2.525696 -0.103612
+v 0.366529 -2.612060 -0.153595
+v 0.409752 -2.639075 -0.103597
+v 0.304288 -2.776240 -0.153575
+v 0.354562 -2.784657 -0.103579
+v 0.309613 -2.951740 -0.153553
+v 0.359284 -2.940277 -0.103560
+v 0.381695 -3.111843 -0.153535
+v 0.423200 -3.082245 -0.103544
+v 0.509558 -3.232175 -0.153521
+v 0.536580 -3.188946 -0.103532
+v 0.673737 -3.294416 -0.153515
+v 0.682162 -3.244136 -0.103526
+v 0.849238 -3.289090 -0.153518
+v 0.837782 -3.239414 -0.103528
+v 1.009341 -3.217009 -0.153528
+v 0.979749 -3.175497 -0.103538
+v 1.129673 -3.089145 -0.153545
+v 1.086450 -3.062118 -0.103553
+v 1.191914 -2.924966 -0.153565
+v 1.141641 -2.916536 -0.103571
+v 1.186588 -2.749465 -0.153587
+v 1.136918 -2.760916 -0.103590
+v 0.051854 -2.000417 -0.200653
+v 0.002843 -2.016701 -0.250644
+v 0.078050 -2.044925 -0.250645
+v 0.565162 -1.876527 -0.250686
+v 0.538253 -1.830916 -0.200694
+v 0.454283 -1.885202 -0.200684
+v 0.484820 -1.928467 -0.250676
+v -0.468300 -1.205825 -0.250710
+v -0.466297 -1.291025 -0.250700
+v -0.434796 -1.247655 -0.200712
+v -0.161434 -0.758619 -0.250772
+v -0.236299 -0.807018 -0.250763
+v -0.208910 -0.859361 -0.200764
+v -0.124939 -0.805075 -0.200774
+v 0.297459 -0.710772 -0.250799
+v 0.321857 -0.758489 -0.200800
+v 0.374327 -0.747573 -0.250798
+v 0.374294 -0.747648 -0.944364
+v 0.321820 -0.758575 -0.994355
+v 0.297426 -0.710847 -0.944364
+v -0.236331 -0.807093 -0.944329
+v -0.161466 -0.758694 -0.944338
+v -0.124976 -0.805160 -0.994330
+v -0.208947 -0.859446 -0.994320
+v -0.466329 -1.291100 -0.944266
+v -0.468332 -1.205900 -0.944275
+v -0.434833 -1.247741 -0.994267
+v 0.002811 -2.016775 -0.944210
+v 0.051817 -2.000502 -0.994209
+v 0.078018 -2.045000 -0.944210
+v 0.454246 -1.885288 -0.994240
+v 0.538216 -1.831002 -0.994250
+v 0.565130 -1.876602 -0.944251
+v 0.484788 -1.928542 -0.944242
+v 0.808507 -1.511251 -0.200741
+v 0.838332 -1.553413 -0.250733
+v 0.843467 -1.473249 -0.250742
+v 0.808470 -1.511336 -0.994297
+v 0.843434 -1.473324 -0.944308
+v 0.838299 -1.553488 -0.944299
+v 0.788494 -1.544459 -1.024740
+v 0.759533 -1.586414 -1.074729
+v 0.627314 -1.474817 -1.024740
+v 0.616611 -1.524661 -1.074729
+v 0.451753 -1.472158 -1.024732
+v 0.460937 -1.522303 -1.074722
+v 0.288538 -1.536885 -1.024717
+v 0.316210 -1.579698 -1.074709
+v 0.162517 -1.659145 -1.024698
+v 0.204464 -1.688109 -1.074692
+v 0.092875 -1.820325 -1.024677
+v 0.142711 -1.831030 -1.074674
+v 0.090216 -1.995886 -1.024658
+v 0.140353 -1.986705 -1.074657
+v 0.154943 -2.159101 -1.024644
+v 0.197748 -2.131432 -1.074644
+v 0.277203 -2.285122 -1.024636
+v 0.306159 -2.243178 -1.074637
+v 0.438383 -2.354764 -1.024636
+v 0.449081 -2.304930 -1.074637
+v 0.613944 -2.357423 -1.024644
+v 0.604755 -2.307288 -1.074644
+v 0.777159 -2.292696 -1.024659
+v 0.749482 -2.249893 -1.074657
+v 0.903180 -2.170435 -1.024678
+v 0.861228 -2.141482 -1.074674
+v 0.972821 -2.009256 -1.024698
+v 0.922980 -1.998561 -1.074692
+v 0.975481 -1.833695 -1.024717
+v 0.925339 -1.842886 -1.074709
+v 0.910753 -1.670479 -1.024732
+v 0.867943 -1.698160 -1.074722
+v 0.788534 -1.544365 -0.153734
+v 0.759578 -1.586309 -0.103733
+v 0.627355 -1.474723 -0.153734
+v 0.616656 -1.524557 -0.103733
+v 0.451794 -1.472064 -0.153726
+v 0.460982 -1.522198 -0.103726
+v 0.288578 -1.536791 -0.153711
+v 0.316255 -1.579593 -0.103713
+v 0.162557 -1.659051 -0.153692
+v 0.204510 -1.688004 -0.103696
+v 0.092916 -1.820230 -0.153672
+v 0.142757 -1.830926 -0.103678
+v 0.090256 -1.995792 -0.153652
+v 0.140399 -1.986600 -0.103661
+v 0.154984 -2.159007 -0.153638
+v 0.197794 -2.131327 -0.103648
+v 0.277244 -2.285028 -0.153630
+v 0.306205 -2.243073 -0.103641
+v 0.438423 -2.354670 -0.153630
+v 0.449126 -2.304825 -0.103641
+v 0.613984 -2.357329 -0.153638
+v 0.604801 -2.307184 -0.103648
+v 0.777200 -2.292602 -0.153653
+v 0.749527 -2.249788 -0.103661
+v 0.903220 -2.170341 -0.153672
+v 0.861273 -2.141378 -0.103678
+v 0.972862 -2.009162 -0.153692
+v 0.923026 -1.998456 -0.103696
+v 0.975521 -1.833601 -0.153711
+v 0.925384 -1.842782 -0.103713
+v 0.910794 -1.670386 -0.153726
+v 0.867989 -1.698055 -0.103726
+v -1.060353 -3.345630 0.204984
+v -1.016532 -3.320005 0.254971
+v -1.041822 -3.392878 0.254983
+v -1.570837 -3.656546 0.255072
+v -1.528143 -3.630547 0.205069
+v -1.502132 -3.673239 0.255068
+v -2.271708 -2.409487 0.998533
+v -2.297719 -2.366796 0.948534
+v -2.314412 -2.435501 0.948545
+v -2.011359 -2.836940 0.998565
+v -2.063372 -2.751543 0.998559
+v -2.080070 -2.820255 0.948575
+v -1.693160 -2.055452 0.948431
+v -1.771232 -2.046128 0.948438
+v -1.736068 -2.083245 0.998434
+v -1.346646 -2.431018 0.948448
+v -1.399429 -2.348822 0.948442
+v -1.444405 -2.374549 0.998445
+v -1.389811 -2.458373 0.998451
+v -1.016463 -3.319910 0.948536
+v -1.060274 -3.345521 0.998539
+v -1.041752 -3.392783 0.948549
+v -1.399498 -2.348917 0.254876
+v -1.346716 -2.431113 0.254882
+v -1.389890 -2.458482 0.204895
+v -1.444485 -2.374657 0.204889
+v -1.736147 -2.083354 0.204879
+v -1.771301 -2.046223 0.254872
+v -1.693230 -2.055547 0.254865
+v -2.297789 -2.366891 0.254969
+v -2.271788 -2.409596 0.204977
+v -2.314481 -2.435596 0.254980
+v -2.011439 -2.837049 0.205009
+v -2.080139 -2.820350 0.255009
+v -2.063452 -2.751652 0.205003
+v -1.502062 -3.673144 0.948633
+v -1.528064 -3.630438 0.998625
+v -1.570767 -3.656451 0.948638
+v -1.348403 -1.866594 0.998360
+v -1.361625 -1.817128 0.948359
+v -1.394533 -1.888845 0.948372
+v -1.299149 -2.294082 0.948424
+v -1.254454 -2.380092 0.948434
+v -1.207637 -2.357483 0.998422
+v -1.253742 -2.268757 0.998412
+v -0.837620 -1.600145 0.948287
+v -0.913069 -1.584042 0.948290
+v -0.882227 -1.624352 0.998289
+v -0.537516 -2.008236 0.948324
+v -0.582776 -1.921137 0.948315
+v -0.628544 -1.943881 0.998317
+v -0.582439 -2.032607 0.998326
+v -0.913122 -1.584144 0.254725
+v -0.837673 -1.600247 0.254721
+v -0.882287 -1.624469 0.204733
+v -0.537569 -2.008338 0.254759
+v -0.582500 -2.032724 0.204771
+v -0.628605 -1.943998 0.204761
+v -0.582829 -1.921239 0.254749
+v -1.361678 -1.817230 0.254794
+v -1.348464 -1.866711 0.204805
+v -1.394586 -1.888948 0.254807
+v -1.254508 -2.380194 0.254868
+v -1.299201 -2.294184 0.254859
+v -1.253803 -2.268874 0.204857
+v -1.207698 -2.357600 0.204866
+v -0.900068 -2.705358 0.948454
+v -0.932952 -2.666099 0.998446
+v -0.977670 -2.691066 0.948458
+v -0.933012 -2.666215 0.204891
+v -0.900121 -2.705460 0.254889
+v -0.977723 -2.691168 0.254893
+v -0.466836 -2.423973 0.204819
+v -0.421375 -2.401378 0.254808
+v -0.451565 -2.472374 0.254820
+v -0.451512 -2.472272 0.948386
+v -0.421322 -2.401276 0.948373
+v -0.466775 -2.423856 0.998375
+v -1.001296 -2.662533 0.174448
+v -1.040324 -2.629746 0.124451
+v -0.916731 -2.508658 0.174419
+v -0.965339 -2.493302 0.124426
+v -0.897488 -2.334135 0.174392
+v -0.948275 -2.338547 0.124402
+v -0.946497 -2.165532 0.174371
+v -0.991733 -2.189044 0.124383
+v -1.056298 -2.028518 0.174359
+v -1.089095 -2.067550 0.124372
+v -1.210172 -1.943953 0.174358
+v -1.225540 -1.992564 0.124372
+v -1.384696 -1.924710 0.174369
+v -1.380294 -1.975501 0.124381
+v -1.553298 -1.973719 0.174389
+v -1.529798 -2.018959 0.124399
+v -1.690312 -2.083519 0.174416
+v -1.651291 -2.116321 0.124423
+v -1.774878 -2.237394 0.174445
+v -1.726277 -2.252765 0.124448
+v -1.794120 -2.411918 0.174472
+v -1.743340 -2.407520 0.124473
+v -1.745111 -2.580521 0.174493
+v -1.699883 -2.557024 0.124491
+v -1.635311 -2.717534 0.174505
+v -1.602520 -2.678517 0.124502
+v -1.481436 -2.802099 0.174506
+v -1.466076 -2.753503 0.124502
+v -1.306912 -2.821342 0.174495
+v -1.311322 -2.770566 0.124493
+v -1.138310 -2.772333 0.174475
+v -1.161817 -2.727108 0.124475
+v -1.001230 -2.662405 1.045454
+v -1.040250 -2.629603 1.095447
+v -0.916664 -2.508530 1.045425
+v -0.965264 -2.493159 1.095421
+v -0.897421 -2.334007 1.045398
+v -0.948201 -2.338404 1.095397
+v -0.946431 -2.165404 1.045377
+v -0.991658 -2.188900 1.095379
+v -1.056231 -2.028390 1.045365
+v -1.089021 -2.067407 1.095368
+v -1.210105 -1.943825 1.045364
+v -1.225465 -1.992421 1.095368
+v -1.384629 -1.924582 1.045375
+v -1.380220 -1.975358 1.095377
+v -1.553232 -1.973591 1.045395
+v -1.529724 -2.018816 1.095395
+v -1.690246 -2.083391 1.045421
+v -1.651217 -2.116178 1.095418
+v -1.774811 -2.237266 1.045451
+v -1.726203 -2.252622 1.095444
+v -1.794054 -2.411790 1.045478
+v -1.743266 -2.407377 1.095468
+v -1.745044 -2.580392 1.045499
+v -1.699808 -2.556881 1.095487
+v -1.635244 -2.717406 1.045511
+v -1.602446 -2.678374 1.095497
+v -1.481369 -2.801971 1.045511
+v -1.466001 -2.753360 1.095498
+v -1.306846 -2.821214 1.045501
+v -1.311247 -2.770423 1.095489
+v -1.138243 -2.772205 1.045481
+v -1.161743 -2.726965 1.095471
+v -0.781442 -1.536473 0.998249
+v -0.817599 -1.499608 0.948249
+v -0.809907 -1.579568 0.948260
+v -0.444597 -1.943141 0.948311
+v -0.415455 -1.898921 0.998301
+v -0.501117 -1.847344 0.998293
+v -0.526557 -1.893793 0.948304
+v -0.296221 -0.720083 0.948147
+v -0.371874 -0.759320 0.948152
+v -0.319081 -0.768553 0.998149
+v 0.240338 -0.799233 0.948162
+v 0.163966 -0.753250 0.948155
+v 0.128976 -0.800846 0.998156
+v 0.214637 -0.852422 0.998164
+v 0.484958 -1.190427 0.948216
+v 0.452809 -1.233305 0.998217
+v 0.485677 -1.275647 0.948228
+v 0.485681 -1.275741 0.254662
+v 0.452814 -1.233412 0.204661
+v 0.484963 -1.190521 0.254651
+v 0.163970 -0.753343 0.254589
+v 0.240343 -0.799327 0.254596
+v 0.214643 -0.852529 0.204608
+v 0.128981 -0.800953 0.204601
+v -0.371870 -0.759413 0.254586
+v -0.296216 -0.720177 0.254582
+v -0.319075 -0.768660 0.204593
+v -0.817594 -1.499702 0.254683
+v -0.781436 -1.536580 0.204693
+v -0.809902 -1.579661 0.254694
+v -0.501111 -1.847451 0.204737
+v -0.415449 -1.899028 0.204745
+v -0.444592 -1.943234 0.254746
+v -0.526552 -1.893887 0.254738
+v -0.009552 -2.001224 0.998317
+v -0.034315 -2.046548 0.948328
+v 0.039952 -2.015936 0.948325
+v -0.009547 -2.001331 0.204762
+v 0.039957 -2.016030 0.254759
+v -0.034310 -2.046642 0.254763
+v -0.048074 -1.997944 0.174314
+v -0.098481 -1.990371 0.124317
+v -0.056339 -1.822558 0.174290
+v -0.105810 -1.834852 0.124296
+v -0.131092 -1.663684 0.174268
+v -0.172096 -1.693975 0.124277
+v -0.260954 -1.545511 0.174251
+v -0.287247 -1.589188 0.124262
+v -0.426153 -1.486030 0.174242
+v -0.433733 -1.536444 0.124254
+v -0.601539 -1.494295 0.174242
+v -0.589252 -1.543773 0.124254
+v -0.760413 -1.569048 0.174251
+v -0.730129 -1.610059 0.124262
+v -0.878586 -1.698909 0.174268
+v -0.834915 -1.725209 0.124276
+v -0.938068 -1.864109 0.174289
+v -0.887659 -1.871696 0.124296
+v -0.929803 -2.039495 0.174313
+v -0.880331 -2.027215 0.124317
+v -0.855049 -2.198368 0.174335
+v -0.814045 -2.168092 0.124336
+v -0.725188 -2.316541 0.174352
+v -0.698894 -2.272878 0.124351
+v -0.559989 -2.376023 0.174361
+v -0.552408 -2.325622 0.124359
+v -0.384602 -2.367758 0.174361
+v -0.396889 -2.318293 0.124360
+v -0.225729 -2.293005 0.174352
+v -0.256012 -2.252008 0.124352
+v -0.107556 -2.163143 0.174336
+v -0.151225 -2.136857 0.124337
+v -0.048080 -1.997827 1.045320
+v -0.098488 -1.990240 1.095313
+v -0.056345 -1.822440 1.045296
+v -0.105817 -1.834720 1.095292
+v -0.131099 -1.663567 1.045274
+v -0.172103 -1.693844 1.095273
+v -0.260960 -1.545394 1.045257
+v -0.287254 -1.589057 1.095258
+v -0.426159 -1.485912 1.045248
+v -0.433739 -1.536313 1.095250
+v -0.601546 -1.494177 1.045248
+v -0.589259 -1.543642 1.095250
+v -0.760419 -1.568931 1.045257
+v -0.730136 -1.609927 1.095258
+v -0.878592 -1.698792 1.045273
+v -0.834922 -1.725078 1.095272
+v -0.938074 -1.863991 1.045295
+v -0.887666 -1.871565 1.095292
+v -0.929809 -2.039378 1.045319
+v -0.880337 -2.027084 1.095313
+v -0.855055 -2.198251 1.045341
+v -0.814052 -2.167961 1.095332
+v -0.725194 -2.316424 1.045358
+v -0.698901 -2.272747 1.095347
+v -0.559995 -2.375905 1.045367
+v -0.552415 -2.325491 1.095355
+v -0.384608 -2.367640 1.045367
+v -0.396895 -2.318162 1.095355
+v -0.225735 -2.292887 1.045358
+v -0.256019 -2.251877 1.095347
+v -0.107562 -2.163026 1.045341
+v -0.151232 -2.136725 1.095333
+v 1.101291 -1.320538 -0.840761
+v 1.101338 -1.320351 0.842595
+v 1.328752 -0.322680 -0.840879
+v 1.328800 -0.322493 0.842477
+v -0.812620 -1.086104 1.078133
+v -0.774987 -1.145960 1.078138
+v -0.763874 -1.097209 1.128127
+v 1.092597 -1.540862 1.083054
+v 1.048288 -1.510291 1.128122
+v 1.037175 -1.559042 1.078133
+v -0.390346 0.766387 1.077915
+v -0.341599 0.755281 1.127910
+v -0.330490 0.804020 1.077909
+v 1.148749 0.415557 1.127905
+v 1.204215 0.412422 1.077909
+v 1.136237 0.469680 1.077904
+v -0.341664 0.755031 -1.126456
+v -0.390407 0.766147 -1.076461
+v -0.330551 0.803781 -1.076466
+v 1.204154 0.412182 -1.076467
+v 1.148685 0.415306 -1.126460
+v 1.136176 0.469441 -1.076471
+v -0.812681 -1.086343 -1.076243
+v -0.763938 -1.097460 -1.126238
+v -0.775048 -1.146199 -1.076237
+v 1.092535 -1.541102 -1.081172
+v 1.037114 -1.559281 -1.076243
+v 1.048224 -1.510542 -1.126243
+v -0.590372 -0.111114 1.078018
+v -0.612594 -0.208603 1.078029
+v -0.552737 -0.170964 1.128018
+v 1.413212 -0.134345 1.082889
+v 1.400655 -0.058908 1.077956
+v 1.367592 -0.109526 1.127957
+v -0.612655 -0.208842 -1.076346
+v -0.590433 -0.111353 -1.076357
+v -0.552801 -0.171215 -1.126347
+v 1.413150 -0.134586 -1.081337
+v 1.367528 -0.109777 -1.126408
+v 1.400594 -0.059147 -1.076420
+v 1.100138 -1.507749 -1.029862
+v 1.117414 -1.431964 -0.988271
+v 1.106303 -1.480703 -0.938270
+v 1.198971 -1.464120 -0.953286
+v 1.142056 -1.488853 -0.938271
+v 1.153166 -1.440113 -0.988271
+v 1.100197 -1.507520 1.031738
+v 1.106357 -1.480494 0.940139
+v 1.117470 -1.431744 0.990128
+v 1.199025 -1.463908 0.955146
+v 1.153222 -1.439894 0.990128
+v 1.142109 -1.488644 0.940139
+v 1.405550 -0.167928 -1.030020
+v 1.399390 -0.194954 -0.938422
+v 1.388277 -0.243704 -0.988411
+v 1.476037 -0.248652 -0.951260
+v 1.424030 -0.251854 -0.988411
+v 1.435142 -0.203103 -0.938422
+v 1.405608 -0.167699 1.031580
+v 1.388333 -0.243484 0.989989
+v 1.399443 -0.194745 0.939988
+v 1.476091 -0.248440 0.952834
+v 1.435196 -0.202895 0.939988
+v 1.424086 -0.251634 0.989988
+v 1.176515 -1.337685 -0.840762
+v 1.217021 -1.384940 -0.876028
+v 1.176563 -1.337498 0.842595
+v 1.217070 -1.384745 0.877869
+v 1.403976 -0.339827 -0.840879
+v 1.460651 -0.316149 -0.878422
+v 1.404024 -0.339640 0.842477
+v 1.460701 -0.315953 0.880012
+v 1.101311 -1.320460 -0.140785
+v 1.328772 -0.322604 -0.154878
+v 0.976904 -1.372967 -0.082841
+v 1.232440 -0.251950 -0.082973
+v 1.232435 -0.251966 -0.229564
+v 0.976900 -1.372984 -0.229432
+v 1.066980 -1.393808 -0.229432
+v 1.322578 -0.272514 -0.229564
+v 1.322582 -0.272498 -0.082973
+v 1.066984 -1.393792 -0.082841
+v 1.127923 -1.407487 -0.082842
+v 1.163856 -1.384820 -0.112842
+v 1.383479 -0.286379 -0.082973
+v 1.406058 -0.322296 -0.112967
+v 1.383474 -0.286396 -0.229564
+v 1.406055 -0.322306 -0.199564
+v 1.127918 -1.407503 -0.229433
+v 1.163853 -1.384830 -0.199439
+v 1.276700 -0.478829 0.912138
+v 1.299397 -0.379261 0.912127
+v 1.299366 -0.379382 -0.172101
+v 1.276670 -0.478949 -0.172089
+v 1.363652 -0.467886 0.882137
+v 1.327739 -0.490463 0.912138
+v 1.373015 -0.426813 0.882133
+v 1.350435 -0.390896 0.912126
+v 1.372985 -0.426926 -0.142101
+v 1.350405 -0.391016 -0.172101
+v 1.363623 -0.468000 -0.142096
+v 1.327708 -0.490584 -0.172089
+v 1.231308 -0.677964 0.912162
+v 1.254004 -0.578396 0.912150
+v 1.253973 -0.578517 -0.172078
+v 1.231277 -0.678084 -0.172066
+v 1.318259 -0.667021 0.882161
+v 1.282346 -0.689598 0.912162
+v 1.327622 -0.625947 0.882156
+v 1.305043 -0.590030 0.912150
+v 1.327593 -0.626061 -0.142077
+v 1.305012 -0.590151 -0.172078
+v 1.318230 -0.667135 -0.142072
+v 1.282316 -0.689718 -0.172066
+v 1.185915 -0.877098 0.912185
+v 1.208611 -0.777531 0.912173
+v 1.208580 -0.777651 -0.172054
+v 1.185884 -0.877219 -0.172042
+v 1.272866 -0.866156 0.882184
+v 1.236954 -0.888733 0.912185
+v 1.282229 -0.825082 0.882179
+v 1.259650 -0.789165 0.912173
+v 1.282200 -0.825196 -0.142054
+v 1.259619 -0.789286 -0.172054
+v 1.272837 -0.866270 -0.142049
+v 1.236923 -0.888853 -0.172043
+v 1.140522 -1.076233 0.912209
+v 1.163219 -0.976666 0.912197
+v 1.163188 -0.976786 -0.172031
+v 1.140491 -1.076354 -0.172019
+v 1.227473 -1.065291 0.882208
+v 1.191561 -1.087867 0.912208
+v 1.236836 -1.024217 0.882203
+v 1.214257 -0.988300 0.912197
+v 1.236807 -1.024331 -0.142031
+v 1.214226 -0.988420 -0.172031
+v 1.227445 -1.065405 -0.142026
+v 1.191530 -1.087988 -0.172019
+v 1.095129 -1.275368 0.912232
+v 1.117826 -1.175801 0.912220
+v 1.117795 -1.175921 -0.172007
+v 1.095099 -1.275489 -0.171996
+v 1.182081 -1.264426 0.882231
+v 1.146168 -1.287002 0.912232
+v 1.191444 -1.223352 0.882226
+v 1.168864 -1.187435 0.912220
+v 1.191414 -1.223466 -0.142007
+v 1.168834 -1.187555 -0.172007
+v 1.182052 -1.264539 -0.142002
+v 1.146137 -1.287123 -0.171996
+v 0.779637 -0.777131 -0.735993
+v 0.798640 -0.693764 -0.678875
+v 0.811339 -0.638055 -0.593383
+v 0.815801 -0.618485 -0.492533
+v 0.811345 -0.638032 -0.391678
+v 0.798651 -0.693723 -0.306173
+v 0.779650 -0.777076 -0.249035
+v 0.757237 -0.875404 -0.228962
+v 0.734822 -0.973737 -0.249012
+v 0.715818 -1.057103 -0.306130
+v 0.703119 -1.112812 -0.391622
+v 0.698658 -1.132382 -0.492472
+v 0.703113 -1.112835 -0.593327
+v 0.715808 -1.057144 -0.678832
+v 0.734808 -0.973791 -0.735970
+v 0.757222 -0.875463 -0.756042
+v 1.286091 -0.892577 -0.735995
+v 1.305094 -0.809211 -0.678876
+v 1.317794 -0.753501 -0.593384
+v 1.322255 -0.733931 -0.492534
+v 1.317799 -0.753479 -0.391680
+v 1.305105 -0.809169 -0.306174
+v 1.286105 -0.892522 -0.249036
+v 1.263691 -0.990850 -0.228964
+v 1.241276 -1.089183 -0.249013
+v 1.222273 -1.172549 -0.306132
+v 1.209574 -1.228258 -0.391624
+v 1.205112 -1.247829 -0.492474
+v 1.209568 -1.228281 -0.593328
+v 1.222262 -1.172590 -0.678833
+v 1.241262 -1.089237 -0.735972
+v 1.263676 -0.990909 -0.756044
+v 1.280462 -0.917271 -0.674828
+v 1.294692 -0.854847 -0.632058
+v 1.304201 -0.813133 -0.568042
+v 1.307541 -0.798478 -0.492527
+v 1.304205 -0.813116 -0.417007
+v 1.294700 -0.854816 -0.352982
+v 1.280472 -0.917231 -0.310197
+v 1.263689 -0.990858 -0.295167
+v 1.246905 -1.064488 -0.310180
+v 1.232675 -1.126912 -0.352950
+v 1.223166 -1.168627 -0.416966
+v 1.219826 -1.183281 -0.492481
+v 1.223162 -1.168644 -0.568000
+v 1.232667 -1.126943 -0.632026
+v 1.246895 -1.064529 -0.674811
+v 1.263678 -0.990902 -0.689841
+v 1.251975 -0.910778 -0.674828
+v 1.266205 -0.848354 -0.632058
+v 1.275714 -0.806639 -0.568042
+v 1.279054 -0.791985 -0.492527
+v 1.275718 -0.806622 -0.417007
+v 1.266213 -0.848322 -0.352982
+v 1.251985 -0.910737 -0.310197
+v 1.235202 -0.984364 -0.295167
+v 1.218418 -1.057995 -0.310180
+v 1.204188 -1.120419 -0.352950
+v 1.194679 -1.162133 -0.416965
+v 1.191339 -1.176787 -0.492481
+v 1.194675 -1.162150 -0.568000
+v 1.204180 -1.120450 -0.632026
+v 1.218408 -1.058035 -0.674810
+v 1.235191 -0.984408 -0.689840
+v 0.998470 -0.384884 -0.817801
+v 1.011989 -0.325577 -0.777167
+v 1.021023 -0.285945 -0.716348
+v 1.024197 -0.272023 -0.644603
+v 1.021027 -0.285929 -0.572855
+v 1.011996 -0.325547 -0.512026
+v 0.998480 -0.384845 -0.471378
+v 0.982534 -0.454795 -0.457099
+v 0.966588 -0.524749 -0.471362
+v 0.953069 -0.584056 -0.511996
+v 0.944035 -0.623688 -0.572815
+v 0.940861 -0.637610 -0.644560
+v 0.944031 -0.623704 -0.716308
+v 0.953062 -0.584086 -0.777136
+v 0.966579 -0.524788 -0.817784
+v 0.982524 -0.454837 -0.832064
+v 1.358762 -0.467012 -0.817802
+v 1.372281 -0.407705 -0.777168
+v 1.381315 -0.368074 -0.716349
+v 1.384489 -0.354151 -0.644604
+v 1.381319 -0.368057 -0.572856
+v 1.372289 -0.407676 -0.512028
+v 1.358772 -0.466973 -0.471379
+v 1.342827 -0.536924 -0.457100
+v 1.326881 -0.606878 -0.471363
+v 1.313362 -0.666185 -0.511997
+v 1.304327 -0.705816 -0.572816
+v 1.301154 -0.719738 -0.644561
+v 1.304323 -0.705832 -0.716309
+v 1.313354 -0.666214 -0.777137
+v 1.326871 -0.606916 -0.817786
+v 1.342816 -0.536966 -0.832065
+v 1.354758 -0.484580 -0.774288
+v 1.364881 -0.440171 -0.743861
+v 1.371645 -0.410495 -0.698321
+v 1.374022 -0.400070 -0.644599
+v 1.371648 -0.410483 -0.590874
+v 1.364886 -0.440149 -0.545326
+v 1.354765 -0.484551 -0.514889
+v 1.342825 -0.536929 -0.504197
+v 1.330885 -0.589310 -0.514877
+v 1.320762 -0.633719 -0.545303
+v 1.313997 -0.663394 -0.590844
+v 1.311621 -0.673819 -0.644566
+v 1.313994 -0.663406 -0.698291
+v 1.320756 -0.633741 -0.743838
+v 1.330878 -0.589339 -0.774275
+v 1.342817 -0.536960 -0.784968
+v 1.316088 -0.475765 -0.774288
+v 1.326211 -0.431357 -0.743861
+v 1.332976 -0.401681 -0.698320
+v 1.335352 -0.391256 -0.644598
+v 1.332979 -0.401669 -0.590874
+v 1.326217 -0.431334 -0.545326
+v 1.316095 -0.475736 -0.514889
+v 1.304156 -0.528114 -0.504197
+v 1.292215 -0.580495 -0.514877
+v 1.282092 -0.624904 -0.545303
+v 1.275328 -0.654580 -0.590844
+v 1.272951 -0.665005 -0.644566
+v 1.275325 -0.654592 -0.698291
+v 1.282087 -0.624926 -0.743838
+v 1.292208 -0.580524 -0.774275
+v 1.304148 -0.528146 -0.784968
+v 1.367183 -0.010016 0.973318
+v 1.362287 0.001777 0.986084
+v 1.411648 0.007742 0.973314
+v 1.418543 0.024429 0.973312
+v 1.406752 0.019534 0.986080
+v 1.205961 0.378211 0.973279
+v 1.210858 0.366422 0.986047
+v 1.267114 0.389075 0.973276
+v 1.250427 0.395969 0.973276
+v 1.255324 0.384180 0.986044
+v 1.210830 0.366312 -0.005834
+v 1.205934 0.378104 0.006932
+v 1.267087 0.388967 0.006929
+v 1.255296 0.384069 -0.005837
+v 1.250399 0.395862 0.006929
+v 1.367155 -0.010123 0.006971
+v 1.362258 0.001666 -0.005798
+v 1.418515 0.024322 0.006965
+v 1.411621 0.007635 0.006967
+v 1.406724 0.019424 -0.005801
+v 1.279687 0.224533 -0.060987
+v 1.327177 0.244254 -0.060991
+v 1.214697 0.381029 -0.061003
+v 1.262188 0.400750 -0.061006
+v 1.214690 0.380998 -0.331312
+v 1.262181 0.400720 -0.331316
+v 1.279679 0.224503 -0.331296
+v 1.327170 0.244224 -0.331300
+v 1.279677 0.224495 -0.399436
+v 1.327168 0.244217 -0.399440
+v 1.214688 0.380991 -0.399452
+v 1.262179 0.400713 -0.399455
+v 1.214680 0.380961 -0.669761
+v 1.262171 0.400683 -0.669764
+v 1.279669 0.224465 -0.669745
+v 1.327160 0.244187 -0.669749
+v 1.279668 0.224459 -0.725425
+v 1.327159 0.244181 -0.725428
+v 1.214679 0.380955 -0.725440
+v 1.262169 0.400676 -0.725444
+v 1.214671 0.380925 -0.995749
+v 1.262162 0.400646 -0.995753
+v 1.279660 0.224429 -0.995734
+v 1.327151 0.244150 -0.995737
+v 1.104523 0.021263 -1.022342
+v 1.086550 0.064550 -0.991031
+v 1.074541 0.093476 -0.944167
+v 1.070325 0.103638 -0.888884
+v 1.074544 0.093489 -0.833600
+v 1.086555 0.064573 -0.786730
+v 1.104530 0.021293 -0.755410
+v 1.125733 -0.029762 -0.744408
+v 1.146935 -0.080820 -0.755400
+v 1.164909 -0.124106 -0.786711
+v 1.176918 -0.153032 -0.833575
+v 1.181133 -0.163194 -0.888858
+v 1.176914 -0.153045 -0.944142
+v 1.164903 -0.124129 -0.991012
+v 1.146928 -0.080849 -1.022332
+v 1.125725 -0.029794 -1.033334
+v 1.367491 0.130467 -1.022362
+v 1.349517 0.173753 -0.991051
+v 1.337508 0.202680 -0.944187
+v 1.333292 0.212842 -0.888904
+v 1.337511 0.202692 -0.833619
+v 1.349523 0.173776 -0.786749
+v 1.367498 0.130497 -0.755430
+v 1.388701 0.079442 -0.744428
+v 1.409903 0.028384 -0.755419
+v 1.427876 -0.014903 -0.786731
+v 1.439885 -0.043829 -0.833595
+v 1.444101 -0.053991 -0.888877
+v 1.439882 -0.043841 -0.944162
+v 1.427871 -0.014925 -0.991032
+v 1.409895 0.028354 -1.022352
+v 1.388693 0.079410 -1.033354
+v 1.372818 0.117645 -0.988833
+v 1.359359 0.150058 -0.965387
+v 1.350367 0.171717 -0.930296
+v 1.347210 0.179327 -0.888901
+v 1.350369 0.171727 -0.847504
+v 1.359364 0.150075 -0.812408
+v 1.372823 0.117667 -0.788956
+v 1.388700 0.079438 -0.780718
+v 1.404576 0.041206 -0.788948
+v 1.418034 0.008793 -0.812394
+v 1.427026 -0.012866 -0.847486
+v 1.430183 -0.020475 -0.888881
+v 1.427024 -0.012876 -0.930277
+v 1.418030 0.008776 -0.965373
+v 1.404570 0.041184 -0.988825
+v 1.388694 0.079414 -0.997063
+v 1.427038 0.140161 -0.988837
+v 1.413579 0.172574 -0.965391
+v 1.404587 0.194234 -0.930300
+v 1.401430 0.201843 -0.888905
+v 1.404590 0.194243 -0.847508
+v 1.413584 0.172591 -0.812412
+v 1.427043 0.140183 -0.788960
+v 1.442920 0.101954 -0.780722
+v 1.458796 0.063722 -0.788952
+v 1.472254 0.031310 -0.812398
+v 1.481246 0.009650 -0.847490
+v 1.484403 0.002041 -0.888885
+v 1.481244 0.009641 -0.930281
+v 1.472250 0.031293 -0.965377
+v 1.458790 0.063700 -0.988829
+v 1.442914 0.101930 -0.997067
+v -1.495636 -0.311533 0.989044
+v -1.458003 -0.371389 0.989050
+v -1.446890 -0.322639 1.039039
+v -0.635993 -0.558766 0.989047
+v -0.576137 -0.521133 0.989042
+v -0.624880 -0.510016 1.039037
+v -1.167560 0.902765 0.988900
+v -1.227416 0.865132 0.988906
+v -1.178670 0.854026 1.038901
+v -0.307916 0.655532 0.988903
+v -0.345549 0.715388 0.988898
+v -0.356659 0.666649 1.038898
+v -1.178728 0.853796 -1.037421
+v -1.227472 0.864912 -0.987426
+v -1.167616 0.902546 -0.987432
+v -0.307972 0.655313 -0.987429
+v -0.356718 0.666419 -1.037424
+v -0.345605 0.715169 -0.987435
+v -1.458059 -0.371609 -0.987282
+v -1.495692 -0.311753 -0.987288
+v -1.446949 -0.322870 -1.037283
+v -0.576193 -0.521353 -0.987291
+v -0.636049 -0.558986 -0.987285
+v -0.624939 -0.510247 -1.037286
+v -0.319824 1.832872 -0.416676
+v -0.368612 1.844002 -0.341782
+v -0.441632 1.860653 -0.291739
+v -0.527765 1.880289 -0.274166
+v -0.613899 1.899921 -0.291738
+v -0.686922 1.916561 -0.341780
+v -0.735715 1.927674 -0.416674
+v -0.752850 1.931570 -0.505017
+v -0.735720 1.927655 -0.593361
+v -0.686931 1.916525 -0.668255
+v -0.613912 1.899874 -0.718297
+v -0.527778 1.880238 -0.735870
+v -0.441644 1.860606 -0.718298
+v -0.368622 1.843966 -0.668256
+v -0.319829 1.832852 -0.593362
+v -0.302693 1.828957 -0.505019
+v -0.656783 0.354653 -0.416502
+v -0.705572 0.365783 -0.341608
+v -0.778591 0.382434 -0.291565
+v -0.864725 0.402070 -0.273992
+v -0.950859 0.421702 -0.291564
+v -1.023881 0.438342 -0.341607
+v -1.072674 0.449455 -0.416500
+v -1.089810 0.453351 -0.504843
+v -1.072679 0.449436 -0.593187
+v -1.023890 0.438305 -0.668081
+v -0.950871 0.421655 -0.718123
+v -0.864738 0.402019 -0.735696
+v -0.778604 0.382387 -0.718124
+v -0.705581 0.365747 -0.668082
+v -0.656788 0.354633 -0.593188
+v -0.639653 0.350738 -0.504845
+v -0.313476 2.237765 -0.505064
+v -0.331111 2.230227 -0.416719
+v -0.331116 2.230207 -0.593406
+v -0.381348 2.208703 -0.668296
+v -0.456522 2.176528 -0.718333
+v -0.545196 2.138578 -0.735899
+v -0.633868 2.100632 -0.718319
+v -0.709040 2.068468 -0.668271
+v -0.759268 2.046980 -0.593373
+v -0.776903 2.039442 -0.505029
+v -0.759263 2.047000 -0.416687
+v -0.709031 2.068504 -0.341797
+v -0.633856 2.100680 -0.291760
+v -0.545183 2.138629 -0.274194
+v -0.456510 2.176575 -0.291774
+v -0.381338 2.208739 -0.341822
+v -0.660612 2.609242 -0.505095
+v -0.665461 2.587971 -0.416750
+v -0.665466 2.587952 -0.593436
+v -0.679282 2.527342 -0.668323
+v -0.699954 2.436654 -0.718355
+v -0.724332 2.329712 -0.735915
+v -0.748694 2.222838 -0.718329
+v -0.769318 2.132358 -0.668276
+v -0.783062 2.072064 -0.593376
+v -0.787871 2.050968 -0.505029
+v -0.783057 2.072084 -0.416689
+v -0.769309 2.132394 -0.341802
+v -0.748681 2.222886 -0.291770
+v -0.724318 2.329764 -0.274210
+v -0.699942 2.436701 -0.291796
+v -0.679273 2.527379 -0.341849
+v -0.671245 2.562597 -0.505090
+v -0.675283 2.544880 -0.431507
+v -0.675288 2.544863 -0.578668
+v -0.686795 2.494383 -0.641041
+v -0.704013 2.418849 -0.682712
+v -0.724316 2.329778 -0.697338
+v -0.744607 2.240763 -0.682691
+v -0.761786 2.165401 -0.641002
+v -0.773233 2.115185 -0.578618
+v -0.777238 2.097614 -0.505035
+v -0.773228 2.115201 -0.431457
+v -0.761778 2.165432 -0.369084
+v -0.744597 2.240803 -0.327413
+v -0.724306 2.329821 -0.312787
+v -0.704003 2.418889 -0.327434
+v -0.686787 2.494413 -0.369123
+v -0.346413 2.212333 -0.505060
+v -0.360819 2.206240 -0.441729
+v -0.360823 2.206225 -0.568389
+v -0.401854 2.188846 -0.622074
+v -0.463253 2.162844 -0.657943
+v -0.535657 2.132184 -0.670535
+v -0.608017 2.101544 -0.657932
+v -0.669281 2.075606 -0.622054
+v -0.710106 2.058324 -0.568363
+v -0.724394 2.052281 -0.505032
+v -0.710102 2.058339 -0.441703
+v -0.669274 2.075633 -0.388017
+v -0.608008 2.101578 -0.352148
+v -0.535647 2.132221 -0.339557
+v -0.463244 2.162878 -0.352159
+v -0.401847 2.188872 -0.388038
+v -0.345942 1.841069 -0.505019
+v -0.359835 1.844192 -0.441689
+v -0.359838 1.844178 -0.568349
+v -0.399407 1.853045 -0.622037
+v -0.458618 1.866319 -0.657910
+v -0.528442 1.881975 -0.670507
+v -0.598223 1.897625 -0.657910
+v -0.657303 1.910878 -0.622036
+v -0.696674 1.919713 -0.568348
+v -0.710453 1.922810 -0.505017
+v -0.696670 1.919727 -0.441688
+v -0.657297 1.910904 -0.387999
+v -0.598215 1.897659 -0.352126
+v -0.528432 1.882012 -0.339529
+v -0.458609 1.866352 -0.352127
+v -0.399401 1.853071 -0.388000
+v -0.468268 1.304431 -0.504956
+v -0.482161 1.307554 -0.441626
+v -0.482165 1.307541 -0.568286
+v -0.521734 1.316407 -0.621974
+v -0.580944 1.329681 -0.657847
+v -0.650768 1.345338 -0.670444
+v -0.720550 1.360988 -0.657847
+v -0.779630 1.374241 -0.621973
+v -0.819001 1.383076 -0.568285
+v -0.832780 1.386173 -0.504954
+v -0.818997 1.383090 -0.441625
+v -0.779623 1.374267 -0.387936
+v -0.720541 1.361022 -0.352063
+v -0.650759 1.345375 -0.339466
+v -0.580936 1.329715 -0.352063
+v -0.521727 1.316433 -0.387937
+v -0.648498 0.391000 -0.416506
+v -0.697373 0.401752 -0.341612
+v -0.770520 0.417843 -0.291569
+v -0.856803 0.436825 -0.273996
+v -0.943085 0.455807 -0.291568
+v -1.016232 0.471901 -0.341610
+v -1.065106 0.482654 -0.416504
+v -1.082269 0.486431 -0.504847
+v -1.065107 0.482657 -0.593191
+v -1.016231 0.471906 -0.668085
+v -0.943084 0.455814 -0.718127
+v -0.856802 0.436832 -0.735700
+v -0.770520 0.417850 -0.718128
+v -0.697373 0.401757 -0.668086
+v -0.648498 0.391003 -0.593193
+v -0.631335 0.387226 -0.504849
+v -0.648498 0.391000 -0.416506
+v -0.697373 0.401752 -0.341612
+v -0.770520 0.417843 -0.291569
+v -0.856803 0.436825 -0.273996
+v -0.943085 0.455807 -0.291568
+v -1.016232 0.471901 -0.341610
+v -1.065106 0.482654 -0.416504
+v -1.082269 0.486431 -0.504847
+v -1.065107 0.482657 -0.593191
+v -1.016231 0.471906 -0.668085
+v -0.943084 0.455814 -0.718127
+v -0.856802 0.436832 -0.735700
+v -0.770520 0.417850 -0.718128
+v -0.697373 0.401757 -0.668086
+v -0.648498 0.391003 -0.593193
+v -0.631335 0.387226 -0.504849
+v -0.679212 2.620039 -0.505096
+v -0.684061 2.598768 -0.416750
+v -0.689845 2.573394 -0.505091
+v -0.693883 2.555677 -0.431508
+v -0.684066 2.598749 -0.593437
+v -0.693888 2.555660 -0.578669
+v -0.697882 2.538139 -0.668323
+v -0.705395 2.505180 -0.641042
+v -0.718554 2.447451 -0.718355
+v -0.722613 2.429646 -0.682713
+v -0.742931 2.340510 -0.735915
+v -0.742916 2.340575 -0.697339
+v -0.767293 2.233636 -0.718330
+v -0.763207 2.251560 -0.682692
+v -0.787918 2.143155 -0.668277
+v -0.780386 2.176198 -0.641003
+v -0.801662 2.082861 -0.593376
+v -0.791833 2.125982 -0.578619
+v -0.806471 2.061765 -0.505030
+v -0.795838 2.108411 -0.505036
+v -0.801657 2.082881 -0.416690
+v -0.791828 2.125998 -0.431457
+v -0.787909 2.143191 -0.341803
+v -0.780378 2.176229 -0.369085
+v -0.767281 2.233683 -0.291771
+v -0.763197 2.251600 -0.327413
+v -0.742918 2.340562 -0.274211
+v -0.742905 2.340618 -0.312788
+v -0.718542 2.447498 -0.291796
+v -0.722603 2.429686 -0.327434
+v -0.697872 2.538176 -0.341850
+v -0.705387 2.505210 -0.369124
+v -0.319795 1.832983 0.578355
+v -0.368584 1.844113 0.653249
+v -0.441604 1.860764 0.703292
+v -0.527737 1.880400 0.720865
+v -0.613871 1.900032 0.703293
+v -0.686893 1.916671 0.653251
+v -0.735686 1.927785 0.578357
+v -0.752822 1.931681 0.490014
+v -0.735692 1.927765 0.401670
+v -0.686903 1.916635 0.326776
+v -0.613883 1.899985 0.276734
+v -0.527750 1.880349 0.259161
+v -0.441616 1.860716 0.276733
+v -0.368593 1.844077 0.326775
+v -0.319801 1.832963 0.401669
+v -0.302665 1.829068 0.490012
+v -0.656755 0.354764 0.578529
+v -0.705544 0.365894 0.653423
+v -0.778563 0.382544 0.703466
+v -0.864697 0.402181 0.721039
+v -0.950831 0.421813 0.703466
+v -1.023853 0.438452 0.653424
+v -1.072646 0.449566 0.578531
+v -1.089782 0.453462 0.490188
+v -1.072651 0.449546 0.401844
+v -1.023862 0.438416 0.326950
+v -0.950843 0.421766 0.276907
+v -0.864710 0.402130 0.259334
+v -0.778575 0.382497 0.276907
+v -0.705553 0.365858 0.326949
+v -0.656760 0.354744 0.401843
+v -0.639625 0.350849 0.490186
+v -0.313448 2.237876 0.489967
+v -0.331083 2.230338 0.578312
+v -0.331088 2.230318 0.401625
+v -0.381320 2.208814 0.326735
+v -0.456494 2.176638 0.276698
+v -0.545168 2.138689 0.259132
+v -0.633840 2.100743 0.276712
+v -0.709012 2.068578 0.326760
+v -0.759240 2.047091 0.401658
+v -0.776875 2.039552 0.490002
+v -0.759234 2.047111 0.578344
+v -0.709003 2.068615 0.653234
+v -0.633828 2.100790 0.703271
+v -0.545154 2.138740 0.720837
+v -0.456482 2.176686 0.703257
+v -0.381310 2.208850 0.653209
+v -0.660584 2.609352 0.489935
+v -0.665433 2.588082 0.578281
+v -0.665437 2.588062 0.401595
+v -0.679253 2.527454 0.326708
+v -0.699926 2.436764 0.276676
+v -0.724303 2.329823 0.259116
+v -0.748665 2.222949 0.276701
+v -0.769290 2.132468 0.326755
+v -0.783034 2.072175 0.401655
+v -0.787842 2.051078 0.490001
+v -0.783029 2.072195 0.578342
+v -0.769281 2.132504 0.653229
+v -0.748653 2.222997 0.703260
+v -0.724290 2.329875 0.720820
+v -0.699914 2.436811 0.703235
+v -0.679245 2.527490 0.653182
+v -0.671217 2.562707 0.489941
+v -0.675255 2.544991 0.563524
+v -0.675259 2.544974 0.416362
+v -0.686767 2.494493 0.353990
+v -0.703985 2.418959 0.312319
+v -0.724288 2.329888 0.297693
+v -0.744579 2.240874 0.312340
+v -0.761758 2.165512 0.354029
+v -0.773205 2.115295 0.416413
+v -0.777209 2.097724 0.489996
+v -0.773200 2.115312 0.563574
+v -0.761750 2.165543 0.625947
+v -0.744569 2.240914 0.667618
+v -0.724277 2.329931 0.682244
+v -0.703975 2.418999 0.667597
+v -0.686759 2.494524 0.625908
+v -0.346385 2.212444 0.489971
+v -0.360791 2.206351 0.553302
+v -0.360795 2.206336 0.426642
+v -0.401826 2.188957 0.372957
+v -0.463224 2.162954 0.337088
+v -0.535629 2.132294 0.324496
+v -0.607989 2.101655 0.337098
+v -0.669252 2.075717 0.372977
+v -0.710078 2.058435 0.426668
+v -0.724366 2.052391 0.489999
+v -0.710074 2.058449 0.553328
+v -0.669246 2.075743 0.607014
+v -0.607980 2.101689 0.642883
+v -0.535619 2.132331 0.655474
+v -0.463216 2.162989 0.642871
+v -0.401819 2.188982 0.606993
+v -0.345914 1.841180 0.490012
+v -0.359806 1.844303 0.553342
+v -0.359810 1.844289 0.426682
+v -0.399379 1.853155 0.372994
+v -0.458590 1.866429 0.337120
+v -0.528413 1.882086 0.324523
+v -0.598195 1.897736 0.337121
+v -0.657275 1.910989 0.372995
+v -0.696646 1.919824 0.426683
+v -0.710425 1.922921 0.490013
+v -0.696642 1.919838 0.553343
+v -0.657269 1.911015 0.607032
+v -0.598186 1.897770 0.642905
+v -0.528404 1.882123 0.655502
+v -0.458581 1.866463 0.642904
+v -0.399372 1.853182 0.607031
+v -0.468240 1.304542 0.490075
+v -0.482133 1.307665 0.553405
+v -0.482136 1.307651 0.426745
+v -0.521705 1.316518 0.373057
+v -0.580916 1.329792 0.337184
+v -0.650740 1.345448 0.324587
+v -0.720522 1.361098 0.337184
+v -0.779602 1.374351 0.373058
+v -0.818972 1.383186 0.426746
+v -0.832752 1.386284 0.490077
+v -0.818969 1.383200 0.553406
+v -0.779595 1.374377 0.607095
+v -0.720513 1.361132 0.642968
+v -0.650731 1.345485 0.655565
+v -0.580907 1.329826 0.642967
+v -0.521699 1.316544 0.607094
+v -0.648499 0.390984 0.578525
+v -0.697374 0.401735 0.653419
+v -0.770521 0.417826 0.703462
+v -0.856803 0.436808 0.721035
+v -0.943086 0.455791 0.703462
+v -1.016232 0.471884 0.653420
+v -1.065107 0.482637 0.578527
+v -1.082270 0.486415 0.490184
+v -1.065107 0.482640 0.401840
+v -1.016232 0.471889 0.326946
+v -0.943085 0.455798 0.276903
+v -0.856803 0.436816 0.259330
+v -0.770521 0.417833 0.276903
+v -0.697374 0.401740 0.326945
+v -0.648499 0.390987 0.401838
+v -0.631336 0.387209 0.490182
+v -0.648499 0.390984 0.578525
+v -0.697374 0.401735 0.653419
+v -0.770521 0.417826 0.703462
+v -0.856803 0.436808 0.721035
+v -0.943086 0.455791 0.703462
+v -1.016232 0.471884 0.653420
+v -1.065107 0.482637 0.578527
+v -1.082270 0.486415 0.490184
+v -1.065107 0.482640 0.401840
+v -1.016232 0.471889 0.326946
+v -0.943085 0.455798 0.276903
+v -0.856803 0.436816 0.259330
+v -0.770521 0.417833 0.276903
+v -0.697374 0.401740 0.326945
+v -0.648499 0.390987 0.401838
+v -0.631336 0.387209 0.490182
+v -0.679184 2.620150 0.489935
+v -0.684033 2.598879 0.578281
+v -0.689817 2.573504 0.489940
+v -0.693855 2.555788 0.563523
+v -0.684037 2.598859 0.401594
+v -0.693859 2.555771 0.416362
+v -0.697853 2.538251 0.326707
+v -0.705366 2.505291 0.353989
+v -0.718526 2.447561 0.276676
+v -0.722585 2.429756 0.312318
+v -0.742903 2.340621 0.259116
+v -0.742888 2.340686 0.297692
+v -0.767265 2.233746 0.276701
+v -0.763179 2.251671 0.312339
+v -0.787890 2.143265 0.326754
+v -0.780358 2.176309 0.354028
+v -0.801634 2.082972 0.401655
+v -0.791804 2.126092 0.416413
+v -0.806442 2.061876 0.490001
+v -0.795809 2.108521 0.489995
+v -0.801629 2.082992 0.578341
+v -0.791800 2.126109 0.563574
+v -0.787881 2.143302 0.653228
+v -0.780350 2.176340 0.625946
+v -0.767253 2.233794 0.703260
+v -0.763169 2.251711 0.667617
+v -0.742890 2.340672 0.720820
+v -0.742877 2.340728 0.682243
+v -0.718514 2.447608 0.703235
+v -0.722574 2.429796 0.667596
+v -0.697844 2.538287 0.653181
+v -0.705359 2.505321 0.625907
+v 0.118709 0.981493 -0.144974
+v 0.199153 0.963141 -0.268461
+v 0.319549 0.935687 -0.350973
+v 0.461568 0.903310 -0.379948
+v 0.603589 0.870940 -0.350974
+v 0.723990 0.843505 -0.268463
+v 0.804441 0.825180 -0.144976
+v 0.832695 0.818757 0.000686
+v 0.804450 0.825213 0.146349
+v 0.724005 0.843564 0.269837
+v 0.603609 0.871018 0.352349
+v 0.461590 0.903395 0.381323
+v 0.319569 0.935765 0.352349
+v 0.199168 0.963201 0.269838
+v 0.118717 0.981525 0.146352
+v 0.090463 0.987948 0.000689
+v 0.022919 0.561269 -0.144925
+v 0.103363 0.542918 -0.268412
+v 0.223759 0.515464 -0.350924
+v 0.365778 0.483087 -0.379899
+v 0.507799 0.450717 -0.350925
+v 0.628200 0.423281 -0.268414
+v 0.708651 0.404957 -0.144927
+v 0.736905 0.398533 0.000736
+v 0.708660 0.404989 0.146399
+v 0.628216 0.423341 0.269886
+v 0.507819 0.450795 0.352398
+v 0.365800 0.483171 0.381373
+v 0.223779 0.515542 0.352399
+v 0.103378 0.542977 0.269888
+v 0.022927 0.561302 0.146401
+v -0.005326 0.567725 0.000738
+vt 0.495494 0.364128
+vt 0.495483 0.270392
+vt 0.533391 0.270388
+vt 0.533402 0.364124
+vt 0.552064 0.270467
+vt 0.595221 0.270469
+vt 0.595219 0.317337
+vt 0.595218 0.364205
+vt 0.552061 0.364203
+vt 0.060975 0.285684
+vt 0.078954 0.285360
+vt 0.080339 0.362071
+vt 0.006801 0.363399
+vt 0.004996 0.263468
+vt 0.022342 0.266127
+vt 0.013671 0.335827
+vt 0.064369 0.334911
+vt 0.200992 0.335826
+vt 0.192321 0.266127
+vt 0.209667 0.263468
+vt 0.207862 0.363399
+vt 0.134324 0.362071
+vt 0.135710 0.285359
+vt 0.153688 0.285684
+vt 0.150295 0.334911
+vt 0.785604 0.372915
+vt 0.778054 0.416742
+vt 0.768042 0.416743
+vt 0.768036 0.372917
+vt 0.778055 0.422826
+vt 0.785615 0.466651
+vt 0.768048 0.466653
+vt 0.768042 0.422827
+vt 0.741596 0.464066
+vt 0.741584 0.370330
+vt 0.759407 0.370327
+vt 0.759418 0.464064
+vt 0.732646 0.464063
+vt 0.669529 0.464064
+vt 0.669526 0.370328
+vt 0.732642 0.370327
+vt 0.352611 0.359767
+vt 0.258874 0.359764
+vt 0.258878 0.259266
+vt 0.352614 0.259269
+vt 0.973851 0.380402
+vt 0.973842 0.456369
+vt 0.966146 0.474706
+vt 0.887797 0.474697
+vt 0.880106 0.456358
+vt 0.880115 0.380390
+vt 0.084788 0.285254
+vt 0.099406 0.284990
+vt 0.101321 0.361692
+vt 0.086185 0.361965
+vt 0.582981 0.386023
+vt 0.621137 0.386022
+vt 0.659293 0.386021
+vt 0.659295 0.462723
+vt 0.582984 0.462725
+vt 0.115255 0.284990
+vt 0.129875 0.285254
+vt 0.128477 0.361965
+vt 0.113341 0.361692
+vt 0.115387 0.278907
+vt 0.115492 0.273098
+vt 0.130090 0.273361
+vt 0.129985 0.279171
+vt 0.800590 0.372871
+vt 0.800451 0.416786
+vt 0.794641 0.416786
+vt 0.794780 0.372870
+vt 0.624179 0.379939
+vt 0.624179 0.374129
+vt 0.659292 0.374128
+vt 0.659292 0.379938
+vt 0.582981 0.379941
+vt 0.582981 0.374131
+vt 0.618094 0.374130
+vt 0.618095 0.379939
+vt 0.084678 0.279171
+vt 0.084573 0.273361
+vt 0.099170 0.273097
+vt 0.099275 0.278907
+vt 0.794641 0.422782
+vt 0.800451 0.422782
+vt 0.800586 0.466695
+vt 0.794777 0.466695
+vt 0.557936 0.371142
+vt 0.572737 0.377529
+vt 0.572741 0.413684
+vt 0.550607 0.413687
+vt 0.572742 0.419768
+vt 0.572746 0.455923
+vt 0.557947 0.462314
+vt 0.550608 0.419771
+vt 0.539699 0.367165
+vt 0.489001 0.367171
+vt 0.536234 0.364124
+vt 0.536223 0.270388
+vt 0.546042 0.367245
+vt 0.595269 0.367247
+vt 0.539687 0.267345
+vt 0.488989 0.267351
+vt 0.546046 0.267424
+vt 0.595272 0.267426
+vt 0.153901 0.282645
+vt 0.136333 0.282328
+vt 0.598311 0.270469
+vt 0.598309 0.314295
+vt 0.598309 0.320379
+vt 0.598308 0.364205
+vt 0.060761 0.282645
+vt 0.078329 0.282328
+vt 0.022718 0.263107
+vt 0.004896 0.260375
+vt 0.762050 0.464063
+vt 0.762038 0.370327
+vt 0.025350 0.266586
+vt 0.017498 0.329703
+vt 0.191944 0.263107
+vt 0.209767 0.260375
+vt 0.189313 0.266586
+vt 0.197165 0.329703
+vt 0.492817 0.270393
+vt 0.492828 0.364129
+vt 0.001944 0.262956
+vt 0.003759 0.363454
+vt 0.738644 0.464066
+vt 0.738632 0.370330
+vt 0.212719 0.262956
+vt 0.210903 0.363454
+vt 0.207807 0.366441
+vt 0.131839 0.365069
+vt 0.258874 0.362751
+vt 0.352610 0.362754
+vt 0.006856 0.366441
+vt 0.082823 0.365069
+vt 0.101160 0.364737
+vt 0.104125 0.361641
+vt 0.102198 0.284939
+vt 0.965127 0.477671
+vt 0.888816 0.477662
+vt 0.110535 0.361642
+vt 0.112462 0.284940
+vt 0.113501 0.364738
+vt 0.133294 0.279231
+vt 0.133399 0.273421
+vt 0.788643 0.372871
+vt 0.781078 0.416786
+vt 0.112594 0.278857
+vt 0.112699 0.273047
+vt 0.102067 0.278856
+vt 0.101962 0.273047
+vt 0.788655 0.466695
+vt 0.781079 0.422782
+vt 0.081368 0.279231
+vt 0.081263 0.273421
+vt 0.803549 0.422826
+vt 0.803680 0.465369
+vt 0.803549 0.416742
+vt 0.803683 0.374197
+vt 0.618094 0.371143
+vt 0.581939 0.371144
+vt 0.624178 0.371143
+vt 0.660333 0.371142
+vt 0.130596 0.270328
+vt 0.115795 0.270061
+vt 0.084066 0.270328
+vt 0.098865 0.270060
+vt 0.338874 0.970611
+vt 0.341803 0.964314
+vt 0.344893 0.967146
+vt 0.329798 0.970610
+vt 0.326869 0.964314
+vt 0.332887 0.967778
+vt 0.194499 0.332667
+vt 0.020164 0.332667
+vt 0.969346 0.474867
+vt 0.884597 0.474857
+vt 0.663539 0.374179
+vt 0.578733 0.374181
+vt 0.470589 0.374184
+vt 0.542215 0.372176
+vt 0.542212 0.458587
+vt 0.470587 0.458585
+vt 0.914240 0.484706
+vt 0.939416 0.490090
+vt 0.935405 0.555183
+vt 0.915519 0.555542
+vt 0.294669 0.366651
+vt 0.294658 0.451052
+vt 0.275019 0.451050
+vt 0.275030 0.366649
+vt 0.306819 0.369694
+vt 0.332366 0.369691
+vt 0.332376 0.454092
+vt 0.306829 0.454095
+vt 0.268364 0.370336
+vt 0.268366 0.454736
+vt 0.203929 0.454738
+vt 0.203926 0.370337
+vt 0.742414 0.567801
+vt 0.767590 0.562417
+vt 0.766311 0.633253
+vt 0.746425 0.632894
+vt 0.467600 0.458584
+vt 0.467603 0.374184
+vt 0.470641 0.461627
+vt 0.541477 0.461629
+vt 0.915574 0.558583
+vt 0.935213 0.558228
+vt 0.544617 0.458587
+vt 0.544620 0.374186
+vt 0.914103 0.481566
+vt 0.939650 0.487029
+vt 0.297912 0.366651
+vt 0.297902 0.451052
+vt 0.938456 0.555138
+vt 0.942424 0.490701
+vt 0.335149 0.454091
+vt 0.335139 0.369690
+vt 0.294850 0.454094
+vt 0.274964 0.454092
+vt 0.203885 0.457780
+vt 0.268977 0.457778
+vt 0.332130 0.366649
+vt 0.306954 0.366652
+vt 0.470644 0.371142
+vt 0.541480 0.371144
+vt 0.911184 0.483971
+vt 0.303899 0.367684
+vt 0.377839 0.371686
+vt 0.424653 0.371687
+vt 0.424651 0.454251
+vt 0.377836 0.454250
+vt 0.389150 0.746439
+vt 0.409216 0.746077
+vt 0.412049 0.792788
+vt 0.386293 0.793254
+vt 0.062380 0.370339
+vt 0.062370 0.452902
+vt 0.036614 0.452899
+vt 0.036624 0.370336
+vt 0.007996 0.373380
+vt 0.027466 0.373378
+vt 0.027476 0.455941
+vt 0.008006 0.455944
+vt 0.048707 0.459839
+vt 0.048710 0.542403
+vt 0.001999 0.542404
+vt 0.001996 0.459841
+vt 0.069130 0.802869
+vt 0.089196 0.803231
+vt 0.092053 0.850046
+vt 0.066297 0.849580
+vt 0.374850 0.454249
+vt 0.374852 0.371686
+vt 0.377891 0.457291
+vt 0.424705 0.457293
+vt 0.386348 0.796295
+vt 0.412104 0.795830
+vt 0.427758 0.454251
+vt 0.427761 0.371687
+vt 0.389691 0.743387
+vt 0.409161 0.743035
+vt 0.065367 0.370339
+vt 0.065357 0.452902
+vt 0.415090 0.792733
+vt 0.412257 0.746022
+vt 0.030572 0.455941
+vt 0.030562 0.373377
+vt 0.062315 0.455944
+vt 0.036559 0.455941
+vt 0.001944 0.545446
+vt 0.048655 0.545444
+vt 0.027520 0.370336
+vt 0.007454 0.370338
+vt 0.377894 0.368644
+vt 0.424708 0.368645
+vt 0.186915 0.935184
+vt 0.183440 0.935091
+vt 0.183439 0.903489
+vt 0.186914 0.903582
+vt 0.178238 0.935028
+vt 0.178237 0.903426
+vt 0.172101 0.935006
+vt 0.172100 0.903404
+vt 0.165964 0.935028
+vt 0.165963 0.903426
+vt 0.160762 0.935091
+vt 0.160760 0.903489
+vt 0.157285 0.935185
+vt 0.157284 0.903583
+vt 0.248604 0.932810
+vt 0.242468 0.932921
+vt 0.241897 0.901319
+vt 0.248033 0.901208
+vt 0.236332 0.933032
+vt 0.235762 0.901430
+vt 0.231130 0.933126
+vt 0.230560 0.901524
+vt 0.115678 0.935158
+vt 0.110476 0.935220
+vt 0.110477 0.903618
+vt 0.115679 0.903556
+vt 0.104339 0.935242
+vt 0.104340 0.903640
+vt 0.098202 0.935220
+vt 0.098203 0.903618
+vt 0.093000 0.935157
+vt 0.093001 0.903555
+vt 0.089523 0.935063
+vt 0.089524 0.903461
+vt 0.224002 0.934503
+vt 0.217867 0.934392
+vt 0.218437 0.902790
+vt 0.224573 0.902901
+vt 0.211731 0.934281
+vt 0.212302 0.902679
+vt 0.454884 0.933914
+vt 0.448748 0.935134
+vt 0.442612 0.933912
+vt 0.437411 0.930435
+vt 0.433936 0.925233
+vt 0.432716 0.919096
+vt 0.433938 0.912959
+vt 0.437414 0.907757
+vt 0.442616 0.904282
+vt 0.448752 0.903062
+vt 0.454887 0.904283
+vt 0.460088 0.907760
+vt 0.463563 0.912963
+vt 0.464783 0.919100
+vt 0.463562 0.925236
+vt 0.460086 0.930438
+vt 0.248848 0.937997
+vt 0.252743 0.940599
+vt 0.255346 0.944494
+vt 0.256260 0.949089
+vt 0.255347 0.953684
+vt 0.252745 0.957580
+vt 0.248850 0.960184
+vt 0.244256 0.961098
+vt 0.239662 0.960185
+vt 0.235766 0.957582
+vt 0.233163 0.953687
+vt 0.232249 0.949092
+vt 0.233162 0.944497
+vt 0.235764 0.940601
+vt 0.239659 0.937998
+vt 0.244253 0.937083
+vt 0.492937 0.904282
+vt 0.498139 0.907757
+vt 0.495291 0.910606
+vt 0.491396 0.908004
+vt 0.501615 0.912959
+vt 0.497894 0.914501
+vt 0.502836 0.919096
+vt 0.498809 0.919096
+vt 0.501616 0.925233
+vt 0.497895 0.923692
+vt 0.498141 0.930435
+vt 0.495293 0.927587
+vt 0.492940 0.933912
+vt 0.491399 0.930191
+vt 0.486805 0.935134
+vt 0.486804 0.931105
+vt 0.480669 0.933914
+vt 0.482210 0.930192
+vt 0.475467 0.930438
+vt 0.478315 0.927589
+vt 0.471991 0.925236
+vt 0.475712 0.923694
+vt 0.470770 0.919100
+vt 0.474797 0.919099
+vt 0.471989 0.912963
+vt 0.475711 0.914504
+vt 0.475464 0.907760
+vt 0.478313 0.910608
+vt 0.480666 0.904283
+vt 0.482207 0.908005
+vt 0.486801 0.903062
+vt 0.486802 0.907090
+vt 0.490190 0.939029
+vt 0.490261 0.941631
+vt 0.489060 0.941631
+vt 0.488990 0.939028
+vt 0.490307 0.945526
+vt 0.489107 0.945526
+vt 0.490324 0.950121
+vt 0.489123 0.950121
+vt 0.490307 0.954716
+vt 0.489107 0.954716
+vt 0.490260 0.958612
+vt 0.489059 0.958612
+vt 0.490190 0.961216
+vt 0.488989 0.961215
+vt 0.918953 0.981229
+vt 0.918870 0.985823
+vt 0.917669 0.985801
+vt 0.917752 0.981207
+vt 0.918787 0.990417
+vt 0.917586 0.990395
+vt 0.918716 0.994312
+vt 0.917516 0.994291
+vt 0.918670 0.996915
+vt 0.917469 0.996894
+vt 0.900157 0.979605
+vt 0.900141 0.984200
+vt 0.898940 0.984200
+vt 0.898957 0.979605
+vt 0.900157 0.988795
+vt 0.898957 0.988795
+vt 0.900205 0.992691
+vt 0.899004 0.992691
+vt 0.900275 0.995295
+vt 0.899074 0.995295
+vt 0.532957 0.962555
+vt 0.533040 0.967149
+vt 0.531839 0.967171
+vt 0.531756 0.962576
+vt 0.533123 0.971743
+vt 0.531922 0.971765
+vt 0.778699 0.990010
+vt 0.777366 0.989974
+vt 0.777365 0.977847
+vt 0.778699 0.977883
+vt 0.775370 0.989950
+vt 0.775369 0.977823
+vt 0.773015 0.989941
+vt 0.773014 0.977815
+vt 0.770660 0.989950
+vt 0.770660 0.977823
+vt 0.768663 0.989974
+vt 0.768663 0.977847
+vt 0.767329 0.990010
+vt 0.767329 0.977884
+vt 0.803859 0.990247
+vt 0.801504 0.990289
+vt 0.801285 0.978163
+vt 0.803640 0.978120
+vt 0.799150 0.990332
+vt 0.798931 0.978205
+vt 0.797154 0.990368
+vt 0.796935 0.978241
+vt 0.795820 0.990392
+vt 0.795601 0.978265
+vt 0.761342 0.989861
+vt 0.758987 0.989870
+vt 0.758987 0.977743
+vt 0.761342 0.977735
+vt 0.756632 0.989861
+vt 0.756633 0.977735
+vt 0.754636 0.989837
+vt 0.754636 0.977711
+vt 0.753302 0.989801
+vt 0.753302 0.977675
+vt 0.789395 0.990026
+vt 0.787041 0.989984
+vt 0.787260 0.977857
+vt 0.789614 0.977900
+vt 0.784686 0.989941
+vt 0.784905 0.977815
+vt 0.836643 0.990368
+vt 0.834289 0.990837
+vt 0.831934 0.990368
+vt 0.829939 0.989034
+vt 0.828605 0.987037
+vt 0.828137 0.984682
+vt 0.828606 0.982328
+vt 0.829940 0.980331
+vt 0.831936 0.978998
+vt 0.834290 0.978530
+vt 0.836645 0.978998
+vt 0.838640 0.980332
+vt 0.839974 0.982329
+vt 0.840442 0.984684
+vt 0.839973 0.987039
+vt 0.838639 0.989035
+vt 0.818352 0.978588
+vt 0.820348 0.979922
+vt 0.821682 0.981918
+vt 0.822150 0.984273
+vt 0.821682 0.986628
+vt 0.820349 0.988624
+vt 0.818353 0.989958
+vt 0.815999 0.990427
+vt 0.813644 0.989959
+vt 0.811648 0.988625
+vt 0.810314 0.986629
+vt 0.809846 0.984274
+vt 0.810314 0.981920
+vt 0.811647 0.979923
+vt 0.813643 0.978589
+vt 0.815997 0.978120
+vt 0.151297 0.935241
+vt 0.147821 0.935147
+vt 0.147820 0.903545
+vt 0.151296 0.903639
+vt 0.142619 0.935085
+vt 0.142618 0.903483
+vt 0.136483 0.935063
+vt 0.136482 0.903461
+vt 0.130346 0.935085
+vt 0.130345 0.903483
+vt 0.125143 0.935148
+vt 0.125142 0.903546
+vt 0.121667 0.935242
+vt 0.121665 0.903640
+vt 0.276111 0.932810
+vt 0.269975 0.932921
+vt 0.269404 0.901319
+vt 0.275540 0.901208
+vt 0.263839 0.933032
+vt 0.263269 0.901430
+vt 0.258637 0.933126
+vt 0.258067 0.901524
+vt 0.255161 0.933188
+vt 0.254590 0.901586
+vt 0.083535 0.934845
+vt 0.077398 0.934867
+vt 0.077399 0.903265
+vt 0.083536 0.903243
+vt 0.071262 0.934844
+vt 0.071263 0.903242
+vt 0.066059 0.934781
+vt 0.066060 0.903180
+vt 0.062582 0.934687
+vt 0.062583 0.903085
+vt 0.205173 0.934503
+vt 0.199038 0.934392
+vt 0.199608 0.902790
+vt 0.205744 0.902901
+vt 0.192902 0.934281
+vt 0.193473 0.902679
+vt 0.416830 0.933796
+vt 0.410695 0.935015
+vt 0.404559 0.933794
+vt 0.399358 0.930317
+vt 0.395883 0.925114
+vt 0.394663 0.918978
+vt 0.395885 0.912841
+vt 0.399361 0.907639
+vt 0.404563 0.904164
+vt 0.410698 0.902944
+vt 0.416834 0.904165
+vt 0.422035 0.907642
+vt 0.425510 0.912845
+vt 0.426730 0.918981
+vt 0.425509 0.925118
+vt 0.422032 0.930320
+vt 0.279276 0.937997
+vt 0.283171 0.940599
+vt 0.285774 0.944494
+vt 0.286689 0.949089
+vt 0.285775 0.953684
+vt 0.283173 0.957580
+vt 0.279279 0.960184
+vt 0.274684 0.961098
+vt 0.270090 0.960185
+vt 0.266195 0.957582
+vt 0.263592 0.953687
+vt 0.262677 0.949092
+vt 0.263591 0.944497
+vt 0.266193 0.940601
+vt 0.270087 0.937998
+vt 0.274682 0.937083
+vt 0.341521 0.901687
+vt 0.346723 0.905162
+vt 0.343875 0.908011
+vt 0.339980 0.905408
+vt 0.350199 0.910364
+vt 0.346478 0.911906
+vt 0.351420 0.916501
+vt 0.347392 0.916501
+vt 0.350201 0.922637
+vt 0.346479 0.921096
+vt 0.346726 0.927840
+vt 0.343877 0.924992
+vt 0.341524 0.931317
+vt 0.339983 0.927595
+vt 0.335389 0.932538
+vt 0.335388 0.928510
+vt 0.329253 0.931318
+vt 0.330794 0.927597
+vt 0.324051 0.927843
+vt 0.326899 0.924994
+vt 0.320575 0.922641
+vt 0.324296 0.921099
+vt 0.319354 0.916504
+vt 0.323381 0.916504
+vt 0.320573 0.910368
+vt 0.324295 0.911909
+vt 0.324048 0.905165
+vt 0.326897 0.908013
+vt 0.329250 0.901688
+vt 0.330791 0.905410
+vt 0.335385 0.900467
+vt 0.335386 0.904495
+vt 0.497797 0.939029
+vt 0.497868 0.941631
+vt 0.496667 0.941631
+vt 0.496597 0.939029
+vt 0.497915 0.945526
+vt 0.496714 0.945526
+vt 0.497931 0.950121
+vt 0.496730 0.950121
+vt 0.497914 0.954716
+vt 0.496714 0.954716
+vt 0.497867 0.958612
+vt 0.496667 0.958612
+vt 0.497797 0.961216
+vt 0.496596 0.961216
+vt 0.926423 0.981229
+vt 0.926340 0.985823
+vt 0.925139 0.985801
+vt 0.925223 0.981207
+vt 0.926257 0.990417
+vt 0.925057 0.990396
+vt 0.926187 0.994312
+vt 0.924986 0.994291
+vt 0.926140 0.996915
+vt 0.924939 0.996894
+vt 0.892835 0.979605
+vt 0.892819 0.984200
+vt 0.891619 0.984200
+vt 0.891635 0.979605
+vt 0.892836 0.988796
+vt 0.891635 0.988796
+vt 0.892883 0.992691
+vt 0.891682 0.992691
+vt 0.892953 0.995295
+vt 0.891753 0.995295
+vt 0.540310 0.960965
+vt 0.540393 0.965559
+vt 0.539193 0.965581
+vt 0.539110 0.960986
+vt 0.540476 0.970153
+vt 0.539276 0.970175
+vt 0.973851 0.997927
+vt 0.972069 0.997879
+vt 0.972068 0.981672
+vt 0.973850 0.981721
+vt 0.969401 0.997847
+vt 0.969400 0.981640
+vt 0.966254 0.997836
+vt 0.966253 0.981629
+vt 0.963107 0.997847
+vt 0.963106 0.981640
+vt 0.960438 0.997880
+vt 0.960438 0.981673
+vt 0.958655 0.997928
+vt 0.958655 0.981721
+vt 0.954550 0.977620
+vt 0.951404 0.977677
+vt 0.951111 0.961470
+vt 0.954257 0.961414
+vt 0.948257 0.977734
+vt 0.947964 0.961527
+vt 0.945589 0.977782
+vt 0.945296 0.961576
+vt 0.943806 0.977814
+vt 0.943514 0.961608
+vt 0.952667 0.997997
+vt 0.949520 0.998008
+vt 0.949521 0.981801
+vt 0.952668 0.981790
+vt 0.946373 0.997997
+vt 0.946374 0.981790
+vt 0.943705 0.997964
+vt 0.943705 0.981757
+vt 0.941922 0.997916
+vt 0.941922 0.981709
+vt 0.966923 0.977734
+vt 0.963776 0.977677
+vt 0.964069 0.961471
+vt 0.967216 0.961527
+vt 0.960630 0.977621
+vt 0.960922 0.961414
+vt 0.909239 0.975085
+vt 0.906093 0.975710
+vt 0.902946 0.975084
+vt 0.900279 0.973301
+vt 0.898497 0.970633
+vt 0.897871 0.967485
+vt 0.898497 0.964338
+vt 0.900280 0.961671
+vt 0.902948 0.959888
+vt 0.906094 0.959263
+vt 0.909241 0.959889
+vt 0.911908 0.961672
+vt 0.913691 0.964340
+vt 0.914316 0.967487
+vt 0.913690 0.970635
+vt 0.911907 0.973302
+vt 0.932061 0.961490
+vt 0.934728 0.963272
+vt 0.936511 0.965940
+vt 0.937137 0.969087
+vt 0.936512 0.972234
+vt 0.934730 0.974903
+vt 0.932062 0.976686
+vt 0.928916 0.977312
+vt 0.925769 0.976686
+vt 0.923101 0.974904
+vt 0.921319 0.972236
+vt 0.920692 0.969089
+vt 0.921318 0.965942
+vt 0.923100 0.963274
+vt 0.925767 0.961491
+vt 0.928914 0.960864
+vt 0.656678 0.893931
+vt 0.628959 0.893930
+vt 0.628960 0.859695
+vt 0.656679 0.859696
+vt 0.420610 0.684744
+vt 0.420612 0.710092
+vt 0.392894 0.710095
+vt 0.392891 0.684748
+vt 0.120590 0.650294
+vt 0.070888 0.642571
+vt 0.081919 0.619623
+vt 0.117650 0.625175
+vt 0.109232 0.679349
+vt 0.073502 0.673797
+vt 0.069954 0.648583
+vt 0.119656 0.656306
+vt 0.420613 0.715885
+vt 0.420616 0.739137
+vt 0.392897 0.739141
+vt 0.392894 0.715888
+vt 0.731018 0.711649
+vt 0.703300 0.711645
+vt 0.703303 0.688451
+vt 0.731022 0.688454
+vt 0.731015 0.742886
+vt 0.703296 0.742883
+vt 0.703299 0.717400
+vt 0.731018 0.717403
+vt 0.919339 0.922427
+vt 0.947057 0.922426
+vt 0.947058 0.956662
+vt 0.919339 0.956663
+vt 0.376125 0.617488
+vt 0.386549 0.640531
+vt 0.336847 0.648254
+vt 0.340394 0.623040
+vt 0.387483 0.646543
+vt 0.384543 0.671662
+vt 0.348812 0.677214
+vt 0.337781 0.654266
+vt 0.659721 0.859442
+vt 0.659720 0.895173
+vt 0.656679 0.856336
+vt 0.628960 0.856335
+vt 0.389849 0.684377
+vt 0.389852 0.709497
+vt 0.389852 0.715509
+vt 0.389855 0.738551
+vt 0.656678 0.898255
+vt 0.628959 0.898254
+vt 0.078838 0.619012
+vt 0.067689 0.642206
+vt 0.066794 0.647960
+vt 0.070380 0.673444
+vt 0.073810 0.676923
+vt 0.108045 0.682243
+vt 0.731015 0.746366
+vt 0.703296 0.746363
+vt 0.950100 0.956969
+vt 0.950099 0.921239
+vt 0.700254 0.743236
+vt 0.700257 0.718022
+vt 0.700258 0.712010
+vt 0.700261 0.689062
+vt 0.625917 0.895172
+vt 0.625918 0.859441
+vt 0.423652 0.684373
+vt 0.423655 0.709493
+vt 0.423655 0.715505
+vt 0.423658 0.738548
+vt 0.919338 0.918168
+vt 0.947057 0.918167
+vt 0.112305 0.679938
+vt 0.004985 0.898587
+vt 0.004986 0.891358
+vt 0.038886 0.891362
+vt 0.038886 0.898591
+vt 0.004987 0.881669
+vt 0.038887 0.881673
+vt 0.004988 0.870994
+vt 0.038888 0.870998
+vt 0.004989 0.860960
+vt 0.038890 0.860964
+vt 0.004990 0.853094
+vt 0.038891 0.853098
+vt 0.930203 0.877328
+vt 0.939892 0.877329
+vt 0.939891 0.911230
+vt 0.930201 0.911229
+vt 0.950566 0.877329
+vt 0.950565 0.911230
+vt 0.960600 0.877329
+vt 0.960599 0.911230
+vt 0.968467 0.877329
+vt 0.968465 0.911229
+vt 0.793273 0.877252
+vt 0.802963 0.877251
+vt 0.802966 0.911152
+vt 0.793277 0.911153
+vt 0.813637 0.877250
+vt 0.813641 0.911151
+vt 0.823671 0.877249
+vt 0.823675 0.911149
+vt 0.831537 0.877248
+vt 0.831541 0.911148
+vt 0.922824 0.911229
+vt 0.913135 0.911230
+vt 0.913134 0.877329
+vt 0.922823 0.877328
+vt 0.902461 0.911230
+vt 0.902459 0.877329
+vt 0.892427 0.911230
+vt 0.892425 0.877329
+vt 0.374851 0.800190
+vt 0.384316 0.800590
+vt 0.392907 0.804581
+vt 0.399318 0.811557
+vt 0.402571 0.820454
+vt 0.402171 0.829919
+vt 0.398179 0.838511
+vt 0.391204 0.844921
+vt 0.382306 0.848174
+vt 0.372841 0.847774
+vt 0.364250 0.843783
+vt 0.357840 0.836807
+vt 0.354587 0.827910
+vt 0.354986 0.818445
+vt 0.358978 0.809853
+vt 0.365953 0.803443
+vt 0.305007 0.838657
+vt 0.301016 0.830065
+vt 0.300616 0.820600
+vt 0.303869 0.811703
+vt 0.310279 0.804727
+vt 0.318871 0.800736
+vt 0.328336 0.800336
+vt 0.337233 0.803589
+vt 0.344209 0.809999
+vt 0.348200 0.818591
+vt 0.348600 0.828056
+vt 0.345347 0.836953
+vt 0.338937 0.843929
+vt 0.330345 0.847920
+vt 0.320880 0.848320
+vt 0.311983 0.845067
+vt 0.894040 0.914272
+vt 0.902937 0.914272
+vt 0.887064 0.914271
+vt 0.884560 0.911229
+vt 0.001944 0.889527
+vt 0.001945 0.880935
+vt 0.001946 0.871470
+vt 0.001947 0.862573
+vt 0.001948 0.855597
+vt 0.932033 0.874286
+vt 0.940625 0.874287
+vt 0.950090 0.874287
+vt 0.958987 0.874287
+vt 0.965963 0.874286
+vt 0.795104 0.874210
+vt 0.803695 0.874209
+vt 0.813160 0.874208
+vt 0.822058 0.874207
+vt 0.829033 0.874206
+vt 0.920994 0.914271
+vt 0.912402 0.914271
+vt 0.894038 0.874287
+vt 0.884559 0.877329
+vt 0.887062 0.874286
+vt 0.902935 0.874287
+vt 0.041929 0.889532
+vt 0.041930 0.880940
+vt 0.041931 0.871475
+vt 0.041932 0.862577
+vt 0.041933 0.855602
+vt 0.932032 0.914271
+vt 0.940623 0.914271
+vt 0.950088 0.914272
+vt 0.958986 0.914272
+vt 0.965961 0.914271
+vt 0.795108 0.914195
+vt 0.803700 0.914194
+vt 0.813165 0.914193
+vt 0.822062 0.914192
+vt 0.829038 0.914191
+vt 0.920992 0.874286
+vt 0.912400 0.874286
+vt 0.693758 0.856775
+vt 0.692281 0.868839
+vt 0.665854 0.867563
+vt 0.667300 0.856335
+vt 0.958656 0.935839
+vt 0.961134 0.933066
+vt 0.969116 0.943181
+vt 0.958641 0.952477
+vt 0.305615 0.524324
+vt 0.296907 0.535440
+vt 0.284983 0.526765
+vt 0.287210 0.523632
+vt 0.557780 0.556084
+vt 0.559883 0.553611
+vt 0.580064 0.550333
+vt 0.581133 0.552206
+vt 0.970271 0.945455
+vt 0.957331 0.957519
+vt 0.309306 0.524587
+vt 0.298078 0.537828
+vt 0.957973 0.932641
+vt 0.959845 0.931465
+vt 0.552670 0.557558
+vt 0.553946 0.554424
+vt 0.691216 0.884351
+vt 0.671242 0.884697
+vt 0.961950 0.927535
+vt 0.972363 0.929909
+vt 0.281114 0.540752
+vt 0.278407 0.529758
+vt 0.118062 0.959318
+vt 0.113982 0.957190
+vt 0.114456 0.939500
+vt 0.119108 0.939137
+vt 0.695283 0.871113
+vt 0.693595 0.884385
+vt 0.280944 0.542391
+vt 0.960480 0.926814
+vt 0.121278 0.965255
+vt 0.114702 0.961204
+vt 0.689459 0.893870
+vt 0.676048 0.895238
+vt 0.961555 0.920682
+vt 0.971353 0.920571
+vt 0.270255 0.541509
+vt 0.270459 0.531088
+vt 0.107013 0.953376
+vt 0.108196 0.941498
+vt 0.973063 0.920424
+vt 0.973851 0.929943
+vt 0.270403 0.543015
+vt 0.960228 0.920554
+vt 0.106754 0.956078
+vt 0.688004 0.896127
+vt 0.677999 0.897148
+vt 0.962249 0.918358
+vt 0.969325 0.918277
+vt 0.268383 0.539698
+vt 0.268535 0.532156
+vt 0.105023 0.952094
+vt 0.105906 0.943233
+vt 0.970601 0.918167
+vt 0.864573 0.993369
+vt 0.866766 0.991417
+vt 0.867890 0.992564
+vt 0.866079 0.994905
+vt 0.961258 0.918263
+vt 0.104830 0.954110
+vt 0.865977 0.981413
+vt 0.871154 0.985893
+vt 0.874329 0.979605
+vt 0.867252 0.980210
+vt 0.875432 0.991609
+vt 0.876265 0.989593
+vt 0.875319 0.980732
+vt 0.288189 0.493516
+vt 0.307937 0.493519
+vt 0.307935 0.518354
+vt 0.288186 0.518352
+vt 0.581775 0.558032
+vt 0.585517 0.582113
+vt 0.553088 0.587152
+vt 0.553598 0.562410
+vt 0.586451 0.588125
+vt 0.590193 0.612206
+vt 0.562016 0.616584
+vt 0.554022 0.593164
+vt 0.849402 0.948013
+vt 0.856762 0.928248
+vt 0.869644 0.941112
+vt 0.868345 0.948012
+vt 0.861682 0.924614
+vt 0.876554 0.921636
+vt 0.876555 0.935370
+vt 0.873649 0.936563
+vt 0.592729 0.556330
+vt 0.601146 0.610504
+vt 0.596154 0.611280
+vt 0.591945 0.584193
+vt 0.587737 0.557106
+vt 0.317887 0.674295
+vt 0.316835 0.674362
+vt 0.316841 0.620188
+vt 0.317893 0.620121
+vt 0.303177 0.563257
+vt 0.303178 0.549522
+vt 0.318049 0.552501
+vt 0.306083 0.564450
+vt 0.322970 0.556135
+vt 0.330330 0.575900
+vt 0.311386 0.575899
+vt 0.310087 0.568999
+vt 0.331648 0.609605
+vt 0.311900 0.609604
+vt 0.311900 0.581911
+vt 0.331649 0.581912
+vt 0.542407 0.584773
+vt 0.515320 0.580564
+vt 0.488233 0.576355
+vt 0.491744 0.553751
+vt 0.545918 0.562169
+vt 0.362800 0.681109
+vt 0.380874 0.681669
+vt 0.380880 0.735843
+vt 0.362806 0.735283
+vt 0.580875 0.690511
+vt 0.594280 0.688429
+vt 0.602697 0.742603
+vt 0.589292 0.744685
+vt 0.511409 0.585924
+vt 0.506370 0.618353
+vt 0.482950 0.610359
+vt 0.487328 0.582182
+vt 0.541502 0.590600
+vt 0.537124 0.618777
+vt 0.512382 0.619287
+vt 0.517421 0.586858
+vt 0.307938 0.487598
+vt 0.288189 0.487596
+vt 0.288192 0.464087
+vt 0.307941 0.464089
+vt 0.285144 0.518779
+vt 0.285147 0.494037
+vt 0.956087 0.936325
+vt 0.956089 0.955269
+vt 0.584139 0.551522
+vt 0.587320 0.554092
+vt 0.594221 0.553019
+vt 0.603572 0.613205
+vt 0.596672 0.614278
+vt 0.605255 0.609866
+vt 0.596838 0.555692
+vt 0.319980 0.617488
+vt 0.317075 0.617673
+vt 0.875735 0.938495
+vt 0.876787 0.938063
+vt 0.854508 0.925127
+vt 0.846091 0.947731
+vt 0.546449 0.558750
+vt 0.492275 0.550333
+vt 0.858540 0.921709
+vt 0.876614 0.918089
+vt 0.325223 0.553948
+vt 0.333640 0.576552
+vt 0.321191 0.550530
+vt 0.303117 0.546910
+vt 0.300135 0.562724
+vt 0.300135 0.549319
+vt 0.314032 0.620834
+vt 0.314026 0.675008
+vt 0.879596 0.933903
+vt 0.879596 0.920498
+vt 0.383862 0.735469
+vt 0.383855 0.681295
+vt 0.334691 0.582379
+vt 0.334690 0.610556
+vt 0.307942 0.461677
+vt 0.288193 0.461675
+vt 0.310983 0.464608
+vt 0.310980 0.488028
+vt 0.310980 0.494040
+vt 0.310977 0.518782
+vt 0.542928 0.617791
+vt 0.546683 0.591334
+vt 0.285147 0.488025
+vt 0.285150 0.464605
+vt 0.562967 0.619515
+vt 0.590660 0.615212
+vt 0.283511 0.525105
+vt 0.608121 0.612499
+vt 0.598769 0.552313
+vt 0.302944 0.566884
+vt 0.317067 0.677859
+vt 0.331648 0.613593
+vt 0.558978 0.617103
+vt 0.847152 0.954292
+vt 0.845040 0.953558
+vt 0.852193 0.951388
+vt 0.249698 0.363080
+vt 0.221979 0.363078
+vt 0.221987 0.279552
+vt 0.249706 0.279553
+vt 0.221987 0.274817
+vt 0.221986 0.257969
+vt 0.249705 0.257970
+vt 0.249706 0.274818
+vt 0.418382 0.153813
+vt 0.468017 0.252588
+vt 0.442206 0.255499
+vt 0.399505 0.170523
+vt 0.448492 0.145907
+vt 0.491193 0.230883
+vt 0.473453 0.249856
+vt 0.423818 0.151081
+vt 0.375977 0.766107
+vt 0.375980 0.790986
+vt 0.348261 0.790989
+vt 0.348258 0.766111
+vt 0.340983 0.772419
+vt 0.313264 0.772416
+vt 0.313267 0.746207
+vt 0.340986 0.746210
+vt 0.340981 0.795533
+vt 0.313262 0.795530
+vt 0.313264 0.777516
+vt 0.340983 0.777519
+vt 0.217186 0.251162
+vt 0.266821 0.152388
+vt 0.285698 0.169098
+vt 0.242997 0.254074
+vt 0.194010 0.229458
+vt 0.236711 0.144482
+vt 0.261385 0.149656
+vt 0.211750 0.248431
+vt 0.368855 0.368644
+vt 0.368863 0.452170
+vt 0.341144 0.452171
+vt 0.341136 0.368645
+vt 0.252748 0.277561
+vt 0.252740 0.362537
+vt 0.398013 0.167780
+vt 0.417047 0.150932
+vt 0.348257 0.760855
+vt 0.375976 0.760852
+vt 0.422302 0.148291
+vt 0.447181 0.143073
+vt 0.340987 0.741821
+vt 0.313268 0.741818
+vt 0.443462 0.258419
+vt 0.469671 0.255462
+vt 0.474772 0.252899
+vt 0.492785 0.233634
+vt 0.310225 0.744950
+vt 0.310222 0.770760
+vt 0.218937 0.362536
+vt 0.218945 0.277560
+vt 0.210431 0.251474
+vt 0.192417 0.232209
+vt 0.375975 0.741818
+vt 0.379017 0.743309
+vt 0.379019 0.762186
+vt 0.379019 0.767623
+vt 0.379022 0.792296
+vt 0.451524 0.145167
+vt 0.493497 0.228693
+vt 0.348261 0.795333
+vt 0.375980 0.795329
+vt 0.233678 0.143742
+vt 0.191706 0.227268
+vt 0.368863 0.457110
+vt 0.341144 0.457112
+vt 0.439073 0.256041
+vt 0.310222 0.776197
+vt 0.269194 0.870850
+vt 0.269194 0.881453
+vt 0.235293 0.881454
+vt 0.235293 0.870852
+vt 0.269194 0.890745
+vt 0.235293 0.890746
+vt 0.269193 0.897312
+vt 0.235292 0.897314
+vt 0.140203 0.891078
+vt 0.140204 0.880780
+vt 0.174104 0.880784
+vt 0.174103 0.891082
+vt 0.140205 0.870177
+vt 0.174106 0.870181
+vt 0.140206 0.860885
+vt 0.174107 0.860889
+vt 0.140207 0.854318
+vt 0.174108 0.854322
+vt 0.187748 0.890356
+vt 0.187749 0.880057
+vt 0.221649 0.880058
+vt 0.221649 0.890357
+vt 0.187749 0.869455
+vt 0.221650 0.869456
+vt 0.187749 0.860162
+vt 0.221649 0.860164
+vt 0.187748 0.853595
+vt 0.221649 0.853597
+vt 0.847343 0.877251
+vt 0.857642 0.877250
+vt 0.857646 0.911151
+vt 0.847347 0.911152
+vt 0.868244 0.877249
+vt 0.868248 0.911150
+vt 0.877536 0.877248
+vt 0.877540 0.911148
+vt 0.269192 0.852125
+vt 0.269193 0.860552
+vt 0.235292 0.860553
+vt 0.235291 0.852126
+vt 0.851615 0.824401
+vt 0.859087 0.830224
+vt 0.863762 0.838464
+vt 0.864928 0.847865
+vt 0.862408 0.856997
+vt 0.856584 0.864470
+vt 0.848345 0.869145
+vt 0.838943 0.870311
+vt 0.829811 0.867790
+vt 0.822339 0.861967
+vt 0.817664 0.853727
+vt 0.816498 0.844326
+vt 0.819018 0.835194
+vt 0.824841 0.827721
+vt 0.833081 0.823046
+vt 0.842482 0.821880
+vt 0.887498 0.869137
+vt 0.879259 0.864461
+vt 0.873435 0.856989
+vt 0.870915 0.847857
+vt 0.872081 0.838455
+vt 0.876756 0.830216
+vt 0.884228 0.824393
+vt 0.893360 0.821872
+vt 0.902762 0.823038
+vt 0.911001 0.827713
+vt 0.916825 0.835186
+vt 0.919345 0.844318
+vt 0.918179 0.853719
+vt 0.913504 0.861959
+vt 0.906032 0.867782
+vt 0.896900 0.870302
+vt 0.272236 0.871076
+vt 0.272235 0.861944
+vt 0.272236 0.880478
+vt 0.272236 0.888717
+vt 0.140202 0.899505
+vt 0.137160 0.897158
+vt 0.137161 0.889685
+vt 0.137162 0.880553
+vt 0.137163 0.871152
+vt 0.137164 0.862912
+vt 0.187747 0.898783
+vt 0.184705 0.896435
+vt 0.184706 0.888963
+vt 0.184706 0.879831
+vt 0.184706 0.870430
+vt 0.184706 0.862190
+vt 0.838916 0.877252
+vt 0.841263 0.874210
+vt 0.848735 0.874209
+vt 0.857867 0.874208
+vt 0.867269 0.874207
+vt 0.875508 0.874206
+vt 0.272234 0.854472
+vt 0.232251 0.871078
+vt 0.232251 0.880479
+vt 0.232250 0.861946
+vt 0.232251 0.888719
+vt 0.177145 0.897162
+vt 0.174103 0.899509
+vt 0.177146 0.889690
+vt 0.177147 0.880558
+vt 0.177148 0.871157
+vt 0.177149 0.862917
+vt 0.224690 0.896437
+vt 0.221648 0.898784
+vt 0.224690 0.888965
+vt 0.224691 0.879833
+vt 0.224691 0.870431
+vt 0.224691 0.862191
+vt 0.841268 0.914194
+vt 0.838920 0.911153
+vt 0.848740 0.914194
+vt 0.857872 0.914193
+vt 0.867273 0.914192
+vt 0.875513 0.914191
+vt 0.232249 0.854473
+vt 0.233990 0.796443
+vt 0.223387 0.796443
+vt 0.223385 0.745515
+vt 0.233988 0.745515
+vt 0.214095 0.796443
+vt 0.214093 0.745515
+vt 0.207528 0.796442
+vt 0.207526 0.745514
+vt 0.192939 0.796046
+vt 0.182640 0.796045
+vt 0.182646 0.745117
+vt 0.192944 0.745118
+vt 0.172037 0.796044
+vt 0.172043 0.745116
+vt 0.162745 0.796042
+vt 0.162751 0.745114
+vt 0.156178 0.796041
+vt 0.156184 0.745113
+vt 0.267303 0.742471
+vt 0.277602 0.742472
+vt 0.277600 0.793399
+vt 0.267301 0.793399
+vt 0.288204 0.742472
+vt 0.288202 0.793400
+vt 0.297496 0.742472
+vt 0.297494 0.793399
+vt 0.304063 0.742471
+vt 0.304061 0.793399
+vt 0.118956 0.744071
+vt 0.129255 0.744070
+vt 0.129261 0.794997
+vt 0.118962 0.794998
+vt 0.139857 0.744068
+vt 0.139863 0.794996
+vt 0.149150 0.744067
+vt 0.149156 0.794995
+vt 0.252715 0.796441
+vt 0.244289 0.796442
+vt 0.244287 0.745514
+vt 0.252713 0.745513
+vt 0.241492 0.709272
+vt 0.244334 0.698973
+vt 0.250902 0.690546
+vt 0.260194 0.685274
+vt 0.270796 0.683959
+vt 0.281095 0.686801
+vt 0.289522 0.693368
+vt 0.294794 0.702661
+vt 0.296109 0.713263
+vt 0.293267 0.723562
+vt 0.286700 0.731989
+vt 0.277407 0.737261
+vt 0.266805 0.738576
+vt 0.256506 0.735734
+vt 0.248079 0.729166
+vt 0.242807 0.719874
+vt 0.778664 0.869145
+vt 0.770424 0.864470
+vt 0.764601 0.856997
+vt 0.762080 0.847865
+vt 0.763246 0.838464
+vt 0.767922 0.830224
+vt 0.775394 0.824401
+vt 0.784526 0.821880
+vt 0.793927 0.823046
+vt 0.802167 0.827721
+vt 0.807990 0.835194
+vt 0.810511 0.844326
+vt 0.809345 0.853727
+vt 0.804670 0.861967
+vt 0.797197 0.867790
+vt 0.788065 0.870311
+vt 0.233762 0.742472
+vt 0.224360 0.742473
+vt 0.242894 0.742472
+vt 0.216121 0.742472
+vt 0.199025 0.742076
+vt 0.201371 0.745119
+vt 0.191552 0.742076
+vt 0.182420 0.742075
+vt 0.173019 0.742074
+vt 0.164779 0.742073
+vt 0.261221 0.796439
+vt 0.258874 0.793397
+vt 0.268693 0.796440
+vt 0.277826 0.796441
+vt 0.287227 0.796441
+vt 0.295467 0.796441
+vt 0.112883 0.798041
+vt 0.110535 0.794999
+vt 0.120355 0.798040
+vt 0.129487 0.798039
+vt 0.138889 0.798038
+vt 0.147128 0.798037
+vt 0.250366 0.742471
+vt 0.221089 0.502488
+vt 0.232541 0.533243
+vt 0.208202 0.537714
+vt 0.198251 0.510992
+vt 0.259579 0.518583
+vt 0.238243 0.531120
+vt 0.226791 0.500365
+vt 0.249629 0.491861
+vt 0.520102 0.930563
+vt 0.518796 0.924020
+vt 0.531645 0.911805
+vt 0.539021 0.930536
+vt 0.511886 0.918587
+vt 0.511869 0.905561
+vt 0.526724 0.908362
+vt 0.514785 0.919712
+vt 0.188207 0.484042
+vt 0.239585 0.464911
+vt 0.247571 0.486336
+vt 0.221882 0.495901
+vt 0.196193 0.505467
+vt 0.865558 0.508598
+vt 0.885281 0.508607
+vt 0.885264 0.533039
+vt 0.865541 0.533031
+vt 0.244927 0.643708
+vt 0.226008 0.643680
+vt 0.233384 0.624949
+vt 0.246234 0.637165
+vt 0.238305 0.621507
+vt 0.253161 0.618705
+vt 0.253144 0.631731
+vt 0.250244 0.632857
+vt 0.244406 0.649409
+vt 0.244372 0.675672
+vt 0.224649 0.675643
+vt 0.224683 0.649380
+vt 0.640221 0.690056
+vt 0.640171 0.741434
+vt 0.639124 0.741282
+vt 0.639174 0.689904
+vt 0.717296 0.616354
+vt 0.712563 0.614591
+vt 0.722129 0.588902
+vt 0.731694 0.563213
+vt 0.736427 0.564976
+vt 0.611713 0.744802
+vt 0.611663 0.693425
+vt 0.629717 0.692139
+vt 0.629768 0.743517
+vt 0.574888 0.691126
+vt 0.555757 0.742503
+vt 0.543044 0.737769
+vt 0.562175 0.686392
+vt 0.885314 0.481574
+vt 0.885287 0.502992
+vt 0.865564 0.502984
+vt 0.865591 0.481566
+vt 0.726041 0.561108
+vt 0.717537 0.583946
+vt 0.686782 0.572494
+vt 0.699319 0.551157
+vt 0.715414 0.589647
+vt 0.706910 0.612485
+vt 0.680188 0.602535
+vt 0.684659 0.578195
+vt 0.193320 0.512757
+vt 0.202315 0.537920
+vt 0.535946 0.934359
+vt 0.520472 0.934196
+vt 0.193275 0.506358
+vt 0.186294 0.487627
+vt 0.868490 0.539058
+vt 0.885393 0.538638
+vt 0.209232 0.540622
+vt 0.233664 0.536134
+vt 0.248954 0.640089
+vt 0.248009 0.644822
+vt 0.252324 0.636196
+vt 0.253370 0.635790
+vt 0.635804 0.688451
+vt 0.635754 0.739829
+vt 0.516070 0.924821
+vt 0.517015 0.929554
+vt 0.637039 0.744979
+vt 0.639939 0.745401
+vt 0.529856 0.904984
+vt 0.511801 0.901579
+vt 0.186998 0.480806
+vt 0.238376 0.461675
+vt 0.243373 0.466373
+vt 0.250355 0.485104
+vt 0.626580 0.688429
+vt 0.611724 0.689486
+vt 0.256184 0.631848
+vt 0.256201 0.619135
+vt 0.643035 0.691527
+vt 0.642985 0.742905
+vt 0.508839 0.916580
+vt 0.508823 0.903867
+vt 0.608734 0.743953
+vt 0.608684 0.692575
+vt 0.252478 0.490803
+vt 0.262258 0.517067
+vt 0.224642 0.680035
+vt 0.244365 0.680064
+vt 0.260697 0.521459
+vt 0.239279 0.534043
+vt 0.247411 0.677197
+vt 0.247446 0.650475
+vt 0.888360 0.482694
+vt 0.888333 0.504031
+vt 0.888327 0.509732
+vt 0.888310 0.534072
+vt 0.705111 0.618065
+vt 0.683014 0.609574
+vt 0.191452 0.510181
+vt 0.203205 0.540958
+vt 0.512700 0.920928
+vt 0.533891 0.908220
+vt 0.231132 0.623488
+vt 0.235168 0.620251
+vt 0.711554 0.617458
+vt 0.707922 0.619336
+vt 0.888390 0.541111
+vt 0.189591 0.541855
+vt 0.180901 0.516674
+vt 0.649630 0.917623
+vt 0.649568 0.902149
+vt 0.659587 0.910848
+vt 0.651869 0.920973
+vt 0.887944 0.541978
+vt 0.875977 0.549725
+vt 0.703712 0.619693
+vt 0.684591 0.612426
+vt 0.181432 0.513524
+vt 0.192538 0.544341
+vt 0.706477 0.621575
+vt 0.678307 0.607101
+vt 0.678971 0.610441
+vt 0.027124 0.965410
+vt 0.001944 0.966946
+vt 0.006136 0.949763
+vt 0.025209 0.949912
+vt 0.662411 0.924100
+vt 0.652424 0.926491
+vt 0.894558 0.545715
+vt 0.891826 0.556131
+vt 0.212702 0.957518
+vt 0.211855 0.938398
+vt 0.216502 0.938927
+vt 0.216802 0.955753
+vt 0.030274 0.963106
+vt 0.027837 0.949853
+vt 0.874835 0.552672
+vt 0.892018 0.558200
+vt 0.649987 0.922544
+vt 0.650530 0.927191
+vt 0.209428 0.963138
+vt 0.216042 0.959836
+vt 0.010615 0.939175
+vt 0.023552 0.940410
+vt 0.660902 0.933413
+vt 0.651476 0.933317
+vt 0.902555 0.548037
+vt 0.902739 0.557978
+vt 0.222742 0.940894
+vt 0.223808 0.952287
+vt 0.025477 0.940541
+vt 0.902606 0.559763
+vt 0.649873 0.933431
+vt 0.224039 0.955161
+vt 0.012948 0.937244
+vt 0.022599 0.938166
+vt 0.658538 0.935690
+vt 0.651727 0.935619
+vt 0.904499 0.549476
+vt 0.904636 0.556672
+vt 0.225015 0.942824
+vt 0.225810 0.951323
+vt 0.730281 0.955100
+vt 0.731632 0.957024
+vt 0.728925 0.957978
+vt 0.727917 0.956542
+vt 0.727899 0.969962
+vt 0.726115 0.971166
+vt 0.724809 0.968527
+vt 0.726140 0.967629
+vt 0.650530 0.935704
+vt 0.225982 0.953467
+vt 0.722953 0.961330
+vt 0.721106 0.954527
+vt 0.717613 0.966075
+vt 0.717202 0.963932
+vt 0.719909 0.955433
+vt 0.460452 0.738244
+vt 0.432733 0.738285
+vt 0.432691 0.705817
+vt 0.460410 0.705776
+vt 0.432684 0.701181
+vt 0.432653 0.686205
+vt 0.460372 0.686165
+vt 0.460402 0.701140
+vt 0.454794 0.570911
+vt 0.407658 0.588463
+vt 0.406067 0.563051
+vt 0.439953 0.550433
+vt 0.459084 0.601811
+vt 0.425198 0.614429
+vt 0.409781 0.594165
+vt 0.456917 0.576613
+vt 0.472531 0.715696
+vt 0.472517 0.690269
+vt 0.500236 0.690257
+vt 0.500250 0.715684
+vt 0.506256 0.712330
+vt 0.533975 0.712342
+vt 0.533961 0.738026
+vt 0.506242 0.738014
+vt 0.506293 0.686392
+vt 0.534011 0.686404
+vt 0.533980 0.706885
+vt 0.506261 0.706873
+vt 0.242339 0.576780
+vt 0.289475 0.594332
+vt 0.274634 0.614810
+vt 0.240748 0.602192
+vt 0.259879 0.550815
+vt 0.293765 0.563433
+vt 0.291598 0.588630
+vt 0.244462 0.571078
+vt 0.913351 0.918207
+vt 0.913309 0.950675
+vt 0.885590 0.950635
+vt 0.885632 0.918167
+vt 0.463448 0.704027
+vt 0.463492 0.737914
+vt 0.442840 0.549237
+vt 0.457816 0.569902
+vt 0.500256 0.721178
+vt 0.472537 0.721190
+vt 0.459861 0.575396
+vt 0.462048 0.600822
+vt 0.460454 0.740905
+vt 0.432735 0.740946
+vt 0.403075 0.564023
+vt 0.404683 0.589707
+vt 0.406715 0.595164
+vt 0.422297 0.615645
+vt 0.537007 0.739000
+vt 0.537021 0.713588
+vt 0.429689 0.737963
+vt 0.429645 0.704076
+vt 0.537026 0.707887
+vt 0.537057 0.687623
+vt 0.472567 0.741854
+vt 0.469529 0.740661
+vt 0.469499 0.720183
+vt 0.469493 0.714481
+vt 0.469479 0.689283
+vt 0.459458 0.604915
+vt 0.426990 0.617005
+vt 0.500238 0.686165
+vt 0.472519 0.686177
+vt 0.294148 0.560326
+vt 0.261680 0.548236
+vt 0.913302 0.955368
+vt 0.885583 0.955328
+vt 0.405736 0.559925
+vt 0.533963 0.742124
+vt 0.256987 0.549596
+vt 0.621050 0.774640
+vt 0.621034 0.785036
+vt 0.587133 0.784986
+vt 0.587149 0.774590
+vt 0.621018 0.793698
+vt 0.587117 0.793649
+vt 0.621006 0.799308
+vt 0.587105 0.799258
+vt 0.394712 0.861176
+vt 0.394705 0.871723
+vt 0.360805 0.871708
+vt 0.360812 0.861161
+vt 0.394704 0.882119
+vt 0.360804 0.882104
+vt 0.394710 0.890781
+vt 0.360809 0.890767
+vt 0.394721 0.896391
+vt 0.360820 0.896376
+vt 0.313308 0.887479
+vt 0.313293 0.876932
+vt 0.347194 0.876883
+vt 0.347208 0.887430
+vt 0.313277 0.866536
+vt 0.347178 0.866487
+vt 0.313262 0.857874
+vt 0.347162 0.857825
+vt 0.313250 0.852264
+vt 0.347150 0.852215
+vt 0.777251 0.911163
+vt 0.766704 0.911170
+vt 0.766689 0.877269
+vt 0.777236 0.877262
+vt 0.756308 0.911171
+vt 0.756293 0.877270
+vt 0.621081 0.748747
+vt 0.621075 0.755000
+vt 0.587175 0.754951
+vt 0.587180 0.748697
+vt 0.621064 0.764093
+vt 0.587164 0.764043
+vt 0.761349 0.769547
+vt 0.769412 0.774522
+vt 0.774957 0.782203
+vt 0.777141 0.791421
+vt 0.775630 0.800774
+vt 0.770656 0.808836
+vt 0.762975 0.814381
+vt 0.753757 0.816565
+vt 0.744404 0.815055
+vt 0.736342 0.810080
+vt 0.730797 0.802399
+vt 0.728613 0.793181
+vt 0.730123 0.783828
+vt 0.735097 0.775766
+vt 0.742779 0.770221
+vt 0.751997 0.768037
+vt 0.797930 0.815802
+vt 0.790249 0.810257
+vt 0.785275 0.802194
+vt 0.783764 0.792842
+vt 0.785948 0.783623
+vt 0.791493 0.775942
+vt 0.799556 0.770968
+vt 0.808908 0.769458
+vt 0.818126 0.771641
+vt 0.825808 0.777186
+vt 0.830782 0.785249
+vt 0.832292 0.794601
+vt 0.830108 0.803820
+vt 0.824563 0.811501
+vt 0.816501 0.816475
+vt 0.807149 0.817985
+vt 0.624091 0.774532
+vt 0.624104 0.765179
+vt 0.624076 0.783750
+vt 0.624063 0.791431
+vt 0.394724 0.852083
+vt 0.397769 0.854197
+vt 0.397758 0.862260
+vt 0.397752 0.871612
+vt 0.397751 0.880830
+vt 0.397756 0.888511
+vt 0.313319 0.896572
+vt 0.310273 0.894464
+vt 0.310263 0.886401
+vt 0.310250 0.877049
+vt 0.310236 0.867831
+vt 0.310222 0.860150
+vt 0.786343 0.911151
+vt 0.784232 0.914190
+vt 0.776170 0.914201
+vt 0.766817 0.914207
+vt 0.757599 0.914208
+vt 0.749918 0.914203
+vt 0.747645 0.911165
+vt 0.624113 0.757117
+vt 0.584106 0.774473
+vt 0.584091 0.783692
+vt 0.584119 0.765121
+vt 0.584078 0.791373
+vt 0.357784 0.854180
+vt 0.360824 0.852069
+vt 0.357773 0.862242
+vt 0.357767 0.871595
+vt 0.357766 0.880813
+vt 0.357771 0.888494
+vt 0.350257 0.894406
+vt 0.347219 0.896522
+vt 0.350248 0.886343
+vt 0.350235 0.876991
+vt 0.350220 0.867773
+vt 0.350207 0.860092
+vt 0.784215 0.874206
+vt 0.786329 0.877250
+vt 0.776152 0.874216
+vt 0.766800 0.874223
+vt 0.757582 0.874223
+vt 0.747631 0.877265
+vt 0.749901 0.874219
+vt 0.584128 0.757059
+vt 0.084491 0.231533
+vt 0.056772 0.231574
+vt 0.056631 0.146748
+vt 0.084350 0.146708
+vt 0.204728 0.733904
+vt 0.204723 0.708871
+vt 0.232442 0.708859
+vt 0.232446 0.733892
+vt 0.356473 0.147456
+vt 0.310022 0.247767
+vt 0.291685 0.229371
+vt 0.331647 0.143073
+vt 0.381396 0.166110
+vt 0.341434 0.252408
+vt 0.315543 0.250324
+vt 0.361994 0.150013
+vt 0.204724 0.703534
+vt 0.204740 0.683971
+vt 0.232458 0.683959
+vt 0.232443 0.703522
+vt 0.084517 0.255128
+vt 0.056798 0.255168
+vt 0.056779 0.236489
+vt 0.084497 0.236448
+vt 0.808288 0.922400
+vt 0.836007 0.922412
+vt 0.835998 0.948702
+vt 0.808280 0.948690
+vt 0.167381 0.251402
+vt 0.120931 0.151091
+vt 0.145757 0.146708
+vt 0.185719 0.233006
+vt 0.135970 0.256043
+vt 0.096008 0.169745
+vt 0.115410 0.153647
+vt 0.161860 0.253958
+vt 0.461607 0.373380
+vt 0.461466 0.458206
+vt 0.433747 0.458165
+vt 0.433888 0.373340
+vt 0.087392 0.147345
+vt 0.087535 0.233643
+vt 0.232452 0.738166
+vt 0.204733 0.738178
+vt 0.235493 0.735109
+vt 0.235489 0.710283
+vt 0.235490 0.704762
+vt 0.235505 0.685360
+vt 0.087554 0.252039
+vt 0.808281 0.953870
+vt 0.836000 0.953882
+vt 0.313980 0.253254
+vt 0.340270 0.255371
+vt 0.053732 0.233693
+vt 0.053751 0.252089
+vt 0.053589 0.147395
+vt 0.839045 0.947141
+vt 0.839054 0.921251
+vt 0.201690 0.735124
+vt 0.201686 0.710298
+vt 0.201687 0.704777
+vt 0.201702 0.685375
+vt 0.383861 0.168029
+vt 0.344580 0.252855
+vt 0.433894 0.368637
+vt 0.461613 0.368677
+vt 0.093540 0.171655
+vt 0.132821 0.256480
+vt 0.836012 0.918102
+vt 0.808293 0.918090
+vt 0.308800 0.250856
+vt 0.839047 0.952662
+vt 0.382798 0.163326
+vt 0.094603 0.166952
+vt 0.008260 0.744997
+vt 0.017379 0.745010
+vt 0.017357 0.795937
+vt 0.008238 0.795925
+vt 0.027934 0.745016
+vt 0.027912 0.795944
+vt 0.038318 0.745017
+vt 0.038296 0.795945
+vt 0.046951 0.745012
+vt 0.046929 0.795940
+vt 0.052518 0.745001
+vt 0.052496 0.795929
+vt 0.106211 0.686196
+vt 0.116766 0.686181
+vt 0.116841 0.737109
+vt 0.106286 0.737123
+vt 0.127151 0.686165
+vt 0.127225 0.737092
+vt 0.135783 0.686149
+vt 0.135857 0.737077
+vt 0.141350 0.686137
+vt 0.141424 0.737065
+vt 0.094348 0.798966
+vt 0.083793 0.798973
+vt 0.083771 0.748046
+vt 0.094326 0.748039
+vt 0.073409 0.798974
+vt 0.073387 0.748047
+vt 0.064776 0.798969
+vt 0.064754 0.748041
+vt 0.059209 0.798958
+vt 0.059187 0.748030
+vt 0.081987 0.741087
+vt 0.071432 0.741073
+vt 0.071506 0.690145
+vt 0.082061 0.690160
+vt 0.061048 0.741056
+vt 0.061122 0.690129
+vt 0.001966 0.744982
+vt 0.001944 0.795910
+vt 0.309316 0.692012
+vt 0.317949 0.685718
+vt 0.328333 0.683206
+vt 0.338888 0.684860
+vt 0.348007 0.690426
+vt 0.354301 0.699059
+vt 0.356813 0.709443
+vt 0.355160 0.719998
+vt 0.349593 0.729117
+vt 0.340960 0.735411
+vt 0.330576 0.737923
+vt 0.320021 0.736270
+vt 0.310902 0.730703
+vt 0.304608 0.722070
+vt 0.302096 0.711686
+vt 0.303749 0.701131
+vt 0.926798 0.854496
+vt 0.925332 0.845137
+vt 0.927559 0.835929
+vt 0.933141 0.828274
+vt 0.941227 0.823338
+vt 0.950586 0.821872
+vt 0.959794 0.824099
+vt 0.967449 0.829681
+vt 0.972385 0.837767
+vt 0.973851 0.847126
+vt 0.971624 0.856334
+vt 0.966042 0.863989
+vt 0.957956 0.868925
+vt 0.948597 0.870391
+vt 0.939389 0.868164
+vt 0.931734 0.862582
+vt 0.010338 0.798965
+vt 0.018424 0.798975
+vt 0.052489 0.690114
+vt 0.054775 0.687074
+vt 0.062430 0.687087
+vt 0.027784 0.798982
+vt 0.036992 0.798982
+vt 0.044646 0.798978
+vt 0.099273 0.740172
+vt 0.097167 0.737134
+vt 0.107359 0.740163
+vt 0.116718 0.740150
+vt 0.125926 0.740135
+vt 0.133581 0.740122
+vt 0.101342 0.744982
+vt 0.103445 0.748027
+vt 0.093256 0.744993
+vt 0.083897 0.744999
+vt 0.074689 0.745000
+vt 0.067034 0.744995
+vt 0.089083 0.687124
+vt 0.091180 0.690171
+vt 0.080997 0.687115
+vt 0.071638 0.687102
+vt 0.668580 0.755910
+vt 0.668568 0.765028
+vt 0.634667 0.765014
+vt 0.634680 0.755895
+vt 0.668561 0.775584
+vt 0.634660 0.775569
+vt 0.668560 0.785968
+vt 0.634660 0.785953
+vt 0.668566 0.794600
+vt 0.634665 0.794586
+vt 0.668577 0.800167
+vt 0.634676 0.800152
+vt 0.408397 0.889930
+vt 0.408382 0.879375
+vt 0.442283 0.879326
+vt 0.442297 0.889881
+vt 0.408366 0.868991
+vt 0.442266 0.868941
+vt 0.408350 0.860358
+vt 0.442251 0.860309
+vt 0.408338 0.854791
+vt 0.442239 0.854742
+vt 0.455900 0.890048
+vt 0.455893 0.879493
+vt 0.489794 0.879478
+vt 0.489801 0.890034
+vt 0.455893 0.869109
+vt 0.489793 0.869094
+vt 0.455898 0.860476
+vt 0.489799 0.860462
+vt 0.455909 0.854910
+vt 0.489810 0.854895
+vt 0.731560 0.909719
+vt 0.721005 0.909705
+vt 0.721054 0.875804
+vt 0.731609 0.875819
+vt 0.710621 0.909688
+vt 0.710670 0.875788
+vt 0.668595 0.749615
+vt 0.634695 0.749601
+vt 0.908125 0.771685
+vt 0.917332 0.769458
+vt 0.926692 0.770924
+vt 0.934778 0.775860
+vt 0.940359 0.783515
+vt 0.942586 0.792723
+vt 0.941120 0.802083
+vt 0.936184 0.810169
+vt 0.928529 0.815750
+vt 0.919321 0.817977
+vt 0.909962 0.816511
+vt 0.901876 0.811575
+vt 0.896295 0.803920
+vt 0.894068 0.794712
+vt 0.895534 0.785353
+vt 0.900470 0.777267
+vt 0.840382 0.802083
+vt 0.838916 0.792723
+vt 0.841143 0.783515
+vt 0.846725 0.775861
+vt 0.854811 0.770924
+vt 0.864170 0.769458
+vt 0.873378 0.771685
+vt 0.881033 0.777267
+vt 0.885969 0.785353
+vt 0.887435 0.794712
+vt 0.885208 0.803920
+vt 0.879626 0.811575
+vt 0.871540 0.816511
+vt 0.862181 0.817977
+vt 0.852973 0.815750
+vt 0.845318 0.810169
+vt 0.704265 0.912717
+vt 0.701988 0.909673
+vt 0.711920 0.912731
+vt 0.671625 0.758013
+vt 0.671614 0.766098
+vt 0.671608 0.775458
+vt 0.671607 0.784666
+vt 0.671612 0.792321
+vt 0.408408 0.899049
+vt 0.405361 0.896952
+vt 0.405352 0.888866
+vt 0.405339 0.879507
+vt 0.405324 0.870299
+vt 0.405311 0.862644
+vt 0.455913 0.899167
+vt 0.452873 0.897067
+vt 0.452862 0.888981
+vt 0.452856 0.879622
+vt 0.452855 0.870414
+vt 0.452860 0.862759
+vt 0.740679 0.909730
+vt 0.738573 0.912768
+vt 0.730487 0.912758
+vt 0.721128 0.912745
+vt 0.631640 0.757995
+vt 0.631629 0.766081
+vt 0.702037 0.875772
+vt 0.704323 0.872733
+vt 0.711978 0.872746
+vt 0.631623 0.775440
+vt 0.631622 0.784648
+vt 0.631627 0.792303
+vt 0.445346 0.896894
+vt 0.442308 0.899000
+vt 0.445337 0.888808
+vt 0.445324 0.879448
+vt 0.445309 0.870240
+vt 0.445296 0.862586
+vt 0.492858 0.897049
+vt 0.489813 0.899152
+vt 0.492847 0.888964
+vt 0.492841 0.879604
+vt 0.492840 0.870396
+vt 0.492845 0.862741
+vt 0.738631 0.872783
+vt 0.740728 0.875829
+vt 0.730545 0.872774
+vt 0.721186 0.872761
+vt 0.116599 0.430961
+vt 0.074397 0.430963
+vt 0.074397 0.374494
+vt 0.116599 0.374492
+vt 0.647364 0.849306
+vt 0.617135 0.849311
+vt 0.617129 0.807109
+vt 0.647358 0.807104
+vt 0.803074 0.271445
+vt 0.824995 0.323556
+vt 0.784177 0.340726
+vt 0.772354 0.284368
+vt 0.827354 0.329164
+vt 0.836803 0.351627
+vt 0.801627 0.366424
+vt 0.786705 0.346263
+vt 0.097586 0.460587
+vt 0.097587 0.515501
+vt 0.097587 0.540769
+vt 0.055385 0.540767
+vt 0.055385 0.515500
+vt 0.055384 0.460585
+vt 0.084260 0.856988
+vt 0.084254 0.899190
+vt 0.049678 0.899185
+vt 0.049685 0.856983
+vt 0.819119 0.438109
+vt 0.859767 0.455208
+vt 0.844846 0.475370
+vt 0.809669 0.460573
+vt 0.843398 0.380390
+vt 0.874119 0.393313
+vt 0.862296 0.449671
+vt 0.821478 0.432501
+vt 0.074397 0.436386
+vt 0.116599 0.436384
+vt 0.116598 0.456688
+vt 0.074396 0.456690
+vt 0.119640 0.373346
+vt 0.119641 0.429704
+vt 0.116598 0.370336
+vt 0.074396 0.370337
+vt 0.646669 0.804062
+vt 0.615949 0.804067
+vt 0.805878 0.270266
+vt 0.828978 0.325180
+vt 0.839607 0.350448
+vt 0.613145 0.807109
+vt 0.613151 0.849311
+vt 0.050865 0.853940
+vt 0.086041 0.853946
+vt 0.097587 0.544752
+vt 0.055385 0.544751
+vt 0.100629 0.541948
+vt 0.100629 0.519485
+vt 0.100628 0.513877
+vt 0.100627 0.461766
+vt 0.088874 0.856989
+vt 0.088868 0.899191
+vt 0.071353 0.455405
+vt 0.071355 0.435243
+vt 0.071355 0.429706
+vt 0.071354 0.373348
+vt 0.646676 0.852348
+vt 0.615956 0.852353
+vt 0.119641 0.435241
+vt 0.119640 0.455403
+vt 0.803407 0.368976
+vt 0.837982 0.354432
+vt 0.798793 0.367710
+vt 0.549576 0.806337
+vt 0.549571 0.848539
+vt 0.519600 0.848535
+vt 0.519605 0.806333
+vt 0.150455 0.737454
+vt 0.150455 0.712128
+vt 0.192657 0.712128
+vt 0.192657 0.737453
+vt 0.013545 0.650112
+vt 0.055319 0.659748
+vt 0.045231 0.682431
+vt 0.014082 0.675246
+vt 0.026404 0.621825
+vt 0.057553 0.629009
+vt 0.056687 0.653819
+vt 0.014912 0.644184
+vt 0.150455 0.706381
+vt 0.150453 0.683851
+vt 0.192655 0.683850
+vt 0.192657 0.706380
+vt 0.649023 0.722919
+vt 0.691225 0.722919
+vt 0.691224 0.745706
+vt 0.649022 0.745705
+vt 0.649024 0.692175
+vt 0.691226 0.692176
+vt 0.691225 0.717099
+vt 0.649023 0.717099
+vt 0.099681 0.899565
+vt 0.099676 0.857363
+vt 0.129648 0.857360
+vt 0.129653 0.899562
+vt 0.293827 0.618705
+vt 0.305318 0.641064
+vt 0.263544 0.650700
+vt 0.262677 0.625890
+vt 0.306686 0.646993
+vt 0.306148 0.672127
+vt 0.274999 0.679311
+vt 0.264911 0.656628
+vt 0.519632 0.803291
+vt 0.550781 0.803295
+vt 0.516576 0.806333
+vt 0.516570 0.848535
+vt 0.195699 0.738063
+vt 0.195699 0.712929
+vt 0.195699 0.707000
+vt 0.195697 0.684641
+vt 0.553777 0.806337
+vt 0.553772 0.848539
+vt 0.048227 0.683179
+vt 0.058362 0.660392
+vt 0.059704 0.654572
+vt 0.060574 0.629649
+vt 0.057716 0.625925
+vt 0.027744 0.619012
+vt 0.649023 0.688451
+vt 0.691225 0.688452
+vt 0.129484 0.854318
+vt 0.098335 0.854322
+vt 0.694267 0.691536
+vt 0.694267 0.716346
+vt 0.694267 0.722274
+vt 0.694265 0.744957
+vt 0.550775 0.851581
+vt 0.519626 0.851577
+vt 0.147413 0.738063
+vt 0.147413 0.712929
+vt 0.147413 0.707001
+vt 0.147411 0.684642
+vt 0.095326 0.899566
+vt 0.095321 0.857364
+vt 0.023389 0.621034
+vt 0.782521 0.761099
+vt 0.774741 0.761100
+vt 0.774742 0.708102
+vt 0.782522 0.708101
+vt 0.764751 0.761101
+vt 0.764752 0.708102
+vt 0.754072 0.761100
+vt 0.754073 0.708102
+vt 0.744330 0.761100
+vt 0.744331 0.708101
+vt 0.737009 0.761099
+vt 0.737009 0.708100
+vt 0.676962 0.681514
+vt 0.666972 0.681512
+vt 0.666978 0.628514
+vt 0.676968 0.628515
+vt 0.656293 0.681511
+vt 0.656300 0.628512
+vt 0.646551 0.681510
+vt 0.646558 0.628511
+vt 0.639229 0.681509
+vt 0.639236 0.628510
+vt 0.796289 0.709522
+vt 0.806279 0.709522
+vt 0.806279 0.762521
+vt 0.796289 0.762521
+vt 0.816958 0.709522
+vt 0.816958 0.762521
+vt 0.826699 0.709522
+vt 0.826700 0.762520
+vt 0.834021 0.709521
+vt 0.834022 0.762519
+vt 0.700259 0.628515
+vt 0.710249 0.628514
+vt 0.710256 0.681512
+vt 0.700266 0.681514
+vt 0.720928 0.628512
+vt 0.720935 0.681511
+vt 0.730670 0.628511
+vt 0.730676 0.681510
+vt 0.294342 0.818827
+vt 0.294629 0.828296
+vt 0.291271 0.837154
+vt 0.284779 0.844053
+vt 0.276140 0.847942
+vt 0.266671 0.848230
+vt 0.257813 0.844872
+vt 0.250914 0.838379
+vt 0.247025 0.829741
+vt 0.246737 0.820272
+vt 0.250096 0.811413
+vt 0.256588 0.804514
+vt 0.265226 0.800625
+vt 0.274696 0.800338
+vt 0.283554 0.803696
+vt 0.290453 0.810189
+vt 0.229675 0.844871
+vt 0.220817 0.848230
+vt 0.211348 0.847942
+vt 0.202709 0.844053
+vt 0.196217 0.837154
+vt 0.192859 0.828296
+vt 0.193146 0.818827
+vt 0.197035 0.810188
+vt 0.203934 0.803696
+vt 0.212792 0.800338
+vt 0.222261 0.800625
+vt 0.230900 0.804514
+vt 0.237392 0.811413
+vt 0.240751 0.820271
+vt 0.240463 0.829741
+vt 0.236574 0.838379
+vt 0.728869 0.625469
+vt 0.720231 0.625470
+vt 0.779996 0.764141
+vt 0.773097 0.764142
+vt 0.764239 0.764142
+vt 0.754769 0.764142
+vt 0.746131 0.764142
+vt 0.684742 0.681515
+vt 0.682216 0.684556
+vt 0.675317 0.684555
+vt 0.666459 0.684554
+vt 0.656990 0.684553
+vt 0.648352 0.684552
+vt 0.788509 0.709521
+vt 0.791034 0.706479
+vt 0.797933 0.706480
+vt 0.806791 0.706480
+vt 0.816261 0.706480
+vt 0.824899 0.706479
+vt 0.692479 0.628516
+vt 0.695004 0.625473
+vt 0.701903 0.625473
+vt 0.710761 0.625471
+vt 0.779996 0.705058
+vt 0.773098 0.705059
+vt 0.728876 0.684552
+vt 0.720238 0.684553
+vt 0.764239 0.705059
+vt 0.754770 0.705059
+vt 0.746132 0.705059
+vt 0.682223 0.625473
+vt 0.684749 0.628516
+vt 0.675325 0.625473
+vt 0.666466 0.625471
+vt 0.656997 0.625470
+vt 0.648359 0.625469
+vt 0.791035 0.765562
+vt 0.788509 0.762520
+vt 0.797934 0.765563
+vt 0.806792 0.765563
+vt 0.816261 0.765563
+vt 0.824899 0.765562
+vt 0.695011 0.684556
+vt 0.692486 0.681515
+vt 0.701910 0.684555
+vt 0.710769 0.684554
+vt 0.669258 0.547343
+vt 0.627057 0.547345
+vt 0.627060 0.518799
+vt 0.669262 0.518797
+vt 0.627060 0.514223
+vt 0.627058 0.489471
+vt 0.669260 0.489469
+vt 0.669262 0.514221
+vt 0.546437 0.490301
+vt 0.608857 0.530655
+vt 0.585230 0.544399
+vt 0.539426 0.514788
+vt 0.569191 0.468747
+vt 0.614995 0.498359
+vt 0.612160 0.525545
+vt 0.549740 0.485192
+vt 0.627057 0.484583
+vt 0.627055 0.467961
+vt 0.669257 0.467959
+vt 0.669259 0.484581
+vt 0.403412 0.527802
+vt 0.445614 0.527804
+vt 0.445611 0.541921
+vt 0.403409 0.541919
+vt 0.403414 0.495324
+vt 0.445616 0.495326
+vt 0.445615 0.523249
+vt 0.403413 0.523246
+vt 0.403411 0.462101
+vt 0.445613 0.462103
+vt 0.445616 0.490649
+vt 0.403414 0.490647
+vt 0.501226 0.467651
+vt 0.520677 0.484096
+vt 0.458256 0.524450
+vt 0.455422 0.497263
+vt 0.523980 0.489205
+vt 0.530990 0.513692
+vt 0.485187 0.543304
+vt 0.461560 0.529559
+vt 0.538435 0.517770
+vt 0.582591 0.546316
+vt 0.672304 0.515814
+vt 0.672302 0.491328
+vt 0.546964 0.483554
+vt 0.566625 0.466932
+vt 0.591689 0.855476
+vt 0.596874 0.855477
+vt 0.596869 0.897679
+vt 0.591685 0.897678
+vt 0.587775 0.546438
+vt 0.612042 0.532321
+vt 0.614987 0.527766
+vt 0.617898 0.499843
+vt 0.615659 0.495166
+vt 0.571503 0.466620
+vt 0.454757 0.494070
+vt 0.498913 0.465524
+vt 0.448658 0.493842
+vt 0.448657 0.521028
+vt 0.458374 0.531225
+vt 0.482641 0.545342
+vt 0.487825 0.545220
+vt 0.531981 0.516674
+vt 0.624018 0.515817
+vt 0.624016 0.491330
+vt 0.523451 0.482458
+vt 0.503790 0.465836
+vt 0.607978 0.897678
+vt 0.603100 0.897679
+vt 0.603096 0.855477
+vt 0.607973 0.855476
+vt 0.672301 0.486218
+vt 0.448656 0.526138
+vt 0.624015 0.486220
+vt 0.958782 0.699542
+vt 0.948974 0.699542
+vt 0.948977 0.646543
+vt 0.958784 0.646543
+vt 0.938292 0.699541
+vt 0.938294 0.646542
+vt 0.928361 0.699540
+vt 0.928363 0.646541
+vt 0.920692 0.699539
+vt 0.920695 0.646540
+vt 0.776211 0.698121
+vt 0.766404 0.698120
+vt 0.766409 0.645121
+vt 0.776217 0.645122
+vt 0.755721 0.698118
+vt 0.755727 0.645120
+vt 0.745790 0.698117
+vt 0.745796 0.645119
+vt 0.738122 0.698117
+vt 0.738127 0.645118
+vt 0.935759 0.709523
+vt 0.945567 0.709523
+vt 0.945569 0.762522
+vt 0.935762 0.762522
+vt 0.956249 0.709522
+vt 0.956252 0.762521
+vt 0.966180 0.709522
+vt 0.966183 0.762520
+vt 0.973848 0.709520
+vt 0.973851 0.762519
+vt 0.783764 0.645123
+vt 0.793572 0.645121
+vt 0.793577 0.698120
+vt 0.783770 0.698121
+vt 0.804254 0.645120
+vt 0.804260 0.698119
+vt 0.814186 0.645119
+vt 0.814191 0.698118
+vt 0.966221 0.699541
+vt 0.966223 0.646542
+vt 0.573198 0.762332
+vt 0.576691 0.771138
+vt 0.576547 0.780611
+vt 0.572790 0.789307
+vt 0.565990 0.795904
+vt 0.557184 0.799396
+vt 0.547712 0.799253
+vt 0.539015 0.795495
+vt 0.532419 0.788696
+vt 0.528926 0.779889
+vt 0.529070 0.770417
+vt 0.532827 0.761720
+vt 0.539627 0.755124
+vt 0.548433 0.751631
+vt 0.557905 0.751775
+vt 0.566602 0.755533
+vt 0.186728 0.820721
+vt 0.186872 0.830194
+vt 0.183379 0.839000
+vt 0.176783 0.845799
+vt 0.168086 0.849557
+vt 0.158614 0.849700
+vt 0.149808 0.846208
+vt 0.143008 0.839611
+vt 0.139251 0.830915
+vt 0.139107 0.821443
+vt 0.142600 0.812636
+vt 0.149196 0.805837
+vt 0.157893 0.802079
+vt 0.167365 0.801936
+vt 0.176171 0.805428
+vt 0.182971 0.812025
+vt 0.819301 0.642077
+vt 0.821854 0.645119
+vt 0.812501 0.642078
+vt 0.957020 0.702583
+vt 0.948323 0.702583
+vt 0.938851 0.702583
+vt 0.547874 0.748580
+vt 0.537943 0.752519
+vt 0.930044 0.702582
+vt 0.923245 0.702581
+vt 0.774449 0.701163
+vt 0.765752 0.701162
+vt 0.756280 0.701161
+vt 0.747473 0.701160
+vt 0.740674 0.701159
+vt 0.937521 0.706481
+vt 0.946218 0.706480
+vt 0.955690 0.706480
+vt 0.964496 0.706479
+vt 0.971296 0.706478
+vt 0.785526 0.642081
+vt 0.794223 0.642079
+vt 0.803695 0.642078
+vt 0.957022 0.643501
+vt 0.948326 0.643500
+vt 0.821859 0.698118
+vt 0.819307 0.701160
+vt 0.812508 0.701161
+vt 0.938853 0.643500
+vt 0.930047 0.643499
+vt 0.923248 0.643498
+vt 0.774455 0.642080
+vt 0.765759 0.642079
+vt 0.756286 0.642078
+vt 0.747480 0.642077
+vt 0.740680 0.642077
+vt 0.937524 0.765563
+vt 0.946220 0.765563
+vt 0.955693 0.765563
+vt 0.964499 0.765562
+vt 0.971299 0.765561
+vt 0.785532 0.701163
+vt 0.794229 0.701162
+vt 0.803701 0.701161
+vt 0.891773 0.353637
+vt 0.849571 0.353643
+vt 0.849566 0.299556
+vt 0.891768 0.299550
+vt 0.849565 0.295122
+vt 0.849560 0.278063
+vt 0.891762 0.278057
+vt 0.891767 0.295116
+vt 0.736522 0.363835
+vt 0.707115 0.315552
+vt 0.744935 0.292517
+vt 0.764987 0.346498
+vt 0.703950 0.310356
+vt 0.691273 0.289542
+vt 0.723866 0.269691
+vt 0.741613 0.287416
+vt 0.721374 0.754441
+vt 0.721370 0.785431
+vt 0.721369 0.799690
+vt 0.679167 0.799695
+vt 0.679168 0.785435
+vt 0.679172 0.754445
+vt 0.524098 0.855482
+vt 0.524092 0.897684
+vt 0.504580 0.897678
+vt 0.504586 0.855476
+vt 0.620273 0.323509
+vt 0.657935 0.346448
+vt 0.640188 0.364174
+vt 0.607596 0.344323
+vt 0.652845 0.270030
+vt 0.681309 0.287367
+vt 0.661257 0.341348
+vt 0.623437 0.318313
+vt 0.849571 0.358645
+vt 0.891773 0.358639
+vt 0.891774 0.376490
+vt 0.849572 0.376496
+vt 0.894809 0.297991
+vt 0.894815 0.351972
+vt 0.766114 0.349373
+vt 0.738105 0.366432
+vt 0.733925 0.365417
+vt 0.702935 0.314536
+vt 0.688676 0.291124
+vt 0.679172 0.750265
+vt 0.721374 0.750261
+vt 0.606013 0.346920
+vt 0.638049 0.366432
+vt 0.500405 0.855476
+vt 0.500400 0.897678
+vt 0.604997 0.342740
+vt 0.619257 0.319328
+vt 0.650247 0.268448
+vt 0.614511 0.856248
+vt 0.619261 0.856248
+vt 0.619257 0.898450
+vt 0.614506 0.898450
+vt 0.642799 0.365865
+vt 0.660672 0.348014
+vt 0.846528 0.351979
+vt 0.846523 0.297998
+vt 0.682436 0.284491
+vt 0.654427 0.267432
+vt 0.744350 0.285850
+vt 0.726477 0.267999
+vt 0.721727 0.267432
+vt 0.689691 0.286944
+vt 0.846529 0.357079
+vt 0.894815 0.357073
+vt 0.587061 0.806338
+vt 0.587057 0.848540
+vt 0.559764 0.848535
+vt 0.559767 0.806333
+vt 0.425469 0.794562
+vt 0.425472 0.769905
+vt 0.467674 0.769911
+vt 0.467671 0.794569
+vt 0.346437 0.572361
+vt 0.384479 0.592129
+vt 0.369043 0.611572
+vt 0.340678 0.596832
+vt 0.365957 0.548184
+vt 0.394323 0.562924
+vt 0.387285 0.586730
+vt 0.349243 0.566962
+vt 0.425473 0.764671
+vt 0.425475 0.745749
+vt 0.467676 0.745755
+vt 0.467675 0.764677
+vt 0.607158 0.806336
+vt 0.607155 0.848538
+vt 0.591648 0.848540
+vt 0.591651 0.806338
+vt 0.477579 0.750345
+vt 0.519781 0.750338
+vt 0.519784 0.774254
+vt 0.477582 0.774260
+vt 0.054988 0.568784
+vt 0.016946 0.588552
+vt 0.011186 0.564081
+vt 0.039552 0.549341
+vt 0.064831 0.597989
+vt 0.036465 0.612729
+vt 0.019751 0.593950
+vt 0.057793 0.574183
+vt 0.535550 0.855481
+vt 0.562844 0.855476
+vt 0.562847 0.897678
+vt 0.535553 0.897682
+vt 0.560571 0.803291
+vt 0.588937 0.803295
+vt 0.467670 0.798933
+vt 0.425468 0.798926
+vt 0.470713 0.795923
+vt 0.470716 0.771452
+vt 0.470717 0.766053
+vt 0.470718 0.747275
+vt 0.371758 0.613045
+vt 0.387264 0.593513
+vt 0.477583 0.779560
+vt 0.519785 0.779554
+vt 0.390018 0.588213
+vt 0.397088 0.564298
+vt 0.522828 0.797612
+vt 0.519786 0.799086
+vt 0.522826 0.778169
+vt 0.588934 0.851581
+vt 0.560568 0.851577
+vt 0.522826 0.772770
+vt 0.522823 0.748964
+vt 0.422427 0.795916
+vt 0.422430 0.771445
+vt 0.422431 0.766046
+vt 0.422432 0.747267
+vt 0.367958 0.545795
+vt 0.395251 0.559978
+vt 0.530831 0.897683
+vt 0.530828 0.855481
+vt 0.038467 0.615117
+vt 0.065760 0.600934
+vt 0.519780 0.746019
+vt 0.477578 0.746025
+vt 0.363236 0.546665
+vt 0.033745 0.614247
+vt 0.442420 0.626229
+vt 0.451783 0.626227
+vt 0.451791 0.679226
+vt 0.442428 0.679228
+vt 0.462403 0.626226
+vt 0.462410 0.679224
+vt 0.472662 0.626224
+vt 0.472670 0.679223
+vt 0.480999 0.626224
+vt 0.481006 0.679222
+vt 0.867986 0.699542
+vt 0.858623 0.699542
+vt 0.858627 0.646544
+vt 0.867990 0.646544
+vt 0.848003 0.699542
+vt 0.848007 0.646543
+vt 0.837744 0.699541
+vt 0.837748 0.646542
+vt 0.829407 0.699539
+vt 0.829411 0.646540
+vt 0.525666 0.679228
+vt 0.516303 0.679226
+vt 0.516310 0.626227
+vt 0.525673 0.626229
+vt 0.505683 0.679224
+vt 0.505691 0.626226
+vt 0.495424 0.679223
+vt 0.495432 0.626224
+vt 0.487087 0.679222
+vt 0.487095 0.626224
+vt 0.875050 0.646544
+vt 0.884413 0.646544
+vt 0.884417 0.699543
+vt 0.875054 0.699543
+vt 0.895032 0.646543
+vt 0.895036 0.699542
+vt 0.905291 0.646542
+vt 0.905295 0.699541
+vt 0.435739 0.626231
+vt 0.435747 0.679229
+vt 0.743100 0.866193
+vt 0.734003 0.868838
+vt 0.724587 0.867799
+vt 0.716284 0.863237
+vt 0.710360 0.855844
+vt 0.707716 0.846747
+vt 0.708754 0.837331
+vt 0.713317 0.829028
+vt 0.720709 0.823104
+vt 0.729806 0.820460
+vt 0.739223 0.821498
+vt 0.747525 0.826061
+vt 0.753449 0.833453
+vt 0.756094 0.842550
+vt 0.755055 0.851967
+vt 0.750493 0.860269
+vt 0.700691 0.820933
+vt 0.701729 0.830349
+vt 0.699085 0.839446
+vt 0.693160 0.846839
+vt 0.684858 0.851402
+vt 0.675441 0.852440
+vt 0.666344 0.849796
+vt 0.658952 0.843871
+vt 0.654389 0.835569
+vt 0.653351 0.826153
+vt 0.655995 0.817056
+vt 0.661919 0.809663
+vt 0.670222 0.805100
+vt 0.679638 0.804062
+vt 0.688735 0.806706
+vt 0.696128 0.812631
+vt 0.911253 0.643498
+vt 0.913628 0.646540
+vt 0.903861 0.643500
+vt 0.444415 0.623187
+vt 0.452718 0.623185
+vt 0.462134 0.623184
+vt 0.471231 0.623183
+vt 0.478624 0.623182
+vt 0.865990 0.702584
+vt 0.857687 0.702584
+vt 0.848271 0.702583
+vt 0.839174 0.702582
+vt 0.831781 0.702581
+vt 0.523670 0.682270
+vt 0.515367 0.682268
+vt 0.505951 0.682267
+vt 0.496854 0.682266
+vt 0.489461 0.682265
+vt 0.877045 0.643501
+vt 0.885347 0.643501
+vt 0.894764 0.643501
+vt 0.444424 0.682270
+vt 0.452726 0.682268
+vt 0.913632 0.699539
+vt 0.911258 0.702581
+vt 0.903865 0.702583
+vt 0.462143 0.682267
+vt 0.471240 0.682266
+vt 0.478632 0.682265
+vt 0.865994 0.643501
+vt 0.857692 0.643501
+vt 0.848276 0.643501
+vt 0.839179 0.643499
+vt 0.831786 0.643498
+vt 0.523678 0.623187
+vt 0.515376 0.623185
+vt 0.505960 0.623184
+vt 0.496863 0.623183
+vt 0.489470 0.623182
+vt 0.877050 0.702584
+vt 0.885352 0.702584
+vt 0.894768 0.702584
+vt 0.762851 0.531401
+vt 0.805053 0.531401
+vt 0.805047 0.558522
+vt 0.762845 0.558522
+vt 0.817233 0.558098
+vt 0.817235 0.540857
+vt 0.859437 0.540857
+vt 0.859434 0.558098
+vt 0.337086 0.473309
+vt 0.375426 0.536986
+vt 0.348163 0.538951
+vt 0.320029 0.492225
+vt 0.366997 0.463945
+vt 0.395131 0.510672
+vt 0.380638 0.533847
+vt 0.342299 0.470170
+vt 0.817236 0.535869
+vt 0.817237 0.510905
+vt 0.859439 0.510905
+vt 0.859438 0.535870
+vt 0.762851 0.498796
+vt 0.805053 0.498796
+vt 0.805053 0.526797
+vt 0.762851 0.526798
+vt 0.762847 0.479265
+vt 0.805049 0.479264
+vt 0.805052 0.494149
+vt 0.762850 0.494149
+vt 0.859438 0.506386
+vt 0.817237 0.506386
+vt 0.817231 0.479264
+vt 0.859433 0.479265
+vt 0.754735 0.498094
+vt 0.748510 0.522793
+vt 0.684833 0.484453
+vt 0.708008 0.469961
+vt 0.745371 0.528005
+vt 0.726456 0.545062
+vt 0.679729 0.516928
+vt 0.681694 0.489665
+vt 0.317829 0.494468
+vt 0.344950 0.539513
+vt 0.580280 0.855476
+vt 0.585145 0.855477
+vt 0.585140 0.897679
+vt 0.580274 0.897678
+vt 0.318297 0.489602
+vt 0.335538 0.470482
+vt 0.340525 0.467480
+vt 0.365490 0.461188
+vt 0.349554 0.541900
+vt 0.377555 0.539882
+vt 0.382202 0.537084
+vt 0.397087 0.513281
+vt 0.397130 0.508095
+vt 0.370009 0.463050
+vt 0.574055 0.897678
+vt 0.568869 0.897679
+vt 0.568864 0.855477
+vt 0.574049 0.855476
+vt 0.710584 0.467961
+vt 0.755629 0.495082
+vt 0.705399 0.468005
+vt 0.681595 0.482889
+vt 0.808094 0.500925
+vt 0.808095 0.528188
+vt 0.679167 0.520141
+vt 0.724212 0.547262
+vt 0.729077 0.546794
+vt 0.748197 0.529553
+vt 0.814193 0.534096
+vt 0.814194 0.509398
+vt 0.808094 0.495713
+vt 0.814193 0.539308
+vt 0.603933 0.628491
+vt 0.614605 0.628489
+vt 0.614612 0.681488
+vt 0.603941 0.681490
+vt 0.624272 0.628488
+vt 0.624279 0.681487
+vt 0.631463 0.628487
+vt 0.631470 0.681486
+vt 0.921871 0.762521
+vt 0.911819 0.762522
+vt 0.911818 0.709523
+vt 0.921870 0.709522
+vt 0.901147 0.762522
+vt 0.901146 0.709523
+vt 0.891480 0.762521
+vt 0.891479 0.709522
+vt 0.884289 0.762520
+vt 0.884289 0.709521
+vt 0.570311 0.679454
+vt 0.560259 0.679453
+vt 0.560267 0.626454
+vt 0.570319 0.626455
+vt 0.549588 0.679451
+vt 0.549595 0.626453
+vt 0.539920 0.679450
+vt 0.539928 0.626451
+vt 0.532730 0.679449
+vt 0.532737 0.626450
+vt 0.847911 0.709522
+vt 0.857963 0.709523
+vt 0.857963 0.762522
+vt 0.847911 0.762521
+vt 0.868635 0.709523
+vt 0.868634 0.762522
+vt 0.878302 0.709522
+vt 0.878301 0.762521
+vt 0.585980 0.628493
+vt 0.593881 0.628492
+vt 0.593889 0.681491
+vt 0.585987 0.681492
+vt 0.453368 0.839361
+vt 0.446992 0.846368
+vt 0.438420 0.850401
+vt 0.428957 0.850847
+vt 0.420043 0.847638
+vt 0.413037 0.841262
+vt 0.409003 0.832690
+vt 0.408557 0.823227
+vt 0.411767 0.814314
+vt 0.418143 0.807307
+vt 0.426715 0.803273
+vt 0.436178 0.802828
+vt 0.445091 0.806037
+vt 0.452098 0.812413
+vt 0.456131 0.820985
+vt 0.456577 0.830448
+vt 0.510138 0.832843
+vt 0.506104 0.841415
+vt 0.499098 0.847791
+vt 0.490184 0.851000
+vt 0.480721 0.850554
+vt 0.472149 0.846521
+vt 0.465773 0.839514
+vt 0.462564 0.830601
+vt 0.463010 0.821138
+vt 0.467043 0.812566
+vt 0.474050 0.806190
+vt 0.482963 0.802980
+vt 0.492426 0.803426
+vt 0.500998 0.807460
+vt 0.507374 0.814466
+vt 0.510584 0.823380
+vt 0.604394 0.625449
+vt 0.595481 0.625450
+vt 0.613857 0.625447
+vt 0.622429 0.625446
+vt 0.929772 0.762520
+vt 0.927277 0.765562
+vt 0.920271 0.765563
+vt 0.911357 0.765563
+vt 0.901894 0.765563
+vt 0.893322 0.765563
+vt 0.578213 0.679455
+vt 0.575718 0.682497
+vt 0.568711 0.682496
+vt 0.559798 0.682495
+vt 0.550335 0.682494
+vt 0.541763 0.682492
+vt 0.840009 0.709521
+vt 0.842504 0.706479
+vt 0.849511 0.706480
+vt 0.858424 0.706480
+vt 0.867887 0.706480
+vt 0.876459 0.706480
+vt 0.588474 0.625451
+vt 0.604402 0.684532
+vt 0.613865 0.684530
+vt 0.595489 0.684533
+vt 0.622437 0.684529
+vt 0.927277 0.706479
+vt 0.929772 0.709521
+vt 0.920270 0.706480
+vt 0.911357 0.706480
+vt 0.901894 0.706480
+vt 0.893322 0.706480
+vt 0.575726 0.623414
+vt 0.578220 0.626456
+vt 0.568719 0.623413
+vt 0.559806 0.623412
+vt 0.550343 0.623411
+vt 0.541771 0.623409
+vt 0.842504 0.765562
+vt 0.840009 0.762520
+vt 0.849510 0.765563
+vt 0.858424 0.765563
+vt 0.867887 0.765563
+vt 0.876459 0.765563
+vt 0.588482 0.684534
+vt 0.359680 0.364749
+vt 0.359673 0.304913
+vt 0.420390 0.304055
+vt 0.420397 0.364742
+vt 0.359668 0.262320
+vt 0.420386 0.262313
+vt 0.277906 0.136436
+vt 0.277892 0.004748
+vt 0.279921 0.007870
+vt 0.281567 0.013443
+vt 0.281580 0.127740
+vt 0.279935 0.133314
+vt 0.363475 0.004738
+vt 0.361446 0.007860
+vt 0.356835 0.010392
+vt 0.284533 0.010401
+vt 0.363490 0.136426
+vt 0.361460 0.133304
+vt 0.359815 0.127731
+vt 0.359802 0.013434
+vt 0.284546 0.130782
+vt 0.356849 0.130773
+vt 0.511125 0.261321
+vt 0.511112 0.145198
+vt 0.515930 0.149899
+vt 0.515942 0.256619
+vt 0.585071 0.145321
+vt 0.580964 0.149753
+vt 0.585084 0.261181
+vt 0.580976 0.256750
+vt 0.432712 0.262313
+vt 0.432709 0.364742
+vt 0.428132 0.364742
+vt 0.428133 0.322150
+vt 0.428135 0.262313
+vt 0.179773 0.618104
+vt 0.193613 0.678822
+vt 0.189036 0.679865
+vt 0.175196 0.619148
+vt 0.044150 0.148992
+vt 0.044153 0.251420
+vt 0.039576 0.251420
+vt 0.039574 0.190734
+vt 0.039573 0.148992
+vt 0.218337 0.619148
+vt 0.204496 0.679865
+vt 0.199919 0.678822
+vt 0.213759 0.618105
+vt 0.409502 0.005035
+vt 0.519768 0.005034
+vt 0.519772 0.136123
+vt 0.409506 0.136124
+vt 0.115176 0.001992
+vt 0.134605 0.087225
+vt 0.121289 0.119176
+vt 0.030604 0.139847
+vt 0.017757 0.083487
+vt 0.004910 0.027127
+vt 0.816092 0.001998
+vt 0.816077 0.133087
+vt 0.762683 0.133081
+vt 0.762698 0.001992
+vt 0.875403 0.133094
+vt 0.822009 0.133088
+vt 0.822024 0.001999
+vt 0.875418 0.002005
+vt 0.973094 0.140031
+vt 0.973090 0.271120
+vt 0.883843 0.271120
+vt 0.883846 0.140031
+vt 0.368080 0.136126
+vt 0.368065 0.005037
+vt 0.396745 0.005034
+vt 0.396759 0.136123
+vt 0.257343 0.022664
+vt 0.270659 0.054614
+vt 0.251230 0.139847
+vt 0.140964 0.114712
+vt 0.153811 0.058352
+vt 0.166658 0.001992
+vt 0.407216 0.136123
+vt 0.407213 0.005034
+vt 0.410182 0.139165
+vt 0.520448 0.139165
+vt 0.001944 0.027803
+vt 0.014115 0.081197
+vt 0.015467 0.087129
+vt 0.279766 0.139178
+vt 0.365000 0.139168
+vt 0.523144 0.136423
+vt 0.523141 0.004735
+vt 0.027638 0.140523
+vt 0.031280 0.142813
+vt 0.120527 0.122469
+vt 0.877708 0.002006
+vt 0.877693 0.133095
+vt 0.396950 0.139165
+vt 0.400243 0.136123
+vt 0.400229 0.005034
+vt 0.874727 0.136136
+vt 0.818367 0.136130
+vt 0.883167 0.274162
+vt 0.973851 0.274162
+vt 0.396935 0.001992
+vt 0.364985 0.001995
+vt 0.762007 0.136123
+vt 0.410179 0.001992
+vt 0.520445 0.001992
+vt 0.279751 0.002005
+vt 0.004234 0.024161
+vt 0.880201 0.271120
+vt 0.759041 0.133081
+vt 0.499484 0.146103
+vt 0.501659 0.146103
+vt 0.501662 0.260400
+vt 0.499487 0.260400
+vt 0.817866 0.565384
+vt 0.820042 0.565879
+vt 0.803560 0.638182
+vt 0.801385 0.637686
+vt 0.773577 0.562913
+vt 0.775752 0.562417
+vt 0.792234 0.634720
+vt 0.790058 0.635216
+vt 0.389851 0.143073
+vt 0.392026 0.143073
+vt 0.392023 0.257370
+vt 0.389847 0.257370
+vt 0.500160 0.143060
+vt 0.502335 0.143060
+vt 0.505122 0.145189
+vt 0.505125 0.261313
+vt 0.512573 0.143069
+vt 0.584876 0.143060
+vt 0.500163 0.263441
+vt 0.502339 0.263441
+vt 0.512586 0.263450
+vt 0.584889 0.263441
+vt 0.818542 0.562417
+vt 0.820718 0.562913
+vt 0.587842 0.146102
+vt 0.587855 0.260399
+vt 0.790734 0.638182
+vt 0.792910 0.637686
+vt 0.518806 0.152044
+vt 0.518817 0.254473
+vt 0.579523 0.152037
+vt 0.579534 0.254466
+vt 0.047599 0.146708
+vt 0.047602 0.253704
+vt 0.823206 0.565685
+vt 0.795398 0.634914
+vt 0.646208 0.553340
+vt 0.651689 0.552073
+vt 0.667241 0.620301
+vt 0.661756 0.621551
+vt 0.655397 0.551240
+vt 0.670947 0.619456
+vt 0.568810 0.971342
+vt 0.568810 0.965857
+vt 0.568810 0.962151
+vt 0.577730 0.962152
+vt 0.577730 0.965857
+vt 0.577730 0.971342
+vt 0.629656 0.551240
+vt 0.635141 0.552490
+vt 0.619589 0.620718
+vt 0.614108 0.619451
+vt 0.638847 0.553335
+vt 0.623297 0.621551
+vt 0.716730 0.986437
+vt 0.716730 0.980956
+vt 0.716730 0.977248
+vt 0.725650 0.977248
+vt 0.725650 0.980956
+vt 0.725650 0.986437
+vt 0.468043 0.549237
+vt 0.476963 0.549238
+vt 0.476955 0.617449
+vt 0.468035 0.617448
+vt 0.007213 0.619012
+vt 0.007221 0.683664
+vt 0.001951 0.683665
+vt 0.001944 0.619012
+vt 0.723824 0.975061
+vt 0.718555 0.975061
+vt 0.657583 0.552619
+vt 0.672321 0.617271
+vt 0.570635 0.960778
+vt 0.575904 0.960778
+vt 0.640221 0.555520
+vt 0.625483 0.620172
+vt 0.363192 0.964344
+vt 0.366297 0.963636
+vt 0.367678 0.969694
+vt 0.364573 0.970402
+vt 0.170019 0.547765
+vt 0.173124 0.547765
+vt 0.173122 0.613738
+vt 0.170017 0.613738
+vt 0.447504 0.965739
+vt 0.450610 0.966447
+vt 0.449229 0.972506
+vt 0.446123 0.971798
+vt 0.104774 0.547765
+vt 0.107880 0.547765
+vt 0.107881 0.613738
+vt 0.104776 0.613738
+vt 0.204590 0.614209
+vt 0.204597 0.548236
+vt 0.210656 0.548237
+vt 0.210649 0.614210
+vt 0.146669 0.617633
+vt 0.149168 0.617633
+vt 0.149175 0.679955
+vt 0.146676 0.679956
+vt 0.110067 0.611913
+vt 0.110065 0.549590
+vt 0.368483 0.965010
+vt 0.369052 0.967509
+vt 0.174498 0.549590
+vt 0.174496 0.611913
+vt 0.451984 0.968632
+vt 0.451414 0.971131
+vt 0.434276 0.966447
+vt 0.437382 0.965739
+vt 0.438763 0.971798
+vt 0.435657 0.972506
+vt 0.071749 0.548647
+vt 0.074854 0.548647
+vt 0.074853 0.614620
+vt 0.071747 0.614620
+vt 0.423810 0.966074
+vt 0.426915 0.966782
+vt 0.425534 0.972840
+vt 0.422429 0.972132
+vt 0.127333 0.547765
+vt 0.130438 0.547765
+vt 0.130440 0.613738
+vt 0.127335 0.613738
+vt 0.228695 0.614209
+vt 0.228703 0.548236
+vt 0.234761 0.548237
+vt 0.234754 0.614210
+vt 0.127651 0.617633
+vt 0.130150 0.617633
+vt 0.130157 0.679955
+vt 0.127658 0.679956
+vt 0.132626 0.611913
+vt 0.132624 0.549590
+vt 0.439567 0.967113
+vt 0.440136 0.969612
+vt 0.076228 0.550472
+vt 0.076227 0.612795
+vt 0.428289 0.968967
+vt 0.427719 0.971466
+vt 0.410581 0.967001
+vt 0.413687 0.966293
+vt 0.415068 0.972351
+vt 0.411962 0.973059
+vt 0.159551 0.547765
+vt 0.162656 0.547765
+vt 0.162654 0.613738
+vt 0.159549 0.613738
+vt 0.400115 0.966293
+vt 0.403221 0.967001
+vt 0.401839 0.973059
+vt 0.398734 0.972351
+vt 0.093495 0.548647
+vt 0.096600 0.548647
+vt 0.096602 0.614620
+vt 0.093496 0.614620
+vt 0.192538 0.614209
+vt 0.192545 0.548236
+vt 0.198603 0.548237
+vt 0.198596 0.614210
+vt 0.156178 0.617633
+vt 0.158677 0.617633
+vt 0.158684 0.679955
+vt 0.156185 0.679956
+vt 0.098787 0.612795
+vt 0.098785 0.550472
+vt 0.415872 0.967667
+vt 0.416442 0.970166
+vt 0.164030 0.549590
+vt 0.164028 0.611913
+vt 0.404595 0.969186
+vt 0.404025 0.971685
+vt 0.469818 0.966447
+vt 0.472923 0.965739
+vt 0.474304 0.971798
+vt 0.471199 0.972506
+vt 0.149082 0.547765
+vt 0.152188 0.547765
+vt 0.152186 0.613738
+vt 0.149080 0.613738
+vt 0.388268 0.966293
+vt 0.391373 0.967001
+vt 0.389992 0.973059
+vt 0.386887 0.972351
+vt 0.116053 0.547765
+vt 0.119159 0.547765
+vt 0.119161 0.613738
+vt 0.116055 0.613738
+vt 0.216643 0.614209
+vt 0.216650 0.548236
+vt 0.222708 0.548237
+vt 0.222701 0.614210
+vt 0.137160 0.617633
+vt 0.139659 0.617633
+vt 0.139666 0.679955
+vt 0.137167 0.679956
+vt 0.121346 0.611913
+vt 0.121344 0.549590
+vt 0.475109 0.967113
+vt 0.475678 0.969612
+vt 0.153562 0.549590
+vt 0.153560 0.611913
+vt 0.392747 0.969186
+vt 0.392177 0.971685
+vt 0.457971 0.966447
+vt 0.461076 0.965739
+vt 0.462457 0.971798
+vt 0.459352 0.972506
+vt 0.138614 0.547765
+vt 0.141720 0.547765
+vt 0.141718 0.613738
+vt 0.138612 0.613738
+vt 0.376420 0.963636
+vt 0.379526 0.964344
+vt 0.378145 0.970402
+vt 0.375039 0.969694
+vt 0.082215 0.548647
+vt 0.085321 0.548647
+vt 0.085323 0.614620
+vt 0.082217 0.614620
+vt 0.180485 0.614209
+vt 0.180492 0.548236
+vt 0.186551 0.548237
+vt 0.186543 0.614210
+vt 0.165687 0.617633
+vt 0.168186 0.617633
+vt 0.168193 0.679955
+vt 0.165694 0.679956
+vt 0.087508 0.612795
+vt 0.087506 0.550472
+vt 0.463261 0.967113
+vt 0.463831 0.969612
+vt 0.143094 0.549590
+vt 0.143092 0.611913
+vt 0.380900 0.966529
+vt 0.380330 0.969028
+vt 0.601578 0.934591
+vt 0.598103 0.933435
+vt 0.598103 0.902618
+vt 0.601578 0.903774
+vt 0.592901 0.932662
+vt 0.592901 0.901845
+vt 0.586764 0.932390
+vt 0.586764 0.901574
+vt 0.580627 0.932662
+vt 0.580627 0.901845
+vt 0.575425 0.933434
+vt 0.575425 0.902617
+vt 0.571948 0.934590
+vt 0.571948 0.903773
+vt 0.802293 0.948920
+vt 0.796310 0.950283
+vt 0.789285 0.919467
+vt 0.795268 0.918103
+vt 0.790326 0.951647
+vt 0.783302 0.920831
+vt 0.785254 0.952804
+vt 0.778229 0.921987
+vt 0.781864 0.953576
+vt 0.774839 0.922760
+vt 0.565961 0.934322
+vt 0.559825 0.934594
+vt 0.559824 0.903777
+vt 0.565961 0.903506
+vt 0.553688 0.934323
+vt 0.553688 0.903506
+vt 0.548485 0.933550
+vt 0.548485 0.902734
+vt 0.545008 0.932394
+vt 0.545008 0.901577
+vt 0.636556 0.935694
+vt 0.630573 0.934330
+vt 0.637598 0.903513
+vt 0.643581 0.904877
+vt 0.624590 0.932966
+vt 0.631615 0.902150
+vt 0.379023 0.931138
+vt 0.373040 0.932358
+vt 0.367057 0.931136
+vt 0.361985 0.927660
+vt 0.358596 0.922457
+vt 0.357407 0.916320
+vt 0.358598 0.910183
+vt 0.361988 0.904981
+vt 0.367060 0.901506
+vt 0.373044 0.900286
+vt 0.379027 0.901507
+vt 0.384098 0.904984
+vt 0.387487 0.910187
+vt 0.388677 0.916324
+vt 0.387486 0.922460
+vt 0.384096 0.927662
+vt 0.309292 0.937538
+vt 0.313090 0.940140
+vt 0.315629 0.944035
+vt 0.316520 0.948630
+vt 0.315630 0.953226
+vt 0.313092 0.957121
+vt 0.309294 0.959725
+vt 0.304814 0.960639
+vt 0.300334 0.959726
+vt 0.296536 0.957123
+vt 0.293998 0.953228
+vt 0.293106 0.948633
+vt 0.293997 0.944038
+vt 0.296534 0.940142
+vt 0.300332 0.937539
+vt 0.304812 0.936624
+vt 0.303714 0.901878
+vt 0.308786 0.905353
+vt 0.306010 0.908202
+vt 0.302211 0.905600
+vt 0.312176 0.910555
+vt 0.308548 0.912097
+vt 0.313367 0.916692
+vt 0.309439 0.916692
+vt 0.312178 0.922828
+vt 0.308549 0.921287
+vt 0.308789 0.928031
+vt 0.306011 0.925183
+vt 0.303717 0.931508
+vt 0.302214 0.927787
+vt 0.297734 0.932729
+vt 0.297734 0.928701
+vt 0.291751 0.931509
+vt 0.293253 0.927788
+vt 0.286678 0.928034
+vt 0.289455 0.925185
+vt 0.283288 0.922832
+vt 0.286917 0.921290
+vt 0.282098 0.916695
+vt 0.286025 0.916695
+vt 0.283287 0.910559
+vt 0.286916 0.912100
+vt 0.286676 0.905356
+vt 0.289453 0.908204
+vt 0.291747 0.901879
+vt 0.293251 0.905601
+vt 0.297731 0.900658
+vt 0.297731 0.904686
+vt 0.505937 0.939029
+vt 0.506802 0.941631
+vt 0.505069 0.941631
+vt 0.504203 0.939029
+vt 0.507381 0.945526
+vt 0.505648 0.945526
+vt 0.507584 0.950121
+vt 0.505851 0.950121
+vt 0.507381 0.954716
+vt 0.505648 0.954716
+vt 0.506803 0.958612
+vt 0.505070 0.958612
+vt 0.505937 0.961216
+vt 0.504204 0.961216
+vt 0.911482 0.980000
+vt 0.910461 0.984480
+vt 0.908728 0.984085
+vt 0.909749 0.979605
+vt 0.909440 0.988961
+vt 0.907706 0.988566
+vt 0.908574 0.992759
+vt 0.906840 0.992364
+vt 0.907995 0.995297
+vt 0.906262 0.994902
+vt 0.884188 0.979605
+vt 0.883985 0.984200
+vt 0.882251 0.984200
+vt 0.882455 0.979605
+vt 0.884188 0.988796
+vt 0.882454 0.988796
+vt 0.884766 0.992691
+vt 0.883033 0.992691
+vt 0.885632 0.995295
+vt 0.883898 0.995295
+vt 0.560780 0.960782
+vt 0.561802 0.965263
+vt 0.560068 0.965658
+vt 0.559047 0.961178
+vt 0.562823 0.969743
+vt 0.561090 0.970138
+vt 0.384551 0.959741
+vt 0.382078 0.958918
+vt 0.382078 0.936995
+vt 0.384551 0.937818
+vt 0.378378 0.958369
+vt 0.378378 0.936446
+vt 0.374012 0.958175
+vt 0.374012 0.936252
+vt 0.369646 0.958368
+vt 0.369646 0.936445
+vt 0.365945 0.958918
+vt 0.365945 0.936995
+vt 0.363472 0.959740
+vt 0.363472 0.937817
+vt 0.202333 0.961003
+vt 0.198077 0.961973
+vt 0.193080 0.940050
+vt 0.197336 0.939080
+vt 0.193820 0.962944
+vt 0.188823 0.941021
+vt 0.190212 0.963766
+vt 0.185214 0.941843
+vt 0.187800 0.964316
+vt 0.182803 0.942393
+vt 0.406904 0.962205
+vt 0.402539 0.962398
+vt 0.402539 0.940475
+vt 0.406904 0.940282
+vt 0.398173 0.962205
+vt 0.398173 0.940282
+vt 0.394472 0.961656
+vt 0.394472 0.939733
+vt 0.391998 0.960833
+vt 0.391998 0.938910
+vt 0.351065 0.960297
+vt 0.346809 0.959326
+vt 0.351806 0.937403
+vt 0.356062 0.938374
+vt 0.342552 0.958356
+vt 0.347549 0.936433
+vt 0.447314 0.960976
+vt 0.443057 0.961844
+vt 0.438801 0.960975
+vt 0.435192 0.958502
+vt 0.432782 0.954801
+vt 0.431936 0.950435
+vt 0.432783 0.946070
+vt 0.435194 0.942369
+vt 0.438803 0.939896
+vt 0.443060 0.939028
+vt 0.447316 0.939897
+vt 0.450924 0.942371
+vt 0.453335 0.946072
+vt 0.454181 0.950438
+vt 0.453334 0.954803
+vt 0.450922 0.958504
+vt 0.705896 0.955177
+vt 0.708598 0.957029
+vt 0.710404 0.959800
+vt 0.711038 0.963069
+vt 0.710404 0.966338
+vt 0.708599 0.969109
+vt 0.705897 0.970961
+vt 0.702710 0.971612
+vt 0.699523 0.970962
+vt 0.696821 0.969111
+vt 0.695015 0.966339
+vt 0.694381 0.963071
+vt 0.695015 0.959802
+vt 0.696820 0.957030
+vt 0.699521 0.955178
+vt 0.702708 0.954527
+vt 0.475840 0.939896
+vt 0.479449 0.942369
+vt 0.477473 0.944396
+vt 0.474771 0.942544
+vt 0.481860 0.946070
+vt 0.479279 0.947167
+vt 0.482708 0.950435
+vt 0.479913 0.950435
+vt 0.481861 0.954801
+vt 0.479280 0.953704
+vt 0.479451 0.958502
+vt 0.477475 0.956476
+vt 0.475843 0.960975
+vt 0.474773 0.958328
+vt 0.471586 0.961844
+vt 0.471586 0.958979
+vt 0.467330 0.960976
+vt 0.468399 0.958329
+vt 0.463721 0.958504
+vt 0.465696 0.956477
+vt 0.461310 0.954803
+vt 0.463891 0.953706
+vt 0.460462 0.950438
+vt 0.463256 0.950437
+vt 0.461309 0.946072
+vt 0.463890 0.947168
+vt 0.463719 0.942371
+vt 0.465695 0.944397
+vt 0.467327 0.939897
+vt 0.468397 0.942545
+vt 0.471584 0.939029
+vt 0.471584 0.941894
+vt 0.934763 0.981207
+vt 0.935379 0.983058
+vt 0.933026 0.983058
+vt 0.932410 0.981207
+vt 0.935790 0.985829
+vt 0.933438 0.985829
+vt 0.935935 0.989098
+vt 0.933582 0.989098
+vt 0.935791 0.992367
+vt 0.933438 0.992367
+vt 0.935379 0.995139
+vt 0.933026 0.995139
+vt 0.934763 0.996991
+vt 0.932410 0.996991
+vt 0.736470 0.978211
+vt 0.735744 0.981398
+vt 0.733391 0.980862
+vt 0.734117 0.977675
+vt 0.735017 0.984585
+vt 0.732664 0.984049
+vt 0.734401 0.987287
+vt 0.732048 0.986751
+vt 0.733990 0.989093
+vt 0.731637 0.988557
+vt 0.709716 0.975507
+vt 0.709572 0.978775
+vt 0.707219 0.978775
+vt 0.707363 0.975507
+vt 0.709716 0.982045
+vt 0.707363 0.982045
+vt 0.710127 0.984816
+vt 0.707775 0.984816
+vt 0.710743 0.986668
+vt 0.708390 0.986668
+vt 0.484018 0.965739
+vt 0.484745 0.968926
+vt 0.482392 0.969463
+vt 0.481665 0.966275
+vt 0.485471 0.972113
+vt 0.483118 0.972650
+vt 0.327636 0.618265
+vt 0.330342 0.618265
+vt 0.330343 0.677065
+vt 0.327638 0.677065
+vt 0.335752 0.937514
+vt 0.326538 0.959701
+vt 0.323832 0.958621
+vt 0.333046 0.936433
+vt 0.394916 0.621679
+vt 0.417103 0.621676
+vt 0.417110 0.680476
+vt 0.394922 0.680479
+vt 0.427036 0.620900
+vt 0.427034 0.679700
+vt 0.424329 0.679700
+vt 0.424330 0.620900
+vt 0.415624 0.938910
+vt 0.424838 0.961098
+vt 0.422132 0.962179
+vt 0.412918 0.939991
+vt 0.327340 0.677842
+vt 0.330045 0.677842
+vt 0.393907 0.680479
+vt 0.393900 0.621679
+vt 0.336469 0.937811
+vt 0.327255 0.959999
+vt 0.323534 0.959338
+vt 0.326240 0.960419
+vt 0.428051 0.620900
+vt 0.428050 0.679700
+vt 0.424626 0.680476
+vt 0.427332 0.680477
+vt 0.416805 0.620899
+vt 0.394617 0.620902
+vt 0.327338 0.617489
+vt 0.330044 0.617488
+vt 0.336050 0.936796
+vt 0.600502 0.961677
+vt 0.603391 0.962877
+vt 0.599437 0.972399
+vt 0.596547 0.971199
+vt 0.840818 0.958187
+vt 0.843708 0.958187
+vt 0.843708 0.974635
+vt 0.840818 0.974635
+vt 0.583716 0.961934
+vt 0.586606 0.960734
+vt 0.590561 0.970256
+vt 0.587671 0.971456
+vt 0.850327 0.958187
+vt 0.853216 0.958187
+vt 0.853217 0.974635
+vt 0.850327 0.974635
+vt 0.738124 0.973780
+vt 0.738122 0.957332
+vt 0.747644 0.957331
+vt 0.747646 0.973779
+vt 0.789470 0.973919
+vt 0.789472 0.957471
+vt 0.798994 0.957472
+vt 0.798992 0.973920
+vt 0.651825 0.961074
+vt 0.654715 0.962274
+vt 0.650761 0.971796
+vt 0.647871 0.970596
+vt 0.859836 0.958187
+vt 0.862726 0.958187
+vt 0.862725 0.974635
+vt 0.859836 0.974635
+vt 0.635040 0.962766
+vt 0.637930 0.961566
+vt 0.641884 0.971088
+vt 0.638995 0.972288
+vt 0.869344 0.958187
+vt 0.872234 0.958187
+vt 0.872235 0.974635
+vt 0.869345 0.974635
+vt 0.755240 0.973780
+vt 0.755238 0.957332
+vt 0.764760 0.957331
+vt 0.764762 0.973779
+vt 0.806586 0.974225
+vt 0.806588 0.957777
+vt 0.816110 0.957778
+vt 0.816108 0.974225
+vt 0.626164 0.961677
+vt 0.629053 0.962877
+vt 0.625099 0.972399
+vt 0.622209 0.971199
+vt 0.878854 0.959263
+vt 0.881744 0.959263
+vt 0.881743 0.975711
+vt 0.878853 0.975710
+vt 0.609378 0.962877
+vt 0.612268 0.961677
+vt 0.616222 0.971199
+vt 0.613333 0.972399
+vt 0.888362 0.959263
+vt 0.891252 0.959263
+vt 0.891252 0.975710
+vt 0.888363 0.975711
+vt 0.772356 0.973920
+vt 0.772354 0.957472
+vt 0.781876 0.957471
+vt 0.781878 0.973919
+vt 0.823702 0.974225
+vt 0.823704 0.957777
+vt 0.833226 0.957778
+vt 0.833224 0.974225
+vt 0.623141 0.955701
+vt 0.621236 0.956795
+vt 0.621237 0.940794
+vt 0.623143 0.939700
+vt 0.618385 0.957525
+vt 0.618386 0.941524
+vt 0.615021 0.957782
+vt 0.615022 0.941781
+vt 0.611657 0.957525
+vt 0.611658 0.941524
+vt 0.608805 0.956794
+vt 0.608806 0.940793
+vt 0.606899 0.955701
+vt 0.606900 0.939700
+vt 0.524319 0.958660
+vt 0.521213 0.957370
+vt 0.527858 0.941369
+vt 0.530964 0.942659
+vt 0.518106 0.956080
+vt 0.524751 0.940079
+vt 0.515472 0.954986
+vt 0.522117 0.938985
+vt 0.513712 0.954255
+vt 0.520357 0.938254
+vt 0.641207 0.955846
+vt 0.637843 0.955590
+vt 0.637842 0.939589
+vt 0.641206 0.939845
+vt 0.634479 0.955846
+vt 0.634478 0.939845
+vt 0.631627 0.956577
+vt 0.631626 0.940576
+vt 0.629722 0.957671
+vt 0.629721 0.941670
+vt 0.551293 0.954490
+vt 0.548187 0.955780
+vt 0.541542 0.939779
+vt 0.544649 0.938489
+vt 0.545080 0.957070
+vt 0.538435 0.941069
+vt 0.682783 0.955819
+vt 0.679677 0.956488
+vt 0.676570 0.955818
+vt 0.673937 0.953913
+vt 0.672177 0.951061
+vt 0.671560 0.947697
+vt 0.672178 0.944333
+vt 0.673938 0.941481
+vt 0.676572 0.939576
+vt 0.679679 0.938907
+vt 0.682785 0.939577
+vt 0.685419 0.941482
+vt 0.687178 0.944334
+vt 0.687796 0.947698
+vt 0.687177 0.951062
+vt 0.685417 0.953914
+vt 0.854833 0.979031
+vt 0.856805 0.980457
+vt 0.858123 0.982592
+vt 0.858586 0.985111
+vt 0.858124 0.987630
+vt 0.856806 0.989766
+vt 0.854834 0.991193
+vt 0.852508 0.991694
+vt 0.850182 0.991193
+vt 0.848210 0.989766
+vt 0.846892 0.987631
+vt 0.846429 0.985112
+vt 0.846891 0.982593
+vt 0.848209 0.980458
+vt 0.850181 0.979031
+vt 0.852507 0.978530
+vt 0.659962 0.940267
+vt 0.662596 0.942173
+vt 0.661154 0.943734
+vt 0.659182 0.942307
+vt 0.664356 0.945024
+vt 0.662472 0.945869
+vt 0.664974 0.948388
+vt 0.662935 0.948388
+vt 0.664357 0.951752
+vt 0.662473 0.950907
+vt 0.662597 0.954604
+vt 0.661155 0.953043
+vt 0.659964 0.956510
+vt 0.659183 0.954470
+vt 0.656857 0.957179
+vt 0.656857 0.954971
+vt 0.653751 0.956510
+vt 0.654531 0.954470
+vt 0.651117 0.954605
+vt 0.652559 0.953044
+vt 0.649357 0.951753
+vt 0.651241 0.950908
+vt 0.648738 0.948390
+vt 0.650778 0.948389
+vt 0.649356 0.945026
+vt 0.651240 0.945870
+vt 0.651115 0.942174
+vt 0.652557 0.943735
+vt 0.653749 0.940268
+vt 0.654529 0.942308
+vt 0.656855 0.939599
+vt 0.656856 0.941807
+vt 0.744015 0.989837
+vt 0.743196 0.988410
+vt 0.746495 0.988410
+vt 0.747314 0.989837
+vt 0.742649 0.986275
+vt 0.745948 0.986275
+vt 0.742457 0.983756
+vt 0.745756 0.983756
+vt 0.742649 0.981237
+vt 0.745948 0.981237
+vt 0.743197 0.979101
+vt 0.746496 0.979102
+vt 0.744016 0.977674
+vt 0.747315 0.977675
+vt 0.546463 0.968907
+vt 0.547429 0.966581
+vt 0.550728 0.967951
+vt 0.549762 0.970277
+vt 0.548395 0.964255
+vt 0.551694 0.965625
+vt 0.549214 0.962283
+vt 0.552513 0.963653
+vt 0.549761 0.960965
+vt 0.553060 0.962335
+vt 0.492824 0.973711
+vt 0.493016 0.971192
+vt 0.496316 0.971192
+vt 0.496123 0.973711
+vt 0.492824 0.968673
+vt 0.496123 0.968673
+vt 0.492277 0.966538
+vt 0.495576 0.966537
+vt 0.491458 0.965111
+vt 0.494757 0.965110
+vt 0.317583 0.970557
+vt 0.316617 0.968231
+vt 0.319916 0.966860
+vt 0.320882 0.969187
+vt 0.315651 0.965904
+vt 0.318950 0.964534
+vt 0.820551 0.143074
+vt 0.870568 0.143074
+vt 0.870572 0.263329
+vt 0.820554 0.263329
+vt 0.178611 0.371012
+vt 0.194932 0.442610
+vt 0.144914 0.454011
+vt 0.128594 0.382414
+vt 0.809984 0.140232
+vt 0.809971 0.260487
+vt 0.738373 0.260479
+vt 0.738387 0.140223
+vt 0.653492 0.143282
+vt 0.725089 0.143273
+vt 0.725102 0.263529
+vt 0.653505 0.263537
+vt 0.647505 0.140232
+vt 0.647501 0.260488
+vt 0.597484 0.260488
+vt 0.597487 0.140232
+vt 0.173070 0.472273
+vt 0.156749 0.543870
+vt 0.106732 0.532469
+vt 0.123052 0.460872
+vt 0.818264 0.263329
+vt 0.818261 0.143073
+vt 0.821230 0.266371
+vt 0.871248 0.266371
+vt 0.125628 0.383089
+vt 0.141948 0.454687
+vt 0.874214 0.263329
+vt 0.874210 0.143073
+vt 0.181577 0.370336
+vt 0.197898 0.441933
+vt 0.812274 0.140232
+vt 0.812261 0.260488
+vt 0.145590 0.456977
+vt 0.195608 0.445575
+vt 0.728745 0.263528
+vt 0.728731 0.143273
+vt 0.809294 0.263529
+vt 0.737697 0.263521
+vt 0.596808 0.263529
+vt 0.646825 0.263530
+vt 0.725765 0.140231
+vt 0.654167 0.140240
+vt 0.821227 0.140031
+vt 0.871244 0.140031
+vt 0.127918 0.379447
+vt 0.593842 0.260487
+vt 0.734731 0.260478
+vt 0.707399 0.089727
+vt 0.704431 0.090404
+vt 0.684426 0.002646
+vt 0.687400 0.001992
+vt 0.699988 0.091417
+vt 0.679976 0.003625
+vt 0.694747 0.092612
+vt 0.674726 0.004780
+vt 0.689506 0.093807
+vt 0.669475 0.005935
+vt 0.685062 0.094819
+vt 0.665025 0.006915
+vt 0.682094 0.095495
+vt 0.662051 0.007569
+vt 0.482620 0.351873
+vt 0.477245 0.352110
+vt 0.477255 0.264176
+vt 0.482631 0.263947
+vt 0.471869 0.351872
+vt 0.471880 0.263947
+vt 0.467312 0.351194
+vt 0.467323 0.263293
+vt 0.464267 0.350181
+vt 0.464278 0.262313
+vt 0.733428 0.044517
+vt 0.738669 0.045712
+vt 0.718649 0.133540
+vt 0.713399 0.132385
+vt 0.743910 0.046906
+vt 0.723899 0.134695
+vt 0.748353 0.047919
+vt 0.728350 0.135674
+vt 0.751322 0.048595
+vt 0.731324 0.136329
+vt 0.558705 0.089955
+vt 0.553330 0.089718
+vt 0.553320 0.001992
+vt 0.558695 0.002222
+vt 0.547954 0.089956
+vt 0.547944 0.002222
+vt 0.553333 0.114593
+vt 0.547957 0.114135
+vt 0.558708 0.114133
+vt 0.747579 0.025726
+vt 0.750636 0.024417
+vt 0.743005 0.027683
+vt 0.737609 0.029993
+vt 0.732214 0.032301
+vt 0.467311 0.360440
+vt 0.464266 0.362397
+vt 0.471869 0.359132
+vt 0.477244 0.358674
+vt 0.482619 0.359133
+vt 0.683717 0.104064
+vt 0.680661 0.102756
+vt 0.688291 0.106022
+vt 0.693687 0.108331
+vt 0.699082 0.110640
+vt 0.703656 0.112597
+vt 0.706713 0.113905
+vt 0.553335 0.137197
+vt 0.547959 0.135902
+vt 0.558710 0.135901
+vt 0.729451 0.006337
+vt 0.730291 0.002649
+vt 0.728193 0.011855
+vt 0.726709 0.018362
+vt 0.725227 0.024865
+vt 0.727640 0.034259
+vt 0.723972 0.030371
+vt 0.471868 0.360659
+vt 0.467311 0.364327
+vt 0.477244 0.359375
+vt 0.482619 0.360660
+vt 0.680049 0.107952
+vt 0.679213 0.104282
+vt 0.681305 0.113458
+vt 0.682787 0.119962
+vt 0.684270 0.126468
+vt 0.685528 0.131986
+vt 0.686368 0.135673
+vt 0.062715 0.958184
+vt 0.059746 0.962741
+vt 0.055303 0.965786
+vt 0.050062 0.966855
+vt 0.044821 0.965786
+vt 0.040378 0.962741
+vt 0.037409 0.958184
+vt 0.036366 0.952808
+vt 0.037408 0.947433
+vt 0.040377 0.942876
+vt 0.044820 0.939831
+vt 0.050061 0.938761
+vt 0.055302 0.939831
+vt 0.059745 0.942876
+vt 0.062714 0.947433
+vt 0.063757 0.952808
+vt 0.721899 0.949338
+vt 0.716523 0.950633
+vt 0.716523 0.947794
+vt 0.721001 0.946716
+vt 0.711148 0.949337
+vt 0.712046 0.946715
+vt 0.706591 0.945649
+vt 0.708251 0.943644
+vt 0.703547 0.940131
+vt 0.705716 0.939048
+vt 0.702478 0.933624
+vt 0.704826 0.933628
+vt 0.703548 0.927121
+vt 0.705717 0.928211
+vt 0.706594 0.921615
+vt 0.708254 0.923626
+vt 0.711151 0.917946
+vt 0.712049 0.920570
+vt 0.716527 0.916663
+vt 0.716527 0.919501
+vt 0.721902 0.917948
+vt 0.721004 0.920571
+vt 0.726459 0.921617
+vt 0.724799 0.923628
+vt 0.729503 0.927124
+vt 0.727335 0.928214
+vt 0.730572 0.933627
+vt 0.728225 0.933630
+vt 0.729502 0.940134
+vt 0.727333 0.939050
+vt 0.726456 0.945651
+vt 0.724797 0.943645
+vt 0.958174 0.557044
+vt 0.953696 0.558122
+vt 0.953698 0.536810
+vt 0.957551 0.536439
+vt 0.949219 0.557043
+vt 0.949844 0.536438
+vt 0.837938 0.637281
+vt 0.837238 0.634210
+vt 0.854576 0.615618
+vt 0.857072 0.616676
+vt 0.836190 0.629613
+vt 0.850840 0.614036
+vt 0.834954 0.624194
+vt 0.846434 0.612171
+vt 0.833720 0.618777
+vt 0.842031 0.610306
+vt 0.832674 0.614192
+vt 0.838303 0.608728
+vt 0.831978 0.611136
+vt 0.835819 0.607676
+vt 0.303962 0.896762
+vt 0.299485 0.895693
+vt 0.299485 0.892934
+vt 0.303338 0.893302
+vt 0.295008 0.896763
+vt 0.295631 0.893303
+vt 0.933755 0.589280
+vt 0.934452 0.586224
+vt 0.940081 0.591688
+vt 0.937596 0.592740
+vt 0.935498 0.581638
+vt 0.943809 0.590109
+vt 0.936732 0.576221
+vt 0.948212 0.588244
+vt 0.937968 0.570801
+vt 0.952617 0.586379
+vt 0.939015 0.566206
+vt 0.956353 0.584797
+vt 0.939715 0.563135
+vt 0.958850 0.583741
+vt 0.953700 0.514219
+vt 0.957554 0.514409
+vt 0.949847 0.514408
+vt 0.854724 0.595186
+vt 0.857132 0.594646
+vt 0.851122 0.595993
+vt 0.846873 0.596946
+vt 0.842627 0.597898
+vt 0.839032 0.598705
+vt 0.836636 0.599242
+vt 0.299484 0.885056
+vt 0.303337 0.884868
+vt 0.295630 0.884869
+vt 0.940810 0.601711
+vt 0.938414 0.601174
+vt 0.944405 0.602517
+vt 0.948651 0.603469
+vt 0.952899 0.604422
+vt 0.956502 0.605230
+vt 0.958910 0.605770
+vt 0.953704 0.481566
+vt 0.957558 0.481756
+vt 0.949851 0.481755
+vt 0.847281 0.562532
+vt 0.849689 0.561993
+vt 0.843678 0.563340
+vt 0.839430 0.564293
+vt 0.835184 0.565245
+vt 0.618603 0.934998
+vt 0.615008 0.935805
+vt 0.607565 0.903152
+vt 0.611160 0.902345
+vt 0.829193 0.566589
+vt 0.831589 0.566051
+vt 0.299480 0.852403
+vt 0.303333 0.852215
+vt 0.295626 0.852216
+vt 0.933366 0.634364
+vt 0.930971 0.633827
+vt 0.936961 0.635170
+vt 0.941207 0.636122
+vt 0.945456 0.637075
+vt 0.949059 0.637883
+vt 0.951466 0.638424
+vt 0.154586 0.939137
+vt 0.155240 0.942111
+vt 0.153052 0.942610
+vt 0.152374 0.939641
+vt 0.156219 0.946562
+vt 0.154065 0.947053
+vt 0.157374 0.951812
+vt 0.155260 0.952294
+vt 0.158529 0.957062
+vt 0.156454 0.957535
+vt 0.159509 0.961513
+vt 0.157467 0.961978
+vt 0.160163 0.964486
+vt 0.158143 0.964947
+vt 0.599200 0.938486
+vt 0.599430 0.943861
+vt 0.597417 0.943861
+vt 0.597180 0.938486
+vt 0.599200 0.949237
+vt 0.597179 0.949237
+vt 0.598546 0.953794
+vt 0.596502 0.953794
+vt 0.597567 0.956839
+vt 0.595489 0.956839
+vt 0.557453 0.956414
+vt 0.558608 0.951164
+vt 0.560726 0.951646
+vt 0.559531 0.956888
+vt 0.559763 0.945914
+vt 0.561921 0.946405
+vt 0.560742 0.941463
+vt 0.562933 0.941962
+vt 0.561397 0.938489
+vt 0.563610 0.938993
+vt 0.701232 0.975507
+vt 0.701002 0.980882
+vt 0.698782 0.980882
+vt 0.699019 0.975507
+vt 0.701232 0.986258
+vt 0.699020 0.986258
+vt 0.661834 0.961074
+vt 0.662129 0.966450
+vt 0.660997 0.966450
+vt 0.660702 0.961074
+vt 0.518405 0.967032
+vt 0.518159 0.971509
+vt 0.517028 0.971509
+vt 0.517273 0.967032
+vt 0.661834 0.971825
+vt 0.660702 0.971825
+vt 0.518159 0.962555
+vt 0.517027 0.962555
+vt 0.728319 0.005680
+vt 0.729159 0.001992
+vt 0.836806 0.637938
+vt 0.836106 0.634867
+vt 0.727061 0.011198
+vt 0.835058 0.630270
+vt 0.725578 0.017705
+vt 0.833823 0.624851
+vt 0.724095 0.024208
+vt 0.832588 0.619434
+vt 0.722840 0.029714
+vt 0.831543 0.614849
+vt 0.723136 0.034040
+vt 0.722004 0.033383
+vt 0.830846 0.611793
+vt 0.676952 0.960383
+vt 0.676659 0.965758
+vt 0.675527 0.965758
+vt 0.675820 0.960383
+vt 0.510797 0.969587
+vt 0.511040 0.974065
+vt 0.509909 0.974065
+vt 0.509665 0.969587
+vt 0.676952 0.971134
+vt 0.675820 0.971134
+vt 0.511041 0.965110
+vt 0.509909 0.965110
+vt 0.678918 0.108609
+vt 0.678081 0.104939
+vt 0.932624 0.588623
+vt 0.933320 0.585567
+vt 0.680173 0.114115
+vt 0.934366 0.580981
+vt 0.681655 0.120618
+vt 0.935601 0.575564
+vt 0.683138 0.127125
+vt 0.936836 0.570144
+vt 0.684396 0.132643
+vt 0.937883 0.565549
+vt 0.685237 0.136330
+vt 0.938583 0.562478
+vt 0.610411 0.089734
+vt 0.607442 0.090412
+vt 0.587436 0.002646
+vt 0.590410 0.001992
+vt 0.602999 0.091425
+vt 0.582985 0.003625
+vt 0.597758 0.092620
+vt 0.577735 0.004780
+vt 0.592517 0.093814
+vt 0.572485 0.005935
+vt 0.588074 0.094827
+vt 0.568034 0.006915
+vt 0.585105 0.095503
+vt 0.565060 0.007569
+vt 0.457897 0.351880
+vt 0.452522 0.352118
+vt 0.452532 0.264176
+vt 0.457908 0.263947
+vt 0.447146 0.351879
+vt 0.447157 0.263947
+vt 0.442589 0.351202
+vt 0.442599 0.263293
+vt 0.439544 0.350189
+vt 0.439554 0.262313
+vt 0.636439 0.044517
+vt 0.641680 0.045712
+vt 0.621658 0.133548
+vt 0.616408 0.132393
+vt 0.646921 0.046906
+vt 0.626908 0.134703
+vt 0.651365 0.047919
+vt 0.631359 0.135682
+vt 0.654334 0.048595
+vt 0.634333 0.136336
+vt 0.541589 0.089963
+vt 0.536214 0.089726
+vt 0.536204 0.001992
+vt 0.541579 0.002222
+vt 0.530838 0.089964
+vt 0.530828 0.002222
+vt 0.536217 0.114601
+vt 0.530841 0.114142
+vt 0.541592 0.114141
+vt 0.650590 0.025726
+vt 0.653647 0.024417
+vt 0.646016 0.027683
+vt 0.640620 0.029993
+vt 0.635225 0.032301
+vt 0.442588 0.360447
+vt 0.439543 0.362405
+vt 0.447145 0.359140
+vt 0.452521 0.358681
+vt 0.457896 0.359141
+vt 0.586728 0.104072
+vt 0.583672 0.102764
+vt 0.591303 0.106030
+vt 0.596698 0.108339
+vt 0.602094 0.110648
+vt 0.606668 0.112605
+vt 0.609724 0.113913
+vt 0.536219 0.137204
+vt 0.530843 0.135910
+vt 0.541594 0.135909
+vt 0.632462 0.006337
+vt 0.633302 0.002649
+vt 0.631204 0.011855
+vt 0.629720 0.018362
+vt 0.628238 0.024865
+vt 0.630651 0.034259
+vt 0.626983 0.030371
+vt 0.447145 0.360666
+vt 0.442588 0.364335
+vt 0.452521 0.359383
+vt 0.457896 0.360668
+vt 0.583060 0.107960
+vt 0.582224 0.104290
+vt 0.584316 0.113466
+vt 0.585798 0.119969
+vt 0.587281 0.126476
+vt 0.588539 0.131994
+vt 0.589379 0.135681
+vt 0.096947 0.958559
+vt 0.093978 0.963116
+vt 0.089535 0.966161
+vt 0.084294 0.967231
+vt 0.079053 0.966161
+vt 0.074610 0.963116
+vt 0.071641 0.958559
+vt 0.070598 0.953184
+vt 0.071640 0.947808
+vt 0.074609 0.943251
+vt 0.079052 0.940206
+vt 0.084293 0.939137
+vt 0.089534 0.940206
+vt 0.093977 0.943251
+vt 0.096946 0.947808
+vt 0.097989 0.953184
+vt 0.687818 0.933718
+vt 0.682443 0.935012
+vt 0.682443 0.932174
+vt 0.686920 0.931096
+vt 0.677067 0.933717
+vt 0.677966 0.931095
+vt 0.672511 0.930029
+vt 0.674171 0.928024
+vt 0.669466 0.924511
+vt 0.671635 0.923427
+vt 0.668398 0.918004
+vt 0.670745 0.918008
+vt 0.669468 0.911501
+vt 0.671636 0.912591
+vt 0.672513 0.905995
+vt 0.674173 0.908006
+vt 0.677071 0.902326
+vt 0.677969 0.904950
+vt 0.682447 0.901043
+vt 0.682446 0.903881
+vt 0.687822 0.902328
+vt 0.686924 0.904951
+vt 0.692379 0.905997
+vt 0.690719 0.908008
+vt 0.695423 0.911504
+vt 0.693254 0.912594
+vt 0.696492 0.918007
+vt 0.694144 0.918010
+vt 0.695422 0.924514
+vt 0.693253 0.923430
+vt 0.692376 0.930031
+vt 0.690716 0.928025
+vt 0.973851 0.557044
+vt 0.969373 0.558122
+vt 0.969375 0.536810
+vt 0.973229 0.536439
+vt 0.964896 0.557043
+vt 0.965522 0.536438
+vt 0.871863 0.638946
+vt 0.871163 0.635875
+vt 0.888501 0.617283
+vt 0.890998 0.618341
+vt 0.870116 0.631278
+vt 0.884765 0.615701
+vt 0.868880 0.625859
+vt 0.880360 0.613836
+vt 0.867646 0.620442
+vt 0.875957 0.611971
+vt 0.866600 0.615857
+vt 0.872229 0.610393
+vt 0.865904 0.612801
+vt 0.869745 0.609341
+vt 0.288748 0.896672
+vt 0.284271 0.895603
+vt 0.284270 0.892844
+vt 0.288124 0.893212
+vt 0.279794 0.896673
+vt 0.280417 0.893213
+vt 0.350880 0.967248
+vt 0.351576 0.964191
+vt 0.357205 0.969656
+vt 0.354721 0.970708
+vt 0.900526 0.587403
+vt 0.901572 0.582817
+vt 0.909883 0.591289
+vt 0.906155 0.592868
+vt 0.902807 0.577401
+vt 0.914286 0.589424
+vt 0.904042 0.571981
+vt 0.918692 0.587559
+vt 0.905089 0.567386
+vt 0.922427 0.585977
+vt 0.905789 0.564315
+vt 0.924924 0.584920
+vt 0.969378 0.514219
+vt 0.973231 0.514409
+vt 0.965524 0.514408
+vt 0.888650 0.596851
+vt 0.891058 0.596311
+vt 0.885047 0.597658
+vt 0.880799 0.598611
+vt 0.876553 0.599563
+vt 0.872958 0.600370
+vt 0.870562 0.600907
+vt 0.284270 0.884966
+vt 0.288123 0.884778
+vt 0.280416 0.884779
+vt 0.903671 0.593920
+vt 0.906884 0.602891
+vt 0.904488 0.602354
+vt 0.910479 0.603697
+vt 0.914725 0.604649
+vt 0.918974 0.605602
+vt 0.922576 0.606410
+vt 0.924984 0.606950
+vt 0.969382 0.481566
+vt 0.973235 0.481756
+vt 0.965528 0.481755
+vt 0.881207 0.564197
+vt 0.883615 0.563658
+vt 0.877604 0.565005
+vt 0.873355 0.565958
+vt 0.869109 0.566910
+vt 0.865515 0.567716
+vt 0.863119 0.568254
+vt 0.284266 0.852313
+vt 0.288119 0.852125
+vt 0.280412 0.852125
+vt 0.899441 0.635544
+vt 0.897045 0.635007
+vt 0.903036 0.636350
+vt 0.907282 0.637302
+vt 0.911530 0.638255
+vt 0.915133 0.639063
+vt 0.917540 0.639603
+vt 0.169793 0.939080
+vt 0.170447 0.942054
+vt 0.168266 0.942551
+vt 0.167589 0.939583
+vt 0.171426 0.946505
+vt 0.169279 0.946994
+vt 0.172581 0.951755
+vt 0.170474 0.952235
+vt 0.173736 0.957005
+vt 0.171668 0.957476
+vt 0.174715 0.961456
+vt 0.172681 0.961920
+vt 0.175369 0.964430
+vt 0.173357 0.964889
+vt 0.587782 0.938486
+vt 0.588012 0.943861
+vt 0.586007 0.943861
+vt 0.585769 0.938486
+vt 0.587782 0.949237
+vt 0.585768 0.949237
+vt 0.587128 0.953794
+vt 0.585091 0.953794
+vt 0.586149 0.956839
+vt 0.584078 0.956839
+vt 0.570765 0.956411
+vt 0.571920 0.951161
+vt 0.574031 0.951642
+vt 0.572836 0.956883
+vt 0.573075 0.945911
+vt 0.575226 0.946401
+vt 0.574055 0.941460
+vt 0.576238 0.941957
+vt 0.574709 0.938486
+vt 0.576914 0.938988
+vt 0.692795 0.975507
+vt 0.692565 0.980882
+vt 0.690353 0.980882
+vt 0.690590 0.975507
+vt 0.692795 0.986258
+vt 0.690591 0.986258
+vt 0.684071 0.960383
+vt 0.684366 0.965758
+vt 0.683234 0.965758
+vt 0.682939 0.960383
+vt 0.525770 0.967032
+vt 0.525524 0.971509
+vt 0.524392 0.971509
+vt 0.524638 0.967032
+vt 0.684071 0.971134
+vt 0.682939 0.971134
+vt 0.525524 0.962555
+vt 0.524392 0.962555
+vt 0.631330 0.005680
+vt 0.632171 0.001992
+vt 0.870732 0.639603
+vt 0.870032 0.636532
+vt 0.630072 0.011198
+vt 0.868984 0.631935
+vt 0.628589 0.017705
+vt 0.867748 0.626516
+vt 0.627106 0.024208
+vt 0.866514 0.621099
+vt 0.625851 0.029714
+vt 0.865469 0.616514
+vt 0.626147 0.034040
+vt 0.625015 0.033383
+vt 0.864772 0.613458
+vt 0.669540 0.961074
+vt 0.669248 0.966450
+vt 0.668116 0.966450
+vt 0.668409 0.961074
+vt 0.503434 0.969587
+vt 0.503678 0.974065
+vt 0.502546 0.974065
+vt 0.502302 0.969587
+vt 0.669541 0.971825
+vt 0.668409 0.971825
+vt 0.503678 0.965110
+vt 0.502546 0.965110
+vt 0.581929 0.108617
+vt 0.581092 0.104947
+vt 0.899830 0.590460
+vt 0.898698 0.589803
+vt 0.899395 0.586747
+vt 0.583184 0.114123
+vt 0.900440 0.582160
+vt 0.584666 0.120626
+vt 0.901675 0.576744
+vt 0.586150 0.127133
+vt 0.902910 0.571324
+vt 0.587407 0.132651
+vt 0.903958 0.566729
+vt 0.588248 0.136338
+vt 0.904658 0.563658
+vt 0.098039 0.844594
+vt 0.099156 0.839700
+vt 0.124726 0.845528
+vt 0.123609 0.850423
+vt 0.100827 0.832374
+vt 0.126396 0.838202
+vt 0.102797 0.823732
+vt 0.128366 0.829561
+vt 0.104766 0.815091
+vt 0.130336 0.820919
+vt 0.106436 0.807764
+vt 0.132005 0.813593
+vt 0.107551 0.802869
+vt 0.133120 0.808698
+vt 0.053806 0.903085
+vt 0.053415 0.911949
+vt 0.027846 0.911952
+vt 0.028236 0.903088
+vt 0.053808 0.920812
+vt 0.028238 0.920815
+vt 0.054925 0.928326
+vt 0.029355 0.928329
+vt 0.056595 0.933346
+vt 0.031026 0.933349
+vt 0.762128 0.918103
+vt 0.764098 0.926745
+vt 0.738529 0.932573
+vt 0.736559 0.923932
+vt 0.766068 0.935386
+vt 0.740498 0.941215
+vt 0.767738 0.942712
+vt 0.742168 0.948541
+vt 0.768853 0.947608
+vt 0.743283 0.953436
+vt 0.145378 0.964708
+vt 0.136515 0.965099
+vt 0.136518 0.939530
+vt 0.145381 0.939139
+vt 0.127651 0.964706
+vt 0.127654 0.939137
+vt 0.016865 0.834901
+vt 0.015147 0.826038
+vt 0.016866 0.817175
+vt 0.021761 0.809661
+vt 0.029087 0.804640
+vt 0.037729 0.802877
+vt 0.046371 0.804640
+vt 0.053696 0.809661
+vt 0.058591 0.817175
+vt 0.060310 0.826038
+vt 0.058591 0.834901
+vt 0.053695 0.842415
+vt 0.046369 0.847436
+vt 0.037728 0.849199
+vt 0.029086 0.847436
+vt 0.021760 0.842415
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.068773 -0.997632 0.000117
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000119 1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000119 -1.000000
+vn 0.999837 -0.018060 0.000034
+vn 0.999837 -0.018059 0.000034
+vn 0.999837 -0.018060 0.000034
+vn 0.999837 -0.018059 0.000034
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000034
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000034
+vn 0.988458 0.151496 0.000014
+vn 0.988458 0.151496 0.000014
+vn 0.988458 0.151496 0.000014
+vn 0.988458 0.151496 0.000014
+vn -0.123456 0.992350 -0.000123
+vn -0.123456 0.992350 -0.000123
+vn -0.123456 0.992350 -0.000123
+vn -0.123456 0.992350 -0.000123
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.008421 0.391492 0.920143
+vn 0.008421 0.391492 0.920143
+vn 0.008421 0.391492 0.920143
+vn 0.008421 0.391492 0.920143
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.025117 0.999685 -0.000119
+vn 0.008481 0.391269 -0.920237
+vn 0.008481 0.391269 -0.920237
+vn 0.008481 0.391269 -0.920237
+vn 0.008481 0.391269 -0.920237
+vn 0.007187 0.396099 -0.918180
+vn 0.007187 0.396099 -0.918180
+vn 0.007187 0.396099 -0.918180
+vn 0.007187 0.396099 -0.918180
+vn -0.017794 -0.985319 -0.169793
+vn -0.017794 -0.985319 -0.169793
+vn -0.017794 -0.985319 -0.169793
+vn -0.017794 -0.985319 -0.169793
+vn 0.018056 0.999837 -0.000120
+vn 0.018056 0.999837 -0.000120
+vn 0.018055 0.999837 -0.000120
+vn 0.018055 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000119
+vn 0.018060 0.999837 -0.000119
+vn 0.018060 0.999837 -0.000119
+vn 0.018060 0.999837 -0.000119
+vn 0.018056 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000119
+vn 0.018056 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000119
+vn 0.007118 0.396320 0.918085
+vn 0.007118 0.396320 0.918085
+vn 0.007118 0.396320 0.918085
+vn 0.007118 0.396320 0.918085
+vn -0.017805 -0.985279 0.170027
+vn -0.017805 -0.985279 0.170027
+vn -0.017805 -0.985279 0.170027
+vn -0.017805 -0.985279 0.170027
+vn 0.999837 -0.018061 0.000034
+vn 0.999837 -0.018061 0.000034
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018059 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.706967 -0.012685 0.707132
+vn 0.706967 -0.012685 0.707132
+vn 0.706967 -0.012685 0.707132
+vn 0.706967 -0.012685 0.707132
+vn 0.675729 -0.737150 0.000110
+vn 0.675729 -0.737150 0.000110
+vn 0.675729 -0.737150 0.000110
+vn 0.675729 -0.737150 0.000110
+vn -0.048653 -0.705349 0.707189
+vn -0.048653 -0.705349 0.707189
+vn -0.048653 -0.705349 0.707189
+vn -0.048653 -0.705349 0.707189
+vn 0.707013 -0.012854 -0.707083
+vn 0.707013 -0.012854 -0.707083
+vn 0.707013 -0.012854 -0.707083
+vn 0.707013 -0.012854 -0.707083
+vn -0.048607 -0.705518 -0.707023
+vn -0.048607 -0.705518 -0.707023
+vn -0.048607 -0.705518 -0.707023
+vn -0.048607 -0.705518 -0.707023
+vn 0.707016 -0.012854 -0.707080
+vn 0.707016 -0.012854 -0.707080
+vn 0.707016 -0.012854 -0.707080
+vn 0.707016 -0.012854 -0.707080
+vn 0.675731 -0.737148 0.000110
+vn 0.675731 -0.737148 0.000110
+vn 0.675731 -0.737148 0.000110
+vn 0.675731 -0.737149 0.000110
+vn 0.675731 -0.737149 0.000110
+vn 0.675730 -0.737149 0.000111
+vn 0.675730 -0.737150 0.000111
+vn 0.675730 -0.737150 0.000111
+vn 0.675731 -0.737148 0.000110
+vn 0.675730 -0.737149 0.000111
+vn 0.675731 -0.737149 0.000110
+vn 0.706971 -0.012687 0.707129
+vn 0.706971 -0.012687 0.707129
+vn 0.706971 -0.012687 0.707129
+vn 0.706971 -0.012687 0.707129
+vn 0.698920 0.107207 0.707119
+vn 0.698920 0.107207 0.707119
+vn 0.698920 0.107207 0.707119
+vn 0.698920 0.107207 0.707119
+vn 0.603173 0.797610 -0.000076
+vn 0.603173 0.797610 -0.000076
+vn 0.603173 0.797610 -0.000076
+vn 0.603173 0.797610 -0.000076
+vn -0.087319 0.701778 0.707024
+vn -0.087319 0.701778 0.707024
+vn -0.087319 0.701778 0.707024
+vn -0.087319 0.701778 0.707024
+vn 0.698966 0.107037 -0.707099
+vn 0.698966 0.107037 -0.707099
+vn 0.698966 0.107037 -0.707099
+vn 0.698966 0.107037 -0.707099
+vn -0.087273 0.701611 -0.707196
+vn -0.087273 0.701611 -0.707196
+vn -0.087273 0.701611 -0.707196
+vn -0.087273 0.701611 -0.707196
+vn 0.668762 0.743476 -0.000067
+vn 0.668762 0.743476 -0.000067
+vn 0.668762 0.743476 -0.000067
+vn 0.668762 0.743476 -0.000067
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn 0.752866 -0.658174 0.000103
+vn 0.752866 -0.658174 0.000103
+vn 0.752866 -0.658174 0.000103
+vn 0.752866 -0.658174 0.000103
+vn -0.012747 -0.707075 -0.707024
+vn -0.012747 -0.707075 -0.707024
+vn -0.012747 -0.707075 -0.707024
+vn -0.012747 -0.707075 -0.707024
+vn -0.706961 0.012685 -0.707139
+vn -0.706961 0.012685 -0.707139
+vn -0.706961 0.012685 -0.707139
+vn -0.706961 0.012685 -0.707139
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.707015 0.012855 0.707082
+vn -0.707015 0.012855 0.707082
+vn -0.707015 0.012855 0.707082
+vn -0.707015 0.012855 0.707082
+vn 0.003776 0.199881 0.979813
+vn 0.003776 0.199881 0.979813
+vn 0.003776 0.199881 0.979813
+vn 0.003776 0.199881 0.979813
+vn -0.701602 0.286642 0.652373
+vn -0.701602 0.286642 0.652373
+vn -0.701602 0.286642 0.652373
+vn -0.701602 0.286642 0.652373
+vn 0.020763 0.833940 0.551464
+vn 0.020763 0.833940 0.551464
+vn 0.020763 0.833940 0.551464
+vn 0.020763 0.833940 0.551464
+vn -0.691681 0.722203 -0.000109
+vn -0.691681 0.722203 -0.000109
+vn -0.691681 0.722203 -0.000109
+vn -0.691681 0.722203 -0.000109
+vn 0.020799 0.833811 -0.551658
+vn 0.020799 0.833811 -0.551657
+vn 0.020799 0.833811 -0.551657
+vn 0.020799 0.833811 -0.551658
+vn -0.701563 0.286484 -0.652484
+vn -0.701563 0.286484 -0.652484
+vn -0.701563 0.286484 -0.652484
+vn -0.701563 0.286484 -0.652484
+vn 0.003840 0.199645 -0.979861
+vn 0.003840 0.199645 -0.979861
+vn 0.003840 0.199645 -0.979861
+vn 0.003840 0.199645 -0.979861
+vn 0.007885 0.395841 -0.918285
+vn 0.007885 0.395841 -0.918285
+vn 0.007885 0.395841 -0.918285
+vn 0.007885 0.395841 -0.918285
+vn -0.008571 -0.476202 -0.879294
+vn -0.008571 -0.476202 -0.879294
+vn -0.008571 -0.476202 -0.879294
+vn -0.008571 -0.476202 -0.879294
+vn 0.694411 -0.709496 -0.120038
+vn 0.694411 -0.709496 -0.120038
+vn 0.694411 -0.709496 -0.120038
+vn 0.694411 -0.709496 -0.120038
+vn 0.021587 0.999767 -0.000120
+vn 0.021587 0.999767 -0.000120
+vn 0.021587 0.999767 -0.000120
+vn 0.021584 0.999767 -0.000119
+vn 0.021581 0.999767 -0.000119
+vn 0.021587 0.999767 -0.000120
+vn 0.021584 0.999767 -0.000119
+vn 0.015103 0.835344 -0.549520
+vn 0.015103 0.835344 -0.549520
+vn 0.015103 0.835344 -0.549520
+vn 0.015103 0.835344 -0.549520
+vn 0.021584 0.999767 -0.000119
+vn 0.021580 0.999767 -0.000119
+vn 0.021581 0.999767 -0.000119
+vn 0.021580 0.999767 -0.000119
+vn 0.015066 0.835472 0.549327
+vn 0.015066 0.835472 0.549327
+vn 0.015066 0.835472 0.549327
+vn 0.015066 0.835472 0.549327
+vn 0.007826 0.396062 0.918191
+vn 0.007826 0.396062 0.918190
+vn 0.007826 0.396062 0.918191
+vn 0.007826 0.396062 0.918190
+vn 0.694403 -0.709467 0.120252
+vn 0.694403 -0.709467 0.120252
+vn 0.694403 -0.709467 0.120252
+vn 0.694403 -0.709467 0.120252
+vn -0.008630 -0.475989 0.879409
+vn -0.008630 -0.475989 0.879409
+vn -0.008630 -0.475989 0.879409
+vn -0.008630 -0.475989 0.879409
+vn -0.018060 -0.999837 0.000120
+vn -0.018060 -0.999837 0.000120
+vn -0.018060 -0.999837 0.000120
+vn -0.018060 -0.999837 0.000120
+vn 0.694406 -0.709464 0.120252
+vn 0.694406 -0.709464 0.120252
+vn 0.694406 -0.709464 0.120252
+vn 0.694406 -0.709464 0.120252
+vn 0.694414 -0.709493 -0.120036
+vn 0.694414 -0.709493 -0.120036
+vn 0.694414 -0.709493 -0.120036
+vn 0.694414 -0.709493 -0.120036
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694215 -0.000059
+vn 0.719767 0.694215 -0.000059
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694216 -0.000060
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694215 -0.000060
+vn 0.719767 0.694215 -0.000059
+vn 0.719767 0.694215 -0.000059
+vn 0.712072 0.267316 -0.649228
+vn 0.712072 0.267316 -0.649228
+vn 0.712072 0.267316 -0.649228
+vn 0.712072 0.267316 -0.649228
+vn 0.712029 0.267471 0.649210
+vn 0.712029 0.267471 0.649210
+vn 0.712029 0.267471 0.649210
+vn 0.712029 0.267471 0.649210
+vn 0.282098 -0.307667 0.908714
+vn 0.282098 -0.307667 0.908714
+vn 0.282098 -0.307667 0.908714
+vn 0.282161 -0.307882 -0.908622
+vn 0.282161 -0.307882 -0.908622
+vn 0.282161 -0.307882 -0.908622
+vn 0.546652 -0.596392 -0.587782
+vn 0.546652 -0.596392 -0.587782
+vn 0.546652 -0.596392 -0.587782
+vn 0.546620 -0.596256 0.587950
+vn 0.546620 -0.596256 0.587950
+vn 0.546620 -0.596256 0.587950
+vn 0.494681 0.654229 0.572079
+vn 0.494681 0.654229 0.572079
+vn 0.494681 0.654229 0.572079
+vn 0.494712 0.654101 -0.572200
+vn 0.494712 0.654101 -0.572200
+vn 0.494712 0.654101 -0.572200
+vn 0.268488 0.298336 -0.915920
+vn 0.268488 0.298336 -0.915920
+vn 0.268488 0.298336 -0.915920
+vn 0.268423 0.298557 0.915867
+vn 0.268423 0.298557 0.915867
+vn 0.268423 0.298557 0.915867
+vn 0.591594 -0.517122 0.618547
+vn 0.591594 -0.517122 0.618547
+vn 0.591594 -0.517122 0.618547
+vn 0.591634 -0.517272 -0.618385
+vn 0.591634 -0.517272 -0.618385
+vn 0.591634 -0.517272 -0.618385
+vn -0.587662 -0.566896 -0.577307
+vn -0.587662 -0.566896 -0.577307
+vn -0.587662 -0.566896 -0.577307
+vn -0.587702 -0.566765 0.577393
+vn -0.587702 -0.566766 0.577393
+vn -0.587702 -0.566765 0.577393
+vn -0.632521 0.163885 0.757007
+vn -0.632521 0.163885 0.757007
+vn -0.632521 0.163885 0.757007
+vn -0.527106 0.710630 0.466010
+vn -0.527106 0.710629 0.466010
+vn -0.527106 0.710630 0.466010
+vn -0.527081 0.710520 -0.466205
+vn -0.527081 0.710520 -0.466205
+vn -0.527081 0.710520 -0.466205
+vn -0.632471 0.163698 -0.757089
+vn -0.632471 0.163698 -0.757089
+vn -0.632471 0.163698 -0.757089
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.325190 -0.151492 -0.933435
+vn 0.018057 0.835287 -0.549518
+vn 0.018057 0.835287 -0.549518
+vn 0.018057 0.835287 -0.549518
+vn 0.018057 0.835287 -0.549518
+vn 0.018017 0.835415 0.549325
+vn 0.018017 0.835415 0.549325
+vn 0.018017 0.835415 0.549325
+vn 0.018017 0.835415 0.549325
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.325128 -0.151266 0.933494
+vn 0.698593 -0.715519 0.000107
+vn 0.698593 -0.715519 0.000107
+vn 0.698593 -0.715519 0.000107
+vn 0.698593 -0.715519 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.700357 -0.713793 0.000107
+vn 0.632306 -0.377837 -0.676335
+vn 0.632306 -0.377837 -0.676335
+vn 0.632306 -0.377837 -0.676335
+vn 0.556051 0.691400 -0.461273
+vn 0.556051 0.691400 -0.461273
+vn 0.556051 0.691400 -0.461273
+vn 0.632265 -0.377680 0.676461
+vn 0.632265 -0.377680 0.676461
+vn 0.632265 -0.377680 0.676461
+vn 0.556010 0.691516 0.461149
+vn 0.556010 0.691516 0.461149
+vn 0.556010 0.691516 0.461149
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.018060 -0.999837 0.000119
+vn -0.000032 0.000119 1.000000
+vn -0.000032 0.000119 1.000000
+vn -0.000032 0.000119 1.000000
+vn -0.000032 0.000119 1.000000
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.977890 0.209120 0.000007
+vn 0.977890 0.209120 0.000007
+vn 0.977890 0.209120 0.000007
+vn 0.977890 0.209120 0.000007
+vn -0.061458 0.998110 -0.000122
+vn -0.061458 0.998110 -0.000122
+vn -0.061458 0.998110 -0.000122
+vn -0.061458 0.998110 -0.000122
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn -0.719756 -0.694227 0.000060
+vn -0.719756 -0.694227 0.000060
+vn -0.719756 -0.694227 0.000060
+vn -0.719756 -0.694227 0.000060
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.012793 -0.706908 0.707190
+vn -0.707016 0.012855 0.707080
+vn -0.707016 0.012855 0.707080
+vn -0.707016 0.012855 0.707080
+vn -0.707016 0.012855 0.707080
+vn 0.771826 -0.635834 0.000102
+vn 0.771826 -0.635834 0.000102
+vn 0.771826 -0.635834 0.000102
+vn 0.771826 -0.635834 0.000102
+vn 0.691449 0.147954 0.707112
+vn 0.691449 0.147954 0.707112
+vn 0.691449 0.147954 0.707112
+vn 0.691449 0.147954 0.707112
+vn -0.723974 0.689827 -0.000106
+vn -0.723974 0.689827 -0.000106
+vn -0.723974 0.689827 -0.000106
+vn -0.723974 0.689827 -0.000106
+vn -0.043501 0.705901 0.706973
+vn -0.043501 0.705902 0.706973
+vn -0.043501 0.705902 0.706973
+vn -0.043501 0.705902 0.706973
+vn 0.602702 0.797967 -0.000076
+vn 0.602702 0.797967 -0.000076
+vn 0.602702 0.797967 -0.000076
+vn 0.602702 0.797967 -0.000076
+vn -0.706969 0.012685 -0.707131
+vn -0.706969 0.012685 -0.707131
+vn -0.706969 0.012685 -0.707131
+vn -0.706969 0.012685 -0.707131
+vn -0.043455 0.705733 -0.707144
+vn -0.043455 0.705733 -0.707144
+vn -0.043455 0.705733 -0.707144
+vn -0.043455 0.705733 -0.707144
+vn 0.691496 0.147787 -0.707101
+vn 0.691496 0.147787 -0.707101
+vn 0.691496 0.147787 -0.707101
+vn 0.691496 0.147787 -0.707101
+vn -0.021752 -0.557149 -0.830128
+vn -0.021752 -0.557149 -0.830128
+vn -0.021752 -0.557149 -0.830128
+vn -0.021752 -0.557149 -0.830128
+vn -0.587702 -0.566766 0.577392
+vn -0.587702 -0.566766 0.577392
+vn -0.587702 -0.566766 0.577392
+vn 0.595327 -0.490368 0.636494
+vn 0.595327 -0.490368 0.636494
+vn 0.595327 -0.490368 0.636494
+vn -0.598283 0.570106 0.563060
+vn -0.598283 0.570106 0.563060
+vn -0.598283 0.570106 0.563060
+vn 0.501146 0.663599 0.555418
+vn 0.501146 0.663599 0.555418
+vn 0.501146 0.663599 0.555418
+vn -0.598240 0.569981 -0.563233
+vn -0.598240 0.569981 -0.563233
+vn -0.598240 0.569981 -0.563233
+vn 0.501184 0.663455 -0.555555
+vn 0.501184 0.663455 -0.555555
+vn 0.501184 0.663455 -0.555555
+vn -0.587665 -0.566900 -0.577299
+vn -0.587666 -0.566900 -0.577299
+vn -0.587666 -0.566900 -0.577299
+vn 0.692151 -0.075970 -0.717744
+vn 0.692151 -0.075970 -0.717744
+vn 0.692151 -0.075970 -0.717744
+vn 0.060912 -0.998143 0.000121
+vn 0.060912 -0.998143 0.000121
+vn 0.060912 -0.998143 0.000121
+vn 0.060912 -0.998143 0.000121
+vn -0.000033 0.000120 1.000000
+vn -0.000033 0.000120 1.000000
+vn -0.000033 0.000120 1.000000
+vn -0.000033 0.000120 1.000000
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.060540 0.998166 -0.000117
+vn 0.060540 0.998166 -0.000117
+vn 0.060540 0.998166 -0.000117
+vn 0.060540 0.998166 -0.000117
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn -0.719760 -0.694223 0.000060
+vn 0.043116 -0.706810 0.706089
+vn 0.043116 -0.706810 0.706089
+vn 0.043116 -0.706810 0.706089
+vn 0.043116 -0.706810 0.706089
+vn -0.707014 0.012854 0.707082
+vn -0.707014 0.012854 0.707082
+vn -0.707014 0.012854 0.707082
+vn -0.707014 0.012854 0.707083
+vn 0.755503 -0.655145 0.000103
+vn 0.755503 -0.655145 0.000103
+vn 0.755503 -0.655145 0.000103
+vn 0.755503 -0.655145 0.000103
+vn 0.706963 -0.012687 0.707137
+vn 0.706963 -0.012687 0.707137
+vn 0.706963 -0.012687 0.707137
+vn 0.706963 -0.012687 0.707137
+vn -0.694220 0.719763 -0.000109
+vn -0.694220 0.719763 -0.000109
+vn -0.694220 0.719763 -0.000109
+vn -0.694220 0.719763 -0.000109
+vn 0.042804 0.706216 0.706702
+vn 0.042804 0.706216 0.706702
+vn 0.042804 0.706216 0.706702
+vn 0.042804 0.706216 0.706702
+vn 0.719760 0.694224 -0.000060
+vn 0.719760 0.694223 -0.000060
+vn 0.719760 0.694223 -0.000060
+vn 0.719760 0.694223 -0.000060
+vn -0.706973 0.012686 -0.707126
+vn -0.706973 0.012686 -0.707126
+vn -0.706973 0.012686 -0.707126
+vn -0.706973 0.012686 -0.707126
+vn 0.042851 0.706047 -0.706868
+vn 0.042851 0.706047 -0.706868
+vn 0.042851 0.706047 -0.706868
+vn 0.042851 0.706047 -0.706868
+vn 0.707016 -0.012857 -0.707081
+vn 0.707016 -0.012857 -0.707081
+vn 0.707016 -0.012857 -0.707081
+vn 0.707016 -0.012857 -0.707081
+vn 0.043163 -0.706983 -0.705913
+vn 0.043163 -0.706983 -0.705913
+vn 0.043163 -0.706983 -0.705913
+vn 0.043163 -0.706983 -0.705913
+vn -0.587706 -0.566758 0.577397
+vn -0.587705 -0.566758 0.577397
+vn -0.587706 -0.566758 0.577397
+vn 0.635909 -0.551399 0.539981
+vn 0.635909 -0.551399 0.539981
+vn 0.635909 -0.551399 0.539981
+vn -0.566838 0.587765 0.577258
+vn -0.566838 0.587765 0.577258
+vn -0.566838 0.587765 0.577258
+vn 0.587661 0.566897 0.577307
+vn 0.587661 0.566897 0.577307
+vn 0.587661 0.566897 0.577307
+vn -0.566814 0.587609 -0.577441
+vn -0.566814 0.587609 -0.577441
+vn -0.566814 0.587609 -0.577441
+vn 0.587695 0.566770 -0.577396
+vn 0.587695 0.566770 -0.577396
+vn 0.587695 0.566770 -0.577396
+vn -0.587669 -0.566904 -0.577291
+vn -0.587669 -0.566904 -0.577291
+vn -0.587669 -0.566904 -0.577291
+vn 0.635958 -0.551519 -0.539801
+vn 0.635958 -0.551519 -0.539801
+vn 0.635958 -0.551519 -0.539801
+vn 0.006941 0.382513 -0.923924
+vn 0.012793 0.706906 -0.707192
+vn 0.006941 0.382512 -0.923924
+vn 0.012793 0.706906 -0.707192
+vn 0.012793 0.706906 -0.707192
+vn 0.016697 0.923681 -0.382799
+vn 0.012793 0.706906 -0.707192
+vn 0.016697 0.923681 -0.382799
+vn 0.016697 0.923681 -0.382799
+vn 0.018059 0.999837 -0.000120
+vn 0.016697 0.923681 -0.382799
+vn 0.018059 0.999837 -0.000120
+vn 0.018059 0.999837 -0.000120
+vn 0.016672 0.923774 0.382575
+vn 0.018059 0.999837 -0.000120
+vn 0.016672 0.923774 0.382576
+vn 0.016672 0.923774 0.382575
+vn 0.012747 0.707077 0.707022
+vn 0.016672 0.923774 0.382576
+vn 0.012747 0.707078 0.707021
+vn 0.012747 0.707077 0.707022
+vn 0.006881 0.382731 0.923834
+vn 0.012747 0.707078 0.707021
+vn 0.006881 0.382731 0.923834
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000121 1.000000
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000119 1.000000
+vn -0.000033 0.000121 1.000000
+vn -0.006941 -0.382511 0.923925
+vn -0.000033 0.000119 1.000000
+vn -0.006941 -0.382510 0.923925
+vn -0.006941 -0.382511 0.923925
+vn -0.012794 -0.706908 0.707190
+vn -0.006941 -0.382510 0.923925
+vn -0.012794 -0.706908 0.707190
+vn -0.012794 -0.706908 0.707190
+vn -0.016698 -0.923683 0.382794
+vn -0.012794 -0.706908 0.707190
+vn -0.016698 -0.923683 0.382794
+vn -0.016698 -0.923683 0.382794
+vn -0.018060 -0.999837 0.000119
+vn -0.016698 -0.923683 0.382794
+vn -0.018060 -0.999837 0.000118
+vn -0.018060 -0.999837 0.000119
+vn -0.016672 -0.923773 -0.382577
+vn -0.018060 -0.999837 0.000118
+vn -0.016672 -0.923773 -0.382577
+vn -0.016672 -0.923773 -0.382577
+vn -0.012747 -0.707077 -0.707021
+vn -0.016672 -0.923773 -0.382577
+vn -0.012747 -0.707077 -0.707021
+vn -0.012747 -0.707077 -0.707021
+vn -0.006881 -0.382731 -0.923834
+vn -0.012747 -0.707077 -0.707021
+vn -0.006881 -0.382731 -0.923834
+vn -0.006881 -0.382731 -0.923834
+vn 0.000033 -0.000120 -1.000000
+vn -0.006881 -0.382731 -0.923834
+vn 0.000033 -0.000120 -1.000000
+vn 0.000033 -0.000120 -1.000000
+vn 0.006941 0.382513 -0.923924
+vn 0.000033 -0.000120 -1.000000
+vn 0.006941 0.382512 -0.923924
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018057 0.000031
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018057 0.000031
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018052 0.000029
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018051 0.000032
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018054 0.000033
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018061 0.000032
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018060 0.000039
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018057 0.000036
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000036
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018056 0.000040
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018057 0.000031
+vn 0.999837 -0.018058 0.000041
+vn 0.999837 -0.018057 0.000031
+vn -0.010047 -0.555382 0.831535
+vn -0.010047 -0.555382 0.831535
+vn -0.010047 -0.555382 0.831535
+vn -0.010047 -0.555382 0.831535
+vn -0.015020 -0.831267 0.555670
+vn -0.015020 -0.831267 0.555670
+vn -0.015020 -0.831267 0.555671
+vn -0.015020 -0.831267 0.555670
+vn -0.017707 -0.980602 0.195208
+vn -0.017707 -0.980602 0.195208
+vn -0.017707 -0.980602 0.195208
+vn -0.017707 -0.980602 0.195208
+vn -0.017722 -0.980650 -0.194967
+vn -0.017722 -0.980650 -0.194967
+vn -0.017722 -0.980650 -0.194967
+vn -0.017722 -0.980650 -0.194967
+vn -0.015035 -0.831395 -0.555479
+vn -0.015035 -0.831395 -0.555479
+vn -0.015035 -0.831395 -0.555479
+vn -0.015035 -0.831395 -0.555479
+vn -0.010057 -0.555581 -0.831402
+vn -0.010057 -0.555581 -0.831402
+vn -0.010057 -0.555581 -0.831402
+vn -0.010057 -0.555581 -0.831402
+vn -0.003508 -0.195178 -0.980762
+vn -0.003508 -0.195178 -0.980762
+vn -0.003508 -0.195178 -0.980762
+vn -0.003508 -0.195178 -0.980762
+vn 0.003549 0.194942 -0.980808
+vn 0.003549 0.194942 -0.980808
+vn 0.003549 0.194942 -0.980808
+vn 0.003549 0.194942 -0.980808
+vn 0.010044 0.555381 -0.831535
+vn 0.010044 0.555381 -0.831536
+vn 0.010044 0.555381 -0.831535
+vn 0.010044 0.555381 -0.831535
+vn 0.015016 0.831268 -0.555669
+vn 0.015016 0.831268 -0.555669
+vn 0.015016 0.831268 -0.555669
+vn 0.015016 0.831268 -0.555669
+vn 0.017707 0.980602 -0.195208
+vn 0.017707 0.980602 -0.195208
+vn 0.017707 0.980602 -0.195208
+vn 0.017707 0.980602 -0.195208
+vn 0.017693 0.980649 0.194975
+vn 0.017693 0.980649 0.194975
+vn 0.017693 0.980649 0.194975
+vn 0.017693 0.980649 0.194975
+vn 0.015000 0.831401 0.555471
+vn 0.015000 0.831401 0.555471
+vn 0.015000 0.831401 0.555471
+vn 0.015000 0.831401 0.555471
+vn 0.010008 0.555580 0.831403
+vn 0.010008 0.555580 0.831403
+vn 0.010008 0.555580 0.831403
+vn 0.010008 0.555580 0.831403
+vn 0.003502 0.195177 0.980762
+vn 0.003502 0.195177 0.980762
+vn 0.003502 0.195177 0.980762
+vn 0.003502 0.195177 0.980762
+vn -0.003543 -0.194943 0.980808
+vn -0.003543 -0.194943 0.980808
+vn -0.003543 -0.194943 0.980808
+vn -0.003543 -0.194943 0.980808
+vn 0.006942 0.382511 -0.923925
+vn 0.012793 0.706908 -0.707190
+vn 0.006942 0.382513 -0.923924
+vn 0.012793 0.706907 -0.707191
+vn 0.012793 0.706908 -0.707190
+vn 0.016698 0.923683 -0.382794
+vn 0.012793 0.706907 -0.707191
+vn 0.016698 0.923683 -0.382794
+vn 0.016698 0.923683 -0.382794
+vn 0.018062 0.999837 -0.000114
+vn 0.016698 0.923683 -0.382794
+vn 0.018062 0.999837 -0.000118
+vn 0.018062 0.999837 -0.000114
+vn 0.016674 0.923774 0.382575
+vn 0.018062 0.999837 -0.000118
+vn 0.016674 0.923773 0.382577
+vn 0.016674 0.923774 0.382575
+vn 0.012748 0.707078 0.707021
+vn 0.016674 0.923773 0.382577
+vn 0.012748 0.707078 0.707021
+vn 0.012748 0.707078 0.707021
+vn 0.006881 0.382741 0.923830
+vn 0.012748 0.707078 0.707021
+vn 0.006881 0.382741 0.923830
+vn 0.006881 0.382741 0.923830
+vn -0.000033 0.000117 1.000000
+vn 0.006881 0.382741 0.923830
+vn -0.000033 0.000117 1.000000
+vn -0.000033 0.000117 1.000000
+vn -0.006942 -0.382520 0.923921
+vn -0.000033 0.000117 1.000000
+vn -0.006942 -0.382520 0.923921
+vn -0.006942 -0.382520 0.923921
+vn -0.012794 -0.706906 0.707191
+vn -0.006942 -0.382520 0.923921
+vn -0.012794 -0.706907 0.707191
+vn -0.012794 -0.706906 0.707191
+vn -0.016699 -0.923678 0.382805
+vn -0.012794 -0.706907 0.707191
+vn -0.016699 -0.923678 0.382805
+vn -0.016699 -0.923678 0.382805
+vn -0.018061 -0.999837 0.000130
+vn -0.016699 -0.923678 0.382805
+vn -0.018061 -0.999837 0.000130
+vn -0.018061 -0.999837 0.000130
+vn -0.016673 -0.923771 -0.382583
+vn -0.018061 -0.999837 0.000130
+vn -0.016673 -0.923771 -0.382582
+vn -0.016673 -0.923771 -0.382583
+vn -0.012748 -0.707077 -0.707022
+vn -0.016673 -0.923771 -0.382582
+vn -0.012748 -0.707077 -0.707022
+vn -0.012748 -0.707077 -0.707022
+vn -0.006881 -0.382730 -0.923835
+vn -0.012748 -0.707077 -0.707022
+vn -0.006881 -0.382730 -0.923835
+vn -0.006881 -0.382730 -0.923835
+vn 0.000033 -0.000117 -1.000000
+vn -0.006881 -0.382730 -0.923835
+vn 0.000033 -0.000117 -1.000000
+vn 0.000033 -0.000117 -1.000000
+vn 0.006942 0.382511 -0.923925
+vn 0.000033 -0.000117 -1.000000
+vn 0.006942 0.382513 -0.923924
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn -0.999837 0.018059 -0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.006941 0.382511 -0.923925
+vn 0.012792 0.706907 -0.707191
+vn 0.006941 0.382512 -0.923925
+vn 0.012792 0.706906 -0.707192
+vn 0.012792 0.706907 -0.707191
+vn 0.016697 0.923682 -0.382796
+vn 0.012792 0.706906 -0.707192
+vn 0.016697 0.923682 -0.382796
+vn 0.016697 0.923682 -0.382796
+vn 0.018060 0.999837 -0.000122
+vn 0.016697 0.923682 -0.382796
+vn 0.018060 0.999837 -0.000120
+vn 0.018060 0.999837 -0.000122
+vn 0.016673 0.923773 0.382578
+vn 0.018060 0.999837 -0.000120
+vn 0.016673 0.923773 0.382577
+vn 0.016673 0.923773 0.382578
+vn 0.012747 0.707076 0.707023
+vn 0.016673 0.923773 0.382577
+vn 0.012747 0.707075 0.707024
+vn 0.012747 0.707076 0.707023
+vn 0.006881 0.382731 0.923834
+vn 0.012747 0.707075 0.707024
+vn 0.006881 0.382731 0.923834
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000122 1.000000
+vn 0.006881 0.382731 0.923834
+vn -0.000033 0.000122 1.000000
+vn -0.000033 0.000122 1.000000
+vn -0.006942 -0.382512 0.923925
+vn -0.000033 0.000122 1.000000
+vn -0.006942 -0.382513 0.923924
+vn -0.006942 -0.382512 0.923925
+vn -0.012794 -0.706905 0.707193
+vn -0.006942 -0.382513 0.923924
+vn -0.012794 -0.706904 0.707194
+vn -0.012794 -0.706905 0.707193
+vn -0.016697 -0.923682 0.382796
+vn -0.012794 -0.706904 0.707194
+vn -0.016697 -0.923682 0.382796
+vn -0.016697 -0.923682 0.382796
+vn -0.018060 -0.999837 0.000118
+vn -0.016697 -0.923682 0.382796
+vn -0.018060 -0.999837 0.000117
+vn -0.018060 -0.999837 0.000118
+vn -0.016672 -0.923775 -0.382574
+vn -0.018060 -0.999837 0.000117
+vn -0.016672 -0.923774 -0.382574
+vn -0.016672 -0.923775 -0.382574
+vn -0.012747 -0.707078 -0.707021
+vn -0.016672 -0.923774 -0.382574
+vn -0.012747 -0.707078 -0.707020
+vn -0.012747 -0.707078 -0.707021
+vn -0.006881 -0.382735 -0.923833
+vn -0.012747 -0.707078 -0.707020
+vn -0.006881 -0.382736 -0.923832
+vn -0.006881 -0.382735 -0.923833
+vn 0.000032 -0.000120 -1.000000
+vn -0.006881 -0.382736 -0.923832
+vn 0.000032 -0.000119 -1.000000
+vn 0.000032 -0.000120 -1.000000
+vn 0.006941 0.382511 -0.923925
+vn 0.000032 -0.000119 -1.000000
+vn 0.006941 0.382512 -0.923925
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn -0.999837 0.018060 -0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018057 0.000033
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018057 0.000032
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018055 0.000033
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018061 0.000035
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018060 0.000037
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018059 0.000037
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018058 0.000034
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018058 0.000029
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018062 0.000034
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018065 0.000037
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018067 0.000036
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018060 0.000038
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018055 0.000036
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018058 0.000032
+vn 0.999837 -0.018061 0.000029
+vn 0.999837 -0.018058 0.000032
+vn -0.010070 -0.555386 0.831532
+vn -0.010070 -0.555386 0.831532
+vn -0.010070 -0.555386 0.831532
+vn -0.010070 -0.555386 0.831532
+vn -0.015036 -0.831265 0.555674
+vn -0.015036 -0.831265 0.555674
+vn -0.015036 -0.831265 0.555674
+vn -0.015036 -0.831265 0.555674
+vn -0.017736 -0.980600 0.195213
+vn -0.017736 -0.980600 0.195213
+vn -0.017736 -0.980600 0.195213
+vn -0.017736 -0.980600 0.195213
+vn -0.017729 -0.980648 -0.194977
+vn -0.017729 -0.980648 -0.194977
+vn -0.017729 -0.980648 -0.194977
+vn -0.017729 -0.980648 -0.194977
+vn -0.014991 -0.831402 -0.555469
+vn -0.014991 -0.831402 -0.555469
+vn -0.014991 -0.831402 -0.555469
+vn -0.014991 -0.831402 -0.555469
+vn -0.009988 -0.555582 -0.831402
+vn -0.009988 -0.555582 -0.831402
+vn -0.009988 -0.555582 -0.831402
+vn -0.009988 -0.555582 -0.831402
+vn -0.003477 -0.195171 -0.980763
+vn -0.003477 -0.195171 -0.980763
+vn -0.003477 -0.195171 -0.980763
+vn -0.003477 -0.195171 -0.980763
+vn 0.003577 0.194936 -0.980809
+vn 0.003577 0.194936 -0.980809
+vn 0.003577 0.194936 -0.980809
+vn 0.003577 0.194936 -0.980809
+vn 0.010079 0.555382 -0.831534
+vn 0.010079 0.555382 -0.831534
+vn 0.010079 0.555382 -0.831534
+vn 0.010079 0.555382 -0.831534
+vn 0.015030 0.831266 -0.555672
+vn 0.015030 0.831266 -0.555672
+vn 0.015030 0.831266 -0.555672
+vn 0.015030 0.831266 -0.555672
+vn 0.017730 0.980603 -0.195203
+vn 0.017730 0.980603 -0.195203
+vn 0.017730 0.980603 -0.195203
+vn 0.017730 0.980603 -0.195203
+vn 0.017705 0.980650 0.194968
+vn 0.017705 0.980650 0.194968
+vn 0.017705 0.980650 0.194968
+vn 0.017705 0.980650 0.194968
+vn 0.014970 0.831400 0.555473
+vn 0.014970 0.831400 0.555473
+vn 0.014970 0.831400 0.555473
+vn 0.014970 0.831400 0.555473
+vn 0.009984 0.555580 0.831403
+vn 0.009984 0.555580 0.831403
+vn 0.009984 0.555580 0.831403
+vn 0.009984 0.555580 0.831403
+vn 0.003479 0.195172 0.980763
+vn 0.003479 0.195172 0.980763
+vn 0.003479 0.195172 0.980763
+vn 0.003479 0.195172 0.980763
+vn -0.003573 -0.194937 0.980809
+vn -0.003573 -0.194937 0.980809
+vn -0.003573 -0.194937 0.980809
+vn -0.003573 -0.194937 0.980809
+vn 0.006942 0.382506 -0.923927
+vn 0.012793 0.706912 -0.707186
+vn 0.006942 0.382508 -0.923926
+vn 0.012793 0.706913 -0.707185
+vn 0.012793 0.706912 -0.707186
+vn 0.016696 0.923683 -0.382794
+vn 0.012793 0.706913 -0.707185
+vn 0.016696 0.923683 -0.382793
+vn 0.016696 0.923683 -0.382794
+vn 0.018059 0.999837 -0.000126
+vn 0.016696 0.923683 -0.382793
+vn 0.018059 0.999837 -0.000126
+vn 0.018059 0.999837 -0.000126
+vn 0.016672 0.923774 0.382576
+vn 0.018059 0.999837 -0.000126
+vn 0.016672 0.923775 0.382573
+vn 0.016672 0.923774 0.382576
+vn 0.012747 0.707078 0.707021
+vn 0.016672 0.923775 0.382573
+vn 0.012747 0.707076 0.707023
+vn 0.012747 0.707078 0.707021
+vn 0.006882 0.382730 0.923835
+vn 0.012747 0.707076 0.707023
+vn 0.006882 0.382732 0.923834
+vn 0.006882 0.382730 0.923835
+vn -0.000033 0.000122 1.000000
+vn 0.006882 0.382732 0.923834
+vn -0.000033 0.000121 1.000000
+vn -0.000033 0.000122 1.000000
+vn -0.006942 -0.382505 0.923927
+vn -0.000033 0.000121 1.000000
+vn -0.006942 -0.382507 0.923927
+vn -0.006942 -0.382505 0.923927
+vn -0.012794 -0.706907 0.707191
+vn -0.006942 -0.382507 0.923927
+vn -0.012794 -0.706906 0.707192
+vn -0.012794 -0.706907 0.707191
+vn -0.016698 -0.923682 0.382795
+vn -0.012794 -0.706906 0.707192
+vn -0.016698 -0.923682 0.382796
+vn -0.016698 -0.923682 0.382795
+vn -0.018060 -0.999837 0.000115
+vn -0.016698 -0.923682 0.382796
+vn -0.018060 -0.999837 0.000115
+vn -0.018060 -0.999837 0.000115
+vn -0.016673 -0.923774 -0.382576
+vn -0.018060 -0.999837 0.000115
+vn -0.016673 -0.923774 -0.382576
+vn -0.016673 -0.923774 -0.382576
+vn -0.012748 -0.707079 -0.707019
+vn -0.016673 -0.923774 -0.382576
+vn -0.012748 -0.707079 -0.707020
+vn -0.012748 -0.707079 -0.707019
+vn -0.006882 -0.382731 -0.923834
+vn -0.012748 -0.707079 -0.707020
+vn -0.006882 -0.382729 -0.923835
+vn -0.006882 -0.382731 -0.923834
+vn 0.000033 -0.000119 -1.000000
+vn -0.006882 -0.382729 -0.923835
+vn 0.000033 -0.000124 -1.000000
+vn 0.000033 -0.000119 -1.000000
+vn 0.006942 0.382506 -0.923927
+vn 0.000033 -0.000124 -1.000000
+vn 0.006942 0.382508 -0.923926
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn -0.999837 0.018061 -0.000034
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.999837 -0.018060 0.000035
+vn 0.153537 -0.988143 0.000121
+vn 0.153537 -0.988143 0.000121
+vn 0.153537 -0.988143 0.000121
+vn 0.153537 -0.988143 0.000121
+vn 0.993220 -0.116251 0.000052
+vn 0.993220 -0.116251 0.000052
+vn 0.993220 -0.116251 0.000052
+vn 0.993220 -0.116251 0.000052
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn 0.911117 0.412147 -0.000012
+vn 0.911117 0.412147 -0.000012
+vn 0.911117 0.412147 -0.000012
+vn 0.911117 0.412147 -0.000012
+vn -0.901283 -0.433231 0.000017
+vn -0.901283 -0.433231 0.000017
+vn -0.901283 -0.433231 0.000017
+vn -0.901283 -0.433231 0.000017
+vn -0.990247 0.139326 -0.000054
+vn -0.990247 0.139326 -0.000054
+vn -0.990247 0.139326 -0.000054
+vn -0.990247 0.139326 -0.000054
+vn -0.153538 0.988143 -0.000122
+vn -0.153538 0.988143 -0.000122
+vn -0.153538 0.988143 -0.000122
+vn -0.153538 0.988143 -0.000122
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.108540 -0.698637 0.707195
+vn 0.108540 -0.698637 0.707195
+vn 0.108540 -0.698638 0.707195
+vn 0.108540 -0.698638 0.707195
+vn 0.720286 -0.693677 0.000109
+vn 0.720286 -0.693677 0.000109
+vn 0.720286 -0.693677 0.000109
+vn 0.720286 -0.693677 0.000109
+vn 0.702280 -0.082119 0.707149
+vn 0.702280 -0.082119 0.707149
+vn 0.702280 -0.082119 0.707149
+vn 0.702280 -0.082119 0.707149
+vn 0.644231 0.291515 0.707096
+vn 0.644231 0.291515 0.707096
+vn 0.644231 0.291515 0.707096
+vn 0.644231 0.291515 0.707096
+vn 0.988143 0.153539 0.000020
+vn 0.988143 0.153539 0.000020
+vn 0.988143 0.153539 0.000020
+vn 0.988143 0.153539 0.000020
+vn -0.465573 -0.885009 0.000085
+vn -0.465573 -0.885009 0.000085
+vn -0.465573 -0.885009 0.000085
+vn -0.465573 -0.885009 0.000085
+vn -0.637329 -0.306257 0.707120
+vn -0.637329 -0.306257 0.707120
+vn -0.637329 -0.306257 0.707120
+vn -0.637329 -0.306257 0.707120
+vn -0.988143 -0.153534 -0.000020
+vn -0.988143 -0.153534 -0.000020
+vn -0.988143 -0.153534 -0.000020
+vn -0.988143 -0.153534 -0.000020
+vn -0.700242 0.098602 0.707063
+vn -0.700242 0.098602 0.707063
+vn -0.700242 0.098602 0.707063
+vn -0.700242 0.098602 0.707063
+vn -0.108595 0.698805 0.707021
+vn -0.108595 0.698805 0.707021
+vn -0.108595 0.698805 0.707021
+vn -0.108595 0.698805 0.707021
+vn -0.712167 0.702010 -0.000109
+vn -0.712167 0.702010 -0.000109
+vn -0.712167 0.702010 -0.000109
+vn -0.712167 0.702010 -0.000109
+vn -0.108540 0.698643 -0.707190
+vn -0.108540 0.698643 -0.707190
+vn -0.108540 0.698643 -0.707190
+vn -0.108540 0.698643 -0.707190
+vn -0.700183 0.098436 -0.707145
+vn -0.700183 0.098436 -0.707145
+vn -0.700183 0.098436 -0.707145
+vn -0.700183 0.098436 -0.707145
+vn -0.637272 -0.306421 -0.707101
+vn -0.637272 -0.306421 -0.707101
+vn -0.637272 -0.306421 -0.707101
+vn -0.637272 -0.306421 -0.707101
+vn 0.108594 -0.698804 -0.707022
+vn 0.108594 -0.698804 -0.707022
+vn 0.108594 -0.698804 -0.707022
+vn 0.108594 -0.698804 -0.707022
+vn 0.702342 -0.082284 -0.707068
+vn 0.702342 -0.082284 -0.707068
+vn 0.702342 -0.082284 -0.707068
+vn 0.702342 -0.082284 -0.707068
+vn 0.644285 0.291350 -0.707115
+vn 0.644285 0.291350 -0.707115
+vn 0.644285 0.291350 -0.707115
+vn 0.644285 0.291350 -0.707115
+vn 0.475841 0.879531 -0.000086
+vn 0.475841 0.879531 -0.000086
+vn 0.475841 0.879531 -0.000086
+vn 0.475841 0.879531 -0.000086
+vn 0.603626 -0.581286 0.545657
+vn 0.603626 -0.581286 0.545657
+vn 0.603626 -0.581286 0.545657
+vn 0.682169 0.106086 0.723458
+vn 0.682169 0.106086 0.723458
+vn 0.682169 0.106086 0.723458
+vn 0.682169 0.106086 0.723458
+vn -0.390496 -0.742185 0.544678
+vn -0.390496 -0.742185 0.544678
+vn -0.390496 -0.742185 0.544678
+vn -0.678861 -0.105391 0.726664
+vn -0.678861 -0.105391 0.726664
+vn -0.678861 -0.105391 0.726664
+vn -0.678861 -0.105391 0.726664
+vn -0.597321 0.588836 0.544499
+vn -0.597321 0.588836 0.544499
+vn -0.597321 0.588836 0.544499
+vn -0.597271 0.588709 -0.544692
+vn -0.597271 0.588709 -0.544692
+vn -0.597271 0.588709 -0.544692
+vn -0.678803 -0.105559 -0.726693
+vn -0.678803 -0.105559 -0.726693
+vn -0.678803 -0.105559 -0.726693
+vn -0.678803 -0.105559 -0.726693
+vn -0.390444 -0.742316 -0.544537
+vn -0.390444 -0.742316 -0.544537
+vn -0.390444 -0.742316 -0.544537
+vn 0.603674 -0.581411 -0.545472
+vn 0.603674 -0.581411 -0.545472
+vn 0.603674 -0.581411 -0.545472
+vn 0.682229 0.105912 -0.723427
+vn 0.682229 0.105912 -0.723427
+vn 0.682229 0.105912 -0.723427
+vn 0.682229 0.105912 -0.723427
+vn 0.398767 0.737167 0.545500
+vn 0.398767 0.737167 0.545500
+vn 0.398768 0.737166 0.545500
+vn 0.398809 0.737049 -0.545628
+vn 0.398809 0.737049 -0.545628
+vn 0.398809 0.737049 -0.545628
+vn -0.519994 0.854170 -0.000120
+vn -0.807290 0.590155 -0.000100
+vn -0.519995 0.854169 -0.000120
+vn -0.807290 0.590155 -0.000100
+vn -0.807290 0.590155 -0.000100
+vn -0.971681 0.236296 -0.000066
+vn -0.807290 0.590155 -0.000100
+vn -0.971681 0.236297 -0.000066
+vn -0.971681 0.236296 -0.000066
+vn -0.988143 -0.153536 -0.000021
+vn -0.971681 0.236297 -0.000066
+vn -0.988143 -0.153537 -0.000021
+vn -0.988143 -0.153536 -0.000021
+vn -0.854169 -0.519995 0.000027
+vn -0.988143 -0.153537 -0.000021
+vn -0.854169 -0.519995 0.000027
+vn -0.854169 -0.519995 0.000027
+vn -0.590154 -0.807290 0.000071
+vn -0.854169 -0.519995 0.000027
+vn -0.590155 -0.807290 0.000071
+vn -0.590154 -0.807290 0.000071
+vn -0.236296 -0.971681 0.000104
+vn -0.590155 -0.807290 0.000071
+vn -0.236296 -0.971681 0.000104
+vn -0.236296 -0.971681 0.000104
+vn 0.153536 -0.988143 0.000121
+vn -0.236296 -0.971681 0.000104
+vn 0.153536 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.519995 -0.854169 0.000120
+vn 0.153536 -0.988143 0.000121
+vn 0.519995 -0.854169 0.000120
+vn 0.519995 -0.854169 0.000120
+vn 0.807289 -0.590156 0.000100
+vn 0.519995 -0.854169 0.000120
+vn 0.807289 -0.590156 0.000100
+vn 0.807289 -0.590156 0.000100
+vn 0.971681 -0.236298 0.000065
+vn 0.807289 -0.590156 0.000100
+vn 0.971681 -0.236298 0.000065
+vn 0.971681 -0.236298 0.000065
+vn 0.988143 0.153539 0.000021
+vn 0.971681 -0.236298 0.000065
+vn 0.988143 0.153539 0.000021
+vn 0.988143 0.153539 0.000021
+vn 0.854168 0.519998 -0.000027
+vn 0.988143 0.153539 0.000021
+vn 0.854168 0.519998 -0.000027
+vn 0.854168 0.519998 -0.000027
+vn 0.590157 0.807289 -0.000072
+vn 0.854168 0.519998 -0.000027
+vn 0.590157 0.807288 -0.000072
+vn 0.590157 0.807289 -0.000072
+vn 0.236296 0.971681 -0.000105
+vn 0.590157 0.807288 -0.000072
+vn 0.236295 0.971681 -0.000105
+vn 0.236296 0.971681 -0.000105
+vn -0.153539 0.988143 -0.000121
+vn 0.236295 0.971681 -0.000105
+vn -0.153538 0.988143 -0.000121
+vn -0.153539 0.988143 -0.000121
+vn -0.519994 0.854170 -0.000120
+vn -0.153538 0.988143 -0.000121
+vn -0.519995 0.854169 -0.000120
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.364079 0.598018 -0.714017
+vn -0.364080 0.598018 -0.714017
+vn -0.107482 0.691830 -0.714016
+vn -0.107482 0.691831 -0.714016
+vn -0.364080 0.598018 -0.714017
+vn -0.364079 0.598018 -0.714017
+vn -0.565245 0.413150 -0.714006
+vn -0.565245 0.413150 -0.714006
+vn -0.565245 0.413150 -0.714006
+vn -0.565245 0.413150 -0.714006
+vn -0.680354 0.165374 -0.713982
+vn -0.680354 0.165374 -0.713982
+vn -0.680354 0.165374 -0.713982
+vn -0.680354 0.165374 -0.713982
+vn -0.691879 -0.107592 -0.713952
+vn -0.691879 -0.107592 -0.713952
+vn -0.691879 -0.107592 -0.713952
+vn -0.691879 -0.107592 -0.713952
+vn -0.598069 -0.364190 -0.713918
+vn -0.598070 -0.364190 -0.713918
+vn -0.598069 -0.364190 -0.713918
+vn -0.598070 -0.364190 -0.713918
+vn -0.413208 -0.565361 -0.713881
+vn -0.413207 -0.565361 -0.713881
+vn -0.413208 -0.565361 -0.713881
+vn -0.413207 -0.565361 -0.713881
+vn -0.165432 -0.680472 -0.713855
+vn -0.165432 -0.680472 -0.713855
+vn -0.165432 -0.680472 -0.713855
+vn -0.165432 -0.680472 -0.713855
+vn 0.107537 -0.691996 -0.713847
+vn 0.107536 -0.691996 -0.713847
+vn 0.107537 -0.691996 -0.713847
+vn 0.107536 -0.691996 -0.713847
+vn 0.364137 -0.598184 -0.713849
+vn 0.364137 -0.598184 -0.713849
+vn 0.364137 -0.598184 -0.713849
+vn 0.364137 -0.598184 -0.713849
+vn 0.565303 -0.413320 -0.713862
+vn 0.565304 -0.413320 -0.713862
+vn 0.565303 -0.413320 -0.713862
+vn 0.565304 -0.413320 -0.713862
+vn 0.680411 -0.165543 -0.713888
+vn 0.680411 -0.165544 -0.713888
+vn 0.680411 -0.165543 -0.713888
+vn 0.680411 -0.165544 -0.713888
+vn 0.691936 0.107426 -0.713922
+vn 0.691936 0.107425 -0.713922
+vn 0.691936 0.107426 -0.713922
+vn 0.691936 0.107425 -0.713922
+vn 0.598126 0.364025 -0.713954
+vn 0.598126 0.364026 -0.713954
+vn 0.598126 0.364025 -0.713954
+vn 0.598126 0.364026 -0.713954
+vn 0.413264 0.565194 -0.713981
+vn 0.413264 0.565194 -0.713981
+vn 0.413264 0.565194 -0.713981
+vn 0.413264 0.565194 -0.713981
+vn 0.165487 0.680303 -0.714004
+vn 0.165487 0.680303 -0.714004
+vn 0.165487 0.680303 -0.714004
+vn 0.165487 0.680303 -0.714004
+vn -0.107482 0.691831 -0.714016
+vn -0.107482 0.691830 -0.714016
+vn -0.364139 0.598188 0.713845
+vn -0.364138 0.598188 0.713845
+vn -0.565304 0.413320 0.713861
+vn -0.565304 0.413320 0.713861
+vn -0.364138 0.598188 0.713845
+vn -0.364139 0.598188 0.713845
+vn -0.107537 0.691999 0.713844
+vn -0.107539 0.691999 0.713844
+vn -0.565304 0.413320 0.713861
+vn -0.565304 0.413320 0.713861
+vn -0.680411 0.165541 0.713888
+vn -0.680412 0.165541 0.713888
+vn -0.680411 0.165541 0.713888
+vn -0.680412 0.165541 0.713888
+vn -0.691939 -0.107425 0.713919
+vn -0.691939 -0.107424 0.713919
+vn -0.691939 -0.107425 0.713919
+vn -0.691939 -0.107424 0.713919
+vn -0.598129 -0.364023 0.713953
+vn -0.598129 -0.364022 0.713954
+vn -0.598129 -0.364023 0.713953
+vn -0.598129 -0.364022 0.713954
+vn -0.413262 -0.565194 0.713982
+vn -0.413262 -0.565193 0.713982
+vn -0.413262 -0.565194 0.713982
+vn -0.413262 -0.565193 0.713982
+vn -0.165486 -0.680306 0.714002
+vn -0.165486 -0.680306 0.714002
+vn -0.165486 -0.680306 0.714002
+vn -0.165486 -0.680306 0.714002
+vn 0.107480 -0.691829 0.714018
+vn 0.107479 -0.691829 0.714018
+vn 0.107480 -0.691829 0.714018
+vn 0.107479 -0.691829 0.714018
+vn 0.364077 -0.598014 0.714022
+vn 0.364076 -0.598015 0.714022
+vn 0.364077 -0.598014 0.714022
+vn 0.364076 -0.598015 0.714022
+vn 0.565245 -0.413150 0.714007
+vn 0.565245 -0.413150 0.714007
+vn 0.565245 -0.413150 0.714007
+vn 0.565245 -0.413150 0.714007
+vn 0.680357 -0.165375 0.713979
+vn 0.680357 -0.165375 0.713979
+vn 0.680357 -0.165375 0.713979
+vn 0.680357 -0.165375 0.713979
+vn 0.691883 0.107595 0.713948
+vn 0.691883 0.107595 0.713948
+vn 0.691883 0.107595 0.713948
+vn 0.691883 0.107595 0.713948
+vn 0.598071 0.364194 0.713915
+vn 0.598071 0.364193 0.713915
+vn 0.598071 0.364194 0.713915
+vn 0.598071 0.364193 0.713915
+vn 0.413209 0.565359 0.713882
+vn 0.413209 0.565359 0.713882
+vn 0.413209 0.565359 0.713882
+vn 0.413209 0.565359 0.713882
+vn 0.165431 0.680471 0.713857
+vn 0.165431 0.680471 0.713857
+vn 0.165431 0.680471 0.713857
+vn 0.165431 0.680471 0.713857
+vn -0.107539 0.691999 0.713844
+vn -0.107537 0.691999 0.713844
+vn -0.065541 0.659157 0.749143
+vn -0.065541 0.659157 0.749143
+vn -0.065541 0.659157 0.749143
+vn -0.065541 0.659157 0.749143
+vn 0.986488 0.162582 -0.020227
+vn 0.986488 0.162582 -0.020227
+vn 0.986488 0.162582 -0.020227
+vn 0.986488 0.162582 -0.020227
+vn -0.985714 -0.104087 -0.132418
+vn -0.985714 -0.104087 -0.132418
+vn -0.985714 -0.104087 -0.132418
+vn -0.985714 -0.104087 -0.132418
+vn 0.122591 -0.573453 -0.810014
+vn 0.122591 -0.573453 -0.810014
+vn 0.122591 -0.573453 -0.810014
+vn 0.122591 -0.573453 -0.810014
+vn 0.639073 0.559463 0.527814
+vn 0.639073 0.559463 0.527814
+vn 0.639073 0.559463 0.527814
+vn 0.639073 0.559463 0.527814
+vn -0.665958 0.425907 0.612457
+vn -0.665958 0.425907 0.612457
+vn -0.665958 0.425907 0.612457
+vn -0.665958 0.425907 0.612457
+vn 0.649007 -0.318216 -0.691034
+vn 0.649007 -0.318216 -0.691034
+vn 0.649007 -0.318216 -0.691034
+vn 0.649007 -0.318216 -0.691034
+vn -0.455835 -0.315004 -0.832458
+vn -0.455835 -0.315004 -0.832458
+vn -0.455835 -0.315004 -0.832458
+vn -0.455835 -0.315004 -0.832458
+vn -0.118948 0.966968 0.225442
+vn -0.118948 0.966968 0.225442
+vn -0.118948 0.966968 0.225442
+vn -0.118948 0.966968 0.225442
+vn 0.979696 0.165016 -0.113865
+vn 0.979696 0.165016 -0.113865
+vn 0.979696 0.165016 -0.113865
+vn 0.979696 0.165016 -0.113865
+vn -0.915195 0.037712 -0.401244
+vn -0.915195 0.037712 -0.401244
+vn -0.915195 0.037712 -0.401244
+vn -0.915195 0.037712 -0.401244
+vn 0.156150 -0.968701 -0.192964
+vn 0.156150 -0.968701 -0.192964
+vn 0.156150 -0.968701 -0.192964
+vn 0.156150 -0.968701 -0.192964
+vn 0.488757 0.858209 0.156822
+vn 0.488757 0.858209 0.156822
+vn 0.488757 0.858209 0.156822
+vn 0.488757 0.858209 0.156822
+vn -0.606418 0.794695 0.026777
+vn -0.606418 0.794695 0.026777
+vn -0.606418 0.794695 0.026777
+vn -0.606418 0.794695 0.026777
+vn 0.517478 -0.832664 -0.197201
+vn 0.517478 -0.832664 -0.197201
+vn 0.517478 -0.832664 -0.197201
+vn 0.517478 -0.832664 -0.197201
+vn -0.180712 -0.868340 -0.461876
+vn -0.180712 -0.868340 -0.461876
+vn -0.180712 -0.868340 -0.461876
+vn -0.180712 -0.868340 -0.461876
+vn -0.103898 0.994301 -0.023893
+vn -0.103898 0.994301 -0.023893
+vn -0.103898 0.994301 -0.023893
+vn -0.103898 0.994301 -0.023893
+vn 0.940228 0.125481 -0.316584
+vn 0.940228 0.125481 -0.316584
+vn 0.940228 0.125481 -0.316584
+vn 0.940228 0.125481 -0.316584
+vn -0.863978 -0.067018 -0.499050
+vn -0.863978 -0.067018 -0.499050
+vn -0.863978 -0.067018 -0.499050
+vn -0.863978 -0.067018 -0.499050
+vn 0.129201 -0.990866 -0.038616
+vn 0.129201 -0.990866 -0.038616
+vn 0.129201 -0.990866 -0.038616
+vn 0.129201 -0.990866 -0.038616
+vn 0.614667 0.759781 -0.211939
+vn 0.614667 0.759781 -0.211939
+vn 0.614667 0.759781 -0.211939
+vn 0.614667 0.759781 -0.211939
+vn -0.614251 0.748575 -0.249663
+vn -0.614251 0.748575 -0.249663
+vn -0.614251 0.748575 -0.249663
+vn -0.614251 0.748575 -0.249663
+vn 0.612932 -0.768524 -0.183536
+vn 0.612932 -0.768524 -0.183536
+vn 0.612932 -0.768524 -0.183536
+vn 0.612932 -0.768524 -0.183536
+vn -0.279330 -0.908897 -0.309647
+vn -0.279330 -0.908897 -0.309647
+vn -0.279330 -0.908897 -0.309647
+vn -0.279330 -0.908897 -0.309647
+vn 0.023119 0.668119 -0.743695
+vn 0.023119 0.668119 -0.743695
+vn 0.023119 0.668119 -0.743695
+vn 0.023119 0.668119 -0.743695
+vn 0.747695 0.057288 -0.661566
+vn 0.747695 0.057288 -0.661566
+vn 0.747695 0.057288 -0.661566
+vn 0.747695 0.057288 -0.661566
+vn -0.667370 -0.099475 -0.738053
+vn -0.667370 -0.099475 -0.738053
+vn -0.667370 -0.099475 -0.738053
+vn -0.667370 -0.099475 -0.738053
+vn 0.140665 -0.858677 -0.492835
+vn 0.140665 -0.858677 -0.492835
+vn 0.140665 -0.858678 -0.492835
+vn 0.140665 -0.858678 -0.492835
+vn 0.500166 0.405722 -0.764999
+vn 0.500166 0.405722 -0.764999
+vn 0.500166 0.405722 -0.764999
+vn 0.500166 0.405722 -0.764999
+vn -0.338883 0.428046 -0.837815
+vn -0.338883 0.428046 -0.837815
+vn -0.338883 0.428046 -0.837815
+vn -0.338883 0.428046 -0.837815
+vn 0.533014 -0.543605 -0.648374
+vn 0.533014 -0.543605 -0.648374
+vn 0.533014 -0.543605 -0.648374
+vn 0.533014 -0.543605 -0.648374
+vn -0.237694 -0.725437 -0.645944
+vn -0.237694 -0.725437 -0.645944
+vn -0.237694 -0.725437 -0.645944
+vn -0.237694 -0.725437 -0.645944
+vn 0.101771 -0.003555 -0.994802
+vn 0.101771 -0.003555 -0.994802
+vn 0.101771 -0.003555 -0.994802
+vn 0.098406 -0.003111 -0.995142
+vn 0.098406 -0.003111 -0.995142
+vn 0.098406 -0.003111 -0.995142
+vn 0.099458 -0.007442 -0.995014
+vn 0.099458 -0.007442 -0.995014
+vn 0.099458 -0.007442 -0.995014
+vn 0.099594 -0.004696 -0.995017
+vn 0.099594 -0.004696 -0.995017
+vn 0.099594 -0.004696 -0.995017
+vn 0.094221 0.003041 -0.995547
+vn 0.094221 0.003041 -0.995547
+vn 0.094221 0.003041 -0.995547
+vn 0.100654 -0.004975 -0.994909
+vn 0.100654 -0.004975 -0.994909
+vn 0.100654 -0.004975 -0.994909
+vn 0.094292 -0.011324 -0.995480
+vn 0.094292 -0.011324 -0.995480
+vn 0.094292 -0.011324 -0.995480
+vn 0.094859 -0.001236 -0.995490
+vn 0.094859 -0.001236 -0.995490
+vn 0.094859 -0.001236 -0.995490
+vn -0.999787 0.020623 -0.000041
+vn -0.999787 0.020623 -0.000041
+vn -0.999787 0.020623 -0.000041
+vn -0.999787 0.020623 -0.000041
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn -0.153536 0.988143 -0.000120
+vn -0.153536 0.988143 -0.000120
+vn -0.153535 0.988143 -0.000120
+vn -0.153535 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153538 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153538 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153536 0.988143 -0.000120
+vn -0.153537 0.988143 -0.000120
+vn -0.153536 0.988143 -0.000120
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.180703 -0.028198 -0.983133
+vn -0.912480 -0.141828 -0.383752
+vn -0.912480 -0.141828 -0.383752
+vn -0.912480 -0.141828 -0.383752
+vn -0.912480 -0.141828 -0.383752
+vn 0.153538 -0.988143 0.000120
+vn 0.153538 -0.988143 0.000120
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.153538 -0.988143 0.000122
+vn 0.153539 -0.988143 0.000122
+vn 0.153538 -0.988143 0.000122
+vn 0.153537 -0.988143 0.000122
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153539 -0.988143 0.000121
+vn 0.153538 -0.988143 0.000122
+vn 0.153537 -0.988143 0.000122
+vn 0.153536 -0.988143 0.000121
+vn 0.153536 -0.988143 0.000121
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.341227 0.053136 0.938478
+vn 0.968453 0.150502 0.198617
+vn 0.968453 0.150502 0.198617
+vn 0.968453 0.150502 0.198617
+vn 0.968453 0.150502 0.198617
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn 0.000038 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.946393 -0.323019 0.000000
+vn -0.706928 0.014501 -0.707137
+vn -0.706928 0.014501 -0.707137
+vn -0.706928 0.014501 -0.707137
+vn -0.706928 0.014501 -0.707137
+vn -0.967981 0.248438 -0.035945
+vn -0.967981 0.248438 -0.035945
+vn -0.967981 0.248438 -0.035945
+vn -0.967981 0.248438 -0.035945
+vn 0.046864 -0.236359 -0.970535
+vn 0.046864 -0.236359 -0.970535
+vn 0.046864 -0.236359 -0.970535
+vn 0.046864 -0.236359 -0.970535
+vn -0.090712 -0.014218 -0.995776
+vn -0.090712 -0.014218 -0.995776
+vn -0.090712 -0.014218 -0.995776
+vn -0.090711 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn -0.090711 -0.014218 -0.995776
+vn -0.090712 -0.014218 -0.995776
+vn -0.090711 -0.014218 -0.995776
+vn -0.090710 -0.014218 -0.995776
+vn 0.609683 0.750957 -0.253673
+vn 0.614482 0.788923 0.003661
+vn 0.614402 0.764031 -0.196893
+vn 0.614482 0.788923 0.003661
+vn 0.309041 0.284365 -0.907541
+vn 0.309041 0.284365 -0.907541
+vn 0.309041 0.284365 -0.907541
+vn 0.609683 0.750957 -0.253673
+vn 0.614402 0.764031 -0.196893
+vn -0.236338 0.678783 -0.695268
+vn -0.236338 0.678783 -0.695268
+vn -0.236338 0.678783 -0.695268
+vn -0.236338 0.678783 -0.695268
+vn -0.019214 -0.718660 -0.695096
+vn -0.019214 -0.718660 -0.695096
+vn -0.019214 -0.718660 -0.695096
+vn -0.019214 -0.718660 -0.695096
+vn -0.621651 -0.096687 -0.777304
+vn -0.621651 -0.096687 -0.777304
+vn -0.621651 -0.096687 -0.777304
+vn -0.621651 -0.096687 -0.777304
+vn -0.536650 -0.799009 -0.271278
+vn -0.536650 -0.799009 -0.271278
+vn -0.536650 -0.799009 -0.271278
+vn -0.536650 -0.799009 -0.271278
+vn -0.753781 0.598439 -0.271451
+vn -0.753781 0.598439 -0.271451
+vn -0.753781 0.598439 -0.271451
+vn -0.753781 0.598439 -0.271451
+vn 0.132718 0.736296 0.663517
+vn 0.132718 0.736296 0.663517
+vn 0.132718 0.736296 0.663517
+vn 0.132718 0.736296 0.663517
+vn 0.749953 0.116608 0.651133
+vn 0.749953 0.116608 0.651133
+vn 0.749953 0.116608 0.651133
+vn 0.749953 0.116608 0.651133
+vn 0.576232 0.805144 0.140356
+vn 0.576232 0.805144 0.140356
+vn 0.576232 0.805144 0.140356
+vn 0.576232 0.805144 0.140356
+vn 0.349852 -0.661152 0.663688
+vn 0.349852 -0.661152 0.663689
+vn 0.349852 -0.661152 0.663689
+vn 0.349852 -0.661152 0.663688
+vn 0.793366 -0.592302 0.140530
+vn 0.793366 -0.592302 0.140530
+vn 0.793366 -0.592302 0.140530
+vn 0.793366 -0.592302 0.140530
+vn 0.108594 -0.698806 -0.707020
+vn 0.108594 -0.698806 -0.707020
+vn 0.108594 -0.698806 -0.707020
+vn 0.108594 -0.698806 -0.707020
+vn -0.548480 -0.085325 -0.831799
+vn -0.548480 -0.085325 -0.831799
+vn -0.548480 -0.085325 -0.831799
+vn -0.548480 -0.085325 -0.831799
+vn -0.108540 0.698636 -0.707197
+vn -0.108540 0.698636 -0.707197
+vn -0.108540 0.698636 -0.707196
+vn -0.108540 0.698636 -0.707197
+vn 0.764990 0.118787 -0.632993
+vn 0.764990 0.118787 -0.632993
+vn 0.764990 0.118787 -0.632993
+vn 0.764990 0.118787 -0.632993
+vn 0.173277 0.027045 0.984502
+vn 0.173277 0.027045 0.984502
+vn 0.173278 0.027045 0.984502
+vn 0.173281 0.027045 0.984501
+vn 0.173285 0.027046 0.984500
+vn 0.173278 0.027045 0.984502
+vn 0.173281 0.027045 0.984501
+vn 0.108540 -0.698636 0.707196
+vn 0.108540 -0.698636 0.707196
+vn 0.108540 -0.698636 0.707196
+vn 0.108540 -0.698636 0.707196
+vn 0.173281 0.027045 0.984501
+vn 0.173285 0.027046 0.984500
+vn 0.173285 0.027046 0.984500
+vn 0.173285 0.027046 0.984500
+vn -0.517447 -0.855715 0.000080
+vn -0.517447 -0.855715 0.000080
+vn -0.517447 -0.855715 0.000080
+vn -0.517447 -0.855715 0.000080
+vn -0.669223 -0.228324 0.707113
+vn -0.669223 -0.228324 0.707113
+vn -0.669223 -0.228324 0.707113
+vn -0.669223 -0.228324 0.707113
+vn -0.988143 -0.153539 -0.000020
+vn -0.988143 -0.153539 -0.000020
+vn -0.988143 -0.153539 -0.000020
+vn -0.988143 -0.153539 -0.000020
+vn -0.706985 0.014664 0.707076
+vn -0.706985 0.014664 0.707076
+vn -0.706985 0.014664 0.707076
+vn -0.706985 0.014664 0.707076
+vn -0.040938 0.326049 0.944466
+vn -0.040938 0.326049 0.944466
+vn -0.040938 0.326049 0.944466
+vn -0.040938 0.326049 0.944466
+vn -0.669174 -0.228491 -0.707105
+vn -0.669174 -0.228491 -0.707105
+vn -0.669174 -0.228491 -0.707105
+vn -0.669174 -0.228491 -0.707105
+vn 0.108596 -0.698808 -0.707017
+vn 0.108596 -0.698808 -0.707018
+vn 0.108596 -0.698808 -0.707017
+vn 0.108596 -0.698808 -0.707017
+vn -0.651104 0.188524 -0.735202
+vn -0.651104 0.188524 -0.735202
+vn -0.651104 0.188524 -0.735202
+vn -0.651104 0.188524 -0.735202
+vn -0.321674 -0.789987 -0.521964
+vn -0.321674 -0.789987 -0.521964
+vn -0.321674 -0.789987 -0.521964
+vn -0.321674 -0.789987 -0.521964
+vn -0.546201 0.655013 -0.522133
+vn -0.546201 0.655013 -0.522133
+vn -0.546201 0.655013 -0.522133
+vn -0.546201 0.655013 -0.522133
+vn 0.372465 0.839300 0.396038
+vn 0.372465 0.839300 0.396038
+vn 0.372465 0.839300 0.396038
+vn 0.372465 0.839300 0.396038
+vn 0.609568 -0.686612 0.396221
+vn 0.609568 -0.686612 0.396221
+vn 0.609568 -0.686612 0.396221
+vn 0.609568 -0.686612 0.396221
+vn -0.377053 -0.608490 -0.698262
+vn -0.377053 -0.608490 -0.698262
+vn -0.377053 -0.608490 -0.698262
+vn -0.543889 0.465224 -0.698392
+vn -0.543889 0.465224 -0.698392
+vn -0.543889 0.465224 -0.698392
+vn 0.499406 0.712415 -0.493010
+vn 0.499406 0.712414 -0.493010
+vn 0.499406 0.712415 -0.493010
+vn 0.692041 -0.527422 -0.492853
+vn 0.692042 -0.527422 -0.492853
+vn 0.692042 -0.527422 -0.492853
+vn 0.243844 -0.684075 0.687446
+vn 0.243844 -0.684075 0.687446
+vn 0.243844 -0.684075 0.687446
+vn 0.243844 -0.684075 0.687446
+vn -0.431370 -0.713272 0.552416
+vn -0.431370 -0.713272 0.552416
+vn -0.431370 -0.713272 0.552416
+vn -0.692434 -0.107504 0.713427
+vn -0.692434 -0.107504 0.713427
+vn -0.692434 -0.107504 0.713427
+vn -0.692434 -0.107504 0.713427
+vn -0.712133 0.324217 0.622696
+vn -0.712133 0.324217 0.622696
+vn -0.712133 0.324217 0.622696
+vn -0.712133 0.324217 0.622696
+vn -0.692379 -0.107672 -0.713455
+vn -0.692379 -0.107672 -0.713455
+vn -0.692379 -0.107672 -0.713455
+vn -0.692379 -0.107672 -0.713455
+vn -0.431327 -0.713409 -0.552273
+vn -0.431327 -0.713409 -0.552273
+vn -0.431327 -0.713409 -0.552273
+vn 0.047452 -0.709678 -0.702926
+vn 0.047452 -0.709678 -0.702926
+vn 0.047452 -0.709678 -0.702926
+vn 0.047452 -0.709678 -0.702926
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn 0.297885 0.640673 0.707674
+vn -0.449003 -0.893530 0.000086
+vn -0.449003 -0.893530 0.000086
+vn -0.449003 -0.893530 0.000086
+vn -0.449003 -0.893530 0.000086
+vn 0.748789 -0.662809 0.000107
+vn 0.748789 -0.662809 0.000107
+vn 0.748789 -0.662808 0.000107
+vn 0.748789 -0.662809 0.000107
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000116 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000118 1.000000
+vn -0.000039 0.000118 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000118 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000118 1.000000
+vn 0.978706 -0.205267 0.000063
+vn 0.978706 -0.205267 0.000063
+vn 0.978706 -0.205267 0.000063
+vn 0.978706 -0.205267 0.000063
+vn -0.993698 0.112092 -0.000052
+vn -0.993698 0.112092 -0.000052
+vn -0.993698 0.112092 -0.000052
+vn -0.993698 0.112092 -0.000052
+vn -0.682972 0.730445 -0.000113
+vn -0.682972 0.730445 -0.000113
+vn -0.682972 0.730445 -0.000113
+vn -0.682972 0.730445 -0.000113
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000118 -1.000000
+vn 0.000039 -0.000118 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.000039 -0.000116 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000040 -0.000116 -1.000000
+vn 0.449003 0.893530 -0.000089
+vn 0.449003 0.893530 -0.000089
+vn 0.449003 0.893530 -0.000089
+vn 0.449003 0.893530 -0.000089
+vn -0.317519 -0.631735 0.707173
+vn -0.317519 -0.631735 0.707173
+vn -0.317519 -0.631735 0.707173
+vn -0.317519 -0.631735 0.707173
+vn 0.189141 -0.981950 0.000123
+vn 0.189141 -0.981950 0.000123
+vn 0.189141 -0.981950 0.000123
+vn 0.189141 -0.981950 0.000123
+vn 0.529445 -0.468594 0.707183
+vn 0.529445 -0.468594 0.707183
+vn 0.529445 -0.468594 0.707183
+vn 0.529445 -0.468594 0.707183
+vn 0.893532 -0.449000 0.000088
+vn 0.893532 -0.449000 0.000088
+vn 0.893532 -0.449000 0.000088
+vn 0.893532 -0.449000 0.000088
+vn 0.692021 -0.145063 0.707151
+vn 0.692021 -0.145063 0.707151
+vn 0.692021 -0.145063 0.707151
+vn 0.692021 -0.145063 0.707151
+vn -0.879298 -0.476272 0.000021
+vn -0.879298 -0.476272 0.000021
+vn -0.879298 -0.476272 0.000021
+vn -0.879298 -0.476272 0.000021
+vn -0.702678 0.079344 0.707070
+vn -0.702678 0.079344 0.707070
+vn -0.702678 0.079344 0.707070
+vn -0.702678 0.079344 0.707070
+vn -0.893532 0.448999 -0.000088
+vn -0.893532 0.448999 -0.000088
+vn -0.893532 0.448999 -0.000088
+vn -0.893532 0.448999 -0.000088
+vn -0.482956 0.516579 0.707036
+vn -0.482956 0.516579 0.707036
+vn -0.482956 0.516579 0.707036
+vn -0.482956 0.516579 0.707036
+vn -0.702625 0.079178 -0.707141
+vn -0.702625 0.079178 -0.707141
+vn -0.702625 0.079178 -0.707141
+vn -0.702625 0.079178 -0.707141
+vn -0.317467 -0.631907 -0.707042
+vn -0.317467 -0.631907 -0.707042
+vn -0.317467 -0.631907 -0.707042
+vn -0.317467 -0.631907 -0.707042
+vn -0.482902 0.516416 -0.707192
+vn -0.482902 0.516416 -0.707192
+vn -0.482902 0.516416 -0.707192
+vn -0.482902 0.516416 -0.707192
+vn 0.529501 -0.468758 -0.707032
+vn 0.529501 -0.468758 -0.707032
+vn 0.529501 -0.468758 -0.707032
+vn 0.529501 -0.468758 -0.707032
+vn 0.692081 -0.145227 -0.707060
+vn 0.692081 -0.145227 -0.707059
+vn 0.692081 -0.145227 -0.707060
+vn 0.692081 -0.145227 -0.707059
+vn 0.317462 0.631897 0.707053
+vn 0.317462 0.631897 0.707053
+vn 0.317462 0.631897 0.707053
+vn 0.317462 0.631897 0.707053
+vn 0.900791 0.434253 -0.000015
+vn 0.900791 0.434253 -0.000015
+vn 0.900791 0.434253 -0.000015
+vn 0.900791 0.434253 -0.000015
+vn 0.317522 0.631740 -0.707167
+vn 0.317522 0.631740 -0.707167
+vn 0.317522 0.631740 -0.707167
+vn 0.317522 0.631740 -0.707167
+vn -0.142596 0.989781 -0.000123
+vn -0.142596 0.989781 -0.000123
+vn -0.142596 0.989781 -0.000123
+vn -0.142596 0.989781 -0.000123
+vn 0.158428 -0.822506 0.546245
+vn 0.158428 -0.822506 0.546245
+vn 0.158428 -0.822506 0.546245
+vn 0.618263 -0.310605 0.721994
+vn 0.618263 -0.310605 0.721994
+vn 0.618263 -0.310605 0.721994
+vn 0.618263 -0.310605 0.721994
+vn -0.738229 -0.399786 0.543313
+vn -0.738229 -0.399786 0.543313
+vn -0.738229 -0.399786 0.543313
+vn -0.604496 0.303834 0.736390
+vn -0.604496 0.303834 0.736390
+vn -0.604496 0.303834 0.736390
+vn -0.604496 0.303834 0.736390
+vn -0.738190 -0.399916 -0.543270
+vn -0.738190 -0.399916 -0.543270
+vn -0.738190 -0.399916 -0.543270
+vn -0.604435 0.303664 -0.736510
+vn -0.604435 0.303664 -0.736510
+vn -0.604435 0.303664 -0.736510
+vn -0.604435 0.303664 -0.736510
+vn 0.158456 -0.822635 -0.546044
+vn 0.158456 -0.822635 -0.546043
+vn 0.158456 -0.822635 -0.546043
+vn 0.618323 -0.310783 -0.721866
+vn 0.618323 -0.310783 -0.721866
+vn 0.618323 -0.310783 -0.721866
+vn 0.618323 -0.310783 -0.721866
+vn 0.754563 0.363834 0.546131
+vn 0.754563 0.363834 0.546131
+vn 0.754563 0.363834 0.546131
+vn 0.754606 0.363706 -0.546157
+vn 0.754606 0.363706 -0.546158
+vn 0.754606 0.363706 -0.546158
+vn -0.119693 0.830900 -0.543396
+vn -0.119693 0.830900 -0.543396
+vn -0.119693 0.830900 -0.543396
+vn -0.119736 0.831017 0.543208
+vn -0.119736 0.831017 0.543208
+vn -0.119736 0.831017 0.543208
+vn 0.072886 0.997340 -0.000113
+vn -0.314328 0.949314 -0.000123
+vn 0.072886 0.997340 -0.000113
+vn -0.314328 0.949314 -0.000123
+vn -0.314328 0.949314 -0.000123
+vn -0.653688 0.756764 -0.000114
+vn -0.314328 0.949314 -0.000123
+vn -0.653688 0.756764 -0.000114
+vn -0.653688 0.756764 -0.000114
+vn -0.893530 0.449003 -0.000087
+vn -0.653688 0.756764 -0.000114
+vn -0.893530 0.449004 -0.000087
+vn -0.893530 0.449003 -0.000087
+vn -0.997340 0.072887 -0.000047
+vn -0.893530 0.449004 -0.000087
+vn -0.997340 0.072887 -0.000047
+vn -0.997340 0.072887 -0.000047
+vn -0.949315 -0.314328 -0.000001
+vn -0.997340 0.072887 -0.000047
+vn -0.949315 -0.314328 -0.000001
+vn -0.949315 -0.314328 -0.000001
+vn -0.756764 -0.653688 0.000046
+vn -0.949315 -0.314328 -0.000001
+vn -0.756764 -0.653688 0.000046
+vn -0.756764 -0.653688 0.000046
+vn -0.449005 -0.893529 0.000086
+vn -0.756764 -0.653688 0.000046
+vn -0.449005 -0.893529 0.000086
+vn -0.449005 -0.893529 0.000086
+vn -0.072886 -0.997340 0.000113
+vn -0.449005 -0.893529 0.000086
+vn -0.072885 -0.997340 0.000113
+vn -0.072886 -0.997340 0.000113
+vn 0.314328 -0.949314 0.000122
+vn -0.072885 -0.997340 0.000113
+vn 0.314328 -0.949314 0.000122
+vn 0.314328 -0.949314 0.000122
+vn 0.653688 -0.756764 0.000112
+vn 0.314328 -0.949314 0.000122
+vn 0.653688 -0.756764 0.000112
+vn 0.653688 -0.756764 0.000112
+vn 0.893530 -0.449003 0.000086
+vn 0.653688 -0.756764 0.000112
+vn 0.893530 -0.449003 0.000086
+vn 0.893530 -0.449003 0.000086
+vn 0.997340 -0.072886 0.000047
+vn 0.893530 -0.449003 0.000086
+vn 0.997340 -0.072886 0.000047
+vn 0.997340 -0.072886 0.000047
+vn 0.949315 0.314327 0.000000
+vn 0.997340 -0.072886 0.000047
+vn 0.949315 0.314327 0.000000
+vn 0.949315 0.314327 0.000000
+vn 0.756763 0.653689 -0.000047
+vn 0.949315 0.314327 0.000000
+vn 0.756764 0.653689 -0.000047
+vn 0.756763 0.653689 -0.000047
+vn 0.449005 0.893529 -0.000086
+vn 0.756764 0.653689 -0.000047
+vn 0.449005 0.893529 -0.000086
+vn 0.449005 0.893529 -0.000086
+vn 0.072886 0.997340 -0.000113
+vn 0.449005 0.893529 -0.000086
+vn 0.072886 0.997340 -0.000113
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn 0.000040 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn 0.051063 0.698266 -0.714015
+vn 0.051063 0.698266 -0.714015
+vn 0.314426 0.625577 -0.713995
+vn 0.314426 0.625577 -0.713995
+vn 0.051063 0.698266 -0.714015
+vn 0.051063 0.698266 -0.714015
+vn -0.220070 0.664639 -0.714020
+vn -0.220069 0.664639 -0.714020
+vn -0.220070 0.664639 -0.714020
+vn -0.220069 0.664639 -0.714020
+vn -0.457694 0.529813 -0.714013
+vn -0.457692 0.529814 -0.714013
+vn -0.457694 0.529813 -0.714013
+vn -0.457692 0.529814 -0.714013
+vn -0.625637 0.314315 -0.713992
+vn -0.625636 0.314317 -0.713992
+vn -0.625637 0.314315 -0.713992
+vn -0.625636 0.314317 -0.713992
+vn -0.698328 0.050953 -0.713962
+vn -0.698328 0.050954 -0.713962
+vn -0.698328 0.050953 -0.713962
+vn -0.698328 0.050954 -0.713962
+vn -0.664698 -0.220180 -0.713931
+vn -0.664698 -0.220180 -0.713931
+vn -0.664698 -0.220180 -0.713931
+vn -0.664698 -0.220180 -0.713931
+vn -0.529869 -0.457805 -0.713900
+vn -0.529869 -0.457805 -0.713900
+vn -0.529869 -0.457805 -0.713900
+vn -0.529869 -0.457805 -0.713900
+vn -0.314371 -0.625744 -0.713873
+vn -0.314370 -0.625744 -0.713874
+vn -0.314371 -0.625744 -0.713873
+vn -0.314370 -0.625744 -0.713874
+vn -0.051006 -0.698432 -0.713857
+vn -0.051006 -0.698432 -0.713857
+vn -0.051006 -0.698432 -0.713857
+vn -0.051006 -0.698432 -0.713857
+vn 0.220126 -0.664807 -0.713846
+vn 0.220127 -0.664806 -0.713846
+vn 0.220126 -0.664807 -0.713846
+vn 0.220127 -0.664806 -0.713846
+vn 0.457753 -0.529984 -0.713848
+vn 0.457753 -0.529984 -0.713848
+vn 0.457753 -0.529984 -0.713848
+vn 0.457753 -0.529984 -0.713848
+vn 0.625695 -0.314485 -0.713866
+vn 0.625695 -0.314485 -0.713866
+vn 0.625695 -0.314485 -0.713866
+vn 0.625695 -0.314485 -0.713866
+vn 0.698385 -0.051118 -0.713895
+vn 0.698385 -0.051119 -0.713895
+vn 0.698385 -0.051118 -0.713895
+vn 0.698385 -0.051119 -0.713895
+vn 0.664754 0.220014 -0.713930
+vn 0.664755 0.220013 -0.713930
+vn 0.664754 0.220014 -0.713930
+vn 0.664755 0.220013 -0.713930
+vn 0.529926 0.457636 -0.713966
+vn 0.529926 0.457636 -0.713966
+vn 0.529926 0.457636 -0.713966
+vn 0.529926 0.457636 -0.713966
+vn 0.314426 0.625577 -0.713995
+vn 0.314426 0.625577 -0.713995
+vn 0.051009 0.698436 0.713852
+vn 0.051008 0.698436 0.713852
+vn -0.220125 0.664806 0.713848
+vn -0.220124 0.664806 0.713848
+vn 0.051008 0.698436 0.713852
+vn 0.051009 0.698436 0.713852
+vn 0.314372 0.625747 0.713870
+vn 0.314373 0.625747 0.713870
+vn -0.220125 0.664806 0.713848
+vn -0.220124 0.664806 0.713848
+vn -0.457748 0.529978 0.713856
+vn -0.457747 0.529978 0.713856
+vn -0.457748 0.529978 0.713856
+vn -0.457747 0.529978 0.713856
+vn -0.625690 0.314481 0.713872
+vn -0.625690 0.314481 0.713872
+vn -0.625690 0.314481 0.713872
+vn -0.625690 0.314481 0.713872
+vn -0.698381 0.051122 0.713898
+vn -0.698381 0.051120 0.713898
+vn -0.698381 0.051122 0.713898
+vn -0.698381 0.051120 0.713898
+vn -0.664752 -0.220012 0.713933
+vn -0.664751 -0.220012 0.713933
+vn -0.664752 -0.220012 0.713933
+vn -0.664751 -0.220012 0.713933
+vn -0.529926 -0.457639 0.713964
+vn -0.529926 -0.457639 0.713964
+vn -0.529926 -0.457639 0.713964
+vn -0.529926 -0.457639 0.713964
+vn -0.314427 -0.625580 0.713992
+vn -0.314427 -0.625580 0.713992
+vn -0.314427 -0.625580 0.713992
+vn -0.314427 -0.625580 0.713992
+vn -0.051065 -0.698268 0.714013
+vn -0.051065 -0.698268 0.714013
+vn -0.051065 -0.698268 0.714013
+vn -0.051065 -0.698268 0.714013
+vn 0.220066 -0.664638 0.714022
+vn 0.220066 -0.664638 0.714022
+vn 0.220066 -0.664638 0.714022
+vn 0.220066 -0.664638 0.714022
+vn 0.457690 -0.529808 0.714019
+vn 0.457690 -0.529808 0.714019
+vn 0.457690 -0.529808 0.714019
+vn 0.457690 -0.529808 0.714019
+vn 0.625629 -0.314310 0.714001
+vn 0.625629 -0.314311 0.714001
+vn 0.625629 -0.314310 0.714001
+vn 0.625629 -0.314311 0.714001
+vn 0.698319 -0.050952 0.713971
+vn 0.698319 -0.050951 0.713971
+vn 0.698319 -0.050952 0.713971
+vn 0.698319 -0.050951 0.713971
+vn 0.664693 0.220180 0.713936
+vn 0.664693 0.220180 0.713936
+vn 0.664693 0.220180 0.713936
+vn 0.664693 0.220180 0.713936
+vn 0.529868 0.457805 0.713901
+vn 0.529868 0.457804 0.713901
+vn 0.529868 0.457805 0.713901
+vn 0.529868 0.457804 0.713901
+vn 0.314373 0.625747 0.713870
+vn 0.314372 0.625747 0.713870
+vn 0.072885 0.997340 -0.000113
+vn -0.314328 0.949314 -0.000123
+vn 0.072886 0.997340 -0.000113
+vn -0.314328 0.949315 -0.000123
+vn -0.314328 0.949314 -0.000123
+vn -0.653687 0.756765 -0.000114
+vn -0.314328 0.949315 -0.000123
+vn -0.653688 0.756764 -0.000114
+vn -0.653687 0.756765 -0.000114
+vn -0.893530 0.449004 -0.000087
+vn -0.653688 0.756764 -0.000114
+vn -0.893530 0.449003 -0.000087
+vn -0.893530 0.449004 -0.000087
+vn -0.997340 0.072887 -0.000048
+vn -0.893530 0.449003 -0.000087
+vn -0.997340 0.072888 -0.000048
+vn -0.997340 0.072887 -0.000048
+vn -0.949315 -0.314328 -0.000001
+vn -0.997340 0.072888 -0.000048
+vn -0.949315 -0.314327 -0.000001
+vn -0.949315 -0.314328 -0.000001
+vn -0.756764 -0.653688 0.000047
+vn -0.949315 -0.314327 -0.000001
+vn -0.756764 -0.653688 0.000047
+vn -0.756764 -0.653688 0.000047
+vn -0.449005 -0.893529 0.000087
+vn -0.756764 -0.653688 0.000047
+vn -0.449005 -0.893529 0.000087
+vn -0.449005 -0.893529 0.000087
+vn -0.072886 -0.997340 0.000114
+vn -0.449005 -0.893529 0.000087
+vn -0.072886 -0.997340 0.000114
+vn -0.072886 -0.997340 0.000114
+vn 0.314327 -0.949315 0.000123
+vn -0.072886 -0.997340 0.000114
+vn 0.314327 -0.949315 0.000123
+vn 0.314327 -0.949315 0.000123
+vn 0.653688 -0.756764 0.000114
+vn 0.314327 -0.949315 0.000123
+vn 0.653688 -0.756764 0.000114
+vn 0.653688 -0.756764 0.000114
+vn 0.893530 -0.449003 0.000087
+vn 0.653688 -0.756764 0.000114
+vn 0.893530 -0.449003 0.000087
+vn 0.893530 -0.449003 0.000087
+vn 0.997340 -0.072885 0.000048
+vn 0.893530 -0.449003 0.000087
+vn 0.997341 -0.072884 0.000048
+vn 0.997340 -0.072885 0.000048
+vn 0.949315 0.314327 0.000001
+vn 0.997341 -0.072884 0.000048
+vn 0.949315 0.314328 0.000001
+vn 0.949315 0.314327 0.000001
+vn 0.756765 0.653687 -0.000047
+vn 0.949315 0.314328 0.000001
+vn 0.756765 0.653687 -0.000047
+vn 0.756765 0.653687 -0.000047
+vn 0.449004 0.893530 -0.000087
+vn 0.756765 0.653687 -0.000047
+vn 0.449003 0.893530 -0.000087
+vn 0.449004 0.893530 -0.000087
+vn 0.072885 0.997340 -0.000113
+vn 0.449003 0.893530 -0.000087
+vn 0.072886 0.997340 -0.000113
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn 0.000039 -0.000117 -1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn -0.000039 0.000117 1.000000
+vn 0.051006 0.698435 0.713854
+vn 0.051006 0.698435 0.713854
+vn -0.220127 0.664809 0.713844
+vn -0.220126 0.664810 0.713844
+vn 0.051006 0.698435 0.713854
+vn 0.051006 0.698435 0.713854
+vn 0.314369 0.625742 0.713876
+vn 0.314369 0.625742 0.713876
+vn -0.220127 0.664809 0.713844
+vn -0.220126 0.664810 0.713844
+vn -0.457751 0.529983 0.713850
+vn -0.457750 0.529984 0.713850
+vn -0.457751 0.529983 0.713850
+vn -0.457750 0.529984 0.713850
+vn -0.625689 0.314484 0.713872
+vn -0.625689 0.314484 0.713872
+vn -0.625689 0.314484 0.713872
+vn -0.625689 0.314484 0.713872
+vn -0.698376 0.051120 0.713903
+vn -0.698376 0.051119 0.713903
+vn -0.698376 0.051120 0.713903
+vn -0.698376 0.051119 0.713903
+vn -0.664746 -0.220013 0.713938
+vn -0.664746 -0.220012 0.713938
+vn -0.664746 -0.220013 0.713938
+vn -0.664746 -0.220012 0.713938
+vn -0.529921 -0.457636 0.713970
+vn -0.529922 -0.457635 0.713970
+vn -0.529921 -0.457636 0.713970
+vn -0.529922 -0.457635 0.713970
+vn -0.314425 -0.625575 0.713998
+vn -0.314426 -0.625575 0.713998
+vn -0.314425 -0.625575 0.713998
+vn -0.314426 -0.625575 0.713998
+vn -0.051063 -0.698268 0.714013
+vn -0.051064 -0.698268 0.714013
+vn -0.051063 -0.698268 0.714013
+vn -0.051064 -0.698268 0.714013
+vn 0.220069 -0.664642 0.714018
+vn 0.220070 -0.664641 0.714018
+vn 0.220069 -0.664642 0.714018
+vn 0.220070 -0.664641 0.714018
+vn 0.457692 -0.529811 0.714016
+vn 0.457693 -0.529811 0.714015
+vn 0.457692 -0.529811 0.714016
+vn 0.457693 -0.529811 0.714015
+vn 0.625631 -0.314313 0.713998
+vn 0.625632 -0.314312 0.713998
+vn 0.625631 -0.314313 0.713998
+vn 0.625632 -0.314312 0.713998
+vn 0.698325 -0.050952 0.713965
+vn 0.698325 -0.050952 0.713965
+vn 0.698325 -0.050952 0.713965
+vn 0.698325 -0.050952 0.713965
+vn 0.664698 0.220180 0.713931
+vn 0.664697 0.220181 0.713931
+vn 0.664698 0.220180 0.713931
+vn 0.664697 0.220181 0.713931
+vn 0.529869 0.457802 0.713903
+vn 0.529868 0.457802 0.713903
+vn 0.529869 0.457802 0.713903
+vn 0.529868 0.457802 0.713903
+vn 0.314369 0.625742 0.713876
+vn 0.314369 0.625742 0.713876
+vn 0.001457 -0.000431 -0.999999
+vn 0.001458 -0.000434 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001458 -0.000434 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001456 -0.000433 -0.999999
+vn 0.001456 -0.000433 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001457 -0.000431 -0.999999
+vn 0.001456 -0.000431 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn -0.348954 0.937139 -0.000915
+vn -0.348954 0.937139 -0.000914
+vn -0.348954 0.937139 -0.000915
+vn -0.348954 0.937139 -0.000914
+vn -0.348956 0.937139 -0.000912
+vn -0.348956 0.937139 -0.000912
+vn -0.348954 0.937139 -0.000912
+vn -0.348955 0.937139 -0.000912
+vn -0.348954 0.937139 -0.000912
+vn -0.348955 0.937139 -0.000912
+vn -0.348954 0.937139 -0.000914
+vn -0.348954 0.937139 -0.000914
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn 0.324735 0.120004 -0.938161
+vn -0.983540 -0.180684 -0.001357
+vn -0.983540 -0.180684 -0.001357
+vn -0.983540 -0.180684 -0.001357
+vn -0.983540 -0.180684 -0.001357
+vn 0.348956 -0.937139 0.000914
+vn 0.348955 -0.937139 0.000913
+vn 0.348952 -0.937140 0.000912
+vn 0.348952 -0.937140 0.000912
+vn 0.348955 -0.937139 0.000914
+vn 0.348957 -0.937138 0.000917
+vn 0.348954 -0.937139 0.000913
+vn 0.348957 -0.937138 0.000917
+vn 0.348955 -0.937139 0.000916
+vn 0.348954 -0.937140 0.000916
+vn 0.348955 -0.937139 0.000916
+vn 0.348954 -0.937140 0.000916
+vn 0.348954 -0.937139 0.000913
+vn 0.348952 -0.937140 0.000912
+vn 0.348955 -0.937139 0.000914
+vn 0.348952 -0.937140 0.000912
+vn 0.348955 -0.937139 0.000916
+vn 0.348955 -0.937139 0.000913
+vn 0.348955 -0.937139 0.000916
+vn 0.348956 -0.937139 0.000914
+vn -0.865819 -0.322024 0.382959
+vn -0.865819 -0.322024 0.382959
+vn -0.865819 -0.322024 0.382959
+vn -0.865819 -0.322024 0.382959
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn -0.172673 -0.063337 0.982941
+vn 0.918726 0.341905 -0.197592
+vn 0.918726 0.341905 -0.197592
+vn 0.918726 0.341905 -0.197592
+vn 0.918726 0.341905 -0.197592
+vn -0.001459 0.000433 0.999999
+vn -0.001459 0.000433 0.999999
+vn -0.001459 0.000433 0.999999
+vn -0.001459 0.000433 0.999999
+vn -0.862185 -0.506592 -0.001037
+vn -0.862185 -0.506592 -0.001037
+vn -0.862185 -0.506592 -0.001037
+vn -0.862185 -0.506592 -0.001037
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000432 0.999999
+vn -0.001457 0.000432 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn 0.165653 0.060722 -0.984313
+vn 0.165653 0.060722 -0.984313
+vn 0.165652 0.060724 -0.984313
+vn 0.165657 0.060725 -0.984312
+vn 0.165662 0.060726 -0.984311
+vn 0.165661 0.060727 -0.984311
+vn 0.165663 0.060726 -0.984311
+vn 0.165657 0.060725 -0.984312
+vn 0.165652 0.060724 -0.984313
+vn 0.165657 0.060725 -0.984312
+vn 0.165661 0.060727 -0.984311
+vn -0.167312 0.477519 -0.862544
+vn -0.167312 0.477518 -0.862545
+vn -0.167312 0.477518 -0.862545
+vn -0.167312 0.477518 -0.862545
+vn 0.443631 0.896202 -0.003600
+vn 0.443631 0.896202 -0.003600
+vn 0.443631 0.896202 -0.003600
+vn 0.443631 0.896202 -0.003600
+vn -0.017125 0.747512 -0.664028
+vn -0.017125 0.747512 -0.664028
+vn -0.017125 0.747512 -0.664028
+vn -0.017125 0.747512 -0.664028
+vn -0.998146 0.049145 0.035899
+vn -0.998146 0.049145 0.035899
+vn -0.998146 0.049145 0.035899
+vn -0.998146 0.049145 0.035899
+vn -0.694438 -0.128069 -0.708064
+vn -0.694438 -0.128069 -0.708064
+vn -0.694438 -0.128069 -0.708064
+vn -0.694438 -0.128069 -0.708064
+vn 0.124643 -0.707446 0.695690
+vn 0.124643 -0.707446 0.695690
+vn 0.124643 -0.707446 0.695690
+vn 0.124643 -0.707446 0.695690
+vn -0.365483 -0.890363 0.271435
+vn -0.365483 -0.890363 0.271435
+vn -0.365483 -0.890363 0.271435
+vn -0.365483 -0.890363 0.271435
+vn -0.590539 -0.219136 0.776687
+vn -0.590539 -0.219136 0.776687
+vn -0.590539 -0.219136 0.776687
+vn -0.590539 -0.219136 0.776687
+vn -0.368850 0.617867 0.694399
+vn -0.368850 0.617867 0.694399
+vn -0.368850 0.617867 0.694399
+vn -0.368850 0.617867 0.694399
+vn -0.858970 0.434964 0.270143
+vn -0.858970 0.434964 0.270143
+vn -0.858970 0.434964 0.270143
+vn -0.858970 0.434964 0.270143
+vn 0.402887 0.904422 -0.140366
+vn 0.402887 0.904422 -0.140366
+vn 0.402887 0.904422 -0.140366
+vn 0.402887 0.904422 -0.140366
+vn 0.712056 0.264507 -0.650394
+vn 0.712056 0.264507 -0.650394
+vn 0.712056 0.264507 -0.650394
+vn 0.712056 0.264507 -0.650394
+vn 0.476369 -0.577810 -0.662728
+vn 0.476369 -0.577810 -0.662728
+vn 0.476369 -0.577810 -0.662728
+vn 0.476369 -0.577810 -0.662728
+vn 0.896382 -0.420901 -0.139072
+vn 0.896382 -0.420901 -0.139072
+vn 0.896382 -0.420901 -0.139072
+vn 0.896382 -0.420901 -0.139072
+vn 0.245716 -0.662349 0.707755
+vn 0.245716 -0.662349 0.707755
+vn 0.245716 -0.662349 0.707755
+vn 0.245716 -0.662349 0.707755
+vn -0.521274 -0.193291 0.831211
+vn -0.521274 -0.193291 0.831211
+vn -0.521274 -0.193291 0.831211
+vn -0.521274 -0.193291 0.831211
+vn -0.247778 0.662957 0.706466
+vn -0.247778 0.662957 0.706466
+vn -0.247778 0.662957 0.706466
+vn -0.247778 0.662957 0.706466
+vn 0.724616 0.270436 0.633873
+vn 0.724617 0.270436 0.633873
+vn 0.724616 0.270436 0.633873
+vn 0.724616 0.270436 0.633873
+vn 0.247777 -0.662964 -0.706460
+vn 0.247777 -0.662964 -0.706460
+vn 0.247777 -0.662964 -0.706460
+vn 0.247777 -0.662964 -0.706460
+vn -0.334955 -0.942234 -0.000078
+vn -0.334955 -0.942234 -0.000078
+vn -0.334955 -0.942234 -0.000078
+vn -0.334955 -0.942234 -0.000078
+vn -0.608625 -0.358520 -0.707841
+vn -0.608625 -0.358520 -0.707841
+vn -0.608625 -0.358520 -0.707841
+vn -0.608625 -0.358520 -0.707841
+vn -0.937137 -0.348961 -0.001216
+vn -0.937137 -0.348961 -0.001216
+vn -0.937137 -0.348961 -0.001216
+vn -0.937137 -0.348961 -0.001216
+vn 0.245718 -0.662352 0.707752
+vn 0.245718 -0.662352 0.707752
+vn 0.245718 -0.662352 0.707752
+vn 0.245718 -0.662352 0.707752
+vn -0.610685 -0.357908 0.706375
+vn -0.610685 -0.357908 0.706375
+vn -0.610685 -0.357908 0.706375
+vn -0.610685 -0.357908 0.706375
+vn -0.696496 -0.127457 0.706150
+vn -0.696496 -0.127457 0.706150
+vn -0.696496 -0.127457 0.706150
+vn -0.696496 -0.127457 0.706150
+vn -0.087440 -0.031587 0.995669
+vn -0.087440 -0.031587 0.995669
+vn -0.087440 -0.031587 0.995669
+vn -0.087441 -0.031588 0.995669
+vn -0.087441 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087441 -0.031588 0.995669
+vn -0.087442 -0.031588 0.995669
+vn -0.087440 -0.031587 0.995669
+vn -0.000356 0.018404 0.999831
+vn -0.000356 0.018404 0.999831
+vn -0.000356 0.018404 0.999831
+vn -0.000356 0.018404 0.999831
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn 0.057478 0.716856 -0.694848
+vn -0.725993 0.280909 -0.627713
+vn -0.725993 0.280909 -0.627713
+vn -0.725993 0.280909 -0.627713
+vn -0.725993 0.280909 -0.627713
+vn -0.157121 -0.838198 0.522242
+vn -0.157121 -0.838198 0.522242
+vn -0.157121 -0.838198 0.522242
+vn -0.157121 -0.838198 0.522242
+vn -0.667397 0.532206 0.520901
+vn -0.667397 0.532206 0.520901
+vn -0.667397 0.532206 0.520901
+vn -0.667397 0.532206 0.520901
+vn 0.196570 0.896735 -0.396519
+vn 0.196570 0.896735 -0.396519
+vn 0.196570 0.896735 -0.396519
+vn 0.196570 0.896735 -0.396519
+vn 0.735447 -0.550464 -0.395104
+vn 0.735447 -0.550464 -0.395104
+vn 0.735447 -0.550464 -0.395104
+vn 0.735447 -0.550464 -0.395104
+vn -0.248045 -0.671418 0.698335
+vn -0.248045 -0.671418 0.698335
+vn -0.248045 -0.671418 0.698335
+vn -0.627217 0.346872 0.697337
+vn -0.627217 0.346872 0.697337
+vn -0.627217 0.346872 0.697337
+vn 0.345318 0.798554 0.493018
+vn 0.345318 0.798554 0.493018
+vn 0.345318 0.798554 0.493018
+vn 0.783182 -0.377390 0.494168
+vn 0.783182 -0.377390 0.494168
+vn 0.783182 -0.377390 0.494168
+vn 0.377252 -0.621532 -0.686570
+vn 0.377252 -0.621532 -0.686570
+vn 0.377252 -0.621532 -0.686570
+vn 0.377252 -0.621532 -0.686570
+vn -0.278412 -0.785697 -0.552420
+vn -0.278412 -0.785697 -0.552420
+vn -0.278412 -0.785697 -0.552420
+vn -0.655633 -0.244830 -0.714286
+vn -0.655633 -0.244830 -0.714286
+vn -0.655633 -0.244830 -0.714285
+vn -0.655633 -0.244830 -0.714285
+vn -0.280029 -0.785226 0.552272
+vn -0.280029 -0.785226 0.552272
+vn -0.280029 -0.785226 0.552272
+vn -0.657700 -0.244208 0.712596
+vn -0.657700 -0.244208 0.712596
+vn -0.657700 -0.244208 0.712596
+vn -0.657700 -0.244208 0.712596
+vn 0.188061 -0.685272 0.703588
+vn 0.188061 -0.685272 0.703588
+vn 0.188061 -0.685272 0.703588
+vn 0.188061 -0.685272 0.703588
+vn 0.111008 0.439643 0.891287
+vn 0.111008 0.439642 0.891287
+vn 0.111008 0.439642 0.891287
+vn 0.111008 0.439642 0.891287
+vn 0.111008 0.439642 0.891287
+vn -0.662900 0.189766 0.724260
+vn -0.662900 0.189766 0.724260
+vn -0.662900 0.189766 0.724260
+vn -0.662900 0.189766 0.724260
+vn -0.171672 0.575731 -0.799414
+vn -0.171672 0.575731 -0.799414
+vn -0.171672 0.575731 -0.799414
+vn -0.171672 0.575731 -0.799414
+vn 0.938300 0.345145 0.021642
+vn 0.938300 0.345145 0.021642
+vn 0.938300 0.345145 0.021642
+vn 0.938300 0.345145 0.021642
+vn -0.948519 -0.284260 0.139668
+vn -0.948519 -0.284260 0.139668
+vn -0.948519 -0.284260 0.139668
+vn -0.948519 -0.284260 0.139668
+vn 0.295909 -0.726690 0.619968
+vn 0.295909 -0.726690 0.619968
+vn 0.295909 -0.726690 0.619968
+vn 0.295909 -0.726690 0.619968
+vn 0.491193 0.652189 -0.577390
+vn 0.491192 0.652190 -0.577390
+vn 0.491192 0.652190 -0.577390
+vn 0.491192 0.652190 -0.577390
+vn -0.688836 0.268436 -0.673385
+vn -0.688836 0.268436 -0.673385
+vn -0.688836 0.268436 -0.673385
+vn -0.688836 0.268436 -0.673385
+vn 0.682105 -0.399538 0.612456
+vn 0.682105 -0.399538 0.612456
+vn 0.682105 -0.399538 0.612456
+vn 0.682105 -0.399538 0.612456
+vn -0.213115 -0.595624 0.774476
+vn -0.213115 -0.595624 0.774476
+vn -0.213115 -0.595624 0.774476
+vn -0.213115 -0.595624 0.774476
+vn -0.308538 0.923670 -0.227239
+vn -0.308538 0.923670 -0.227239
+vn -0.308538 0.923670 -0.227239
+vn -0.308538 0.923670 -0.227239
+vn 0.925404 0.358297 0.123496
+vn 0.925404 0.358297 0.123496
+vn 0.925404 0.358297 0.123496
+vn 0.925404 0.358297 0.123496
+vn -0.908029 -0.147448 0.392100
+vn -0.908029 -0.147448 0.392100
+vn -0.908029 -0.147448 0.392100
+vn -0.908029 -0.147448 0.392100
+vn 0.345645 -0.917850 0.195141
+vn 0.345645 -0.917850 0.195141
+vn 0.345645 -0.917850 0.195141
+vn 0.345645 -0.917850 0.195141
+vn 0.307920 0.939109 -0.152510
+vn 0.307920 0.939109 -0.152510
+vn 0.307920 0.939109 -0.152510
+vn 0.307920 0.939109 -0.152510
+vn -0.753406 0.656711 -0.033316
+vn -0.753406 0.656711 -0.033316
+vn -0.753406 0.656711 -0.033316
+vn -0.753406 0.656711 -0.033316
+vn 0.672221 -0.712011 0.202877
+vn 0.672221 -0.712011 0.202877
+vn 0.672221 -0.712011 0.202877
+vn 0.672221 -0.712011 0.202877
+vn -0.007147 -0.887568 0.460622
+vn -0.007147 -0.887568 0.460622
+vn -0.007147 -0.887568 0.460622
+vn -0.007147 -0.887568 0.460622
+vn -0.301747 0.953129 0.022210
+vn -0.301747 0.953129 0.022210
+vn -0.301747 0.953129 0.022210
+vn -0.301747 0.953129 0.022210
+vn 0.892685 0.311363 0.325833
+vn 0.892685 0.311363 0.325833
+vn 0.892685 0.311363 0.325833
+vn 0.892685 0.311363 0.325833
+vn -0.837784 -0.239889 0.490481
+vn -0.837784 -0.239889 0.490481
+vn -0.837784 -0.239889 0.490481
+vn -0.837784 -0.239889 0.490481
+vn 0.325225 -0.944768 0.040536
+vn 0.325225 -0.944768 0.040536
+vn 0.325225 -0.944768 0.040536
+vn 0.325225 -0.944768 0.040536
+vn 0.447401 0.867471 0.217546
+vn 0.447401 0.867471 0.217546
+vn 0.447401 0.867471 0.217546
+vn 0.447401 0.867471 0.217546
+vn -0.754532 0.609594 0.243055
+vn -0.754532 0.609594 0.243055
+vn -0.754532 0.609594 0.243055
+vn -0.754532 0.609594 0.243055
+vn 0.752973 -0.629991 0.190113
+vn 0.752973 -0.629991 0.190113
+vn 0.752973 -0.629991 0.190113
+vn 0.752974 -0.629990 0.190113
+vn -0.094105 -0.946902 0.307443
+vn -0.094105 -0.946902 0.307443
+vn -0.094105 -0.946902 0.307443
+vn -0.094105 -0.946902 0.307443
+vn -0.118905 0.658131 0.743455
+vn -0.118905 0.658131 0.743455
+vn -0.118905 0.658131 0.743455
+vn -0.118905 0.658131 0.743455
+vn 0.714384 0.205418 0.668923
+vn 0.714384 0.205418 0.668923
+vn 0.714384 0.205418 0.668923
+vn 0.714384 0.205418 0.668923
+vn -0.641026 -0.232511 0.731453
+vn -0.641026 -0.232511 0.731453
+vn -0.641026 -0.232511 0.731453
+vn -0.641026 -0.232511 0.731453
+vn 0.305415 -0.813581 0.494780
+vn 0.305415 -0.813581 0.494780
+vn 0.305415 -0.813581 0.494780
+vn 0.305415 -0.813581 0.494780
+vn 0.400907 0.496885 0.769662
+vn 0.400907 0.496885 0.769662
+vn 0.400907 0.496885 0.769662
+vn 0.400907 0.496885 0.769662
+vn -0.426214 0.350100 0.834129
+vn -0.426214 0.350100 0.834129
+vn -0.426214 0.350100 0.834129
+vn -0.426214 0.350100 0.834129
+vn 0.624922 -0.426328 0.654001
+vn 0.624922 -0.426328 0.654001
+vn 0.624922 -0.426327 0.654001
+vn 0.624922 -0.426328 0.654001
+vn -0.093491 -0.759259 0.644038
+vn -0.093491 -0.759259 0.644038
+vn -0.093491 -0.759259 0.644038
+vn -0.093491 -0.759259 0.644038
+vn 0.090587 0.015607 0.995766
+vn 0.090587 0.015607 0.995766
+vn 0.090587 0.015607 0.995766
+vn 0.087197 0.015367 0.996073
+vn 0.087197 0.015367 0.996073
+vn 0.087197 0.015367 0.996073
+vn 0.089096 0.011336 0.995959
+vn 0.089096 0.011336 0.995959
+vn 0.089096 0.011336 0.995959
+vn 0.088678 0.014044 0.995961
+vn 0.088678 0.014044 0.995961
+vn 0.088678 0.014044 0.995961
+vn 0.081864 0.020548 0.996432
+vn 0.081864 0.020548 0.996432
+vn 0.081864 0.020548 0.996432
+vn 0.089768 0.013974 0.995865
+vn 0.089768 0.013974 0.995865
+vn 0.089768 0.013974 0.995865
+vn 0.084811 0.006484 0.996376
+vn 0.084811 0.006484 0.996376
+vn 0.084811 0.006484 0.996376
+vn 0.083359 0.016473 0.996383
+vn 0.083359 0.016473 0.996383
+vn 0.083359 0.016473 0.996383
+vn -0.348953 0.937140 -0.000914
+vn -0.348953 0.937140 -0.000914
+vn -0.348953 0.937140 -0.000914
+vn -0.348953 0.937140 -0.000914
+vn 0.809722 0.586813 0.000925
+vn 0.809722 0.586813 0.000925
+vn 0.809722 0.586813 0.000925
+vn 0.809722 0.586813 0.000925
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001458 -0.000435 -0.999999
+vn 0.001458 -0.000435 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.996321 0.085689 0.001415
+vn 0.996321 0.085689 0.001415
+vn 0.996321 0.085689 0.001415
+vn 0.996321 0.085689 0.001415
+vn -0.998045 -0.062486 -0.001428
+vn -0.998045 -0.062486 -0.001428
+vn -0.998045 -0.062486 -0.001428
+vn -0.998045 -0.062486 -0.001428
+vn -0.795851 -0.605492 -0.000898
+vn -0.795851 -0.605492 -0.000898
+vn -0.795851 -0.605492 -0.000898
+vn -0.795851 -0.605492 -0.000898
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn -0.001458 0.000434 0.999999
+vn 0.348954 -0.937139 0.000914
+vn 0.348954 -0.937139 0.000914
+vn 0.348954 -0.937139 0.000914
+vn 0.348954 -0.937139 0.000914
+vn -0.245717 0.662352 -0.707752
+vn -0.245717 0.662352 -0.707752
+vn -0.245717 0.662352 -0.707752
+vn -0.245717 0.662352 -0.707752
+vn 0.289412 0.957205 0.000007
+vn 0.289412 0.957205 0.000007
+vn 0.289412 0.957205 0.000007
+vn 0.289412 0.957205 0.000007
+vn 0.573588 0.414632 -0.706454
+vn 0.573588 0.414632 -0.706454
+vn 0.573588 0.414632 -0.706454
+vn 0.573588 0.414632 -0.706454
+vn 0.937137 0.348959 0.001215
+vn 0.937137 0.348959 0.001215
+vn 0.937137 0.348959 0.001215
+vn 0.937137 0.348959 0.001215
+vn 0.705530 0.060284 -0.706112
+vn 0.705530 0.060284 -0.706112
+vn 0.705530 0.060284 -0.706112
+vn 0.705530 0.060284 -0.706112
+vn -0.838700 0.544592 -0.001459
+vn -0.838700 0.544592 -0.001459
+vn -0.838700 0.544592 -0.001459
+vn -0.838700 0.544592 -0.001459
+vn -0.704693 -0.044492 -0.708116
+vn -0.704693 -0.044492 -0.708116
+vn -0.704693 -0.044492 -0.708116
+vn -0.704693 -0.044492 -0.708116
+vn -0.937137 -0.348959 -0.001215
+vn -0.937137 -0.348959 -0.001215
+vn -0.937137 -0.348959 -0.001215
+vn -0.937137 -0.348959 -0.001215
+vn -0.561722 -0.428454 -0.707740
+vn -0.561721 -0.428454 -0.707740
+vn -0.561722 -0.428455 -0.707740
+vn -0.561721 -0.428454 -0.707740
+vn -0.706751 -0.043878 0.706101
+vn -0.706751 -0.043878 0.706101
+vn -0.706751 -0.043878 0.706101
+vn -0.706751 -0.043878 0.706101
+vn -0.247777 0.662961 0.706462
+vn -0.247777 0.662961 0.706462
+vn -0.247777 0.662961 0.706462
+vn -0.247777 0.662961 0.706462
+vn -0.563787 -0.427844 0.706466
+vn -0.563787 -0.427844 0.706466
+vn -0.563787 -0.427844 0.706466
+vn -0.563787 -0.427844 0.706466
+vn 0.571531 0.415246 0.707759
+vn 0.571531 0.415246 0.707759
+vn 0.571531 0.415246 0.707759
+vn 0.571531 0.415246 0.707759
+vn 0.703473 0.060898 0.708108
+vn 0.703473 0.060898 0.708108
+vn 0.703473 0.060898 0.708108
+vn 0.703473 0.060898 0.708108
+vn 0.247775 -0.662955 -0.706469
+vn 0.247775 -0.662955 -0.706469
+vn 0.247775 -0.662955 -0.706469
+vn 0.247775 -0.662955 -0.706469
+vn 0.844974 -0.534805 0.001463
+vn 0.844974 -0.534805 0.001463
+vn 0.844974 -0.534805 0.001463
+vn 0.844974 -0.534805 0.001463
+vn 0.245718 -0.662354 0.707750
+vn 0.245718 -0.662354 0.707750
+vn 0.245718 -0.662354 0.707750
+vn 0.245718 -0.662354 0.707750
+vn -0.278261 -0.960506 0.000010
+vn -0.278261 -0.960506 0.000010
+vn -0.278261 -0.960506 0.000010
+vn -0.278261 -0.960506 0.000010
+vn 0.243343 0.801966 -0.545559
+vn 0.243343 0.801966 -0.545559
+vn 0.243343 0.801966 -0.545559
+vn 0.648037 0.240602 -0.722605
+vn 0.648037 0.240602 -0.722605
+vn 0.648037 0.240602 -0.722605
+vn 0.648037 0.240602 -0.722605
+vn -0.702622 0.456513 -0.545819
+vn -0.702622 0.456513 -0.545819
+vn -0.702622 0.456513 -0.545819
+vn -0.642736 -0.240037 -0.727511
+vn -0.642736 -0.240037 -0.727511
+vn -0.642736 -0.240037 -0.727511
+vn -0.642736 -0.240037 -0.727511
+vn -0.704198 0.456984 0.543388
+vn -0.704198 0.456984 0.543388
+vn -0.704198 0.456984 0.543388
+vn -0.644853 -0.239412 0.725842
+vn -0.644853 -0.239412 0.725842
+vn -0.644853 -0.239412 0.725842
+vn -0.644853 -0.239412 0.725842
+vn 0.241751 0.802439 0.545571
+vn 0.241751 0.802439 0.545571
+vn 0.241751 0.802439 0.545571
+vn 0.645932 0.241230 0.724279
+vn 0.645932 0.241230 0.724279
+vn 0.645932 0.241230 0.724279
+vn 0.645932 0.241230 0.724279
+vn 0.708933 -0.448439 -0.544349
+vn 0.708933 -0.448439 -0.544349
+vn 0.708933 -0.448439 -0.544349
+vn 0.707358 -0.447967 0.546782
+vn 0.707358 -0.447967 0.546782
+vn 0.707358 -0.447967 0.546782
+vn -0.234170 -0.805338 0.544605
+vn -0.234170 -0.805338 0.544605
+vn -0.234170 -0.805338 0.544605
+vn -0.232582 -0.805804 -0.544597
+vn -0.232582 -0.805804 -0.544597
+vn -0.232582 -0.805804 -0.544597
+vn -0.036235 -0.999343 0.000380
+vn -0.415908 -0.909407 -0.000213
+vn -0.036235 -0.999343 0.000380
+vn -0.415908 -0.909407 -0.000213
+vn -0.415908 -0.909407 -0.000213
+vn -0.732264 -0.681021 -0.000773
+vn -0.415908 -0.909407 -0.000213
+vn -0.732264 -0.681021 -0.000773
+vn -0.732264 -0.681021 -0.000773
+vn -0.937139 -0.348955 -0.001216
+vn -0.732264 -0.681021 -0.000773
+vn -0.937139 -0.348955 -0.001216
+vn -0.937139 -0.348955 -0.001216
+vn -0.999342 0.036237 -0.001472
+vn -0.937139 -0.348955 -0.001216
+vn -0.999342 0.036237 -0.001472
+vn -0.999342 0.036237 -0.001472
+vn -0.909405 0.415908 -0.001505
+vn -0.999342 0.036237 -0.001472
+vn -0.909405 0.415908 -0.001505
+vn -0.909405 0.415908 -0.001505
+vn -0.681021 0.732263 -0.001309
+vn -0.909405 0.415908 -0.001505
+vn -0.681021 0.732263 -0.001309
+vn -0.681021 0.732263 -0.001309
+vn -0.348954 0.937139 -0.000914
+vn -0.681021 0.732263 -0.001309
+vn -0.348954 0.937139 -0.000914
+vn -0.348954 0.937139 -0.000914
+vn 0.036236 0.999343 -0.000380
+vn -0.348954 0.937139 -0.000914
+vn 0.036236 0.999343 -0.000380
+vn 0.036236 0.999343 -0.000380
+vn 0.415909 0.909406 0.000212
+vn 0.036236 0.999343 -0.000380
+vn 0.415909 0.909406 0.000212
+vn 0.415909 0.909406 0.000212
+vn 0.732263 0.681021 0.000773
+vn 0.415909 0.909406 0.000212
+vn 0.732263 0.681021 0.000773
+vn 0.732263 0.681021 0.000773
+vn 0.937139 0.348955 0.001215
+vn 0.732263 0.681021 0.000773
+vn 0.937139 0.348955 0.001215
+vn 0.937139 0.348955 0.001215
+vn 0.999342 -0.036238 0.001472
+vn 0.937139 0.348955 0.001215
+vn 0.999342 -0.036237 0.001472
+vn 0.999342 -0.036238 0.001472
+vn 0.909404 -0.415911 0.001505
+vn 0.999342 -0.036237 0.001472
+vn 0.909404 -0.415911 0.001505
+vn 0.909404 -0.415911 0.001505
+vn 0.681019 -0.732265 0.001310
+vn 0.909404 -0.415911 0.001505
+vn 0.681019 -0.732265 0.001310
+vn 0.681019 -0.732265 0.001310
+vn 0.348954 -0.937140 0.000915
+vn 0.681019 -0.732265 0.001310
+vn 0.348954 -0.937139 0.000915
+vn 0.348954 -0.937140 0.000915
+vn -0.036235 -0.999343 0.000380
+vn 0.348954 -0.937139 0.000915
+vn -0.036235 -0.999343 0.000380
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn -0.026412 -0.699445 0.714198
+vn -0.026412 -0.699445 0.714198
+vn 0.243304 -0.655890 0.714570
+vn 0.243303 -0.655891 0.714570
+vn -0.026412 -0.699445 0.714198
+vn -0.026412 -0.699445 0.714198
+vn -0.292266 -0.636470 0.713784
+vn -0.292266 -0.636470 0.713784
+vn -0.292266 -0.636470 0.713784
+vn -0.292266 -0.636470 0.713784
+vn -0.513782 -0.476551 0.713391
+vn -0.513782 -0.476552 0.713391
+vn -0.513782 -0.476551 0.713391
+vn -0.513782 -0.476552 0.713391
+vn -0.657237 -0.244034 0.713083
+vn -0.657238 -0.244033 0.713083
+vn -0.657237 -0.244034 0.713083
+vn -0.657238 -0.244033 0.713083
+vn -0.700796 0.025682 0.712900
+vn -0.700796 0.025683 0.712900
+vn -0.700796 0.025682 0.712900
+vn -0.700796 0.025683 0.712900
+vn -0.637822 0.291534 0.712875
+vn -0.637822 0.291534 0.712875
+vn -0.637822 0.291534 0.712875
+vn -0.637822 0.291534 0.712875
+vn -0.477900 0.513050 0.713016
+vn -0.477900 0.513050 0.713016
+vn -0.477900 0.513050 0.713016
+vn -0.477900 0.513050 0.713016
+vn -0.245382 0.656506 0.713294
+vn -0.245382 0.656506 0.713294
+vn -0.245382 0.656506 0.713294
+vn -0.245382 0.656506 0.713294
+vn 0.024332 0.700060 0.713669
+vn 0.024332 0.700060 0.713669
+vn 0.024332 0.700060 0.713669
+vn 0.024332 0.700060 0.713669
+vn 0.290185 0.637086 0.714083
+vn 0.290185 0.637086 0.714083
+vn 0.290185 0.637086 0.714083
+vn 0.290185 0.637086 0.714083
+vn 0.511701 0.477171 0.714472
+vn 0.511701 0.477171 0.714472
+vn 0.511701 0.477171 0.714472
+vn 0.511701 0.477171 0.714472
+vn 0.655158 0.244652 0.714782
+vn 0.655158 0.244652 0.714782
+vn 0.655158 0.244652 0.714782
+vn 0.655158 0.244652 0.714782
+vn 0.698714 -0.025065 0.714962
+vn 0.698714 -0.025065 0.714962
+vn 0.698714 -0.025065 0.714962
+vn 0.698714 -0.025065 0.714962
+vn 0.635739 -0.290918 0.714985
+vn 0.635739 -0.290918 0.714985
+vn 0.635739 -0.290918 0.714985
+vn 0.635739 -0.290918 0.714985
+vn 0.475819 -0.512435 0.714847
+vn 0.475820 -0.512434 0.714847
+vn 0.475819 -0.512435 0.714847
+vn 0.475820 -0.512434 0.714847
+vn 0.243303 -0.655891 0.714570
+vn 0.243304 -0.655890 0.714570
+vn -0.024332 -0.700062 -0.713668
+vn -0.024332 -0.700062 -0.713668
+vn -0.290186 -0.637088 -0.714080
+vn -0.290185 -0.637089 -0.714080
+vn -0.024332 -0.700062 -0.713668
+vn -0.024332 -0.700062 -0.713668
+vn 0.245383 -0.656505 -0.713294
+vn 0.245384 -0.656505 -0.713294
+vn -0.290186 -0.637088 -0.714080
+vn -0.290185 -0.637089 -0.714080
+vn -0.511703 -0.477169 -0.714472
+vn -0.511702 -0.477170 -0.714472
+vn -0.511703 -0.477169 -0.714472
+vn -0.511702 -0.477170 -0.714472
+vn -0.655158 -0.244653 -0.714782
+vn -0.655158 -0.244653 -0.714782
+vn -0.655158 -0.244653 -0.714782
+vn -0.655158 -0.244653 -0.714782
+vn -0.698714 0.025062 -0.714962
+vn -0.698714 0.025063 -0.714962
+vn -0.698714 0.025062 -0.714962
+vn -0.698714 0.025063 -0.714962
+vn -0.635740 0.290916 -0.714985
+vn -0.635740 0.290916 -0.714985
+vn -0.635740 0.290916 -0.714985
+vn -0.635740 0.290916 -0.714985
+vn -0.475819 0.512431 -0.714850
+vn -0.475818 0.512432 -0.714850
+vn -0.475819 0.512431 -0.714850
+vn -0.475818 0.512432 -0.714850
+vn -0.243300 0.655889 -0.714573
+vn -0.243301 0.655888 -0.714573
+vn -0.243300 0.655889 -0.714573
+vn -0.243301 0.655888 -0.714573
+vn 0.026414 0.699447 -0.714196
+vn 0.026413 0.699447 -0.714196
+vn 0.026414 0.699447 -0.714196
+vn 0.026413 0.699447 -0.714196
+vn 0.292265 0.636471 -0.713783
+vn 0.292265 0.636471 -0.713783
+vn 0.292265 0.636471 -0.713783
+vn 0.292265 0.636471 -0.713783
+vn 0.513781 0.476551 -0.713392
+vn 0.513781 0.476550 -0.713393
+vn 0.513781 0.476551 -0.713392
+vn 0.513781 0.476550 -0.713393
+vn 0.657236 0.244032 -0.713085
+vn 0.657236 0.244033 -0.713085
+vn 0.657236 0.244032 -0.713085
+vn 0.657236 0.244033 -0.713085
+vn 0.700791 -0.025684 -0.712904
+vn 0.700791 -0.025682 -0.712904
+vn 0.700791 -0.025684 -0.712904
+vn 0.700791 -0.025682 -0.712904
+vn 0.637818 -0.291536 -0.712878
+vn 0.637818 -0.291535 -0.712878
+vn 0.637818 -0.291536 -0.712878
+vn 0.637818 -0.291535 -0.712878
+vn 0.477899 -0.513051 -0.713015
+vn 0.477900 -0.513051 -0.713015
+vn 0.477899 -0.513051 -0.713015
+vn 0.477900 -0.513051 -0.713015
+vn 0.245384 -0.656505 -0.713294
+vn 0.245383 -0.656505 -0.713294
+vn 0.420203 0.907430 0.000220
+vn 0.420203 0.907430 0.000220
+vn 0.420203 0.907430 0.000220
+vn 0.420203 0.907430 0.000220
+vn 0.984768 -0.173867 0.001510
+vn 0.984768 -0.173867 0.001510
+vn 0.984768 -0.173867 0.001510
+vn 0.984768 -0.173867 0.001510
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000432 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.769599 -0.638526 0.001398
+vn 0.769599 -0.638526 0.001398
+vn 0.769599 -0.638526 0.001398
+vn 0.769599 -0.638526 0.001398
+vn -0.705979 0.708232 -0.001335
+vn -0.705979 0.708232 -0.001335
+vn -0.705979 0.708232 -0.001335
+vn -0.705979 0.708232 -0.001335
+vn -0.996773 0.080258 -0.001488
+vn -0.996773 0.080258 -0.001488
+vn -0.996773 0.080258 -0.001488
+vn -0.996773 0.080258 -0.001488
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001458 0.000432 0.999999
+vn -0.420203 -0.907430 -0.000218
+vn -0.420203 -0.907430 -0.000218
+vn -0.420203 -0.907430 -0.000218
+vn -0.420203 -0.907430 -0.000218
+vn 0.298158 0.641343 -0.706952
+vn 0.298158 0.641343 -0.706952
+vn 0.298158 0.641343 -0.706952
+vn 0.298158 0.641343 -0.706952
+vn 0.886444 0.462835 0.001091
+vn 0.886444 0.462835 0.001091
+vn 0.886443 0.462836 0.001091
+vn 0.886443 0.462836 0.001091
+vn 0.697367 -0.123248 -0.706038
+vn 0.697367 -0.123248 -0.706038
+vn 0.697366 -0.123248 -0.706038
+vn 0.697366 -0.123248 -0.706038
+vn 0.907429 -0.420202 0.001504
+vn 0.907429 -0.420202 0.001504
+vn 0.907429 -0.420202 0.001504
+vn 0.907429 -0.420202 0.001504
+vn 0.545217 -0.451810 -0.706121
+vn 0.545217 -0.451810 -0.706121
+vn 0.545217 -0.451810 -0.706121
+vn 0.545217 -0.451810 -0.706121
+vn -0.174169 0.984716 -0.000680
+vn -0.174169 0.984716 -0.000680
+vn -0.174169 0.984716 -0.000680
+vn -0.174169 0.984716 -0.000680
+vn -0.498168 0.500486 -0.708055
+vn -0.498168 0.500486 -0.708055
+vn -0.498168 0.500486 -0.708055
+vn -0.498168 0.500486 -0.708055
+vn -0.907428 0.420206 -0.001504
+vn -0.907428 0.420206 -0.001504
+vn -0.907428 0.420206 -0.001504
+vn -0.907428 0.420206 -0.001504
+vn -0.703786 0.056445 -0.708166
+vn -0.703786 0.056445 -0.708166
+vn -0.703786 0.056445 -0.708166
+vn -0.703786 0.056445 -0.708166
+vn -0.500234 0.501103 0.706160
+vn -0.500234 0.501103 0.706160
+vn -0.500234 0.501103 0.706160
+vn -0.500234 0.501103 0.706160
+vn 0.296100 0.641959 0.707258
+vn 0.296100 0.641959 0.707258
+vn 0.296100 0.641959 0.707258
+vn 0.296100 0.641959 0.707258
+vn -0.705855 0.057057 0.706055
+vn -0.705855 0.057057 0.706055
+vn -0.705855 0.057057 0.706055
+vn -0.705855 0.057057 0.706055
+vn 0.695310 -0.122636 0.708170
+vn 0.695310 -0.122636 0.708170
+vn 0.695310 -0.122636 0.708170
+vn 0.695310 -0.122636 0.708170
+vn 0.543162 -0.451204 0.708089
+vn 0.543162 -0.451204 0.708089
+vn 0.543162 -0.451204 0.708089
+vn 0.543162 -0.451204 0.708089
+vn -0.296095 -0.641950 -0.707268
+vn -0.296095 -0.641950 -0.707268
+vn -0.296095 -0.641950 -0.707268
+vn -0.296095 -0.641950 -0.707268
+vn 0.220445 -0.975399 0.000745
+vn 0.220445 -0.975399 0.000745
+vn 0.220445 -0.975399 0.000745
+vn 0.220445 -0.975399 0.000745
+vn -0.298159 -0.641346 0.706949
+vn -0.298159 -0.641346 0.706949
+vn -0.298159 -0.641346 0.706949
+vn -0.298159 -0.641346 0.706949
+vn -0.863620 -0.504142 -0.001040
+vn -0.863620 -0.504142 -0.001040
+vn -0.863620 -0.504142 -0.001040
+vn -0.863620 -0.504142 -0.001040
+vn 0.743367 0.387473 -0.545225
+vn 0.743367 0.387473 -0.545225
+vn 0.743367 0.387473 -0.545225
+vn 0.628959 -0.291079 -0.720891
+vn 0.628959 -0.291079 -0.720891
+vn 0.628959 -0.291079 -0.720891
+vn 0.628959 -0.291079 -0.720891
+vn -0.145433 0.826472 -0.543869
+vn -0.145433 0.826472 -0.543869
+vn -0.145433 0.826472 -0.543869
+vn -0.612791 0.283945 -0.737470
+vn -0.612791 0.283945 -0.737470
+vn -0.612791 0.283945 -0.737470
+vn -0.612791 0.283945 -0.737470
+vn -0.147017 0.826950 0.542715
+vn -0.147017 0.826950 0.542715
+vn -0.147017 0.826950 0.542715
+vn -0.614943 0.284587 0.735429
+vn -0.614943 0.284587 0.735429
+vn -0.614943 0.284587 0.735429
+vn -0.614943 0.284587 0.735429
+vn 0.741770 0.387956 0.547054
+vn 0.741770 0.387956 0.547054
+vn 0.741770 0.387956 0.547054
+vn 0.626861 -0.290455 0.722967
+vn 0.626861 -0.290455 0.722967
+vn 0.626861 -0.290455 0.722967
+vn 0.626861 -0.290455 0.722967
+vn 0.185458 -0.817312 -0.545533
+vn 0.185458 -0.817312 -0.545533
+vn 0.185458 -0.817312 -0.545533
+vn 0.183869 -0.816852 0.546759
+vn 0.183869 -0.816852 0.546759
+vn 0.183869 -0.816852 0.546759
+vn -0.725836 -0.423015 0.542420
+vn -0.725837 -0.423015 0.542420
+vn -0.725837 -0.423015 0.542420
+vn -0.724251 -0.423478 -0.544175
+vn -0.724251 -0.423478 -0.544175
+vn -0.724251 -0.423478 -0.544175
+vn -0.735475 -0.677552 -0.000779
+vn -0.938777 -0.344522 -0.001218
+vn -0.735475 -0.677552 -0.000779
+vn -0.938777 -0.344522 -0.001218
+vn -0.938777 -0.344522 -0.001218
+vn -0.999160 0.040957 -0.001473
+vn -0.938777 -0.344522 -0.001218
+vn -0.999160 0.040957 -0.001473
+vn -0.999160 0.040957 -0.001473
+vn -0.907429 0.420202 -0.001504
+vn -0.999160 0.040957 -0.001473
+vn -0.907430 0.420201 -0.001504
+vn -0.907429 0.420202 -0.001504
+vn -0.677551 0.735475 -0.001306
+vn -0.907430 0.420201 -0.001504
+vn -0.677550 0.735475 -0.001306
+vn -0.677551 0.735475 -0.001306
+vn -0.344520 0.938778 -0.000908
+vn -0.677550 0.735475 -0.001306
+vn -0.344521 0.938778 -0.000908
+vn -0.344520 0.938778 -0.000908
+vn 0.040959 0.999161 -0.000373
+vn -0.344521 0.938778 -0.000908
+vn 0.040959 0.999161 -0.000373
+vn 0.040959 0.999161 -0.000373
+vn 0.420202 0.907431 0.000219
+vn 0.040959 0.999161 -0.000373
+vn 0.420202 0.907431 0.000219
+vn 0.420202 0.907431 0.000219
+vn 0.735475 0.677552 0.000778
+vn 0.420202 0.907431 0.000219
+vn 0.735475 0.677552 0.000778
+vn 0.735475 0.677552 0.000778
+vn 0.938777 0.344522 0.001218
+vn 0.735475 0.677552 0.000778
+vn 0.938777 0.344523 0.001218
+vn 0.938777 0.344522 0.001218
+vn 0.999160 -0.040958 0.001473
+vn 0.938777 0.344523 0.001218
+vn 0.999160 -0.040959 0.001473
+vn 0.999160 -0.040958 0.001473
+vn 0.907429 -0.420203 0.001504
+vn 0.999160 -0.040959 0.001473
+vn 0.907429 -0.420203 0.001504
+vn 0.907429 -0.420203 0.001504
+vn 0.677551 -0.735475 0.001306
+vn 0.907429 -0.420203 0.001504
+vn 0.677551 -0.735475 0.001306
+vn 0.677551 -0.735475 0.001306
+vn 0.344521 -0.938778 0.000909
+vn 0.677551 -0.735475 0.001306
+vn 0.344520 -0.938778 0.000909
+vn 0.344521 -0.938778 0.000909
+vn -0.040958 -0.999161 0.000373
+vn 0.344520 -0.938778 0.000909
+vn -0.040958 -0.999161 0.000373
+vn -0.040958 -0.999161 0.000373
+vn -0.420202 -0.907431 -0.000220
+vn -0.040958 -0.999161 0.000373
+vn -0.420202 -0.907431 -0.000220
+vn -0.420202 -0.907431 -0.000220
+vn -0.735475 -0.677552 -0.000779
+vn -0.420202 -0.907431 -0.000220
+vn -0.735475 -0.677552 -0.000779
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn 0.001457 -0.000433 -0.999999
+vn -0.513950 -0.474742 -0.714476
+vn -0.513950 -0.474742 -0.714476
+vn -0.656301 -0.241548 -0.714789
+vn -0.656301 -0.241548 -0.714789
+vn -0.513950 -0.474742 -0.714476
+vn -0.513950 -0.474742 -0.714476
+vn -0.293192 -0.635707 -0.714083
+vn -0.293193 -0.635707 -0.714083
+vn -0.656301 -0.241548 -0.714789
+vn -0.656301 -0.241548 -0.714789
+vn -0.698581 0.028372 -0.714968
+vn -0.698581 0.028371 -0.714968
+vn -0.698581 0.028372 -0.714968
+vn -0.698581 0.028371 -0.714968
+vn -0.634353 0.293922 -0.714987
+vn -0.634353 0.293922 -0.714987
+vn -0.634353 0.293922 -0.714987
+vn -0.634353 0.293922 -0.714987
+vn -0.473391 0.514680 -0.714847
+vn -0.473391 0.514680 -0.714847
+vn -0.473391 0.514680 -0.714847
+vn -0.473391 0.514680 -0.714847
+vn -0.240198 0.657035 -0.714570
+vn -0.240197 0.657035 -0.714570
+vn -0.240198 0.657035 -0.714570
+vn -0.240197 0.657035 -0.714570
+vn 0.029720 0.699317 -0.714193
+vn 0.029720 0.699317 -0.714193
+vn 0.029720 0.699317 -0.714193
+vn 0.029720 0.699317 -0.714193
+vn 0.295271 0.635088 -0.713777
+vn 0.295271 0.635088 -0.713777
+vn 0.295271 0.635088 -0.713777
+vn 0.295271 0.635088 -0.713777
+vn 0.516031 0.474122 -0.713387
+vn 0.516031 0.474122 -0.713387
+vn 0.516031 0.474122 -0.713387
+vn 0.516031 0.474122 -0.713387
+vn 0.658385 0.240929 -0.713080
+vn 0.658385 0.240928 -0.713080
+vn 0.658385 0.240929 -0.713080
+vn 0.658385 0.240928 -0.713080
+vn 0.700666 -0.028987 -0.712900
+vn 0.700666 -0.028988 -0.712900
+vn 0.700666 -0.028987 -0.712900
+vn 0.700666 -0.028988 -0.712900
+vn 0.636436 -0.294540 -0.712878
+vn 0.636436 -0.294541 -0.712878
+vn 0.636436 -0.294540 -0.712878
+vn 0.636436 -0.294541 -0.712878
+vn 0.475472 -0.515300 -0.713017
+vn 0.475472 -0.515299 -0.713017
+vn 0.475472 -0.515300 -0.713017
+vn 0.475472 -0.515299 -0.713017
+vn 0.242280 -0.657655 -0.713295
+vn 0.242280 -0.657655 -0.713295
+vn 0.242280 -0.657655 -0.713295
+vn 0.242280 -0.657655 -0.713295
+vn -0.027641 -0.699937 -0.713670
+vn -0.027641 -0.699937 -0.713670
+vn -0.027641 -0.699937 -0.713670
+vn -0.027641 -0.699937 -0.713670
+vn -0.293193 -0.635707 -0.714083
+vn -0.293192 -0.635707 -0.714083
+vn -0.735475 -0.677551 -0.000778
+vn -0.938778 -0.344521 -0.001219
+vn -0.735475 -0.677551 -0.000778
+vn -0.938778 -0.344522 -0.001219
+vn -0.938778 -0.344521 -0.001219
+vn -0.999160 0.040956 -0.001474
+vn -0.938778 -0.344522 -0.001219
+vn -0.999160 0.040956 -0.001474
+vn -0.999160 0.040956 -0.001474
+vn -0.907429 0.420202 -0.001505
+vn -0.999160 0.040956 -0.001474
+vn -0.907430 0.420202 -0.001505
+vn -0.907429 0.420202 -0.001505
+vn -0.677550 0.735476 -0.001306
+vn -0.907430 0.420202 -0.001505
+vn -0.677550 0.735476 -0.001306
+vn -0.677550 0.735476 -0.001306
+vn -0.344521 0.938778 -0.000909
+vn -0.677550 0.735476 -0.001306
+vn -0.344521 0.938778 -0.000909
+vn -0.344521 0.938778 -0.000909
+vn 0.040957 0.999161 -0.000373
+vn -0.344521 0.938778 -0.000909
+vn 0.040957 0.999161 -0.000373
+vn 0.040957 0.999161 -0.000373
+vn 0.420202 0.907431 0.000219
+vn 0.040957 0.999161 -0.000373
+vn 0.420203 0.907430 0.000219
+vn 0.420202 0.907431 0.000219
+vn 0.735476 0.677551 0.000778
+vn 0.420203 0.907430 0.000219
+vn 0.735475 0.677551 0.000778
+vn 0.735476 0.677551 0.000778
+vn 0.938777 0.344523 0.001219
+vn 0.735475 0.677551 0.000778
+vn 0.938777 0.344523 0.001219
+vn 0.938777 0.344523 0.001219
+vn 0.999160 -0.040956 0.001475
+vn 0.938777 0.344523 0.001219
+vn 0.999160 -0.040956 0.001475
+vn 0.999160 -0.040956 0.001475
+vn 0.907429 -0.420203 0.001505
+vn 0.999160 -0.040956 0.001475
+vn 0.907429 -0.420203 0.001505
+vn 0.907429 -0.420203 0.001505
+vn 0.677550 -0.735476 0.001306
+vn 0.907429 -0.420203 0.001505
+vn 0.677550 -0.735476 0.001306
+vn 0.677550 -0.735476 0.001306
+vn 0.344520 -0.938779 0.000908
+vn 0.677550 -0.735476 0.001306
+vn 0.344519 -0.938779 0.000908
+vn 0.344520 -0.938779 0.000908
+vn -0.040959 -0.999161 0.000373
+vn 0.344519 -0.938779 0.000908
+vn -0.040958 -0.999161 0.000373
+vn -0.040959 -0.999161 0.000373
+vn -0.420202 -0.907431 -0.000219
+vn -0.040958 -0.999161 0.000373
+vn -0.420202 -0.907431 -0.000219
+vn -0.420202 -0.907431 -0.000219
+vn -0.735475 -0.677551 -0.000778
+vn -0.420202 -0.907431 -0.000219
+vn -0.735475 -0.677551 -0.000778
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn -0.001457 0.000433 0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn 0.001458 -0.000433 -0.999999
+vn -0.516033 -0.474125 0.713383
+vn -0.516034 -0.474124 0.713383
+vn -0.295272 -0.635089 0.713776
+vn -0.295273 -0.635089 0.713776
+vn -0.516034 -0.474124 0.713383
+vn -0.516033 -0.474125 0.713383
+vn -0.658390 -0.240930 0.713075
+vn -0.658389 -0.240931 0.713075
+vn -0.658390 -0.240930 0.713075
+vn -0.658389 -0.240931 0.713075
+vn -0.700667 0.028987 0.712900
+vn -0.700667 0.028987 0.712900
+vn -0.700667 0.028987 0.712900
+vn -0.700667 0.028987 0.712900
+vn -0.636431 0.294538 0.712883
+vn -0.636431 0.294538 0.712883
+vn -0.636431 0.294538 0.712883
+vn -0.636431 0.294538 0.712883
+vn -0.475468 0.515296 0.713022
+vn -0.475468 0.515297 0.713022
+vn -0.475468 0.515296 0.713022
+vn -0.475468 0.515297 0.713022
+vn -0.242278 0.657653 0.713298
+vn -0.242278 0.657653 0.713298
+vn -0.242278 0.657653 0.713298
+vn -0.242278 0.657653 0.713298
+vn 0.027640 0.699935 0.713671
+vn 0.027639 0.699935 0.713671
+vn 0.027640 0.699935 0.713671
+vn 0.027639 0.699935 0.713671
+vn 0.293193 0.635704 0.714086
+vn 0.293192 0.635705 0.714086
+vn 0.293193 0.635704 0.714086
+vn 0.293192 0.635705 0.714086
+vn 0.513950 0.474741 0.714476
+vn 0.513950 0.474741 0.714476
+vn 0.513950 0.474741 0.714476
+vn 0.513950 0.474741 0.714476
+vn 0.656306 0.241549 0.714785
+vn 0.656306 0.241549 0.714785
+vn 0.656306 0.241549 0.714785
+vn 0.656306 0.241549 0.714785
+vn 0.698586 -0.028371 0.714964
+vn 0.698586 -0.028370 0.714964
+vn 0.698586 -0.028371 0.714964
+vn 0.698586 -0.028370 0.714964
+vn 0.634354 -0.293923 0.714985
+vn 0.634355 -0.293923 0.714985
+vn 0.634354 -0.293923 0.714985
+vn 0.634355 -0.293923 0.714985
+vn 0.473389 -0.514682 0.714846
+vn 0.473390 -0.514681 0.714846
+vn 0.473389 -0.514682 0.714846
+vn 0.473390 -0.514681 0.714846
+vn 0.240199 -0.657039 0.714566
+vn 0.240198 -0.657039 0.714566
+vn 0.240199 -0.657039 0.714566
+vn 0.240198 -0.657039 0.714566
+vn -0.029720 -0.699321 0.714189
+vn -0.029720 -0.699321 0.714189
+vn -0.029720 -0.699321 0.714189
+vn -0.029720 -0.699321 0.714189
+vn -0.295273 -0.635089 0.713776
+vn -0.295272 -0.635089 0.713776
+vn -0.513950 -0.474740 -0.714478
+vn -0.513949 -0.474741 -0.714477
+vn -0.656309 -0.241549 -0.714781
+vn -0.656309 -0.241550 -0.714781
+vn -0.513949 -0.474741 -0.714477
+vn -0.513950 -0.474740 -0.714478
+vn -0.293191 -0.635704 -0.714086
+vn -0.293190 -0.635705 -0.714086
+vn -0.656309 -0.241549 -0.714781
+vn -0.656309 -0.241550 -0.714781
+vn -0.698590 0.028370 -0.714959
+vn -0.698590 0.028371 -0.714959
+vn -0.698590 0.028370 -0.714959
+vn -0.698590 0.028371 -0.714959
+vn -0.634358 0.293925 -0.714981
+vn -0.634358 0.293925 -0.714981
+vn -0.634358 0.293925 -0.714981
+vn -0.634358 0.293925 -0.714981
+vn -0.473395 0.514686 -0.714839
+vn -0.473395 0.514686 -0.714839
+vn -0.473395 0.514686 -0.714839
+vn -0.473395 0.514686 -0.714839
+vn -0.240201 0.657042 -0.714562
+vn -0.240200 0.657043 -0.714562
+vn -0.240201 0.657042 -0.714562
+vn -0.240200 0.657043 -0.714562
+vn 0.029719 0.699321 -0.714190
+vn 0.029719 0.699321 -0.714190
+vn 0.029719 0.699321 -0.714190
+vn 0.029719 0.699321 -0.714190
+vn 0.295273 0.635088 -0.713776
+vn 0.295272 0.635089 -0.713776
+vn 0.295273 0.635088 -0.713776
+vn 0.295272 0.635089 -0.713776
+vn 0.516034 0.474125 -0.713383
+vn 0.516033 0.474125 -0.713383
+vn 0.516034 0.474125 -0.713383
+vn 0.516033 0.474125 -0.713383
+vn 0.658387 0.240932 -0.713076
+vn 0.658387 0.240933 -0.713076
+vn 0.658387 0.240932 -0.713076
+vn 0.658387 0.240933 -0.713076
+vn 0.700663 -0.028987 -0.712903
+vn 0.700663 -0.028987 -0.712903
+vn 0.700663 -0.028987 -0.712903
+vn 0.700663 -0.028987 -0.712903
+vn 0.636432 -0.294541 -0.712882
+vn 0.636432 -0.294541 -0.712882
+vn 0.636432 -0.294541 -0.712882
+vn 0.636432 -0.294541 -0.712882
+vn 0.475471 -0.515300 -0.713017
+vn 0.475471 -0.515300 -0.713017
+vn 0.475471 -0.515300 -0.713017
+vn 0.475471 -0.515300 -0.713017
+vn 0.242279 -0.657656 -0.713295
+vn 0.242279 -0.657656 -0.713295
+vn 0.242279 -0.657656 -0.713295
+vn 0.242279 -0.657656 -0.713295
+vn -0.027639 -0.699937 -0.713670
+vn -0.027640 -0.699937 -0.713670
+vn -0.027639 -0.699937 -0.713670
+vn -0.027640 -0.699937 -0.713670
+vn -0.293190 -0.635705 -0.714086
+vn -0.293191 -0.635704 -0.714086
+vn -0.205308 0.978697 -0.000150
+vn -0.205308 0.978697 -0.000150
+vn -0.205308 0.978697 -0.000150
+vn -0.205308 0.978697 -0.000150
+vn 0.921767 0.387744 -0.000019
+vn 0.921767 0.387744 -0.000019
+vn 0.921767 0.387744 -0.000019
+vn 0.921767 0.387744 -0.000019
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.000040 -0.000145 -1.000000
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn 0.387743 -0.921768 0.000149
+vn -0.921768 -0.387743 0.000019
+vn -0.921768 -0.387743 0.000019
+vn -0.921768 -0.387743 0.000019
+vn -0.921768 -0.387743 0.000019
+vn -0.000040 0.000145 1.000000
+vn -0.000041 0.000144 1.000000
+vn -0.000040 0.000145 1.000000
+vn -0.000041 0.000144 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000145 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.000040 0.000145 1.000000
+vn -0.000040 0.000146 1.000000
+vn -0.594894 0.803804 -0.000140
+vn -0.594894 0.803804 -0.000140
+vn -0.594894 0.803804 -0.000140
+vn -0.594894 0.803804 -0.000140
+vn -0.145147 0.691941 -0.707213
+vn -0.145147 0.691941 -0.707213
+vn -0.145147 0.691941 -0.707213
+vn -0.145147 0.691941 -0.707213
+vn 0.464366 0.885643 -0.000109
+vn 0.464366 0.885643 -0.000109
+vn 0.464366 0.885643 -0.000109
+vn 0.464366 0.885643 -0.000109
+vn 0.651817 0.274074 -0.707120
+vn 0.651817 0.274074 -0.707119
+vn 0.651817 0.274074 -0.707120
+vn 0.651817 0.274074 -0.707120
+vn 0.274203 -0.651888 -0.707004
+vn 0.274203 -0.651888 -0.707004
+vn 0.274203 -0.651888 -0.707004
+vn 0.274202 -0.651886 -0.707006
+vn 0.274200 -0.651883 -0.707010
+vn 0.274201 -0.651883 -0.707009
+vn 0.274200 -0.651883 -0.707010
+vn 0.274202 -0.651886 -0.707006
+vn 0.274203 -0.651888 -0.707004
+vn 0.274202 -0.651886 -0.707006
+vn 0.274201 -0.651883 -0.707009
+vn 0.925964 -0.377611 0.000091
+vn 0.925964 -0.377611 0.000091
+vn 0.925964 -0.377611 0.000091
+vn 0.925964 -0.377611 0.000091
+vn -0.651818 -0.274074 0.707119
+vn -0.651818 -0.274074 0.707119
+vn -0.651818 -0.274074 0.707119
+vn -0.651818 -0.274074 0.707119
+vn -0.377615 -0.925963 0.000119
+vn -0.377615 -0.925963 0.000119
+vn -0.377615 -0.925963 0.000119
+vn -0.377615 -0.925963 0.000119
+vn 0.274148 -0.651689 0.707209
+vn 0.274148 -0.651689 0.707209
+vn 0.274149 -0.651689 0.707209
+vn 0.274149 -0.651688 0.707209
+vn 0.274148 -0.651688 0.707210
+vn 0.274149 -0.651689 0.707209
+vn 0.274149 -0.651688 0.707209
+vn 0.274149 -0.651688 0.707209
+vn 0.274148 -0.651688 0.707210
+vn 0.274148 -0.651688 0.707210
+vn 0.274148 -0.651688 0.707210
+vn -0.964371 0.264555 -0.000077
+vn -0.964371 0.264555 -0.000077
+vn -0.964371 0.264555 -0.000077
+vn -0.964371 0.264555 -0.000077
+vn -0.420684 0.568481 0.707004
+vn -0.420684 0.568481 0.707004
+vn -0.420684 0.568481 0.707004
+vn -0.420684 0.568481 0.707004
+vn -0.409549 0.912288 -0.000149
+vn -0.409549 0.912288 -0.000149
+vn -0.409549 0.912288 -0.000149
+vn -0.409549 0.912288 -0.000149
+vn -0.145202 0.692143 0.707004
+vn -0.145202 0.692143 0.707004
+vn -0.145202 0.692143 0.707004
+vn -0.145202 0.692143 0.707004
+vn 0.651759 0.274278 0.707093
+vn 0.651759 0.274278 0.707093
+vn 0.651759 0.274278 0.707093
+vn 0.651759 0.274278 0.707093
+vn -0.420624 0.568272 -0.707208
+vn -0.420624 0.568272 -0.707208
+vn -0.420624 0.568272 -0.707208
+vn -0.420624 0.568272 -0.707208
+vn -0.651764 -0.274280 -0.707088
+vn -0.651764 -0.274280 -0.707088
+vn -0.651764 -0.274280 -0.707088
+vn -0.651764 -0.274280 -0.707088
+vn 0.387595 0.739098 -0.550912
+vn 0.387595 0.739098 -0.550912
+vn 0.387595 0.739098 -0.550912
+vn 0.756069 -0.308404 -0.577275
+vn 0.756069 -0.308404 -0.577275
+vn 0.756069 -0.308404 -0.577275
+vn -0.308340 -0.755959 0.577454
+vn -0.308340 -0.755959 0.577454
+vn -0.308340 -0.755959 0.577454
+vn -0.807149 0.221497 0.547220
+vn -0.807149 0.221497 0.547220
+vn -0.807149 0.221497 0.547220
+vn -0.287577 0.635080 0.716919
+vn -0.287577 0.635080 0.716919
+vn -0.287577 0.635080 0.716919
+vn -0.287577 0.635080 0.716919
+vn 0.387545 0.739257 0.550734
+vn 0.387545 0.739257 0.550734
+vn 0.387545 0.739257 0.550734
+vn -0.287516 0.634872 -0.717128
+vn -0.287516 0.634872 -0.717128
+vn -0.287516 0.634872 -0.717128
+vn -0.287516 0.634872 -0.717128
+vn -0.807105 0.221332 -0.547351
+vn -0.807105 0.221332 -0.547351
+vn -0.807105 0.221332 -0.547351
+vn -0.308309 -0.756124 -0.577254
+vn -0.308309 -0.756124 -0.577254
+vn -0.308309 -0.756124 -0.577254
+vn 0.756023 -0.308233 0.577427
+vn 0.756023 -0.308233 0.577427
+vn 0.756023 -0.308233 0.577427
+vn -0.974417 -0.224749 0.000037
+vn -0.974417 -0.224749 0.000037
+vn -0.974417 -0.224749 0.000037
+vn -0.974417 -0.224749 0.000037
+vn -0.021373 -0.999772 0.000121
+vn -0.021373 -0.999772 0.000121
+vn -0.021373 -0.999772 0.000121
+vn -0.021373 -0.999772 0.000121
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000009 0.000122 1.000000
+vn 0.000009 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000011 0.000122 1.000000
+vn 0.457114 -0.889408 0.000104
+vn 0.457114 -0.889408 0.000104
+vn 0.457114 -0.889408 0.000104
+vn 0.457114 -0.889408 0.000104
+vn -0.406372 0.913708 -0.000107
+vn -0.406372 0.913708 -0.000107
+vn -0.406372 0.913708 -0.000107
+vn -0.406372 0.913708 -0.000107
+vn -0.034887 0.999391 -0.000121
+vn -0.034887 0.999391 -0.000121
+vn -0.034887 0.999391 -0.000121
+vn -0.034887 0.999391 -0.000121
+vn 0.974416 0.224750 -0.000036
+vn 0.974416 0.224750 -0.000036
+vn 0.974416 0.224750 -0.000036
+vn 0.974416 0.224750 -0.000036
+vn -0.000009 -0.000122 -1.000000
+vn -0.000009 -0.000122 -1.000000
+vn -0.000008 -0.000121 -1.000000
+vn -0.000008 -0.000121 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000009 -0.000122 -1.000000
+vn -0.000011 -0.000122 -1.000000
+vn -0.000009 -0.000122 -1.000000
+vn -0.689014 -0.158836 0.707128
+vn -0.689014 -0.158836 0.707128
+vn -0.689014 -0.158836 0.707128
+vn -0.689014 -0.158836 0.707128
+vn -0.630920 -0.775848 0.000100
+vn -0.630920 -0.775848 0.000100
+vn -0.630920 -0.775848 0.000100
+vn -0.630920 -0.775848 0.000100
+vn -0.015107 -0.706858 0.707194
+vn -0.015107 -0.706858 0.707194
+vn -0.015107 -0.706858 0.707194
+vn -0.015107 -0.706858 0.707194
+vn 0.323234 -0.628818 0.707183
+vn 0.323234 -0.628818 0.707183
+vn 0.323234 -0.628818 0.707183
+vn 0.323234 -0.628818 0.707183
+vn 0.224743 -0.974418 0.000116
+vn 0.224743 -0.974418 0.000116
+vn 0.224744 -0.974418 0.000116
+vn 0.224744 -0.974418 0.000116
+vn -0.894802 0.446464 -0.000045
+vn -0.894802 0.446464 -0.000045
+vn -0.894802 0.446464 -0.000045
+vn -0.894802 0.446464 -0.000045
+vn -0.287339 0.646170 0.707036
+vn -0.287339 0.646170 0.707036
+vn -0.287339 0.646170 0.707036
+vn -0.287339 0.646170 0.707036
+vn -0.224747 0.974417 -0.000117
+vn -0.224747 0.974417 -0.000117
+vn -0.224747 0.974417 -0.000117
+vn -0.224747 0.974417 -0.000117
+vn -0.024661 0.706761 0.707023
+vn -0.024661 0.706760 0.707023
+vn -0.024661 0.706761 0.707023
+vn -0.024661 0.706761 0.707023
+vn 0.689027 0.159009 0.707077
+vn 0.689027 0.159009 0.707077
+vn 0.689027 0.159009 0.707077
+vn 0.689027 0.159009 0.707077
+vn 0.608853 0.793283 -0.000102
+vn 0.608853 0.793283 -0.000102
+vn 0.608853 0.793283 -0.000102
+vn 0.608853 0.793283 -0.000102
+vn 0.689008 0.158836 -0.707134
+vn 0.689009 0.158836 -0.707134
+vn 0.689008 0.158836 -0.707134
+vn 0.689009 0.158836 -0.707134
+vn -0.024674 0.706590 -0.707193
+vn -0.024674 0.706590 -0.707193
+vn -0.024674 0.706590 -0.707193
+vn -0.024674 0.706590 -0.707193
+vn -0.287355 0.646003 -0.707183
+vn -0.287355 0.646003 -0.707183
+vn -0.287355 0.646003 -0.707183
+vn -0.287355 0.646003 -0.707183
+vn -0.689029 -0.159009 -0.707075
+vn -0.689029 -0.159009 -0.707075
+vn -0.689029 -0.159009 -0.707075
+vn -0.689029 -0.159009 -0.707075
+vn -0.015119 -0.707033 -0.707019
+vn -0.015119 -0.707033 -0.707019
+vn -0.015119 -0.707033 -0.707019
+vn -0.015119 -0.707033 -0.707019
+vn 0.323223 -0.628991 -0.707034
+vn 0.323223 -0.628991 -0.707034
+vn 0.323223 -0.628991 -0.707034
+vn 0.323223 -0.628991 -0.707034
+vn 0.907004 -0.421121 0.000042
+vn 0.907004 -0.421121 0.000042
+vn 0.907004 -0.421121 0.000042
+vn 0.907004 -0.421121 0.000042
+vn -0.528267 -0.649548 0.546829
+vn -0.528267 -0.649548 0.546829
+vn -0.528267 -0.649548 0.546829
+vn 0.155838 -0.675515 0.720690
+vn 0.155838 -0.675515 0.720690
+vn 0.155838 -0.675515 0.720690
+vn 0.155838 -0.675515 0.720690
+vn -0.746834 0.372696 0.550760
+vn -0.746834 0.372696 0.550760
+vn -0.746834 0.372696 0.550760
+vn -0.157153 0.681484 0.714760
+vn -0.157153 0.681484 0.714760
+vn -0.157153 0.681484 0.714760
+vn -0.157153 0.681484 0.714760
+vn 0.508179 0.662179 0.550702
+vn 0.508179 0.662179 0.550702
+vn 0.508179 0.662179 0.550702
+vn 0.508170 0.662035 -0.550884
+vn 0.508170 0.662035 -0.550884
+vn 0.508170 0.662035 -0.550884
+vn -0.157173 0.681311 -0.714921
+vn -0.157173 0.681311 -0.714921
+vn -0.157173 0.681311 -0.714921
+vn -0.157173 0.681311 -0.714921
+vn -0.746846 0.372572 -0.550827
+vn -0.746846 0.372572 -0.550827
+vn -0.746846 0.372572 -0.550827
+vn -0.528281 -0.649687 -0.546650
+vn -0.528281 -0.649687 -0.546650
+vn -0.528281 -0.649687 -0.546650
+vn 0.155812 -0.675690 -0.720531
+vn 0.155812 -0.675690 -0.720531
+vn 0.155812 -0.675691 -0.720531
+vn 0.155812 -0.675690 -0.720531
+vn 0.759440 -0.352533 0.546782
+vn 0.759440 -0.352533 0.546782
+vn 0.759440 -0.352533 0.546782
+vn 0.759425 -0.352675 -0.546712
+vn 0.759425 -0.352675 -0.546712
+vn 0.759425 -0.352675 -0.546712
+vn 0.814236 0.580535 -0.000079
+vn 0.530094 0.847939 -0.000109
+vn 0.814236 0.580534 -0.000079
+vn 0.530093 0.847939 -0.000109
+vn 0.530094 0.847939 -0.000109
+vn 0.165253 0.986251 -0.000122
+vn 0.530093 0.847939 -0.000109
+vn 0.165254 0.986251 -0.000122
+vn 0.165253 0.986251 -0.000122
+vn -0.224749 0.974417 -0.000116
+vn 0.165254 0.986251 -0.000122
+vn -0.224750 0.974417 -0.000116
+vn -0.224749 0.974417 -0.000116
+vn -0.580534 0.814236 -0.000093
+vn -0.224750 0.974417 -0.000116
+vn -0.580534 0.814236 -0.000093
+vn -0.580534 0.814236 -0.000093
+vn -0.847938 0.530095 -0.000056
+vn -0.580534 0.814236 -0.000093
+vn -0.847938 0.530095 -0.000056
+vn -0.847938 0.530095 -0.000056
+vn -0.986251 0.165253 -0.000010
+vn -0.847938 0.530095 -0.000056
+vn -0.986251 0.165252 -0.000010
+vn -0.986251 0.165253 -0.000010
+vn -0.974417 -0.224750 0.000037
+vn -0.986251 0.165252 -0.000010
+vn -0.974416 -0.224750 0.000037
+vn -0.974417 -0.224750 0.000037
+vn -0.814235 -0.580535 0.000079
+vn -0.974416 -0.224750 0.000037
+vn -0.814236 -0.580535 0.000079
+vn -0.814235 -0.580535 0.000079
+vn -0.530096 -0.847938 0.000108
+vn -0.814236 -0.580535 0.000079
+vn -0.530095 -0.847938 0.000108
+vn -0.530096 -0.847938 0.000108
+vn -0.165252 -0.986251 0.000122
+vn -0.530095 -0.847938 0.000108
+vn -0.165252 -0.986251 0.000122
+vn -0.165252 -0.986251 0.000122
+vn 0.224749 -0.974417 0.000117
+vn -0.165252 -0.986251 0.000122
+vn 0.224748 -0.974417 0.000117
+vn 0.224749 -0.974417 0.000117
+vn 0.580535 -0.814235 0.000094
+vn 0.224748 -0.974417 0.000117
+vn 0.580535 -0.814235 0.000094
+vn 0.580535 -0.814235 0.000094
+vn 0.847939 -0.530094 0.000057
+vn 0.580535 -0.814235 0.000094
+vn 0.847939 -0.530095 0.000057
+vn 0.847939 -0.530094 0.000057
+vn 0.986252 -0.165251 0.000011
+vn 0.847939 -0.530095 0.000057
+vn 0.986252 -0.165250 0.000011
+vn 0.986252 -0.165251 0.000011
+vn 0.974417 0.224748 -0.000037
+vn 0.986252 -0.165250 0.000011
+vn 0.974417 0.224748 -0.000037
+vn 0.974417 0.224748 -0.000037
+vn 0.814236 0.580535 -0.000079
+vn 0.974417 0.224748 -0.000037
+vn 0.814236 0.580534 -0.000079
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn -0.000010 -0.000122 -1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.000010 0.000122 1.000000
+vn 0.570131 0.406413 -0.713989
+vn 0.570132 0.406412 -0.713988
+vn 0.682294 0.157285 -0.713958
+vn 0.682294 0.157284 -0.713958
+vn 0.570132 0.406412 -0.713988
+vn 0.570131 0.406413 -0.713989
+vn 0.371174 0.593650 -0.714010
+vn 0.371173 0.593651 -0.714010
+vn 0.371174 0.593650 -0.714010
+vn 0.371173 0.593651 -0.714010
+vn 0.115704 0.690500 -0.714019
+vn 0.115704 0.690500 -0.714019
+vn 0.115704 0.690500 -0.714019
+vn 0.115704 0.690500 -0.714019
+vn -0.157380 0.682212 -0.714015
+vn -0.157380 0.682212 -0.714015
+vn -0.157380 0.682212 -0.714015
+vn -0.157380 0.682212 -0.714015
+vn -0.406504 0.570051 -0.714000
+vn -0.406504 0.570052 -0.714000
+vn -0.406504 0.570051 -0.714000
+vn -0.406504 0.570052 -0.714000
+vn -0.593746 0.371092 -0.713972
+vn -0.593745 0.371093 -0.713972
+vn -0.593746 0.371092 -0.713972
+vn -0.593745 0.371093 -0.713972
+vn -0.690596 0.115624 -0.713939
+vn -0.690596 0.115625 -0.713939
+vn -0.690596 0.115624 -0.713939
+vn -0.690596 0.115625 -0.713939
+vn -0.682307 -0.157461 -0.713907
+vn -0.682307 -0.157460 -0.713907
+vn -0.682307 -0.157461 -0.713907
+vn -0.682307 -0.157460 -0.713907
+vn -0.570149 -0.406585 -0.713876
+vn -0.570148 -0.406585 -0.713876
+vn -0.570149 -0.406585 -0.713876
+vn -0.570148 -0.406585 -0.713876
+vn -0.371190 -0.593830 -0.713852
+vn -0.371191 -0.593829 -0.713852
+vn -0.371190 -0.593830 -0.713852
+vn -0.371191 -0.593829 -0.713852
+vn -0.115718 -0.690677 -0.713845
+vn -0.115719 -0.690677 -0.713845
+vn -0.115718 -0.690677 -0.713845
+vn -0.115719 -0.690677 -0.713845
+vn 0.157365 -0.682386 -0.713853
+vn 0.157365 -0.682386 -0.713853
+vn 0.157365 -0.682386 -0.713853
+vn 0.157365 -0.682386 -0.713853
+vn 0.406488 -0.570222 -0.713873
+vn 0.406488 -0.570222 -0.713873
+vn 0.406488 -0.570222 -0.713873
+vn 0.406488 -0.570222 -0.713873
+vn 0.593728 -0.371264 -0.713898
+vn 0.593728 -0.371263 -0.713898
+vn 0.593728 -0.371264 -0.713898
+vn 0.593728 -0.371263 -0.713898
+vn 0.690580 -0.115799 -0.713926
+vn 0.690580 -0.115798 -0.713926
+vn 0.690580 -0.115799 -0.713926
+vn 0.690580 -0.115798 -0.713926
+vn 0.682294 0.157284 -0.713958
+vn 0.682294 0.157285 -0.713958
+vn 0.570146 0.406583 0.713880
+vn 0.570145 0.406584 0.713880
+vn 0.371186 0.593828 0.713855
+vn 0.371186 0.593828 0.713855
+vn 0.570145 0.406584 0.713880
+vn 0.570146 0.406583 0.713880
+vn 0.682306 0.157460 0.713908
+vn 0.682306 0.157459 0.713908
+vn 0.371186 0.593828 0.713855
+vn 0.371186 0.593828 0.713855
+vn 0.115721 0.690676 0.713846
+vn 0.115721 0.690676 0.713846
+vn 0.115721 0.690676 0.713846
+vn 0.115721 0.690676 0.713846
+vn -0.157366 0.682388 0.713851
+vn -0.157365 0.682388 0.713851
+vn -0.157366 0.682388 0.713851
+vn -0.157365 0.682388 0.713851
+vn -0.406494 0.570230 0.713863
+vn -0.406493 0.570230 0.713863
+vn -0.406494 0.570230 0.713863
+vn -0.406493 0.570230 0.713863
+vn -0.593737 0.371269 0.713888
+vn -0.593737 0.371270 0.713888
+vn -0.593737 0.371269 0.713888
+vn -0.593737 0.371270 0.713888
+vn -0.690584 0.115801 0.713922
+vn -0.690584 0.115799 0.713922
+vn -0.690584 0.115801 0.713922
+vn -0.690584 0.115799 0.713922
+vn -0.682294 -0.157285 0.713958
+vn -0.682294 -0.157287 0.713958
+vn -0.682294 -0.157285 0.713958
+vn -0.682294 -0.157287 0.713958
+vn -0.570133 -0.406413 0.713986
+vn -0.570133 -0.406413 0.713986
+vn -0.570133 -0.406413 0.713986
+vn -0.570133 -0.406413 0.713986
+vn -0.371174 -0.593650 0.714010
+vn -0.371174 -0.593650 0.714010
+vn -0.371174 -0.593650 0.714010
+vn -0.371174 -0.593650 0.714010
+vn -0.115703 -0.690502 0.714017
+vn -0.115705 -0.690502 0.714017
+vn -0.115703 -0.690502 0.714017
+vn -0.115705 -0.690502 0.714017
+vn 0.157381 -0.682217 0.714011
+vn 0.157381 -0.682217 0.714011
+vn 0.157381 -0.682217 0.714011
+vn 0.157381 -0.682217 0.714011
+vn 0.406506 -0.570052 0.713999
+vn 0.406506 -0.570052 0.713999
+vn 0.406506 -0.570052 0.713999
+vn 0.406506 -0.570052 0.713999
+vn 0.593742 -0.371093 0.713975
+vn 0.593742 -0.371092 0.713975
+vn 0.593742 -0.371093 0.713975
+vn 0.593742 -0.371092 0.713975
+vn 0.690592 -0.115624 0.713942
+vn 0.690592 -0.115625 0.713942
+vn 0.690592 -0.115624 0.713942
+vn 0.690592 -0.115625 0.713942
+vn 0.682306 0.157459 0.713908
+vn 0.682306 0.157460 0.713908
+vn -0.839789 -0.542913 0.000097
+vn -0.839789 -0.542913 0.000097
+vn -0.839789 -0.542913 0.000097
+vn -0.839789 -0.542913 0.000097
+vn 0.275241 -0.961375 0.000091
+vn 0.275241 -0.961375 0.000091
+vn 0.275241 -0.961375 0.000091
+vn 0.275241 -0.961375 0.000091
+vn 0.000046 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000109 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000046 0.000108 1.000000
+vn 0.000047 0.000109 1.000000
+vn 0.763660 -0.645619 0.000034
+vn 0.763660 -0.645619 0.000034
+vn 0.763660 -0.645619 0.000034
+vn 0.763660 -0.645619 0.000034
+vn -0.864379 0.502841 -0.000015
+vn -0.864379 0.502841 -0.000015
+vn -0.864379 0.502841 -0.000015
+vn -0.864379 0.502841 -0.000015
+vn -0.103704 0.994608 -0.000103
+vn -0.103704 0.994608 -0.000103
+vn -0.103704 0.994608 -0.000103
+vn -0.103704 0.994608 -0.000103
+vn 0.839789 0.542913 -0.000099
+vn 0.839789 0.542913 -0.000099
+vn 0.839789 0.542913 -0.000099
+vn 0.839789 0.542913 -0.000099
+vn -0.000046 -0.000107 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.000046 -0.000107 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000046 -0.000108 -1.000000
+vn -0.593785 -0.383819 0.707180
+vn -0.593785 -0.383819 0.707180
+vn -0.593785 -0.383819 0.707180
+vn -0.593785 -0.383819 0.707180
+vn -0.351363 -0.936239 0.000117
+vn -0.351363 -0.936239 0.000117
+vn -0.351363 -0.936239 0.000117
+vn -0.351363 -0.936239 0.000117
+vn 0.194659 -0.679725 0.707165
+vn 0.194659 -0.679725 0.707165
+vn 0.194659 -0.679725 0.707165
+vn 0.194659 -0.679725 0.707165
+vn 0.540023 -0.456448 0.707128
+vn 0.540023 -0.456448 0.707128
+vn 0.540023 -0.456448 0.707128
+vn 0.540023 -0.456448 0.707128
+vn 0.542913 -0.839789 0.000066
+vn 0.542913 -0.839789 0.000066
+vn 0.542913 -0.839789 0.000066
+vn 0.542913 -0.839789 0.000066
+vn -0.999724 -0.023502 0.000049
+vn -0.999724 -0.023502 0.000049
+vn -0.999724 -0.023502 0.000049
+vn -0.999724 -0.023502 0.000049
+vn -0.611174 0.355638 0.707098
+vn -0.611174 0.355638 0.707098
+vn -0.611174 0.355638 0.707098
+vn -0.611174 0.355638 0.707098
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.073296 0.703369 0.707036
+vn -0.073296 0.703369 0.707036
+vn -0.073296 0.703369 0.707036
+vn -0.073296 0.703369 0.707036
+vn 0.593850 0.383971 0.707042
+vn 0.593850 0.383971 0.707042
+vn 0.593850 0.383971 0.707042
+vn 0.593850 0.383971 0.707042
+vn 0.431819 0.901960 -0.000118
+vn 0.431819 0.901960 -0.000118
+vn 0.431819 0.901960 -0.000118
+vn 0.431819 0.901960 -0.000118
+vn 0.593788 0.383821 -0.707176
+vn 0.593788 0.383821 -0.707176
+vn 0.593788 0.383821 -0.707176
+vn 0.593788 0.383821 -0.707176
+vn -0.073361 0.703221 -0.707177
+vn -0.073361 0.703221 -0.707177
+vn -0.073361 0.703221 -0.707177
+vn -0.073361 0.703221 -0.707177
+vn -0.611245 0.355488 -0.707112
+vn -0.611245 0.355488 -0.707112
+vn -0.611245 0.355488 -0.707112
+vn -0.611245 0.355488 -0.707112
+vn -0.593855 -0.383974 -0.707036
+vn -0.593855 -0.383974 -0.707036
+vn -0.593855 -0.383974 -0.707036
+vn -0.593855 -0.383974 -0.707036
+vn 0.194591 -0.679873 -0.707041
+vn 0.194591 -0.679873 -0.707041
+vn 0.194591 -0.679873 -0.707041
+vn 0.194591 -0.679873 -0.707041
+vn 0.539956 -0.456598 -0.707083
+vn 0.539956 -0.456598 -0.707082
+vn 0.539956 -0.456598 -0.707082
+vn 0.539956 -0.456598 -0.707083
+vn 0.997955 -0.063924 -0.000041
+vn 0.997955 -0.063924 -0.000041
+vn 0.997955 -0.063924 -0.000041
+vn 0.997955 -0.063924 -0.000041
+vn -0.294663 -0.785192 0.544654
+vn -0.294663 -0.785192 0.544654
+vn -0.294663 -0.785192 0.544654
+vn 0.372915 -0.576693 0.726883
+vn 0.372915 -0.576693 0.726883
+vn 0.372915 -0.576693 0.726883
+vn 0.372915 -0.576693 0.726883
+vn -0.838090 -0.019638 0.545179
+vn -0.838090 -0.019638 0.545179
+vn -0.838090 -0.019638 0.545179
+vn -0.351534 0.543903 0.761967
+vn -0.351534 0.543903 0.761967
+vn -0.351534 0.543903 0.761967
+vn -0.351534 0.543903 0.761967
+vn 0.362035 0.756216 0.545039
+vn 0.362035 0.756216 0.545039
+vn 0.362035 0.756216 0.545039
+vn 0.361987 0.756099 -0.545234
+vn 0.361987 0.756099 -0.545234
+vn 0.361987 0.756099 -0.545234
+vn -0.351614 0.543745 -0.762043
+vn -0.351614 0.543745 -0.762043
+vn -0.351614 0.543745 -0.762043
+vn -0.351614 0.543745 -0.762043
+vn -0.838145 -0.019761 -0.545089
+vn -0.838145 -0.019761 -0.545089
+vn -0.838145 -0.019761 -0.545089
+vn -0.294724 -0.785303 -0.544460
+vn -0.294724 -0.785303 -0.544460
+vn -0.294724 -0.785303 -0.544460
+vn 0.372844 -0.576849 -0.726796
+vn 0.372844 -0.576849 -0.726796
+vn 0.372844 -0.576849 -0.726796
+vn 0.372844 -0.576849 -0.726796
+vn 0.837027 -0.053555 0.544535
+vn 0.837027 -0.053555 0.544535
+vn 0.837027 -0.053555 0.544535
+vn 0.836979 -0.053674 -0.544597
+vn 0.836979 -0.053674 -0.544597
+vn 0.836979 -0.053674 -0.544597
+vn 0.568101 0.822959 -0.000115
+vn 0.209925 0.977718 -0.000115
+vn 0.568102 0.822958 -0.000115
+vn 0.209924 0.977718 -0.000115
+vn 0.209925 0.977718 -0.000115
+vn -0.180212 0.983628 -0.000098
+vn 0.209924 0.977718 -0.000115
+vn -0.180213 0.983628 -0.000098
+vn -0.180212 0.983628 -0.000098
+vn -0.542911 0.839790 -0.000066
+vn -0.180213 0.983628 -0.000098
+vn -0.542911 0.839790 -0.000066
+vn -0.542911 0.839790 -0.000066
+vn -0.822959 0.568100 -0.000023
+vn -0.542911 0.839790 -0.000066
+vn -0.822959 0.568101 -0.000023
+vn -0.822959 0.568100 -0.000023
+vn -0.977718 0.209925 0.000023
+vn -0.822959 0.568101 -0.000023
+vn -0.977718 0.209923 0.000023
+vn -0.977718 0.209925 0.000023
+vn -0.983628 -0.180213 0.000065
+vn -0.977718 0.209923 0.000023
+vn -0.983628 -0.180213 0.000065
+vn -0.983628 -0.180213 0.000065
+vn -0.839789 -0.542913 0.000098
+vn -0.983628 -0.180213 0.000065
+vn -0.839789 -0.542913 0.000098
+vn -0.839789 -0.542913 0.000098
+vn -0.568101 -0.822959 0.000116
+vn -0.839789 -0.542913 0.000098
+vn -0.568102 -0.822958 0.000116
+vn -0.568101 -0.822959 0.000116
+vn -0.209924 -0.977718 0.000115
+vn -0.568102 -0.822958 0.000116
+vn -0.209924 -0.977718 0.000115
+vn -0.209924 -0.977718 0.000115
+vn 0.180212 -0.983628 0.000098
+vn -0.209924 -0.977718 0.000115
+vn 0.180212 -0.983628 0.000098
+vn 0.180212 -0.983628 0.000098
+vn 0.542915 -0.839788 0.000065
+vn 0.180212 -0.983628 0.000098
+vn 0.542914 -0.839788 0.000065
+vn 0.542915 -0.839788 0.000065
+vn 0.822960 -0.568100 0.000023
+vn 0.542914 -0.839788 0.000065
+vn 0.822960 -0.568099 0.000023
+vn 0.822960 -0.568100 0.000023
+vn 0.977718 -0.209924 -0.000023
+vn 0.822960 -0.568099 0.000023
+vn 0.977718 -0.209924 -0.000023
+vn 0.977718 -0.209924 -0.000023
+vn 0.983628 0.180213 -0.000065
+vn 0.977718 -0.209924 -0.000023
+vn 0.983628 0.180212 -0.000065
+vn 0.983628 0.180213 -0.000065
+vn 0.839790 0.542912 -0.000097
+vn 0.983628 0.180212 -0.000065
+vn 0.839789 0.542913 -0.000097
+vn 0.839790 0.542912 -0.000097
+vn 0.568101 0.822959 -0.000115
+vn 0.839789 0.542913 -0.000097
+vn 0.568102 0.822958 -0.000115
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn -0.000047 -0.000108 -1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.000047 0.000108 1.000000
+vn 0.397759 0.576169 -0.714014
+vn 0.397759 0.576169 -0.714014
+vn 0.588000 0.380077 -0.714001
+vn 0.588000 0.380078 -0.714001
+vn 0.397759 0.576169 -0.714014
+vn 0.397759 0.576169 -0.714014
+vn 0.146958 0.684535 -0.714013
+vn 0.146958 0.684535 -0.714013
+vn 0.146958 0.684535 -0.714013
+vn 0.146958 0.684535 -0.714013
+vn -0.126222 0.688675 -0.714000
+vn -0.126222 0.688675 -0.714000
+vn -0.126222 0.688675 -0.714000
+vn -0.126222 0.688675 -0.714000
+vn -0.380190 0.587959 -0.713975
+vn -0.380190 0.587958 -0.713975
+vn -0.380190 0.587959 -0.713975
+vn -0.380190 0.587958 -0.713975
+vn -0.576286 0.397719 -0.713943
+vn -0.576286 0.397719 -0.713943
+vn -0.576286 0.397719 -0.713943
+vn -0.576286 0.397719 -0.713943
+vn -0.684654 0.146915 -0.713908
+vn -0.684654 0.146917 -0.713908
+vn -0.684654 0.146915 -0.713908
+vn -0.684654 0.146917 -0.713908
+vn -0.688792 -0.126265 -0.713879
+vn -0.688792 -0.126264 -0.713879
+vn -0.688792 -0.126265 -0.713879
+vn -0.688792 -0.126264 -0.713879
+vn -0.588071 -0.380234 -0.713859
+vn -0.588071 -0.380234 -0.713859
+vn -0.588071 -0.380234 -0.713859
+vn -0.588071 -0.380234 -0.713859
+vn -0.397826 -0.576327 -0.713850
+vn -0.397826 -0.576326 -0.713850
+vn -0.397826 -0.576327 -0.713850
+vn -0.397826 -0.576326 -0.713850
+vn -0.147023 -0.684688 -0.713854
+vn -0.147024 -0.684687 -0.713854
+vn -0.147023 -0.684688 -0.713854
+vn -0.147024 -0.684687 -0.713854
+vn 0.126153 -0.688824 -0.713868
+vn 0.126153 -0.688824 -0.713868
+vn 0.126153 -0.688824 -0.713868
+vn 0.126153 -0.688824 -0.713868
+vn 0.380120 -0.588107 -0.713890
+vn 0.380120 -0.588107 -0.713890
+vn 0.380120 -0.588107 -0.713890
+vn 0.380120 -0.588107 -0.713890
+vn 0.576215 -0.397867 -0.713917
+vn 0.576215 -0.397868 -0.713917
+vn 0.576215 -0.397867 -0.713917
+vn 0.576215 -0.397868 -0.713917
+vn 0.684581 -0.147068 -0.713947
+vn 0.684581 -0.147068 -0.713947
+vn 0.684581 -0.147068 -0.713947
+vn 0.684581 -0.147068 -0.713947
+vn 0.688719 0.126110 -0.713976
+vn 0.688719 0.126110 -0.713976
+vn 0.688719 0.126110 -0.713976
+vn 0.688719 0.126110 -0.713976
+vn 0.588000 0.380078 -0.714001
+vn 0.588000 0.380077 -0.714001
+vn 0.397827 0.576327 0.713849
+vn 0.397827 0.576327 0.713849
+vn 0.147025 0.684689 0.713852
+vn 0.147026 0.684689 0.713852
+vn 0.397827 0.576327 0.713849
+vn 0.397827 0.576327 0.713849
+vn 0.588068 0.380234 0.713861
+vn 0.588068 0.380234 0.713861
+vn 0.147025 0.684689 0.713852
+vn 0.147026 0.684689 0.713852
+vn -0.126153 0.688829 0.713863
+vn -0.126152 0.688829 0.713863
+vn -0.126153 0.688829 0.713863
+vn -0.126152 0.688829 0.713863
+vn -0.380121 0.588111 0.713887
+vn -0.380121 0.588110 0.713887
+vn -0.380121 0.588111 0.713887
+vn -0.380121 0.588110 0.713887
+vn -0.576214 0.397867 0.713919
+vn -0.576214 0.397866 0.713919
+vn -0.576214 0.397867 0.713919
+vn -0.576214 0.397866 0.713919
+vn -0.684575 0.147068 0.713952
+vn -0.684575 0.147069 0.713952
+vn -0.684575 0.147068 0.713952
+vn -0.684575 0.147069 0.713952
+vn -0.688712 -0.126109 0.713983
+vn -0.688712 -0.126109 0.713983
+vn -0.688712 -0.126109 0.713983
+vn -0.688712 -0.126109 0.713983
+vn -0.587997 -0.380078 0.714003
+vn -0.587997 -0.380078 0.714003
+vn -0.587997 -0.380078 0.714003
+vn -0.587997 -0.380078 0.714003
+vn -0.397759 -0.576170 0.714014
+vn -0.397759 -0.576170 0.714014
+vn -0.397759 -0.576170 0.714014
+vn -0.397759 -0.576170 0.714014
+vn -0.146958 -0.684533 0.714015
+vn -0.146958 -0.684533 0.714015
+vn -0.146958 -0.684533 0.714015
+vn -0.146958 -0.684533 0.714015
+vn 0.126221 -0.688672 0.714002
+vn 0.126220 -0.688672 0.714002
+vn 0.126221 -0.688672 0.714002
+vn 0.126220 -0.688672 0.714002
+vn 0.380190 -0.587955 0.713977
+vn 0.380190 -0.587956 0.713977
+vn 0.380190 -0.587955 0.713977
+vn 0.380190 -0.587956 0.713977
+vn 0.576284 -0.397718 0.713945
+vn 0.576284 -0.397718 0.713945
+vn 0.576284 -0.397718 0.713945
+vn 0.576284 -0.397718 0.713945
+vn 0.684648 -0.146917 0.713914
+vn 0.684648 -0.146916 0.713914
+vn 0.684648 -0.146917 0.713914
+vn 0.684648 -0.146916 0.713914
+vn 0.688785 0.126265 0.713885
+vn 0.688785 0.126266 0.713885
+vn 0.688785 0.126265 0.713885
+vn 0.688785 0.126266 0.713885
+vn 0.588068 0.380234 0.713861
+vn 0.588068 0.380234 0.713861
+vn 0.937417 0.348208 -0.000142
+vn 0.937417 0.348208 -0.000142
+vn 0.937417 0.348208 -0.000142
+vn 0.937417 0.348208 -0.000142
+vn 0.520180 -0.854057 0.000064
+vn 0.520180 -0.854057 0.000064
+vn 0.520180 -0.854057 0.000064
+vn 0.520180 -0.854057 0.000064
+vn -0.000099 -0.000137 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000099 -0.000137 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000100 -0.000137 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.000101 -0.000136 -1.000000
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.854057 -0.520180 0.000157
+vn -0.520180 0.854057 -0.000065
+vn -0.520180 0.854057 -0.000065
+vn -0.520180 0.854057 -0.000065
+vn -0.520180 0.854057 -0.000065
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000138 1.000000
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000138 1.000000
+vn 0.000100 0.000137 1.000000
+vn 0.000100 0.000137 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.000101 0.000137 1.000000
+vn 0.000101 0.000136 1.000000
+vn 0.706671 0.707542 -0.000168
+vn 0.706672 0.707542 -0.000168
+vn 0.706672 0.707542 -0.000168
+vn 0.706672 0.707542 -0.000168
+vn 0.662785 0.246125 -0.707205
+vn 0.662785 0.246125 -0.707205
+vn 0.662785 0.246125 -0.707205
+vn 0.662785 0.246125 -0.707205
+vn 0.944728 -0.327854 -0.000050
+vn 0.944728 -0.327854 -0.000050
+vn 0.944728 -0.327854 -0.000050
+vn 0.944728 -0.327854 -0.000050
+vn 0.367752 -0.604005 -0.707061
+vn 0.367752 -0.604005 -0.707061
+vn 0.367752 -0.604005 -0.707061
+vn 0.367752 -0.604005 -0.707061
+vn -0.603980 -0.367920 -0.706996
+vn -0.603980 -0.367920 -0.706996
+vn -0.603980 -0.367919 -0.706996
+vn -0.603981 -0.367920 -0.706995
+vn -0.603982 -0.367921 -0.706994
+vn -0.603982 -0.367920 -0.706994
+vn -0.603982 -0.367921 -0.706994
+vn -0.603981 -0.367920 -0.706995
+vn -0.603980 -0.367919 -0.706996
+vn -0.603981 -0.367920 -0.706995
+vn -0.603982 -0.367920 -0.706994
+vn -0.236099 -0.971729 0.000157
+vn -0.236099 -0.971729 0.000157
+vn -0.236099 -0.971729 0.000157
+vn -0.236099 -0.971729 0.000157
+vn -0.367754 0.604009 0.707057
+vn -0.367754 0.604009 0.707057
+vn -0.367754 0.604009 0.707057
+vn -0.367754 0.604009 0.707057
+vn -0.971732 0.236086 0.000065
+vn -0.971732 0.236086 0.000065
+vn -0.971732 0.236087 0.000065
+vn -0.971732 0.236086 0.000065
+vn -0.603838 -0.367725 0.707219
+vn -0.603838 -0.367725 0.707219
+vn -0.603837 -0.367725 0.707219
+vn -0.603835 -0.367724 0.707222
+vn -0.603833 -0.367724 0.707223
+vn -0.603837 -0.367725 0.707219
+vn -0.603835 -0.367724 0.707222
+vn -0.603835 -0.367724 0.707222
+vn -0.603834 -0.367724 0.707223
+vn -0.603833 -0.367724 0.707223
+vn -0.603834 -0.367724 0.707223
+vn 0.118584 0.992944 -0.000148
+vn 0.118584 0.992944 -0.000148
+vn 0.118584 0.992944 -0.000148
+vn 0.118584 0.992944 -0.000148
+vn 0.499764 0.500406 0.706986
+vn 0.499764 0.500406 0.706986
+vn 0.499764 0.500406 0.706986
+vn 0.499764 0.500406 0.706986
+vn 0.841447 0.540340 -0.000158
+vn 0.841447 0.540340 -0.000158
+vn 0.841447 0.540340 -0.000158
+vn 0.841447 0.540340 -0.000158
+vn 0.662923 0.246316 0.707009
+vn 0.662923 0.246316 0.707009
+vn 0.662923 0.246316 0.707009
+vn 0.662923 0.246316 0.707009
+vn 0.367889 -0.603806 0.707160
+vn 0.367889 -0.603806 0.707160
+vn 0.367889 -0.603806 0.707160
+vn 0.367890 -0.603806 0.707160
+vn 0.499621 0.500212 -0.707225
+vn 0.499621 0.500212 -0.707225
+vn 0.499621 0.500212 -0.707225
+vn 0.499621 0.500212 -0.707225
+vn -0.367894 0.603813 -0.707152
+vn -0.367894 0.603813 -0.707152
+vn -0.367894 0.603813 -0.707152
+vn -0.367894 0.603813 -0.707152
+vn 0.788434 -0.273711 -0.550867
+vn 0.788434 -0.273711 -0.550867
+vn 0.788434 -0.273711 -0.550867
+vn -0.192827 -0.793495 -0.577220
+vn -0.192827 -0.793495 -0.577220
+vn -0.192827 -0.793495 -0.577220
+vn -0.793364 0.192850 0.577394
+vn -0.793363 0.192850 0.577394
+vn -0.793364 0.192850 0.577394
+vn 0.099305 0.831110 0.547170
+vn 0.099305 0.831110 0.547170
+vn 0.099305 0.831110 0.547170
+vn 0.585373 0.378654 0.716909
+vn 0.585373 0.378654 0.716909
+vn 0.585373 0.378654 0.716909
+vn 0.585373 0.378654 0.716909
+vn 0.788546 -0.273548 0.550787
+vn 0.788546 -0.273548 0.550787
+vn 0.788546 -0.273548 0.550787
+vn 0.585234 0.378457 -0.717127
+vn 0.585234 0.378457 -0.717127
+vn 0.585234 0.378457 -0.717127
+vn 0.585234 0.378457 -0.717127
+vn 0.099190 0.830958 -0.547421
+vn 0.099190 0.830958 -0.547421
+vn 0.099190 0.830958 -0.547421
+vn -0.793481 0.192681 -0.577288
+vn -0.793481 0.192681 -0.577288
+vn -0.793481 0.192681 -0.577288
+vn -0.192712 -0.793332 0.577483
+vn -0.192712 -0.793332 0.577483
+vn -0.192712 -0.793332 0.577483
+vn -0.461099 0.887349 -0.000095
+vn -0.461099 0.887349 -0.000095
+vn -0.461099 0.887349 -0.000095
+vn -0.461099 0.887349 -0.000095
+vn -0.973398 -0.229119 0.000108
+vn -0.973398 -0.229119 0.000108
+vn -0.973398 -0.229119 0.000108
+vn -0.973398 -0.229119 0.000108
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000077 0.000147 1.000000
+vn -0.746976 -0.664851 0.000155
+vn -0.746976 -0.664851 0.000155
+vn -0.746976 -0.664851 0.000155
+vn -0.746976 -0.664851 0.000155
+vn 0.783184 0.621790 -0.000151
+vn 0.783184 0.621790 -0.000151
+vn 0.783184 0.621790 -0.000151
+vn 0.783184 0.621790 -0.000151
+vn 0.958972 0.283500 -0.000115
+vn 0.958972 0.283500 -0.000115
+vn 0.958972 0.283500 -0.000115
+vn 0.958972 0.283500 -0.000115
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000148 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn 0.461099 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn -0.325992 0.627555 0.707039
+vn -0.325992 0.627555 0.707039
+vn -0.325992 0.627555 0.707039
+vn -0.325992 0.627555 0.707039
+vn -0.908884 0.417049 0.000008
+vn -0.908884 0.417049 0.000008
+vn -0.908884 0.417049 0.000008
+vn -0.908884 0.417049 0.000008
+vn -0.688237 -0.161905 0.707189
+vn -0.688237 -0.161905 0.707189
+vn -0.688237 -0.161905 0.707189
+vn -0.688237 -0.161905 0.707189
+vn -0.887348 -0.461100 0.000136
+vn -0.887348 -0.461100 0.000136
+vn -0.887348 -0.461100 0.000136
+vn -0.887349 -0.461099 0.000136
+vn -0.528137 -0.470016 0.707217
+vn -0.528137 -0.470016 0.707217
+vn -0.528137 -0.470016 0.707217
+vn -0.528137 -0.470016 0.707217
+vn 0.208728 0.977974 -0.000160
+vn 0.208728 0.977974 -0.000160
+vn 0.208728 0.977974 -0.000160
+vn 0.208728 0.977974 -0.000160
+vn 0.553851 0.439779 0.706996
+vn 0.553851 0.439779 0.706996
+vn 0.553851 0.439779 0.706996
+vn 0.553851 0.439779 0.706996
+vn 0.887348 0.461100 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.678149 0.200568 0.707026
+vn 0.678149 0.200568 0.707026
+vn 0.678149 0.200568 0.707026
+vn 0.678149 0.200568 0.707026
+vn 0.553743 0.439569 -0.707212
+vn 0.553743 0.439569 -0.707212
+vn 0.553743 0.439569 -0.707212
+vn 0.553743 0.439569 -0.707212
+vn -0.326101 0.627347 -0.707173
+vn -0.326101 0.627347 -0.707173
+vn -0.326101 0.627347 -0.707173
+vn -0.326101 0.627347 -0.707173
+vn 0.678041 0.200361 -0.707189
+vn 0.678041 0.200360 -0.707189
+vn 0.678041 0.200361 -0.707189
+vn 0.678041 0.200361 -0.707189
+vn -0.688350 -0.162115 -0.707031
+vn -0.688350 -0.162115 -0.707031
+vn -0.688350 -0.162115 -0.707031
+vn -0.688350 -0.162115 -0.707031
+vn -0.528241 -0.470223 -0.707002
+vn -0.528241 -0.470223 -0.707002
+vn -0.528241 -0.470223 -0.707002
+vn -0.528241 -0.470223 -0.707002
+vn 0.326101 -0.627349 0.707171
+vn 0.326101 -0.627349 0.707172
+vn 0.326101 -0.627349 0.707171
+vn 0.326101 -0.627349 0.707172
+vn -0.181121 -0.983461 0.000159
+vn -0.181121 -0.983461 0.000159
+vn -0.181121 -0.983461 0.000159
+vn -0.181121 -0.983461 0.000159
+vn 0.325992 -0.627555 -0.707039
+vn 0.325992 -0.627556 -0.707038
+vn 0.325992 -0.627555 -0.707039
+vn 0.325992 -0.627555 -0.707039
+vn 0.920253 -0.391323 -0.000013
+vn 0.920253 -0.391323 -0.000013
+vn 0.920253 -0.391323 -0.000013
+vn 0.920253 -0.391323 -0.000013
+vn -0.760961 0.349275 0.546759
+vn -0.760961 0.349275 0.546759
+vn -0.760961 0.349275 0.546759
+vn -0.615178 -0.319590 0.720707
+vn -0.615178 -0.319590 0.720707
+vn -0.615178 -0.319590 0.720707
+vn -0.615178 -0.319590 0.720707
+vn 0.174253 0.816340 0.550659
+vn 0.174253 0.816340 0.550659
+vn 0.174253 0.816340 0.550659
+vn 0.620571 0.322544 0.714742
+vn 0.620571 0.322544 0.714742
+vn 0.620571 0.322544 0.714742
+vn 0.620571 0.322544 0.714742
+vn 0.174167 0.816177 -0.550927
+vn 0.174167 0.816177 -0.550927
+vn 0.174167 0.816177 -0.550927
+vn 0.620459 0.322332 -0.714936
+vn 0.620459 0.322332 -0.714936
+vn 0.620459 0.322332 -0.714936
+vn 0.620459 0.322332 -0.714936
+vn -0.761051 0.349113 -0.546737
+vn -0.761051 0.349113 -0.546737
+vn -0.761051 0.349113 -0.546737
+vn -0.615293 -0.319798 -0.720517
+vn -0.615293 -0.319798 -0.720517
+vn -0.615293 -0.319798 -0.720517
+vn -0.615293 -0.319798 -0.720517
+vn -0.151610 -0.823374 0.546873
+vn -0.151610 -0.823374 0.546873
+vn -0.151610 -0.823374 0.546873
+vn -0.151695 -0.823525 -0.546621
+vn -0.151695 -0.823525 -0.546621
+vn -0.151695 -0.823525 -0.546621
+vn 0.768041 -0.326691 -0.550806
+vn 0.768041 -0.326691 -0.550806
+vn 0.768041 -0.326691 -0.550806
+vn 0.768123 -0.326530 0.550786
+vn 0.768123 -0.326530 0.550786
+vn 0.768122 -0.326530 0.550787
+vn 0.765574 -0.643349 0.000036
+vn 0.953496 -0.301406 -0.000029
+vn 0.765574 -0.643348 0.000036
+vn 0.953496 -0.301406 -0.000029
+vn 0.953496 -0.301406 -0.000029
+vn 0.996258 0.086426 -0.000089
+vn 0.953496 -0.301406 -0.000029
+vn 0.996258 0.086426 -0.000089
+vn 0.996258 0.086426 -0.000089
+vn 0.887348 0.461100 -0.000136
+vn 0.996258 0.086426 -0.000089
+vn 0.887349 0.461099 -0.000136
+vn 0.887348 0.461100 -0.000136
+vn 0.643350 0.765573 -0.000162
+vn 0.887349 0.461099 -0.000136
+vn 0.643350 0.765573 -0.000162
+vn 0.643350 0.765573 -0.000162
+vn 0.301404 0.953497 -0.000163
+vn 0.643350 0.765573 -0.000162
+vn 0.301404 0.953497 -0.000163
+vn 0.301404 0.953497 -0.000163
+vn -0.086424 0.996258 -0.000140
+vn 0.301404 0.953497 -0.000163
+vn -0.086425 0.996258 -0.000140
+vn -0.086424 0.996258 -0.000140
+vn -0.461098 0.887349 -0.000095
+vn -0.086425 0.996258 -0.000140
+vn -0.461097 0.887350 -0.000095
+vn -0.461098 0.887349 -0.000095
+vn -0.765573 0.643349 -0.000036
+vn -0.461097 0.887350 -0.000095
+vn -0.765573 0.643349 -0.000036
+vn -0.765573 0.643349 -0.000036
+vn -0.953497 0.301403 0.000029
+vn -0.765573 0.643349 -0.000036
+vn -0.953497 0.301402 0.000029
+vn -0.953497 0.301403 0.000029
+vn -0.996258 -0.086428 0.000089
+vn -0.953497 0.301402 0.000029
+vn -0.996258 -0.086427 0.000089
+vn -0.996258 -0.086428 0.000089
+vn -0.887349 -0.461099 0.000136
+vn -0.996258 -0.086427 0.000089
+vn -0.887348 -0.461100 0.000136
+vn -0.887349 -0.461099 0.000136
+vn -0.643348 -0.765574 0.000162
+vn -0.887348 -0.461100 0.000136
+vn -0.643349 -0.765573 0.000162
+vn -0.643348 -0.765574 0.000162
+vn -0.301404 -0.953497 0.000163
+vn -0.643349 -0.765573 0.000162
+vn -0.301404 -0.953497 0.000163
+vn -0.301404 -0.953497 0.000163
+vn 0.086425 -0.996258 0.000140
+vn -0.301404 -0.953497 0.000163
+vn 0.086426 -0.996258 0.000140
+vn 0.086425 -0.996258 0.000140
+vn 0.461099 -0.887349 0.000095
+vn 0.086426 -0.996258 0.000140
+vn 0.461098 -0.887349 0.000095
+vn 0.461099 -0.887349 0.000095
+vn 0.765574 -0.643349 0.000036
+vn 0.461098 -0.887349 0.000095
+vn 0.765574 -0.643348 0.000036
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn -0.000077 -0.000147 -1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.000076 0.000147 1.000000
+vn 0.536013 -0.450588 -0.713905
+vn 0.536013 -0.450588 -0.713905
+vn 0.322813 -0.621442 -0.713863
+vn 0.322812 -0.621443 -0.713863
+vn 0.536013 -0.450588 -0.713905
+vn 0.536013 -0.450588 -0.713905
+vn 0.667598 -0.211151 -0.713953
+vn 0.667598 -0.211151 -0.713953
+vn 0.667598 -0.211151 -0.713953
+vn 0.667598 -0.211151 -0.713953
+vn 0.697539 0.060410 -0.713996
+vn 0.697539 0.060411 -0.713996
+vn 0.697539 0.060410 -0.713996
+vn 0.697539 0.060411 -0.713996
+vn 0.621282 0.322764 -0.714025
+vn 0.621282 0.322764 -0.714026
+vn 0.621282 0.322764 -0.714025
+vn 0.621282 0.322764 -0.714026
+vn 0.450429 0.535962 -0.714044
+vn 0.450430 0.535961 -0.714044
+vn 0.450429 0.535962 -0.714044
+vn 0.450430 0.535961 -0.714044
+vn 0.210993 0.667547 -0.714047
+vn 0.210993 0.667547 -0.714047
+vn 0.210993 0.667547 -0.714047
+vn 0.210993 0.667547 -0.714047
+vn -0.060572 0.697488 -0.714032
+vn -0.060572 0.697488 -0.714032
+vn -0.060572 0.697488 -0.714032
+vn -0.060572 0.697488 -0.714032
+vn -0.322922 0.621227 -0.714002
+vn -0.322922 0.621227 -0.714002
+vn -0.322922 0.621227 -0.714002
+vn -0.322922 0.621227 -0.714002
+vn -0.536118 0.450376 -0.713960
+vn -0.536118 0.450376 -0.713960
+vn -0.536118 0.450376 -0.713960
+vn -0.536118 0.450376 -0.713960
+vn -0.667704 0.210941 -0.713915
+vn -0.667704 0.210942 -0.713915
+vn -0.667704 0.210941 -0.713915
+vn -0.667704 0.210942 -0.713915
+vn -0.697648 -0.060621 -0.713871
+vn -0.697648 -0.060621 -0.713871
+vn -0.697648 -0.060621 -0.713871
+vn -0.697648 -0.060621 -0.713871
+vn -0.621389 -0.322973 -0.713838
+vn -0.621389 -0.322973 -0.713838
+vn -0.621389 -0.322973 -0.713838
+vn -0.621389 -0.322973 -0.713838
+vn -0.450537 -0.536173 -0.713817
+vn -0.450536 -0.536174 -0.713817
+vn -0.450537 -0.536173 -0.713817
+vn -0.450536 -0.536174 -0.713817
+vn -0.211103 -0.667761 -0.713814
+vn -0.211103 -0.667761 -0.713814
+vn -0.211103 -0.667761 -0.713814
+vn -0.211103 -0.667761 -0.713814
+vn 0.060462 -0.697702 -0.713832
+vn 0.060462 -0.697702 -0.713832
+vn 0.060462 -0.697702 -0.713832
+vn 0.060462 -0.697702 -0.713832
+vn 0.322812 -0.621443 -0.713863
+vn 0.322813 -0.621442 -0.713863
+vn 0.536121 -0.450376 0.713958
+vn 0.536120 -0.450378 0.713958
+vn 0.667705 -0.210943 0.713914
+vn 0.667705 -0.210943 0.713914
+vn 0.536120 -0.450378 0.713958
+vn 0.536121 -0.450376 0.713958
+vn 0.322922 -0.621228 0.714001
+vn 0.322923 -0.621227 0.714001
+vn 0.667705 -0.210943 0.713914
+vn 0.667705 -0.210943 0.713914
+vn 0.697649 0.060622 0.713870
+vn 0.697649 0.060620 0.713870
+vn 0.697649 0.060622 0.713870
+vn 0.697649 0.060620 0.713870
+vn 0.621394 0.322976 0.713832
+vn 0.621394 0.322975 0.713832
+vn 0.621394 0.322976 0.713832
+vn 0.621394 0.322975 0.713832
+vn 0.450540 0.536175 0.713814
+vn 0.450540 0.536175 0.713814
+vn 0.450540 0.536175 0.713814
+vn 0.450540 0.536175 0.713814
+vn 0.211103 0.667761 0.713814
+vn 0.211104 0.667761 0.713814
+vn 0.211103 0.667761 0.713814
+vn 0.211104 0.667761 0.713814
+vn -0.060462 0.697702 0.713832
+vn -0.060461 0.697702 0.713832
+vn -0.060462 0.697702 0.713832
+vn -0.060461 0.697702 0.713832
+vn -0.322813 0.621439 0.713867
+vn -0.322813 0.621439 0.713867
+vn -0.322813 0.621439 0.713867
+vn -0.322813 0.621439 0.713867
+vn -0.536009 0.450586 0.713909
+vn -0.536010 0.450585 0.713909
+vn -0.536009 0.450586 0.713909
+vn -0.536010 0.450585 0.713909
+vn -0.667594 0.211152 0.713956
+vn -0.667594 0.211151 0.713956
+vn -0.667594 0.211152 0.713956
+vn -0.667594 0.211151 0.713956
+vn -0.697536 -0.060413 0.713998
+vn -0.697536 -0.060413 0.713998
+vn -0.697536 -0.060413 0.713998
+vn -0.697536 -0.060413 0.713998
+vn -0.621278 -0.322763 0.714029
+vn -0.621279 -0.322762 0.714029
+vn -0.621278 -0.322763 0.714029
+vn -0.621279 -0.322762 0.714029
+vn -0.450427 -0.535960 0.714046
+vn -0.450427 -0.535960 0.714046
+vn -0.450427 -0.535960 0.714046
+vn -0.450427 -0.535960 0.714046
+vn -0.210993 -0.667548 0.714046
+vn -0.210993 -0.667548 0.714046
+vn -0.210993 -0.667548 0.714046
+vn -0.210993 -0.667548 0.714046
+vn 0.060571 -0.697489 0.714031
+vn 0.060569 -0.697490 0.714031
+vn 0.060571 -0.697489 0.714031
+vn 0.060569 -0.697490 0.714031
+vn 0.322923 -0.621227 0.714001
+vn 0.322922 -0.621228 0.714001
+vn -0.856700 0.515815 -0.000075
+vn -0.856700 0.515815 -0.000075
+vn -0.856700 0.515815 -0.000075
+vn -0.856700 0.515815 -0.000075
+vn -0.742651 -0.669679 0.000085
+vn -0.742651 -0.669679 0.000085
+vn -0.742651 -0.669679 0.000085
+vn -0.742651 -0.669679 0.000085
+vn -0.000008 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000006 0.000134 1.000000
+vn -0.000006 0.000134 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.000008 0.000135 1.000000
+vn -0.000007 0.000135 1.000000
+vn -0.244397 -0.969675 0.000129
+vn -0.244397 -0.969675 0.000129
+vn -0.244397 -0.969675 0.000129
+vn -0.244397 -0.969675 0.000129
+vn 0.071885 0.997413 -0.000134
+vn 0.071885 0.997413 -0.000134
+vn 0.071885 0.997413 -0.000134
+vn 0.071885 0.997413 -0.000134
+vn 0.847878 0.530192 -0.000066
+vn 0.847878 0.530192 -0.000066
+vn 0.847878 0.530192 -0.000066
+vn 0.847878 0.530192 -0.000066
+vn 0.856700 -0.515815 0.000076
+vn 0.856700 -0.515815 0.000076
+vn 0.856700 -0.515815 0.000076
+vn 0.856700 -0.515815 0.000076
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000008 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn -0.605787 0.364834 0.707049
+vn -0.605787 0.364834 0.707049
+vn -0.605787 0.364834 0.707049
+vn -0.605787 0.364834 0.707049
+vn -0.995405 -0.095756 0.000006
+vn -0.995405 -0.095756 0.000006
+vn -0.995405 -0.095756 0.000006
+vn -0.995405 -0.095756 0.000006
+vn -0.525138 -0.473439 0.707167
+vn -0.525138 -0.473439 0.707167
+vn -0.525138 -0.473439 0.707167
+vn -0.525138 -0.473439 0.707167
+vn -0.172819 -0.685572 0.707195
+vn -0.172819 -0.685572 0.707195
+vn -0.172819 -0.685572 0.707195
+vn -0.172819 -0.685572 0.707195
+vn -0.515813 -0.856701 0.000112
+vn -0.515813 -0.856701 0.000112
+vn -0.515813 -0.856701 0.000112
+vn -0.515813 -0.856701 0.000112
+vn -0.460399 0.887712 -0.000123
+vn -0.460399 0.887712 -0.000123
+vn -0.460399 0.887712 -0.000123
+vn -0.460399 0.887712 -0.000123
+vn 0.050827 0.705376 0.707008
+vn 0.050827 0.705376 0.707008
+vn 0.050827 0.705376 0.707008
+vn 0.050827 0.705376 0.707008
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.599536 0.374997 0.707060
+vn 0.599536 0.374997 0.707060
+vn 0.599536 0.374997 0.707060
+vn 0.599536 0.374997 0.707060
+vn 0.605772 -0.364640 0.707162
+vn 0.605772 -0.364640 0.707162
+vn 0.605772 -0.364640 0.707162
+vn 0.605772 -0.364640 0.707162
+vn 0.999964 0.008431 0.000005
+vn 0.999964 0.008431 0.000005
+vn 0.999964 0.008431 0.000005
+vn 0.999964 0.008431 0.000005
+vn 0.605780 -0.364830 -0.707057
+vn 0.605780 -0.364830 -0.707057
+vn 0.605780 -0.364830 -0.707057
+vn 0.605780 -0.364830 -0.707057
+vn 0.599548 0.374807 -0.707151
+vn 0.599548 0.374807 -0.707151
+vn 0.599548 0.374807 -0.707151
+vn 0.599548 0.374807 -0.707151
+vn 0.050836 0.705183 -0.707201
+vn 0.050836 0.705183 -0.707201
+vn 0.050836 0.705183 -0.707201
+vn 0.050836 0.705183 -0.707201
+vn -0.605772 0.364640 -0.707162
+vn -0.605772 0.364640 -0.707162
+vn -0.605772 0.364640 -0.707162
+vn -0.605772 0.364640 -0.707162
+vn -0.525129 -0.473629 -0.707047
+vn -0.525129 -0.473629 -0.707047
+vn -0.525129 -0.473629 -0.707047
+vn -0.525129 -0.473629 -0.707047
+vn -0.172810 -0.685761 -0.707014
+vn -0.172810 -0.685761 -0.707014
+vn -0.172810 -0.685761 -0.707014
+vn -0.172810 -0.685761 -0.707014
+vn 0.381086 -0.924540 0.000128
+vn 0.381086 -0.924540 0.000128
+vn 0.381086 -0.924540 0.000128
+vn 0.381086 -0.924540 0.000128
+vn -0.834870 -0.080239 0.544567
+vn -0.834870 -0.080239 0.544567
+vn -0.834870 -0.080239 0.544567
+vn -0.354273 -0.588288 0.726917
+vn -0.354273 -0.588288 0.726917
+vn -0.354273 -0.588288 0.726917
+vn -0.354273 -0.588288 0.726917
+vn -0.385987 0.744290 0.545020
+vn -0.385987 0.744290 0.545020
+vn -0.385987 0.744290 0.545020
+vn 0.334019 0.554879 0.761932
+vn 0.334019 0.554879 0.761932
+vn 0.334019 0.554879 0.761932
+vn 0.334019 0.554879 0.761932
+vn 0.838314 0.007150 0.545140
+vn 0.838314 0.007150 0.545140
+vn 0.838314 0.007150 0.545140
+vn 0.838322 0.006993 -0.545131
+vn 0.838322 0.006993 -0.545131
+vn 0.838322 0.006993 -0.545131
+vn 0.334030 0.554672 -0.762078
+vn 0.334030 0.554672 -0.762078
+vn 0.334030 0.554672 -0.762078
+vn 0.334030 0.554672 -0.762078
+vn -0.385961 0.744146 -0.545235
+vn -0.385961 0.744146 -0.545235
+vn -0.385961 0.744146 -0.545235
+vn -0.834862 -0.080386 -0.544558
+vn -0.834862 -0.080386 -0.544558
+vn -0.834862 -0.080386 -0.544558
+vn -0.354254 -0.588485 -0.726766
+vn -0.354254 -0.588485 -0.726766
+vn -0.354254 -0.588485 -0.726766
+vn -0.354254 -0.588485 -0.726766
+vn 0.319618 -0.775356 0.544672
+vn 0.319618 -0.775356 0.544672
+vn 0.319618 -0.775356 0.544672
+vn 0.319623 -0.775499 -0.544465
+vn 0.319623 -0.775499 -0.544465
+vn 0.319623 -0.775499 -0.544465
+vn 0.988881 -0.148707 0.000027
+vn 0.970515 0.241042 -0.000026
+vn 0.988881 -0.148707 0.000027
+vn 0.970515 0.241042 -0.000026
+vn 0.970515 0.241042 -0.000026
+vn 0.804396 0.594094 -0.000074
+vn 0.970515 0.241042 -0.000026
+vn 0.804396 0.594093 -0.000074
+vn 0.804396 0.594094 -0.000074
+vn 0.515815 0.856700 -0.000112
+vn 0.804396 0.594093 -0.000074
+vn 0.515815 0.856700 -0.000112
+vn 0.515815 0.856700 -0.000112
+vn 0.148706 0.988881 -0.000133
+vn 0.515815 0.856700 -0.000112
+vn 0.148706 0.988881 -0.000133
+vn 0.148706 0.988881 -0.000133
+vn -0.241042 0.970515 -0.000133
+vn 0.148706 0.988881 -0.000133
+vn -0.241042 0.970515 -0.000133
+vn -0.241042 0.970515 -0.000133
+vn -0.594092 0.804397 -0.000113
+vn -0.241042 0.970515 -0.000133
+vn -0.594092 0.804397 -0.000113
+vn -0.594092 0.804397 -0.000113
+vn -0.856700 0.515816 -0.000075
+vn -0.594092 0.804397 -0.000113
+vn -0.856699 0.515816 -0.000075
+vn -0.856700 0.515816 -0.000075
+vn -0.988881 0.148707 -0.000027
+vn -0.856699 0.515816 -0.000075
+vn -0.988881 0.148706 -0.000027
+vn -0.988881 0.148707 -0.000027
+vn -0.970514 -0.241044 0.000026
+vn -0.988881 0.148706 -0.000027
+vn -0.970514 -0.241044 0.000026
+vn -0.970514 -0.241044 0.000026
+vn -0.804396 -0.594094 0.000074
+vn -0.970514 -0.241044 0.000026
+vn -0.804396 -0.594094 0.000074
+vn -0.804396 -0.594094 0.000074
+vn -0.515816 -0.856700 0.000112
+vn -0.804396 -0.594094 0.000074
+vn -0.515816 -0.856700 0.000112
+vn -0.515816 -0.856700 0.000112
+vn -0.148706 -0.988881 0.000133
+vn -0.515816 -0.856700 0.000112
+vn -0.148706 -0.988881 0.000133
+vn -0.148706 -0.988881 0.000133
+vn 0.241041 -0.970515 0.000133
+vn -0.148706 -0.988881 0.000133
+vn 0.241041 -0.970515 0.000133
+vn 0.241041 -0.970515 0.000133
+vn 0.594093 -0.804396 0.000113
+vn 0.241041 -0.970515 0.000133
+vn 0.594093 -0.804397 0.000113
+vn 0.594093 -0.804396 0.000113
+vn 0.856699 -0.515816 0.000075
+vn 0.594093 -0.804397 0.000113
+vn 0.856700 -0.515816 0.000075
+vn 0.856699 -0.515816 0.000075
+vn 0.988881 -0.148707 0.000027
+vn 0.856700 -0.515816 0.000075
+vn 0.988881 -0.148707 0.000027
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn 0.000007 -0.000135 -1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn -0.000007 0.000134 1.000000
+vn 0.692440 -0.104225 -0.713908
+vn 0.692440 -0.104224 -0.713908
+vn 0.599882 -0.361280 -0.713875
+vn 0.599883 -0.361280 -0.713875
+vn 0.692440 -0.104224 -0.713908
+vn 0.692440 -0.104225 -0.713908
+vn 0.679575 0.168685 -0.713949
+vn 0.679575 0.168684 -0.713949
+vn 0.679575 0.168685 -0.713949
+vn 0.679575 0.168684 -0.713949
+vn 0.563252 0.415894 -0.713989
+vn 0.563252 0.415893 -0.713989
+vn 0.563252 0.415894 -0.713989
+vn 0.563252 0.415893 -0.713989
+vn 0.361183 0.599774 -0.714015
+vn 0.361183 0.599774 -0.714015
+vn 0.361183 0.599774 -0.714015
+vn 0.361183 0.599774 -0.714015
+vn 0.104130 0.692332 -0.714026
+vn 0.104130 0.692332 -0.714026
+vn 0.104130 0.692332 -0.714026
+vn 0.104130 0.692332 -0.714026
+vn -0.168776 0.679471 -0.714027
+vn -0.168776 0.679471 -0.714027
+vn -0.168776 0.679471 -0.714027
+vn -0.168776 0.679471 -0.714027
+vn -0.415985 0.563153 -0.714013
+vn -0.415985 0.563153 -0.714013
+vn -0.415985 0.563153 -0.714013
+vn -0.415985 0.563153 -0.714013
+vn -0.599865 0.361083 -0.713989
+vn -0.599865 0.361084 -0.713989
+vn -0.599865 0.361083 -0.713989
+vn -0.599865 0.361084 -0.713989
+vn -0.692417 0.104030 -0.713958
+vn -0.692417 0.104030 -0.713958
+vn -0.692417 0.104030 -0.713958
+vn -0.692417 0.104030 -0.713958
+vn -0.679560 -0.168877 -0.713918
+vn -0.679559 -0.168878 -0.713918
+vn -0.679560 -0.168877 -0.713918
+vn -0.679559 -0.168878 -0.713918
+vn -0.563246 -0.416090 -0.713878
+vn -0.563246 -0.416091 -0.713878
+vn -0.563246 -0.416090 -0.713878
+vn -0.563246 -0.416091 -0.713878
+vn -0.361178 -0.599972 -0.713852
+vn -0.361178 -0.599972 -0.713852
+vn -0.361178 -0.599972 -0.713852
+vn -0.361178 -0.599972 -0.713852
+vn -0.104122 -0.692524 -0.713841
+vn -0.104121 -0.692524 -0.713841
+vn -0.104122 -0.692524 -0.713841
+vn -0.104121 -0.692524 -0.713841
+vn 0.168785 -0.679660 -0.713845
+vn 0.168784 -0.679660 -0.713845
+vn 0.168785 -0.679660 -0.713845
+vn 0.168784 -0.679660 -0.713845
+vn 0.415996 -0.563343 -0.713857
+vn 0.415996 -0.563343 -0.713857
+vn 0.415996 -0.563343 -0.713857
+vn 0.415996 -0.563343 -0.713857
+vn 0.599883 -0.361280 -0.713875
+vn 0.599882 -0.361280 -0.713875
+vn 0.692423 -0.104030 0.713953
+vn 0.692423 -0.104031 0.713953
+vn 0.679561 0.168878 0.713916
+vn 0.679562 0.168878 0.713916
+vn 0.692423 -0.104031 0.713953
+vn 0.692423 -0.104030 0.713953
+vn 0.599868 -0.361088 0.713985
+vn 0.599869 -0.361087 0.713985
+vn 0.679561 0.168878 0.713916
+vn 0.679562 0.168878 0.713916
+vn 0.563244 0.416090 0.713880
+vn 0.563245 0.416090 0.713880
+vn 0.563244 0.416090 0.713880
+vn 0.563245 0.416090 0.713880
+vn 0.361179 0.599970 0.713853
+vn 0.361179 0.599971 0.713853
+vn 0.361179 0.599970 0.713853
+vn 0.361179 0.599971 0.713853
+vn 0.104123 0.692527 0.713838
+vn 0.104122 0.692527 0.713838
+vn 0.104123 0.692527 0.713838
+vn 0.104122 0.692527 0.713838
+vn -0.168786 0.679667 0.713837
+vn -0.168787 0.679667 0.713837
+vn -0.168786 0.679667 0.713837
+vn -0.168787 0.679667 0.713837
+vn -0.416001 0.563349 0.713850
+vn -0.416002 0.563348 0.713850
+vn -0.416001 0.563349 0.713850
+vn -0.416002 0.563348 0.713850
+vn -0.599881 0.361278 0.713878
+vn -0.599881 0.361277 0.713878
+vn -0.599881 0.361278 0.713878
+vn -0.599881 0.361277 0.713878
+vn -0.692433 0.104224 0.713915
+vn -0.692432 0.104224 0.713915
+vn -0.692433 0.104224 0.713915
+vn -0.692432 0.104224 0.713915
+vn -0.679572 -0.168685 0.713952
+vn -0.679572 -0.168685 0.713952
+vn -0.679572 -0.168685 0.713952
+vn -0.679572 -0.168685 0.713952
+vn -0.563254 -0.415895 0.713986
+vn -0.563254 -0.415896 0.713986
+vn -0.563254 -0.415895 0.713986
+vn -0.563254 -0.415896 0.713986
+vn -0.361184 -0.599775 0.714014
+vn -0.361184 -0.599775 0.714014
+vn -0.361184 -0.599775 0.714014
+vn -0.361184 -0.599775 0.714014
+vn -0.104129 -0.692332 0.714027
+vn -0.104129 -0.692332 0.714027
+vn -0.104129 -0.692332 0.714027
+vn -0.104129 -0.692332 0.714027
+vn 0.168775 -0.679473 0.714025
+vn 0.168775 -0.679473 0.714025
+vn 0.168775 -0.679473 0.714025
+vn 0.168775 -0.679473 0.714025
+vn 0.415988 -0.563154 0.714011
+vn 0.415988 -0.563154 0.714011
+vn 0.415988 -0.563154 0.714011
+vn 0.415988 -0.563154 0.714011
+vn 0.599869 -0.361087 0.713985
+vn 0.599868 -0.361088 0.713985
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222248 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222248 -0.000003
+vn 0.974991 -0.222246 -0.000006
+vn 0.974991 -0.222246 -0.000006
+vn 0.974990 -0.222248 -0.000006
+vn 0.974991 -0.222243 -0.000003
+vn 0.974990 -0.222251 -0.000002
+vn 0.974991 -0.222243 -0.000003
+vn 0.974991 -0.222246 -0.000006
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222251 -0.000002
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222250 -0.000006
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222250 -0.000006
+vn 0.974990 -0.222250 -0.000003
+vn 0.974990 -0.222249 -0.000004
+vn 0.974990 -0.222250 -0.000003
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222246 -0.000006
+vn 0.974990 -0.222249 -0.000004
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222248 -0.000006
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222251 -0.000002
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222243 -0.000003
+vn 0.974990 -0.222248 -0.000006
+vn 0.974991 -0.222243 -0.000003
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222250 -0.000006
+vn 0.974990 -0.222250 -0.000003
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000004
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222250 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974990 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000004
+vn 0.974990 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000003
+vn 0.974989 -0.222251 -0.000004
+vn 0.974989 -0.222251 -0.000004
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.222246 0.974991 -0.000115
+vn 0.000032 0.000110 1.000000
+vn 0.000032 0.000110 1.000000
+vn 0.000032 0.000110 1.000000
+vn 0.000032 0.000110 1.000000
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.222245 -0.974991 0.000115
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.923040 0.384703 -0.000069
+vn 0.923040 0.384703 -0.000069
+vn 0.923040 0.384703 -0.000069
+vn 0.923040 0.384703 -0.000069
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.846577 -0.532266 0.000083
+vn -0.846577 -0.532266 0.000083
+vn -0.846577 -0.532266 0.000083
+vn -0.846577 -0.532266 0.000083
+vn -0.157132 -0.689336 0.707196
+vn -0.157132 -0.689336 0.707196
+vn -0.157132 -0.689336 0.707196
+vn -0.157132 -0.689336 0.707196
+vn -0.689400 0.157232 0.707111
+vn -0.689400 0.157232 0.707111
+vn -0.689400 0.157232 0.707111
+vn -0.689399 0.157231 0.707112
+vn -0.689398 0.157231 0.707113
+vn -0.689400 0.157232 0.707111
+vn -0.689399 0.157231 0.707112
+vn 0.652847 -0.148729 0.742745
+vn 0.652847 -0.148729 0.742745
+vn 0.652847 -0.148729 0.742745
+vn 0.652847 -0.148729 0.742745
+vn 0.311683 -0.950186 0.000097
+vn 0.311683 -0.950186 0.000097
+vn 0.311683 -0.950186 0.000097
+vn 0.311683 -0.950186 0.000097
+vn -0.689397 0.157231 0.707114
+vn -0.689398 0.157231 0.707113
+vn -0.689397 0.157231 0.707114
+vn -0.689399 0.157231 0.707112
+vn 0.157175 0.689507 0.707019
+vn 0.157175 0.689507 0.707019
+vn 0.157175 0.689507 0.707019
+vn 0.157175 0.689507 0.707019
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn 0.652708 0.272104 0.707059
+vn 0.652708 0.272104 0.707059
+vn 0.652708 0.272104 0.707059
+vn 0.652708 0.272104 0.707059
+vn 0.644227 0.764834 -0.000103
+vn 0.644227 0.764835 -0.000103
+vn 0.644227 0.764835 -0.000103
+vn 0.644227 0.764835 -0.000103
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn 0.157134 0.689344 -0.707188
+vn 0.157134 0.689344 -0.707188
+vn 0.157134 0.689344 -0.707188
+vn 0.157134 0.689344 -0.707188
+vn 0.652662 0.271945 -0.707162
+vn 0.652662 0.271945 -0.707162
+vn 0.652662 0.271945 -0.707162
+vn 0.652662 0.271945 -0.707162
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.689443 0.157075 -0.707104
+vn -0.157173 -0.689499 -0.707027
+vn -0.157173 -0.689499 -0.707028
+vn -0.157173 -0.689499 -0.707027
+vn -0.157173 -0.689499 -0.707028
+vn 0.652805 -0.148894 -0.742749
+vn 0.652805 -0.148894 -0.742749
+vn 0.652805 -0.148894 -0.742749
+vn 0.652805 -0.148894 -0.742749
+vn 0.986429 0.164189 -0.000046
+vn 0.986429 0.164189 -0.000046
+vn 0.986429 0.164189 -0.000046
+vn 0.986429 0.164189 -0.000046
+vn -0.691202 -0.434529 0.577429
+vn -0.691202 -0.434529 0.577429
+vn -0.691202 -0.434529 0.577429
+vn 0.178311 -0.723964 0.666395
+vn 0.178311 -0.723964 0.666395
+vn 0.178311 -0.723964 0.666395
+vn -0.434574 0.691291 0.577289
+vn -0.434574 0.691291 0.577289
+vn -0.434574 0.691291 0.577289
+vn 0.535990 0.636390 0.554727
+vn 0.535990 0.636390 0.554727
+vn 0.535990 0.636390 0.554727
+vn -0.434613 0.691167 -0.577408
+vn -0.434613 0.691167 -0.577408
+vn -0.434613 0.691167 -0.577408
+vn 0.535960 0.636255 -0.554911
+vn 0.535960 0.636255 -0.554911
+vn 0.535960 0.636255 -0.554911
+vn -0.691243 -0.434660 -0.577282
+vn -0.691243 -0.434660 -0.577282
+vn -0.691243 -0.434660 -0.577282
+vn 0.178268 -0.724115 -0.666242
+vn 0.178268 -0.724115 -0.666242
+vn 0.178268 -0.724115 -0.666242
+vn 0.737209 0.165551 0.655070
+vn 0.737209 0.165551 0.655070
+vn 0.737209 0.165551 0.655070
+vn 0.737175 0.165395 -0.655147
+vn 0.737175 0.165395 -0.655147
+vn 0.737175 0.165395 -0.655147
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.000039 0.000109 1.000000
+vn 0.222241 0.974992 -0.000115
+vn 0.222241 0.974992 -0.000115
+vn 0.222241 0.974992 -0.000115
+vn 0.222241 0.974992 -0.000115
+vn -0.157174 -0.689494 -0.707032
+vn -0.157174 -0.689494 -0.707032
+vn -0.157174 -0.689494 -0.707032
+vn -0.157174 -0.689494 -0.707032
+vn 0.398572 -0.917137 0.000091
+vn 0.398572 -0.917137 0.000091
+vn 0.398572 -0.917137 0.000091
+vn 0.398572 -0.917137 0.000091
+vn 0.570570 -0.129425 -0.810987
+vn 0.570570 -0.129425 -0.810987
+vn 0.570570 -0.129425 -0.810987
+vn 0.570570 -0.129425 -0.810987
+vn -0.157142 -0.689342 0.707188
+vn -0.157142 -0.689342 0.707188
+vn -0.157142 -0.689342 0.707188
+vn -0.157142 -0.689342 0.707188
+vn 0.570612 -0.129244 0.810986
+vn 0.570612 -0.129244 0.810986
+vn 0.570612 -0.129244 0.810986
+vn 0.570612 -0.129244 0.810986
+vn 0.157129 0.689341 -0.707191
+vn 0.157129 0.689341 -0.707191
+vn 0.157129 0.689341 -0.707191
+vn 0.157129 0.689341 -0.707191
+vn 0.744084 0.668086 -0.000095
+vn 0.744084 0.668086 -0.000095
+vn 0.744084 0.668086 -0.000095
+vn 0.744084 0.668086 -0.000095
+vn 0.157182 0.689497 0.707027
+vn 0.157182 0.689497 0.707027
+vn 0.157182 0.689497 0.707027
+vn 0.157182 0.689497 0.707027
+vn 0.759212 0.650844 -0.000094
+vn 0.759212 0.650844 -0.000094
+vn 0.759212 0.650844 -0.000094
+vn 0.759212 0.650844 -0.000094
+vn 0.574139 -0.129892 0.808389
+vn 0.574139 -0.129892 0.808389
+vn 0.574139 -0.129892 0.808389
+vn 0.574139 -0.129892 0.808389
+vn 0.574101 -0.130074 -0.808387
+vn 0.574101 -0.130074 -0.808387
+vn 0.574101 -0.130074 -0.808387
+vn 0.574101 -0.130074 -0.808387
+vn 0.385552 -0.922686 0.000092
+vn 0.385551 -0.922687 0.000092
+vn 0.385552 -0.922686 0.000092
+vn 0.385552 -0.922686 0.000092
+vn 0.136497 -0.724359 -0.675776
+vn 0.136497 -0.724359 -0.675776
+vn 0.136497 -0.724359 -0.675776
+vn 0.136532 -0.724221 0.675916
+vn 0.136532 -0.724221 0.675916
+vn 0.136532 -0.724221 0.675916
+vn 0.445136 0.589608 -0.673956
+vn 0.445136 0.589608 -0.673956
+vn 0.445136 0.589608 -0.673956
+vn 0.445165 0.589761 0.673803
+vn 0.445165 0.589761 0.673803
+vn 0.445165 0.589761 0.673803
+vn 0.000026 0.000112 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000026 0.000112 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000033 0.000110 1.000000
+vn 0.000033 0.000110 1.000000
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn 0.222250 0.974990 -0.000114
+vn -0.000026 -0.000112 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000026 -0.000112 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000033 -0.000110 -1.000000
+vn -0.000033 -0.000110 -1.000000
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.222831 -0.974857 0.000115
+vn -0.974990 0.222249 0.000005
+vn -0.974990 0.222249 0.000005
+vn -0.974990 0.222249 0.000005
+vn -0.974990 0.222249 0.000005
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000007
+vn 0.974990 -0.222249 -0.000007
+vn 0.533570 -0.845756 0.000076
+vn 0.533570 -0.845756 0.000076
+vn 0.533570 -0.845756 0.000076
+vn 0.533570 -0.845756 0.000076
+vn 0.689444 -0.157076 0.707102
+vn 0.689444 -0.157076 0.707102
+vn 0.689444 -0.157076 0.707102
+vn 0.689444 -0.157076 0.707102
+vn 0.846575 0.532269 -0.000091
+vn 0.846575 0.532269 -0.000091
+vn 0.846575 0.532269 -0.000091
+vn 0.846575 0.532269 -0.000091
+vn 0.689402 -0.157232 -0.707109
+vn 0.689402 -0.157232 -0.707109
+vn 0.689402 -0.157232 -0.707109
+vn 0.689402 -0.157232 -0.707109
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.222253 0.974989 -0.000115
+vn 0.222253 0.974989 -0.000115
+vn 0.222253 0.974989 -0.000115
+vn 0.222253 0.974989 -0.000115
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.222254 -0.974989 0.000115
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.974991 -0.222245 -0.000003
+vn 0.532272 -0.846573 0.000079
+vn 0.532272 -0.846573 0.000079
+vn 0.532272 -0.846573 0.000079
+vn 0.532272 -0.846573 0.000079
+vn 0.689434 -0.157077 0.707112
+vn 0.689434 -0.157077 0.707112
+vn 0.689434 -0.157077 0.707112
+vn 0.689434 -0.157077 0.707112
+vn 0.846575 0.532270 -0.000083
+vn 0.846575 0.532270 -0.000083
+vn 0.846575 0.532270 -0.000083
+vn 0.846575 0.532270 -0.000083
+vn 0.689399 -0.157232 -0.707111
+vn 0.689399 -0.157232 -0.707111
+vn 0.689399 -0.157232 -0.707111
+vn 0.689399 -0.157232 -0.707111
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.222242 0.974992 -0.000115
+vn 0.222242 0.974992 -0.000115
+vn 0.222242 0.974992 -0.000115
+vn 0.222242 0.974992 -0.000115
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.222245 -0.974991 0.000114
+vn -0.222245 -0.974991 0.000114
+vn -0.222245 -0.974991 0.000114
+vn -0.222245 -0.974991 0.000114
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.532270 -0.846575 0.000079
+vn 0.532270 -0.846575 0.000079
+vn 0.532270 -0.846575 0.000079
+vn 0.532270 -0.846575 0.000079
+vn 0.689447 -0.157076 0.707100
+vn 0.689447 -0.157076 0.707100
+vn 0.689447 -0.157076 0.707100
+vn 0.689447 -0.157076 0.707100
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.689410 -0.157236 -0.707101
+vn 0.689410 -0.157236 -0.707101
+vn 0.689410 -0.157236 -0.707101
+vn 0.689410 -0.157236 -0.707101
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.000026 0.000114 1.000000
+vn 0.222252 0.974989 -0.000115
+vn 0.222252 0.974989 -0.000115
+vn 0.222252 0.974989 -0.000115
+vn 0.222252 0.974989 -0.000115
+vn -0.000034 -0.000108 -1.000000
+vn -0.000034 -0.000108 -1.000000
+vn -0.000034 -0.000108 -1.000000
+vn -0.000034 -0.000108 -1.000000
+vn -0.222252 -0.974989 0.000115
+vn -0.222252 -0.974989 0.000115
+vn -0.222252 -0.974989 0.000115
+vn -0.222252 -0.974989 0.000115
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn -0.974991 0.222245 0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.974989 -0.222252 -0.000003
+vn 0.532275 -0.846571 0.000079
+vn 0.532275 -0.846571 0.000079
+vn 0.532275 -0.846571 0.000079
+vn 0.532275 -0.846571 0.000079
+vn 0.689453 -0.157074 0.707095
+vn 0.689453 -0.157074 0.707095
+vn 0.689453 -0.157074 0.707095
+vn 0.689453 -0.157074 0.707095
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.846575 0.532269 -0.000083
+vn 0.689406 -0.157229 -0.707106
+vn 0.689406 -0.157229 -0.707106
+vn 0.689406 -0.157229 -0.707106
+vn 0.689406 -0.157229 -0.707106
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.000034 0.000108 1.000000
+vn 0.222247 0.974990 -0.000114
+vn 0.222247 0.974990 -0.000114
+vn 0.222247 0.974990 -0.000114
+vn 0.222247 0.974990 -0.000114
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.222243 -0.974991 0.000115
+vn -0.222243 -0.974991 0.000115
+vn -0.222243 -0.974991 0.000115
+vn -0.222243 -0.974991 0.000115
+vn -0.974989 0.222255 0.000003
+vn -0.974989 0.222255 0.000003
+vn -0.974989 0.222255 0.000003
+vn -0.974989 0.222255 0.000003
+vn 0.974992 -0.222242 -0.000002
+vn 0.974992 -0.222242 -0.000002
+vn 0.974992 -0.222242 -0.000002
+vn 0.974992 -0.222242 -0.000002
+vn 0.532261 -0.846581 0.000079
+vn 0.532261 -0.846581 0.000079
+vn 0.532261 -0.846581 0.000079
+vn 0.532261 -0.846581 0.000079
+vn 0.689444 -0.157078 0.707103
+vn 0.689444 -0.157078 0.707103
+vn 0.689444 -0.157078 0.707103
+vn 0.689444 -0.157078 0.707103
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.689393 -0.157226 -0.707120
+vn 0.689393 -0.157226 -0.707119
+vn 0.689393 -0.157226 -0.707120
+vn 0.689393 -0.157226 -0.707119
+vn 0.000026 0.000115 1.000000
+vn 0.000026 0.000115 1.000000
+vn 0.000026 0.000115 1.000000
+vn 0.000026 0.000115 1.000000
+vn 0.222245 0.974991 -0.000114
+vn 0.222245 0.974991 -0.000114
+vn 0.222245 0.974991 -0.000114
+vn 0.222245 0.974991 -0.000114
+vn -0.000024 -0.000105 -1.000000
+vn -0.000024 -0.000105 -1.000000
+vn -0.000024 -0.000105 -1.000000
+vn -0.000024 -0.000105 -1.000000
+vn -0.222246 -0.974991 0.000115
+vn -0.222246 -0.974991 0.000115
+vn -0.222246 -0.974991 0.000115
+vn -0.222246 -0.974991 0.000115
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000003
+vn 0.974991 -0.222246 -0.000004
+vn 0.974991 -0.222246 -0.000004
+vn 0.974991 -0.222246 -0.000004
+vn 0.974991 -0.222246 -0.000004
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.689440 -0.157072 0.707107
+vn 0.689440 -0.157072 0.707107
+vn 0.689440 -0.157072 0.707107
+vn 0.689440 -0.157072 0.707107
+vn 0.846578 0.532264 -0.000083
+vn 0.846578 0.532264 -0.000083
+vn 0.846578 0.532264 -0.000083
+vn 0.846578 0.532264 -0.000083
+vn 0.689405 -0.157230 -0.707106
+vn 0.689405 -0.157230 -0.707106
+vn 0.689405 -0.157230 -0.707106
+vn 0.689405 -0.157230 -0.707106
+vn 0.085025 0.373010 -0.923923
+vn 0.157134 0.689342 -0.707189
+vn 0.085024 0.373009 -0.923924
+vn 0.157134 0.689343 -0.707188
+vn 0.157134 0.689342 -0.707189
+vn 0.205321 0.900730 -0.382791
+vn 0.157134 0.689343 -0.707188
+vn 0.205321 0.900730 -0.382791
+vn 0.205321 0.900730 -0.382791
+vn 0.222249 0.974990 -0.000115
+vn 0.205321 0.900730 -0.382791
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.205343 0.900816 0.382577
+vn 0.222249 0.974990 -0.000115
+vn 0.205343 0.900815 0.382578
+vn 0.205343 0.900816 0.382577
+vn 0.157174 0.689502 0.707024
+vn 0.205343 0.900815 0.382578
+vn 0.157174 0.689502 0.707024
+vn 0.157174 0.689502 0.707024
+vn 0.085077 0.373217 0.923835
+vn 0.157174 0.689502 0.707024
+vn 0.085077 0.373217 0.923835
+vn 0.085077 0.373217 0.923835
+vn 0.000028 0.000111 1.000000
+vn 0.085077 0.373217 0.923835
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.085025 -0.373011 0.923923
+vn 0.000028 0.000111 1.000000
+vn -0.085025 -0.373011 0.923923
+vn -0.085025 -0.373011 0.923923
+vn -0.157133 -0.689345 0.707186
+vn -0.085025 -0.373011 0.923923
+vn -0.157133 -0.689345 0.707186
+vn -0.157133 -0.689345 0.707186
+vn -0.205320 -0.900730 0.382791
+vn -0.157133 -0.689345 0.707186
+vn -0.205320 -0.900731 0.382790
+vn -0.205320 -0.900730 0.382791
+vn -0.222249 -0.974990 0.000117
+vn -0.205320 -0.900731 0.382790
+vn -0.222249 -0.974990 0.000118
+vn -0.222249 -0.974990 0.000117
+vn -0.205341 -0.900815 -0.382580
+vn -0.222249 -0.974990 0.000118
+vn -0.205341 -0.900815 -0.382581
+vn -0.205341 -0.900815 -0.382580
+vn -0.157173 -0.689502 -0.707024
+vn -0.205341 -0.900815 -0.382581
+vn -0.157173 -0.689502 -0.707025
+vn -0.157173 -0.689502 -0.707024
+vn -0.085078 -0.373216 -0.923835
+vn -0.157173 -0.689502 -0.707025
+vn -0.085078 -0.373217 -0.923835
+vn -0.085078 -0.373216 -0.923835
+vn -0.000029 -0.000110 -1.000000
+vn -0.085078 -0.373217 -0.923835
+vn -0.000029 -0.000110 -1.000000
+vn -0.000029 -0.000110 -1.000000
+vn 0.085025 0.373010 -0.923923
+vn -0.000029 -0.000110 -1.000000
+vn 0.085024 0.373009 -0.923924
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222249 0.000003
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222250 -0.000002
+vn 0.974990 -0.222247 -0.000007
+vn 0.974990 -0.222250 -0.000002
+vn 0.974990 -0.222250 -0.000002
+vn 0.974990 -0.222251 0.000000
+vn 0.974990 -0.222250 -0.000002
+vn 0.974990 -0.222251 0.000000
+vn 0.974990 -0.222251 0.000000
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222251 0.000000
+vn 0.974991 -0.222246 -0.000003
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222251 -0.000005
+vn 0.974990 -0.222249 -0.000006
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222246 -0.000007
+vn 0.974990 -0.222249 -0.000006
+vn 0.974991 -0.222246 -0.000007
+vn 0.974991 -0.222246 -0.000007
+vn 0.974992 -0.222241 -0.000009
+vn 0.974991 -0.222246 -0.000007
+vn 0.974992 -0.222241 -0.000009
+vn 0.974992 -0.222241 -0.000009
+vn 0.974992 -0.222241 -0.000006
+vn 0.974992 -0.222241 -0.000009
+vn 0.974992 -0.222241 -0.000006
+vn 0.974992 -0.222241 -0.000006
+vn 0.974990 -0.222247 -0.000003
+vn 0.974992 -0.222241 -0.000006
+vn 0.974990 -0.222247 -0.000003
+vn 0.974990 -0.222247 -0.000003
+vn 0.974991 -0.222245 -0.000004
+vn 0.974990 -0.222247 -0.000003
+vn 0.974991 -0.222245 -0.000004
+vn 0.974991 -0.222245 -0.000004
+vn 0.974990 -0.222248 -0.000004
+vn 0.974991 -0.222245 -0.000004
+vn 0.974990 -0.222248 -0.000004
+vn 0.974990 -0.222248 -0.000004
+vn 0.974989 -0.222252 -0.000007
+vn 0.974990 -0.222248 -0.000004
+vn 0.974989 -0.222252 -0.000007
+vn 0.974989 -0.222252 -0.000007
+vn 0.974990 -0.222249 -0.000008
+vn 0.974989 -0.222252 -0.000007
+vn 0.974990 -0.222249 -0.000008
+vn 0.974990 -0.222249 -0.000008
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222249 -0.000008
+vn 0.974990 -0.222247 -0.000005
+vn -0.085013 -0.373014 0.923923
+vn -0.157128 -0.689348 0.707185
+vn -0.085012 -0.373011 0.923924
+vn -0.157128 -0.689345 0.707187
+vn -0.157128 -0.689348 0.707185
+vn -0.205317 -0.900730 0.382792
+vn -0.157128 -0.689345 0.707187
+vn -0.205317 -0.900731 0.382792
+vn -0.205317 -0.900730 0.382792
+vn -0.222245 -0.974991 0.000115
+vn -0.205317 -0.900731 0.382792
+vn -0.222245 -0.974991 0.000116
+vn -0.222245 -0.974991 0.000115
+vn -0.205344 -0.900816 -0.382577
+vn -0.222245 -0.974991 0.000116
+vn -0.205345 -0.900816 -0.382575
+vn -0.205344 -0.900816 -0.382577
+vn -0.157180 -0.689498 -0.707027
+vn -0.205345 -0.900816 -0.382575
+vn -0.157181 -0.689499 -0.707026
+vn -0.157180 -0.689498 -0.707027
+vn -0.085079 -0.373216 -0.923835
+vn -0.157181 -0.689499 -0.707026
+vn -0.085080 -0.373218 -0.923834
+vn -0.085079 -0.373216 -0.923835
+vn -0.000026 -0.000108 -1.000000
+vn -0.085080 -0.373218 -0.923834
+vn -0.000027 -0.000111 -1.000000
+vn -0.000026 -0.000108 -1.000000
+vn 0.085021 0.373011 -0.923923
+vn -0.000027 -0.000111 -1.000000
+vn 0.085022 0.373015 -0.923922
+vn 0.085021 0.373011 -0.923923
+vn 0.157123 0.689345 -0.707189
+vn 0.085022 0.373015 -0.923922
+vn 0.157123 0.689347 -0.707187
+vn 0.157123 0.689345 -0.707189
+vn 0.205318 0.900733 -0.382786
+vn 0.157123 0.689347 -0.707187
+vn 0.205318 0.900730 -0.382792
+vn 0.205318 0.900733 -0.382786
+vn 0.222258 0.974988 -0.000116
+vn 0.205318 0.900730 -0.382792
+vn 0.222258 0.974988 -0.000117
+vn 0.222258 0.974988 -0.000116
+vn 0.205346 0.900816 0.382575
+vn 0.222258 0.974988 -0.000117
+vn 0.205346 0.900815 0.382577
+vn 0.205346 0.900816 0.382575
+vn 0.157176 0.689500 0.707026
+vn 0.205346 0.900815 0.382577
+vn 0.157177 0.689502 0.707024
+vn 0.157176 0.689500 0.707026
+vn 0.085099 0.373210 0.923836
+vn 0.157177 0.689502 0.707024
+vn 0.085099 0.373211 0.923835
+vn 0.085099 0.373210 0.923836
+vn 0.000053 0.000108 1.000000
+vn 0.085099 0.373211 0.923835
+vn 0.000053 0.000106 1.000000
+vn 0.000053 0.000108 1.000000
+vn -0.085013 -0.373014 0.923923
+vn 0.000053 0.000106 1.000000
+vn -0.085012 -0.373011 0.923924
+vn 0.085025 0.373010 -0.923923
+vn 0.157133 0.689343 -0.707188
+vn 0.085024 0.373009 -0.923924
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707188
+vn 0.205320 0.900730 -0.382791
+vn 0.157133 0.689343 -0.707189
+vn 0.205320 0.900731 -0.382790
+vn 0.205320 0.900730 -0.382791
+vn 0.222248 0.974990 -0.000118
+vn 0.205320 0.900731 -0.382790
+vn 0.222248 0.974990 -0.000119
+vn 0.222248 0.974990 -0.000118
+vn 0.205341 0.900815 0.382580
+vn 0.222248 0.974990 -0.000119
+vn 0.205341 0.900815 0.382579
+vn 0.205341 0.900815 0.382580
+vn 0.157175 0.689503 0.707023
+vn 0.205341 0.900815 0.382579
+vn 0.157175 0.689502 0.707024
+vn 0.157175 0.689503 0.707023
+vn 0.085078 0.373216 0.923835
+vn 0.157175 0.689502 0.707024
+vn 0.085077 0.373215 0.923836
+vn 0.085078 0.373216 0.923835
+vn 0.000027 0.000107 1.000000
+vn 0.085077 0.373215 0.923836
+vn 0.000027 0.000108 1.000000
+vn 0.000027 0.000107 1.000000
+vn -0.085025 -0.373008 0.923924
+vn 0.000027 0.000108 1.000000
+vn -0.085025 -0.373008 0.923924
+vn -0.085025 -0.373008 0.923924
+vn -0.157134 -0.689342 0.707189
+vn -0.085025 -0.373008 0.923924
+vn -0.157133 -0.689342 0.707189
+vn -0.157134 -0.689342 0.707189
+vn -0.205320 -0.900732 0.382788
+vn -0.157133 -0.689342 0.707189
+vn -0.205320 -0.900732 0.382788
+vn -0.205320 -0.900732 0.382788
+vn -0.222247 -0.974990 0.000115
+vn -0.205320 -0.900732 0.382788
+vn -0.222247 -0.974990 0.000115
+vn -0.222247 -0.974990 0.000115
+vn -0.205341 -0.900816 -0.382577
+vn -0.222247 -0.974990 0.000115
+vn -0.205341 -0.900816 -0.382577
+vn -0.205341 -0.900816 -0.382577
+vn -0.157173 -0.689501 -0.707026
+vn -0.205341 -0.900816 -0.382577
+vn -0.157173 -0.689500 -0.707027
+vn -0.157173 -0.689501 -0.707026
+vn -0.085078 -0.373217 -0.923835
+vn -0.157173 -0.689500 -0.707027
+vn -0.085079 -0.373218 -0.923834
+vn -0.085078 -0.373217 -0.923835
+vn -0.000029 -0.000113 -1.000000
+vn -0.085079 -0.373218 -0.923834
+vn -0.000029 -0.000110 -1.000000
+vn -0.000029 -0.000113 -1.000000
+vn 0.085025 0.373010 -0.923923
+vn -0.000029 -0.000110 -1.000000
+vn 0.085024 0.373009 -0.923924
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222248 -0.000007
+vn 0.974992 -0.222242 -0.000005
+vn 0.974990 -0.222249 -0.000007
+vn 0.974992 -0.222242 -0.000005
+vn 0.974992 -0.222242 -0.000005
+vn 0.974991 -0.222246 -0.000003
+vn 0.974992 -0.222242 -0.000005
+vn 0.974991 -0.222246 -0.000003
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974991 -0.222246 -0.000003
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222250 -0.000009
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222250 -0.000009
+vn 0.974990 -0.222250 -0.000009
+vn 0.974989 -0.222251 -0.000007
+vn 0.974990 -0.222250 -0.000009
+vn 0.974989 -0.222251 -0.000007
+vn 0.974989 -0.222251 -0.000007
+vn 0.974990 -0.222248 -0.000011
+vn 0.974989 -0.222251 -0.000007
+vn 0.974990 -0.222248 -0.000011
+vn 0.974990 -0.222248 -0.000011
+vn 0.974991 -0.222243 -0.000012
+vn 0.974990 -0.222248 -0.000011
+vn 0.974991 -0.222243 -0.000012
+vn 0.974991 -0.222243 -0.000012
+vn 0.974991 -0.222245 -0.000012
+vn 0.974991 -0.222243 -0.000012
+vn 0.974991 -0.222245 -0.000012
+vn 0.974991 -0.222245 -0.000012
+vn 0.974990 -0.222247 -0.000005
+vn 0.974991 -0.222245 -0.000012
+vn 0.974990 -0.222247 -0.000005
+vn 0.974990 -0.222247 -0.000005
+vn 0.974991 -0.222244 -0.000002
+vn 0.974990 -0.222247 -0.000005
+vn 0.974991 -0.222244 -0.000002
+vn 0.974991 -0.222244 -0.000002
+vn 0.974991 -0.222245 -0.000005
+vn 0.974991 -0.222244 -0.000002
+vn 0.974991 -0.222245 -0.000005
+vn 0.974991 -0.222245 -0.000005
+vn 0.974990 -0.222249 0.000001
+vn 0.974991 -0.222245 -0.000005
+vn 0.974990 -0.222249 0.000001
+vn 0.974990 -0.222249 0.000001
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222249 0.000001
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222247 0.000001
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222248 -0.000007
+vn 0.974990 -0.222249 -0.000002
+vn 0.974990 -0.222249 -0.000007
+vn -0.085026 -0.373017 0.923921
+vn -0.157123 -0.689346 0.707188
+vn -0.085026 -0.373014 0.923922
+vn -0.157123 -0.689346 0.707188
+vn -0.157123 -0.689346 0.707188
+vn -0.205300 -0.900733 0.382794
+vn -0.157123 -0.689346 0.707188
+vn -0.205300 -0.900734 0.382792
+vn -0.205300 -0.900733 0.382794
+vn -0.222230 -0.974994 0.000117
+vn -0.205300 -0.900734 0.382792
+vn -0.222230 -0.974994 0.000113
+vn -0.222230 -0.974994 0.000117
+vn -0.205333 -0.900819 -0.382575
+vn -0.222230 -0.974994 0.000113
+vn -0.205332 -0.900819 -0.382576
+vn -0.205333 -0.900819 -0.382575
+vn -0.157173 -0.689501 -0.707026
+vn -0.205332 -0.900819 -0.382576
+vn -0.157173 -0.689502 -0.707025
+vn -0.157173 -0.689501 -0.707026
+vn -0.085076 -0.373212 -0.923837
+vn -0.157173 -0.689502 -0.707025
+vn -0.085077 -0.373214 -0.923836
+vn -0.085076 -0.373212 -0.923837
+vn -0.000025 -0.000108 -1.000000
+vn -0.085077 -0.373214 -0.923836
+vn -0.000025 -0.000109 -1.000000
+vn -0.000025 -0.000108 -1.000000
+vn 0.085028 0.373003 -0.923926
+vn -0.000025 -0.000109 -1.000000
+vn 0.085028 0.373002 -0.923926
+vn 0.085028 0.373003 -0.923926
+vn 0.157134 0.689341 -0.707190
+vn 0.085028 0.373002 -0.923926
+vn 0.157134 0.689341 -0.707191
+vn 0.157134 0.689341 -0.707190
+vn 0.205311 0.900733 -0.382788
+vn 0.157134 0.689341 -0.707191
+vn 0.205311 0.900734 -0.382787
+vn 0.205311 0.900733 -0.382788
+vn 0.222232 0.974994 -0.000116
+vn 0.205311 0.900734 -0.382787
+vn 0.222232 0.974994 -0.000115
+vn 0.222232 0.974994 -0.000116
+vn 0.205332 0.900818 0.382577
+vn 0.222232 0.974994 -0.000115
+vn 0.205332 0.900818 0.382577
+vn 0.205332 0.900818 0.382577
+vn 0.157172 0.689497 0.707030
+vn 0.205332 0.900818 0.382577
+vn 0.157172 0.689496 0.707030
+vn 0.157172 0.689497 0.707030
+vn 0.085077 0.373220 0.923834
+vn 0.157172 0.689496 0.707030
+vn 0.085077 0.373220 0.923834
+vn 0.085077 0.373220 0.923834
+vn 0.000027 0.000117 1.000000
+vn 0.085077 0.373220 0.923834
+vn 0.000027 0.000119 1.000000
+vn 0.000027 0.000117 1.000000
+vn -0.085026 -0.373017 0.923921
+vn 0.000027 0.000119 1.000000
+vn -0.085026 -0.373014 0.923922
+vn 0.370883 -0.928680 0.000092
+vn 0.370883 -0.928680 0.000092
+vn 0.370883 -0.928680 0.000092
+vn 0.370883 -0.928680 0.000092
+vn 0.000032 0.000114 1.000000
+vn 0.000032 0.000114 1.000000
+vn 0.000032 0.000114 1.000000
+vn 0.000032 0.000114 1.000000
+vn 0.923532 0.383521 -0.000069
+vn 0.923532 0.383521 -0.000069
+vn 0.923532 0.383521 -0.000069
+vn 0.923532 0.383521 -0.000069
+vn -0.370883 0.928680 -0.000092
+vn -0.370883 0.928680 -0.000092
+vn -0.370883 0.928680 -0.000092
+vn -0.370883 0.928680 -0.000092
+vn -0.000024 -0.000109 -1.000000
+vn -0.000024 -0.000109 -1.000000
+vn -0.000024 -0.000109 -1.000000
+vn -0.000024 -0.000109 -1.000000
+vn 0.262291 -0.656622 0.707143
+vn 0.262291 -0.656622 0.707143
+vn 0.262291 -0.656622 0.707143
+vn 0.262291 -0.656622 0.707143
+vn 0.924221 -0.381858 0.000016
+vn 0.924221 -0.381858 0.000016
+vn 0.924221 -0.381858 0.000016
+vn 0.924221 -0.381858 0.000016
+vn 0.653058 0.271269 0.707056
+vn 0.653058 0.271269 0.707056
+vn 0.653058 0.271269 0.707056
+vn 0.653058 0.271269 0.707056
+vn -0.262247 0.656786 0.707007
+vn -0.262247 0.656786 0.707007
+vn -0.262247 0.656786 0.707007
+vn -0.262247 0.656786 0.707007
+vn 0.381848 0.924225 -0.000114
+vn 0.381848 0.924225 -0.000114
+vn 0.381848 0.924225 -0.000114
+vn 0.381848 0.924225 -0.000114
+vn -0.262273 0.656624 -0.707148
+vn -0.262273 0.656624 -0.707148
+vn -0.262273 0.656624 -0.707148
+vn -0.262273 0.656624 -0.707148
+vn 0.653012 0.271110 -0.707159
+vn 0.653012 0.271110 -0.707159
+vn 0.653012 0.271110 -0.707159
+vn 0.653012 0.271110 -0.707159
+vn 0.262245 -0.656801 -0.706994
+vn 0.262245 -0.656801 -0.706994
+vn 0.262245 -0.656801 -0.706994
+vn 0.262245 -0.656801 -0.706994
+vn 0.754628 -0.311738 0.577370
+vn 0.754628 -0.311738 0.577370
+vn 0.754628 -0.311738 0.577370
+vn 0.311795 0.754700 0.577245
+vn 0.311795 0.754700 0.577245
+vn 0.311795 0.754700 0.577245
+vn 0.311760 0.754554 -0.577454
+vn 0.311760 0.754554 -0.577454
+vn 0.311760 0.754554 -0.577454
+vn 0.754610 -0.311831 -0.577343
+vn 0.754610 -0.311831 -0.577343
+vn 0.754610 -0.311831 -0.577343
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.383515 0.923535 -0.000094
+vn -0.383515 0.923535 -0.000094
+vn -0.383515 0.923535 -0.000094
+vn -0.383515 0.923535 -0.000094
+vn -0.000036 -0.000117 -1.000000
+vn -0.000036 -0.000117 -1.000000
+vn -0.000036 -0.000117 -1.000000
+vn -0.000036 -0.000117 -1.000000
+vn 0.383510 -0.923537 0.000092
+vn 0.383510 -0.923537 0.000092
+vn 0.383510 -0.923537 0.000092
+vn 0.383510 -0.923537 0.000092
+vn 0.923532 0.383521 -0.000066
+vn 0.923532 0.383521 -0.000066
+vn 0.923532 0.383521 -0.000066
+vn 0.923532 0.383521 -0.000066
+vn -0.923531 -0.383524 0.000069
+vn -0.923531 -0.383524 0.000069
+vn -0.923531 -0.383524 0.000069
+vn -0.923531 -0.383524 0.000069
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.383523 0.923531 -0.000091
+vn -0.383523 0.923531 -0.000091
+vn -0.383523 0.923531 -0.000091
+vn -0.383523 0.923531 -0.000091
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn -0.000028 -0.000111 -1.000000
+vn 0.383523 -0.923531 0.000091
+vn 0.383523 -0.923531 0.000091
+vn 0.383523 -0.923531 0.000091
+vn 0.383523 -0.923531 0.000091
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923532 -0.383521 0.000070
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn 0.000028 0.000111 1.000000
+vn -0.383510 0.923537 -0.000092
+vn -0.383510 0.923537 -0.000092
+vn -0.383510 0.923537 -0.000092
+vn -0.383510 0.923537 -0.000092
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn 0.383515 -0.923535 0.000093
+vn 0.383515 -0.923535 0.000093
+vn 0.383515 -0.923535 0.000093
+vn 0.383515 -0.923535 0.000093
+vn 0.923531 0.383524 -0.000069
+vn 0.923531 0.383524 -0.000069
+vn 0.923531 0.383524 -0.000069
+vn 0.923531 0.383524 -0.000069
+vn -0.923533 -0.383520 0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923532 -0.383521 0.000070
+vn -0.923533 -0.383520 0.000070
+vn -0.146796 0.353322 -0.923913
+vn -0.271209 0.652954 -0.707175
+vn -0.146795 0.353321 -0.923913
+vn -0.271209 0.652955 -0.707174
+vn -0.271209 0.652954 -0.707175
+vn -0.354338 0.853189 -0.382771
+vn -0.271209 0.652955 -0.707174
+vn -0.354337 0.853189 -0.382772
+vn -0.354338 0.853189 -0.382771
+vn -0.383521 0.923532 -0.000095
+vn -0.354337 0.853189 -0.382772
+vn -0.383521 0.923532 -0.000093
+vn -0.383521 0.923532 -0.000095
+vn -0.354314 0.853275 0.382601
+vn -0.383521 0.923532 -0.000093
+vn -0.354315 0.853275 0.382600
+vn -0.354314 0.853275 0.382601
+vn -0.271168 0.653113 0.707044
+vn -0.354315 0.853275 0.382600
+vn -0.271169 0.653115 0.707042
+vn -0.271168 0.653113 0.707044
+vn -0.146740 0.353525 0.923844
+vn -0.271169 0.653115 0.707042
+vn -0.146739 0.353523 0.923845
+vn -0.146740 0.353525 0.923844
+vn 0.000028 0.000114 1.000000
+vn -0.146739 0.353523 0.923845
+vn 0.000028 0.000114 1.000000
+vn 0.000028 0.000114 1.000000
+vn 0.146792 -0.353317 0.923915
+vn 0.000028 0.000114 1.000000
+vn 0.146793 -0.353319 0.923914
+vn 0.146792 -0.353317 0.923915
+vn 0.271209 -0.652959 0.707170
+vn 0.146793 -0.353319 0.923914
+vn 0.271209 -0.652959 0.707171
+vn 0.271209 -0.652959 0.707170
+vn 0.354336 -0.853191 0.382767
+vn 0.271209 -0.652959 0.707171
+vn 0.354335 -0.853191 0.382769
+vn 0.354336 -0.853191 0.382767
+vn 0.383518 -0.923533 0.000093
+vn 0.354335 -0.853191 0.382769
+vn 0.383518 -0.923533 0.000090
+vn 0.383518 -0.923533 0.000093
+vn 0.354314 -0.853276 -0.382599
+vn 0.383518 -0.923533 0.000090
+vn 0.354314 -0.853276 -0.382598
+vn 0.354314 -0.853276 -0.382599
+vn 0.271169 -0.653117 -0.707040
+vn 0.354314 -0.853276 -0.382598
+vn 0.271169 -0.653117 -0.707040
+vn 0.271169 -0.653117 -0.707040
+vn 0.146740 -0.353528 -0.923843
+vn 0.271169 -0.653117 -0.707040
+vn 0.146740 -0.353526 -0.923843
+vn 0.146740 -0.353528 -0.923843
+vn -0.000031 -0.000110 -1.000000
+vn 0.146740 -0.353526 -0.923843
+vn -0.000030 -0.000110 -1.000000
+vn -0.000031 -0.000110 -1.000000
+vn -0.146796 0.353322 -0.923913
+vn -0.000030 -0.000110 -1.000000
+vn -0.146795 0.353321 -0.923913
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn -0.923533 -0.383519 0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923533 0.383520 -0.000068
+vn 0.923530 0.383526 -0.000065
+vn 0.923531 0.383524 -0.000065
+vn 0.923530 0.383526 -0.000065
+vn 0.923531 0.383524 -0.000065
+vn 0.923531 0.383524 -0.000065
+vn 0.923533 0.383519 -0.000068
+vn 0.923531 0.383524 -0.000065
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923533 0.383519 -0.000068
+vn 0.923531 0.383525 -0.000071
+vn 0.923533 0.383519 -0.000068
+vn 0.923531 0.383525 -0.000071
+vn 0.923531 0.383525 -0.000071
+vn 0.923533 0.383520 -0.000070
+vn 0.923531 0.383525 -0.000071
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000071
+vn 0.923533 0.383520 -0.000070
+vn 0.923533 0.383520 -0.000071
+vn 0.923533 0.383520 -0.000071
+vn 0.923532 0.383522 -0.000072
+vn 0.923533 0.383520 -0.000071
+vn 0.923532 0.383522 -0.000072
+vn 0.923532 0.383522 -0.000072
+vn 0.923536 0.383512 -0.000070
+vn 0.923532 0.383522 -0.000072
+vn 0.923536 0.383512 -0.000070
+vn 0.923536 0.383512 -0.000070
+vn 0.923535 0.383513 -0.000067
+vn 0.923536 0.383512 -0.000070
+vn 0.923535 0.383513 -0.000067
+vn 0.923535 0.383513 -0.000067
+vn 0.923534 0.383516 -0.000063
+vn 0.923535 0.383513 -0.000067
+vn 0.923534 0.383516 -0.000063
+vn 0.923534 0.383516 -0.000063
+vn 0.923535 0.383514 -0.000067
+vn 0.923534 0.383516 -0.000063
+vn 0.923535 0.383514 -0.000067
+vn 0.923535 0.383514 -0.000067
+vn 0.923533 0.383519 -0.000065
+vn 0.923535 0.383514 -0.000067
+vn 0.923533 0.383519 -0.000065
+vn 0.923533 0.383519 -0.000065
+vn 0.923531 0.383524 -0.000067
+vn 0.923533 0.383519 -0.000065
+vn 0.923531 0.383524 -0.000067
+vn 0.923531 0.383524 -0.000067
+vn 0.923534 0.383516 -0.000072
+vn 0.923531 0.383524 -0.000067
+vn 0.923534 0.383516 -0.000072
+vn 0.923534 0.383516 -0.000072
+vn 0.923535 0.383514 -0.000069
+vn 0.923534 0.383516 -0.000072
+vn 0.923535 0.383514 -0.000069
+vn 0.923535 0.383514 -0.000069
+vn 0.923530 0.383526 -0.000065
+vn 0.923535 0.383514 -0.000069
+vn 0.923530 0.383526 -0.000065
+vn -0.146791 0.353319 -0.923915
+vn -0.271209 0.652956 -0.707173
+vn -0.146790 0.353317 -0.923916
+vn -0.271209 0.652955 -0.707174
+vn -0.271209 0.652956 -0.707173
+vn -0.354340 0.853187 -0.382773
+vn -0.271209 0.652955 -0.707174
+vn -0.354340 0.853187 -0.382774
+vn -0.354340 0.853187 -0.382773
+vn -0.383519 0.923533 -0.000095
+vn -0.354340 0.853187 -0.382774
+vn -0.383519 0.923533 -0.000093
+vn -0.383519 0.923533 -0.000095
+vn -0.354310 0.853277 0.382601
+vn -0.383519 0.923533 -0.000093
+vn -0.354309 0.853276 0.382603
+vn -0.354310 0.853277 0.382601
+vn -0.271166 0.653115 0.707043
+vn -0.354309 0.853276 0.382603
+vn -0.271166 0.653115 0.707043
+vn -0.271166 0.653115 0.707043
+vn -0.146740 0.353524 0.923844
+vn -0.271166 0.653115 0.707043
+vn -0.146740 0.353524 0.923844
+vn -0.146740 0.353524 0.923844
+vn 0.000025 0.000116 1.000000
+vn -0.146740 0.353524 0.923844
+vn 0.000026 0.000114 1.000000
+vn 0.000025 0.000116 1.000000
+vn 0.146793 -0.353319 0.923914
+vn 0.000026 0.000114 1.000000
+vn 0.146793 -0.353316 0.923915
+vn 0.146793 -0.353319 0.923914
+vn 0.271215 -0.652965 0.707163
+vn 0.146793 -0.353316 0.923915
+vn 0.271215 -0.652965 0.707163
+vn 0.271215 -0.652965 0.707163
+vn 0.354338 -0.853191 0.382765
+vn 0.271215 -0.652965 0.707163
+vn 0.354338 -0.853191 0.382766
+vn 0.354338 -0.853191 0.382765
+vn 0.383521 -0.923532 0.000097
+vn 0.354338 -0.853191 0.382766
+vn 0.383521 -0.923532 0.000096
+vn 0.383521 -0.923532 0.000097
+vn 0.354322 -0.853273 -0.382597
+vn 0.383521 -0.923532 0.000096
+vn 0.354322 -0.853273 -0.382598
+vn 0.354322 -0.853273 -0.382597
+vn 0.271176 -0.653112 -0.707042
+vn 0.354322 -0.853273 -0.382598
+vn 0.271176 -0.653112 -0.707042
+vn 0.271176 -0.653112 -0.707042
+vn 0.146742 -0.353522 -0.923845
+vn 0.271176 -0.653112 -0.707042
+vn 0.146741 -0.353520 -0.923846
+vn 0.146742 -0.353522 -0.923845
+vn -0.000026 -0.000115 -1.000000
+vn 0.146741 -0.353520 -0.923846
+vn -0.000026 -0.000115 -1.000000
+vn -0.000026 -0.000115 -1.000000
+vn -0.146791 0.353319 -0.923915
+vn -0.000026 -0.000115 -1.000000
+vn -0.146790 0.353317 -0.923916
+vn -0.222249 -0.974990 0.000115
+vn -0.222249 -0.974990 0.000115
+vn -0.222249 -0.974990 0.000115
+vn -0.222249 -0.974990 0.000115
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn 0.000029 0.000111 1.000000
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.974990 -0.222249 -0.000003
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn 0.222249 0.974990 -0.000114
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.000029 -0.000111 -1.000000
+vn -0.846578 -0.532264 0.000083
+vn -0.846578 -0.532265 0.000083
+vn -0.846578 -0.532265 0.000083
+vn -0.846578 -0.532265 0.000083
+vn -0.157134 -0.689346 0.707185
+vn -0.157134 -0.689346 0.707185
+vn -0.157134 -0.689346 0.707185
+vn -0.157134 -0.689346 0.707185
+vn -0.689403 0.157232 0.707108
+vn -0.689403 0.157232 0.707108
+vn -0.689403 0.157232 0.707108
+vn -0.689403 0.157232 0.707108
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.532265 -0.846578 0.000079
+vn 0.689442 -0.157075 0.707105
+vn 0.689442 -0.157075 0.707105
+vn 0.689442 -0.157075 0.707105
+vn 0.689442 -0.157075 0.707105
+vn -0.532271 0.846574 -0.000079
+vn -0.532270 0.846575 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn -0.532271 0.846574 -0.000079
+vn 0.157173 0.689499 0.707028
+vn 0.157173 0.689499 0.707028
+vn 0.157173 0.689499 0.707028
+vn 0.157173 0.689499 0.707028
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn 0.846578 0.532265 -0.000083
+vn -0.689441 0.157075 -0.707106
+vn -0.689441 0.157075 -0.707106
+vn -0.689441 0.157075 -0.707106
+vn -0.689441 0.157075 -0.707106
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707189
+vn 0.157133 0.689343 -0.707189
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn -0.157175 -0.689503 -0.707023
+vn -0.157175 -0.689503 -0.707023
+vn -0.157175 -0.689503 -0.707023
+vn -0.157175 -0.689503 -0.707023
+vn -0.691212 -0.434525 0.577419
+vn -0.691212 -0.434525 0.577419
+vn -0.691212 -0.434525 0.577419
+vn 0.434604 -0.691170 0.577411
+vn 0.434604 -0.691170 0.577411
+vn 0.434604 -0.691170 0.577411
+vn -0.434576 0.691293 0.577284
+vn -0.434576 0.691293 0.577284
+vn -0.434576 0.691293 0.577284
+vn 0.691245 0.434651 0.577286
+vn 0.691245 0.434651 0.577286
+vn 0.691245 0.434651 0.577286
+vn -0.434618 0.691157 -0.577416
+vn -0.434618 0.691157 -0.577416
+vn -0.434618 0.691157 -0.577416
+vn 0.691212 0.434526 -0.577420
+vn 0.691212 0.434526 -0.577420
+vn 0.691212 0.434526 -0.577420
+vn -0.691245 -0.434660 -0.577279
+vn -0.691245 -0.434660 -0.577279
+vn -0.691245 -0.434660 -0.577279
+vn 0.434575 -0.691294 -0.577284
+vn 0.434575 -0.691294 -0.577284
+vn 0.434575 -0.691294 -0.577284
+vn 0.910790 -0.158077 0.381409
+vn 0.698383 -0.122443 0.705173
+vn 0.900644 -0.205256 0.383027
+vn 0.688977 -0.156969 0.707581
+vn 0.698383 -0.122443 0.705173
+vn 0.380481 -0.067472 0.922324
+vn 0.688977 -0.156969 0.707581
+vn 0.372351 -0.084769 0.924213
+vn 0.380481 -0.067472 0.922324
+vn 0.005283 0.000111 0.999986
+vn 0.372351 -0.084769 0.924213
+vn -0.000886 0.000320 1.000000
+vn 0.005283 0.000111 0.999986
+vn -0.370643 0.070915 0.926064
+vn -0.000886 0.000320 1.000000
+vn -0.373861 0.085330 0.923551
+vn -0.370643 0.070915 0.926064
+vn -0.690599 0.133639 0.710784
+vn -0.373861 0.085330 0.923551
+vn -0.689853 0.157335 0.706646
+vn -0.690599 0.133639 0.710784
+vn -0.905522 0.176961 0.385635
+vn -0.689853 0.157335 0.706646
+vn -0.900893 0.205403 0.382363
+vn -0.905522 0.176961 0.385635
+vn -0.981315 0.192407 0.000009
+vn -0.900893 0.205403 0.382363
+vn -0.974990 0.222249 0.000023
+vn -0.981315 0.192407 0.000009
+vn -0.905544 0.176875 -0.385623
+vn -0.974990 0.222249 0.000023
+vn -0.900925 0.205321 -0.382331
+vn -0.905544 0.176875 -0.385623
+vn -0.690636 0.133479 -0.710778
+vn -0.900925 0.205321 -0.382331
+vn -0.689905 0.157180 -0.706630
+vn -0.690636 0.133479 -0.710778
+vn -0.370695 0.070708 -0.926059
+vn -0.689905 0.157180 -0.706630
+vn -0.373924 0.085127 -0.923545
+vn -0.370695 0.070708 -0.926059
+vn 0.005222 -0.000111 -0.999986
+vn -0.373924 0.085127 -0.923545
+vn -0.000947 0.000098 -1.000000
+vn 0.005222 -0.000111 -0.999986
+vn 0.380426 -0.067676 -0.922332
+vn -0.000947 0.000098 -1.000000
+vn 0.372308 -0.084976 -0.924211
+vn 0.380426 -0.067676 -0.922332
+vn 0.698342 -0.122599 -0.705187
+vn 0.372308 -0.084976 -0.924211
+vn 0.688950 -0.157129 -0.707573
+vn 0.698342 -0.122599 -0.705187
+vn 0.910768 -0.158161 -0.381428
+vn 0.688950 -0.157129 -0.707573
+vn 0.900634 -0.205344 -0.383005
+vn 0.910768 -0.158161 -0.381428
+vn 0.985372 -0.170415 -0.000009
+vn 0.900634 -0.205344 -0.383005
+vn 0.974990 -0.222249 0.000013
+vn 0.985372 -0.170415 -0.000009
+vn 0.910790 -0.158077 0.381409
+vn 0.974990 -0.222249 0.000013
+vn 0.900644 -0.205256 0.383027
+vn 0.910790 -0.158077 0.381409
+vn 0.985372 -0.170415 -0.000009
+vn 0.836972 0.383316 0.390572
+vn 0.908498 0.417889 -0.000072
+vn 0.910768 -0.158161 -0.381428
+vn 0.836950 0.383227 -0.390706
+vn 0.985372 -0.170415 -0.000009
+vn 0.908498 0.417889 -0.000072
+vn 0.698342 -0.122599 -0.705187
+vn 0.640906 0.289455 -0.710954
+vn 0.910768 -0.158161 -0.381428
+vn 0.836950 0.383227 -0.390706
+vn 0.380426 -0.067676 -0.922332
+vn 0.361277 0.159167 -0.918774
+vn 0.698342 -0.122599 -0.705187
+vn 0.640906 0.289455 -0.710954
+vn 0.005222 -0.000111 -0.999986
+vn 0.036536 0.014547 -0.999226
+vn 0.380426 -0.067676 -0.922332
+vn 0.361277 0.159167 -0.918774
+vn -0.370695 0.070708 -0.926059
+vn -0.304139 -0.125566 -0.944316
+vn 0.005222 -0.000111 -0.999986
+vn 0.036536 0.014547 -0.999226
+vn -0.370695 0.070708 -0.926059
+vn -0.690636 0.133479 -0.710778
+vn -0.304139 -0.125566 -0.944316
+vn -0.626576 -0.236044 -0.742756
+vn -0.690636 0.133479 -0.710778
+vn -0.905544 0.176875 -0.385623
+vn -0.626576 -0.236044 -0.742756
+vn -0.870877 -0.279496 -0.404297
+vn -0.905544 0.176875 -0.385623
+vn -0.981315 0.192407 0.000009
+vn -0.870877 -0.279496 -0.404297
+vn -0.962458 -0.271431 0.000057
+vn -0.905522 0.176961 0.385635
+vn -0.870855 -0.279405 0.404406
+vn -0.981315 0.192407 0.000009
+vn -0.962458 -0.271431 0.000057
+vn -0.690599 0.133639 0.710784
+vn -0.626533 -0.235878 0.742844
+vn -0.905522 0.176961 0.385635
+vn -0.870855 -0.279405 0.404406
+vn -0.370643 0.070915 0.926064
+vn -0.304083 -0.125354 0.944362
+vn -0.690599 0.133639 0.710784
+vn -0.626533 -0.235878 0.742844
+vn -0.370643 0.070915 0.926064
+vn 0.005283 0.000111 0.999986
+vn -0.304083 -0.125354 0.944362
+vn 0.036599 0.014773 0.999221
+vn 0.005283 0.000111 0.999986
+vn 0.380481 -0.067472 0.922324
+vn 0.036599 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.380481 -0.067472 0.922324
+vn 0.698383 -0.122443 0.705173
+vn 0.361329 0.159371 0.918718
+vn 0.640945 0.289611 0.710855
+vn 0.698383 -0.122443 0.705173
+vn 0.910790 -0.158077 0.381409
+vn 0.640945 0.289611 0.710855
+vn 0.836972 0.383316 0.390572
+vn 0.836972 0.383316 0.390572
+vn 0.908498 0.417889 -0.000072
+vn 0.681798 0.637265 0.359228
+vn 0.730616 0.682789 -0.000098
+vn 0.836950 0.383227 -0.390706
+vn 0.681778 0.637185 -0.359407
+vn 0.908498 0.417889 -0.000072
+vn 0.730616 0.682789 -0.000098
+vn 0.640906 0.289455 -0.710954
+vn 0.539219 0.504089 -0.674639
+vn 0.836950 0.383227 -0.390706
+vn 0.681778 0.637185 -0.359407
+vn 0.361277 0.159167 -0.918774
+vn 0.319664 0.298980 -0.899125
+vn 0.640906 0.289455 -0.710954
+vn 0.539219 0.504089 -0.674639
+vn 0.036536 0.014547 -0.999226
+vn 0.052540 0.049039 -0.997414
+vn 0.361277 0.159167 -0.918774
+vn 0.319664 0.298980 -0.899125
+vn -0.304139 -0.125566 -0.944316
+vn -0.226961 -0.213369 -0.950243
+vn 0.036536 0.014547 -0.999226
+vn 0.052540 0.049039 -0.997414
+vn -0.626576 -0.236044 -0.742756
+vn -0.479481 -0.452103 -0.752131
+vn -0.304139 -0.125566 -0.944316
+vn -0.226961 -0.213369 -0.950243
+vn -0.870877 -0.279496 -0.404297
+vn -0.659548 -0.624670 -0.418072
+vn -0.626576 -0.236044 -0.742756
+vn -0.479481 -0.452103 -0.752131
+vn -0.962458 -0.271431 0.000057
+vn -0.710568 -0.674723 -0.199603
+vn -0.870877 -0.279496 -0.404297
+vn -0.659548 -0.624670 -0.418072
+vn -0.962458 -0.271431 0.000057
+vn -0.870855 -0.279405 0.404406
+vn -0.710553 -0.674682 0.199798
+vn -0.659522 -0.624580 0.418247
+vn -0.870855 -0.279405 0.404406
+vn -0.626533 -0.235878 0.742844
+vn -0.659522 -0.624580 0.418247
+vn -0.479435 -0.451939 0.752259
+vn -0.626533 -0.235878 0.742844
+vn -0.304083 -0.125354 0.944362
+vn -0.479435 -0.451939 0.752259
+vn -0.226902 -0.213157 0.950305
+vn -0.304083 -0.125354 0.944362
+vn 0.036599 0.014773 0.999221
+vn -0.226902 -0.213157 0.950305
+vn 0.052604 0.049266 0.997400
+vn 0.036599 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.052604 0.049266 0.997400
+vn 0.319716 0.299179 0.899040
+vn 0.361329 0.159371 0.918718
+vn 0.640945 0.289611 0.710855
+vn 0.319716 0.299179 0.899040
+vn 0.539255 0.504238 0.674499
+vn 0.640945 0.289611 0.710855
+vn 0.836972 0.383316 0.390572
+vn 0.539255 0.504238 0.674499
+vn 0.681798 0.637265 0.359228
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.222249 -0.974990 0.000114
+vn -0.974990 0.222250 0.000005
+vn -0.974990 0.222250 0.000005
+vn -0.974991 0.222246 0.000002
+vn -0.974991 0.222246 0.000002
+vn -0.974990 0.222250 0.000005
+vn -0.974989 0.222252 0.000005
+vn -0.974990 0.222250 0.000005
+vn -0.974989 0.222251 0.000004
+vn -0.974989 0.222252 0.000005
+vn -0.974990 0.222250 -0.000002
+vn -0.974989 0.222251 0.000004
+vn -0.974990 0.222250 -0.000003
+vn -0.974990 0.222250 -0.000002
+vn -0.974990 0.222248 -0.000005
+vn -0.974990 0.222250 -0.000003
+vn -0.974990 0.222247 -0.000005
+vn -0.974990 0.222248 -0.000005
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222247 -0.000005
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222251 0.000005
+vn -0.974990 0.222251 0.000005
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222248 -0.000002
+vn -0.974990 0.222249 -0.000001
+vn -0.974990 0.222251 0.000005
+vn -0.974990 0.222251 0.000005
+vn -0.974991 0.222245 -0.000002
+vn -0.974991 0.222246 -0.000002
+vn -0.974990 0.222248 -0.000002
+vn -0.974990 0.222249 -0.000001
+vn -0.974990 0.222250 0.000004
+vn -0.974990 0.222250 0.000004
+vn -0.974991 0.222245 -0.000002
+vn -0.974991 0.222246 -0.000002
+vn -0.974990 0.222250 0.000004
+vn -0.974989 0.222253 0.000004
+vn -0.974990 0.222250 0.000004
+vn -0.974989 0.222253 0.000003
+vn -0.974989 0.222253 0.000004
+vn -0.974990 0.222251 0.000002
+vn -0.974989 0.222253 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222251 0.000002
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222250 0.000003
+vn -0.974990 0.222250 0.000002
+vn -0.974990 0.222249 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222250 0.000002
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222250 0.000009
+vn -0.974990 0.222250 0.000008
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222248 0.000003
+vn -0.974990 0.222250 0.000006
+vn -0.974989 0.222251 0.000007
+vn -0.974990 0.222250 0.000009
+vn -0.974990 0.222250 0.000008
+vn -0.974991 0.222246 0.000002
+vn -0.974991 0.222246 0.000002
+vn -0.974990 0.222250 0.000006
+vn -0.974989 0.222251 0.000007
+vn -0.734614 -0.678486 0.000102
+vn -0.911179 -0.412010 0.000076
+vn -0.684651 -0.622670 -0.378859
+vn -0.829660 -0.370157 -0.417909
+vn -0.734614 -0.678486 0.000102
+vn -0.684629 -0.622585 0.379040
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.684629 -0.622585 0.379040
+vn -0.546359 -0.467487 0.694945
+vn -0.829637 -0.370064 0.418038
+vn -0.623331 -0.263640 0.736175
+vn -0.546359 -0.467487 0.694945
+vn -0.349228 -0.245524 0.904300
+vn -0.623331 -0.263640 0.736175
+vn -0.359221 -0.127384 0.924518
+vn -0.349228 -0.245524 0.904300
+vn -0.122325 0.009430 0.992445
+vn -0.359221 -0.127384 0.924518
+vn -0.073925 0.016453 0.997128
+vn -0.122325 0.009430 0.992445
+vn 0.116796 0.272223 0.955120
+vn -0.073925 0.016453 0.997128
+vn 0.227273 0.156255 0.961213
+vn 0.116796 0.272223 0.955120
+vn 0.355262 0.516091 0.779384
+vn 0.227273 0.156255 0.961213
+vn 0.541779 0.275095 0.794228
+vn 0.355262 0.516091 0.779384
+vn 0.560759 0.695190 0.449733
+vn 0.541779 0.275095 0.794228
+vn 0.818288 0.342765 0.461429
+vn 0.560759 0.695190 0.449733
+vn 0.650222 0.759744 -0.000108
+vn 0.818288 0.342765 0.461429
+vn 0.934036 0.357180 -0.000072
+vn 0.560729 0.695092 -0.449922
+vn 0.818263 0.342660 -0.461552
+vn 0.650222 0.759744 -0.000108
+vn 0.934036 0.357180 -0.000072
+vn 0.355223 0.515922 -0.779514
+vn 0.541740 0.274919 -0.794315
+vn 0.560729 0.695092 -0.449922
+vn 0.818263 0.342660 -0.461552
+vn 0.116740 0.272006 -0.955188
+vn 0.227216 0.156038 -0.961262
+vn 0.355223 0.515922 -0.779514
+vn 0.541740 0.274919 -0.794315
+vn -0.122380 0.009209 -0.992441
+vn -0.073981 0.016231 -0.997128
+vn 0.116740 0.272006 -0.955188
+vn 0.227216 0.156038 -0.961262
+vn -0.349279 -0.245726 -0.904225
+vn -0.359275 -0.127591 -0.924469
+vn -0.122380 0.009209 -0.992441
+vn -0.073981 0.016231 -0.997128
+vn -0.546395 -0.467639 -0.694814
+vn -0.623372 -0.263800 -0.736082
+vn -0.349279 -0.245726 -0.904225
+vn -0.359275 -0.127591 -0.924469
+vn -0.684651 -0.622670 -0.378859
+vn -0.829660 -0.370157 -0.417909
+vn -0.546395 -0.467639 -0.694814
+vn -0.623372 -0.263800 -0.736082
+vn -0.911179 -0.412010 0.000076
+vn -0.990921 0.134444 0.000013
+vn -0.829660 -0.370157 -0.417909
+vn -0.898997 0.122431 -0.420494
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.990921 0.134444 0.000013
+vn -0.898973 0.122524 0.420518
+vn -0.829637 -0.370064 0.418038
+vn -0.623331 -0.263640 0.736175
+vn -0.898973 0.122524 0.420518
+vn -0.661033 0.091256 0.744787
+vn -0.623331 -0.263640 0.736175
+vn -0.359221 -0.127384 0.924518
+vn -0.661033 0.091256 0.744787
+vn -0.347825 0.048815 0.936288
+vn -0.359221 -0.127384 0.924518
+vn -0.073925 0.016453 0.997128
+vn -0.347825 0.048815 0.936288
+vn -0.008734 0.000347 0.999962
+vn -0.073925 0.016453 0.997128
+vn 0.227273 0.156255 0.961213
+vn -0.008734 0.000347 0.999962
+vn 0.331403 -0.051587 0.942078
+vn 0.227273 0.156255 0.961213
+vn 0.541779 0.275095 0.794228
+vn 0.331403 -0.051587 0.942078
+vn 0.648539 -0.102868 0.754199
+vn 0.541779 0.275095 0.794228
+vn 0.818288 0.342765 0.461429
+vn 0.648539 -0.102868 0.754199
+vn 0.892392 -0.143572 0.427813
+vn 0.818288 0.342765 0.461429
+vn 0.934036 0.357180 -0.000072
+vn 0.892392 -0.143572 0.427813
+vn 0.987188 -0.159563 -0.000014
+vn 0.818263 0.342660 -0.461552
+vn 0.892368 -0.143667 -0.427831
+vn 0.934036 0.357180 -0.000072
+vn 0.987188 -0.159563 -0.000014
+vn 0.541740 0.274919 -0.794315
+vn 0.648501 -0.103036 -0.754208
+vn 0.818263 0.342660 -0.461552
+vn 0.892368 -0.143667 -0.427831
+vn 0.227216 0.156038 -0.961262
+vn 0.331347 -0.051796 -0.942086
+vn 0.541740 0.274919 -0.794315
+vn 0.648501 -0.103036 -0.754208
+vn -0.073981 0.016231 -0.997128
+vn -0.008788 0.000124 -0.999961
+vn 0.227216 0.156038 -0.961262
+vn 0.331347 -0.051796 -0.942086
+vn -0.359275 -0.127591 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.073981 0.016231 -0.997128
+vn -0.008788 0.000124 -0.999961
+vn -0.623372 -0.263800 -0.736082
+vn -0.661080 0.091091 -0.744766
+vn -0.359275 -0.127591 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.829660 -0.370157 -0.417909
+vn -0.898997 0.122431 -0.420494
+vn -0.623372 -0.263800 -0.736082
+vn -0.661080 0.091091 -0.744766
+vn -0.898997 0.122431 -0.420494
+vn -0.990921 0.134444 0.000013
+vn -0.882925 0.201212 -0.424213
+vn -0.974990 0.222248 0.000002
+vn -0.990921 0.134444 0.000013
+vn -0.898973 0.122524 0.420518
+vn -0.974990 0.222248 0.000002
+vn -0.882901 0.201307 0.424219
+vn -0.898973 0.122524 0.420518
+vn -0.661033 0.091256 0.744787
+vn -0.882901 0.201307 0.424219
+vn -0.645795 0.147297 0.749168
+vn -0.661033 0.091256 0.744787
+vn -0.347825 0.048815 0.936288
+vn -0.645795 0.147297 0.749168
+vn -0.335173 0.076513 0.939045
+vn -0.347825 0.048815 0.936288
+vn -0.008734 0.000347 0.999962
+vn -0.335173 0.076513 0.939045
+vn 0.000404 0.000025 1.000000
+vn -0.008734 0.000347 0.999962
+vn 0.331403 -0.051587 0.942078
+vn 0.000404 0.000025 1.000000
+vn 0.336307 -0.076551 0.938636
+vn 0.331403 -0.051587 0.942078
+vn 0.648539 -0.102868 0.754199
+vn 0.336307 -0.076551 0.938636
+vn 0.647499 -0.147510 0.747653
+vn 0.648539 -0.102868 0.754199
+vn 0.892392 -0.143572 0.427813
+vn 0.647499 -0.147510 0.747653
+vn 0.884006 -0.201461 0.421838
+vn 0.892392 -0.143572 0.427813
+vn 0.987188 -0.159563 -0.000014
+vn 0.884006 -0.201461 0.421838
+vn 0.974990 -0.222250 -0.000006
+vn 0.987188 -0.159563 -0.000014
+vn 0.892368 -0.143667 -0.427831
+vn 0.974990 -0.222250 -0.000006
+vn 0.883981 -0.201554 -0.421845
+vn 0.648501 -0.103036 -0.754208
+vn 0.647462 -0.147677 -0.747653
+vn 0.892368 -0.143667 -0.427831
+vn 0.883981 -0.201554 -0.421845
+vn 0.331347 -0.051796 -0.942086
+vn 0.336253 -0.076759 -0.938638
+vn 0.648501 -0.103036 -0.754208
+vn 0.647462 -0.147677 -0.747653
+vn -0.008788 0.000124 -0.999961
+vn 0.000350 -0.000197 -1.000000
+vn 0.331347 -0.051796 -0.942086
+vn 0.336253 -0.076759 -0.938638
+vn -0.347879 0.048607 -0.936279
+vn -0.335230 0.076305 -0.939041
+vn -0.008788 0.000124 -0.999961
+vn 0.000350 -0.000197 -1.000000
+vn -0.661080 0.091091 -0.744766
+vn -0.645839 0.147130 -0.749162
+vn -0.347879 0.048607 -0.936279
+vn -0.335230 0.076305 -0.939041
+vn -0.898997 0.122431 -0.420494
+vn -0.882925 0.201212 -0.424213
+vn -0.661080 0.091091 -0.744766
+vn -0.645839 0.147130 -0.749162
+vn 0.900923 -0.205323 0.382336
+vn 0.689908 -0.157181 0.706626
+vn 0.900784 -0.205291 0.382680
+vn 0.689444 -0.157075 0.707103
+vn 0.689908 -0.157181 0.706626
+vn 0.373927 -0.085128 0.923543
+vn 0.689444 -0.157075 0.707103
+vn 0.373141 -0.084949 0.923877
+vn 0.373927 -0.085128 0.923543
+vn 0.000946 -0.000100 1.000000
+vn 0.373141 -0.084949 0.923877
+vn 0.000031 0.000108 1.000000
+vn 0.000946 -0.000100 1.000000
+vn -0.372314 0.084966 0.924210
+vn 0.000031 0.000108 1.000000
+vn -0.373089 0.085142 0.923881
+vn -0.372314 0.084966 0.924210
+vn -0.688957 0.157115 0.707569
+vn -0.373089 0.085142 0.923881
+vn -0.689407 0.157217 0.707107
+vn -0.688957 0.157115 0.707569
+vn -0.900634 0.205344 0.383005
+vn -0.689407 0.157217 0.707107
+vn -0.900763 0.205374 0.382686
+vn -0.900634 0.205344 0.383005
+vn -0.974989 0.222252 -0.000010
+vn -0.900763 0.205374 0.382686
+vn -0.974989 0.222252 0.000007
+vn -0.900646 0.205248 -0.383028
+vn -0.900786 0.205280 -0.382682
+vn -0.974989 0.222252 -0.000010
+vn -0.974989 0.222252 0.000007
+vn -0.688974 0.156962 -0.707586
+vn -0.689440 0.157068 -0.707109
+vn -0.900646 0.205248 -0.383028
+vn -0.900786 0.205280 -0.382682
+vn -0.372348 0.084770 -0.924214
+vn -0.373138 0.084950 -0.923879
+vn -0.688974 0.156962 -0.707586
+vn -0.689440 0.157068 -0.707109
+vn 0.000889 -0.000316 -1.000000
+vn -0.000031 -0.000107 -1.000000
+vn -0.372348 0.084770 -0.924214
+vn -0.373138 0.084950 -0.923879
+vn 0.373863 -0.085325 -0.923551
+vn 0.373085 -0.085148 -0.923882
+vn 0.000889 -0.000316 -1.000000
+vn -0.000031 -0.000107 -1.000000
+vn 0.689851 -0.157327 -0.706650
+vn 0.689401 -0.157225 -0.707111
+vn 0.373863 -0.085325 -0.923551
+vn 0.373085 -0.085148 -0.923882
+vn 0.900892 -0.205400 -0.382368
+vn 0.900764 -0.205371 -0.382684
+vn 0.689851 -0.157327 -0.706650
+vn 0.689401 -0.157225 -0.707111
+vn 0.900892 -0.205400 -0.382368
+vn 0.974989 -0.222252 -0.000019
+vn 0.900764 -0.205371 -0.382684
+vn 0.974989 -0.222252 -0.000004
+vn 0.974989 -0.222252 -0.000019
+vn 0.900923 -0.205323 0.382336
+vn 0.974989 -0.222252 -0.000004
+vn 0.900784 -0.205291 0.382680
+vn 0.488620 0.841774 0.229493
+vn 0.488620 0.841774 0.229493
+vn 0.488620 0.841774 0.229493
+vn 0.488620 0.841774 0.229493
+vn -0.488624 -0.841772 -0.229492
+vn -0.488624 -0.841772 -0.229492
+vn -0.488624 -0.841772 -0.229492
+vn -0.488624 -0.841772 -0.229492
+vn 0.488618 0.841718 -0.229703
+vn 0.488618 0.841718 -0.229703
+vn 0.488618 0.841718 -0.229703
+vn 0.488618 0.841718 -0.229703
+vn -0.488614 -0.841715 0.229722
+vn -0.488614 -0.841715 0.229722
+vn -0.488614 -0.841715 0.229722
+vn -0.488614 -0.841715 0.229722
+vn 0.393452 0.677770 -0.621147
+vn 0.393452 0.677770 -0.621147
+vn 0.393452 0.677770 -0.621147
+vn 0.393452 0.677770 -0.621147
+vn -0.393469 -0.677776 0.621129
+vn -0.393469 -0.677776 0.621129
+vn -0.393469 -0.677776 0.621129
+vn -0.393469 -0.677776 0.621129
+vn 0.246414 0.424496 -0.871254
+vn 0.246414 0.424496 -0.871254
+vn 0.246414 0.424496 -0.871254
+vn 0.246414 0.424496 -0.871254
+vn -0.246448 -0.424480 0.871252
+vn -0.246448 -0.424480 0.871252
+vn -0.246448 -0.424480 0.871252
+vn -0.246448 -0.424480 0.871252
+vn 0.083025 0.143016 -0.986232
+vn 0.083025 0.143016 -0.986232
+vn 0.083025 0.143016 -0.986232
+vn 0.083025 0.143016 -0.986232
+vn -0.083067 -0.143010 0.986229
+vn -0.083067 -0.143010 0.986229
+vn -0.083067 -0.143010 0.986229
+vn -0.083067 -0.143010 0.986229
+vn -0.083176 -0.143310 -0.986176
+vn -0.083176 -0.143310 -0.986176
+vn -0.083176 -0.143310 -0.986176
+vn -0.083176 -0.143310 -0.986176
+vn 0.083141 0.143319 0.986178
+vn 0.083141 0.143319 0.986178
+vn 0.083141 0.143319 0.986178
+vn 0.083141 0.143319 0.986178
+vn -0.246896 -0.425379 -0.870687
+vn -0.246896 -0.425379 -0.870687
+vn -0.246896 -0.425379 -0.870687
+vn -0.246896 -0.425379 -0.870687
+vn 0.246875 0.425377 0.870693
+vn 0.246875 0.425377 0.870693
+vn 0.246875 0.425377 0.870693
+vn 0.246875 0.425377 0.870693
+vn -0.394244 -0.679193 -0.619087
+vn -0.394244 -0.679193 -0.619087
+vn -0.394244 -0.679193 -0.619087
+vn -0.394244 -0.679193 -0.619087
+vn 0.394239 0.679209 0.619072
+vn 0.394239 0.679210 0.619072
+vn 0.394239 0.679209 0.619072
+vn 0.394239 0.679209 0.619072
+vn -0.488840 -0.842133 -0.227701
+vn -0.488840 -0.842133 -0.227701
+vn -0.488840 -0.842133 -0.227701
+vn -0.488840 -0.842133 -0.227701
+vn 0.488835 0.842136 0.227701
+vn 0.488835 0.842136 0.227701
+vn 0.488835 0.842136 0.227701
+vn 0.488835 0.842136 0.227701
+vn -0.488827 -0.842080 0.227924
+vn -0.488827 -0.842080 0.227924
+vn -0.488827 -0.842080 0.227924
+vn -0.488827 -0.842080 0.227924
+vn 0.488823 0.842083 -0.227920
+vn 0.488823 0.842083 -0.227920
+vn 0.488823 0.842083 -0.227920
+vn 0.488823 0.842083 -0.227920
+vn -0.394218 -0.679060 0.619250
+vn -0.394218 -0.679060 0.619250
+vn -0.394218 -0.679060 0.619250
+vn -0.394218 -0.679060 0.619250
+vn 0.394206 0.679069 -0.619247
+vn 0.394206 0.679069 -0.619247
+vn 0.394206 0.679069 -0.619247
+vn 0.394206 0.679069 -0.619247
+vn -0.246863 -0.425179 0.870794
+vn -0.246863 -0.425179 0.870794
+vn -0.246863 -0.425179 0.870794
+vn -0.246863 -0.425179 0.870794
+vn 0.246838 0.425185 -0.870798
+vn 0.246838 0.425185 -0.870798
+vn 0.246838 0.425185 -0.870798
+vn 0.246838 0.425185 -0.870798
+vn -0.083119 -0.143086 0.986214
+vn -0.083119 -0.143086 0.986214
+vn -0.083119 -0.143086 0.986214
+vn -0.083119 -0.143086 0.986214
+vn 0.083089 0.143093 -0.986215
+vn 0.083089 0.143093 -0.986215
+vn 0.083089 0.143093 -0.986215
+vn 0.083089 0.143093 -0.986215
+vn 0.083120 0.143230 0.986193
+vn 0.083120 0.143230 0.986193
+vn 0.083120 0.143230 0.986193
+vn 0.083120 0.143230 0.986193
+vn -0.083114 -0.143226 -0.986194
+vn -0.083114 -0.143226 -0.986194
+vn -0.083114 -0.143226 -0.986194
+vn -0.083114 -0.143226 -0.986194
+vn 0.246505 0.424674 0.871141
+vn 0.246505 0.424674 0.871141
+vn 0.246505 0.424674 0.871141
+vn 0.246505 0.424674 0.871141
+vn -0.246494 -0.424683 -0.871140
+vn -0.246494 -0.424683 -0.871140
+vn -0.246494 -0.424683 -0.871140
+vn -0.246494 -0.424683 -0.871140
+vn 0.393507 0.677904 0.620966
+vn 0.393507 0.677904 0.620966
+vn 0.393507 0.677904 0.620966
+vn 0.393507 0.677904 0.620966
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn 0.910790 -0.158080 0.381409
+vn 0.698382 -0.122446 0.705174
+vn 0.900644 -0.205257 0.383027
+vn 0.688975 -0.156968 0.707583
+vn 0.698382 -0.122446 0.705174
+vn 0.380481 -0.067473 0.922324
+vn 0.688975 -0.156968 0.707583
+vn 0.372352 -0.084769 0.924212
+vn 0.380481 -0.067473 0.922324
+vn 0.005281 0.000112 0.999986
+vn 0.372352 -0.084769 0.924212
+vn -0.000889 0.000320 1.000000
+vn 0.005281 0.000112 0.999986
+vn -0.370646 0.070916 0.926063
+vn -0.000889 0.000320 1.000000
+vn -0.373863 0.085330 0.923550
+vn -0.370646 0.070916 0.926063
+vn -0.690600 0.133640 0.710783
+vn -0.373863 0.085330 0.923550
+vn -0.689853 0.157335 0.706645
+vn -0.690600 0.133640 0.710783
+vn -0.905520 0.176963 0.385640
+vn -0.689853 0.157335 0.706645
+vn -0.900890 0.205403 0.382370
+vn -0.905520 0.176963 0.385640
+vn -0.981315 0.192409 0.000010
+vn -0.900890 0.205403 0.382370
+vn -0.974990 0.222249 0.000022
+vn -0.981315 0.192409 0.000010
+vn -0.905543 0.176877 -0.385624
+vn -0.974990 0.222249 0.000022
+vn -0.900925 0.205320 -0.382333
+vn -0.905543 0.176877 -0.385624
+vn -0.690637 0.133482 -0.710776
+vn -0.900925 0.205320 -0.382333
+vn -0.689907 0.157181 -0.706627
+vn -0.690637 0.133482 -0.710776
+vn -0.370697 0.070710 -0.926058
+vn -0.689907 0.157181 -0.706627
+vn -0.373927 0.085128 -0.923543
+vn -0.370697 0.070710 -0.926058
+vn 0.005224 -0.000111 -0.999986
+vn -0.373927 0.085128 -0.923543
+vn -0.000944 0.000098 -1.000000
+vn 0.005224 -0.000111 -0.999986
+vn 0.380426 -0.067678 -0.922332
+vn -0.000944 0.000098 -1.000000
+vn 0.372309 -0.084977 -0.924210
+vn 0.380426 -0.067678 -0.922332
+vn 0.698342 -0.122601 -0.705186
+vn 0.372309 -0.084977 -0.924210
+vn 0.688950 -0.157129 -0.707572
+vn 0.698342 -0.122601 -0.705186
+vn 0.910768 -0.158164 -0.381426
+vn 0.688950 -0.157129 -0.707572
+vn 0.900634 -0.205344 -0.383003
+vn 0.910768 -0.158164 -0.381426
+vn 0.985372 -0.170419 -0.000011
+vn 0.900634 -0.205344 -0.383003
+vn 0.974990 -0.222249 0.000010
+vn 0.985372 -0.170419 -0.000011
+vn 0.910790 -0.158080 0.381409
+vn 0.974990 -0.222249 0.000010
+vn 0.900644 -0.205257 0.383027
+vn 0.910790 -0.158080 0.381409
+vn 0.985372 -0.170419 -0.000011
+vn 0.836973 0.383317 0.390570
+vn 0.908498 0.417889 -0.000073
+vn 0.910768 -0.158164 -0.381426
+vn 0.836952 0.383228 -0.390702
+vn 0.985372 -0.170419 -0.000011
+vn 0.908498 0.417889 -0.000073
+vn 0.698342 -0.122601 -0.705186
+vn 0.640906 0.289455 -0.710953
+vn 0.910768 -0.158164 -0.381426
+vn 0.836952 0.383228 -0.390702
+vn 0.380426 -0.067678 -0.922332
+vn 0.361276 0.159165 -0.918774
+vn 0.698342 -0.122601 -0.705186
+vn 0.640906 0.289455 -0.710953
+vn 0.005224 -0.000111 -0.999986
+vn 0.036537 0.014548 -0.999226
+vn 0.380426 -0.067678 -0.922332
+vn 0.361276 0.159165 -0.918774
+vn -0.370697 0.070710 -0.926058
+vn -0.304137 -0.125566 -0.944317
+vn 0.005224 -0.000111 -0.999986
+vn 0.036537 0.014548 -0.999226
+vn -0.370697 0.070710 -0.926058
+vn -0.690637 0.133482 -0.710776
+vn -0.304137 -0.125566 -0.944317
+vn -0.626575 -0.236044 -0.742757
+vn -0.690637 0.133482 -0.710776
+vn -0.905543 0.176877 -0.385624
+vn -0.626575 -0.236044 -0.742757
+vn -0.870877 -0.279495 -0.404296
+vn -0.905543 0.176877 -0.385624
+vn -0.981315 0.192409 0.000010
+vn -0.870877 -0.279495 -0.404296
+vn -0.962459 -0.271428 0.000063
+vn -0.905520 0.176963 0.385640
+vn -0.870853 -0.279408 0.404409
+vn -0.981315 0.192409 0.000010
+vn -0.962459 -0.271428 0.000063
+vn -0.690600 0.133640 0.710783
+vn -0.626535 -0.235880 0.742843
+vn -0.905520 0.176963 0.385640
+vn -0.870853 -0.279408 0.404409
+vn -0.370646 0.070916 0.926063
+vn -0.304083 -0.125352 0.944363
+vn -0.690600 0.133640 0.710783
+vn -0.626535 -0.235880 0.742843
+vn -0.370646 0.070916 0.926063
+vn 0.005281 0.000112 0.999986
+vn -0.304083 -0.125352 0.944363
+vn 0.036596 0.014773 0.999221
+vn 0.005281 0.000112 0.999986
+vn 0.380481 -0.067473 0.922324
+vn 0.036596 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.380481 -0.067473 0.922324
+vn 0.698382 -0.122446 0.705174
+vn 0.361329 0.159371 0.918718
+vn 0.640944 0.289611 0.710856
+vn 0.698382 -0.122446 0.705174
+vn 0.910790 -0.158080 0.381409
+vn 0.640944 0.289611 0.710856
+vn 0.836973 0.383317 0.390570
+vn 0.836973 0.383317 0.390570
+vn 0.908498 0.417889 -0.000073
+vn 0.681799 0.637267 0.359224
+vn 0.730615 0.682790 -0.000095
+vn 0.836952 0.383228 -0.390702
+vn 0.681780 0.637186 -0.359402
+vn 0.908498 0.417889 -0.000073
+vn 0.730615 0.682790 -0.000095
+vn 0.640906 0.289455 -0.710953
+vn 0.539219 0.504087 -0.674640
+vn 0.836952 0.383228 -0.390702
+vn 0.681780 0.637186 -0.359402
+vn 0.361276 0.159165 -0.918774
+vn 0.319664 0.298978 -0.899126
+vn 0.640906 0.289455 -0.710953
+vn 0.539219 0.504087 -0.674640
+vn 0.036537 0.014548 -0.999226
+vn 0.052543 0.049041 -0.997414
+vn 0.361276 0.159165 -0.918774
+vn 0.319664 0.298978 -0.899126
+vn -0.304137 -0.125566 -0.944317
+vn -0.226958 -0.213369 -0.950244
+vn 0.036537 0.014548 -0.999226
+vn 0.052543 0.049041 -0.997414
+vn -0.626575 -0.236044 -0.742757
+vn -0.479479 -0.452105 -0.752131
+vn -0.304137 -0.125566 -0.944317
+vn -0.226958 -0.213369 -0.950244
+vn -0.870877 -0.279495 -0.404296
+vn -0.659553 -0.624665 -0.418072
+vn -0.626575 -0.236044 -0.742757
+vn -0.479479 -0.452105 -0.752131
+vn -0.962459 -0.271428 0.000063
+vn -0.710581 -0.674709 -0.199608
+vn -0.870877 -0.279495 -0.404296
+vn -0.659553 -0.624665 -0.418072
+vn -0.962459 -0.271428 0.000063
+vn -0.870853 -0.279408 0.404409
+vn -0.710557 -0.674676 0.199803
+vn -0.659520 -0.624583 0.418246
+vn -0.870853 -0.279408 0.404409
+vn -0.626535 -0.235880 0.742843
+vn -0.659520 -0.624583 0.418246
+vn -0.479433 -0.451939 0.752260
+vn -0.626535 -0.235880 0.742843
+vn -0.304083 -0.125352 0.944363
+vn -0.479433 -0.451939 0.752260
+vn -0.226904 -0.213152 0.950306
+vn -0.304083 -0.125352 0.944363
+vn 0.036596 0.014773 0.999221
+vn -0.226904 -0.213152 0.950306
+vn 0.052599 0.049265 0.997400
+vn 0.036596 0.014773 0.999221
+vn 0.361329 0.159371 0.918718
+vn 0.052599 0.049265 0.997400
+vn 0.319714 0.299179 0.899041
+vn 0.361329 0.159371 0.918718
+vn 0.640944 0.289611 0.710856
+vn 0.319714 0.299179 0.899041
+vn 0.539255 0.504237 0.674499
+vn 0.640944 0.289611 0.710856
+vn 0.836973 0.383317 0.390570
+vn 0.539255 0.504237 0.674499
+vn 0.681799 0.637267 0.359224
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.222248 -0.974990 0.000114
+vn -0.974990 0.222247 -0.000002
+vn -0.974990 0.222247 -0.000002
+vn -0.974991 0.222244 0.000002
+vn -0.974991 0.222245 0.000002
+vn -0.974990 0.222247 -0.000002
+vn -0.974990 0.222249 -0.000000
+vn -0.974990 0.222247 -0.000002
+vn -0.974990 0.222249 0.000000
+vn -0.974990 0.222249 -0.000000
+vn -0.974989 0.222251 0.000002
+vn -0.974990 0.222249 0.000000
+vn -0.974989 0.222252 0.000002
+vn -0.974989 0.222251 0.000002
+vn -0.974989 0.222251 -0.000002
+vn -0.974989 0.222252 0.000002
+vn -0.974990 0.222251 -0.000002
+vn -0.974989 0.222251 -0.000002
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222251 -0.000002
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222248 -0.000000
+vn -0.974990 0.222251 0.000004
+vn -0.974990 0.222250 0.000002
+vn -0.974990 0.222249 0.000001
+vn -0.974990 0.222249 0.000001
+vn -0.974989 0.222255 0.000009
+vn -0.974989 0.222255 0.000009
+vn -0.974990 0.222251 0.000004
+vn -0.974990 0.222250 0.000002
+vn -0.974988 0.222257 0.000002
+vn -0.974988 0.222257 0.000002
+vn -0.974989 0.222255 0.000009
+vn -0.974989 0.222255 0.000009
+vn -0.974988 0.222257 0.000002
+vn -0.974989 0.222254 -0.000005
+vn -0.974988 0.222257 0.000002
+vn -0.974989 0.222254 -0.000004
+vn -0.974989 0.222254 -0.000005
+vn -0.974989 0.222252 0.000000
+vn -0.974989 0.222254 -0.000004
+vn -0.974989 0.222251 0.000001
+vn -0.974989 0.222252 0.000000
+vn -0.974989 0.222251 0.000002
+vn -0.974989 0.222251 0.000001
+vn -0.974989 0.222252 0.000001
+vn -0.974989 0.222251 0.000002
+vn -0.974990 0.222250 -0.000005
+vn -0.974989 0.222252 0.000001
+vn -0.974990 0.222250 -0.000005
+vn -0.974991 0.222246 -0.000001
+vn -0.974991 0.222246 -0.000002
+vn -0.974990 0.222250 -0.000005
+vn -0.974990 0.222250 -0.000005
+vn -0.974991 0.222246 0.000005
+vn -0.974991 0.222246 0.000005
+vn -0.974991 0.222246 -0.000001
+vn -0.974991 0.222246 -0.000002
+vn -0.974991 0.222244 0.000002
+vn -0.974991 0.222245 0.000002
+vn -0.974991 0.222246 0.000005
+vn -0.974991 0.222246 0.000005
+vn -0.734613 -0.678486 0.000100
+vn -0.911179 -0.412010 0.000076
+vn -0.684652 -0.622670 -0.378859
+vn -0.829660 -0.370159 -0.417907
+vn -0.734613 -0.678486 0.000100
+vn -0.684630 -0.622585 0.379038
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.684630 -0.622585 0.379038
+vn -0.546354 -0.467483 0.694951
+vn -0.829637 -0.370064 0.418038
+vn -0.623330 -0.263638 0.736176
+vn -0.546354 -0.467483 0.694951
+vn -0.349228 -0.245525 0.904299
+vn -0.623330 -0.263638 0.736176
+vn -0.359222 -0.127385 0.924518
+vn -0.349228 -0.245525 0.904299
+vn -0.122325 0.009429 0.992445
+vn -0.359222 -0.127385 0.924518
+vn -0.073926 0.016450 0.997128
+vn -0.122325 0.009429 0.992445
+vn 0.116798 0.272222 0.955120
+vn -0.073926 0.016450 0.997128
+vn 0.227275 0.156256 0.961213
+vn 0.116798 0.272222 0.955120
+vn 0.355263 0.516094 0.779382
+vn 0.227275 0.156256 0.961213
+vn 0.541781 0.275096 0.794226
+vn 0.355263 0.516094 0.779382
+vn 0.560754 0.695191 0.449738
+vn 0.541781 0.275096 0.794226
+vn 0.818285 0.342764 0.461435
+vn 0.560754 0.695191 0.449738
+vn 0.650227 0.759740 -0.000106
+vn 0.818285 0.342764 0.461435
+vn 0.934037 0.357177 -0.000069
+vn 0.560735 0.695086 -0.449923
+vn 0.818264 0.342659 -0.461550
+vn 0.650227 0.759740 -0.000106
+vn 0.934037 0.357177 -0.000069
+vn 0.355223 0.515917 -0.779517
+vn 0.541738 0.274919 -0.794317
+vn 0.560735 0.695086 -0.449923
+vn 0.818264 0.342659 -0.461550
+vn 0.116742 0.272007 -0.955188
+vn 0.227216 0.156040 -0.961262
+vn 0.355223 0.515917 -0.779517
+vn 0.541738 0.274919 -0.794317
+vn -0.122383 0.009208 -0.992440
+vn -0.073985 0.016229 -0.997127
+vn 0.116742 0.272007 -0.955188
+vn 0.227216 0.156040 -0.961262
+vn -0.349280 -0.245726 -0.904225
+vn -0.359273 -0.127590 -0.924469
+vn -0.122383 0.009208 -0.992440
+vn -0.073985 0.016229 -0.997127
+vn -0.546392 -0.467635 -0.694818
+vn -0.623371 -0.263799 -0.736084
+vn -0.349280 -0.245726 -0.904225
+vn -0.359273 -0.127590 -0.924469
+vn -0.684652 -0.622670 -0.378859
+vn -0.829660 -0.370159 -0.417907
+vn -0.546392 -0.467635 -0.694818
+vn -0.623371 -0.263799 -0.736084
+vn -0.911179 -0.412010 0.000076
+vn -0.990921 0.134443 0.000015
+vn -0.829660 -0.370159 -0.417907
+vn -0.898998 0.122431 -0.420491
+vn -0.911179 -0.412010 0.000076
+vn -0.829637 -0.370064 0.418038
+vn -0.990921 0.134443 0.000015
+vn -0.898975 0.122523 0.420515
+vn -0.829637 -0.370064 0.418038
+vn -0.623330 -0.263638 0.736176
+vn -0.898975 0.122523 0.420515
+vn -0.661034 0.091256 0.744786
+vn -0.623330 -0.263638 0.736176
+vn -0.359222 -0.127385 0.924518
+vn -0.661034 0.091256 0.744786
+vn -0.347830 0.048815 0.936286
+vn -0.359222 -0.127385 0.924518
+vn -0.073926 0.016450 0.997128
+vn -0.347830 0.048815 0.936286
+vn -0.008730 0.000347 0.999962
+vn -0.073926 0.016450 0.997128
+vn 0.227275 0.156256 0.961213
+vn -0.008730 0.000347 0.999962
+vn 0.331405 -0.051587 0.942077
+vn 0.227275 0.156256 0.961213
+vn 0.541781 0.275096 0.794226
+vn 0.331405 -0.051587 0.942077
+vn 0.648541 -0.102868 0.754197
+vn 0.541781 0.275096 0.794226
+vn 0.818285 0.342764 0.461435
+vn 0.648541 -0.102868 0.754197
+vn 0.892391 -0.143571 0.427816
+vn 0.818285 0.342764 0.461435
+vn 0.934037 0.357177 -0.000069
+vn 0.892391 -0.143571 0.427816
+vn 0.987188 -0.159563 -0.000011
+vn 0.818264 0.342659 -0.461550
+vn 0.892368 -0.143667 -0.427830
+vn 0.934037 0.357177 -0.000069
+vn 0.987188 -0.159563 -0.000011
+vn 0.541738 0.274919 -0.794317
+vn 0.648499 -0.103035 -0.754210
+vn 0.818264 0.342659 -0.461550
+vn 0.892368 -0.143667 -0.427830
+vn 0.227216 0.156040 -0.961262
+vn 0.331348 -0.051796 -0.942086
+vn 0.541738 0.274919 -0.794317
+vn 0.648499 -0.103035 -0.754210
+vn -0.073985 0.016229 -0.997127
+vn -0.008791 0.000125 -0.999961
+vn 0.227216 0.156040 -0.961262
+vn 0.331348 -0.051796 -0.942086
+vn -0.359273 -0.127590 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.073985 0.016229 -0.997127
+vn -0.008791 0.000125 -0.999961
+vn -0.623371 -0.263799 -0.736084
+vn -0.661076 0.091091 -0.744769
+vn -0.359273 -0.127590 -0.924469
+vn -0.347879 0.048607 -0.936279
+vn -0.829660 -0.370159 -0.417907
+vn -0.898998 0.122431 -0.420491
+vn -0.623371 -0.263799 -0.736084
+vn -0.661076 0.091091 -0.744769
+vn -0.898998 0.122431 -0.420491
+vn -0.990921 0.134443 0.000015
+vn -0.882926 0.201214 -0.424210
+vn -0.974990 0.222248 0.000002
+vn -0.990921 0.134443 0.000015
+vn -0.898975 0.122523 0.420515
+vn -0.974990 0.222248 0.000002
+vn -0.882902 0.201307 0.424216
+vn -0.898975 0.122523 0.420515
+vn -0.661034 0.091256 0.744786
+vn -0.882902 0.201307 0.424216
+vn -0.645795 0.147297 0.749168
+vn -0.661034 0.091256 0.744786
+vn -0.347830 0.048815 0.936286
+vn -0.645795 0.147297 0.749168
+vn -0.335176 0.076515 0.939044
+vn -0.347830 0.048815 0.936286
+vn -0.008730 0.000347 0.999962
+vn -0.335176 0.076515 0.939044
+vn 0.000408 0.000026 1.000000
+vn -0.008730 0.000347 0.999962
+vn 0.331405 -0.051587 0.942077
+vn 0.000408 0.000026 1.000000
+vn 0.336309 -0.076551 0.938635
+vn 0.331405 -0.051587 0.942077
+vn 0.648541 -0.102868 0.754197
+vn 0.336309 -0.076551 0.938635
+vn 0.647501 -0.147510 0.747652
+vn 0.648541 -0.102868 0.754197
+vn 0.892391 -0.143571 0.427816
+vn 0.647501 -0.147510 0.747652
+vn 0.884005 -0.201459 0.421840
+vn 0.892391 -0.143571 0.427816
+vn 0.987188 -0.159563 -0.000011
+vn 0.884005 -0.201459 0.421840
+vn 0.974990 -0.222249 0.000000
+vn 0.987188 -0.159563 -0.000011
+vn 0.892368 -0.143667 -0.427830
+vn 0.974990 -0.222249 0.000000
+vn 0.883981 -0.201553 -0.421845
+vn 0.648499 -0.103035 -0.754210
+vn 0.647461 -0.147676 -0.747654
+vn 0.892368 -0.143667 -0.427830
+vn 0.883981 -0.201553 -0.421845
+vn 0.331348 -0.051796 -0.942086
+vn 0.336252 -0.076759 -0.938639
+vn 0.648499 -0.103035 -0.754210
+vn 0.647461 -0.147676 -0.747654
+vn -0.008791 0.000125 -0.999961
+vn 0.000347 -0.000197 -1.000000
+vn 0.331348 -0.051796 -0.942086
+vn 0.336252 -0.076759 -0.938639
+vn -0.347879 0.048607 -0.936279
+vn -0.335227 0.076305 -0.939042
+vn -0.008791 0.000125 -0.999961
+vn 0.000347 -0.000197 -1.000000
+vn -0.661076 0.091091 -0.744769
+vn -0.645838 0.147131 -0.749163
+vn -0.347879 0.048607 -0.936279
+vn -0.335227 0.076305 -0.939042
+vn -0.898998 0.122431 -0.420491
+vn -0.882926 0.201214 -0.424210
+vn -0.661076 0.091091 -0.744769
+vn -0.645838 0.147131 -0.749163
+vn 0.900923 -0.205323 0.382335
+vn 0.689910 -0.157182 0.706625
+vn 0.900784 -0.205292 0.382680
+vn 0.689444 -0.157075 0.707103
+vn 0.689910 -0.157182 0.706625
+vn 0.373927 -0.085130 0.923543
+vn 0.689444 -0.157075 0.707103
+vn 0.373141 -0.084951 0.923877
+vn 0.373927 -0.085130 0.923543
+vn 0.000942 -0.000099 1.000000
+vn 0.373141 -0.084951 0.923877
+vn 0.000024 0.000110 1.000000
+vn 0.000942 -0.000099 1.000000
+vn -0.372313 0.084977 0.924209
+vn 0.000024 0.000110 1.000000
+vn -0.373089 0.085154 0.923879
+vn -0.372313 0.084977 0.924209
+vn -0.688949 0.157134 0.707572
+vn -0.373089 0.085154 0.923879
+vn -0.689400 0.157237 0.707110
+vn -0.688949 0.157134 0.707572
+vn -0.900630 0.205355 0.383008
+vn -0.689400 0.157237 0.707110
+vn -0.900758 0.205385 0.382690
+vn -0.900630 0.205355 0.383008
+vn -0.974988 0.222259 -0.000014
+vn -0.900758 0.205385 0.382690
+vn -0.974988 0.222259 0.000003
+vn -0.900643 0.205260 -0.383028
+vn -0.900783 0.205292 -0.382681
+vn -0.974988 0.222259 -0.000014
+vn -0.974988 0.222259 0.000003
+vn -0.688977 0.156969 -0.707582
+vn -0.689444 0.157076 -0.707103
+vn -0.900643 0.205260 -0.383028
+vn -0.900783 0.205292 -0.382681
+vn -0.372352 0.084771 -0.924212
+vn -0.373143 0.084951 -0.923877
+vn -0.688977 0.156969 -0.707582
+vn -0.689444 0.157076 -0.707103
+vn 0.000892 -0.000317 -1.000000
+vn -0.000024 -0.000108 -1.000000
+vn -0.372352 0.084771 -0.924212
+vn -0.373143 0.084951 -0.923877
+vn 0.373865 -0.085322 -0.923550
+vn 0.373092 -0.085145 -0.923879
+vn 0.000892 -0.000317 -1.000000
+vn -0.000024 -0.000108 -1.000000
+vn 0.689854 -0.157325 -0.706648
+vn 0.689404 -0.157223 -0.707109
+vn 0.373865 -0.085322 -0.923550
+vn 0.373092 -0.085145 -0.923879
+vn 0.900891 -0.205402 -0.382368
+vn 0.900764 -0.205373 -0.382684
+vn 0.689854 -0.157325 -0.706648
+vn 0.689404 -0.157223 -0.707109
+vn 0.900891 -0.205402 -0.382368
+vn 0.974989 -0.222254 -0.000019
+vn 0.900764 -0.205373 -0.382684
+vn 0.974989 -0.222254 -0.000004
+vn 0.974989 -0.222254 -0.000019
+vn 0.900923 -0.205323 0.382335
+vn 0.974989 -0.222254 -0.000004
+vn 0.900784 -0.205292 0.382680
+vn 0.488658 0.841754 0.229485
+vn 0.488658 0.841754 0.229485
+vn 0.488658 0.841754 0.229485
+vn 0.488658 0.841754 0.229485
+vn -0.488624 -0.841775 -0.229480
+vn -0.488624 -0.841775 -0.229480
+vn -0.488624 -0.841775 -0.229480
+vn -0.488624 -0.841775 -0.229480
+vn 0.488636 0.841708 -0.229700
+vn 0.488636 0.841708 -0.229700
+vn 0.488636 0.841708 -0.229700
+vn 0.488636 0.841708 -0.229700
+vn -0.488612 -0.841721 0.229704
+vn -0.488612 -0.841721 0.229704
+vn -0.488612 -0.841721 0.229704
+vn -0.488612 -0.841721 0.229704
+vn 0.393470 0.677774 -0.621131
+vn 0.393470 0.677774 -0.621131
+vn 0.393470 0.677774 -0.621131
+vn 0.393471 0.677774 -0.621131
+vn -0.393477 -0.677766 0.621136
+vn -0.393477 -0.677766 0.621136
+vn -0.393477 -0.677766 0.621136
+vn -0.393478 -0.677765 0.621136
+vn 0.246427 0.424478 -0.871259
+vn 0.246427 0.424478 -0.871259
+vn 0.246427 0.424478 -0.871259
+vn 0.246427 0.424478 -0.871259
+vn -0.246468 -0.424469 0.871252
+vn -0.246468 -0.424469 0.871252
+vn -0.246468 -0.424469 0.871252
+vn -0.246468 -0.424469 0.871252
+vn 0.083023 0.143018 -0.986232
+vn 0.083023 0.143018 -0.986232
+vn 0.083023 0.143018 -0.986232
+vn 0.083023 0.143018 -0.986232
+vn -0.083073 -0.143010 0.986229
+vn -0.083073 -0.143010 0.986229
+vn -0.083073 -0.143010 0.986229
+vn -0.083073 -0.143010 0.986229
+vn -0.083188 -0.143302 -0.986177
+vn -0.083188 -0.143302 -0.986177
+vn -0.083188 -0.143302 -0.986177
+vn -0.083188 -0.143302 -0.986177
+vn 0.083145 0.143319 0.986178
+vn 0.083145 0.143319 0.986178
+vn 0.083145 0.143319 0.986178
+vn 0.083145 0.143319 0.986178
+vn -0.246900 -0.425376 -0.870687
+vn -0.246900 -0.425376 -0.870687
+vn -0.246900 -0.425376 -0.870687
+vn -0.246900 -0.425376 -0.870687
+vn 0.246878 0.425376 0.870693
+vn 0.246878 0.425376 0.870693
+vn 0.246878 0.425376 0.870693
+vn 0.246878 0.425376 0.870693
+vn -0.394247 -0.679199 -0.619078
+vn -0.394247 -0.679199 -0.619078
+vn -0.394247 -0.679199 -0.619078
+vn -0.394247 -0.679199 -0.619078
+vn 0.394261 0.679202 0.619067
+vn 0.394261 0.679202 0.619067
+vn 0.394261 0.679202 0.619067
+vn 0.394261 0.679202 0.619067
+vn -0.488861 -0.842121 -0.227700
+vn -0.488861 -0.842121 -0.227700
+vn -0.488861 -0.842121 -0.227700
+vn -0.488861 -0.842121 -0.227700
+vn 0.488850 0.842128 0.227698
+vn 0.488850 0.842128 0.227698
+vn 0.488850 0.842128 0.227698
+vn 0.488850 0.842128 0.227698
+vn -0.488848 -0.842070 0.227918
+vn -0.488848 -0.842070 0.227918
+vn -0.488848 -0.842070 0.227918
+vn -0.488848 -0.842070 0.227918
+vn 0.488822 0.842084 -0.227919
+vn 0.488822 0.842084 -0.227919
+vn 0.488822 0.842084 -0.227919
+vn 0.488822 0.842084 -0.227919
+vn -0.394240 -0.679052 0.619245
+vn -0.394240 -0.679052 0.619245
+vn -0.394240 -0.679052 0.619245
+vn -0.394240 -0.679052 0.619245
+vn 0.394203 0.679068 -0.619250
+vn 0.394203 0.679068 -0.619250
+vn 0.394203 0.679068 -0.619250
+vn 0.394203 0.679068 -0.619250
+vn -0.246840 -0.425180 0.870800
+vn -0.246840 -0.425180 0.870800
+vn -0.246840 -0.425180 0.870800
+vn -0.246840 -0.425180 0.870800
+vn 0.246856 0.425175 -0.870798
+vn 0.246856 0.425175 -0.870798
+vn 0.246856 0.425175 -0.870798
+vn 0.246856 0.425175 -0.870798
+vn -0.083066 -0.143100 0.986216
+vn -0.083066 -0.143100 0.986216
+vn -0.083066 -0.143100 0.986216
+vn -0.083066 -0.143100 0.986216
+vn 0.083119 0.143093 -0.986213
+vn 0.083119 0.143093 -0.986213
+vn 0.083119 0.143093 -0.986213
+vn 0.083119 0.143093 -0.986213
+vn 0.083138 0.143222 0.986192
+vn 0.083138 0.143222 0.986192
+vn 0.083138 0.143222 0.986192
+vn 0.083138 0.143222 0.986192
+vn -0.083095 -0.143236 -0.986194
+vn -0.083095 -0.143236 -0.986194
+vn -0.083095 -0.143236 -0.986194
+vn -0.083095 -0.143236 -0.986194
+vn 0.246496 0.424673 0.871144
+vn 0.246496 0.424673 0.871145
+vn 0.246496 0.424673 0.871145
+vn 0.246496 0.424673 0.871145
+vn -0.246479 -0.424678 -0.871147
+vn -0.246479 -0.424678 -0.871147
+vn -0.246479 -0.424678 -0.871147
+vn -0.246479 -0.424678 -0.871147
+vn 0.393502 0.677908 0.620965
+vn 0.393502 0.677908 0.620965
+vn 0.393502 0.677908 0.620965
+vn 0.393502 0.677908 0.620965
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.393484 -0.677911 -0.620973
+vn -0.900784 0.205289 -0.382680
+vn -0.689443 0.157076 -0.707104
+vn -0.900784 0.205289 -0.382680
+vn -0.689443 0.157076 -0.707104
+vn -0.689443 0.157076 -0.707104
+vn -0.373141 0.084950 -0.923877
+vn -0.689443 0.157076 -0.707104
+vn -0.373140 0.084950 -0.923878
+vn -0.373141 0.084950 -0.923877
+vn -0.000029 -0.000110 -1.000000
+vn -0.373140 0.084950 -0.923878
+vn -0.000029 -0.000110 -1.000000
+vn -0.000029 -0.000110 -1.000000
+vn 0.373087 -0.085153 -0.923880
+vn -0.000029 -0.000110 -1.000000
+vn 0.373087 -0.085153 -0.923881
+vn 0.373087 -0.085153 -0.923880
+vn 0.689403 -0.157232 -0.707108
+vn 0.373087 -0.085153 -0.923881
+vn 0.689403 -0.157232 -0.707108
+vn 0.689403 -0.157232 -0.707108
+vn 0.900762 -0.205374 -0.382687
+vn 0.689403 -0.157232 -0.707108
+vn 0.900762 -0.205374 -0.382686
+vn 0.900762 -0.205374 -0.382687
+vn 0.974990 -0.222249 -0.000005
+vn 0.900762 -0.205374 -0.382686
+vn 0.974990 -0.222249 -0.000005
+vn 0.974990 -0.222249 -0.000005
+vn 0.900785 -0.205288 0.382680
+vn 0.974990 -0.222249 -0.000005
+vn 0.900785 -0.205288 0.382679
+vn 0.900785 -0.205288 0.382680
+vn 0.689443 -0.157075 0.707104
+vn 0.900785 -0.205288 0.382679
+vn 0.689442 -0.157075 0.707105
+vn 0.689443 -0.157075 0.707104
+vn 0.373138 -0.084948 0.923879
+vn 0.689442 -0.157075 0.707105
+vn 0.373139 -0.084948 0.923878
+vn 0.373138 -0.084948 0.923879
+vn 0.000027 0.000112 1.000000
+vn 0.373139 -0.084948 0.923878
+vn 0.000027 0.000112 1.000000
+vn 0.000027 0.000112 1.000000
+vn -0.373086 0.085155 0.923881
+vn 0.000027 0.000112 1.000000
+vn -0.373086 0.085155 0.923881
+vn -0.373086 0.085155 0.923881
+vn -0.689401 0.157233 0.707109
+vn -0.373086 0.085155 0.923881
+vn -0.689402 0.157233 0.707109
+vn -0.689401 0.157233 0.707109
+vn -0.900763 0.205374 0.382685
+vn -0.689402 0.157233 0.707109
+vn -0.900763 0.205374 0.382686
+vn -0.900763 0.205374 0.382685
+vn -0.974990 0.222248 0.000002
+vn -0.900763 0.205374 0.382686
+vn -0.974990 0.222248 0.000002
+vn -0.974990 0.222248 0.000002
+vn -0.900784 0.205289 -0.382680
+vn -0.974990 0.222248 0.000002
+vn -0.900784 0.205289 -0.382680
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+vn 0.222249 0.974990 -0.000115
+s 1
+g group5
+usemtl lambert3SG
+f 25/1/1 23/2/2 2/4/3
+f 2/4/3 23/2/2 4/3/4
+s 2
+f 6/5/5 9/6/6 3/9/7
+f 9/6/6 12/7/8 3/9/7
+f 12/7/8 13/8/9 3/9/7
+s 3
+f 28/14/10 16/15/11 38/13/12
+f 16/15/11 26/16/13 38/13/12
+f 38/13/12 26/16/13 40/12/14
+f 26/16/13 1/17/15 40/12/14
+f 40/12/14 1/17/15 69/11/16
+f 15/10/17 69/11/16 1/17/15
+s 4
+f 32/20/18 35/21/19 20/19/20
+f 20/19/20 35/21/19 22/18/21
+f 35/21/19 50/22/22 22/18/21
+f 22/18/21 50/22/22 5/25/23
+f 50/22/22 52/23/24 5/25/23
+f 52/23/24 7/24/25 5/25/23
+s 5
+f 56/26/26 76/27/27 8/29/28
+f 8/29/28 76/27/27 10/28/29
+s 6
+f 70/31/30 14/32/31 75/30/32
+f 75/30/32 14/32/31 11/33/33
+s 7
+f 11/33/34 10/28/35 75/30/36
+f 75/30/36 10/28/35 76/27/37
+s 8
+f 30/34/38 33/35/39 17/37/40
+f 17/37/40 33/35/39 19/36/41
+s 9
+f 21/38/42 24/39/43 18/41/44
+f 18/41/44 24/39/43 27/40/45
+s 10
+f 37/42/46 36/43/47 29/45/48
+f 29/45/48 36/43/47 31/44/49
+s 11
+f 39/46/50 42/47/51 34/51/52
+f 34/51/52 42/47/51 51/50/53
+f 42/47/51 43/48/54 51/50/53
+f 43/48/54 48/49/55 51/50/53
+s 12
+f 68/52/56 67/53/57 41/55/58
+f 41/55/58 67/53/57 44/54/59
+s 13
+f 66/56/60 63/57/61 45/60/62
+f 45/60/62 63/57/61 46/59/63
+f 63/57/61 59/58/64 46/59/63
+s 14
+f 53/62/65 49/63/66 58/61/67
+f 58/61/67 49/63/66 47/64/68
+s 15
+f 57/65/69 90/66/70 54/68/71
+f 54/68/71 90/66/70 85/67/72
+s 16
+f 87/69/73 79/70/74 55/72/75
+f 55/72/75 79/70/74 73/71/76
+s 17
+f 62/73/77 84/74/78 60/76/79
+f 60/76/79 84/74/78 88/75/80
+s 18
+f 65/77/81 96/78/82 61/80/83
+f 61/80/83 96/78/82 81/79/84
+s 19
+f 62/73/85 61/80/86 84/74/87
+f 84/74/87 61/80/86 81/79/88
+s 20
+f 72/81/89 92/82/90 64/84/91
+f 64/84/91 92/82/90 94/83/92
+s 21
+f 74/85/93 78/86/94 71/88/95
+f 71/88/95 78/86/94 93/87/96
+s 22
+f 86/89/97 89/90/98 80/92/99
+f 80/92/99 89/90/98 83/91/100
+s 23
+f 82/93/101 95/94/102 77/96/103
+f 77/96/103 95/94/102 91/95/104
+s 24
+f 77/96/105 80/92/106 82/93/107
+f 82/93/107 80/92/106 83/91/108
+s 25
+f 2/4/109 1/97/110 25/1/111
+f 25/1/111 1/97/110 26/98/112
+s 26
+f 3/99/113 2/4/114 6/100/115
+f 6/100/115 2/4/114 4/3/116
+s 27
+f 1/101/117 3/9/118 15/102/119
+f 15/102/119 3/9/118 13/8/120
+s 28
+f 4/3/121 23/2/122 5/103/123
+f 5/103/123 23/2/122 22/104/124
+s 29
+f 5/105/125 7/106/126 6/5/127
+f 6/5/127 7/106/126 9/6/128
+s 30
+f 8/107/129 7/24/130 56/108/131
+f 56/108/131 7/24/130 52/23/132
+s 31
+f 8/109/133 10/110/134 9/6/135
+f 9/6/135 10/110/134 12/7/136
+s 32
+f 12/7/137 11/111/138 13/8/139
+f 13/8/139 11/111/138 14/112/140
+s off
+f 10/110/141 11/111/142 12/7/143
+s 33
+f 14/113/144 70/114/145 15/10/146
+f 15/10/146 70/114/145 69/11/147
+s 34
+f 16/15/148 28/14/149 17/115/150
+f 17/115/150 28/14/149 30/116/151
+s 35
+f 18/117/152 17/37/153 21/118/154
+f 21/118/154 17/37/153 19/36/155
+s 36
+f 18/119/156 27/120/157 16/15/158
+f 16/15/158 27/120/157 26/16/159
+s 37
+f 20/19/160 19/121/161 32/20/162
+f 32/20/162 19/121/161 33/122/163
+s 38
+f 21/123/164 20/19/165 24/124/166
+f 24/124/166 20/19/165 22/18/167
+s 39
+f 24/125/168 23/2/169 27/126/170
+f 27/126/170 23/2/169 25/1/171
+s 40
+f 29/127/172 28/14/173 37/128/174
+f 37/128/174 28/14/173 38/13/175
+s 41
+f 30/34/176 29/129/177 33/35/178
+f 33/35/178 29/129/177 31/130/179
+s 42
+f 31/131/180 36/132/181 32/20/182
+f 32/20/182 36/132/181 35/21/183
+s 43
+f 35/21/184 34/133/185 50/22/186
+f 50/22/186 34/133/185 51/134/187
+s 44
+f 34/135/188 36/43/189 39/136/190
+f 39/136/190 36/43/189 37/42/191
+s 45
+f 38/13/192 40/12/193 39/137/194
+f 39/137/194 40/12/193 42/138/195
+s 46
+f 41/55/196 40/12/197 68/52/198
+f 68/52/198 40/12/197 69/11/199
+s 47
+f 42/138/200 41/55/201 43/139/202
+f 43/139/202 41/55/201 44/54/203
+s 48
+f 45/140/204 44/54/205 66/141/206
+f 66/141/206 44/54/205 67/53/207
+s 49
+f 43/48/208 45/142/209 48/49/210
+f 48/49/210 45/142/209 46/143/211
+s 50
+f 46/144/212 59/145/213 47/64/214
+f 47/64/214 59/145/213 58/61/215
+s 51
+f 47/64/216 49/63/217 48/146/218
+f 48/146/218 49/63/217 51/134/219
+s 52
+f 50/22/220 49/63/221 52/23/222
+f 52/23/222 49/63/221 53/62/223
+s 53
+f 54/68/224 53/62/225 57/65/226
+f 57/65/226 53/62/225 58/61/227
+s 54
+f 55/147/228 54/68/229 87/148/230
+f 87/148/230 54/68/229 85/67/231
+s 55
+f 55/149/232 73/150/233 56/26/234
+f 56/26/234 73/150/233 76/27/235
+s 56
+f 60/76/236 59/58/237 62/73/238
+f 62/73/238 59/58/237 63/57/239
+s off
+f 61/80/240 62/73/241 63/57/242
+s 57
+f 57/65/243 60/151/244 90/66/245
+f 90/66/245 60/151/244 88/152/246
+s 58
+f 63/57/247 66/56/248 61/80/249
+f 61/80/249 66/56/248 65/77/250
+s 59
+f 65/153/251 64/84/252 96/154/253
+f 96/154/253 64/84/252 94/83/254
+s 60
+f 67/53/255 68/52/256 64/84/257
+f 64/84/257 68/52/256 72/81/258
+s 61
+f 71/155/259 70/31/260 74/156/261
+f 74/156/261 70/31/260 75/30/262
+s 62
+f 72/81/263 71/157/264 92/82/265
+f 92/82/265 71/157/264 93/158/266
+s 63
+f 74/85/267 73/71/268 78/86/269
+f 78/86/269 73/71/268 79/70/270
+s 64
+f 77/159/271 91/160/272 78/86/273
+f 78/86/273 91/160/272 93/87/274
+s 65
+f 80/161/275 79/70/276 86/162/277
+f 86/162/277 79/70/276 87/69/278
+s 66
+f 81/79/279 96/78/280 82/163/281
+f 82/163/281 96/78/280 95/164/282
+s 67
+f 84/74/283 83/165/284 88/75/285
+f 88/75/285 83/165/284 89/166/286
+s 68
+f 81/79/287 82/163/288 84/74/289
+f 84/74/289 82/163/288 83/165/290
+s 69
+f 85/67/291 90/66/292 86/167/293
+f 86/167/293 90/66/292 89/168/294
+s 70
+f 92/82/295 91/169/296 94/83/297
+f 94/83/297 91/169/296 95/170/298
+s off
+f 1/171/299 2/172/300 3/173/301
+f 4/174/302 5/175/303 6/176/304
+f 7/106/305 8/109/306 9/6/307
+f 13/8/308 14/112/309 15/102/310
+f 16/15/311 17/115/312 18/119/313
+f 19/121/314 20/19/315 21/123/316
+f 22/18/317 23/177/318 24/124/319
+f 25/178/320 26/16/321 27/120/322
+f 28/14/323 29/127/324 30/116/325
+f 31/131/326 32/20/327 33/122/328
+f 34/133/329 35/21/330 36/132/331
+f 37/128/332 38/13/333 39/137/334
+f 40/12/335 41/55/336 42/138/337
+f 43/48/338 44/179/339 45/142/340
+f 46/143/341 47/180/342 48/49/343
+f 49/63/344 50/22/345 51/134/346
+s 71
+f 54/68/347 55/147/348 53/62/349
+f 53/62/349 55/147/348 52/23/350
+f 52/23/350 55/147/348 56/108/351
+s 72
+f 57/65/352 58/61/353 60/151/354
+f 60/151/354 58/61/353 59/145/355
+s 73
+f 64/84/356 65/153/357 67/53/358
+f 67/53/358 65/153/357 66/141/359
+s 74
+f 72/81/360 68/52/361 71/157/362
+f 68/52/361 69/11/363 71/157/362
+f 69/11/363 70/114/364 71/157/362
+s 75
+f 73/150/365 74/156/366 76/27/367
+f 76/27/367 74/156/366 75/30/368
+s 76
+f 77/159/369 78/86/370 80/161/371
+f 80/161/371 78/86/370 79/70/372
+s off
+f 85/67/373 86/167/374 87/148/375
+f 88/75/376 89/166/377 90/181/378
+f 91/169/379 92/82/380 93/158/381
+f 94/182/382 95/164/383 96/78/384
+s 77
+f 119/184/385 100/185/386 115/183/387
+f 115/183/387 100/185/386 98/186/388
+s 78
+f 102/187/389 108/188/390 99/190/391
+f 99/190/391 108/188/390 105/189/392
+s 79
+f 104/191/393 110/192/394 97/194/395
+f 97/194/395 110/192/394 116/193/396
+s 80
+f 118/195/397 112/196/398 101/198/399
+f 101/198/399 112/196/398 106/197/400
+s 81
+f 107/199/401 114/200/402 103/202/403
+f 103/202/403 114/200/402 111/201/404
+s 82
+f 120/204/405 117/205/406 113/203/407
+f 113/203/407 117/205/406 109/206/408
+s 83
+f 98/186/409 97/207/410 115/183/411
+f 115/183/411 97/207/410 116/208/412
+s 84
+f 99/209/413 98/186/414 102/210/415
+f 102/210/415 98/186/414 100/185/416
+s 85
+f 97/211/417 99/190/418 104/212/419
+f 104/212/419 99/190/418 105/189/420
+s 86
+f 101/213/421 100/185/422 118/214/423
+f 118/214/423 100/185/422 119/184/424
+s 87
+f 101/215/425 106/216/426 102/187/427
+f 102/187/427 106/216/426 108/188/428
+s 88
+f 104/191/429 103/217/430 110/192/431
+f 110/192/431 103/217/430 111/218/432
+s 89
+f 103/219/433 105/189/434 107/220/435
+f 107/220/435 105/189/434 108/188/436
+s 90
+f 107/221/437 106/197/438 114/222/439
+f 114/222/439 106/197/438 112/196/440
+s 91
+f 109/223/441 117/224/442 110/192/443
+f 110/192/443 117/224/442 116/193/444
+s 92
+f 111/201/445 114/200/446 109/225/447
+f 109/225/447 114/200/446 113/226/448
+s 93
+f 113/227/449 112/196/450 120/228/451
+f 120/228/451 112/196/450 118/195/452
+s 94
+f 117/229/453 120/230/454 115/183/455
+f 115/183/455 120/230/454 119/184/456
+s off
+f 97/207/457 98/186/458 99/209/459
+f 100/231/460 101/215/461 102/187/462
+f 103/219/463 104/212/464 105/189/465
+f 106/216/466 107/220/467 108/188/468
+f 109/223/469 110/192/470 111/218/471
+f 112/196/472 113/227/473 114/222/474
+f 115/183/475 116/208/476 117/229/477
+f 118/195/478 119/232/479 120/228/480
+s 95
+f 139/233/481 143/234/482 122/236/483
+f 122/236/483 143/234/482 124/235/484
+s 96
+f 132/238/485 129/239/486 126/237/487
+f 126/237/487 129/239/486 123/240/488
+s 97
+f 128/241/489 134/242/490 121/244/491
+f 121/244/491 134/242/490 140/243/492
+s 98
+f 142/245/493 136/246/494 125/248/495
+f 125/248/495 136/246/494 130/247/496
+s 99
+f 131/249/497 138/250/498 127/252/499
+f 127/252/499 138/250/498 135/251/500
+s 100
+f 137/253/501 144/254/502 133/256/503
+f 133/256/503 144/254/502 141/255/504
+s 101
+f 122/236/505 121/257/506 139/233/507
+f 139/233/507 121/257/506 140/258/508
+s 102
+f 122/236/509 124/235/510 123/259/511
+f 123/259/511 124/235/510 126/260/512
+s 103
+f 121/261/513 123/240/514 128/262/515
+f 128/262/515 123/240/514 129/239/516
+s 104
+f 125/263/517 124/235/518 142/264/519
+f 142/264/519 124/235/518 143/234/520
+s 105
+f 126/237/521 125/265/522 132/238/523
+f 132/238/523 125/265/522 130/266/524
+s 106
+f 128/241/525 127/267/526 134/242/527
+f 134/242/527 127/267/526 135/268/528
+s 107
+f 127/269/529 129/239/530 131/270/531
+f 131/270/531 129/239/530 132/238/532
+s 108
+f 131/271/533 130/247/534 138/272/535
+f 138/272/535 130/247/534 136/246/536
+s 109
+f 134/242/537 133/273/538 140/243/539
+f 140/243/539 133/273/538 141/274/540
+s 110
+f 135/251/541 138/250/542 133/275/543
+f 133/275/543 138/250/542 137/276/544
+s 111
+f 136/246/545 142/245/546 137/277/547
+f 137/277/547 142/245/546 144/278/548
+s 112
+f 139/233/549 141/279/550 143/234/551
+f 143/234/551 141/279/550 144/280/552
+s off
+f 121/257/553 122/236/554 123/259/555
+f 124/235/556 125/263/557 126/260/558
+f 127/269/559 128/262/560 129/239/561
+f 130/266/562 131/270/563 132/238/564
+f 133/273/565 134/242/566 135/268/567
+f 136/246/568 137/277/569 138/272/570
+f 139/233/571 140/258/572 141/279/573
+f 142/264/574 143/234/575 144/280/576
+s 113
+f 145/281/577 146/282/578 161/284/579
+f 161/284/579 146/282/578 162/283/580
+s 114
+f 146/282/581 147/285/582 162/283/583
+f 162/283/583 147/285/582 163/286/584
+s 115
+f 147/285/585 148/287/586 163/286/587
+f 163/286/587 148/287/586 164/288/588
+s 116
+f 148/287/589 149/289/590 164/288/591
+f 164/288/591 149/289/590 165/290/592
+s 117
+f 149/289/593 150/291/594 165/290/595
+f 165/290/595 150/291/594 166/292/596
+s 118
+f 150/291/597 151/293/598 166/292/599
+f 166/292/599 151/293/598 167/294/600
+s 119
+f 151/295/601 152/296/602 167/298/603
+f 167/298/603 152/296/602 168/297/604
+s 120
+f 152/296/605 153/299/606 168/297/607
+f 168/297/607 153/299/606 169/300/608
+s 121
+f 153/299/609 154/301/610 169/300/611
+f 169/300/611 154/301/610 170/302/612
+s 122
+f 154/303/613 155/304/614 170/306/615
+f 170/306/615 155/304/614 171/305/616
+s 123
+f 155/304/617 156/307/618 171/305/619
+f 171/305/619 156/307/618 172/308/620
+s 124
+f 156/307/621 157/309/622 172/308/623
+f 172/308/623 157/309/622 173/310/624
+s 125
+f 157/309/625 158/311/626 173/310/627
+f 173/310/627 158/311/626 174/312/628
+s 126
+f 158/311/629 159/313/630 174/312/631
+f 174/312/631 159/313/630 175/314/632
+s 127
+f 159/315/633 160/316/634 175/318/635
+f 175/318/635 160/316/634 176/317/636
+s 128
+f 160/316/637 145/319/638 176/317/639
+f 176/317/639 145/319/638 161/320/640
+s 129
+f 145/321/641 160/322/642 146/336/643
+f 160/322/642 159/323/644 146/336/643
+f 159/323/644 158/324/645 146/336/643
+f 158/324/645 157/325/646 146/336/643
+f 157/325/646 156/326/647 146/336/643
+f 156/326/647 155/327/648 146/336/643
+f 155/327/648 154/328/649 146/336/643
+f 154/328/649 153/329/650 146/336/643
+f 153/329/650 152/330/651 146/336/643
+f 152/330/651 151/331/652 146/336/643
+f 151/331/652 150/332/653 146/336/643
+f 150/332/653 149/333/654 146/336/643
+f 149/333/654 148/334/655 146/336/643
+f 148/334/655 147/335/656 146/336/643
+s 130
+f 193/337/657 194/338/658 208/352/659
+f 194/338/658 195/339/660 208/352/659
+f 195/339/660 196/340/661 208/352/659
+f 196/340/661 197/341/662 208/352/659
+f 197/341/662 198/342/663 208/352/659
+f 198/342/663 199/343/664 208/352/659
+f 199/343/664 200/344/665 208/352/659
+f 200/344/665 201/345/666 208/352/659
+f 201/345/666 202/346/667 208/352/659
+f 202/346/667 203/347/668 208/352/659
+f 203/347/668 204/348/669 208/352/659
+f 204/348/669 205/349/670 208/352/659
+f 205/349/670 206/350/671 208/352/659
+f 206/350/671 207/351/672 208/352/659
+s 131
+f 161/353/673 162/354/674 177/356/675
+f 177/356/675 162/354/674 178/355/676
+s 132
+f 162/354/677 163/357/678 178/355/679
+f 178/355/679 163/357/678 179/358/680
+s 133
+f 163/357/681 164/359/682 179/358/683
+f 179/358/683 164/359/682 180/360/684
+s 134
+f 164/359/685 165/361/686 180/360/687
+f 180/360/687 165/361/686 181/362/688
+s 135
+f 165/361/689 166/363/690 181/362/691
+f 181/362/691 166/363/690 182/364/692
+s 136
+f 166/363/693 167/365/694 182/364/695
+f 182/364/695 167/365/694 183/366/696
+s 137
+f 167/365/697 168/367/698 183/366/699
+f 183/366/699 168/367/698 184/368/700
+s 138
+f 168/367/701 169/369/702 184/368/703
+f 184/368/703 169/369/702 185/370/704
+s 139
+f 169/369/705 170/371/706 185/370/707
+f 185/370/707 170/371/706 186/372/708
+s 140
+f 170/371/709 171/373/710 186/372/711
+f 186/372/711 171/373/710 187/374/712
+s 141
+f 171/373/713 172/375/714 187/374/715
+f 187/374/715 172/375/714 188/376/716
+s 142
+f 172/375/717 173/377/718 188/376/719
+f 188/376/719 173/377/718 189/378/720
+s 143
+f 173/377/721 174/379/722 189/378/723
+f 189/378/723 174/379/722 190/380/724
+s 144
+f 174/379/725 175/381/726 190/380/727
+f 190/380/727 175/381/726 191/382/728
+s 145
+f 175/381/729 176/383/730 191/382/731
+f 191/382/731 176/383/730 192/384/732
+s 146
+f 176/383/733 161/353/734 192/384/735
+f 192/384/735 161/353/734 177/356/736
+s 147
+f 177/385/737 178/386/738 193/388/739
+f 193/388/739 178/386/738 194/387/740
+s 148
+f 178/386/741 179/389/742 194/387/743
+f 194/387/743 179/389/742 195/390/744
+s 149
+f 179/389/745 180/391/746 195/390/747
+f 195/390/747 180/391/746 196/392/748
+s 150
+f 180/391/749 181/393/750 196/392/751
+f 196/392/751 181/393/750 197/394/752
+s 151
+f 181/393/753 182/395/754 197/394/755
+f 197/394/755 182/395/754 198/396/756
+s 152
+f 182/395/757 183/397/758 198/396/759
+f 198/396/759 183/397/758 199/398/760
+s 153
+f 183/399/761 184/400/762 199/402/763
+f 199/402/763 184/400/762 200/401/764
+s 154
+f 184/400/765 185/403/766 200/401/767
+f 200/401/767 185/403/766 201/404/768
+s 155
+f 185/403/769 186/405/770 201/404/771
+f 201/404/771 186/405/770 202/406/772
+s 156
+f 186/405/773 187/407/774 202/406/775
+f 202/406/775 187/407/774 203/408/776
+s 157
+f 187/409/777 188/410/778 203/412/779
+f 203/412/779 188/410/778 204/411/780
+s 158
+f 188/410/781 189/413/782 204/411/783
+f 204/411/783 189/413/782 205/414/784
+s 159
+f 189/413/785 190/415/786 205/414/787
+f 205/414/787 190/415/786 206/416/788
+s 160
+f 190/415/789 191/417/790 206/416/791
+f 206/416/791 191/417/790 207/418/792
+s 161
+f 191/419/793 192/420/794 207/422/795
+f 207/422/795 192/420/794 208/421/796
+s 162
+f 192/420/797 177/423/798 208/421/799
+f 208/421/799 177/423/798 193/424/800
+s 163
+f 209/425/801 210/426/802 225/428/803
+f 225/428/803 210/426/802 226/427/804
+s 164
+f 210/426/805 211/429/806 226/427/807
+f 226/427/807 211/429/806 227/430/808
+s 165
+f 211/429/809 212/431/810 227/430/811
+f 227/430/811 212/431/810 228/432/812
+s 166
+f 212/431/813 213/433/814 228/432/815
+f 228/432/815 213/433/814 229/434/816
+s 167
+f 213/433/817 214/435/818 229/434/819
+f 229/434/819 214/435/818 230/436/820
+s 168
+f 214/435/821 215/437/822 230/436/823
+f 230/436/823 215/437/822 231/438/824
+s 169
+f 215/439/825 216/440/826 231/442/827
+f 231/442/827 216/440/826 232/441/828
+s 170
+f 216/440/829 217/443/830 232/441/831
+f 232/441/831 217/443/830 233/444/832
+s 171
+f 217/443/833 218/445/834 233/444/835
+f 233/444/835 218/445/834 234/446/836
+s 172
+f 218/445/837 219/447/838 234/446/839
+f 234/446/839 219/447/838 235/448/840
+s 173
+f 219/449/841 220/450/842 235/452/843
+f 235/452/843 220/450/842 236/451/844
+s 174
+f 220/450/845 221/453/846 236/451/847
+f 236/451/847 221/453/846 237/454/848
+s 175
+f 221/453/849 222/455/850 237/454/851
+f 237/454/851 222/455/850 238/456/852
+s 176
+f 222/455/853 223/457/854 238/456/855
+f 238/456/855 223/457/854 239/458/856
+s 177
+f 223/459/857 224/460/858 239/462/859
+f 239/462/859 224/460/858 240/461/860
+s 178
+f 224/460/861 209/463/862 240/461/863
+f 240/461/863 209/463/862 225/464/864
+s 179
+f 209/465/865 224/466/866 210/480/867
+f 224/466/866 223/467/868 210/480/867
+f 223/467/868 222/468/869 210/480/867
+f 222/468/869 221/469/870 210/480/867
+f 221/469/870 220/470/871 210/480/867
+f 220/470/871 219/471/872 210/480/867
+f 219/471/872 218/472/873 210/480/867
+f 218/472/873 217/473/874 210/480/867
+f 217/473/874 216/474/875 210/480/867
+f 216/474/875 215/475/876 210/480/867
+f 215/475/876 214/476/877 210/480/867
+f 214/476/877 213/477/878 210/480/867
+f 213/477/878 212/478/879 210/480/867
+f 212/478/879 211/479/880 210/480/867
+s 180
+f 225/481/881 226/482/882 240/496/883
+f 226/482/882 227/483/884 240/496/883
+f 227/483/884 228/484/885 240/496/883
+f 228/484/885 229/485/886 240/496/883
+f 229/485/886 230/486/887 240/496/883
+f 230/486/887 231/487/888 240/496/883
+f 231/487/888 232/488/889 240/496/883
+f 232/488/889 233/489/890 240/496/883
+f 233/489/890 234/490/891 240/496/883
+f 234/490/891 235/491/892 240/496/883
+f 235/491/892 236/492/893 240/496/883
+f 236/492/893 237/493/894 240/496/883
+f 237/493/894 238/494/895 240/496/883
+f 238/494/895 239/495/896 240/496/883
+s 181
+f 241/497/897 242/498/898 257/500/899
+f 257/500/899 242/498/898 258/499/900
+s 182
+f 242/498/901 243/501/902 258/499/903
+f 258/499/903 243/501/902 259/502/904
+s 183
+f 243/501/905 244/503/906 259/502/907
+f 259/502/907 244/503/906 260/504/908
+s 184
+f 244/503/909 245/505/910 260/504/911
+f 260/504/911 245/505/910 261/506/912
+s 185
+f 245/505/913 246/507/914 261/506/915
+f 261/506/915 246/507/914 262/508/916
+s 186
+f 246/507/917 247/509/918 262/508/919
+f 262/508/919 247/509/918 263/510/920
+s 187
+f 247/511/921 248/512/922 263/514/923
+f 263/514/923 248/512/922 264/513/924
+s 188
+f 248/512/925 249/515/926 264/513/927
+f 264/513/927 249/515/926 265/516/928
+s 189
+f 249/515/929 250/517/930 265/516/931
+f 265/516/931 250/517/930 266/518/932
+s 190
+f 250/517/933 251/519/934 266/518/935
+f 266/518/935 251/519/934 267/520/936
+s 191
+f 251/521/937 252/522/938 267/524/939
+f 267/524/939 252/522/938 268/523/940
+s 192
+f 252/522/941 253/525/942 268/523/943
+f 268/523/943 253/525/942 269/526/944
+s 193
+f 253/525/945 254/527/946 269/526/947
+f 269/526/947 254/527/946 270/528/948
+s 194
+f 254/527/949 255/529/950 270/528/951
+f 270/528/951 255/529/950 271/530/952
+s 195
+f 255/531/953 256/532/954 271/534/955
+f 271/534/955 256/532/954 272/533/956
+s 196
+f 256/532/957 241/535/958 272/533/959
+f 272/533/959 241/535/958 257/536/960
+s 197
+f 241/537/961 256/538/962 242/552/963
+f 256/538/962 255/539/964 242/552/963
+f 255/539/964 254/540/965 242/552/963
+f 254/540/965 253/541/966 242/552/963
+f 253/541/966 252/542/967 242/552/963
+f 252/542/967 251/543/968 242/552/963
+f 251/543/968 250/544/969 242/552/963
+f 250/544/969 249/545/970 242/552/963
+f 249/545/970 248/546/971 242/552/963
+f 248/546/971 247/547/972 242/552/963
+f 247/547/972 246/548/973 242/552/963
+f 246/548/973 245/549/974 242/552/963
+f 245/549/974 244/550/975 242/552/963
+f 244/550/975 243/551/976 242/552/963
+s 198
+f 289/553/977 290/554/978 304/568/979
+f 290/554/978 291/555/980 304/568/979
+f 291/555/980 292/556/981 304/568/979
+f 292/556/981 293/557/982 304/568/979
+f 293/557/982 294/558/983 304/568/979
+f 294/558/983 295/559/984 304/568/979
+f 295/559/984 296/560/985 304/568/979
+f 296/560/985 297/561/986 304/568/979
+f 297/561/986 298/562/987 304/568/979
+f 298/562/987 299/563/988 304/568/979
+f 299/563/988 300/564/989 304/568/979
+f 300/564/989 301/565/990 304/568/979
+f 301/565/990 302/566/991 304/568/979
+f 302/566/991 303/567/992 304/568/979
+s 199
+f 257/569/993 258/570/994 273/572/995
+f 273/572/995 258/570/994 274/571/996
+s 200
+f 258/570/997 259/573/998 274/571/999
+f 274/571/999 259/573/998 275/574/1000
+s 201
+f 259/573/1001 260/575/1002 275/574/1003
+f 275/574/1003 260/575/1002 276/576/1004
+s 202
+f 260/575/1005 261/577/1006 276/576/1007
+f 276/576/1007 261/577/1006 277/578/1008
+s 203
+f 261/577/1009 262/579/1010 277/578/1011
+f 277/578/1011 262/579/1010 278/580/1012
+s 204
+f 262/579/1013 263/581/1014 278/580/1015
+f 278/580/1015 263/581/1014 279/582/1016
+s 205
+f 263/581/1017 264/583/1018 279/582/1019
+f 279/582/1019 264/583/1018 280/584/1020
+s 206
+f 264/583/1021 265/585/1022 280/584/1023
+f 280/584/1023 265/585/1022 281/586/1024
+s 207
+f 265/585/1025 266/587/1026 281/586/1027
+f 281/586/1027 266/587/1026 282/588/1028
+s 208
+f 266/587/1029 267/589/1030 282/588/1031
+f 282/588/1031 267/589/1030 283/590/1032
+s 209
+f 267/589/1033 268/591/1034 283/590/1035
+f 283/590/1035 268/591/1034 284/592/1036
+s 210
+f 268/591/1037 269/593/1038 284/592/1039
+f 284/592/1039 269/593/1038 285/594/1040
+s 211
+f 269/593/1041 270/595/1042 285/594/1043
+f 285/594/1043 270/595/1042 286/596/1044
+s 212
+f 270/595/1045 271/597/1046 286/596/1047
+f 286/596/1047 271/597/1046 287/598/1048
+s 213
+f 271/597/1049 272/599/1050 287/598/1051
+f 287/598/1051 272/599/1050 288/600/1052
+s 214
+f 272/599/1053 257/569/1054 288/600/1055
+f 288/600/1055 257/569/1054 273/572/1056
+s 215
+f 273/601/1057 274/602/1058 289/604/1059
+f 289/604/1059 274/602/1058 290/603/1060
+s 216
+f 274/602/1061 275/605/1062 290/603/1063
+f 290/603/1063 275/605/1062 291/606/1064
+s 217
+f 275/605/1065 276/607/1066 291/606/1067
+f 291/606/1067 276/607/1066 292/608/1068
+s 218
+f 276/607/1069 277/609/1070 292/608/1071
+f 292/608/1071 277/609/1070 293/610/1072
+s 219
+f 277/609/1073 278/611/1074 293/610/1075
+f 293/610/1075 278/611/1074 294/612/1076
+s 220
+f 278/611/1077 279/613/1078 294/612/1079
+f 294/612/1079 279/613/1078 295/614/1080
+s 221
+f 279/615/1081 280/616/1082 295/618/1083
+f 295/618/1083 280/616/1082 296/617/1084
+s 222
+f 280/616/1085 281/619/1086 296/617/1087
+f 296/617/1087 281/619/1086 297/620/1088
+s 223
+f 281/619/1089 282/621/1090 297/620/1091
+f 297/620/1091 282/621/1090 298/622/1092
+s 224
+f 282/621/1093 283/623/1094 298/622/1095
+f 298/622/1095 283/623/1094 299/624/1096
+s 225
+f 283/625/1097 284/626/1098 299/628/1099
+f 299/628/1099 284/626/1098 300/627/1100
+s 226
+f 284/626/1101 285/629/1102 300/627/1103
+f 300/627/1103 285/629/1102 301/630/1104
+s 227
+f 285/629/1105 286/631/1106 301/630/1107
+f 301/630/1107 286/631/1106 302/632/1108
+s 228
+f 286/631/1109 287/633/1110 302/632/1111
+f 302/632/1111 287/633/1110 303/634/1112
+s 229
+f 287/635/1113 288/636/1114 303/638/1115
+f 303/638/1115 288/636/1114 304/637/1116
+s 230
+f 288/636/1117 273/639/1118 304/637/1119
+f 304/637/1119 273/639/1118 289/640/1120
+s 231
+f 305/641/1121 306/642/1122 321/644/1123
+f 321/644/1123 306/642/1122 322/643/1124
+s 232
+f 306/642/1125 307/645/1126 322/643/1127
+f 322/643/1127 307/645/1126 323/646/1128
+s 233
+f 307/645/1129 308/647/1130 323/646/1131
+f 323/646/1131 308/647/1130 324/648/1132
+s 234
+f 308/647/1133 309/649/1134 324/648/1135
+f 324/648/1135 309/649/1134 325/650/1136
+s 235
+f 309/649/1137 310/651/1138 325/650/1139
+f 325/650/1139 310/651/1138 326/652/1140
+s 236
+f 310/651/1141 311/653/1142 326/652/1143
+f 326/652/1143 311/653/1142 327/654/1144
+s 237
+f 311/655/1145 312/656/1146 327/658/1147
+f 327/658/1147 312/656/1146 328/657/1148
+s 238
+f 312/656/1149 313/659/1150 328/657/1151
+f 328/657/1151 313/659/1150 329/660/1152
+s 239
+f 313/659/1153 314/661/1154 329/660/1155
+f 329/660/1155 314/661/1154 330/662/1156
+s 240
+f 314/661/1157 315/663/1158 330/662/1159
+f 330/662/1159 315/663/1158 331/664/1160
+s 241
+f 315/665/1161 316/666/1162 331/668/1163
+f 331/668/1163 316/666/1162 332/667/1164
+s 242
+f 316/666/1165 317/669/1166 332/667/1167
+f 332/667/1167 317/669/1166 333/670/1168
+s 243
+f 317/669/1169 318/671/1170 333/670/1171
+f 333/670/1171 318/671/1170 334/672/1172
+s 244
+f 318/671/1173 319/673/1174 334/672/1175
+f 334/672/1175 319/673/1174 335/674/1176
+s 245
+f 319/675/1177 320/676/1178 335/678/1179
+f 335/678/1179 320/676/1178 336/677/1180
+s 246
+f 320/676/1181 305/679/1182 336/677/1183
+f 336/677/1183 305/679/1182 321/680/1184
+s 247
+f 305/681/1185 320/682/1186 306/696/1187
+f 320/682/1186 319/683/1188 306/696/1187
+f 319/683/1188 318/684/1189 306/696/1187
+f 318/684/1189 317/685/1190 306/696/1187
+f 317/685/1190 316/686/1191 306/696/1187
+f 316/686/1191 315/687/1192 306/696/1187
+f 315/687/1192 314/688/1193 306/696/1187
+f 314/688/1193 313/689/1194 306/696/1187
+f 313/689/1194 312/690/1195 306/696/1187
+f 312/690/1195 311/691/1196 306/696/1187
+f 311/691/1196 310/692/1197 306/696/1187
+f 310/692/1197 309/693/1198 306/696/1187
+f 309/693/1198 308/694/1199 306/696/1187
+f 308/694/1199 307/695/1200 306/696/1187
+s 248
+f 321/697/1201 322/698/1202 336/712/1203
+f 322/698/1202 323/699/1204 336/712/1203
+f 323/699/1204 324/700/1205 336/712/1203
+f 324/700/1205 325/701/1206 336/712/1203
+f 325/701/1206 326/702/1207 336/712/1203
+f 326/702/1207 327/703/1208 336/712/1203
+f 327/703/1208 328/704/1209 336/712/1203
+f 328/704/1209 329/705/1210 336/712/1203
+f 329/705/1210 330/706/1211 336/712/1203
+f 330/706/1211 331/707/1212 336/712/1203
+f 331/707/1212 332/708/1213 336/712/1203
+f 332/708/1213 333/709/1214 336/712/1203
+f 333/709/1214 334/710/1215 336/712/1203
+f 334/710/1215 335/711/1216 336/712/1203
+s 249
+f 345/713/1217 361/714/1218 338/716/1219
+f 338/716/1219 361/714/1218 364/715/1220
+s 250
+f 366/717/1221 369/718/1222 339/720/1223
+f 339/720/1223 369/718/1222 343/719/1224
+s 251
+f 349/722/1225 346/723/1226 342/721/1227
+f 342/721/1227 346/723/1226 337/724/1228
+s 252
+f 371/725/1229 351/726/1230 341/728/1231
+f 341/728/1231 351/726/1230 350/727/1232
+s 253
+f 342/721/1233 341/728/1234 349/722/1235
+f 349/722/1235 341/728/1234 350/727/1236
+s 254
+f 368/729/1237 374/730/1238 340/732/1239
+f 340/732/1239 374/730/1238 372/731/1240
+s 255
+f 348/733/1241 357/734/1242 344/736/1243
+f 344/736/1243 357/734/1242 362/735/1244
+s 256
+f 353/737/1245 356/738/1246 347/740/1247
+f 347/740/1247 356/738/1246 358/739/1248
+s 257
+f 373/741/1249 376/742/1250 352/744/1251
+f 352/744/1251 376/742/1250 354/743/1252
+s 258
+f 375/745/1253 367/746/1254 355/748/1255
+f 355/748/1255 367/746/1254 359/747/1256
+s 259
+f 365/750/1257 363/751/1258 370/749/1259
+f 370/749/1259 363/751/1258 360/752/1260
+s 260
+f 360/752/1261 359/747/1262 370/749/1263
+f 370/749/1263 359/747/1262 367/746/1264
+s 261
+f 338/716/1265 337/753/1266 345/713/1267
+f 345/713/1267 337/753/1266 346/754/1268
+s 262
+f 339/755/1269 338/716/1270 366/756/1271
+f 366/756/1271 338/716/1270 364/715/1272
+s 263
+f 337/757/1273 339/720/1274 342/758/1275
+f 342/758/1275 339/720/1274 343/719/1276
+s 264
+f 340/732/1277 372/731/1278 341/759/1279
+f 341/759/1279 372/731/1278 371/760/1280
+s 265
+f 340/732/1281 343/719/1282 368/729/1283
+f 368/729/1283 343/719/1282 369/718/1284
+s 266
+f 345/713/1285 344/761/1286 361/714/1287
+f 361/714/1287 344/761/1286 362/762/1288
+s 267
+f 346/723/1289 349/722/1290 344/763/1291
+f 344/763/1291 349/722/1290 348/764/1292
+s 268
+f 348/733/1293 347/740/1294 357/734/1295
+f 357/734/1295 347/740/1294 358/739/1296
+s 269
+f 347/765/1297 350/727/1298 353/766/1299
+f 353/766/1299 350/727/1298 351/726/1300
+s 270
+f 351/726/1301 371/725/1302 352/767/1303
+f 352/767/1303 371/725/1302 373/768/1304
+s 271
+f 353/737/1305 352/769/1306 356/738/1307
+f 356/738/1307 352/769/1306 354/770/1308
+s 272
+f 355/771/1309 354/743/1310 375/772/1311
+f 375/772/1311 354/743/1310 376/742/1312
+s 273
+f 355/773/1313 359/774/1314 356/738/1315
+f 356/738/1315 359/774/1314 358/739/1316
+s 274
+f 357/734/1317 360/775/1318 362/735/1319
+f 362/735/1319 360/775/1318 363/776/1320
+s 275
+f 363/777/1321 365/778/1322 361/714/1323
+f 361/714/1323 365/778/1322 364/715/1324
+s 276
+f 365/779/1325 370/780/1326 366/717/1327
+f 366/717/1327 370/780/1326 369/718/1328
+s 277
+f 368/729/1329 367/781/1330 374/730/1331
+f 374/730/1331 367/781/1330 375/782/1332
+s 278
+f 373/741/1333 372/783/1334 376/742/1335
+f 376/742/1335 372/783/1334 374/784/1336
+s off
+f 337/753/1337 338/716/1338 339/755/1339
+s 279
+f 340/732/1340 341/759/1341 343/719/1342
+f 343/719/1342 341/759/1341 342/758/1343
+s off
+f 344/761/1344 345/713/1345 346/754/1346
+s 280
+f 347/765/1347 348/764/1348 350/727/1349
+f 350/727/1349 348/764/1348 349/722/1350
+s off
+f 351/726/1351 352/767/1352 353/766/1353
+f 354/770/1354 355/773/1355 356/738/1356
+s 281
+f 357/734/1357 358/739/1358 360/775/1359
+f 360/775/1359 358/739/1358 359/774/1360
+s off
+f 361/714/1361 362/762/1362 363/777/1363
+f 364/715/1364 365/778/1365 366/756/1366
+s 282
+f 367/781/1367 368/729/1368 370/780/1369
+f 370/780/1369 368/729/1368 369/718/1370
+s off
+f 371/725/1371 372/785/1372 373/768/1373
+f 374/784/1374 375/772/1375 376/742/1376
+s 283
+f 377/786/1377 379/787/1378 409/789/1379
+f 409/789/1379 379/787/1378 411/788/1380
+s 284
+f 379/787/1381 381/790/1382 411/788/1383
+f 411/788/1383 381/790/1382 413/791/1384
+s 285
+f 381/790/1385 383/792/1386 413/791/1387
+f 413/791/1387 383/792/1386 415/793/1388
+s 286
+f 383/792/1389 385/794/1390 415/793/1391
+f 415/793/1391 385/794/1390 417/795/1392
+s 287
+f 385/794/1393 387/796/1394 417/795/1395
+f 417/795/1395 387/796/1394 419/797/1396
+s 288
+f 387/798/1397 389/799/1398 419/801/1399
+f 419/801/1399 389/799/1398 421/800/1400
+s 289
+f 389/799/1401 391/802/1402 421/800/1403
+f 421/800/1403 391/802/1402 423/803/1404
+s 290
+f 391/802/1405 393/804/1406 423/803/1407
+f 423/803/1407 393/804/1406 425/805/1408
+s 291
+f 393/804/1409 395/806/1410 425/805/1411
+f 425/805/1411 395/806/1410 427/807/1412
+s 292
+f 395/808/1413 397/809/1414 427/811/1415
+f 427/811/1415 397/809/1414 429/810/1416
+s 293
+f 397/809/1417 399/812/1418 429/810/1419
+f 429/810/1419 399/812/1418 431/813/1420
+s 294
+f 399/812/1421 401/814/1422 431/813/1423
+f 431/813/1423 401/814/1422 433/815/1424
+s 295
+f 401/814/1425 403/816/1426 433/815/1427
+f 433/815/1427 403/816/1426 435/817/1428
+s 296
+f 403/818/1429 405/819/1430 435/821/1431
+f 435/821/1431 405/819/1430 437/820/1432
+s 297
+f 405/819/1433 407/822/1434 437/820/1435
+f 437/820/1435 407/822/1434 439/823/1436
+s 298
+f 407/822/1437 377/824/1438 439/823/1439
+f 439/823/1439 377/824/1438 409/825/1440
+s 299
+f 408/826/1441 406/827/1442 378/841/1443
+f 406/827/1442 404/828/1444 378/841/1443
+f 404/828/1444 402/829/1445 378/841/1443
+f 402/829/1445 400/830/1446 378/841/1443
+f 400/830/1446 398/831/1447 378/841/1443
+f 398/831/1447 396/832/1448 378/841/1443
+f 396/832/1448 394/833/1449 378/841/1443
+f 394/833/1449 392/834/1450 378/841/1443
+f 392/834/1450 390/835/1451 378/841/1443
+f 390/835/1451 388/836/1452 378/841/1443
+f 388/836/1452 386/837/1453 378/841/1443
+f 386/837/1453 384/838/1454 378/841/1443
+f 384/838/1454 382/839/1455 378/841/1443
+f 382/839/1455 380/840/1456 378/841/1443
+s 300
+f 412/842/1457 414/843/1458 410/857/1459
+f 414/843/1458 416/844/1460 410/857/1459
+f 416/844/1460 418/845/1461 410/857/1459
+f 418/845/1461 420/846/1462 410/857/1459
+f 420/846/1462 422/847/1463 410/857/1459
+f 422/847/1463 424/848/1464 410/857/1459
+f 424/848/1464 426/849/1465 410/857/1459
+f 426/849/1465 428/850/1466 410/857/1459
+f 428/850/1466 430/851/1467 410/857/1459
+f 430/851/1467 432/852/1468 410/857/1459
+f 432/852/1468 434/853/1469 410/857/1459
+f 434/853/1469 436/854/1470 410/857/1459
+f 436/854/1470 438/855/1471 410/857/1459
+f 438/855/1471 440/856/1472 410/857/1459
+s 301
+f 378/858/1473 377/824/1474 408/859/1475
+f 408/859/1475 377/824/1474 407/822/1476
+s 302
+f 377/824/1477 378/858/1478 379/861/1479
+f 379/861/1479 378/858/1478 380/860/1480
+s 303
+f 379/787/1481 380/862/1482 381/790/1483
+f 381/790/1483 380/862/1482 382/863/1484
+s 304
+f 381/790/1485 382/863/1486 383/792/1487
+f 383/792/1487 382/863/1486 384/864/1488
+s 305
+f 383/792/1489 384/864/1490 385/794/1491
+f 385/794/1491 384/864/1490 386/865/1492
+s 306
+f 385/794/1493 386/865/1494 387/796/1495
+f 387/796/1495 386/865/1494 388/866/1496
+s 307
+f 387/798/1497 388/867/1498 389/799/1499
+f 389/799/1499 388/867/1498 390/868/1500
+s 308
+f 389/799/1501 390/868/1502 391/802/1503
+f 391/802/1503 390/868/1502 392/869/1504
+s 309
+f 391/802/1505 392/869/1506 393/804/1507
+f 393/804/1507 392/869/1506 394/870/1508
+s 310
+f 393/804/1509 394/870/1510 395/806/1511
+f 395/806/1511 394/870/1510 396/871/1512
+s 311
+f 395/808/1513 396/872/1514 397/809/1515
+f 397/809/1515 396/872/1514 398/873/1516
+s 312
+f 397/809/1517 398/873/1518 399/812/1519
+f 399/812/1519 398/873/1518 400/874/1520
+s 313
+f 399/812/1521 400/874/1522 401/814/1523
+f 401/814/1523 400/874/1522 402/875/1524
+s 314
+f 401/814/1525 402/875/1526 403/816/1527
+f 403/816/1527 402/875/1526 404/876/1528
+s 315
+f 403/818/1529 404/877/1530 405/819/1531
+f 405/819/1531 404/877/1530 406/878/1532
+s 316
+f 405/819/1533 406/878/1534 407/822/1535
+f 407/822/1535 406/878/1534 408/859/1536
+s 317
+f 410/879/1537 409/825/1538 412/881/1539
+f 412/881/1539 409/825/1538 411/880/1540
+s 318
+f 409/825/1541 410/879/1542 439/823/1543
+f 439/823/1543 410/879/1542 440/882/1544
+s 319
+f 412/883/1545 411/788/1546 414/884/1547
+f 414/884/1547 411/788/1546 413/791/1548
+s 320
+f 414/884/1549 413/791/1550 416/885/1551
+f 416/885/1551 413/791/1550 415/793/1552
+s 321
+f 416/885/1553 415/793/1554 418/886/1555
+f 418/886/1555 415/793/1554 417/795/1556
+s 322
+f 418/886/1557 417/795/1558 420/887/1559
+f 420/887/1559 417/795/1558 419/797/1560
+s 323
+f 420/888/1561 419/801/1562 422/889/1563
+f 422/889/1563 419/801/1562 421/800/1564
+s 324
+f 422/889/1565 421/800/1566 424/890/1567
+f 424/890/1567 421/800/1566 423/803/1568
+s 325
+f 424/890/1569 423/803/1570 426/891/1571
+f 426/891/1571 423/803/1570 425/805/1572
+s 326
+f 426/891/1573 425/805/1574 428/892/1575
+f 428/892/1575 425/805/1574 427/807/1576
+s 327
+f 428/893/1577 427/811/1578 430/894/1579
+f 430/894/1579 427/811/1578 429/810/1580
+s 328
+f 430/894/1581 429/810/1582 432/895/1583
+f 432/895/1583 429/810/1582 431/813/1584
+s 329
+f 432/895/1585 431/813/1586 434/896/1587
+f 434/896/1587 431/813/1586 433/815/1588
+s 330
+f 434/896/1589 433/815/1590 436/897/1591
+f 436/897/1591 433/815/1590 435/817/1592
+s 331
+f 436/898/1593 435/821/1594 438/899/1595
+f 438/899/1595 435/821/1594 437/820/1596
+s 332
+f 438/899/1597 437/820/1598 440/882/1599
+f 440/882/1599 437/820/1598 439/823/1600
+s 333
+f 449/901/1601 450/902/1602 441/900/1603
+f 441/900/1603 450/902/1602 444/903/1604
+s 334
+f 451/905/1605 452/906/1606 446/904/1607
+f 446/904/1607 452/906/1606 442/907/1608
+s 335
+f 443/908/1609 453/909/1610 448/911/1611
+f 448/911/1611 453/909/1610 454/910/1612
+s 336
+f 447/912/1613 455/913/1614 445/915/1615
+f 445/915/1615 455/913/1614 456/914/1616
+s 337
+f 452/906/1617 449/916/1618 442/907/1619
+f 442/907/1619 449/916/1618 441/917/1620
+s 338
+f 444/918/1621 450/919/1622 443/908/1623
+f 443/908/1623 450/919/1622 453/909/1624
+s 339
+f 456/921/1625 451/905/1626 445/920/1627
+f 445/920/1627 451/905/1626 446/904/1628
+s 340
+f 448/922/1629 454/923/1630 447/912/1631
+f 447/912/1631 454/923/1630 455/913/1632
+s 341
+f 457/924/1633 458/925/1634 449/901/1635
+f 449/901/1635 458/925/1634 450/902/1636
+s 342
+f 459/926/1637 460/927/1638 451/905/1639
+f 451/905/1639 460/927/1638 452/906/1640
+s 343
+f 453/909/1641 461/928/1642 454/910/1643
+f 454/910/1643 461/928/1642 462/929/1644
+s 344
+f 455/930/1645 463/931/1646 456/933/1647
+f 456/933/1647 463/931/1646 464/932/1648
+s 345
+f 460/935/1649 457/924/1650 452/934/1651
+f 452/934/1651 457/924/1650 449/901/1652
+s 346
+f 458/936/1653 461/928/1654 450/919/1655
+f 450/919/1655 461/928/1654 453/909/1656
+s 347
+f 464/937/1657 459/926/1658 456/921/1659
+f 456/921/1659 459/926/1658 451/905/1660
+s 348
+f 454/938/1661 462/939/1662 455/930/1663
+f 455/930/1663 462/939/1662 463/931/1664
+s 349
+f 465/940/1665 466/941/1666 457/924/1667
+f 457/924/1667 466/941/1666 458/925/1668
+s 350
+f 467/942/1669 468/943/1670 459/926/1671
+f 459/926/1671 468/943/1670 460/927/1672
+s 351
+f 461/928/1673 469/944/1674 462/929/1675
+f 462/929/1675 469/944/1674 470/945/1676
+s 352
+f 463/931/1677 471/946/1678 464/932/1679
+f 464/932/1679 471/946/1678 472/947/1680
+s 353
+f 460/927/1681 468/943/1682 457/949/1683
+f 457/949/1683 468/943/1682 465/948/1684
+s 354
+f 466/950/1685 469/944/1686 458/936/1687
+f 458/936/1687 469/944/1686 461/928/1688
+s 355
+f 472/951/1689 467/942/1690 464/937/1691
+f 464/937/1691 467/942/1690 459/926/1692
+s 356
+f 462/939/1693 470/952/1694 463/931/1695
+f 463/931/1695 470/952/1694 471/946/1696
+s 357
+f 465/940/1697 473/953/1698 466/941/1699
+f 466/941/1699 473/953/1698 474/954/1700
+s 358
+f 475/955/1701 476/956/1702 467/942/1703
+f 467/942/1703 476/956/1702 468/943/1704
+s 359
+f 469/944/1705 477/957/1706 470/945/1707
+f 470/945/1707 477/957/1706 478/958/1708
+s 360
+f 479/959/1709 480/960/1710 471/946/1711
+f 471/946/1711 480/960/1710 472/947/1712
+s 361
+f 476/956/1713 473/961/1714 468/943/1715
+f 468/943/1715 473/961/1714 465/948/1716
+s 362
+f 466/962/1717 474/963/1718 469/965/1719
+f 469/965/1719 474/963/1718 477/964/1720
+s 363
+f 480/966/1721 475/955/1722 472/951/1723
+f 472/951/1723 475/955/1722 467/942/1724
+s 364
+f 470/952/1725 478/967/1726 471/946/1727
+f 471/946/1727 478/967/1726 479/959/1728
+s off
+f 473/968/1729 481/969/1730 474/963/1731
+f 475/970/1732 481/969/1733 476/971/1734
+f 477/964/1735 481/969/1736 478/972/1737
+f 479/973/1738 481/969/1739 480/974/1740
+f 476/971/1741 481/969/1742 473/968/1743
+f 474/963/1744 481/969/1745 477/964/1746
+f 480/974/1747 481/969/1748 475/970/1749
+f 478/972/1750 481/969/1751 479/973/1752
+s 365
+f 532/975/1753 525/976/1754 483/978/1755
+f 483/978/1755 525/976/1754 529/977/1756
+s 366
+f 485/979/1757 542/980/1758 482/982/1759
+f 482/982/1759 542/980/1758 533/981/1760
+s 367
+f 541/984/1761 535/985/1762 544/983/1763
+f 544/983/1763 535/985/1762 534/986/1764
+s 368
+f 534/986/1765 533/981/1766 544/983/1767
+f 544/983/1767 533/981/1766 542/980/1768
+s 369
+f 495/988/1769 492/989/1770 547/987/1771
+f 547/987/1771 492/989/1770 486/990/1772
+s 370
+f 498/991/1773 511/992/1774 493/994/1775
+f 493/994/1775 511/992/1774 506/993/1776
+s 371
+f 493/994/1777 492/989/1778 498/991/1779
+f 498/991/1779 492/989/1778 495/988/1780
+s 372
+f 491/995/1781 488/996/1782 484/999/1783
+f 484/999/1783 488/996/1782 543/998/1784
+f 488/996/1782 538/997/1785 543/998/1784
+s 373
+f 494/1000/1786 508/1001/1787 489/1003/1788
+f 489/1003/1788 508/1001/1787 505/1002/1789
+s 374
+f 504/1004/1790 512/1005/1791 490/1007/1792
+f 490/1007/1792 512/1005/1791 501/1006/1793
+s 375
+f 500/1008/1794 516/1009/1795 487/1011/1796
+f 487/1011/1796 516/1009/1795 539/1010/1797
+s 376
+f 523/1012/1798 536/1013/1799 515/1015/1800
+f 515/1015/1800 536/1013/1799 540/1014/1801
+s 377
+f 490/1007/1802 501/1006/1803 487/1011/1804
+f 487/1011/1804 501/1006/1803 500/1008/1805
+s 378
+f 515/1015/1806 540/1014/1807 516/1009/1808
+f 516/1009/1808 540/1014/1807 539/1010/1809
+s 379
+f 546/1016/1810 521/1017/1811 496/1020/1812
+f 496/1020/1812 521/1017/1811 499/1019/1813
+f 521/1017/1811 517/1018/1814 499/1019/1813
+s 380
+f 502/1021/1815 514/1022/1816 497/1024/1817
+f 497/1024/1817 514/1022/1816 509/1023/1818
+s 381
+f 507/1025/1819 510/1026/1820 503/1028/1821
+f 503/1028/1821 510/1026/1820 513/1027/1822
+s 382
+f 527/1030/1823 524/1031/1824 520/1029/1825
+f 520/1029/1825 524/1031/1824 518/1032/1826
+s 383
+f 545/1033/1827 530/1034/1828 519/1036/1829
+f 519/1036/1829 530/1034/1828 528/1035/1830
+s 384
+f 520/1029/1831 519/1036/1832 527/1030/1833
+f 527/1030/1833 519/1036/1832 528/1035/1834
+s 385
+f 526/1037/1835 531/1038/1836 522/1040/1837
+f 522/1040/1837 531/1038/1836 537/1039/1838
+s 386
+f 482/1041/1839 533/1042/1840 483/978/1841
+f 483/978/1841 533/1042/1840 532/975/1842
+s 387
+f 448/911/1843 483/978/1844 443/908/1845
+f 443/908/1845 483/978/1844 529/977/1846
+s 388
+f 482/982/1847 447/912/1848 485/979/1849
+f 485/979/1849 447/912/1848 445/915/1850
+s 389
+f 485/979/1851 484/999/1852 542/980/1853
+f 542/980/1853 484/999/1852 543/998/1854
+s 390
+f 541/984/1855 544/983/1856 538/997/1857
+f 538/997/1857 544/983/1856 543/998/1858
+s off
+f 542/980/1859 543/998/1860 544/983/1861
+s 391
+f 446/904/1862 442/907/1863 486/1043/1864
+f 486/1043/1864 442/907/1863 547/1044/1865
+s 392
+f 485/979/1866 445/915/1867 484/999/1868
+f 445/915/1867 446/1045/1869 484/999/1868
+f 484/999/1868 446/1045/1869 486/1046/1870
+s 393
+f 484/999/1871 486/1046/1872 491/995/1873
+f 491/995/1873 486/1046/1872 492/1047/1874
+s 394
+f 487/1048/1875 539/1049/1876 488/996/1877
+f 488/996/1877 539/1049/1876 538/997/1878
+s 395
+f 489/1050/1879 488/996/1880 494/1051/1881
+f 494/1051/1881 488/996/1880 491/995/1882
+s 396
+f 489/1003/1883 505/1002/1884 490/1052/1885
+f 490/1052/1885 505/1002/1884 504/1053/1886
+s 397
+f 494/1054/1887 493/994/1888 508/1055/1889
+f 508/1055/1889 493/994/1888 506/993/1890
+s 398
+f 496/1056/1891 495/988/1892 546/1057/1893
+f 546/1057/1893 495/988/1892 547/987/1894
+s 399
+f 497/1058/1895 496/1020/1896 502/1059/1897
+f 502/1059/1897 496/1020/1896 499/1019/1898
+s 400
+f 497/1060/1899 509/1061/1900 498/991/1901
+f 498/991/1901 509/1061/1900 511/992/1902
+s 401
+f 499/1062/1903 517/1063/1904 500/1008/1905
+f 500/1008/1905 517/1063/1904 516/1009/1906
+s 402
+f 502/1064/1907 501/1006/1908 514/1065/1909
+f 514/1065/1909 501/1006/1908 512/1005/1910
+s 403
+f 504/1004/1911 503/1066/1912 512/1005/1913
+f 512/1005/1913 503/1066/1912 513/1067/1914
+s 404
+f 503/1068/1915 505/1002/1916 507/1069/1917
+f 507/1069/1917 505/1002/1916 508/1001/1918
+s 405
+f 506/993/1919 511/992/1920 507/1070/1921
+f 507/1070/1921 511/992/1920 510/1071/1922
+s 406
+f 510/1072/1923 509/1023/1924 513/1073/1925
+f 513/1073/1925 509/1023/1924 514/1022/1926
+s 407
+f 518/1032/1927 517/1018/1928 520/1029/1929
+f 520/1029/1929 517/1018/1928 521/1017/1930
+s off
+f 519/1036/1931 520/1029/1932 521/1017/1933
+s 408
+f 515/1015/1934 518/1074/1935 523/1012/1936
+f 523/1012/1936 518/1074/1935 524/1075/1937
+s 409
+f 521/1017/1938 546/1016/1939 519/1036/1940
+f 519/1036/1940 546/1016/1939 545/1033/1941
+s 410
+f 523/1076/1942 522/1040/1943 536/1077/1944
+f 536/1077/1944 522/1040/1943 537/1039/1945
+s 411
+f 524/1078/1946 527/1079/1947 522/1040/1948
+f 522/1040/1948 527/1079/1947 526/1037/1949
+s 412
+f 526/1037/1950 525/976/1951 531/1038/1952
+f 531/1038/1952 525/976/1951 532/975/1953
+s 413
+f 525/976/1954 528/1080/1955 529/977/1956
+f 529/977/1956 528/1080/1955 530/1081/1957
+s 414
+f 530/1034/1958 545/1033/1959 444/1082/1960
+f 444/1082/1960 545/1033/1959 441/1083/1961
+s 415
+f 531/1038/1962 534/1084/1963 537/1039/1964
+f 537/1039/1964 534/1084/1963 535/1085/1965
+s 416
+f 535/985/1966 541/984/1967 536/1086/1968
+f 536/1086/1968 541/984/1967 540/1087/1969
+s 417
+f 483/978/1970 448/911/1971 482/1041/1972
+f 482/1041/1972 448/911/1971 447/1088/1973
+s 418
+f 488/996/1974 489/1050/1975 487/1048/1976
+f 487/1048/1976 489/1050/1975 490/1089/1977
+s 419
+f 491/995/1978 492/1047/1979 494/1051/1980
+f 494/1051/1980 492/1047/1979 493/1090/1981
+s 420
+f 496/1056/1982 497/1060/1983 495/988/1984
+f 495/988/1984 497/1060/1983 498/991/1985
+s 421
+f 499/1062/1986 500/1008/1987 502/1064/1988
+f 502/1064/1988 500/1008/1987 501/1006/1989
+s off
+f 503/1066/1990 504/1004/1991 505/1091/1992
+f 506/1092/1993 507/1069/1994 508/1001/1995
+f 509/1061/1996 510/1071/1997 511/992/1998
+f 512/1005/1999 513/1067/2000 514/1065/2001
+s 422
+f 516/1009/2002 517/1063/2003 515/1015/2004
+f 515/1015/2004 517/1063/2003 518/1074/2005
+s off
+f 522/1093/2006 523/1012/2007 524/1075/2008
+s 423
+f 525/976/2009 526/1037/2010 528/1080/2011
+f 528/1080/2011 526/1037/2010 527/1079/2012
+s 424
+f 530/1081/2013 444/918/2014 529/977/2015
+f 529/977/2015 444/918/2014 443/908/2016
+s 425
+f 531/1038/2017 532/975/2018 534/1084/2019
+f 534/1084/2019 532/975/2018 533/1042/2020
+s off
+f 535/985/2021 536/1086/2022 537/1094/2023
+s 426
+f 538/997/2024 539/1049/2025 541/984/2026
+f 541/984/2026 539/1049/2025 540/1087/2027
+s 427
+f 442/1097/2028 441/1095/2029 547/987/2030
+f 441/1095/2029 545/1096/2031 547/987/2030
+f 545/1096/2031 546/1057/2032 547/987/2030
+s 428
+f 556/1098/2033 562/1099/2034 549/1101/2035
+f 549/1101/2035 562/1099/2034 569/1100/2036
+s 429
+f 571/1102/2037 573/1103/2038 550/1105/2039
+f 550/1105/2039 573/1103/2038 551/1104/2040
+s 430
+f 560/1107/2041 557/1108/2042 554/1106/2043
+f 554/1106/2043 557/1108/2042 548/1109/2044
+s 431
+f 577/1110/2045 587/1111/2046 553/1113/2047
+f 553/1113/2047 587/1111/2046 561/1112/2048
+s 432
+f 554/1106/2049 553/1113/2050 560/1107/2051
+f 560/1107/2051 553/1113/2050 561/1112/2052
+s 433
+f 572/1114/2053 579/1115/2054 552/1117/2055
+f 552/1117/2055 579/1115/2054 578/1116/2056
+s 434
+f 559/1118/2057 568/1119/2058 555/1121/2059
+f 555/1121/2059 568/1119/2058 563/1120/2060
+s 435
+f 586/1122/2061 583/1123/2062 558/1125/2063
+f 558/1125/2063 583/1123/2062 565/1124/2064
+s 436
+f 567/1126/2065 574/1127/2066 564/1129/2067
+f 564/1129/2067 574/1127/2066 570/1128/2068
+s 437
+f 580/1131/2069 575/1132/2070 582/1130/2071
+f 582/1130/2071 575/1132/2070 566/1133/2072
+s 438
+f 567/1126/2073 566/1133/2074 574/1127/2075
+f 574/1127/2075 566/1133/2074 575/1132/2076
+s 439
+f 581/1134/2077 584/1135/2078 576/1137/2079
+f 576/1137/2079 584/1135/2078 585/1136/2080
+s 440
+f 549/1101/2081 548/1138/2082 556/1098/2083
+f 556/1098/2083 548/1138/2082 557/1139/2084
+s 441
+f 550/1105/2085 549/1101/2086 571/1102/2087
+f 571/1102/2087 549/1101/2086 569/1100/2088
+s 442
+f 548/1109/2089 550/1140/2090 554/1106/2091
+f 554/1106/2091 550/1140/2090 551/1141/2092
+s 443
+f 552/1117/2093 551/1142/2094 572/1114/2095
+f 572/1114/2095 551/1142/2094 573/1143/2096
+s 444
+f 552/1144/2097 578/1145/2098 553/1113/2099
+f 553/1113/2099 578/1145/2098 577/1110/2100
+s 445
+f 556/1146/2101 555/1121/2102 562/1147/2103
+f 562/1147/2103 555/1121/2102 563/1120/2104
+s 446
+f 557/1108/2105 560/1107/2106 555/1148/2107
+f 555/1148/2107 560/1107/2106 559/1149/2108
+s 447
+f 559/1118/2109 558/1125/2110 568/1119/2111
+f 568/1119/2111 558/1125/2110 565/1124/2112
+s 448
+f 558/1150/2113 561/1112/2114 586/1151/2115
+f 586/1151/2115 561/1112/2114 587/1111/2116
+s 449
+f 564/1152/2117 563/1120/2118 567/1153/2119
+f 567/1153/2119 563/1120/2118 568/1119/2120
+s 450
+f 564/1154/2121 570/1155/2122 562/1099/2123
+f 562/1099/2123 570/1155/2122 569/1100/2124
+s 451
+f 565/1156/2125 583/1157/2126 566/1133/2127
+f 566/1133/2127 583/1157/2126 582/1130/2128
+s 452
+f 570/1159/2129 574/1160/2130 571/1158/2131
+f 571/1158/2131 574/1160/2130 573/1143/2132
+s 453
+f 572/1114/2133 575/1161/2134 579/1115/2135
+f 579/1115/2135 575/1161/2134 580/1162/2136
+s 454
+f 576/1163/2137 585/1164/2138 577/1110/2139
+f 577/1110/2139 585/1164/2138 587/1111/2140
+s 455
+f 576/1165/2141 578/1116/2142 581/1166/2143
+f 581/1166/2143 578/1116/2142 579/1115/2144
+s 456
+f 581/1167/2145 580/1131/2146 584/1168/2147
+f 584/1168/2147 580/1131/2146 582/1130/2148
+s 457
+f 584/1135/2149 583/1169/2150 585/1136/2151
+f 585/1136/2151 583/1169/2150 586/1170/2152
+s off
+f 548/1138/2153 549/1101/2154 550/1105/2155
+s 458
+f 551/1141/2156 552/1144/2157 554/1106/2158
+f 554/1106/2158 552/1144/2157 553/1113/2159
+s off
+f 555/1148/2160 556/1171/2161 557/1108/2162
+s 459
+f 558/1150/2163 559/1149/2164 561/1112/2165
+f 561/1112/2165 559/1149/2164 560/1107/2166
+s off
+f 562/1147/2167 563/1120/2168 564/1152/2169
+s 460
+f 565/1124/2170 566/1172/2171 568/1119/2172
+f 568/1119/2172 566/1172/2171 567/1153/2173
+s off
+f 569/1100/2174 570/1155/2175 571/1102/2176
+s 461
+f 572/1114/2177 573/1143/2178 575/1161/2179
+f 575/1161/2179 573/1143/2178 574/1160/2180
+s off
+f 576/1163/2181 577/1110/2182 578/1145/2183
+f 579/1115/2184 580/1162/2185 581/1166/2186
+f 582/1130/2187 583/1157/2188 584/1168/2189
+f 585/1164/2190 586/1151/2191 587/1111/2192
+s 462
+f 588/1173/2193 590/1174/2194 620/1176/2195
+f 620/1176/2195 590/1174/2194 622/1175/2196
+s 463
+f 590/1174/2197 592/1177/2198 622/1175/2199
+f 622/1175/2199 592/1177/2198 624/1178/2200
+s 464
+f 592/1177/2201 594/1179/2202 624/1178/2203
+f 624/1178/2203 594/1179/2202 626/1180/2204
+s 465
+f 594/1181/2205 596/1182/2206 626/1184/2207
+f 626/1184/2207 596/1182/2206 628/1183/2208
+s 466
+f 596/1182/2209 598/1185/2210 628/1183/2211
+f 628/1183/2211 598/1185/2210 630/1186/2212
+s 467
+f 598/1185/2213 600/1187/2214 630/1186/2215
+f 630/1186/2215 600/1187/2214 632/1188/2216
+s 468
+f 600/1187/2217 602/1189/2218 632/1188/2219
+f 632/1188/2219 602/1189/2218 634/1190/2220
+s 469
+f 602/1191/2221 604/1192/2222 634/1194/2223
+f 634/1194/2223 604/1192/2222 636/1193/2224
+s 470
+f 604/1192/2225 606/1195/2226 636/1193/2227
+f 636/1193/2227 606/1195/2226 638/1196/2228
+s 471
+f 606/1195/2229 608/1197/2230 638/1196/2231
+f 638/1196/2231 608/1197/2230 640/1198/2232
+s 472
+f 608/1197/2233 610/1199/2234 640/1198/2235
+f 640/1198/2235 610/1199/2234 642/1200/2236
+s 473
+f 610/1201/2237 612/1202/2238 642/1204/2239
+f 642/1204/2239 612/1202/2238 644/1203/2240
+s 474
+f 612/1202/2241 614/1205/2242 644/1203/2243
+f 644/1203/2243 614/1205/2242 646/1206/2244
+s 475
+f 614/1205/2245 616/1207/2246 646/1206/2247
+f 646/1206/2247 616/1207/2246 648/1208/2248
+s 476
+f 616/1209/2249 618/1210/2250 648/1212/2251
+f 648/1212/2251 618/1210/2250 650/1211/2252
+s 477
+f 618/1210/2253 588/1173/2254 650/1211/2255
+f 650/1211/2255 588/1173/2254 620/1176/2256
+s 478
+f 619/1213/2257 617/1214/2258 589/1228/2259
+f 617/1214/2258 615/1215/2260 589/1228/2259
+f 615/1215/2260 613/1216/2261 589/1228/2259
+f 613/1216/2261 611/1217/2262 589/1228/2259
+f 611/1217/2262 609/1218/2263 589/1228/2259
+f 609/1218/2263 607/1219/2264 589/1228/2259
+f 607/1219/2264 605/1220/2265 589/1228/2259
+f 605/1220/2265 603/1221/2266 589/1228/2259
+f 603/1221/2266 601/1222/2267 589/1228/2259
+f 601/1222/2267 599/1223/2268 589/1228/2259
+f 599/1223/2268 597/1224/2269 589/1228/2259
+f 597/1224/2269 595/1225/2270 589/1228/2259
+f 595/1225/2270 593/1226/2271 589/1228/2259
+f 593/1226/2271 591/1227/2272 589/1228/2259
+s 479
+f 623/1229/2273 625/1230/2274 621/1244/2275
+f 625/1230/2274 627/1231/2276 621/1244/2275
+f 627/1231/2276 629/1232/2277 621/1244/2275
+f 629/1232/2277 631/1233/2278 621/1244/2275
+f 631/1233/2278 633/1234/2279 621/1244/2275
+f 633/1234/2279 635/1235/2280 621/1244/2275
+f 635/1235/2280 637/1236/2281 621/1244/2275
+f 637/1236/2281 639/1237/2282 621/1244/2275
+f 639/1237/2282 641/1238/2283 621/1244/2275
+f 641/1238/2283 643/1239/2284 621/1244/2275
+f 643/1239/2284 645/1240/2285 621/1244/2275
+f 645/1240/2285 647/1241/2286 621/1244/2275
+f 647/1241/2286 649/1242/2287 621/1244/2275
+f 649/1242/2287 651/1243/2288 621/1244/2275
+s 480
+f 589/1245/2289 588/1173/2290 619/1246/2291
+f 619/1246/2291 588/1173/2290 618/1210/2292
+s 481
+f 588/1173/2293 589/1245/2294 590/1174/2295
+f 590/1174/2295 589/1245/2294 591/1247/2296
+s 482
+f 590/1174/2297 591/1247/2298 592/1177/2299
+f 592/1177/2299 591/1247/2298 593/1248/2300
+s 483
+f 592/1249/2301 593/1250/2302 594/1181/2303
+f 594/1181/2303 593/1250/2302 595/1251/2304
+s 484
+f 594/1181/2305 595/1251/2306 596/1182/2307
+f 596/1182/2307 595/1251/2306 597/1252/2308
+s 485
+f 596/1182/2309 597/1252/2310 598/1185/2311
+f 598/1185/2311 597/1252/2310 599/1253/2312
+s 486
+f 598/1185/2313 599/1253/2314 600/1187/2315
+f 600/1187/2315 599/1253/2314 601/1254/2316
+s 487
+f 600/1255/2317 601/1256/2318 602/1191/2319
+f 602/1191/2319 601/1256/2318 603/1257/2320
+s 488
+f 602/1191/2321 603/1257/2322 604/1192/2323
+f 604/1192/2323 603/1257/2322 605/1258/2324
+s 489
+f 604/1192/2325 605/1258/2326 606/1195/2327
+f 606/1195/2327 605/1258/2326 607/1259/2328
+s 490
+f 606/1195/2329 607/1259/2330 608/1197/2331
+f 608/1197/2331 607/1259/2330 609/1260/2332
+s 491
+f 608/1261/2333 609/1262/2334 610/1201/2335
+f 610/1201/2335 609/1262/2334 611/1263/2336
+s 492
+f 610/1201/2337 611/1263/2338 612/1202/2339
+f 612/1202/2339 611/1263/2338 613/1264/2340
+s 493
+f 612/1202/2341 613/1264/2342 614/1205/2343
+f 614/1205/2343 613/1264/2342 615/1265/2344
+s 494
+f 614/1205/2345 615/1265/2346 616/1207/2347
+f 616/1207/2347 615/1265/2346 617/1266/2348
+s 495
+f 616/1209/2349 617/1267/2350 618/1210/2351
+f 618/1210/2351 617/1267/2350 619/1246/2352
+s 496
+f 621/1268/2353 620/1176/2354 623/1269/2355
+f 623/1269/2355 620/1176/2354 622/1175/2356
+s 497
+f 620/1176/2357 621/1268/2358 650/1211/2359
+f 650/1211/2359 621/1268/2358 651/1270/2360
+s 498
+f 623/1269/2361 622/1175/2362 625/1271/2363
+f 625/1271/2363 622/1175/2362 624/1178/2364
+s 499
+f 625/1272/2365 624/1273/2366 627/1274/2367
+f 627/1274/2367 624/1273/2366 626/1184/2368
+s 500
+f 627/1274/2369 626/1184/2370 629/1275/2371
+f 629/1275/2371 626/1184/2370 628/1183/2372
+s 501
+f 629/1275/2373 628/1183/2374 631/1276/2375
+f 631/1276/2375 628/1183/2374 630/1186/2376
+s 502
+f 631/1276/2377 630/1186/2378 633/1277/2379
+f 633/1277/2379 630/1186/2378 632/1188/2380
+s 503
+f 633/1278/2381 632/1279/2382 635/1280/2383
+f 635/1280/2383 632/1279/2382 634/1194/2384
+s 504
+f 635/1280/2385 634/1194/2386 637/1281/2387
+f 637/1281/2387 634/1194/2386 636/1193/2388
+s 505
+f 637/1281/2389 636/1193/2390 639/1282/2391
+f 639/1282/2391 636/1193/2390 638/1196/2392
+s 506
+f 639/1282/2393 638/1196/2394 641/1283/2395
+f 641/1283/2395 638/1196/2394 640/1198/2396
+s 507
+f 641/1284/2397 640/1285/2398 643/1286/2399
+f 643/1286/2399 640/1285/2398 642/1204/2400
+s 508
+f 643/1286/2401 642/1204/2402 645/1287/2403
+f 645/1287/2403 642/1204/2402 644/1203/2404
+s 509
+f 645/1287/2405 644/1203/2406 647/1288/2407
+f 647/1288/2407 644/1203/2406 646/1206/2408
+s 510
+f 647/1288/2409 646/1206/2410 649/1289/2411
+f 649/1289/2411 646/1206/2410 648/1208/2412
+s 511
+f 649/1290/2413 648/1212/2414 651/1270/2415
+f 651/1270/2415 648/1212/2414 650/1211/2416
+s 512
+f 652/1291/2417 653/1292/2418 668/1294/2419
+f 668/1294/2419 653/1292/2418 670/1293/2420
+s 513
+f 653/1292/2421 654/1295/2422 670/1293/2423
+f 670/1293/2423 654/1295/2422 672/1296/2424
+s 514
+f 654/1295/2425 655/1297/2426 672/1296/2427
+f 672/1296/2427 655/1297/2426 674/1298/2428
+s 515
+f 655/1299/2429 656/1300/2430 674/1302/2431
+f 674/1302/2431 656/1300/2430 676/1301/2432
+s 516
+f 656/1300/2433 657/1303/2434 676/1301/2435
+f 676/1301/2435 657/1303/2434 678/1304/2436
+s 517
+f 657/1303/2437 658/1305/2438 678/1304/2439
+f 678/1304/2439 658/1305/2438 680/1306/2440
+s 518
+f 658/1305/2441 659/1307/2442 680/1306/2443
+f 680/1306/2443 659/1307/2442 682/1308/2444
+s 519
+f 659/1309/2445 660/1310/2446 682/1312/2447
+f 682/1312/2447 660/1310/2446 684/1311/2448
+s 520
+f 660/1310/2449 661/1313/2450 684/1311/2451
+f 684/1311/2451 661/1313/2450 686/1314/2452
+s 521
+f 661/1313/2453 662/1315/2454 686/1314/2455
+f 686/1314/2455 662/1315/2454 688/1316/2456
+s 522
+f 662/1315/2457 663/1317/2458 688/1316/2459
+f 688/1316/2459 663/1317/2458 690/1318/2460
+s 523
+f 663/1319/2461 664/1320/2462 690/1322/2463
+f 690/1322/2463 664/1320/2462 692/1321/2464
+s 524
+f 664/1320/2465 665/1323/2466 692/1321/2467
+f 692/1321/2467 665/1323/2466 694/1324/2468
+s 525
+f 665/1323/2469 666/1325/2470 694/1324/2471
+f 694/1324/2471 666/1325/2470 696/1326/2472
+s 526
+f 666/1327/2473 667/1328/2474 696/1330/2475
+f 696/1330/2475 667/1328/2474 698/1329/2476
+s 527
+f 667/1328/2477 652/1291/2478 698/1329/2479
+f 698/1329/2479 652/1291/2478 668/1294/2480
+s 528
+f 652/1331/2481 667/1332/2482 653/1346/2483
+f 667/1332/2482 666/1333/2484 653/1346/2483
+f 666/1333/2484 665/1334/2485 653/1346/2483
+f 665/1334/2485 664/1335/2486 653/1346/2483
+f 664/1335/2486 663/1336/2487 653/1346/2483
+f 663/1336/2487 662/1337/2488 653/1346/2483
+f 662/1337/2488 661/1338/2489 653/1346/2483
+f 661/1338/2489 660/1339/2490 653/1346/2483
+f 660/1339/2490 659/1340/2491 653/1346/2483
+f 659/1340/2491 658/1341/2492 653/1346/2483
+f 658/1341/2492 657/1342/2493 653/1346/2483
+f 657/1342/2493 656/1343/2494 653/1346/2483
+f 656/1343/2494 655/1344/2495 653/1346/2483
+f 655/1344/2495 654/1345/2496 653/1346/2483
+s 529
+f 671/1347/2497 673/1348/2498 669/1362/2499
+f 673/1348/2498 675/1349/2500 669/1362/2499
+f 675/1349/2500 677/1350/2501 669/1362/2499
+f 677/1350/2501 679/1351/2502 669/1362/2499
+f 679/1351/2502 681/1352/2503 669/1362/2499
+f 681/1352/2503 683/1353/2504 669/1362/2499
+f 683/1353/2504 685/1354/2505 669/1362/2499
+f 685/1354/2505 687/1355/2506 669/1362/2499
+f 687/1355/2506 689/1356/2507 669/1362/2499
+f 689/1356/2507 691/1357/2508 669/1362/2499
+f 691/1357/2508 693/1358/2509 669/1362/2499
+f 693/1358/2509 695/1359/2510 669/1362/2499
+f 695/1359/2510 697/1360/2511 669/1362/2499
+f 697/1360/2511 699/1361/2512 669/1362/2499
+s 530
+f 669/1363/2513 668/1294/2514 671/1364/2515
+f 671/1364/2515 668/1294/2514 670/1293/2516
+s 531
+f 668/1294/2517 669/1363/2518 698/1329/2519
+f 698/1329/2519 669/1363/2518 699/1365/2520
+s 532
+f 671/1364/2521 670/1293/2522 673/1366/2523
+f 673/1366/2523 670/1293/2522 672/1296/2524
+s 533
+f 673/1367/2525 672/1368/2526 675/1369/2527
+f 675/1369/2527 672/1368/2526 674/1302/2528
+s 534
+f 675/1369/2529 674/1302/2530 677/1370/2531
+f 677/1370/2531 674/1302/2530 676/1301/2532
+s 535
+f 677/1370/2533 676/1301/2534 679/1371/2535
+f 679/1371/2535 676/1301/2534 678/1304/2536
+s 536
+f 679/1371/2537 678/1304/2538 681/1372/2539
+f 681/1372/2539 678/1304/2538 680/1306/2540
+s 537
+f 681/1373/2541 680/1374/2542 683/1375/2543
+f 683/1375/2543 680/1374/2542 682/1312/2544
+s 538
+f 683/1375/2545 682/1312/2546 685/1376/2547
+f 685/1376/2547 682/1312/2546 684/1311/2548
+s 539
+f 685/1376/2549 684/1311/2550 687/1377/2551
+f 687/1377/2551 684/1311/2550 686/1314/2552
+s 540
+f 687/1377/2553 686/1314/2554 689/1378/2555
+f 689/1378/2555 686/1314/2554 688/1316/2556
+s 541
+f 689/1379/2557 688/1380/2558 691/1381/2559
+f 691/1381/2559 688/1380/2558 690/1322/2560
+s 542
+f 691/1381/2561 690/1322/2562 693/1382/2563
+f 693/1382/2563 690/1322/2562 692/1321/2564
+s 543
+f 693/1382/2565 692/1321/2566 695/1383/2567
+f 695/1383/2567 692/1321/2566 694/1324/2568
+s 544
+f 695/1383/2569 694/1324/2570 697/1384/2571
+f 697/1384/2571 694/1324/2570 696/1326/2572
+s 545
+f 697/1385/2573 696/1330/2574 699/1365/2575
+f 699/1365/2575 696/1330/2574 698/1329/2576
+s 546
+f 746/1387/2577 708/1388/2578 748/1386/2579
+f 748/1386/2579 708/1388/2578 701/1389/2580
+s 547
+f 747/1391/2581 750/1392/2582 743/1390/2583
+f 743/1390/2583 750/1392/2582 740/1393/2584
+s 548
+f 747/1391/2585 746/1387/2586 750/1392/2587
+f 750/1392/2587 746/1387/2586 748/1386/2588
+s 549
+f 768/1394/2589 713/1395/2590 704/1397/2591
+f 704/1397/2591 713/1395/2590 718/1396/2592
+s 550
+f 729/1398/2593 733/1399/2594 716/1401/2595
+f 716/1401/2595 733/1399/2594 719/1400/2596
+s 551
+f 716/1401/2597 719/1400/2598 713/1395/2599
+f 713/1395/2599 719/1400/2598 718/1396/2600
+s 552
+f 717/1402/2601 722/1403/2602 700/1406/2603
+f 700/1406/2603 722/1403/2602 749/1405/2604
+f 722/1403/2602 737/1404/2605 749/1405/2604
+s 553
+f 745/1407/2606 754/1408/2607 705/1410/2608
+f 705/1410/2608 754/1408/2607 770/1409/2609
+s 554
+f 758/1411/2610 738/1412/2611 710/1414/2612
+f 710/1414/2612 738/1412/2611 721/1413/2613
+s 555
+f 724/1415/2614 735/1416/2615 711/1418/2616
+f 711/1418/2616 735/1416/2615 725/1417/2617
+s 556
+f 761/1419/2618 751/1420/2619 739/1422/2620
+f 739/1422/2620 751/1420/2619 741/1421/2621
+s 557
+f 711/1418/2622 710/1414/2623 724/1415/2624
+f 724/1415/2624 710/1414/2623 721/1413/2625
+s 558
+f 739/1422/2626 738/1412/2627 761/1419/2628
+f 761/1419/2628 738/1412/2627 758/1411/2629
+s 559
+f 727/1423/2630 730/1424/2631 712/1426/2632
+f 712/1426/2632 730/1424/2631 715/1425/2633
+s 560
+f 714/1427/2634 767/1428/2635 709/1431/2636
+f 767/1428/2635 762/1429/2637 709/1431/2636
+f 762/1429/2637 759/1430/2638 709/1431/2636
+s 561
+f 732/1432/2639 736/1433/2640 720/1435/2641
+f 720/1435/2641 736/1433/2640 723/1434/2642
+s 562
+f 734/1436/2643 731/1437/2644 726/1439/2645
+f 726/1439/2645 731/1437/2644 728/1438/2646
+s 563
+f 753/1440/2647 755/1441/2648 742/1443/2649
+f 742/1443/2649 755/1441/2648 744/1442/2650
+s 564
+f 760/1444/2651 764/1445/2652 752/1447/2653
+f 752/1447/2653 764/1445/2652 756/1446/2654
+s 565
+f 766/1449/2655 771/1450/2656 763/1448/2657
+f 763/1448/2657 771/1450/2656 757/1451/2658
+s 566
+f 757/1451/2659 756/1446/2660 763/1448/2661
+f 763/1448/2661 756/1446/2660 764/1445/2662
+s 567
+f 701/1389/2663 700/1406/2664 748/1386/2665
+f 748/1386/2665 700/1406/2664 749/1405/2666
+s 568
+f 740/1393/2667 750/1392/2668 737/1404/2669
+f 737/1404/2669 750/1392/2668 749/1405/2670
+s off
+f 748/1386/2671 749/1405/2672 750/1392/2673
+s 569
+f 702/1452/2674 701/1389/2675 707/1453/2676
+f 707/1453/2676 701/1389/2675 708/1388/2677
+s 570
+f 704/1397/2678 703/1454/2679 768/1394/2680
+f 768/1394/2680 703/1454/2679 769/1455/2681
+s 571
+f 704/1456/2682 718/1457/2683 700/1406/2684
+f 700/1406/2684 718/1457/2683 717/1402/2685
+s 572
+f 705/1410/2686 770/1409/2687 706/1458/2688
+f 706/1458/2688 770/1409/2687 773/1459/2689
+s 573
+f 708/1388/2690 746/1387/2691 705/1460/2692
+f 705/1460/2692 746/1387/2691 745/1461/2693
+s 574
+f 710/1414/2694 709/1462/2695 758/1411/2696
+f 758/1411/2696 709/1462/2695 759/1463/2697
+s 575
+f 712/1464/2698 711/1418/2699 727/1465/2700
+f 727/1465/2700 711/1418/2699 725/1417/2701
+s 576
+f 709/1466/2702 712/1426/2703 714/1467/2704
+f 714/1467/2704 712/1426/2703 715/1425/2705
+s 577
+f 713/1395/2706 768/1394/2707 714/1468/2708
+f 714/1468/2708 768/1394/2707 767/1469/2709
+s 578
+f 715/1425/2710 730/1424/2711 716/1470/2712
+f 716/1470/2712 730/1424/2711 729/1471/2713
+s 579
+f 720/1472/2714 719/1400/2715 732/1473/2716
+f 732/1473/2716 719/1400/2715 733/1399/2717
+s 580
+f 717/1402/2718 720/1474/2719 722/1403/2720
+f 722/1403/2720 720/1474/2719 723/1475/2721
+s 581
+f 722/1403/2722 721/1476/2723 737/1404/2724
+f 737/1404/2724 721/1476/2723 738/1477/2725
+s 582
+f 723/1434/2726 736/1433/2727 724/1478/2728
+f 724/1478/2728 736/1433/2727 735/1479/2729
+s 583
+f 725/1417/2730 735/1416/2731 726/1480/2732
+f 726/1480/2732 735/1416/2731 734/1481/2733
+s 584
+f 727/1423/2734 726/1482/2735 730/1424/2736
+f 730/1424/2736 726/1482/2735 728/1483/2737
+s 585
+f 729/1398/2738 728/1484/2739 733/1399/2740
+f 733/1399/2740 728/1484/2739 731/1485/2741
+s 586
+f 732/1432/2742 731/1486/2743 736/1433/2744
+f 736/1433/2744 731/1486/2743 734/1487/2745
+s 587
+f 739/1488/2746 741/1489/2747 740/1393/2748
+f 740/1393/2748 741/1489/2747 743/1390/2749
+s 588
+f 742/1490/2750 741/1421/2751 753/1491/2752
+f 753/1491/2752 741/1421/2751 751/1420/2753
+s 589
+f 743/1390/2754 742/1492/2755 747/1391/2756
+f 747/1391/2756 742/1492/2755 744/1493/2757
+s 590
+f 745/1407/2758 744/1442/2759 754/1408/2760
+f 754/1408/2760 744/1442/2759 755/1441/2761
+s 591
+f 752/1494/2762 751/1420/2763 760/1495/2764
+f 760/1495/2764 751/1420/2763 761/1419/2765
+s 592
+f 752/1496/2766 756/1497/2767 753/1440/2768
+f 753/1440/2768 756/1497/2767 755/1441/2769
+s 593
+f 754/1408/2770 757/1498/2771 770/1409/2772
+f 770/1409/2772 757/1498/2771 771/1499/2773
+s 594
+f 760/1444/2774 759/1430/2775 764/1445/2776
+f 764/1445/2776 759/1430/2775 762/1429/2777
+s 595
+f 762/1429/2778 767/1428/2779 763/1448/2780
+f 763/1448/2780 767/1428/2779 766/1449/2781
+s off
+f 762/1429/2782 763/1448/2783 764/1445/2784
+s 596
+f 765/1500/2785 772/1501/2786 766/1449/2787
+f 766/1449/2787 772/1501/2786 771/1450/2788
+s 597
+f 703/1502/2789 704/1456/2790 702/1452/2791
+f 702/1452/2791 704/1456/2790 701/1389/2792
+f 700/1406/2793 701/1389/2792 704/1456/2790
+s 598
+f 706/1503/2794 707/1453/2795 705/1460/2796
+f 705/1460/2796 707/1453/2795 708/1388/2797
+s 599
+f 709/1462/2798 710/1414/2799 712/1464/2800
+f 712/1464/2800 710/1414/2799 711/1418/2801
+s 600
+f 714/1468/2802 715/1504/2803 713/1395/2804
+f 713/1395/2804 715/1504/2803 716/1401/2805
+s 601
+f 717/1505/2806 718/1396/2807 720/1472/2808
+f 720/1472/2808 718/1396/2807 719/1400/2809
+s 602
+f 722/1506/2810 723/1507/2811 721/1413/2812
+f 721/1413/2812 723/1507/2811 724/1415/2813
+s off
+f 725/1417/2814 726/1480/2815 727/1465/2816
+f 728/1483/2817 729/1471/2818 730/1424/2819
+f 731/1485/2820 732/1473/2821 733/1399/2822
+f 734/1487/2823 735/1479/2824 736/1433/2825
+s 603
+f 738/1477/2826 739/1488/2827 737/1404/2828
+f 737/1404/2828 739/1488/2827 740/1393/2829
+s off
+f 741/1489/2830 742/1492/2831 743/1390/2832
+s 604
+f 744/1493/2833 745/1461/2834 747/1391/2835
+f 747/1391/2835 745/1461/2834 746/1387/2836
+s off
+f 751/1420/2837 752/1494/2838 753/1491/2839
+s 605
+f 754/1408/2840 755/1441/2841 757/1498/2842
+f 757/1498/2842 755/1441/2841 756/1497/2843
+s 606
+f 759/1463/2844 760/1495/2845 758/1411/2846
+f 758/1411/2846 760/1495/2845 761/1419/2847
+s 607
+f 767/1428/2848 768/1508/2849 766/1449/2850
+f 766/1449/2850 768/1508/2849 765/1500/2851
+f 765/1500/2851 768/1508/2849 769/1509/2852
+s 608
+f 770/1409/2853 771/1499/2854 773/1459/2855
+f 773/1459/2855 771/1499/2854 772/1510/2856
+s 609
+f 707/1453/2857 775/1511/2858 702/1452/2859
+f 702/1452/2859 775/1511/2858 774/1512/2860
+s 610
+f 703/1514/2861 777/1515/2862 769/1513/2863
+f 769/1513/2863 777/1515/2862 776/1516/2864
+s 611
+f 706/1458/2865 773/1459/2866 778/1518/2867
+f 778/1518/2867 773/1459/2866 779/1517/2868
+s 612
+f 772/1501/2869 765/1500/2870 780/1520/2871
+f 780/1520/2871 765/1500/2870 781/1519/2872
+s 613
+f 702/1452/2873 774/1512/2874 703/1502/2875
+f 703/1502/2875 774/1512/2874 777/1521/2876
+s 614
+f 707/1453/2877 706/1503/2878 775/1511/2879
+f 775/1511/2879 706/1503/2878 778/1522/2880
+s 615
+f 769/1509/2881 776/1523/2882 765/1500/2883
+f 765/1500/2883 776/1523/2882 781/1519/2884
+s 616
+f 773/1524/2885 772/1501/2886 779/1525/2887
+f 779/1525/2887 772/1501/2886 780/1520/2888
+s 617
+f 775/1527/2889 783/1528/2890 774/1526/2891
+f 774/1526/2891 783/1528/2890 782/1529/2892
+s 618
+f 777/1515/2893 785/1530/2894 776/1516/2895
+f 776/1516/2895 785/1530/2894 784/1531/2896
+s 619
+f 778/1518/2897 779/1517/2898 786/1533/2899
+f 786/1533/2899 779/1517/2898 787/1532/2900
+s 620
+f 780/1534/2901 781/1535/2902 788/1537/2903
+f 788/1537/2903 781/1535/2902 789/1536/2904
+s 621
+f 774/1526/2905 782/1529/2906 777/1538/2907
+f 777/1538/2907 782/1529/2906 785/1539/2908
+s 622
+f 778/1518/2909 786/1533/2910 775/1540/2911
+f 775/1540/2911 786/1533/2910 783/1541/2912
+s 623
+f 776/1516/2913 784/1531/2914 781/1542/2915
+f 781/1542/2915 784/1531/2914 789/1543/2916
+s 624
+f 779/1544/2917 780/1534/2918 787/1545/2919
+f 787/1545/2919 780/1534/2918 788/1537/2920
+s 625
+f 783/1528/2921 791/1546/2922 782/1529/2923
+f 782/1529/2923 791/1546/2922 790/1547/2924
+s 626
+f 785/1530/2925 793/1548/2926 784/1531/2927
+f 784/1531/2927 793/1548/2926 792/1549/2928
+s 627
+f 786/1533/2929 787/1532/2930 794/1551/2931
+f 794/1551/2931 787/1532/2930 795/1550/2932
+s 628
+f 788/1537/2933 789/1536/2934 796/1553/2935
+f 796/1553/2935 789/1536/2934 797/1552/2936
+s 629
+f 785/1539/2937 782/1529/2938 793/1554/2939
+f 793/1554/2939 782/1529/2938 790/1547/2940
+s 630
+f 786/1533/2941 794/1551/2942 783/1541/2943
+f 783/1541/2943 794/1551/2942 791/1555/2944
+s 631
+f 784/1531/2945 792/1549/2946 789/1543/2947
+f 789/1543/2947 792/1549/2946 797/1556/2948
+s 632
+f 787/1545/2949 788/1537/2950 795/1557/2951
+f 795/1557/2951 788/1537/2950 796/1553/2952
+s 633
+f 790/1547/2953 791/1546/2954 798/1559/2955
+f 798/1559/2955 791/1546/2954 799/1558/2956
+s 634
+f 793/1548/2957 801/1560/2958 792/1549/2959
+f 792/1549/2959 801/1560/2958 800/1561/2960
+s 635
+f 794/1551/2961 795/1550/2962 802/1563/2963
+f 802/1563/2963 795/1550/2962 803/1562/2964
+s 636
+f 797/1552/2965 805/1564/2966 796/1553/2967
+f 796/1553/2967 805/1564/2966 804/1565/2968
+s 637
+f 790/1567/2969 798/1568/2970 793/1566/2971
+f 793/1566/2971 798/1568/2970 801/1569/2972
+s 638
+f 791/1570/2973 794/1571/2974 799/1573/2975
+f 799/1573/2975 794/1571/2974 802/1572/2976
+s 639
+f 792/1549/2977 800/1561/2978 797/1556/2979
+f 797/1556/2979 800/1561/2978 805/1574/2980
+s 640
+f 795/1557/2981 796/1553/2982 803/1575/2983
+f 803/1575/2983 796/1553/2982 804/1565/2984
+s off
+f 798/1568/2985 799/1573/2986 806/1576/2987
+f 800/1577/2988 801/1569/2989 806/1576/2990
+f 802/1572/2991 803/1578/2992 806/1576/2993
+f 804/1579/2994 805/1580/2995 806/1576/2996
+f 801/1569/2997 798/1568/2998 806/1576/2999
+f 799/1573/3000 802/1572/3001 806/1576/3002
+f 805/1580/3003 800/1577/3004 806/1576/3005
+f 803/1578/3006 804/1579/3007 806/1576/3008
+s 641
+f 815/1581/3009 821/1582/3010 808/1584/3011
+f 808/1584/3011 821/1582/3010 828/1583/3012
+s 642
+f 830/1585/3013 832/1586/3014 809/1588/3015
+f 809/1588/3015 832/1586/3014 810/1587/3016
+s 643
+f 819/1590/3017 816/1591/3018 813/1589/3019
+f 813/1589/3019 816/1591/3018 807/1592/3020
+s 644
+f 836/1593/3021 846/1594/3022 812/1596/3023
+f 812/1596/3023 846/1594/3022 820/1595/3024
+s 645
+f 813/1589/3025 812/1596/3026 819/1590/3027
+f 819/1590/3027 812/1596/3026 820/1595/3028
+s 646
+f 831/1597/3029 838/1598/3030 811/1600/3031
+f 811/1600/3031 838/1598/3030 837/1599/3032
+s 647
+f 818/1601/3033 827/1602/3034 814/1604/3035
+f 814/1604/3035 827/1602/3034 822/1603/3036
+s 648
+f 845/1605/3037 842/1606/3038 817/1608/3039
+f 817/1608/3039 842/1606/3038 824/1607/3040
+s 649
+f 826/1609/3041 833/1610/3042 823/1612/3043
+f 823/1612/3043 833/1610/3042 829/1611/3044
+s 650
+f 839/1614/3045 834/1615/3046 841/1613/3047
+f 841/1613/3047 834/1615/3046 825/1616/3048
+s 651
+f 826/1609/3049 825/1616/3050 833/1610/3051
+f 833/1610/3051 825/1616/3050 834/1615/3052
+s 652
+f 840/1617/3053 843/1618/3054 835/1620/3055
+f 835/1620/3055 843/1618/3054 844/1619/3056
+s 653
+f 808/1584/3057 807/1621/3058 815/1581/3059
+f 815/1581/3059 807/1621/3058 816/1622/3060
+s 654
+f 809/1588/3061 808/1584/3062 830/1585/3063
+f 830/1585/3063 808/1584/3062 828/1583/3064
+s 655
+f 807/1592/3065 809/1623/3066 813/1589/3067
+f 813/1589/3067 809/1623/3066 810/1624/3068
+s 656
+f 811/1600/3069 810/1625/3070 831/1597/3071
+f 831/1597/3071 810/1625/3070 832/1626/3072
+s 657
+f 811/1627/3073 837/1628/3074 812/1596/3075
+f 812/1596/3075 837/1628/3074 836/1593/3076
+s 658
+f 815/1581/3077 814/1629/3078 821/1582/3079
+f 821/1582/3079 814/1629/3078 822/1630/3080
+s 659
+f 816/1591/3081 819/1590/3082 814/1631/3083
+f 814/1631/3083 819/1590/3082 818/1632/3084
+s 660
+f 818/1601/3085 817/1608/3086 827/1602/3087
+f 827/1602/3087 817/1608/3086 824/1607/3088
+s 661
+f 817/1633/3089 820/1595/3090 845/1634/3091
+f 845/1634/3091 820/1595/3090 846/1594/3092
+s 662
+f 823/1635/3093 822/1603/3094 826/1636/3095
+f 826/1636/3095 822/1603/3094 827/1602/3096
+s 663
+f 823/1637/3097 829/1638/3098 821/1582/3099
+f 821/1582/3099 829/1638/3098 828/1583/3100
+s 664
+f 824/1607/3101 842/1606/3102 825/1639/3103
+f 825/1639/3103 842/1606/3102 841/1640/3104
+s 665
+f 829/1642/3105 833/1643/3106 830/1641/3107
+f 830/1641/3107 833/1643/3106 832/1626/3108
+s 666
+f 831/1597/3109 834/1644/3110 838/1598/3111
+f 838/1598/3111 834/1644/3110 839/1645/3112
+s 667
+f 835/1646/3113 844/1647/3114 836/1593/3115
+f 836/1593/3115 844/1647/3114 846/1594/3116
+s 668
+f 835/1648/3117 837/1599/3118 840/1649/3119
+f 840/1649/3119 837/1599/3118 838/1598/3120
+s 669
+f 840/1650/3121 839/1614/3122 843/1651/3123
+f 843/1651/3123 839/1614/3122 841/1613/3124
+s 670
+f 843/1618/3125 842/1652/3126 844/1619/3127
+f 844/1619/3127 842/1652/3126 845/1653/3128
+s off
+f 807/1621/3129 808/1584/3130 809/1588/3131
+s 671
+f 810/1624/3132 811/1627/3133 813/1589/3134
+f 813/1589/3134 811/1627/3133 812/1596/3135
+s off
+f 814/1631/3136 815/1654/3137 816/1591/3138
+s 672
+f 817/1633/3139 818/1632/3140 820/1595/3141
+f 820/1595/3141 818/1632/3140 819/1590/3142
+s off
+f 821/1655/3143 822/1603/3144 823/1635/3145
+s 673
+f 824/1607/3146 825/1639/3147 827/1602/3148
+f 827/1602/3148 825/1639/3147 826/1636/3149
+s off
+f 828/1583/3150 829/1638/3151 830/1585/3152
+s 674
+f 831/1597/3153 832/1626/3154 834/1644/3155
+f 834/1644/3155 832/1626/3154 833/1643/3156
+s off
+f 835/1646/3157 836/1593/3158 837/1628/3159
+f 838/1598/3160 839/1645/3161 840/1649/3162
+f 841/1613/3163 842/1656/3164 843/1651/3165
+f 844/1647/3166 845/1634/3167 846/1594/3168
+s 675
+f 847/1657/3169 849/1658/3170 879/1660/3171
+f 879/1660/3171 849/1658/3170 881/1659/3172
+s 676
+f 849/1658/3173 851/1661/3174 881/1659/3175
+f 881/1659/3175 851/1661/3174 883/1662/3176
+s 677
+f 851/1661/3177 853/1663/3178 883/1662/3179
+f 883/1662/3179 853/1663/3178 885/1664/3180
+s 678
+f 853/1665/3181 855/1666/3182 885/1668/3183
+f 885/1668/3183 855/1666/3182 887/1667/3184
+s 679
+f 855/1666/3185 857/1669/3186 887/1667/3187
+f 887/1667/3187 857/1669/3186 889/1670/3188
+s 680
+f 857/1669/3189 859/1671/3190 889/1670/3191
+f 889/1670/3191 859/1671/3190 891/1672/3192
+s 681
+f 859/1671/3193 861/1673/3194 891/1672/3195
+f 891/1672/3195 861/1673/3194 893/1674/3196
+s 682
+f 861/1675/3197 863/1676/3198 893/1678/3199
+f 893/1678/3199 863/1676/3198 895/1677/3200
+s 683
+f 863/1676/3201 865/1679/3202 895/1677/3203
+f 895/1677/3203 865/1679/3202 897/1680/3204
+s 684
+f 865/1679/3205 867/1681/3206 897/1680/3207
+f 897/1680/3207 867/1681/3206 899/1682/3208
+s 685
+f 867/1681/3209 869/1683/3210 899/1682/3211
+f 899/1682/3211 869/1683/3210 901/1684/3212
+s 686
+f 869/1685/3213 871/1686/3214 901/1688/3215
+f 901/1688/3215 871/1686/3214 903/1687/3216
+s 687
+f 871/1686/3217 873/1689/3218 903/1687/3219
+f 903/1687/3219 873/1689/3218 905/1690/3220
+s 688
+f 873/1691/3221 875/1692/3222 905/1694/3223
+f 905/1694/3223 875/1692/3222 907/1693/3224
+s 689
+f 875/1692/3225 877/1695/3226 907/1693/3227
+f 907/1693/3227 877/1695/3226 909/1696/3228
+s 690
+f 877/1695/3229 847/1657/3230 909/1696/3231
+f 909/1696/3231 847/1657/3230 879/1660/3232
+s 691
+f 878/1697/3233 876/1698/3234 848/1712/3235
+f 876/1698/3234 874/1699/3236 848/1712/3235
+f 874/1699/3236 872/1700/3237 848/1712/3235
+f 872/1700/3237 870/1701/3238 848/1712/3235
+f 870/1701/3238 868/1702/3239 848/1712/3235
+f 868/1702/3239 866/1703/3240 848/1712/3235
+f 866/1703/3240 864/1704/3241 848/1712/3235
+f 864/1704/3241 862/1705/3242 848/1712/3235
+f 862/1705/3242 860/1706/3243 848/1712/3235
+f 860/1706/3243 858/1707/3244 848/1712/3235
+f 858/1707/3244 856/1708/3245 848/1712/3235
+f 856/1708/3245 854/1709/3246 848/1712/3235
+f 854/1709/3246 852/1710/3247 848/1712/3235
+f 852/1710/3247 850/1711/3248 848/1712/3235
+s 692
+f 882/1713/3249 884/1714/3250 880/1728/3251
+f 884/1714/3250 886/1715/3252 880/1728/3251
+f 886/1715/3252 888/1716/3253 880/1728/3251
+f 888/1716/3253 890/1717/3254 880/1728/3251
+f 890/1717/3254 892/1718/3255 880/1728/3251
+f 892/1718/3255 894/1719/3256 880/1728/3251
+f 894/1719/3256 896/1720/3257 880/1728/3251
+f 896/1720/3257 898/1721/3258 880/1728/3251
+f 898/1721/3258 900/1722/3259 880/1728/3251
+f 900/1722/3259 902/1723/3260 880/1728/3251
+f 902/1723/3260 904/1724/3261 880/1728/3251
+f 904/1724/3261 906/1725/3262 880/1728/3251
+f 906/1725/3262 908/1726/3263 880/1728/3251
+f 908/1726/3263 910/1727/3264 880/1728/3251
+s 693
+f 848/1729/3265 847/1657/3266 878/1730/3267
+f 878/1730/3267 847/1657/3266 877/1695/3268
+s 694
+f 847/1657/3269 848/1729/3270 849/1658/3271
+f 849/1658/3271 848/1729/3270 850/1731/3272
+s 695
+f 849/1658/3273 850/1731/3274 851/1661/3275
+f 851/1661/3275 850/1731/3274 852/1732/3276
+s 696
+f 851/1733/3277 852/1734/3278 853/1665/3279
+f 853/1665/3279 852/1734/3278 854/1735/3280
+s 697
+f 853/1665/3281 854/1735/3282 855/1666/3283
+f 855/1666/3283 854/1735/3282 856/1736/3284
+s 698
+f 855/1666/3285 856/1736/3286 857/1669/3287
+f 857/1669/3287 856/1736/3286 858/1737/3288
+s 699
+f 857/1669/3289 858/1737/3290 859/1671/3291
+f 859/1671/3291 858/1737/3290 860/1738/3292
+s 700
+f 859/1739/3293 860/1740/3294 861/1675/3295
+f 861/1675/3295 860/1740/3294 862/1741/3296
+s 701
+f 861/1675/3297 862/1741/3298 863/1676/3299
+f 863/1676/3299 862/1741/3298 864/1742/3300
+s 702
+f 863/1676/3301 864/1742/3302 865/1679/3303
+f 865/1679/3303 864/1742/3302 866/1743/3304
+s 703
+f 865/1679/3305 866/1743/3306 867/1681/3307
+f 867/1681/3307 866/1743/3306 868/1744/3308
+s 704
+f 867/1745/3309 868/1746/3310 869/1685/3311
+f 869/1685/3311 868/1746/3310 870/1747/3312
+s 705
+f 869/1685/3313 870/1747/3314 871/1686/3315
+f 871/1686/3315 870/1747/3314 872/1748/3316
+s 706
+f 871/1686/3317 872/1748/3318 873/1689/3319
+f 873/1689/3319 872/1748/3318 874/1749/3320
+s 707
+f 873/1689/3321 874/1749/3322 875/1751/3323
+f 875/1751/3323 874/1749/3322 876/1750/3324
+s 708
+f 875/1692/3325 876/1752/3326 877/1695/3327
+f 877/1695/3327 876/1752/3326 878/1730/3328
+s 709
+f 880/1753/3329 879/1660/3330 882/1754/3331
+f 882/1754/3331 879/1660/3330 881/1659/3332
+s 710
+f 879/1660/3333 880/1753/3334 909/1696/3335
+f 909/1696/3335 880/1753/3334 910/1755/3336
+s 711
+f 882/1754/3337 881/1659/3338 884/1756/3339
+f 884/1756/3339 881/1659/3338 883/1662/3340
+s 712
+f 884/1757/3341 883/1758/3342 886/1759/3343
+f 886/1759/3343 883/1758/3342 885/1668/3344
+s 713
+f 886/1759/3345 885/1668/3346 888/1760/3347
+f 888/1760/3347 885/1668/3346 887/1667/3348
+s 714
+f 888/1760/3349 887/1667/3350 890/1761/3351
+f 890/1761/3351 887/1667/3350 889/1670/3352
+s 715
+f 890/1761/3353 889/1670/3354 892/1762/3355
+f 892/1762/3355 889/1670/3354 891/1672/3356
+s 716
+f 892/1763/3357 891/1764/3358 894/1765/3359
+f 894/1765/3359 891/1764/3358 893/1678/3360
+s 717
+f 894/1765/3361 893/1678/3362 896/1766/3363
+f 896/1766/3363 893/1678/3362 895/1677/3364
+s 718
+f 896/1766/3365 895/1677/3366 898/1767/3367
+f 898/1767/3367 895/1677/3366 897/1680/3368
+s 719
+f 898/1767/3369 897/1680/3370 900/1768/3371
+f 900/1768/3371 897/1680/3370 899/1682/3372
+s 720
+f 900/1769/3373 899/1770/3374 902/1771/3375
+f 902/1771/3375 899/1770/3374 901/1688/3376
+s 721
+f 902/1771/3377 901/1688/3378 904/1772/3379
+f 904/1772/3379 901/1688/3378 903/1687/3380
+s 722
+f 904/1772/3381 903/1687/3382 906/1773/3383
+f 906/1773/3383 903/1687/3382 905/1690/3384
+s 723
+f 906/1773/3385 905/1690/3386 908/1775/3387
+f 908/1775/3387 905/1690/3386 907/1774/3388
+s 724
+f 908/1776/3389 907/1693/3390 910/1755/3391
+f 910/1755/3391 907/1693/3390 909/1696/3392
+s 725
+f 919/1777/3393 925/1778/3394 912/1780/3395
+f 912/1780/3395 925/1778/3394 932/1779/3396
+s 726
+f 934/1781/3397 936/1782/3398 913/1784/3399
+f 913/1784/3399 936/1782/3398 914/1783/3400
+s 727
+f 923/1786/3401 920/1787/3402 917/1785/3403
+f 917/1785/3403 920/1787/3402 911/1788/3404
+s 728
+f 940/1789/3405 950/1790/3406 916/1792/3407
+f 916/1792/3407 950/1790/3406 924/1791/3408
+s 729
+f 917/1785/3409 916/1792/3410 923/1786/3411
+f 923/1786/3411 916/1792/3410 924/1791/3412
+s 730
+f 935/1793/3413 942/1794/3414 915/1796/3415
+f 915/1796/3415 942/1794/3414 941/1795/3416
+s 731
+f 922/1797/3417 931/1798/3418 918/1800/3419
+f 918/1800/3419 931/1798/3418 926/1799/3420
+s 732
+f 949/1801/3421 946/1802/3422 921/1804/3423
+f 921/1804/3423 946/1802/3422 928/1803/3424
+s 733
+f 930/1805/3425 937/1806/3426 927/1808/3427
+f 927/1808/3427 937/1806/3426 933/1807/3428
+s 734
+f 943/1810/3429 938/1811/3430 945/1809/3431
+f 945/1809/3431 938/1811/3430 929/1812/3432
+s 735
+f 930/1805/3433 929/1812/3434 937/1806/3435
+f 937/1806/3435 929/1812/3434 938/1811/3436
+s 736
+f 944/1813/3437 947/1814/3438 939/1816/3439
+f 939/1816/3439 947/1814/3438 948/1815/3440
+s 737
+f 912/1780/3441 911/1817/3442 919/1777/3443
+f 919/1777/3443 911/1817/3442 920/1818/3444
+s 738
+f 913/1784/3445 912/1819/3446 934/1781/3447
+f 934/1781/3447 912/1819/3446 932/1820/3448
+s 739
+f 911/1821/3449 913/1784/3450 917/1822/3451
+f 917/1822/3451 913/1784/3450 914/1783/3452
+s 740
+f 915/1796/3453 914/1783/3454 935/1793/3455
+f 935/1793/3455 914/1783/3454 936/1782/3456
+s 741
+f 915/1796/3457 941/1795/3458 916/1823/3459
+f 916/1823/3459 941/1795/3458 940/1824/3460
+s 742
+f 919/1777/3461 918/1800/3462 925/1778/3463
+f 925/1778/3463 918/1800/3462 926/1799/3464
+s 743
+f 920/1818/3465 923/1825/3466 918/1800/3467
+f 918/1800/3467 923/1825/3466 922/1797/3468
+s 744
+f 922/1826/3469 921/1804/3470 931/1827/3471
+f 931/1827/3471 921/1804/3470 928/1803/3472
+s 745
+f 921/1828/3473 924/1791/3474 949/1829/3475
+f 949/1829/3475 924/1791/3474 950/1790/3476
+s 746
+f 927/1830/3477 926/1799/3478 930/1831/3479
+f 930/1831/3479 926/1799/3478 931/1798/3480
+s 747
+f 927/1830/3481 933/1832/3482 925/1778/3483
+f 925/1778/3483 933/1832/3482 932/1779/3484
+s 748
+f 928/1803/3485 946/1802/3486 929/1833/3487
+f 929/1833/3487 946/1802/3486 945/1834/3488
+s 749
+f 933/1835/3489 937/1836/3490 934/1781/3491
+f 934/1781/3491 937/1836/3490 936/1782/3492
+s 750
+f 935/1793/3493 938/1837/3494 942/1794/3495
+f 942/1794/3495 938/1837/3494 943/1838/3496
+s 751
+f 939/1839/3497 948/1840/3498 940/1789/3499
+f 940/1789/3499 948/1840/3498 950/1790/3500
+s 752
+f 939/1816/3501 941/1841/3502 944/1813/3503
+f 944/1813/3503 941/1841/3502 942/1842/3504
+s 753
+f 944/1843/3505 943/1810/3506 947/1844/3507
+f 947/1844/3507 943/1810/3506 945/1809/3508
+s 754
+f 947/1845/3509 946/1802/3510 948/1846/3511
+f 948/1846/3511 946/1802/3510 949/1801/3512
+s off
+f 911/1821/3513 912/1819/3514 913/1784/3515
+s 755
+f 914/1783/3516 915/1796/3517 917/1822/3518
+f 917/1822/3518 915/1796/3517 916/1823/3519
+s off
+f 918/1800/3520 919/1777/3521 920/1818/3522
+s 756
+f 921/1828/3523 922/1847/3524 924/1791/3525
+f 924/1791/3525 922/1847/3524 923/1786/3526
+s off
+f 925/1778/3527 926/1799/3528 927/1830/3529
+s 757
+f 928/1803/3530 929/1833/3531 931/1827/3532
+f 931/1827/3532 929/1833/3531 930/1848/3533
+s off
+f 932/1820/3534 933/1835/3535 934/1781/3536
+s 758
+f 935/1793/3537 936/1782/3538 938/1837/3539
+f 938/1837/3539 936/1782/3538 937/1836/3540
+s off
+f 939/1839/3541 940/1789/3542 941/1849/3543
+f 942/1850/3544 943/1810/3545 944/1843/3546
+f 945/1834/3547 946/1802/3548 947/1845/3549
+f 948/1840/3550 949/1829/3551 950/1790/3552
+s 759
+f 951/1851/3553 952/1852/3554 967/1854/3555
+f 967/1854/3555 952/1852/3554 969/1853/3556
+s 760
+f 952/1852/3557 953/1855/3558 969/1853/3559
+f 969/1853/3559 953/1855/3558 971/1856/3560
+s 761
+f 953/1855/3561 954/1857/3562 971/1856/3563
+f 971/1856/3563 954/1857/3562 973/1858/3564
+s 762
+f 954/1857/3565 955/1859/3566 973/1858/3567
+f 973/1858/3567 955/1859/3566 975/1860/3568
+s 763
+f 955/1859/3569 956/1861/3570 975/1860/3571
+f 975/1860/3571 956/1861/3570 977/1862/3572
+s 764
+f 956/1863/3573 957/1864/3574 977/1866/3575
+f 977/1866/3575 957/1864/3574 979/1865/3576
+s 765
+f 957/1864/3577 958/1867/3578 979/1865/3579
+f 979/1865/3579 958/1867/3578 981/1868/3580
+s 766
+f 958/1867/3581 959/1869/3582 981/1868/3583
+f 981/1868/3583 959/1869/3582 983/1870/3584
+s 767
+f 959/1869/3585 960/1871/3586 983/1870/3587
+f 983/1870/3587 960/1871/3586 985/1872/3588
+s 768
+f 960/1873/3589 961/1874/3590 985/1876/3591
+f 985/1876/3591 961/1874/3590 987/1875/3592
+s 769
+f 961/1874/3593 962/1877/3594 987/1875/3595
+f 987/1875/3595 962/1877/3594 989/1878/3596
+s 770
+f 962/1877/3597 963/1879/3598 989/1878/3599
+f 989/1878/3599 963/1879/3598 991/1880/3600
+s 771
+f 963/1879/3601 964/1881/3602 991/1880/3603
+f 991/1880/3603 964/1881/3602 993/1882/3604
+s 772
+f 964/1883/3605 965/1884/3606 993/1886/3607
+f 993/1886/3607 965/1884/3606 995/1885/3608
+s 773
+f 965/1884/3609 966/1887/3610 995/1885/3611
+f 995/1885/3611 966/1887/3610 997/1888/3612
+s 774
+f 966/1889/3613 951/1851/3614 997/1890/3615
+f 997/1890/3615 951/1851/3614 967/1854/3616
+s 775
+f 951/1891/3617 966/1892/3618 952/1906/3619
+f 966/1892/3618 965/1893/3620 952/1906/3619
+f 965/1893/3620 964/1894/3621 952/1906/3619
+f 964/1894/3621 963/1895/3622 952/1906/3619
+f 963/1895/3622 962/1896/3623 952/1906/3619
+f 962/1896/3623 961/1897/3624 952/1906/3619
+f 961/1897/3624 960/1898/3625 952/1906/3619
+f 960/1898/3625 959/1899/3626 952/1906/3619
+f 959/1899/3626 958/1900/3627 952/1906/3619
+f 958/1900/3627 957/1901/3628 952/1906/3619
+f 957/1901/3628 956/1902/3629 952/1906/3619
+f 956/1902/3629 955/1903/3630 952/1906/3619
+f 955/1903/3630 954/1904/3631 952/1906/3619
+f 954/1904/3631 953/1905/3632 952/1906/3619
+s 776
+f 970/1907/3633 972/1908/3634 968/1922/3635
+f 972/1908/3634 974/1909/3636 968/1922/3635
+f 974/1909/3636 976/1910/3637 968/1922/3635
+f 976/1910/3637 978/1911/3638 968/1922/3635
+f 978/1911/3638 980/1912/3639 968/1922/3635
+f 980/1912/3639 982/1913/3640 968/1922/3635
+f 982/1913/3640 984/1914/3641 968/1922/3635
+f 984/1914/3641 986/1915/3642 968/1922/3635
+f 986/1915/3642 988/1916/3643 968/1922/3635
+f 988/1916/3643 990/1917/3644 968/1922/3635
+f 990/1917/3644 992/1918/3645 968/1922/3635
+f 992/1918/3645 994/1919/3646 968/1922/3635
+f 994/1919/3646 996/1920/3647 968/1922/3635
+f 996/1920/3647 998/1921/3648 968/1922/3635
+s 777
+f 968/1923/3649 967/1854/3650 970/1924/3651
+f 970/1924/3651 967/1854/3650 969/1853/3652
+s 778
+f 967/1925/3653 968/1926/3654 997/1888/3655
+f 997/1888/3655 968/1926/3654 998/1927/3656
+s 779
+f 970/1924/3657 969/1853/3658 972/1928/3659
+f 972/1928/3659 969/1853/3658 971/1856/3660
+s 780
+f 972/1928/3661 971/1856/3662 974/1929/3663
+f 974/1929/3663 971/1856/3662 973/1858/3664
+s 781
+f 974/1929/3665 973/1858/3666 976/1930/3667
+f 976/1930/3667 973/1858/3666 975/1860/3668
+s 782
+f 976/1931/3669 975/1932/3670 978/1933/3671
+f 978/1933/3671 975/1932/3670 977/1866/3672
+s 783
+f 978/1933/3673 977/1866/3674 980/1934/3675
+f 980/1934/3675 977/1866/3674 979/1865/3676
+s 784
+f 980/1934/3677 979/1865/3678 982/1935/3679
+f 982/1935/3679 979/1865/3678 981/1868/3680
+s 785
+f 982/1935/3681 981/1868/3682 984/1936/3683
+f 984/1936/3683 981/1868/3682 983/1870/3684
+s 786
+f 984/1937/3685 983/1938/3686 986/1939/3687
+f 986/1939/3687 983/1938/3686 985/1876/3688
+s 787
+f 986/1939/3689 985/1876/3690 988/1940/3691
+f 988/1940/3691 985/1876/3690 987/1875/3692
+s 788
+f 988/1940/3693 987/1875/3694 990/1941/3695
+f 990/1941/3695 987/1875/3694 989/1878/3696
+s 789
+f 990/1941/3697 989/1878/3698 992/1942/3699
+f 992/1942/3699 989/1878/3698 991/1880/3700
+s 790
+f 992/1943/3701 991/1944/3702 994/1945/3703
+f 994/1945/3703 991/1944/3702 993/1886/3704
+s 791
+f 994/1945/3705 993/1886/3706 996/1946/3707
+f 996/1946/3707 993/1886/3706 995/1885/3708
+s 792
+f 996/1946/3709 995/1885/3710 998/1927/3711
+f 998/1927/3711 995/1885/3710 997/1888/3712
+s 793
+f 999/1947/3713 1001/1948/3714 1031/1950/3715
+f 1031/1950/3715 1001/1948/3714 1033/1949/3716
+s 794
+f 1001/1948/3717 1003/1951/3718 1033/1949/3719
+f 1033/1949/3719 1003/1951/3718 1035/1952/3720
+s 795
+f 1003/1951/3721 1005/1953/3722 1035/1952/3723
+f 1035/1952/3723 1005/1953/3722 1037/1954/3724
+s 796
+f 1005/1953/3725 1007/1955/3726 1037/1954/3727
+f 1037/1954/3727 1007/1955/3726 1039/1956/3728
+s 797
+f 1007/1955/3729 1009/1957/3730 1039/1956/3731
+f 1039/1956/3731 1009/1957/3730 1041/1958/3732
+s 798
+f 1009/1959/3733 1011/1960/3734 1041/1962/3735
+f 1041/1962/3735 1011/1960/3734 1043/1961/3736
+s 799
+f 1011/1960/3737 1013/1963/3738 1043/1961/3739
+f 1043/1961/3739 1013/1963/3738 1045/1964/3740
+s 800
+f 1013/1963/3741 1015/1965/3742 1045/1964/3743
+f 1045/1964/3743 1015/1965/3742 1047/1966/3744
+s 801
+f 1015/1965/3745 1017/1967/3746 1047/1966/3747
+f 1047/1966/3747 1017/1967/3746 1049/1968/3748
+s 802
+f 1017/1969/3749 1019/1970/3750 1049/1972/3751
+f 1049/1972/3751 1019/1970/3750 1051/1971/3752
+s 803
+f 1019/1970/3753 1021/1973/3754 1051/1971/3755
+f 1051/1971/3755 1021/1973/3754 1053/1974/3756
+s 804
+f 1021/1973/3757 1023/1975/3758 1053/1974/3759
+f 1053/1974/3759 1023/1975/3758 1055/1976/3760
+s 805
+f 1023/1975/3761 1025/1977/3762 1055/1976/3763
+f 1055/1976/3763 1025/1977/3762 1057/1978/3764
+s 806
+f 1025/1979/3765 1027/1980/3766 1057/1982/3767
+f 1057/1982/3767 1027/1980/3766 1059/1981/3768
+s 807
+f 1027/1980/3769 1029/1983/3770 1059/1981/3771
+f 1059/1981/3771 1029/1983/3770 1061/1984/3772
+s 808
+f 1029/1985/3773 999/1947/3774 1061/1986/3775
+f 1061/1986/3775 999/1947/3774 1031/1950/3776
+s 809
+f 1030/1987/3777 1028/1988/3778 1000/2002/3779
+f 1028/1988/3778 1026/1989/3780 1000/2002/3779
+f 1026/1989/3780 1024/1990/3781 1000/2002/3779
+f 1024/1990/3781 1022/1991/3782 1000/2002/3779
+f 1022/1991/3782 1020/1992/3783 1000/2002/3779
+f 1020/1992/3783 1018/1993/3784 1000/2002/3779
+f 1018/1993/3784 1016/1994/3785 1000/2002/3779
+f 1016/1994/3785 1014/1995/3786 1000/2002/3779
+f 1014/1995/3786 1012/1996/3787 1000/2002/3779
+f 1012/1996/3787 1010/1997/3788 1000/2002/3779
+f 1010/1997/3788 1008/1998/3789 1000/2002/3779
+f 1008/1998/3789 1006/1999/3790 1000/2002/3779
+f 1006/1999/3790 1004/2000/3791 1000/2002/3779
+f 1004/2000/3791 1002/2001/3792 1000/2002/3779
+s 810
+f 1034/2003/3793 1036/2004/3794 1032/2018/3795
+f 1036/2004/3794 1038/2005/3796 1032/2018/3795
+f 1038/2005/3796 1040/2006/3797 1032/2018/3795
+f 1040/2006/3797 1042/2007/3798 1032/2018/3795
+f 1042/2007/3798 1044/2008/3799 1032/2018/3795
+f 1044/2008/3799 1046/2009/3800 1032/2018/3795
+f 1046/2009/3800 1048/2010/3801 1032/2018/3795
+f 1048/2010/3801 1050/2011/3802 1032/2018/3795
+f 1050/2011/3802 1052/2012/3803 1032/2018/3795
+f 1052/2012/3803 1054/2013/3804 1032/2018/3795
+f 1054/2013/3804 1056/2014/3805 1032/2018/3795
+f 1056/2014/3805 1058/2015/3806 1032/2018/3795
+f 1058/2015/3806 1060/2016/3807 1032/2018/3795
+f 1060/2016/3807 1062/2017/3808 1032/2018/3795
+s 811
+f 1000/2019/3809 999/2020/3810 1030/2021/3811
+f 1030/2021/3811 999/2020/3810 1029/1983/3812
+s 812
+f 999/1947/3813 1000/2022/3814 1001/1948/3815
+f 1001/1948/3815 1000/2022/3814 1002/2023/3816
+s 813
+f 1001/1948/3817 1002/2023/3818 1003/1951/3819
+f 1003/1951/3819 1002/2023/3818 1004/2024/3820
+s 814
+f 1003/1951/3821 1004/2024/3822 1005/1953/3823
+f 1005/1953/3823 1004/2024/3822 1006/2025/3824
+s 815
+f 1005/1953/3825 1006/2025/3826 1007/1955/3827
+f 1007/1955/3827 1006/2025/3826 1008/2026/3828
+s 816
+f 1007/2027/3829 1008/2028/3830 1009/1959/3831
+f 1009/1959/3831 1008/2028/3830 1010/2029/3832
+s 817
+f 1009/1959/3833 1010/2029/3834 1011/1960/3835
+f 1011/1960/3835 1010/2029/3834 1012/2030/3836
+s 818
+f 1011/1960/3837 1012/2030/3838 1013/1963/3839
+f 1013/1963/3839 1012/2030/3838 1014/2031/3840
+s 819
+f 1013/1963/3841 1014/2031/3842 1015/1965/3843
+f 1015/1965/3843 1014/2031/3842 1016/2032/3844
+s 820
+f 1015/2033/3845 1016/2034/3846 1017/1969/3847
+f 1017/1969/3847 1016/2034/3846 1018/2035/3848
+s 821
+f 1017/1969/3849 1018/2035/3850 1019/1970/3851
+f 1019/1970/3851 1018/2035/3850 1020/2036/3852
+s 822
+f 1019/1970/3853 1020/2036/3854 1021/1973/3855
+f 1021/1973/3855 1020/2036/3854 1022/2037/3856
+s 823
+f 1021/1973/3857 1022/2037/3858 1023/1975/3859
+f 1023/1975/3859 1022/2037/3858 1024/2038/3860
+s 824
+f 1023/2039/3861 1024/2040/3862 1025/1979/3863
+f 1025/1979/3863 1024/2040/3862 1026/2041/3864
+s 825
+f 1025/1979/3865 1026/2041/3866 1027/1980/3867
+f 1027/1980/3867 1026/2041/3866 1028/2042/3868
+s 826
+f 1027/1980/3869 1028/2042/3870 1029/1983/3871
+f 1029/1983/3871 1028/2042/3870 1030/2021/3872
+s 827
+f 1032/2043/3873 1031/1950/3874 1034/2044/3875
+f 1034/2044/3875 1031/1950/3874 1033/1949/3876
+s 828
+f 1031/2045/3877 1032/2046/3878 1061/1984/3879
+f 1061/1984/3879 1032/2046/3878 1062/2047/3880
+s 829
+f 1034/2044/3881 1033/1949/3882 1036/2048/3883
+f 1036/2048/3883 1033/1949/3882 1035/1952/3884
+s 830
+f 1036/2048/3885 1035/1952/3886 1038/2049/3887
+f 1038/2049/3887 1035/1952/3886 1037/1954/3888
+s 831
+f 1038/2049/3889 1037/1954/3890 1040/2050/3891
+f 1040/2050/3891 1037/1954/3890 1039/1956/3892
+s 832
+f 1040/2051/3893 1039/2052/3894 1042/2053/3895
+f 1042/2053/3895 1039/2052/3894 1041/1962/3896
+s 833
+f 1042/2053/3897 1041/1962/3898 1044/2054/3899
+f 1044/2054/3899 1041/1962/3898 1043/1961/3900
+s 834
+f 1044/2054/3901 1043/1961/3902 1046/2055/3903
+f 1046/2055/3903 1043/1961/3902 1045/1964/3904
+s 835
+f 1046/2055/3905 1045/1964/3906 1048/2056/3907
+f 1048/2056/3907 1045/1964/3906 1047/1966/3908
+s 836
+f 1048/2057/3909 1047/2058/3910 1050/2059/3911
+f 1050/2059/3911 1047/2058/3910 1049/1972/3912
+s 837
+f 1050/2059/3913 1049/1972/3914 1052/2060/3915
+f 1052/2060/3915 1049/1972/3914 1051/1971/3916
+s 838
+f 1052/2060/3917 1051/1971/3918 1054/2061/3919
+f 1054/2061/3919 1051/1971/3918 1053/1974/3920
+s 839
+f 1054/2061/3921 1053/1974/3922 1056/2062/3923
+f 1056/2062/3923 1053/1974/3922 1055/1976/3924
+s 840
+f 1056/2063/3925 1055/2064/3926 1058/2065/3927
+f 1058/2065/3927 1055/2064/3926 1057/1982/3928
+s 841
+f 1058/2065/3929 1057/1982/3930 1060/2066/3931
+f 1060/2066/3931 1057/1982/3930 1059/1981/3932
+s 842
+f 1060/2066/3933 1059/1981/3934 1062/2047/3935
+f 1062/2047/3935 1059/1981/3934 1061/1984/3936
+s 843
+f 1086/2067/3937 1078/2068/3938 1064/2070/3939
+f 1064/2070/3939 1078/2068/3938 1082/2069/3940
+s 844
+f 1084/2071/3941 1098/2072/3942 1065/2074/3943
+f 1065/2074/3943 1098/2072/3942 1068/2073/3944
+s 845
+f 1067/2075/3945 1095/2076/3946 1063/2078/3947
+f 1063/2078/3947 1095/2076/3946 1087/2077/3948
+s 846
+f 1093/2080/3949 1089/2081/3950 1097/2079/3951
+f 1097/2079/3951 1089/2081/3950 1088/2082/3952
+s 847
+f 1087/2077/3953 1095/2076/3954 1088/2082/3955
+f 1088/2082/3955 1095/2076/3954 1097/2079/3956
+s 848
+f 1100/2083/3957 1074/2084/3958 1066/2088/3959
+f 1066/2088/3959 1074/2084/3958 1096/2087/3960
+f 1074/2084/3958 1071/2085/3961 1096/2087/3960
+f 1071/2085/3961 1094/2086/3962 1096/2087/3960
+s 849
+f 1076/2089/3963 1090/2090/3964 1070/2092/3965
+f 1070/2092/3965 1090/2090/3964 1092/2091/3966
+s 850
+f 1080/2094/3967 1077/2095/3968 1073/2093/3969
+f 1073/2093/3969 1077/2095/3968 1069/2096/3970
+s 851
+f 1099/2097/3971 1083/2098/3972 1072/2100/3973
+f 1072/2100/3973 1083/2098/3972 1081/2099/3974
+s 852
+f 1073/2093/3975 1072/2100/3976 1080/2094/3977
+f 1080/2094/3977 1072/2100/3976 1081/2099/3978
+s 853
+f 1079/2101/3979 1085/2102/3980 1075/2104/3981
+f 1075/2104/3981 1085/2102/3980 1091/2103/3982
+s 854
+f 1063/2105/3983 1087/2106/3984 1064/2070/3985
+f 1064/2070/3985 1087/2106/3984 1086/2067/3986
+s 855
+f 1065/2107/3987 1064/2070/3988 1084/2108/3989
+f 1084/2108/3989 1064/2070/3988 1082/2069/3990
+s 856
+f 1063/2109/3991 1065/2074/3992 1067/2110/3993
+f 1067/2110/3993 1065/2074/3992 1068/2073/3994
+s 857
+f 1067/2075/3995 1066/2111/3996 1095/2076/3997
+f 1095/2076/3997 1066/2111/3996 1096/2112/3998
+s 858
+f 1093/2080/3999 1097/2079/4000 1094/2113/4001
+f 1094/2113/4001 1097/2079/4000 1096/2112/4002
+s off
+f 1095/2076/4003 1096/2112/4004 1097/2079/4005
+s 859
+f 1066/2114/4006 1068/2073/4007 1100/2115/4008
+f 1100/2115/4008 1068/2073/4007 1098/2072/4009
+s 860
+f 1070/2092/4010 1069/2116/4011 1076/2089/4012
+f 1076/2089/4012 1069/2116/4011 1077/2117/4013
+s 861
+f 1071/2085/4014 1070/2118/4015 1094/2086/4016
+f 1094/2086/4016 1070/2118/4015 1092/2119/4017
+s 862
+f 1069/2120/4018 1071/2085/4019 1073/2121/4020
+f 1073/2121/4020 1071/2085/4019 1074/2084/4021
+s off
+f 1072/2122/4022 1073/2121/4023 1074/2084/4024
+s 863
+f 1074/2084/4025 1100/2083/4026 1072/2122/4027
+f 1072/2122/4027 1100/2083/4026 1099/2123/4028
+s 864
+f 1076/2089/4029 1075/2124/4030 1090/2090/4031
+f 1090/2090/4031 1075/2124/4030 1091/2125/4032
+s 865
+f 1077/2126/4033 1080/2127/4034 1075/2104/4035
+f 1075/2104/4035 1080/2127/4034 1079/2101/4036
+s 866
+f 1079/2101/4037 1078/2068/4038 1085/2102/4039
+f 1085/2102/4039 1078/2068/4038 1086/2067/4040
+s 867
+f 1078/2068/4041 1081/2128/4042 1082/2069/4043
+f 1082/2069/4043 1081/2128/4042 1083/2129/4044
+s 868
+f 1083/2130/4045 1099/2131/4046 1084/2071/4047
+f 1084/2071/4047 1099/2131/4046 1098/2072/4048
+s 869
+f 1085/2102/4049 1088/2132/4050 1091/2103/4051
+f 1091/2103/4051 1088/2132/4050 1089/2133/4052
+s 870
+f 1089/2081/4053 1093/2080/4054 1090/2134/4055
+f 1090/2134/4055 1093/2080/4054 1092/2135/4056
+s off
+f 1063/2105/4057 1064/2070/4058 1065/2107/4059
+f 1066/2114/4060 1067/2110/4061 1068/2073/4062
+f 1069/2120/4063 1070/2118/4064 1071/2085/4065
+f 1075/2124/4066 1076/2089/4067 1077/2117/4068
+s 871
+f 1078/2068/4069 1079/2101/4070 1081/2128/4071
+f 1081/2128/4071 1079/2101/4070 1080/2127/4072
+s off
+f 1082/2069/4073 1083/2129/4074 1084/2108/4075
+s 872
+f 1086/2067/4076 1087/2106/4077 1085/2102/4078
+f 1085/2102/4078 1087/2106/4077 1088/2132/4079
+s off
+f 1089/2081/4080 1090/2134/4081 1091/2136/4082
+f 1092/2135/4083 1093/2080/4084 1094/2113/4085
+f 1098/2072/4086 1099/2131/4087 1100/2115/4088
+s 873
+f 1109/2137/4089 1125/2138/4090 1102/2140/4091
+f 1102/2140/4091 1125/2138/4090 1128/2139/4092
+s 874
+f 1130/2141/4093 1134/2142/4094 1103/2144/4095
+f 1103/2144/4095 1134/2142/4094 1107/2143/4096
+s 875
+f 1106/2145/4097 1113/2146/4098 1101/2148/4099
+f 1101/2148/4099 1113/2146/4098 1110/2147/4100
+s 876
+f 1116/2150/4101 1114/2151/4102 1135/2149/4103
+f 1135/2149/4103 1114/2151/4102 1105/2152/4104
+s 877
+f 1106/2145/4105 1105/2152/4106 1113/2146/4107
+f 1113/2146/4107 1105/2152/4106 1114/2151/4108
+s 878
+f 1133/2153/4109 1140/2154/4110 1104/2156/4111
+f 1104/2156/4111 1140/2154/4110 1136/2155/4112
+s 879
+f 1112/2157/4113 1121/2158/4114 1108/2160/4115
+f 1108/2160/4115 1121/2158/4114 1126/2159/4116
+s 880
+f 1115/2161/4117 1120/2162/4118 1111/2164/4119
+f 1111/2164/4119 1120/2162/4118 1122/2163/4120
+s 881
+f 1137/2165/4121 1139/2166/4122 1117/2168/4123
+f 1117/2168/4123 1139/2166/4122 1118/2167/4124
+s 882
+f 1132/2170/4125 1123/2171/4126 1138/2169/4127
+f 1138/2169/4127 1123/2171/4126 1119/2172/4128
+s 883
+f 1131/2173/4129 1129/2174/4130 1124/2176/4131
+f 1124/2176/4131 1129/2174/4130 1127/2175/4132
+s 884
+f 1124/2176/4133 1123/2171/4134 1131/2173/4135
+f 1131/2173/4135 1123/2171/4134 1132/2170/4136
+s 885
+f 1101/2177/4137 1110/2178/4138 1102/2140/4139
+f 1102/2140/4139 1110/2178/4138 1109/2137/4140
+s 886
+f 1103/2179/4141 1102/2140/4142 1130/2180/4143
+f 1130/2180/4143 1102/2140/4142 1128/2139/4144
+s 887
+f 1101/2181/4145 1103/2144/4146 1106/2182/4147
+f 1106/2182/4147 1103/2144/4146 1107/2143/4148
+s 888
+f 1104/2156/4149 1136/2155/4150 1105/2183/4151
+f 1105/2183/4151 1136/2155/4150 1135/2184/4152
+s 889
+f 1104/2156/4153 1107/2143/4154 1133/2153/4155
+f 1133/2153/4155 1107/2143/4154 1134/2142/4156
+s 890
+f 1109/2137/4157 1108/2185/4158 1125/2138/4159
+f 1125/2138/4159 1108/2185/4158 1126/2186/4160
+s 891
+f 1110/2147/4161 1113/2146/4162 1108/2187/4163
+f 1108/2187/4163 1113/2146/4162 1112/2188/4164
+s 892
+f 1112/2157/4165 1111/2164/4166 1121/2158/4167
+f 1121/2158/4167 1111/2164/4166 1122/2163/4168
+s 893
+f 1111/2189/4169 1114/2151/4170 1115/2190/4171
+f 1115/2190/4171 1114/2151/4170 1116/2150/4172
+s 894
+f 1117/2191/4173 1116/2150/4174 1137/2192/4175
+f 1137/2192/4175 1116/2150/4174 1135/2149/4176
+s 895
+f 1115/2161/4177 1117/2193/4178 1120/2162/4179
+f 1120/2162/4179 1117/2193/4178 1118/2194/4180
+s 896
+f 1118/2167/4181 1139/2166/4182 1119/2195/4183
+f 1119/2195/4183 1139/2166/4182 1138/2196/4184
+s 897
+f 1119/2197/4185 1123/2198/4186 1120/2162/4187
+f 1120/2162/4187 1123/2198/4186 1122/2163/4188
+s 898
+f 1121/2158/4189 1124/2199/4190 1126/2159/4191
+f 1126/2159/4191 1124/2199/4190 1127/2200/4192
+s 899
+f 1125/2138/4193 1127/2201/4194 1128/2139/4195
+f 1128/2139/4195 1127/2201/4194 1129/2202/4196
+s 900
+f 1129/2203/4197 1131/2204/4198 1130/2141/4199
+f 1130/2141/4199 1131/2204/4198 1134/2142/4200
+s 901
+f 1133/2153/4201 1132/2205/4202 1140/2154/4203
+f 1140/2154/4203 1132/2205/4202 1138/2206/4204
+s 902
+f 1137/2165/4205 1136/2207/4206 1139/2166/4207
+f 1139/2166/4207 1136/2207/4206 1140/2208/4208
+s off
+f 1101/2177/4209 1102/2140/4210 1103/2179/4211
+s 903
+f 1104/2156/4212 1105/2183/4213 1107/2143/4214
+f 1107/2143/4214 1105/2183/4213 1106/2182/4215
+s off
+f 1108/2185/4216 1109/2137/4217 1110/2178/4218
+s 904
+f 1111/2189/4219 1112/2188/4220 1114/2151/4221
+f 1114/2151/4221 1112/2188/4220 1113/2146/4222
+s off
+f 1115/2190/4223 1116/2150/4224 1117/2191/4225
+f 1118/2194/4226 1119/2197/4227 1120/2162/4228
+s 905
+f 1121/2158/4229 1122/2163/4230 1124/2199/4231
+f 1124/2199/4231 1122/2163/4230 1123/2198/4232
+s off
+f 1125/2138/4233 1126/2186/4234 1127/2201/4235
+f 1128/2139/4236 1129/2202/4237 1130/2180/4238
+s 906
+f 1131/2204/4239 1132/2205/4240 1134/2142/4241
+f 1134/2142/4241 1132/2205/4240 1133/2153/4242
+s off
+f 1135/2149/4243 1136/2209/4244 1137/2192/4245
+f 1138/2196/4246 1139/2166/4247 1140/2208/4248
+s 907
+f 1141/2210/4249 1143/2211/4250 1173/2213/4251
+f 1173/2213/4251 1143/2211/4250 1175/2212/4252
+s 908
+f 1143/2211/4253 1145/2214/4254 1175/2212/4255
+f 1175/2212/4255 1145/2214/4254 1177/2215/4256
+s 909
+f 1145/2214/4257 1147/2216/4258 1177/2215/4259
+f 1177/2215/4259 1147/2216/4258 1179/2217/4260
+s 910
+f 1147/2216/4261 1149/2218/4262 1179/2217/4263
+f 1179/2217/4263 1149/2218/4262 1181/2219/4264
+s 911
+f 1149/2218/4265 1151/2220/4266 1181/2219/4267
+f 1181/2219/4267 1151/2220/4266 1183/2221/4268
+s 912
+f 1151/2222/4269 1153/2223/4270 1183/2225/4271
+f 1183/2225/4271 1153/2223/4270 1185/2224/4272
+s 913
+f 1153/2223/4273 1155/2226/4274 1185/2224/4275
+f 1185/2224/4275 1155/2226/4274 1187/2227/4276
+s 914
+f 1155/2226/4277 1157/2228/4278 1187/2227/4279
+f 1187/2227/4279 1157/2228/4278 1189/2229/4280
+s 915
+f 1157/2228/4281 1159/2230/4282 1189/2229/4283
+f 1189/2229/4283 1159/2230/4282 1191/2231/4284
+s 916
+f 1159/2232/4285 1161/2233/4286 1191/2235/4287
+f 1191/2235/4287 1161/2233/4286 1193/2234/4288
+s 917
+f 1161/2233/4289 1163/2236/4290 1193/2234/4291
+f 1193/2234/4291 1163/2236/4290 1195/2237/4292
+s 918
+f 1163/2236/4293 1165/2238/4294 1195/2237/4295
+f 1195/2237/4295 1165/2238/4294 1197/2239/4296
+s 919
+f 1165/2238/4297 1167/2240/4298 1197/2239/4299
+f 1197/2239/4299 1167/2240/4298 1199/2241/4300
+s 920
+f 1167/2242/4301 1169/2243/4302 1199/2245/4303
+f 1199/2245/4303 1169/2243/4302 1201/2244/4304
+s 921
+f 1169/2243/4305 1171/2246/4306 1201/2244/4307
+f 1201/2244/4307 1171/2246/4306 1203/2247/4308
+s 922
+f 1171/2246/4309 1141/2248/4310 1203/2247/4311
+f 1203/2247/4311 1141/2248/4310 1173/2249/4312
+s 923
+f 1172/2250/4313 1170/2251/4314 1142/2265/4315
+f 1170/2251/4314 1168/2252/4316 1142/2265/4315
+f 1168/2252/4316 1166/2253/4317 1142/2265/4315
+f 1166/2253/4317 1164/2254/4318 1142/2265/4315
+f 1164/2254/4318 1162/2255/4319 1142/2265/4315
+f 1162/2255/4319 1160/2256/4320 1142/2265/4315
+f 1160/2256/4320 1158/2257/4321 1142/2265/4315
+f 1158/2257/4321 1156/2258/4322 1142/2265/4315
+f 1156/2258/4322 1154/2259/4323 1142/2265/4315
+f 1154/2259/4323 1152/2260/4324 1142/2265/4315
+f 1152/2260/4324 1150/2261/4325 1142/2265/4315
+f 1150/2261/4325 1148/2262/4326 1142/2265/4315
+f 1148/2262/4326 1146/2263/4327 1142/2265/4315
+f 1146/2263/4327 1144/2264/4328 1142/2265/4315
+s 924
+f 1176/2266/4329 1178/2267/4330 1174/2281/4331
+f 1178/2267/4330 1180/2268/4332 1174/2281/4331
+f 1180/2268/4332 1182/2269/4333 1174/2281/4331
+f 1182/2269/4333 1184/2270/4334 1174/2281/4331
+f 1184/2270/4334 1186/2271/4335 1174/2281/4331
+f 1186/2271/4335 1188/2272/4336 1174/2281/4331
+f 1188/2272/4336 1190/2273/4337 1174/2281/4331
+f 1190/2273/4337 1192/2274/4338 1174/2281/4331
+f 1192/2274/4338 1194/2275/4339 1174/2281/4331
+f 1194/2275/4339 1196/2276/4340 1174/2281/4331
+f 1196/2276/4340 1198/2277/4341 1174/2281/4331
+f 1198/2277/4341 1200/2278/4342 1174/2281/4331
+f 1200/2278/4342 1202/2279/4343 1174/2281/4331
+f 1202/2279/4343 1204/2280/4344 1174/2281/4331
+s 925
+f 1142/2282/4345 1141/2248/4346 1172/2283/4347
+f 1172/2283/4347 1141/2248/4346 1171/2246/4348
+s 926
+f 1141/2210/4349 1142/2284/4350 1143/2211/4351
+f 1143/2211/4351 1142/2284/4350 1144/2285/4352
+s 927
+f 1143/2211/4353 1144/2285/4354 1145/2214/4355
+f 1145/2214/4355 1144/2285/4354 1146/2286/4356
+s 928
+f 1145/2214/4357 1146/2286/4358 1147/2216/4359
+f 1147/2216/4359 1146/2286/4358 1148/2287/4360
+s 929
+f 1147/2216/4361 1148/2287/4362 1149/2218/4363
+f 1149/2218/4363 1148/2287/4362 1150/2288/4364
+s 930
+f 1149/2289/4365 1150/2290/4366 1151/2222/4367
+f 1151/2222/4367 1150/2290/4366 1152/2291/4368
+s 931
+f 1151/2222/4369 1152/2291/4370 1153/2223/4371
+f 1153/2223/4371 1152/2291/4370 1154/2292/4372
+s 932
+f 1153/2223/4373 1154/2292/4374 1155/2226/4375
+f 1155/2226/4375 1154/2292/4374 1156/2293/4376
+s 933
+f 1155/2226/4377 1156/2293/4378 1157/2228/4379
+f 1157/2228/4379 1156/2293/4378 1158/2294/4380
+s 934
+f 1157/2295/4381 1158/2296/4382 1159/2232/4383
+f 1159/2232/4383 1158/2296/4382 1160/2297/4384
+s 935
+f 1159/2232/4385 1160/2297/4386 1161/2233/4387
+f 1161/2233/4387 1160/2297/4386 1162/2298/4388
+s 936
+f 1161/2233/4389 1162/2298/4390 1163/2236/4391
+f 1163/2236/4391 1162/2298/4390 1164/2299/4392
+s 937
+f 1163/2236/4393 1164/2299/4394 1165/2238/4395
+f 1165/2238/4395 1164/2299/4394 1166/2300/4396
+s 938
+f 1165/2301/4397 1166/2302/4398 1167/2242/4399
+f 1167/2242/4399 1166/2302/4398 1168/2303/4400
+s 939
+f 1167/2242/4401 1168/2303/4402 1169/2243/4403
+f 1169/2243/4403 1168/2303/4402 1170/2304/4404
+s 940
+f 1169/2243/4405 1170/2304/4406 1171/2246/4407
+f 1171/2246/4407 1170/2304/4406 1172/2283/4408
+s 941
+f 1174/2305/4409 1173/2213/4410 1176/2306/4411
+f 1176/2306/4411 1173/2213/4410 1175/2212/4412
+s 942
+f 1173/2249/4413 1174/2307/4414 1203/2247/4415
+f 1203/2247/4415 1174/2307/4414 1204/2308/4416
+s 943
+f 1176/2306/4417 1175/2212/4418 1178/2309/4419
+f 1178/2309/4419 1175/2212/4418 1177/2215/4420
+s 944
+f 1178/2309/4421 1177/2215/4422 1180/2310/4423
+f 1180/2310/4423 1177/2215/4422 1179/2217/4424
+s 945
+f 1180/2310/4425 1179/2217/4426 1182/2311/4427
+f 1182/2311/4427 1179/2217/4426 1181/2219/4428
+s 946
+f 1182/2312/4429 1181/2313/4430 1184/2314/4431
+f 1184/2314/4431 1181/2313/4430 1183/2225/4432
+s 947
+f 1184/2314/4433 1183/2225/4434 1186/2315/4435
+f 1186/2315/4435 1183/2225/4434 1185/2224/4436
+s 948
+f 1186/2315/4437 1185/2224/4438 1188/2316/4439
+f 1188/2316/4439 1185/2224/4438 1187/2227/4440
+s 949
+f 1188/2316/4441 1187/2227/4442 1190/2317/4443
+f 1190/2317/4443 1187/2227/4442 1189/2229/4444
+s 950
+f 1190/2318/4445 1189/2319/4446 1192/2320/4447
+f 1192/2320/4447 1189/2319/4446 1191/2235/4448
+s 951
+f 1192/2320/4449 1191/2235/4450 1194/2321/4451
+f 1194/2321/4451 1191/2235/4450 1193/2234/4452
+s 952
+f 1194/2321/4453 1193/2234/4454 1196/2322/4455
+f 1196/2322/4455 1193/2234/4454 1195/2237/4456
+s 953
+f 1196/2322/4457 1195/2237/4458 1198/2323/4459
+f 1198/2323/4459 1195/2237/4458 1197/2239/4460
+s 954
+f 1198/2324/4461 1197/2325/4462 1200/2326/4463
+f 1200/2326/4463 1197/2325/4462 1199/2245/4464
+s 955
+f 1200/2326/4465 1199/2245/4466 1202/2327/4467
+f 1202/2327/4467 1199/2245/4466 1201/2244/4468
+s 956
+f 1202/2327/4469 1201/2244/4470 1204/2308/4471
+f 1204/2308/4471 1201/2244/4470 1203/2247/4472
+s 957
+f 1213/2328/4473 1229/2329/4474 1206/2331/4475
+f 1206/2331/4475 1229/2329/4474 1232/2330/4476
+s 958
+f 1234/2332/4477 1238/2333/4478 1207/2335/4479
+f 1207/2335/4479 1238/2333/4478 1211/2334/4480
+s 959
+f 1217/2337/4481 1214/2338/4482 1210/2336/4483
+f 1210/2336/4483 1214/2338/4482 1205/2339/4484
+s 960
+f 1239/2340/4485 1220/2341/4486 1209/2343/4487
+f 1209/2343/4487 1220/2341/4486 1218/2342/4488
+s 961
+f 1210/2336/4489 1209/2343/4490 1217/2337/4491
+f 1217/2337/4491 1209/2343/4490 1218/2342/4492
+s 962
+f 1237/2344/4493 1244/2345/4494 1208/2347/4495
+f 1208/2347/4495 1244/2345/4494 1240/2346/4496
+s 963
+f 1216/2348/4497 1225/2349/4498 1212/2351/4499
+f 1212/2351/4499 1225/2349/4498 1230/2350/4500
+s 964
+f 1219/2352/4501 1224/2353/4502 1215/2355/4503
+f 1215/2355/4503 1224/2353/4502 1226/2354/4504
+s 965
+f 1241/2356/4505 1243/2357/4506 1221/2359/4507
+f 1221/2359/4507 1243/2357/4506 1222/2358/4508
+s 966
+f 1242/2360/4509 1236/2361/4510 1223/2363/4511
+f 1223/2363/4511 1236/2361/4510 1227/2362/4512
+s 967
+f 1233/2365/4513 1231/2366/4514 1235/2364/4515
+f 1235/2364/4515 1231/2366/4514 1228/2367/4516
+s 968
+f 1228/2367/4517 1227/2362/4518 1235/2364/4519
+f 1235/2364/4519 1227/2362/4518 1236/2361/4520
+s 969
+f 1206/2368/4521 1205/2339/4522 1213/2369/4523
+f 1213/2369/4523 1205/2339/4522 1214/2338/4524
+s 970
+f 1207/2335/4525 1206/2331/4526 1234/2332/4527
+f 1234/2332/4527 1206/2331/4526 1232/2330/4528
+s 971
+f 1205/2370/4529 1207/2335/4530 1210/2371/4531
+f 1210/2371/4531 1207/2335/4530 1211/2334/4532
+s 972
+f 1208/2372/4533 1240/2373/4534 1209/2343/4535
+f 1209/2343/4535 1240/2373/4534 1239/2340/4536
+s 973
+f 1208/2347/4537 1211/2334/4538 1237/2344/4539
+f 1237/2344/4539 1211/2334/4538 1238/2333/4540
+s 974
+f 1213/2374/4541 1212/2375/4542 1229/2377/4543
+f 1229/2377/4543 1212/2375/4542 1230/2376/4544
+s 975
+f 1214/2338/4545 1217/2337/4546 1212/2378/4547
+f 1212/2378/4547 1217/2337/4546 1216/2379/4548
+s 976
+f 1216/2348/4549 1215/2355/4550 1225/2349/4551
+f 1225/2349/4551 1215/2355/4550 1226/2354/4552
+s 977
+f 1215/2380/4553 1218/2342/4554 1219/2381/4555
+f 1219/2381/4555 1218/2342/4554 1220/2341/4556
+s 978
+f 1220/2341/4557 1239/2340/4558 1221/2382/4559
+f 1221/2382/4559 1239/2340/4558 1241/2383/4560
+s 979
+f 1219/2352/4561 1221/2359/4562 1224/2353/4563
+f 1224/2353/4563 1221/2359/4562 1222/2358/4564
+s 980
+f 1223/2363/4565 1222/2384/4566 1242/2360/4567
+f 1242/2360/4567 1222/2384/4566 1243/2385/4568
+s 981
+f 1223/2386/4569 1227/2387/4570 1224/2353/4571
+f 1224/2353/4571 1227/2387/4570 1226/2354/4572
+s 982
+f 1225/2388/4573 1228/2367/4574 1230/2389/4575
+f 1230/2389/4575 1228/2367/4574 1231/2366/4576
+s 983
+f 1231/2366/4577 1233/2365/4578 1229/2390/4579
+f 1229/2390/4579 1233/2365/4578 1232/2391/4580
+s 984
+f 1233/2392/4581 1235/2393/4582 1234/2332/4583
+f 1234/2332/4583 1235/2393/4582 1238/2333/4584
+s 985
+f 1237/2394/4585 1236/2361/4586 1244/2395/4587
+f 1244/2395/4587 1236/2361/4586 1242/2360/4588
+s 986
+f 1241/2396/4589 1240/2397/4590 1243/2399/4591
+f 1243/2399/4591 1240/2397/4590 1244/2398/4592
+s off
+f 1205/2370/4593 1206/2331/4594 1207/2335/4595
+s 987
+f 1208/2347/4596 1209/2400/4597 1211/2334/4598
+f 1211/2334/4598 1209/2400/4597 1210/2371/4599
+s off
+f 1212/2378/4600 1213/2369/4601 1214/2338/4602
+s 988
+f 1215/2380/4603 1216/2379/4604 1218/2342/4605
+f 1218/2342/4605 1216/2379/4604 1217/2337/4606
+s off
+f 1219/2381/4607 1220/2341/4608 1221/2382/4609
+f 1222/2358/4610 1223/2386/4611 1224/2353/4612
+s 989
+f 1225/2349/4613 1226/2354/4614 1228/2401/4615
+f 1228/2401/4615 1226/2354/4614 1227/2387/4616
+s off
+f 1229/2390/4617 1230/2389/4618 1231/2366/4619
+f 1232/2330/4620 1233/2392/4621 1234/2332/4622
+s 990
+f 1235/2393/4623 1236/2402/4624 1238/2333/4625
+f 1238/2333/4625 1236/2402/4624 1237/2344/4626
+s off
+f 1239/2340/4627 1240/2373/4628 1241/2383/4629
+f 1242/2360/4630 1243/2385/4631 1244/2395/4632
+s 991
+f 1245/2403/4633 1247/2404/4634 1277/2406/4635
+f 1277/2406/4635 1247/2404/4634 1279/2405/4636
+s 992
+f 1247/2404/4637 1249/2407/4638 1279/2405/4639
+f 1279/2405/4639 1249/2407/4638 1281/2408/4640
+s 993
+f 1249/2407/4641 1251/2409/4642 1281/2408/4643
+f 1281/2408/4643 1251/2409/4642 1283/2410/4644
+s 994
+f 1251/2409/4645 1253/2411/4646 1283/2410/4647
+f 1283/2410/4647 1253/2411/4646 1285/2412/4648
+s 995
+f 1253/2413/4649 1255/2414/4650 1285/2416/4651
+f 1285/2416/4651 1255/2414/4650 1287/2415/4652
+s 996
+f 1255/2414/4653 1257/2417/4654 1287/2415/4655
+f 1287/2415/4655 1257/2417/4654 1289/2418/4656
+s 997
+f 1257/2417/4657 1259/2419/4658 1289/2418/4659
+f 1289/2418/4659 1259/2419/4658 1291/2420/4660
+s 998
+f 1259/2419/4661 1261/2421/4662 1291/2420/4663
+f 1291/2420/4663 1261/2421/4662 1293/2422/4664
+s 999
+f 1261/2423/4665 1263/2424/4666 1293/2426/4667
+f 1293/2426/4667 1263/2424/4666 1295/2425/4668
+s 1000
+f 1263/2424/4669 1265/2427/4670 1295/2425/4671
+f 1295/2425/4671 1265/2427/4670 1297/2428/4672
+s 1001
+f 1265/2427/4673 1267/2429/4674 1297/2428/4675
+f 1297/2428/4675 1267/2429/4674 1299/2430/4676
+s 1002
+f 1267/2429/4677 1269/2431/4678 1299/2430/4679
+f 1299/2430/4679 1269/2431/4678 1301/2432/4680
+s 1003
+f 1269/2433/4681 1271/2434/4682 1301/2436/4683
+f 1301/2436/4683 1271/2434/4682 1303/2435/4684
+s 1004
+f 1271/2434/4685 1273/2437/4686 1303/2435/4687
+f 1303/2435/4687 1273/2437/4686 1305/2438/4688
+s 1005
+f 1273/2437/4689 1275/2439/4690 1305/2438/4691
+f 1305/2438/4691 1275/2439/4690 1307/2440/4692
+s 1006
+f 1275/2441/4693 1245/2403/4694 1307/2442/4695
+f 1307/2442/4695 1245/2403/4694 1277/2406/4696
+s 1007
+f 1276/2443/4697 1274/2444/4698 1246/2458/4699
+f 1274/2444/4698 1272/2445/4700 1246/2458/4699
+f 1272/2445/4700 1270/2446/4701 1246/2458/4699
+f 1270/2446/4701 1268/2447/4702 1246/2458/4699
+f 1268/2447/4702 1266/2448/4703 1246/2458/4699
+f 1266/2448/4703 1264/2449/4704 1246/2458/4699
+f 1264/2449/4704 1262/2450/4705 1246/2458/4699
+f 1262/2450/4705 1260/2451/4706 1246/2458/4699
+f 1260/2451/4706 1258/2452/4707 1246/2458/4699
+f 1258/2452/4707 1256/2453/4708 1246/2458/4699
+f 1256/2453/4708 1254/2454/4709 1246/2458/4699
+f 1254/2454/4709 1252/2455/4710 1246/2458/4699
+f 1252/2455/4710 1250/2456/4711 1246/2458/4699
+f 1250/2456/4711 1248/2457/4712 1246/2458/4699
+s 1008
+f 1280/2459/4713 1282/2460/4714 1278/2474/4715
+f 1282/2460/4714 1284/2461/4716 1278/2474/4715
+f 1284/2461/4716 1286/2462/4717 1278/2474/4715
+f 1286/2462/4717 1288/2463/4718 1278/2474/4715
+f 1288/2463/4718 1290/2464/4719 1278/2474/4715
+f 1290/2464/4719 1292/2465/4720 1278/2474/4715
+f 1292/2465/4720 1294/2466/4721 1278/2474/4715
+f 1294/2466/4721 1296/2467/4722 1278/2474/4715
+f 1296/2467/4722 1298/2468/4723 1278/2474/4715
+f 1298/2468/4723 1300/2469/4724 1278/2474/4715
+f 1300/2469/4724 1302/2470/4725 1278/2474/4715
+f 1302/2470/4725 1304/2471/4726 1278/2474/4715
+f 1304/2471/4726 1306/2472/4727 1278/2474/4715
+f 1306/2472/4727 1308/2473/4728 1278/2474/4715
+s 1009
+f 1246/2475/4729 1245/2476/4730 1276/2477/4731
+f 1276/2477/4731 1245/2476/4730 1275/2439/4732
+s 1010
+f 1245/2403/4733 1246/2478/4734 1247/2404/4735
+f 1247/2404/4735 1246/2478/4734 1248/2479/4736
+s 1011
+f 1247/2404/4737 1248/2479/4738 1249/2407/4739
+f 1249/2407/4739 1248/2479/4738 1250/2480/4740
+s 1012
+f 1249/2481/4741 1250/2456/4742 1251/2482/4743
+f 1251/2482/4743 1250/2456/4742 1252/2455/4744
+s 1013
+f 1251/2409/4745 1252/2483/4746 1253/2411/4747
+f 1253/2411/4747 1252/2483/4746 1254/2484/4748
+s 1014
+f 1253/2413/4749 1254/2485/4750 1255/2414/4751
+f 1255/2414/4751 1254/2485/4750 1256/2486/4752
+s 1015
+f 1255/2414/4753 1256/2486/4754 1257/2417/4755
+f 1257/2417/4755 1256/2486/4754 1258/2487/4756
+s 1016
+f 1257/2417/4757 1258/2487/4758 1259/2419/4759
+f 1259/2419/4759 1258/2487/4758 1260/2488/4760
+s 1017
+f 1259/2419/4761 1260/2488/4762 1261/2421/4763
+f 1261/2421/4763 1260/2488/4762 1262/2489/4764
+s 1018
+f 1261/2423/4765 1262/2490/4766 1263/2424/4767
+f 1263/2424/4767 1262/2490/4766 1264/2491/4768
+s 1019
+f 1263/2424/4769 1264/2491/4770 1265/2427/4771
+f 1265/2427/4771 1264/2491/4770 1266/2492/4772
+s 1020
+f 1265/2427/4773 1266/2492/4774 1267/2429/4775
+f 1267/2429/4775 1266/2492/4774 1268/2493/4776
+s 1021
+f 1267/2429/4777 1268/2493/4778 1269/2431/4779
+f 1269/2431/4779 1268/2493/4778 1270/2494/4780
+s 1022
+f 1269/2433/4781 1270/2495/4782 1271/2434/4783
+f 1271/2434/4783 1270/2495/4782 1272/2496/4784
+s 1023
+f 1271/2434/4785 1272/2496/4786 1273/2437/4787
+f 1273/2437/4787 1272/2496/4786 1274/2497/4788
+s 1024
+f 1273/2437/4789 1274/2497/4790 1275/2439/4791
+f 1275/2439/4791 1274/2497/4790 1276/2477/4792
+s 1025
+f 1278/2498/4793 1277/2406/4794 1280/2499/4795
+f 1280/2499/4795 1277/2406/4794 1279/2405/4796
+s 1026
+f 1277/2500/4797 1278/2501/4798 1307/2440/4799
+f 1307/2440/4799 1278/2501/4798 1308/2502/4800
+s 1027
+f 1280/2499/4801 1279/2405/4802 1282/2503/4803
+f 1282/2503/4803 1279/2405/4802 1281/2408/4804
+s 1028
+f 1282/2503/4805 1281/2408/4806 1284/2504/4807
+f 1284/2504/4807 1281/2408/4806 1283/2410/4808
+s 1029
+f 1284/2504/4809 1283/2410/4810 1286/2505/4811
+f 1286/2505/4811 1283/2410/4810 1285/2412/4812
+s 1030
+f 1286/2506/4813 1285/2416/4814 1288/2507/4815
+f 1288/2507/4815 1285/2416/4814 1287/2415/4816
+s 1031
+f 1288/2507/4817 1287/2415/4818 1290/2508/4819
+f 1290/2508/4819 1287/2415/4818 1289/2418/4820
+s 1032
+f 1290/2508/4821 1289/2418/4822 1292/2509/4823
+f 1292/2509/4823 1289/2418/4822 1291/2420/4824
+s 1033
+f 1292/2509/4825 1291/2420/4826 1294/2510/4827
+f 1294/2510/4827 1291/2420/4826 1293/2422/4828
+s 1034
+f 1294/2511/4829 1293/2426/4830 1296/2512/4831
+f 1296/2512/4831 1293/2426/4830 1295/2425/4832
+s 1035
+f 1296/2512/4833 1295/2425/4834 1298/2513/4835
+f 1298/2513/4835 1295/2425/4834 1297/2428/4836
+s 1036
+f 1298/2513/4837 1297/2428/4838 1300/2514/4839
+f 1300/2514/4839 1297/2428/4838 1299/2430/4840
+s 1037
+f 1300/2514/4841 1299/2430/4842 1302/2515/4843
+f 1302/2515/4843 1299/2430/4842 1301/2432/4844
+s 1038
+f 1302/2516/4845 1301/2436/4846 1304/2517/4847
+f 1304/2517/4847 1301/2436/4846 1303/2435/4848
+s 1039
+f 1304/2517/4849 1303/2435/4850 1306/2518/4851
+f 1306/2518/4851 1303/2435/4850 1305/2438/4852
+s 1040
+f 1306/2518/4853 1305/2438/4854 1308/2502/4855
+f 1308/2502/4855 1305/2438/4854 1307/2440/4856
+s 1041
+f 1332/2519/4857 1324/2520/4858 1310/2522/4859
+f 1310/2522/4859 1324/2520/4858 1328/2521/4860
+s 1042
+f 1330/2523/4861 1344/2524/4862 1311/2526/4863
+f 1311/2526/4863 1344/2524/4862 1314/2525/4864
+s 1043
+f 1313/2527/4865 1341/2528/4866 1309/2530/4867
+f 1309/2530/4867 1341/2528/4866 1333/2529/4868
+s 1044
+f 1339/2532/4869 1335/2533/4870 1343/2531/4871
+f 1343/2531/4871 1335/2533/4870 1334/2534/4872
+s 1045
+f 1333/2529/4873 1341/2528/4874 1334/2534/4875
+f 1334/2534/4875 1341/2528/4874 1343/2531/4876
+s 1046
+f 1346/2535/4877 1320/2536/4878 1312/2540/4879
+f 1312/2540/4879 1320/2536/4878 1342/2539/4880
+f 1320/2536/4878 1317/2537/4881 1342/2539/4880
+f 1317/2537/4881 1340/2538/4882 1342/2539/4880
+s 1047
+f 1322/2541/4883 1336/2542/4884 1316/2544/4885
+f 1316/2544/4885 1336/2542/4884 1338/2543/4886
+s 1048
+f 1326/2546/4887 1323/2547/4888 1319/2545/4889
+f 1319/2545/4889 1323/2547/4888 1315/2548/4890
+s 1049
+f 1345/2549/4891 1329/2550/4892 1318/2552/4893
+f 1318/2552/4893 1329/2550/4892 1327/2551/4894
+s 1050
+f 1319/2545/4895 1318/2552/4896 1326/2546/4897
+f 1326/2546/4897 1318/2552/4896 1327/2551/4898
+s 1051
+f 1325/2553/4899 1331/2554/4900 1321/2556/4901
+f 1321/2556/4901 1331/2554/4900 1337/2555/4902
+s 1052
+f 1309/2557/4903 1333/2558/4904 1310/2522/4905
+f 1310/2522/4905 1333/2558/4904 1332/2519/4906
+s 1053
+f 1311/2526/4907 1310/2522/4908 1330/2523/4909
+f 1330/2523/4909 1310/2522/4908 1328/2521/4910
+s 1054
+f 1309/2530/4911 1311/2559/4912 1313/2527/4913
+f 1313/2527/4913 1311/2559/4912 1314/2560/4914
+s 1055
+f 1313/2527/4915 1312/2561/4916 1341/2528/4917
+f 1341/2528/4917 1312/2561/4916 1342/2562/4918
+s 1056
+f 1339/2532/4919 1343/2531/4920 1340/2563/4921
+f 1340/2563/4921 1343/2531/4920 1342/2562/4922
+s off
+f 1341/2528/4923 1342/2562/4924 1343/2531/4925
+s 1057
+f 1312/2540/4926 1314/2564/4927 1346/2535/4928
+f 1346/2535/4928 1314/2564/4927 1344/2565/4929
+s 1058
+f 1316/2566/4930 1315/2548/4931 1322/2567/4932
+f 1322/2567/4932 1315/2548/4931 1323/2547/4933
+s 1059
+f 1317/2568/4934 1316/2544/4935 1340/2569/4936
+f 1340/2569/4936 1316/2544/4935 1338/2543/4937
+s 1060
+f 1315/2548/4938 1317/2570/4939 1319/2545/4940
+f 1319/2545/4940 1317/2570/4939 1320/2571/4941
+s off
+f 1318/2552/4942 1319/2545/4943 1320/2571/4944
+s 1061
+f 1320/2571/4945 1346/2572/4946 1318/2552/4947
+f 1318/2552/4947 1346/2572/4946 1345/2549/4948
+s 1062
+f 1322/2573/4949 1321/2574/4950 1336/2576/4951
+f 1336/2576/4951 1321/2574/4950 1337/2575/4952
+s 1063
+f 1323/2547/4953 1326/2546/4954 1321/2577/4955
+f 1321/2577/4955 1326/2546/4954 1325/2578/4956
+s 1064
+f 1325/2553/4957 1324/2520/4958 1331/2554/4959
+f 1331/2554/4959 1324/2520/4958 1332/2519/4960
+s 1065
+f 1324/2520/4961 1327/2579/4962 1328/2521/4963
+f 1328/2521/4963 1327/2579/4962 1329/2580/4964
+s 1066
+f 1329/2550/4965 1345/2549/4966 1330/2581/4967
+f 1330/2581/4967 1345/2549/4966 1344/2582/4968
+s 1067
+f 1331/2583/4969 1334/2534/4970 1337/2584/4971
+f 1337/2584/4971 1334/2534/4970 1335/2533/4972
+s 1068
+f 1335/2533/4973 1339/2532/4974 1336/2585/4975
+f 1336/2585/4975 1339/2532/4974 1338/2586/4976
+s off
+f 1309/2557/4977 1310/2522/4978 1311/2526/4979
+f 1312/2561/4980 1313/2527/4981 1314/2560/4982
+f 1315/2548/4983 1316/2566/4984 1317/2570/4985
+f 1321/2577/4986 1322/2567/4987 1323/2547/4988
+s 1069
+f 1324/2520/4989 1325/2553/4990 1327/2579/4991
+f 1327/2579/4991 1325/2553/4990 1326/2587/4992
+s off
+f 1328/2521/4993 1329/2580/4994 1330/2523/4995
+s 1070
+f 1332/2519/4996 1333/2558/4997 1331/2554/4998
+f 1331/2554/4998 1333/2558/4997 1334/2588/4999
+s off
+f 1335/2533/5000 1336/2585/5001 1337/2584/5002
+f 1338/2586/5003 1339/2532/5004 1340/2563/5005
+f 1344/2582/5006 1345/2549/5007 1346/2572/5008
+s 1071
+f 1355/2589/5009 1361/2590/5010 1348/2592/5011
+f 1348/2592/5011 1361/2590/5010 1368/2591/5012
+s 1072
+f 1370/2593/5013 1372/2594/5014 1349/2596/5015
+f 1349/2596/5015 1372/2594/5014 1350/2595/5016
+s 1073
+f 1353/2597/5017 1359/2598/5018 1347/2600/5019
+f 1347/2600/5019 1359/2598/5018 1356/2599/5020
+s 1074
+f 1386/2602/5021 1360/2603/5022 1376/2601/5023
+f 1376/2601/5023 1360/2603/5022 1352/2604/5024
+s 1075
+f 1353/2597/5025 1352/2604/5026 1359/2598/5027
+f 1359/2598/5027 1352/2604/5026 1360/2603/5028
+s 1076
+f 1371/2605/5029 1380/2606/5030 1351/2608/5031
+f 1351/2608/5031 1380/2606/5030 1377/2607/5032
+s 1077
+f 1358/2609/5033 1367/2610/5034 1354/2612/5035
+f 1354/2612/5035 1367/2610/5034 1362/2611/5036
+s 1078
+f 1385/2613/5037 1382/2614/5038 1357/2616/5039
+f 1357/2616/5039 1382/2614/5038 1364/2615/5040
+s 1079
+f 1373/2618/5041 1369/2619/5042 1366/2617/5043
+f 1366/2617/5043 1369/2619/5042 1363/2620/5044
+s 1080
+f 1381/2621/5045 1378/2622/5046 1365/2624/5047
+f 1365/2624/5047 1378/2622/5046 1374/2623/5048
+s 1081
+f 1366/2617/5049 1365/2624/5050 1373/2618/5051
+f 1373/2618/5051 1365/2624/5050 1374/2623/5052
+s 1082
+f 1379/2625/5053 1383/2626/5054 1375/2628/5055
+f 1375/2628/5055 1383/2626/5054 1384/2627/5056
+s 1083
+f 1347/2629/5057 1356/2630/5058 1348/2592/5059
+f 1348/2592/5059 1356/2630/5058 1355/2589/5060
+s 1084
+f 1349/2596/5061 1348/2631/5062 1370/2593/5063
+f 1370/2593/5063 1348/2631/5062 1368/2632/5064
+s 1085
+f 1347/2633/5065 1349/2596/5066 1353/2634/5067
+f 1353/2634/5067 1349/2596/5066 1350/2595/5068
+s 1086
+f 1351/2608/5069 1350/2595/5070 1371/2605/5071
+f 1371/2605/5071 1350/2595/5070 1372/2594/5072
+s 1087
+f 1351/2608/5073 1377/2607/5074 1352/2635/5075
+f 1352/2635/5075 1377/2607/5074 1376/2636/5076
+s 1088
+f 1355/2589/5077 1354/2612/5078 1361/2590/5079
+f 1361/2590/5079 1354/2612/5078 1362/2611/5080
+s 1089
+f 1356/2599/5081 1359/2598/5082 1354/2637/5083
+f 1354/2637/5083 1359/2598/5082 1358/2638/5084
+s 1090
+f 1358/2639/5085 1357/2616/5086 1367/2640/5087
+f 1367/2640/5087 1357/2616/5086 1364/2615/5088
+s 1091
+f 1357/2641/5089 1360/2603/5090 1385/2642/5091
+f 1385/2642/5091 1360/2603/5090 1386/2602/5092
+s 1092
+f 1363/2643/5093 1362/2644/5094 1366/2645/5095
+f 1366/2645/5095 1362/2644/5094 1367/2640/5096
+s 1093
+f 1361/2590/5097 1363/2646/5098 1368/2591/5099
+f 1368/2591/5099 1363/2646/5098 1369/2647/5100
+s 1094
+f 1364/2615/5101 1382/2614/5102 1365/2648/5103
+f 1365/2648/5103 1382/2614/5102 1381/2649/5104
+s 1095
+f 1369/2650/5105 1373/2651/5106 1370/2593/5107
+f 1370/2593/5107 1373/2651/5106 1372/2594/5108
+s 1096
+f 1371/2605/5109 1374/2652/5110 1380/2606/5111
+f 1380/2606/5111 1374/2652/5110 1378/2653/5112
+s 1097
+f 1376/2601/5113 1375/2654/5114 1386/2602/5115
+f 1386/2602/5115 1375/2654/5114 1384/2655/5116
+s 1098
+f 1375/2628/5117 1377/2656/5118 1379/2625/5119
+f 1379/2625/5119 1377/2656/5118 1380/2657/5120
+s 1099
+f 1378/2622/5121 1381/2621/5122 1379/2658/5123
+f 1379/2658/5123 1381/2621/5122 1383/2659/5124
+s 1100
+f 1383/2660/5125 1382/2614/5126 1384/2661/5127
+f 1384/2661/5127 1382/2614/5126 1385/2613/5128
+s off
+f 1347/2633/5129 1348/2631/5130 1349/2596/5131
+s 1101
+f 1350/2595/5132 1351/2608/5133 1353/2634/5134
+f 1353/2634/5134 1351/2608/5133 1352/2635/5135
+s off
+f 1354/2612/5136 1355/2589/5137 1356/2630/5138
+s 1102
+f 1357/2641/5139 1358/2638/5140 1360/2603/5141
+f 1360/2603/5141 1358/2638/5140 1359/2598/5142
+s off
+f 1361/2590/5143 1362/2611/5144 1363/2646/5145
+s 1103
+f 1364/2615/5146 1365/2648/5147 1367/2640/5148
+f 1367/2640/5148 1365/2648/5147 1366/2645/5149
+s off
+f 1368/2632/5150 1369/2650/5151 1370/2593/5152
+s 1104
+f 1371/2605/5153 1372/2594/5154 1374/2652/5155
+f 1374/2652/5155 1372/2594/5154 1373/2651/5156
+s off
+f 1375/2654/5157 1376/2601/5158 1377/2662/5159
+f 1378/2622/5160 1379/2658/5161 1380/2663/5162
+f 1381/2649/5163 1382/2614/5164 1383/2660/5165
+f 1384/2655/5166 1385/2642/5167 1386/2602/5168
+s 1105
+f 1387/2664/5169 1389/2665/5170 1419/2667/5171
+f 1419/2667/5171 1389/2665/5170 1421/2666/5172
+s 1106
+f 1389/2665/5173 1391/2668/5174 1421/2666/5175
+f 1421/2666/5175 1391/2668/5174 1423/2669/5176
+s 1107
+f 1391/2668/5177 1393/2670/5178 1423/2669/5179
+f 1423/2669/5179 1393/2670/5178 1425/2671/5180
+s 1108
+f 1393/2670/5181 1395/2672/5182 1425/2671/5183
+f 1425/2671/5183 1395/2672/5182 1427/2673/5184
+s 1109
+f 1395/2674/5185 1397/2675/5186 1427/2677/5187
+f 1427/2677/5187 1397/2675/5186 1429/2676/5188
+s 1110
+f 1397/2675/5189 1399/2678/5190 1429/2676/5191
+f 1429/2676/5191 1399/2678/5190 1431/2679/5192
+s 1111
+f 1399/2678/5193 1401/2680/5194 1431/2679/5195
+f 1431/2679/5195 1401/2680/5194 1433/2681/5196
+s 1112
+f 1401/2680/5197 1403/2682/5198 1433/2681/5199
+f 1433/2681/5199 1403/2682/5198 1435/2683/5200
+s 1113
+f 1403/2684/5201 1405/2685/5202 1435/2687/5203
+f 1435/2687/5203 1405/2685/5202 1437/2686/5204
+s 1114
+f 1405/2685/5205 1407/2688/5206 1437/2686/5207
+f 1437/2686/5207 1407/2688/5206 1439/2689/5208
+s 1115
+f 1407/2688/5209 1409/2690/5210 1439/2689/5211
+f 1439/2689/5211 1409/2690/5210 1441/2691/5212
+s 1116
+f 1409/2690/5213 1411/2692/5214 1441/2691/5215
+f 1441/2691/5215 1411/2692/5214 1443/2693/5216
+s 1117
+f 1411/2694/5217 1413/2695/5218 1443/2697/5219
+f 1443/2697/5219 1413/2695/5218 1445/2696/5220
+s 1118
+f 1413/2695/5221 1415/2698/5222 1445/2696/5223
+f 1445/2696/5223 1415/2698/5222 1447/2699/5224
+s 1119
+f 1415/2698/5225 1417/2700/5226 1447/2699/5227
+f 1447/2699/5227 1417/2700/5226 1449/2701/5228
+s 1120
+f 1417/2702/5229 1387/2664/5230 1449/2703/5231
+f 1449/2703/5231 1387/2664/5230 1419/2667/5232
+s 1121
+f 1418/2704/5233 1416/2705/5234 1388/2719/5235
+f 1416/2705/5234 1414/2706/5236 1388/2719/5235
+f 1414/2706/5236 1412/2707/5237 1388/2719/5235
+f 1412/2707/5237 1410/2708/5238 1388/2719/5235
+f 1410/2708/5238 1408/2709/5239 1388/2719/5235
+f 1408/2709/5239 1406/2710/5240 1388/2719/5235
+f 1406/2710/5240 1404/2711/5241 1388/2719/5235
+f 1404/2711/5241 1402/2712/5242 1388/2719/5235
+f 1402/2712/5242 1400/2713/5243 1388/2719/5235
+f 1400/2713/5243 1398/2714/5244 1388/2719/5235
+f 1398/2714/5244 1396/2715/5245 1388/2719/5235
+f 1396/2715/5245 1394/2716/5246 1388/2719/5235
+f 1394/2716/5246 1392/2717/5247 1388/2719/5235
+f 1392/2717/5247 1390/2718/5248 1388/2719/5235
+s 1122
+f 1422/2720/5249 1424/2721/5250 1420/2735/5251
+f 1424/2721/5250 1426/2722/5252 1420/2735/5251
+f 1426/2722/5252 1428/2723/5253 1420/2735/5251
+f 1428/2723/5253 1430/2724/5254 1420/2735/5251
+f 1430/2724/5254 1432/2725/5255 1420/2735/5251
+f 1432/2725/5255 1434/2726/5256 1420/2735/5251
+f 1434/2726/5256 1436/2727/5257 1420/2735/5251
+f 1436/2727/5257 1438/2728/5258 1420/2735/5251
+f 1438/2728/5258 1440/2729/5259 1420/2735/5251
+f 1440/2729/5259 1442/2730/5260 1420/2735/5251
+f 1442/2730/5260 1444/2731/5261 1420/2735/5251
+f 1444/2731/5261 1446/2732/5262 1420/2735/5251
+f 1446/2732/5262 1448/2733/5263 1420/2735/5251
+f 1448/2733/5263 1450/2734/5264 1420/2735/5251
+s 1123
+f 1388/2736/5265 1387/2737/5266 1418/2738/5267
+f 1418/2738/5267 1387/2737/5266 1417/2700/5268
+s 1124
+f 1387/2664/5269 1388/2739/5270 1389/2665/5271
+f 1389/2665/5271 1388/2739/5270 1390/2740/5272
+s 1125
+f 1389/2665/5273 1390/2740/5274 1391/2668/5275
+f 1391/2668/5275 1390/2740/5274 1392/2741/5276
+s 1126
+f 1391/2668/5277 1392/2741/5278 1393/2670/5279
+f 1393/2670/5279 1392/2741/5278 1394/2742/5280
+s 1127
+f 1393/2670/5281 1394/2742/5282 1395/2672/5283
+f 1395/2672/5283 1394/2742/5282 1396/2743/5284
+s 1128
+f 1395/2674/5285 1396/2744/5286 1397/2675/5287
+f 1397/2675/5287 1396/2744/5286 1398/2745/5288
+s 1129
+f 1397/2675/5289 1398/2745/5290 1399/2678/5291
+f 1399/2678/5291 1398/2745/5290 1400/2746/5292
+s 1130
+f 1399/2678/5293 1400/2746/5294 1401/2680/5295
+f 1401/2680/5295 1400/2746/5294 1402/2747/5296
+s 1131
+f 1401/2680/5297 1402/2747/5298 1403/2682/5299
+f 1403/2682/5299 1402/2747/5298 1404/2748/5300
+s 1132
+f 1403/2684/5301 1404/2749/5302 1405/2685/5303
+f 1405/2685/5303 1404/2749/5302 1406/2750/5304
+s 1133
+f 1405/2685/5305 1406/2750/5306 1407/2688/5307
+f 1407/2688/5307 1406/2750/5306 1408/2751/5308
+s 1134
+f 1407/2688/5309 1408/2751/5310 1409/2690/5311
+f 1409/2690/5311 1408/2751/5310 1410/2752/5312
+s 1135
+f 1409/2690/5313 1410/2752/5314 1411/2692/5315
+f 1411/2692/5315 1410/2752/5314 1412/2753/5316
+s 1136
+f 1411/2694/5317 1412/2754/5318 1413/2695/5319
+f 1413/2695/5319 1412/2754/5318 1414/2755/5320
+s 1137
+f 1413/2695/5321 1414/2755/5322 1415/2698/5323
+f 1415/2698/5323 1414/2755/5322 1416/2756/5324
+s 1138
+f 1415/2698/5325 1416/2756/5326 1417/2700/5327
+f 1417/2700/5327 1416/2756/5326 1418/2738/5328
+s 1139
+f 1420/2757/5329 1419/2667/5330 1422/2758/5331
+f 1422/2758/5331 1419/2667/5330 1421/2666/5332
+s 1140
+f 1419/2759/5333 1420/2760/5334 1449/2701/5335
+f 1449/2701/5335 1420/2760/5334 1450/2761/5336
+s 1141
+f 1422/2758/5337 1421/2666/5338 1424/2762/5339
+f 1424/2762/5339 1421/2666/5338 1423/2669/5340
+s 1142
+f 1424/2762/5341 1423/2669/5342 1426/2763/5343
+f 1426/2763/5343 1423/2669/5342 1425/2671/5344
+s 1143
+f 1426/2763/5345 1425/2671/5346 1428/2764/5347
+f 1428/2764/5347 1425/2671/5346 1427/2673/5348
+s 1144
+f 1428/2765/5349 1427/2677/5350 1430/2766/5351
+f 1430/2766/5351 1427/2677/5350 1429/2676/5352
+s 1145
+f 1430/2766/5353 1429/2676/5354 1432/2767/5355
+f 1432/2767/5355 1429/2676/5354 1431/2679/5356
+s 1146
+f 1432/2767/5357 1431/2679/5358 1434/2768/5359
+f 1434/2768/5359 1431/2679/5358 1433/2681/5360
+s 1147
+f 1434/2768/5361 1433/2681/5362 1436/2769/5363
+f 1436/2769/5363 1433/2681/5362 1435/2683/5364
+s 1148
+f 1436/2770/5365 1435/2687/5366 1438/2771/5367
+f 1438/2771/5367 1435/2687/5366 1437/2686/5368
+s 1149
+f 1438/2771/5369 1437/2686/5370 1440/2772/5371
+f 1440/2772/5371 1437/2686/5370 1439/2689/5372
+s 1150
+f 1440/2772/5373 1439/2689/5374 1442/2773/5375
+f 1442/2773/5375 1439/2689/5374 1441/2691/5376
+s 1151
+f 1442/2773/5377 1441/2691/5378 1444/2774/5379
+f 1444/2774/5379 1441/2691/5378 1443/2693/5380
+s 1152
+f 1444/2775/5381 1443/2697/5382 1446/2776/5383
+f 1446/2776/5383 1443/2697/5382 1445/2696/5384
+s 1153
+f 1446/2776/5385 1445/2696/5386 1448/2777/5387
+f 1448/2777/5387 1445/2696/5386 1447/2699/5388
+s 1154
+f 1448/2777/5389 1447/2699/5390 1450/2761/5391
+f 1450/2761/5391 1447/2699/5390 1449/2701/5392
+s 1155
+f 1459/2778/5393 1475/2779/5394 1452/2781/5395
+f 1452/2781/5395 1475/2779/5394 1478/2780/5396
+s 1156
+f 1480/2782/5397 1484/2783/5398 1453/2785/5399
+f 1453/2785/5399 1484/2783/5398 1457/2784/5400
+s 1157
+f 1463/2787/5401 1460/2788/5402 1456/2786/5403
+f 1456/2786/5403 1460/2788/5402 1451/2789/5404
+s 1158
+f 1485/2790/5405 1466/2791/5406 1455/2793/5407
+f 1455/2793/5407 1466/2791/5406 1464/2792/5408
+s 1159
+f 1456/2786/5409 1455/2793/5410 1463/2787/5411
+f 1463/2787/5411 1455/2793/5410 1464/2792/5412
+s 1160
+f 1483/2794/5413 1490/2795/5414 1454/2797/5415
+f 1454/2797/5415 1490/2795/5414 1486/2796/5416
+s 1161
+f 1462/2798/5417 1471/2799/5418 1458/2801/5419
+f 1458/2801/5419 1471/2799/5418 1476/2800/5420
+s 1162
+f 1465/2802/5421 1470/2803/5422 1461/2805/5423
+f 1461/2805/5423 1470/2803/5422 1472/2804/5424
+s 1163
+f 1487/2806/5425 1489/2807/5426 1467/2809/5427
+f 1467/2809/5427 1489/2807/5426 1468/2808/5428
+s 1164
+f 1488/2810/5429 1482/2811/5430 1469/2813/5431
+f 1469/2813/5431 1482/2811/5430 1473/2812/5432
+s 1165
+f 1479/2815/5433 1477/2816/5434 1481/2814/5435
+f 1481/2814/5435 1477/2816/5434 1474/2817/5436
+s 1166
+f 1474/2817/5437 1473/2812/5438 1481/2814/5439
+f 1481/2814/5439 1473/2812/5438 1482/2811/5440
+s 1167
+f 1452/2818/5441 1451/2789/5442 1459/2819/5443
+f 1459/2819/5443 1451/2789/5442 1460/2788/5444
+s 1168
+f 1453/2820/5445 1452/2821/5446 1480/2823/5447
+f 1480/2823/5447 1452/2821/5446 1478/2822/5448
+s 1169
+f 1451/2789/5449 1453/2824/5450 1456/2786/5451
+f 1456/2786/5451 1453/2824/5450 1457/2825/5452
+s 1170
+f 1454/2826/5453 1486/2827/5454 1455/2793/5455
+f 1455/2793/5455 1486/2827/5454 1485/2790/5456
+s 1171
+f 1454/2797/5457 1457/2784/5458 1483/2794/5459
+f 1483/2794/5459 1457/2784/5458 1484/2783/5460
+s 1172
+f 1459/2778/5461 1458/2801/5462 1475/2779/5463
+f 1475/2779/5463 1458/2801/5462 1476/2800/5464
+s 1173
+f 1460/2788/5465 1463/2787/5466 1458/2828/5467
+f 1458/2828/5467 1463/2787/5466 1462/2829/5468
+s 1174
+f 1462/2798/5469 1461/2805/5470 1471/2799/5471
+f 1471/2799/5471 1461/2805/5470 1472/2804/5472
+s 1175
+f 1461/2830/5473 1464/2792/5474 1465/2831/5475
+f 1465/2831/5475 1464/2792/5474 1466/2791/5476
+s 1176
+f 1466/2791/5477 1485/2790/5478 1467/2832/5479
+f 1467/2832/5479 1485/2790/5478 1487/2833/5480
+s 1177
+f 1465/2834/5481 1467/2835/5482 1470/2837/5483
+f 1470/2837/5483 1467/2835/5482 1468/2836/5484
+s 1178
+f 1469/2813/5485 1468/2838/5486 1488/2810/5487
+f 1488/2810/5487 1468/2838/5486 1489/2839/5488
+s 1179
+f 1469/2813/5489 1473/2812/5490 1470/2840/5491
+f 1470/2840/5491 1473/2812/5490 1472/2841/5492
+s 1180
+f 1471/2799/5493 1474/2842/5494 1476/2800/5495
+f 1476/2800/5495 1474/2842/5494 1477/2843/5496
+s 1181
+f 1477/2816/5497 1479/2815/5498 1475/2844/5499
+f 1475/2844/5499 1479/2815/5498 1478/2845/5500
+s 1182
+f 1479/2815/5501 1481/2814/5502 1480/2846/5503
+f 1480/2846/5503 1481/2814/5502 1484/2847/5504
+s 1183
+f 1483/2794/5505 1482/2848/5506 1490/2795/5507
+f 1490/2795/5507 1482/2848/5506 1488/2849/5508
+s 1184
+f 1487/2806/5509 1486/2796/5510 1489/2807/5511
+f 1489/2807/5511 1486/2796/5510 1490/2795/5512
+s off
+f 1451/2789/5513 1452/2818/5514 1453/2824/5515
+s 1185
+f 1454/2826/5516 1455/2793/5517 1457/2825/5518
+f 1457/2825/5518 1455/2793/5517 1456/2786/5519
+s off
+f 1458/2828/5520 1459/2819/5521 1460/2788/5522
+s 1186
+f 1461/2830/5523 1462/2829/5524 1464/2792/5525
+f 1464/2792/5525 1462/2829/5524 1463/2787/5526
+s off
+f 1465/2831/5527 1466/2791/5528 1467/2832/5529
+f 1468/2838/5530 1469/2813/5531 1470/2840/5532
+s 1187
+f 1471/2799/5533 1472/2804/5534 1474/2842/5535
+f 1474/2842/5535 1472/2804/5534 1473/2850/5536
+s off
+f 1475/2779/5537 1476/2800/5538 1477/2843/5539
+f 1478/2845/5540 1479/2815/5541 1480/2846/5542
+s 1188
+f 1481/2851/5543 1482/2848/5544 1484/2783/5545
+f 1484/2783/5545 1482/2848/5544 1483/2794/5546
+s off
+f 1485/2790/5547 1486/2827/5548 1487/2833/5549
+f 1488/2849/5550 1489/2807/5551 1490/2795/5552
+s 1189
+f 1491/2852/5553 1493/2853/5554 1523/2855/5555
+f 1523/2855/5555 1493/2853/5554 1525/2854/5556
+s 1190
+f 1493/2853/5557 1495/2856/5558 1525/2854/5559
+f 1525/2854/5559 1495/2856/5558 1527/2857/5560
+s 1191
+f 1495/2856/5561 1497/2858/5562 1527/2857/5563
+f 1527/2857/5563 1497/2858/5562 1529/2859/5564
+s 1192
+f 1497/2860/5565 1499/2861/5566 1529/2863/5567
+f 1529/2863/5567 1499/2861/5566 1531/2862/5568
+s 1193
+f 1499/2861/5569 1501/2864/5570 1531/2862/5571
+f 1531/2862/5571 1501/2864/5570 1533/2865/5572
+s 1194
+f 1501/2864/5573 1503/2866/5574 1533/2865/5575
+f 1533/2865/5575 1503/2866/5574 1535/2867/5576
+s 1195
+f 1503/2866/5577 1505/2868/5578 1535/2867/5579
+f 1535/2867/5579 1505/2868/5578 1537/2869/5580
+s 1196
+f 1505/2870/5581 1507/2871/5582 1537/2873/5583
+f 1537/2873/5583 1507/2871/5582 1539/2872/5584
+s 1197
+f 1507/2871/5585 1509/2874/5586 1539/2872/5587
+f 1539/2872/5587 1509/2874/5586 1541/2875/5588
+s 1198
+f 1509/2874/5589 1511/2876/5590 1541/2875/5591
+f 1541/2875/5591 1511/2876/5590 1543/2877/5592
+s 1199
+f 1511/2876/5593 1513/2878/5594 1543/2877/5595
+f 1543/2877/5595 1513/2878/5594 1545/2879/5596
+s 1200
+f 1513/2880/5597 1515/2881/5598 1545/2883/5599
+f 1545/2883/5599 1515/2881/5598 1547/2882/5600
+s 1201
+f 1515/2881/5601 1517/2884/5602 1547/2882/5603
+f 1547/2882/5603 1517/2884/5602 1549/2885/5604
+s 1202
+f 1517/2884/5605 1519/2886/5606 1549/2885/5607
+f 1549/2885/5607 1519/2886/5606 1551/2887/5608
+s 1203
+f 1519/2888/5609 1521/2889/5610 1551/2891/5611
+f 1551/2891/5611 1521/2889/5610 1553/2890/5612
+s 1204
+f 1521/2889/5613 1491/2852/5614 1553/2890/5615
+f 1553/2890/5615 1491/2852/5614 1523/2855/5616
+s 1205
+f 1522/2892/5617 1520/2893/5618 1492/2907/5619
+f 1520/2893/5618 1518/2894/5620 1492/2907/5619
+f 1518/2894/5620 1516/2895/5621 1492/2907/5619
+f 1516/2895/5621 1514/2896/5622 1492/2907/5619
+f 1514/2896/5622 1512/2897/5623 1492/2907/5619
+f 1512/2897/5623 1510/2898/5624 1492/2907/5619
+f 1510/2898/5624 1508/2899/5625 1492/2907/5619
+f 1508/2899/5625 1506/2900/5626 1492/2907/5619
+f 1506/2900/5626 1504/2901/5627 1492/2907/5619
+f 1504/2901/5627 1502/2902/5628 1492/2907/5619
+f 1502/2902/5628 1500/2903/5629 1492/2907/5619
+f 1500/2903/5629 1498/2904/5630 1492/2907/5619
+f 1498/2904/5630 1496/2905/5631 1492/2907/5619
+f 1496/2905/5631 1494/2906/5632 1492/2907/5619
+s 1206
+f 1526/2908/5633 1528/2909/5634 1524/2923/5635
+f 1528/2909/5634 1530/2910/5636 1524/2923/5635
+f 1530/2910/5636 1532/2911/5637 1524/2923/5635
+f 1532/2911/5637 1534/2912/5638 1524/2923/5635
+f 1534/2912/5638 1536/2913/5639 1524/2923/5635
+f 1536/2913/5639 1538/2914/5640 1524/2923/5635
+f 1538/2914/5640 1540/2915/5641 1524/2923/5635
+f 1540/2915/5641 1542/2916/5642 1524/2923/5635
+f 1542/2916/5642 1544/2917/5643 1524/2923/5635
+f 1544/2917/5643 1546/2918/5644 1524/2923/5635
+f 1546/2918/5644 1548/2919/5645 1524/2923/5635
+f 1548/2919/5645 1550/2920/5646 1524/2923/5635
+f 1550/2920/5646 1552/2921/5647 1524/2923/5635
+f 1552/2921/5647 1554/2922/5648 1524/2923/5635
+s 1207
+f 1492/2924/5649 1491/2852/5650 1522/2925/5651
+f 1522/2925/5651 1491/2852/5650 1521/2889/5652
+s 1208
+f 1491/2852/5653 1492/2924/5654 1493/2853/5655
+f 1493/2853/5655 1492/2924/5654 1494/2926/5656
+s 1209
+f 1493/2853/5657 1494/2926/5658 1495/2856/5659
+f 1495/2856/5659 1494/2926/5658 1496/2927/5660
+s 1210
+f 1495/2928/5661 1496/2929/5662 1497/2860/5663
+f 1497/2860/5663 1496/2929/5662 1498/2930/5664
+s 1211
+f 1497/2860/5665 1498/2930/5666 1499/2861/5667
+f 1499/2861/5667 1498/2930/5666 1500/2931/5668
+s 1212
+f 1499/2861/5669 1500/2931/5670 1501/2864/5671
+f 1501/2864/5671 1500/2931/5670 1502/2932/5672
+s 1213
+f 1501/2864/5673 1502/2932/5674 1503/2866/5675
+f 1503/2866/5675 1502/2932/5674 1504/2933/5676
+s 1214
+f 1503/2934/5677 1504/2935/5678 1505/2870/5679
+f 1505/2870/5679 1504/2935/5678 1506/2936/5680
+s 1215
+f 1505/2870/5681 1506/2936/5682 1507/2871/5683
+f 1507/2871/5683 1506/2936/5682 1508/2937/5684
+s 1216
+f 1507/2871/5685 1508/2937/5686 1509/2874/5687
+f 1509/2874/5687 1508/2937/5686 1510/2938/5688
+s 1217
+f 1509/2874/5689 1510/2938/5690 1511/2876/5691
+f 1511/2876/5691 1510/2938/5690 1512/2939/5692
+s 1218
+f 1511/2940/5693 1512/2941/5694 1513/2880/5695
+f 1513/2880/5695 1512/2941/5694 1514/2942/5696
+s 1219
+f 1513/2880/5697 1514/2942/5698 1515/2881/5699
+f 1515/2881/5699 1514/2942/5698 1516/2943/5700
+s 1220
+f 1515/2881/5701 1516/2943/5702 1517/2884/5703
+f 1517/2884/5703 1516/2943/5702 1518/2944/5704
+s 1221
+f 1517/2884/5705 1518/2944/5706 1519/2886/5707
+f 1519/2886/5707 1518/2944/5706 1520/2945/5708
+s 1222
+f 1519/2888/5709 1520/2946/5710 1521/2889/5711
+f 1521/2889/5711 1520/2946/5710 1522/2925/5712
+s 1223
+f 1524/2947/5713 1523/2855/5714 1526/2948/5715
+f 1526/2948/5715 1523/2855/5714 1525/2854/5716
+s 1224
+f 1523/2855/5717 1524/2947/5718 1553/2890/5719
+f 1553/2890/5719 1524/2947/5718 1554/2949/5720
+s 1225
+f 1526/2948/5721 1525/2854/5722 1528/2950/5723
+f 1528/2950/5723 1525/2854/5722 1527/2857/5724
+s 1226
+f 1528/2951/5725 1527/2952/5726 1530/2953/5727
+f 1530/2953/5727 1527/2952/5726 1529/2863/5728
+s 1227
+f 1530/2953/5729 1529/2863/5730 1532/2954/5731
+f 1532/2954/5731 1529/2863/5730 1531/2862/5732
+s 1228
+f 1532/2954/5733 1531/2862/5734 1534/2955/5735
+f 1534/2955/5735 1531/2862/5734 1533/2865/5736
+s 1229
+f 1534/2955/5737 1533/2865/5738 1536/2956/5739
+f 1536/2956/5739 1533/2865/5738 1535/2867/5740
+s 1230
+f 1536/2957/5741 1535/2958/5742 1538/2959/5743
+f 1538/2959/5743 1535/2958/5742 1537/2873/5744
+s 1231
+f 1538/2959/5745 1537/2873/5746 1540/2960/5747
+f 1540/2960/5747 1537/2873/5746 1539/2872/5748
+s 1232
+f 1540/2960/5749 1539/2872/5750 1542/2961/5751
+f 1542/2961/5751 1539/2872/5750 1541/2875/5752
+s 1233
+f 1542/2961/5753 1541/2875/5754 1544/2962/5755
+f 1544/2962/5755 1541/2875/5754 1543/2877/5756
+s 1234
+f 1544/2963/5757 1543/2964/5758 1546/2965/5759
+f 1546/2965/5759 1543/2964/5758 1545/2883/5760
+s 1235
+f 1546/2965/5761 1545/2883/5762 1548/2966/5763
+f 1548/2966/5763 1545/2883/5762 1547/2882/5764
+s 1236
+f 1548/2966/5765 1547/2882/5766 1550/2967/5767
+f 1550/2967/5767 1547/2882/5766 1549/2885/5768
+s 1237
+f 1550/2967/5769 1549/2885/5770 1552/2968/5771
+f 1552/2968/5771 1549/2885/5770 1551/2887/5772
+s 1238
+f 1552/2969/5773 1551/2891/5774 1554/2949/5775
+f 1554/2949/5775 1551/2891/5774 1553/2890/5776
+s 1239
+f 1556/2970/5777 1627/2971/5778 1558/2973/5779
+f 1558/2973/5779 1627/2971/5778 1628/2972/5780
+s 1240
+f 1627/2971/5781 1555/2974/5782 1628/2972/5783
+f 1628/2972/5783 1555/2974/5782 1557/2975/5784
+s 1241
+f 1562/2976/5785 1580/2977/5786 1601/2981/5787
+f 1601/2981/5787 1580/2977/5786 1602/2980/5788
+f 1580/2977/5786 1595/2978/5789 1602/2980/5788
+f 1595/2978/5789 1597/2979/5790 1602/2980/5788
+s 1242
+f 1580/2977/5791 1592/2982/5792 1595/2978/5793
+f 1595/2978/5793 1592/2982/5792 1596/2985/5794
+f 1592/2982/5792 1607/2983/5795 1596/2985/5794
+f 1607/2983/5795 1609/2984/5796 1596/2985/5794
+s 1243
+f 1592/2982/5797 1586/2986/5798 1607/2983/5799
+f 1607/2983/5799 1586/2986/5798 1608/2989/5800
+f 1586/2986/5798 1613/2987/5801 1608/2989/5800
+f 1613/2987/5801 1615/2988/5802 1608/2989/5800
+s 1244
+f 1586/2986/5803 1562/2976/5804 1613/2987/5805
+f 1613/2987/5805 1562/2976/5804 1614/2991/5806
+f 1562/2976/5804 1601/2981/5807 1614/2991/5806
+f 1601/2981/5807 1603/2990/5808 1614/2991/5806
+s off
+f 1595/2978/5809 1596/2985/5810 1597/2979/5811
+f 1601/2981/5812 1602/2980/5813 1603/2990/5814
+f 1607/2983/5815 1608/2989/5816 1609/2984/5817
+f 1613/2987/5818 1614/2991/5819 1615/2988/5820
+s 1245
+f 1604/2992/5821 1598/2993/5822 1622/2995/5823
+f 1622/2995/5823 1598/2993/5822 1620/2994/5824
+s 1246
+f 1598/2993/5825 1610/2996/5826 1620/2994/5827
+f 1620/2994/5827 1610/2996/5826 1624/2997/5828
+s 1247
+f 1610/2996/5829 1616/2998/5830 1624/2997/5831
+f 1624/2997/5831 1616/2998/5830 1626/2999/5832
+s 1248
+f 1604/2992/5833 1622/2995/5834 1616/2998/5835
+f 1616/2998/5835 1622/2995/5834 1626/2999/5836
+s 1249
+f 1621/3000/5837 1619/3001/5838 1556/3004/5839
+f 1556/3004/5839 1619/3001/5838 1627/3003/5840
+f 1619/3001/5838 1555/3002/5841 1627/3003/5840
+s 1250
+f 1619/3005/5842 1623/3006/5843 1555/3008/5844
+f 1555/3008/5844 1623/3006/5843 1557/3007/5845
+s 1251
+f 1623/3009/5846 1625/3010/5847 1557/3013/5848
+f 1557/3013/5848 1625/3010/5847 1628/3012/5849
+f 1625/3010/5847 1558/3011/5850 1628/3012/5849
+s 1252
+f 1625/3014/5851 1621/3015/5852 1558/3017/5853
+f 1558/3017/5853 1621/3015/5852 1556/3016/5854
+s 1253
+f 1579/3018/5855 1581/3019/5856 1560/3021/5857
+f 1560/3021/5857 1581/3019/5856 1564/3020/5858
+s 1254
+f 1563/3022/5859 1588/3023/5860 1561/3027/5861
+f 1561/3027/5861 1588/3023/5860 1585/3026/5862
+f 1588/3023/5860 1568/3024/5863 1585/3026/5862
+f 1568/3024/5863 1566/3025/5864 1585/3026/5862
+s 1255
+f 1584/3028/5865 1589/3029/5866 1559/3031/5867
+f 1559/3031/5867 1589/3029/5866 1577/3030/5868
+s 1256
+f 1572/3032/5869 1590/3033/5870 1565/3035/5871
+f 1565/3035/5871 1590/3033/5870 1583/3034/5872
+s 1257
+f 1584/3028/5873 1583/3034/5874 1589/3029/5875
+f 1589/3029/5875 1583/3034/5874 1590/3033/5876
+s 1258
+f 1570/3036/5877 1576/3037/5878 1567/3039/5879
+f 1567/3039/5879 1576/3037/5878 1573/3038/5880
+s 1259
+f 1587/3040/5881 1594/3041/5882 1569/3043/5883
+f 1569/3043/5883 1594/3041/5882 1574/3042/5884
+s 1260
+f 1582/3046/5885 1578/3047/5886 1593/3045/5887
+f 1578/3047/5886 1591/3048/5888 1593/3045/5887
+f 1593/3045/5887 1591/3048/5888 1575/3044/5889
+f 1575/3044/5889 1591/3048/5888 1571/3049/5890
+s 1261
+f 1560/3021/5891 1559/3050/5892 1579/3018/5893
+f 1579/3018/5893 1559/3050/5892 1577/3051/5894
+s 1262
+f 1561/3052/5895 1560/3021/5896 1563/3053/5897
+f 1563/3053/5897 1560/3021/5896 1564/3020/5898
+s 1263
+f 1559/3054/5899 1561/3027/5900 1584/3055/5901
+f 1584/3055/5901 1561/3027/5900 1585/3026/5902
+s off
+f 1583/3056/5903 1584/3055/5904 1585/3026/5905
+s 1264
+f 1562/2976/5906 1586/2986/5907 1563/3057/5908
+f 1563/3057/5908 1586/2986/5907 1588/3058/5909
+s 1265
+f 1562/3059/5910 1564/3020/5911 1580/3060/5912
+f 1580/3060/5912 1564/3020/5911 1581/3019/5913
+s 1266
+f 1565/3061/5914 1583/3056/5915 1566/3025/5916
+f 1566/3025/5916 1583/3056/5915 1585/3026/5917
+s 1267
+f 1567/3062/5918 1566/3025/5919 1570/3063/5920
+f 1570/3063/5920 1566/3025/5919 1568/3024/5921
+s 1268
+f 1565/3035/5922 1567/3064/5923 1572/3032/5924
+f 1572/3032/5924 1567/3064/5923 1573/3065/5925
+s 1269
+f 1569/3043/5926 1568/3066/5927 1587/3040/5928
+f 1587/3040/5928 1568/3066/5927 1588/3058/5929
+s 1270
+f 1570/3067/5930 1569/3043/5931 1576/3068/5932
+f 1576/3068/5932 1569/3043/5931 1574/3042/5933
+s 1271
+f 1572/3032/5934 1571/3069/5935 1590/3033/5936
+f 1590/3033/5936 1571/3069/5935 1591/3070/5937
+s off
+f 1589/3029/5938 1590/3033/5939 1591/3070/5940
+s 1272
+f 1573/3038/5941 1576/3037/5942 1571/3071/5943
+f 1571/3071/5943 1576/3037/5942 1575/3072/5944
+s 1273
+f 1574/3042/5945 1594/3041/5946 1575/3073/5947
+f 1575/3073/5947 1594/3041/5946 1593/3074/5948
+s 1274
+f 1577/3030/5949 1589/3029/5950 1578/3075/5951
+f 1578/3075/5951 1589/3029/5950 1591/3070/5952
+s 1275
+f 1579/3018/5953 1578/3076/5954 1581/3019/5955
+f 1581/3019/5955 1578/3076/5954 1582/3077/5956
+s 1276
+f 1580/2977/5957 1582/3078/5958 1592/2982/5959
+f 1592/2982/5959 1582/3078/5958 1593/3074/5960
+s 1277
+f 1587/3040/5961 1586/2986/5962 1594/3041/5963
+f 1594/3041/5963 1586/2986/5962 1592/2982/5964
+s off
+f 1559/3054/5965 1560/3079/5966 1561/3027/5967
+f 1562/3059/5968 1563/3053/5969 1564/3020/5970
+f 1565/3061/5971 1566/3025/5972 1567/3062/5973
+f 1568/3066/5974 1569/3043/5975 1570/3067/5976
+f 1571/3071/5977 1572/3080/5978 1573/3038/5979
+f 1574/3042/5980 1575/3073/5981 1576/3068/5982
+f 1577/3030/5983 1578/3075/5984 1579/3081/5985
+f 1580/3060/5986 1581/3019/5987 1582/3077/5988
+f 1586/2986/5989 1587/3040/5990 1588/3058/5991
+f 1592/2982/5992 1593/3074/5993 1594/3041/5994
+s 1278
+f 1597/3082/5995 1599/3083/5996 1602/3085/5997
+f 1602/3085/5997 1599/3083/5996 1606/3084/5998
+s 1279
+f 1609/3086/5999 1611/3087/6000 1596/3089/6001
+f 1596/3089/6001 1611/3087/6000 1600/3088/6002
+s 1280
+f 1603/3090/6003 1605/3091/6004 1614/3093/6005
+f 1614/3093/6005 1605/3091/6004 1618/3092/6006
+s 1281
+f 1615/3094/6007 1617/3095/6008 1608/3097/6009
+f 1608/3097/6009 1617/3095/6008 1612/3096/6010
+s 1282
+f 1597/3082/6011 1596/3098/6012 1599/3083/6013
+f 1599/3083/6013 1596/3098/6012 1600/3099/6014
+s 1283
+f 1599/3083/6015 1598/3100/6016 1606/3084/6017
+f 1606/3084/6017 1598/3100/6016 1604/3101/6018
+s 1284
+f 1600/3102/6019 1611/3103/6020 1598/2993/6021
+f 1598/2993/6021 1611/3103/6020 1610/2996/6022
+s 1285
+f 1603/3104/6023 1602/3085/6024 1605/3105/6025
+f 1605/3105/6025 1602/3085/6024 1606/3084/6026
+s 1286
+f 1605/3106/6027 1604/2992/6028 1618/3107/6029
+f 1618/3107/6029 1604/2992/6028 1616/2998/6030
+s 1287
+f 1609/3086/6031 1608/3108/6032 1611/3087/6033
+f 1611/3087/6033 1608/3108/6032 1612/3109/6034
+s 1288
+f 1610/2996/6035 1612/3110/6036 1616/2998/6037
+f 1616/2998/6037 1612/3110/6036 1617/3111/6038
+s 1289
+f 1615/3112/6039 1614/3093/6040 1617/3113/6041
+f 1617/3113/6041 1614/3093/6040 1618/3092/6042
+s 1290
+f 1620/2994/6043 1619/3114/6044 1622/2995/6045
+f 1622/2995/6045 1619/3114/6044 1621/3115/6046
+s 1291
+f 1620/2994/6047 1624/2997/6048 1619/3114/6049
+f 1619/3114/6049 1624/2997/6048 1623/3116/6050
+s 1292
+f 1622/2995/6051 1621/3115/6052 1626/2999/6053
+f 1626/2999/6053 1621/3115/6052 1625/3117/6054
+s 1293
+f 1623/3009/6055 1624/3118/6056 1625/3010/6057
+f 1625/3010/6057 1624/3118/6056 1626/3119/6058
+s off
+f 1598/3100/6059 1599/3083/6060 1600/3099/6061
+f 1604/3101/6062 1605/3105/6063 1606/3084/6064
+f 1610/3120/6065 1611/3087/6066 1612/3109/6067
+f 1616/3121/6068 1617/3113/6069 1618/3092/6070
+s 1294
+f 1629/3122/6071 1636/3123/6072 1630/3125/6073
+f 1630/3125/6073 1636/3123/6072 1635/3124/6074
+s 1295
+f 1635/3124/6075 1636/3123/6076 1639/3127/6077
+f 1639/3127/6077 1636/3123/6076 1637/3126/6078
+s 1296
+f 1630/3128/6079 1635/3129/6080 1631/3133/6081
+f 1631/3133/6081 1635/3129/6080 1634/3132/6082
+f 1635/3129/6080 1639/3130/6083 1634/3132/6082
+f 1639/3130/6083 1641/3131/6084 1634/3132/6082
+s 1297
+f 1631/3134/6085 1634/3135/6086 1632/3137/6087
+f 1632/3137/6087 1634/3135/6086 1633/3136/6088
+s 1298
+f 1633/3136/6089 1634/3135/6090 1643/3139/6091
+f 1643/3139/6091 1634/3135/6090 1641/3138/6092
+s 1299
+f 1632/3140/6093 1633/3141/6094 1629/3145/6095
+f 1629/3145/6095 1633/3141/6094 1636/3144/6096
+f 1633/3141/6094 1643/3142/6097 1636/3144/6096
+f 1643/3142/6097 1637/3143/6098 1636/3144/6096
+s 1300
+f 1632/3146/6099 1629/3147/6100 1631/3149/6101
+f 1631/3149/6101 1629/3147/6100 1630/3148/6102
+s 1301
+f 1644/3150/6103 1642/3151/6104 1638/3153/6105
+f 1638/3153/6105 1642/3151/6104 1640/3152/6106
+s 1302
+f 1638/3154/6107 1637/3143/6108 1644/3155/6109
+f 1644/3155/6109 1637/3143/6108 1643/3142/6110
+s 1303
+f 1637/3126/6111 1638/3156/6112 1639/3127/6113
+f 1639/3127/6113 1638/3156/6112 1640/3157/6114
+s 1304
+f 1639/3130/6115 1640/3158/6116 1641/3131/6117
+f 1641/3131/6117 1640/3158/6116 1642/3159/6118
+s 1305
+f 1641/3138/6119 1642/3160/6120 1643/3139/6121
+f 1643/3139/6121 1642/3160/6120 1644/3161/6122
+s 1306
+f 1645/3162/6123 1650/3163/6124 1646/3165/6125
+f 1646/3165/6125 1650/3163/6124 1652/3164/6126
+s 1307
+f 1646/3166/6127 1652/3167/6128 1647/3169/6129
+f 1647/3169/6129 1652/3167/6128 1654/3168/6130
+s 1308
+f 1647/3170/6131 1654/3171/6132 1648/3173/6133
+f 1648/3173/6133 1654/3171/6132 1656/3172/6134
+s 1309
+f 1648/3174/6135 1656/3175/6136 1645/3177/6137
+f 1645/3177/6137 1656/3175/6136 1650/3176/6138
+s 1310
+f 1648/3178/6139 1645/3179/6140 1647/3181/6141
+f 1647/3181/6141 1645/3179/6140 1646/3180/6142
+s 1311
+f 1655/3182/6143 1653/3183/6144 1649/3185/6145
+f 1649/3185/6145 1653/3183/6144 1651/3184/6146
+s 1312
+f 1649/3186/6147 1650/3176/6148 1655/3187/6149
+f 1655/3187/6149 1650/3176/6148 1656/3175/6150
+s 1313
+f 1650/3163/6151 1649/3188/6152 1652/3164/6153
+f 1652/3164/6153 1649/3188/6152 1651/3189/6154
+s 1314
+f 1652/3167/6155 1651/3190/6156 1654/3168/6157
+f 1654/3168/6157 1651/3190/6156 1653/3191/6158
+s 1315
+f 1654/3171/6159 1653/3192/6160 1656/3172/6161
+f 1656/3172/6161 1653/3192/6160 1655/3193/6162
+s 1316
+f 1657/3194/6163 1662/3195/6164 1658/3197/6165
+f 1658/3197/6165 1662/3195/6164 1664/3196/6166
+s 1317
+f 1658/3198/6167 1664/3199/6168 1659/3201/6169
+f 1659/3201/6169 1664/3199/6168 1666/3200/6170
+s 1318
+f 1659/3202/6171 1666/3203/6172 1660/3205/6173
+f 1660/3205/6173 1666/3203/6172 1668/3204/6174
+s 1319
+f 1660/3206/6175 1668/3207/6176 1657/3209/6177
+f 1657/3209/6177 1668/3207/6176 1662/3208/6178
+s 1320
+f 1660/3210/6179 1657/3211/6180 1659/3213/6181
+f 1659/3213/6181 1657/3211/6180 1658/3212/6182
+s 1321
+f 1667/3214/6183 1665/3215/6184 1661/3217/6185
+f 1661/3217/6185 1665/3215/6184 1663/3216/6186
+s 1322
+f 1661/3218/6187 1662/3208/6188 1667/3219/6189
+f 1667/3219/6189 1662/3208/6188 1668/3207/6190
+s 1323
+f 1662/3195/6191 1661/3220/6192 1664/3196/6193
+f 1664/3196/6193 1661/3220/6192 1663/3221/6194
+s 1324
+f 1664/3199/6195 1663/3222/6196 1666/3200/6197
+f 1666/3200/6197 1663/3222/6196 1665/3223/6198
+s 1325
+f 1666/3203/6199 1665/3224/6200 1668/3204/6201
+f 1668/3204/6201 1665/3224/6200 1667/3225/6202
+s 1326
+f 1669/3226/6203 1674/3227/6204 1670/3229/6205
+f 1670/3229/6205 1674/3227/6204 1676/3228/6206
+s 1327
+f 1670/3230/6207 1676/3231/6208 1671/3233/6209
+f 1671/3233/6209 1676/3231/6208 1678/3232/6210
+s 1328
+f 1671/3234/6211 1678/3235/6212 1672/3237/6213
+f 1672/3237/6213 1678/3235/6212 1680/3236/6214
+s 1329
+f 1672/3238/6215 1680/3239/6216 1669/3241/6217
+f 1669/3241/6217 1680/3239/6216 1674/3240/6218
+s 1330
+f 1672/3242/6219 1669/3243/6220 1671/3245/6221
+f 1671/3245/6221 1669/3243/6220 1670/3244/6222
+s 1331
+f 1679/3246/6223 1677/3247/6224 1673/3249/6225
+f 1673/3249/6225 1677/3247/6224 1675/3248/6226
+s 1332
+f 1673/3250/6227 1674/3240/6228 1679/3251/6229
+f 1679/3251/6229 1674/3240/6228 1680/3239/6230
+s 1333
+f 1674/3227/6231 1673/3252/6232 1676/3228/6233
+f 1676/3228/6233 1673/3252/6232 1675/3253/6234
+s 1334
+f 1676/3231/6235 1675/3254/6236 1678/3232/6237
+f 1678/3232/6237 1675/3254/6236 1677/3255/6238
+s 1335
+f 1678/3235/6239 1677/3256/6240 1680/3236/6241
+f 1680/3236/6241 1677/3256/6240 1679/3257/6242
+s 1336
+f 1681/3258/6243 1686/3259/6244 1682/3261/6245
+f 1682/3261/6245 1686/3259/6244 1688/3260/6246
+s 1337
+f 1682/3262/6247 1688/3263/6248 1683/3265/6249
+f 1683/3265/6249 1688/3263/6248 1690/3264/6250
+s 1338
+f 1683/3266/6251 1690/3267/6252 1684/3269/6253
+f 1684/3269/6253 1690/3267/6252 1692/3268/6254
+s 1339
+f 1684/3270/6255 1692/3271/6256 1681/3273/6257
+f 1681/3273/6257 1692/3271/6256 1686/3272/6258
+s 1340
+f 1684/3274/6259 1681/3275/6260 1683/3277/6261
+f 1683/3277/6261 1681/3275/6260 1682/3276/6262
+s 1341
+f 1691/3278/6263 1689/3279/6264 1685/3281/6265
+f 1685/3281/6265 1689/3279/6264 1687/3280/6266
+s 1342
+f 1685/3282/6267 1686/3272/6268 1691/3283/6269
+f 1691/3283/6269 1686/3272/6268 1692/3271/6270
+s 1343
+f 1686/3259/6271 1685/3284/6272 1688/3260/6273
+f 1688/3260/6273 1685/3284/6272 1687/3285/6274
+s 1344
+f 1688/3263/6275 1687/3286/6276 1690/3264/6277
+f 1690/3264/6277 1687/3286/6276 1689/3287/6278
+s 1345
+f 1690/3267/6279 1689/3288/6280 1692/3268/6281
+f 1692/3268/6281 1689/3288/6280 1691/3289/6282
+s 1346
+f 1693/3290/6283 1698/3291/6284 1694/3293/6285
+f 1694/3293/6285 1698/3291/6284 1700/3292/6286
+s 1347
+f 1694/3294/6287 1700/3295/6288 1695/3297/6289
+f 1695/3297/6289 1700/3295/6288 1702/3296/6290
+s 1348
+f 1695/3298/6291 1702/3299/6292 1696/3301/6293
+f 1696/3301/6293 1702/3299/6292 1704/3300/6294
+s 1349
+f 1696/3302/6295 1704/3303/6296 1693/3305/6297
+f 1693/3305/6297 1704/3303/6296 1698/3304/6298
+s 1350
+f 1696/3306/6299 1693/3307/6300 1695/3309/6301
+f 1695/3309/6301 1693/3307/6300 1694/3308/6302
+s 1351
+f 1703/3310/6303 1701/3311/6304 1697/3313/6305
+f 1697/3313/6305 1701/3311/6304 1699/3312/6306
+s 1352
+f 1697/3314/6307 1698/3304/6308 1703/3315/6309
+f 1703/3315/6309 1698/3304/6308 1704/3303/6310
+s 1353
+f 1698/3291/6311 1697/3316/6312 1700/3292/6313
+f 1700/3292/6313 1697/3316/6312 1699/3317/6314
+s 1354
+f 1700/3295/6315 1699/3318/6316 1702/3296/6317
+f 1702/3296/6317 1699/3318/6316 1701/3319/6318
+s 1355
+f 1702/3299/6319 1701/3320/6320 1704/3300/6321
+f 1704/3300/6321 1701/3320/6320 1703/3321/6322
+s 1356
+f 1705/3322/6323 1706/3323/6324 1721/3325/6325
+f 1721/3325/6325 1706/3323/6324 1722/3324/6326
+s 1357
+f 1706/3323/6327 1707/3326/6328 1722/3324/6329
+f 1722/3324/6329 1707/3326/6328 1723/3327/6330
+s 1358
+f 1707/3326/6331 1708/3328/6332 1723/3327/6333
+f 1723/3327/6333 1708/3328/6332 1724/3329/6334
+s 1359
+f 1708/3328/6335 1709/3330/6336 1724/3329/6337
+f 1724/3329/6337 1709/3330/6336 1725/3331/6338
+s 1360
+f 1709/3330/6339 1710/3332/6340 1725/3331/6341
+f 1725/3331/6341 1710/3332/6340 1726/3333/6342
+s 1361
+f 1710/3332/6343 1711/3334/6344 1726/3333/6345
+f 1726/3333/6345 1711/3334/6344 1727/3335/6346
+s 1362
+f 1711/3336/6347 1712/3337/6348 1727/3339/6349
+f 1727/3339/6349 1712/3337/6348 1728/3338/6350
+s 1363
+f 1712/3337/6351 1713/3340/6352 1728/3338/6353
+f 1728/3338/6353 1713/3340/6352 1729/3341/6354
+s 1364
+f 1713/3340/6355 1714/3342/6356 1729/3341/6357
+f 1729/3341/6357 1714/3342/6356 1730/3343/6358
+s 1365
+f 1714/3342/6359 1715/3344/6360 1730/3343/6361
+f 1730/3343/6361 1715/3344/6360 1731/3345/6362
+s 1366
+f 1715/3346/6363 1716/3347/6364 1731/3349/6365
+f 1731/3349/6365 1716/3347/6364 1732/3348/6366
+s 1367
+f 1716/3347/6367 1717/3350/6368 1732/3348/6369
+f 1732/3348/6369 1717/3350/6368 1733/3351/6370
+s 1368
+f 1717/3350/6371 1718/3352/6372 1733/3351/6373
+f 1733/3351/6373 1718/3352/6372 1734/3353/6374
+s 1369
+f 1718/3352/6375 1719/3354/6376 1734/3353/6377
+f 1734/3353/6377 1719/3354/6376 1735/3355/6378
+s 1370
+f 1719/3356/6379 1720/3357/6380 1735/3359/6381
+f 1735/3359/6381 1720/3357/6380 1736/3358/6382
+s 1371
+f 1720/3357/6383 1705/3360/6384 1736/3358/6385
+f 1736/3358/6385 1705/3360/6384 1721/3361/6386
+s 1372
+f 1705/3362/6387 1720/3363/6388 1706/3377/6389
+f 1720/3363/6388 1719/3364/6390 1706/3377/6389
+f 1719/3364/6390 1718/3365/6391 1706/3377/6389
+f 1718/3365/6391 1717/3366/6392 1706/3377/6389
+f 1717/3366/6392 1716/3367/6393 1706/3377/6389
+f 1716/3367/6393 1715/3368/6394 1706/3377/6389
+f 1715/3368/6394 1714/3369/6395 1706/3377/6389
+f 1714/3369/6395 1713/3370/6396 1706/3377/6389
+f 1713/3370/6396 1712/3371/6397 1706/3377/6389
+f 1712/3371/6397 1711/3372/6398 1706/3377/6389
+f 1711/3372/6398 1710/3373/6399 1706/3377/6389
+f 1710/3373/6399 1709/3374/6400 1706/3377/6389
+f 1709/3374/6400 1708/3375/6401 1706/3377/6389
+f 1708/3375/6401 1707/3376/6402 1706/3377/6389
+s 1373
+f 1753/3378/6403 1754/3379/6404 1768/3393/6405
+f 1754/3379/6404 1755/3380/6406 1768/3393/6405
+f 1755/3380/6406 1756/3381/6407 1768/3393/6405
+f 1756/3381/6407 1757/3382/6408 1768/3393/6405
+f 1757/3382/6408 1758/3383/6409 1768/3393/6405
+f 1758/3383/6409 1759/3384/6410 1768/3393/6405
+f 1759/3384/6410 1760/3385/6411 1768/3393/6405
+f 1760/3385/6411 1761/3386/6412 1768/3393/6405
+f 1761/3386/6412 1762/3387/6413 1768/3393/6405
+f 1762/3387/6413 1763/3388/6414 1768/3393/6405
+f 1763/3388/6414 1764/3389/6415 1768/3393/6405
+f 1764/3389/6415 1765/3390/6416 1768/3393/6405
+f 1765/3390/6416 1766/3391/6417 1768/3393/6405
+f 1766/3391/6417 1767/3392/6418 1768/3393/6405
+s 1374
+f 1721/3394/6419 1722/3395/6420 1737/3397/6421
+f 1737/3397/6421 1722/3395/6420 1738/3396/6422
+s 1375
+f 1722/3395/6423 1723/3398/6424 1738/3396/6425
+f 1738/3396/6425 1723/3398/6424 1739/3399/6426
+s 1376
+f 1723/3398/6427 1724/3400/6428 1739/3399/6429
+f 1739/3399/6429 1724/3400/6428 1740/3401/6430
+s 1377
+f 1724/3400/6431 1725/3402/6432 1740/3401/6433
+f 1740/3401/6433 1725/3402/6432 1741/3403/6434
+s 1378
+f 1725/3402/6435 1726/3404/6436 1741/3403/6437
+f 1741/3403/6437 1726/3404/6436 1742/3405/6438
+s 1379
+f 1726/3404/6439 1727/3406/6440 1742/3405/6441
+f 1742/3405/6441 1727/3406/6440 1743/3407/6442
+s 1380
+f 1727/3406/6443 1728/3408/6444 1743/3407/6445
+f 1743/3407/6445 1728/3408/6444 1744/3409/6446
+s 1381
+f 1728/3408/6447 1729/3410/6448 1744/3409/6449
+f 1744/3409/6449 1729/3410/6448 1745/3411/6450
+s 1382
+f 1729/3410/6451 1730/3412/6452 1745/3411/6453
+f 1745/3411/6453 1730/3412/6452 1746/3413/6454
+s 1383
+f 1730/3412/6455 1731/3414/6456 1746/3413/6457
+f 1746/3413/6457 1731/3414/6456 1747/3415/6458
+s 1384
+f 1731/3414/6459 1732/3416/6460 1747/3415/6461
+f 1747/3415/6461 1732/3416/6460 1748/3417/6462
+s 1385
+f 1732/3416/6463 1733/3418/6464 1748/3417/6465
+f 1748/3417/6465 1733/3418/6464 1749/3419/6466
+s 1386
+f 1733/3418/6467 1734/3420/6468 1749/3419/6469
+f 1749/3419/6469 1734/3420/6468 1750/3421/6470
+s 1387
+f 1734/3420/6471 1735/3422/6472 1750/3421/6473
+f 1750/3421/6473 1735/3422/6472 1751/3423/6474
+s 1388
+f 1735/3422/6475 1736/3424/6476 1751/3423/6477
+f 1751/3423/6477 1736/3424/6476 1752/3425/6478
+s 1389
+f 1736/3424/6479 1721/3394/6480 1752/3425/6481
+f 1752/3425/6481 1721/3394/6480 1737/3397/6482
+s 1390
+f 1737/3426/6483 1738/3427/6484 1753/3429/6485
+f 1753/3429/6485 1738/3427/6484 1754/3428/6486
+s 1391
+f 1738/3427/6487 1739/3430/6488 1754/3428/6489
+f 1754/3428/6489 1739/3430/6488 1755/3431/6490
+s 1392
+f 1739/3430/6491 1740/3432/6492 1755/3431/6493
+f 1755/3431/6493 1740/3432/6492 1756/3433/6494
+s 1393
+f 1740/3432/6495 1741/3434/6496 1756/3433/6497
+f 1756/3433/6497 1741/3434/6496 1757/3435/6498
+s 1394
+f 1741/3434/6499 1742/3436/6500 1757/3435/6501
+f 1757/3435/6501 1742/3436/6500 1758/3437/6502
+s 1395
+f 1742/3436/6503 1743/3438/6504 1758/3437/6505
+f 1758/3437/6505 1743/3438/6504 1759/3439/6506
+s 1396
+f 1743/3440/6507 1744/3441/6508 1759/3443/6509
+f 1759/3443/6509 1744/3441/6508 1760/3442/6510
+s 1397
+f 1744/3441/6511 1745/3444/6512 1760/3442/6513
+f 1760/3442/6513 1745/3444/6512 1761/3445/6514
+s 1398
+f 1745/3444/6515 1746/3446/6516 1761/3445/6517
+f 1761/3445/6517 1746/3446/6516 1762/3447/6518
+s 1399
+f 1746/3446/6519 1747/3448/6520 1762/3447/6521
+f 1762/3447/6521 1747/3448/6520 1763/3449/6522
+s 1400
+f 1747/3450/6523 1748/3451/6524 1763/3453/6525
+f 1763/3453/6525 1748/3451/6524 1764/3452/6526
+s 1401
+f 1748/3451/6527 1749/3454/6528 1764/3452/6529
+f 1764/3452/6529 1749/3454/6528 1765/3455/6530
+s 1402
+f 1749/3454/6531 1750/3456/6532 1765/3455/6533
+f 1765/3455/6533 1750/3456/6532 1766/3457/6534
+s 1403
+f 1750/3456/6535 1751/3458/6536 1766/3457/6537
+f 1766/3457/6537 1751/3458/6536 1767/3459/6538
+s 1404
+f 1751/3460/6539 1752/3461/6540 1767/3463/6541
+f 1767/3463/6541 1752/3461/6540 1768/3462/6542
+s 1405
+f 1752/3461/6543 1737/3464/6544 1768/3462/6545
+f 1768/3462/6545 1737/3464/6544 1753/3465/6546
+s 1406
+f 1769/3466/6547 1770/3467/6548 1785/3469/6549
+f 1785/3469/6549 1770/3467/6548 1786/3468/6550
+s 1407
+f 1770/3467/6551 1771/3470/6552 1786/3468/6553
+f 1786/3468/6553 1771/3470/6552 1787/3471/6554
+s 1408
+f 1771/3470/6555 1772/3472/6556 1787/3471/6557
+f 1787/3471/6557 1772/3472/6556 1788/3473/6558
+s 1409
+f 1772/3472/6559 1773/3474/6560 1788/3473/6561
+f 1788/3473/6561 1773/3474/6560 1789/3475/6562
+s 1410
+f 1773/3474/6563 1774/3476/6564 1789/3475/6565
+f 1789/3475/6565 1774/3476/6564 1790/3477/6566
+s 1411
+f 1774/3476/6567 1775/3478/6568 1790/3477/6569
+f 1790/3477/6569 1775/3478/6568 1791/3479/6570
+s 1412
+f 1775/3480/6571 1776/3481/6572 1791/3483/6573
+f 1791/3483/6573 1776/3481/6572 1792/3482/6574
+s 1413
+f 1776/3481/6575 1777/3484/6576 1792/3482/6577
+f 1792/3482/6577 1777/3484/6576 1793/3485/6578
+s 1414
+f 1777/3484/6579 1778/3486/6580 1793/3485/6581
+f 1793/3485/6581 1778/3486/6580 1794/3487/6582
+s 1415
+f 1778/3486/6583 1779/3488/6584 1794/3487/6585
+f 1794/3487/6585 1779/3488/6584 1795/3489/6586
+s 1416
+f 1779/3490/6587 1780/3491/6588 1795/3493/6589
+f 1795/3493/6589 1780/3491/6588 1796/3492/6590
+s 1417
+f 1780/3491/6591 1781/3494/6592 1796/3492/6593
+f 1796/3492/6593 1781/3494/6592 1797/3495/6594
+s 1418
+f 1781/3494/6595 1782/3496/6596 1797/3495/6597
+f 1797/3495/6597 1782/3496/6596 1798/3497/6598
+s 1419
+f 1782/3496/6599 1783/3498/6600 1798/3497/6601
+f 1798/3497/6601 1783/3498/6600 1799/3499/6602
+s 1420
+f 1783/3500/6603 1784/3501/6604 1799/3503/6605
+f 1799/3503/6605 1784/3501/6604 1800/3502/6606
+s 1421
+f 1784/3501/6607 1769/3504/6608 1800/3502/6609
+f 1800/3502/6609 1769/3504/6608 1785/3505/6610
+s 1422
+f 1769/3506/6611 1784/3507/6612 1770/3521/6613
+f 1784/3507/6612 1783/3508/6614 1770/3521/6613
+f 1783/3508/6614 1782/3509/6615 1770/3521/6613
+f 1782/3509/6615 1781/3510/6616 1770/3521/6613
+f 1781/3510/6616 1780/3511/6617 1770/3521/6613
+f 1780/3511/6617 1779/3512/6618 1770/3521/6613
+f 1779/3512/6618 1778/3513/6619 1770/3521/6613
+f 1778/3513/6619 1777/3514/6620 1770/3521/6613
+f 1777/3514/6620 1776/3515/6621 1770/3521/6613
+f 1776/3515/6621 1775/3516/6622 1770/3521/6613
+f 1775/3516/6622 1774/3517/6623 1770/3521/6613
+f 1774/3517/6623 1773/3518/6624 1770/3521/6613
+f 1773/3518/6624 1772/3519/6625 1770/3521/6613
+f 1772/3519/6625 1771/3520/6626 1770/3521/6613
+s 1423
+f 1817/3522/6627 1818/3523/6628 1832/3537/6629
+f 1818/3523/6628 1819/3524/6630 1832/3537/6629
+f 1819/3524/6630 1820/3525/6631 1832/3537/6629
+f 1820/3525/6631 1821/3526/6632 1832/3537/6629
+f 1821/3526/6632 1822/3527/6633 1832/3537/6629
+f 1822/3527/6633 1823/3528/6634 1832/3537/6629
+f 1823/3528/6634 1824/3529/6635 1832/3537/6629
+f 1824/3529/6635 1825/3530/6636 1832/3537/6629
+f 1825/3530/6636 1826/3531/6637 1832/3537/6629
+f 1826/3531/6637 1827/3532/6638 1832/3537/6629
+f 1827/3532/6638 1828/3533/6639 1832/3537/6629
+f 1828/3533/6639 1829/3534/6640 1832/3537/6629
+f 1829/3534/6640 1830/3535/6641 1832/3537/6629
+f 1830/3535/6641 1831/3536/6642 1832/3537/6629
+s 1424
+f 1785/3538/6643 1786/3539/6644 1801/3541/6645
+f 1801/3541/6645 1786/3539/6644 1802/3540/6646
+s 1425
+f 1786/3539/6647 1787/3542/6648 1802/3540/6649
+f 1802/3540/6649 1787/3542/6648 1803/3543/6650
+s 1426
+f 1787/3542/6651 1788/3544/6652 1803/3543/6653
+f 1803/3543/6653 1788/3544/6652 1804/3545/6654
+s 1427
+f 1788/3544/6655 1789/3546/6656 1804/3545/6657
+f 1804/3545/6657 1789/3546/6656 1805/3547/6658
+s 1428
+f 1789/3546/6659 1790/3548/6660 1805/3547/6661
+f 1805/3547/6661 1790/3548/6660 1806/3549/6662
+s 1429
+f 1790/3548/6663 1791/3550/6664 1806/3549/6665
+f 1806/3549/6665 1791/3550/6664 1807/3551/6666
+s 1430
+f 1791/3550/6667 1792/3552/6668 1807/3551/6669
+f 1807/3551/6669 1792/3552/6668 1808/3553/6670
+s 1431
+f 1792/3552/6671 1793/3554/6672 1808/3553/6673
+f 1808/3553/6673 1793/3554/6672 1809/3555/6674
+s 1432
+f 1793/3554/6675 1794/3556/6676 1809/3555/6677
+f 1809/3555/6677 1794/3556/6676 1810/3557/6678
+s 1433
+f 1794/3556/6679 1795/3558/6680 1810/3557/6681
+f 1810/3557/6681 1795/3558/6680 1811/3559/6682
+s 1434
+f 1795/3558/6683 1796/3560/6684 1811/3559/6685
+f 1811/3559/6685 1796/3560/6684 1812/3561/6686
+s 1435
+f 1796/3560/6687 1797/3562/6688 1812/3561/6689
+f 1812/3561/6689 1797/3562/6688 1813/3563/6690
+s 1436
+f 1797/3562/6691 1798/3564/6692 1813/3563/6693
+f 1813/3563/6693 1798/3564/6692 1814/3565/6694
+s 1437
+f 1798/3564/6695 1799/3566/6696 1814/3565/6697
+f 1814/3565/6697 1799/3566/6696 1815/3567/6698
+s 1438
+f 1799/3566/6699 1800/3568/6700 1815/3567/6701
+f 1815/3567/6701 1800/3568/6700 1816/3569/6702
+s 1439
+f 1800/3568/6703 1785/3538/6704 1816/3569/6705
+f 1816/3569/6705 1785/3538/6704 1801/3541/6706
+s 1440
+f 1801/3570/6707 1802/3571/6708 1817/3573/6709
+f 1817/3573/6709 1802/3571/6708 1818/3572/6710
+s 1441
+f 1802/3571/6711 1803/3574/6712 1818/3572/6713
+f 1818/3572/6713 1803/3574/6712 1819/3575/6714
+s 1442
+f 1803/3574/6715 1804/3576/6716 1819/3575/6717
+f 1819/3575/6717 1804/3576/6716 1820/3577/6718
+s 1443
+f 1804/3576/6719 1805/3578/6720 1820/3577/6721
+f 1820/3577/6721 1805/3578/6720 1821/3579/6722
+s 1444
+f 1805/3578/6723 1806/3580/6724 1821/3579/6725
+f 1821/3579/6725 1806/3580/6724 1822/3581/6726
+s 1445
+f 1806/3580/6727 1807/3582/6728 1822/3581/6729
+f 1822/3581/6729 1807/3582/6728 1823/3583/6730
+s 1446
+f 1807/3584/6731 1808/3585/6732 1823/3587/6733
+f 1823/3587/6733 1808/3585/6732 1824/3586/6734
+s 1447
+f 1808/3585/6735 1809/3588/6736 1824/3586/6737
+f 1824/3586/6737 1809/3588/6736 1825/3589/6738
+s 1448
+f 1809/3588/6739 1810/3590/6740 1825/3589/6741
+f 1825/3589/6741 1810/3590/6740 1826/3591/6742
+s 1449
+f 1810/3590/6743 1811/3592/6744 1826/3591/6745
+f 1826/3591/6745 1811/3592/6744 1827/3593/6746
+s 1450
+f 1811/3594/6747 1812/3595/6748 1827/3597/6749
+f 1827/3597/6749 1812/3595/6748 1828/3596/6750
+s 1451
+f 1812/3595/6751 1813/3598/6752 1828/3596/6753
+f 1828/3596/6753 1813/3598/6752 1829/3599/6754
+s 1452
+f 1813/3598/6755 1814/3600/6756 1829/3599/6757
+f 1829/3599/6757 1814/3600/6756 1830/3601/6758
+s 1453
+f 1814/3600/6759 1815/3602/6760 1830/3601/6761
+f 1830/3601/6761 1815/3602/6760 1831/3603/6762
+s 1454
+f 1815/3604/6763 1816/3605/6764 1831/3607/6765
+f 1831/3607/6765 1816/3605/6764 1832/3606/6766
+s 1455
+f 1816/3605/6767 1801/3608/6768 1832/3606/6769
+f 1832/3606/6769 1801/3608/6768 1817/3609/6770
+s 1456
+f 1848/3610/6771 1851/3611/6772 1833/3613/6773
+f 1833/3613/6773 1851/3611/6772 1835/3612/6774
+s 1457
+f 1837/3614/6775 1842/3615/6776 1834/3617/6777
+f 1834/3617/6777 1842/3615/6776 1839/3616/6778
+s 1458
+f 1850/3618/6779 1845/3619/6780 1836/3621/6781
+f 1836/3621/6781 1845/3619/6780 1840/3620/6782
+s 1459
+f 1841/3622/6783 1847/3623/6784 1838/3625/6785
+f 1838/3625/6785 1847/3623/6784 1844/3624/6786
+s 1460
+f 1852/3627/6787 1849/3628/6788 1846/3626/6789
+f 1846/3626/6789 1849/3628/6788 1843/3629/6790
+s 1461
+f 1834/3630/6791 1833/3613/6792 1837/3631/6793
+f 1837/3631/6793 1833/3613/6792 1835/3612/6794
+s 1462
+f 1836/3621/6795 1835/3632/6796 1850/3618/6797
+f 1850/3618/6797 1835/3632/6796 1851/3633/6798
+s 1463
+f 1837/3614/6799 1836/3634/6800 1842/3615/6801
+f 1842/3615/6801 1836/3634/6800 1840/3635/6802
+s 1464
+f 1838/3636/6803 1839/3616/6804 1841/3637/6805
+f 1841/3637/6805 1839/3616/6804 1842/3615/6806
+s 1465
+f 1841/3622/6807 1840/3638/6808 1847/3623/6809
+f 1847/3623/6809 1840/3638/6808 1845/3639/6810
+s 1466
+f 1844/3624/6811 1847/3623/6812 1843/3640/6813
+f 1843/3640/6813 1847/3623/6812 1846/3641/6814
+s 1467
+f 1846/3642/6815 1845/3619/6816 1852/3643/6817
+f 1852/3643/6817 1845/3619/6816 1850/3618/6818
+s 1468
+f 1849/3644/6819 1852/3645/6820 1848/3610/6821
+f 1848/3610/6821 1852/3645/6820 1851/3611/6822
+s off
+f 1835/3646/6823 1836/3634/6824 1837/3614/6825
+f 1840/3635/6826 1841/3637/6827 1842/3615/6828
+f 1845/3639/6829 1846/3641/6830 1847/3623/6831
+f 1850/3618/6832 1851/3633/6833 1852/3643/6834
+s 1469
+f 1853/3647/6835 1854/3648/6836 1855/3650/6837
+f 1855/3650/6837 1854/3648/6836 1856/3649/6838
+s 1470
+f 1855/3651/6839 1856/3652/6840 1857/3654/6841
+f 1857/3654/6841 1856/3652/6840 1858/3653/6842
+s 1471
+f 1857/3655/6843 1858/3656/6844 1859/3658/6845
+f 1859/3658/6845 1858/3656/6844 1860/3657/6846
+s 1472
+f 1859/3659/6847 1860/3660/6848 1853/3662/6849
+f 1853/3662/6849 1860/3660/6848 1854/3661/6850
+s 1473
+f 1854/3663/6851 1860/3664/6852 1856/3666/6853
+f 1856/3666/6853 1860/3664/6852 1858/3665/6854
+s 1474
+f 1859/3667/6855 1853/3668/6856 1857/3670/6857
+f 1857/3670/6857 1853/3668/6856 1855/3669/6858
+s 1475
+f 1861/3671/6859 1862/3672/6860 1863/3674/6861
+f 1863/3674/6861 1862/3672/6860 1864/3673/6862
+s 1476
+f 1863/3675/6863 1864/3676/6864 1865/3678/6865
+f 1865/3678/6865 1864/3676/6864 1866/3677/6866
+s 1477
+f 1865/3679/6867 1866/3680/6868 1867/3682/6869
+f 1867/3682/6869 1866/3680/6868 1868/3681/6870
+s 1478
+f 1867/3683/6871 1868/3684/6872 1861/3686/6873
+f 1861/3686/6873 1868/3684/6872 1862/3685/6874
+s 1479
+f 1862/3687/6875 1868/3688/6876 1864/3690/6877
+f 1864/3690/6877 1868/3688/6876 1866/3689/6878
+s 1480
+f 1867/3691/6879 1861/3692/6880 1865/3694/6881
+f 1865/3694/6881 1861/3692/6880 1863/3693/6882
+s 1481
+f 1869/3695/6883 1870/3696/6884 1871/3698/6885
+f 1871/3698/6885 1870/3696/6884 1872/3697/6886
+s 1482
+f 1871/3699/6887 1872/3700/6888 1873/3702/6889
+f 1873/3702/6889 1872/3700/6888 1874/3701/6890
+s 1483
+f 1873/3703/6891 1874/3704/6892 1875/3706/6893
+f 1875/3706/6893 1874/3704/6892 1876/3705/6894
+s 1484
+f 1875/3707/6895 1876/3708/6896 1869/3710/6897
+f 1869/3710/6897 1876/3708/6896 1870/3709/6898
+s 1485
+f 1870/3711/6899 1876/3712/6900 1872/3714/6901
+f 1872/3714/6901 1876/3712/6900 1874/3713/6902
+s 1486
+f 1875/3715/6903 1869/3716/6904 1873/3718/6905
+f 1873/3718/6905 1869/3716/6904 1871/3717/6906
+s 1487
+f 1877/3719/6907 1878/3720/6908 1893/3722/6909
+f 1893/3722/6909 1878/3720/6908 1894/3721/6910
+s 1488
+f 1878/3720/6911 1879/3723/6912 1894/3721/6913
+f 1894/3721/6913 1879/3723/6912 1895/3724/6914
+s 1489
+f 1879/3723/6915 1880/3725/6916 1895/3724/6917
+f 1895/3724/6917 1880/3725/6916 1896/3726/6918
+s 1490
+f 1880/3725/6919 1881/3727/6920 1896/3726/6921
+f 1896/3726/6921 1881/3727/6920 1897/3728/6922
+s 1491
+f 1881/3727/6923 1882/3729/6924 1897/3728/6925
+f 1897/3728/6925 1882/3729/6924 1898/3730/6926
+s 1492
+f 1882/3729/6927 1883/3731/6928 1898/3730/6929
+f 1898/3730/6929 1883/3731/6928 1899/3732/6930
+s 1493
+f 1883/3733/6931 1884/3734/6932 1899/3736/6933
+f 1899/3736/6933 1884/3734/6932 1900/3735/6934
+s 1494
+f 1884/3734/6935 1885/3737/6936 1900/3735/6937
+f 1900/3735/6937 1885/3737/6936 1901/3738/6938
+s 1495
+f 1885/3737/6939 1886/3739/6940 1901/3738/6941
+f 1901/3738/6941 1886/3739/6940 1902/3740/6942
+s 1496
+f 1886/3739/6943 1887/3741/6944 1902/3740/6945
+f 1902/3740/6945 1887/3741/6944 1903/3742/6946
+s 1497
+f 1887/3743/6947 1888/3744/6948 1903/3746/6949
+f 1903/3746/6949 1888/3744/6948 1904/3745/6950
+s 1498
+f 1888/3744/6951 1889/3747/6952 1904/3745/6953
+f 1904/3745/6953 1889/3747/6952 1905/3748/6954
+s 1499
+f 1889/3747/6955 1890/3749/6956 1905/3748/6957
+f 1905/3748/6957 1890/3749/6956 1906/3750/6958
+s 1500
+f 1890/3749/6959 1891/3751/6960 1906/3750/6961
+f 1906/3750/6961 1891/3751/6960 1907/3752/6962
+s 1501
+f 1891/3753/6963 1892/3754/6964 1907/3756/6965
+f 1907/3756/6965 1892/3754/6964 1908/3755/6966
+s 1502
+f 1892/3754/6967 1877/3757/6968 1908/3755/6969
+f 1908/3755/6969 1877/3757/6968 1893/3758/6970
+s 1503
+f 1877/3759/6971 1892/3760/6972 1878/3774/6973
+f 1892/3760/6972 1891/3761/6974 1878/3774/6973
+f 1891/3761/6974 1890/3762/6975 1878/3774/6973
+f 1890/3762/6975 1889/3763/6976 1878/3774/6973
+f 1889/3763/6976 1888/3764/6977 1878/3774/6973
+f 1888/3764/6977 1887/3765/6978 1878/3774/6973
+f 1887/3765/6978 1886/3766/6979 1878/3774/6973
+f 1886/3766/6979 1885/3767/6980 1878/3774/6973
+f 1885/3767/6980 1884/3768/6981 1878/3774/6973
+f 1884/3768/6981 1883/3769/6982 1878/3774/6973
+f 1883/3769/6982 1882/3770/6983 1878/3774/6973
+f 1882/3770/6983 1881/3771/6984 1878/3774/6973
+f 1881/3771/6984 1880/3772/6985 1878/3774/6973
+f 1880/3772/6985 1879/3773/6986 1878/3774/6973
+s 1504
+f 1925/3775/6987 1926/3776/6988 1940/3790/6989
+f 1926/3776/6988 1927/3777/6990 1940/3790/6989
+f 1927/3777/6990 1928/3778/6991 1940/3790/6989
+f 1928/3778/6991 1929/3779/6992 1940/3790/6989
+f 1929/3779/6992 1930/3780/6993 1940/3790/6989
+f 1930/3780/6993 1931/3781/6994 1940/3790/6989
+f 1931/3781/6994 1932/3782/6995 1940/3790/6989
+f 1932/3782/6995 1933/3783/6996 1940/3790/6989
+f 1933/3783/6996 1934/3784/6997 1940/3790/6989
+f 1934/3784/6997 1935/3785/6998 1940/3790/6989
+f 1935/3785/6998 1936/3786/6999 1940/3790/6989
+f 1936/3786/6999 1937/3787/7000 1940/3790/6989
+f 1937/3787/7000 1938/3788/7001 1940/3790/6989
+f 1938/3788/7001 1939/3789/7002 1940/3790/6989
+s 1505
+f 1893/3791/7003 1894/3792/7004 1909/3794/7005
+f 1909/3794/7005 1894/3792/7004 1910/3793/7006
+s 1506
+f 1894/3792/7007 1895/3795/7008 1910/3793/7009
+f 1910/3793/7009 1895/3795/7008 1911/3796/7010
+s 1507
+f 1895/3795/7011 1896/3797/7012 1911/3796/7013
+f 1911/3796/7013 1896/3797/7012 1912/3798/7014
+s 1508
+f 1896/3797/7015 1897/3799/7016 1912/3798/7017
+f 1912/3798/7017 1897/3799/7016 1913/3800/7018
+s 1509
+f 1897/3799/7019 1898/3801/7020 1913/3800/7021
+f 1913/3800/7021 1898/3801/7020 1914/3802/7022
+s 1510
+f 1898/3801/7023 1899/3803/7024 1914/3802/7025
+f 1914/3802/7025 1899/3803/7024 1915/3804/7026
+s 1511
+f 1899/3803/7027 1900/3805/7028 1915/3804/7029
+f 1915/3804/7029 1900/3805/7028 1916/3806/7030
+s 1512
+f 1900/3805/7031 1901/3807/7032 1916/3806/7033
+f 1916/3806/7033 1901/3807/7032 1917/3808/7034
+s 1513
+f 1901/3807/7035 1902/3809/7036 1917/3808/7037
+f 1917/3808/7037 1902/3809/7036 1918/3810/7038
+s 1514
+f 1902/3809/7039 1903/3811/7040 1918/3810/7041
+f 1918/3810/7041 1903/3811/7040 1919/3812/7042
+s 1515
+f 1903/3811/7043 1904/3813/7044 1919/3812/7045
+f 1919/3812/7045 1904/3813/7044 1920/3814/7046
+s 1516
+f 1904/3813/7047 1905/3815/7048 1920/3814/7049
+f 1920/3814/7049 1905/3815/7048 1921/3816/7050
+s 1517
+f 1905/3815/7051 1906/3817/7052 1921/3816/7053
+f 1921/3816/7053 1906/3817/7052 1922/3818/7054
+s 1518
+f 1906/3817/7055 1907/3819/7056 1922/3818/7057
+f 1922/3818/7057 1907/3819/7056 1923/3820/7058
+s 1519
+f 1907/3819/7059 1908/3821/7060 1923/3820/7061
+f 1923/3820/7061 1908/3821/7060 1924/3822/7062
+s 1520
+f 1908/3821/7063 1893/3791/7064 1924/3822/7065
+f 1924/3822/7065 1893/3791/7064 1909/3794/7066
+s 1521
+f 1909/3823/7067 1910/3824/7068 1925/3826/7069
+f 1925/3826/7069 1910/3824/7068 1926/3825/7070
+s 1522
+f 1910/3824/7071 1911/3827/7072 1926/3825/7073
+f 1926/3825/7073 1911/3827/7072 1927/3828/7074
+s 1523
+f 1911/3827/7075 1912/3829/7076 1927/3828/7077
+f 1927/3828/7077 1912/3829/7076 1928/3830/7078
+s 1524
+f 1912/3829/7079 1913/3831/7080 1928/3830/7081
+f 1928/3830/7081 1913/3831/7080 1929/3832/7082
+s 1525
+f 1913/3831/7083 1914/3833/7084 1929/3832/7085
+f 1929/3832/7085 1914/3833/7084 1930/3834/7086
+s 1526
+f 1914/3833/7087 1915/3835/7088 1930/3834/7089
+f 1930/3834/7089 1915/3835/7088 1931/3836/7090
+s 1527
+f 1915/3837/7091 1916/3838/7092 1931/3840/7093
+f 1931/3840/7093 1916/3838/7092 1932/3839/7094
+s 1528
+f 1916/3838/7095 1917/3841/7096 1932/3839/7097
+f 1932/3839/7097 1917/3841/7096 1933/3842/7098
+s 1529
+f 1917/3841/7099 1918/3843/7100 1933/3842/7101
+f 1933/3842/7101 1918/3843/7100 1934/3844/7102
+s 1530
+f 1918/3843/7103 1919/3845/7104 1934/3844/7105
+f 1934/3844/7105 1919/3845/7104 1935/3846/7106
+s 1531
+f 1919/3847/7107 1920/3848/7108 1935/3850/7109
+f 1935/3850/7109 1920/3848/7108 1936/3849/7110
+s 1532
+f 1920/3848/7111 1921/3851/7112 1936/3849/7113
+f 1936/3849/7113 1921/3851/7112 1937/3852/7114
+s 1533
+f 1921/3851/7115 1922/3853/7116 1937/3852/7117
+f 1937/3852/7117 1922/3853/7116 1938/3854/7118
+s 1534
+f 1922/3853/7119 1923/3855/7120 1938/3854/7121
+f 1938/3854/7121 1923/3855/7120 1939/3856/7122
+s 1535
+f 1923/3857/7123 1924/3858/7124 1939/3860/7125
+f 1939/3860/7125 1924/3858/7124 1940/3859/7126
+s 1536
+f 1924/3858/7127 1909/3861/7128 1940/3859/7129
+f 1940/3859/7129 1909/3861/7128 1925/3862/7130
+s 1537
+f 1959/3863/7131 1963/3864/7132 1942/3866/7133
+f 1942/3866/7133 1963/3864/7132 1944/3865/7134
+s 1538
+f 1946/3867/7135 1952/3868/7136 1943/3870/7137
+f 1943/3870/7137 1952/3868/7136 1949/3869/7138
+s 1539
+f 1948/3871/7139 1954/3872/7140 1941/3874/7141
+f 1941/3874/7141 1954/3872/7140 1960/3873/7142
+s 1540
+f 1962/3875/7143 1956/3876/7144 1945/3878/7145
+f 1945/3878/7145 1956/3876/7144 1950/3877/7146
+s 1541
+f 1951/3879/7147 1958/3880/7148 1947/3882/7149
+f 1947/3882/7149 1958/3880/7148 1955/3881/7150
+s 1542
+f 1957/3883/7151 1964/3884/7152 1953/3886/7153
+f 1953/3886/7153 1964/3884/7152 1961/3885/7154
+s 1543
+f 1942/3866/7155 1941/3887/7156 1959/3863/7157
+f 1959/3863/7157 1941/3887/7156 1960/3888/7158
+s 1544
+f 1943/3889/7159 1942/3866/7160 1946/3890/7161
+f 1946/3890/7161 1942/3866/7160 1944/3865/7162
+s 1545
+f 1941/3891/7163 1943/3870/7164 1948/3892/7165
+f 1948/3892/7165 1943/3870/7164 1949/3869/7166
+s 1546
+f 1945/3893/7167 1944/3865/7168 1962/3894/7169
+f 1962/3894/7169 1944/3865/7168 1963/3864/7170
+s 1547
+f 1946/3867/7171 1945/3895/7172 1952/3868/7173
+f 1952/3868/7173 1945/3895/7172 1950/3896/7174
+s 1548
+f 1948/3871/7175 1947/3897/7176 1954/3872/7177
+f 1954/3872/7177 1947/3897/7176 1955/3898/7178
+s 1549
+f 1947/3899/7179 1949/3869/7180 1951/3900/7181
+f 1951/3900/7181 1949/3869/7180 1952/3868/7182
+s 1550
+f 1951/3901/7183 1950/3877/7184 1958/3902/7185
+f 1958/3902/7185 1950/3877/7184 1956/3876/7186
+s 1551
+f 1954/3872/7187 1953/3903/7188 1960/3873/7189
+f 1960/3873/7189 1953/3903/7188 1961/3904/7190
+s 1552
+f 1953/3905/7191 1955/3881/7192 1957/3906/7193
+f 1957/3906/7193 1955/3881/7192 1958/3880/7194
+s 1553
+f 1957/3907/7195 1956/3876/7196 1964/3908/7197
+f 1964/3908/7197 1956/3876/7196 1962/3875/7198
+s 1554
+f 1959/3863/7199 1961/3909/7200 1963/3864/7201
+f 1963/3864/7201 1961/3909/7200 1964/3910/7202
+s off
+f 1941/3891/7203 1942/3911/7204 1943/3870/7205
+f 1944/3865/7206 1945/3893/7207 1946/3890/7208
+f 1947/3899/7209 1948/3892/7210 1949/3869/7211
+f 1950/3896/7212 1951/3900/7213 1952/3868/7214
+f 1953/3905/7215 1954/3912/7216 1955/3881/7217
+f 1956/3876/7218 1957/3907/7219 1958/3902/7220
+f 1959/3913/7221 1960/3873/7222 1961/3904/7223
+f 1962/3894/7224 1963/3864/7225 1964/3910/7226
+s 1555
+f 1965/3914/7227 1966/3915/7228 2093/3917/7229
+f 2093/3917/7229 1966/3915/7228 2094/3916/7230
+s 1556
+f 1966/3915/7231 1967/3918/7232 2094/3916/7233
+f 2094/3916/7233 1967/3918/7232 2095/3919/7234
+s 1557
+f 1967/3918/7235 1968/3920/7236 2095/3919/7237
+f 2095/3919/7237 1968/3920/7236 2096/3921/7238
+s 1558
+f 1968/3920/7239 1969/3922/7240 2096/3921/7241
+f 2096/3921/7241 1969/3922/7240 2097/3923/7242
+s 1559
+f 1969/3922/7243 1970/3924/7244 2097/3923/7245
+f 2097/3923/7245 1970/3924/7244 2098/3925/7246
+s 1560
+f 1970/3924/7247 1971/3926/7248 2098/3925/7249
+f 2098/3925/7249 1971/3926/7248 2099/3927/7250
+s 1561
+f 1971/3928/7251 1972/3929/7252 2099/3931/7253
+f 2099/3931/7253 1972/3929/7252 2100/3930/7254
+s 1562
+f 1972/3929/7255 1973/3932/7256 2100/3930/7257
+f 2100/3930/7257 1973/3932/7256 2101/3933/7258
+s 1563
+f 1973/3932/7259 1974/3934/7260 2101/3933/7261
+f 2101/3933/7261 1974/3934/7260 2102/3935/7262
+s 1564
+f 1974/3934/7263 1975/3936/7264 2102/3935/7265
+f 2102/3935/7265 1975/3936/7264 2103/3937/7266
+s 1565
+f 1975/3938/7267 1976/3939/7268 2103/3941/7269
+f 2103/3941/7269 1976/3939/7268 2104/3940/7270
+s 1566
+f 1976/3939/7271 1977/3942/7272 2104/3940/7273
+f 2104/3940/7273 1977/3942/7272 2105/3943/7274
+s 1567
+f 1977/3942/7275 1978/3944/7276 2105/3943/7277
+f 2105/3943/7277 1978/3944/7276 2106/3945/7278
+s 1568
+f 1978/3944/7279 1979/3946/7280 2106/3945/7281
+f 2106/3945/7281 1979/3946/7280 2107/3947/7282
+s 1569
+f 1979/3948/7283 1980/3949/7284 2107/3951/7285
+f 2107/3951/7285 1980/3949/7284 2108/3950/7286
+s 1570
+f 1980/3949/7287 1965/3952/7288 2108/3950/7289
+f 2108/3950/7289 1965/3952/7288 2093/3953/7290
+s 1571
+f 1965/3952/7291 1980/3949/7292 1998/3955/7293
+f 1998/3955/7293 1980/3949/7292 1997/3954/7294
+s 1572
+f 1979/3948/7295 1999/3956/7296 1980/3949/7297
+f 1980/3949/7297 1999/3956/7296 1997/3954/7298
+s 1573
+f 1978/3944/7299 2000/3957/7300 1979/3946/7301
+f 1979/3946/7301 2000/3957/7300 1999/3958/7302
+s 1574
+f 1977/3942/7303 2001/3959/7304 1978/3944/7305
+f 1978/3944/7305 2001/3959/7304 2000/3957/7306
+s 1575
+f 1976/3939/7307 2002/3960/7308 1977/3942/7309
+f 1977/3942/7309 2002/3960/7308 2001/3959/7310
+s 1576
+f 1975/3938/7311 2003/3961/7312 1976/3939/7313
+f 1976/3939/7313 2003/3961/7312 2002/3960/7314
+s 1577
+f 1975/3936/7315 1974/3934/7316 2003/3963/7317
+f 2003/3963/7317 1974/3934/7316 2004/3962/7318
+s 1578
+f 1974/3934/7319 1973/3932/7320 2004/3962/7321
+f 2004/3962/7321 1973/3932/7320 2005/3964/7322
+s 1579
+f 1973/3932/7323 1972/3929/7324 2005/3964/7325
+f 2005/3964/7325 1972/3929/7324 2006/3965/7326
+s 1580
+f 1971/3928/7327 2007/3966/7328 1972/3929/7329
+f 1972/3929/7329 2007/3966/7328 2006/3965/7330
+s 1581
+f 1970/3924/7331 2008/3967/7332 1971/3926/7333
+f 1971/3926/7333 2008/3967/7332 2007/3968/7334
+s 1582
+f 1969/3922/7335 2009/3969/7336 1970/3924/7337
+f 1970/3924/7337 2009/3969/7336 2008/3967/7338
+s 1583
+f 1969/3922/7339 1968/3920/7340 2009/3969/7341
+f 2009/3969/7341 1968/3920/7340 2010/3970/7342
+s 1584
+f 1968/3920/7343 1967/3918/7344 2010/3970/7345
+f 2010/3970/7345 1967/3918/7344 2011/3971/7346
+s 1585
+f 1967/3918/7347 1966/3915/7348 2011/3971/7349
+f 2011/3971/7349 1966/3915/7348 2012/3972/7350
+s 1586
+f 1966/3915/7351 1965/3914/7352 2012/3972/7353
+f 2012/3972/7353 1965/3914/7352 1998/3973/7354
+s 1587
+f 1998/3955/7355 1997/3954/7356 2014/3975/7357
+f 2014/3975/7357 1997/3954/7356 2013/3974/7358
+s 1588
+f 1999/3956/7359 2015/3976/7360 1997/3954/7361
+f 1997/3954/7361 2015/3976/7360 2013/3974/7362
+s 1589
+f 2000/3957/7363 2016/3977/7364 1999/3958/7365
+f 1999/3958/7365 2016/3977/7364 2015/3978/7366
+s 1590
+f 2001/3959/7367 2017/3979/7368 2000/3957/7369
+f 2000/3957/7369 2017/3979/7368 2016/3977/7370
+s 1591
+f 2002/3960/7371 2018/3980/7372 2001/3959/7373
+f 2001/3959/7373 2018/3980/7372 2017/3979/7374
+s 1592
+f 2003/3961/7375 2019/3981/7376 2002/3960/7377
+f 2002/3960/7377 2019/3981/7376 2018/3980/7378
+s 1593
+f 2004/3982/7379 2020/3983/7380 2003/3961/7381
+f 2003/3961/7381 2020/3983/7380 2019/3981/7382
+s 1594
+f 2005/3964/7383 2021/3984/7384 2004/3962/7385
+f 2004/3962/7385 2021/3984/7384 2020/3985/7386
+s 1595
+f 2006/3965/7387 2022/3986/7388 2005/3964/7389
+f 2005/3964/7389 2022/3986/7388 2021/3984/7390
+s 1596
+f 2006/3965/7391 2007/3966/7392 2022/3986/7393
+f 2022/3986/7393 2007/3966/7392 2023/3987/7394
+s 1597
+f 2007/3968/7395 2008/3967/7396 2023/3989/7397
+f 2023/3989/7397 2008/3967/7396 2024/3988/7398
+s 1598
+f 2008/3967/7399 2009/3969/7400 2024/3988/7401
+f 2024/3988/7401 2009/3969/7400 2025/3990/7402
+s 1599
+f 2009/3969/7403 2010/3970/7404 2025/3990/7405
+f 2025/3990/7405 2010/3970/7404 2026/3991/7406
+s 1600
+f 2010/3970/7407 2011/3971/7408 2026/3991/7409
+f 2026/3991/7409 2011/3971/7408 2027/3992/7410
+s 1601
+f 2011/3971/7411 2012/3972/7412 2027/3992/7413
+f 2027/3992/7413 2012/3972/7412 2028/3993/7414
+s 1602
+f 2012/3972/7415 1998/3973/7416 2028/3993/7417
+f 2028/3993/7417 1998/3973/7416 2014/3994/7418
+s 1603
+f 1981/3995/7419 1982/3996/7420 1996/4010/7421
+f 1982/3996/7420 1983/3997/7422 1996/4010/7421
+f 1983/3997/7422 1984/3998/7423 1996/4010/7421
+f 1984/3998/7423 1985/3999/7424 1996/4010/7421
+f 1985/3999/7424 1986/4000/7425 1996/4010/7421
+f 1986/4000/7425 1987/4001/7426 1996/4010/7421
+f 1987/4001/7426 1988/4002/7427 1996/4010/7421
+f 1988/4002/7427 1989/4003/7428 1996/4010/7421
+f 1989/4003/7428 1990/4004/7429 1996/4010/7421
+f 1990/4004/7429 1991/4005/7430 1996/4010/7421
+f 1991/4005/7430 1992/4006/7431 1996/4010/7421
+f 1992/4006/7431 1993/4007/7432 1996/4010/7421
+f 1993/4007/7432 1994/4008/7433 1996/4010/7421
+f 1994/4008/7433 1995/4009/7434 1996/4010/7421
+s 1604
+f 2125/4012/7435 2127/4013/7436 2126/4011/7437
+f 2126/4011/7437 2127/4013/7436 2128/4014/7438
+s 1605
+f 2125/4012/7439 2129/4015/7440 2127/4013/7441
+f 2127/4013/7441 2129/4015/7440 2130/4016/7442
+s 1606
+f 2129/4015/7443 2131/4017/7444 2130/4016/7445
+f 2130/4016/7445 2131/4017/7444 2132/4018/7446
+s 1607
+f 2131/4017/7447 2133/4019/7448 2132/4018/7449
+f 2132/4018/7449 2133/4019/7448 2134/4020/7450
+s 1608
+f 2133/4019/7451 2135/4021/7452 2134/4020/7453
+f 2134/4020/7453 2135/4021/7452 2136/4022/7454
+s 1609
+f 2137/4023/7455 2138/4024/7456 2135/4021/7457
+f 2135/4021/7457 2138/4024/7456 2136/4022/7458
+s 1610
+f 2139/4025/7459 2140/4026/7460 2137/4023/7461
+f 2137/4023/7461 2140/4026/7460 2138/4024/7462
+s 1611
+f 2141/4027/7463 2142/4028/7464 2139/4025/7465
+f 2139/4025/7465 2142/4028/7464 2140/4026/7466
+s 1612
+f 2143/4029/7467 2144/4030/7468 2141/4027/7469
+f 2141/4027/7469 2144/4030/7468 2142/4028/7470
+s 1613
+f 2143/4029/7471 2145/4031/7472 2144/4030/7473
+f 2144/4030/7473 2145/4031/7472 2146/4032/7474
+s 1614
+f 2145/4031/7475 2147/4033/7476 2146/4032/7477
+f 2146/4032/7477 2147/4033/7476 2148/4034/7478
+s 1615
+f 2147/4033/7479 2149/4035/7480 2148/4034/7481
+f 2148/4034/7481 2149/4035/7480 2150/4036/7482
+s 1616
+f 2149/4035/7483 2151/4037/7484 2150/4036/7485
+f 2150/4036/7485 2151/4037/7484 2152/4038/7486
+s 1617
+f 2153/4039/7487 2154/4040/7488 2151/4037/7489
+f 2151/4037/7489 2154/4040/7488 2152/4038/7490
+s 1618
+f 2155/4041/7491 2156/4042/7492 2153/4039/7493
+f 2153/4039/7493 2156/4042/7492 2154/4040/7494
+s 1619
+f 2126/4011/7495 2128/4014/7496 2155/4041/7497
+f 2155/4041/7497 2128/4014/7496 2156/4042/7498
+s 1620
+f 2029/4044/7499 2045/4045/7500 2030/4043/7501
+f 2030/4043/7501 2045/4045/7500 2046/4046/7502
+s 1621
+f 2029/4044/7503 2031/4047/7504 2045/4045/7505
+f 2045/4045/7505 2031/4047/7504 2047/4048/7506
+s 1622
+f 2031/4049/7507 2032/4050/7508 2047/4052/7509
+f 2047/4052/7509 2032/4050/7508 2048/4051/7510
+s 1623
+f 2032/4050/7511 2033/4053/7512 2048/4051/7513
+f 2048/4051/7513 2033/4053/7512 2049/4054/7514
+s 1624
+f 2033/4053/7515 2034/4055/7516 2049/4054/7517
+f 2049/4054/7517 2034/4055/7516 2050/4056/7518
+s 1625
+f 2034/4055/7519 2035/4057/7520 2050/4056/7521
+f 2050/4056/7521 2035/4057/7520 2051/4058/7522
+s 1626
+f 2035/4057/7523 2036/4059/7524 2051/4058/7525
+f 2051/4058/7525 2036/4059/7524 2052/4060/7526
+s 1627
+f 2036/4059/7527 2037/4061/7528 2052/4060/7529
+f 2052/4060/7529 2037/4061/7528 2053/4062/7530
+s 1628
+f 2037/4063/7531 2038/4064/7532 2053/4066/7533
+f 2053/4066/7533 2038/4064/7532 2054/4065/7534
+s 1629
+f 2039/4067/7535 2055/4068/7536 2038/4064/7537
+f 2038/4064/7537 2055/4068/7536 2054/4065/7538
+s 1630
+f 2040/4070/7539 2056/4071/7540 2039/4069/7541
+f 2039/4069/7541 2056/4071/7540 2055/4072/7542
+s 1631
+f 2041/4073/7543 2057/4074/7544 2040/4070/7545
+f 2040/4070/7545 2057/4074/7544 2056/4071/7546
+s 1632
+f 2042/4075/7547 2058/4076/7548 2041/4073/7549
+f 2041/4073/7549 2058/4076/7548 2057/4074/7550
+s 1633
+f 2043/4077/7551 2059/4078/7552 2042/4075/7553
+f 2042/4075/7553 2059/4078/7552 2058/4076/7554
+s 1634
+f 2044/4079/7555 2060/4080/7556 2043/4077/7557
+f 2043/4077/7557 2060/4080/7556 2059/4078/7558
+s 1635
+f 2030/4081/7559 2046/4082/7560 2044/4079/7561
+f 2044/4079/7561 2046/4082/7560 2060/4080/7562
+s 1636
+f 2045/4045/7563 2061/4083/7564 2046/4046/7565
+f 2046/4046/7565 2061/4083/7564 2062/4084/7566
+s 1637
+f 2045/4045/7567 2047/4048/7568 2061/4083/7569
+f 2061/4083/7569 2047/4048/7568 2063/4085/7570
+s 1638
+f 2047/4052/7571 2048/4051/7572 2063/4087/7573
+f 2063/4087/7573 2048/4051/7572 2064/4086/7574
+s 1639
+f 2048/4051/7575 2049/4054/7576 2064/4086/7577
+f 2064/4086/7577 2049/4054/7576 2065/4088/7578
+s 1640
+f 2049/4054/7579 2050/4056/7580 2065/4088/7581
+f 2065/4088/7581 2050/4056/7580 2066/4089/7582
+s 1641
+f 2050/4056/7583 2051/4058/7584 2066/4089/7585
+f 2066/4089/7585 2051/4058/7584 2067/4090/7586
+s 1642
+f 2051/4058/7587 2052/4060/7588 2067/4090/7589
+f 2067/4090/7589 2052/4060/7588 2068/4091/7590
+s 1643
+f 2052/4060/7591 2053/4062/7592 2068/4091/7593
+f 2068/4091/7593 2053/4062/7592 2069/4092/7594
+s 1644
+f 2053/4066/7595 2054/4065/7596 2069/4094/7597
+f 2069/4094/7597 2054/4065/7596 2070/4093/7598
+s 1645
+f 2055/4068/7599 2071/4095/7600 2054/4065/7601
+f 2054/4065/7601 2071/4095/7600 2070/4093/7602
+s 1646
+f 2056/4071/7603 2072/4096/7604 2055/4072/7605
+f 2055/4072/7605 2072/4096/7604 2071/4097/7606
+s 1647
+f 2057/4074/7607 2073/4098/7608 2056/4071/7609
+f 2056/4071/7609 2073/4098/7608 2072/4096/7610
+s 1648
+f 2058/4076/7611 2074/4099/7612 2057/4074/7613
+f 2057/4074/7613 2074/4099/7612 2073/4098/7614
+s 1649
+f 2059/4078/7615 2075/4100/7616 2058/4076/7617
+f 2058/4076/7617 2075/4100/7616 2074/4099/7618
+s 1650
+f 2060/4080/7619 2076/4101/7620 2059/4078/7621
+f 2059/4078/7621 2076/4101/7620 2075/4100/7622
+s 1651
+f 2046/4082/7623 2062/4102/7624 2060/4080/7625
+f 2060/4080/7625 2062/4102/7624 2076/4101/7626
+s 1652
+f 2062/4084/7627 2061/4083/7628 2078/4104/7629
+f 2078/4104/7629 2061/4083/7628 2077/4103/7630
+s 1653
+f 2061/4083/7631 2063/4085/7632 2077/4103/7633
+f 2077/4103/7633 2063/4085/7632 2079/4105/7634
+s 1654
+f 2063/4087/7635 2064/4086/7636 2079/4107/7637
+f 2079/4107/7637 2064/4086/7636 2080/4106/7638
+s 1655
+f 2064/4086/7639 2065/4088/7640 2080/4106/7641
+f 2080/4106/7641 2065/4088/7640 2081/4108/7642
+s 1656
+f 2065/4088/7643 2066/4089/7644 2081/4108/7645
+f 2081/4108/7645 2066/4089/7644 2082/4109/7646
+s 1657
+f 2066/4089/7647 2067/4090/7648 2082/4109/7649
+f 2082/4109/7649 2067/4090/7648 2083/4110/7650
+s 1658
+f 2067/4111/7651 2068/4112/7652 2083/4114/7653
+f 2083/4114/7653 2068/4112/7652 2084/4113/7654
+s 1659
+f 2068/4091/7655 2069/4092/7656 2084/4116/7657
+f 2084/4116/7657 2069/4092/7656 2085/4115/7658
+s 1660
+f 2069/4094/7659 2070/4093/7660 2085/4118/7661
+f 2085/4118/7661 2070/4093/7660 2086/4117/7662
+s 1661
+f 2070/4093/7663 2071/4095/7664 2086/4117/7665
+f 2086/4117/7665 2071/4095/7664 2087/4119/7666
+s 1662
+f 2072/4096/7667 2088/4120/7668 2071/4097/7669
+f 2071/4097/7669 2088/4120/7668 2087/4121/7670
+s 1663
+f 2073/4098/7671 2089/4122/7672 2072/4096/7673
+f 2072/4096/7673 2089/4122/7672 2088/4120/7674
+s 1664
+f 2074/4099/7675 2090/4123/7676 2073/4098/7677
+f 2073/4098/7677 2090/4123/7676 2089/4122/7678
+s 1665
+f 2075/4100/7679 2091/4124/7680 2074/4099/7681
+f 2074/4099/7681 2091/4124/7680 2090/4123/7682
+s 1666
+f 2076/4101/7683 2092/4125/7684 2075/4100/7685
+f 2075/4100/7685 2092/4125/7684 2091/4124/7686
+s 1667
+f 2062/4102/7687 2078/4126/7688 2076/4101/7689
+f 2076/4101/7689 2078/4126/7688 2092/4125/7690
+s 1668
+f 2109/4127/7691 2110/4128/7692 1981/4130/7693
+f 1981/4130/7693 2110/4128/7692 1982/4129/7694
+s 1669
+f 2110/4128/7695 2111/4131/7696 1982/4129/7697
+f 1982/4129/7697 2111/4131/7696 1983/4132/7698
+s 1670
+f 2111/4131/7699 2112/4133/7700 1983/4132/7701
+f 1983/4132/7701 2112/4133/7700 1984/4134/7702
+s 1671
+f 2112/4133/7703 2113/4135/7704 1984/4134/7705
+f 1984/4134/7705 2113/4135/7704 1985/4136/7706
+s 1672
+f 2113/4135/7707 2114/4137/7708 1985/4136/7709
+f 1985/4136/7709 2114/4137/7708 1986/4138/7710
+s 1673
+f 2114/4137/7711 2115/4139/7712 1986/4138/7713
+f 1986/4138/7713 2115/4139/7712 1987/4140/7714
+s 1674
+f 2115/4141/7715 2116/4142/7716 1987/4144/7717
+f 1987/4144/7717 2116/4142/7716 1988/4143/7718
+s 1675
+f 2117/4145/7719 1989/4146/7720 2116/4142/7721
+f 2116/4142/7721 1989/4146/7720 1988/4143/7722
+s 1676
+f 2118/4147/7723 1990/4148/7724 2117/4145/7725
+f 2117/4145/7725 1990/4148/7724 1989/4146/7726
+s 1677
+f 2119/4149/7727 1991/4150/7728 2118/4147/7729
+f 2118/4147/7729 1991/4150/7728 1990/4148/7730
+s 1678
+f 2120/4152/7731 1992/4153/7732 2119/4151/7733
+f 2119/4151/7733 1992/4153/7732 1991/4154/7734
+s 1679
+f 2121/4155/7735 1993/4156/7736 2120/4152/7737
+f 2120/4152/7737 1993/4156/7736 1992/4153/7738
+s 1680
+f 2122/4157/7739 1994/4158/7740 2121/4155/7741
+f 2121/4155/7741 1994/4158/7740 1993/4156/7742
+s 1681
+f 2123/4159/7743 1995/4160/7744 2122/4157/7745
+f 2122/4157/7745 1995/4160/7744 1994/4158/7746
+s 1682
+f 2123/4161/7747 2124/4162/7748 1995/4164/7749
+f 1995/4164/7749 2124/4162/7748 1996/4163/7750
+s 1683
+f 2124/4162/7751 2109/4165/7752 1996/4163/7753
+f 1996/4163/7753 2109/4165/7752 1981/4166/7754
+s 1684
+f 2014/4167/7755 2013/4168/7756 2126/4170/7757
+f 2126/4170/7757 2013/4168/7756 2125/4169/7758
+s 1685
+f 2030/4172/7759 2128/4173/7760 2029/4171/7761
+f 2029/4171/7761 2128/4173/7760 2127/4174/7762
+s 1686
+f 2015/4175/7763 2129/4176/7764 2013/4168/7765
+f 2013/4168/7765 2129/4176/7764 2125/4169/7766
+s 1687
+f 2031/4177/7767 2029/4171/7768 2130/4178/7769
+f 2130/4178/7769 2029/4171/7768 2127/4174/7770
+s 1688
+f 2016/3977/7771 2131/4179/7772 2015/3978/7773
+f 2015/3978/7773 2131/4179/7772 2129/4180/7774
+s 1689
+f 2032/4050/7775 2031/4049/7776 2132/4182/7777
+f 2132/4182/7777 2031/4049/7776 2130/4181/7778
+s 1690
+f 2017/3979/7779 2133/4183/7780 2016/3977/7781
+f 2016/3977/7781 2133/4183/7780 2131/4179/7782
+s 1691
+f 2033/4053/7783 2032/4050/7784 2134/4184/7785
+f 2134/4184/7785 2032/4050/7784 2132/4182/7786
+s 1692
+f 2018/3980/7787 2135/4185/7788 2017/3979/7789
+f 2017/3979/7789 2135/4185/7788 2133/4183/7790
+s 1693
+f 2034/4055/7791 2033/4053/7792 2136/4186/7793
+f 2136/4186/7793 2033/4053/7792 2134/4184/7794
+s 1694
+f 2019/3981/7795 2137/4187/7796 2018/3980/7797
+f 2018/3980/7797 2137/4187/7796 2135/4185/7798
+s 1695
+f 2035/4057/7799 2034/4055/7800 2138/4188/7801
+f 2138/4188/7801 2034/4055/7800 2136/4186/7802
+s 1696
+f 2020/3983/7803 2139/4189/7804 2019/3981/7805
+f 2019/3981/7805 2139/4189/7804 2137/4187/7806
+s 1697
+f 2036/4059/7807 2035/4057/7808 2140/4190/7809
+f 2140/4190/7809 2035/4057/7808 2138/4188/7810
+s 1698
+f 2021/4191/7811 2141/4192/7812 2020/3983/7813
+f 2020/3983/7813 2141/4192/7812 2139/4189/7814
+s 1699
+f 2037/4061/7815 2036/4059/7816 2142/4193/7817
+f 2142/4193/7817 2036/4059/7816 2140/4190/7818
+s 1700
+f 2022/4195/7819 2143/4196/7820 2021/4194/7821
+f 2021/4194/7821 2143/4196/7820 2141/4197/7822
+s 1701
+f 2038/4198/7823 2037/4199/7824 2144/4201/7825
+f 2144/4201/7825 2037/4199/7824 2142/4200/7826
+s 1702
+f 2022/4195/7827 2023/4202/7828 2143/4196/7829
+f 2143/4196/7829 2023/4202/7828 2145/4203/7830
+s 1703
+f 2038/4198/7831 2144/4201/7832 2039/4204/7833
+f 2039/4204/7833 2144/4201/7832 2146/4205/7834
+s 1704
+f 2023/3989/7835 2024/3988/7836 2145/4207/7837
+f 2145/4207/7837 2024/3988/7836 2147/4206/7838
+s 1705
+f 2039/4069/7839 2146/4208/7840 2040/4070/7841
+f 2040/4070/7841 2146/4208/7840 2148/4209/7842
+s 1706
+f 2024/3988/7843 2025/3990/7844 2147/4206/7845
+f 2147/4206/7845 2025/3990/7844 2149/4210/7846
+s 1707
+f 2040/4070/7847 2148/4209/7848 2041/4073/7849
+f 2041/4073/7849 2148/4209/7848 2150/4211/7850
+s 1708
+f 2025/3990/7851 2026/3991/7852 2149/4210/7853
+f 2149/4210/7853 2026/3991/7852 2151/4212/7854
+s 1709
+f 2041/4073/7855 2150/4211/7856 2042/4075/7857
+f 2042/4075/7857 2150/4211/7856 2152/4213/7858
+s 1710
+f 2026/3991/7859 2027/3992/7860 2151/4212/7861
+f 2151/4212/7861 2027/3992/7860 2153/4214/7862
+s 1711
+f 2042/4075/7863 2152/4213/7864 2043/4077/7865
+f 2043/4077/7865 2152/4213/7864 2154/4215/7866
+s 1712
+f 2027/3992/7867 2028/3993/7868 2153/4214/7869
+f 2153/4214/7869 2028/3993/7868 2155/4216/7870
+s 1713
+f 2043/4077/7871 2154/4215/7872 2044/4079/7873
+f 2044/4079/7873 2154/4215/7872 2156/4217/7874
+s 1714
+f 2028/3993/7875 2014/3994/7876 2155/4216/7877
+f 2155/4216/7877 2014/3994/7876 2126/4218/7878
+s 1715
+f 2044/4079/7879 2156/4217/7880 2030/4081/7881
+f 2030/4081/7881 2156/4217/7880 2128/4219/7882
+s 1716
+f 2157/4220/7883 2158/4221/7884 2285/4223/7885
+f 2285/4223/7885 2158/4221/7884 2286/4222/7886
+s 1717
+f 2158/4221/7887 2159/4224/7888 2286/4222/7889
+f 2286/4222/7889 2159/4224/7888 2287/4225/7890
+s 1718
+f 2159/4224/7891 2160/4226/7892 2287/4225/7893
+f 2287/4225/7893 2160/4226/7892 2288/4227/7894
+s 1719
+f 2160/4226/7895 2161/4228/7896 2288/4227/7897
+f 2288/4227/7897 2161/4228/7896 2289/4229/7898
+s 1720
+f 2161/4228/7899 2162/4230/7900 2289/4229/7901
+f 2289/4229/7901 2162/4230/7900 2290/4231/7902
+s 1721
+f 2162/4230/7903 2163/4232/7904 2290/4231/7905
+f 2290/4231/7905 2163/4232/7904 2291/4233/7906
+s 1722
+f 2163/4234/7907 2164/4235/7908 2291/4237/7909
+f 2291/4237/7909 2164/4235/7908 2292/4236/7910
+s 1723
+f 2164/4235/7911 2165/4238/7912 2292/4236/7913
+f 2292/4236/7913 2165/4238/7912 2293/4239/7914
+s 1724
+f 2165/4238/7915 2166/4240/7916 2293/4239/7917
+f 2293/4239/7917 2166/4240/7916 2294/4241/7918
+s 1725
+f 2166/4240/7919 2167/4242/7920 2294/4241/7921
+f 2294/4241/7921 2167/4242/7920 2295/4243/7922
+s 1726
+f 2167/4244/7923 2168/4245/7924 2295/4247/7925
+f 2295/4247/7925 2168/4245/7924 2296/4246/7926
+s 1727
+f 2168/4245/7927 2169/4248/7928 2296/4246/7929
+f 2296/4246/7929 2169/4248/7928 2297/4249/7930
+s 1728
+f 2169/4248/7931 2170/4250/7932 2297/4249/7933
+f 2297/4249/7933 2170/4250/7932 2298/4251/7934
+s 1729
+f 2170/4250/7935 2171/4252/7936 2298/4251/7937
+f 2298/4251/7937 2171/4252/7936 2299/4253/7938
+s 1730
+f 2171/4254/7939 2172/4255/7940 2299/4257/7941
+f 2299/4257/7941 2172/4255/7940 2300/4256/7942
+s 1731
+f 2172/4255/7943 2157/4258/7944 2300/4256/7945
+f 2300/4256/7945 2157/4258/7944 2285/4259/7946
+s 1732
+f 2157/4258/7947 2172/4255/7948 2190/4261/7949
+f 2190/4261/7949 2172/4255/7948 2189/4260/7950
+s 1733
+f 2171/4254/7951 2191/4262/7952 2172/4255/7953
+f 2172/4255/7953 2191/4262/7952 2189/4260/7954
+s 1734
+f 2170/4250/7955 2192/4263/7956 2171/4252/7957
+f 2171/4252/7957 2192/4263/7956 2191/4264/7958
+s 1735
+f 2169/4248/7959 2193/4265/7960 2170/4250/7961
+f 2170/4250/7961 2193/4265/7960 2192/4263/7962
+s 1736
+f 2168/4245/7963 2194/4266/7964 2169/4248/7965
+f 2169/4248/7965 2194/4266/7964 2193/4265/7966
+s 1737
+f 2167/4244/7967 2195/4267/7968 2168/4245/7969
+f 2168/4245/7969 2195/4267/7968 2194/4266/7970
+s 1738
+f 2167/4242/7971 2166/4240/7972 2195/4269/7973
+f 2195/4269/7973 2166/4240/7972 2196/4268/7974
+s 1739
+f 2166/4240/7975 2165/4238/7976 2196/4268/7977
+f 2196/4268/7977 2165/4238/7976 2197/4270/7978
+s 1740
+f 2165/4238/7979 2164/4235/7980 2197/4270/7981
+f 2197/4270/7981 2164/4235/7980 2198/4271/7982
+s 1741
+f 2163/4234/7983 2199/4272/7984 2164/4235/7985
+f 2164/4235/7985 2199/4272/7984 2198/4271/7986
+s 1742
+f 2162/4230/7987 2200/4273/7988 2163/4232/7989
+f 2163/4232/7989 2200/4273/7988 2199/4274/7990
+s 1743
+f 2161/4228/7991 2201/4275/7992 2162/4230/7993
+f 2162/4230/7993 2201/4275/7992 2200/4273/7994
+s 1744
+f 2161/4228/7995 2160/4226/7996 2201/4275/7997
+f 2201/4275/7997 2160/4226/7996 2202/4276/7998
+s 1745
+f 2160/4226/7999 2159/4224/8000 2202/4276/8001
+f 2202/4276/8001 2159/4224/8000 2203/4277/8002
+s 1746
+f 2159/4224/8003 2158/4221/8004 2203/4277/8005
+f 2203/4277/8005 2158/4221/8004 2204/4278/8006
+s 1747
+f 2158/4221/8007 2157/4220/8008 2204/4278/8009
+f 2204/4278/8009 2157/4220/8008 2190/4279/8010
+s 1748
+f 2190/4261/8011 2189/4260/8012 2206/4281/8013
+f 2206/4281/8013 2189/4260/8012 2205/4280/8014
+s 1749
+f 2191/4262/8015 2207/4282/8016 2189/4260/8017
+f 2189/4260/8017 2207/4282/8016 2205/4280/8018
+s 1750
+f 2192/4263/8019 2208/4283/8020 2191/4264/8021
+f 2191/4264/8021 2208/4283/8020 2207/4284/8022
+s 1751
+f 2193/4265/8023 2209/4285/8024 2192/4263/8025
+f 2192/4263/8025 2209/4285/8024 2208/4283/8026
+s 1752
+f 2194/4266/8027 2210/4286/8028 2193/4265/8029
+f 2193/4265/8029 2210/4286/8028 2209/4285/8030
+s 1753
+f 2195/4267/8031 2211/4287/8032 2194/4266/8033
+f 2194/4266/8033 2211/4287/8032 2210/4286/8034
+s 1754
+f 2196/4288/8035 2212/4289/8036 2195/4267/8037
+f 2195/4267/8037 2212/4289/8036 2211/4287/8038
+s 1755
+f 2197/4270/8039 2213/4290/8040 2196/4268/8041
+f 2196/4268/8041 2213/4290/8040 2212/4291/8042
+s 1756
+f 2198/4271/8043 2214/4292/8044 2197/4270/8045
+f 2197/4270/8045 2214/4292/8044 2213/4290/8046
+s 1757
+f 2198/4271/8047 2199/4272/8048 2214/4292/8049
+f 2214/4292/8049 2199/4272/8048 2215/4293/8050
+s 1758
+f 2199/4274/8051 2200/4273/8052 2215/4295/8053
+f 2215/4295/8053 2200/4273/8052 2216/4294/8054
+s 1759
+f 2200/4273/8055 2201/4275/8056 2216/4294/8057
+f 2216/4294/8057 2201/4275/8056 2217/4296/8058
+s 1760
+f 2201/4275/8059 2202/4276/8060 2217/4296/8061
+f 2217/4296/8061 2202/4276/8060 2218/4297/8062
+s 1761
+f 2202/4276/8063 2203/4277/8064 2218/4297/8065
+f 2218/4297/8065 2203/4277/8064 2219/4298/8066
+s 1762
+f 2203/4277/8067 2204/4278/8068 2219/4298/8069
+f 2219/4298/8069 2204/4278/8068 2220/4299/8070
+s 1763
+f 2204/4278/8071 2190/4279/8072 2220/4299/8073
+f 2220/4299/8073 2190/4279/8072 2206/4300/8074
+s 1764
+f 2173/4301/8075 2174/4302/8076 2188/4316/8077
+f 2174/4302/8076 2175/4303/8078 2188/4316/8077
+f 2175/4303/8078 2176/4304/8079 2188/4316/8077
+f 2176/4304/8079 2177/4305/8080 2188/4316/8077
+f 2177/4305/8080 2178/4306/8081 2188/4316/8077
+f 2178/4306/8081 2179/4307/8082 2188/4316/8077
+f 2179/4307/8082 2180/4308/8083 2188/4316/8077
+f 2180/4308/8083 2181/4309/8084 2188/4316/8077
+f 2181/4309/8084 2182/4310/8085 2188/4316/8077
+f 2182/4310/8085 2183/4311/8086 2188/4316/8077
+f 2183/4311/8086 2184/4312/8087 2188/4316/8077
+f 2184/4312/8087 2185/4313/8088 2188/4316/8077
+f 2185/4313/8088 2186/4314/8089 2188/4316/8077
+f 2186/4314/8089 2187/4315/8090 2188/4316/8077
+s 1765
+f 2317/4318/8091 2319/4319/8092 2318/4317/8093
+f 2318/4317/8093 2319/4319/8092 2320/4320/8094
+s 1766
+f 2317/4318/8095 2321/4321/8096 2319/4319/8097
+f 2319/4319/8097 2321/4321/8096 2322/4322/8098
+s 1767
+f 2321/4321/8099 2323/4323/8100 2322/4322/8101
+f 2322/4322/8101 2323/4323/8100 2324/4324/8102
+s 1768
+f 2323/4323/8103 2325/4325/8104 2324/4324/8105
+f 2324/4324/8105 2325/4325/8104 2326/4326/8106
+s 1769
+f 2325/4325/8107 2327/4327/8108 2326/4326/8109
+f 2326/4326/8109 2327/4327/8108 2328/4328/8110
+s 1770
+f 2329/4329/8111 2330/4330/8112 2327/4327/8113
+f 2327/4327/8113 2330/4330/8112 2328/4328/8114
+s 1771
+f 2331/4331/8115 2332/4332/8116 2329/4329/8117
+f 2329/4329/8117 2332/4332/8116 2330/4330/8118
+s 1772
+f 2333/4333/8119 2334/4334/8120 2331/4331/8121
+f 2331/4331/8121 2334/4334/8120 2332/4332/8122
+s 1773
+f 2335/4335/8123 2336/4336/8124 2333/4333/8125
+f 2333/4333/8125 2336/4336/8124 2334/4334/8126
+s 1774
+f 2335/4335/8127 2337/4337/8128 2336/4336/8129
+f 2336/4336/8129 2337/4337/8128 2338/4338/8130
+s 1775
+f 2337/4337/8131 2339/4339/8132 2338/4338/8133
+f 2338/4338/8133 2339/4339/8132 2340/4340/8134
+s 1776
+f 2339/4339/8135 2341/4341/8136 2340/4340/8137
+f 2340/4340/8137 2341/4341/8136 2342/4342/8138
+s 1777
+f 2341/4341/8139 2343/4343/8140 2342/4342/8141
+f 2342/4342/8141 2343/4343/8140 2344/4344/8142
+s 1778
+f 2345/4345/8143 2346/4346/8144 2343/4343/8145
+f 2343/4343/8145 2346/4346/8144 2344/4344/8146
+s 1779
+f 2347/4347/8147 2348/4348/8148 2345/4345/8149
+f 2345/4345/8149 2348/4348/8148 2346/4346/8150
+s 1780
+f 2318/4317/8151 2320/4320/8152 2347/4347/8153
+f 2347/4347/8153 2320/4320/8152 2348/4348/8154
+s 1781
+f 2221/4350/8155 2237/4351/8156 2222/4349/8157
+f 2222/4349/8157 2237/4351/8156 2238/4352/8158
+s 1782
+f 2221/4350/8159 2223/4353/8160 2237/4351/8161
+f 2237/4351/8161 2223/4353/8160 2239/4354/8162
+s 1783
+f 2223/4355/8163 2224/4356/8164 2239/4358/8165
+f 2239/4358/8165 2224/4356/8164 2240/4357/8166
+s 1784
+f 2224/4356/8167 2225/4359/8168 2240/4357/8169
+f 2240/4357/8169 2225/4359/8168 2241/4360/8170
+s 1785
+f 2225/4359/8171 2226/4361/8172 2241/4360/8173
+f 2241/4360/8173 2226/4361/8172 2242/4362/8174
+s 1786
+f 2226/4361/8175 2227/4363/8176 2242/4362/8177
+f 2242/4362/8177 2227/4363/8176 2243/4364/8178
+s 1787
+f 2227/4363/8179 2228/4365/8180 2243/4364/8181
+f 2243/4364/8181 2228/4365/8180 2244/4366/8182
+s 1788
+f 2228/4365/8183 2229/4367/8184 2244/4366/8185
+f 2244/4366/8185 2229/4367/8184 2245/4368/8186
+s 1789
+f 2229/4369/8187 2230/4370/8188 2245/4372/8189
+f 2245/4372/8189 2230/4370/8188 2246/4371/8190
+s 1790
+f 2231/4373/8191 2247/4374/8192 2230/4370/8193
+f 2230/4370/8193 2247/4374/8192 2246/4371/8194
+s 1791
+f 2232/4376/8195 2248/4377/8196 2231/4375/8197
+f 2231/4375/8197 2248/4377/8196 2247/4378/8198
+s 1792
+f 2233/4380/8199 2249/4381/8200 2232/4379/8201
+f 2232/4379/8201 2249/4381/8200 2248/4382/8202
+s 1793
+f 2234/4383/8203 2250/4384/8204 2233/4380/8205
+f 2233/4380/8205 2250/4384/8204 2249/4381/8206
+s 1794
+f 2235/4385/8207 2251/4386/8208 2234/4383/8209
+f 2234/4383/8209 2251/4386/8208 2250/4384/8210
+s 1795
+f 2236/4387/8211 2252/4388/8212 2235/4385/8213
+f 2235/4385/8213 2252/4388/8212 2251/4386/8214
+s 1796
+f 2222/4389/8215 2238/4390/8216 2236/4387/8217
+f 2236/4387/8217 2238/4390/8216 2252/4388/8218
+s 1797
+f 2237/4351/8219 2253/4391/8220 2238/4352/8221
+f 2238/4352/8221 2253/4391/8220 2254/4392/8222
+s 1798
+f 2237/4351/8223 2239/4354/8224 2253/4391/8225
+f 2253/4391/8225 2239/4354/8224 2255/4393/8226
+s 1799
+f 2239/4358/8227 2240/4357/8228 2255/4395/8229
+f 2255/4395/8229 2240/4357/8228 2256/4394/8230
+s 1800
+f 2240/4357/8231 2241/4360/8232 2256/4394/8233
+f 2256/4394/8233 2241/4360/8232 2257/4396/8234
+s 1801
+f 2241/4360/8235 2242/4362/8236 2257/4396/8237
+f 2257/4396/8237 2242/4362/8236 2258/4397/8238
+s 1802
+f 2242/4362/8239 2243/4364/8240 2258/4397/8241
+f 2258/4397/8241 2243/4364/8240 2259/4398/8242
+s 1803
+f 2243/4364/8243 2244/4366/8244 2259/4398/8245
+f 2259/4398/8245 2244/4366/8244 2260/4399/8246
+s 1804
+f 2244/4366/8247 2245/4368/8248 2260/4399/8249
+f 2260/4399/8249 2245/4368/8248 2261/4400/8250
+s 1805
+f 2245/4372/8251 2246/4371/8252 2261/4402/8253
+f 2261/4402/8253 2246/4371/8252 2262/4401/8254
+s 1806
+f 2247/4374/8255 2263/4403/8256 2246/4371/8257
+f 2246/4371/8257 2263/4403/8256 2262/4401/8258
+s 1807
+f 2248/4382/8259 2264/4405/8260 2247/4404/8261
+f 2247/4404/8261 2264/4405/8260 2263/4406/8262
+s 1808
+f 2249/4381/8263 2265/4407/8264 2248/4382/8265
+f 2248/4382/8265 2265/4407/8264 2264/4405/8266
+s 1809
+f 2250/4384/8267 2266/4408/8268 2249/4381/8269
+f 2249/4381/8269 2266/4408/8268 2265/4407/8270
+s 1810
+f 2251/4386/8271 2267/4409/8272 2250/4384/8273
+f 2250/4384/8273 2267/4409/8272 2266/4408/8274
+s 1811
+f 2252/4388/8275 2268/4410/8276 2251/4386/8277
+f 2251/4386/8277 2268/4410/8276 2267/4409/8278
+s 1812
+f 2238/4390/8279 2254/4411/8280 2252/4388/8281
+f 2252/4388/8281 2254/4411/8280 2268/4410/8282
+s 1813
+f 2254/4392/8283 2253/4391/8284 2270/4413/8285
+f 2270/4413/8285 2253/4391/8284 2269/4412/8286
+s 1814
+f 2253/4391/8287 2255/4393/8288 2269/4412/8289
+f 2269/4412/8289 2255/4393/8288 2271/4414/8290
+s 1815
+f 2255/4395/8291 2256/4394/8292 2271/4416/8293
+f 2271/4416/8293 2256/4394/8292 2272/4415/8294
+s 1816
+f 2256/4394/8295 2257/4396/8296 2272/4415/8297
+f 2272/4415/8297 2257/4396/8296 2273/4417/8298
+s 1817
+f 2257/4396/8299 2258/4397/8300 2273/4417/8301
+f 2273/4417/8301 2258/4397/8300 2274/4418/8302
+s 1818
+f 2258/4397/8303 2259/4398/8304 2274/4418/8305
+f 2274/4418/8305 2259/4398/8304 2275/4419/8306
+s 1819
+f 2259/4398/8307 2260/4399/8308 2275/4419/8309
+f 2275/4419/8309 2260/4399/8308 2276/4420/8310
+s 1820
+f 2260/4399/8311 2261/4400/8312 2276/4420/8313
+f 2276/4420/8313 2261/4400/8312 2277/4421/8314
+s 1821
+f 2261/4402/8315 2262/4401/8316 2277/4423/8317
+f 2277/4423/8317 2262/4401/8316 2278/4422/8318
+s 1822
+f 2262/4401/8319 2263/4403/8320 2278/4422/8321
+f 2278/4422/8321 2263/4403/8320 2279/4424/8322
+s 1823
+f 2264/4405/8323 2280/4425/8324 2263/4406/8325
+f 2263/4406/8325 2280/4425/8324 2279/4426/8326
+s 1824
+f 2265/4407/8327 2281/4427/8328 2264/4405/8329
+f 2264/4405/8329 2281/4427/8328 2280/4425/8330
+s 1825
+f 2266/4408/8331 2282/4428/8332 2265/4407/8333
+f 2265/4407/8333 2282/4428/8332 2281/4427/8334
+s 1826
+f 2267/4409/8335 2283/4429/8336 2266/4408/8337
+f 2266/4408/8337 2283/4429/8336 2282/4428/8338
+s 1827
+f 2268/4410/8339 2284/4430/8340 2267/4409/8341
+f 2267/4409/8341 2284/4430/8340 2283/4429/8342
+s 1828
+f 2254/4411/8343 2270/4431/8344 2268/4410/8345
+f 2268/4410/8345 2270/4431/8344 2284/4430/8346
+s 1829
+f 2301/4432/8347 2302/4433/8348 2173/4435/8349
+f 2173/4435/8349 2302/4433/8348 2174/4434/8350
+s 1830
+f 2302/4433/8351 2303/4436/8352 2174/4434/8353
+f 2174/4434/8353 2303/4436/8352 2175/4437/8354
+s 1831
+f 2303/4436/8355 2304/4438/8356 2175/4437/8357
+f 2175/4437/8357 2304/4438/8356 2176/4439/8358
+s 1832
+f 2304/4438/8359 2305/4440/8360 2176/4439/8361
+f 2176/4439/8361 2305/4440/8360 2177/4441/8362
+s 1833
+f 2305/4440/8363 2306/4442/8364 2177/4441/8365
+f 2177/4441/8365 2306/4442/8364 2178/4443/8366
+s 1834
+f 2306/4442/8367 2307/4444/8368 2178/4443/8369
+f 2178/4443/8369 2307/4444/8368 2179/4445/8370
+s 1835
+f 2307/4446/8371 2308/4447/8372 2179/4449/8373
+f 2179/4449/8373 2308/4447/8372 2180/4448/8374
+s 1836
+f 2309/4450/8375 2181/4451/8376 2308/4447/8377
+f 2308/4447/8377 2181/4451/8376 2180/4448/8378
+s 1837
+f 2310/4452/8379 2182/4453/8380 2309/4450/8381
+f 2309/4450/8381 2182/4453/8380 2181/4451/8382
+s 1838
+f 2311/4454/8383 2183/4455/8384 2310/4452/8385
+f 2310/4452/8385 2183/4455/8384 2182/4453/8386
+s 1839
+f 2312/4457/8387 2184/4458/8388 2311/4456/8389
+f 2311/4456/8389 2184/4458/8388 2183/4459/8390
+s 1840
+f 2313/4460/8391 2185/4461/8392 2312/4457/8393
+f 2312/4457/8393 2185/4461/8392 2184/4458/8394
+s 1841
+f 2314/4462/8395 2186/4463/8396 2313/4460/8397
+f 2313/4460/8397 2186/4463/8396 2185/4461/8398
+s 1842
+f 2315/4464/8399 2187/4465/8400 2314/4462/8401
+f 2314/4462/8401 2187/4465/8400 2186/4463/8402
+s 1843
+f 2315/4466/8403 2316/4467/8404 2187/4469/8405
+f 2187/4469/8405 2316/4467/8404 2188/4468/8406
+s 1844
+f 2316/4467/8407 2301/4470/8408 2188/4468/8409
+f 2188/4468/8409 2301/4470/8408 2173/4471/8410
+s 1845
+f 2206/4472/8411 2205/4473/8412 2318/4475/8413
+f 2318/4475/8413 2205/4473/8412 2317/4474/8414
+s 1846
+f 2222/4477/8415 2320/4478/8416 2221/4476/8417
+f 2221/4476/8417 2320/4478/8416 2319/4479/8418
+s 1847
+f 2207/4480/8419 2321/4481/8420 2205/4473/8421
+f 2205/4473/8421 2321/4481/8420 2317/4474/8422
+s 1848
+f 2223/4482/8423 2221/4476/8424 2322/4483/8425
+f 2322/4483/8425 2221/4476/8424 2319/4479/8426
+s 1849
+f 2208/4283/8427 2323/4484/8428 2207/4284/8429
+f 2207/4284/8429 2323/4484/8428 2321/4485/8430
+s 1850
+f 2224/4356/8431 2223/4355/8432 2324/4487/8433
+f 2324/4487/8433 2223/4355/8432 2322/4486/8434
+s 1851
+f 2209/4285/8435 2325/4488/8436 2208/4283/8437
+f 2208/4283/8437 2325/4488/8436 2323/4484/8438
+s 1852
+f 2225/4359/8439 2224/4356/8440 2326/4489/8441
+f 2326/4489/8441 2224/4356/8440 2324/4487/8442
+s 1853
+f 2210/4286/8443 2327/4490/8444 2209/4285/8445
+f 2209/4285/8445 2327/4490/8444 2325/4488/8446
+s 1854
+f 2226/4361/8447 2225/4359/8448 2328/4491/8449
+f 2328/4491/8449 2225/4359/8448 2326/4489/8450
+s 1855
+f 2211/4287/8451 2329/4492/8452 2210/4286/8453
+f 2210/4286/8453 2329/4492/8452 2327/4490/8454
+s 1856
+f 2227/4363/8455 2226/4361/8456 2330/4493/8457
+f 2330/4493/8457 2226/4361/8456 2328/4491/8458
+s 1857
+f 2212/4289/8459 2331/4494/8460 2211/4287/8461
+f 2211/4287/8461 2331/4494/8460 2329/4492/8462
+s 1858
+f 2228/4365/8463 2227/4363/8464 2332/4495/8465
+f 2332/4495/8465 2227/4363/8464 2330/4493/8466
+s 1859
+f 2213/4496/8467 2333/4497/8468 2212/4289/8469
+f 2212/4289/8469 2333/4497/8468 2331/4494/8470
+s 1860
+f 2229/4367/8471 2228/4365/8472 2334/4498/8473
+f 2334/4498/8473 2228/4365/8472 2332/4495/8474
+s 1861
+f 2214/4500/8475 2335/4501/8476 2213/4499/8477
+f 2213/4499/8477 2335/4501/8476 2333/4502/8478
+s 1862
+f 2230/4503/8479 2229/4504/8480 2336/4506/8481
+f 2336/4506/8481 2229/4504/8480 2334/4505/8482
+s 1863
+f 2214/4500/8483 2215/4507/8484 2335/4501/8485
+f 2335/4501/8485 2215/4507/8484 2337/4508/8486
+s 1864
+f 2230/4503/8487 2336/4506/8488 2231/4509/8489
+f 2231/4509/8489 2336/4506/8488 2338/4510/8490
+s 1865
+f 2215/4295/8491 2216/4294/8492 2337/4512/8493
+f 2337/4512/8493 2216/4294/8492 2339/4511/8494
+s 1866
+f 2231/4513/8495 2338/4514/8496 2232/4379/8497
+f 2232/4379/8497 2338/4514/8496 2340/4515/8498
+s 1867
+f 2216/4294/8499 2217/4296/8500 2339/4511/8501
+f 2339/4511/8501 2217/4296/8500 2341/4516/8502
+s 1868
+f 2232/4379/8503 2340/4515/8504 2233/4380/8505
+f 2233/4380/8505 2340/4515/8504 2342/4517/8506
+s 1869
+f 2217/4296/8507 2218/4297/8508 2341/4516/8509
+f 2341/4516/8509 2218/4297/8508 2343/4518/8510
+s 1870
+f 2233/4380/8511 2342/4517/8512 2234/4383/8513
+f 2234/4383/8513 2342/4517/8512 2344/4519/8514
+s 1871
+f 2218/4297/8515 2219/4298/8516 2343/4518/8517
+f 2343/4518/8517 2219/4298/8516 2345/4520/8518
+s 1872
+f 2234/4383/8519 2344/4519/8520 2235/4385/8521
+f 2235/4385/8521 2344/4519/8520 2346/4521/8522
+s 1873
+f 2219/4298/8523 2220/4299/8524 2345/4520/8525
+f 2345/4520/8525 2220/4299/8524 2347/4522/8526
+s 1874
+f 2235/4385/8527 2346/4521/8528 2236/4387/8529
+f 2236/4387/8529 2346/4521/8528 2348/4523/8530
+s 1875
+f 2220/4299/8531 2206/4300/8532 2347/4522/8533
+f 2347/4522/8533 2206/4300/8532 2318/4524/8534
+s 1876
+f 2236/4387/8535 2348/4523/8536 2222/4389/8537
+f 2222/4389/8537 2348/4523/8536 2320/4525/8538
+s 1877
+f 2349/4526/8539 2350/4527/8540 2365/4529/8541
+f 2365/4529/8541 2350/4527/8540 2366/4528/8542
+s 1878
+f 2350/4527/8543 2351/4530/8544 2366/4528/8545
+f 2366/4528/8545 2351/4530/8544 2367/4531/8546
+s 1879
+f 2351/4530/8547 2352/4532/8548 2367/4531/8549
+f 2367/4531/8549 2352/4532/8548 2368/4533/8550
+s 1880
+f 2352/4532/8551 2353/4534/8552 2368/4533/8553
+f 2368/4533/8553 2353/4534/8552 2369/4535/8554
+s 1881
+f 2353/4534/8555 2354/4536/8556 2369/4535/8557
+f 2369/4535/8557 2354/4536/8556 2370/4537/8558
+s 1882
+f 2354/4536/8559 2355/4538/8560 2370/4537/8561
+f 2370/4537/8561 2355/4538/8560 2371/4539/8562
+s 1883
+f 2355/4540/8563 2356/4541/8564 2371/4543/8565
+f 2371/4543/8565 2356/4541/8564 2372/4542/8566
+s 1884
+f 2356/4541/8567 2357/4544/8568 2372/4542/8569
+f 2372/4542/8569 2357/4544/8568 2373/4545/8570
+s 1885
+f 2357/4544/8571 2358/4546/8572 2373/4545/8573
+f 2373/4545/8573 2358/4546/8572 2374/4547/8574
+s 1886
+f 2358/4546/8575 2359/4548/8576 2374/4547/8577
+f 2374/4547/8577 2359/4548/8576 2375/4549/8578
+s 1887
+f 2359/4550/8579 2360/4551/8580 2375/4553/8581
+f 2375/4553/8581 2360/4551/8580 2376/4552/8582
+s 1888
+f 2360/4551/8583 2361/4554/8584 2376/4552/8585
+f 2376/4552/8585 2361/4554/8584 2377/4555/8586
+s 1889
+f 2361/4554/8587 2362/4556/8588 2377/4555/8589
+f 2377/4555/8589 2362/4556/8588 2378/4557/8590
+s 1890
+f 2362/4556/8591 2363/4558/8592 2378/4557/8593
+f 2378/4557/8593 2363/4558/8592 2379/4559/8594
+s 1891
+f 2363/4560/8595 2364/4561/8596 2379/4563/8597
+f 2379/4563/8597 2364/4561/8596 2380/4562/8598
+s 1892
+f 2364/4561/8599 2349/4564/8600 2380/4562/8601
+f 2380/4562/8601 2349/4564/8600 2365/4565/8602
+s 1893
+f 2349/4566/8603 2364/4567/8604 2350/4581/8605
+f 2364/4567/8604 2363/4568/8606 2350/4581/8605
+f 2363/4568/8606 2362/4569/8607 2350/4581/8605
+f 2362/4569/8607 2361/4570/8608 2350/4581/8605
+f 2361/4570/8608 2360/4571/8609 2350/4581/8605
+f 2360/4571/8609 2359/4572/8610 2350/4581/8605
+f 2359/4572/8610 2358/4573/8611 2350/4581/8605
+f 2358/4573/8611 2357/4574/8612 2350/4581/8605
+f 2357/4574/8612 2356/4575/8613 2350/4581/8605
+f 2356/4575/8613 2355/4576/8614 2350/4581/8605
+f 2355/4576/8614 2354/4577/8615 2350/4581/8605
+f 2354/4577/8615 2353/4578/8616 2350/4581/8605
+f 2353/4578/8616 2352/4579/8617 2350/4581/8605
+f 2352/4579/8617 2351/4580/8618 2350/4581/8605
diff --git a/resources/models/sphere.obj b/resources/models/sphere.obj
new file mode 100644 (file)
index 0000000..b411c79
--- /dev/null
@@ -0,0 +1,1608 @@
+# This file uses centimeters as units for non-parametric coordinates.
+
+mtllib sphere.mtl
+v 0.148778 -0.987688 -0.048341
+v 0.126558 -0.987688 -0.091950
+v 0.091950 -0.987688 -0.126558
+v 0.048341 -0.987688 -0.148778
+v 0.000000 -0.987688 -0.156435
+v -0.048341 -0.987688 -0.148778
+v -0.091950 -0.987688 -0.126558
+v -0.126558 -0.987688 -0.091950
+v -0.148778 -0.987688 -0.048341
+v -0.156435 -0.987688 0.000000
+v -0.148778 -0.987688 0.048341
+v -0.126558 -0.987688 0.091950
+v -0.091950 -0.987688 0.126558
+v -0.048341 -0.987688 0.148778
+v -0.000000 -0.987688 0.156434
+v 0.048341 -0.987688 0.148778
+v 0.091950 -0.987688 0.126558
+v 0.126558 -0.987688 0.091950
+v 0.148778 -0.987688 0.048341
+v 0.156434 -0.987688 0.000000
+v 0.293893 -0.951057 -0.095492
+v 0.250000 -0.951057 -0.181636
+v 0.181636 -0.951057 -0.250000
+v 0.095492 -0.951057 -0.293893
+v 0.000000 -0.951057 -0.309017
+v -0.095492 -0.951057 -0.293893
+v -0.181636 -0.951057 -0.250000
+v -0.250000 -0.951057 -0.181636
+v -0.293893 -0.951057 -0.095492
+v -0.309017 -0.951057 0.000000
+v -0.293893 -0.951057 0.095492
+v -0.250000 -0.951057 0.181636
+v -0.181636 -0.951057 0.250000
+v -0.095492 -0.951057 0.293893
+v -0.000000 -0.951057 0.309017
+v 0.095491 -0.951057 0.293893
+v 0.181636 -0.951057 0.250000
+v 0.250000 -0.951057 0.181636
+v 0.293893 -0.951057 0.095492
+v 0.309017 -0.951057 0.000000
+v 0.431771 -0.891007 -0.140291
+v 0.367286 -0.891007 -0.266849
+v 0.266849 -0.891007 -0.367286
+v 0.140291 -0.891007 -0.431771
+v 0.000000 -0.891007 -0.453991
+v -0.140291 -0.891007 -0.431771
+v -0.266849 -0.891007 -0.367286
+v -0.367286 -0.891007 -0.266849
+v -0.431771 -0.891007 -0.140291
+v -0.453991 -0.891007 0.000000
+v -0.431771 -0.891007 0.140291
+v -0.367286 -0.891007 0.266849
+v -0.266849 -0.891007 0.367286
+v -0.140291 -0.891007 0.431771
+v -0.000000 -0.891007 0.453991
+v 0.140291 -0.891007 0.431771
+v 0.266849 -0.891007 0.367286
+v 0.367286 -0.891007 0.266849
+v 0.431771 -0.891007 0.140291
+v 0.453991 -0.891007 0.000000
+v 0.559017 -0.809017 -0.181636
+v 0.475529 -0.809017 -0.345492
+v 0.345492 -0.809017 -0.475529
+v 0.181636 -0.809017 -0.559017
+v 0.000000 -0.809017 -0.587786
+v -0.181636 -0.809017 -0.559017
+v -0.345492 -0.809017 -0.475528
+v -0.475528 -0.809017 -0.345492
+v -0.559017 -0.809017 -0.181636
+v -0.587785 -0.809017 0.000000
+v -0.559017 -0.809017 0.181636
+v -0.475528 -0.809017 0.345492
+v -0.345492 -0.809017 0.475528
+v -0.181636 -0.809017 0.559017
+v -0.000000 -0.809017 0.587785
+v 0.181636 -0.809017 0.559017
+v 0.345491 -0.809017 0.475528
+v 0.475528 -0.809017 0.345492
+v 0.559017 -0.809017 0.181636
+v 0.587785 -0.809017 0.000000
+v 0.672499 -0.707107 -0.218508
+v 0.572062 -0.707107 -0.415627
+v 0.415627 -0.707107 -0.572062
+v 0.218508 -0.707107 -0.672499
+v 0.000000 -0.707107 -0.707107
+v -0.218508 -0.707107 -0.672499
+v -0.415627 -0.707107 -0.572062
+v -0.572062 -0.707107 -0.415627
+v -0.672499 -0.707107 -0.218508
+v -0.707107 -0.707107 0.000000
+v -0.672499 -0.707107 0.218508
+v -0.572062 -0.707107 0.415627
+v -0.415627 -0.707107 0.572061
+v -0.218508 -0.707107 0.672499
+v -0.000000 -0.707107 0.707107
+v 0.218508 -0.707107 0.672499
+v 0.415627 -0.707107 0.572061
+v 0.572061 -0.707107 0.415627
+v 0.672499 -0.707107 0.218508
+v 0.707107 -0.707107 0.000000
+v 0.769421 -0.587785 -0.250000
+v 0.654509 -0.587785 -0.475529
+v 0.475529 -0.587785 -0.654509
+v 0.250000 -0.587785 -0.769421
+v 0.000000 -0.587785 -0.809017
+v -0.250000 -0.587785 -0.769421
+v -0.475528 -0.587785 -0.654509
+v -0.654509 -0.587785 -0.475528
+v -0.769421 -0.587785 -0.250000
+v -0.809017 -0.587785 0.000000
+v -0.769421 -0.587785 0.250000
+v -0.654509 -0.587785 0.475528
+v -0.475528 -0.587785 0.654509
+v -0.250000 -0.587785 0.769421
+v -0.000000 -0.587785 0.809017
+v 0.250000 -0.587785 0.769421
+v 0.475528 -0.587785 0.654509
+v 0.654509 -0.587785 0.475528
+v 0.769421 -0.587785 0.250000
+v 0.809017 -0.587785 0.000000
+v 0.847398 -0.453991 -0.275336
+v 0.720840 -0.453991 -0.523721
+v 0.523721 -0.453991 -0.720840
+v 0.275336 -0.453991 -0.847398
+v 0.000000 -0.453991 -0.891007
+v -0.275336 -0.453991 -0.847398
+v -0.523721 -0.453991 -0.720840
+v -0.720840 -0.453991 -0.523721
+v -0.847398 -0.453991 -0.275336
+v -0.891007 -0.453991 0.000000
+v -0.847398 -0.453991 0.275336
+v -0.720840 -0.453991 0.523721
+v -0.523721 -0.453991 0.720840
+v -0.275336 -0.453991 0.847398
+v -0.000000 -0.453991 0.891007
+v 0.275336 -0.453991 0.847398
+v 0.523721 -0.453991 0.720840
+v 0.720839 -0.453991 0.523721
+v 0.847398 -0.453991 0.275336
+v 0.891007 -0.453991 0.000000
+v 0.904509 -0.309017 -0.293893
+v 0.769421 -0.309017 -0.559017
+v 0.559017 -0.309017 -0.769421
+v 0.293893 -0.309017 -0.904509
+v 0.000000 -0.309017 -0.951057
+v -0.293893 -0.309017 -0.904509
+v -0.559017 -0.309017 -0.769421
+v -0.769421 -0.309017 -0.559017
+v -0.904509 -0.309017 -0.293893
+v -0.951057 -0.309017 0.000000
+v -0.904509 -0.309017 0.293893
+v -0.769421 -0.309017 0.559017
+v -0.559017 -0.309017 0.769421
+v -0.293893 -0.309017 0.904509
+v -0.000000 -0.309017 0.951057
+v 0.293893 -0.309017 0.904509
+v 0.559017 -0.309017 0.769421
+v 0.769421 -0.309017 0.559017
+v 0.904509 -0.309017 0.293893
+v 0.951057 -0.309017 0.000000
+v 0.939348 -0.156434 -0.305213
+v 0.799057 -0.156434 -0.580549
+v 0.580549 -0.156434 -0.799057
+v 0.305213 -0.156434 -0.939348
+v 0.000000 -0.156434 -0.987689
+v -0.305213 -0.156434 -0.939348
+v -0.580549 -0.156434 -0.799057
+v -0.799057 -0.156434 -0.580549
+v -0.939348 -0.156434 -0.305213
+v -0.987689 -0.156434 0.000000
+v -0.939348 -0.156434 0.305213
+v -0.799057 -0.156434 0.580549
+v -0.580549 -0.156434 0.799057
+v -0.305213 -0.156434 0.939348
+v -0.000000 -0.156434 0.987688
+v 0.305212 -0.156434 0.939348
+v 0.580549 -0.156434 0.799057
+v 0.799057 -0.156434 0.580549
+v 0.939348 -0.156434 0.305212
+v 0.987688 -0.156434 0.000000
+v 0.951057 0.000000 -0.309017
+v 0.809018 0.000000 -0.587786
+v 0.587786 0.000000 -0.809017
+v 0.309017 0.000000 -0.951057
+v 0.000000 0.000000 -1.000000
+v -0.309017 0.000000 -0.951057
+v -0.587785 0.000000 -0.809017
+v -0.809017 0.000000 -0.587785
+v -0.951057 0.000000 -0.309017
+v -1.000000 0.000000 0.000000
+v -0.951057 0.000000 0.309017
+v -0.809017 0.000000 0.587785
+v -0.587785 0.000000 0.809017
+v -0.309017 0.000000 0.951057
+v -0.000000 0.000000 1.000000
+v 0.309017 0.000000 0.951057
+v 0.587785 0.000000 0.809017
+v 0.809017 0.000000 0.587785
+v 0.951057 0.000000 0.309017
+v 1.000000 0.000000 0.000000
+v 0.939348 0.156434 -0.305213
+v 0.799057 0.156434 -0.580549
+v 0.580549 0.156434 -0.799057
+v 0.305213 0.156434 -0.939348
+v 0.000000 0.156434 -0.987689
+v -0.305213 0.156434 -0.939348
+v -0.580549 0.156434 -0.799057
+v -0.799057 0.156434 -0.580549
+v -0.939348 0.156434 -0.305213
+v -0.987689 0.156434 0.000000
+v -0.939348 0.156434 0.305213
+v -0.799057 0.156434 0.580549
+v -0.580549 0.156434 0.799057
+v -0.305213 0.156434 0.939348
+v -0.000000 0.156434 0.987688
+v 0.305212 0.156434 0.939348
+v 0.580549 0.156434 0.799057
+v 0.799057 0.156434 0.580549
+v 0.939348 0.156434 0.305212
+v 0.987688 0.156434 0.000000
+v 0.904509 0.309017 -0.293893
+v 0.769421 0.309017 -0.559017
+v 0.559017 0.309017 -0.769421
+v 0.293893 0.309017 -0.904509
+v 0.000000 0.309017 -0.951057
+v -0.293893 0.309017 -0.904509
+v -0.559017 0.309017 -0.769421
+v -0.769421 0.309017 -0.559017
+v -0.904509 0.309017 -0.293893
+v -0.951057 0.309017 0.000000
+v -0.904509 0.309017 0.293893
+v -0.769421 0.309017 0.559017
+v -0.559017 0.309017 0.769421
+v -0.293893 0.309017 0.904509
+v -0.000000 0.309017 0.951057
+v 0.293893 0.309017 0.904509
+v 0.559017 0.309017 0.769421
+v 0.769421 0.309017 0.559017
+v 0.904509 0.309017 0.293893
+v 0.951057 0.309017 0.000000
+v 0.847398 0.453991 -0.275336
+v 0.720840 0.453991 -0.523721
+v 0.523721 0.453991 -0.720840
+v 0.275336 0.453991 -0.847398
+v 0.000000 0.453991 -0.891007
+v -0.275336 0.453991 -0.847398
+v -0.523721 0.453991 -0.720840
+v -0.720840 0.453991 -0.523721
+v -0.847398 0.453991 -0.275336
+v -0.891007 0.453991 0.000000
+v -0.847398 0.453991 0.275336
+v -0.720840 0.453991 0.523721
+v -0.523721 0.453991 0.720840
+v -0.275336 0.453991 0.847398
+v -0.000000 0.453991 0.891007
+v 0.275336 0.453991 0.847398
+v 0.523721 0.453991 0.720840
+v 0.720839 0.453991 0.523721
+v 0.847398 0.453991 0.275336
+v 0.891007 0.453991 0.000000
+v 0.769421 0.587785 -0.250000
+v 0.654509 0.587785 -0.475529
+v 0.475529 0.587785 -0.654509
+v 0.250000 0.587785 -0.769421
+v 0.000000 0.587785 -0.809017
+v -0.250000 0.587785 -0.769421
+v -0.475528 0.587785 -0.654509
+v -0.654509 0.587785 -0.475528
+v -0.769421 0.587785 -0.250000
+v -0.809017 0.587785 0.000000
+v -0.769421 0.587785 0.250000
+v -0.654509 0.587785 0.475528
+v -0.475528 0.587785 0.654509
+v -0.250000 0.587785 0.769421
+v -0.000000 0.587785 0.809017
+v 0.250000 0.587785 0.769421
+v 0.475528 0.587785 0.654509
+v 0.654509 0.587785 0.475528
+v 0.769421 0.587785 0.250000
+v 0.809017 0.587785 0.000000
+v 0.672499 0.707107 -0.218508
+v 0.572062 0.707107 -0.415627
+v 0.415627 0.707107 -0.572062
+v 0.218508 0.707107 -0.672499
+v 0.000000 0.707107 -0.707107
+v -0.218508 0.707107 -0.672499
+v -0.415627 0.707107 -0.572062
+v -0.572062 0.707107 -0.415627
+v -0.672499 0.707107 -0.218508
+v -0.707107 0.707107 0.000000
+v -0.672499 0.707107 0.218508
+v -0.572062 0.707107 0.415627
+v -0.415627 0.707107 0.572061
+v -0.218508 0.707107 0.672499
+v -0.000000 0.707107 0.707107
+v 0.218508 0.707107 0.672499
+v 0.415627 0.707107 0.572061
+v 0.572061 0.707107 0.415627
+v 0.672499 0.707107 0.218508
+v 0.707107 0.707107 0.000000
+v 0.559017 0.809017 -0.181636
+v 0.475529 0.809017 -0.345492
+v 0.345492 0.809017 -0.475529
+v 0.181636 0.809017 -0.559017
+v 0.000000 0.809017 -0.587786
+v -0.181636 0.809017 -0.559017
+v -0.345492 0.809017 -0.475528
+v -0.475528 0.809017 -0.345492
+v -0.559017 0.809017 -0.181636
+v -0.587785 0.809017 0.000000
+v -0.559017 0.809017 0.181636
+v -0.475528 0.809017 0.345492
+v -0.345492 0.809017 0.475528
+v -0.181636 0.809017 0.559017
+v -0.000000 0.809017 0.587785
+v 0.181636 0.809017 0.559017
+v 0.345491 0.809017 0.475528
+v 0.475528 0.809017 0.345492
+v 0.559017 0.809017 0.181636
+v 0.587785 0.809017 0.000000
+v 0.431771 0.891007 -0.140291
+v 0.367286 0.891007 -0.266849
+v 0.266849 0.891007 -0.367286
+v 0.140291 0.891007 -0.431771
+v 0.000000 0.891007 -0.453991
+v -0.140291 0.891007 -0.431771
+v -0.266849 0.891007 -0.367286
+v -0.367286 0.891007 -0.266849
+v -0.431771 0.891007 -0.140291
+v -0.453991 0.891007 0.000000
+v -0.431771 0.891007 0.140291
+v -0.367286 0.891007 0.266849
+v -0.266849 0.891007 0.367286
+v -0.140291 0.891007 0.431771
+v -0.000000 0.891007 0.453991
+v 0.140291 0.891007 0.431771
+v 0.266849 0.891007 0.367286
+v 0.367286 0.891007 0.266849
+v 0.431771 0.891007 0.140291
+v 0.453991 0.891007 0.000000
+v 0.293893 0.951057 -0.095492
+v 0.250000 0.951057 -0.181636
+v 0.181636 0.951057 -0.250000
+v 0.095492 0.951057 -0.293893
+v 0.000000 0.951057 -0.309017
+v -0.095492 0.951057 -0.293893
+v -0.181636 0.951057 -0.250000
+v -0.250000 0.951057 -0.181636
+v -0.293893 0.951057 -0.095492
+v -0.309017 0.951057 0.000000
+v -0.293893 0.951057 0.095492
+v -0.250000 0.951057 0.181636
+v -0.181636 0.951057 0.250000
+v -0.095492 0.951057 0.293893
+v -0.000000 0.951057 0.309017
+v 0.095491 0.951057 0.293893
+v 0.181636 0.951057 0.250000
+v 0.250000 0.951057 0.181636
+v 0.293893 0.951057 0.095492
+v 0.309017 0.951057 0.000000
+v 0.148778 0.987688 -0.048341
+v 0.126558 0.987688 -0.091950
+v 0.091950 0.987688 -0.126558
+v 0.048341 0.987688 -0.148778
+v 0.000000 0.987688 -0.156435
+v -0.048341 0.987688 -0.148778
+v -0.091950 0.987688 -0.126558
+v -0.126558 0.987688 -0.091950
+v -0.148778 0.987688 -0.048341
+v -0.156435 0.987688 0.000000
+v -0.148778 0.987688 0.048341
+v -0.126558 0.987688 0.091950
+v -0.091950 0.987688 0.126558
+v -0.048341 0.987688 0.148778
+v -0.000000 0.987688 0.156434
+v 0.048341 0.987688 0.148778
+v 0.091950 0.987688 0.126558
+v 0.126558 0.987688 0.091950
+v 0.148778 0.987688 0.048341
+v 0.156434 0.987688 0.000000
+v 0.000000 -1.000000 0.000000
+v 0.000000 1.000000 0.000000
+vt -0.153754 -0.088378
+vt -0.088378 -0.088378
+vt -0.023003 -0.088378
+vt 0.042372 -0.088378
+vt 0.107748 -0.088378
+vt 0.173123 -0.088378
+vt 0.238499 -0.088378
+vt 0.303874 -0.088378
+vt 0.369249 -0.088378
+vt 0.434625 -0.088378
+vt 0.500000 -0.088378
+vt 0.565375 -0.088378
+vt 0.630751 -0.088378
+vt 0.696126 -0.088378
+vt 0.761502 -0.088378
+vt 0.826877 -0.088378
+vt 0.892252 -0.088378
+vt 0.957628 -0.088378
+vt 1.023003 -0.088378
+vt 1.088379 -0.088378
+vt 1.153754 -0.088378
+vt -0.153754 -0.023003
+vt -0.088378 -0.023003
+vt -0.023003 -0.023003
+vt 0.042372 -0.023003
+vt 0.107748 -0.023003
+vt 0.173123 -0.023003
+vt 0.238499 -0.023003
+vt 0.303874 -0.023003
+vt 0.369249 -0.023003
+vt 0.434625 -0.023003
+vt 0.500000 -0.023003
+vt 0.565375 -0.023003
+vt 0.630751 -0.023003
+vt 0.696126 -0.023003
+vt 0.761502 -0.023003
+vt 0.826877 -0.023003
+vt 0.892252 -0.023003
+vt 0.957628 -0.023003
+vt 1.023003 -0.023003
+vt 1.088379 -0.023003
+vt 1.153754 -0.023003
+vt -0.153754 0.042372
+vt -0.088378 0.042372
+vt -0.023003 0.042372
+vt 0.042372 0.042372
+vt 0.107748 0.042372
+vt 0.173123 0.042372
+vt 0.238499 0.042372
+vt 0.303874 0.042372
+vt 0.369249 0.042372
+vt 0.434625 0.042372
+vt 0.500000 0.042372
+vt 0.565375 0.042372
+vt 0.630751 0.042372
+vt 0.696126 0.042372
+vt 0.761502 0.042372
+vt 0.826877 0.042372
+vt 0.892252 0.042372
+vt 0.957628 0.042372
+vt 1.023003 0.042372
+vt 1.088379 0.042372
+vt 1.153754 0.042372
+vt -0.153754 0.107748
+vt -0.088378 0.107748
+vt -0.023003 0.107748
+vt 0.042372 0.107748
+vt 0.107748 0.107748
+vt 0.173123 0.107748
+vt 0.238499 0.107748
+vt 0.303874 0.107748
+vt 0.369249 0.107748
+vt 0.434625 0.107748
+vt 0.500000 0.107748
+vt 0.565375 0.107748
+vt 0.630751 0.107748
+vt 0.696126 0.107748
+vt 0.761502 0.107748
+vt 0.826877 0.107748
+vt 0.892252 0.107748
+vt 0.957628 0.107748
+vt 1.023003 0.107748
+vt 1.088379 0.107748
+vt 1.153754 0.107748
+vt -0.153754 0.173123
+vt -0.088378 0.173123
+vt -0.023003 0.173123
+vt 0.042372 0.173123
+vt 0.107748 0.173123
+vt 0.173123 0.173123
+vt 0.238499 0.173123
+vt 0.303874 0.173123
+vt 0.369249 0.173123
+vt 0.434625 0.173123
+vt 0.500000 0.173123
+vt 0.565375 0.173123
+vt 0.630751 0.173123
+vt 0.696126 0.173123
+vt 0.761502 0.173123
+vt 0.826877 0.173123
+vt 0.892252 0.173123
+vt 0.957628 0.173123
+vt 1.023003 0.173123
+vt 1.088379 0.173123
+vt 1.153754 0.173123
+vt -0.153754 0.238499
+vt -0.088378 0.238499
+vt -0.023003 0.238499
+vt 0.042372 0.238499
+vt 0.107748 0.238499
+vt 0.173123 0.238499
+vt 0.238499 0.238499
+vt 0.303874 0.238499
+vt 0.369249 0.238499
+vt 0.434625 0.238499
+vt 0.500000 0.238499
+vt 0.565375 0.238499
+vt 0.630751 0.238499
+vt 0.696126 0.238499
+vt 0.761502 0.238499
+vt 0.826877 0.238499
+vt 0.892252 0.238499
+vt 0.957628 0.238499
+vt 1.023003 0.238499
+vt 1.088379 0.238499
+vt 1.153754 0.238499
+vt -0.153754 0.303874
+vt -0.088378 0.303874
+vt -0.023003 0.303874
+vt 0.042372 0.303874
+vt 0.107748 0.303874
+vt 0.173123 0.303874
+vt 0.238499 0.303874
+vt 0.303874 0.303874
+vt 0.369249 0.303874
+vt 0.434625 0.303874
+vt 0.500000 0.303874
+vt 0.565375 0.303874
+vt 0.630751 0.303874
+vt 0.696126 0.303874
+vt 0.761502 0.303874
+vt 0.826877 0.303874
+vt 0.892252 0.303874
+vt 0.957628 0.303874
+vt 1.023003 0.303874
+vt 1.088379 0.303874
+vt 1.153754 0.303874
+vt -0.153754 0.369249
+vt -0.088378 0.369249
+vt -0.023003 0.369249
+vt 0.042372 0.369249
+vt 0.107748 0.369249
+vt 0.173123 0.369249
+vt 0.238499 0.369249
+vt 0.303874 0.369249
+vt 0.369249 0.369249
+vt 0.434625 0.369249
+vt 0.500000 0.369249
+vt 0.565375 0.369249
+vt 0.630751 0.369249
+vt 0.696126 0.369249
+vt 0.761502 0.369249
+vt 0.826877 0.369249
+vt 0.892252 0.369249
+vt 0.957628 0.369249
+vt 1.023003 0.369249
+vt 1.088379 0.369249
+vt 1.153754 0.369249
+vt -0.153754 0.434625
+vt -0.088378 0.434625
+vt -0.023003 0.434625
+vt 0.042372 0.434625
+vt 0.107748 0.434625
+vt 0.173123 0.434625
+vt 0.238499 0.434625
+vt 0.303874 0.434625
+vt 0.369249 0.434625
+vt 0.434625 0.434625
+vt 0.500000 0.434625
+vt 0.565375 0.434625
+vt 0.630751 0.434625
+vt 0.696126 0.434625
+vt 0.761502 0.434625
+vt 0.826877 0.434625
+vt 0.892252 0.434625
+vt 0.957628 0.434625
+vt 1.023003 0.434625
+vt 1.088379 0.434625
+vt 1.153754 0.434625
+vt -0.153754 0.500000
+vt -0.088378 0.500000
+vt -0.023003 0.500000
+vt 0.042372 0.500000
+vt 0.107748 0.500000
+vt 0.173123 0.500000
+vt 0.238499 0.500000
+vt 0.303874 0.500000
+vt 0.369249 0.500000
+vt 0.434625 0.500000
+vt 0.500000 0.500000
+vt 0.565375 0.500000
+vt 0.630751 0.500000
+vt 0.696126 0.500000
+vt 0.761502 0.500000
+vt 0.826877 0.500000
+vt 0.892252 0.500000
+vt 0.957628 0.500000
+vt 1.023003 0.500000
+vt 1.088379 0.500000
+vt 1.153754 0.500000
+vt -0.153754 0.565375
+vt -0.088378 0.565375
+vt -0.023003 0.565375
+vt 0.042372 0.565375
+vt 0.107748 0.565375
+vt 0.173123 0.565375
+vt 0.238499 0.565375
+vt 0.303874 0.565375
+vt 0.369249 0.565375
+vt 0.434625 0.565375
+vt 0.500000 0.565375
+vt 0.565375 0.565375
+vt 0.630751 0.565375
+vt 0.696126 0.565375
+vt 0.761502 0.565375
+vt 0.826877 0.565375
+vt 0.892252 0.565375
+vt 0.957628 0.565375
+vt 1.023003 0.565375
+vt 1.088379 0.565375
+vt 1.153754 0.565375
+vt -0.153754 0.630751
+vt -0.088378 0.630751
+vt -0.023003 0.630751
+vt 0.042372 0.630751
+vt 0.107748 0.630751
+vt 0.173123 0.630751
+vt 0.238499 0.630751
+vt 0.303874 0.630751
+vt 0.369249 0.630751
+vt 0.434625 0.630751
+vt 0.500000 0.630751
+vt 0.565375 0.630751
+vt 0.630751 0.630751
+vt 0.696126 0.630751
+vt 0.761502 0.630751
+vt 0.826877 0.630751
+vt 0.892252 0.630751
+vt 0.957628 0.630751
+vt 1.023003 0.630751
+vt 1.088379 0.630751
+vt 1.153754 0.630751
+vt -0.153754 0.696126
+vt -0.088378 0.696126
+vt -0.023003 0.696126
+vt 0.042372 0.696126
+vt 0.107748 0.696126
+vt 0.173123 0.696126
+vt 0.238499 0.696126
+vt 0.303874 0.696126
+vt 0.369249 0.696126
+vt 0.434625 0.696126
+vt 0.500000 0.696126
+vt 0.565375 0.696126
+vt 0.630751 0.696126
+vt 0.696126 0.696126
+vt 0.761502 0.696126
+vt 0.826877 0.696126
+vt 0.892252 0.696126
+vt 0.957628 0.696126
+vt 1.023003 0.696126
+vt 1.088379 0.696126
+vt 1.153754 0.696126
+vt -0.153754 0.761502
+vt -0.088378 0.761502
+vt -0.023003 0.761502
+vt 0.042372 0.761502
+vt 0.107748 0.761502
+vt 0.173123 0.761502
+vt 0.238499 0.761502
+vt 0.303874 0.761502
+vt 0.369249 0.761502
+vt 0.434625 0.761502
+vt 0.500000 0.761502
+vt 0.565375 0.761502
+vt 0.630751 0.761502
+vt 0.696126 0.761502
+vt 0.761502 0.761502
+vt 0.826877 0.761502
+vt 0.892252 0.761502
+vt 0.957628 0.761502
+vt 1.023003 0.761502
+vt 1.088379 0.761502
+vt 1.153754 0.761502
+vt -0.153754 0.826877
+vt -0.088378 0.826877
+vt -0.023003 0.826877
+vt 0.042372 0.826877
+vt 0.107748 0.826877
+vt 0.173123 0.826877
+vt 0.238499 0.826877
+vt 0.303874 0.826877
+vt 0.369249 0.826877
+vt 0.434625 0.826877
+vt 0.500000 0.826877
+vt 0.565375 0.826877
+vt 0.630751 0.826877
+vt 0.696126 0.826877
+vt 0.761502 0.826877
+vt 0.826877 0.826877
+vt 0.892252 0.826877
+vt 0.957628 0.826877
+vt 1.023003 0.826877
+vt 1.088379 0.826877
+vt 1.153754 0.826877
+vt -0.153754 0.892252
+vt -0.088378 0.892252
+vt -0.023003 0.892252
+vt 0.042372 0.892252
+vt 0.107748 0.892252
+vt 0.173123 0.892252
+vt 0.238499 0.892252
+vt 0.303874 0.892252
+vt 0.369249 0.892252
+vt 0.434625 0.892252
+vt 0.500000 0.892252
+vt 0.565375 0.892252
+vt 0.630751 0.892252
+vt 0.696126 0.892252
+vt 0.761502 0.892252
+vt 0.826877 0.892252
+vt 0.892252 0.892252
+vt 0.957628 0.892252
+vt 1.023003 0.892252
+vt 1.088379 0.892252
+vt 1.153754 0.892252
+vt -0.153754 0.957628
+vt -0.088378 0.957628
+vt -0.023003 0.957628
+vt 0.042372 0.957628
+vt 0.107748 0.957628
+vt 0.173123 0.957628
+vt 0.238499 0.957628
+vt 0.303874 0.957628
+vt 0.369249 0.957628
+vt 0.434625 0.957628
+vt 0.500000 0.957628
+vt 0.565375 0.957628
+vt 0.630751 0.957628
+vt 0.696126 0.957628
+vt 0.761502 0.957628
+vt 0.826877 0.957628
+vt 0.892252 0.957628
+vt 0.957628 0.957628
+vt 1.023003 0.957628
+vt 1.088379 0.957628
+vt 1.153754 0.957628
+vt -0.153754 1.023003
+vt -0.088378 1.023003
+vt -0.023003 1.023003
+vt 0.042372 1.023003
+vt 0.107748 1.023003
+vt 0.173123 1.023003
+vt 0.238499 1.023003
+vt 0.303874 1.023003
+vt 0.369249 1.023003
+vt 0.434625 1.023003
+vt 0.500000 1.023003
+vt 0.565375 1.023003
+vt 0.630751 1.023003
+vt 0.696126 1.023003
+vt 0.761502 1.023003
+vt 0.826877 1.023003
+vt 0.892252 1.023003
+vt 0.957628 1.023003
+vt 1.023003 1.023003
+vt 1.088379 1.023003
+vt 1.153754 1.023003
+vt -0.153754 1.088379
+vt -0.088378 1.088379
+vt -0.023003 1.088379
+vt 0.042372 1.088379
+vt 0.107748 1.088379
+vt 0.173123 1.088379
+vt 0.238499 1.088379
+vt 0.303874 1.088379
+vt 0.369249 1.088379
+vt 0.434625 1.088379
+vt 0.500000 1.088379
+vt 0.565375 1.088379
+vt 0.630751 1.088379
+vt 0.696126 1.088379
+vt 0.761502 1.088379
+vt 0.826877 1.088379
+vt 0.892252 1.088379
+vt 0.957628 1.088379
+vt 1.023003 1.088379
+vt 1.088379 1.088379
+vt 1.153754 1.088379
+vt -0.121066 -0.153754
+vt -0.055691 -0.153754
+vt 0.009685 -0.153754
+vt 0.075060 -0.153754
+vt 0.140435 -0.153754
+vt 0.205811 -0.153754
+vt 0.271186 -0.153754
+vt 0.336562 -0.153754
+vt 0.401937 -0.153754
+vt 0.467312 -0.153754
+vt 0.532688 -0.153754
+vt 0.598063 -0.153754
+vt 0.663438 -0.153754
+vt 0.728814 -0.153754
+vt 0.794189 -0.153754
+vt 0.859565 -0.153754
+vt 0.924940 -0.153754
+vt 0.990315 -0.153754
+vt 1.055691 -0.153754
+vt 1.121066 -0.153754
+vt -0.121066 1.153754
+vt -0.055691 1.153754
+vt 0.009685 1.153754
+vt 0.075060 1.153754
+vt 0.140435 1.153754
+vt 0.205811 1.153754
+vt 0.271186 1.153754
+vt 0.336562 1.153754
+vt 0.401937 1.153754
+vt 0.467312 1.153754
+vt 0.532688 1.153754
+vt 0.598063 1.153754
+vt 0.663438 1.153754
+vt 0.728814 1.153754
+vt 0.794189 1.153754
+vt 0.859565 1.153754
+vt 0.924940 1.153754
+vt 0.990315 1.153754
+vt 1.055691 1.153754
+vt 1.121066 1.153754
+vn 0.190555 -0.979722 -0.061915
+vn 0.162096 -0.979722 -0.117770
+vn 0.269870 -0.942723 -0.196072
+vn 0.317252 -0.942722 -0.103081
+vn 0.117769 -0.979722 -0.162095
+vn 0.196072 -0.942723 -0.269870
+vn 0.061915 -0.979722 -0.190555
+vn 0.103081 -0.942723 -0.317251
+vn -0.000000 -0.979722 -0.200361
+vn -0.000000 -0.942723 -0.333578
+vn -0.061915 -0.979722 -0.190555
+vn -0.103081 -0.942723 -0.317252
+vn -0.117769 -0.979722 -0.162096
+vn -0.196072 -0.942722 -0.269871
+vn -0.162096 -0.979722 -0.117770
+vn -0.269870 -0.942723 -0.196072
+vn -0.190555 -0.979722 -0.061915
+vn -0.317252 -0.942722 -0.103081
+vn -0.200361 -0.979722 0.000000
+vn -0.333578 -0.942723 -0.000000
+vn -0.190555 -0.979722 0.061915
+vn -0.317252 -0.942722 0.103081
+vn -0.162096 -0.979722 0.117769
+vn -0.269870 -0.942723 0.196072
+vn -0.117769 -0.979722 0.162096
+vn -0.196072 -0.942723 0.269870
+vn -0.061915 -0.979722 0.190555
+vn -0.103081 -0.942722 0.317252
+vn 0.000000 -0.979722 0.200361
+vn 0.000000 -0.942723 0.333578
+vn 0.061915 -0.979722 0.190555
+vn 0.103081 -0.942722 0.317252
+vn 0.117769 -0.979722 0.162096
+vn 0.196072 -0.942722 0.269870
+vn 0.162096 -0.979722 0.117769
+vn 0.269870 -0.942722 0.196073
+vn 0.190555 -0.979722 0.061915
+vn 0.317252 -0.942722 0.103081
+vn 0.200361 -0.979722 0.000001
+vn 0.333578 -0.942722 0.000000
+vn 0.380846 -0.882266 -0.276701
+vn 0.447712 -0.882266 -0.145470
+vn 0.276701 -0.882266 -0.380846
+vn 0.145470 -0.882266 -0.447711
+vn -0.000000 -0.882266 -0.470752
+vn -0.145470 -0.882266 -0.447711
+vn -0.276701 -0.882266 -0.380846
+vn -0.380846 -0.882266 -0.276701
+vn -0.447712 -0.882266 -0.145470
+vn -0.470752 -0.882266 0.000000
+vn -0.447712 -0.882266 0.145470
+vn -0.380846 -0.882266 0.276701
+vn -0.276701 -0.882266 0.380846
+vn -0.145470 -0.882266 0.447712
+vn 0.000000 -0.882266 0.470752
+vn 0.145470 -0.882266 0.447712
+vn 0.276701 -0.882266 0.380846
+vn 0.380846 -0.882266 0.276701
+vn 0.447712 -0.882266 0.145470
+vn 0.470752 -0.882266 0.000000
+vn 0.485138 -0.800252 -0.352474
+vn 0.570314 -0.800252 -0.185306
+vn 0.352473 -0.800252 -0.485138
+vn 0.185306 -0.800252 -0.570314
+vn -0.000000 -0.800252 -0.599664
+vn -0.185307 -0.800252 -0.570314
+vn -0.352474 -0.800252 -0.485138
+vn -0.485138 -0.800252 -0.352474
+vn -0.570314 -0.800252 -0.185306
+vn -0.599664 -0.800252 0.000000
+vn -0.570314 -0.800252 0.185306
+vn -0.485138 -0.800252 0.352474
+vn -0.352474 -0.800252 0.485139
+vn -0.185306 -0.800252 0.570314
+vn -0.000000 -0.800252 0.599664
+vn 0.185306 -0.800252 0.570315
+vn 0.352474 -0.800252 0.485139
+vn 0.485138 -0.800252 0.352474
+vn 0.570314 -0.800252 0.185306
+vn 0.599664 -0.800252 0.000001
+vn 0.578712 -0.698789 -0.420459
+vn 0.680318 -0.698789 -0.221048
+vn 0.420459 -0.698789 -0.578713
+vn 0.221049 -0.698789 -0.680318
+vn -0.000000 -0.698789 -0.715328
+vn -0.221049 -0.698789 -0.680318
+vn -0.420460 -0.698789 -0.578713
+vn -0.578713 -0.698789 -0.420459
+vn -0.680318 -0.698789 -0.221049
+vn -0.715328 -0.698789 0.000000
+vn -0.680318 -0.698789 0.221049
+vn -0.578713 -0.698789 0.420460
+vn -0.420459 -0.698788 0.578713
+vn -0.221049 -0.698788 0.680318
+vn -0.000000 -0.698788 0.715328
+vn 0.221049 -0.698788 0.680318
+vn 0.420460 -0.698788 0.578713
+vn 0.578713 -0.698788 0.420459
+vn 0.680318 -0.698788 0.221049
+vn 0.715328 -0.698788 0.000001
+vn 0.658808 -0.580401 -0.478652
+vn 0.774475 -0.580401 -0.251641
+vn 0.478652 -0.580401 -0.658808
+vn 0.251642 -0.580401 -0.774475
+vn -0.000000 -0.580401 -0.814331
+vn -0.251642 -0.580401 -0.774475
+vn -0.478652 -0.580401 -0.658808
+vn -0.658808 -0.580401 -0.478652
+vn -0.774475 -0.580401 -0.251642
+vn -0.814331 -0.580401 -0.000000
+vn -0.774475 -0.580401 0.251642
+vn -0.658808 -0.580401 0.478652
+vn -0.478652 -0.580401 0.658808
+vn -0.251642 -0.580401 0.774475
+vn 0.000000 -0.580401 0.814331
+vn 0.251642 -0.580401 0.774475
+vn 0.478652 -0.580401 0.658808
+vn 0.658808 -0.580401 0.478652
+vn 0.774475 -0.580401 0.251642
+vn 0.814331 -0.580401 0.000001
+vn 0.723291 -0.447994 -0.525502
+vn 0.850280 -0.447994 -0.276272
+vn 0.525501 -0.447994 -0.723291
+vn 0.276272 -0.447994 -0.850280
+vn -0.000000 -0.447994 -0.894037
+vn -0.276273 -0.447994 -0.850279
+vn -0.525502 -0.447994 -0.723291
+vn -0.723291 -0.447994 -0.525501
+vn -0.850280 -0.447994 -0.276272
+vn -0.894037 -0.447994 -0.000000
+vn -0.850279 -0.447994 0.276272
+vn -0.723291 -0.447994 0.525502
+vn -0.525502 -0.447994 0.723291
+vn -0.276272 -0.447994 0.850280
+vn 0.000000 -0.447994 0.894037
+vn 0.276273 -0.447994 0.850280
+vn 0.525502 -0.447994 0.723291
+vn 0.723291 -0.447994 0.525502
+vn 0.850280 -0.447994 0.276273
+vn 0.894037 -0.447993 0.000001
+vn 0.770524 -0.304789 -0.559819
+vn 0.905806 -0.304789 -0.294313
+vn 0.559818 -0.304789 -0.770524
+vn 0.294314 -0.304789 -0.905805
+vn 0.000000 -0.304789 -0.952420
+vn -0.294314 -0.304789 -0.905805
+vn -0.559819 -0.304789 -0.770524
+vn -0.770524 -0.304789 -0.559818
+vn -0.905805 -0.304789 -0.294314
+vn -0.952420 -0.304789 -0.000000
+vn -0.905805 -0.304789 0.294314
+vn -0.770524 -0.304788 0.559819
+vn -0.559818 -0.304788 0.770524
+vn -0.294314 -0.304789 0.905805
+vn 0.000000 -0.304789 0.952420
+vn 0.294314 -0.304789 0.905805
+vn 0.559818 -0.304789 0.770524
+vn 0.770524 -0.304789 0.559818
+vn 0.905805 -0.304789 0.294314
+vn 0.952420 -0.304788 0.000001
+vn 0.799335 -0.154249 -0.580751
+vn 0.939675 -0.154249 -0.305318
+vn 0.580751 -0.154249 -0.799335
+vn 0.305319 -0.154249 -0.939674
+vn 0.000000 -0.154249 -0.988032
+vn -0.305319 -0.154249 -0.939674
+vn -0.580751 -0.154249 -0.799334
+vn -0.799335 -0.154249 -0.580751
+vn -0.939674 -0.154248 -0.305319
+vn -0.988032 -0.154248 0.000000
+vn -0.939674 -0.154248 0.305319
+vn -0.799335 -0.154248 0.580751
+vn -0.580751 -0.154249 0.799335
+vn -0.305319 -0.154249 0.939674
+vn 0.000000 -0.154249 0.988032
+vn 0.305319 -0.154249 0.939674
+vn 0.580751 -0.154249 0.799335
+vn 0.799335 -0.154249 0.580751
+vn 0.939674 -0.154249 0.305319
+vn 0.988032 -0.154249 0.000001
+vn 0.809017 0.000000 -0.587785
+vn 0.951057 -0.000000 -0.309016
+vn 0.587785 -0.000000 -0.809017
+vn 0.309017 -0.000000 -0.951057
+vn 0.000000 0.000000 -1.000000
+vn -0.309017 -0.000000 -0.951056
+vn -0.587786 -0.000000 -0.809017
+vn -0.809017 0.000000 -0.587785
+vn -0.951057 0.000000 -0.309017
+vn -1.000000 -0.000000 0.000000
+vn -0.951057 -0.000000 0.309017
+vn -0.809017 0.000000 0.587785
+vn -0.587785 -0.000000 0.809017
+vn -0.309017 -0.000000 0.951057
+vn 0.000000 0.000000 1.000000
+vn 0.309017 -0.000000 0.951057
+vn 0.587785 -0.000000 0.809017
+vn 0.809017 -0.000000 0.587785
+vn 0.951057 0.000000 0.309017
+vn 1.000000 -0.000000 0.000001
+vn 0.799335 0.154249 -0.580751
+vn 0.939675 0.154249 -0.305318
+vn 0.580750 0.154249 -0.799335
+vn 0.305319 0.154249 -0.939674
+vn 0.000000 0.154249 -0.988032
+vn -0.305319 0.154249 -0.939674
+vn -0.580751 0.154249 -0.799335
+vn -0.799335 0.154249 -0.580751
+vn -0.939674 0.154248 -0.305319
+vn -0.988032 0.154248 0.000000
+vn -0.939674 0.154248 0.305319
+vn -0.799335 0.154248 0.580751
+vn -0.580751 0.154249 0.799335
+vn -0.305319 0.154249 0.939674
+vn 0.000000 0.154249 0.988032
+vn 0.305319 0.154249 0.939674
+vn 0.580751 0.154249 0.799335
+vn 0.799335 0.154249 0.580751
+vn 0.939674 0.154249 0.305319
+vn 0.988032 0.154249 0.000001
+vn 0.770524 0.304789 -0.559819
+vn 0.905806 0.304789 -0.294313
+vn 0.559818 0.304789 -0.770524
+vn 0.294314 0.304789 -0.905805
+vn 0.000000 0.304789 -0.952420
+vn -0.294314 0.304789 -0.905805
+vn -0.559819 0.304789 -0.770524
+vn -0.770524 0.304789 -0.559818
+vn -0.905805 0.304789 -0.294314
+vn -0.952420 0.304789 -0.000000
+vn -0.905805 0.304789 0.294314
+vn -0.770524 0.304788 0.559819
+vn -0.559818 0.304788 0.770524
+vn -0.294314 0.304789 0.905805
+vn 0.000000 0.304789 0.952420
+vn 0.294314 0.304789 0.905805
+vn 0.559818 0.304789 0.770524
+vn 0.770524 0.304789 0.559819
+vn 0.905805 0.304789 0.294314
+vn 0.952420 0.304789 0.000001
+vn 0.723291 0.447994 -0.525502
+vn 0.850280 0.447994 -0.276272
+vn 0.525501 0.447994 -0.723291
+vn 0.276272 0.447994 -0.850280
+vn -0.000000 0.447994 -0.894037
+vn -0.276273 0.447994 -0.850279
+vn -0.525502 0.447994 -0.723291
+vn -0.723291 0.447994 -0.525501
+vn -0.850280 0.447994 -0.276273
+vn -0.894037 0.447994 -0.000000
+vn -0.850279 0.447994 0.276273
+vn -0.723291 0.447994 0.525502
+vn -0.525502 0.447994 0.723291
+vn -0.276273 0.447994 0.850280
+vn 0.000000 0.447994 0.894037
+vn 0.276273 0.447994 0.850280
+vn 0.525502 0.447994 0.723291
+vn 0.723291 0.447994 0.525502
+vn 0.850280 0.447994 0.276273
+vn 0.894037 0.447994 0.000001
+vn 0.658808 0.580401 -0.478652
+vn 0.774475 0.580401 -0.251641
+vn 0.478652 0.580401 -0.658808
+vn 0.251642 0.580401 -0.774475
+vn -0.000000 0.580401 -0.814331
+vn -0.251642 0.580401 -0.774475
+vn -0.478652 0.580401 -0.658808
+vn -0.658808 0.580401 -0.478652
+vn -0.774475 0.580401 -0.251642
+vn -0.814331 0.580401 -0.000000
+vn -0.774475 0.580401 0.251642
+vn -0.658808 0.580401 0.478652
+vn -0.478652 0.580401 0.658808
+vn -0.251642 0.580401 0.774475
+vn 0.000000 0.580401 0.814331
+vn 0.251642 0.580401 0.774475
+vn 0.478652 0.580401 0.658808
+vn 0.658808 0.580401 0.478652
+vn 0.774475 0.580401 0.251642
+vn 0.814331 0.580401 0.000001
+vn 0.578712 0.698789 -0.420459
+vn 0.680318 0.698789 -0.221048
+vn 0.420459 0.698789 -0.578713
+vn 0.221049 0.698789 -0.680318
+vn -0.000000 0.698789 -0.715328
+vn -0.221049 0.698789 -0.680318
+vn -0.420459 0.698789 -0.578713
+vn -0.578713 0.698789 -0.420459
+vn -0.680318 0.698789 -0.221049
+vn -0.715328 0.698789 0.000000
+vn -0.680318 0.698788 0.221049
+vn -0.578713 0.698789 0.420460
+vn -0.420459 0.698788 0.578713
+vn -0.221049 0.698788 0.680318
+vn -0.000000 0.698788 0.715328
+vn 0.221049 0.698788 0.680318
+vn 0.420460 0.698788 0.578713
+vn 0.578713 0.698788 0.420460
+vn 0.680318 0.698788 0.221049
+vn 0.715328 0.698788 0.000001
+vn 0.485138 0.800252 -0.352474
+vn 0.570314 0.800252 -0.185306
+vn 0.352473 0.800252 -0.485139
+vn 0.185306 0.800252 -0.570314
+vn -0.000000 0.800252 -0.599664
+vn -0.185306 0.800252 -0.570314
+vn -0.352474 0.800252 -0.485138
+vn -0.485138 0.800252 -0.352474
+vn -0.570314 0.800252 -0.185306
+vn -0.599664 0.800252 0.000000
+vn -0.570314 0.800252 0.185307
+vn -0.485138 0.800252 0.352474
+vn -0.352474 0.800252 0.485138
+vn -0.185306 0.800252 0.570314
+vn -0.000000 0.800252 0.599664
+vn 0.185306 0.800252 0.570315
+vn 0.352474 0.800252 0.485139
+vn 0.485139 0.800252 0.352474
+vn 0.570314 0.800252 0.185306
+vn 0.599664 0.800252 0.000001
+vn 0.380846 0.882266 -0.276701
+vn 0.447712 0.882266 -0.145470
+vn 0.276701 0.882266 -0.380846
+vn 0.145470 0.882266 -0.447712
+vn -0.000000 0.882266 -0.470752
+vn -0.145470 0.882266 -0.447711
+vn -0.276701 0.882266 -0.380846
+vn -0.380846 0.882266 -0.276701
+vn -0.447712 0.882266 -0.145470
+vn -0.470752 0.882266 0.000000
+vn -0.447712 0.882266 0.145471
+vn -0.380846 0.882266 0.276701
+vn -0.276701 0.882266 0.380846
+vn -0.145470 0.882266 0.447712
+vn 0.000000 0.882266 0.470752
+vn 0.145470 0.882266 0.447712
+vn 0.276701 0.882266 0.380846
+vn 0.380846 0.882266 0.276701
+vn 0.447712 0.882266 0.145470
+vn 0.470752 0.882266 0.000000
+vn 0.269870 0.942723 -0.196073
+vn 0.317252 0.942722 -0.103081
+vn 0.196072 0.942722 -0.269871
+vn 0.103081 0.942723 -0.317252
+vn -0.000000 0.942723 -0.333578
+vn -0.103081 0.942723 -0.317251
+vn -0.196072 0.942723 -0.269870
+vn -0.269870 0.942723 -0.196072
+vn -0.317252 0.942722 -0.103081
+vn -0.333578 0.942722 0.000000
+vn -0.317252 0.942722 0.103082
+vn -0.269870 0.942723 0.196072
+vn -0.196072 0.942723 0.269870
+vn -0.103081 0.942722 0.317252
+vn 0.000000 0.942722 0.333578
+vn 0.103081 0.942722 0.317252
+vn 0.196072 0.942723 0.269870
+vn 0.269870 0.942722 0.196072
+vn 0.317252 0.942722 0.103081
+vn 0.333578 0.942722 0.000000
+vn 0.162096 0.979722 -0.117769
+vn 0.190555 0.979722 -0.061915
+vn 0.117769 0.979722 -0.162096
+vn 0.061915 0.979722 -0.190555
+vn -0.000000 0.979722 -0.200361
+vn -0.061915 0.979722 -0.190555
+vn -0.117769 0.979722 -0.162095
+vn -0.162096 0.979722 -0.117769
+vn -0.190555 0.979722 -0.061915
+vn -0.200361 0.979722 0.000000
+vn -0.190555 0.979722 0.061915
+vn -0.162096 0.979722 0.117769
+vn -0.117769 0.979722 0.162096
+vn -0.061915 0.979722 0.190555
+vn 0.000000 0.979722 0.200361
+vn 0.061915 0.979722 0.190555
+vn 0.117769 0.979722 0.162096
+vn 0.162096 0.979722 0.117769
+vn 0.190555 0.979722 0.061915
+vn 0.200361 0.979722 0.000001
+vn -0.000000 -1.000000 -0.000000
+vn -0.000000 1.000000 0.000000
+s 1
+usemtl lambert2SG
+f 1/1/1 2/2/2 22/23/3 21/22/4
+f 2/2/2 3/3/5 23/24/6 22/23/3
+f 3/3/5 4/4/7 24/25/8 23/24/6
+f 4/4/7 5/5/9 25/26/10 24/25/8
+f 5/5/9 6/6/11 26/27/12 25/26/10
+f 6/6/11 7/7/13 27/28/14 26/27/12
+f 7/7/13 8/8/15 28/29/16 27/28/14
+f 8/8/15 9/9/17 29/30/18 28/29/16
+f 9/9/17 10/10/19 30/31/20 29/30/18
+f 10/10/19 11/11/21 31/32/22 30/31/20
+f 11/11/21 12/12/23 32/33/24 31/32/22
+f 12/12/23 13/13/25 33/34/26 32/33/24
+f 13/13/25 14/14/27 34/35/28 33/34/26
+f 14/14/27 15/15/29 35/36/30 34/35/28
+f 15/15/29 16/16/31 36/37/32 35/36/30
+f 16/16/31 17/17/33 37/38/34 36/37/32
+f 17/17/33 18/18/35 38/39/36 37/38/34
+f 18/18/35 19/19/37 39/40/38 38/39/36
+f 19/19/37 20/20/39 40/41/40 39/40/38
+f 20/20/39 1/21/1 21/42/4 40/41/40
+f 21/22/4 22/23/3 42/44/41 41/43/42
+f 22/23/3 23/24/6 43/45/43 42/44/41
+f 23/24/6 24/25/8 44/46/44 43/45/43
+f 24/25/8 25/26/10 45/47/45 44/46/44
+f 25/26/10 26/27/12 46/48/46 45/47/45
+f 26/27/12 27/28/14 47/49/47 46/48/46
+f 27/28/14 28/29/16 48/50/48 47/49/47
+f 28/29/16 29/30/18 49/51/49 48/50/48
+f 29/30/18 30/31/20 50/52/50 49/51/49
+f 30/31/20 31/32/22 51/53/51 50/52/50
+f 31/32/22 32/33/24 52/54/52 51/53/51
+f 32/33/24 33/34/26 53/55/53 52/54/52
+f 33/34/26 34/35/28 54/56/54 53/55/53
+f 34/35/28 35/36/30 55/57/55 54/56/54
+f 35/36/30 36/37/32 56/58/56 55/57/55
+f 36/37/32 37/38/34 57/59/57 56/58/56
+f 37/38/34 38/39/36 58/60/58 57/59/57
+f 38/39/36 39/40/38 59/61/59 58/60/58
+f 39/40/38 40/41/40 60/62/60 59/61/59
+f 40/41/40 21/42/4 41/63/42 60/62/60
+f 41/43/42 42/44/41 62/65/61 61/64/62
+f 42/44/41 43/45/43 63/66/63 62/65/61
+f 43/45/43 44/46/44 64/67/64 63/66/63
+f 44/46/44 45/47/45 65/68/65 64/67/64
+f 45/47/45 46/48/46 66/69/66 65/68/65
+f 46/48/46 47/49/47 67/70/67 66/69/66
+f 47/49/47 48/50/48 68/71/68 67/70/67
+f 48/50/48 49/51/49 69/72/69 68/71/68
+f 49/51/49 50/52/50 70/73/70 69/72/69
+f 50/52/50 51/53/51 71/74/71 70/73/70
+f 51/53/51 52/54/52 72/75/72 71/74/71
+f 52/54/52 53/55/53 73/76/73 72/75/72
+f 53/55/53 54/56/54 74/77/74 73/76/73
+f 54/56/54 55/57/55 75/78/75 74/77/74
+f 55/57/55 56/58/56 76/79/76 75/78/75
+f 56/58/56 57/59/57 77/80/77 76/79/76
+f 57/59/57 58/60/58 78/81/78 77/80/77
+f 58/60/58 59/61/59 79/82/79 78/81/78
+f 59/61/59 60/62/60 80/83/80 79/82/79
+f 60/62/60 41/63/42 61/84/62 80/83/80
+f 61/64/62 62/65/61 82/86/81 81/85/82
+f 62/65/61 63/66/63 83/87/83 82/86/81
+f 63/66/63 64/67/64 84/88/84 83/87/83
+f 64/67/64 65/68/65 85/89/85 84/88/84
+f 65/68/65 66/69/66 86/90/86 85/89/85
+f 66/69/66 67/70/67 87/91/87 86/90/86
+f 67/70/67 68/71/68 88/92/88 87/91/87
+f 68/71/68 69/72/69 89/93/89 88/92/88
+f 69/72/69 70/73/70 90/94/90 89/93/89
+f 70/73/70 71/74/71 91/95/91 90/94/90
+f 71/74/71 72/75/72 92/96/92 91/95/91
+f 72/75/72 73/76/73 93/97/93 92/96/92
+f 73/76/73 74/77/74 94/98/94 93/97/93
+f 74/77/74 75/78/75 95/99/95 94/98/94
+f 75/78/75 76/79/76 96/100/96 95/99/95
+f 76/79/76 77/80/77 97/101/97 96/100/96
+f 77/80/77 78/81/78 98/102/98 97/101/97
+f 78/81/78 79/82/79 99/103/99 98/102/98
+f 79/82/79 80/83/80 100/104/100 99/103/99
+f 80/83/80 61/84/62 81/105/82 100/104/100
+f 81/85/82 82/86/81 102/107/101 101/106/102
+f 82/86/81 83/87/83 103/108/103 102/107/101
+f 83/87/83 84/88/84 104/109/104 103/108/103
+f 84/88/84 85/89/85 105/110/105 104/109/104
+f 85/89/85 86/90/86 106/111/106 105/110/105
+f 86/90/86 87/91/87 107/112/107 106/111/106
+f 87/91/87 88/92/88 108/113/108 107/112/107
+f 88/92/88 89/93/89 109/114/109 108/113/108
+f 89/93/89 90/94/90 110/115/110 109/114/109
+f 90/94/90 91/95/91 111/116/111 110/115/110
+f 91/95/91 92/96/92 112/117/112 111/116/111
+f 92/96/92 93/97/93 113/118/113 112/117/112
+f 93/97/93 94/98/94 114/119/114 113/118/113
+f 94/98/94 95/99/95 115/120/115 114/119/114
+f 95/99/95 96/100/96 116/121/116 115/120/115
+f 96/100/96 97/101/97 117/122/117 116/121/116
+f 97/101/97 98/102/98 118/123/118 117/122/117
+f 98/102/98 99/103/99 119/124/119 118/123/118
+f 99/103/99 100/104/100 120/125/120 119/124/119
+f 100/104/100 81/105/82 101/126/102 120/125/120
+f 101/106/102 102/107/101 122/128/121 121/127/122
+f 102/107/101 103/108/103 123/129/123 122/128/121
+f 103/108/103 104/109/104 124/130/124 123/129/123
+f 104/109/104 105/110/105 125/131/125 124/130/124
+f 105/110/105 106/111/106 126/132/126 125/131/125
+f 106/111/106 107/112/107 127/133/127 126/132/126
+f 107/112/107 108/113/108 128/134/128 127/133/127
+f 108/113/108 109/114/109 129/135/129 128/134/128
+f 109/114/109 110/115/110 130/136/130 129/135/129
+f 110/115/110 111/116/111 131/137/131 130/136/130
+f 111/116/111 112/117/112 132/138/132 131/137/131
+f 112/117/112 113/118/113 133/139/133 132/138/132
+f 113/118/113 114/119/114 134/140/134 133/139/133
+f 114/119/114 115/120/115 135/141/135 134/140/134
+f 115/120/115 116/121/116 136/142/136 135/141/135
+f 116/121/116 117/122/117 137/143/137 136/142/136
+f 117/122/117 118/123/118 138/144/138 137/143/137
+f 118/123/118 119/124/119 139/145/139 138/144/138
+f 119/124/119 120/125/120 140/146/140 139/145/139
+f 120/125/120 101/126/102 121/147/122 140/146/140
+f 121/127/122 122/128/121 142/149/141 141/148/142
+f 122/128/121 123/129/123 143/150/143 142/149/141
+f 123/129/123 124/130/124 144/151/144 143/150/143
+f 124/130/124 125/131/125 145/152/145 144/151/144
+f 125/131/125 126/132/126 146/153/146 145/152/145
+f 126/132/126 127/133/127 147/154/147 146/153/146
+f 127/133/127 128/134/128 148/155/148 147/154/147
+f 128/134/128 129/135/129 149/156/149 148/155/148
+f 129/135/129 130/136/130 150/157/150 149/156/149
+f 130/136/130 131/137/131 151/158/151 150/157/150
+f 131/137/131 132/138/132 152/159/152 151/158/151
+f 132/138/132 133/139/133 153/160/153 152/159/152
+f 133/139/133 134/140/134 154/161/154 153/160/153
+f 134/140/134 135/141/135 155/162/155 154/161/154
+f 135/141/135 136/142/136 156/163/156 155/162/155
+f 136/142/136 137/143/137 157/164/157 156/163/156
+f 137/143/137 138/144/138 158/165/158 157/164/157
+f 138/144/138 139/145/139 159/166/159 158/165/158
+f 139/145/139 140/146/140 160/167/160 159/166/159
+f 140/146/140 121/147/122 141/168/142 160/167/160
+f 141/148/142 142/149/141 162/170/161 161/169/162
+f 142/149/141 143/150/143 163/171/163 162/170/161
+f 143/150/143 144/151/144 164/172/164 163/171/163
+f 144/151/144 145/152/145 165/173/165 164/172/164
+f 145/152/145 146/153/146 166/174/166 165/173/165
+f 146/153/146 147/154/147 167/175/167 166/174/166
+f 147/154/147 148/155/148 168/176/168 167/175/167
+f 148/155/148 149/156/149 169/177/169 168/176/168
+f 149/156/149 150/157/150 170/178/170 169/177/169
+f 150/157/150 151/158/151 171/179/171 170/178/170
+f 151/158/151 152/159/152 172/180/172 171/179/171
+f 152/159/152 153/160/153 173/181/173 172/180/172
+f 153/160/153 154/161/154 174/182/174 173/181/173
+f 154/161/154 155/162/155 175/183/175 174/182/174
+f 155/162/155 156/163/156 176/184/176 175/183/175
+f 156/163/156 157/164/157 177/185/177 176/184/176
+f 157/164/157 158/165/158 178/186/178 177/185/177
+f 158/165/158 159/166/159 179/187/179 178/186/178
+f 159/166/159 160/167/160 180/188/180 179/187/179
+f 160/167/160 141/168/142 161/189/162 180/188/180
+f 161/169/162 162/170/161 182/191/181 181/190/182
+f 162/170/161 163/171/163 183/192/183 182/191/181
+f 163/171/163 164/172/164 184/193/184 183/192/183
+f 164/172/164 165/173/165 185/194/185 184/193/184
+f 165/173/165 166/174/166 186/195/186 185/194/185
+f 166/174/166 167/175/167 187/196/187 186/195/186
+f 167/175/167 168/176/168 188/197/188 187/196/187
+f 168/176/168 169/177/169 189/198/189 188/197/188
+f 169/177/169 170/178/170 190/199/190 189/198/189
+f 170/178/170 171/179/171 191/200/191 190/199/190
+f 171/179/171 172/180/172 192/201/192 191/200/191
+f 172/180/172 173/181/173 193/202/193 192/201/192
+f 173/181/173 174/182/174 194/203/194 193/202/193
+f 174/182/174 175/183/175 195/204/195 194/203/194
+f 175/183/175 176/184/176 196/205/196 195/204/195
+f 176/184/176 177/185/177 197/206/197 196/205/196
+f 177/185/177 178/186/178 198/207/198 197/206/197
+f 178/186/178 179/187/179 199/208/199 198/207/198
+f 179/187/179 180/188/180 200/209/200 199/208/199
+f 180/188/180 161/189/162 181/210/182 200/209/200
+f 181/190/182 182/191/181 202/212/201 201/211/202
+f 182/191/181 183/192/183 203/213/203 202/212/201
+f 183/192/183 184/193/184 204/214/204 203/213/203
+f 184/193/184 185/194/185 205/215/205 204/214/204
+f 185/194/185 186/195/186 206/216/206 205/215/205
+f 186/195/186 187/196/187 207/217/207 206/216/206
+f 187/196/187 188/197/188 208/218/208 207/217/207
+f 188/197/188 189/198/189 209/219/209 208/218/208
+f 189/198/189 190/199/190 210/220/210 209/219/209
+f 190/199/190 191/200/191 211/221/211 210/220/210
+f 191/200/191 192/201/192 212/222/212 211/221/211
+f 192/201/192 193/202/193 213/223/213 212/222/212
+f 193/202/193 194/203/194 214/224/214 213/223/213
+f 194/203/194 195/204/195 215/225/215 214/224/214
+f 195/204/195 196/205/196 216/226/216 215/225/215
+f 196/205/196 197/206/197 217/227/217 216/226/216
+f 197/206/197 198/207/198 218/228/218 217/227/217
+f 198/207/198 199/208/199 219/229/219 218/228/218
+f 199/208/199 200/209/200 220/230/220 219/229/219
+f 200/209/200 181/210/182 201/231/202 220/230/220
+f 201/211/202 202/212/201 222/233/221 221/232/222
+f 202/212/201 203/213/203 223/234/223 222/233/221
+f 203/213/203 204/214/204 224/235/224 223/234/223
+f 204/214/204 205/215/205 225/236/225 224/235/224
+f 205/215/205 206/216/206 226/237/226 225/236/225
+f 206/216/206 207/217/207 227/238/227 226/237/226
+f 207/217/207 208/218/208 228/239/228 227/238/227
+f 208/218/208 209/219/209 229/240/229 228/239/228
+f 209/219/209 210/220/210 230/241/230 229/240/229
+f 210/220/210 211/221/211 231/242/231 230/241/230
+f 211/221/211 212/222/212 232/243/232 231/242/231
+f 212/222/212 213/223/213 233/244/233 232/243/232
+f 213/223/213 214/224/214 234/245/234 233/244/233
+f 214/224/214 215/225/215 235/246/235 234/245/234
+f 215/225/215 216/226/216 236/247/236 235/246/235
+f 216/226/216 217/227/217 237/248/237 236/247/236
+f 217/227/217 218/228/218 238/249/238 237/248/237
+f 218/228/218 219/229/219 239/250/239 238/249/238
+f 219/229/219 220/230/220 240/251/240 239/250/239
+f 220/230/220 201/231/202 221/252/222 240/251/240
+f 221/232/222 222/233/221 242/254/241 241/253/242
+f 222/233/221 223/234/223 243/255/243 242/254/241
+f 223/234/223 224/235/224 244/256/244 243/255/243
+f 224/235/224 225/236/225 245/257/245 244/256/244
+f 225/236/225 226/237/226 246/258/246 245/257/245
+f 226/237/226 227/238/227 247/259/247 246/258/246
+f 227/238/227 228/239/228 248/260/248 247/259/247
+f 228/239/228 229/240/229 249/261/249 248/260/248
+f 229/240/229 230/241/230 250/262/250 249/261/249
+f 230/241/230 231/242/231 251/263/251 250/262/250
+f 231/242/231 232/243/232 252/264/252 251/263/251
+f 232/243/232 233/244/233 253/265/253 252/264/252
+f 233/244/233 234/245/234 254/266/254 253/265/253
+f 234/245/234 235/246/235 255/267/255 254/266/254
+f 235/246/235 236/247/236 256/268/256 255/267/255
+f 236/247/236 237/248/237 257/269/257 256/268/256
+f 237/248/237 238/249/238 258/270/258 257/269/257
+f 238/249/238 239/250/239 259/271/259 258/270/258
+f 239/250/239 240/251/240 260/272/260 259/271/259
+f 240/251/240 221/252/222 241/273/242 260/272/260
+f 241/253/242 242/254/241 262/275/261 261/274/262
+f 242/254/241 243/255/243 263/276/263 262/275/261
+f 243/255/243 244/256/244 264/277/264 263/276/263
+f 244/256/244 245/257/245 265/278/265 264/277/264
+f 245/257/245 246/258/246 266/279/266 265/278/265
+f 246/258/246 247/259/247 267/280/267 266/279/266
+f 247/259/247 248/260/248 268/281/268 267/280/267
+f 248/260/248 249/261/249 269/282/269 268/281/268
+f 249/261/249 250/262/250 270/283/270 269/282/269
+f 250/262/250 251/263/251 271/284/271 270/283/270
+f 251/263/251 252/264/252 272/285/272 271/284/271
+f 252/264/252 253/265/253 273/286/273 272/285/272
+f 253/265/253 254/266/254 274/287/274 273/286/273
+f 254/266/254 255/267/255 275/288/275 274/287/274
+f 255/267/255 256/268/256 276/289/276 275/288/275
+f 256/268/256 257/269/257 277/290/277 276/289/276
+f 257/269/257 258/270/258 278/291/278 277/290/277
+f 258/270/258 259/271/259 279/292/279 278/291/278
+f 259/271/259 260/272/260 280/293/280 279/292/279
+f 260/272/260 241/273/242 261/294/262 280/293/280
+f 261/274/262 262/275/261 282/296/281 281/295/282
+f 262/275/261 263/276/263 283/297/283 282/296/281
+f 263/276/263 264/277/264 284/298/284 283/297/283
+f 264/277/264 265/278/265 285/299/285 284/298/284
+f 265/278/265 266/279/266 286/300/286 285/299/285
+f 266/279/266 267/280/267 287/301/287 286/300/286
+f 267/280/267 268/281/268 288/302/288 287/301/287
+f 268/281/268 269/282/269 289/303/289 288/302/288
+f 269/282/269 270/283/270 290/304/290 289/303/289
+f 270/283/270 271/284/271 291/305/291 290/304/290
+f 271/284/271 272/285/272 292/306/292 291/305/291
+f 272/285/272 273/286/273 293/307/293 292/306/292
+f 273/286/273 274/287/274 294/308/294 293/307/293
+f 274/287/274 275/288/275 295/309/295 294/308/294
+f 275/288/275 276/289/276 296/310/296 295/309/295
+f 276/289/276 277/290/277 297/311/297 296/310/296
+f 277/290/277 278/291/278 298/312/298 297/311/297
+f 278/291/278 279/292/279 299/313/299 298/312/298
+f 279/292/279 280/293/280 300/314/300 299/313/299
+f 280/293/280 261/294/262 281/315/282 300/314/300
+f 281/295/282 282/296/281 302/317/301 301/316/302
+f 282/296/281 283/297/283 303/318/303 302/317/301
+f 283/297/283 284/298/284 304/319/304 303/318/303
+f 284/298/284 285/299/285 305/320/305 304/319/304
+f 285/299/285 286/300/286 306/321/306 305/320/305
+f 286/300/286 287/301/287 307/322/307 306/321/306
+f 287/301/287 288/302/288 308/323/308 307/322/307
+f 288/302/288 289/303/289 309/324/309 308/323/308
+f 289/303/289 290/304/290 310/325/310 309/324/309
+f 290/304/290 291/305/291 311/326/311 310/325/310
+f 291/305/291 292/306/292 312/327/312 311/326/311
+f 292/306/292 293/307/293 313/328/313 312/327/312
+f 293/307/293 294/308/294 314/329/314 313/328/313
+f 294/308/294 295/309/295 315/330/315 314/329/314
+f 295/309/295 296/310/296 316/331/316 315/330/315
+f 296/310/296 297/311/297 317/332/317 316/331/316
+f 297/311/297 298/312/298 318/333/318 317/332/317
+f 298/312/298 299/313/299 319/334/319 318/333/318
+f 299/313/299 300/314/300 320/335/320 319/334/319
+f 300/314/300 281/315/282 301/336/302 320/335/320
+f 301/316/302 302/317/301 322/338/321 321/337/322
+f 302/317/301 303/318/303 323/339/323 322/338/321
+f 303/318/303 304/319/304 324/340/324 323/339/323
+f 304/319/304 305/320/305 325/341/325 324/340/324
+f 305/320/305 306/321/306 326/342/326 325/341/325
+f 306/321/306 307/322/307 327/343/327 326/342/326
+f 307/322/307 308/323/308 328/344/328 327/343/327
+f 308/323/308 309/324/309 329/345/329 328/344/328
+f 309/324/309 310/325/310 330/346/330 329/345/329
+f 310/325/310 311/326/311 331/347/331 330/346/330
+f 311/326/311 312/327/312 332/348/332 331/347/331
+f 312/327/312 313/328/313 333/349/333 332/348/332
+f 313/328/313 314/329/314 334/350/334 333/349/333
+f 314/329/314 315/330/315 335/351/335 334/350/334
+f 315/330/315 316/331/316 336/352/336 335/351/335
+f 316/331/316 317/332/317 337/353/337 336/352/336
+f 317/332/317 318/333/318 338/354/338 337/353/337
+f 318/333/318 319/334/319 339/355/339 338/354/338
+f 319/334/319 320/335/320 340/356/340 339/355/339
+f 320/335/320 301/336/302 321/357/322 340/356/340
+f 321/337/322 322/338/321 342/359/341 341/358/342
+f 322/338/321 323/339/323 343/360/343 342/359/341
+f 323/339/323 324/340/324 344/361/344 343/360/343
+f 324/340/324 325/341/325 345/362/345 344/361/344
+f 325/341/325 326/342/326 346/363/346 345/362/345
+f 326/342/326 327/343/327 347/364/347 346/363/346
+f 327/343/327 328/344/328 348/365/348 347/364/347
+f 328/344/328 329/345/329 349/366/349 348/365/348
+f 329/345/329 330/346/330 350/367/350 349/366/349
+f 330/346/330 331/347/331 351/368/351 350/367/350
+f 331/347/331 332/348/332 352/369/352 351/368/351
+f 332/348/332 333/349/333 353/370/353 352/369/352
+f 333/349/333 334/350/334 354/371/354 353/370/353
+f 334/350/334 335/351/335 355/372/355 354/371/354
+f 335/351/335 336/352/336 356/373/356 355/372/355
+f 336/352/336 337/353/337 357/374/357 356/373/356
+f 337/353/337 338/354/338 358/375/358 357/374/357
+f 338/354/338 339/355/339 359/376/359 358/375/358
+f 339/355/339 340/356/340 360/377/360 359/376/359
+f 340/356/340 321/357/322 341/378/342 360/377/360
+f 341/358/342 342/359/341 362/380/361 361/379/362
+f 342/359/341 343/360/343 363/381/363 362/380/361
+f 343/360/343 344/361/344 364/382/364 363/381/363
+f 344/361/344 345/362/345 365/383/365 364/382/364
+f 345/362/345 346/363/346 366/384/366 365/383/365
+f 346/363/346 347/364/347 367/385/367 366/384/366
+f 347/364/347 348/365/348 368/386/368 367/385/367
+f 348/365/348 349/366/349 369/387/369 368/386/368
+f 349/366/349 350/367/350 370/388/370 369/387/369
+f 350/367/350 351/368/351 371/389/371 370/388/370
+f 351/368/351 352/369/352 372/390/372 371/389/371
+f 352/369/352 353/370/353 373/391/373 372/390/372
+f 353/370/353 354/371/354 374/392/374 373/391/373
+f 354/371/354 355/372/355 375/393/375 374/392/374
+f 355/372/355 356/373/356 376/394/376 375/393/375
+f 356/373/356 357/374/357 377/395/377 376/394/376
+f 357/374/357 358/375/358 378/396/378 377/395/377
+f 358/375/358 359/376/359 379/397/379 378/396/378
+f 359/376/359 360/377/360 380/398/380 379/397/379
+f 360/377/360 341/378/342 361/399/362 380/398/380
+f 2/2/2 1/1/1 381/400/381
+f 3/3/5 2/2/2 381/401/381
+f 4/4/7 3/3/5 381/402/381
+f 5/5/9 4/4/7 381/403/381
+f 6/6/11 5/5/9 381/404/381
+f 7/7/13 6/6/11 381/405/381
+f 8/8/15 7/7/13 381/406/381
+f 9/9/17 8/8/15 381/407/381
+f 10/10/19 9/9/17 381/408/381
+f 11/11/21 10/10/19 381/409/381
+f 12/12/23 11/11/21 381/410/381
+f 13/13/25 12/12/23 381/411/381
+f 14/14/27 13/13/25 381/412/381
+f 15/15/29 14/14/27 381/413/381
+f 16/16/31 15/15/29 381/414/381
+f 17/17/33 16/16/31 381/415/381
+f 18/18/35 17/17/33 381/416/381
+f 19/19/37 18/18/35 381/417/381
+f 20/20/39 19/19/37 381/418/381
+f 1/21/1 20/20/39 381/419/381
+f 361/379/362 362/380/361 382/420/382
+f 362/380/361 363/381/363 382/421/382
+f 363/381/363 364/382/364 382/422/382
+f 364/382/364 365/383/365 382/423/382
+f 365/383/365 366/384/366 382/424/382
+f 366/384/366 367/385/367 382/425/382
+f 367/385/367 368/386/368 382/426/382
+f 368/386/368 369/387/369 382/427/382
+f 369/387/369 370/388/370 382/428/382
+f 370/388/370 371/389/371 382/429/382
+f 371/389/371 372/390/372 382/430/382
+f 372/390/372 373/391/373 382/431/382
+f 373/391/373 374/392/374 382/432/382
+f 374/392/374 375/393/375 382/433/382
+f 375/393/375 376/394/376 382/434/382
+f 376/394/376 377/395/377 382/435/382
+f 377/395/377 378/396/378 382/436/382
+f 378/396/378 379/397/379 382/437/382
+f 379/397/379 380/398/380 382/438/382
+f 380/398/380 361/399/362 382/439/382
diff --git a/resources/models/surface_pattern_v01.obj b/resources/models/surface_pattern_v01.obj
new file mode 100755 (executable)
index 0000000..8d78c45
--- /dev/null
@@ -0,0 +1,176 @@
+# This file uses centimeters as units for non-parametric coordinates.
+
+v 41.569229 47.497040 -1.497040
+v 36.373077 50.500000 -1.500000
+v 51.961536 47.497040 -1.497040
+v 46.765385 50.500000 -1.500000
+v 62.349571 47.497536 -1.497533
+v 57.157692 50.500000 -1.500000
+v 36.373077 56.500000 -1.500000
+v 36.373077 50.500000 -1.500000
+v 46.765381 50.500000 -1.500000
+v 46.765381 56.500000 -1.500000
+v 41.569229 59.500000 -1.500000
+v 41.569229 53.500000 1.500000
+v 46.765385 56.500000 -1.500000
+v 46.765385 50.500000 -1.500000
+v 57.157688 50.500000 -1.500000
+v 57.157688 56.500000 -1.500000
+v 51.961536 59.500000 -1.500000
+v 51.961536 53.500000 1.500000
+v 57.157692 56.500000 -1.500000
+v 57.157692 50.500000 -1.500000
+v 62.353844 59.500000 -1.500000
+v 62.353844 53.500000 1.500000
+v 36.373077 56.500000 -1.500000
+v 41.569229 59.500000 -1.500000
+v 41.569229 65.500000 -1.500000
+v 36.373077 68.500000 -1.500000
+v 36.373077 62.500000 1.500000
+v 41.569233 65.500000 -1.500000
+v 41.569233 59.500000 -1.500000
+v 46.765385 56.500000 -1.500000
+v 51.961536 59.500000 -1.500000
+v 51.961536 65.500000 -1.500000
+v 46.765385 68.500000 -1.500000
+v 46.765385 62.500000 1.500000
+v 51.961540 65.500000 -1.500000
+v 51.961540 59.500000 -1.500000
+v 57.157692 56.500000 -1.500000
+v 62.353844 59.500000 -1.500000
+v 62.353844 65.500000 -1.500000
+v 57.157692 68.500000 -1.500000
+v 57.157692 62.500000 1.500000
+v 36.373077 74.500000 -1.500000
+v 36.373077 68.500000 -1.500000
+v 41.569229 65.500000 -1.500000
+v 46.765381 68.500000 -1.500000
+v 46.765381 74.500000 -1.500000
+v 41.569229 77.500000 -1.500000
+v 41.569229 71.500000 1.500000
+v 46.765385 74.500000 -1.500000
+v 46.765385 68.500000 -1.500000
+v 51.961536 65.500000 -1.500000
+v 57.157688 68.500000 -1.500000
+v 57.157688 74.500000 -1.500000
+v 51.961536 77.500000 -1.500000
+v 51.961536 71.500000 1.500000
+v 57.157692 74.500000 -1.500000
+v 57.157692 68.500000 -1.500000
+v 62.353844 65.500000 -1.500000
+v 62.353844 77.500000 -1.500000
+v 62.353844 71.500000 1.500000
+v 36.373077 74.500000 -1.500000
+v 41.569229 77.500000 -1.500000
+v 41.569229 83.500000 -1.500000
+v 36.373077 86.500000 -1.500000
+v 36.373077 80.500000 1.500000
+v 41.569233 83.500000 -1.500000
+v 41.569233 77.500000 -1.500000
+v 46.765385 74.500000 -1.500000
+v 51.961536 77.500000 -1.500000
+v 51.961536 83.500000 -1.500000
+v 46.765385 86.500000 -1.500000
+v 46.765385 80.500000 1.500000
+v 51.961540 83.500000 -1.500000
+v 51.961540 77.500000 -1.500000
+v 57.157692 74.500000 -1.500000
+v 62.353844 77.500000 -1.500000
+v 62.353844 83.500000 -1.500000
+v 57.157692 86.500000 -1.500000
+v 57.157692 80.500000 1.500000
+v 36.373077 86.500000 -1.500000
+v 41.569229 83.500000 -1.500000
+v 46.765381 86.500000 -1.500000
+v 41.569229 89.504967 1.495031
+v 46.765385 86.500000 -1.500000
+v 51.961536 83.500000 -1.500000
+v 57.157688 86.500000 -1.500000
+v 51.961540 89.504967 1.495031
+v 57.157692 86.500000 -1.500000
+v 62.353844 83.500000 -1.500000
+v 62.347389 89.503723 1.496273
+v 46.765381 89.507454 -1.500000
+v 57.157688 89.507454 -1.500000
+v 36.373077 89.507446 -1.500000
+v 46.765381 89.507446 -1.500000
+v 57.157692 89.507446 -1.500000
+v 36.373077 47.492599 0.003700
+v 46.765385 47.492599 0.003700
+v 57.157692 47.492599 0.003700
+
+f 1 2 96
+f 3 4 97
+f 4 1 97
+f 6 98 5
+f 6 3 98
+f 7 8 12
+f 8 1 12
+f 1 9 12
+f 9 10 12
+f 10 11 12
+f 11 7 12
+f 13 14 18
+f 14 3 18
+f 3 15 18
+f 15 16 18
+f 16 17 18
+f 17 13 18
+f 19 20 22
+f 20 5 22
+f 21 19 22
+f 23 24 27
+f 24 25 27
+f 25 26 27
+f 28 29 34
+f 29 30 34
+f 30 31 34
+f 31 32 34
+f 32 33 34
+f 33 28 34
+f 35 36 41
+f 36 37 41
+f 37 38 41
+f 38 39 41
+f 39 40 41
+f 40 35 41
+f 42 43 48
+f 43 44 48
+f 44 45 48
+f 45 46 48
+f 46 47 48
+f 47 42 48
+f 49 50 55
+f 50 51 55
+f 51 52 55
+f 52 53 55
+f 53 54 55
+f 54 49 55
+f 56 57 60
+f 57 58 60
+f 59 56 60
+f 61 62 65
+f 62 63 65
+f 63 64 65
+f 66 67 72
+f 67 68 72
+f 68 69 72
+f 69 70 72
+f 70 71 72
+f 71 66 72
+f 73 74 79
+f 74 75 79
+f 75 76 79
+f 76 77 79
+f 77 78 79
+f 78 73 79
+f 80 81 83
+f 81 82 83
+f 82 91 83
+f 84 85 87
+f 85 86 87
+f 86 92 87
+f 88 89 90
+f 83 93 80
+f 87 94 84
+f 90 95 88
diff --git a/resources/models/surface_pattern_v02.obj b/resources/models/surface_pattern_v02.obj
new file mode 100644 (file)
index 0000000..e153ed6
--- /dev/null
@@ -0,0 +1,250 @@
+# WaveFront *.obj file (generated by CINEMA 4D)
+
+g Plane_2
+v 1315.930042 2533.151253 120.777515
+v 731.359001 2533.151253 0
+v -427.551489 2533.151253 0
+v 154.778338 2533.151253 120.777515
+v -1012.032694 2533.151253 120.777515
+v 1315.92994 2533.151253 120.777515
+v -1590.689836 1678.225832 94.229274
+v -1012.032796 1678.225832 157.523187
+v -427.55154 1678.225832 94.229274
+v 154.778235 1678.225832 157.523187
+v 731.358898 1678.225832 94.229274
+v 1315.92994 1678.225832 157.523187
+v -1590.689836 810.079751 0
+v -1012.032796 810.079751 120.777515
+v -427.55154 810.079751 0
+v 154.778235 810.079751 120.777515
+v 731.358898 810.079751 0
+v 1315.92994 810.079751 120.777515
+v -1590.689836 -58.06633 94.229274
+v -1012.032796 -58.06633 157.523187
+v -427.55154 -58.06633 94.229274
+v 154.778235 -58.06633 157.523187
+v 731.358898 -58.06633 94.229274
+v 1315.92994 -58.06633 157.523187
+v -1590.689836 -929.240781 0
+v -1012.032796 -929.240781 120.777515
+v -427.55154 -929.996013 0
+v 154.778235 -929.240781 120.777515
+v 731.358898 -929.240781 0
+v 1315.92994 -929.240781 120.777515
+v 1315.92994 -929.240781 120.777515
+v 1315.92994 -929.240781 120.777515
+v 1315.92994 -929.240781 120.777515
+v 1315.92994 -929.240781 120.777515
+v 1315.92994 -929.240781 120.777515
+v 1315.92994 -929.240781 120.777515
+v -1590.689836 -1803.293408 94.229274
+v -1012.032796 -1803.293408 157.523187
+v -427.55154 -1803.293408 94.229274
+v 154.778235 -1803.293408 157.523187
+v 731.358898 -1803.293408 94.229274
+v 1315.92994 -1803.293408 157.523187
+v -427.55154 1367.329985 0
+v -1590.689836 1974.544079 0
+v -427.55154 1986.607668 0
+v 731.358898 1367.329985 0
+v 731.358898 1988.163735 0
+v 154.778235 2244.138997 0
+v 1315.92994 2244.138997 0
+v -1012.032796 2252.046797 0
+v -1012.032796 1115.71757 0
+v 154.778235 1119.336098 0
+v 1315.92994 1112.099043 0
+v -427.55154 254.50799 0
+v 731.358898 243.652407 0
+v 1315.92994 504.186398 0
+v 154.778235 496.949343 0
+v -1012.032796 507.804926 0
+v -1590.689836 255.677565 0
+v 1315.92994 -630.008096 0
+v 731.358898 -367.878765 0
+v -427.55154 -367.878765 0
+v -1590.689836 -354.913145 0
+v 154.778235 -624.794228 0
+v -1012.032796 -1236.3254 0
+v -1012.032796 -617.557172 0
+v -427.55154 -1492.875613 0
+v 154.778235 -1233.431212 0
+v 1315.92994 -1234.216769 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v 731.358898 -1486.623941 0
+v -1590.689836 -1496.890407 0
+v -1590.689836 1373.417683 0
+v 731.359001 3706.233193 0
+v 1315.930042 3966.767184 0
+v 154.778338 3959.530129 0
+v -1012.032694 3970.385712 0
+v -1590.689733 3718.258351 0
+v -427.551437 3717.088776 0
+v 1315.930042 2832.57269 0
+v 731.359001 3094.702021 0
+v -427.551437 3094.702021 0
+v -1590.689733 3107.667641 0
+v 154.778338 2837.786558 0
+v -1012.032694 2845.023613 0
+v -1590.689733 4272.660537 0
+v -1012.032694 4272.660537 120.777515
+v -427.551437 4272.660537 0
+v 154.778338 4272.660537 120.777515
+v 731.359001 4272.660537 0
+v 1315.930042 4272.660537 120.777515
+v -1590.689733 3404.514456 94.229274
+v -1012.032694 3404.514456 157.523187
+v -427.551437 3404.514456 94.229274
+v 154.778338 3404.514456 157.523187
+v 731.359001 3404.514456 94.229274
+v 1315.930042 3404.514456 157.523187
+v -1590.689733 2533.151253 0
+
+f 8/17 7/16 44/68 
+f 3/10 45/69 8/17 
+f 10/25 9/18 45/69 
+f 2/3 47/71 10/20 
+f 12/27 47/71 2/3 
+f 8/17 51/75 13/28 
+f 8/17 15/30 51/75 
+f 15/30 10/24 52/77 
+f 52/76 10/21 17/32 
+f 12/27 53/78 17/32 
+f 58/83 20/35 13/28 
+f 15/30 54/79 20/35 
+f 22/37 21/36 54/79 
+f 17/32 22/37 57/82 
+f 17/32 24/39 55/80 
+f 20/35 63/88 19/34 
+f 62/87 27/51 20/35 
+f 64/89 28/52 27/50 
+f 23/38 61/86 22/37 
+f 60/85 30/54 29/53 
+f 26/41 65/90 25/40 
+f 65/90 26/41 27/49 
+f 27/48 62/87 22/37 
+f 29/53 70/96 40/64 
+f 30/54 69/95 29/53 
+f 17/32 55/80 22/37 
+f 46/70 11/26 12/27 
+f 27/47 26/41 66/91 
+f 27/46 38/62 65/90 
+f 17/32 18/33 56/81 
+f 10/23 46/70 17/32 
+f 10/20 3/10 48/72 
+f 2/3 6/15 49/73 
+f 10/20 48/72 2/3 
+f 10/19 43/67 9/18 
+f 20/35 58/83 15/30 
+f 8/17 50/74 3/10 
+f 13/28 80/106 8/17 
+f 8/17 9/18 43/67 
+f 105/132 5/14 50/74 
+f 43/67 15/30 8/17 
+f 44/68 105/132 8/17 
+f 45/69 9/18 8/17 
+f 45/69 3/10 10/22 
+f 10/21 11/26 46/70 
+f 47/71 11/26 10/20 
+f 12/27 11/26 47/71 
+f 48/72 4/12 2/3 
+f 49/73 12/27 2/3 
+f 3/10 4/12 48/72 
+f 50/74 5/14 3/10 
+f 50/74 8/17 105/132 
+f 10/19 15/30 43/67 
+f 12/27 17/32 46/70 
+f 51/75 14/29 13/28 
+f 15/30 14/29 51/75 
+f 52/77 16/31 15/30 
+f 17/32 16/31 52/76 
+f 53/78 18/33 17/32 
+f 15/30 16/31 57/82 
+f 54/79 21/36 20/35 
+f 55/80 23/38 22/37 
+f 24/39 23/38 55/80 
+f 56/81 24/39 17/32 
+f 57/82 22/37 15/30 
+f 57/82 16/31 17/32 
+f 22/37 54/79 15/30 
+f 14/29 58/83 13/28 
+f 58/83 14/29 15/30 
+f 20/35 19/34 59/84 
+f 59/84 13/28 20/35 
+f 29/53 64/89 22/37 
+f 29/53 24/39 60/85 
+f 61/86 23/38 24/39 
+f 61/86 29/53 22/37 
+f 24/39 29/53 61/86 
+f 21/36 62/87 20/35 
+f 62/87 21/36 22/37 
+f 20/35 27/45 66/91 
+f 66/91 26/41 25/40 
+f 65/90 38/62 25/40 
+f 27/44 67/92 38/62 
+f 67/93 40/64 39/63 
+f 27/43 22/37 64/89 
+f 25/40 20/35 66/91 
+f 29/53 28/52 64/89 
+f 38/62 37/61 79/105 
+f 67/93 27/42 40/64 
+f 67/92 39/63 38/62 
+f 27/42 28/52 68/94 
+f 29/53 68/94 28/52 
+f 68/94 40/64 27/42 
+f 40/64 68/94 29/53
+f 29/53 42/66 70/96 
+f 69/95 42/66 29/53 
+f 70/96 41/65 40/64 
+f 42/66 41/65 70/96 
+f 79/105 25/40 38/62
+f 25/40 63/88 20/35 
+f 80/106 7/16 8/17 
+f 100/126 84/110 95/121 
+f 82/108 104/130 97/123 
+f 83/109 102/128 95/121 
+f 83/109 96/122 97/123 
+f 95/121 96/122 83/109 
+f 102/128 86/112 95/121 
+f 94/120 84/110 93/119 
+f 84/110 94/120 95/121 
+f 100/126 99/125 85/111 
+f 85/111 93/119 100/126 
+f 84/110 100/126 93/119 
+f 95/121 86/112 100/126 
+f 102/128 101/127 86/112 
+f 97/123 102/128 83/109 
+f 97/123 104/130 81/107 
+f 100/126 90/116 99/125 
+f 89/115 3/9 100/126 
+f 91/117 4/11 3/8 
+f 103/129 88/114 102/128 
+f 87/113 1/1 2/2 
+f 104/130 2/2 88/114 
+f 101/127 89/115 100/126 
+f 3/7 89/115 102/128 
+f 89/115 101/127 102/128 
+f 100/126 3/6 92/118 
+f 92/118 5/13 105/131 
+f 3/5 102/128 91/117 
+f 105/131 100/126 92/118 
+f 2/2 4/11 91/117 
+f 105/131 90/116 100/126 
+f 97/123 81/107 102/128 
+f 2/2 91/117 102/128 
+f 3/4 5/13 92/118 
+f 2/2 104/130 87/113 
+f 97/123 98/124 82/108 
+f 88/114 103/129 104/130 
+f 86/112 101/127 100/126 
+f 81/107 103/129 102/128 
+f 104/130 103/129 81/107 
+f 88/114 2/2 102/128 
+
diff --git a/resources/models/teapot.obj b/resources/models/teapot.obj
new file mode 100644 (file)
index 0000000..5804e44
--- /dev/null
@@ -0,0 +1,24249 @@
+mtllib default.mtl
+\r
+#\r
+# object Teapot001\r
+# Copyright:
+# Martin Newell modeled this teapot using bicubic Bezier patches in 1975
+# as part of an entire tea set. It first appeared in his
+# Ph.D. dissertation. Jim Blinn scaled the teapot horizontally by 1.3x
+# to cancel the effect of the rectangular pixels on their display. The
+# original had no bottom; most variations add one. Kenzie Lamar at
+# Vicarious Visions created this version from the default teapot model
+# in 3D Studio Max. He resized the top so that it fits snugly, created a
+# shell and welded the spout and handle so that the teapot is a manifold
+# without boundary, and created a unique and consistent resolution texture
+# parameterization for the entire model.
+#\r
+\r
+v  33.647778 59.807484 4.662212\r
+v  33.322739 59.872997 4.617175\r
+v  34.018166 59.610893 4.713532\r
+v  34.326466 59.610893 -0.000000\r
+v  34.417419 59.283257 4.768853\r
+v  34.729336 59.283257 -0.000000\r
+v  34.829037 58.824570 4.825887\r
+v  35.144688 58.824570 -0.000000\r
+v  35.236534 58.234821 4.882349\r
+v  35.555878 58.234821 -0.000000\r
+v  35.623421 57.514030 4.935956\r
+v  35.946266 57.514030 -0.000000\r
+v  32.758083 59.807476 9.116933\r
+v  32.441643 59.872997 9.028864\r
+v  33.118683 59.610893 9.217291\r
+v  33.507378 59.283253 9.325469\r
+v  33.908115 58.824570 9.436998\r
+v  34.304840 58.234821 9.547412\r
+v  34.681492 57.514023 9.652238\r
+v  31.321384 59.807484 13.326443\r
+v  31.018818 59.872997 13.197710\r
+v  31.666166 59.610893 13.473137\r
+v  32.037811 59.283257 13.631266\r
+v  32.420971 58.824570 13.794291\r
+v  32.800297 58.234821 13.955683\r
+v  33.160431 57.514030 14.108910\r
+v  29.375387 59.807465 17.253010\r
+v  29.091618 59.872993 17.086346\r
+v  29.698744 59.610886 17.442928\r
+v  30.047302 59.283253 17.647646\r
+v  30.406658 58.824566 17.858706\r
+v  30.762415 58.234821 18.067652\r
+v  31.100172 57.514023 18.266027\r
+v  26.957829 59.807484 20.858917\r
+v  26.697418 59.873005 20.657421\r
+v  27.254578 59.610897 21.088531\r
+v  27.574451 59.283264 21.336033\r
+v  27.904232 58.824570 21.591202\r
+v  28.230707 58.234829 21.843819\r
+v  28.540670 57.514034 22.083654\r
+v  24.106434 59.807484 24.106430\r
+v  23.873564 59.872997 23.873564\r
+v  24.371792 59.610893 24.371792\r
+v  24.657829 59.283257 24.657829\r
+v  24.952728 58.824570 24.952728\r
+v  25.244675 58.234821 25.244675\r
+v  25.521851 57.514030 25.521851\r
+v  20.858917 59.807484 26.957829\r
+v  20.657421 59.872997 26.697418\r
+v  21.088531 59.610893 27.254578\r
+v  21.336033 59.283257 27.574451\r
+v  21.591206 58.824570 27.904232\r
+v  21.843819 58.234821 28.230707\r
+v  22.083656 57.514030 28.540670\r
+v  17.253012 59.807484 29.375387\r
+v  17.086349 59.872997 29.091621\r
+v  17.442932 59.610893 29.698746\r
+v  17.647650 59.283257 30.047308\r
+v  17.858709 58.824570 30.406658\r
+v  18.067656 58.234821 30.762419\r
+v  18.266031 57.514030 31.100174\r
+v  13.326446 59.807484 31.321384\r
+v  13.197712 59.872997 31.018820\r
+v  13.473140 59.610893 31.666166\r
+v  13.631267 59.283257 32.037811\r
+v  13.794293 58.824570 32.420971\r
+v  13.955686 58.234821 32.800297\r
+v  14.108912 57.514030 33.160431\r
+v  9.116939 59.807484 32.758087\r
+v  9.028869 59.872997 32.441643\r
+v  9.217296 59.610893 33.118687\r
+v  9.325474 59.283257 33.507378\r
+v  9.437003 58.824570 33.908115\r
+v  9.547415 58.234821 34.304840\r
+v  9.652243 57.514030 34.681492\r
+v  4.662216 59.807476 33.647770\r
+v  4.617180 59.872997 33.322735\r
+v  4.713538 59.610893 34.018158\r
+v  4.768858 59.283253 34.417412\r
+v  4.825892 58.824570 34.829033\r
+v  4.882355 58.234821 35.236530\r
+v  4.935961 57.514023 35.623413\r
+v  0.000007 59.807487 33.952717\r
+v  0.000007 59.873005 33.624737\r
+v  0.000007 59.610897 34.326469\r
+v  0.000007 59.283264 34.729336\r
+v  0.000007 58.824570 35.144688\r
+v  0.000007 58.234829 35.555878\r
+v  0.000007 57.514034 35.946266\r
+v  -4.694986 59.807484 33.647778\r
+v  -4.673809 59.872997 33.322739\r
+v  -4.730313 59.610893 34.018166\r
+v  -4.775932 59.283257 34.417419\r
+v  -4.827984 58.824570 34.829037\r
+v  -4.882612 58.234821 35.236534\r
+v  -4.935956 57.514030 35.623421\r
+v  -9.171105 59.807476 32.758083\r
+v  -9.122474 59.872997 32.441643\r
+v  -9.245028 59.610893 33.118683\r
+v  -9.337171 59.283253 33.507378\r
+v  -9.440466 58.824570 33.908115\r
+v  -9.547845 58.234821 34.304840\r
+v  -9.652238 57.514023 34.681492\r
+v  -13.392262 59.807484 31.321384\r
+v  -13.311446 59.872997 31.018818\r
+v  -13.506838 59.610893 31.666166\r
+v  -13.645482 59.283257 32.037811\r
+v  -13.798502 58.824570 32.420971\r
+v  -13.956209 58.234821 32.800297\r
+v  -14.108910 57.514030 33.160431\r
+v  -17.322351 59.807465 29.375387\r
+v  -17.206167 59.872993 29.091618\r
+v  -17.478430 59.610886 29.698744\r
+v  -17.662624 59.283253 30.047302\r
+v  -17.863144 58.824566 30.406658\r
+v  -18.068207 58.234821 30.762415\r
+v  -18.266027 57.514023 31.100172\r
+v  -20.925278 59.807484 26.957829\r
+v  -20.772095 59.873005 26.697418\r
+v  -21.122507 59.610897 27.254578\r
+v  -21.350367 59.283264 27.574451\r
+v  -21.595449 58.824570 27.904232\r
+v  -21.844349 58.234829 28.230707\r
+v  -22.083654 57.514034 28.540670\r
+v  -24.164936 59.807484 24.106434\r
+v  -23.974663 59.872997 23.873564\r
+v  -24.401747 59.610893 24.371792\r
+v  -24.670464 59.283257 24.657829\r
+v  -24.956474 58.824570 24.952728\r
+v  -25.245144 58.234821 25.244675\r
+v  -25.521851 57.514030 25.521851\r
+v  -27.005232 59.807484 20.858917\r
+v  -26.779327 59.872997 20.657421\r
+v  -27.278845 59.610893 21.088531\r
+v  -27.584690 59.283257 21.336033\r
+v  -27.907265 58.824570 21.591206\r
+v  -28.231087 58.234821 21.843819\r
+v  -28.540670 57.514030 22.083656\r
+v  -29.410057 59.807484 17.253012\r
+v  -29.151533 59.872997 17.086349\r
+v  -29.716497 59.610893 17.442932\r
+v  -30.054794 59.283257 17.647650\r
+v  -30.408878 58.824570 17.858709\r
+v  -30.762695 58.234821 18.067656\r
+v  -31.100174 57.514030 18.266031\r
+v  -31.343325 59.807484 13.326446\r
+v  -31.056732 59.872997 13.197712\r
+v  -31.677399 59.610893 13.473140\r
+v  -32.042549 59.283257 13.631267\r
+v  -32.422379 58.824570 13.794293\r
+v  -32.800472 58.234821 13.955686\r
+v  -33.160431 57.514030 14.108912\r
+v  -32.768917 59.807484 9.116939\r
+v  -32.460365 59.872997 9.028869\r
+v  -33.124229 59.610893 9.217296\r
+v  -33.509716 59.283257 9.325474\r
+v  -33.908810 58.824570 9.437003\r
+v  -34.304924 58.234821 9.547415\r
+v  -34.681492 57.514030 9.652243\r
+v  -33.650749 59.807476 4.662216\r
+v  -33.327881 59.872997 4.617180\r
+v  -34.019684 59.610893 4.713538\r
+v  -34.418056 59.283253 4.768858\r
+v  -34.829224 58.824570 4.825892\r
+v  -35.236557 58.234821 4.882355\r
+v  -35.623413 57.514023 4.935961\r
+v  -33.952717 59.807487 -0.000000\r
+v  -33.624737 59.873005 -0.000000\r
+v  -34.326469 59.610897 -0.000000\r
+v  -34.729336 59.283264 -0.000000\r
+v  -35.144688 58.824570 -0.000000\r
+v  -35.555878 58.234829 -0.000000\r
+v  -35.946266 57.514034 -0.000000\r
+v  37.104298 54.369774 5.141145\r
+v  37.440563 54.369774 -0.000000\r
+v  38.564548 51.231747 5.343476\r
+v  39.983578 48.106216 5.540095\r
+v  41.340752 44.999401 5.728146\r
+v  42.615479 41.917545 5.904770\r
+v  43.787121 38.866901 6.067112\r
+v  44.835064 35.853699 6.212314\r
+v  45.241398 35.853699 -0.000000\r
+v  36.123207 54.369774 10.053484\r
+v  37.544853 51.231747 10.449143\r
+v  38.926357 48.106213 10.833631\r
+v  40.247650 44.999393 11.201362\r
+v  41.488667 41.917545 11.546751\r
+v  42.629330 38.866898 11.864209\r
+v  43.649567 35.853691 12.148153\r
+v  44.529316 32.884178 12.392997\r
+v  45.248501 29.964581 12.593154\r
+v  45.787056 27.101156 12.743039\r
+v  46.124908 24.300135 12.837067\r
+v  46.241985 21.567759 12.869651\r
+v  34.538918 54.369774 14.695420\r
+v  35.898209 51.231747 15.273766\r
+v  37.219128 48.106216 15.835781\r
+v  38.482468 44.999393 16.373302\r
+v  39.669064 41.917545 16.878164\r
+v  40.759697 38.866901 17.342201\r
+v  41.735195 35.853699 17.757248\r
+v  42.576355 32.884178 18.115141\r
+v  43.264000 29.964584 18.407717\r
+v  43.778934 27.101158 18.626810\r
+v  44.101963 24.300135 18.764252\r
+v  44.213909 21.567759 18.811878\r
+v  32.393013 54.369774 19.025351\r
+v  33.667854 51.231747 19.774101\r
+v  34.906708 48.106213 20.501713\r
+v  36.091557 44.999386 21.197611\r
+v  37.204422 41.917542 21.851229\r
+v  38.227299 38.866894 22.451994\r
+v  39.142185 35.853691 22.989332\r
+v  39.931087 32.884178 23.452677\r
+v  40.576008 29.964581 23.831457\r
+v  41.058945 27.101156 24.115103\r
+v  41.361908 24.300135 24.293045\r
+v  41.466896 21.567759 24.354704\r
+v  29.727114 54.369778 23.001680\r
+v  30.897034 51.231758 23.906919\r
+v  32.033928 48.106216 24.786606\r
+v  33.121265 44.999401 25.627945\r
+v  34.142544 41.917553 26.418175\r
+v  35.081242 38.866901 27.144495\r
+v  35.920830 35.853699 27.794140\r
+v  36.644814 32.884182 28.354324\r
+v  37.236656 29.964584 28.812269\r
+v  37.679852 27.101158 29.155201\r
+v  37.957882 24.300138 29.370325\r
+v  38.054226 21.567760 29.444876\r
+v  26.582798 54.369774 26.582798\r
+v  27.628977 51.231747 27.628977\r
+v  28.645618 48.106216 28.645618\r
+v  29.617949 44.999393 29.617949\r
+v  30.531204 41.917545 30.531204\r
+v  31.370609 38.866901 31.370609\r
+v  32.121395 35.853699 32.121395\r
+v  32.768795 32.884178 32.768795\r
+v  33.298035 29.964584 33.298035\r
+v  33.694359 27.101158 33.694359\r
+v  33.942982 24.300138 33.942982\r
+v  34.029133 21.567760 34.029133\r
+v  23.001680 54.369774 29.727114\r
+v  23.906919 51.231747 30.897032\r
+v  24.786606 48.106216 32.033928\r
+v  25.627945 44.999401 33.121265\r
+v  26.418171 41.917545 34.142544\r
+v  27.144495 38.866901 35.081238\r
+v  27.794140 35.853699 35.920830\r
+v  28.354324 32.884178 36.644806\r
+v  28.812269 29.964584 37.236656\r
+v  29.155201 27.101156 37.679848\r
+v  29.370325 24.300138 37.957878\r
+v  29.444876 21.567760 38.054226\r
+v  19.025354 54.369774 32.393017\r
+v  19.774105 51.231747 33.667862\r
+v  20.501720 48.106216 34.906708\r
+v  21.197615 44.999393 36.091560\r
+v  21.851233 41.917545 37.204426\r
+v  22.451998 38.866901 38.227303\r
+v  22.989336 35.853699 39.142189\r
+v  23.452682 32.884178 39.931087\r
+v  23.831461 29.964584 40.576012\r
+v  24.115108 27.101158 41.058956\r
+v  24.293045 24.300138 41.361916\r
+v  24.354708 21.567760 41.466900\r
+v  14.695426 54.369774 34.538918\r
+v  15.273769 51.231747 35.898209\r
+v  15.835786 48.106216 37.219128\r
+v  16.373304 44.999393 38.482468\r
+v  16.878166 41.917545 39.669064\r
+v  17.342207 38.866898 40.759697\r
+v  17.757254 35.853699 41.735195\r
+v  18.115145 32.884178 42.576355\r
+v  18.407721 29.964581 43.264000\r
+v  18.626810 27.101156 43.778934\r
+v  18.764254 24.300138 44.101963\r
+v  18.811884 21.567760 44.213909\r
+v  10.053489 54.369774 36.123211\r
+v  10.449148 51.231747 37.544853\r
+v  10.833637 48.106216 38.926357\r
+v  11.201367 44.999393 40.247650\r
+v  11.546757 41.917545 41.488667\r
+v  11.864216 38.866898 42.629330\r
+v  12.148159 35.853699 43.649574\r
+v  12.393004 32.884178 44.529316\r
+v  12.593160 29.964581 45.248508\r
+v  12.743047 27.101156 45.787060\r
+v  12.837073 24.300135 46.124912\r
+v  12.869658 21.567759 46.241985\r
+v  5.141150 54.369774 37.104290\r
+v  5.343482 51.231747 38.564541\r
+v  5.540102 48.106213 39.983574\r
+v  5.728151 44.999393 41.340752\r
+v  5.904776 41.917545 42.615475\r
+v  6.067119 38.866901 43.787117\r
+v  6.212322 35.853699 44.835064\r
+v  6.337529 32.884178 45.738708\r
+v  6.439886 29.964581 46.477425\r
+v  6.516534 27.101156 47.030609\r
+v  6.564618 24.300138 47.377632\r
+v  6.581281 21.567760 47.497890\r
+v  0.000007 54.369778 37.440563\r
+v  0.000008 51.231750 38.914051\r
+v  0.000008 48.106216 40.345940\r
+v  0.000008 44.999397 41.715416\r
+v  0.000009 41.917553 43.001694\r
+v  0.000009 38.866901 44.183952\r
+v  0.000009 35.853699 45.241398\r
+v  0.000009 32.884178 46.153229\r
+v  0.000009 29.964584 46.898643\r
+v  0.000010 27.101158 47.456837\r
+v  0.000010 24.300135 47.807007\r
+v  0.000010 21.567759 47.928356\r
+v  -5.141145 54.369774 37.104298\r
+v  -5.343476 51.231747 38.564548\r
+v  -5.540095 48.106216 39.983578\r
+v  -5.728146 44.999401 41.340752\r
+v  -5.904770 41.917545 42.615479\r
+v  -6.067112 38.866901 43.787121\r
+v  -6.212314 35.853699 44.835064\r
+v  -6.337523 32.884182 45.738712\r
+v  -6.439879 29.964586 46.477436\r
+v  -6.516528 27.101158 47.030609\r
+v  -6.564611 24.300138 47.377636\r
+v  -6.581274 21.567760 47.497890\r
+v  -10.053484 54.369774 36.123207\r
+v  -10.449143 51.231747 37.544853\r
+v  -10.833631 48.106213 38.926357\r
+v  -11.201362 44.999393 40.247650\r
+v  -11.546751 41.917545 41.488667\r
+v  -11.864209 38.866898 42.629330\r
+v  -12.148153 35.853691 43.649567\r
+v  -12.392997 32.884178 44.529316\r
+v  -12.593154 29.964581 45.248501\r
+v  -12.743039 27.101156 45.787056\r
+v  -12.837067 24.300135 46.124908\r
+v  -12.869651 21.567759 46.241985\r
+v  -14.695420 54.369774 34.538918\r
+v  -15.273766 51.231747 35.898209\r
+v  -15.835781 48.106216 37.219128\r
+v  -16.373302 44.999393 38.482468\r
+v  -16.878164 41.917545 39.669064\r
+v  -17.342201 38.866901 40.759697\r
+v  -17.757248 35.853699 41.735195\r
+v  -18.115141 32.884178 42.576355\r
+v  -18.407717 29.964584 43.264000\r
+v  -18.626810 27.101158 43.778934\r
+v  -18.764252 24.300135 44.101963\r
+v  -18.811878 21.567759 44.213909\r
+v  -19.025351 54.369774 32.393013\r
+v  -19.774101 51.231747 33.667854\r
+v  -20.501713 48.106213 34.906708\r
+v  -21.197611 44.999386 36.091557\r
+v  -21.851229 41.917542 37.204422\r
+v  -22.451994 38.866894 38.227299\r
+v  -22.989332 35.853691 39.142185\r
+v  -23.452677 32.884178 39.931087\r
+v  -23.831457 29.964581 40.576008\r
+v  -24.115103 27.101156 41.058945\r
+v  -24.293045 24.300135 41.361908\r
+v  -24.354704 21.567759 41.466896\r
+v  -23.001680 54.369778 29.727114\r
+v  -23.906919 51.231758 30.897034\r
+v  -24.786606 48.106216 32.033928\r
+v  -25.627945 44.999401 33.121265\r
+v  -26.418175 41.917553 34.142544\r
+v  -27.144495 38.866901 35.081242\r
+v  -27.794140 35.853699 35.920830\r
+v  -28.354324 32.884182 36.644814\r
+v  -28.812269 29.964584 37.236656\r
+v  -29.155201 27.101158 37.679852\r
+v  -29.370325 24.300138 37.957882\r
+v  -29.444876 21.567760 38.054226\r
+v  -26.582798 54.369774 26.582798\r
+v  -27.628977 51.231747 27.628977\r
+v  -28.645618 48.106216 28.645618\r
+v  -29.617949 44.999393 29.617949\r
+v  -30.531204 41.917545 30.531204\r
+v  -31.370609 38.866901 31.370609\r
+v  -32.121395 35.853699 32.121395\r
+v  -32.768795 32.884178 32.768795\r
+v  -33.298035 29.964584 33.298035\r
+v  -33.694359 27.101158 33.694359\r
+v  -33.942982 24.300138 33.942982\r
+v  -34.029133 21.567760 34.029133\r
+v  -29.727114 54.369774 23.001680\r
+v  -30.897032 51.231747 23.906919\r
+v  -32.033928 48.106216 24.786606\r
+v  -33.121265 44.999401 25.627945\r
+v  -34.142544 41.917545 26.418171\r
+v  -35.081238 38.866901 27.144495\r
+v  -35.920830 35.853699 27.794140\r
+v  -36.644806 32.884178 28.354324\r
+v  -37.236656 29.964584 28.812269\r
+v  -37.679848 27.101156 29.155201\r
+v  -37.957878 24.300138 29.370325\r
+v  -38.054226 21.567760 29.444876\r
+v  -32.393017 54.369774 19.025354\r
+v  -33.667862 51.231747 19.774105\r
+v  -34.906708 48.106216 20.501720\r
+v  -36.091560 44.999393 21.197615\r
+v  -37.204426 41.917545 21.851233\r
+v  -38.227303 38.866901 22.451998\r
+v  -39.142189 35.853699 22.989336\r
+v  -39.931087 32.884178 23.452682\r
+v  -40.576012 29.964584 23.831461\r
+v  -41.058956 27.101158 24.115108\r
+v  -41.361916 24.300138 24.293045\r
+v  -41.466900 21.567760 24.354708\r
+v  -34.538918 54.369774 14.695426\r
+v  -35.898209 51.231747 15.273769\r
+v  -37.219128 48.106216 15.835786\r
+v  -38.482468 44.999393 16.373304\r
+v  -39.669064 41.917545 16.878166\r
+v  -40.759697 38.866898 17.342207\r
+v  -41.735195 35.853699 17.757254\r
+v  -42.576355 32.884178 18.115145\r
+v  -43.264000 29.964581 18.407721\r
+v  -43.778934 27.101156 18.626810\r
+v  -44.101963 24.300138 18.764254\r
+v  -44.213909 21.567760 18.811884\r
+v  -36.123211 54.369774 10.053489\r
+v  -37.544853 51.231747 10.449148\r
+v  -38.926357 48.106216 10.833637\r
+v  -40.247650 44.999393 11.201367\r
+v  -41.488667 41.917545 11.546757\r
+v  -42.629330 38.866898 11.864216\r
+v  -43.649574 35.853699 12.148159\r
+v  -44.529316 32.884178 12.393004\r
+v  -45.248508 29.964581 12.593160\r
+v  -45.787060 27.101156 12.743047\r
+v  -46.124912 24.300135 12.837073\r
+v  -46.241985 21.567759 12.869658\r
+v  -37.104290 54.369774 5.141150\r
+v  -39.983574 48.106213 5.540102\r
+v  -41.340752 44.999393 5.728151\r
+v  -42.615475 41.917545 5.904776\r
+v  -43.787117 38.866901 6.067119\r
+v  -44.835064 35.853699 6.212322\r
+v  -45.738708 32.884178 6.337529\r
+v  -46.477425 29.964581 6.439886\r
+v  -47.030609 27.101156 6.516534\r
+v  -47.377632 24.300138 6.564618\r
+v  -47.497890 21.567760 6.581281\r
+v  -37.440563 54.369778 -0.000000\r
+v  -40.345940 48.106216 -0.000000\r
+v  -41.715416 44.999397 -0.000000\r
+v  -43.001694 41.917553 -0.000000\r
+v  -44.183952 38.866901 -0.000000\r
+v  -45.241398 35.853699 -0.000000\r
+v  -46.153229 32.884178 -0.000000\r
+v  -46.898643 29.964584 -0.000000\r
+v  -47.456837 27.101158 -0.000000\r
+v  -47.807007 24.300135 -0.000000\r
+v  46.618301 16.616825 6.459398\r
+v  45.642506 14.462756 6.324193\r
+v  46.056156 14.462756 -0.000000\r
+v  44.419323 12.514625 6.154709\r
+v  43.031223 10.766197 5.962375\r
+v  41.560654 9.211231 5.758615\r
+v  40.090088 7.843483 5.554854\r
+v  38.701988 6.656717 5.362520\r
+v  37.478806 5.644688 5.193037\r
+v  37.818470 5.644688 -0.000000\r
+v  36.503010 4.801157 5.057831\r
+v  36.833832 4.801157 -0.000000\r
+v  35.857063 4.119884 4.968328\r
+v  35.623421 3.594627 4.935956\r
+v  35.946266 3.594627 -0.000000\r
+v  46.014530 18.983080 12.806345\r
+v  45.385651 16.616825 12.631323\r
+v  44.435658 14.462756 12.366929\r
+v  43.244812 12.514625 12.035506\r
+v  41.893414 10.766196 11.659397\r
+v  40.461735 9.211230 11.260944\r
+v  39.030056 7.843483 10.862492\r
+v  37.678658 6.656716 10.486382\r
+v  36.487820 5.644688 10.154959\r
+v  35.537827 4.801157 9.890565\r
+v  34.908958 4.119884 9.715544\r
+v  34.681492 3.594626 9.652238\r
+v  43.996426 18.983080 18.719345\r
+v  43.395134 16.616825 18.463511\r
+v  42.486801 14.462756 18.077042\r
+v  41.348186 12.514625 17.592590\r
+v  40.056061 10.766196 17.042824\r
+v  38.687168 9.211230 16.460394\r
+v  37.318279 7.843483 15.877967\r
+v  36.026146 6.656716 15.328197\r
+v  34.887535 5.644688 14.843750\r
+v  33.979206 4.801157 14.457279\r
+v  33.377922 4.119884 14.201446\r
+v  33.160431 3.594627 14.108910\r
+v  41.262920 18.983080 24.234907\r
+v  40.698986 16.616825 23.903692\r
+v  39.847095 14.462756 23.403347\r
+v  38.779217 12.514625 22.776155\r
+v  37.567375 10.766196 22.064405\r
+v  36.283531 9.211230 21.310366\r
+v  34.999691 7.843483 20.556332\r
+v  33.787842 6.656716 19.844574\r
+v  32.719971 5.644688 19.217384\r
+v  31.868082 4.801157 18.717041\r
+v  31.304150 4.119884 18.385828\r
+v  31.100172 3.594626 18.266027\r
+v  37.867046 18.983082 29.300041\r
+v  37.349522 16.616825 28.899599\r
+v  36.567734 14.462756 28.294683\r
+v  35.587746 12.514625 27.536409\r
+v  34.475636 10.766197 26.675900\r
+v  33.297447 9.211231 25.764263\r
+v  32.119263 7.843483 24.852631\r
+v  31.007147 6.656717 23.992121\r
+v  30.027161 5.644688 23.233847\r
+v  29.245382 4.801157 22.628931\r
+v  28.727856 4.119884 22.228493\r
+v  28.540670 3.594627 22.083654\r
+v  33.861748 18.983082 33.861748\r
+v  33.398964 16.616825 33.398964\r
+v  32.699871 14.462756 32.699871\r
+v  31.823540 12.514625 31.823540\r
+v  30.829054 10.766197 30.829054\r
+v  29.775494 9.211231 29.775494\r
+v  28.721928 7.843483 28.721928\r
+v  27.727442 6.656717 27.727442\r
+v  26.851114 5.644688 26.851114\r
+v  26.152021 4.801157 26.152021\r
+v  25.689240 4.119884 25.689240\r
+v  25.521851 3.594627 25.521851\r
+v  29.300041 18.983082 37.867043\r
+v  28.899599 16.616825 37.349514\r
+v  28.294683 14.462756 36.567726\r
+v  27.536409 12.514625 35.587742\r
+v  26.675900 10.766197 34.475636\r
+v  25.764267 9.211231 33.297447\r
+v  24.852631 7.843483 32.119263\r
+v  23.992121 6.656717 31.007145\r
+v  23.233847 5.644688 30.027161\r
+v  22.628931 4.801157 29.245382\r
+v  22.228495 4.119884 28.727856\r
+v  22.083656 3.594627 28.540670\r
+v  24.234909 18.983082 41.262928\r
+v  23.903692 16.616825 40.698994\r
+v  23.403353 14.462756 39.847099\r
+v  22.776157 12.514625 38.779228\r
+v  22.064407 10.766197 37.567383\r
+v  21.310369 9.211231 36.283535\r
+v  20.556332 7.843483 34.999695\r
+v  19.844578 6.656717 33.787846\r
+v  19.217386 5.644688 32.719975\r
+v  18.717045 4.801157 31.868082\r
+v  18.385832 4.119884 31.304153\r
+v  18.266031 3.594627 31.100174\r
+v  18.719349 18.983082 43.996426\r
+v  18.463514 16.616825 43.395134\r
+v  18.077044 14.462756 42.486801\r
+v  17.592594 12.514625 41.348186\r
+v  17.042826 10.766197 40.056061\r
+v  16.460398 9.211231 38.687168\r
+v  15.877970 7.843483 37.318279\r
+v  15.328202 6.656717 36.026146\r
+v  14.843753 5.644688 34.887535\r
+v  14.457282 4.801157 33.979206\r
+v  14.201448 4.119884 33.377922\r
+v  14.108912 3.594627 33.160431\r
+v  12.806354 18.983080 46.014530\r
+v  12.631330 16.616825 45.385651\r
+v  12.366937 14.462756 44.435661\r
+v  12.035512 12.514625 43.244812\r
+v  11.659403 10.766196 41.893421\r
+v  11.260950 9.211230 40.461735\r
+v  10.862497 7.843483 39.030056\r
+v  10.486387 6.656716 37.678658\r
+v  10.154963 5.644688 36.487820\r
+v  9.890569 4.801157 35.537827\r
+v  9.715548 4.119884 34.908958\r
+v  9.652243 3.594627 34.681492\r
+v  6.548908 18.983082 47.264248\r
+v  6.459405 16.616825 46.618294\r
+v  6.324201 14.462756 45.642502\r
+v  6.154716 12.514625 44.419312\r
+v  5.962382 10.766197 43.031219\r
+v  5.758621 9.211231 41.560650\r
+v  5.554860 7.843483 40.090088\r
+v  5.362525 6.656717 38.701984\r
+v  5.193042 5.644688 37.478802\r
+v  5.057836 4.801157 36.503010\r
+v  4.968334 4.119884 35.857056\r
+v  4.935961 3.594626 35.623413\r
+v  0.000010 18.983080 47.692604\r
+v  0.000009 16.616825 47.040791\r
+v  0.000009 14.462756 46.056156\r
+v  0.000009 12.514625 44.821884\r
+v  0.000009 10.766196 43.421204\r
+v  0.000008 9.211230 41.937313\r
+v  0.000008 7.843483 40.453419\r
+v  0.000008 6.656716 39.052734\r
+v  0.000008 5.644688 37.818470\r
+v  0.000007 4.801157 36.833832\r
+v  0.000007 4.119884 36.182026\r
+v  0.000007 3.594627 35.946266\r
+v  -6.548901 18.983082 47.264252\r
+v  -6.459398 16.616825 46.618301\r
+v  -6.324193 14.462756 45.642506\r
+v  -6.154709 12.514625 44.419323\r
+v  -5.962375 10.766197 43.031223\r
+v  -5.758615 9.211231 41.560654\r
+v  -5.554854 7.843483 40.090088\r
+v  -5.362520 6.656717 38.701988\r
+v  -5.193037 5.644688 37.478806\r
+v  -5.057831 4.801157 36.503010\r
+v  -4.968328 4.119884 35.857063\r
+v  -4.935956 3.594627 35.623421\r
+v  -12.806345 18.983080 46.014530\r
+v  -12.631323 16.616825 45.385651\r
+v  -12.366929 14.462756 44.435658\r
+v  -12.035506 12.514625 43.244812\r
+v  -11.659397 10.766196 41.893414\r
+v  -11.260944 9.211230 40.461735\r
+v  -10.862492 7.843483 39.030056\r
+v  -10.486382 6.656716 37.678658\r
+v  -10.154959 5.644688 36.487820\r
+v  -9.890565 4.801157 35.537827\r
+v  -9.715544 4.119884 34.908958\r
+v  -9.652238 3.594626 34.681492\r
+v  -18.719345 18.983080 43.996426\r
+v  -18.463511 16.616825 43.395134\r
+v  -18.077042 14.462756 42.486801\r
+v  -17.592590 12.514625 41.348186\r
+v  -17.042824 10.766196 40.056061\r
+v  -16.460394 9.211230 38.687168\r
+v  -15.877967 7.843483 37.318279\r
+v  -15.328197 6.656716 36.026146\r
+v  -14.843750 5.644688 34.887535\r
+v  -14.457279 4.801157 33.979206\r
+v  -14.201446 4.119884 33.377922\r
+v  -14.108910 3.594627 33.160431\r
+v  -24.234907 18.983080 41.262920\r
+v  -23.903692 16.616825 40.698986\r
+v  -23.403347 14.462756 39.847095\r
+v  -22.776155 12.514625 38.779217\r
+v  -22.064405 10.766196 37.567375\r
+v  -21.310366 9.211230 36.283531\r
+v  -20.556332 7.843483 34.999691\r
+v  -19.844574 6.656716 33.787842\r
+v  -19.217384 5.644688 32.719971\r
+v  -18.717041 4.801157 31.868082\r
+v  -18.385828 4.119884 31.304150\r
+v  -18.266027 3.594626 31.100172\r
+v  -29.300041 18.983082 37.867046\r
+v  -28.899599 16.616825 37.349522\r
+v  -28.294683 14.462756 36.567734\r
+v  -27.536409 12.514625 35.587746\r
+v  -26.675900 10.766197 34.475636\r
+v  -25.764263 9.211231 33.297447\r
+v  -24.852631 7.843483 32.119263\r
+v  -23.992121 6.656717 31.007147\r
+v  -23.233847 5.644688 30.027161\r
+v  -22.628931 4.801157 29.245382\r
+v  -22.228493 4.119884 28.727856\r
+v  -22.083654 3.594627 28.540670\r
+v  -33.861748 18.983082 33.861748\r
+v  -33.398964 16.616825 33.398964\r
+v  -32.699871 14.462756 32.699871\r
+v  -31.823540 12.514625 31.823540\r
+v  -30.829054 10.766197 30.829054\r
+v  -29.775494 9.211231 29.775494\r
+v  -28.721928 7.843483 28.721928\r
+v  -27.727442 6.656717 27.727442\r
+v  -26.851114 5.644688 26.851114\r
+v  -26.152021 4.801157 26.152021\r
+v  -25.689240 4.119884 25.689240\r
+v  -25.521851 3.594627 25.521851\r
+v  -37.867043 18.983082 29.300041\r
+v  -37.349514 16.616825 28.899599\r
+v  -36.567726 14.462756 28.294683\r
+v  -35.587742 12.514625 27.536409\r
+v  -34.475636 10.766197 26.675900\r
+v  -33.297447 9.211231 25.764267\r
+v  -32.119263 7.843483 24.852631\r
+v  -31.007145 6.656717 23.992121\r
+v  -30.027161 5.644688 23.233847\r
+v  -29.245382 4.801157 22.628931\r
+v  -28.727856 4.119884 22.228495\r
+v  -28.540670 3.594627 22.083656\r
+v  -41.262928 18.983082 24.234909\r
+v  -40.698994 16.616825 23.903692\r
+v  -39.847099 14.462756 23.403353\r
+v  -38.779228 12.514625 22.776157\r
+v  -37.567383 10.766197 22.064407\r
+v  -36.283535 9.211231 21.310369\r
+v  -34.999695 7.843483 20.556332\r
+v  -33.787846 6.656717 19.844578\r
+v  -32.719975 5.644688 19.217386\r
+v  -31.868082 4.801157 18.717045\r
+v  -31.304153 4.119884 18.385832\r
+v  -31.100174 3.594627 18.266031\r
+v  -43.996426 18.983082 18.719349\r
+v  -43.395134 16.616825 18.463514\r
+v  -42.486801 14.462756 18.077044\r
+v  -41.348186 12.514625 17.592594\r
+v  -40.056061 10.766197 17.042826\r
+v  -38.687168 9.211231 16.460398\r
+v  -37.318279 7.843483 15.877970\r
+v  -36.026146 6.656717 15.328202\r
+v  -34.887535 5.644688 14.843753\r
+v  -33.979206 4.801157 14.457282\r
+v  -33.377922 4.119884 14.201448\r
+v  -33.160431 3.594627 14.108912\r
+v  -46.014530 18.983080 12.806354\r
+v  -45.385651 16.616825 12.631330\r
+v  -44.435661 14.462756 12.366937\r
+v  -43.244812 12.514625 12.035512\r
+v  -41.893421 10.766196 11.659403\r
+v  -40.461735 9.211230 11.260950\r
+v  -39.030056 7.843483 10.862497\r
+v  -37.678658 6.656716 10.486387\r
+v  -36.487820 5.644688 10.154963\r
+v  -35.537827 4.801157 9.890569\r
+v  -34.908958 4.119884 9.715548\r
+v  -34.681492 3.594627 9.652243\r
+v  -47.264248 18.983082 6.548908\r
+v  -46.618294 16.616825 6.459405\r
+v  -45.642502 14.462756 6.324201\r
+v  -44.419312 12.514625 6.154716\r
+v  -43.031219 10.766197 5.962382\r
+v  -41.560650 9.211231 5.758621\r
+v  -40.090088 7.843483 5.554860\r
+v  -38.701984 6.656717 5.362525\r
+v  -37.478802 5.644688 5.193042\r
+v  -36.503010 4.801157 5.057836\r
+v  -35.857056 4.119884 4.968334\r
+v  -35.623413 3.594626 4.935961\r
+v  -46.056156 14.462756 -0.000000\r
+v  -44.821884 12.514625 -0.000000\r
+v  -43.421204 10.766196 -0.000000\r
+v  -41.937313 9.211230 -0.000000\r
+v  -40.453419 7.843483 -0.000000\r
+v  -39.052734 6.656716 -0.000000\r
+v  -37.818470 5.644688 -0.000000\r
+v  -36.833832 4.801157 -0.000000\r
+v  -36.182026 4.119884 -0.000000\r
+v  -35.946266 3.594627 -0.000000\r
+v  35.568790 3.146339 4.928387\r
+v  35.334801 2.704291 4.895965\r
+v  34.816326 2.274725 4.824125\r
+v  35.131859 2.274725 -0.000000\r
+v  33.908211 1.863880 4.698298\r
+v  32.505341 1.477999 4.503916\r
+v  30.502554 1.123321 4.226412\r
+v  27.794718 0.806087 3.851217\r
+v  24.276701 0.532537 3.363762\r
+v  19.843359 0.308913 2.749482\r
+v  14.389556 0.141455 1.993807\r
+v  14.519968 0.141455 -0.000000\r
+v  7.810153 0.036404 1.082169\r
+v  7.880936 0.036404 -0.000000\r
+v  34.628307 3.146338 9.637437\r
+v  34.400505 2.704291 9.574037\r
+v  33.895737 2.274725 9.433555\r
+v  33.011635 1.863880 9.187500\r
+v  31.645857 1.477999 8.807388\r
+v  29.696024 1.123321 8.264729\r
+v  27.059790 0.806087 7.531036\r
+v  23.634796 0.532537 6.577822\r
+v  19.318676 0.308913 5.376599\r
+v  14.009078 0.141455 3.898880\r
+v  7.603642 0.036404 2.116177\r
+v  33.109577 3.146339 14.087273\r
+v  32.891766 2.704291 13.994600\r
+v  32.409138 2.274725 13.789255\r
+v  31.563812 1.863880 13.429590\r
+v  30.257933 1.477999 12.873972\r
+v  28.393620 1.123321 12.080754\r
+v  25.873001 0.806087 11.008297\r
+v  22.598221 0.532537 9.614961\r
+v  18.471399 0.308913 7.859105\r
+v  13.394670 0.141455 5.699087\r
+v  7.270164 0.036404 3.093267\r
+v  31.052481 3.146338 18.238018\r
+v  30.848204 2.704291 18.118038\r
+v  30.395559 2.274725 17.852188\r
+v  29.602753 1.863880 17.386549\r
+v  28.378010 1.477999 16.667221\r
+v  26.629522 1.123321 15.640286\r
+v  24.265514 0.806087 14.251836\r
+v  21.194193 0.532537 12.447960\r
+v  17.323772 0.308913 10.174749\r
+v  12.562461 0.141455 7.378294\r
+v  6.818469 0.036404 4.004683\r
+v  28.496904 3.146339 22.049788\r
+v  28.309437 2.704291 21.904737\r
+v  27.894047 2.274725 21.583321\r
+v  27.166487 1.863880 21.020367\r
+v  26.042534 1.477999 20.150698\r
+v  24.437948 1.123321 18.909130\r
+v  22.268492 0.806087 17.230492\r
+v  19.449940 0.532537 15.049603\r
+v  15.898048 0.308913 12.301289\r
+v  11.528585 0.141455 8.920369\r
+v  6.257318 0.036404 4.841668\r
+v  25.482714 3.146339 25.482714\r
+v  25.315073 2.704291 25.315073\r
+v  24.943621 2.274725 24.943621\r
+v  24.293016 1.863880 24.293016\r
+v  23.287952 1.477999 23.287952\r
+v  21.853083 1.123321 21.853083\r
+v  19.913099 0.806087 19.913099\r
+v  17.392668 0.532537 17.392668\r
+v  14.216470 0.308913 14.216470\r
+v  10.309177 0.141455 10.309177\r
+v  5.595465 0.036404 5.595465\r
+v  22.049791 3.146339 28.496904\r
+v  21.904737 2.704291 28.309437\r
+v  21.583323 2.274725 27.894047\r
+v  21.020367 1.863880 27.166487\r
+v  20.150698 1.477999 26.042534\r
+v  18.909132 1.123321 24.437948\r
+v  17.230492 0.806087 22.268492\r
+v  15.049603 0.532537 19.449940\r
+v  12.301289 0.308913 15.898048\r
+v  8.920369 0.141455 11.528585\r
+v  4.841668 0.036404 6.257318\r
+v  18.238020 3.146339 31.052485\r
+v  18.118040 2.704291 30.848204\r
+v  17.852192 2.274725 30.395563\r
+v  17.386553 1.863880 29.602753\r
+v  16.667225 1.477999 28.378010\r
+v  15.640289 1.123321 26.629526\r
+v  14.251838 0.806087 24.265516\r
+v  12.447963 0.532537 21.194197\r
+v  10.174751 0.308913 17.323774\r
+v  7.378296 0.141455 12.562461\r
+v  4.004683 0.036404 6.818470\r
+v  14.087277 3.146339 33.109577\r
+v  13.994604 2.704291 32.891766\r
+v  13.789256 2.274725 32.409138\r
+v  13.429593 1.863880 31.563814\r
+v  12.873975 1.477999 30.257933\r
+v  12.080755 1.123321 28.393620\r
+v  11.008299 0.806087 25.873003\r
+v  9.614964 0.532537 22.598221\r
+v  7.859107 0.308913 18.471399\r
+v  5.699088 0.141455 13.394670\r
+v  3.093268 0.036404 7.270164\r
+v  9.637440 3.146339 34.628307\r
+v  9.574040 2.704291 34.400505\r
+v  9.433558 2.274725 33.895741\r
+v  9.187503 1.863880 33.011635\r
+v  8.807392 1.477999 31.645857\r
+v  8.264732 1.123321 29.696026\r
+v  7.531040 0.806087 27.059790\r
+v  6.577825 0.532537 23.634796\r
+v  5.376601 0.308913 19.318676\r
+v  3.898881 0.141455 14.009079\r
+v  2.116178 0.036404 7.603643\r
+v  4.928391 3.146338 35.568783\r
+v  4.895970 2.704291 35.334793\r
+v  4.824131 2.274725 34.816326\r
+v  4.698303 1.863880 33.908211\r
+v  4.503921 1.477999 32.505333\r
+v  4.226416 1.123321 30.502548\r
+v  3.851221 0.806087 27.794718\r
+v  3.363766 0.532537 24.276699\r
+v  2.749485 0.308913 19.843359\r
+v  1.993809 0.141455 14.389556\r
+v  1.082171 0.036404 7.810153\r
+v  0.000007 3.146339 35.891144\r
+v  0.000007 2.704291 35.655033\r
+v  0.000007 2.274725 35.131859\r
+v  0.000007 1.863880 34.215515\r
+v  0.000007 1.477999 32.799927\r
+v  0.000006 1.123321 30.778990\r
+v  0.000006 0.806087 28.046618\r
+v  0.000005 0.532537 24.496717\r
+v  0.000004 0.308913 20.023197\r
+v  0.000003 0.141455 14.519970\r
+v  0.000002 0.036404 7.880936\r
+v  -4.928387 3.146339 35.568790\r
+v  -4.895965 2.704291 35.334801\r
+v  -4.824125 2.274725 34.816326\r
+v  -4.698298 1.863880 33.908211\r
+v  -4.503916 1.477999 32.505341\r
+v  -4.226412 1.123321 30.502554\r
+v  -3.851217 0.806087 27.794718\r
+v  -3.363762 0.532537 24.276701\r
+v  -2.749482 0.308913 19.843359\r
+v  -1.993807 0.141455 14.389556\r
+v  -1.082169 0.036404 7.810153\r
+v  -9.637437 3.146338 34.628307\r
+v  -9.574037 2.704291 34.400505\r
+v  -9.433555 2.274725 33.895737\r
+v  -9.187500 1.863880 33.011635\r
+v  -8.807388 1.477999 31.645857\r
+v  -8.264729 1.123321 29.696024\r
+v  -7.531036 0.806087 27.059790\r
+v  -6.577822 0.532537 23.634796\r
+v  -5.376599 0.308913 19.318676\r
+v  -3.898880 0.141455 14.009078\r
+v  -2.116177 0.036404 7.603642\r
+v  -14.087273 3.146339 33.109577\r
+v  -13.994600 2.704291 32.891766\r
+v  -13.789255 2.274725 32.409138\r
+v  -13.429590 1.863880 31.563812\r
+v  -12.873972 1.477999 30.257933\r
+v  -12.080754 1.123321 28.393620\r
+v  -11.008297 0.806087 25.873001\r
+v  -9.614961 0.532537 22.598221\r
+v  -7.859105 0.308913 18.471399\r
+v  -5.699087 0.141455 13.394670\r
+v  -3.093267 0.036404 7.270164\r
+v  -18.238018 3.146338 31.052481\r
+v  -18.118038 2.704291 30.848204\r
+v  -17.852188 2.274725 30.395559\r
+v  -17.386549 1.863880 29.602753\r
+v  -16.667221 1.477999 28.378010\r
+v  -15.640286 1.123321 26.629522\r
+v  -14.251836 0.806087 24.265514\r
+v  -12.447960 0.532537 21.194193\r
+v  -10.174749 0.308913 17.323772\r
+v  -7.378294 0.141455 12.562461\r
+v  -4.004683 0.036404 6.818469\r
+v  -22.049788 3.146339 28.496904\r
+v  -21.904737 2.704291 28.309437\r
+v  -21.583321 2.274725 27.894047\r
+v  -21.020367 1.863880 27.166487\r
+v  -20.150698 1.477999 26.042534\r
+v  -18.909130 1.123321 24.437948\r
+v  -17.230492 0.806087 22.268492\r
+v  -15.049603 0.532537 19.449940\r
+v  -12.301289 0.308913 15.898048\r
+v  -8.920369 0.141455 11.528585\r
+v  -4.841668 0.036404 6.257318\r
+v  -25.482714 3.146339 25.482714\r
+v  -25.315073 2.704291 25.315073\r
+v  -24.943621 2.274725 24.943621\r
+v  -24.293016 1.863880 24.293016\r
+v  -23.287952 1.477999 23.287952\r
+v  -21.853083 1.123321 21.853083\r
+v  -19.913099 0.806087 19.913099\r
+v  -17.392668 0.532537 17.392668\r
+v  -14.216470 0.308913 14.216470\r
+v  -10.309177 0.141455 10.309177\r
+v  -5.595465 0.036404 5.595465\r
+v  -28.496904 3.146339 22.049791\r
+v  -28.309437 2.704291 21.904737\r
+v  -27.894047 2.274725 21.583323\r
+v  -27.166487 1.863880 21.020367\r
+v  -26.042534 1.477999 20.150698\r
+v  -24.437948 1.123321 18.909132\r
+v  -22.268492 0.806087 17.230492\r
+v  -19.449940 0.532537 15.049603\r
+v  -15.898048 0.308913 12.301289\r
+v  -11.528585 0.141455 8.920369\r
+v  -6.257318 0.036404 4.841668\r
+v  -31.052485 3.146339 18.238020\r
+v  -30.848204 2.704291 18.118040\r
+v  -30.395563 2.274725 17.852192\r
+v  -29.602753 1.863880 17.386553\r
+v  -28.378010 1.477999 16.667225\r
+v  -26.629526 1.123321 15.640289\r
+v  -24.265516 0.806087 14.251838\r
+v  -21.194197 0.532537 12.447963\r
+v  -17.323774 0.308913 10.174751\r
+v  -12.562461 0.141455 7.378296\r
+v  -6.818470 0.036404 4.004683\r
+v  -33.109577 3.146339 14.087277\r
+v  -32.891766 2.704291 13.994604\r
+v  -32.409138 2.274725 13.789256\r
+v  -31.563814 1.863880 13.429593\r
+v  -30.257933 1.477999 12.873975\r
+v  -28.393620 1.123321 12.080755\r
+v  -25.873003 0.806087 11.008299\r
+v  -22.598221 0.532537 9.614964\r
+v  -18.471399 0.308913 7.859107\r
+v  -13.394670 0.141455 5.699088\r
+v  -7.270164 0.036404 3.093268\r
+v  -34.628307 3.146339 9.637440\r
+v  -34.400505 2.704291 9.574040\r
+v  -33.895741 2.274725 9.433558\r
+v  -33.011635 1.863880 9.187503\r
+v  -31.645857 1.477999 8.807392\r
+v  -29.696026 1.123321 8.264732\r
+v  -27.059790 0.806087 7.531040\r
+v  -23.634796 0.532537 6.577825\r
+v  -19.318676 0.308913 5.376601\r
+v  -14.009079 0.141455 3.898881\r
+v  -7.603643 0.036404 2.116178\r
+v  -35.568783 3.146338 4.928391\r
+v  -35.334793 2.704291 4.895970\r
+v  -34.816326 2.274725 4.824131\r
+v  -33.908211 1.863880 4.698303\r
+v  -32.505333 1.477999 4.503921\r
+v  -30.502548 1.123321 4.226416\r
+v  -27.794718 0.806087 3.851221\r
+v  -24.276699 0.532537 3.363766\r
+v  -19.843359 0.308913 2.749485\r
+v  -14.389556 0.141455 1.993809\r
+v  -7.810153 0.036404 1.082171\r
+v  -35.891144 3.146339 -0.000000\r
+v  -35.655033 2.704291 -0.000000\r
+v  -35.131859 2.274725 -0.000000\r
+v  -34.215515 1.863880 -0.000000\r
+v  -32.799927 1.477999 -0.000000\r
+v  -30.778990 1.123321 -0.000000\r
+v  -28.046618 0.806087 -0.000000\r
+v  -24.496717 0.532537 -0.000000\r
+v  -20.023197 0.308913 -0.000000\r
+v  -14.519970 0.141455 -0.000000\r
+v  -7.880936 0.036404 -0.000000\r
+v  45.543552 34.106937 3.580874\r
+v  45.658455 34.495483 -0.000000\r
+v  45.634232 33.107201 6.511440\r
+v  45.588146 31.575136 8.795704\r
+v  45.739914 29.668732 10.426750\r
+v  45.973091 27.509882 11.405255\r
+v  46.228214 25.222334 11.731899\r
+v  46.472443 22.931341 11.406939\r
+v  46.653740 20.756985 10.430868\r
+v  46.780434 18.906078 8.863253\r
+v  46.791389 17.264900 6.503068\r
+v  46.611931 16.192183 3.589138\r
+v  46.682999 15.834087 -0.000000\r
+v  49.423805 35.054642 3.457794\r
+v  50.023823 32.793163 8.487313\r
+v  49.662792 34.153881 6.286899\r
+v  53.112007 34.498234 8.033149\r
+v  52.650467 35.702877 5.950480\r
+v  52.344936 36.500320 3.272764\r
+v  54.880917 37.672073 5.528771\r
+v  54.533287 38.360096 3.040825\r
+v  52.234413 36.788754 -0.000000\r
+v  57.851025 22.129423 -0.000000\r
+v  60.798004 25.961191 -0.000000\r
+v  57.740509 22.417860 3.272768\r
+v  60.672256 26.210045 3.040828\r
+v  57.434978 23.215300 5.950482\r
+v  60.324638 26.898060 5.528774\r
+v  56.973431 24.419945 8.033150\r
+v  59.799496 27.937405 7.463843\r
+v  56.394867 25.929993 9.520769\r
+v  59.141212 29.240244 8.846037\r
+v  55.738300 27.643641 10.413341\r
+v  58.394184 30.718739 9.675351\r
+v  55.042717 29.459087 10.710864\r
+v  57.602779 32.285069 9.951789\r
+v  54.347149 31.274536 10.413341\r
+v  56.811371 33.851402 9.675352\r
+v  53.690571 32.988190 9.520767\r
+v  56.064331 35.329899 8.846035\r
+v  55.406059 36.632732 7.463842\r
+v  57.794621 38.009075 8.080328\r
+v  57.087494 39.099564 6.817777\r
+v  56.523369 39.969490 5.050206\r
+v  58.337791 41.801575 6.133332\r
+v  57.747009 42.503128 4.543209\r
+v  56.149952 40.545368 2.777613\r
+v  57.355930 42.967541 2.498765\r
+v  56.014881 40.753662 -0.000000\r
+v  62.879616 30.167408 -0.000000\r
+v  64.403732 34.598286 -0.000000\r
+v  62.744545 30.375706 2.777616\r
+v  64.262268 34.766262 2.498768\r
+v  62.371117 30.951574 5.050207\r
+v  63.871189 35.230667 4.543211\r
+v  61.807003 31.821510 6.817778\r
+v  63.280403 35.932228 6.133333\r
+v  61.099873 32.911991 8.080328\r
+v  62.539845 36.811642 7.269135\r
+v  60.297394 34.149506 8.837859\r
+v  61.699436 37.809624 7.950616\r
+v  59.447247 35.460533 9.090370\r
+v  60.809101 38.866901 8.177775\r
+v  58.597103 36.771564 8.837859\r
+v  59.918762 39.924179 7.950616\r
+v  59.078346 40.922157 7.269134\r
+v  60.990799 43.198395 7.063371\r
+v  60.112453 43.965599 6.457939\r
+v  59.338467 44.641663 5.448886\r
+v  61.093857 47.035858 5.692232\r
+v  60.271011 47.522709 4.802821\r
+v  58.721008 45.180992 4.036212\r
+v  59.614590 47.911095 3.557645\r
+v  58.312286 45.538013 2.219917\r
+v  59.180054 48.168198 1.956705\r
+v  59.022881 48.261192 -0.000000\r
+v  65.678215 39.104046 -0.000000\r
+v  67.010941 43.534924 -0.000000\r
+v  65.530373 39.233181 2.219919\r
+v  66.853760 43.627918 1.956707\r
+v  65.121628 39.590202 4.036214\r
+v  66.419228 43.885017 3.557647\r
+v  64.504189 40.129532 5.448887\r
+v  65.762802 44.273403 4.802822\r
+v  63.730198 40.805595 6.457941\r
+v  64.939964 44.760250 5.692233\r
+v  62.851849 41.572807 7.063371\r
+v  64.006172 45.312740 6.225880\r
+v  61.921326 42.385597 7.265182\r
+v  63.016911 45.898056 6.403761\r
+v  62.027649 46.483372 6.225879\r
+v  64.328835 49.285702 5.644688\r
+v  63.243740 49.668266 5.487890\r
+v  62.219490 50.029373 5.017500\r
+v  64.853516 52.642239 4.899158\r
+v  63.686272 52.842609 4.479230\r
+v  61.316933 50.347591 4.233516\r
+v  62.657722 53.019180 3.779351\r
+v  60.596912 50.601437 3.135938\r
+v  61.837189 53.160042 2.799519\r
+v  60.120293 50.769482 1.724766\r
+v  61.294029 53.253281 1.539736\r
+v  59.947887 50.830269 -0.000000\r
+v  68.709793 47.741135 -0.000000\r
+v  71.082626 51.572910 -0.000000\r
+v  68.537384 47.801914 1.724768\r
+v  70.886154 51.606632 1.539737\r
+v  68.060760 47.969963 3.135939\r
+v  70.342995 51.699875 2.799520\r
+v  67.340744 48.223812 4.233516\r
+v  69.522461 51.840736 3.779352\r
+v  66.438179 48.542023 5.017500\r
+v  68.493912 52.017307 4.479231\r
+v  65.413933 48.903137 5.487891\r
+v  67.326675 52.217678 4.899158\r
+v  66.090096 52.429958 5.039135\r
+v  69.995918 55.130070 4.509435\r
+v  68.533661 55.212254 4.638275\r
+v  67.071411 55.294441 4.509434\r
+v  71.892532 57.514030 4.493283\r
+v  70.111862 57.514034 4.368470\r
+v  65.691147 55.372009 4.122911\r
+v  68.431038 57.514023 3.994030\r
+v  64.474884 55.440365 3.478706\r
+v  66.949921 57.514030 3.369962\r
+v  63.504601 55.494896 2.576819\r
+v  65.768356 57.514023 2.496269\r
+v  62.862305 55.530991 1.417251\r
+v  64.986191 57.514030 1.372948\r
+v  64.703285 57.514030 -0.000000\r
+v  74.437332 54.880463 -0.000000\r
+v  79.081779 57.514034 -0.000000\r
+v  74.205009 54.893520 1.417252\r
+v  78.798874 57.514023 1.372949\r
+v  73.562721 54.929611 2.576821\r
+v  78.016716 57.514030 2.496269\r
+v  72.592430 54.984146 3.478707\r
+v  76.835136 57.514030 3.369963\r
+v  71.376167 55.052502 4.122912\r
+v  75.354027 57.514030 3.994030\r
+v  73.673203 57.514030 4.368470\r
+v  76.397484 58.008545 3.962596\r
+v  74.646103 57.995506 4.334089\r
+v  72.790680 57.981686 4.457920\r
+v  75.432335 58.399166 4.239034\r
+v  73.535912 58.372112 4.360149\r
+v  70.935257 57.967876 4.334088\r
+v  71.639481 58.345070 4.239034\r
+v  69.183861 57.954823 3.962595\r
+v  69.849388 58.319519 3.875688\r
+v  67.640572 57.943344 3.343440\r
+v  68.271988 58.297031 3.270112\r
+v  66.409401 57.934174 2.476622\r
+v  67.013603 58.279087 2.422305\r
+v  65.594398 57.928104 1.362142\r
+v  66.180603 58.267200 1.332268\r
+v  80.281731 58.037472 -0.000000\r
+v  79.986946 58.035267 1.362144\r
+v  80.891205 58.477028 1.332269\r
+v  79.171951 58.029205 2.476623\r
+v  80.058205 58.465145 2.422306\r
+v  77.940773 58.020042 3.343441\r
+v  78.799828 58.447201 3.270112\r
+v  77.222420 58.424698 3.875689\r
+v  79.418495 58.791588 3.159341\r
+v  77.832268 58.759048 3.744403\r
+v  76.032166 58.722103 4.095440\r
+v  78.230362 59.008087 3.579834\r
+v  76.445808 58.961399 3.915443\r
+v  74.125130 58.682983 4.212453\r
+v  74.555214 58.911930 4.027312\r
+v  72.218109 58.643852 4.095440\r
+v  72.664627 58.862473 3.915443\r
+v  70.417992 58.606922 3.744403\r
+v  70.880043 58.815773 3.579833\r
+v  68.831779 58.574375 3.159340\r
+v  69.307495 58.774635 3.020484\r
+v  67.566368 58.548412 2.340252\r
+v  68.052994 58.741817 2.237396\r
+v  66.728699 58.531227 1.287138\r
+v  67.222557 58.720093 1.230568\r
+v  66.425713 58.525013 -0.000000\r
+v  66.922173 58.712231 -0.000000\r
+v  82.188248 59.111641 -0.000000\r
+v  81.521576 58.834728 1.287140\r
+v  81.887871 59.103779 1.230569\r
+v  80.683899 58.817543 2.340252\r
+v  81.057426 59.082050 2.237397\r
+v  79.802925 59.049225 3.020485\r
+v  81.187202 59.254341 2.120673\r
+v  79.959320 59.216202 2.862908\r
+v  78.420166 59.168381 3.393076\r
+v  82.000008 59.279587 1.166371\r
+v  67.352104 58.824566 -0.000000\r
+v  67.646095 58.833702 1.166370\r
+v  68.458908 58.858944 2.120673\r
+v  69.686768 58.897091 2.862908\r
+v  71.225914 58.944897 3.393076\r
+v  72.972603 58.999165 3.711177\r
+v  74.823051 59.056648 3.817210\r
+v  76.673500 59.114124 3.711177\r
+v  50.476391 31.087479 10.059037\r
+v  50.989983 29.151812 11.002073\r
+v  51.534077 27.101156 11.316417\r
+v  52.078167 25.050499 11.002073\r
+v  52.591747 23.114834 10.059038\r
+v  53.044319 21.409145 8.487313\r
+v  53.405357 20.048426 6.286901\r
+v  53.644341 19.147671 3.457798\r
+v  53.730793 18.821865 -0.000000\r
+v  -40.153595 48.526070 -0.000000\r
+v  -39.997196 48.632229 1.647537\r
+v  -39.774639 48.925571 2.995522\r
+v  -39.503067 49.368668 4.043955\r
+v  -39.199642 49.924068 4.792836\r
+v  -38.881500 50.554356 5.242165\r
+v  -38.557339 51.226913 5.390856\r
+v  -38.262180 51.889782 5.242164\r
+v  -37.995636 52.520027 4.792836\r
+v  -37.783852 53.075375 4.043956\r
+v  -37.644417 53.518372 2.995523\r
+v  -37.594913 53.811573 1.647539\r
+v  -37.652912 53.917545 -0.000000\r
+v  -47.923016 21.687986 -0.000000\r
+v  -47.816101 21.518492 1.647537\r
+v  -47.692528 21.130341 2.995522\r
+v  -47.573326 20.575285 4.043956\r
+v  -47.462479 19.897043 4.792836\r
+v  -47.363983 19.139370 5.242165\r
+v  -47.147533 18.284660 5.391940\r
+v  -46.920513 17.424940 5.242165\r
+v  -46.728500 16.620296 4.789083\r
+v  -46.429497 15.858169 4.043957\r
+v  -46.226406 15.263846 2.995523\r
+v  -46.145897 14.894827 1.647539\r
+v  -46.212391 14.804548 -0.000000\r
+v  -41.950085 51.886124 5.242164\r
+v  -42.036472 51.218754 5.391941\r
+v  -42.122856 50.551388 5.242165\r
+v  -42.204399 49.921436 4.792836\r
+v  -42.276264 49.366348 4.043955\r
+v  -42.333584 48.923519 2.995522\r
+v  -42.371536 48.630379 1.647537\r
+v  -41.687687 53.913162 -0.000000\r
+v  -41.701412 53.807129 1.647539\r
+v  -41.739361 53.513992 2.995524\r
+v  -41.796680 53.071156 4.043957\r
+v  -41.868538 52.516060 4.792836\r
+v  -46.803303 53.030888 4.043956\r
+v  -46.719872 52.478031 4.792836\r
+v  -46.625195 51.850655 5.242164\r
+v  -51.119423 52.374836 4.792836\r
+v  -50.869919 51.754383 5.242164\r
+v  -46.524895 51.185978 5.391940\r
+v  -50.605606 51.097061 5.391941\r
+v  -46.424591 50.521320 5.242164\r
+v  -50.341290 50.439739 5.242165\r
+v  -46.329918 49.893929 4.792836\r
+v  -50.091782 49.819271 4.792836\r
+v  -46.246494 49.341087 4.043955\r
+v  -49.871929 49.272545 4.043955\r
+v  -46.179932 48.900051 2.995522\r
+v  -49.696545 48.836376 2.995522\r
+v  -46.135891 48.608097 1.647537\r
+v  -49.580452 48.547649 1.647537\r
+v  -46.119946 48.502502 -0.000000\r
+v  -49.538445 48.443211 -0.000000\r
+v  -46.929844 53.869476 -0.000000\r
+v  -51.672764 53.750904 -0.000000\r
+v  -46.913914 53.763878 1.647539\r
+v  -51.630772 53.646465 1.647539\r
+v  -46.869854 53.471924 2.995523\r
+v  -51.514668 53.357738 2.995523\r
+v  -51.339272 52.921577 4.043956\r
+v  -55.673157 53.135384 2.995523\r
+v  -55.403282 52.708702 4.043956\r
+v  -55.065002 52.173851 4.792836\r
+v  -58.994061 52.357769 4.043955\r
+v  -58.554501 51.842529 4.792837\r
+v  -54.681118 51.566895 5.242163\r
+v  -58.055664 51.257816 5.242164\r
+v  -54.274422 50.923874 5.391940\r
+v  -57.527206 50.638371 5.391940\r
+v  -53.867722 50.280853 5.242164\r
+v  -56.998734 50.018917 5.242165\r
+v  -53.483826 49.673885 4.792835\r
+v  -56.499893 49.434200 4.792836\r
+v  -53.145546 49.139038 4.043954\r
+v  -56.060337 48.918964 4.043955\r
+v  -52.875679 48.712364 2.995522\r
+v  -55.709663 48.507935 2.995522\r
+v  -52.697048 48.429916 1.647537\r
+v  -55.477547 48.235840 1.647537\r
+v  -52.632427 48.327751 -0.000000\r
+v  -55.393589 48.137421 -0.000000\r
+v  -55.916412 53.519985 -0.000000\r
+v  -59.660816 53.139313 -0.000000\r
+v  -55.851799 53.417828 1.647539\r
+v  -59.576855 53.040894 1.647539\r
+v  -59.344734 52.768803 2.995523\r
+v  -62.805771 52.478580 1.647539\r
+v  -62.528755 52.221935 2.995523\r
+v  -62.110283 51.834232 4.043956\r
+v  -65.224625 51.458733 2.995523\r
+v  -64.750656 51.103592 4.043956\r
+v  -61.585712 51.348244 4.792836\r
+v  -64.156502 50.658417 4.792837\r
+v  -60.990425 50.796726 5.242164\r
+v  -63.482277 50.153225 5.242164\r
+v  -60.359772 50.212444 5.391940\r
+v  -62.767982 49.618015 5.391940\r
+v  -59.729115 49.628159 5.242165\r
+v  -62.053677 49.082809 5.242165\r
+v  -59.133816 49.076633 4.792836\r
+v  -61.379433 48.577610 4.792836\r
+v  -58.609268 48.590649 4.043955\r
+v  -60.785301 48.132442 4.043955\r
+v  -58.190784 48.202946 2.995522\r
+v  -60.311329 47.777309 2.995522\r
+v  -57.913780 47.946301 1.647537\r
+v  -59.997581 47.542221 1.647537\r
+v  -57.813583 47.853474 -0.000000\r
+v  -59.884094 47.457188 -0.000000\r
+v  -62.905968 52.571415 -0.000000\r
+v  -65.651855 51.778847 -0.000000\r
+v  -65.538376 51.693813 1.647539\r
+v  -67.898506 50.724174 -0.000000\r
+v  -67.774506 50.649521 1.647539\r
+v  -67.431717 50.443115 2.995523\r
+v  -69.514015 49.308620 1.647539\r
+v  -69.149414 49.139050 2.995523\r
+v  -66.913864 50.131313 4.043956\r
+v  -68.598625 48.882889 4.043955\r
+v  -66.264732 49.740456 4.792836\r
+v  -67.908203 48.561783 4.792836\r
+v  -65.528069 49.296917 5.242164\r
+v  -67.124702 48.197388 5.242164\r
+v  -64.747658 48.827015 5.391940\r
+v  -66.294647 47.811344 5.391940\r
+v  -63.967239 48.357109 5.242166\r
+v  -65.464592 47.425301 5.242165\r
+v  -63.230576 47.913559 4.792836\r
+v  -64.681084 47.060898 4.792836\r
+v  -62.581451 47.522713 4.043955\r
+v  -63.990669 46.739803 4.043955\r
+v  -62.063599 47.210907 2.995522\r
+v  -63.439884 46.483639 2.995522\r
+v  -61.720802 47.004505 1.647537\r
+v  -63.075294 46.314075 1.647537\r
+v  -61.596813 46.929852 -0.000000\r
+v  -69.645889 49.369953 -0.000000\r
+v  -70.894028 47.678726 -0.000000\r
+v  -70.756714 47.634029 1.647539\r
+v  -71.642906 45.613064 -0.000000\r
+v  -71.502464 45.588692 1.647539\r
+v  -70.377106 47.510460 2.995523\r
+v  -71.114182 45.521301 2.995523\r
+v  -69.803635 47.323792 4.043956\r
+v  -70.527603 45.419510 4.043956\r
+v  -69.084801 47.089794 4.792836\r
+v  -69.792320 45.291904 4.792836\r
+v  -68.269020 46.824249 5.242164\r
+v  -68.957909 45.147095 5.242164\r
+v  -67.404800 46.542927 5.391940\r
+v  -68.073936 44.993679 5.391940\r
+v  -66.540565 46.261608 5.242165\r
+v  -67.189957 44.840267 5.242165\r
+v  -65.724785 45.996056 4.792836\r
+v  -66.355537 44.695454 4.792836\r
+v  -65.005951 45.762062 4.043955\r
+v  -65.620270 44.567848 4.043955\r
+v  -64.432480 45.575394 2.995522\r
+v  -65.033691 44.466053 2.995522\r
+v  -64.052872 45.451824 1.647537\r
+v  -64.645409 44.398670 1.647537\r
+v  -64.504967 44.374294 -0.000000\r
+v  -71.892532 43.135517 -0.000000\r
+v  -71.717110 40.458794 -0.000000\r
+v  -71.751076 43.135521 1.647539\r
+v  -71.577118 40.482849 1.647539\r
+v  -71.360001 43.135517 2.995523\r
+v  -71.190071 40.549358 2.995524\r
+v  -70.769211 43.135521 4.043956\r
+v  -70.605377 40.649830 4.043957\r
+v  -70.028648 43.135521 4.792836\r
+v  -69.872459 40.775776 4.792836\r
+v  -69.188240 43.135521 5.242164\r
+v  -69.040718 40.918705 5.242164\r
+v  -68.297905 43.135521 5.391940\r
+v  -68.159576 41.070118 5.391941\r
+v  -67.407570 43.135521 5.242165\r
+v  -67.278427 41.221535 5.242165\r
+v  -66.567154 43.135517 4.792836\r
+v  -66.446686 41.364460 4.792836\r
+v  -65.826599 43.135517 4.043955\r
+v  -65.713776 41.490402 4.043955\r
+v  -65.235809 43.135517 2.995522\r
+v  -65.129089 41.590878 2.995522\r
+v  -64.844734 43.135521 1.647537\r
+v  -64.742043 41.657387 1.647537\r
+v  -64.703285 43.135521 -0.000000\r
+v  -71.188026 37.822628 -0.000000\r
+v  -70.301163 35.230148 -0.000000\r
+v  -71.052361 37.866261 1.647539\r
+v  -70.172600 35.289547 1.647539\r
+v  -70.677277 37.986885 2.995523\r
+v  -69.817169 35.453773 2.995523\r
+v  -70.110649 38.169109 4.043956\r
+v  -69.280228 35.701851 4.043956\r
+v  -69.400368 38.397537 4.792836\r
+v  -68.607162 36.012836 4.792836\r
+v  -68.594330 38.656761 5.242164\r
+v  -67.843361 36.365742 5.242164\r
+v  -67.740402 38.931381 5.391940\r
+v  -67.034164 36.739616 5.391941\r
+v  -66.886475 39.206009 5.242164\r
+v  -66.224983 37.113483 5.242165\r
+v  -66.080429 39.465233 4.792836\r
+v  -65.461166 37.466385 4.792836\r
+v  -65.370163 39.693657 4.043955\r
+v  -64.788116 37.777367 4.043955\r
+v  -64.803528 39.875885 2.995522\r
+v  -64.251175 38.025448 2.995522\r
+v  -64.428452 39.996513 1.647537\r
+v  -63.895741 38.189674 1.647537\r
+v  -63.767181 38.249077 -0.000000\r
+v  -69.052330 32.684471 -0.000000\r
+v  -67.437386 30.188730 -0.000000\r
+v  -68.933571 32.756508 1.647539\r
+v  -67.331070 30.270945 1.647539\r
+v  -68.605255 32.955673 2.995523\r
+v  -67.037117 30.498257 2.995523\r
+v  -68.109299 33.256531 4.043956\r
+v  -66.593056 30.841639 4.043955\r
+v  -67.487587 33.633667 4.792836\r
+v  -66.036415 31.272083 4.792837\r
+v  -66.782059 34.061657 5.242163\r
+v  -65.404732 31.760555 5.242164\r
+v  -66.034615 34.515068 5.391940\r
+v  -64.735527 32.278053 5.391940\r
+v  -65.287170 34.968483 5.242164\r
+v  -64.066315 32.795547 5.242165\r
+v  -64.581642 35.396465 4.792835\r
+v  -63.434620 33.284016 4.792836\r
+v  -63.959942 35.773605 4.043954\r
+v  -62.877995 33.714466 4.043955\r
+v  -63.463970 36.074463 2.995522\r
+v  -62.433922 34.057846 2.995522\r
+v  -63.135666 36.273632 1.647537\r
+v  -62.139988 34.285160 1.647537\r
+v  -63.016899 36.345665 -0.000000\r
+v  -65.452164 27.746027 -0.000000\r
+v  -63.092495 25.359488 -0.000000\r
+v  -65.360802 27.836643 1.647539\r
+v  -63.018562 25.457405 1.647539\r
+v  -65.108231 28.087181 2.995523\r
+v  -62.814156 25.728111 2.995523\r
+v  -64.726685 28.465652 4.043956\r
+v  -62.505375 26.137053 4.043956\r
+v  -64.248405 28.940075 4.792836\r
+v  -62.118309 26.649672 4.792837\r
+v  -63.705643 29.478458 5.242164\r
+v  -61.679054 27.231405 5.242164\r
+v  -63.130634 30.048832 5.391940\r
+v  -61.213707 27.847696 5.391940\r
+v  -62.555626 30.619205 5.242165\r
+v  -60.748360 28.463991 5.242165\r
+v  -62.012848 31.157583 4.792836\r
+v  -60.309101 29.045721 4.792836\r
+v  -61.534576 31.632011 4.043955\r
+v  -59.922039 29.558340 4.043955\r
+v  -61.153023 32.010483 2.995522\r
+v  -59.613247 29.967276 2.995522\r
+v  -60.900463 32.261024 1.647537\r
+v  -59.408855 30.237993 1.647537\r
+v  -60.354229 23.032240 -0.000000\r
+v  -57.233200 20.767397 -0.000000\r
+v  -60.300091 23.137018 1.647539\r
+v  -57.201153 20.879288 1.647539\r
+v  -60.150414 23.426712 2.995523\r
+v  -57.112541 21.188641 2.995523\r
+v  -59.924313 23.864328 4.043956\r
+v  -56.978699 21.655960 4.043955\r
+v  -59.640892 24.412891 4.792836\r
+v  -56.810913 22.241756 4.792836\r
+v  -59.319252 25.035414 5.242164\r
+v  -56.620506 22.906530 5.242164\r
+v  -58.978504 25.694927 5.391940\r
+v  -56.418797 23.610800 5.391940\r
+v  -58.637756 26.354435 5.242166\r
+v  -56.217075 24.315073 5.242165\r
+v  -58.316113 26.976955 4.792836\r
+v  -56.026661 24.979845 4.792836\r
+v  -58.032692 27.525520 4.043955\r
+v  -55.858883 25.565641 4.043955\r
+v  -57.806591 27.963137 2.995522\r
+v  -55.725040 26.032959 2.995522\r
+v  -57.656925 28.252832 1.647537\r
+v  -55.636440 26.342316 1.647537\r
+v  -57.602783 28.357613 -0.000000\r
+v  -49.826218 16.437412 -0.000000\r
+v  -53.717495 18.688004 1.647539\r
+v  -49.844894 16.566965 1.647539\r
+v  -53.696072 19.019566 2.995523\r
+v  -49.896534 16.925146 2.995523\r
+v  -53.663712 19.520432 4.043956\r
+v  -49.974545 17.466228 4.043956\r
+v  -53.623142 20.148279 4.792836\r
+v  -50.072327 18.144485 4.792836\r
+v  -53.577095 20.860779 5.242164\r
+v  -50.183292 18.914192 5.242164\r
+v  -53.528324 21.615608 5.391940\r
+v  -50.300854 19.729626 5.391940\r
+v  -53.479546 22.370436 5.242165\r
+v  -50.418415 20.545057 5.242165\r
+v  -53.433491 23.082932 4.792836\r
+v  -50.529377 21.314762 4.792836\r
+v  -53.392937 23.710781 4.043955\r
+v  -50.627171 21.993019 4.043955\r
+v  -53.360561 24.211647 2.995522\r
+v  -50.705170 22.534101 2.995522\r
+v  -53.339149 24.543211 1.647537\r
+v  -50.756821 22.892282 1.647537\r
+v  -50.775494 23.021839 -0.000000\r
+v  33.952717 59.807484 -0.000000\r
+v  33.624737 59.872997 -0.000000\r
+v  33.322739 59.872997 -4.617175\r
+v  33.647778 59.807484 -4.662212\r
+v  34.018166 59.610893 -4.713532\r
+v  34.417419 59.283257 -4.768853\r
+v  34.829037 58.824570 -4.825887\r
+v  35.236534 58.234821 -4.882349\r
+v  35.623421 57.514030 -4.935956\r
+v  32.758083 59.807476 -9.116933\r
+v  32.441643 59.872997 -9.028864\r
+v  33.118683 59.610893 -9.217291\r
+v  33.507378 59.283253 -9.325469\r
+v  33.908115 58.824570 -9.436998\r
+v  34.304840 58.234821 -9.547412\r
+v  34.681492 57.514023 -9.652238\r
+v  31.321384 59.807484 -13.326443\r
+v  31.018818 59.872997 -13.197710\r
+v  31.666166 59.610893 -13.473137\r
+v  32.037811 59.283257 -13.631266\r
+v  32.420971 58.824570 -13.794291\r
+v  32.800297 58.234821 -13.955683\r
+v  33.160431 57.514030 -14.108910\r
+v  29.375387 59.807465 -17.253010\r
+v  29.091618 59.872993 -17.086346\r
+v  29.698744 59.610886 -17.442928\r
+v  30.047302 59.283253 -17.647646\r
+v  30.406658 58.824566 -17.858706\r
+v  30.762415 58.234821 -18.067652\r
+v  31.100172 57.514023 -18.266027\r
+v  26.957829 59.807484 -20.858917\r
+v  26.697418 59.873005 -20.657421\r
+v  27.254578 59.610897 -21.088531\r
+v  27.574451 59.283264 -21.336033\r
+v  27.904232 58.824570 -21.591202\r
+v  28.230707 58.234829 -21.843819\r
+v  28.540670 57.514034 -22.083654\r
+v  24.106434 59.807484 -24.106430\r
+v  23.873564 59.872997 -23.873564\r
+v  24.371792 59.610893 -24.371792\r
+v  24.657829 59.283257 -24.657829\r
+v  24.952728 58.824570 -24.952728\r
+v  25.244675 58.234821 -25.244675\r
+v  25.521851 57.514030 -25.521851\r
+v  20.858917 59.807484 -26.957829\r
+v  20.657421 59.872997 -26.697418\r
+v  21.088531 59.610893 -27.254578\r
+v  21.336033 59.283257 -27.574451\r
+v  21.591206 58.824570 -27.904232\r
+v  21.843819 58.234821 -28.230707\r
+v  22.083656 57.514030 -28.540670\r
+v  17.253012 59.807484 -29.375387\r
+v  17.086349 59.872997 -29.091621\r
+v  17.442932 59.610893 -29.698746\r
+v  17.647650 59.283257 -30.047308\r
+v  17.858709 58.824570 -30.406658\r
+v  18.067656 58.234821 -30.762419\r
+v  18.266031 57.514030 -31.100174\r
+v  13.326446 59.807484 -31.321384\r
+v  13.197712 59.872997 -31.018820\r
+v  13.473140 59.610893 -31.666166\r
+v  13.631267 59.283257 -32.037811\r
+v  13.794293 58.824570 -32.420971\r
+v  13.955686 58.234821 -32.800297\r
+v  14.108912 57.514030 -33.160431\r
+v  9.116939 59.807484 -32.758087\r
+v  9.028869 59.872997 -32.441643\r
+v  9.217296 59.610893 -33.118687\r
+v  9.325474 59.283257 -33.507378\r
+v  9.437003 58.824570 -33.908115\r
+v  9.547415 58.234821 -34.304840\r
+v  9.652243 57.514030 -34.681492\r
+v  4.662216 59.807476 -33.647770\r
+v  4.617180 59.872997 -33.322735\r
+v  4.713538 59.610893 -34.018158\r
+v  4.768858 59.283253 -34.417412\r
+v  4.825892 58.824570 -34.829033\r
+v  4.882355 58.234821 -35.236530\r
+v  4.935961 57.514023 -35.623413\r
+v  0.000007 59.807487 -33.952717\r
+v  0.000007 59.873005 -33.624737\r
+v  0.000007 59.610897 -34.326469\r
+v  0.000007 59.283264 -34.729336\r
+v  0.000007 58.824570 -35.144688\r
+v  0.000007 58.234829 -35.555878\r
+v  0.000007 57.514034 -35.946266\r
+v  -4.694986 59.807484 -33.647778\r
+v  -4.673809 59.872997 -33.322739\r
+v  -4.730313 59.610893 -34.018166\r
+v  -4.775932 59.283257 -34.417419\r
+v  -4.827984 58.824570 -34.829037\r
+v  -4.882612 58.234821 -35.236534\r
+v  -4.935956 57.514030 -35.623421\r
+v  -9.171105 59.807476 -32.758083\r
+v  -9.122474 59.872997 -32.441643\r
+v  -9.245028 59.610893 -33.118683\r
+v  -9.337171 59.283253 -33.507378\r
+v  -9.440466 58.824570 -33.908115\r
+v  -9.547845 58.234821 -34.304840\r
+v  -9.652238 57.514023 -34.681492\r
+v  -13.392262 59.807484 -31.321384\r
+v  -13.311446 59.872997 -31.018818\r
+v  -13.506838 59.610893 -31.666166\r
+v  -13.645482 59.283257 -32.037811\r
+v  -13.798502 58.824570 -32.420971\r
+v  -13.956209 58.234821 -32.800297\r
+v  -14.108910 57.514030 -33.160431\r
+v  -17.322351 59.807465 -29.375387\r
+v  -17.206167 59.872993 -29.091618\r
+v  -17.478430 59.610886 -29.698744\r
+v  -17.662624 59.283253 -30.047302\r
+v  -17.863144 58.824566 -30.406658\r
+v  -18.068207 58.234821 -30.762415\r
+v  -18.266027 57.514023 -31.100172\r
+v  -20.925278 59.807484 -26.957829\r
+v  -20.772095 59.873005 -26.697418\r
+v  -21.122507 59.610897 -27.254578\r
+v  -21.350367 59.283264 -27.574451\r
+v  -21.595449 58.824570 -27.904232\r
+v  -21.844349 58.234829 -28.230707\r
+v  -22.083654 57.514034 -28.540670\r
+v  -24.164936 59.807484 -24.106434\r
+v  -23.974663 59.872997 -23.873564\r
+v  -24.401747 59.610893 -24.371792\r
+v  -24.670464 59.283257 -24.657829\r
+v  -24.956474 58.824570 -24.952728\r
+v  -25.245144 58.234821 -25.244675\r
+v  -25.521851 57.514030 -25.521851\r
+v  -27.005232 59.807484 -20.858917\r
+v  -26.779327 59.872997 -20.657421\r
+v  -27.278845 59.610893 -21.088531\r
+v  -27.584690 59.283257 -21.336033\r
+v  -27.907265 58.824570 -21.591206\r
+v  -28.231087 58.234821 -21.843819\r
+v  -28.540670 57.514030 -22.083656\r
+v  -29.410057 59.807484 -17.253012\r
+v  -29.151533 59.872997 -17.086349\r
+v  -29.716497 59.610893 -17.442932\r
+v  -30.054794 59.283257 -17.647650\r
+v  -30.408878 58.824570 -17.858709\r
+v  -30.762695 58.234821 -18.067656\r
+v  -31.100174 57.514030 -18.266031\r
+v  -31.343325 59.807484 -13.326446\r
+v  -31.056732 59.872997 -13.197712\r
+v  -31.677399 59.610893 -13.473140\r
+v  -32.042549 59.283257 -13.631267\r
+v  -32.422379 58.824570 -13.794293\r
+v  -32.800472 58.234821 -13.955686\r
+v  -33.160431 57.514030 -14.108912\r
+v  -32.768917 59.807484 -9.116939\r
+v  -32.460365 59.872997 -9.028869\r
+v  -33.124229 59.610893 -9.217296\r
+v  -33.509716 59.283257 -9.325474\r
+v  -33.908810 58.824570 -9.437003\r
+v  -34.304924 58.234821 -9.547415\r
+v  -34.681492 57.514030 -9.652243\r
+v  -33.650749 59.807476 -4.662216\r
+v  -33.327881 59.872997 -4.617180\r
+v  -34.019684 59.610893 -4.713538\r
+v  -34.418056 59.283253 -4.768858\r
+v  -34.829224 58.824570 -4.825892\r
+v  -35.236557 58.234821 -4.882355\r
+v  -35.623413 57.514023 -4.935961\r
+v  37.104298 54.369774 -5.141145\r
+v  38.914051 51.231747 -0.000000\r
+v  38.564548 51.231747 -5.343476\r
+v  40.345940 48.106216 -0.000000\r
+v  39.983578 48.106216 -5.540095\r
+v  41.715416 44.999393 -0.000000\r
+v  41.340752 44.999401 -5.728146\r
+v  43.001694 41.917545 -0.000000\r
+v  42.615479 41.917545 -5.904770\r
+v  44.183952 38.866901 -0.000000\r
+v  43.787121 38.866901 -6.067112\r
+v  44.835064 35.853699 -6.212314\r
+v  36.123207 54.369774 -10.053484\r
+v  37.544853 51.231747 -10.449143\r
+v  38.926357 48.106213 -10.833631\r
+v  40.247650 44.999393 -11.201362\r
+v  41.488667 41.917545 -11.546751\r
+v  42.629330 38.866898 -11.864209\r
+v  43.649567 35.853691 -12.148153\r
+v  34.538918 54.369774 -14.695420\r
+v  35.898209 51.231747 -15.273766\r
+v  37.219128 48.106216 -15.835781\r
+v  38.482468 44.999393 -16.373302\r
+v  39.669064 41.917545 -16.878164\r
+v  40.759697 38.866901 -17.342201\r
+v  41.735195 35.853699 -17.757248\r
+v  44.529316 32.884178 -12.392997\r
+v  42.576355 32.884178 -18.115141\r
+v  45.248501 29.964581 -12.593154\r
+v  43.264000 29.964584 -18.407717\r
+v  45.787056 27.101156 -12.743039\r
+v  43.778934 27.101158 -18.626810\r
+v  46.124908 24.300135 -12.837067\r
+v  44.101963 24.300135 -18.764252\r
+v  46.241985 21.567759 -12.869651\r
+v  44.213909 21.567759 -18.811878\r
+v  32.393013 54.369774 -19.025351\r
+v  33.667854 51.231747 -19.774101\r
+v  34.906708 48.106213 -20.501713\r
+v  36.091557 44.999386 -21.197611\r
+v  37.204422 41.917542 -21.851229\r
+v  38.227299 38.866894 -22.451994\r
+v  39.142185 35.853691 -22.989332\r
+v  39.931087 32.884178 -23.452677\r
+v  40.576008 29.964581 -23.831457\r
+v  41.058945 27.101156 -24.115103\r
+v  41.361908 24.300135 -24.293045\r
+v  41.466896 21.567759 -24.354704\r
+v  29.727114 54.369778 -23.001680\r
+v  30.897034 51.231758 -23.906919\r
+v  32.033928 48.106216 -24.786606\r
+v  33.121265 44.999401 -25.627945\r
+v  34.142544 41.917553 -26.418175\r
+v  35.081242 38.866901 -27.144495\r
+v  35.920830 35.853699 -27.794140\r
+v  36.644814 32.884182 -28.354324\r
+v  37.236656 29.964584 -28.812269\r
+v  37.679852 27.101158 -29.155201\r
+v  37.957882 24.300138 -29.370325\r
+v  38.054226 21.567760 -29.444876\r
+v  26.582798 54.369774 -26.582798\r
+v  27.628977 51.231747 -27.628977\r
+v  28.645618 48.106216 -28.645618\r
+v  29.617949 44.999393 -29.617949\r
+v  30.531204 41.917545 -30.531204\r
+v  31.370609 38.866901 -31.370609\r
+v  32.121395 35.853699 -32.121395\r
+v  32.768795 32.884178 -32.768795\r
+v  33.298035 29.964584 -33.298035\r
+v  33.694359 27.101158 -33.694359\r
+v  33.942982 24.300138 -33.942982\r
+v  34.029133 21.567760 -34.029133\r
+v  23.001680 54.369774 -29.727114\r
+v  23.906919 51.231747 -30.897032\r
+v  24.786606 48.106216 -32.033928\r
+v  25.627945 44.999401 -33.121265\r
+v  26.418171 41.917545 -34.142544\r
+v  27.144495 38.866901 -35.081238\r
+v  27.794140 35.853699 -35.920830\r
+v  28.354324 32.884178 -36.644806\r
+v  28.812269 29.964584 -37.236656\r
+v  29.155201 27.101156 -37.679848\r
+v  29.370325 24.300138 -37.957878\r
+v  29.444876 21.567760 -38.054226\r
+v  19.025354 54.369774 -32.393017\r
+v  19.774105 51.231747 -33.667862\r
+v  20.501720 48.106216 -34.906708\r
+v  21.197615 44.999393 -36.091560\r
+v  21.851233 41.917545 -37.204426\r
+v  22.451998 38.866901 -38.227303\r
+v  22.989336 35.853699 -39.142189\r
+v  23.452682 32.884178 -39.931087\r
+v  23.831461 29.964584 -40.576012\r
+v  24.115108 27.101158 -41.058956\r
+v  24.293045 24.300138 -41.361916\r
+v  24.354708 21.567760 -41.466900\r
+v  14.695426 54.369774 -34.538918\r
+v  15.273769 51.231747 -35.898209\r
+v  15.835786 48.106216 -37.219128\r
+v  16.373304 44.999393 -38.482468\r
+v  16.878166 41.917545 -39.669064\r
+v  17.342207 38.866898 -40.759697\r
+v  17.757254 35.853699 -41.735195\r
+v  18.115145 32.884178 -42.576355\r
+v  18.407721 29.964581 -43.264000\r
+v  18.626810 27.101156 -43.778934\r
+v  18.764254 24.300138 -44.101963\r
+v  18.811884 21.567760 -44.213909\r
+v  10.053489 54.369774 -36.123211\r
+v  10.449148 51.231747 -37.544853\r
+v  10.833637 48.106216 -38.926357\r
+v  11.201367 44.999393 -40.247650\r
+v  11.546757 41.917545 -41.488667\r
+v  11.864216 38.866898 -42.629330\r
+v  12.148159 35.853699 -43.649574\r
+v  12.393004 32.884178 -44.529316\r
+v  12.593160 29.964581 -45.248508\r
+v  12.743047 27.101156 -45.787060\r
+v  12.837073 24.300135 -46.124912\r
+v  12.869658 21.567759 -46.241985\r
+v  5.141150 54.369774 -37.104290\r
+v  5.343482 51.231747 -38.564541\r
+v  5.540102 48.106213 -39.983574\r
+v  5.728151 44.999393 -41.340752\r
+v  5.904776 41.917545 -42.615475\r
+v  6.067119 38.866901 -43.787117\r
+v  6.212322 35.853699 -44.835064\r
+v  6.337529 32.884178 -45.738708\r
+v  6.439886 29.964581 -46.477425\r
+v  6.516534 27.101156 -47.030609\r
+v  6.564618 24.300138 -47.377632\r
+v  6.581281 21.567760 -47.497890\r
+v  0.000007 54.369778 -37.440563\r
+v  0.000008 51.231750 -38.914051\r
+v  0.000008 48.106216 -40.345940\r
+v  0.000008 44.999397 -41.715416\r
+v  0.000009 41.917553 -43.001694\r
+v  0.000009 38.866901 -44.183952\r
+v  0.000009 35.853699 -45.241398\r
+v  0.000009 32.884178 -46.153229\r
+v  0.000009 29.964584 -46.898643\r
+v  0.000010 27.101158 -47.456837\r
+v  0.000010 24.300135 -47.807007\r
+v  0.000010 21.567759 -47.928356\r
+v  -5.141145 54.369774 -37.104298\r
+v  -5.343476 51.231747 -38.564548\r
+v  -5.540095 48.106216 -39.983578\r
+v  -5.728146 44.999401 -41.340752\r
+v  -5.904770 41.917545 -42.615479\r
+v  -6.067112 38.866901 -43.787121\r
+v  -6.212314 35.853699 -44.835064\r
+v  -6.337523 32.884182 -45.738712\r
+v  -6.439879 29.964586 -46.477436\r
+v  -6.516528 27.101158 -47.030609\r
+v  -6.564611 24.300138 -47.377636\r
+v  -6.581274 21.567760 -47.497890\r
+v  -10.053484 54.369774 -36.123207\r
+v  -10.449143 51.231747 -37.544853\r
+v  -10.833631 48.106213 -38.926357\r
+v  -11.201362 44.999393 -40.247650\r
+v  -11.546751 41.917545 -41.488667\r
+v  -11.864209 38.866898 -42.629330\r
+v  -12.148153 35.853691 -43.649567\r
+v  -12.392997 32.884178 -44.529316\r
+v  -12.593154 29.964581 -45.248501\r
+v  -12.743039 27.101156 -45.787056\r
+v  -12.837067 24.300135 -46.124908\r
+v  -12.869651 21.567759 -46.241985\r
+v  -14.695420 54.369774 -34.538918\r
+v  -15.273766 51.231747 -35.898209\r
+v  -15.835781 48.106216 -37.219128\r
+v  -16.373302 44.999393 -38.482468\r
+v  -16.878164 41.917545 -39.669064\r
+v  -17.342201 38.866901 -40.759697\r
+v  -17.757248 35.853699 -41.735195\r
+v  -18.115141 32.884178 -42.576355\r
+v  -18.407717 29.964584 -43.264000\r
+v  -18.626810 27.101158 -43.778934\r
+v  -18.764252 24.300135 -44.101963\r
+v  -18.811878 21.567759 -44.213909\r
+v  -19.025351 54.369774 -32.393013\r
+v  -19.774101 51.231747 -33.667854\r
+v  -20.501713 48.106213 -34.906708\r
+v  -21.197611 44.999386 -36.091557\r
+v  -21.851229 41.917542 -37.204422\r
+v  -22.451994 38.866894 -38.227299\r
+v  -22.989332 35.853691 -39.142185\r
+v  -23.452677 32.884178 -39.931087\r
+v  -23.831457 29.964581 -40.576008\r
+v  -24.115103 27.101156 -41.058945\r
+v  -24.293045 24.300135 -41.361908\r
+v  -24.354704 21.567759 -41.466896\r
+v  -23.001680 54.369778 -29.727114\r
+v  -23.906919 51.231758 -30.897034\r
+v  -24.786606 48.106216 -32.033928\r
+v  -25.627945 44.999401 -33.121265\r
+v  -26.418175 41.917553 -34.142544\r
+v  -27.144495 38.866901 -35.081242\r
+v  -27.794140 35.853699 -35.920830\r
+v  -28.354324 32.884182 -36.644814\r
+v  -28.812269 29.964584 -37.236656\r
+v  -29.155201 27.101158 -37.679852\r
+v  -29.370325 24.300138 -37.957882\r
+v  -29.444876 21.567760 -38.054226\r
+v  -26.582798 54.369774 -26.582798\r
+v  -27.628977 51.231747 -27.628977\r
+v  -28.645618 48.106216 -28.645618\r
+v  -29.617949 44.999393 -29.617949\r
+v  -30.531204 41.917545 -30.531204\r
+v  -31.370609 38.866901 -31.370609\r
+v  -32.121395 35.853699 -32.121395\r
+v  -32.768795 32.884178 -32.768795\r
+v  -33.298035 29.964584 -33.298035\r
+v  -33.694359 27.101158 -33.694359\r
+v  -33.942982 24.300138 -33.942982\r
+v  -34.029133 21.567760 -34.029133\r
+v  -29.727114 54.369774 -23.001680\r
+v  -30.897032 51.231747 -23.906919\r
+v  -32.033928 48.106216 -24.786606\r
+v  -33.121265 44.999401 -25.627945\r
+v  -34.142544 41.917545 -26.418171\r
+v  -35.081238 38.866901 -27.144495\r
+v  -35.920830 35.853699 -27.794140\r
+v  -36.644806 32.884178 -28.354324\r
+v  -37.236656 29.964584 -28.812269\r
+v  -37.679848 27.101156 -29.155201\r
+v  -37.957878 24.300138 -29.370325\r
+v  -38.054226 21.567760 -29.444876\r
+v  -32.393017 54.369774 -19.025354\r
+v  -33.667862 51.231747 -19.774105\r
+v  -34.906708 48.106216 -20.501720\r
+v  -36.091560 44.999393 -21.197615\r
+v  -37.204426 41.917545 -21.851233\r
+v  -38.227303 38.866901 -22.451998\r
+v  -39.142189 35.853699 -22.989336\r
+v  -39.931087 32.884178 -23.452682\r
+v  -40.576012 29.964584 -23.831461\r
+v  -41.058956 27.101158 -24.115108\r
+v  -41.361916 24.300138 -24.293045\r
+v  -41.466900 21.567760 -24.354708\r
+v  -34.538918 54.369774 -14.695426\r
+v  -35.898209 51.231747 -15.273769\r
+v  -37.219128 48.106216 -15.835786\r
+v  -38.482468 44.999393 -16.373304\r
+v  -39.669064 41.917545 -16.878166\r
+v  -40.759697 38.866898 -17.342207\r
+v  -41.735195 35.853699 -17.757254\r
+v  -42.576355 32.884178 -18.115145\r
+v  -43.264000 29.964581 -18.407721\r
+v  -43.778934 27.101156 -18.626810\r
+v  -44.101963 24.300138 -18.764254\r
+v  -44.213909 21.567760 -18.811884\r
+v  -36.123211 54.369774 -10.053489\r
+v  -37.544853 51.231747 -10.449148\r
+v  -38.926357 48.106216 -10.833637\r
+v  -40.247650 44.999393 -11.201367\r
+v  -41.488667 41.917545 -11.546757\r
+v  -42.629330 38.866898 -11.864216\r
+v  -43.649574 35.853699 -12.148159\r
+v  -44.529316 32.884178 -12.393004\r
+v  -45.248508 29.964581 -12.593160\r
+v  -45.787060 27.101156 -12.743047\r
+v  -46.124912 24.300135 -12.837073\r
+v  -46.241985 21.567759 -12.869658\r
+v  -37.104290 54.369774 -5.141150\r
+v  -41.340752 44.999393 -5.728151\r
+v  -39.983574 48.106213 -5.540102\r
+v  -42.615475 41.917545 -5.904776\r
+v  -43.787117 38.866901 -6.067119\r
+v  -44.835064 35.853699 -6.212322\r
+v  -45.738708 32.884178 -6.337529\r
+v  -46.477425 29.964581 -6.439886\r
+v  -47.030609 27.101156 -6.516534\r
+v  -47.377632 24.300138 -6.564618\r
+v  -47.497890 21.567760 -6.581281\r
+v  44.419323 12.514625 -6.154709\r
+v  44.821884 12.514625 -0.000000\r
+v  45.642506 14.462756 -6.324193\r
+v  43.031223 10.766197 -5.962375\r
+v  43.421204 10.766197 -0.000000\r
+v  41.560654 9.211231 -5.758615\r
+v  41.937313 9.211231 -0.000000\r
+v  40.090088 7.843483 -5.554854\r
+v  40.453419 7.843483 -0.000000\r
+v  38.701988 6.656717 -5.362520\r
+v  39.052734 6.656717 -0.000000\r
+v  37.478806 5.644688 -5.193037\r
+v  36.503010 4.801157 -5.057831\r
+v  35.857063 4.119884 -4.968328\r
+v  36.182026 4.119884 -0.000000\r
+v  35.623421 3.594627 -4.935956\r
+v  44.435658 14.462756 -12.366929\r
+v  46.618301 16.616825 -6.459398\r
+v  45.385651 16.616825 -12.631323\r
+v  43.244812 12.514625 -12.035506\r
+v  41.893414 10.766196 -11.659397\r
+v  40.461735 9.211230 -11.260944\r
+v  39.030056 7.843483 -10.862492\r
+v  37.678658 6.656716 -10.486382\r
+v  36.487820 5.644688 -10.154959\r
+v  35.537827 4.801157 -9.890565\r
+v  34.908958 4.119884 -9.715544\r
+v  34.681492 3.594626 -9.652238\r
+v  43.996426 18.983080 -18.719345\r
+v  46.014530 18.983080 -12.806345\r
+v  43.395134 16.616825 -18.463511\r
+v  42.486801 14.462756 -18.077042\r
+v  41.348186 12.514625 -17.592590\r
+v  40.056061 10.766196 -17.042824\r
+v  38.687168 9.211230 -16.460394\r
+v  37.318279 7.843483 -15.877967\r
+v  36.026146 6.656716 -15.328197\r
+v  34.887535 5.644688 -14.843750\r
+v  33.979206 4.801157 -14.457279\r
+v  33.377922 4.119884 -14.201446\r
+v  33.160431 3.594627 -14.108910\r
+v  41.262920 18.983080 -24.234907\r
+v  40.698986 16.616825 -23.903692\r
+v  39.847095 14.462756 -23.403347\r
+v  38.779217 12.514625 -22.776155\r
+v  37.567375 10.766196 -22.064405\r
+v  36.283531 9.211230 -21.310366\r
+v  34.999691 7.843483 -20.556332\r
+v  33.787842 6.656716 -19.844574\r
+v  32.719971 5.644688 -19.217384\r
+v  31.868082 4.801157 -18.717041\r
+v  31.304150 4.119884 -18.385828\r
+v  31.100172 3.594626 -18.266027\r
+v  37.867046 18.983082 -29.300041\r
+v  37.349522 16.616825 -28.899599\r
+v  36.567734 14.462756 -28.294683\r
+v  35.587746 12.514625 -27.536409\r
+v  34.475636 10.766197 -26.675900\r
+v  33.297447 9.211231 -25.764263\r
+v  32.119263 7.843483 -24.852631\r
+v  31.007147 6.656717 -23.992121\r
+v  30.027161 5.644688 -23.233847\r
+v  29.245382 4.801157 -22.628931\r
+v  28.727856 4.119884 -22.228493\r
+v  28.540670 3.594627 -22.083654\r
+v  33.861748 18.983082 -33.861748\r
+v  33.398964 16.616825 -33.398964\r
+v  32.699871 14.462756 -32.699871\r
+v  31.823540 12.514625 -31.823540\r
+v  30.829054 10.766197 -30.829054\r
+v  29.775494 9.211231 -29.775494\r
+v  28.721928 7.843483 -28.721928\r
+v  27.727442 6.656717 -27.727442\r
+v  26.851114 5.644688 -26.851114\r
+v  26.152021 4.801157 -26.152021\r
+v  25.689240 4.119884 -25.689240\r
+v  25.521851 3.594627 -25.521851\r
+v  29.300041 18.983082 -37.867043\r
+v  28.899599 16.616825 -37.349514\r
+v  28.294683 14.462756 -36.567726\r
+v  27.536409 12.514625 -35.587742\r
+v  26.675900 10.766197 -34.475636\r
+v  25.764267 9.211231 -33.297447\r
+v  24.852631 7.843483 -32.119263\r
+v  23.992121 6.656717 -31.007145\r
+v  23.233847 5.644688 -30.027161\r
+v  22.628931 4.801157 -29.245382\r
+v  22.228495 4.119884 -28.727856\r
+v  22.083656 3.594627 -28.540670\r
+v  24.234909 18.983082 -41.262928\r
+v  23.903692 16.616825 -40.698994\r
+v  23.403353 14.462756 -39.847099\r
+v  22.776157 12.514625 -38.779228\r
+v  22.064407 10.766197 -37.567383\r
+v  21.310369 9.211231 -36.283535\r
+v  20.556332 7.843483 -34.999695\r
+v  19.844578 6.656717 -33.787846\r
+v  19.217386 5.644688 -32.719975\r
+v  18.717045 4.801157 -31.868082\r
+v  18.385832 4.119884 -31.304153\r
+v  18.266031 3.594627 -31.100174\r
+v  18.719349 18.983082 -43.996426\r
+v  18.463514 16.616825 -43.395134\r
+v  18.077044 14.462756 -42.486801\r
+v  17.592594 12.514625 -41.348186\r
+v  17.042826 10.766197 -40.056061\r
+v  16.460398 9.211231 -38.687168\r
+v  15.877970 7.843483 -37.318279\r
+v  15.328202 6.656717 -36.026146\r
+v  14.843753 5.644688 -34.887535\r
+v  14.457282 4.801157 -33.979206\r
+v  14.201448 4.119884 -33.377922\r
+v  14.108912 3.594627 -33.160431\r
+v  12.806354 18.983080 -46.014530\r
+v  12.631330 16.616825 -45.385651\r
+v  12.366937 14.462756 -44.435661\r
+v  12.035512 12.514625 -43.244812\r
+v  11.659403 10.766196 -41.893421\r
+v  11.260950 9.211230 -40.461735\r
+v  10.862497 7.843483 -39.030056\r
+v  10.486387 6.656716 -37.678658\r
+v  10.154963 5.644688 -36.487820\r
+v  9.890569 4.801157 -35.537827\r
+v  9.715548 4.119884 -34.908958\r
+v  9.652243 3.594627 -34.681492\r
+v  6.548908 18.983082 -47.264248\r
+v  6.459405 16.616825 -46.618294\r
+v  6.324201 14.462756 -45.642502\r
+v  6.154716 12.514625 -44.419312\r
+v  5.962382 10.766197 -43.031219\r
+v  5.758621 9.211231 -41.560650\r
+v  5.554860 7.843483 -40.090088\r
+v  5.362525 6.656717 -38.701984\r
+v  5.193042 5.644688 -37.478802\r
+v  5.057836 4.801157 -36.503010\r
+v  4.968334 4.119884 -35.857056\r
+v  4.935961 3.594626 -35.623413\r
+v  0.000010 18.983080 -47.692604\r
+v  0.000009 16.616825 -47.040791\r
+v  0.000009 14.462756 -46.056156\r
+v  0.000009 12.514625 -44.821884\r
+v  0.000009 10.766196 -43.421204\r
+v  0.000008 9.211230 -41.937313\r
+v  0.000008 7.843483 -40.453419\r
+v  0.000008 6.656716 -39.052734\r
+v  0.000008 5.644688 -37.818470\r
+v  0.000007 4.801157 -36.833832\r
+v  0.000007 4.119884 -36.182026\r
+v  0.000007 3.594627 -35.946266\r
+v  -6.548901 18.983082 -47.264252\r
+v  -6.459398 16.616825 -46.618301\r
+v  -6.324193 14.462756 -45.642506\r
+v  -6.154709 12.514625 -44.419323\r
+v  -5.962375 10.766197 -43.031223\r
+v  -5.758615 9.211231 -41.560654\r
+v  -5.554854 7.843483 -40.090088\r
+v  -5.362520 6.656717 -38.701988\r
+v  -5.193037 5.644688 -37.478806\r
+v  -5.057831 4.801157 -36.503010\r
+v  -4.968328 4.119884 -35.857063\r
+v  -4.935956 3.594627 -35.623421\r
+v  -12.806345 18.983080 -46.014530\r
+v  -12.631323 16.616825 -45.385651\r
+v  -12.366929 14.462756 -44.435658\r
+v  -12.035506 12.514625 -43.244812\r
+v  -11.659397 10.766196 -41.893414\r
+v  -11.260944 9.211230 -40.461735\r
+v  -10.862492 7.843483 -39.030056\r
+v  -10.486382 6.656716 -37.678658\r
+v  -10.154959 5.644688 -36.487820\r
+v  -9.890565 4.801157 -35.537827\r
+v  -9.715544 4.119884 -34.908958\r
+v  -9.652238 3.594626 -34.681492\r
+v  -18.719345 18.983080 -43.996426\r
+v  -18.463511 16.616825 -43.395134\r
+v  -18.077042 14.462756 -42.486801\r
+v  -17.592590 12.514625 -41.348186\r
+v  -17.042824 10.766196 -40.056061\r
+v  -16.460394 9.211230 -38.687168\r
+v  -15.877967 7.843483 -37.318279\r
+v  -15.328197 6.656716 -36.026146\r
+v  -14.843750 5.644688 -34.887535\r
+v  -14.457279 4.801157 -33.979206\r
+v  -14.201446 4.119884 -33.377922\r
+v  -14.108910 3.594627 -33.160431\r
+v  -24.234907 18.983080 -41.262920\r
+v  -23.903692 16.616825 -40.698986\r
+v  -23.403347 14.462756 -39.847095\r
+v  -22.776155 12.514625 -38.779217\r
+v  -22.064405 10.766196 -37.567375\r
+v  -21.310366 9.211230 -36.283531\r
+v  -20.556332 7.843483 -34.999691\r
+v  -19.844574 6.656716 -33.787842\r
+v  -19.217384 5.644688 -32.719971\r
+v  -18.717041 4.801157 -31.868082\r
+v  -18.385828 4.119884 -31.304150\r
+v  -18.266027 3.594626 -31.100172\r
+v  -29.300041 18.983082 -37.867046\r
+v  -28.899599 16.616825 -37.349522\r
+v  -28.294683 14.462756 -36.567734\r
+v  -27.536409 12.514625 -35.587746\r
+v  -26.675900 10.766197 -34.475636\r
+v  -25.764263 9.211231 -33.297447\r
+v  -24.852631 7.843483 -32.119263\r
+v  -23.992121 6.656717 -31.007147\r
+v  -23.233847 5.644688 -30.027161\r
+v  -22.628931 4.801157 -29.245382\r
+v  -22.228493 4.119884 -28.727856\r
+v  -22.083654 3.594627 -28.540670\r
+v  -33.861748 18.983082 -33.861748\r
+v  -33.398964 16.616825 -33.398964\r
+v  -32.699871 14.462756 -32.699871\r
+v  -31.823540 12.514625 -31.823540\r
+v  -30.829054 10.766197 -30.829054\r
+v  -29.775494 9.211231 -29.775494\r
+v  -28.721928 7.843483 -28.721928\r
+v  -27.727442 6.656717 -27.727442\r
+v  -26.851114 5.644688 -26.851114\r
+v  -26.152021 4.801157 -26.152021\r
+v  -25.689240 4.119884 -25.689240\r
+v  -25.521851 3.594627 -25.521851\r
+v  -37.867043 18.983082 -29.300041\r
+v  -37.349514 16.616825 -28.899599\r
+v  -36.567726 14.462756 -28.294683\r
+v  -35.587742 12.514625 -27.536409\r
+v  -34.475636 10.766197 -26.675900\r
+v  -33.297447 9.211231 -25.764267\r
+v  -32.119263 7.843483 -24.852631\r
+v  -31.007145 6.656717 -23.992121\r
+v  -30.027161 5.644688 -23.233847\r
+v  -29.245382 4.801157 -22.628931\r
+v  -28.727856 4.119884 -22.228495\r
+v  -28.540670 3.594627 -22.083656\r
+v  -41.262928 18.983082 -24.234909\r
+v  -40.698994 16.616825 -23.903692\r
+v  -39.847099 14.462756 -23.403353\r
+v  -38.779228 12.514625 -22.776157\r
+v  -37.567383 10.766197 -22.064407\r
+v  -36.283535 9.211231 -21.310369\r
+v  -34.999695 7.843483 -20.556332\r
+v  -33.787846 6.656717 -19.844578\r
+v  -32.719975 5.644688 -19.217386\r
+v  -31.868082 4.801157 -18.717045\r
+v  -31.304153 4.119884 -18.385832\r
+v  -31.100174 3.594627 -18.266031\r
+v  -43.996426 18.983082 -18.719349\r
+v  -43.395134 16.616825 -18.463514\r
+v  -42.486801 14.462756 -18.077044\r
+v  -41.348186 12.514625 -17.592594\r
+v  -40.056061 10.766197 -17.042826\r
+v  -38.687168 9.211231 -16.460398\r
+v  -37.318279 7.843483 -15.877970\r
+v  -36.026146 6.656717 -15.328202\r
+v  -34.887535 5.644688 -14.843753\r
+v  -33.979206 4.801157 -14.457282\r
+v  -33.377922 4.119884 -14.201448\r
+v  -33.160431 3.594627 -14.108912\r
+v  -46.014530 18.983080 -12.806354\r
+v  -45.385651 16.616825 -12.631330\r
+v  -44.435661 14.462756 -12.366937\r
+v  -43.244812 12.514625 -12.035512\r
+v  -41.893421 10.766196 -11.659403\r
+v  -40.461735 9.211230 -11.260950\r
+v  -39.030056 7.843483 -10.862497\r
+v  -37.678658 6.656716 -10.486387\r
+v  -36.487820 5.644688 -10.154963\r
+v  -35.537827 4.801157 -9.890569\r
+v  -34.908958 4.119884 -9.715548\r
+v  -34.681492 3.594627 -9.652243\r
+v  -47.264248 18.983082 -6.548908\r
+v  -46.618294 16.616825 -6.459405\r
+v  -45.642502 14.462756 -6.324201\r
+v  -44.419312 12.514625 -6.154716\r
+v  -43.031219 10.766197 -5.962382\r
+v  -41.560650 9.211231 -5.758621\r
+v  -40.090088 7.843483 -5.554860\r
+v  -38.701984 6.656717 -5.362525\r
+v  -37.478802 5.644688 -5.193042\r
+v  -36.503010 4.801157 -5.057836\r
+v  -35.857056 4.119884 -4.968334\r
+v  -35.623413 3.594626 -4.935961\r
+v  35.568790 3.146339 -4.928387\r
+v  35.891144 3.146339 -0.000000\r
+v  35.334801 2.704291 -4.895965\r
+v  35.655033 2.704291 -0.000000\r
+v  34.816326 2.274725 -4.824125\r
+v  33.908211 1.863880 -4.698298\r
+v  34.215515 1.863880 -0.000000\r
+v  32.505341 1.477999 -4.503916\r
+v  32.799927 1.477999 -0.000000\r
+v  30.502554 1.123321 -4.226412\r
+v  30.778990 1.123321 -0.000000\r
+v  27.794718 0.806087 -3.851217\r
+v  28.046618 0.806087 -0.000000\r
+v  24.276701 0.532537 -3.363762\r
+v  24.496717 0.532537 -0.000000\r
+v  19.843359 0.308913 -2.749482\r
+v  20.023197 0.308913 -0.000000\r
+v  14.389556 0.141455 -1.993807\r
+v  7.810153 0.036404 -1.082169\r
+v  0.000000 0.000000 -0.000000\r
+v  34.628307 3.146338 -9.637437\r
+v  34.400505 2.704291 -9.574037\r
+v  33.895737 2.274725 -9.433555\r
+v  33.011635 1.863880 -9.187500\r
+v  31.645857 1.477999 -8.807388\r
+v  29.696024 1.123321 -8.264729\r
+v  27.059790 0.806087 -7.531036\r
+v  23.634796 0.532537 -6.577822\r
+v  19.318676 0.308913 -5.376599\r
+v  14.009078 0.141455 -3.898880\r
+v  7.603642 0.036404 -2.116177\r
+v  33.109577 3.146339 -14.087273\r
+v  32.891766 2.704291 -13.994600\r
+v  32.409138 2.274725 -13.789255\r
+v  31.563812 1.863880 -13.429590\r
+v  30.257933 1.477999 -12.873972\r
+v  28.393620 1.123321 -12.080754\r
+v  25.873001 0.806087 -11.008297\r
+v  22.598221 0.532537 -9.614961\r
+v  18.471399 0.308913 -7.859105\r
+v  13.394670 0.141455 -5.699087\r
+v  7.270164 0.036404 -3.093267\r
+v  31.052481 3.146338 -18.238018\r
+v  30.848204 2.704291 -18.118038\r
+v  30.395559 2.274725 -17.852188\r
+v  29.602753 1.863880 -17.386549\r
+v  28.378010 1.477999 -16.667221\r
+v  26.629522 1.123321 -15.640286\r
+v  24.265514 0.806087 -14.251836\r
+v  21.194193 0.532537 -12.447960\r
+v  17.323772 0.308913 -10.174749\r
+v  12.562461 0.141455 -7.378294\r
+v  6.818469 0.036404 -4.004683\r
+v  28.496904 3.146339 -22.049788\r
+v  28.309437 2.704291 -21.904737\r
+v  27.894047 2.274725 -21.583321\r
+v  27.166487 1.863880 -21.020367\r
+v  26.042534 1.477999 -20.150698\r
+v  24.437948 1.123321 -18.909130\r
+v  22.268492 0.806087 -17.230492\r
+v  19.449940 0.532537 -15.049603\r
+v  15.898048 0.308913 -12.301289\r
+v  11.528585 0.141455 -8.920369\r
+v  6.257318 0.036404 -4.841668\r
+v  25.482714 3.146339 -25.482714\r
+v  25.315073 2.704291 -25.315073\r
+v  24.943621 2.274725 -24.943621\r
+v  24.293016 1.863880 -24.293016\r
+v  23.287952 1.477999 -23.287952\r
+v  21.853083 1.123321 -21.853083\r
+v  19.913099 0.806087 -19.913099\r
+v  17.392668 0.532537 -17.392668\r
+v  14.216470 0.308913 -14.216470\r
+v  10.309177 0.141455 -10.309177\r
+v  5.595465 0.036404 -5.595465\r
+v  22.049791 3.146339 -28.496904\r
+v  21.904737 2.704291 -28.309437\r
+v  21.583323 2.274725 -27.894047\r
+v  21.020367 1.863880 -27.166487\r
+v  20.150698 1.477999 -26.042534\r
+v  18.909132 1.123321 -24.437948\r
+v  17.230492 0.806087 -22.268492\r
+v  15.049603 0.532537 -19.449940\r
+v  12.301289 0.308913 -15.898048\r
+v  8.920369 0.141455 -11.528585\r
+v  4.841668 0.036404 -6.257318\r
+v  18.238020 3.146339 -31.052485\r
+v  18.118040 2.704291 -30.848204\r
+v  17.852192 2.274725 -30.395563\r
+v  17.386553 1.863880 -29.602753\r
+v  16.667225 1.477999 -28.378010\r
+v  15.640289 1.123321 -26.629526\r
+v  14.251838 0.806087 -24.265516\r
+v  12.447963 0.532537 -21.194197\r
+v  10.174751 0.308913 -17.323774\r
+v  7.378296 0.141455 -12.562461\r
+v  4.004683 0.036404 -6.818470\r
+v  14.087277 3.146339 -33.109577\r
+v  13.994604 2.704291 -32.891766\r
+v  13.789256 2.274725 -32.409138\r
+v  13.429593 1.863880 -31.563814\r
+v  12.873975 1.477999 -30.257933\r
+v  12.080755 1.123321 -28.393620\r
+v  11.008299 0.806087 -25.873003\r
+v  9.614964 0.532537 -22.598221\r
+v  7.859107 0.308913 -18.471399\r
+v  5.699088 0.141455 -13.394670\r
+v  3.093268 0.036404 -7.270164\r
+v  9.637440 3.146339 -34.628307\r
+v  9.574040 2.704291 -34.400505\r
+v  9.433558 2.274725 -33.895741\r
+v  9.187503 1.863880 -33.011635\r
+v  8.807392 1.477999 -31.645857\r
+v  8.264732 1.123321 -29.696026\r
+v  7.531040 0.806087 -27.059790\r
+v  6.577825 0.532537 -23.634796\r
+v  5.376601 0.308913 -19.318676\r
+v  3.898881 0.141455 -14.009079\r
+v  2.116178 0.036404 -7.603643\r
+v  4.928391 3.146338 -35.568783\r
+v  4.895970 2.704291 -35.334793\r
+v  4.824131 2.274725 -34.816326\r
+v  4.698303 1.863880 -33.908211\r
+v  4.503921 1.477999 -32.505333\r
+v  4.226416 1.123321 -30.502548\r
+v  3.851221 0.806087 -27.794718\r
+v  3.363766 0.532537 -24.276699\r
+v  2.749485 0.308913 -19.843359\r
+v  1.993809 0.141455 -14.389556\r
+v  1.082171 0.036404 -7.810153\r
+v  0.000007 3.146339 -35.891144\r
+v  0.000007 2.704291 -35.655033\r
+v  0.000007 2.274725 -35.131859\r
+v  0.000007 1.863880 -34.215515\r
+v  0.000007 1.477999 -32.799927\r
+v  0.000006 1.123321 -30.778990\r
+v  0.000006 0.806087 -28.046618\r
+v  0.000005 0.532537 -24.496717\r
+v  0.000004 0.308913 -20.023197\r
+v  0.000003 0.141455 -14.519970\r
+v  0.000002 0.036404 -7.880936\r
+v  -4.928387 3.146339 -35.568790\r
+v  -4.895965 2.704291 -35.334801\r
+v  -4.824125 2.274725 -34.816326\r
+v  -4.698298 1.863880 -33.908211\r
+v  -4.503916 1.477999 -32.505341\r
+v  -4.226412 1.123321 -30.502554\r
+v  -3.851217 0.806087 -27.794718\r
+v  -3.363762 0.532537 -24.276701\r
+v  -2.749482 0.308913 -19.843359\r
+v  -1.993807 0.141455 -14.389556\r
+v  -1.082169 0.036404 -7.810153\r
+v  -9.637437 3.146338 -34.628307\r
+v  -9.574037 2.704291 -34.400505\r
+v  -9.433555 2.274725 -33.895737\r
+v  -9.187500 1.863880 -33.011635\r
+v  -8.807388 1.477999 -31.645857\r
+v  -8.264729 1.123321 -29.696024\r
+v  -7.531036 0.806087 -27.059790\r
+v  -6.577822 0.532537 -23.634796\r
+v  -5.376599 0.308913 -19.318676\r
+v  -3.898880 0.141455 -14.009078\r
+v  -2.116177 0.036404 -7.603642\r
+v  -14.087273 3.146339 -33.109577\r
+v  -13.994600 2.704291 -32.891766\r
+v  -13.789255 2.274725 -32.409138\r
+v  -13.429590 1.863880 -31.563812\r
+v  -12.873972 1.477999 -30.257933\r
+v  -12.080754 1.123321 -28.393620\r
+v  -11.008297 0.806087 -25.873001\r
+v  -9.614961 0.532537 -22.598221\r
+v  -7.859105 0.308913 -18.471399\r
+v  -5.699087 0.141455 -13.394670\r
+v  -3.093267 0.036404 -7.270164\r
+v  -18.238018 3.146338 -31.052481\r
+v  -18.118038 2.704291 -30.848204\r
+v  -17.852188 2.274725 -30.395559\r
+v  -17.386549 1.863880 -29.602753\r
+v  -16.667221 1.477999 -28.378010\r
+v  -15.640286 1.123321 -26.629522\r
+v  -14.251836 0.806087 -24.265514\r
+v  -12.447960 0.532537 -21.194193\r
+v  -10.174749 0.308913 -17.323772\r
+v  -7.378294 0.141455 -12.562461\r
+v  -4.004683 0.036404 -6.818469\r
+v  -22.049788 3.146339 -28.496904\r
+v  -21.904737 2.704291 -28.309437\r
+v  -21.583321 2.274725 -27.894047\r
+v  -21.020367 1.863880 -27.166487\r
+v  -20.150698 1.477999 -26.042534\r
+v  -18.909130 1.123321 -24.437948\r
+v  -17.230492 0.806087 -22.268492\r
+v  -15.049603 0.532537 -19.449940\r
+v  -12.301289 0.308913 -15.898048\r
+v  -8.920369 0.141455 -11.528585\r
+v  -4.841668 0.036404 -6.257318\r
+v  -25.482714 3.146339 -25.482714\r
+v  -25.315073 2.704291 -25.315073\r
+v  -24.943621 2.274725 -24.943621\r
+v  -24.293016 1.863880 -24.293016\r
+v  -23.287952 1.477999 -23.287952\r
+v  -21.853083 1.123321 -21.853083\r
+v  -19.913099 0.806087 -19.913099\r
+v  -17.392668 0.532537 -17.392668\r
+v  -14.216470 0.308913 -14.216470\r
+v  -10.309177 0.141455 -10.309177\r
+v  -5.595465 0.036404 -5.595465\r
+v  -28.496904 3.146339 -22.049791\r
+v  -28.309437 2.704291 -21.904737\r
+v  -27.894047 2.274725 -21.583323\r
+v  -27.166487 1.863880 -21.020367\r
+v  -26.042534 1.477999 -20.150698\r
+v  -24.437948 1.123321 -18.909132\r
+v  -22.268492 0.806087 -17.230492\r
+v  -19.449940 0.532537 -15.049603\r
+v  -15.898048 0.308913 -12.301289\r
+v  -11.528585 0.141455 -8.920369\r
+v  -6.257318 0.036404 -4.841668\r
+v  -31.052485 3.146339 -18.238020\r
+v  -30.848204 2.704291 -18.118040\r
+v  -30.395563 2.274725 -17.852192\r
+v  -29.602753 1.863880 -17.386553\r
+v  -28.378010 1.477999 -16.667225\r
+v  -26.629526 1.123321 -15.640289\r
+v  -24.265516 0.806087 -14.251838\r
+v  -21.194197 0.532537 -12.447963\r
+v  -17.323774 0.308913 -10.174751\r
+v  -12.562461 0.141455 -7.378296\r
+v  -6.818470 0.036404 -4.004683\r
+v  -33.109577 3.146339 -14.087277\r
+v  -32.891766 2.704291 -13.994604\r
+v  -32.409138 2.274725 -13.789256\r
+v  -31.563814 1.863880 -13.429593\r
+v  -30.257933 1.477999 -12.873975\r
+v  -28.393620 1.123321 -12.080755\r
+v  -25.873003 0.806087 -11.008299\r
+v  -22.598221 0.532537 -9.614964\r
+v  -18.471399 0.308913 -7.859107\r
+v  -13.394670 0.141455 -5.699088\r
+v  -7.270164 0.036404 -3.093268\r
+v  -34.628307 3.146339 -9.637440\r
+v  -34.400505 2.704291 -9.574040\r
+v  -33.895741 2.274725 -9.433558\r
+v  -33.011635 1.863880 -9.187503\r
+v  -31.645857 1.477999 -8.807392\r
+v  -29.696026 1.123321 -8.264732\r
+v  -27.059790 0.806087 -7.531040\r
+v  -23.634796 0.532537 -6.577825\r
+v  -19.318676 0.308913 -5.376601\r
+v  -14.009079 0.141455 -3.898881\r
+v  -7.603643 0.036404 -2.116178\r
+v  -35.568783 3.146338 -4.928391\r
+v  -35.334793 2.704291 -4.895970\r
+v  -34.816326 2.274725 -4.824131\r
+v  -33.908211 1.863880 -4.698303\r
+v  -32.505333 1.477999 -4.503921\r
+v  -30.502548 1.123321 -4.226416\r
+v  -27.794718 0.806087 -3.851221\r
+v  -24.276699 0.532537 -3.363766\r
+v  -19.843359 0.308913 -2.749485\r
+v  -14.389556 0.141455 -1.993809\r
+v  -7.810153 0.036404 -1.082171\r
+v  46.611931 16.192183 -3.589138\r
+v  46.791389 17.264900 -6.503068\r
+v  45.543552 34.106937 -3.580874\r
+v  49.423805 35.054642 -3.457794\r
+v  49.337357 35.380440 -0.000000\r
+v  45.739914 29.668732 -10.426750\r
+v  45.973091 27.509882 -11.405255\r
+v  50.989983 29.151812 -11.002073\r
+v  50.476391 31.087479 -10.059037\r
+v  45.634232 33.107201 -6.511440\r
+v  45.588146 31.575136 -8.795704\r
+v  50.023823 32.793163 -8.487313\r
+v  49.662792 34.153881 -6.286899\r
+v  53.112007 34.498234 -8.033149\r
+v  52.650467 35.702877 -5.950480\r
+v  52.344936 36.500320 -3.272764\r
+v  54.880917 37.672073 -5.528771\r
+v  54.533287 38.360096 -3.040825\r
+v  54.407547 38.608952 -0.000000\r
+v  57.740509 22.417860 -3.272768\r
+v  60.672256 26.210045 -3.040828\r
+v  57.434978 23.215300 -5.950482\r
+v  60.324638 26.898060 -5.528774\r
+v  56.973431 24.419945 -8.033150\r
+v  59.799496 27.937405 -7.463843\r
+v  56.394867 25.929993 -9.520769\r
+v  59.141212 29.240244 -8.846037\r
+v  55.738300 27.643641 -10.413341\r
+v  58.394184 30.718739 -9.675351\r
+v  55.042717 29.459087 -10.710864\r
+v  57.602779 32.285069 -9.951789\r
+v  54.347149 31.274536 -10.413341\r
+v  56.811371 33.851402 -9.675352\r
+v  53.690571 32.988190 -9.520767\r
+v  56.064331 35.329899 -8.846035\r
+v  55.406059 36.632732 -7.463842\r
+v  57.794621 38.009075 -8.080328\r
+v  57.087494 39.099564 -6.817777\r
+v  56.523369 39.969490 -5.050206\r
+v  58.337791 41.801575 -6.133332\r
+v  57.747009 42.503128 -4.543209\r
+v  56.149952 40.545368 -2.777613\r
+v  57.355930 42.967541 -2.498765\r
+v  57.214478 43.135521 -0.000000\r
+v  62.744545 30.375706 -2.777616\r
+v  64.262268 34.766262 -2.498768\r
+v  62.371117 30.951574 -5.050207\r
+v  63.871189 35.230667 -4.543211\r
+v  61.807003 31.821510 -6.817778\r
+v  63.280403 35.932228 -6.133333\r
+v  61.099873 32.911991 -8.080328\r
+v  62.539845 36.811642 -7.269135\r
+v  60.297394 34.149506 -8.837859\r
+v  61.699436 37.809624 -7.950616\r
+v  59.447247 35.460533 -9.090370\r
+v  60.809101 38.866901 -8.177775\r
+v  58.597103 36.771564 -8.837859\r
+v  59.918762 39.924179 -7.950616\r
+v  59.078346 40.922157 -7.269134\r
+v  60.990799 43.198395 -7.063371\r
+v  60.112453 43.965599 -6.457939\r
+v  59.338467 44.641663 -5.448886\r
+v  61.093857 47.035858 -5.692232\r
+v  60.271011 47.522709 -4.802821\r
+v  58.721008 45.180992 -4.036212\r
+v  59.614590 47.911095 -3.557645\r
+v  58.312286 45.538013 -2.219917\r
+v  59.180054 48.168198 -1.956705\r
+v  58.164444 45.667152 -0.000000\r
+v  65.530373 39.233181 -2.219919\r
+v  66.853760 43.627918 -1.956707\r
+v  65.121628 39.590202 -4.036214\r
+v  66.419228 43.885017 -3.557647\r
+v  64.504189 40.129532 -5.448887\r
+v  65.762802 44.273403 -4.802822\r
+v  63.730198 40.805595 -6.457941\r
+v  64.939964 44.760250 -5.692233\r
+v  62.851849 41.572807 -7.063371\r
+v  64.006172 45.312740 -6.225880\r
+v  61.921326 42.385597 -7.265182\r
+v  63.016911 45.898056 -6.403761\r
+v  62.027649 46.483372 -6.225879\r
+v  64.328835 49.285702 -5.644688\r
+v  63.243740 49.668266 -5.487890\r
+v  62.219490 50.029373 -5.017500\r
+v  64.853516 52.642239 -4.899158\r
+v  63.686272 52.842609 -4.479230\r
+v  61.316933 50.347591 -4.233516\r
+v  62.657722 53.019180 -3.779351\r
+v  60.596912 50.601437 -3.135938\r
+v  61.837189 53.160042 -2.799519\r
+v  60.120293 50.769482 -1.724766\r
+v  61.294029 53.253281 -1.539736\r
+v  61.097557 53.287006 -0.000000\r
+v  68.537384 47.801914 -1.724768\r
+v  70.886154 51.606632 -1.539737\r
+v  68.060760 47.969963 -3.135939\r
+v  70.342995 51.699875 -2.799520\r
+v  67.340744 48.223812 -4.233516\r
+v  69.522461 51.840736 -3.779352\r
+v  66.438179 48.542023 -5.017500\r
+v  68.493912 52.017307 -4.479231\r
+v  65.413933 48.903137 -5.487891\r
+v  67.326675 52.217678 -4.899158\r
+v  66.090096 52.429958 -5.039135\r
+v  69.995918 55.130070 -4.509435\r
+v  68.533661 55.212254 -4.638275\r
+v  67.071411 55.294441 -4.509434\r
+v  71.892532 57.514030 -4.493283\r
+v  70.111862 57.514034 -4.368470\r
+v  65.691147 55.372009 -4.122911\r
+v  68.431038 57.514023 -3.994030\r
+v  64.474884 55.440365 -3.478706\r
+v  66.949921 57.514030 -3.369962\r
+v  63.504601 55.494896 -2.576819\r
+v  65.768356 57.514023 -2.496269\r
+v  62.862305 55.530991 -1.417251\r
+v  64.986191 57.514030 -1.372948\r
+v  62.629990 55.544048 -0.000000\r
+v  74.205009 54.893520 -1.417252\r
+v  78.798874 57.514023 -1.372949\r
+v  73.562721 54.929611 -2.576821\r
+v  78.016716 57.514030 -2.496269\r
+v  72.592430 54.984146 -3.478707\r
+v  76.835136 57.514030 -3.369963\r
+v  71.376167 55.052502 -4.122912\r
+v  75.354027 57.514030 -3.994030\r
+v  73.673203 57.514030 -4.368470\r
+v  76.397484 58.008545 -3.962596\r
+v  74.646103 57.995506 -4.334089\r
+v  72.790680 57.981686 -4.457920\r
+v  75.432335 58.399166 -4.239034\r
+v  73.535912 58.372112 -4.360149\r
+v  70.935257 57.967876 -4.334088\r
+v  71.639481 58.345070 -4.239034\r
+v  69.183861 57.954823 -3.962595\r
+v  69.849388 58.319519 -3.875688\r
+v  67.640572 57.943344 -3.343440\r
+v  68.271988 58.297031 -3.270112\r
+v  66.409401 57.934174 -2.476622\r
+v  67.013603 58.279087 -2.422305\r
+v  65.594398 57.928104 -1.362142\r
+v  66.180603 58.267200 -1.332268\r
+v  65.299614 57.925911 -0.000000\r
+v  65.879295 58.262897 -0.000000\r
+v  79.986946 58.035267 -1.362144\r
+v  81.192513 58.481331 -0.000000\r
+v  80.891205 58.477028 -1.332269\r
+v  79.171951 58.029205 -2.476623\r
+v  80.058205 58.465145 -2.422306\r
+v  77.940773 58.020042 -3.343441\r
+v  78.799828 58.447201 -3.270112\r
+v  77.222420 58.424698 -3.875689\r
+v  79.418495 58.791588 -3.159341\r
+v  77.832268 58.759048 -3.744403\r
+v  76.032166 58.722103 -4.095440\r
+v  78.230362 59.008087 -3.579834\r
+v  76.445808 58.961399 -3.915443\r
+v  74.125130 58.682983 -4.212453\r
+v  74.555214 58.911930 -4.027312\r
+v  72.218109 58.643852 -4.095440\r
+v  72.664627 58.862473 -3.915443\r
+v  70.417992 58.606922 -3.744403\r
+v  70.880043 58.815773 -3.579833\r
+v  68.831779 58.574375 -3.159340\r
+v  69.307495 58.774635 -3.020484\r
+v  67.566368 58.548412 -2.340252\r
+v  68.052994 58.741817 -2.237396\r
+v  66.728699 58.531227 -1.287138\r
+v  67.222557 58.720093 -1.230568\r
+v  81.521576 58.834728 -1.287140\r
+v  81.824554 58.840958 -0.000000\r
+v  81.887871 59.103779 -1.230569\r
+v  80.683899 58.817543 -2.340252\r
+v  81.057426 59.082050 -2.237397\r
+v  79.802925 59.049225 -3.020485\r
+v  81.187202 59.254341 -2.120673\r
+v  79.959320 59.216202 -2.862908\r
+v  78.420166 59.168381 -3.393076\r
+v  82.000008 59.279587 -1.166371\r
+v  82.293999 59.288723 -0.000000\r
+v  67.646095 58.833702 -1.166370\r
+v  68.458908 58.858944 -2.120673\r
+v  69.686768 58.897091 -2.862908\r
+v  71.225914 58.944897 -3.393076\r
+v  72.972603 58.999165 -3.711177\r
+v  74.823051 59.056648 -3.817210\r
+v  76.673500 59.114124 -3.711177\r
+v  51.534077 27.101156 -11.316417\r
+v  46.228214 25.222334 -11.731899\r
+v  52.078167 25.050499 -11.002073\r
+v  46.472443 22.931341 -11.406939\r
+v  52.591747 23.114834 -10.059038\r
+v  46.653740 20.756985 -10.430868\r
+v  53.044319 21.409145 -8.487313\r
+v  46.780434 18.906078 -8.863253\r
+v  53.405357 20.048426 -6.286901\r
+v  53.644341 19.147671 -3.457798\r
+v  -41.950085 51.886124 -5.242164\r
+v  -42.036472 51.218754 -5.391941\r
+v  -38.557339 51.226913 -5.390856\r
+v  -38.262180 51.889782 -5.242164\r
+v  -38.881500 50.554356 -5.242165\r
+v  -42.122856 50.551388 -5.242165\r
+v  -39.199642 49.924068 -4.792836\r
+v  -42.204399 49.921436 -4.792836\r
+v  -39.503067 49.368668 -4.043955\r
+v  -42.276264 49.366348 -4.043955\r
+v  -39.774639 48.925571 -2.995522\r
+v  -42.333584 48.923519 -2.995522\r
+v  -39.997196 48.632229 -1.647537\r
+v  -42.371536 48.630379 -1.647537\r
+v  -42.385258 48.524349 -0.000000\r
+v  -41.701412 53.807129 -1.647539\r
+v  -37.594913 53.811573 -1.647539\r
+v  -41.739361 53.513992 -2.995524\r
+v  -37.644417 53.518372 -2.995523\r
+v  -37.783852 53.075375 -4.043956\r
+v  -41.796680 53.071156 -4.043957\r
+v  -37.995636 52.520027 -4.792836\r
+v  -41.868538 52.516060 -4.792836\r
+v  -46.803303 53.030888 -4.043956\r
+v  -46.719872 52.478031 -4.792836\r
+v  -46.625195 51.850655 -5.242164\r
+v  -51.119423 52.374836 -4.792836\r
+v  -50.869919 51.754383 -5.242164\r
+v  -46.524895 51.185978 -5.391940\r
+v  -50.605606 51.097061 -5.391941\r
+v  -46.424591 50.521320 -5.242164\r
+v  -50.341290 50.439739 -5.242165\r
+v  -46.329918 49.893929 -4.792836\r
+v  -50.091782 49.819271 -4.792836\r
+v  -46.246494 49.341087 -4.043955\r
+v  -49.871929 49.272545 -4.043955\r
+v  -46.179932 48.900051 -2.995522\r
+v  -49.696545 48.836376 -2.995522\r
+v  -46.135891 48.608097 -1.647537\r
+v  -49.580452 48.547649 -1.647537\r
+v  -46.913914 53.763878 -1.647539\r
+v  -51.630772 53.646465 -1.647539\r
+v  -46.869854 53.471924 -2.995523\r
+v  -51.514668 53.357738 -2.995523\r
+v  -51.339272 52.921577 -4.043956\r
+v  -55.673157 53.135384 -2.995523\r
+v  -55.403282 52.708702 -4.043956\r
+v  -55.065002 52.173851 -4.792836\r
+v  -58.994061 52.357769 -4.043955\r
+v  -58.554501 51.842529 -4.792837\r
+v  -54.681118 51.566895 -5.242163\r
+v  -58.055664 51.257816 -5.242164\r
+v  -54.274422 50.923874 -5.391940\r
+v  -57.527206 50.638371 -5.391940\r
+v  -53.867722 50.280853 -5.242164\r
+v  -56.998734 50.018917 -5.242165\r
+v  -53.483826 49.673885 -4.792835\r
+v  -56.499893 49.434200 -4.792836\r
+v  -53.145546 49.139038 -4.043954\r
+v  -56.060337 48.918964 -4.043955\r
+v  -52.875679 48.712364 -2.995522\r
+v  -55.709663 48.507935 -2.995522\r
+v  -52.697048 48.429916 -1.647537\r
+v  -55.477547 48.235840 -1.647537\r
+v  -55.851799 53.417828 -1.647539\r
+v  -59.576855 53.040894 -1.647539\r
+v  -59.344734 52.768803 -2.995523\r
+v  -62.805771 52.478580 -1.647539\r
+v  -62.528755 52.221935 -2.995523\r
+v  -62.110283 51.834232 -4.043956\r
+v  -65.224625 51.458733 -2.995523\r
+v  -64.750656 51.103592 -4.043956\r
+v  -61.585712 51.348244 -4.792836\r
+v  -64.156502 50.658417 -4.792837\r
+v  -60.990425 50.796726 -5.242164\r
+v  -63.482277 50.153225 -5.242164\r
+v  -60.359772 50.212444 -5.391940\r
+v  -62.767982 49.618015 -5.391940\r
+v  -59.729115 49.628159 -5.242165\r
+v  -62.053677 49.082809 -5.242165\r
+v  -59.133816 49.076633 -4.792836\r
+v  -61.379433 48.577610 -4.792836\r
+v  -58.609268 48.590649 -4.043955\r
+v  -60.785301 48.132442 -4.043955\r
+v  -58.190784 48.202946 -2.995522\r
+v  -60.311329 47.777309 -2.995522\r
+v  -57.913780 47.946301 -1.647537\r
+v  -59.997581 47.542221 -1.647537\r
+v  -65.538376 51.693813 -1.647539\r
+v  -67.774506 50.649521 -1.647539\r
+v  -67.431717 50.443115 -2.995523\r
+v  -69.514015 49.308620 -1.647539\r
+v  -69.149414 49.139050 -2.995523\r
+v  -66.913864 50.131313 -4.043956\r
+v  -68.598625 48.882889 -4.043955\r
+v  -66.264732 49.740456 -4.792836\r
+v  -67.908203 48.561783 -4.792836\r
+v  -65.528069 49.296917 -5.242164\r
+v  -67.124702 48.197388 -5.242164\r
+v  -64.747658 48.827015 -5.391940\r
+v  -66.294647 47.811344 -5.391940\r
+v  -63.967239 48.357109 -5.242166\r
+v  -65.464592 47.425301 -5.242165\r
+v  -63.230576 47.913559 -4.792836\r
+v  -64.681084 47.060898 -4.792836\r
+v  -62.581451 47.522713 -4.043955\r
+v  -63.990669 46.739803 -4.043955\r
+v  -62.063599 47.210907 -2.995522\r
+v  -63.439884 46.483639 -2.995522\r
+v  -61.720802 47.004505 -1.647537\r
+v  -63.075294 46.314075 -1.647537\r
+v  -62.943409 46.252739 -0.000000\r
+v  -70.756714 47.634029 -1.647539\r
+v  -71.502464 45.588692 -1.647539\r
+v  -70.377106 47.510460 -2.995523\r
+v  -71.114182 45.521301 -2.995523\r
+v  -69.803635 47.323792 -4.043956\r
+v  -70.527603 45.419510 -4.043956\r
+v  -69.084801 47.089794 -4.792836\r
+v  -69.792320 45.291904 -4.792836\r
+v  -68.269020 46.824249 -5.242164\r
+v  -68.957909 45.147095 -5.242164\r
+v  -67.404800 46.542927 -5.391940\r
+v  -68.073936 44.993679 -5.391940\r
+v  -66.540565 46.261608 -5.242165\r
+v  -67.189957 44.840267 -5.242165\r
+v  -65.724785 45.996056 -4.792836\r
+v  -66.355537 44.695454 -4.792836\r
+v  -65.005951 45.762062 -4.043955\r
+v  -65.620270 44.567848 -4.043955\r
+v  -64.432480 45.575394 -2.995522\r
+v  -65.033691 44.466053 -2.995522\r
+v  -64.052872 45.451824 -1.647537\r
+v  -64.645409 44.398670 -1.647537\r
+v  -63.915565 45.407124 -0.000000\r
+v  -71.751076 43.135521 -1.647539\r
+v  -71.577118 40.482849 -1.647539\r
+v  -71.360001 43.135517 -2.995523\r
+v  -71.190071 40.549358 -2.995524\r
+v  -70.769211 43.135521 -4.043956\r
+v  -70.605377 40.649830 -4.043957\r
+v  -70.028648 43.135521 -4.792836\r
+v  -69.872459 40.775776 -4.792836\r
+v  -69.188240 43.135521 -5.242164\r
+v  -69.040718 40.918705 -5.242164\r
+v  -68.297905 43.135521 -5.391940\r
+v  -68.159576 41.070118 -5.391941\r
+v  -67.407570 43.135521 -5.242165\r
+v  -67.278427 41.221535 -5.242165\r
+v  -66.567154 43.135517 -4.792836\r
+v  -66.446686 41.364460 -4.792836\r
+v  -65.826599 43.135517 -4.043955\r
+v  -65.713776 41.490402 -4.043955\r
+v  -65.235809 43.135517 -2.995522\r
+v  -65.129089 41.590878 -2.995522\r
+v  -64.844734 43.135521 -1.647537\r
+v  -64.742043 41.657387 -1.647537\r
+v  -64.602043 41.681446 -0.000000\r
+v  -71.052361 37.866261 -1.647539\r
+v  -70.172600 35.289547 -1.647539\r
+v  -70.677277 37.986885 -2.995523\r
+v  -69.817169 35.453773 -2.995523\r
+v  -70.110649 38.169109 -4.043956\r
+v  -69.280228 35.701851 -4.043956\r
+v  -69.400368 38.397537 -4.792836\r
+v  -68.607162 36.012836 -4.792836\r
+v  -68.594330 38.656761 -5.242164\r
+v  -67.843361 36.365742 -5.242164\r
+v  -67.740402 38.931381 -5.391940\r
+v  -67.034164 36.739616 -5.391941\r
+v  -66.886475 39.206009 -5.242164\r
+v  -66.224983 37.113483 -5.242165\r
+v  -66.080429 39.465233 -4.792836\r
+v  -65.461166 37.466385 -4.792836\r
+v  -65.370163 39.693657 -4.043955\r
+v  -64.788116 37.777367 -4.043955\r
+v  -64.803528 39.875885 -2.995522\r
+v  -64.251175 38.025448 -2.995522\r
+v  -64.428452 39.996513 -1.647537\r
+v  -63.895741 38.189674 -1.647537\r
+v  -64.292770 40.040146 -0.000000\r
+v  -68.933571 32.756508 -1.647539\r
+v  -67.331070 30.270945 -1.647539\r
+v  -68.605255 32.955673 -2.995523\r
+v  -67.037117 30.498257 -2.995523\r
+v  -68.109299 33.256531 -4.043956\r
+v  -66.593056 30.841639 -4.043955\r
+v  -67.487587 33.633667 -4.792836\r
+v  -66.036415 31.272083 -4.792837\r
+v  -66.782059 34.061657 -5.242163\r
+v  -65.404732 31.760555 -5.242164\r
+v  -66.034615 34.515068 -5.391940\r
+v  -64.735527 32.278053 -5.391940\r
+v  -65.287170 34.968483 -5.242164\r
+v  -64.066315 32.795547 -5.242165\r
+v  -64.581642 35.396465 -4.792835\r
+v  -63.434620 33.284016 -4.792836\r
+v  -63.959942 35.773605 -4.043954\r
+v  -62.877995 33.714466 -4.043955\r
+v  -63.463970 36.074463 -2.995522\r
+v  -62.433922 34.057846 -2.995522\r
+v  -63.135666 36.273632 -1.647537\r
+v  -62.139988 34.285160 -1.647537\r
+v  -62.033665 34.367378 -0.000000\r
+v  -65.360802 27.836643 -1.647539\r
+v  -63.018562 25.457405 -1.647539\r
+v  -65.108231 28.087181 -2.995523\r
+v  -62.814156 25.728111 -2.995523\r
+v  -64.726685 28.465652 -4.043956\r
+v  -62.505375 26.137053 -4.043956\r
+v  -64.248405 28.940075 -4.792836\r
+v  -62.118309 26.649672 -4.792837\r
+v  -63.705643 29.478458 -5.242164\r
+v  -61.679054 27.231405 -5.242164\r
+v  -63.130634 30.048832 -5.391940\r
+v  -61.213707 27.847696 -5.391940\r
+v  -62.555626 30.619205 -5.242165\r
+v  -60.748360 28.463991 -5.242165\r
+v  -62.012848 31.157583 -4.792836\r
+v  -60.309101 29.045721 -4.792836\r
+v  -61.534576 31.632011 -4.043955\r
+v  -59.922039 29.558340 -4.043955\r
+v  -61.153023 32.010483 -2.995522\r
+v  -59.613247 29.967276 -2.995522\r
+v  -60.900463 32.261024 -1.647537\r
+v  -59.408855 30.237993 -1.647537\r
+v  -60.809101 32.351643 -0.000000\r
+v  -59.334919 30.335905 -0.000000\r
+v  -60.300091 23.137018 -1.647539\r
+v  -57.201153 20.879288 -1.647539\r
+v  -60.150414 23.426712 -2.995523\r
+v  -57.112541 21.188641 -2.995523\r
+v  -59.924313 23.864328 -4.043956\r
+v  -56.978699 21.655960 -4.043955\r
+v  -59.640892 24.412891 -4.792836\r
+v  -56.810913 22.241756 -4.792836\r
+v  -59.319252 25.035414 -5.242164\r
+v  -56.620506 22.906530 -5.242164\r
+v  -58.978504 25.694927 -5.391940\r
+v  -56.418797 23.610800 -5.391940\r
+v  -58.637756 26.354435 -5.242166\r
+v  -56.217075 24.315073 -5.242165\r
+v  -58.316113 26.976955 -4.792836\r
+v  -56.026661 24.979845 -4.792836\r
+v  -58.032692 27.525520 -4.043955\r
+v  -55.858883 25.565641 -4.043955\r
+v  -57.806591 27.963137 -2.995522\r
+v  -55.725040 26.032959 -2.995522\r
+v  -57.656925 28.252832 -1.647537\r
+v  -55.636440 26.342316 -1.647537\r
+v  -55.604382 26.454206 -0.000000\r
+v  -53.717495 18.688004 -1.647539\r
+v  -53.725254 18.568081 -0.000000\r
+v  -49.844894 16.566965 -1.647539\r
+v  -53.696072 19.019566 -2.995523\r
+v  -49.896534 16.925146 -2.995523\r
+v  -53.663712 19.520432 -4.043956\r
+v  -49.974545 17.466228 -4.043956\r
+v  -53.623142 20.148279 -4.792836\r
+v  -50.072327 18.144485 -4.792836\r
+v  -53.577095 20.860779 -5.242164\r
+v  -50.183292 18.914192 -5.242164\r
+v  -53.528324 21.615608 -5.391940\r
+v  -50.300854 19.729626 -5.391940\r
+v  -53.479546 22.370436 -5.242165\r
+v  -50.418415 20.545057 -5.242165\r
+v  -53.433491 23.082932 -4.792836\r
+v  -50.529377 21.314762 -4.792836\r
+v  -53.392937 23.710781 -4.043955\r
+v  -50.627171 21.993019 -4.043955\r
+v  -53.360561 24.211647 -2.995522\r
+v  -50.705170 22.534101 -2.995522\r
+v  -53.339149 24.543211 -1.647537\r
+v  -50.756821 22.892282 -1.647537\r
+v  -53.331390 24.663134 -0.000000\r
+v  -47.816101 21.518492 -1.647537\r
+v  -47.692528 21.130341 -2.995522\r
+v  -47.573326 20.575285 -4.043956\r
+v  -47.462479 19.897043 -4.792836\r
+v  -47.363983 19.139370 -5.242165\r
+v  -47.147533 18.284660 -5.391940\r
+v  -46.920513 17.424940 -5.242165\r
+v  -46.728500 16.620296 -4.789083\r
+v  -46.429497 15.858169 -4.043957\r
+v  -46.226406 15.263846 -2.995523\r
+v  -46.145897 14.894827 -1.647539\r
+v  33.358471 58.998505 4.624063\r
+v  33.155800 59.029640 4.595191\r
+v  33.546112 58.894733 4.651250\r
+v  33.850193 58.894817 0.000000\r
+v  33.829464 58.660450 4.691265\r
+v  34.136154 58.660572 -0.000000\r
+v  34.161240 58.289894 4.737756\r
+v  34.470989 58.290035 0.000000\r
+v  34.510380 57.784142 4.786513\r
+v  34.823338 57.784286 -0.000000\r
+v  34.863148 57.124775 4.835618\r
+v  35.179329 57.124916 -0.000000\r
+v  32.476532 58.998409 9.041168\r
+v  32.279171 59.029613 8.985184\r
+v  32.659218 58.894520 9.093603\r
+v  32.935005 58.660160 9.171371\r
+v  33.257938 58.289570 9.261943\r
+v  33.597763 57.783825 9.357030\r
+v  33.941147 57.124466 9.452900\r
+v  31.052456 58.998318 13.214520\r
+v  30.863655 59.029575 13.133169\r
+v  31.227203 58.894291 13.290403\r
+v  31.490891 58.659851 13.403573\r
+v  31.799610 58.289230 13.535599\r
+v  32.124485 57.783478 13.674315\r
+v  32.452766 57.124149 13.814283\r
+v  29.123566 58.998215 17.107059\r
+v  28.946297 59.029552 17.002151\r
+v  29.287640 58.894085 17.204626\r
+v  29.535004 58.659588 17.350672\r
+v  29.824560 58.288940 17.521263\r
+v  30.129244 57.783195 17.700596\r
+v  30.437119 57.123875 17.881651\r
+v  26.727221 58.998177 20.681591\r
+v  26.564356 59.029541 20.555119\r
+v  26.878046 58.893974 20.798973\r
+v  27.105188 58.659439 20.975155\r
+v  27.370991 58.288765 21.181120\r
+v  27.650644 57.783024 21.397726\r
+v  27.933208 57.123714 21.616491\r
+v  23.900776 58.998158 23.900770\r
+v  23.754915 59.029526 23.754915\r
+v  24.035961 58.893932 24.035959\r
+v  24.239279 58.659374 24.239279\r
+v  24.477100 58.288700 24.477100\r
+v  24.727270 57.782955 24.727270\r
+v  24.980000 57.123653 24.980000\r
+v  20.681593 58.998177 26.727226\r
+v  20.555128 59.029533 26.564371\r
+v  20.798969 58.893974 26.878042\r
+v  20.975157 58.659428 27.105190\r
+v  21.181124 58.288765 27.370993\r
+v  21.397726 57.783016 27.650644\r
+v  21.616493 57.123711 27.933208\r
+v  17.107065 58.998234 29.123571\r
+v  17.002172 59.029549 28.946333\r
+v  17.204626 58.894096 29.287636\r
+v  17.350676 58.659595 29.535007\r
+v  17.521265 58.288944 29.824560\r
+v  17.700600 57.783195 30.129248\r
+v  17.881655 57.123882 30.437122\r
+v  13.214522 58.998318 31.052456\r
+v  13.133173 59.029575 30.863655\r
+v  13.290406 58.894291 31.227203\r
+v  13.403575 58.659851 31.490889\r
+v  13.535603 58.289230 31.799610\r
+v  13.674319 57.783478 32.124485\r
+v  13.814286 57.124149 32.452766\r
+v  9.041176 58.998417 32.476536\r
+v  8.985193 59.029610 32.279190\r
+v  9.093608 58.894524 32.659218\r
+v  9.171375 58.660164 32.935005\r
+v  9.261947 58.289574 33.257935\r
+v  9.357034 57.783821 33.597763\r
+v  9.452906 57.124474 33.941147\r
+v  4.624066 58.998497 33.358459\r
+v  4.595192 59.029648 33.155777\r
+v  4.651256 58.894730 33.546108\r
+v  4.691270 58.660446 33.829456\r
+v  4.737761 58.289890 34.161236\r
+v  4.786518 57.784142 34.510372\r
+v  4.835622 57.124771 34.863140\r
+v  -0.000038 58.998535 33.660831\r
+v  -0.000035 59.029671 33.456253\r
+v  -0.000031 58.894825 33.850193\r
+v  -0.000012 58.660587 34.136147\r
+v  0.000001 58.290035 34.470985\r
+v  0.000006 57.784290 34.823338\r
+v  0.000006 57.124924 35.179329\r
+v  -4.656667 58.999111 33.356800\r
+v  -4.651231 59.029964 33.154255\r
+v  -4.668061 58.895641 33.544731\r
+v  -4.698411 58.661133 33.828735\r
+v  -4.739907 58.290241 34.160954\r
+v  -4.786802 57.784248 34.510307\r
+v  -4.835621 57.124790 34.863144\r
+v  -9.093946 59.000446 32.471119\r
+v  -9.076756 59.030689 32.274231\r
+v  -9.120488 58.897522 32.654797\r
+v  -9.182712 58.662392 32.932682\r
+v  -9.265314 58.290714 33.257023\r
+v  -9.357464 57.784187 33.597534\r
+v  -9.452903 57.124512 33.941124\r
+v  -13.276402 59.002060 31.043055\r
+v  -13.242328 59.031563 30.855070\r
+v  -13.321258 58.899750 31.219584\r
+v  -13.416404 58.663887 31.486900\r
+v  -13.539324 58.291290 31.798044\r
+v  -13.674747 57.784134 32.124088\r
+v  -13.814277 57.124229 32.452724\r
+v  -17.169127 59.003468 29.111361\r
+v  -17.114241 59.032356 28.935152\r
+v  -17.234627 58.901669 29.277826\r
+v  -17.362886 58.665157 29.529888\r
+v  -17.524677 58.291779 29.822554\r
+v  -17.700924 57.784100 30.128733\r
+v  -17.881630 57.123985 30.437065\r
+v  -20.737501 59.004364 26.714230\r
+v  -20.659185 59.032856 26.552507\r
+v  -20.824902 58.902859 26.867651\r
+v  -20.985399 58.665939 27.099785\r
+v  -21.183823 58.292076 27.368870\r
+v  -21.397894 57.784077 27.650105\r
+v  -21.616457 57.123844 27.933151\r
+v  -23.946812 59.004498 23.889097\r
+v  -23.843733 59.032909 23.744308\r
+v  -24.056202 58.903038 24.026627\r
+v  -24.246943 58.666031 24.234432\r
+v  -24.478949 58.292091 24.475197\r
+v  -24.727283 57.784035 24.726784\r
+v  -24.979954 57.123787 24.979948\r
+v  -26.761974 59.003887 20.672749\r
+v  -26.634090 59.032555 20.547150\r
+v  -26.892344 58.902218 20.791889\r
+v  -27.110296 58.665478 20.971479\r
+v  -27.372051 58.291851 21.179676\r
+v  -27.650543 57.784000 21.397354\r
+v  -27.933161 57.123833 21.616455\r
+v  -29.147322 59.002716 17.101627\r
+v  -28.995920 59.031895 16.997307\r
+v  -29.296682 58.900635 17.200258\r
+v  -29.537985 58.664417 17.348406\r
+v  -29.825037 58.291412 17.520370\r
+v  -30.129095 57.783985 17.700369\r
+v  -30.437078 57.123981 17.881630\r
+v  -31.066631 59.001282 13.212090\r
+v  -30.894342 59.031105 13.131021\r
+v  -31.232164 58.898674 13.288457\r
+v  -31.492355 58.663109 13.402568\r
+v  -31.799746 58.290905 13.535203\r
+v  -32.124344 57.784019 13.674213\r
+v  -32.452736 57.124214 13.814275\r
+v  -32.483231 58.999912 9.040685\r
+v  -32.294113 59.030373 8.984766\r
+v  -32.661369 58.896774 9.093238\r
+v  -32.935562 58.661850 9.171197\r
+v  -33.257931 58.290447 9.261875\r
+v  -33.597675 57.784107 9.357014\r
+v  -33.941128 57.124508 9.452904\r
+v  -33.360264 58.998909 4.624278\r
+v  -33.159843 59.029854 4.595378\r
+v  -33.546635 58.895370 4.651457\r
+v  -33.829567 58.660938 4.691391\r
+v  -34.161217 58.290150 4.737811\r
+v  -34.510345 57.784229 4.786530\r
+v  -34.863132 57.124783 4.835623\r
+v  -33.660851 58.998528 -0.000000\r
+v  -33.456272 59.029667 -0.000000\r
+v  -33.850178 58.894833 0.000000\r
+v  -34.136131 58.660603 0.000000\r
+v  -34.470978 58.290047 -0.000000\r
+v  -34.823334 57.784298 -0.000000\r
+v  -35.179329 57.124924 -0.000000\r
+v  36.333431 54.002327 5.039411\r
+v  36.662949 54.002468 0.000000\r
+v  37.791126 50.869808 5.241405\r
+v  39.205921 47.753632 5.437464\r
+v  40.557217 44.660316 5.624738\r
+v  41.824493 41.596542 5.800378\r
+v  42.987244 38.569157 5.961545\r
+v  44.024696 35.586216 6.105740\r
+v  44.424370 35.585247 -0.000000\r
+v  35.372532 54.002033 9.851368\r
+v  36.791683 50.869518 10.246355\r
+v  38.169056 47.753342 10.629729\r
+v  39.484615 44.660030 10.995915\r
+v  40.718365 41.596272 11.339347\r
+v  41.850353 38.568897 11.654469\r
+v  42.860748 35.584888 11.935761\r
+v  43.729588 32.652023 12.178199\r
+v  44.438091 29.774788 12.376785\r
+v  44.966045 26.966326 12.525410\r
+v  45.295635 24.227764 12.621032\r
+v  45.410545 21.587053 12.650708\r
+v  33.821362 54.001720 14.396678\r
+v  35.178265 50.869205 14.974029\r
+v  36.495228 47.753036 15.534397\r
+v  37.753078 44.659729 16.069632\r
+v  38.932713 41.595982 16.571594\r
+v  40.015041 38.568623 17.032173\r
+v  40.981113 35.584641 17.443293\r
+v  41.812103 32.651203 17.796951\r
+v  42.489464 29.775631 18.085241\r
+v  42.994965 26.965324 18.300406\r
+v  43.310856 24.227600 18.434872\r
+v  43.420193 21.587778 18.481403\r
+v  31.720676 54.001461 18.635595\r
+v  32.993279 50.868950 19.383047\r
+v  34.228420 47.752781 20.108505\r
+v  35.408115 44.659473 20.801416\r
+v  36.514450 41.595741 21.451248\r
+v  37.529533 38.568390 22.047493\r
+v  38.435574 35.584427 22.579702\r
+v  39.214935 32.651020 23.037514\r
+v  39.850201 29.775475 23.410694\r
+v  40.324284 26.965208 23.689205\r
+v  40.620548 24.227537 23.863262\r
+v  40.723083 21.587797 23.923494\r
+v  29.111139 54.001301 22.527973\r
+v  30.279005 50.868797 23.431631\r
+v  31.412495 47.752625 24.308701\r
+v  32.495110 44.659332 25.146406\r
+v  33.510399 41.595600 25.932030\r
+v  34.441948 38.568256 26.652851\r
+v  35.273422 35.584301 27.296257\r
+v  35.988655 32.650902 27.849709\r
+v  36.571644 29.775379 28.300842\r
+v  37.006714 26.965137 28.637527\r
+v  37.278603 24.227501 28.847925\r
+v  37.372696 21.587809 28.920742\r
+v  26.033352 54.001240 26.033352\r
+v  27.077698 50.868729 27.077698\r
+v  28.091301 47.752571 28.091301\r
+v  29.059416 44.659271 29.059416\r
+v  29.967327 41.595543 29.967327\r
+v  30.800354 38.568207 30.800354\r
+v  31.543901 35.584255 31.543900\r
+v  32.183491 32.650860 32.183491\r
+v  32.704826 29.775345 32.704826\r
+v  33.093903 26.965111 33.093903\r
+v  33.337044 24.227488 33.337044\r
+v  33.421185 21.587814 33.421188\r
+v  22.527971 54.001297 29.111139\r
+v  23.431631 50.868786 30.279003\r
+v  24.308701 47.752625 31.412497\r
+v  25.146404 44.659332 32.495110\r
+v  25.932024 41.595592 33.510399\r
+v  26.652851 38.568253 34.441944\r
+v  27.296255 35.584301 35.273422\r
+v  27.849709 32.650898 35.988647\r
+v  28.300842 29.775377 36.571644\r
+v  28.637527 26.965136 37.006714\r
+v  28.847925 24.227501 37.278599\r
+v  28.920742 21.587809 37.372696\r
+v  18.635599 54.001461 31.720680\r
+v  19.383051 50.868950 32.993286\r
+v  20.108513 47.752785 34.228420\r
+v  20.801420 44.659481 35.408119\r
+v  21.451252 41.595745 36.514454\r
+v  22.047497 38.568398 37.529537\r
+v  22.579704 35.584435 38.435577\r
+v  23.037519 32.651020 39.214935\r
+v  23.410698 29.775476 39.850204\r
+v  23.689211 26.965210 40.324295\r
+v  23.863262 24.227541 40.620556\r
+v  23.923498 21.587799 40.723087\r
+v  14.396684 54.001720 33.821362\r
+v  14.974033 50.869205 35.178265\r
+v  15.534402 47.753036 36.495228\r
+v  16.069633 44.659729 37.753075\r
+v  16.571596 41.595982 38.932713\r
+v  17.032179 38.568619 40.015041\r
+v  17.443298 35.584644 40.981113\r
+v  17.796955 32.651207 41.812103\r
+v  18.085245 29.775627 42.489464\r
+v  18.300406 26.965322 42.994965\r
+v  18.434875 24.227602 43.310856\r
+v  18.481409 21.587780 43.420193\r
+v  9.851373 54.002033 35.372532\r
+v  10.246361 50.869518 36.791683\r
+v  10.629736 47.753345 38.169056\r
+v  10.995921 44.660030 39.484615\r
+v  11.339353 41.596272 40.718365\r
+v  11.654476 38.568893 41.850353\r
+v  11.935767 35.584896 42.860756\r
+v  12.177752 32.651432 43.729881\r
+v  12.375013 29.775816 44.438335\r
+v  12.522245 26.965462 44.967041\r
+v  12.614264 24.227674 45.297443\r
+v  12.646105 21.587757 45.411789\r
+v  5.039417 54.002327 36.333424\r
+v  5.241411 50.869808 37.791119\r
+v  5.437471 47.753628 39.205917\r
+v  5.624743 44.660309 40.557217\r
+v  5.800384 41.596542 41.824486\r
+v  5.961552 38.569157 42.987240\r
+v  6.105423 35.585136 44.025097\r
+v  6.229192 32.651642 44.917862\r
+v  6.330095 29.775993 45.645573\r
+v  6.405409 26.965590 46.188663\r
+v  6.452483 24.227749 46.528053\r
+v  6.468771 21.587740 46.645515\r
+v  0.000007 54.002472 36.662949\r
+v  0.000007 50.869953 38.133858\r
+v  0.000008 47.753769 39.561478\r
+v  0.000008 44.660446 40.925030\r
+v  0.000008 41.596680 42.203796\r
+v  0.000009 38.569279 43.377094\r
+v  0.000009 35.585247 44.424370\r
+v  0.000009 32.651741 45.325237\r
+v  0.000009 29.776077 46.059559\r
+v  0.000009 26.965652 46.607578\r
+v  0.000009 24.227777 46.950058\r
+v  0.000009 21.587729 47.068588\r
+v  -5.039411 54.002327 36.333431\r
+v  -5.241405 50.869808 37.791126\r
+v  -5.437464 47.753632 39.205921\r
+v  -5.624738 44.660316 40.557217\r
+v  -5.800378 41.596542 41.824493\r
+v  -5.961545 38.569157 42.987244\r
+v  -6.105415 35.585136 44.025097\r
+v  -6.229186 32.651646 44.917866\r
+v  -6.330087 29.775999 45.645584\r
+v  -6.405402 26.965593 46.188663\r
+v  -6.452476 24.227749 46.528057\r
+v  -6.468763 21.587740 46.645515\r
+v  -9.851368 54.002033 35.372532\r
+v  -10.246355 50.869518 36.791683\r
+v  -10.629729 47.753342 38.169056\r
+v  -10.995915 44.660030 39.484615\r
+v  -11.339347 41.596272 40.718365\r
+v  -11.654469 38.568897 41.850353\r
+v  -11.935761 35.584888 42.860748\r
+v  -12.177744 32.651432 43.729881\r
+v  -12.375007 29.775818 44.438328\r
+v  -12.522239 26.965460 44.967037\r
+v  -12.614258 24.227674 45.297440\r
+v  -12.646098 21.587757 45.411789\r
+v  -14.396678 54.001720 33.821362\r
+v  -14.974029 50.869205 35.178265\r
+v  -15.534397 47.753036 36.495228\r
+v  -16.069632 44.659729 37.753078\r
+v  -16.571594 41.595982 38.932713\r
+v  -17.032173 38.568623 40.015041\r
+v  -17.443293 35.584641 40.981113\r
+v  -17.796951 32.651203 41.812103\r
+v  -18.085241 29.775631 42.489464\r
+v  -18.300406 26.965324 42.994965\r
+v  -18.434872 24.227600 43.310856\r
+v  -18.481403 21.587778 43.420193\r
+v  -18.635595 54.001461 31.720676\r
+v  -19.383047 50.868950 32.993279\r
+v  -20.108505 47.752781 34.228420\r
+v  -20.801416 44.659473 35.408115\r
+v  -21.451248 41.595741 36.514450\r
+v  -22.047493 38.568390 37.529533\r
+v  -22.579702 35.584427 38.435574\r
+v  -23.037514 32.651020 39.214935\r
+v  -23.410694 29.775475 39.850201\r
+v  -23.689205 26.965208 40.324284\r
+v  -23.863262 24.227537 40.620548\r
+v  -23.923494 21.587797 40.723083\r
+v  -22.527973 54.001301 29.111139\r
+v  -23.431631 50.868797 30.279005\r
+v  -24.308701 47.752625 31.412495\r
+v  -25.146406 44.659332 32.495110\r
+v  -25.932030 41.595600 33.510399\r
+v  -26.652851 38.568256 34.441948\r
+v  -27.296257 35.584301 35.273422\r
+v  -27.849709 32.650902 35.988655\r
+v  -28.300842 29.775379 36.571644\r
+v  -28.637527 26.965137 37.006714\r
+v  -28.847925 24.227501 37.278603\r
+v  -28.920742 21.587809 37.372696\r
+v  -26.033352 54.001240 26.033352\r
+v  -27.077698 50.868729 27.077698\r
+v  -28.091301 47.752571 28.091301\r
+v  -29.059416 44.659271 29.059416\r
+v  -29.967327 41.595543 29.967327\r
+v  -30.800354 38.568207 30.800354\r
+v  -31.543900 35.584255 31.543901\r
+v  -32.183491 32.650860 32.183491\r
+v  -32.704826 29.775345 32.704826\r
+v  -33.093903 26.965111 33.093903\r
+v  -33.337044 24.227488 33.337044\r
+v  -33.421188 21.587814 33.421185\r
+v  -29.111139 54.001297 22.527971\r
+v  -30.279003 50.868786 23.431631\r
+v  -31.412497 47.752625 24.308701\r
+v  -32.495110 44.659332 25.146404\r
+v  -33.510399 41.595592 25.932024\r
+v  -34.441944 38.568253 26.652851\r
+v  -35.273422 35.584301 27.296255\r
+v  -35.988647 32.650898 27.849709\r
+v  -36.571644 29.775377 28.300842\r
+v  -37.006714 26.965136 28.637527\r
+v  -37.278599 24.227501 28.847925\r
+v  -37.372696 21.587809 28.920742\r
+v  -31.720680 54.001461 18.635599\r
+v  -32.993286 50.868950 19.383051\r
+v  -34.228420 47.752785 20.108513\r
+v  -35.408119 44.659481 20.801420\r
+v  -36.514454 41.595745 21.451252\r
+v  -37.529537 38.568398 22.047497\r
+v  -38.435577 35.584435 22.579704\r
+v  -39.214935 32.651020 23.037519\r
+v  -39.850204 29.775476 23.410698\r
+v  -40.324295 26.965210 23.689211\r
+v  -40.620556 24.227541 23.863262\r
+v  -40.723087 21.587799 23.923498\r
+v  -33.821362 54.001720 14.396684\r
+v  -35.178265 50.869205 14.974033\r
+v  -36.495228 47.753036 15.534402\r
+v  -37.753075 44.659729 16.069633\r
+v  -38.932713 41.595982 16.571596\r
+v  -40.015041 38.568619 17.032179\r
+v  -40.981113 35.584644 17.443298\r
+v  -41.812103 32.651207 17.796955\r
+v  -42.489464 29.775627 18.085245\r
+v  -42.994965 26.965322 18.300406\r
+v  -43.310856 24.227602 18.434875\r
+v  -43.420193 21.587780 18.481409\r
+v  -35.372406 54.002190 9.851557\r
+v  -36.791691 50.869354 10.246625\r
+v  -38.169056 47.753345 10.629736\r
+v  -39.484615 44.660030 10.995921\r
+v  -40.718365 41.596272 11.339353\r
+v  -41.850353 38.568893 11.654476\r
+v  -42.860756 35.584896 11.935767\r
+v  -43.729881 32.651432 12.177752\r
+v  -44.438335 29.775816 12.375013\r
+v  -44.967041 26.965462 12.522245\r
+v  -45.297443 24.227674 12.614264\r
+v  -45.411789 21.587757 12.646105\r
+v  -36.333233 54.002842 5.039021\r
+v  -39.205921 47.753616 5.437472\r
+v  -40.557217 44.660309 5.624743\r
+v  -41.824486 41.596542 5.800384\r
+v  -42.987240 38.569157 5.961552\r
+v  -44.025097 35.585136 6.105423\r
+v  -44.917862 32.651642 6.229192\r
+v  -45.645573 29.775993 6.330095\r
+v  -46.188663 26.965590 6.405409\r
+v  -46.528011 24.227917 6.452676\r
+v  -46.645473 21.587557 6.469059\r
+v  -36.662949 54.002472 -0.000000\r
+v  -39.561478 47.753769 0.000000\r
+v  -40.925030 44.660446 -0.000000\r
+v  -42.203796 41.596680 -0.000000\r
+v  -43.377094 38.569279 -0.000000\r
+v  -44.424370 35.585247 -0.000000\r
+v  -45.325237 32.651741 -0.000000\r
+v  -46.059559 29.776077 0.000000\r
+v  -46.607578 26.965652 -0.000000\r
+v  -46.950001 24.228455 -0.000000\r
+v  45.814293 16.905586 6.360468\r
+v  44.892475 14.871723 6.225201\r
+v  45.299545 14.871587 -0.000000\r
+v  43.724884 13.013579 6.063061\r
+v  42.388966 11.331814 5.877617\r
+v  40.962574 9.824150 5.679690\r
+v  39.525185 8.487634 5.480309\r
+v  38.156071 7.317310 5.290480\r
+v  36.931499 6.304112 5.120813\r
+v  37.266266 6.303984 -0.000000\r
+v  35.917988 5.426768 4.980629\r
+v  36.243587 5.426625 0.000000\r
+v  35.151844 4.603211 4.875276\r
+v  34.802601 3.827278 4.827658\r
+v  35.118301 3.827166 0.000000\r
+v  45.197357 19.136534 12.586613\r
+v  44.605034 16.910173 12.421125\r
+v  43.705299 14.872031 12.170275\r
+v  42.568661 13.013903 11.853456\r
+v  41.268127 11.332126 11.491047\r
+v  39.879501 9.824444 11.104189\r
+v  38.480152 8.487910 10.714442\r
+v  37.147247 7.317575 10.343311\r
+v  35.955059 6.304379 10.011523\r
+v  34.968319 5.427056 9.737235\r
+v  34.222282 4.603519 9.530684\r
+v  33.882076 3.827480 9.437037\r
+v  43.215271 19.136747 18.394096\r
+v  42.648907 16.910444 18.152813\r
+v  41.788700 14.872363 17.786390\r
+v  40.701973 13.014250 17.323549\r
+v  39.458519 11.332463 16.794054\r
+v  38.130814 9.824761 16.228773\r
+v  36.792847 8.488208 15.659222\r
+v  35.518398 7.317859 15.116816\r
+v  34.378494 6.304662 14.631827\r
+v  33.435017 5.427360 14.230722\r
+v  32.721611 4.603835 13.928226\r
+v  32.396191 3.827694 13.790768\r
+v  40.530903 19.136875 23.810532\r
+v  39.999748 16.910667 23.498325\r
+v  39.193016 14.872637 23.024168\r
+v  38.173809 13.014537 22.425198\r
+v  37.007614 11.332741 21.739914\r
+v  35.762386 9.825023 21.008261\r
+v  34.507534 8.488452 20.271032\r
+v  33.312260 7.318091 19.568884\r
+v  32.243176 6.304893 18.940990\r
+v  31.358335 5.427607 18.421543\r
+v  30.689255 4.604089 18.029388\r
+v  30.384022 3.827860 17.850901\r
+v  37.196335 19.136959 28.784225\r
+v  36.708874 16.910810 28.406908\r
+v  35.968498 14.872812 27.833845\r
+v  35.033138 13.014720 27.109894\r
+v  33.962872 11.332920 26.281567\r
+v  32.820076 9.825191 25.397150\r
+v  31.668457 8.488607 24.505947\r
+v  30.571531 7.318240 23.657120\r
+v  29.590429 6.305040 22.897987\r
+v  28.778452 5.427763 22.269848\r
+v  28.164537 4.604247 21.795290\r
+v  27.884516 3.827966 21.579062\r
+v  33.263454 19.136986 33.263454\r
+v  32.827499 16.910860 32.827499\r
+v  32.165359 14.872871 32.165359\r
+v  31.328848 13.014783 31.328846\r
+v  30.371693 11.332979 30.371693\r
+v  29.349709 9.825246 29.349709\r
+v  28.319841 8.488661 28.319841\r
+v  27.338905 7.318291 27.338905\r
+v  26.461584 6.305090 26.461584\r
+v  25.735548 5.427816 25.735548\r
+v  25.186775 4.604300 25.186775\r
+v  24.936558 3.828003 24.936558\r
+v  28.784225 19.136959 37.196331\r
+v  28.406908 16.910812 36.708866\r
+v  27.833845 14.872812 35.968491\r
+v  27.109894 13.014719 35.033134\r
+v  26.281567 11.332919 33.962872\r
+v  25.397154 9.825191 32.820076\r
+v  24.505947 8.488607 31.668457\r
+v  23.657120 7.318240 30.571529\r
+v  22.897987 6.305040 29.590429\r
+v  22.269848 5.427763 28.778452\r
+v  21.795290 4.604246 28.164537\r
+v  21.579063 3.827965 27.884516\r
+v  23.810532 19.136877 40.530910\r
+v  23.498325 16.910667 39.999756\r
+v  23.024172 14.872637 39.193020\r
+v  22.425200 13.014537 38.173820\r
+v  21.739916 11.332743 37.007622\r
+v  21.008266 9.825024 35.762390\r
+v  20.271032 8.488452 34.507538\r
+v  19.568888 7.318093 33.312263\r
+v  18.940992 6.304894 32.243179\r
+v  18.421547 5.427606 31.358334\r
+v  18.029392 4.604089 30.689259\r
+v  17.850904 3.827861 30.384024\r
+v  18.394100 19.136749 43.215271\r
+v  18.152817 16.910444 42.648907\r
+v  17.786392 14.872363 41.788700\r
+v  17.323555 13.014250 40.701973\r
+v  16.794056 11.332464 39.458519\r
+v  16.228777 9.824762 38.130814\r
+v  15.659225 8.488208 36.792847\r
+v  15.116820 7.317860 35.518398\r
+v  14.631830 6.304662 34.378494\r
+v  14.230725 5.427359 33.435017\r
+v  13.928229 4.603835 32.721611\r
+v  13.790771 3.827694 32.396191\r
+v  12.586329 19.136593 45.197449\r
+v  12.421133 16.910172 44.605034\r
+v  12.170282 14.872031 43.705303\r
+v  11.853461 13.013903 42.568661\r
+v  11.491053 11.332126 41.268135\r
+v  11.104195 9.824445 39.879501\r
+v  10.714448 8.487910 38.480152\r
+v  10.343317 7.317575 37.147247\r
+v  10.011529 6.304379 35.955059\r
+v  9.737239 5.427056 34.968319\r
+v  9.530688 4.603519 34.222282\r
+v  9.437042 3.827481 33.882076\r
+v  6.438169 19.136452 46.425312\r
+v  6.353605 16.909922 45.816730\r
+v  6.225209 14.871723 44.892471\r
+v  6.063067 13.013579 43.724873\r
+v  5.877625 11.331813 42.388962\r
+v  5.679696 9.824150 40.962570\r
+v  5.480315 8.487634 39.525185\r
+v  5.290485 7.317310 38.156067\r
+v  5.120819 6.304111 36.931496\r
+v  4.980635 5.426769 35.917988\r
+v  4.875282 4.603213 35.151836\r
+v  4.827663 3.827277 34.802593\r
+v  0.000009 19.136387 46.846378\r
+v  0.000009 16.909811 46.232239\r
+v  0.000009 14.871587 45.299545\r
+v  0.000008 13.013435 44.121323\r
+v  0.000008 11.331671 42.773254\r
+v  0.000008 9.824015 41.333908\r
+v  0.000008 8.487506 39.883476\r
+v  0.000008 7.317184 38.501934\r
+v  0.000007 6.303984 37.266266\r
+v  0.000007 5.426625 36.243587\r
+v  0.000007 4.603041 35.470577\r
+v  0.000007 3.827166 35.118301\r
+v  -6.438161 19.136450 46.425316\r
+v  -6.353598 16.909922 45.816738\r
+v  -6.225201 14.871723 44.892475\r
+v  -6.063061 13.013579 43.724884\r
+v  -5.877617 11.331814 42.388966\r
+v  -5.679690 9.824150 40.962574\r
+v  -5.480309 8.487634 39.525185\r
+v  -5.290480 7.317310 38.156071\r
+v  -5.120813 6.304112 36.931499\r
+v  -4.980629 5.426768 35.917988\r
+v  -4.875276 4.603211 35.151844\r
+v  -4.827658 3.827278 34.802601\r
+v  -12.586320 19.136593 45.197449\r
+v  -12.421125 16.910173 44.605034\r
+v  -12.170275 14.872031 43.705299\r
+v  -11.853456 13.013903 42.568661\r
+v  -11.491047 11.332126 41.268127\r
+v  -11.104189 9.824444 39.879501\r
+v  -10.714442 8.487910 38.480152\r
+v  -10.343311 7.317575 37.147247\r
+v  -10.011523 6.304379 35.955059\r
+v  -9.737235 5.427056 34.968319\r
+v  -9.530684 4.603519 34.222282\r
+v  -9.437037 3.827480 33.882076\r
+v  -18.394096 19.136747 43.215271\r
+v  -18.152813 16.910444 42.648907\r
+v  -17.786390 14.872363 41.788700\r
+v  -17.323549 13.014250 40.701973\r
+v  -16.794054 11.332463 39.458519\r
+v  -16.228773 9.824761 38.130814\r
+v  -15.659222 8.488208 36.792847\r
+v  -15.116816 7.317859 35.518398\r
+v  -14.631827 6.304662 34.378494\r
+v  -14.230722 5.427360 33.435017\r
+v  -13.928226 4.603835 32.721611\r
+v  -13.790768 3.827694 32.396191\r
+v  -23.810532 19.136875 40.530903\r
+v  -23.498325 16.910667 39.999748\r
+v  -23.024168 14.872637 39.193016\r
+v  -22.425198 13.014537 38.173809\r
+v  -21.739914 11.332741 37.007614\r
+v  -21.008261 9.825023 35.762386\r
+v  -20.271032 8.488452 34.507534\r
+v  -19.568884 7.318091 33.312260\r
+v  -18.940990 6.304893 32.243176\r
+v  -18.421543 5.427607 31.358335\r
+v  -18.029388 4.604089 30.689255\r
+v  -17.850901 3.827860 30.384022\r
+v  -28.784225 19.136959 37.196335\r
+v  -28.406908 16.910810 36.708874\r
+v  -27.833845 14.872812 35.968498\r
+v  -27.109894 13.014720 35.033138\r
+v  -26.281567 11.332920 33.962872\r
+v  -25.397150 9.825191 32.820076\r
+v  -24.505947 8.488607 31.668457\r
+v  -23.657120 7.318240 30.571531\r
+v  -22.897987 6.305040 29.590429\r
+v  -22.269848 5.427763 28.778452\r
+v  -21.795290 4.604247 28.164537\r
+v  -21.579062 3.827966 27.884516\r
+v  -33.263454 19.136986 33.263454\r
+v  -32.827499 16.910860 32.827499\r
+v  -32.165359 14.872871 32.165359\r
+v  -31.328846 13.014783 31.328848\r
+v  -30.371693 11.332979 30.371693\r
+v  -29.349709 9.825246 29.349709\r
+v  -28.319841 8.488661 28.319841\r
+v  -27.338905 7.318291 27.338905\r
+v  -26.461584 6.305090 26.461584\r
+v  -25.735548 5.427816 25.735548\r
+v  -25.186775 4.604300 25.186775\r
+v  -24.936558 3.828003 24.936558\r
+v  -37.196331 19.136959 28.784225\r
+v  -36.708866 16.910812 28.406908\r
+v  -35.968491 14.872812 27.833845\r
+v  -35.033134 13.014719 27.109894\r
+v  -33.962872 11.332919 26.281567\r
+v  -32.820076 9.825191 25.397154\r
+v  -31.668457 8.488607 24.505947\r
+v  -30.571529 7.318240 23.657120\r
+v  -29.590429 6.305040 22.897987\r
+v  -28.778452 5.427763 22.269848\r
+v  -28.164537 4.604246 21.795290\r
+v  -27.884516 3.827965 21.579063\r
+v  -40.530910 19.136877 23.810532\r
+v  -39.999756 16.910667 23.498325\r
+v  -39.193020 14.872637 23.024172\r
+v  -38.173820 13.014537 22.425200\r
+v  -37.007622 11.332743 21.739916\r
+v  -35.762390 9.825024 21.008266\r
+v  -34.507538 8.488452 20.271032\r
+v  -33.312263 7.318093 19.568888\r
+v  -32.243179 6.304894 18.940992\r
+v  -31.358334 5.427606 18.421547\r
+v  -30.689259 4.604089 18.029392\r
+v  -30.384024 3.827861 17.850904\r
+v  -43.215271 19.136749 18.394100\r
+v  -42.648907 16.910444 18.152817\r
+v  -41.788700 14.872363 17.786392\r
+v  -40.701973 13.014250 17.323555\r
+v  -39.458519 11.332464 16.794056\r
+v  -38.130814 9.824762 16.228777\r
+v  -36.792847 8.488208 15.659225\r
+v  -35.518398 7.317860 15.116820\r
+v  -34.378494 6.304662 14.631830\r
+v  -33.435017 5.427359 14.230725\r
+v  -32.721611 4.603835 13.928229\r
+v  -32.396191 3.827694 13.790771\r
+v  -45.197449 19.136593 12.586329\r
+v  -44.605034 16.910172 12.421133\r
+v  -43.705303 14.872031 12.170282\r
+v  -42.568661 13.013903 11.853461\r
+v  -41.268135 11.332126 11.491053\r
+v  -39.879501 9.824445 11.104195\r
+v  -38.480152 8.487910 10.714448\r
+v  -37.147247 7.317575 10.343317\r
+v  -35.955059 6.304379 10.011529\r
+v  -34.968319 5.427056 9.737239\r
+v  -34.222282 4.603519 9.530688\r
+v  -33.882076 3.827481 9.437042\r
+v  -46.425144 19.136719 6.439827\r
+v  -45.816738 16.909966 6.353679\r
+v  -44.892456 14.871702 6.225222\r
+v  -43.724873 13.013579 6.063067\r
+v  -42.388962 11.331813 5.877625\r
+v  -40.962570 9.824150 5.679696\r
+v  -39.525185 8.487634 5.480315\r
+v  -38.156067 7.317310 5.290485\r
+v  -36.931496 6.304111 5.120819\r
+v  -35.917988 5.426769 4.980635\r
+v  -35.151836 4.603213 4.875282\r
+v  -34.802593 3.827277 4.827663\r
+v  -45.299545 14.871587 0.000000\r
+v  -44.121323 13.013435 0.000000\r
+v  -42.773254 11.331671 -0.000000\r
+v  -41.333908 9.824014 0.000000\r
+v  -39.883476 8.487506 -0.000000\r
+v  -38.501934 7.317184 -0.000000\r
+v  -37.266266 6.303984 0.000000\r
+v  -36.243587 5.426625 0.000000\r
+v  -35.470577 4.603041 -0.000000\r
+v  -35.118301 3.827166 -0.000000\r
+v  34.755360 3.404014 4.820999\r
+v  34.672924 3.246404 4.808609\r
+v  34.364166 3.003830 4.764473\r
+v  34.675667 3.003757 -0.000000\r
+v  33.618481 2.672704 4.660081\r
+v  32.317844 2.316947 4.479186\r
+v  30.378683 1.974196 4.210074\r
+v  27.712137 1.662043 3.840324\r
+v  24.222204 1.390779 3.356575\r
+v  19.808775 1.168205 2.744921\r
+v  14.369593 1.001220 1.991174\r
+v  14.499825 1.001219 0.000000\r
+v  7.801243 0.896357 1.080995\r
+v  7.871946 0.896357 -0.000000\r
+v  33.836109 3.404226 9.424092\r
+v  33.756081 3.246700 9.400521\r
+v  33.455639 3.004025 9.315088\r
+v  32.729679 2.672794 9.111611\r
+v  31.463404 2.316986 8.758283\r
+v  29.575491 1.974214 8.232288\r
+v  26.979433 1.662051 7.509409\r
+v  23.581768 1.390782 6.563550\r
+v  19.285025 1.168207 5.367543\r
+v  13.989653 1.001220 3.893653\r
+v  7.594972 0.896357 2.113845\r
+v  32.352261 3.404464 13.771930\r
+v  32.275902 3.247028 13.738190\r
+v  31.988689 3.004239 13.614236\r
+v  31.294498 2.672895 13.317492\r
+v  30.083673 2.317030 12.801440\r
+v  28.278502 1.974233 12.032840\r
+v  25.796257 1.662060 10.976355\r
+v  22.547577 1.390786 9.593882\r
+v  18.439260 1.168208 7.845728\r
+v  13.376119 1.001220 5.691366\r
+v  7.261883 0.896357 3.089822\r
+v  30.342831 3.404656 17.826595\r
+v  30.271254 3.247304 17.783573\r
+v  30.001797 3.004421 17.623943\r
+v  29.350573 2.672978 17.240379\r
+v  28.214848 2.317066 16.572649\r
+v  26.521738 1.974249 15.577813\r
+v  24.193661 1.662067 14.210188\r
+v  21.146776 1.390789 12.420476\r
+v  17.293682 1.168210 10.157309\r
+v  12.545092 1.001221 7.368227\r
+v  6.810717 0.896357 4.000190\r
+v  27.846706 3.404784 21.549740\r
+v  27.780914 3.247481 21.498280\r
+v  27.533407 3.004537 21.305986\r
+v  26.935545 2.673032 20.842775\r
+v  25.893118 2.317090 20.035799\r
+v  24.339247 1.974260 18.833231\r
+v  22.202694 1.662072 17.179893\r
+v  19.406519 1.390791 15.016212\r
+v  15.870494 1.168211 12.280100\r
+v  11.512681 1.001221 8.908139\r
+v  6.250220 0.896357 4.836210\r
+v  24.902721 3.404830 24.902721\r
+v  24.843653 3.247544 24.843653\r
+v  24.621971 3.004576 24.621971\r
+v  24.087051 2.673051 24.087051\r
+v  23.154699 2.317098 23.154699\r
+v  21.765059 1.974263 21.765059\r
+v  19.854418 1.662073 19.854418\r
+v  17.353945 1.390792 17.353945\r
+v  14.191896 1.168211 14.191896\r
+v  10.294993 1.001221 10.294993\r
+v  5.589135 0.896357 5.589135\r
+v  21.549744 3.404784 27.846706\r
+v  21.498280 3.247482 27.780914\r
+v  21.305988 3.004537 27.533407\r
+v  20.842775 2.673032 26.935545\r
+v  20.035799 2.317090 25.893118\r
+v  18.833233 1.974260 24.339247\r
+v  17.179893 1.662072 22.202694\r
+v  15.016212 1.390791 19.406519\r
+v  12.280100 1.168211 15.870494\r
+v  8.908139 1.001221 11.512681\r
+v  4.836210 0.896357 6.250220\r
+v  17.826597 3.404658 30.342834\r
+v  17.783575 3.247304 30.271255\r
+v  17.623947 3.004420 30.001801\r
+v  17.240383 2.672979 29.350573\r
+v  16.572653 2.317066 28.214848\r
+v  15.577816 1.974249 26.521742\r
+v  14.210190 1.662067 24.193663\r
+v  12.420479 1.390789 21.146780\r
+v  10.157310 1.168210 17.293684\r
+v  7.368229 1.001221 12.545092\r
+v  4.000191 0.896357 6.810718\r
+v  13.771935 3.404464 32.352261\r
+v  13.738194 3.247028 32.275902\r
+v  13.614237 3.004240 31.988689\r
+v  13.317494 2.672895 31.294500\r
+v  12.801443 2.317030 30.083673\r
+v  12.032841 1.974233 28.278502\r
+v  10.976357 1.662060 25.796259\r
+v  9.593884 1.390786 22.547577\r
+v  7.845730 1.168208 18.439260\r
+v  5.691367 1.001220 13.376119\r
+v  3.089823 0.896357 7.261883\r
+v  9.424096 3.404227 33.836109\r
+v  9.400525 3.246699 33.756077\r
+v  9.315092 3.004024 33.455639\r
+v  9.111615 2.672795 32.729679\r
+v  8.758286 2.316986 31.463404\r
+v  8.232292 1.974214 29.575493\r
+v  7.509413 1.662051 26.979433\r
+v  6.563553 1.390782 23.581768\r
+v  5.367545 1.168207 19.285025\r
+v  3.893654 1.001220 13.989654\r
+v  2.113845 0.896357 7.594973\r
+v  4.821004 3.404014 34.755352\r
+v  4.808615 3.246402 34.672913\r
+v  4.764478 3.003829 34.364166\r
+v  4.660086 2.672704 33.618481\r
+v  4.479190 2.316947 32.317837\r
+v  4.210078 1.974196 30.378677\r
+v  3.840329 1.662043 27.712137\r
+v  3.356578 1.390779 24.222202\r
+v  2.744924 1.168205 19.808775\r
+v  1.991176 1.001220 14.369593\r
+v  1.080996 0.896357 7.801243\r
+v  0.000006 3.403928 35.070625\r
+v  0.000007 3.246296 34.987328\r
+v  0.000007 3.003757 34.675667\r
+v  0.000007 2.672669 33.923180\r
+v  0.000006 2.316931 32.610737\r
+v  0.000006 1.974190 30.653999\r
+v  0.000006 1.662040 27.963289\r
+v  0.000005 1.390778 24.441727\r
+v  0.000004 1.168205 19.988300\r
+v  0.000003 1.001219 14.499827\r
+v  0.000002 0.896357 7.871946\r
+v  -4.820999 3.404014 34.755360\r
+v  -4.808609 3.246404 34.672924\r
+v  -4.764473 3.003830 34.364166\r
+v  -4.660081 2.672704 33.618481\r
+v  -4.479186 2.316947 32.317844\r
+v  -4.210074 1.974196 30.378683\r
+v  -3.840325 1.662043 27.712137\r
+v  -3.356575 1.390779 24.222204\r
+v  -2.744921 1.168205 19.808775\r
+v  -1.991174 1.001220 14.369593\r
+v  -1.080995 0.896357 7.801243\r
+v  -9.424092 3.404226 33.836109\r
+v  -9.400521 3.246700 33.756081\r
+v  -9.315088 3.004025 33.455639\r
+v  -9.111611 2.672794 32.729679\r
+v  -8.758283 2.316986 31.463404\r
+v  -8.232288 1.974214 29.575491\r
+v  -7.509409 1.662051 26.979433\r
+v  -6.563550 1.390782 23.581768\r
+v  -5.367543 1.168207 19.285025\r
+v  -3.893653 1.001220 13.989653\r
+v  -2.113845 0.896357 7.594972\r
+v  -13.771930 3.404464 32.352261\r
+v  -13.738190 3.247028 32.275902\r
+v  -13.614236 3.004239 31.988689\r
+v  -13.317492 2.672895 31.294498\r
+v  -12.801440 2.317030 30.083673\r
+v  -12.032840 1.974233 28.278502\r
+v  -10.976355 1.662060 25.796257\r
+v  -9.593882 1.390786 22.547577\r
+v  -7.845728 1.168208 18.439260\r
+v  -5.691366 1.001220 13.376119\r
+v  -3.089822 0.896357 7.261883\r
+v  -17.826595 3.404656 30.342831\r
+v  -17.783573 3.247304 30.271254\r
+v  -17.623943 3.004421 30.001797\r
+v  -17.240379 2.672978 29.350573\r
+v  -16.572649 2.317066 28.214848\r
+v  -15.577813 1.974249 26.521738\r
+v  -14.210188 1.662067 24.193661\r
+v  -12.420476 1.390789 21.146776\r
+v  -10.157309 1.168210 17.293682\r
+v  -7.368227 1.001221 12.545092\r
+v  -4.000190 0.896357 6.810717\r
+v  -21.549740 3.404784 27.846706\r
+v  -21.498280 3.247481 27.780914\r
+v  -21.305986 3.004537 27.533407\r
+v  -20.842775 2.673032 26.935545\r
+v  -20.035799 2.317090 25.893118\r
+v  -18.833231 1.974260 24.339247\r
+v  -17.179893 1.662072 22.202694\r
+v  -15.016212 1.390791 19.406519\r
+v  -12.280100 1.168211 15.870494\r
+v  -8.908139 1.001221 11.512681\r
+v  -4.836210 0.896357 6.250220\r
+v  -24.902721 3.404830 24.902721\r
+v  -24.843653 3.247544 24.843653\r
+v  -24.621971 3.004576 24.621971\r
+v  -24.087051 2.673051 24.087051\r
+v  -23.154699 2.317098 23.154699\r
+v  -21.765059 1.974263 21.765059\r
+v  -19.854418 1.662073 19.854418\r
+v  -17.353945 1.390792 17.353945\r
+v  -14.191896 1.168211 14.191896\r
+v  -10.294993 1.001221 10.294993\r
+v  -5.589135 0.896357 5.589135\r
+v  -27.846706 3.404784 21.549744\r
+v  -27.780914 3.247482 21.498280\r
+v  -27.533407 3.004537 21.305988\r
+v  -26.935545 2.673032 20.842775\r
+v  -25.893118 2.317090 20.035799\r
+v  -24.339247 1.974260 18.833233\r
+v  -22.202694 1.662072 17.179893\r
+v  -19.406519 1.390791 15.016212\r
+v  -15.870494 1.168211 12.280100\r
+v  -11.512681 1.001221 8.908139\r
+v  -6.250220 0.896357 4.836210\r
+v  -30.342834 3.404658 17.826597\r
+v  -30.271255 3.247304 17.783575\r
+v  -30.001801 3.004420 17.623947\r
+v  -29.350573 2.672979 17.240383\r
+v  -28.214848 2.317066 16.572653\r
+v  -26.521742 1.974249 15.577816\r
+v  -24.193663 1.662067 14.210190\r
+v  -21.146780 1.390789 12.420479\r
+v  -17.293684 1.168210 10.157310\r
+v  -12.545092 1.001221 7.368229\r
+v  -6.810718 0.896357 4.000191\r
+v  -32.352261 3.404464 13.771935\r
+v  -32.275902 3.247028 13.738194\r
+v  -31.988689 3.004240 13.614237\r
+v  -31.294500 2.672895 13.317494\r
+v  -30.083673 2.317030 12.801443\r
+v  -28.278502 1.974233 12.032841\r
+v  -25.796259 1.662060 10.976357\r
+v  -22.547577 1.390786 9.593884\r
+v  -18.439260 1.168208 7.845730\r
+v  -13.376119 1.001220 5.691367\r
+v  -7.261883 0.896357 3.089823\r
+v  -33.836109 3.404227 9.424096\r
+v  -33.756077 3.246699 9.400525\r
+v  -33.455639 3.004024 9.315092\r
+v  -32.729679 2.672795 9.111615\r
+v  -31.463404 2.316986 8.758286\r
+v  -29.575493 1.974214 8.232292\r
+v  -26.979433 1.662051 7.509413\r
+v  -23.581768 1.390782 6.563553\r
+v  -19.285025 1.168207 5.367545\r
+v  -13.989654 1.001220 3.893654\r
+v  -7.594973 0.896357 2.113845\r
+v  -34.755352 3.404014 4.821004\r
+v  -34.672913 3.246402 4.808615\r
+v  -34.364166 3.003829 4.764478\r
+v  -33.618481 2.672704 4.660086\r
+v  -32.317837 2.316947 4.479190\r
+v  -30.378677 1.974196 4.210078\r
+v  -27.712137 1.662043 3.840329\r
+v  -24.222202 1.390779 3.356578\r
+v  -19.808775 1.168205 2.744924\r
+v  -14.369593 1.001220 1.991176\r
+v  -7.801243 0.896357 1.080996\r
+v  -35.070625 3.403928 -0.000000\r
+v  -34.987328 3.246296 0.000000\r
+v  -34.675667 3.003757 -0.000000\r
+v  -33.923180 2.672669 0.000000\r
+v  -32.610737 2.316931 0.000000\r
+v  -30.653999 1.974190 -0.000000\r
+v  -27.963289 1.662040 -0.000000\r
+v  -24.441727 1.390778 -0.000000\r
+v  -19.988300 1.168205 -0.000000\r
+v  -14.499827 1.001219 -0.000000\r
+v  -7.871946 0.896357 -0.000000\r
+v  45.088390 33.395214 3.420008\r
+v  45.223450 33.753616 0.000000\r
+v  45.190826 32.451126 6.175942\r
+v  45.105232 31.041933 8.324440\r
+v  45.228798 29.264528 9.865519\r
+v  45.418671 27.274323 10.791471\r
+v  45.630348 25.162910 11.116575\r
+v  45.840954 23.049217 10.835164\r
+v  46.007530 21.041777 9.940046\r
+v  46.149807 19.343899 8.475669\r
+v  46.149780 17.777922 6.248612\r
+v  45.995186 16.780825 3.476318\r
+v  46.075687 16.442997 0.000000\r
+v  49.706287 34.262356 3.278664\r
+v  50.218098 32.173695 7.923295\r
+v  49.914749 33.420540 5.914976\r
+v  53.426147 33.917679 7.481902\r
+v  53.056084 35.035255 5.590816\r
+v  52.799423 35.790501 3.101901\r
+v  55.430260 37.105873 5.186369\r
+v  55.141747 37.773933 2.880229\r
+v  52.703110 36.067696 0.000000\r
+v  57.238297 22.732883 -0.000000\r
+v  60.069382 26.418041 -0.000000\r
+v  57.135185 23.008434 3.116540\r
+v  59.951019 26.656109 2.897856\r
+v  56.856812 23.760654 5.621984\r
+v  59.631214 27.306948 5.226165\r
+v  56.450565 24.878613 7.527346\r
+v  59.164711 28.275648 6.992421\r
+v  55.961720 26.256136 8.853226\r
+v  58.606346 29.469543 8.212838\r
+v  55.430447 27.795492 9.624819\r
+v  58.007889 30.801662 8.911481\r
+v  54.889709 29.408915 9.866074\r
+v  57.412601 32.194992 9.117931\r
+v  54.364090 31.017546 9.592812\r
+v  56.847668 33.585190 8.858398\r
+v  53.870747 32.546989 8.804893\r
+v  56.321617 34.915279 8.137874\r
+v  55.840210 36.118500 6.928419\r
+v  58.124084 37.632740 7.380739\r
+v  57.617748 38.665031 6.298534\r
+v  57.177288 39.515884 4.724274\r
+v  58.924278 41.436157 5.621372\r
+v  58.458118 42.140152 4.223563\r
+v  56.864441 40.091221 2.626429\r
+v  58.126919 42.616402 2.350852\r
+v  56.746426 40.301506 -0.000000\r
+v  62.086411 30.499714 0.000000\r
+v  63.582985 34.855137 0.000000\r
+v  61.958778 30.698326 2.643125\r
+v  63.449642 35.013340 2.363898\r
+v  61.613708 31.241852 4.764424\r
+v  63.089504 35.446148 4.256618\r
+v  61.110249 32.051811 6.369339\r
+v  62.564560 36.090984 5.683926\r
+v  60.509293 33.050926 7.470810\r
+v  61.938782 36.886909 6.658678\r
+v  59.871010 34.166008 8.091183\r
+v  61.275433 37.777168 7.203109\r
+v  59.247063 35.333176 8.263747\r
+v  60.628307 38.713707 7.351068\r
+v  58.665573 36.502846 8.023794\r
+v  60.024502 39.660542 7.138882\r
+v  59.458153 40.584930 6.575143\r
+v  61.127766 42.943413 6.253541\r
+v  60.512177 43.655693 5.762395\r
+v  59.941269 44.316677 4.928680\r
+v  61.485046 46.735191 4.987838\r
+v  60.857227 47.204559 4.259930\r
+v  59.450897 44.867290 3.706893\r
+v  60.334347 47.601540 3.203070\r
+v  59.104950 45.242031 2.066032\r
+v  59.970970 47.876034 1.787315\r
+v  59.834888 47.977917 -0.000000\r
+v  64.852272 39.343670 -0.000000\r
+v  66.198952 43.818249 -0.000000\r
+v  64.714180 39.461689 2.074268\r
+v  66.054077 43.897354 1.790847\r
+v  64.342331 39.783501 3.728095\r
+v  65.665672 44.110519 3.209938\r
+v  63.801727 40.261581 4.970649\r
+v  65.101921 44.424397 4.273631\r
+v  63.156651 40.851818 5.818796\r
+v  64.424400 44.812401 5.005883\r
+v  62.466934 41.515530 6.296455\r
+v  63.684601 45.254700 5.430378\r
+v  61.781311 42.221127 6.432749\r
+v  62.925381 45.734722 5.564390\r
+v  62.182732 46.235287 5.417175\r
+v  64.280853 49.132317 4.799839\r
+v  63.403214 49.422714 4.679266\r
+v  62.581425 49.720722 4.301025\r
+v  65.006660 52.395870 4.089561\r
+v  64.007332 52.512642 3.752841\r
+v  61.860790 50.006725 3.661126\r
+v  63.140575 52.632931 3.181634\r
+v  61.280983 50.255054 2.746494\r
+v  62.459641 52.743523 2.376829\r
+v  60.887669 50.432003 1.532814\r
+v  62.009407 52.827225 1.324532\r
+v  60.741627 50.499249 0.000000\r
+v  67.942162 48.128872 -0.000000\r
+v  70.411682 52.110897 -0.000000\r
+v  67.784515 48.171600 1.534698\r
+v  70.229515 52.123020 1.335353\r
+v  67.362701 48.281441 2.741862\r
+v  69.739418 52.143497 2.377033\r
+v  66.748703 48.437824 3.647612\r
+v  69.021545 52.159821 3.157365\r
+v  66.000435 48.632710 4.282821\r
+v  68.138405 52.179893 3.713215\r
+v  65.163139 48.865402 4.666136\r
+v  67.138397 52.221870 4.060031\r
+v  66.073395 52.295216 4.189920\r
+v  69.434898 54.184780 3.623256\r
+v  68.248657 54.167709 3.741345\r
+v  67.063324 54.171482 3.642959\r
+v  70.193817 55.759918 3.459589\r
+v  68.873260 55.687439 3.367224\r
+v  65.953758 54.193527 3.323690\r
+v  67.636673 55.636772 3.064336\r
+v  64.992226 54.227539 2.784500\r
+v  66.565292 55.605934 2.552340\r
+v  64.243576 54.264946 2.032888\r
+v  65.733673 55.590393 1.844277\r
+v  63.763153 54.295246 1.087903\r
+v  65.204605 55.584610 0.972424\r
+v  65.022522 55.583435 -0.000000\r
+v  72.974655 54.319298 -0.000000\r
+v  75.408371 56.206535 -0.000000\r
+v  72.798225 54.313873 1.086095\r
+v  75.221130 56.188660 0.960857\r
+v  72.295990 54.294380 2.022224\r
+v  74.679779 56.136047 1.820236\r
+v  71.524963 54.260078 2.761478\r
+v  73.835159 56.054188 2.518550\r
+v  70.549599 54.219116 3.295256\r
+v  72.755264 55.954292 3.030048\r
+v  71.515144 55.851707 3.345429\r
+v  74.536522 57.222038 2.862778\r
+v  73.192123 57.069321 3.172426\r
+v  71.756943 56.926666 3.288701\r
+v  74.412811 57.840912 3.064968\r
+v  72.899948 57.672512 3.186956\r
+v  70.320610 56.804794 3.204918\r
+v  71.382965 57.527905 3.112457\r
+v  68.974106 56.708424 2.916367\r
+v  69.958649 57.411346 2.835438\r
+v  67.806656 56.637566 2.424866\r
+v  68.722389 57.322998 2.357784\r
+v  66.900864 56.589989 1.745687\r
+v  67.762573 57.261326 1.696100\r
+v  66.325653 56.562912 0.916095\r
+v  67.153137 57.224899 0.888914\r
+v  77.390686 57.595169 -0.000000\r
+v  77.191574 57.567680 0.891030\r
+v  78.604927 58.442093 0.846880\r
+v  76.612244 57.488617 1.699429\r
+v  78.001305 58.343704 1.621314\r
+v  75.703789 57.367828 2.367136\r
+v  77.050873 58.196815 2.268172\r
+v  75.826874 58.021431 2.755038\r
+v  77.943726 58.654572 2.209999\r
+v  76.688156 58.469574 2.694097\r
+v  75.235077 58.281586 3.006982\r
+v  77.247391 58.713810 2.692511\r
+v  75.767258 58.539230 3.008938\r
+v  73.676620 58.110069 3.135304\r
+v  74.178757 58.381268 3.139774\r
+v  72.111130 57.963966 3.067731\r
+v  72.581238 58.248608 3.073849\r
+v  70.639084 57.846554 2.797916\r
+v  71.077499 58.142105 2.804428\r
+v  69.359810 57.756969 2.327847\r
+v  69.769173 58.060509 2.334336\r
+v  68.365730 57.693714 1.674795\r
+v  68.751022 58.002373 1.680595\r
+v  67.734032 57.655857 0.877722\r
+v  68.103157 57.967300 0.881536\r
+v  67.517273 57.643257 -0.000000\r
+v  67.880493 57.955521 -0.000000\r
+v  80.354439 59.187336 -0.000000\r
+v  79.532471 58.921913 0.820733\r
+v  80.138725 59.149529 0.818294\r
+v  78.915237 58.814110 1.574499\r
+v  79.512527 59.043732 1.570631\r
+v  78.523865 58.890503 2.206112\r
+v  79.970215 59.150993 1.634999\r
+v  78.951813 59.021400 2.287304\r
+v  77.638527 58.874825 2.782006\r
+v  80.619560 59.240250 0.855935\r
+v  68.024681 58.235889 -0.000000\r
+v  68.255508 58.246353 0.910756\r
+v  68.925011 58.277336 1.730476\r
+v  69.972977 58.327969 2.397663\r
+v  71.315781 58.397888 2.877851\r
+v  72.856537 58.487667 3.155504\r
+v  74.492569 58.598457 3.228011\r
+v  76.120430 58.729042 3.100050\r
+v  50.588642 30.633972 9.337005\r
+v  51.000626 28.908375 10.177316\r
+v  51.437279 27.084599 10.462042\r
+v  51.875427 25.257896 10.192454\r
+v  52.296970 23.520880 9.360587\r
+v  52.679657 21.972109 7.949081\r
+v  52.995735 20.716501 5.932664\r
+v  53.211796 19.871258 3.287719\r
+v  53.291306 19.561089 -0.000000\r
+v  -39.429230 48.989639 0.000000\r
+v  -39.271828 49.065823 1.488043\r
+v  -39.061852 49.314972 2.712852\r
+v  -38.812569 49.669872 3.629118\r
+v  -38.543526 50.074299 4.257537\r
+v  -38.277580 50.488907 4.633398\r
+v  -38.026958 50.941635 4.776924\r
+v  -37.757614 51.428608 4.720310\r
+v  -37.488518 51.931980 4.423198\r
+v  -37.292095 52.421883 3.778018\r
+v  -37.161736 52.828678 2.819624\r
+v  -37.117207 53.103344 1.548502\r
+v  -37.190178 53.192650 -0.000000\r
+v  -47.478485 20.951784 0.000000\r
+v  -47.354473 20.811895 1.482549\r
+v  -47.182030 20.513746 2.681194\r
+v  -47.050934 20.062574 3.592475\r
+v  -46.915611 19.550783 4.226586\r
+v  -46.789665 19.043793 4.609217\r
+v  -46.539436 18.485825 4.818050\r
+v  -46.286690 17.780519 4.782351\r
+v  -46.118649 17.115822 4.439608\r
+v  -45.814693 16.412136 3.809999\r
+v  -45.607841 15.840797 2.840259\r
+v  -45.526543 15.484818 1.558604\r
+v  -45.604168 15.412551 0.000000\r
+v  -41.948517 51.534840 4.457182\r
+v  -42.036423 51.218357 4.531941\r
+v  -42.124222 50.902065 4.456912\r
+v  -42.206703 50.523998 4.179229\r
+v  -42.279007 50.113258 3.617671\r
+v  -42.336468 49.743366 2.735821\r
+v  -42.374432 49.482063 1.528272\r
+v  -41.683655 53.053173 0.000000\r
+v  -41.697433 52.955444 1.528307\r
+v  -41.735565 52.694118 2.735925\r
+v  -41.793274 52.324139 3.617865\r
+v  -41.865837 51.913204 4.179520\r
+v  -46.791210 52.283672 3.618367\r
+v  -46.710369 51.874680 4.180077\r
+v  -46.619873 51.498638 4.457526\r
+v  -51.096916 51.771812 4.180090\r
+v  -50.857487 51.402054 4.457748\r
+v  -46.524952 51.185066 4.531940\r
+v  -50.605980 51.095291 4.531942\r
+v  -46.429539 50.872025 4.456937\r
+v  -50.353104 50.789867 4.456754\r
+v  -46.337967 50.496773 4.179554\r
+v  -50.110752 50.421970 4.179654\r
+v  -46.255993 50.088215 3.618148\r
+v  -49.894230 50.019619 3.618536\r
+v  -46.189915 49.719971 2.736236\r
+v  -49.719959 49.656162 2.736671\r
+v  -46.145927 49.459763 1.528513\r
+v  -49.604004 49.399086 1.528798\r
+v  -46.129951 49.362446 -0.000000\r
+v  -49.561943 49.302891 -0.000000\r
+v  -46.915485 53.009598 -0.000000\r
+v  -51.638500 52.891586 -0.000000\r
+v  -46.899738 52.912281 1.528456\r
+v  -51.596943 52.795444 1.528291\r
+v  -46.856346 52.652046 2.736257\r
+v  -51.482456 52.538464 2.736003\r
+v  -51.310497 52.174942 3.618155\r
+v  -55.610043 52.318462 2.734268\r
+v  -55.347038 51.964821 3.616080\r
+v  -55.021183 51.573517 4.178608\r
+v  -58.895660 51.621410 3.610722\r
+v  -58.478214 51.249767 4.174442\r
+v  -54.657051 51.215675 4.457519\r
+v  -58.013878 50.910789 4.456400\r
+v  -54.275249 50.920700 4.531946\r
+v  -57.528488 50.633057 4.531958\r
+v  -53.890728 50.628735 4.456004\r
+v  -57.038601 50.361160 4.454206\r
+v  -53.520660 50.274933 4.178843\r
+v  -56.564045 50.030125 4.176105\r
+v  -53.188789 49.885006 3.618203\r
+v  -56.135773 49.661190 3.616156\r
+v  -52.921051 49.531242 2.736722\r
+v  -55.788849 49.323917 2.735712\r
+v  -52.742691 49.280479 1.528953\r
+v  -55.557209 49.083851 1.528669\r
+v  -52.677967 49.186546 -0.000000\r
+v  -55.473087 48.993740 -0.000000\r
+v  -55.849178 52.662617 0.000000\r
+v  -59.542446 52.287498 -0.000000\r
+v  -55.785439 52.568855 1.527358\r
+v  -59.460087 52.197708 1.525057\r
+v  -59.233902 51.958389 2.729917\r
+v  -62.613842 51.649925 1.520684\r
+v  -62.347134 51.427208 2.721620\r
+v  -61.949936 51.115063 3.600467\r
+v  -64.942276 50.698849 2.708375\r
+v  -64.503281 50.420185 3.584220\r
+v  -61.462276 50.772209 4.166301\r
+v  -63.967823 50.115189 4.153381\r
+v  -60.922928 50.459602 4.453880\r
+v  -63.379246 49.835751 4.449577\r
+v  -60.361187 50.204163 4.531981\r
+v  -62.768589 49.606171 4.532022\r
+v  -59.793076 49.958649 4.450782\r
+v  -62.150188 49.391422 4.445269\r
+v  -59.238110 49.660385 4.169976\r
+v  -61.540627 49.135757 4.158732\r
+v  -58.732697 49.323288 3.610821\r
+v  -60.978722 48.843151 3.600015\r
+v  -58.320698 49.011375 2.732533\r
+v  -60.516350 48.567657 2.725491\r
+v  -58.044613 48.787762 1.527423\r
+v  -60.204693 48.367771 1.524366\r
+v  -57.944183 48.703499 0.000000\r
+v  -60.090996 48.291927 -0.000000\r
+v  -62.711224 51.733753 0.000000\r
+v  -65.347427 50.974529 -0.000000\r
+v  -65.238739 50.898891 1.513679\r
+v  -67.448036 49.991592 -0.000000\r
+v  -67.331772 49.926266 1.504408\r
+v  -67.016464 49.754341 2.690974\r
+v  -68.908897 48.716778 1.495354\r
+v  -68.583618 48.576832 2.673987\r
+v  -66.553070 49.516308 3.563130\r
+v  -68.109818 48.383591 3.542588\r
+v  -65.992195 49.255936 4.136663\r
+v  -67.541267 48.171173 4.120241\r
+v  -65.379234 49.014259 4.443695\r
+v  -66.923698 47.969803 4.437550\r
+v  -64.745583 48.812099 4.532072\r
+v  -66.287674 47.796173 4.532102\r
+v  -64.104340 48.628956 4.437863\r
+v  -65.646408 47.642570 4.430169\r
+v  -63.467972 48.422352 4.141397\r
+v  -65.009918 47.484119 4.120264\r
+v  -62.873341 48.186466 3.581538\r
+v  -64.409294 47.310944 3.555949\r
+v  -62.377460 47.959885 2.712463\r
+v  -63.900902 47.143429 2.692640\r
+v  -62.040089 47.792519 1.518331\r
+v  -63.550495 47.017250 1.508500\r
+v  -61.916397 47.728268 -0.000000\r
+v  -69.029594 48.770138 -0.000000\r
+v  -70.135681 47.273121 0.000000\r
+v  -70.012054 47.233601 1.490260\r
+v  -70.804443 45.421791 -0.000000\r
+v  -70.678452 45.399563 1.489941\r
+v  -69.680725 47.129883 2.664130\r
+v  -70.341866 45.340977 2.662944\r
+v  -69.202225 46.986122 3.530254\r
+v  -69.858513 45.259026 3.528044\r
+v  -68.633446 46.826305 4.109865\r
+v  -69.288513 45.166519 4.107232\r
+v  -68.020515 46.670952 4.433248\r
+v  -68.679764 45.074417 4.431639\r
+v  -67.392906 46.532158 4.532090\r
+v  -68.060989 44.989483 4.532048\r
+v  -66.763908 46.409519 4.424950\r
+v  -67.443993 44.913059 4.423773\r
+v  -66.143509 46.293182 4.102916\r
+v  -66.838364 44.842842 4.096591\r
+v  -65.558014 46.176872 3.531360\r
+v  -66.269119 44.777431 3.519868\r
+v  -65.058144 46.068241 2.671104\r
+v  -65.783348 44.719872 2.659082\r
+v  -64.709557 45.986294 1.496846\r
+v  -65.443398 44.677620 1.489404\r
+v  -65.315781 44.660965 -0.000000\r
+v  -71.032669 43.120392 -0.000000\r
+v  -70.864578 40.571907 0.000000\r
+v  -70.905617 43.120350 1.490808\r
+v  -70.738953 40.594044 1.490340\r
+v  -70.566589 43.120514 2.664044\r
+v  -70.403839 40.653576 2.662997\r
+v  -70.080826 43.121490 3.528665\r
+v  -69.923897 40.739983 3.527178\r
+v  -69.510117 43.123909 4.106839\r
+v  -69.360229 40.843300 4.105333\r
+v  -68.903564 43.128391 4.430677\r
+v  -68.761063 40.955338 4.429730\r
+v  -68.289291 43.135201 4.531983\r
+v  -68.153839 41.070663 4.531960\r
+v  -67.677109 43.143883 4.425538\r
+v  -67.548149 41.186131 4.426323\r
+v  -67.075356 43.153267 4.099285\r
+v  -66.952492 41.298553 4.100434\r
+v  -66.509438 43.161942 3.521807\r
+v  -66.392265 41.402447 3.522884\r
+v  -66.026787 43.168724 2.659585\r
+v  -65.914551 41.489475 2.660312\r
+v  -65.689171 43.172844 1.488981\r
+v  -65.580437 41.549488 1.489239\r
+v  -65.562416 43.174149 0.000000\r
+v  -70.357811 38.047009 -0.000000\r
+v  -69.506653 35.559326 -0.000000\r
+v  -70.236153 38.086609 1.489898\r
+v  -69.391174 35.612617 1.490680\r
+v  -69.911690 38.192822 2.662251\r
+v  -69.083237 35.755299 2.663822\r
+v  -69.447159 38.346462 3.526338\r
+v  -68.642715 35.961056 3.528210\r
+v  -68.901741 38.529621 4.104704\r
+v  -68.126625 36.205460 4.106121\r
+v  -68.322151 38.727989 4.429485\r
+v  -67.580284 36.469353 4.429974\r
+v  -67.735062 38.932621 4.531958\r
+v  -67.029205 36.741604 4.531957\r
+v  -67.149933 39.138718 4.426282\r
+v  -66.481216 37.017132 4.426898\r
+v  -66.574913 39.341019 4.100264\r
+v  -65.942184 37.289867 4.102138\r
+v  -66.034195 39.529449 3.522710\r
+v  -65.433998 37.545971 3.525404\r
+v  -65.572937 39.688232 2.660266\r
+v  -64.999489 37.762955 2.662771\r
+v  -65.250168 39.798138 1.489326\r
+v  -64.694992 37.913563 1.490839\r
+v  -64.580551 37.969730 0.000000\r
+v  -68.303841 33.107986 0.000000\r
+v  -66.741425 30.693939 0.000000\r
+v  -68.196686 33.172222 1.493325\r
+v  -66.644875 30.767271 1.497882\r
+v  -67.910934 33.344028 2.668868\r
+v  -66.387413 30.963385 2.677503\r
+v  -67.502861 33.591095 3.534150\r
+v  -66.020721 31.244762 3.544427\r
+v  -67.027176 33.883045 4.110612\r
+v  -65.596947 31.575037 4.118530\r
+v  -66.528229 34.196144 4.431555\r
+v  -65.159760 31.925203 4.434402\r
+v  -66.030045 34.517765 4.531956\r
+v  -64.731323 32.281364 4.531957\r
+v  -65.536568 34.844345 4.428536\r
+v  -64.309532 32.643562 4.431396\r
+v  -65.048950 35.170723 4.107077\r
+v  -63.888206 33.009956 4.115525\r
+v  -64.585754 35.480164 3.532246\r
+v  -63.481915 33.361565 3.543615\r
+v  -64.187569 35.743877 2.668850\r
+v  -63.129204 33.663147 2.678668\r
+v  -63.907810 35.927357 1.494275\r
+v  -62.880367 33.873367 1.499661\r
+v  -63.802521 35.995811 0.000000\r
+v  -64.811615 28.319868 0.000000\r
+v  -62.507355 25.989733 -0.000000\r
+v  -64.728119 28.401169 1.503917\r
+v  -62.439590 26.078430 1.510712\r
+v  -64.505661 28.618759 2.689034\r
+v  -62.259430 26.316179 2.702169\r
+v  -64.190231 28.930527 3.558462\r
+v  -62.005947 26.656828 3.574907\r
+v  -63.830471 29.293837 4.129674\r
+v  -61.722912 27.051308 4.143260\r
+v  -63.469250 29.673100 4.438526\r
+v  -61.451572 27.455879 4.443751\r
+v  -63.126740 30.052601 4.531957\r
+v  -61.209999 27.851725 4.531958\r
+v  -62.792892 30.438427 4.435552\r
+v  -60.978916 28.253254 4.440896\r
+v  -62.451881 30.834867 4.127476\r
+v  -60.731197 28.673861 4.142333\r
+v  -62.113873 31.220917 3.559167\r
+v  -60.472553 29.090162 3.577752\r
+v  -61.815689 31.554224 2.691714\r
+v  -60.238037 29.451632 2.706818\r
+v  -61.603935 31.786814 1.506644\r
+v  -60.069641 29.703878 1.514551\r
+v  -59.822525 23.708178 -0.000000\r
+v  -56.751812 21.480043 -0.000000\r
+v  -59.773224 23.804155 1.517380\r
+v  -56.723698 21.583647 1.522979\r
+v  -59.642994 24.061974 2.715222\r
+v  -56.651096 21.862562 2.726271\r
+v  -59.462814 24.431885 3.591738\r
+v  -56.555897 22.263678 3.606327\r
+v  -59.269817 24.858538 4.157774\r
+v  -56.466774 22.725800 4.170847\r
+v  -59.101967 25.288811 4.449588\r
+v  -56.415874 23.186222 4.455082\r
+v  -58.974766 25.699024 4.531958\r
+v  -56.414719 23.614880 4.531960\r
+v  -58.859398 26.113333 4.446964\r
+v  -56.425877 24.045284 4.452725\r
+v  -58.716919 26.556625 4.158584\r
+v  -56.399830 24.514313 4.173460\r
+v  -58.548714 27.002308 3.597222\r
+v  -56.333412 24.991362 3.614273\r
+v  -58.387299 27.390745 2.722125\r
+v  -56.254818 25.407576 2.735079\r
+v  -58.268654 27.661457 1.522384\r
+v  -56.192390 25.697001 1.528846\r
+v  -58.223198 27.762058 -0.000000\r
+v  -49.443249 17.207436 0.000000\r
+v  -53.286213 19.422144 1.526564\r
+v  -49.465343 17.329094 1.526287\r
+v  -53.278778 19.724339 2.733301\r
+v  -49.530258 17.657429 2.732453\r
+v  -53.280193 20.160034 3.615677\r
+v  -49.639061 18.131496 3.614459\r
+v  -53.309097 20.662727 4.179387\r
+v  -49.798977 18.680023 4.177956\r
+v  -53.388649 21.161465 4.458790\r
+v  -50.018990 19.228241 4.458596\r
+v  -53.523666 21.619770 4.531963\r
+v  -50.293808 19.735630 4.531990\r
+v  -53.670074 22.077118 4.456503\r
+v  -50.577820 20.238991 4.454438\r
+v  -53.771160 22.579380 4.182905\r
+v  -50.813652 20.784246 4.178554\r
+v  -53.818275 23.092068 3.624574\r
+v  -50.984787 21.336180 3.619370\r
+v  -53.832405 23.538616 2.742553\r
+v  -51.100697 21.815151 2.738094\r
+v  -53.832623 23.848354 1.532403\r
+v  -51.169285 22.146893 1.529777\r
+v  -51.192345 22.269619 0.000000\r
+v  33.660831 58.998531 -0.000000\r
+v  33.456280 59.029655 -0.000000\r
+v  33.155800 59.029640 -4.595191\r
+v  33.358471 58.998505 -4.624063\r
+v  33.546112 58.894733 -4.651250\r
+v  33.829464 58.660450 -4.691265\r
+v  34.161240 58.289894 -4.737756\r
+v  34.510380 57.784142 -4.786513\r
+v  34.863148 57.124775 -4.835618\r
+v  32.476532 58.998409 -9.041168\r
+v  32.279171 59.029613 -8.985184\r
+v  32.659218 58.894520 -9.093603\r
+v  32.935005 58.660160 -9.171371\r
+v  33.257938 58.289570 -9.261943\r
+v  33.597763 57.783825 -9.357030\r
+v  33.941147 57.124466 -9.452900\r
+v  31.052456 58.998318 -13.214520\r
+v  30.863655 59.029575 -13.133169\r
+v  31.227203 58.894291 -13.290403\r
+v  31.490891 58.659851 -13.403573\r
+v  31.799610 58.289230 -13.535599\r
+v  32.124485 57.783478 -13.674315\r
+v  32.452766 57.124149 -13.814283\r
+v  29.123566 58.998215 -17.107059\r
+v  28.946297 59.029552 -17.002151\r
+v  29.287640 58.894085 -17.204626\r
+v  29.535004 58.659588 -17.350672\r
+v  29.824560 58.288940 -17.521263\r
+v  30.129244 57.783195 -17.700596\r
+v  30.437119 57.123875 -17.881651\r
+v  26.727221 58.998177 -20.681591\r
+v  26.564356 59.029541 -20.555119\r
+v  26.878046 58.893974 -20.798973\r
+v  27.105188 58.659439 -20.975155\r
+v  27.370991 58.288765 -21.181120\r
+v  27.650644 57.783024 -21.397726\r
+v  27.933208 57.123714 -21.616491\r
+v  23.900776 58.998158 -23.900770\r
+v  23.754915 59.029526 -23.754915\r
+v  24.035961 58.893932 -24.035959\r
+v  24.239279 58.659374 -24.239279\r
+v  24.477100 58.288700 -24.477100\r
+v  24.727270 57.782955 -24.727270\r
+v  24.980000 57.123653 -24.980000\r
+v  20.681593 58.998177 -26.727226\r
+v  20.555128 59.029533 -26.564371\r
+v  20.798969 58.893974 -26.878042\r
+v  20.975157 58.659428 -27.105190\r
+v  21.181124 58.288765 -27.370993\r
+v  21.397726 57.783016 -27.650644\r
+v  21.616493 57.123711 -27.933208\r
+v  17.107065 58.998234 -29.123571\r
+v  17.002172 59.029549 -28.946333\r
+v  17.204626 58.894096 -29.287636\r
+v  17.350676 58.659595 -29.535007\r
+v  17.521265 58.288944 -29.824560\r
+v  17.700600 57.783195 -30.129248\r
+v  17.881655 57.123882 -30.437122\r
+v  13.214522 58.998318 -31.052456\r
+v  13.133173 59.029575 -30.863655\r
+v  13.290406 58.894291 -31.227203\r
+v  13.403575 58.659851 -31.490889\r
+v  13.535603 58.289230 -31.799610\r
+v  13.674319 57.783478 -32.124485\r
+v  13.814286 57.124149 -32.452766\r
+v  9.041176 58.998417 -32.476536\r
+v  8.985193 59.029610 -32.279190\r
+v  9.093608 58.894524 -32.659218\r
+v  9.171375 58.660164 -32.935005\r
+v  9.261947 58.289574 -33.257935\r
+v  9.357034 57.783821 -33.597763\r
+v  9.452906 57.124474 -33.941147\r
+v  4.624066 58.998497 -33.358459\r
+v  4.595192 59.029648 -33.155777\r
+v  4.651256 58.894730 -33.546108\r
+v  4.691270 58.660446 -33.829456\r
+v  4.737761 58.289890 -34.161236\r
+v  4.786518 57.784142 -34.510372\r
+v  4.835622 57.124771 -34.863140\r
+v  -0.000038 58.998535 -33.660831\r
+v  -0.000035 59.029671 -33.456253\r
+v  -0.000031 58.894825 -33.850193\r
+v  -0.000012 58.660587 -34.136147\r
+v  0.000001 58.290035 -34.470985\r
+v  0.000006 57.784290 -34.823338\r
+v  0.000006 57.124924 -35.179329\r
+v  -4.656667 58.999111 -33.356800\r
+v  -4.651231 59.029964 -33.154255\r
+v  -4.668061 58.895641 -33.544731\r
+v  -4.698411 58.661133 -33.828735\r
+v  -4.739907 58.290245 -34.160954\r
+v  -4.786802 57.784248 -34.510307\r
+v  -4.835621 57.124790 -34.863144\r
+v  -9.093946 59.000446 -32.471119\r
+v  -9.076756 59.030689 -32.274231\r
+v  -9.120488 58.897522 -32.654797\r
+v  -9.182712 58.662392 -32.932682\r
+v  -9.265314 58.290714 -33.257023\r
+v  -9.357464 57.784187 -33.597534\r
+v  -9.452903 57.124512 -33.941124\r
+v  -13.276402 59.002060 -31.043055\r
+v  -13.242328 59.031563 -30.855070\r
+v  -13.321258 58.899750 -31.219584\r
+v  -13.416404 58.663887 -31.486900\r
+v  -13.539324 58.291290 -31.798044\r
+v  -13.674747 57.784134 -32.124088\r
+v  -13.814277 57.124229 -32.452724\r
+v  -17.169127 59.003468 -29.111361\r
+v  -17.114241 59.032356 -28.935152\r
+v  -17.234627 58.901669 -29.277826\r
+v  -17.362886 58.665157 -29.529888\r
+v  -17.524677 58.291779 -29.822554\r
+v  -17.700924 57.784100 -30.128733\r
+v  -17.881630 57.123985 -30.437065\r
+v  -20.737501 59.004364 -26.714230\r
+v  -20.659185 59.032856 -26.552507\r
+v  -20.824902 58.902859 -26.867651\r
+v  -20.985399 58.665939 -27.099785\r
+v  -21.183823 58.292076 -27.368870\r
+v  -21.397894 57.784077 -27.650105\r
+v  -21.616457 57.123844 -27.933151\r
+v  -23.946812 59.004498 -23.889097\r
+v  -23.843733 59.032909 -23.744308\r
+v  -24.056202 58.903038 -24.026627\r
+v  -24.246943 58.666031 -24.234432\r
+v  -24.478949 58.292091 -24.475197\r
+v  -24.727283 57.784035 -24.726784\r
+v  -24.979954 57.123787 -24.979948\r
+v  -26.761974 59.003887 -20.672749\r
+v  -26.634090 59.032555 -20.547150\r
+v  -26.892344 58.902218 -20.791889\r
+v  -27.110296 58.665478 -20.971479\r
+v  -27.372051 58.291851 -21.179676\r
+v  -27.650543 57.784000 -21.397354\r
+v  -27.933161 57.123833 -21.616455\r
+v  -29.147322 59.002716 -17.101627\r
+v  -28.995920 59.031895 -16.997307\r
+v  -29.296682 58.900635 -17.200258\r
+v  -29.537985 58.664417 -17.348406\r
+v  -29.825037 58.291412 -17.520370\r
+v  -30.129095 57.783989 -17.700369\r
+v  -30.437078 57.123981 -17.881630\r
+v  -31.066631 59.001282 -13.212090\r
+v  -30.894342 59.031105 -13.131021\r
+v  -31.232164 58.898674 -13.288457\r
+v  -31.492355 58.663109 -13.402568\r
+v  -31.799746 58.290905 -13.535203\r
+v  -32.124344 57.784019 -13.674213\r
+v  -32.452736 57.124214 -13.814275\r
+v  -32.483231 58.999912 -9.040685\r
+v  -32.294113 59.030373 -8.984767\r
+v  -32.661369 58.896774 -9.093238\r
+v  -32.935562 58.661850 -9.171197\r
+v  -33.257931 58.290447 -9.261875\r
+v  -33.597675 57.784107 -9.357014\r
+v  -33.941128 57.124508 -9.452904\r
+v  -33.360264 58.998909 -4.624278\r
+v  -33.159843 59.029854 -4.595378\r
+v  -33.546635 58.895370 -4.651457\r
+v  -33.829567 58.660938 -4.691391\r
+v  -34.161217 58.290150 -4.737811\r
+v  -34.510345 57.784229 -4.786530\r
+v  -34.863132 57.124783 -4.835623\r
+v  36.333431 54.002327 -5.039411\r
+v  38.133858 50.869949 -0.000000\r
+v  37.791126 50.869808 -5.241405\r
+v  39.561478 47.753769 -0.000000\r
+v  39.205921 47.753632 -5.437464\r
+v  40.925030 44.660442 -0.000000\r
+v  40.557217 44.660316 -5.624738\r
+v  42.203796 41.596672 -0.000000\r
+v  41.824493 41.596542 -5.800378\r
+v  43.377094 38.569275 -0.000000\r
+v  42.987244 38.569157 -5.961545\r
+v  44.024696 35.586216 -6.105740\r
+v  35.372532 54.002033 -9.851368\r
+v  36.791683 50.869518 -10.246355\r
+v  38.169056 47.753342 -10.629729\r
+v  39.484615 44.660030 -10.995915\r
+v  40.718365 41.596272 -11.339347\r
+v  41.850353 38.568897 -11.654469\r
+v  42.860748 35.584888 -11.935761\r
+v  33.821362 54.001720 -14.396678\r
+v  35.178265 50.869205 -14.974029\r
+v  36.495228 47.753036 -15.534397\r
+v  37.753078 44.659729 -16.069632\r
+v  38.932713 41.595982 -16.571594\r
+v  40.015041 38.568623 -17.032173\r
+v  40.981113 35.584641 -17.443293\r
+v  43.729588 32.652023 -12.178199\r
+v  41.812103 32.651203 -17.796951\r
+v  44.438091 29.774788 -12.376785\r
+v  42.489464 29.775631 -18.085241\r
+v  44.966045 26.966326 -12.525410\r
+v  42.994965 26.965324 -18.300406\r
+v  45.295635 24.227764 -12.621032\r
+v  43.310856 24.227600 -18.434872\r
+v  45.410545 21.587053 -12.650708\r
+v  43.420193 21.587778 -18.481403\r
+v  31.720676 54.001461 -18.635595\r
+v  32.993279 50.868950 -19.383047\r
+v  34.228420 47.752781 -20.108505\r
+v  35.408115 44.659473 -20.801416\r
+v  36.514450 41.595741 -21.451248\r
+v  37.529533 38.568390 -22.047493\r
+v  38.435574 35.584427 -22.579702\r
+v  39.214935 32.651020 -23.037514\r
+v  39.850201 29.775475 -23.410694\r
+v  40.324284 26.965208 -23.689205\r
+v  40.620548 24.227537 -23.863262\r
+v  40.723083 21.587797 -23.923494\r
+v  29.111139 54.001301 -22.527973\r
+v  30.279005 50.868797 -23.431631\r
+v  31.412495 47.752625 -24.308701\r
+v  32.495110 44.659332 -25.146406\r
+v  33.510399 41.595600 -25.932030\r
+v  34.441948 38.568256 -26.652851\r
+v  35.273422 35.584301 -27.296257\r
+v  35.988655 32.650902 -27.849709\r
+v  36.571644 29.775379 -28.300842\r
+v  37.006714 26.965137 -28.637527\r
+v  37.278603 24.227501 -28.847925\r
+v  37.372696 21.587809 -28.920742\r
+v  26.033352 54.001240 -26.033352\r
+v  27.077698 50.868729 -27.077698\r
+v  28.091301 47.752571 -28.091301\r
+v  29.059416 44.659271 -29.059416\r
+v  29.967327 41.595543 -29.967327\r
+v  30.800354 38.568207 -30.800354\r
+v  31.543901 35.584255 -31.543900\r
+v  32.183491 32.650860 -32.183491\r
+v  32.704826 29.775345 -32.704826\r
+v  33.093906 26.965111 -33.093903\r
+v  33.337044 24.227488 -33.337044\r
+v  33.421185 21.587814 -33.421188\r
+v  22.527971 54.001297 -29.111139\r
+v  23.431631 50.868786 -30.279003\r
+v  24.308701 47.752625 -31.412497\r
+v  25.146404 44.659332 -32.495110\r
+v  25.932024 41.595592 -33.510399\r
+v  26.652851 38.568253 -34.441944\r
+v  27.296255 35.584301 -35.273422\r
+v  27.849709 32.650898 -35.988647\r
+v  28.300842 29.775377 -36.571644\r
+v  28.637527 26.965136 -37.006714\r
+v  28.847925 24.227501 -37.278599\r
+v  28.920742 21.587809 -37.372696\r
+v  18.635599 54.001461 -31.720680\r
+v  19.383051 50.868950 -32.993286\r
+v  20.108513 47.752785 -34.228420\r
+v  20.801420 44.659481 -35.408119\r
+v  21.451252 41.595745 -36.514454\r
+v  22.047497 38.568398 -37.529537\r
+v  22.579704 35.584435 -38.435577\r
+v  23.037519 32.651020 -39.214935\r
+v  23.410698 29.775476 -39.850204\r
+v  23.689211 26.965210 -40.324295\r
+v  23.863262 24.227541 -40.620556\r
+v  23.923496 21.587799 -40.723087\r
+v  14.396684 54.001720 -33.821362\r
+v  14.974033 50.869205 -35.178265\r
+v  15.534402 47.753036 -36.495228\r
+v  16.069633 44.659729 -37.753075\r
+v  16.571596 41.595982 -38.932713\r
+v  17.032179 38.568619 -40.015041\r
+v  17.443298 35.584644 -40.981113\r
+v  17.796955 32.651207 -41.812103\r
+v  18.085245 29.775627 -42.489464\r
+v  18.300406 26.965322 -42.994965\r
+v  18.434875 24.227602 -43.310856\r
+v  18.481409 21.587780 -43.420193\r
+v  9.851373 54.002033 -35.372532\r
+v  10.246361 50.869518 -36.791683\r
+v  10.629736 47.753345 -38.169056\r
+v  10.995921 44.660030 -39.484615\r
+v  11.339353 41.596272 -40.718365\r
+v  11.654476 38.568893 -41.850353\r
+v  11.935767 35.584896 -42.860756\r
+v  12.177752 32.651432 -43.729881\r
+v  12.375013 29.775816 -44.438335\r
+v  12.522245 26.965462 -44.967041\r
+v  12.614264 24.227674 -45.297443\r
+v  12.646105 21.587757 -45.411789\r
+v  5.039417 54.002327 -36.333424\r
+v  5.241411 50.869808 -37.791119\r
+v  5.437471 47.753628 -39.205917\r
+v  5.624743 44.660309 -40.557217\r
+v  5.800384 41.596542 -41.824486\r
+v  5.961552 38.569157 -42.987240\r
+v  6.105423 35.585136 -44.025097\r
+v  6.229192 32.651642 -44.917862\r
+v  6.330095 29.775993 -45.645573\r
+v  6.405409 26.965590 -46.188663\r
+v  6.452483 24.227749 -46.528053\r
+v  6.468771 21.587740 -46.645515\r
+v  0.000007 54.002472 -36.662949\r
+v  0.000007 50.869953 -38.133858\r
+v  0.000008 47.753769 -39.561478\r
+v  0.000008 44.660446 -40.925030\r
+v  0.000008 41.596680 -42.203796\r
+v  0.000009 38.569279 -43.377094\r
+v  0.000009 35.585247 -44.424370\r
+v  0.000009 32.651741 -45.325237\r
+v  0.000009 29.776077 -46.059559\r
+v  0.000009 26.965652 -46.607578\r
+v  0.000009 24.227777 -46.950058\r
+v  0.000009 21.587729 -47.068588\r
+v  -5.039411 54.002327 -36.333431\r
+v  -5.241405 50.869808 -37.791126\r
+v  -5.437464 47.753632 -39.205921\r
+v  -5.624738 44.660316 -40.557217\r
+v  -5.800378 41.596542 -41.824493\r
+v  -5.961545 38.569157 -42.987244\r
+v  -6.105415 35.585136 -44.025097\r
+v  -6.229186 32.651646 -44.917866\r
+v  -6.330087 29.775999 -45.645584\r
+v  -6.405402 26.965593 -46.188663\r
+v  -6.452476 24.227749 -46.528057\r
+v  -6.468763 21.587740 -46.645515\r
+v  -9.851368 54.002033 -35.372532\r
+v  -10.246355 50.869518 -36.791683\r
+v  -10.629729 47.753342 -38.169056\r
+v  -10.995915 44.660030 -39.484615\r
+v  -11.339347 41.596272 -40.718365\r
+v  -11.654469 38.568897 -41.850353\r
+v  -11.935761 35.584888 -42.860748\r
+v  -12.177744 32.651432 -43.729881\r
+v  -12.375007 29.775818 -44.438328\r
+v  -12.522239 26.965460 -44.967037\r
+v  -12.614258 24.227674 -45.297440\r
+v  -12.646098 21.587757 -45.411789\r
+v  -14.396678 54.001720 -33.821362\r
+v  -14.974029 50.869205 -35.178265\r
+v  -15.534397 47.753036 -36.495228\r
+v  -16.069632 44.659729 -37.753078\r
+v  -16.571594 41.595982 -38.932713\r
+v  -17.032173 38.568623 -40.015041\r
+v  -17.443293 35.584641 -40.981113\r
+v  -17.796951 32.651203 -41.812103\r
+v  -18.085241 29.775631 -42.489464\r
+v  -18.300406 26.965324 -42.994965\r
+v  -18.434872 24.227600 -43.310856\r
+v  -18.481403 21.587778 -43.420193\r
+v  -18.635595 54.001461 -31.720676\r
+v  -19.383047 50.868950 -32.993279\r
+v  -20.108505 47.752781 -34.228420\r
+v  -20.801416 44.659473 -35.408115\r
+v  -21.451248 41.595741 -36.514450\r
+v  -22.047493 38.568390 -37.529533\r
+v  -22.579702 35.584427 -38.435574\r
+v  -23.037514 32.651020 -39.214935\r
+v  -23.410694 29.775475 -39.850201\r
+v  -23.689205 26.965208 -40.324284\r
+v  -23.863262 24.227537 -40.620548\r
+v  -23.923494 21.587797 -40.723083\r
+v  -22.527973 54.001301 -29.111139\r
+v  -23.431631 50.868797 -30.279005\r
+v  -24.308701 47.752625 -31.412495\r
+v  -25.146406 44.659332 -32.495110\r
+v  -25.932030 41.595600 -33.510399\r
+v  -26.652851 38.568256 -34.441948\r
+v  -27.296257 35.584301 -35.273422\r
+v  -27.849709 32.650902 -35.988655\r
+v  -28.300842 29.775379 -36.571644\r
+v  -28.637527 26.965137 -37.006714\r
+v  -28.847925 24.227501 -37.278603\r
+v  -28.920742 21.587809 -37.372696\r
+v  -26.033352 54.001240 -26.033352\r
+v  -27.077698 50.868729 -27.077698\r
+v  -28.091301 47.752571 -28.091301\r
+v  -29.059416 44.659271 -29.059416\r
+v  -29.967327 41.595543 -29.967327\r
+v  -30.800354 38.568207 -30.800354\r
+v  -31.543900 35.584255 -31.543901\r
+v  -32.183491 32.650860 -32.183491\r
+v  -32.704826 29.775345 -32.704826\r
+v  -33.093903 26.965111 -33.093906\r
+v  -33.337044 24.227488 -33.337044\r
+v  -33.421188 21.587814 -33.421185\r
+v  -29.111139 54.001297 -22.527971\r
+v  -30.279003 50.868786 -23.431631\r
+v  -31.412497 47.752625 -24.308701\r
+v  -32.495110 44.659332 -25.146404\r
+v  -33.510399 41.595592 -25.932024\r
+v  -34.441944 38.568253 -26.652851\r
+v  -35.273422 35.584301 -27.296255\r
+v  -35.988647 32.650898 -27.849709\r
+v  -36.571644 29.775377 -28.300842\r
+v  -37.006714 26.965136 -28.637527\r
+v  -37.278599 24.227501 -28.847925\r
+v  -37.372696 21.587809 -28.920742\r
+v  -31.720680 54.001461 -18.635599\r
+v  -32.993286 50.868950 -19.383051\r
+v  -34.228420 47.752785 -20.108513\r
+v  -35.408119 44.659481 -20.801420\r
+v  -36.514454 41.595745 -21.451252\r
+v  -37.529537 38.568398 -22.047497\r
+v  -38.435577 35.584435 -22.579704\r
+v  -39.214935 32.651020 -23.037519\r
+v  -39.850204 29.775476 -23.410698\r
+v  -40.324295 26.965210 -23.689211\r
+v  -40.620556 24.227541 -23.863262\r
+v  -40.723087 21.587799 -23.923496\r
+v  -33.821362 54.001720 -14.396684\r
+v  -35.178265 50.869205 -14.974033\r
+v  -36.495228 47.753036 -15.534402\r
+v  -37.753075 44.659729 -16.069633\r
+v  -38.932713 41.595982 -16.571596\r
+v  -40.015041 38.568619 -17.032179\r
+v  -40.981113 35.584644 -17.443298\r
+v  -41.812103 32.651207 -17.796955\r
+v  -42.489464 29.775627 -18.085245\r
+v  -42.994965 26.965322 -18.300406\r
+v  -43.310856 24.227602 -18.434875\r
+v  -43.420193 21.587780 -18.481409\r
+v  -35.372406 54.002190 -9.851557\r
+v  -36.791691 50.869354 -10.246625\r
+v  -38.169056 47.753345 -10.629736\r
+v  -39.484615 44.660030 -10.995921\r
+v  -40.718365 41.596272 -11.339353\r
+v  -41.850353 38.568893 -11.654476\r
+v  -42.860756 35.584896 -11.935767\r
+v  -43.729881 32.651432 -12.177752\r
+v  -44.438335 29.775816 -12.375013\r
+v  -44.967041 26.965462 -12.522245\r
+v  -45.297443 24.227674 -12.614264\r
+v  -45.411789 21.587757 -12.646105\r
+v  -36.333233 54.002842 -5.039021\r
+v  -40.557217 44.660309 -5.624743\r
+v  -39.205921 47.753616 -5.437472\r
+v  -41.824486 41.596542 -5.800384\r
+v  -42.987240 38.569157 -5.961552\r
+v  -44.025097 35.585136 -6.105423\r
+v  -44.917862 32.651642 -6.229192\r
+v  -45.645573 29.775993 -6.330095\r
+v  -46.188663 26.965590 -6.405409\r
+v  -46.528011 24.227917 -6.452676\r
+v  -46.645473 21.587557 -6.469059\r
+v  43.724884 13.013579 -6.063061\r
+v  44.121323 13.013435 0.000000\r
+v  44.892475 14.871723 -6.225201\r
+v  42.388966 11.331814 -5.877617\r
+v  42.773254 11.331672 -0.000000\r
+v  40.962574 9.824150 -5.679690\r
+v  41.333908 9.824015 -0.000000\r
+v  39.525185 8.487634 -5.480309\r
+v  39.883476 8.487506 0.000000\r
+v  38.156071 7.317310 -5.290480\r
+v  38.501934 7.317185 -0.000000\r
+v  36.931499 6.304112 -5.120813\r
+v  35.917988 5.426768 -4.980629\r
+v  35.151844 4.603211 -4.875276\r
+v  35.470577 4.603041 0.000000\r
+v  34.802601 3.827278 -4.827658\r
+v  43.705299 14.872031 -12.170275\r
+v  45.814293 16.905586 -6.360468\r
+v  44.605034 16.910173 -12.421125\r
+v  42.568661 13.013903 -11.853456\r
+v  41.268127 11.332126 -11.491047\r
+v  39.879501 9.824444 -11.104189\r
+v  38.480152 8.487910 -10.714442\r
+v  37.147247 7.317575 -10.343311\r
+v  35.955059 6.304379 -10.011523\r
+v  34.968319 5.427056 -9.737235\r
+v  34.222282 4.603519 -9.530684\r
+v  33.882076 3.827480 -9.437037\r
+v  43.215271 19.136747 -18.394096\r
+v  45.197357 19.136534 -12.586613\r
+v  42.648907 16.910444 -18.152813\r
+v  41.788700 14.872363 -17.786390\r
+v  40.701973 13.014250 -17.323549\r
+v  39.458519 11.332463 -16.794054\r
+v  38.130814 9.824761 -16.228773\r
+v  36.792847 8.488208 -15.659222\r
+v  35.518398 7.317859 -15.116816\r
+v  34.378494 6.304662 -14.631827\r
+v  33.435017 5.427360 -14.230722\r
+v  32.721611 4.603835 -13.928226\r
+v  32.396191 3.827694 -13.790768\r
+v  40.530903 19.136875 -23.810532\r
+v  39.999748 16.910667 -23.498325\r
+v  39.193016 14.872637 -23.024168\r
+v  38.173809 13.014537 -22.425198\r
+v  37.007614 11.332741 -21.739914\r
+v  35.762386 9.825023 -21.008261\r
+v  34.507534 8.488452 -20.271032\r
+v  33.312260 7.318091 -19.568884\r
+v  32.243176 6.304893 -18.940990\r
+v  31.358335 5.427607 -18.421543\r
+v  30.689255 4.604089 -18.029388\r
+v  30.384022 3.827860 -17.850901\r
+v  37.196335 19.136959 -28.784225\r
+v  36.708874 16.910810 -28.406908\r
+v  35.968498 14.872812 -27.833845\r
+v  35.033138 13.014720 -27.109894\r
+v  33.962872 11.332920 -26.281567\r
+v  32.820076 9.825191 -25.397150\r
+v  31.668457 8.488607 -24.505947\r
+v  30.571531 7.318240 -23.657120\r
+v  29.590429 6.305040 -22.897987\r
+v  28.778452 5.427763 -22.269848\r
+v  28.164537 4.604247 -21.795290\r
+v  27.884516 3.827966 -21.579062\r
+v  33.263454 19.136986 -33.263454\r
+v  32.827499 16.910860 -32.827499\r
+v  32.165359 14.872871 -32.165359\r
+v  31.328848 13.014783 -31.328846\r
+v  30.371693 11.332979 -30.371693\r
+v  29.349709 9.825246 -29.349709\r
+v  28.319841 8.488661 -28.319841\r
+v  27.338905 7.318291 -27.338905\r
+v  26.461584 6.305090 -26.461584\r
+v  25.735548 5.427816 -25.735548\r
+v  25.186775 4.604300 -25.186775\r
+v  24.936558 3.828003 -24.936558\r
+v  28.784225 19.136959 -37.196331\r
+v  28.406908 16.910812 -36.708866\r
+v  27.833845 14.872812 -35.968491\r
+v  27.109894 13.014719 -35.033134\r
+v  26.281567 11.332919 -33.962872\r
+v  25.397154 9.825190 -32.820076\r
+v  24.505947 8.488607 -31.668457\r
+v  23.657120 7.318240 -30.571529\r
+v  22.897987 6.305040 -29.590429\r
+v  22.269848 5.427763 -28.778452\r
+v  21.795290 4.604246 -28.164537\r
+v  21.579063 3.827965 -27.884516\r
+v  23.810532 19.136877 -40.530910\r
+v  23.498325 16.910667 -39.999756\r
+v  23.024172 14.872637 -39.193020\r
+v  22.425200 13.014537 -38.173820\r
+v  21.739916 11.332743 -37.007622\r
+v  21.008266 9.825024 -35.762390\r
+v  20.271032 8.488452 -34.507538\r
+v  19.568888 7.318093 -33.312263\r
+v  18.940992 6.304894 -32.243179\r
+v  18.421547 5.427606 -31.358334\r
+v  18.029392 4.604089 -30.689259\r
+v  17.850904 3.827861 -30.384024\r
+v  18.394100 19.136749 -43.215271\r
+v  18.152817 16.910444 -42.648907\r
+v  17.786392 14.872363 -41.788700\r
+v  17.323555 13.014250 -40.701973\r
+v  16.794056 11.332464 -39.458519\r
+v  16.228777 9.824762 -38.130814\r
+v  15.659225 8.488208 -36.792847\r
+v  15.116820 7.317860 -35.518398\r
+v  14.631830 6.304662 -34.378494\r
+v  14.230725 5.427359 -33.435017\r
+v  13.928229 4.603835 -32.721611\r
+v  13.790771 3.827694 -32.396191\r
+v  12.586329 19.136593 -45.197449\r
+v  12.421133 16.910172 -44.605034\r
+v  12.170282 14.872031 -43.705303\r
+v  11.853461 13.013903 -42.568661\r
+v  11.491053 11.332126 -41.268135\r
+v  11.104195 9.824445 -39.879501\r
+v  10.714448 8.487910 -38.480152\r
+v  10.343317 7.317575 -37.147247\r
+v  10.011529 6.304379 -35.955059\r
+v  9.737239 5.427056 -34.968319\r
+v  9.530688 4.603519 -34.222282\r
+v  9.437042 3.827481 -33.882076\r
+v  6.438169 19.136452 -46.425312\r
+v  6.353605 16.909922 -45.816730\r
+v  6.225209 14.871723 -44.892471\r
+v  6.063067 13.013579 -43.724873\r
+v  5.877625 11.331813 -42.388962\r
+v  5.679696 9.824150 -40.962570\r
+v  5.480315 8.487634 -39.525185\r
+v  5.290485 7.317310 -38.156067\r
+v  5.120819 6.304111 -36.931496\r
+v  4.980635 5.426769 -35.917988\r
+v  4.875282 4.603213 -35.151836\r
+v  4.827663 3.827277 -34.802593\r
+v  0.000009 19.136387 -46.846378\r
+v  0.000009 16.909811 -46.232239\r
+v  0.000009 14.871587 -45.299545\r
+v  0.000008 13.013435 -44.121323\r
+v  0.000008 11.331671 -42.773254\r
+v  0.000008 9.824015 -41.333908\r
+v  0.000008 8.487506 -39.883476\r
+v  0.000008 7.317184 -38.501934\r
+v  0.000007 6.303984 -37.266266\r
+v  0.000007 5.426625 -36.243587\r
+v  0.000007 4.603041 -35.470577\r
+v  0.000007 3.827166 -35.118301\r
+v  -6.438161 19.136450 -46.425316\r
+v  -6.353598 16.909922 -45.816738\r
+v  -6.225201 14.871723 -44.892475\r
+v  -6.063061 13.013579 -43.724884\r
+v  -5.877617 11.331814 -42.388966\r
+v  -5.679690 9.824150 -40.962574\r
+v  -5.480309 8.487634 -39.525185\r
+v  -5.290480 7.317310 -38.156071\r
+v  -5.120813 6.304112 -36.931499\r
+v  -4.980629 5.426768 -35.917988\r
+v  -4.875276 4.603211 -35.151844\r
+v  -4.827658 3.827278 -34.802601\r
+v  -12.586320 19.136593 -45.197449\r
+v  -12.421125 16.910173 -44.605034\r
+v  -12.170275 14.872031 -43.705299\r
+v  -11.853456 13.013903 -42.568661\r
+v  -11.491047 11.332126 -41.268127\r
+v  -11.104189 9.824444 -39.879501\r
+v  -10.714442 8.487910 -38.480152\r
+v  -10.343311 7.317575 -37.147247\r
+v  -10.011523 6.304379 -35.955059\r
+v  -9.737235 5.427056 -34.968319\r
+v  -9.530684 4.603519 -34.222282\r
+v  -9.437037 3.827480 -33.882076\r
+v  -18.394096 19.136747 -43.215271\r
+v  -18.152813 16.910444 -42.648907\r
+v  -17.786390 14.872363 -41.788700\r
+v  -17.323549 13.014250 -40.701973\r
+v  -16.794054 11.332463 -39.458519\r
+v  -16.228773 9.824761 -38.130814\r
+v  -15.659222 8.488208 -36.792847\r
+v  -15.116816 7.317859 -35.518398\r
+v  -14.631827 6.304662 -34.378494\r
+v  -14.230722 5.427360 -33.435017\r
+v  -13.928226 4.603835 -32.721611\r
+v  -13.790768 3.827694 -32.396191\r
+v  -23.810532 19.136875 -40.530903\r
+v  -23.498325 16.910667 -39.999748\r
+v  -23.024168 14.872637 -39.193016\r
+v  -22.425198 13.014537 -38.173809\r
+v  -21.739914 11.332741 -37.007614\r
+v  -21.008261 9.825023 -35.762386\r
+v  -20.271032 8.488452 -34.507534\r
+v  -19.568884 7.318091 -33.312260\r
+v  -18.940990 6.304893 -32.243176\r
+v  -18.421543 5.427607 -31.358335\r
+v  -18.029388 4.604089 -30.689255\r
+v  -17.850901 3.827860 -30.384022\r
+v  -28.784225 19.136959 -37.196335\r
+v  -28.406908 16.910810 -36.708874\r
+v  -27.833845 14.872812 -35.968498\r
+v  -27.109894 13.014720 -35.033138\r
+v  -26.281567 11.332920 -33.962872\r
+v  -25.397150 9.825191 -32.820076\r
+v  -24.505947 8.488607 -31.668457\r
+v  -23.657120 7.318240 -30.571531\r
+v  -22.897987 6.305040 -29.590429\r
+v  -22.269848 5.427763 -28.778452\r
+v  -21.795290 4.604247 -28.164537\r
+v  -21.579062 3.827966 -27.884516\r
+v  -33.263454 19.136986 -33.263454\r
+v  -32.827499 16.910860 -32.827499\r
+v  -32.165359 14.872871 -32.165359\r
+v  -31.328846 13.014783 -31.328848\r
+v  -30.371693 11.332979 -30.371693\r
+v  -29.349709 9.825246 -29.349709\r
+v  -28.319841 8.488661 -28.319841\r
+v  -27.338905 7.318291 -27.338905\r
+v  -26.461584 6.305090 -26.461584\r
+v  -25.735548 5.427816 -25.735548\r
+v  -25.186775 4.604300 -25.186775\r
+v  -24.936558 3.828003 -24.936558\r
+v  -37.196331 19.136959 -28.784225\r
+v  -36.708866 16.910812 -28.406908\r
+v  -35.968491 14.872812 -27.833845\r
+v  -35.033134 13.014719 -27.109894\r
+v  -33.962872 11.332919 -26.281567\r
+v  -32.820076 9.825190 -25.397154\r
+v  -31.668457 8.488607 -24.505947\r
+v  -30.571529 7.318240 -23.657120\r
+v  -29.590429 6.305040 -22.897987\r
+v  -28.778452 5.427763 -22.269848\r
+v  -28.164537 4.604246 -21.795290\r
+v  -27.884516 3.827965 -21.579063\r
+v  -40.530910 19.136877 -23.810532\r
+v  -39.999756 16.910667 -23.498325\r
+v  -39.193020 14.872637 -23.024172\r
+v  -38.173820 13.014537 -22.425200\r
+v  -37.007622 11.332743 -21.739916\r
+v  -35.762390 9.825024 -21.008266\r
+v  -34.507538 8.488452 -20.271032\r
+v  -33.312263 7.318093 -19.568888\r
+v  -32.243179 6.304894 -18.940992\r
+v  -31.358334 5.427606 -18.421547\r
+v  -30.689259 4.604089 -18.029392\r
+v  -30.384024 3.827861 -17.850904\r
+v  -43.215271 19.136749 -18.394100\r
+v  -42.648907 16.910444 -18.152817\r
+v  -41.788700 14.872363 -17.786392\r
+v  -40.701973 13.014250 -17.323555\r
+v  -39.458519 11.332464 -16.794056\r
+v  -38.130814 9.824762 -16.228777\r
+v  -36.792847 8.488208 -15.659225\r
+v  -35.518398 7.317860 -15.116820\r
+v  -34.378494 6.304662 -14.631830\r
+v  -33.435017 5.427359 -14.230725\r
+v  -32.721611 4.603835 -13.928229\r
+v  -32.396191 3.827694 -13.790771\r
+v  -45.197449 19.136593 -12.586329\r
+v  -44.605034 16.910172 -12.421133\r
+v  -43.705303 14.872031 -12.170282\r
+v  -42.568661 13.013903 -11.853461\r
+v  -41.268135 11.332126 -11.491053\r
+v  -39.879501 9.824445 -11.104195\r
+v  -38.480152 8.487910 -10.714448\r
+v  -37.147247 7.317575 -10.343317\r
+v  -35.955059 6.304379 -10.011529\r
+v  -34.968319 5.427056 -9.737239\r
+v  -34.222282 4.603519 -9.530688\r
+v  -33.882076 3.827481 -9.437042\r
+v  -46.425144 19.136719 -6.439827\r
+v  -45.816738 16.909966 -6.353679\r
+v  -44.892456 14.871702 -6.225222\r
+v  -43.724873 13.013579 -6.063067\r
+v  -42.388962 11.331813 -5.877625\r
+v  -40.962570 9.824150 -5.679696\r
+v  -39.525185 8.487634 -5.480315\r
+v  -38.156067 7.317310 -5.290485\r
+v  -36.931496 6.304111 -5.120819\r
+v  -35.917988 5.426770 -4.980635\r
+v  -35.151836 4.603213 -4.875282\r
+v  -34.802593 3.827277 -4.827663\r
+v  34.755360 3.404014 -4.820999\r
+v  35.070625 3.403927 -0.000000\r
+v  34.672924 3.246404 -4.808609\r
+v  34.987328 3.246295 0.000000\r
+v  34.364166 3.003830 -4.764473\r
+v  33.618481 2.672704 -4.660081\r
+v  33.923180 2.672669 -0.000000\r
+v  32.317844 2.316947 -4.479186\r
+v  32.610737 2.316931 -0.000000\r
+v  30.378683 1.974196 -4.210074\r
+v  30.653999 1.974189 -0.000000\r
+v  27.712137 1.662043 -3.840324\r
+v  27.963289 1.662040 0.000000\r
+v  24.222204 1.390779 -3.356575\r
+v  24.441727 1.390778 -0.000000\r
+v  19.808775 1.168205 -2.744921\r
+v  19.988300 1.168205 -0.000000\r
+v  14.369593 1.001220 -1.991174\r
+v  7.801243 0.896357 -1.080995\r
+v  -0.000000 0.860000 -0.000000\r
+v  33.836109 3.404226 -9.424092\r
+v  33.756081 3.246700 -9.400521\r
+v  33.455639 3.004025 -9.315088\r
+v  32.729679 2.672794 -9.111611\r
+v  31.463404 2.316986 -8.758283\r
+v  29.575491 1.974214 -8.232288\r
+v  26.979433 1.662051 -7.509409\r
+v  23.581768 1.390782 -6.563550\r
+v  19.285025 1.168207 -5.367543\r
+v  13.989653 1.001220 -3.893653\r
+v  7.594972 0.896357 -2.113845\r
+v  32.352261 3.404464 -13.771930\r
+v  32.275902 3.247028 -13.738190\r
+v  31.988689 3.004239 -13.614236\r
+v  31.294498 2.672895 -13.317492\r
+v  30.083673 2.317030 -12.801440\r
+v  28.278502 1.974233 -12.032840\r
+v  25.796257 1.662060 -10.976355\r
+v  22.547577 1.390786 -9.593882\r
+v  18.439260 1.168208 -7.845728\r
+v  13.376119 1.001220 -5.691366\r
+v  7.261883 0.896357 -3.089822\r
+v  30.342831 3.404656 -17.826595\r
+v  30.271254 3.247304 -17.783573\r
+v  30.001797 3.004421 -17.623943\r
+v  29.350573 2.672978 -17.240379\r
+v  28.214848 2.317066 -16.572649\r
+v  26.521738 1.974249 -15.577813\r
+v  24.193661 1.662067 -14.210188\r
+v  21.146776 1.390789 -12.420476\r
+v  17.293682 1.168210 -10.157309\r
+v  12.545092 1.001221 -7.368227\r
+v  6.810717 0.896357 -4.000190\r
+v  27.846706 3.404784 -21.549740\r
+v  27.780914 3.247481 -21.498280\r
+v  27.533407 3.004537 -21.305986\r
+v  26.935545 2.673032 -20.842775\r
+v  25.893118 2.317090 -20.035799\r
+v  24.339247 1.974260 -18.833231\r
+v  22.202694 1.662072 -17.179893\r
+v  19.406519 1.390791 -15.016212\r
+v  15.870494 1.168211 -12.280100\r
+v  11.512681 1.001221 -8.908139\r
+v  6.250220 0.896357 -4.836210\r
+v  24.902721 3.404830 -24.902721\r
+v  24.843653 3.247544 -24.843653\r
+v  24.621971 3.004576 -24.621971\r
+v  24.087051 2.673051 -24.087051\r
+v  23.154699 2.317098 -23.154699\r
+v  21.765059 1.974263 -21.765059\r
+v  19.854418 1.662073 -19.854418\r
+v  17.353945 1.390792 -17.353945\r
+v  14.191896 1.168211 -14.191896\r
+v  10.294993 1.001221 -10.294993\r
+v  5.589135 0.896357 -5.589135\r
+v  21.549744 3.404784 -27.846706\r
+v  21.498280 3.247482 -27.780914\r
+v  21.305988 3.004537 -27.533407\r
+v  20.842775 2.673032 -26.935545\r
+v  20.035799 2.317090 -25.893118\r
+v  18.833233 1.974260 -24.339247\r
+v  17.179893 1.662072 -22.202694\r
+v  15.016212 1.390791 -19.406519\r
+v  12.280100 1.168211 -15.870494\r
+v  8.908139 1.001221 -11.512681\r
+v  4.836210 0.896357 -6.250220\r
+v  17.826597 3.404658 -30.342834\r
+v  17.783575 3.247304 -30.271255\r
+v  17.623947 3.004420 -30.001801\r
+v  17.240383 2.672979 -29.350573\r
+v  16.572653 2.317066 -28.214848\r
+v  15.577816 1.974249 -26.521742\r
+v  14.210190 1.662067 -24.193663\r
+v  12.420479 1.390789 -21.146780\r
+v  10.157310 1.168210 -17.293684\r
+v  7.368229 1.001221 -12.545092\r
+v  4.000191 0.896357 -6.810718\r
+v  13.771935 3.404464 -32.352261\r
+v  13.738194 3.247028 -32.275902\r
+v  13.614237 3.004240 -31.988689\r
+v  13.317494 2.672895 -31.294500\r
+v  12.801443 2.317030 -30.083673\r
+v  12.032841 1.974233 -28.278502\r
+v  10.976357 1.662060 -25.796259\r
+v  9.593884 1.390786 -22.547577\r
+v  7.845730 1.168208 -18.439260\r
+v  5.691367 1.001220 -13.376119\r
+v  3.089823 0.896357 -7.261883\r
+v  9.424096 3.404227 -33.836109\r
+v  9.400525 3.246699 -33.756077\r
+v  9.315092 3.004024 -33.455639\r
+v  9.111615 2.672795 -32.729679\r
+v  8.758286 2.316986 -31.463404\r
+v  8.232292 1.974214 -29.575493\r
+v  7.509413 1.662051 -26.979433\r
+v  6.563553 1.390782 -23.581768\r
+v  5.367545 1.168207 -19.285025\r
+v  3.893654 1.001220 -13.989654\r
+v  2.113845 0.896357 -7.594973\r
+v  4.821004 3.404014 -34.755352\r
+v  4.808615 3.246402 -34.672913\r
+v  4.764478 3.003829 -34.364166\r
+v  4.660086 2.672704 -33.618481\r
+v  4.479190 2.316947 -32.317837\r
+v  4.210078 1.974196 -30.378677\r
+v  3.840329 1.662043 -27.712137\r
+v  3.356578 1.390779 -24.222202\r
+v  2.744924 1.168205 -19.808775\r
+v  1.991176 1.001220 -14.369593\r
+v  1.080996 0.896357 -7.801243\r
+v  0.000007 3.403928 -35.070625\r
+v  0.000007 3.246296 -34.987328\r
+v  0.000007 3.003757 -34.675667\r
+v  0.000007 2.672669 -33.923180\r
+v  0.000006 2.316931 -32.610737\r
+v  0.000006 1.974190 -30.653999\r
+v  0.000006 1.662040 -27.963289\r
+v  0.000005 1.390778 -24.441727\r
+v  0.000004 1.168205 -19.988300\r
+v  0.000003 1.001219 -14.499827\r
+v  0.000002 0.896357 -7.871946\r
+v  -4.820999 3.404014 -34.755360\r
+v  -4.808609 3.246404 -34.672924\r
+v  -4.764473 3.003830 -34.364166\r
+v  -4.660081 2.672704 -33.618481\r
+v  -4.479186 2.316947 -32.317844\r
+v  -4.210074 1.974196 -30.378683\r
+v  -3.840325 1.662043 -27.712137\r
+v  -3.356575 1.390779 -24.222204\r
+v  -2.744921 1.168205 -19.808775\r
+v  -1.991174 1.001220 -14.369593\r
+v  -1.080995 0.896357 -7.801243\r
+v  -9.424092 3.404226 -33.836109\r
+v  -9.400521 3.246700 -33.756081\r
+v  -9.315088 3.004025 -33.455639\r
+v  -9.111611 2.672794 -32.729679\r
+v  -8.758283 2.316986 -31.463404\r
+v  -8.232288 1.974214 -29.575491\r
+v  -7.509409 1.662051 -26.979433\r
+v  -6.563550 1.390782 -23.581768\r
+v  -5.367543 1.168207 -19.285025\r
+v  -3.893653 1.001220 -13.989653\r
+v  -2.113845 0.896357 -7.594972\r
+v  -13.771930 3.404464 -32.352261\r
+v  -13.738190 3.247028 -32.275902\r
+v  -13.614236 3.004239 -31.988689\r
+v  -13.317492 2.672895 -31.294498\r
+v  -12.801440 2.317030 -30.083673\r
+v  -12.032840 1.974233 -28.278502\r
+v  -10.976355 1.662060 -25.796257\r
+v  -9.593882 1.390786 -22.547577\r
+v  -7.845728 1.168208 -18.439260\r
+v  -5.691366 1.001220 -13.376119\r
+v  -3.089822 0.896357 -7.261883\r
+v  -17.826595 3.404656 -30.342831\r
+v  -17.783573 3.247304 -30.271254\r
+v  -17.623943 3.004421 -30.001797\r
+v  -17.240379 2.672978 -29.350573\r
+v  -16.572649 2.317066 -28.214848\r
+v  -15.577813 1.974249 -26.521738\r
+v  -14.210188 1.662067 -24.193661\r
+v  -12.420476 1.390789 -21.146776\r
+v  -10.157309 1.168210 -17.293682\r
+v  -7.368227 1.001221 -12.545092\r
+v  -4.000190 0.896357 -6.810717\r
+v  -21.549740 3.404784 -27.846706\r
+v  -21.498280 3.247481 -27.780914\r
+v  -21.305986 3.004537 -27.533407\r
+v  -20.842775 2.673032 -26.935545\r
+v  -20.035799 2.317090 -25.893118\r
+v  -18.833231 1.974260 -24.339247\r
+v  -17.179893 1.662072 -22.202694\r
+v  -15.016212 1.390791 -19.406519\r
+v  -12.280100 1.168211 -15.870494\r
+v  -8.908139 1.001221 -11.512681\r
+v  -4.836210 0.896357 -6.250220\r
+v  -24.902721 3.404830 -24.902721\r
+v  -24.843653 3.247544 -24.843653\r
+v  -24.621971 3.004576 -24.621971\r
+v  -24.087051 2.673051 -24.087051\r
+v  -23.154699 2.317098 -23.154699\r
+v  -21.765059 1.974263 -21.765059\r
+v  -19.854418 1.662073 -19.854418\r
+v  -17.353945 1.390792 -17.353945\r
+v  -14.191896 1.168211 -14.191896\r
+v  -10.294993 1.001221 -10.294993\r
+v  -5.589135 0.896357 -5.589135\r
+v  -27.846706 3.404784 -21.549744\r
+v  -27.780914 3.247482 -21.498280\r
+v  -27.533407 3.004537 -21.305988\r
+v  -26.935545 2.673032 -20.842775\r
+v  -25.893118 2.317090 -20.035799\r
+v  -24.339247 1.974260 -18.833233\r
+v  -22.202694 1.662072 -17.179893\r
+v  -19.406519 1.390791 -15.016212\r
+v  -15.870494 1.168211 -12.280100\r
+v  -11.512681 1.001221 -8.908139\r
+v  -6.250220 0.896357 -4.836210\r
+v  -30.342834 3.404658 -17.826597\r
+v  -30.271255 3.247304 -17.783575\r
+v  -30.001801 3.004420 -17.623947\r
+v  -29.350573 2.672979 -17.240383\r
+v  -28.214848 2.317066 -16.572653\r
+v  -26.521742 1.974249 -15.577816\r
+v  -24.193663 1.662067 -14.210190\r
+v  -21.146780 1.390789 -12.420479\r
+v  -17.293684 1.168210 -10.157310\r
+v  -12.545092 1.001221 -7.368229\r
+v  -6.810718 0.896357 -4.000191\r
+v  -32.352261 3.404464 -13.771935\r
+v  -32.275902 3.247028 -13.738194\r
+v  -31.988689 3.004240 -13.614237\r
+v  -31.294500 2.672895 -13.317494\r
+v  -30.083673 2.317030 -12.801443\r
+v  -28.278502 1.974233 -12.032841\r
+v  -25.796259 1.662060 -10.976357\r
+v  -22.547577 1.390786 -9.593884\r
+v  -18.439260 1.168208 -7.845730\r
+v  -13.376119 1.001220 -5.691367\r
+v  -7.261883 0.896357 -3.089823\r
+v  -33.836109 3.404227 -9.424096\r
+v  -33.756077 3.246699 -9.400525\r
+v  -33.455639 3.004024 -9.315092\r
+v  -32.729679 2.672795 -9.111615\r
+v  -31.463404 2.316986 -8.758286\r
+v  -29.575493 1.974214 -8.232292\r
+v  -26.979433 1.662051 -7.509413\r
+v  -23.581768 1.390782 -6.563553\r
+v  -19.285025 1.168207 -5.367545\r
+v  -13.989654 1.001220 -3.893654\r
+v  -7.594973 0.896357 -2.113845\r
+v  -34.755352 3.404014 -4.821004\r
+v  -34.672913 3.246402 -4.808615\r
+v  -34.364166 3.003829 -4.764478\r
+v  -33.618481 2.672704 -4.660086\r
+v  -32.317837 2.316947 -4.479190\r
+v  -30.378677 1.974196 -4.210078\r
+v  -27.712137 1.662043 -3.840329\r
+v  -24.222202 1.390779 -3.356578\r
+v  -19.808775 1.168205 -2.744924\r
+v  -14.369593 1.001220 -1.991176\r
+v  -7.801243 0.896357 -1.080996\r
+v  45.995186 16.780825 -3.476318\r
+v  46.149780 17.777922 -6.248612\r
+v  45.088390 33.395214 -3.420008\r
+v  49.706287 34.262356 -3.278664\r
+v  49.628418 34.571190 -0.000000\r
+v  45.228798 29.264528 -9.865519\r
+v  45.418671 27.274323 -10.791471\r
+v  51.000626 28.908375 -10.177316\r
+v  50.588642 30.633972 -9.337005\r
+v  45.190826 32.451126 -6.175942\r
+v  45.105232 31.041933 -8.324440\r
+v  50.218098 32.173695 -7.923295\r
+v  49.914749 33.420540 -5.914976\r
+v  53.426147 33.917679 -7.481902\r
+v  53.056084 35.035255 -5.590816\r
+v  52.799423 35.790501 -3.101901\r
+v  55.430260 37.105873 -5.186369\r
+v  55.141747 37.773933 -2.880229\r
+v  55.032967 38.018658 -0.000000\r
+v  57.135185 23.008434 -3.116540\r
+v  59.951015 26.656109 -2.897856\r
+v  56.856812 23.760654 -5.621984\r
+v  59.631214 27.306948 -5.226165\r
+v  56.450565 24.878613 -7.527346\r
+v  59.164711 28.275646 -6.992421\r
+v  55.961720 26.256136 -8.853226\r
+v  58.606346 29.469543 -8.212838\r
+v  55.430447 27.795492 -9.624819\r
+v  58.007889 30.801662 -8.911481\r
+v  54.889709 29.408915 -9.866074\r
+v  57.412601 32.194992 -9.117931\r
+v  54.364090 31.017546 -9.592812\r
+v  56.847668 33.585190 -8.858398\r
+v  53.870747 32.546989 -8.804893\r
+v  56.321617 34.915279 -8.137874\r
+v  55.840210 36.118500 -6.928419\r
+v  58.124084 37.632740 -7.380739\r
+v  57.617748 38.665031 -6.298534\r
+v  57.177288 39.515884 -4.724274\r
+v  58.924278 41.436157 -5.621372\r
+v  58.458118 42.140152 -4.223564\r
+v  56.864441 40.091221 -2.626429\r
+v  58.126919 42.616402 -2.350852\r
+v  58.002205 42.790436 -0.000000\r
+v  61.958778 30.698326 -2.643125\r
+v  63.449642 35.013340 -2.363898\r
+v  61.613708 31.241852 -4.764424\r
+v  63.089504 35.446148 -4.256618\r
+v  61.110249 32.051811 -6.369339\r
+v  62.564560 36.090984 -5.683926\r
+v  60.509293 33.050926 -7.470810\r
+v  61.938782 36.886909 -6.658678\r
+v  59.871010 34.166008 -8.091183\r
+v  61.275433 37.777168 -7.203109\r
+v  59.247063 35.333176 -8.263747\r
+v  60.628307 38.713707 -7.351068\r
+v  58.665573 36.502846 -8.023794\r
+v  60.024502 39.660542 -7.138882\r
+v  59.458153 40.584930 -6.575143\r
+v  61.127766 42.943413 -6.253541\r
+v  60.512177 43.655693 -5.762395\r
+v  59.941269 44.316677 -4.928680\r
+v  61.485046 46.735191 -4.987838\r
+v  60.857227 47.204559 -4.259930\r
+v  59.450897 44.867290 -3.706893\r
+v  60.334347 47.601540 -3.203070\r
+v  59.104950 45.242031 -2.066032\r
+v  59.970970 47.876034 -1.787315\r
+v  58.974926 45.379539 -0.000000\r
+v  64.714180 39.461689 -2.074268\r
+v  66.054077 43.897354 -1.790847\r
+v  64.342331 39.783501 -3.728095\r
+v  65.665672 44.110519 -3.209938\r
+v  63.801727 40.261581 -4.970649\r
+v  65.101921 44.424397 -4.273631\r
+v  63.156651 40.851818 -5.818796\r
+v  64.424400 44.812401 -5.005883\r
+v  62.466934 41.515530 -6.296455\r
+v  63.684601 45.254700 -5.430378\r
+v  61.781311 42.221127 -6.432749\r
+v  62.925381 45.734722 -5.564390\r
+v  62.182732 46.235287 -5.417175\r
+v  64.280853 49.132317 -4.799839\r
+v  63.403214 49.422714 -4.679266\r
+v  62.581425 49.720722 -4.301025\r
+v  65.006660 52.395870 -4.089561\r
+v  64.007332 52.512642 -3.752841\r
+v  61.860790 50.006725 -3.661126\r
+v  63.140575 52.632931 -3.181634\r
+v  61.280983 50.255054 -2.746494\r
+v  62.459641 52.743523 -2.376829\r
+v  60.887669 50.432003 -1.532814\r
+v  62.009407 52.827225 -1.324533\r
+v  61.844387 52.860577 -0.000000\r
+v  67.784515 48.171600 -1.534698\r
+v  70.229515 52.123020 -1.335353\r
+v  67.362701 48.281441 -2.741862\r
+v  69.739418 52.143497 -2.377033\r
+v  66.748703 48.437824 -3.647612\r
+v  69.021545 52.159821 -3.157365\r
+v  66.000435 48.632710 -4.282821\r
+v  68.138405 52.179893 -3.713215\r
+v  65.163139 48.865402 -4.666136\r
+v  67.138397 52.221870 -4.060031\r
+v  66.073395 52.295216 -4.189920\r
+v  69.434898 54.184776 -3.623256\r
+v  68.248657 54.167709 -3.741345\r
+v  67.063324 54.171482 -3.642959\r
+v  70.193817 55.759918 -3.459589\r
+v  68.873260 55.687439 -3.367224\r
+v  65.953758 54.193527 -3.323690\r
+v  67.636673 55.636772 -3.064336\r
+v  64.992226 54.227539 -2.784500\r
+v  66.565292 55.605934 -2.552340\r
+v  64.243576 54.264946 -2.032888\r
+v  65.733673 55.590393 -1.844277\r
+v  63.763153 54.295246 -1.087903\r
+v  65.204605 55.584610 -0.972424\r
+v  63.595821 54.307327 -0.000000\r
+v  72.798225 54.313873 -1.086095\r
+v  75.221130 56.188660 -0.960857\r
+v  72.295990 54.294380 -2.022224\r
+v  74.679779 56.136047 -1.820236\r
+v  71.524963 54.260078 -2.761478\r
+v  73.835159 56.054188 -2.518550\r
+v  70.549599 54.219116 -3.295256\r
+v  72.755264 55.954292 -3.030048\r
+v  71.515144 55.851707 -3.345429\r
+v  74.536522 57.222038 -2.862778\r
+v  73.192123 57.069317 -3.172426\r
+v  71.756943 56.926666 -3.288701\r
+v  74.412811 57.840912 -3.064968\r
+v  72.899948 57.672508 -3.186956\r
+v  70.320610 56.804794 -3.204918\r
+v  71.382965 57.527905 -3.112457\r
+v  68.974106 56.708424 -2.916367\r
+v  69.958649 57.411346 -2.835438\r
+v  67.806656 56.637569 -2.424866\r
+v  68.722389 57.322998 -2.357784\r
+v  66.900864 56.589989 -1.745687\r
+v  67.762573 57.261326 -1.696100\r
+v  66.325653 56.562912 -0.916095\r
+v  67.153137 57.224899 -0.888914\r
+v  66.128273 56.554203 -0.000000\r
+v  66.944008 57.212818 -0.000000\r
+v  77.191574 57.567680 -0.891030\r
+v  78.812683 58.476608 -0.000000\r
+v  78.604927 58.442093 -0.846880\r
+v  76.612244 57.488617 -1.699429\r
+v  78.001305 58.343704 -1.621314\r
+v  75.703789 57.367828 -2.367136\r
+v  77.050873 58.196815 -2.268172\r
+v  75.826874 58.021427 -2.755038\r
+v  77.943726 58.654572 -2.209999\r
+v  76.688164 58.469574 -2.694097\r
+v  75.235077 58.281582 -3.006982\r
+v  77.247398 58.713806 -2.692511\r
+v  75.767258 58.539230 -3.008938\r
+v  73.676620 58.110069 -3.135304\r
+v  74.178757 58.381268 -3.139774\r
+v  72.111130 57.963966 -3.067731\r
+v  72.581238 58.248608 -3.073849\r
+v  70.639084 57.846554 -2.797916\r
+v  71.077499 58.142105 -2.804428\r
+v  69.359810 57.756969 -2.327847\r
+v  69.769173 58.060509 -2.334336\r
+v  68.365730 57.693714 -1.674795\r
+v  68.751022 58.002373 -1.680595\r
+v  67.734032 57.655857 -0.877722\r
+v  68.103157 57.967300 -0.881536\r
+v  79.532471 58.921913 -0.820733\r
+v  79.743568 58.960144 -0.000000\r
+v  80.138725 59.149529 -0.818294\r
+v  78.915237 58.814110 -1.574499\r
+v  79.512527 59.043732 -1.570631\r
+v  78.523865 58.890503 -2.206112\r
+v  79.970215 59.150993 -1.634999\r
+v  78.951813 59.021400 -2.287304\r
+v  77.638527 58.874825 -2.782006\r
+v  80.619560 59.240250 -0.855935\r
+v  80.842430 59.272152 -0.000000\r
+v  68.255508 58.246353 -0.910756\r
+v  68.925011 58.277336 -1.730476\r
+v  69.972977 58.327969 -2.397663\r
+v  71.315781 58.397888 -2.877851\r
+v  72.856537 58.487667 -3.155504\r
+v  74.492569 58.598457 -3.228011\r
+v  76.120430 58.729034 -3.100050\r
+v  51.437279 27.084599 -10.462042\r
+v  45.630348 25.162910 -11.116575\r
+v  51.875427 25.257896 -10.192454\r
+v  45.840954 23.049217 -10.835164\r
+v  52.296970 23.520880 -9.360587\r
+v  46.007530 21.041777 -9.940046\r
+v  52.679657 21.972109 -7.949081\r
+v  46.149807 19.343899 -8.475669\r
+v  52.995735 20.716501 -5.932664\r
+v  53.211796 19.871258 -3.287719\r
+v  -41.948517 51.534840 -4.457182\r
+v  -42.036423 51.218357 -4.531941\r
+v  -38.026958 50.941635 -4.776924\r
+v  -37.757614 51.428608 -4.720310\r
+v  -38.277580 50.488907 -4.633398\r
+v  -42.124222 50.902065 -4.456912\r
+v  -38.543526 50.074299 -4.257537\r
+v  -42.206703 50.523998 -4.179229\r
+v  -38.812569 49.669872 -3.629118\r
+v  -42.279007 50.113258 -3.617671\r
+v  -39.061852 49.314972 -2.712852\r
+v  -42.336468 49.743366 -2.735821\r
+v  -39.271828 49.065823 -1.488043\r
+v  -42.374432 49.482063 -1.528272\r
+v  -42.388138 49.384346 -0.000000\r
+v  -41.697433 52.955444 -1.528307\r
+v  -37.117207 53.103344 -1.548502\r
+v  -41.735565 52.694118 -2.735925\r
+v  -37.161736 52.828678 -2.819624\r
+v  -37.292095 52.421883 -3.778018\r
+v  -41.793274 52.324139 -3.617865\r
+v  -37.488518 51.931980 -4.423198\r
+v  -41.865837 51.913204 -4.179520\r
+v  -46.791210 52.283672 -3.618367\r
+v  -46.710369 51.874680 -4.180077\r
+v  -46.619873 51.498638 -4.457525\r
+v  -51.096916 51.771812 -4.180090\r
+v  -50.857487 51.402054 -4.457748\r
+v  -46.524952 51.185066 -4.531940\r
+v  -50.605980 51.095291 -4.531942\r
+v  -46.429539 50.872025 -4.456937\r
+v  -50.353104 50.789867 -4.456754\r
+v  -46.337967 50.496773 -4.179554\r
+v  -50.110752 50.421970 -4.179654\r
+v  -46.255993 50.088215 -3.618148\r
+v  -49.894230 50.019619 -3.618536\r
+v  -46.189915 49.719971 -2.736236\r
+v  -49.719959 49.656162 -2.736671\r
+v  -46.145927 49.459763 -1.528513\r
+v  -49.604004 49.399086 -1.528798\r
+v  -46.899738 52.912281 -1.528456\r
+v  -51.596943 52.795444 -1.528291\r
+v  -46.856346 52.652046 -2.736257\r
+v  -51.482456 52.538464 -2.736003\r
+v  -51.310497 52.174942 -3.618155\r
+v  -55.610043 52.318462 -2.734268\r
+v  -55.347038 51.964821 -3.616080\r
+v  -55.021183 51.573517 -4.178608\r
+v  -58.895660 51.621410 -3.610722\r
+v  -58.478214 51.249767 -4.174442\r
+v  -54.657051 51.215675 -4.457519\r
+v  -58.013878 50.910789 -4.456400\r
+v  -54.275249 50.920700 -4.531946\r
+v  -57.528488 50.633057 -4.531958\r
+v  -53.890728 50.628735 -4.456004\r
+v  -57.038601 50.361160 -4.454206\r
+v  -53.520660 50.274933 -4.178843\r
+v  -56.564045 50.030125 -4.176105\r
+v  -53.188789 49.885006 -3.618203\r
+v  -56.135773 49.661190 -3.616156\r
+v  -52.921051 49.531242 -2.736722\r
+v  -55.788849 49.323917 -2.735712\r
+v  -52.742691 49.280479 -1.528953\r
+v  -55.557209 49.083851 -1.528669\r
+v  -55.785439 52.568855 -1.527358\r
+v  -59.460087 52.197708 -1.525057\r
+v  -59.233902 51.958389 -2.729917\r
+v  -62.613842 51.649925 -1.520684\r
+v  -62.347134 51.427208 -2.721620\r
+v  -61.949936 51.115063 -3.600467\r
+v  -64.942276 50.698849 -2.708375\r
+v  -64.503281 50.420185 -3.584220\r
+v  -61.462276 50.772209 -4.166301\r
+v  -63.967823 50.115189 -4.153381\r
+v  -60.922928 50.459602 -4.453880\r
+v  -63.379246 49.835751 -4.449577\r
+v  -60.361187 50.204163 -4.531981\r
+v  -62.768589 49.606171 -4.532022\r
+v  -59.793076 49.958649 -4.450782\r
+v  -62.150188 49.391422 -4.445269\r
+v  -59.238110 49.660385 -4.169976\r
+v  -61.540627 49.135757 -4.158732\r
+v  -58.732697 49.323288 -3.610821\r
+v  -60.978722 48.843151 -3.600015\r
+v  -58.320698 49.011375 -2.732533\r
+v  -60.516350 48.567657 -2.725491\r
+v  -58.044613 48.787762 -1.527423\r
+v  -60.204693 48.367771 -1.524366\r
+v  -65.238739 50.898891 -1.513679\r
+v  -67.331772 49.926266 -1.504408\r
+v  -67.016464 49.754341 -2.690974\r
+v  -68.908897 48.716778 -1.495354\r
+v  -68.583618 48.576832 -2.673987\r
+v  -66.553070 49.516308 -3.563130\r
+v  -68.109818 48.383591 -3.542588\r
+v  -65.992195 49.255936 -4.136663\r
+v  -67.541267 48.171173 -4.120241\r
+v  -65.379234 49.014259 -4.443695\r
+v  -66.923698 47.969803 -4.437550\r
+v  -64.745583 48.812099 -4.532072\r
+v  -66.287674 47.796173 -4.532102\r
+v  -64.104340 48.628956 -4.437863\r
+v  -65.646408 47.642570 -4.430169\r
+v  -63.467972 48.422352 -4.141397\r
+v  -65.009918 47.484119 -4.120264\r
+v  -62.873341 48.186466 -3.581538\r
+v  -64.409294 47.310944 -3.555949\r
+v  -62.377460 47.959885 -2.712463\r
+v  -63.900902 47.143429 -2.692640\r
+v  -62.040089 47.792519 -1.518331\r
+v  -63.550495 47.017250 -1.508500\r
+v  -63.420948 46.967972 -0.000000\r
+v  -70.012054 47.233601 -1.490260\r
+v  -70.678452 45.399563 -1.489941\r
+v  -69.680725 47.129883 -2.664130\r
+v  -70.341866 45.340977 -2.662944\r
+v  -69.202225 46.986122 -3.530254\r
+v  -69.858513 45.259026 -3.528044\r
+v  -68.633446 46.826305 -4.109865\r
+v  -69.288513 45.166519 -4.107232\r
+v  -68.020515 46.670952 -4.433248\r
+v  -68.679764 45.074417 -4.431639\r
+v  -67.392906 46.532158 -4.532090\r
+v  -68.060989 44.989483 -4.532048\r
+v  -66.763908 46.409519 -4.424950\r
+v  -67.443993 44.913059 -4.423773\r
+v  -66.143509 46.293182 -4.102916\r
+v  -66.838364 44.842842 -4.096591\r
+v  -65.558022 46.176872 -3.531360\r
+v  -66.269119 44.777431 -3.519868\r
+v  -65.058144 46.068241 -2.671104\r
+v  -65.783348 44.719872 -2.659082\r
+v  -64.709557 45.986294 -1.496846\r
+v  -65.443398 44.677620 -1.489404\r
+v  -64.579414 45.953846 -0.000000\r
+v  -70.905617 43.120350 -1.490808\r
+v  -70.738953 40.594044 -1.490340\r
+v  -70.566589 43.120514 -2.664044\r
+v  -70.403839 40.653576 -2.662997\r
+v  -70.080826 43.121490 -3.528665\r
+v  -69.923897 40.739983 -3.527178\r
+v  -69.510117 43.123909 -4.106839\r
+v  -69.360229 40.843300 -4.105333\r
+v  -68.903564 43.128391 -4.430677\r
+v  -68.761063 40.955338 -4.429730\r
+v  -68.289291 43.135201 -4.531983\r
+v  -68.153839 41.070663 -4.531960\r
+v  -67.677109 43.143883 -4.425538\r
+v  -67.548149 41.186131 -4.426323\r
+v  -67.075356 43.153267 -4.099285\r
+v  -66.952492 41.298553 -4.100434\r
+v  -66.509438 43.161942 -3.521808\r
+v  -66.392265 41.402447 -3.522884\r
+v  -66.026787 43.168724 -2.659585\r
+v  -65.914551 41.489475 -2.660312\r
+v  -65.689171 43.172844 -1.488981\r
+v  -65.580437 41.549488 -1.489239\r
+v  -65.455025 41.571804 -0.000000\r
+v  -70.236153 38.086609 -1.489898\r
+v  -69.391174 35.612617 -1.490680\r
+v  -69.911690 38.192822 -2.662251\r
+v  -69.083237 35.755299 -2.663822\r
+v  -69.447159 38.346462 -3.526338\r
+v  -68.642715 35.961056 -3.528210\r
+v  -68.901741 38.529621 -4.104704\r
+v  -68.126625 36.205460 -4.106121\r
+v  -68.322151 38.727989 -4.429485\r
+v  -67.580284 36.469353 -4.429974\r
+v  -67.735062 38.932621 -4.531958\r
+v  -67.029205 36.741604 -4.531957\r
+v  -67.149933 39.138718 -4.426282\r
+v  -66.481216 37.017132 -4.426898\r
+v  -66.574913 39.341019 -4.100264\r
+v  -65.942184 37.289867 -4.102138\r
+v  -66.034195 39.529449 -3.522710\r
+v  -65.433998 37.545971 -3.525404\r
+v  -65.572937 39.688232 -2.660266\r
+v  -64.999489 37.762955 -2.662771\r
+v  -65.250168 39.798138 -1.489326\r
+v  -64.694992 37.913563 -1.490839\r
+v  -65.128937 39.839081 -0.000000\r
+v  -68.196686 33.172222 -1.493325\r
+v  -66.644875 30.767271 -1.497882\r
+v  -67.910934 33.344028 -2.668868\r
+v  -66.387413 30.963385 -2.677503\r
+v  -67.502861 33.591095 -3.534150\r
+v  -66.020721 31.244762 -3.544427\r
+v  -67.027176 33.883045 -4.110612\r
+v  -65.596947 31.575037 -4.118530\r
+v  -66.528229 34.196144 -4.431555\r
+v  -65.159760 31.925203 -4.434402\r
+v  -66.030045 34.517765 -4.531956\r
+v  -64.731323 32.281364 -4.531957\r
+v  -65.536568 34.844345 -4.428536\r
+v  -64.309532 32.643562 -4.431396\r
+v  -65.048950 35.170723 -4.107077\r
+v  -63.888206 33.009956 -4.115525\r
+v  -64.585754 35.480164 -3.532246\r
+v  -63.481915 33.361565 -3.543615\r
+v  -64.187569 35.743877 -2.668850\r
+v  -63.129204 33.663147 -2.678668\r
+v  -63.907810 35.927357 -1.494275\r
+v  -62.880367 33.873367 -1.499661\r
+v  -62.786594 33.951809 -0.000000\r
+v  -64.728119 28.401169 -1.503917\r
+v  -62.439590 26.078430 -1.510712\r
+v  -64.505661 28.618759 -2.689034\r
+v  -62.259430 26.316179 -2.702169\r
+v  -64.190231 28.930527 -3.558462\r
+v  -62.005947 26.656828 -3.574907\r
+v  -63.830471 29.293837 -4.129674\r
+v  -61.722912 27.051308 -4.143260\r
+v  -63.469250 29.673100 -4.438526\r
+v  -61.451572 27.455879 -4.443751\r
+v  -63.126740 30.052601 -4.531957\r
+v  -61.209999 27.851725 -4.531958\r
+v  -62.792892 30.438427 -4.435552\r
+v  -60.978916 28.253254 -4.440896\r
+v  -62.451881 30.834867 -4.127476\r
+v  -60.731197 28.673861 -4.142333\r
+v  -62.113873 31.220917 -3.559167\r
+v  -60.472553 29.090162 -3.577752\r
+v  -61.815689 31.554224 -2.691714\r
+v  -60.238037 29.451632 -2.706818\r
+v  -61.603935 31.786814 -1.506644\r
+v  -60.069641 29.703878 -1.514551\r
+v  -61.523952 31.873537 -0.000000\r
+v  -60.005768 29.797796 -0.000000\r
+v  -59.773224 23.804155 -1.517380\r
+v  -56.723698 21.583647 -1.522979\r
+v  -59.642994 24.061974 -2.715222\r
+v  -56.651096 21.862562 -2.726271\r
+v  -59.462814 24.431885 -3.591738\r
+v  -56.555897 22.263678 -3.606327\r
+v  -59.269817 24.858538 -4.157774\r
+v  -56.466770 22.725800 -4.170847\r
+v  -59.101967 25.288811 -4.449588\r
+v  -56.415874 23.186222 -4.455082\r
+v  -58.974766 25.699024 -4.531958\r
+v  -56.414719 23.614880 -4.531960\r
+v  -58.859398 26.113333 -4.446964\r
+v  -56.425877 24.045284 -4.452725\r
+v  -58.716919 26.556625 -4.158584\r
+v  -56.399830 24.514313 -4.173460\r
+v  -58.548714 27.002308 -3.597222\r
+v  -56.333412 24.991362 -3.614273\r
+v  -58.387299 27.390745 -2.722125\r
+v  -56.254818 25.407576 -2.735079\r
+v  -58.268654 27.661457 -1.522384\r
+v  -56.192390 25.697001 -1.528846\r
+v  -56.167637 25.804327 -0.000000\r
+v  -53.286213 19.422144 -1.526564\r
+v  -53.290504 19.310101 -0.000000\r
+v  -49.465343 17.329094 -1.526287\r
+v  -53.278778 19.724339 -2.733301\r
+v  -49.530258 17.657429 -2.732453\r
+v  -53.280193 20.160034 -3.615677\r
+v  -49.639061 18.131496 -3.614459\r
+v  -53.309097 20.662727 -4.179387\r
+v  -49.798977 18.680023 -4.177956\r
+v  -53.388649 21.161465 -4.458790\r
+v  -50.018990 19.228241 -4.458596\r
+v  -53.523666 21.619770 -4.531963\r
+v  -50.293808 19.735630 -4.531990\r
+v  -53.670074 22.077118 -4.456503\r
+v  -50.577820 20.238991 -4.454438\r
+v  -53.771160 22.579380 -4.182905\r
+v  -50.813652 20.784246 -4.178554\r
+v  -53.818275 23.092068 -3.624574\r
+v  -50.984787 21.336180 -3.619370\r
+v  -53.832405 23.538616 -2.742553\r
+v  -51.100697 21.815151 -2.738094\r
+v  -53.832623 23.848354 -1.532403\r
+v  -51.169285 22.146893 -1.529777\r
+v  -53.830811 23.963005 0.000000\r
+v  -47.354473 20.811895 -1.482549\r
+v  -47.182030 20.513746 -2.681194\r
+v  -47.050934 20.062574 -3.592475\r
+v  -46.915611 19.550783 -4.226586\r
+v  -46.789665 19.043793 -4.609217\r
+v  -46.539436 18.485825 -4.818050\r
+v  -46.286690 17.780519 -4.782351\r
+v  -46.118649 17.115824 -4.439608\r
+v  -45.814693 16.412136 -3.809999\r
+v  -45.607841 15.840797 -2.840259\r
+v  -45.526543 15.484818 -1.558604\r
+v  33.239269 59.451317 4.606183\r
+v  32.360405 59.451305 9.007024\r
+v  30.941236 59.451286 13.165440\r
+v  29.018957 59.451271 17.044249\r
+v  26.630886 59.451271 20.606270\r
+v  23.814240 59.451263 23.814240\r
+v  20.606274 59.451263 26.630894\r
+v  17.044262 59.451271 29.018978\r
+v  13.165442 59.451286 30.941238\r
+v  9.007030 59.451302 32.360416\r
+v  4.606186 59.451324 33.239258\r
+v  -0.000014 59.451340 33.540497\r
+v  -4.662519 59.451481 33.238495\r
+v  -9.099615 59.451843 32.357937\r
+v  -13.276887 59.452278 30.936943\r
+v  -17.160204 59.452675 29.013386\r
+v  -20.715641 59.452930 26.624962\r
+v  -23.909199 59.452953 23.808937\r
+v  -26.706709 59.452774 20.602285\r
+v  -29.073727 59.452446 17.041828\r
+v  -30.975536 59.452049 13.164367\r
+v  -32.377239 59.451683 9.006817\r
+v  -33.243862 59.451424 4.606279\r
+v  -33.540504 59.451336 -0.000000\r
+v  79.378838 59.119923 2.492047\r
+v  77.988792 59.018013 3.001820\r
+v  80.468277 59.207764 1.803400\r
+v  81.169640 59.268383 0.957353\r
+v  67.887825 58.525826 -0.000000\r
+v  68.137123 58.535225 0.989486\r
+v  68.851639 58.562496 1.858874\r
+v  69.958687 58.605934 2.556232\r
+v  71.367294 58.663914 3.057340\r
+v  72.977921 58.735428 3.352349\r
+v  74.687347 58.819687 3.439040\r
+v  76.391655 58.915474 3.320329\r
+v  33.540508 59.451324 -0.000000\r
+v  33.239269 59.451317 -4.606183\r
+v  32.360405 59.451305 -9.007024\r
+v  30.941236 59.451286 -13.165440\r
+v  29.018957 59.451271 -17.044249\r
+v  26.630886 59.451271 -20.606270\r
+v  23.814240 59.451263 -23.814240\r
+v  20.606274 59.451263 -26.630894\r
+v  17.044262 59.451271 -29.018978\r
+v  13.165442 59.451286 -30.941238\r
+v  9.007030 59.451302 -32.360416\r
+v  4.606186 59.451324 -33.239258\r
+v  -0.000014 59.451340 -33.540497\r
+v  -4.662519 59.451481 -33.238495\r
+v  -9.099615 59.451843 -32.357937\r
+v  -13.276887 59.452278 -30.936943\r
+v  -17.160204 59.452675 -29.013386\r
+v  -20.715641 59.452930 -26.624962\r
+v  -23.909199 59.452953 -23.808937\r
+v  -26.706709 59.452774 -20.602285\r
+v  -29.073727 59.452446 -17.041828\r
+v  -30.975536 59.452049 -13.164367\r
+v  -32.377239 59.451683 -9.006818\r
+v  -33.243862 59.451424 -4.606279\r
+v  80.468277 59.207764 -1.803400\r
+v  79.378838 59.119923 -2.492047\r
+v  81.169640 59.268383 -0.957353\r
+v  81.414597 59.290180 -0.000000\r
+v  68.137123 58.535225 -0.989486\r
+v  68.851639 58.562496 -1.858874\r
+v  69.958687 58.605934 -2.556232\r
+v  71.367294 58.663914 -3.057340\r
+v  72.977921 58.735428 -3.352349\r
+v  74.687347 58.819687 -3.439040\r
+v  76.391655 58.915474 -3.320329\r
+v  77.988792 59.018013 -3.001820\r
+# 6072 vertices\r
+\r
+vt 0.400242 0.530367 -0.167330\r
+vt 0.400220 0.529085 -0.167330\r
+vt 0.418112 0.528867 -0.167330\r
+vt 0.418129 0.530153 -0.167330\r
+vt 0.400268 0.531970 -0.167330\r
+vt 0.418150 0.531760 -0.167330\r
+vt 0.400301 0.533919 -0.167330\r
+vt 0.418174 0.533713 -0.167330\r
+vt 0.400338 0.536214 -0.167330\r
+vt 0.418201 0.536011 -0.167330\r
+vt 0.400381 0.538848 -0.167330\r
+vt 0.418229 0.538650 -0.167330\r
+vt 0.400428 0.541815 -0.167330\r
+vt 0.418258 0.541622 -0.167330\r
+vt 0.435550 0.528806 -0.167330\r
+vt 0.435559 0.530095 -0.167330\r
+vt 0.435569 0.531705 -0.167330\r
+vt 0.435580 0.533660 -0.167330\r
+vt 0.435591 0.535962 -0.167330\r
+vt 0.435602 0.538602 -0.167330\r
+vt 0.435611 0.541574 -0.167330\r
+vt 0.452634 0.528893 -0.167330\r
+vt 0.452631 0.530182 -0.167330\r
+vt 0.452627 0.531792 -0.167330\r
+vt 0.452622 0.533747 -0.167330\r
+vt 0.452614 0.536047 -0.167330\r
+vt 0.452604 0.538684 -0.167330\r
+vt 0.452591 0.541654 -0.167330\r
+vt 0.469434 0.529121 -0.167330\r
+vt 0.469419 0.530407 -0.167330\r
+vt 0.469400 0.532013 -0.167330\r
+vt 0.469376 0.533963 -0.167330\r
+vt 0.469349 0.536257 -0.167330\r
+vt 0.469317 0.538887 -0.167330\r
+vt 0.469281 0.541847 -0.167330\r
+vt 0.486005 0.529479 -0.167330\r
+vt 0.485977 0.530759 -0.167330\r
+vt 0.485943 0.532357 -0.167330\r
+vt 0.485903 0.534298 -0.167330\r
+vt 0.485856 0.536580 -0.167330\r
+vt 0.485804 0.539196 -0.167330\r
+vt 0.485747 0.542142 -0.167330\r
+vt 0.502393 0.529945 -0.167330\r
+vt 0.502354 0.531215 -0.167330\r
+vt 0.502307 0.532802 -0.167330\r
+vt 0.502252 0.534729 -0.167330\r
+vt 0.502189 0.536995 -0.167330\r
+vt 0.502119 0.539594 -0.167330\r
+vt 0.502045 0.542522 -0.167330\r
+vt 0.518599 0.531740 -0.167330\r
+vt 0.518646 0.530481 -0.167330\r
+vt 0.518542 0.533312 -0.167330\r
+vt 0.518475 0.535222 -0.167330\r
+vt 0.518399 0.537469 -0.167330\r
+vt 0.518317 0.540047 -0.167330\r
+vt 0.518229 0.542951 -0.167330\r
+vt 0.534761 0.532324 -0.167330\r
+vt 0.534815 0.531078 -0.167330\r
+vt 0.534697 0.533880 -0.167330\r
+vt 0.534621 0.535770 -0.167330\r
+vt 0.534537 0.537994 -0.167330\r
+vt 0.534446 0.540548 -0.167330\r
+vt 0.534349 0.543425 -0.167330\r
+vt 0.550896 0.532941 -0.167330\r
+vt 0.550953 0.531711 -0.167330\r
+vt 0.550828 0.534477 -0.167330\r
+vt 0.550749 0.536345 -0.167330\r
+vt 0.550661 0.538545 -0.167330\r
+vt 0.550567 0.541071 -0.167330\r
+vt 0.550468 0.543919 -0.167330\r
+vt 0.567071 0.533560 -0.167330\r
+vt 0.567126 0.532348 -0.167330\r
+vt 0.567005 0.535076 -0.167330\r
+vt 0.566928 0.536920 -0.167330\r
+vt 0.566843 0.539093 -0.167330\r
+vt 0.566753 0.541589 -0.167330\r
+vt 0.566658 0.544406 -0.167330\r
+vt 0.583418 0.532949 -0.167330\r
+vt 0.583370 0.534145 -0.167330\r
+vt 0.583313 0.535640 -0.167330\r
+vt 0.583246 0.537460 -0.167330\r
+vt 0.583173 0.539606 -0.167330\r
+vt 0.583094 0.542073 -0.167330\r
+vt 0.583012 0.544858 -0.167330\r
+vt 0.599905 0.534666 -0.167330\r
+vt 0.599939 0.533486 -0.167330\r
+vt 0.599864 0.536142 -0.167330\r
+vt 0.599816 0.537939 -0.167330\r
+vt 0.599762 0.540059 -0.167330\r
+vt 0.599704 0.542497 -0.167330\r
+vt 0.599643 0.545251 -0.167330\r
+vt 0.616458 0.533943 -0.167330\r
+vt 0.616358 0.535098 -0.167330\r
+vt 0.616282 0.536551 -0.167330\r
+vt 0.616222 0.538327 -0.167330\r
+vt 0.616176 0.540424 -0.167330\r
+vt 0.616137 0.542838 -0.167330\r
+vt 0.616102 0.545565 -0.167330\r
+vt 0.632297 0.534262 -0.167330\r
+vt 0.632163 0.535383 -0.167330\r
+vt 0.632071 0.536810 -0.167330\r
+vt 0.632013 0.538562 -0.167330\r
+vt 0.631981 0.540637 -0.167330\r
+vt 0.631967 0.543029 -0.167330\r
+vt 0.631961 0.545732 -0.167330\r
+vt 0.647598 0.534396 -0.167330\r
+vt 0.647457 0.535482 -0.167330\r
+vt 0.647370 0.536881 -0.167330\r
+vt 0.647326 0.538610 -0.167330\r
+vt 0.647316 0.540664 -0.167330\r
+vt 0.647330 0.543035 -0.167330\r
+vt 0.647358 0.545716 -0.167330\r
+vt 0.662479 0.534306 -0.167330\r
+vt 0.662355 0.535362 -0.167330\r
+vt 0.662288 0.536736 -0.167330\r
+vt 0.662269 0.538444 -0.167330\r
+vt 0.662289 0.540478 -0.167330\r
+vt 0.662336 0.542828 -0.167330\r
+vt 0.662403 0.545487 -0.167330\r
+vt 0.677036 0.533954 -0.167330\r
+vt 0.676947 0.534988 -0.167330\r
+vt 0.676915 0.536343 -0.167330\r
+vt 0.676931 0.538031 -0.167330\r
+vt 0.676987 0.540045 -0.167330\r
+vt 0.677076 0.542375 -0.167330\r
+vt 0.677188 0.545012 -0.167330\r
+vt 0.691353 0.533291 -0.167330\r
+vt 0.691312 0.534313 -0.167330\r
+vt 0.691324 0.535655 -0.167330\r
+vt 0.691385 0.537327 -0.167330\r
+vt 0.691487 0.539323 -0.167330\r
+vt 0.691624 0.541633 -0.167330\r
+vt 0.691790 0.544250 -0.167330\r
+vt 0.705509 0.532266 -0.167330\r
+vt 0.705522 0.533287 -0.167330\r
+vt 0.705586 0.534620 -0.167330\r
+vt 0.705698 0.536278 -0.167330\r
+vt 0.705854 0.538257 -0.167330\r
+vt 0.706048 0.540546 -0.167330\r
+vt 0.706278 0.543141 -0.167330\r
+vt 0.719571 0.530827 -0.167330\r
+vt 0.719642 0.531852 -0.167330\r
+vt 0.719763 0.533180 -0.167330\r
+vt 0.719933 0.534826 -0.167330\r
+vt 0.720151 0.536786 -0.167330\r
+vt 0.720413 0.539055 -0.167330\r
+vt 0.720717 0.541629 -0.167330\r
+vt 0.733598 0.528901 -0.167330\r
+vt 0.733728 0.529934 -0.167330\r
+vt 0.733911 0.531256 -0.167330\r
+vt 0.734147 0.532889 -0.167330\r
+vt 0.734438 0.534830 -0.167330\r
+vt 0.734781 0.537077 -0.167330\r
+vt 0.735176 0.539627 -0.167330\r
+vt 0.747639 0.526387 -0.167330\r
+vt 0.747832 0.527423 -0.167330\r
+vt 0.748083 0.528738 -0.167330\r
+vt 0.748397 0.530354 -0.167330\r
+vt 0.748776 0.532273 -0.167330\r
+vt 0.749218 0.534495 -0.167330\r
+vt 0.749724 0.537020 -0.167330\r
+vt 0.761738 0.523137 -0.167330\r
+vt 0.761999 0.524169 -0.167330\r
+vt 0.762330 0.525468 -0.167330\r
+vt 0.762739 0.527061 -0.167330\r
+vt 0.763225 0.528953 -0.167330\r
+vt 0.763790 0.531144 -0.167330\r
+vt 0.764434 0.533640 -0.167330\r
+vt 0.775879 0.518984 -0.167330\r
+vt 0.776241 0.519981 -0.167330\r
+vt 0.776691 0.521243 -0.167330\r
+vt 0.777234 0.522798 -0.167330\r
+vt 0.777866 0.524654 -0.167330\r
+vt 0.778585 0.526814 -0.167330\r
+vt 0.779384 0.529280 -0.167330\r
+vt 0.400615 0.554060 -0.167330\r
+vt 0.418379 0.553880 -0.167330\r
+vt 0.400783 0.565739 -0.167330\r
+vt 0.418490 0.565568 -0.167330\r
+vt 0.400935 0.576865 -0.167330\r
+vt 0.418596 0.576698 -0.167330\r
+vt 0.401073 0.587452 -0.167330\r
+vt 0.418699 0.587286 -0.167330\r
+vt 0.401201 0.597520 -0.167330\r
+vt 0.418801 0.597351 -0.167330\r
+vt 0.401321 0.607091 -0.167330\r
+vt 0.418907 0.606916 -0.167330\r
+vt 0.401437 0.616187 -0.167330\r
+vt 0.419020 0.616005 -0.167330\r
+vt 0.435655 0.553833 -0.167330\r
+vt 0.435702 0.565516 -0.167330\r
+vt 0.435755 0.576638 -0.167330\r
+vt 0.435814 0.587215 -0.167330\r
+vt 0.435879 0.597267 -0.167330\r
+vt 0.435951 0.606815 -0.167330\r
+vt 0.436029 0.615883 -0.167330\r
+vt 0.452551 0.553896 -0.167330\r
+vt 0.452531 0.565561 -0.167330\r
+vt 0.452528 0.576663 -0.167330\r
+vt 0.452539 0.587220 -0.167330\r
+vt 0.452562 0.597253 -0.167330\r
+vt 0.452593 0.606781 -0.167330\r
+vt 0.452630 0.615830 -0.167330\r
+vt 0.436112 0.624494 -0.167330\r
+vt 0.452668 0.624426 -0.167330\r
+vt 0.436154 0.632679 -0.167330\r
+vt 0.452701 0.632601 -0.167330\r
+vt 0.436189 0.640456 -0.167330\r
+vt 0.452731 0.640395 -0.167330\r
+vt 0.436203 0.647901 -0.167330\r
+vt 0.452759 0.647857 -0.167330\r
+vt 0.436223 0.655088 -0.167330\r
+vt 0.452787 0.655050 -0.167330\r
+vt 0.469158 0.554053 -0.167330\r
+vt 0.469071 0.565684 -0.167330\r
+vt 0.469012 0.576756 -0.167330\r
+vt 0.468976 0.587286 -0.167330\r
+vt 0.468959 0.597294 -0.167330\r
+vt 0.468955 0.606800 -0.167330\r
+vt 0.468962 0.615830 -0.167330\r
+vt 0.468975 0.624411 -0.167330\r
+vt 0.468992 0.632574 -0.167330\r
+vt 0.469013 0.640360 -0.167330\r
+vt 0.469036 0.647816 -0.167330\r
+vt 0.469061 0.655000 -0.167330\r
+vt 0.485547 0.554292 -0.167330\r
+vt 0.485397 0.565876 -0.167330\r
+vt 0.485288 0.576906 -0.167330\r
+vt 0.485210 0.587401 -0.167330\r
+vt 0.485158 0.597378 -0.167330\r
+vt 0.485125 0.606858 -0.167330\r
+vt 0.485107 0.615865 -0.167330\r
+vt 0.485101 0.624427 -0.167330\r
+vt 0.485102 0.632575 -0.167330\r
+vt 0.485111 0.640348 -0.167330\r
+vt 0.485125 0.647791 -0.167330\r
+vt 0.485144 0.654962 -0.167330\r
+vt 0.501779 0.554600 -0.167330\r
+vt 0.501576 0.566122 -0.167330\r
+vt 0.501424 0.577102 -0.167330\r
+vt 0.501312 0.587553 -0.167330\r
+vt 0.501231 0.597494 -0.167330\r
+vt 0.501175 0.606944 -0.167330\r
+vt 0.501138 0.615926 -0.167330\r
+vt 0.501115 0.624466 -0.167330\r
+vt 0.501104 0.632596 -0.167330\r
+vt 0.501102 0.640353 -0.167330\r
+vt 0.501108 0.647782 -0.167330\r
+vt 0.501119 0.654941 -0.167330\r
+vt 0.517911 0.554941 -0.167330\r
+vt 0.517669 0.566392 -0.167330\r
+vt 0.517486 0.577313 -0.167330\r
+vt 0.517349 0.587717 -0.167330\r
+vt 0.517248 0.597619 -0.167330\r
+vt 0.517176 0.607037 -0.167330\r
+vt 0.517125 0.615993 -0.167330\r
+vt 0.517091 0.624513 -0.167330\r
+vt 0.517071 0.632626 -0.167330\r
+vt 0.517062 0.640369 -0.167330\r
+vt 0.517060 0.647786 -0.167330\r
+vt 0.517066 0.654936 -0.167330\r
+vt 0.534001 0.555315 -0.167330\r
+vt 0.533736 0.566685 -0.167330\r
+vt 0.533536 0.577541 -0.167330\r
+vt 0.533386 0.587891 -0.167330\r
+vt 0.533276 0.597751 -0.167330\r
+vt 0.533197 0.607135 -0.167330\r
+vt 0.533140 0.616064 -0.167330\r
+vt 0.533102 0.624563 -0.167330\r
+vt 0.533079 0.632659 -0.167330\r
+vt 0.533066 0.640389 -0.167330\r
+vt 0.533062 0.647797 -0.167330\r
+vt 0.533065 0.654939 -0.167330\r
+vt 0.550112 0.555700 -0.167330\r
+vt 0.549844 0.566981 -0.167330\r
+vt 0.549644 0.577766 -0.167330\r
+vt 0.549497 0.588060 -0.167330\r
+vt 0.549390 0.597875 -0.167330\r
+vt 0.549315 0.607224 -0.167330\r
+vt 0.549263 0.616126 -0.167330\r
+vt 0.549229 0.624604 -0.167330\r
+vt 0.549209 0.632686 -0.167330\r
+vt 0.549199 0.640406 -0.167330\r
+vt 0.549198 0.647807 -0.167330\r
+vt 0.549203 0.654944 -0.167330\r
+vt 0.566323 0.556070 -0.167330\r
+vt 0.566075 0.567259 -0.167330\r
+vt 0.565895 0.577970 -0.167330\r
+vt 0.565767 0.588206 -0.167330\r
+vt 0.565679 0.597975 -0.167330\r
+vt 0.565620 0.607289 -0.167330\r
+vt 0.565584 0.616166 -0.167330\r
+vt 0.565564 0.624625 -0.167330\r
+vt 0.565556 0.632694 -0.167330\r
+vt 0.565558 0.640406 -0.167330\r
+vt 0.565566 0.647804 -0.167330\r
+vt 0.565579 0.654941 -0.167330\r
+vt 0.582727 0.556405 -0.167330\r
+vt 0.582526 0.567501 -0.167330\r
+vt 0.582388 0.578137 -0.167330\r
+vt 0.582299 0.588314 -0.167330\r
+vt 0.582246 0.598038 -0.167330\r
+vt 0.582219 0.607319 -0.167330\r
+vt 0.582212 0.616170 -0.167330\r
+vt 0.582218 0.624613 -0.167330\r
+vt 0.582233 0.632671 -0.167330\r
+vt 0.582255 0.640378 -0.167330\r
+vt 0.582282 0.647775 -0.167330\r
+vt 0.582311 0.654915 -0.167330\r
+vt 0.599444 0.556686 -0.167330\r
+vt 0.599317 0.567690 -0.167330\r
+vt 0.599245 0.578254 -0.167330\r
+vt 0.599216 0.588374 -0.167330\r
+vt 0.599216 0.598054 -0.167330\r
+vt 0.599238 0.607302 -0.167330\r
+vt 0.599274 0.616130 -0.167330\r
+vt 0.599319 0.624556 -0.167330\r
+vt 0.599370 0.632605 -0.167330\r
+vt 0.599423 0.640306 -0.167330\r
+vt 0.599477 0.647702 -0.167330\r
+vt 0.599531 0.654845 -0.167330\r
+vt 0.616010 0.556899 -0.167330\r
+vt 0.615981 0.567820 -0.167330\r
+vt 0.615996 0.578316 -0.167330\r
+vt 0.616045 0.588383 -0.167330\r
+vt 0.616116 0.598022 -0.167330\r
+vt 0.616200 0.607238 -0.167330\r
+vt 0.616293 0.616042 -0.167330\r
+vt 0.616388 0.624451 -0.167330\r
+vt 0.616483 0.632487 -0.167330\r
+vt 0.616575 0.640180 -0.167330\r
+vt 0.616664 0.647571 -0.167330\r
+vt 0.616749 0.654710 -0.167330\r
+vt 0.631991 0.556975 -0.167330\r
+vt 0.632073 0.567823 -0.167330\r
+vt 0.632191 0.578261 -0.167330\r
+vt 0.632332 0.588283 -0.167330\r
+vt 0.632486 0.597888 -0.167330\r
+vt 0.632644 0.607079 -0.167330\r
+vt 0.632801 0.615866 -0.167330\r
+vt 0.632953 0.624264 -0.167330\r
+vt 0.633098 0.632293 -0.167330\r
+vt 0.633234 0.639982 -0.167330\r
+vt 0.633361 0.647371 -0.167330\r
+vt 0.633478 0.654511 -0.167330\r
+vt 0.647526 0.556876 -0.167330\r
+vt 0.647737 0.567658 -0.167330\r
+vt 0.647973 0.578048 -0.167330\r
+vt 0.648220 0.588035 -0.167330\r
+vt 0.648469 0.597616 -0.167330\r
+vt 0.648712 0.606793 -0.167330\r
+vt 0.648943 0.615574 -0.167330\r
+vt 0.649160 0.623970 -0.167330\r
+vt 0.649360 0.632002 -0.167330\r
+vt 0.649544 0.639697 -0.167330\r
+vt 0.649711 0.647094 -0.167330\r
+vt 0.649861 0.654243 -0.167330\r
+vt 0.662731 0.556569 -0.167330\r
+vt 0.663090 0.567294 -0.167330\r
+vt 0.663462 0.577643 -0.167330\r
+vt 0.663833 0.587606 -0.167330\r
+vt 0.664192 0.597176 -0.167330\r
+vt 0.664533 0.606352 -0.167330\r
+vt 0.664849 0.615139 -0.167330\r
+vt 0.665139 0.623548 -0.167330\r
+vt 0.665401 0.631597 -0.167330\r
+vt 0.665637 0.639311 -0.167330\r
+vt 0.665848 0.646730 -0.167330\r
+vt 0.666035 0.653901 -0.167330\r
+vt 0.677701 0.556020 -0.167330\r
+vt 0.678234 0.566694 -0.167330\r
+vt 0.678766 0.577014 -0.167330\r
+vt 0.679281 0.586966 -0.167330\r
+vt 0.679769 0.596538 -0.167330\r
+vt 0.680222 0.605729 -0.167330\r
+vt 0.680636 0.614539 -0.167330\r
+vt 0.681010 0.622978 -0.167330\r
+vt 0.681343 0.631060 -0.167330\r
+vt 0.681638 0.638811 -0.167330\r
+vt 0.681897 0.646268 -0.167330\r
+vt 0.682124 0.653479 -0.167330\r
+vt 0.692521 0.555187 -0.167330\r
+vt 0.693258 0.565819 -0.167330\r
+vt 0.693978 0.576122 -0.167330\r
+vt 0.694663 0.586076 -0.167330\r
+vt 0.695302 0.595669 -0.167330\r
+vt 0.695888 0.604893 -0.167330\r
+vt 0.696417 0.613746 -0.167330\r
+vt 0.696889 0.622235 -0.167330\r
+vt 0.697304 0.630373 -0.167330\r
+vt 0.697665 0.638182 -0.167330\r
+vt 0.697978 0.645698 -0.167330\r
+vt 0.698247 0.652968 -0.167330\r
+vt 0.707268 0.554011 -0.167330\r
+vt 0.708247 0.564610 -0.167330\r
+vt 0.709190 0.574910 -0.167330\r
+vt 0.710077 0.584885 -0.167330\r
+vt 0.710897 0.594518 -0.167330\r
+vt 0.711641 0.603798 -0.167330\r
+vt 0.712307 0.612720 -0.167330\r
+vt 0.712895 0.621287 -0.167330\r
+vt 0.713406 0.629507 -0.167330\r
+vt 0.713846 0.637403 -0.167330\r
+vt 0.714219 0.645006 -0.167330\r
+vt 0.714534 0.652363 -0.167330\r
+vt 0.722017 0.552436 -0.167330\r
+vt 0.723288 0.563012 -0.167330\r
+vt 0.724498 0.573323 -0.167330\r
+vt 0.725628 0.583338 -0.167330\r
+vt 0.726664 0.593035 -0.167330\r
+vt 0.727600 0.602398 -0.167330\r
+vt 0.728432 0.611417 -0.167330\r
+vt 0.729162 0.620093 -0.167330\r
+vt 0.729790 0.628431 -0.167330\r
+vt 0.730324 0.636448 -0.167330\r
+vt 0.730769 0.644175 -0.167330\r
+vt 0.731135 0.651654 -0.167330\r
+vt 0.736852 0.550373 -0.167330\r
+vt 0.738476 0.560938 -0.167330\r
+vt 0.740009 0.571279 -0.167330\r
+vt 0.741430 0.581358 -0.167330\r
+vt 0.742729 0.591145 -0.167330\r
+vt 0.743899 0.600619 -0.167330\r
+vt 0.744938 0.609770 -0.167330\r
+vt 0.745845 0.618593 -0.167330\r
+vt 0.746624 0.627090 -0.167330\r
+vt 0.747278 0.635277 -0.167330\r
+vt 0.747815 0.643178 -0.167330\r
+vt 0.748241 0.650833 -0.167330\r
+vt 0.751866 0.547702 -0.167330\r
+vt 0.753930 0.558275 -0.167330\r
+vt 0.755850 0.568674 -0.167330\r
+vt 0.757616 0.578844 -0.167330\r
+vt 0.759232 0.588747 -0.167330\r
+vt 0.760692 0.598364 -0.167330\r
+vt 0.761993 0.607682 -0.167330\r
+vt 0.763132 0.616693 -0.167330\r
+vt 0.764113 0.625400 -0.167330\r
+vt 0.764938 0.633815 -0.167330\r
+vt 0.765611 0.641962 -0.167330\r
+vt 0.766131 0.649878 -0.167330\r
+vt 0.767156 0.544244 -0.167330\r
+vt 0.774339 0.575681 -0.167330\r
+vt 0.772197 0.565384 -0.167330\r
+vt 0.776331 0.585719 -0.167330\r
+vt 0.778152 0.595498 -0.167330\r
+vt 0.779789 0.605010 -0.167330\r
+vt 0.781237 0.614247 -0.167330\r
+vt 0.782499 0.623208 -0.167330\r
+vt 0.783583 0.631909 -0.167330\r
+vt 0.784506 0.640386 -0.167330\r
+vt 0.785284 0.648694 -0.167330\r
+vt 0.782737 0.539723 -0.167330\r
+vt 0.791689 0.571790 -0.167330\r
+vt 0.789065 0.561522 -0.167330\r
+vt 0.794170 0.581905 -0.167330\r
+vt 0.796463 0.591837 -0.167330\r
+vt 0.798540 0.601557 -0.167330\r
+vt 0.800386 0.611042 -0.167330\r
+vt 0.802000 0.620273 -0.167330\r
+vt 0.803388 0.629240 -0.167330\r
+vt 0.804570 0.637944 -0.167330\r
+vt 0.419347 0.681492 -0.167330\r
+vt 0.401810 0.681697 -0.167330\r
+vt 0.401737 0.675265 -0.167330\r
+vt 0.419317 0.675053 -0.167330\r
+vt 0.419382 0.687920 -0.167330\r
+vt 0.401876 0.688120 -0.167330\r
+vt 0.419419 0.694284 -0.167330\r
+vt 0.401938 0.694482 -0.167330\r
+vt 0.419456 0.700466 -0.167330\r
+vt 0.401994 0.700660 -0.167330\r
+vt 0.419493 0.706285 -0.167330\r
+vt 0.402045 0.706475 -0.167330\r
+vt 0.419527 0.711510 -0.167330\r
+vt 0.402089 0.711696 -0.167330\r
+vt 0.419558 0.715873 -0.167330\r
+vt 0.402125 0.716055 -0.167330\r
+vt 0.419586 0.719109 -0.167330\r
+vt 0.402150 0.719285 -0.167330\r
+vt 0.419612 0.721098 -0.167330\r
+vt 0.402164 0.721270 -0.167330\r
+vt 0.436301 0.674925 -0.167330\r
+vt 0.419264 0.668579 -0.167330\r
+vt 0.436279 0.668491 -0.167330\r
+vt 0.436325 0.681339 -0.167330\r
+vt 0.436351 0.687751 -0.167330\r
+vt 0.436379 0.694105 -0.167330\r
+vt 0.436408 0.700280 -0.167330\r
+vt 0.436439 0.706098 -0.167330\r
+vt 0.436469 0.711325 -0.167330\r
+vt 0.436500 0.715693 -0.167330\r
+vt 0.436529 0.718933 -0.167330\r
+vt 0.436560 0.720927 -0.167330\r
+vt 0.452815 0.661885 -0.167330\r
+vt 0.436248 0.661936 -0.167330\r
+vt 0.452841 0.668412 -0.167330\r
+vt 0.452865 0.674821 -0.167330\r
+vt 0.452889 0.681214 -0.167330\r
+vt 0.452913 0.687609 -0.167330\r
+vt 0.452939 0.693951 -0.167330\r
+vt 0.452967 0.700119 -0.167330\r
+vt 0.452997 0.705933 -0.167330\r
+vt 0.453028 0.711158 -0.167330\r
+vt 0.453060 0.715527 -0.167330\r
+vt 0.453092 0.718771 -0.167330\r
+vt 0.453125 0.720770 -0.167330\r
+vt 0.469087 0.661823 -0.167330\r
+vt 0.469112 0.668335 -0.167330\r
+vt 0.469136 0.674730 -0.167330\r
+vt 0.469160 0.681109 -0.167330\r
+vt 0.469186 0.687491 -0.167330\r
+vt 0.469214 0.693823 -0.167330\r
+vt 0.469244 0.699983 -0.167330\r
+vt 0.469276 0.705791 -0.167330\r
+vt 0.469310 0.711014 -0.167330\r
+vt 0.469344 0.715382 -0.167330\r
+vt 0.469377 0.718627 -0.167330\r
+vt 0.469410 0.720628 -0.167330\r
+vt 0.485166 0.661773 -0.167330\r
+vt 0.485188 0.668272 -0.167330\r
+vt 0.485213 0.674655 -0.167330\r
+vt 0.485239 0.681023 -0.167330\r
+vt 0.485267 0.687395 -0.167330\r
+vt 0.485299 0.693718 -0.167330\r
+vt 0.485333 0.699870 -0.167330\r
+vt 0.485368 0.705673 -0.167330\r
+vt 0.485406 0.710891 -0.167330\r
+vt 0.485442 0.715257 -0.167330\r
+vt 0.485476 0.718502 -0.167330\r
+vt 0.485507 0.720505 -0.167330\r
+vt 0.501136 0.661740 -0.167330\r
+vt 0.501156 0.668228 -0.167330\r
+vt 0.501181 0.674600 -0.167330\r
+vt 0.501209 0.680957 -0.167330\r
+vt 0.501241 0.687319 -0.167330\r
+vt 0.501278 0.693632 -0.167330\r
+vt 0.501317 0.699777 -0.167330\r
+vt 0.501358 0.705573 -0.167330\r
+vt 0.501399 0.710787 -0.167330\r
+vt 0.501438 0.715150 -0.167330\r
+vt 0.501471 0.718394 -0.167330\r
+vt 0.501498 0.720397 -0.167330\r
+vt 0.517079 0.661726 -0.167330\r
+vt 0.517098 0.668208 -0.167330\r
+vt 0.517123 0.674573 -0.167330\r
+vt 0.517154 0.680925 -0.167330\r
+vt 0.517191 0.687281 -0.167330\r
+vt 0.517232 0.693588 -0.167330\r
+vt 0.517277 0.699726 -0.167330\r
+vt 0.517322 0.705514 -0.167330\r
+vt 0.517367 0.710721 -0.167330\r
+vt 0.517407 0.715077 -0.167330\r
+vt 0.517439 0.718316 -0.167330\r
+vt 0.517461 0.720317 -0.167330\r
+vt 0.533077 0.661724 -0.167330\r
+vt 0.533096 0.668201 -0.167330\r
+vt 0.533124 0.674562 -0.167330\r
+vt 0.533158 0.680909 -0.167330\r
+vt 0.533198 0.687260 -0.167330\r
+vt 0.533243 0.693561 -0.167330\r
+vt 0.533291 0.699692 -0.167330\r
+vt 0.533339 0.705473 -0.167330\r
+vt 0.533385 0.710672 -0.167330\r
+vt 0.533425 0.715021 -0.167330\r
+vt 0.533455 0.718254 -0.167330\r
+vt 0.533472 0.720251 -0.167330\r
+vt 0.549217 0.661727 -0.167330\r
+vt 0.549239 0.668202 -0.167330\r
+vt 0.549270 0.674562 -0.167330\r
+vt 0.549307 0.680906 -0.167330\r
+vt 0.549350 0.687254 -0.167330\r
+vt 0.549397 0.693551 -0.167330\r
+vt 0.549447 0.699676 -0.167330\r
+vt 0.549496 0.705451 -0.167330\r
+vt 0.549542 0.710643 -0.167330\r
+vt 0.549581 0.714985 -0.167330\r
+vt 0.549609 0.718213 -0.167330\r
+vt 0.549622 0.720206 -0.167330\r
+vt 0.565599 0.661725 -0.167330\r
+vt 0.565627 0.668203 -0.167330\r
+vt 0.565662 0.674565 -0.167330\r
+vt 0.565703 0.680911 -0.167330\r
+vt 0.565748 0.687259 -0.167330\r
+vt 0.565796 0.693555 -0.167330\r
+vt 0.565845 0.699677 -0.167330\r
+vt 0.565893 0.705447 -0.167330\r
+vt 0.565937 0.710634 -0.167330\r
+vt 0.565974 0.714970 -0.167330\r
+vt 0.565999 0.718191 -0.167330\r
+vt 0.566011 0.720180 -0.167330\r
+vt 0.582343 0.661705 -0.167330\r
+vt 0.582380 0.668189 -0.167330\r
+vt 0.582420 0.674557 -0.167330\r
+vt 0.582464 0.680909 -0.167330\r
+vt 0.582510 0.687262 -0.167330\r
+vt 0.582557 0.693560 -0.167330\r
+vt 0.582603 0.699684 -0.167330\r
+vt 0.582647 0.705452 -0.167330\r
+vt 0.582686 0.710636 -0.167330\r
+vt 0.582719 0.714968 -0.167330\r
+vt 0.582743 0.718184 -0.167330\r
+vt 0.582755 0.720169 -0.167330\r
+vt 0.599583 0.661640 -0.167330\r
+vt 0.599633 0.668132 -0.167330\r
+vt 0.599681 0.674509 -0.167330\r
+vt 0.599728 0.680870 -0.167330\r
+vt 0.599773 0.687231 -0.167330\r
+vt 0.599815 0.693537 -0.167330\r
+vt 0.599855 0.699667 -0.167330\r
+vt 0.599890 0.705441 -0.167330\r
+vt 0.599922 0.710627 -0.167330\r
+vt 0.599949 0.714960 -0.167330\r
+vt 0.599972 0.718177 -0.167330\r
+vt 0.599992 0.720160 -0.167330\r
+vt 0.616826 0.661504 -0.167330\r
+vt 0.616893 0.667996 -0.167330\r
+vt 0.616952 0.674375 -0.167330\r
+vt 0.617005 0.680740 -0.167330\r
+vt 0.617051 0.687108 -0.167330\r
+vt 0.617092 0.693424 -0.167330\r
+vt 0.617126 0.699565 -0.167330\r
+vt 0.617155 0.705352 -0.167330\r
+vt 0.617179 0.710553 -0.167330\r
+vt 0.617201 0.714900 -0.167330\r
+vt 0.617225 0.718130 -0.167330\r
+vt 0.617253 0.720123 -0.167330\r
+vt 0.633580 0.661306 -0.167330\r
+vt 0.633667 0.667802 -0.167330\r
+vt 0.633742 0.674186 -0.167330\r
+vt 0.633806 0.680561 -0.167330\r
+vt 0.633860 0.686941 -0.167330\r
+vt 0.633906 0.693272 -0.167330\r
+vt 0.633942 0.699432 -0.167330\r
+vt 0.633971 0.705239 -0.167330\r
+vt 0.633994 0.710462 -0.167330\r
+vt 0.634015 0.714830 -0.167330\r
+vt 0.634038 0.718077 -0.167330\r
+vt 0.634068 0.720085 -0.167330\r
+vt 0.649992 0.661049 -0.167330\r
+vt 0.650102 0.667557 -0.167330\r
+vt 0.650196 0.673957 -0.167330\r
+vt 0.650276 0.680348 -0.167330\r
+vt 0.650343 0.686749 -0.167330\r
+vt 0.650398 0.693103 -0.167330\r
+vt 0.650441 0.699287 -0.167330\r
+vt 0.650474 0.705121 -0.167330\r
+vt 0.650499 0.710370 -0.167330\r
+vt 0.650520 0.714763 -0.167330\r
+vt 0.650542 0.718031 -0.167330\r
+vt 0.650572 0.720055 -0.167330\r
+vt 0.666196 0.660731 -0.167330\r
+vt 0.666332 0.667263 -0.167330\r
+vt 0.666447 0.673688 -0.167330\r
+vt 0.666545 0.680107 -0.167330\r
+vt 0.666628 0.686537 -0.167330\r
+vt 0.666695 0.692922 -0.167330\r
+vt 0.666747 0.699139 -0.167330\r
+vt 0.666786 0.705004 -0.167330\r
+vt 0.666814 0.710284 -0.167330\r
+vt 0.666835 0.714704 -0.167330\r
+vt 0.666856 0.717996 -0.167330\r
+vt 0.666881 0.720037 -0.167330\r
+vt 0.682316 0.660347 -0.167330\r
+vt 0.682478 0.666917 -0.167330\r
+vt 0.682617 0.673380 -0.167330\r
+vt 0.682734 0.679837 -0.167330\r
+vt 0.682832 0.686307 -0.167330\r
+vt 0.682911 0.692732 -0.167330\r
+vt 0.682971 0.698989 -0.167330\r
+vt 0.683015 0.704893 -0.167330\r
+vt 0.683045 0.710207 -0.167330\r
+vt 0.683066 0.714658 -0.167330\r
+vt 0.683083 0.717974 -0.167330\r
+vt 0.683101 0.720034 -0.167330\r
+vt 0.698473 0.659893 -0.167330\r
+vt 0.698661 0.666517 -0.167330\r
+vt 0.698820 0.673033 -0.167330\r
+vt 0.698954 0.679542 -0.167330\r
+vt 0.699064 0.686062 -0.167330\r
+vt 0.699152 0.692536 -0.167330\r
+vt 0.699217 0.698840 -0.167330\r
+vt 0.699263 0.704787 -0.167330\r
+vt 0.699291 0.710140 -0.167330\r
+vt 0.699308 0.714624 -0.167330\r
+vt 0.699317 0.717966 -0.167330\r
+vt 0.699323 0.720044 -0.167330\r
+vt 0.714792 0.659371 -0.167330\r
+vt 0.715003 0.666074 -0.167330\r
+vt 0.715178 0.672665 -0.167330\r
+vt 0.715321 0.679246 -0.167330\r
+vt 0.715436 0.685834 -0.167330\r
+vt 0.715522 0.692369 -0.167330\r
+vt 0.715583 0.698727 -0.167330\r
+vt 0.715621 0.704722 -0.167330\r
+vt 0.715640 0.710114 -0.167330\r
+vt 0.715645 0.714628 -0.167330\r
+vt 0.715641 0.717993 -0.167330\r
+vt 0.715631 0.720085 -0.167330\r
+vt 0.731425 0.658779 -0.167330\r
+vt 0.731653 0.665590 -0.167330\r
+vt 0.731832 0.672282 -0.167330\r
+vt 0.731969 0.678956 -0.167330\r
+vt 0.732069 0.685628 -0.167330\r
+vt 0.732135 0.692236 -0.167330\r
+vt 0.732172 0.698656 -0.167330\r
+vt 0.732185 0.704699 -0.167330\r
+vt 0.732179 0.710129 -0.167330\r
+vt 0.732162 0.714671 -0.167330\r
+vt 0.732136 0.718054 -0.167330\r
+vt 0.732106 0.720157 -0.167330\r
+vt 0.748561 0.658126 -0.167330\r
+vt 0.748791 0.665093 -0.167330\r
+vt 0.748951 0.671927 -0.167330\r
+vt 0.749051 0.678727 -0.167330\r
+vt 0.749100 0.685505 -0.167330\r
+vt 0.749109 0.692200 -0.167330\r
+vt 0.749087 0.698683 -0.167330\r
+vt 0.749045 0.704771 -0.167330\r
+vt 0.748994 0.710229 -0.167330\r
+vt 0.748938 0.714787 -0.167330\r
+vt 0.748882 0.718177 -0.167330\r
+vt 0.748827 0.720281 -0.167330\r
+vt 0.766486 0.657432 -0.167330\r
+vt 0.766689 0.664641 -0.167330\r
+vt 0.766773 0.671691 -0.167330\r
+vt 0.766764 0.678672 -0.167330\r
+vt 0.766688 0.685589 -0.167330\r
+vt 0.766567 0.692381 -0.167330\r
+vt 0.766424 0.698921 -0.167330\r
+vt 0.766278 0.705033 -0.167330\r
+vt 0.766145 0.710491 -0.167330\r
+vt 0.766031 0.715036 -0.167330\r
+vt 0.765937 0.718408 -0.167330\r
+vt 0.765857 0.720494 -0.167330\r
+vt 0.785749 0.656709 -0.167330\r
+vt 0.785835 0.664380 -0.167330\r
+vt 0.785671 0.671797 -0.167330\r
+vt 0.785361 0.679060 -0.167330\r
+vt 0.784995 0.686151 -0.167330\r
+vt 0.784604 0.693030 -0.167330\r
+vt 0.784222 0.699589 -0.167330\r
+vt 0.783882 0.705664 -0.167330\r
+vt 0.783608 0.711052 -0.167330\r
+vt 0.783411 0.715514 -0.167330\r
+vt 0.783282 0.718813 -0.167330\r
+vt 0.783199 0.720847 -0.167330\r
+vt 0.805767 0.673363 -0.167330\r
+vt 0.804936 0.680684 -0.167330\r
+vt 0.804064 0.687805 -0.167330\r
+vt 0.803190 0.694656 -0.167330\r
+vt 0.802366 0.701118 -0.167330\r
+vt 0.801651 0.707031 -0.167330\r
+vt 0.801095 0.712208 -0.167330\r
+vt 0.800731 0.716443 -0.167330\r
+vt 0.800569 0.719532 -0.167330\r
+vt 0.800598 0.721398 -0.167330\r
+vt 0.419637 0.722657 -0.167330\r
+vt 0.402175 0.722825 -0.167330\r
+vt 0.419660 0.724398 -0.167330\r
+vt 0.402187 0.724562 -0.167330\r
+vt 0.419682 0.726785 -0.167330\r
+vt 0.402204 0.726944 -0.167330\r
+vt 0.419704 0.730414 0.165099\r
+vt 0.402232 0.730566 0.164927\r
+vt 0.614075 0.451957 0.000000\r
+vt 0.627428 0.453607 0.000000\r
+vt 0.627175 0.457976 0.000000\r
+vt 0.613227 0.456254 0.000000\r
+vt 0.615261 0.445955 0.000000\r
+vt 0.627781 0.447504 0.000000\r
+vt 0.616852 0.437915 0.000000\r
+vt 0.628254 0.439327 0.000000\r
+vt 0.618913 0.427513 0.000000\r
+vt 0.628869 0.428748 0.000000\r
+vt 0.621509 0.414431 0.000000\r
+vt 0.629645 0.415443 0.000000\r
+vt 0.624703 0.398355 0.000000\r
+vt 0.630602 0.399090 0.000000\r
+vt 0.628561 0.378970 0.000000\r
+vt 0.436592 0.722492 -0.167330\r
+vt 0.436621 0.724239 -0.167330\r
+vt 0.436646 0.726632 -0.167330\r
+vt 0.436670 0.730268 0.165512\r
+vt 0.631763 0.379370 0.000000\r
+vt 0.633148 0.355967 0.000000\r
+vt 0.601410 0.448663 0.000000\r
+vt 0.599996 0.452814 0.000000\r
+vt 0.603388 0.442864 0.000000\r
+vt 0.606039 0.435098 0.000000\r
+vt 0.609473 0.425051 0.000000\r
+vt 0.453159 0.722340 -0.167330\r
+vt 0.453190 0.724091 -0.167330\r
+vt 0.453219 0.726489 -0.167330\r
+vt 0.453246 0.730130 0.165995\r
+vt 0.613795 0.412417 0.000000\r
+vt 0.619111 0.396892 0.000000\r
+vt 0.625526 0.378176 0.000000\r
+vt 0.589534 0.443835 0.000000\r
+vt 0.587588 0.447774 0.000000\r
+vt 0.592255 0.438335 0.000000\r
+vt 0.595903 0.430970 0.000000\r
+vt 0.469443 0.722202 -0.167330\r
+vt 0.469474 0.723957 -0.167330\r
+vt 0.469505 0.726358 -0.167330\r
+vt 0.469536 0.730000 0.166449\r
+vt 0.600624 0.421445 0.000000\r
+vt 0.606565 0.409468 0.000000\r
+vt 0.613870 0.394753 0.000000\r
+vt 0.622683 0.377014 0.000000\r
+vt 0.578550 0.437581 0.000000\r
+vt 0.576109 0.441240 0.000000\r
+vt 0.581961 0.432471 0.000000\r
+vt 0.485537 0.722080 -0.167330\r
+vt 0.485566 0.723837 -0.167330\r
+vt 0.485597 0.726239 -0.167330\r
+vt 0.485633 0.729881 0.166814\r
+vt 0.586531 0.425629 0.000000\r
+vt 0.592445 0.416780 0.000000\r
+vt 0.599883 0.405655 0.000000\r
+vt 0.609027 0.391987 0.000000\r
+vt 0.620055 0.375512 0.000000\r
+vt 0.568568 0.430017 0.000000\r
+vt 0.565677 0.433336 0.000000\r
+vt 0.501522 0.721974 -0.167330\r
+vt 0.501548 0.723732 -0.167330\r
+vt 0.501579 0.726133 -0.167330\r
+vt 0.501618 0.729773 0.167050\r
+vt 0.572605 0.425380 0.000000\r
+vt 0.578014 0.419171 0.000000\r
+vt 0.585011 0.411142 0.000000\r
+vt 0.593811 0.401047 0.000000\r
+vt 0.604626 0.388646 0.000000\r
+vt 0.617668 0.373698 0.000000\r
+vt 0.559692 0.421258 0.000000\r
+vt 0.517479 0.721892 -0.167330\r
+vt 0.517500 0.723647 -0.167330\r
+vt 0.517528 0.726045 -0.167330\r
+vt 0.517570 0.729678 0.167127\r
+vt 0.556402 0.424185 0.000000\r
+vt 0.564286 0.417170 0.000000\r
+vt 0.570440 0.411696 0.000000\r
+vt 0.578401 0.404616 0.000000\r
+vt 0.588412 0.395714 0.000000\r
+vt 0.600713 0.384779 0.000000\r
+vt 0.615545 0.371600 0.000000\r
+vt 0.533485 0.721824 -0.167330\r
+vt 0.533502 0.723576 -0.167330\r
+vt 0.533528 0.725970 -0.167330\r
+vt 0.533570 0.729596 0.167021\r
+vt 0.548391 0.413908 0.000000\r
+vt 0.552025 0.411422 0.000000\r
+vt 0.557100 0.407951 0.000000\r
+vt 0.563898 0.403302 0.000000\r
+vt 0.572691 0.397288 0.000000\r
+vt 0.583748 0.389727 0.000000\r
+vt 0.597333 0.380439 0.000000\r
+vt 0.549630 0.721775 -0.167330\r
+vt 0.549644 0.723523 -0.167330\r
+vt 0.549667 0.725912 -0.167330\r
+vt 0.549709 0.729530 0.166720\r
+vt 0.613712 0.369244 0.000000\r
+vt 0.541752 0.402626 0.000000\r
+vt 0.545672 0.400626 0.000000\r
+vt 0.551145 0.397831 0.000000\r
+vt 0.558476 0.394087 0.000000\r
+vt 0.567958 0.389244 0.000000\r
+vt 0.579881 0.383156 0.000000\r
+vt 0.566016 0.721744 -0.167330\r
+vt 0.566028 0.723488 -0.167330\r
+vt 0.566049 0.725870 -0.167330\r
+vt 0.566088 0.729480 0.166235\r
+vt 0.594531 0.375675 0.000000\r
+vt 0.612192 0.366660 0.000000\r
+vt 0.536593 0.390462 0.000000\r
+vt 0.540734 0.388984 0.000000\r
+vt 0.546516 0.386918 0.000000\r
+vt 0.554261 0.384151 0.000000\r
+vt 0.564280 0.380571 0.000000\r
+vt 0.582763 0.721729 -0.167330\r
+vt 0.582776 0.723468 -0.167330\r
+vt 0.582796 0.725845 -0.167330\r
+vt 0.582829 0.729448 0.165625\r
+vt 0.576876 0.376070 0.000000\r
+vt 0.592353 0.370539 0.000000\r
+vt 0.611011 0.363873 0.000000\r
+vt 0.533021 0.377537 0.000000\r
+vt 0.537314 0.376614 0.000000\r
+vt 0.543310 0.375323 0.000000\r
+vt 0.551342 0.373594 0.000000\r
+vt 0.600011 0.721719 -0.167330\r
+vt 0.600030 0.723457 -0.167330\r
+vt 0.600050 0.725834 -0.167330\r
+vt 0.600070 0.729435 0.165024\r
+vt 0.561731 0.371355 0.000000\r
+vt 0.574794 0.368540 0.000000\r
+vt 0.590844 0.365081 0.000000\r
+vt 0.610192 0.360912 0.000000\r
+vt 0.531141 0.363974 0.000000\r
+vt 0.535514 0.363632 0.000000\r
+vt 0.541623 0.363154 0.000000\r
+vt 0.617283 0.721691 -0.167330\r
+vt 0.617310 0.723438 -0.167330\r
+vt 0.617330 0.725825 -0.167330\r
+vt 0.617338 0.729442 0.164592\r
+vt 0.549805 0.362513 0.000000\r
+vt 0.560389 0.361682 0.000000\r
+vt 0.573697 0.360638 0.000000\r
+vt 0.590049 0.359353 0.000000\r
+vt 0.609761 0.357804 0.000000\r
+vt 0.531060 0.349893 0.000000\r
+vt 0.535436 0.350154 0.000000\r
+vt 0.634102 0.721666 -0.167330\r
+vt 0.634131 0.723426 -0.167330\r
+vt 0.634150 0.725830 -0.167330\r
+vt 0.634153 0.729468 0.164214\r
+vt 0.541549 0.350519 0.000000\r
+vt 0.549738 0.351008 0.000000\r
+vt 0.560329 0.351639 0.000000\r
+vt 0.573648 0.352432 0.000000\r
+vt 0.590013 0.353405 0.000000\r
+vt 0.609741 0.354577 0.000000\r
+vt 0.537118 0.336783 0.000000\r
+vt 0.650604 0.721650 -0.167330\r
+vt 0.650632 0.723427 -0.167330\r
+vt 0.650649 0.725849 -0.167330\r
+vt 0.650651 0.729512 0.163760\r
+vt 0.532817 0.335923 0.000000\r
+vt 0.543125 0.337984 0.000000\r
+vt 0.551172 0.339593 0.000000\r
+vt 0.561580 0.341674 0.000000\r
+vt 0.574669 0.344290 0.000000\r
+vt 0.590753 0.347503 0.000000\r
+vt 0.610143 0.351375 0.000000\r
+vt 0.666909 0.721649 -0.167330\r
+vt 0.666932 0.723442 -0.167330\r
+vt 0.666947 0.725884 -0.167330\r
+vt 0.666947 0.729573 0.163177\r
+vt 0.540448 0.324112 0.000000\r
+vt 0.536297 0.322685 0.000000\r
+vt 0.546246 0.326105 0.000000\r
+vt 0.554013 0.328776 0.000000\r
+vt 0.564060 0.332231 0.000000\r
+vt 0.576695 0.336574 0.000000\r
+vt 0.592221 0.341909 0.000000\r
+vt 0.683120 0.721661 -0.167330\r
+vt 0.683136 0.723471 -0.167330\r
+vt 0.683146 0.725934 -0.167330\r
+vt 0.683144 0.729649 0.162461\r
+vt 0.610938 0.348340 0.000000\r
+vt 0.545312 0.312242 0.000000\r
+vt 0.541378 0.310284 0.000000\r
+vt 0.550805 0.314978 0.000000\r
+vt 0.558164 0.318643 0.000000\r
+vt 0.567683 0.323384 0.000000\r
+vt 0.579654 0.329346 0.000000\r
+vt 0.699330 0.721688 -0.167330\r
+vt 0.699335 0.723515 -0.167330\r
+vt 0.699336 0.725998 -0.167330\r
+vt 0.699330 0.729740 0.161630\r
+vt 0.594365 0.336669 0.000000\r
+vt 0.612102 0.345496 0.000000\r
+vt 0.551592 0.301276 0.000000\r
+vt 0.547941 0.298827 0.000000\r
+vt 0.556692 0.304698 0.000000\r
+vt 0.563524 0.309282 0.000000\r
+vt 0.572362 0.315211 0.000000\r
+vt 0.715620 0.721741 -0.167330\r
+vt 0.715610 0.723582 -0.167330\r
+vt 0.715598 0.726081 -0.167330\r
+vt 0.715584 0.729844 0.160717\r
+vt 0.583477 0.322667 0.000000\r
+vt 0.597136 0.331827 0.000000\r
+vt 0.613604 0.342869 0.000000\r
+vt 0.559175 0.291316 0.000000\r
+vt 0.555863 0.288420 0.000000\r
+vt 0.563800 0.295360 0.000000\r
+vt 0.569996 0.300779 0.000000\r
+vt 0.732074 0.721821 -0.167330\r
+vt 0.732044 0.723670 -0.167330\r
+vt 0.732014 0.726181 -0.167330\r
+vt 0.731983 0.729960 0.159761\r
+vt 0.578012 0.307788 0.000000\r
+vt 0.588092 0.316601 0.000000\r
+vt 0.600481 0.327429 0.000000\r
+vt 0.615419 0.340482 0.000000\r
+vt 0.567944 0.282462 0.000000\r
+vt 0.565026 0.279170 0.000000\r
+vt 0.572020 0.287061 0.000000\r
+vt 0.748770 0.721944 -0.167330\r
+vt 0.748715 0.723793 -0.167330\r
+vt 0.748663 0.726304 -0.167330\r
+vt 0.748610 0.730087 0.158812\r
+vt 0.577481 0.293221 0.000000\r
+vt 0.584546 0.301189 0.000000\r
+vt 0.593431 0.311208 0.000000\r
+vt 0.604350 0.323519 0.000000\r
+vt 0.617518 0.338360 0.000000\r
+vt 0.575308 0.271184 0.000000\r
+vt 0.577785 0.274819 0.000000\r
+vt 0.765779 0.722139 -0.167330\r
+vt 0.765704 0.723969 -0.167330\r
+vt 0.765629 0.726460 -0.167330\r
+vt 0.765555 0.730223 0.157943\r
+vt 0.581245 0.279896 0.000000\r
+vt 0.585881 0.286696 0.000000\r
+vt 0.591879 0.295492 0.000000\r
+vt 0.599422 0.306553 0.000000\r
+vt 0.608693 0.320144 0.000000\r
+vt 0.619874 0.336528 0.000000\r
+vt 0.586589 0.264569 0.000000\r
+vt 0.783129 0.722444 -0.167330\r
+vt 0.783061 0.724223 -0.167330\r
+vt 0.782992 0.726661 -0.167330\r
+vt 0.782918 0.730368 0.157268\r
+vt 0.588582 0.268487 0.000000\r
+vt 0.591366 0.273960 0.000000\r
+vt 0.595097 0.281290 0.000000\r
+vt 0.599924 0.290772 0.000000\r
+vt 0.605995 0.302696 0.000000\r
+vt 0.613458 0.317347 0.000000\r
+vt 0.622459 0.335009 0.000000\r
+vt 0.800711 0.722865 -0.167330\r
+vt 0.800802 0.724540 -0.167330\r
+vt 0.800842 0.726891 -0.167330\r
+vt 0.800815 0.730520 0.156972\r
+vt 0.598748 0.259432 0.000000\r
+vt 0.600219 0.263570 0.000000\r
+vt 0.602275 0.269350 0.000000\r
+vt 0.605030 0.277092 0.000000\r
+vt 0.608595 0.287106 0.000000\r
+vt 0.613080 0.299700 0.000000\r
+vt 0.618594 0.315173 0.000000\r
+vt 0.411510 0.669985 -0.167330\r
+vt 0.419303 0.666762 -0.167330\r
+vt 0.879682 0.123795 0.000000\r
+vt 0.892329 0.123423 0.000000\r
+vt 0.892330 0.136794 0.000000\r
+vt 0.879966 0.137836 0.000000\r
+vt 0.852374 0.143138 0.000000\r
+vt 0.844725 0.144662 0.000000\r
+vt 0.845050 0.127716 0.000000\r
+vt 0.852097 0.126823 0.000000\r
+vt 0.869488 0.139070 0.000000\r
+vt 0.860520 0.141311 0.000000\r
+vt 0.859955 0.125747 0.000000\r
+vt 0.869015 0.124659 0.000000\r
+vt 0.861158 0.113511 0.000000\r
+vt 0.869811 0.112546 0.000000\r
+vt 0.880096 0.111827 0.000000\r
+vt 0.871586 0.101801 0.000000\r
+vt 0.881058 0.101219 0.000000\r
+vt 0.892291 0.101007 0.000000\r
+vt 0.892314 0.111538 0.000000\r
+vt 0.809322 0.092735 0.000000\r
+vt 0.816845 0.097583 0.000000\r
+vt 0.809927 0.109448 0.000000\r
+vt 0.801339 0.104941 0.000000\r
+vt 0.823427 0.100909 0.000000\r
+vt 0.817276 0.112475 0.000000\r
+vt 0.829346 0.103091 0.000000\r
+vt 0.823793 0.114404 0.000000\r
+vt 0.834834 0.104373 0.000000\r
+vt 0.829795 0.115490 0.000000\r
+vt 0.840100 0.104932 0.000000\r
+vt 0.835543 0.115918 0.000000\r
+vt 0.845354 0.104900 0.000000\r
+vt 0.841281 0.115820 0.000000\r
+vt 0.850825 0.104404 0.000000\r
+vt 0.847259 0.115308 0.000000\r
+vt 0.856796 0.103596 0.000000\r
+vt 0.853769 0.114493 0.000000\r
+vt 0.863605 0.102662 0.000000\r
+vt 0.860814 0.093394 0.000000\r
+vt 0.866913 0.092567 0.000000\r
+vt 0.874015 0.091861 0.000000\r
+vt 0.870622 0.082894 0.000000\r
+vt 0.876723 0.082413 0.000000\r
+vt 0.883840 0.082144 0.000000\r
+vt 0.882376 0.091426 0.000000\r
+vt 0.892223 0.082066 0.000000\r
+vt 0.892260 0.091284 0.000000\r
+vt 0.827109 0.071415 0.000000\r
+vt 0.832779 0.075996 0.000000\r
+vt 0.824510 0.086618 0.000000\r
+vt 0.817980 0.081741 0.000000\r
+vt 0.837991 0.079353 0.000000\r
+vt 0.830383 0.090070 0.000000\r
+vt 0.842825 0.081708 0.000000\r
+vt 0.835758 0.092405 0.000000\r
+vt 0.847384 0.083224 0.000000\r
+vt 0.840789 0.093835 0.000000\r
+vt 0.851776 0.084027 0.000000\r
+vt 0.845632 0.094512 0.000000\r
+vt 0.856119 0.084238 0.000000\r
+vt 0.850446 0.094563 0.000000\r
+vt 0.860566 0.083997 0.000000\r
+vt 0.855423 0.094131 0.000000\r
+vt 0.865319 0.083482 0.000000\r
+vt 0.865666 0.073932 0.000000\r
+vt 0.869776 0.073817 0.000000\r
+vt 0.874281 0.073606 0.000000\r
+vt 0.873743 0.064574 0.000000\r
+vt 0.877539 0.064838 0.000000\r
+vt 0.881749 0.065015 0.000000\r
+vt 0.879382 0.073426 0.000000\r
+vt 0.886545 0.065146 0.000000\r
+vt 0.885273 0.073347 0.000000\r
+vt 0.892137 0.065197 0.000000\r
+vt 0.892182 0.073332 0.000000\r
+vt 0.844611 0.051624 0.000000\r
+vt 0.848979 0.054866 0.000000\r
+vt 0.841168 0.065445 0.000000\r
+vt 0.836211 0.061442 0.000000\r
+vt 0.852979 0.057501 0.000000\r
+vt 0.845757 0.068501 0.000000\r
+vt 0.856669 0.059618 0.000000\r
+vt 0.850027 0.070755 0.000000\r
+vt 0.860143 0.061287 0.000000\r
+vt 0.854058 0.072323 0.000000\r
+vt 0.863500 0.062565 0.000000\r
+vt 0.857940 0.073307 0.000000\r
+vt 0.866828 0.063503 0.000000\r
+vt 0.861771 0.073806 0.000000\r
+vt 0.870211 0.064152 0.000000\r
+vt 0.870906 0.053595 0.000000\r
+vt 0.873866 0.054872 0.000000\r
+vt 0.876934 0.055906 0.000000\r
+vt 0.876471 0.046066 0.000000\r
+vt 0.879203 0.047771 0.000000\r
+vt 0.882041 0.049142 0.000000\r
+vt 0.880168 0.056700 0.000000\r
+vt 0.885040 0.050148 0.000000\r
+vt 0.883666 0.057272 0.000000\r
+vt 0.888313 0.050774 0.000000\r
+vt 0.887576 0.057635 0.000000\r
+vt 0.892044 0.050984 0.000000\r
+vt 0.892091 0.057759 0.000000\r
+vt 0.856873 0.031798 0.000000\r
+vt 0.860379 0.033452 0.000000\r
+vt 0.855538 0.044237 0.000000\r
+vt 0.851654 0.041819 0.000000\r
+vt 0.863434 0.035347 0.000000\r
+vt 0.859009 0.046454 0.000000\r
+vt 0.866169 0.037445 0.000000\r
+vt 0.862162 0.048501 0.000000\r
+vt 0.868736 0.039670 0.000000\r
+vt 0.865123 0.050384 0.000000\r
+vt 0.871262 0.041922 0.000000\r
+vt 0.868010 0.052090 0.000000\r
+vt 0.873829 0.044088 0.000000\r
+vt 0.873103 0.031696 0.000000\r
+vt 0.875470 0.034596 0.000000\r
+vt 0.877933 0.037349 0.000000\r
+vt 0.875612 0.024598 0.000000\r
+vt 0.878045 0.028168 0.000000\r
+vt 0.880608 0.031426 0.000000\r
+vt 0.880482 0.039801 0.000000\r
+vt 0.883251 0.034188 0.000000\r
+vt 0.883106 0.041830 0.000000\r
+vt 0.885957 0.036301 0.000000\r
+vt 0.885826 0.043347 0.000000\r
+vt 0.888794 0.037640 0.000000\r
+vt 0.888731 0.044295 0.000000\r
+vt 0.891942 0.038095 0.000000\r
+vt 0.891996 0.044614 0.000000\r
+vt 0.861532 0.008917 0.000000\r
+vt 0.864501 0.009915 0.000000\r
+vt 0.863274 0.022169 0.000000\r
+vt 0.860047 0.021074 0.000000\r
+vt 0.866941 0.011730 0.000000\r
+vt 0.866034 0.023904 0.000000\r
+vt 0.869119 0.014270 0.000000\r
+vt 0.868490 0.026170 0.000000\r
+vt 0.871207 0.017407 0.000000\r
+vt 0.870803 0.028825 0.000000\r
+vt 0.873342 0.020932 0.000000\r
+vt 0.871111 0.014700 0.000000\r
+vt 0.873188 0.018341 0.000000\r
+vt 0.875429 0.022163 0.000000\r
+vt 0.873080 0.016251 0.000000\r
+vt 0.875316 0.020143 0.000000\r
+vt 0.877756 0.023972 0.000000\r
+vt 0.877863 0.025904 0.000000\r
+vt 0.880366 0.027502 0.000000\r
+vt 0.880455 0.029338 0.000000\r
+vt 0.883081 0.030530 0.000000\r
+vt 0.883140 0.032267 0.000000\r
+vt 0.885856 0.032878 0.000000\r
+vt 0.885888 0.034522 0.000000\r
+vt 0.888741 0.034382 0.000000\r
+vt 0.888758 0.035959 0.000000\r
+vt 0.891913 0.034892 0.000000\r
+vt 0.891927 0.036446 0.000000\r
+vt 0.862671 0.003900 0.000000\r
+vt 0.865128 0.005196 0.000000\r
+vt 0.864825 0.007176 0.000000\r
+vt 0.862081 0.006034 0.000000\r
+vt 0.867125 0.006969 0.000000\r
+vt 0.867054 0.008989 0.000000\r
+vt 0.869055 0.009416 0.000000\r
+vt 0.869103 0.011512 0.000000\r
+vt 0.871018 0.012578 0.000000\r
+vt 0.868979 0.007904 0.000000\r
+vt 0.870935 0.010985 0.000000\r
+vt 0.873019 0.014627 0.000000\r
+vt 0.870899 0.009869 0.000000\r
+vt 0.873035 0.013435 0.000000\r
+vt 0.875317 0.017280 0.000000\r
+vt 0.875273 0.018520 0.000000\r
+vt 0.877769 0.021096 0.000000\r
+vt 0.877721 0.022369 0.000000\r
+vt 0.880376 0.024632 0.000000\r
+vt 0.880338 0.025929 0.000000\r
+vt 0.883092 0.027686 0.000000\r
+vt 0.883064 0.028996 0.000000\r
+vt 0.885874 0.030077 0.000000\r
+vt 0.885852 0.031388 0.000000\r
+vt 0.888751 0.031626 0.000000\r
+vt 0.888739 0.032930 0.000000\r
+vt 0.891888 0.032152 0.000000\r
+vt 0.891900 0.033453 0.000000\r
+vt 0.863777 0.001562 0.000000\r
+vt 0.865535 0.003146 0.000000\r
+vt 0.865377 0.003888 0.000000\r
+vt 0.863259 0.002438 0.000000\r
+vt 0.867125 0.004735 0.000000\r
+vt 0.867145 0.005581 0.000000\r
+vt 0.868907 0.006908 0.000000\r
+vt 0.867117 0.004320 0.000000\r
+vt 0.868925 0.006336 0.000000\r
+vt 0.870990 0.009172 0.000000\r
+vt 0.865589 0.002842 0.000000\r
+vt 0.864154 0.001158 0.000000\r
+vt 0.888777 0.030502 0.000000\r
+vt 0.891877 0.031022 0.000000\r
+vt 0.885926 0.028975 0.000000\r
+vt 0.883174 0.026624 0.000000\r
+vt 0.880493 0.023626 0.000000\r
+vt 0.877920 0.020155 0.000000\r
+vt 0.875484 0.016411 0.000000\r
+vt 0.873183 0.012645 0.000000\r
+vt 0.838479 0.128333 0.000000\r
+vt 0.837287 0.145937 0.000000\r
+vt 0.832115 0.128573 0.000000\r
+vt 0.829865 0.146848 0.000000\r
+vt 0.825717 0.128334 0.000000\r
+vt 0.822274 0.147370 0.000000\r
+vt 0.819047 0.127489 0.000000\r
+vt 0.814611 0.147249 0.000000\r
+vt 0.811803 0.125868 0.000000\r
+vt 0.803607 0.123236 0.000000\r
+vt 0.793981 0.119296 0.000000\r
+vt 0.785560 0.141319 0.000000\r
+vt 0.983775 0.221414 0.000000\r
+vt 0.983387 0.219188 0.000000\r
+vt 0.994904 0.218723 0.000000\r
+vt 0.995979 0.220961 0.000000\r
+vt 0.993721 0.216464 0.000000\r
+vt 0.982992 0.216960 0.000000\r
+vt 0.992532 0.213930 0.000000\r
+vt 0.982588 0.214436 0.000000\r
+vt 0.991352 0.210879 0.000000\r
+vt 0.982180 0.211387 0.000000\r
+vt 0.990227 0.207152 0.000000\r
+vt 0.981768 0.207656 0.000000\r
+vt 0.989204 0.202629 0.000000\r
+vt 0.981358 0.203121 0.000000\r
+vt 0.980956 0.197682 0.000000\r
+vt 0.988334 0.197204 0.000000\r
+vt 0.998444 0.240519 0.000000\r
+vt 0.985070 0.240530 0.000000\r
+vt 0.984987 0.235160 0.000000\r
+vt 0.998570 0.235002 0.000000\r
+vt 0.984780 0.230671 0.000000\r
+vt 0.998316 0.230402 0.000000\r
+vt 0.997757 0.226615 0.000000\r
+vt 0.984490 0.226967 0.000000\r
+vt 0.996957 0.223521 0.000000\r
+vt 0.984147 0.223932 0.000000\r
+vt 0.968397 0.227466 0.000000\r
+vt 0.968514 0.224515 0.000000\r
+vt 0.968670 0.222053 0.000000\r
+vt 0.954813 0.225190 0.000000\r
+vt 0.955361 0.222778 0.000000\r
+vt 0.955966 0.220617 0.000000\r
+vt 0.968847 0.219864 0.000000\r
+vt 0.956574 0.218434 0.000000\r
+vt 0.969019 0.217664 0.000000\r
+vt 0.957121 0.215949 0.000000\r
+vt 0.969152 0.215164 0.000000\r
+vt 0.957545 0.212943 0.000000\r
+vt 0.969213 0.212140 0.000000\r
+vt 0.957781 0.209257 0.000000\r
+vt 0.969171 0.208435 0.000000\r
+vt 0.957769 0.204772 0.000000\r
+vt 0.968994 0.203927 0.000000\r
+vt 0.957447 0.199386 0.000000\r
+vt 0.968654 0.198512 0.000000\r
+vt 0.953787 0.240536 0.000000\r
+vt 0.953848 0.235624 0.000000\r
+vt 0.968295 0.235373 0.000000\r
+vt 0.968290 0.240537 0.000000\r
+vt 0.954039 0.231495 0.000000\r
+vt 0.968325 0.231049 0.000000\r
+vt 0.954364 0.228051 0.000000\r
+vt 0.941896 0.232034 0.000000\r
+vt 0.942364 0.228754 0.000000\r
+vt 0.943015 0.225991 0.000000\r
+vt 0.932355 0.229581 0.000000\r
+vt 0.933080 0.226931 0.000000\r
+vt 0.933995 0.224612 0.000000\r
+vt 0.943815 0.223627 0.000000\r
+vt 0.935040 0.222470 0.000000\r
+vt 0.944710 0.221482 0.000000\r
+vt 0.936128 0.220275 0.000000\r
+vt 0.945624 0.219302 0.000000\r
+vt 0.937154 0.217777 0.000000\r
+vt 0.946468 0.216820 0.000000\r
+vt 0.938005 0.214765 0.000000\r
+vt 0.947154 0.213819 0.000000\r
+vt 0.938568 0.211083 0.000000\r
+vt 0.947589 0.210143 0.000000\r
+vt 0.938730 0.206613 0.000000\r
+vt 0.947686 0.205674 0.000000\r
+vt 0.938379 0.201264 0.000000\r
+vt 0.947355 0.200312 0.000000\r
+vt 0.931462 0.240520 0.000000\r
+vt 0.931555 0.236279 0.000000\r
+vt 0.941620 0.235926 0.000000\r
+vt 0.941531 0.240530 0.000000\r
+vt 0.931846 0.232668 0.000000\r
+vt 0.923506 0.236658 0.000000\r
+vt 0.923764 0.233355 0.000000\r
+vt 0.924233 0.230488 0.000000\r
+vt 0.917406 0.234014 0.000000\r
+vt 0.917794 0.231375 0.000000\r
+vt 0.918382 0.229002 0.000000\r
+vt 0.924925 0.227968 0.000000\r
+vt 0.919173 0.226802 0.000000\r
+vt 0.925826 0.225701 0.000000\r
+vt 0.920134 0.224657 0.000000\r
+vt 0.926885 0.223554 0.000000\r
+vt 0.921195 0.222397 0.000000\r
+vt 0.928019 0.221328 0.000000\r
+vt 0.922248 0.219817 0.000000\r
+vt 0.929112 0.218795 0.000000\r
+vt 0.923165 0.216721 0.000000\r
+vt 0.930038 0.215751 0.000000\r
+vt 0.923803 0.212954 0.000000\r
+vt 0.930665 0.212039 0.000000\r
+vt 0.924020 0.208404 0.000000\r
+vt 0.930862 0.207545 0.000000\r
+vt 0.923679 0.203012 0.000000\r
+vt 0.930500 0.202187 0.000000\r
+vt 0.917136 0.240497 0.000000\r
+vt 0.917199 0.237015 0.000000\r
+vt 0.923426 0.240508 0.000000\r
+vt 0.912188 0.240486 0.000000\r
+vt 0.912240 0.237299 0.000000\r
+vt 0.912403 0.234549 0.000000\r
+vt 0.908155 0.237475 0.000000\r
+vt 0.908293 0.234889 0.000000\r
+vt 0.908535 0.232595 0.000000\r
+vt 0.912707 0.232113 0.000000\r
+vt 0.908893 0.230484 0.000000\r
+vt 0.913172 0.229886 0.000000\r
+vt 0.909377 0.228448 0.000000\r
+vt 0.913807 0.227770 0.000000\r
+vt 0.909987 0.226368 0.000000\r
+vt 0.914599 0.225650 0.000000\r
+vt 0.910702 0.224097 0.000000\r
+vt 0.915502 0.223371 0.000000\r
+vt 0.911468 0.221457 0.000000\r
+vt 0.916432 0.220749 0.000000\r
+vt 0.912194 0.218258 0.000000\r
+vt 0.917272 0.217594 0.000000\r
+vt 0.912762 0.214341 0.000000\r
+vt 0.917882 0.213751 0.000000\r
+vt 0.913046 0.209613 0.000000\r
+vt 0.918121 0.209117 0.000000\r
+vt 0.912927 0.204097 0.000000\r
+vt 0.917856 0.203667 0.000000\r
+vt 0.904384 0.240465 0.000000\r
+vt 0.904436 0.237529 0.000000\r
+vt 0.908106 0.240475 0.000000\r
+vt 0.900496 0.240453 0.000000\r
+vt 0.900558 0.237463 0.000000\r
+vt 0.900700 0.234890 0.000000\r
+vt 0.904568 0.235003 0.000000\r
+vt 0.900904 0.232618 0.000000\r
+vt 0.904775 0.232766 0.000000\r
+vt 0.901161 0.230536 0.000000\r
+vt 0.905062 0.230708 0.000000\r
+vt 0.901474 0.228532 0.000000\r
+vt 0.905433 0.228717 0.000000\r
+vt 0.901848 0.226482 0.000000\r
+vt 0.905895 0.226669 0.000000\r
+vt 0.902294 0.224240 0.000000\r
+vt 0.906445 0.224419 0.000000\r
+vt 0.902810 0.221631 0.000000\r
+vt 0.907060 0.221789 0.000000\r
+vt 0.903379 0.218460 0.000000\r
+vt 0.907685 0.218583 0.000000\r
+vt 0.903945 0.214542 0.000000\r
+vt 0.908231 0.214631 0.000000\r
+vt 0.904431 0.209773 0.000000\r
+vt 0.908597 0.209841 0.000000\r
+vt 0.904771 0.204212 0.000000\r
+vt 0.908691 0.204278 0.000000\r
+vt 0.890692 0.240417 0.000000\r
+vt 0.890775 0.237075 0.000000\r
+vt 0.895995 0.237288 0.000000\r
+vt 0.895921 0.240437 0.000000\r
+vt 0.890961 0.234199 0.000000\r
+vt 0.896162 0.234576 0.000000\r
+vt 0.891216 0.231667 0.000000\r
+vt 0.896391 0.232185 0.000000\r
+vt 0.891520 0.229366 0.000000\r
+vt 0.896667 0.230005 0.000000\r
+vt 0.891868 0.227187 0.000000\r
+vt 0.896985 0.227924 0.000000\r
+vt 0.892261 0.225008 0.000000\r
+vt 0.897352 0.225822 0.000000\r
+vt 0.892710 0.222693 0.000000\r
+vt 0.897777 0.223558 0.000000\r
+vt 0.893226 0.220088 0.000000\r
+vt 0.898275 0.220966 0.000000\r
+vt 0.893815 0.217018 0.000000\r
+vt 0.898846 0.217857 0.000000\r
+vt 0.894469 0.213296 0.000000\r
+vt 0.899465 0.214044 0.000000\r
+vt 0.895154 0.208762 0.000000\r
+vt 0.900076 0.209390 0.000000\r
+vt 0.895841 0.203329 0.000000\r
+vt 0.900635 0.203887 0.000000\r
+vt 0.879172 0.240366 0.000000\r
+vt 0.879258 0.236659 0.000000\r
+vt 0.885224 0.236870 0.000000\r
+vt 0.885139 0.240393 0.000000\r
+vt 0.879447 0.233479 0.000000\r
+vt 0.885415 0.233842 0.000000\r
+vt 0.879702 0.230698 0.000000\r
+vt 0.885674 0.231183 0.000000\r
+vt 0.880006 0.228196 0.000000\r
+vt 0.885985 0.228777 0.000000\r
+vt 0.880353 0.225854 0.000000\r
+vt 0.886340 0.226510 0.000000\r
+vt 0.880746 0.223546 0.000000\r
+vt 0.886741 0.224259 0.000000\r
+vt 0.881189 0.221135 0.000000\r
+vt 0.887196 0.221891 0.000000\r
+vt 0.881690 0.218470 0.000000\r
+vt 0.887712 0.219255 0.000000\r
+vt 0.882252 0.215384 0.000000\r
+vt 0.888296 0.216183 0.000000\r
+vt 0.882874 0.211700 0.000000\r
+vt 0.888945 0.212496 0.000000\r
+vt 0.883541 0.207240 0.000000\r
+vt 0.889640 0.208022 0.000000\r
+vt 0.884239 0.201854 0.000000\r
+vt 0.890361 0.202627 0.000000\r
+vt 0.865475 0.240293 0.000000\r
+vt 0.865568 0.236177 0.000000\r
+vt 0.872755 0.236430 0.000000\r
+vt 0.872667 0.240333 0.000000\r
+vt 0.865761 0.232668 0.000000\r
+vt 0.872943 0.233091 0.000000\r
+vt 0.866019 0.229640 0.000000\r
+vt 0.873193 0.230188 0.000000\r
+vt 0.866322 0.226971 0.000000\r
+vt 0.873490 0.227597 0.000000\r
+vt 0.866664 0.224532 0.000000\r
+vt 0.873827 0.225197 0.000000\r
+vt 0.867046 0.222182 0.000000\r
+vt 0.874207 0.222855 0.000000\r
+vt 0.867476 0.219757 0.000000\r
+vt 0.874636 0.220424 0.000000\r
+vt 0.867953 0.217082 0.000000\r
+vt 0.875118 0.217744 0.000000\r
+vt 0.868478 0.213973 0.000000\r
+vt 0.875655 0.214643 0.000000\r
+vt 0.869039 0.210252 0.000000\r
+vt 0.876242 0.210944 0.000000\r
+vt 0.869621 0.205748 0.000000\r
+vt 0.876865 0.206471 0.000000\r
+vt 0.870205 0.200306 0.000000\r
+vt 0.877510 0.201066 0.000000\r
+vt 0.848373 0.240191 0.000000\r
+vt 0.848494 0.235605 0.000000\r
+vt 0.857535 0.235901 0.000000\r
+vt 0.857432 0.240247 0.000000\r
+vt 0.848753 0.231729 0.000000\r
+vt 0.857750 0.232211 0.000000\r
+vt 0.849107 0.228449 0.000000\r
+vt 0.858038 0.229057 0.000000\r
+vt 0.849526 0.225646 0.000000\r
+vt 0.858376 0.226317 0.000000\r
+vt 0.849997 0.223185 0.000000\r
+vt 0.858756 0.223859 0.000000\r
+vt 0.850514 0.220891 0.000000\r
+vt 0.859178 0.221527 0.000000\r
+vt 0.851073 0.218553 0.000000\r
+vt 0.859643 0.219135 0.000000\r
+vt 0.851666 0.215939 0.000000\r
+vt 0.860151 0.216484 0.000000\r
+vt 0.852277 0.212839 0.000000\r
+vt 0.860694 0.213376 0.000000\r
+vt 0.852883 0.209071 0.000000\r
+vt 0.861256 0.209631 0.000000\r
+vt 0.853451 0.204478 0.000000\r
+vt 0.861814 0.205085 0.000000\r
+vt 0.853949 0.198933 0.000000\r
+vt 0.862346 0.199593 0.000000\r
+vt 0.826599 0.240049 0.000000\r
+vt 0.826791 0.234992 0.000000\r
+vt 0.838290 0.235300 0.000000\r
+vt 0.838141 0.240126 0.000000\r
+vt 0.827239 0.230754 0.000000\r
+vt 0.838625 0.231238 0.000000\r
+vt 0.827879 0.227231 0.000000\r
+vt 0.839092 0.227834 0.000000\r
+vt 0.828659 0.224314 0.000000\r
+vt 0.839654 0.224974 0.000000\r
+vt 0.829539 0.221858 0.000000\r
+vt 0.840287 0.222516 0.000000\r
+vt 0.830489 0.219657 0.000000\r
+vt 0.840975 0.220272 0.000000\r
+vt 0.831478 0.217437 0.000000\r
+vt 0.841703 0.217996 0.000000\r
+vt 0.832475 0.214907 0.000000\r
+vt 0.842455 0.215427 0.000000\r
+vt 0.833439 0.211825 0.000000\r
+vt 0.843202 0.212337 0.000000\r
+vt 0.834319 0.208011 0.000000\r
+vt 0.843909 0.208545 0.000000\r
+vt 0.835057 0.203331 0.000000\r
+vt 0.844534 0.203907 0.000000\r
+vt 0.835593 0.197684 0.000000\r
+vt 0.845030 0.198308 0.000000\r
+vt 0.799128 0.239860 0.000000\r
+vt 0.799464 0.234382 0.000000\r
+vt 0.813884 0.234689 0.000000\r
+vt 0.813633 0.239960 0.000000\r
+vt 0.800295 0.229818 0.000000\r
+vt 0.814493 0.230284 0.000000\r
+vt 0.801505 0.226070 0.000000\r
+vt 0.815375 0.226649 0.000000\r
+vt 0.802992 0.223029 0.000000\r
+vt 0.816459 0.223672 0.000000\r
+vt 0.804668 0.220521 0.000000\r
+vt 0.817684 0.221202 0.000000\r
+vt 0.806452 0.218320 0.000000\r
+vt 0.818996 0.219021 0.000000\r
+vt 0.808273 0.216118 0.000000\r
+vt 0.820348 0.216833 0.000000\r
+vt 0.810060 0.213595 0.000000\r
+vt 0.821690 0.214322 0.000000\r
+vt 0.811733 0.210494 0.000000\r
+vt 0.822961 0.211239 0.000000\r
+vt 0.813203 0.206639 0.000000\r
+vt 0.824093 0.207404 0.000000\r
+vt 0.814372 0.201904 0.000000\r
+vt 0.825011 0.202691 0.000000\r
+vt 0.815141 0.196205 0.000000\r
+vt 0.825634 0.197009 0.000000\r
+vt 0.803115 0.200791 0.000000\r
+vt 0.804256 0.195141 0.000000\r
+vt 0.801674 0.205467 0.000000\r
+vt 0.800075 0.209291 0.000000\r
+vt 0.798394 0.212404 0.000000\r
+vt 0.796706 0.214991 0.000000\r
+vt 0.794561 0.217254 0.000000\r
+vt 0.792407 0.219544 0.000000\r
+vt 0.790452 0.222190 0.000000\r
+vt 0.788245 0.225360 0.000000\r
+vt 0.786581 0.229268 0.000000\r
+vt 0.785639 0.234036 0.000000\r
+vt 0.785596 0.239766 0.000000\r
+vt 0.419614 0.623992 -0.167330\r
+vt 0.411529 0.621130 -0.167330\r
+vt 0.425893 0.628221 -0.167330\r
+vt 0.432619 0.639339 -0.167330\r
+vt 0.430191 0.633494 -0.167330\r
+vt 0.433306 0.645442 -0.167330\r
+vt 0.432319 0.651498 -0.167330\r
+vt 0.429701 0.657248 -0.167330\r
+vt 0.425542 0.662197 -0.167330\r
+vt 0.783592 0.560902 -0.167330\r
+vt 0.769646 0.554944 -0.167330\r
+vt 0.769419 0.552559 -0.167330\r
+vt 0.783218 0.541222 -0.167330\r
+vt 0.778335 0.543026 -0.167330\r
+vt 0.800546 0.647166 -0.167330\r
+vt 0.796507 0.648924 -0.167330\r
+vt 0.789803 0.661819 -0.167330\r
+vt 0.791146 0.664582 -0.167330\r
+vt 0.800680 0.671413 -0.167330\r
+vt 0.805901 0.672170 -0.167330\r
+vt 0.401685 0.671110 -0.167330\r
+vt 0.401491 0.620186 -0.167330\r
+vt 0.770781 0.557056 -0.167330\r
+vt 0.772785 0.558798 -0.167330\r
+vt 0.775608 0.560097 -0.167330\r
+vt 0.779221 0.560845 -0.167330\r
+vt 0.788711 0.560125 -0.167330\r
+vt 0.770140 0.550079 -0.167330\r
+vt 0.771841 0.547582 -0.167330\r
+vt 0.774560 0.545187 -0.167330\r
+vt 0.793335 0.667405 -0.167330\r
+vt 0.796508 0.669756 -0.167330\r
+vt 0.789413 0.658934 -0.167330\r
+vt 0.789869 0.656072 -0.167330\r
+vt 0.791164 0.653522 -0.167330\r
+vt 0.793398 0.651098 -0.167330\r
+vt 0.805582 0.646019 -0.167330\r
+vt 0.382389 0.530757 -0.167330\r
+vt 0.382364 0.529476 -0.167330\r
+vt 0.382422 0.532358 -0.167330\r
+vt 0.382461 0.534304 -0.167330\r
+vt 0.382510 0.536595 -0.167330\r
+vt 0.382566 0.539224 -0.167330\r
+vt 0.382630 0.542186 -0.167330\r
+vt 0.365057 0.531275 -0.167330\r
+vt 0.365024 0.529996 -0.167330\r
+vt 0.365099 0.532873 -0.167330\r
+vt 0.365150 0.534815 -0.167330\r
+vt 0.365211 0.537101 -0.167330\r
+vt 0.365283 0.539723 -0.167330\r
+vt 0.365365 0.542677 -0.167330\r
+vt 0.348141 0.531906 -0.167330\r
+vt 0.348099 0.530631 -0.167330\r
+vt 0.348195 0.533499 -0.167330\r
+vt 0.348260 0.535434 -0.167330\r
+vt 0.348337 0.537710 -0.167330\r
+vt 0.348425 0.540322 -0.167330\r
+vt 0.348525 0.543262 -0.167330\r
+vt 0.331568 0.532638 -0.167330\r
+vt 0.331516 0.531370 -0.167330\r
+vt 0.331633 0.534221 -0.167330\r
+vt 0.331711 0.536144 -0.167330\r
+vt 0.331803 0.538407 -0.167330\r
+vt 0.331907 0.541002 -0.167330\r
+vt 0.332023 0.543925 -0.167330\r
+vt 0.315270 0.533445 -0.167330\r
+vt 0.315209 0.532187 -0.167330\r
+vt 0.315345 0.535016 -0.167330\r
+vt 0.315435 0.536925 -0.167330\r
+vt 0.315540 0.539170 -0.167330\r
+vt 0.315658 0.541746 -0.167330\r
+vt 0.315788 0.544647 -0.167330\r
+vt 0.299185 0.534307 -0.167330\r
+vt 0.299116 0.533060 -0.167330\r
+vt 0.299269 0.535864 -0.167330\r
+vt 0.299369 0.537755 -0.167330\r
+vt 0.299485 0.539981 -0.167330\r
+vt 0.299613 0.542535 -0.167330\r
+vt 0.299754 0.545412 -0.167330\r
+vt 0.283262 0.535202 -0.167330\r
+vt 0.283187 0.533969 -0.167330\r
+vt 0.283352 0.536742 -0.167330\r
+vt 0.283460 0.538613 -0.167330\r
+vt 0.283582 0.540816 -0.167330\r
+vt 0.283718 0.543343 -0.167330\r
+vt 0.283865 0.546191 -0.167330\r
+vt 0.267454 0.536116 -0.167330\r
+vt 0.267377 0.534899 -0.167330\r
+vt 0.267548 0.537636 -0.167330\r
+vt 0.267659 0.539484 -0.167330\r
+vt 0.267784 0.541660 -0.167330\r
+vt 0.267922 0.544158 -0.167330\r
+vt 0.268070 0.546975 -0.167330\r
+vt 0.251705 0.537019 -0.167330\r
+vt 0.251628 0.535820 -0.167330\r
+vt 0.251798 0.538518 -0.167330\r
+vt 0.251907 0.540341 -0.167330\r
+vt 0.252029 0.542488 -0.167330\r
+vt 0.252164 0.544955 -0.167330\r
+vt 0.252307 0.547738 -0.167330\r
+vt 0.235948 0.537879 -0.167330\r
+vt 0.235877 0.536699 -0.167330\r
+vt 0.236034 0.539356 -0.167330\r
+vt 0.236135 0.541152 -0.167330\r
+vt 0.236247 0.543270 -0.167330\r
+vt 0.236369 0.545703 -0.167330\r
+vt 0.236499 0.548451 -0.167330\r
+vt 0.220094 0.538657 -0.167330\r
+vt 0.220034 0.537494 -0.167330\r
+vt 0.220167 0.540111 -0.167330\r
+vt 0.220251 0.541881 -0.167330\r
+vt 0.220346 0.543969 -0.167330\r
+vt 0.220448 0.546371 -0.167330\r
+vt 0.220557 0.549084 -0.167330\r
+vt 0.204034 0.539317 -0.167330\r
+vt 0.203991 0.538172 -0.167330\r
+vt 0.204085 0.540751 -0.167330\r
+vt 0.204145 0.542497 -0.167330\r
+vt 0.204213 0.544558 -0.167330\r
+vt 0.204287 0.546929 -0.167330\r
+vt 0.204365 0.549608 -0.167330\r
+vt 0.188073 0.539832 -0.167330\r
+vt 0.187972 0.538713 -0.167330\r
+vt 0.188153 0.541242 -0.167330\r
+vt 0.188217 0.542964 -0.167330\r
+vt 0.188270 0.545000 -0.167330\r
+vt 0.188315 0.547344 -0.167330\r
+vt 0.188358 0.549995 -0.167330\r
+vt 0.172755 0.540135 -0.167330\r
+vt 0.172624 0.539049 -0.167330\r
+vt 0.172843 0.541518 -0.167330\r
+vt 0.172898 0.543217 -0.167330\r
+vt 0.172929 0.545231 -0.167330\r
+vt 0.172942 0.547552 -0.167330\r
+vt 0.172946 0.550178 -0.167330\r
+vt 0.157934 0.540199 -0.167330\r
+vt 0.157802 0.539146 -0.167330\r
+vt 0.158013 0.541555 -0.167330\r
+vt 0.158049 0.543231 -0.167330\r
+vt 0.158050 0.545224 -0.167330\r
+vt 0.158027 0.547525 -0.167330\r
+vt 0.157989 0.550128 -0.167330\r
+vt 0.143502 0.539994 -0.167330\r
+vt 0.143390 0.538970 -0.167330\r
+vt 0.143555 0.541326 -0.167330\r
+vt 0.143560 0.542982 -0.167330\r
+vt 0.143525 0.544955 -0.167330\r
+vt 0.143460 0.547235 -0.167330\r
+vt 0.143374 0.549818 -0.167330\r
+vt 0.129356 0.539482 -0.167330\r
+vt 0.129282 0.538478 -0.167330\r
+vt 0.129371 0.540797 -0.167330\r
+vt 0.129336 0.542436 -0.167330\r
+vt 0.129258 0.544392 -0.167330\r
+vt 0.129146 0.546654 -0.167330\r
+vt 0.129008 0.549217 -0.167330\r
+vt 0.115415 0.538635 -0.167330\r
+vt 0.115390 0.537641 -0.167330\r
+vt 0.115384 0.539939 -0.167330\r
+vt 0.115301 0.541564 -0.167330\r
+vt 0.115173 0.543504 -0.167330\r
+vt 0.115008 0.545749 -0.167330\r
+vt 0.114810 0.548293 -0.167330\r
+vt 0.101613 0.537409 -0.167330\r
+vt 0.101644 0.536416 -0.167330\r
+vt 0.101528 0.538705 -0.167330\r
+vt 0.101391 0.540318 -0.167330\r
+vt 0.101207 0.542242 -0.167330\r
+vt 0.100979 0.544469 -0.167330\r
+vt 0.100714 0.546995 -0.167330\r
+vt 0.087888 0.535753 -0.167330\r
+vt 0.087977 0.534754 -0.167330\r
+vt 0.087745 0.537044 -0.167330\r
+vt 0.087547 0.538646 -0.167330\r
+vt 0.087298 0.540555 -0.167330\r
+vt 0.087000 0.542763 -0.167330\r
+vt 0.086656 0.545270 -0.167330\r
+vt 0.074182 0.533598 -0.167330\r
+vt 0.074331 0.532593 -0.167330\r
+vt 0.073976 0.534886 -0.167330\r
+vt 0.073712 0.536475 -0.167330\r
+vt 0.073388 0.538366 -0.167330\r
+vt 0.073008 0.540554 -0.167330\r
+vt 0.072571 0.543038 -0.167330\r
+vt 0.060450 0.530847 -0.167330\r
+vt 0.060661 0.529838 -0.167330\r
+vt 0.060176 0.532128 -0.167330\r
+vt 0.059835 0.533701 -0.167330\r
+vt 0.059424 0.535570 -0.167330\r
+vt 0.058945 0.537733 -0.167330\r
+vt 0.058397 0.540193 -0.167330\r
+vt 0.046657 0.527362 -0.167330\r
+vt 0.046935 0.526358 -0.167330\r
+vt 0.046305 0.528626 -0.167330\r
+vt 0.045872 0.530176 -0.167330\r
+vt 0.045355 0.532016 -0.167330\r
+vt 0.044755 0.534148 -0.167330\r
+vt 0.044072 0.536576 -0.167330\r
+vt 0.382879 0.554408 -0.167330\r
+vt 0.383098 0.566065 -0.167330\r
+vt 0.383291 0.577171 -0.167330\r
+vt 0.383460 0.587742 -0.167330\r
+vt 0.383605 0.597797 -0.167330\r
+vt 0.383730 0.607360 -0.167330\r
+vt 0.383832 0.616460 -0.167330\r
+vt 0.365679 0.554862 -0.167330\r
+vt 0.365952 0.566484 -0.167330\r
+vt 0.366186 0.577557 -0.167330\r
+vt 0.366385 0.588096 -0.167330\r
+vt 0.366553 0.598120 -0.167330\r
+vt 0.366692 0.607652 -0.167330\r
+vt 0.366802 0.616715 -0.167330\r
+vt 0.348905 0.555395 -0.167330\r
+vt 0.349229 0.566968 -0.167330\r
+vt 0.349504 0.577995 -0.167330\r
+vt 0.349736 0.588491 -0.167330\r
+vt 0.349931 0.598474 -0.167330\r
+vt 0.350094 0.607965 -0.167330\r
+vt 0.350230 0.616984 -0.167330\r
+vt 0.366886 0.625336 -0.167330\r
+vt 0.350344 0.625559 -0.167330\r
+vt 0.366979 0.633532 -0.167330\r
+vt 0.350443 0.633716 -0.167330\r
+vt 0.367046 0.641324 -0.167330\r
+vt 0.350527 0.641491 -0.167330\r
+vt 0.367107 0.648763 -0.167330\r
+vt 0.350602 0.648931 -0.167330\r
+vt 0.367159 0.655921 -0.167330\r
+vt 0.350668 0.656099 -0.167330\r
+vt 0.332464 0.555988 -0.167330\r
+vt 0.332835 0.567499 -0.167330\r
+vt 0.333147 0.578470 -0.167330\r
+vt 0.333409 0.588916 -0.167330\r
+vt 0.333629 0.598853 -0.167330\r
+vt 0.333813 0.608301 -0.167330\r
+vt 0.333968 0.617281 -0.167330\r
+vt 0.334099 0.625820 -0.167330\r
+vt 0.334210 0.633947 -0.167330\r
+vt 0.334306 0.641700 -0.167330\r
+vt 0.334389 0.649125 -0.167330\r
+vt 0.334463 0.656280 -0.167330\r
+vt 0.316279 0.556626 -0.167330\r
+vt 0.316689 0.568064 -0.167330\r
+vt 0.317031 0.578971 -0.167330\r
+vt 0.317318 0.589360 -0.167330\r
+vt 0.317557 0.599247 -0.167330\r
+vt 0.317757 0.608651 -0.167330\r
+vt 0.317925 0.617593 -0.167330\r
+vt 0.318067 0.626098 -0.167330\r
+vt 0.318188 0.634197 -0.167330\r
+vt 0.318290 0.641926 -0.167330\r
+vt 0.318379 0.649330 -0.167330\r
+vt 0.318456 0.656467 -0.167330\r
+vt 0.300284 0.557295 -0.167330\r
+vt 0.300723 0.568649 -0.167330\r
+vt 0.301086 0.579484 -0.167330\r
+vt 0.301388 0.589812 -0.167330\r
+vt 0.301638 0.599646 -0.167330\r
+vt 0.301847 0.609004 -0.167330\r
+vt 0.302023 0.617907 -0.167330\r
+vt 0.302170 0.626379 -0.167330\r
+vt 0.302294 0.634450 -0.167330\r
+vt 0.302400 0.642155 -0.167330\r
+vt 0.302490 0.649539 -0.167330\r
+vt 0.302569 0.656658 -0.167330\r
+vt 0.284417 0.557963 -0.167330\r
+vt 0.284871 0.569225 -0.167330\r
+vt 0.285242 0.579984 -0.167330\r
+vt 0.285549 0.590247 -0.167330\r
+vt 0.285802 0.600027 -0.167330\r
+vt 0.286011 0.609340 -0.167330\r
+vt 0.286185 0.618205 -0.167330\r
+vt 0.286331 0.626646 -0.167330\r
+vt 0.286453 0.634691 -0.167330\r
+vt 0.286557 0.642375 -0.167330\r
+vt 0.286645 0.649741 -0.167330\r
+vt 0.286720 0.656846 -0.167330\r
+vt 0.268623 0.558627 -0.167330\r
+vt 0.269072 0.569790 -0.167330\r
+vt 0.269436 0.580466 -0.167330\r
+vt 0.269733 0.590662 -0.167330\r
+vt 0.269976 0.600386 -0.167330\r
+vt 0.270175 0.609653 -0.167330\r
+vt 0.270339 0.618481 -0.167330\r
+vt 0.270475 0.626892 -0.167330\r
+vt 0.270589 0.634913 -0.167330\r
+vt 0.270684 0.642577 -0.167330\r
+vt 0.270763 0.649928 -0.167330\r
+vt 0.270831 0.657021 -0.167330\r
+vt 0.252835 0.559263 -0.167330\r
+vt 0.253258 0.570322 -0.167330\r
+vt 0.253596 0.580913 -0.167330\r
+vt 0.253868 0.591038 -0.167330\r
+vt 0.254086 0.600706 -0.167330\r
+vt 0.254262 0.609929 -0.167330\r
+vt 0.254404 0.618721 -0.167330\r
+vt 0.254521 0.627103 -0.167330\r
+vt 0.254616 0.635102 -0.167330\r
+vt 0.254695 0.642750 -0.167330\r
+vt 0.254760 0.650089 -0.167330\r
+vt 0.254814 0.657172 -0.167330\r
+vt 0.236974 0.559845 -0.167330\r
+vt 0.237346 0.570798 -0.167330\r
+vt 0.237637 0.581302 -0.167330\r
+vt 0.237865 0.591358 -0.167330\r
+vt 0.238042 0.600971 -0.167330\r
+vt 0.238181 0.610149 -0.167330\r
+vt 0.238290 0.618907 -0.167330\r
+vt 0.238375 0.627264 -0.167330\r
+vt 0.238442 0.635244 -0.167330\r
+vt 0.238495 0.642878 -0.167330\r
+vt 0.238537 0.650209 -0.167330\r
+vt 0.238570 0.657288 -0.167330\r
+vt 0.220946 0.560348 -0.167330\r
+vt 0.221239 0.571196 -0.167330\r
+vt 0.221459 0.581615 -0.167330\r
+vt 0.221622 0.591603 -0.167330\r
+vt 0.221741 0.601162 -0.167330\r
+vt 0.221826 0.610299 -0.167330\r
+vt 0.221886 0.619025 -0.167330\r
+vt 0.221926 0.627358 -0.167330\r
+vt 0.221953 0.635322 -0.167330\r
+vt 0.221969 0.642946 -0.167330\r
+vt 0.221978 0.650271 -0.167330\r
+vt 0.221982 0.657349 -0.167330\r
+vt 0.204632 0.560749 -0.167330\r
+vt 0.204819 0.571497 -0.167330\r
+vt 0.204942 0.581836 -0.167330\r
+vt 0.205018 0.591759 -0.167330\r
+vt 0.205058 0.601267 -0.167330\r
+vt 0.205071 0.610364 -0.167330\r
+vt 0.205066 0.619061 -0.167330\r
+vt 0.205048 0.627372 -0.167330\r
+vt 0.205021 0.635321 -0.167330\r
+vt 0.204989 0.642935 -0.167330\r
+vt 0.204953 0.650255 -0.167330\r
+vt 0.204916 0.657332 -0.167330\r
+vt 0.188480 0.561029 -0.167330\r
+vt 0.188537 0.571687 -0.167330\r
+vt 0.188542 0.581952 -0.167330\r
+vt 0.188512 0.591816 -0.167330\r
+vt 0.188455 0.601277 -0.167330\r
+vt 0.188382 0.610337 -0.167330\r
+vt 0.188299 0.619006 -0.167330\r
+vt 0.188211 0.627296 -0.167330\r
+vt 0.188120 0.635228 -0.167330\r
+vt 0.188031 0.642830 -0.167330\r
+vt 0.187943 0.650142 -0.167330\r
+vt 0.187859 0.657212 -0.167330\r
+vt 0.172910 0.561119 -0.167330\r
+vt 0.172822 0.571699 -0.167330\r
+vt 0.172696 0.581902 -0.167330\r
+vt 0.172546 0.591718 -0.167330\r
+vt 0.172382 0.601141 -0.167330\r
+vt 0.172211 0.610173 -0.167330\r
+vt 0.172041 0.618821 -0.167330\r
+vt 0.171875 0.627096 -0.167330\r
+vt 0.171716 0.635018 -0.167330\r
+vt 0.171565 0.642613 -0.167330\r
+vt 0.171424 0.649920 -0.167330\r
+vt 0.171291 0.656988 -0.167330\r
+vt 0.157780 0.560985 -0.167330\r
+vt 0.157532 0.571499 -0.167330\r
+vt 0.157259 0.581651 -0.167330\r
+vt 0.156976 0.591429 -0.167330\r
+vt 0.156692 0.600826 -0.167330\r
+vt 0.156415 0.609842 -0.167330\r
+vt 0.156150 0.618480 -0.167330\r
+vt 0.155899 0.626751 -0.167330\r
+vt 0.155666 0.634673 -0.167330\r
+vt 0.155450 0.642272 -0.167330\r
+vt 0.155251 0.649584 -0.167330\r
+vt 0.155068 0.656659 -0.167330\r
+vt 0.142973 0.560598 -0.167330\r
+vt 0.142546 0.571055 -0.167330\r
+vt 0.142110 0.581168 -0.167330\r
+vt 0.141679 0.590921 -0.167330\r
+vt 0.141261 0.600306 -0.167330\r
+vt 0.140865 0.609318 -0.167330\r
+vt 0.140494 0.617960 -0.167330\r
+vt 0.140152 0.626242 -0.167330\r
+vt 0.139837 0.634178 -0.167330\r
+vt 0.139551 0.641794 -0.167330\r
+vt 0.139292 0.649126 -0.167330\r
+vt 0.139056 0.656221 -0.167330\r
+vt 0.128392 0.559929 -0.167330\r
+vt 0.127765 0.570340 -0.167330\r
+vt 0.127144 0.580424 -0.167330\r
+vt 0.126545 0.590166 -0.167330\r
+vt 0.125977 0.599552 -0.167330\r
+vt 0.125447 0.608577 -0.167330\r
+vt 0.124958 0.617241 -0.167330\r
+vt 0.124513 0.625550 -0.167330\r
+vt 0.124110 0.633518 -0.167330\r
+vt 0.123747 0.641169 -0.167330\r
+vt 0.123423 0.648536 -0.167330\r
+vt 0.123132 0.655668 -0.167330\r
+vt 0.113952 0.558943 -0.167330\r
+vt 0.113096 0.569315 -0.167330\r
+vt 0.112266 0.579384 -0.167330\r
+vt 0.111475 0.589129 -0.167330\r
+vt 0.110736 0.598534 -0.167330\r
+vt 0.110053 0.607590 -0.167330\r
+vt 0.109430 0.616295 -0.167330\r
+vt 0.108869 0.624652 -0.167330\r
+vt 0.108366 0.632673 -0.167330\r
+vt 0.107919 0.640379 -0.167330\r
+vt 0.107525 0.647803 -0.167330\r
+vt 0.107175 0.654993 -0.167330\r
+vt 0.099577 0.557584 -0.167330\r
+vt 0.098459 0.567928 -0.167330\r
+vt 0.097386 0.577994 -0.167330\r
+vt 0.096375 0.587759 -0.167330\r
+vt 0.095436 0.597203 -0.167330\r
+vt 0.094576 0.606313 -0.167330\r
+vt 0.093798 0.615083 -0.167330\r
+vt 0.093103 0.623514 -0.167330\r
+vt 0.092486 0.631615 -0.167330\r
+vt 0.091944 0.639404 -0.167330\r
+vt 0.091471 0.646914 -0.167330\r
+vt 0.091059 0.654187 -0.167330\r
+vt 0.085194 0.555802 -0.167330\r
+vt 0.083770 0.566125 -0.167330\r
+vt 0.082413 0.576203 -0.167330\r
+vt 0.081142 0.586006 -0.167330\r
+vt 0.079970 0.595510 -0.167330\r
+vt 0.078901 0.604698 -0.167330\r
+vt 0.077940 0.613562 -0.167330\r
+vt 0.077084 0.622097 -0.167330\r
+vt 0.076333 0.630310 -0.167330\r
+vt 0.075679 0.638217 -0.167330\r
+vt 0.075116 0.645846 -0.167330\r
+vt 0.074636 0.653239 -0.167330\r
+vt 0.070725 0.553513 -0.167330\r
+vt 0.068937 0.563824 -0.167330\r
+vt 0.067245 0.573930 -0.167330\r
+vt 0.065668 0.583792 -0.167330\r
+vt 0.064218 0.593380 -0.167330\r
+vt 0.062898 0.602674 -0.167330\r
+vt 0.061714 0.611662 -0.167330\r
+vt 0.060663 0.620337 -0.167330\r
+vt 0.059743 0.628703 -0.167330\r
+vt 0.058950 0.636773 -0.167330\r
+vt 0.058278 0.644570 -0.167330\r
+vt 0.057717 0.652134 -0.167330\r
+vt 0.056083 0.550602 -0.167330\r
+vt 0.053849 0.560915 -0.167330\r
+vt 0.051758 0.571072 -0.167330\r
+vt 0.049825 0.581018 -0.167330\r
+vt 0.048044 0.590716 -0.167330\r
+vt 0.046421 0.600143 -0.167330\r
+vt 0.044959 0.609287 -0.167330\r
+vt 0.043660 0.618140 -0.167330\r
+vt 0.042520 0.626705 -0.167330\r
+vt 0.041537 0.634992 -0.167330\r
+vt 0.040707 0.643025 -0.167330\r
+vt 0.040029 0.650841 -0.167330\r
+vt 0.041184 0.546898 -0.167330\r
+vt 0.033468 0.577573 -0.167330\r
+vt 0.035789 0.567507 -0.167330\r
+vt 0.031300 0.587393 -0.167330\r
+vt 0.029305 0.596970 -0.167330\r
+vt 0.027494 0.606295 -0.167330\r
+vt 0.025872 0.615358 -0.167330\r
+vt 0.024436 0.624162 -0.167330\r
+vt 0.023175 0.632717 -0.167330\r
+vt 0.022074 0.641060 -0.167330\r
+vt 0.021115 0.649243 -0.167330\r
+vt 0.384318 0.681872 -0.167330\r
+vt 0.384223 0.675465 -0.167330\r
+vt 0.384402 0.688277 -0.167330\r
+vt 0.384479 0.694624 -0.167330\r
+vt 0.384549 0.700794 -0.167330\r
+vt 0.384610 0.706604 -0.167330\r
+vt 0.384661 0.711824 -0.167330\r
+vt 0.384699 0.716184 -0.167330\r
+vt 0.384721 0.719417 -0.167330\r
+vt 0.384723 0.721405 -0.167330\r
+vt 0.367346 0.675641 -0.167330\r
+vt 0.367273 0.669243 -0.167330\r
+vt 0.384150 0.669039 -0.167330\r
+vt 0.367421 0.682024 -0.167330\r
+vt 0.367496 0.688411 -0.167330\r
+vt 0.367568 0.694745 -0.167330\r
+vt 0.367635 0.700905 -0.167330\r
+vt 0.367695 0.706711 -0.167330\r
+vt 0.367744 0.711930 -0.167330\r
+vt 0.367779 0.716293 -0.167330\r
+vt 0.367795 0.719531 -0.167330\r
+vt 0.367790 0.721524 -0.167330\r
+vt 0.350731 0.662907 -0.167330\r
+vt 0.367215 0.662728 -0.167330\r
+vt 0.350794 0.669406 -0.167330\r
+vt 0.350858 0.675790 -0.167330\r
+vt 0.350925 0.682159 -0.167330\r
+vt 0.350992 0.688533 -0.167330\r
+vt 0.351057 0.694857 -0.167330\r
+vt 0.351117 0.701011 -0.167330\r
+vt 0.351171 0.706813 -0.167330\r
+vt 0.351213 0.712031 -0.167330\r
+vt 0.351242 0.716395 -0.167330\r
+vt 0.351254 0.719637 -0.167330\r
+vt 0.351245 0.721636 -0.167330\r
+vt 0.334529 0.663075 -0.167330\r
+vt 0.334592 0.669562 -0.167330\r
+vt 0.334653 0.675933 -0.167330\r
+vt 0.334714 0.682291 -0.167330\r
+vt 0.334774 0.688655 -0.167330\r
+vt 0.334830 0.694970 -0.167330\r
+vt 0.334882 0.701117 -0.167330\r
+vt 0.334927 0.706915 -0.167330\r
+vt 0.334963 0.712132 -0.167330\r
+vt 0.334985 0.716496 -0.167330\r
+vt 0.334992 0.719741 -0.167330\r
+vt 0.334982 0.721745 -0.167330\r
+vt 0.318524 0.663248 -0.167330\r
+vt 0.318585 0.669721 -0.167330\r
+vt 0.318642 0.676079 -0.167330\r
+vt 0.318696 0.682426 -0.167330\r
+vt 0.318747 0.688779 -0.167330\r
+vt 0.318794 0.695086 -0.167330\r
+vt 0.318836 0.701226 -0.167330\r
+vt 0.318872 0.707019 -0.167330\r
+vt 0.318899 0.712233 -0.167330\r
+vt 0.318915 0.716596 -0.167330\r
+vt 0.318918 0.719843 -0.167330\r
+vt 0.318908 0.721849 -0.167330\r
+vt 0.302635 0.663422 -0.167330\r
+vt 0.302693 0.669881 -0.167330\r
+vt 0.302743 0.676227 -0.167330\r
+vt 0.302789 0.682561 -0.167330\r
+vt 0.302830 0.688904 -0.167330\r
+vt 0.302866 0.695202 -0.167330\r
+vt 0.302896 0.701334 -0.167330\r
+vt 0.302921 0.707122 -0.167330\r
+vt 0.302938 0.712332 -0.167330\r
+vt 0.302948 0.716694 -0.167330\r
+vt 0.302950 0.719940 -0.167330\r
+vt 0.302943 0.721948 -0.167330\r
+vt 0.286783 0.663598 -0.167330\r
+vt 0.286835 0.670047 -0.167330\r
+vt 0.286877 0.676385 -0.167330\r
+vt 0.286913 0.682712 -0.167330\r
+vt 0.286942 0.689047 -0.167330\r
+vt 0.286966 0.695337 -0.167330\r
+vt 0.286984 0.701462 -0.167330\r
+vt 0.286997 0.707242 -0.167330\r
+vt 0.287005 0.712445 -0.167330\r
+vt 0.287008 0.716801 -0.167330\r
+vt 0.287008 0.720043 -0.167330\r
+vt 0.287005 0.722049 -0.167330\r
+vt 0.270886 0.663764 -0.167330\r
+vt 0.270928 0.670205 -0.167330\r
+vt 0.270960 0.676535 -0.167330\r
+vt 0.270983 0.682855 -0.167330\r
+vt 0.271001 0.689184 -0.167330\r
+vt 0.271012 0.695467 -0.167330\r
+vt 0.271019 0.701584 -0.167330\r
+vt 0.271022 0.707356 -0.167330\r
+vt 0.271021 0.712551 -0.167330\r
+vt 0.271019 0.716900 -0.167330\r
+vt 0.271016 0.720137 -0.167330\r
+vt 0.271016 0.722140 -0.167330\r
+vt 0.254856 0.663909 -0.167330\r
+vt 0.254885 0.670345 -0.167330\r
+vt 0.254904 0.676671 -0.167330\r
+vt 0.254915 0.682987 -0.167330\r
+vt 0.254920 0.689310 -0.167330\r
+vt 0.254919 0.695588 -0.167330\r
+vt 0.254915 0.701698 -0.167330\r
+vt 0.254908 0.707463 -0.167330\r
+vt 0.254900 0.712651 -0.167330\r
+vt 0.254893 0.716993 -0.167330\r
+vt 0.254889 0.720224 -0.167330\r
+vt 0.254891 0.722223 -0.167330\r
+vt 0.238593 0.664022 -0.167330\r
+vt 0.238605 0.670458 -0.167330\r
+vt 0.238609 0.676784 -0.167330\r
+vt 0.238606 0.683098 -0.167330\r
+vt 0.238598 0.689420 -0.167330\r
+vt 0.238586 0.695694 -0.167330\r
+vt 0.238571 0.701800 -0.167330\r
+vt 0.238556 0.707559 -0.167330\r
+vt 0.238541 0.712740 -0.167330\r
+vt 0.238530 0.717075 -0.167330\r
+vt 0.238524 0.720299 -0.167330\r
+vt 0.238526 0.722293 -0.167330\r
+vt 0.221979 0.664086 -0.167330\r
+vt 0.221970 0.670525 -0.167330\r
+vt 0.221956 0.676855 -0.167330\r
+vt 0.221938 0.683172 -0.167330\r
+vt 0.221917 0.689496 -0.167330\r
+vt 0.221894 0.695771 -0.167330\r
+vt 0.221872 0.701876 -0.167330\r
+vt 0.221850 0.707632 -0.167330\r
+vt 0.221830 0.712808 -0.167330\r
+vt 0.221815 0.717138 -0.167330\r
+vt 0.221806 0.720356 -0.167330\r
+vt 0.221804 0.722344 -0.167330\r
+vt 0.204880 0.664072 -0.167330\r
+vt 0.204843 0.670516 -0.167330\r
+vt 0.204808 0.676851 -0.167330\r
+vt 0.204774 0.683175 -0.167330\r
+vt 0.204741 0.689505 -0.167330\r
+vt 0.204710 0.695785 -0.167330\r
+vt 0.204681 0.701894 -0.167330\r
+vt 0.204656 0.707653 -0.167330\r
+vt 0.204635 0.712830 -0.167330\r
+vt 0.204617 0.717159 -0.167330\r
+vt 0.204602 0.720376 -0.167330\r
+vt 0.204590 0.722362 -0.167330\r
+vt 0.187783 0.663947 -0.167330\r
+vt 0.187715 0.670388 -0.167330\r
+vt 0.187655 0.676722 -0.167330\r
+vt 0.187600 0.683048 -0.167330\r
+vt 0.187551 0.689382 -0.167330\r
+vt 0.187509 0.695669 -0.167330\r
+vt 0.187472 0.701788 -0.167330\r
+vt 0.187442 0.707558 -0.167330\r
+vt 0.187416 0.712748 -0.167330\r
+vt 0.187394 0.717090 -0.167330\r
+vt 0.187372 0.720317 -0.167330\r
+vt 0.187348 0.722311 -0.167330\r
+vt 0.171173 0.663721 -0.167330\r
+vt 0.171071 0.670163 -0.167330\r
+vt 0.170981 0.676501 -0.167330\r
+vt 0.170901 0.682834 -0.167330\r
+vt 0.170831 0.689178 -0.167330\r
+vt 0.170769 0.695478 -0.167330\r
+vt 0.170718 0.701614 -0.167330\r
+vt 0.170675 0.707403 -0.167330\r
+vt 0.170639 0.712612 -0.167330\r
+vt 0.170609 0.716973 -0.167330\r
+vt 0.170581 0.720216 -0.167330\r
+vt 0.170550 0.722222 -0.167330\r
+vt 0.154907 0.663401 -0.167330\r
+vt 0.154767 0.669853 -0.167330\r
+vt 0.154644 0.676203 -0.167330\r
+vt 0.154534 0.682551 -0.167330\r
+vt 0.154437 0.688914 -0.167330\r
+vt 0.154352 0.695235 -0.167330\r
+vt 0.154280 0.701393 -0.167330\r
+vt 0.154220 0.707207 -0.167330\r
+vt 0.154170 0.712441 -0.167330\r
+vt 0.154130 0.716824 -0.167330\r
+vt 0.154094 0.720086 -0.167330\r
+vt 0.154060 0.722107 -0.167330\r
+vt 0.138850 0.662984 -0.167330\r
+vt 0.138670 0.669458 -0.167330\r
+vt 0.138510 0.675833 -0.167330\r
+vt 0.138368 0.682206 -0.167330\r
+vt 0.138241 0.688596 -0.167330\r
+vt 0.138130 0.694946 -0.167330\r
+vt 0.138034 0.701135 -0.167330\r
+vt 0.137955 0.706978 -0.167330\r
+vt 0.137891 0.712241 -0.167330\r
+vt 0.137839 0.716650 -0.167330\r
+vt 0.137798 0.719934 -0.167330\r
+vt 0.137762 0.721970 -0.167330\r
+vt 0.122878 0.662468 -0.167330\r
+vt 0.122657 0.668978 -0.167330\r
+vt 0.122460 0.675389 -0.167330\r
+vt 0.122284 0.681799 -0.167330\r
+vt 0.122127 0.688227 -0.167330\r
+vt 0.121989 0.694616 -0.167330\r
+vt 0.121871 0.700842 -0.167330\r
+vt 0.121773 0.706722 -0.167330\r
+vt 0.121695 0.712018 -0.167330\r
+vt 0.121634 0.716456 -0.167330\r
+vt 0.121588 0.719763 -0.167330\r
+vt 0.121554 0.721815 -0.167330\r
+vt 0.106872 0.661848 -0.167330\r
+vt 0.106610 0.668410 -0.167330\r
+vt 0.106378 0.674872 -0.167330\r
+vt 0.106170 0.681333 -0.167330\r
+vt 0.105986 0.687810 -0.167330\r
+vt 0.105825 0.694246 -0.167330\r
+vt 0.105688 0.700518 -0.167330\r
+vt 0.105575 0.706440 -0.167330\r
+vt 0.105485 0.711774 -0.167330\r
+vt 0.105419 0.716244 -0.167330\r
+vt 0.105373 0.719575 -0.167330\r
+vt 0.105344 0.721645 -0.167330\r
+vt 0.090708 0.661123 -0.167330\r
+vt 0.090407 0.667763 -0.167330\r
+vt 0.090144 0.674299 -0.167330\r
+vt 0.089911 0.680830 -0.167330\r
+vt 0.089708 0.687374 -0.167330\r
+vt 0.089532 0.693872 -0.167330\r
+vt 0.089385 0.700198 -0.167330\r
+vt 0.089266 0.706167 -0.167330\r
+vt 0.089174 0.711539 -0.167330\r
+vt 0.089108 0.716039 -0.167330\r
+vt 0.089067 0.719392 -0.167330\r
+vt 0.089048 0.721476 -0.167330\r
+vt 0.074235 0.660289 -0.167330\r
+vt 0.073900 0.667036 -0.167330\r
+vt 0.073616 0.673672 -0.167330\r
+vt 0.073373 0.680296 -0.167330\r
+vt 0.073168 0.686924 -0.167330\r
+vt 0.072997 0.693496 -0.167330\r
+vt 0.072860 0.699884 -0.167330\r
+vt 0.072752 0.705903 -0.167330\r
+vt 0.072672 0.711314 -0.167330\r
+vt 0.072618 0.715842 -0.167330\r
+vt 0.072589 0.719215 -0.167330\r
+vt 0.072585 0.721310 -0.167330\r
+vt 0.057267 0.659349 -0.167330\r
+vt 0.056910 0.666250 -0.167330\r
+vt 0.056626 0.673027 -0.167330\r
+vt 0.625246 0.333829 0.000000\r
+vt 0.611664 0.255880 0.000000\r
+vt 0.612581 0.260170 0.000000\r
+vt 0.613863 0.266162 0.000000\r
+vt 0.615582 0.274188 0.000000\r
+vt 0.617807 0.284570 0.000000\r
+vt 0.620607 0.297626 0.000000\r
+vt 0.056402 0.679779 -0.167330\r
+vt 0.056229 0.686516 -0.167330\r
+vt 0.056099 0.693176 -0.167330\r
+vt 0.056004 0.699633 -0.167330\r
+vt 0.624050 0.313669 0.000000\r
+vt 0.628207 0.333012 0.000000\r
+vt 0.625216 0.254018 0.000000\r
+vt 0.625552 0.258388 0.000000\r
+vt 0.626022 0.264490 0.000000\r
+vt 0.626654 0.272664 0.000000\r
+vt 0.627473 0.283239 0.000000\r
+vt 0.055936 0.705700 -0.167330\r
+vt 0.055891 0.711142 -0.167330\r
+vt 0.055865 0.715689 -0.167330\r
+vt 0.055859 0.719072 -0.167330\r
+vt 0.628505 0.296537 0.000000\r
+vt 0.629776 0.312878 0.000000\r
+vt 0.631314 0.332582 0.000000\r
+vt 0.639281 0.253953 0.000000\r
+vt 0.639015 0.258325 0.000000\r
+vt 0.638644 0.264430 0.000000\r
+vt 0.638147 0.272609 0.000000\r
+vt 0.055875 0.721170 -0.167330\r
+vt 0.039521 0.658310 -0.167330\r
+vt 0.039166 0.665452 -0.167330\r
+vt 0.038934 0.672445 -0.167330\r
+vt 0.637507 0.283189 0.000000\r
+vt 0.636704 0.296494 0.000000\r
+vt 0.635721 0.312846 0.000000\r
+vt 0.634540 0.332563 0.000000\r
+vt 0.640879 0.453506 0.000000\r
+vt 0.641226 0.457869 0.000000\r
+vt 0.640393 0.447410 0.000000\r
+vt 0.038796 0.679381 -0.167330\r
+vt 0.038727 0.686264 -0.167330\r
+vt 0.038708 0.693028 -0.167330\r
+vt 0.038717 0.699549 -0.167330\r
+vt 0.639741 0.439243 0.000000\r
+vt 0.638899 0.428677 0.000000\r
+vt 0.637842 0.415386 0.000000\r
+vt 0.636546 0.399050 0.000000\r
+vt 0.634988 0.379350 0.000000\r
+vt 0.653830 0.451693 0.000000\r
+vt 0.654757 0.455976 0.000000\r
+vt 0.038740 0.705647 -0.167330\r
+vt 0.038765 0.711097 -0.167330\r
+vt 0.038788 0.715637 -0.167330\r
+vt 0.038815 0.719007 -0.167330\r
+vt 0.652536 0.445711 0.000000\r
+vt 0.650801 0.437696 0.000000\r
+vt 0.648557 0.427327 0.000000\r
+vt 0.645735 0.414284 0.000000\r
+vt 0.642270 0.398252 0.000000\r
+vt 0.638095 0.378918 0.000000\r
+vt 0.666169 0.448269 0.000000\r
+vt 0.038851 0.721092 -0.167330\r
+vt 0.020461 0.657156 -0.167330\r
+vt 0.020183 0.664754 -0.167330\r
+vt 0.020160 0.672122 -0.167330\r
+vt 0.667647 0.452398 0.000000\r
+vt 0.664104 0.442501 0.000000\r
+vt 0.661336 0.434773 0.000000\r
+vt 0.657756 0.424775 0.000000\r
+vt 0.653254 0.412200 0.000000\r
+vt 0.647722 0.396742 0.000000\r
+vt 0.641055 0.378099 0.000000\r
+vt 0.020290 0.679356 -0.167330\r
+vt 0.020485 0.686427 -0.167330\r
+vt 0.020715 0.693293 -0.167330\r
+vt 0.020947 0.699846 -0.167330\r
+vt 0.677781 0.443335 0.000000\r
+vt 0.679778 0.447244 0.000000\r
+vt 0.674990 0.437875 0.000000\r
+vt 0.671251 0.430561 0.000000\r
+vt 0.666413 0.421098 0.000000\r
+vt 0.660329 0.409196 0.000000\r
+vt 0.652853 0.394564 0.000000\r
+vt 0.021151 0.705922 -0.167330\r
+vt 0.021306 0.711314 -0.167330\r
+vt 0.021407 0.715783 -0.167330\r
+vt 0.021466 0.719088 -0.167330\r
+vt 0.643841 0.376918 0.000000\r
+vt 0.688550 0.436993 0.000000\r
+vt 0.691029 0.440618 0.000000\r
+vt 0.685086 0.431930 0.000000\r
+vt 0.680445 0.425148 0.000000\r
+vt 0.674442 0.416372 0.000000\r
+vt 0.666891 0.405333 0.000000\r
+vt 0.021504 0.721127 -0.167330\r
+vt 0.384717 0.722964 -0.167330\r
+vt 0.384717 0.724704 -0.167330\r
+vt 0.384730 0.727090 -0.167330\r
+vt 0.657612 0.391764 0.000000\r
+vt 0.646424 0.375399 0.000000\r
+vt 0.698362 0.429345 0.000000\r
+vt 0.701281 0.432627 0.000000\r
+vt 0.694285 0.424761 0.000000\r
+vt 0.688823 0.418619 0.000000\r
+vt 0.681757 0.410671 0.000000\r
+vt 0.384763 0.730718 0.165152\r
+vt 0.367776 0.723090 -0.167330\r
+vt 0.367769 0.724836 -0.167330\r
+vt 0.367775 0.727228 -0.167330\r
+vt 0.672870 0.400675 0.000000\r
+vt 0.661949 0.388387 0.000000\r
+vt 0.648779 0.373566 0.000000\r
+vt 0.707103 0.420494 0.000000\r
+vt 0.710412 0.423379 0.000000\r
+vt 0.702479 0.416463 0.000000\r
+vt 0.696286 0.411062 0.000000\r
+vt 0.367805 0.730863 0.165612\r
+vt 0.351228 0.723208 -0.167330\r
+vt 0.351216 0.724961 -0.167330\r
+vt 0.351218 0.727359 -0.167330\r
+vt 0.688274 0.404074 0.000000\r
+vt 0.678197 0.395284 0.000000\r
+vt 0.665812 0.384478 0.000000\r
+vt 0.650876 0.371444 0.000000\r
+vt 0.714657 0.410541 0.000000\r
+vt 0.718305 0.412981 0.000000\r
+vt 0.709562 0.407132 0.000000\r
+vt 0.351240 0.730999 0.166137\r
+vt 0.334964 0.723321 -0.167330\r
+vt 0.334951 0.725079 -0.167330\r
+vt 0.334949 0.727482 -0.167330\r
+vt 0.702737 0.402565 0.000000\r
+vt 0.693907 0.396655 0.000000\r
+vt 0.682801 0.389221 0.000000\r
+vt 0.669151 0.380082 0.000000\r
+vt 0.652689 0.369058 0.000000\r
+vt 0.720912 0.399588 0.000000\r
+vt 0.724839 0.401538 0.000000\r
+vt 0.334964 0.731126 0.166623\r
+vt 0.318893 0.723430 -0.167330\r
+vt 0.318881 0.725191 -0.167330\r
+vt 0.318876 0.727597 -0.167330\r
+vt 0.715426 0.396864 0.000000\r
+vt 0.708078 0.393214 0.000000\r
+vt 0.698570 0.388490 0.000000\r
+vt 0.686613 0.382548 0.000000\r
+vt 0.671916 0.375243 0.000000\r
+vt 0.654190 0.366431 0.000000\r
+vt 0.725751 0.387739 0.000000\r
+vt 0.318884 0.731242 0.167009\r
+vt 0.302932 0.723531 -0.167330\r
+vt 0.302923 0.725295 -0.167330\r
+vt 0.302917 0.727702 -0.167330\r
+vt 0.729895 0.389158 0.000000\r
+vt 0.719964 0.385755 0.000000\r
+vt 0.712211 0.383097 0.000000\r
+vt 0.702180 0.379656 0.000000\r
+vt 0.689563 0.375328 0.000000\r
+vt 0.674056 0.370008 0.000000\r
+vt 0.655352 0.363589 0.000000\r
+vt 0.302917 0.731346 0.167255\r
+vt 0.287001 0.723631 -0.167330\r
+vt 0.286995 0.725394 -0.167330\r
+vt 0.286990 0.727799 -0.167330\r
+vt 0.729062 0.375094 0.000000\r
+vt 0.733353 0.375948 0.000000\r
+vt 0.723068 0.373900 0.000000\r
+vt 0.715039 0.372300 0.000000\r
+vt 0.704649 0.370229 0.000000\r
+vt 0.691582 0.367623 0.000000\r
+vt 0.675520 0.364420 0.000000\r
+vt 0.286982 0.731437 0.167330\r
+vt 0.271017 0.723720 -0.167330\r
+vt 0.271016 0.725480 -0.167330\r
+vt 0.271010 0.727880 -0.167330\r
+vt 0.656147 0.360556 0.000000\r
+vt 0.730731 0.361755 0.000000\r
+vt 0.735096 0.362014 0.000000\r
+vt 0.724633 0.361394 0.000000\r
+vt 0.716464 0.360909 0.000000\r
+vt 0.705894 0.360283 0.000000\r
+vt 0.692599 0.359494 0.000000\r
+vt 0.270999 0.731513 0.167212\r
+vt 0.254896 0.723799 -0.167330\r
+vt 0.254896 0.725554 -0.167330\r
+vt 0.254891 0.727949 -0.167330\r
+vt 0.676258 0.358525 0.000000\r
+vt 0.656548 0.357356 0.000000\r
+vt 0.730650 0.348313 0.000000\r
+vt 0.735012 0.347972 0.000000\r
+vt 0.724557 0.348790 0.000000\r
+vt 0.716394 0.349431 0.000000\r
+vt 0.705833 0.350260 0.000000\r
+vt 0.254876 0.731574 0.166888\r
+vt 0.238532 0.723864 -0.167330\r
+vt 0.238533 0.725613 -0.167330\r
+vt 0.238527 0.728002 -0.167330\r
+vt 0.692550 0.351302 0.000000\r
+vt 0.676222 0.352584 0.000000\r
+vt 0.656529 0.354131 0.000000\r
+vt 0.728856 0.335365 0.000000\r
+vt 0.733137 0.334446 0.000000\r
+vt 0.722874 0.336652 0.000000\r
+vt 0.714862 0.338376 0.000000\r
+vt 0.238510 0.731618 0.166371\r
+vt 0.221806 0.723909 -0.167330\r
+vt 0.221804 0.725653 -0.167330\r
+vt 0.221796 0.728036 -0.167330\r
+vt 0.704495 0.340606 0.000000\r
+vt 0.691456 0.343412 0.000000\r
+vt 0.675429 0.346862 0.000000\r
+vt 0.656098 0.351025 0.000000\r
+vt 0.725449 0.323028 0.000000\r
+vt 0.729579 0.321556 0.000000\r
+vt 0.719681 0.325085 0.000000\r
+vt 0.221779 0.731644 0.165722\r
+vt 0.204578 0.723924 -0.167330\r
+vt 0.204566 0.725666 -0.167330\r
+vt 0.204554 0.728045 -0.167330\r
+vt 0.711954 0.327841 0.000000\r
+vt 0.701956 0.331408 0.000000\r
+vt 0.689380 0.335895 0.000000\r
+vt 0.673923 0.341411 0.000000\r
+vt 0.655280 0.348065 0.000000\r
+vt 0.720533 0.311415 0.000000\r
+vt 0.724443 0.309424 0.000000\r
+vt 0.204542 0.731651 0.165075\r
+vt 0.187321 0.723880 -0.167330\r
+vt 0.187299 0.725629 -0.167330\r
+vt 0.187282 0.728018 -0.167330\r
+vt 0.715072 0.314198 0.000000\r
+vt 0.707756 0.317926 0.000000\r
+vt 0.698290 0.322750 0.000000\r
+vt 0.686384 0.328819 0.000000\r
+vt 0.671750 0.336279 0.000000\r
+vt 0.654100 0.345279 0.000000\r
+vt 0.714208 0.300641 0.000000\r
+vt 0.187275 0.731638 0.164598\r
+vt 0.170516 0.723803 -0.167330\r
+vt 0.170488 0.725563 -0.167330\r
+vt 0.170466 0.727967 -0.167330\r
+vt 0.717835 0.298168 0.000000\r
+vt 0.709142 0.304097 0.000000\r
+vt 0.702356 0.308727 0.000000\r
+vt 0.693574 0.314718 0.000000\r
+vt 0.682530 0.322254 0.000000\r
+vt 0.668954 0.331519 0.000000\r
+vt 0.652582 0.342695 0.000000\r
+vt 0.170455 0.731606 0.164176\r
+vt 0.989314 0.145087 0.000000\r
+vt 0.904992 0.123776 0.000000\r
+vt 0.904709 0.137850 0.000000\r
+vt 0.932442 0.143215 0.000000\r
+vt 0.932715 0.126779 0.000000\r
+vt 0.939817 0.127668 0.000000\r
+vt 0.940156 0.144756 0.000000\r
+vt 0.915223 0.139102 0.000000\r
+vt 0.915696 0.124629 0.000000\r
+vt 0.924803 0.125709 0.000000\r
+vt 0.924239 0.141365 0.000000\r
+vt 0.923563 0.113407 0.000000\r
+vt 0.914867 0.112469 0.000000\r
+vt 0.904547 0.111784 0.000000\r
+vt 0.913037 0.101691 0.000000\r
+vt 0.903536 0.101159 0.000000\r
+vt 0.975238 0.109107 0.000000\r
+vt 0.968182 0.097135 0.000000\r
+vt 0.967816 0.112198 0.000000\r
+vt 0.961545 0.100534 0.000000\r
+vt 0.961235 0.114173 0.000000\r
+vt 0.955577 0.102768 0.000000\r
+vt 0.955177 0.115292 0.000000\r
+vt 0.950043 0.104090 0.000000\r
+vt 0.949375 0.115744 0.000000\r
+vt 0.944732 0.104680 0.000000\r
+vt 0.943587 0.115665 0.000000\r
+vt 0.939435 0.104673 0.000000\r
+vt 0.937560 0.115169 0.000000\r
+vt 0.933922 0.104201 0.000000\r
+vt 0.931001 0.114369 0.000000\r
+vt 0.927907 0.103417 0.000000\r
+vt 0.921057 0.102513 0.000000\r
+vt 0.923807 0.093181 0.000000\r
+vt 0.917673 0.092391 0.000000\r
+vt 0.910539 0.091732 0.000000\r
+vt 0.913874 0.082708 0.000000\r
+vt 0.907748 0.082278 0.000000\r
+vt 0.902154 0.091356 0.000000\r
+vt 0.900614 0.082071 0.000000\r
+vt 0.960362 0.086094 0.000000\r
+vt 0.951921 0.075424 0.000000\r
+vt 0.954452 0.089623 0.000000\r
+vt 0.946688 0.078860 0.000000\r
+vt 0.949041 0.092017 0.000000\r
+vt 0.941830 0.081277 0.000000\r
+vt 0.943974 0.093493 0.000000\r
+vt 0.937247 0.082843 0.000000\r
+vt 0.939096 0.094206 0.000000\r
+vt 0.932830 0.083688 0.000000\r
+vt 0.934247 0.094289 0.000000\r
+vt 0.928460 0.083937 0.000000\r
+vt 0.929233 0.093886 0.000000\r
+vt 0.923986 0.083731 0.000000\r
+vt 0.919204 0.083253 0.000000\r
+vt 0.918766 0.073661 0.000000\r
+vt 0.914638 0.073587 0.000000\r
+vt 0.910114 0.073422 0.000000\r
+vt 0.910554 0.064354 0.000000\r
+vt 0.906750 0.064665 0.000000\r
+vt 0.904998 0.073294 0.000000\r
+vt 0.902533 0.064892 0.000000\r
+vt 0.899095 0.073275 0.000000\r
+vt 0.897731 0.065080 0.000000\r
+vt 0.943344 0.064854 0.000000\r
+vt 0.935335 0.054278 0.000000\r
+vt 0.938748 0.067987 0.000000\r
+vt 0.931339 0.056987 0.000000\r
+vt 0.934468 0.070304 0.000000\r
+vt 0.927651 0.059165 0.000000\r
+vt 0.930424 0.071925 0.000000\r
+vt 0.924176 0.060887 0.000000\r
+vt 0.926527 0.072955 0.000000\r
+vt 0.920817 0.062214 0.000000\r
+vt 0.922680 0.073495 0.000000\r
+vt 0.917484 0.063196 0.000000\r
+vt 0.914094 0.063889 0.000000\r
+vt 0.913260 0.053300 0.000000\r
+vt 0.910307 0.054622 0.000000\r
+vt 0.907244 0.055701 0.000000\r
+vt 0.907566 0.045827 0.000000\r
+vt 0.904853 0.047577 0.000000\r
+vt 0.904013 0.056540 0.000000\r
+vt 0.902029 0.048993 0.000000\r
+vt 0.900516 0.057160 0.000000\r
+vt 0.899041 0.050045 0.000000\r
+vt 0.896606 0.057575 0.000000\r
+vt 0.895773 0.050720 0.000000\r
+vt 0.928572 0.043667 0.000000\r
+vt 0.923523 0.032900 0.000000\r
+vt 0.925113 0.045951 0.000000\r
+vt 0.920485 0.034856 0.000000\r
+vt 0.921973 0.048057 0.000000\r
+vt 0.917773 0.037009 0.000000\r
+vt 0.919023 0.049993 0.000000\r
+vt 0.915231 0.039285 0.000000\r
+vt 0.916147 0.051748 0.000000\r
+vt 0.912730 0.041586 0.000000\r
+vt 0.910187 0.043801 0.000000\r
+vt 0.910715 0.031353 0.000000\r
+vt 0.908387 0.034303 0.000000\r
+vt 0.905961 0.037107 0.000000\r
+vt 0.908074 0.024278 0.000000\r
+vt 0.905693 0.027900 0.000000\r
+vt 0.903445 0.039608 0.000000\r
+vt 0.903177 0.031213 0.000000\r
+vt 0.900849 0.041684 0.000000\r
+vt 0.900575 0.034030 0.000000\r
+vt 0.898150 0.043248 0.000000\r
+vt 0.897901 0.036194 0.000000\r
+vt 0.895257 0.044244 0.000000\r
+vt 0.895083 0.037585 0.000000\r
+vt 0.920409 0.021624 0.000000\r
+vt 0.918937 0.009374 0.000000\r
+vt 0.917673 0.023416 0.000000\r
+vt 0.916534 0.011243 0.000000\r
+vt 0.915250 0.025732 0.000000\r
+vt 0.914406 0.013825 0.000000\r
+vt 0.912975 0.028434 0.000000\r
+vt 0.912372 0.016998 0.000000\r
+vt 0.910292 0.020563 0.000000\r
+vt 0.912424 0.014289 0.000000\r
+vt 0.910404 0.017963 0.000000\r
+vt 0.908217 0.021830 0.000000\r
+vt 0.910479 0.015868 0.000000\r
+vt 0.908297 0.019801 0.000000\r
+vt 0.905836 0.025626 0.000000\r
+vt 0.905910 0.023684 0.000000\r
+vt 0.903295 0.029116 0.000000\r
+vt 0.903351 0.027273 0.000000\r
+vt 0.900652 0.032101 0.000000\r
+vt 0.900681 0.030359 0.000000\r
+vt 0.897938 0.034411 0.000000\r
+vt 0.897941 0.032764 0.000000\r
+vt 0.895090 0.035901 0.000000\r
+vt 0.895078 0.034323 0.000000\r
+vt 0.918547 0.006641 0.000000\r
+vt 0.918191 0.004668 0.000000\r
+vt 0.916362 0.008508 0.000000\r
+vt 0.916244 0.006495 0.000000\r
+vt 0.914371 0.011073 0.000000\r
+vt 0.914377 0.008986 0.000000\r
+vt 0.912482 0.012170 0.000000\r
+vt 0.914420 0.007484 0.000000\r
+vt 0.912539 0.010583 0.000000\r
+vt 0.910516 0.014242 0.000000\r
+vt 0.912557 0.009475 0.000000\r
+vt 0.910483 0.013051 0.000000\r
+vt 0.908315 0.018172 0.000000\r
+vt 0.908251 0.016929 0.000000\r
+vt 0.905918 0.022074 0.000000\r
+vt 0.905849 0.020797 0.000000\r
+vt 0.903351 0.025694 0.000000\r
+vt 0.903291 0.024393 0.000000\r
+vt 0.900669 0.028820 0.000000\r
+vt 0.900618 0.027506 0.000000\r
+vt 0.897917 0.031270 0.000000\r
+vt 0.897870 0.029956 0.000000\r
+vt 0.895053 0.032869 0.000000\r
+vt 0.895017 0.031564 0.000000\r
+vt 0.917904 0.003364 0.000000\r
+vt 0.917724 0.002624 0.000000\r
+vt 0.916187 0.005111 0.000000\r
+vt 0.916183 0.004265 0.000000\r
+vt 0.914468 0.006497 0.000000\r
+vt 0.916179 0.003847 0.000000\r
+vt 0.914435 0.005935 0.000000\r
+vt 0.912455 0.008786 0.000000\r
+vt 0.917661 0.002318 0.000000\r
+vt 0.894969 0.030439 0.000000\r
+vt 0.897797 0.028852 0.000000\r
+vt 0.900517 0.026441 0.000000\r
+vt 0.903155 0.023384 0.000000\r
+vt 0.905682 0.019854 0.000000\r
+vt 0.908072 0.016058 0.000000\r
+vt 0.910325 0.012262 0.000000\r
+vt 0.946446 0.128278 0.000000\r
+vt 0.947665 0.146046 0.000000\r
+vt 0.952870 0.128508 0.000000\r
+vt 0.955163 0.146967 0.000000\r
+vt 0.959333 0.128254 0.000000\r
+vt 0.962839 0.147491 0.000000\r
+vt 0.966072 0.127385 0.000000\r
+vt 0.970591 0.147364 0.000000\r
+vt 0.973395 0.125727 0.000000\r
+vt 0.981682 0.123042 0.000000\r
+vt 0.983794 0.259659 0.000000\r
+vt 0.996010 0.260095 0.000000\r
+vt 0.994938 0.262337 0.000000\r
+vt 0.983408 0.261887 0.000000\r
+vt 0.993757 0.264601 0.000000\r
+vt 0.983014 0.264118 0.000000\r
+vt 0.992570 0.267141 0.000000\r
+vt 0.982613 0.266646 0.000000\r
+vt 0.991392 0.270198 0.000000\r
+vt 0.982206 0.269699 0.000000\r
+vt 0.990270 0.273931 0.000000\r
+vt 0.981797 0.273436 0.000000\r
+vt 0.989250 0.278463 0.000000\r
+vt 0.981390 0.277977 0.000000\r
+vt 0.998580 0.246039 0.000000\r
+vt 0.984993 0.245901 0.000000\r
+vt 0.998334 0.250642 0.000000\r
+vt 0.984790 0.250392 0.000000\r
+vt 0.997780 0.254433 0.000000\r
+vt 0.984503 0.254099 0.000000\r
+vt 0.996985 0.257531 0.000000\r
+vt 0.984164 0.257137 0.000000\r
+vt 0.968400 0.253612 0.000000\r
+vt 0.968518 0.256565 0.000000\r
+vt 0.968675 0.259030 0.000000\r
+vt 0.954805 0.255890 0.000000\r
+vt 0.955352 0.258304 0.000000\r
+vt 0.968853 0.261221 0.000000\r
+vt 0.955957 0.260468 0.000000\r
+vt 0.969025 0.263423 0.000000\r
+vt 0.956564 0.262654 0.000000\r
+vt 0.969159 0.265926 0.000000\r
+vt 0.957112 0.265142 0.000000\r
+vt 0.969221 0.268954 0.000000\r
+vt 0.957536 0.268153 0.000000\r
+vt 0.969180 0.272665 0.000000\r
+vt 0.957772 0.271845 0.000000\r
+vt 0.969005 0.277181 0.000000\r
+vt 0.957760 0.276338 0.000000\r
+vt 0.968296 0.245701 0.000000\r
+vt 0.953845 0.245448 0.000000\r
+vt 0.968328 0.250027 0.000000\r
+vt 0.954034 0.249579 0.000000\r
+vt 0.954357 0.253026 0.000000\r
+vt 0.941883 0.249029 0.000000\r
+vt 0.942348 0.252312 0.000000\r
+vt 0.942995 0.255078 0.000000\r
+vt 0.932329 0.251467 0.000000\r
+vt 0.933050 0.254122 0.000000\r
+vt 0.943794 0.257446 0.000000\r
+vt 0.933961 0.256445 0.000000\r
+vt 0.944687 0.259595 0.000000\r
+vt 0.935003 0.258592 0.000000\r
+vt 0.945600 0.261778 0.000000\r
+vt 0.936089 0.260792 0.000000\r
+vt 0.946443 0.264265 0.000000\r
+vt 0.937113 0.263296 0.000000\r
+vt 0.947128 0.267271 0.000000\r
+vt 0.937962 0.266315 0.000000\r
+vt 0.947562 0.270954 0.000000\r
+vt 0.938522 0.270006 0.000000\r
+vt 0.947658 0.275433 0.000000\r
+vt 0.938681 0.274487 0.000000\r
+vt 0.941614 0.245134 0.000000\r
+vt 0.931545 0.244763 0.000000\r
+vt 0.931827 0.248377 0.000000\r
+vt 0.923494 0.244360 0.000000\r
+vt 0.923741 0.247666 0.000000\r
+vt 0.924201 0.250537 0.000000\r
+vt 0.917380 0.246983 0.000000\r
+vt 0.917758 0.249627 0.000000\r
+vt 0.924886 0.253063 0.000000\r
+vt 0.918338 0.252006 0.000000\r
+vt 0.925781 0.255335 0.000000\r
+vt 0.919122 0.254211 0.000000\r
+vt 0.926837 0.257489 0.000000\r
+vt 0.920076 0.256363 0.000000\r
+vt 0.927967 0.259722 0.000000\r
+vt 0.921132 0.258631 0.000000\r
+vt 0.929056 0.262262 0.000000\r
+vt 0.922180 0.261221 0.000000\r
+vt 0.929978 0.265316 0.000000\r
+vt 0.923090 0.264328 0.000000\r
+vt 0.930601 0.269038 0.000000\r
+vt 0.923721 0.268108 0.000000\r
+vt 0.930792 0.273545 0.000000\r
+vt 0.923930 0.272674 0.000000\r
+vt 0.917185 0.243979 0.000000\r
+vt 0.912224 0.243673 0.000000\r
+vt 0.912375 0.246426 0.000000\r
+vt 0.908139 0.243477 0.000000\r
+vt 0.908263 0.246065 0.000000\r
+vt 0.912668 0.248866 0.000000\r
+vt 0.908493 0.248363 0.000000\r
+vt 0.913124 0.251098 0.000000\r
+vt 0.908841 0.250479 0.000000\r
+vt 0.913750 0.253220 0.000000\r
+vt 0.909315 0.252521 0.000000\r
+vt 0.914534 0.255348 0.000000\r
+vt 0.909916 0.254608 0.000000\r
+vt 0.915430 0.257635 0.000000\r
+vt 0.910621 0.256887 0.000000\r
+vt 0.916352 0.260268 0.000000\r
+vt 0.911377 0.259538 0.000000\r
+vt 0.917182 0.263435 0.000000\r
+vt 0.912091 0.262749 0.000000\r
+vt 0.917781 0.267293 0.000000\r
+vt 0.912644 0.266683 0.000000\r
+vt 0.918009 0.271946 0.000000\r
+vt 0.912912 0.271434 0.000000\r
+vt 0.904419 0.243402 0.000000\r
+vt 0.900538 0.243444 0.000000\r
+vt 0.904535 0.245931 0.000000\r
+vt 0.900664 0.246019 0.000000\r
+vt 0.904730 0.248171 0.000000\r
+vt 0.900853 0.248295 0.000000\r
+vt 0.905005 0.250233 0.000000\r
+vt 0.901097 0.250381 0.000000\r
+vt 0.905366 0.252230 0.000000\r
+vt 0.901397 0.252391 0.000000\r
+vt 0.905817 0.254284 0.000000\r
+vt 0.901759 0.254447 0.000000\r
+vt 0.906356 0.256542 0.000000\r
+vt 0.902192 0.256697 0.000000\r
+vt 0.906958 0.259183 0.000000\r
+vt 0.902694 0.259316 0.000000\r
+vt 0.907566 0.262402 0.000000\r
+vt 0.903245 0.262501 0.000000\r
+vt 0.908095 0.266372 0.000000\r
+vt 0.903790 0.266438 0.000000\r
+vt 0.908440 0.271186 0.000000\r
+vt 0.904250 0.271233 0.000000\r
+vt 0.895972 0.243588 0.000000\r
+vt 0.890749 0.243760 0.000000\r
+vt 0.896120 0.246303 0.000000\r
+vt 0.890912 0.246641 0.000000\r
+vt 0.896332 0.248697 0.000000\r
+vt 0.891146 0.249177 0.000000\r
+vt 0.896592 0.250883 0.000000\r
+vt 0.891432 0.251483 0.000000\r
+vt 0.896896 0.252969 0.000000\r
+vt 0.891763 0.253670 0.000000\r
+vt 0.897248 0.255078 0.000000\r
+vt 0.892140 0.255856 0.000000\r
+vt 0.897659 0.257350 0.000000\r
+vt 0.892571 0.258180 0.000000\r
+vt 0.898140 0.259954 0.000000\r
+vt 0.893068 0.260796 0.000000\r
+vt 0.898691 0.263077 0.000000\r
+vt 0.893635 0.263882 0.000000\r
+vt 0.899286 0.266910 0.000000\r
+vt 0.894262 0.267625 0.000000\r
+vt 0.899868 0.271592 0.000000\r
+vt 0.894914 0.272187 0.000000\r
+vt 0.885193 0.243919 0.000000\r
+vt 0.879223 0.244074 0.000000\r
+vt 0.885357 0.246951 0.000000\r
+vt 0.879380 0.247258 0.000000\r
+vt 0.885593 0.249615 0.000000\r
+vt 0.879609 0.250044 0.000000\r
+vt 0.885883 0.252027 0.000000\r
+vt 0.879889 0.252553 0.000000\r
+vt 0.886219 0.254301 0.000000\r
+vt 0.880214 0.254903 0.000000\r
+vt 0.886601 0.256561 0.000000\r
+vt 0.880585 0.257219 0.000000\r
+vt 0.887035 0.258938 0.000000\r
+vt 0.881005 0.259640 0.000000\r
+vt 0.887529 0.261586 0.000000\r
+vt 0.881481 0.262317 0.000000\r
+vt 0.888088 0.264673 0.000000\r
+vt 0.882015 0.265418 0.000000\r
+vt 0.888706 0.268381 0.000000\r
+vt 0.882602 0.269123 0.000000\r
+vt 0.889363 0.272884 0.000000\r
+vt 0.883226 0.273609 0.000000\r
+vt 0.872714 0.244238 0.000000\r
+vt 0.865522 0.244412 0.000000\r
+vt 0.872867 0.247580 0.000000\r
+vt 0.865676 0.247924 0.000000\r
+vt 0.873087 0.250489 0.000000\r
+vt 0.865899 0.250958 0.000000\r
+vt 0.873357 0.253086 0.000000\r
+vt 0.866172 0.253634 0.000000\r
+vt 0.873669 0.255493 0.000000\r
+vt 0.866487 0.256080 0.000000\r
+vt 0.874025 0.257845 0.000000\r
+vt 0.866844 0.258439 0.000000\r
+vt 0.874429 0.260286 0.000000\r
+vt 0.867246 0.260873 0.000000\r
+vt 0.874883 0.262977 0.000000\r
+vt 0.867694 0.263560 0.000000\r
+vt 0.875389 0.266093 0.000000\r
+vt 0.868183 0.266683 0.000000\r
+vt 0.875937 0.269811 0.000000\r
+vt 0.868702 0.270422 0.000000\r
+vt 0.876512 0.274308 0.000000\r
+vt 0.869231 0.274948 0.000000\r
+vt 0.857484 0.244595 0.000000\r
+vt 0.848437 0.244779 0.000000\r
+vt 0.857655 0.248288 0.000000\r
+vt 0.848647 0.248660 0.000000\r
+vt 0.857904 0.251449 0.000000\r
+vt 0.848960 0.251947 0.000000\r
+vt 0.858210 0.254195 0.000000\r
+vt 0.849344 0.254757 0.000000\r
+vt 0.858561 0.256660 0.000000\r
+vt 0.849784 0.257227 0.000000\r
+vt 0.858955 0.259001 0.000000\r
+vt 0.850272 0.259529 0.000000\r
+vt 0.859392 0.261403 0.000000\r
+vt 0.850802 0.261878 0.000000\r
+vt 0.859868 0.264066 0.000000\r
+vt 0.851362 0.264502 0.000000\r
+vt 0.860374 0.267187 0.000000\r
+vt 0.851934 0.267615 0.000000\r
+vt 0.860889 0.270948 0.000000\r
+vt 0.852491 0.271399 0.000000\r
+vt 0.861391 0.275513 0.000000\r
+vt 0.852999 0.276008 0.000000\r
+vt 0.838227 0.244954 0.000000\r
+vt 0.826722 0.245108 0.000000\r
+vt 0.838509 0.249021 0.000000\r
+vt 0.827113 0.249353 0.000000\r
+vt 0.838931 0.252432 0.000000\r
+vt 0.827706 0.252885 0.000000\r
+vt 0.839456 0.255302 0.000000\r
+vt 0.828446 0.255814 0.000000\r
+vt 0.840057 0.257769 0.000000\r
+vt 0.829294 0.258283 0.000000\r
+vt 0.840715 0.260024 0.000000\r
+vt 0.830214 0.260498 0.000000\r
+vt 0.841414 0.262312 0.000000\r
+vt 0.831173 0.262732 0.000000\r
+vt 0.842132 0.264893 0.000000\r
+vt 0.832137 0.265278 0.000000\r
+vt 0.842839 0.267997 0.000000\r
+vt 0.833059 0.268376 0.000000\r
+vt 0.843495 0.271803 0.000000\r
+vt 0.833887 0.272205 0.000000\r
+vt 0.844056 0.276457 0.000000\r
+vt 0.834560 0.276900 0.000000\r
+vt 0.813812 0.245234 0.000000\r
+vt 0.799388 0.245341 0.000000\r
+vt 0.814360 0.249647 0.000000\r
+vt 0.800155 0.249916 0.000000\r
+vt 0.815192 0.253294 0.000000\r
+vt 0.801313 0.253681 0.000000\r
+vt 0.816235 0.256287 0.000000\r
+vt 0.802757 0.256743 0.000000\r
+vt 0.817426 0.258775 0.000000\r
+vt 0.804399 0.259275 0.000000\r
+vt 0.818708 0.260974 0.000000\r
+vt 0.806152 0.261500 0.000000\r
+vt 0.820030 0.263183 0.000000\r
+vt 0.807942 0.263727 0.000000\r
+vt 0.821337 0.265713 0.000000\r
+vt 0.809693 0.266277 0.000000\r
+vt 0.822566 0.268816 0.000000\r
+vt 0.811324 0.269402 0.000000\r
+vt 0.823645 0.272668 0.000000\r
+vt 0.812739 0.273279 0.000000\r
+vt 0.824496 0.277397 0.000000\r
+vt 0.813841 0.278032 0.000000\r
+vt 0.802565 0.278983 0.000000\r
+vt 0.801191 0.274287 0.000000\r
+vt 0.799646 0.270439 0.000000\r
+vt 0.798010 0.267303 0.000000\r
+vt 0.796359 0.264692 0.000000\r
+vt 0.794246 0.262399 0.000000\r
+vt 0.792125 0.260079 0.000000\r
+vt 0.790208 0.257407 0.000000\r
+vt 0.788045 0.254206 0.000000\r
+vt 0.786436 0.250277 0.000000\r
+vt 0.785560 0.245496 0.000000\r
+vt 0.022534 0.311213 0.000000\r
+vt 0.011624 0.281881 0.000000\r
+vt 0.012968 0.281472 0.000000\r
+vt 0.023804 0.310674 0.000000\r
+vt 0.014356 0.281050 0.000000\r
+vt 0.025118 0.310119 0.000000\r
+vt 0.016703 0.280342 0.000000\r
+vt 0.027333 0.309175 0.000000\r
+vt 0.019816 0.279409 0.000000\r
+vt 0.030269 0.307924 0.000000\r
+vt 0.023575 0.278293 0.000000\r
+vt 0.033811 0.306416 0.000000\r
+vt 0.028030 0.276987 0.000000\r
+vt 0.038008 0.304634 0.000000\r
+vt 0.037291 0.337335 0.000000\r
+vt 0.036097 0.338003 0.000000\r
+vt 0.038525 0.336646 0.000000\r
+vt 0.040600 0.335476 0.000000\r
+vt 0.043347 0.333924 0.000000\r
+vt 0.046659 0.332050 0.000000\r
+vt 0.050580 0.329833 0.000000\r
+vt 0.053159 0.361580 0.000000\r
+vt 0.052053 0.362372 0.000000\r
+vt 0.054301 0.360763 0.000000\r
+vt 0.056220 0.359380 0.000000\r
+vt 0.058757 0.357545 0.000000\r
+vt 0.061814 0.355333 0.000000\r
+vt 0.065432 0.352713 0.000000\r
+vt 0.071187 0.383465 0.000000\r
+vt 0.070181 0.384373 0.000000\r
+vt 0.072226 0.382529 0.000000\r
+vt 0.073971 0.380948 0.000000\r
+vt 0.076277 0.378854 0.000000\r
+vt 0.079054 0.376330 0.000000\r
+vt 0.082339 0.373341 0.000000\r
+vt 0.091203 0.403000 0.000000\r
+vt 0.090307 0.404013 0.000000\r
+vt 0.092129 0.401954 0.000000\r
+vt 0.093682 0.400194 0.000000\r
+vt 0.095736 0.397864 0.000000\r
+vt 0.098210 0.395057 0.000000\r
+vt 0.101136 0.391734 0.000000\r
+vt 0.113064 0.420156 0.000000\r
+vt 0.112287 0.421263 0.000000\r
+vt 0.113867 0.419013 0.000000\r
+vt 0.115216 0.417092 0.000000\r
+vt 0.117000 0.414551 0.000000\r
+vt 0.119150 0.411489 0.000000\r
+vt 0.121693 0.407866 0.000000\r
+vt 0.136632 0.434913 0.000000\r
+vt 0.135982 0.436101 0.000000\r
+vt 0.137302 0.433685 0.000000\r
+vt 0.138432 0.431624 0.000000\r
+vt 0.139928 0.428897 0.000000\r
+vt 0.141731 0.425612 0.000000\r
+vt 0.143863 0.421726 0.000000\r
+vt 0.161850 0.447136 0.000000\r
+vt 0.161337 0.448394 0.000000\r
+vt 0.162379 0.445836 0.000000\r
+vt 0.163276 0.443652 0.000000\r
+vt 0.164465 0.440764 0.000000\r
+vt 0.165899 0.437285 0.000000\r
+vt 0.167595 0.433168 0.000000\r
+vt 0.188653 0.456694 0.000000\r
+vt 0.188283 0.458009 0.000000\r
+vt 0.189035 0.455336 0.000000\r
+vt 0.189686 0.453050 0.000000\r
+vt 0.190552 0.450026 0.000000\r
+vt 0.191596 0.446382 0.000000\r
+vt 0.192831 0.442070 0.000000\r
+vt 0.217011 0.463413 0.000000\r
+vt 0.216788 0.464772 0.000000\r
+vt 0.217240 0.462008 0.000000\r
+vt 0.217636 0.459641 0.000000\r
+vt 0.218163 0.456507 0.000000\r
+vt 0.218798 0.452728 0.000000\r
+vt 0.219548 0.448254 0.000000\r
+vt 0.246933 0.467054 0.000000\r
+vt 0.246859 0.468448 0.000000\r
+vt 0.247008 0.465614 0.000000\r
+vt 0.247141 0.463183 0.000000\r
+vt 0.247316 0.459960 0.000000\r
+vt 0.247524 0.456073 0.000000\r
+vt 0.247762 0.451470 0.000000\r
+vt 0.278509 0.467296 0.000000\r
+vt 0.278585 0.468722 0.000000\r
+vt 0.278429 0.465822 0.000000\r
+vt 0.278289 0.463333 0.000000\r
+vt 0.278095 0.460033 0.000000\r
+vt 0.277847 0.456055 0.000000\r
+vt 0.277536 0.451346 0.000000\r
+vt 0.311094 0.463663 0.000000\r
+vt 0.311494 0.465076 0.000000\r
+vt 0.310738 0.462180 0.000000\r
+vt 0.310235 0.459643 0.000000\r
+vt 0.309604 0.456272 0.000000\r
+vt 0.308846 0.452207 0.000000\r
+vt 0.307933 0.447403 0.000000\r
+vt 0.343443 0.456062 0.000000\r
+vt 0.344122 0.457405 0.000000\r
+vt 0.342828 0.454606 0.000000\r
+vt 0.341947 0.452041 0.000000\r
+vt 0.340840 0.448615 0.000000\r
+vt 0.339522 0.444486 0.000000\r
+vt 0.337944 0.439618 0.000000\r
+vt 0.375578 0.444236 0.000000\r
+vt 0.376488 0.445495 0.000000\r
+vt 0.374721 0.442813 0.000000\r
+vt 0.373437 0.440222 0.000000\r
+vt 0.371801 0.436745 0.000000\r
+vt 0.369843 0.432561 0.000000\r
+vt 0.367503 0.427652 0.000000\r
+vt 0.407966 0.427848 0.000000\r
+vt 0.409139 0.429100 0.000000\r
+vt 0.406814 0.426380 0.000000\r
+vt 0.404988 0.423652 0.000000\r
+vt 0.402612 0.420016 0.000000\r
+vt 0.399756 0.415699 0.000000\r
+vt 0.396366 0.410716 0.000000\r
+vt 0.444435 0.404384 0.000000\r
+vt 0.445634 0.405786 0.000000\r
+vt 0.441705 0.402457 0.000000\r
+vt 0.437964 0.399537 0.000000\r
+vt 0.433533 0.395929 0.000000\r
+vt 0.428591 0.391812 0.000000\r
+vt 0.423109 0.387193 0.000000\r
+vt 0.460852 0.365455 0.000000\r
+vt 0.462440 0.365780 0.000000\r
+vt 0.459107 0.364961 0.000000\r
+vt 0.456074 0.363825 0.000000\r
+vt 0.452112 0.362164 0.000000\r
+vt 0.447439 0.360055 0.000000\r
+vt 0.442047 0.357483 0.000000\r
+vt 0.471820 0.332206 0.000000\r
+vt 0.473237 0.332416 0.000000\r
+vt 0.470257 0.331894 0.000000\r
+vt 0.467501 0.331189 0.000000\r
+vt 0.463850 0.330163 0.000000\r
+vt 0.459477 0.328858 0.000000\r
+vt 0.454350 0.327249 0.000000\r
+vt 0.478783 0.300233 0.000000\r
+vt 0.480160 0.300346 0.000000\r
+vt 0.477278 0.300064 0.000000\r
+vt 0.474633 0.299675 0.000000\r
+vt 0.471118 0.299104 0.000000\r
+vt 0.466892 0.298370 0.000000\r
+vt 0.461912 0.297455 0.000000\r
+vt 0.482040 0.268966 0.000000\r
+vt 0.483410 0.268973 0.000000\r
+vt 0.480568 0.268937 0.000000\r
+vt 0.478008 0.268834 0.000000\r
+vt 0.474603 0.268664 0.000000\r
+vt 0.470500 0.268429 0.000000\r
+vt 0.465652 0.268117 0.000000\r
+vt 0.481951 0.238191 0.000000\r
+vt 0.483328 0.238078 0.000000\r
+vt 0.480500 0.238304 0.000000\r
+vt 0.478008 0.238469 0.000000\r
+vt 0.474698 0.238672 0.000000\r
+vt 0.470706 0.238900 0.000000\r
+vt 0.465983 0.239148 0.000000\r
+vt 0.478521 0.207417 0.000000\r
+vt 0.479902 0.207146 0.000000\r
+vt 0.477088 0.207699 0.000000\r
+vt 0.474657 0.208163 0.000000\r
+vt 0.471438 0.208773 0.000000\r
+vt 0.467564 0.209502 0.000000\r
+vt 0.462988 0.210357 0.000000\r
+vt 0.470605 0.176390 0.000000\r
+vt 0.471940 0.175943 0.000000\r
+vt 0.469227 0.176849 0.000000\r
+vt 0.466902 0.177622 0.000000\r
+vt 0.463822 0.178637 0.000000\r
+vt 0.460113 0.179851 0.000000\r
+vt 0.455726 0.181272 0.000000\r
+vt 0.047081 0.271608 0.000000\r
+vt 0.055972 0.297175 0.000000\r
+vt 0.063990 0.267081 0.000000\r
+vt 0.071942 0.290722 0.000000\r
+vt 0.078876 0.263270 0.000000\r
+vt 0.086039 0.285163 0.000000\r
+vt 0.091977 0.260029 0.000000\r
+vt 0.098495 0.280356 0.000000\r
+vt 0.103516 0.257236 0.000000\r
+vt 0.109525 0.276178 0.000000\r
+vt 0.113687 0.254787 0.000000\r
+vt 0.119333 0.272526 0.000000\r
+vt 0.122655 0.252588 0.000000\r
+vt 0.128112 0.269317 0.000000\r
+vt 0.067356 0.320471 0.000000\r
+vt 0.082273 0.312284 0.000000\r
+vt 0.095453 0.305168 0.000000\r
+vt 0.107113 0.298972 0.000000\r
+vt 0.117452 0.293567 0.000000\r
+vt 0.126651 0.288850 0.000000\r
+vt 0.134871 0.284737 0.000000\r
+vt 0.080900 0.341609 0.000000\r
+vt 0.094646 0.331848 0.000000\r
+vt 0.106787 0.323320 0.000000\r
+vt 0.117525 0.315862 0.000000\r
+vt 0.127036 0.309331 0.000000\r
+vt 0.135480 0.303605 0.000000\r
+vt 0.142991 0.298578 0.000000\r
+vt 0.142271 0.281186 0.000000\r
+vt 0.149681 0.294159 0.000000\r
+vt 0.148852 0.278024 0.000000\r
+vt 0.155637 0.290258 0.000000\r
+vt 0.154688 0.275374 0.000000\r
+vt 0.160939 0.286805 0.000000\r
+vt 0.159769 0.273036 0.000000\r
+vt 0.165668 0.283717 0.000000\r
+vt 0.164240 0.270914 0.000000\r
+vt 0.169896 0.280938 0.000000\r
+vt 0.096379 0.360649 0.000000\r
+vt 0.108840 0.349456 0.000000\r
+vt 0.119835 0.339646 0.000000\r
+vt 0.129548 0.331040 0.000000\r
+vt 0.138140 0.323479 0.000000\r
+vt 0.145753 0.316826 0.000000\r
+vt 0.152510 0.310959 0.000000\r
+vt 0.158518 0.305772 0.000000\r
+vt 0.163868 0.301168 0.000000\r
+vt 0.168645 0.297061 0.000000\r
+vt 0.172932 0.293372 0.000000\r
+vt 0.176782 0.290049 0.000000\r
+vt 0.113627 0.377601 0.000000\r
+vt 0.124696 0.365112 0.000000\r
+vt 0.134446 0.354144 0.000000\r
+vt 0.143045 0.344501 0.000000\r
+vt 0.150639 0.336011 0.000000\r
+vt 0.157359 0.328523 0.000000\r
+vt 0.163314 0.321903 0.000000\r
+vt 0.168604 0.316033 0.000000\r
+vt 0.173316 0.310809 0.000000\r
+vt 0.177528 0.306138 0.000000\r
+vt 0.181314 0.301934 0.000000\r
+vt 0.184719 0.298145 0.000000\r
+vt 0.132519 0.392434 0.000000\r
+vt 0.142089 0.378784 0.000000\r
+vt 0.150498 0.366782 0.000000\r
+vt 0.157899 0.356216 0.000000\r
+vt 0.164422 0.346902 0.000000\r
+vt 0.170183 0.338675 0.000000\r
+vt 0.175281 0.331391 0.000000\r
+vt 0.179805 0.324923 0.000000\r
+vt 0.183831 0.319160 0.000000\r
+vt 0.187431 0.314001 0.000000\r
+vt 0.190666 0.309355 0.000000\r
+vt 0.193578 0.305165 0.000000\r
+vt 0.152909 0.405150 0.000000\r
+vt 0.160880 0.390473 0.000000\r
+vt 0.167861 0.377556 0.000000\r
+vt 0.173985 0.366176 0.000000\r
+vt 0.179367 0.356137 0.000000\r
+vt 0.184107 0.347262 0.000000\r
+vt 0.188293 0.339399 0.000000\r
+vt 0.192000 0.332414 0.000000\r
+vt 0.195294 0.326185 0.000000\r
+vt 0.198236 0.320607 0.000000\r
+vt 0.200878 0.315583 0.000000\r
+vt 0.203255 0.311051 0.000000\r
+vt 0.174757 0.415601 0.000000\r
+vt 0.181029 0.400037 0.000000\r
+vt 0.186489 0.386335 0.000000\r
+vt 0.191252 0.374260 0.000000\r
+vt 0.195417 0.363604 0.000000\r
+vt 0.199068 0.354183 0.000000\r
+vt 0.202279 0.345835 0.000000\r
+vt 0.205113 0.338417 0.000000\r
+vt 0.207624 0.331802 0.000000\r
+vt 0.209860 0.325879 0.000000\r
+vt 0.211865 0.320543 0.000000\r
+vt 0.213664 0.315731 0.000000\r
+vt 0.198001 0.423664 0.000000\r
+vt 0.202470 0.407355 0.000000\r
+vt 0.206313 0.392999 0.000000\r
+vt 0.209627 0.380350 0.000000\r
+vt 0.212495 0.369191 0.000000\r
+vt 0.214985 0.359330 0.000000\r
+vt 0.217157 0.350594 0.000000\r
+vt 0.219060 0.342835 0.000000\r
+vt 0.220735 0.335918 0.000000\r
+vt 0.222219 0.329725 0.000000\r
+vt 0.223542 0.324149 0.000000\r
+vt 0.224726 0.319121 0.000000\r
+vt 0.222608 0.429162 0.000000\r
+vt 0.225161 0.412252 0.000000\r
+vt 0.227282 0.397377 0.000000\r
+vt 0.229051 0.384285 0.000000\r
+vt 0.230535 0.372746 0.000000\r
+vt 0.231787 0.362558 0.000000\r
+vt 0.232852 0.353543 0.000000\r
+vt 0.233763 0.345540 0.000000\r
+vt 0.234550 0.338412 0.000000\r
+vt 0.235233 0.332034 0.000000\r
+vt 0.235834 0.326293 0.000000\r
+vt 0.236363 0.321121 0.000000\r
+vt 0.248580 0.431837 0.000000\r
+vt 0.249086 0.414472 0.000000\r
+vt 0.249361 0.399226 0.000000\r
+vt 0.249472 0.385833 0.000000\r
+vt 0.249474 0.374051 0.000000\r
+vt 0.249403 0.363668 0.000000\r
+vt 0.249286 0.354492 0.000000\r
+vt 0.249143 0.346360 0.000000\r
+vt 0.248984 0.339124 0.000000\r
+vt 0.248820 0.332657 0.000000\r
+vt 0.248655 0.326840 0.000000\r
+vt 0.248492 0.321604 0.000000\r
+vt 0.275950 0.431302 0.000000\r
+vt 0.274238 0.413635 0.000000\r
+vt 0.272507 0.398182 0.000000\r
+vt 0.270824 0.384657 0.000000\r
+vt 0.269226 0.372798 0.000000\r
+vt 0.267734 0.362376 0.000000\r
+vt 0.266355 0.353188 0.000000\r
+vt 0.265089 0.345061 0.000000\r
+vt 0.263930 0.337843 0.000000\r
+vt 0.262870 0.331401 0.000000\r
+vt 0.261899 0.325614 0.000000\r
+vt 0.261010 0.320410 0.000000\r
+vt 0.303732 0.427072 0.000000\r
+vt 0.299617 0.409298 0.000000\r
+vt 0.295739 0.393861 0.000000\r
+vt 0.292154 0.380431 0.000000\r
+vt 0.288882 0.368713 0.000000\r
+vt 0.285917 0.358456 0.000000\r
+vt 0.283241 0.349443 0.000000\r
+vt 0.280831 0.341492 0.000000\r
+vt 0.278658 0.334446 0.000000\r
+vt 0.276696 0.328167 0.000000\r
+vt 0.274916 0.322536 0.000000\r
+vt 0.273301 0.317478 0.000000\r
+vt 0.330834 0.419200 0.000000\r
+vt 0.324126 0.401576 0.000000\r
+vt 0.317989 0.386427 0.000000\r
+vt 0.312450 0.373352 0.000000\r
+vt 0.307490 0.362013 0.000000\r
+vt 0.303063 0.352134 0.000000\r
+vt 0.299116 0.343485 0.000000\r
+vt 0.295594 0.335875 0.000000\r
+vt 0.292444 0.329146 0.000000\r
+vt 0.289618 0.323160 0.000000\r
+vt 0.287068 0.317799 0.000000\r
+vt 0.284765 0.312989 0.000000\r
+vt 0.357052 0.407479 0.000000\r
+vt 0.347497 0.390395 0.000000\r
+vt 0.338982 0.375904 0.000000\r
+vt 0.331454 0.363510 0.000000\r
+vt 0.324817 0.352829 0.000000\r
+vt 0.318965 0.343562 0.000000\r
+vt 0.313795 0.335475 0.000000\r
+vt 0.309216 0.328375 0.000000\r
+vt 0.305144 0.322106 0.000000\r
+vt 0.301507 0.316538 0.000000\r
+vt 0.298238 0.311556 0.000000\r
+vt 0.295295 0.307089 0.000000\r
+vt 0.381879 0.391481 0.000000\r
+vt 0.369212 0.375594 0.000000\r
+vt 0.358268 0.362292 0.000000\r
+vt 0.348794 0.350993 0.000000\r
+vt 0.340560 0.341291 0.000000\r
+vt 0.333373 0.332893 0.000000\r
+vt 0.327072 0.325572 0.000000\r
+vt 0.321521 0.319150 0.000000\r
+vt 0.316607 0.313483 0.000000\r
+vt 0.312231 0.308450 0.000000\r
+vt 0.308309 0.303948 0.000000\r
+vt 0.304786 0.299912 0.000000\r
+vt 0.404029 0.370727 0.000000\r
+vt 0.388338 0.357146 0.000000\r
+vt 0.375186 0.345732 0.000000\r
+vt 0.363990 0.335997 0.000000\r
+vt 0.354360 0.327610 0.000000\r
+vt 0.346010 0.320330 0.000000\r
+vt 0.338723 0.313970 0.000000\r
+vt 0.332325 0.308382 0.000000\r
+vt 0.326676 0.303444 0.000000\r
+vt 0.321656 0.299054 0.000000\r
+vt 0.317164 0.295123 0.000000\r
+vt 0.313134 0.291596 0.000000\r
+vt 0.421069 0.345955 0.000000\r
+vt 0.403651 0.335696 0.000000\r
+vt 0.389025 0.326740 0.000000\r
+vt 0.376579 0.318936 0.000000\r
+vt 0.365885 0.312124 0.000000\r
+vt 0.356622 0.306159 0.000000\r
+vt 0.348547 0.300915 0.000000\r
+vt 0.341463 0.296286 0.000000\r
+vt 0.335211 0.292181 0.000000\r
+vt 0.329660 0.288522 0.000000\r
+vt 0.324693 0.285237 0.000000\r
+vt 0.320240 0.282284 0.000000\r
+vt 0.433131 0.319722 0.000000\r
+vt 0.415039 0.312622 0.000000\r
+vt 0.399628 0.306175 0.000000\r
+vt 0.386410 0.300407 0.000000\r
+vt 0.374999 0.295280 0.000000\r
+vt 0.365089 0.290732 0.000000\r
+vt 0.356433 0.286696 0.000000\r
+vt 0.348830 0.283108 0.000000\r
+vt 0.342117 0.279907 0.000000\r
+vt 0.336151 0.277041 0.000000\r
+vt 0.330813 0.274458 0.000000\r
+vt 0.326025 0.272129 0.000000\r
+vt 0.440933 0.293096 0.000000\r
+vt 0.422724 0.288761 0.000000\r
+vt 0.407010 0.284659 0.000000\r
+vt 0.393413 0.280880 0.000000\r
+vt 0.381601 0.277447 0.000000\r
+vt 0.371298 0.274351 0.000000\r
+vt 0.362271 0.271567 0.000000\r
+vt 0.354325 0.269066 0.000000\r
+vt 0.347296 0.266816 0.000000\r
+vt 0.341042 0.264786 0.000000\r
+vt 0.335440 0.262945 0.000000\r
+vt 0.330412 0.261277 0.000000\r
+vt 0.445092 0.266467 0.000000\r
+vt 0.427056 0.264576 0.000000\r
+vt 0.411348 0.262619 0.000000\r
+vt 0.397657 0.260730 0.000000\r
+vt 0.385699 0.258952 0.000000\r
+vt 0.375224 0.257300 0.000000\r
+vt 0.366017 0.255778 0.000000\r
+vt 0.357892 0.254382 0.000000\r
+vt 0.350689 0.253104 0.000000\r
+vt 0.344270 0.251934 0.000000\r
+vt 0.338512 0.250860 0.000000\r
+vt 0.333337 0.249874 0.000000\r
+vt 0.445929 0.239995 0.000000\r
+vt 0.428262 0.240314 0.000000\r
+vt 0.412776 0.240268 0.000000\r
+vt 0.399204 0.240189 0.000000\r
+vt 0.387306 0.240031 0.000000\r
+vt 0.376850 0.239807 0.000000\r
+vt 0.367633 0.239541 0.000000\r
+vt 0.359481 0.239252 0.000000\r
+vt 0.352240 0.238953 0.000000\r
+vt 0.345777 0.238654 0.000000\r
+vt 0.339971 0.238358 0.000000\r
+vt 0.334744 0.238067 0.000000\r
+vt 0.443643 0.213969 0.000000\r
+vt 0.398044 0.219383 0.000000\r
+vt 0.411323 0.217440 0.000000\r
+vt 0.386390 0.220882 0.000000\r
+vt 0.376127 0.222076 0.000000\r
+vt 0.367062 0.223049 0.000000\r
+vt 0.359028 0.223855 0.000000\r
+vt 0.351881 0.224531 0.000000\r
+vt 0.345496 0.225106 0.000000\r
+vt 0.339760 0.225603 0.000000\r
+vt 0.334573 0.226042 0.000000\r
+vt 0.437015 0.187148 0.000000\r
+vt 0.394005 0.198951 0.000000\r
+vt 0.406652 0.195495 0.000000\r
+vt 0.382832 0.201876 0.000000\r
+vt 0.372954 0.204370 0.000000\r
+vt 0.364204 0.206513 0.000000\r
+vt 0.356430 0.208368 0.000000\r
+vt 0.349501 0.209987 0.000000\r
+vt 0.343298 0.211414 0.000000\r
+vt 0.337717 0.212685 0.000000\r
+vt 0.167461 0.246263 0.000000\r
+vt 0.171168 0.245348 0.000000\r
+vt 0.174263 0.255043 0.000000\r
+vt 0.170834 0.256352 0.000000\r
+vt 0.174725 0.244517 0.000000\r
+vt 0.177583 0.253799 0.000000\r
+vt 0.178105 0.243758 0.000000\r
+vt 0.180761 0.252629 0.000000\r
+vt 0.181258 0.243074 0.000000\r
+vt 0.183740 0.251548 0.000000\r
+vt 0.184116 0.242469 0.000000\r
+vt 0.186452 0.250576 0.000000\r
+vt 0.186611 0.241952 0.000000\r
+vt 0.188826 0.249734 0.000000\r
+vt 0.188696 0.241527 0.000000\r
+vt 0.190813 0.249037 0.000000\r
+vt 0.190427 0.241181 0.000000\r
+vt 0.192465 0.248464 0.000000\r
+vt 0.191718 0.240927 0.000000\r
+vt 0.193699 0.248045 0.000000\r
+vt 0.167336 0.257744 0.000000\r
+vt 0.175024 0.265536 0.000000\r
+vt 0.171677 0.267228 0.000000\r
+vt 0.178251 0.263889 0.000000\r
+vt 0.181368 0.262292 0.000000\r
+vt 0.184349 0.260764 0.000000\r
+vt 0.187143 0.259336 0.000000\r
+vt 0.189687 0.258039 0.000000\r
+vt 0.191916 0.256908 0.000000\r
+vt 0.193783 0.255966 0.000000\r
+vt 0.195336 0.255189 0.000000\r
+vt 0.196495 0.254618 0.000000\r
+vt 0.168149 0.268992 0.000000\r
+vt 0.173614 0.278472 0.000000\r
+vt 0.176955 0.276237 0.000000\r
+vt 0.180098 0.274122 0.000000\r
+vt 0.183112 0.272083 0.000000\r
+vt 0.186013 0.270115 0.000000\r
+vt 0.188780 0.268235 0.000000\r
+vt 0.191369 0.266475 0.000000\r
+vt 0.193725 0.264875 0.000000\r
+vt 0.195787 0.263477 0.000000\r
+vt 0.197513 0.262311 0.000000\r
+vt 0.198949 0.261346 0.000000\r
+vt 0.200020 0.260633 0.000000\r
+vt 0.180177 0.287108 0.000000\r
+vt 0.183231 0.284451 0.000000\r
+vt 0.186102 0.281946 0.000000\r
+vt 0.188851 0.279540 0.000000\r
+vt 0.191493 0.277222 0.000000\r
+vt 0.194010 0.275011 0.000000\r
+vt 0.196362 0.272943 0.000000\r
+vt 0.198500 0.271063 0.000000\r
+vt 0.200370 0.269419 0.000000\r
+vt 0.201935 0.268047 0.000000\r
+vt 0.203234 0.266910 0.000000\r
+vt 0.204203 0.266068 0.000000\r
+vt 0.187726 0.294791 0.000000\r
+vt 0.190433 0.291766 0.000000\r
+vt 0.192977 0.288915 0.000000\r
+vt 0.195414 0.286179 0.000000\r
+vt 0.197755 0.283547 0.000000\r
+vt 0.199983 0.281037 0.000000\r
+vt 0.202064 0.278690 0.000000\r
+vt 0.203954 0.276558 0.000000\r
+vt 0.205606 0.274694 0.000000\r
+vt 0.206987 0.273137 0.000000\r
+vt 0.208133 0.271846 0.000000\r
+vt 0.208986 0.270887 0.000000\r
+vt 0.196150 0.301456 0.000000\r
+vt 0.198466 0.298110 0.000000\r
+vt 0.200643 0.294958 0.000000\r
+vt 0.202728 0.291935 0.000000\r
+vt 0.204730 0.289027 0.000000\r
+vt 0.206634 0.286256 0.000000\r
+vt 0.208412 0.283665 0.000000\r
+vt 0.210026 0.281312 0.000000\r
+vt 0.211435 0.279254 0.000000\r
+vt 0.212611 0.277535 0.000000\r
+vt 0.213586 0.276108 0.000000\r
+vt 0.214310 0.275048 0.000000\r
+vt 0.205352 0.307040 0.000000\r
+vt 0.207240 0.303423 0.000000\r
+vt 0.209015 0.300016 0.000000\r
+vt 0.210713 0.296748 0.000000\r
+vt 0.212343 0.293607 0.000000\r
+vt 0.213893 0.290614 0.000000\r
+vt 0.215338 0.287816 0.000000\r
+vt 0.216649 0.285276 0.000000\r
+vt 0.217792 0.283054 0.000000\r
+vt 0.218745 0.281198 0.000000\r
+vt 0.219534 0.279657 0.000000\r
+vt 0.220118 0.278511 0.000000\r
+vt 0.215250 0.311473 0.000000\r
+vt 0.216677 0.307633 0.000000\r
+vt 0.218017 0.304018 0.000000\r
+vt 0.219298 0.300552 0.000000\r
+vt 0.220526 0.297221 0.000000\r
+vt 0.221693 0.294048 0.000000\r
+vt 0.222779 0.291084 0.000000\r
+vt 0.223763 0.288392 0.000000\r
+vt 0.224620 0.286039 0.000000\r
+vt 0.225332 0.284072 0.000000\r
+vt 0.225920 0.282440 0.000000\r
+vt 0.226353 0.281225 0.000000\r
+vt 0.225766 0.314673 0.000000\r
+vt 0.226700 0.310663 0.000000\r
+vt 0.227575 0.306890 0.000000\r
+vt 0.228410 0.303275 0.000000\r
+vt 0.229208 0.299801 0.000000\r
+vt 0.229965 0.296494 0.000000\r
+vt 0.230668 0.293406 0.000000\r
+vt 0.231302 0.290603 0.000000\r
+vt 0.231853 0.288153 0.000000\r
+vt 0.232310 0.286106 0.000000\r
+vt 0.232684 0.284406 0.000000\r
+vt 0.232956 0.283142 0.000000\r
+vt 0.236823 0.316546 0.000000\r
+vt 0.237232 0.312424 0.000000\r
+vt 0.237613 0.308548 0.000000\r
+vt 0.237974 0.304836 0.000000\r
+vt 0.238317 0.301272 0.000000\r
+vt 0.238639 0.297881 0.000000\r
+vt 0.238936 0.294717 0.000000\r
+vt 0.239201 0.291845 0.000000\r
+vt 0.239429 0.289337 0.000000\r
+vt 0.239615 0.287241 0.000000\r
+vt 0.239764 0.285502 0.000000\r
+vt 0.239868 0.284207 0.000000\r
+vt 0.248339 0.316975 0.000000\r
+vt 0.248195 0.312807 0.000000\r
+vt 0.248053 0.308891 0.000000\r
+vt 0.247914 0.305143 0.000000\r
+vt 0.247776 0.301547 0.000000\r
+vt 0.247640 0.298129 0.000000\r
+vt 0.247510 0.294941 0.000000\r
+vt 0.247388 0.292049 0.000000\r
+vt 0.247277 0.289524 0.000000\r
+vt 0.247181 0.287416 0.000000\r
+vt 0.247096 0.285666 0.000000\r
+vt 0.247026 0.284363 0.000000\r
+vt 0.260213 0.315815 0.000000\r
+vt 0.259488 0.311681 0.000000\r
+vt 0.258800 0.307799 0.000000\r
+vt 0.258137 0.304087 0.000000\r
+vt 0.257496 0.300528 0.000000\r
+vt 0.256884 0.297147 0.000000\r
+vt 0.256309 0.293995 0.000000\r
+vt 0.255785 0.291138 0.000000\r
+vt 0.255324 0.288645 0.000000\r
+vt 0.254936 0.286563 0.000000\r
+vt 0.254611 0.284834 0.000000\r
+vt 0.254365 0.283547 0.000000\r
+vt 0.271863 0.313015 0.000000\r
+vt 0.270561 0.309004 0.000000\r
+vt 0.269331 0.305240 0.000000\r
+vt 0.268149 0.301643 0.000000\r
+vt 0.267013 0.298196 0.000000\r
+vt 0.265929 0.294922 0.000000\r
+vt 0.264917 0.291872 0.000000\r
+vt 0.263997 0.289107 0.000000\r
+vt 0.263191 0.286694 0.000000\r
+vt 0.262516 0.284679 0.000000\r
+vt 0.261955 0.283006 0.000000\r
+vt 0.261536 0.281760 0.000000\r
+vt 0.282723 0.308750 0.000000\r
+vt 0.280878 0.304942 0.000000\r
+vt 0.279141 0.301370 0.000000\r
+vt 0.277475 0.297958 0.000000\r
+vt 0.275875 0.294689 0.000000\r
+vt 0.274352 0.291585 0.000000\r
+vt 0.272931 0.288693 0.000000\r
+vt 0.271641 0.286072 0.000000\r
+vt 0.270514 0.283784 0.000000\r
+vt 0.269571 0.281873 0.000000\r
+vt 0.268788 0.280287 0.000000\r
+vt 0.268205 0.279104 0.000000\r
+vt 0.292693 0.303154 0.000000\r
+vt 0.290348 0.299621 0.000000\r
+vt 0.288143 0.296308 0.000000\r
+vt 0.286032 0.293144 0.000000\r
+vt 0.284006 0.290112 0.000000\r
+vt 0.282081 0.287234 0.000000\r
+vt 0.280285 0.284551 0.000000\r
+vt 0.278656 0.282120 0.000000\r
+vt 0.277233 0.279998 0.000000\r
+vt 0.276044 0.278225 0.000000\r
+vt 0.275057 0.276753 0.000000\r
+vt 0.274322 0.275655 0.000000\r
+vt 0.301678 0.296357 0.000000\r
+vt 0.298881 0.293165 0.000000\r
+vt 0.296255 0.290170 0.000000\r
+vt 0.293743 0.287309 0.000000\r
+vt 0.291334 0.284568 0.000000\r
+vt 0.289046 0.281965 0.000000\r
+vt 0.286912 0.279538 0.000000\r
+vt 0.284978 0.277338 0.000000\r
+vt 0.283290 0.275418 0.000000\r
+vt 0.281879 0.273814 0.000000\r
+vt 0.280708 0.272481 0.000000\r
+vt 0.279836 0.271486 0.000000\r
+vt 0.309582 0.288487 0.000000\r
+vt 0.306390 0.285692 0.000000\r
+vt 0.303394 0.283069 0.000000\r
+vt 0.300531 0.280562 0.000000\r
+vt 0.297787 0.278158 0.000000\r
+vt 0.295181 0.275874 0.000000\r
+vt 0.292752 0.273744 0.000000\r
+vt 0.290550 0.271813 0.000000\r
+vt 0.288628 0.270127 0.000000\r
+vt 0.287023 0.268717 0.000000\r
+vt 0.285690 0.267546 0.000000\r
+vt 0.284697 0.266672 0.000000\r
+vt 0.316317 0.279676 0.000000\r
+vt 0.312792 0.277328 0.000000\r
+vt 0.309485 0.275122 0.000000\r
+vt 0.306325 0.273011 0.000000\r
+vt 0.303297 0.270986 0.000000\r
+vt 0.300421 0.269059 0.000000\r
+vt 0.297741 0.267262 0.000000\r
+vt 0.295313 0.265631 0.000000\r
+vt 0.293192 0.264207 0.000000\r
+vt 0.291422 0.263016 0.000000\r
+vt 0.289951 0.262026 0.000000\r
+vt 0.288855 0.261287 0.000000\r
+vt 0.321807 0.270066 0.000000\r
+vt 0.318017 0.268205 0.000000\r
+vt 0.314461 0.266452 0.000000\r
+vt 0.311063 0.264772 0.000000\r
+vt 0.307806 0.263158 0.000000\r
+vt 0.304712 0.261621 0.000000\r
+vt 0.301829 0.260186 0.000000\r
+vt 0.299216 0.258882 0.000000\r
+vt 0.296934 0.257743 0.000000\r
+vt 0.295029 0.256790 0.000000\r
+vt 0.293447 0.255997 0.000000\r
+vt 0.292267 0.255406 0.000000\r
+vt 0.325978 0.259791 0.000000\r
+vt 0.321993 0.258446 0.000000\r
+vt 0.318253 0.257174 0.000000\r
+vt 0.314677 0.255952 0.000000\r
+vt 0.311249 0.254776 0.000000\r
+vt 0.307993 0.253654 0.000000\r
+vt 0.304957 0.252605 0.000000\r
+vt 0.302205 0.251651 0.000000\r
+vt 0.299802 0.250816 0.000000\r
+vt 0.297795 0.250117 0.000000\r
+vt 0.296128 0.249536 0.000000\r
+vt 0.294885 0.249103 0.000000\r
+vt 0.328770 0.248987 0.000000\r
+vt 0.324661 0.248175 0.000000\r
+vt 0.320802 0.247404 0.000000\r
+vt 0.317112 0.246660 0.000000\r
+vt 0.313572 0.245941 0.000000\r
+vt 0.310209 0.245255 0.000000\r
+vt 0.307073 0.244611 0.000000\r
+vt 0.304229 0.244024 0.000000\r
+vt 0.301746 0.243509 0.000000\r
+vt 0.299672 0.243077 0.000000\r
+vt 0.297949 0.242718 0.000000\r
+vt 0.296665 0.242450 0.000000\r
+vt 0.330124 0.237783 0.000000\r
+vt 0.325964 0.237509 0.000000\r
+vt 0.322052 0.237246 0.000000\r
+vt 0.318309 0.236995 0.000000\r
+vt 0.314719 0.236751 0.000000\r
+vt 0.311307 0.236516 0.000000\r
+vt 0.308125 0.236293 0.000000\r
+vt 0.305239 0.236088 0.000000\r
+vt 0.302719 0.235905 0.000000\r
+vt 0.300614 0.235750 0.000000\r
+vt 0.298866 0.235621 0.000000\r
+vt 0.297563 0.235524 0.000000\r
+vt 0.329991 0.226319 0.000000\r
+vt 0.325848 0.226526 0.000000\r
+vt 0.321941 0.226751 0.000000\r
+vt 0.318208 0.227037 0.000000\r
+vt 0.314630 0.227296 0.000000\r
+vt 0.311231 0.227532 0.000000\r
+vt 0.308061 0.227744 0.000000\r
+vt 0.305186 0.227930 0.000000\r
+vt 0.302675 0.228088 0.000000\r
+vt 0.300577 0.228216 0.000000\r
+vt 0.298835 0.228321 0.000000\r
+vt 0.297536 0.228398 0.000000\r
+vt 0.320329 0.216199 0.000000\r
+vt 0.316706 0.216992 0.000000\r
+vt 0.313225 0.217738 0.000000\r
+vt 0.309913 0.218434 0.000000\r
+vt 0.306821 0.219076 0.000000\r
+vt 0.304014 0.219652 0.000000\r
+vt 0.301561 0.220150 0.000000\r
+vt 0.299511 0.220561 0.000000\r
+vt 0.297807 0.220900 0.000000\r
+vt 0.296537 0.221148 0.000000\r
+vt 0.192357 0.240809 0.000000\r
+vt 0.194308 0.247846 0.000000\r
+vt 0.192626 0.240766 0.000000\r
+vt 0.194561 0.247770 0.000000\r
+vt 0.193214 0.240659 0.000000\r
+vt 0.195121 0.247584 0.000000\r
+vt 0.194431 0.240424 0.000000\r
+vt 0.196284 0.247185 0.000000\r
+vt 0.196439 0.240030 0.000000\r
+vt 0.198205 0.246522 0.000000\r
+vt 0.199365 0.239457 0.000000\r
+vt 0.201010 0.245554 0.000000\r
+vt 0.203347 0.238681 0.000000\r
+vt 0.204835 0.244240 0.000000\r
+vt 0.208533 0.237680 0.000000\r
+vt 0.209822 0.242536 0.000000\r
+vt 0.215073 0.236431 0.000000\r
+vt 0.216119 0.240400 0.000000\r
+vt 0.223116 0.234913 0.000000\r
+vt 0.223873 0.237791 0.000000\r
+vt 0.232816 0.233115 0.000000\r
+vt 0.233228 0.234675 0.000000\r
+vt 0.244323 0.231049 0.000000\r
+vt 0.197066 0.254344 0.000000\r
+vt 0.197302 0.254237 0.000000\r
+vt 0.197826 0.253981 0.000000\r
+vt 0.198918 0.253436 0.000000\r
+vt 0.200725 0.252529 0.000000\r
+vt 0.203367 0.251202 0.000000\r
+vt 0.206974 0.249396 0.000000\r
+vt 0.211682 0.247046 0.000000\r
+vt 0.217634 0.244092 0.000000\r
+vt 0.224970 0.240470 0.000000\r
+vt 0.233825 0.236130 0.000000\r
+vt 0.200546 0.260290 0.000000\r
+vt 0.200760 0.260154 0.000000\r
+vt 0.201242 0.259834 0.000000\r
+vt 0.202251 0.259156 0.000000\r
+vt 0.203921 0.258027 0.000000\r
+vt 0.206365 0.256375 0.000000\r
+vt 0.209702 0.254121 0.000000\r
+vt 0.214063 0.251184 0.000000\r
+vt 0.219578 0.247481 0.000000\r
+vt 0.226379 0.242932 0.000000\r
+vt 0.234592 0.237467 0.000000\r
+vt 0.204677 0.265661 0.000000\r
+vt 0.204869 0.265498 0.000000\r
+vt 0.205304 0.265119 0.000000\r
+vt 0.206216 0.264319 0.000000\r
+vt 0.207729 0.262990 0.000000\r
+vt 0.209941 0.261044 0.000000\r
+vt 0.212964 0.258387 0.000000\r
+vt 0.216913 0.254920 0.000000\r
+vt 0.221909 0.250543 0.000000\r
+vt 0.228072 0.245158 0.000000\r
+vt 0.235513 0.238678 0.000000\r
+vt 0.209401 0.270421 0.000000\r
+vt 0.209569 0.270234 0.000000\r
+vt 0.209951 0.269803 0.000000\r
+vt 0.210755 0.268894 0.000000\r
+vt 0.212089 0.267386 0.000000\r
+vt 0.214040 0.265179 0.000000\r
+vt 0.216706 0.262164 0.000000\r
+vt 0.220187 0.258229 0.000000\r
+vt 0.224590 0.253255 0.000000\r
+vt 0.230019 0.247130 0.000000\r
+vt 0.236573 0.239752 0.000000\r
+vt 0.214662 0.274532 0.000000\r
+vt 0.214802 0.274323 0.000000\r
+vt 0.215127 0.273846 0.000000\r
+vt 0.215811 0.272843 0.000000\r
+vt 0.216947 0.271180 0.000000\r
+vt 0.218608 0.268745 0.000000\r
+vt 0.220877 0.265420 0.000000\r
+vt 0.223838 0.261079 0.000000\r
+vt 0.227581 0.255591 0.000000\r
+vt 0.232193 0.248829 0.000000\r
+vt 0.237756 0.240677 0.000000\r
+vt 0.220400 0.277950 0.000000\r
+vt 0.220512 0.277723 0.000000\r
+vt 0.220774 0.277207 0.000000\r
+vt 0.221328 0.276125 0.000000\r
+vt 0.222247 0.274330 0.000000\r
+vt 0.223593 0.271704 0.000000\r
+vt 0.225429 0.268120 0.000000\r
+vt 0.227823 0.263441 0.000000\r
+vt 0.230846 0.257525 0.000000\r
+vt 0.234566 0.250236 0.000000\r
+vt 0.239047 0.241445 0.000000\r
+vt 0.226560 0.280630 0.000000\r
+vt 0.226641 0.280388 0.000000\r
+vt 0.226835 0.279840 0.000000\r
+vt 0.227248 0.278694 0.000000\r
+vt 0.227935 0.276795 0.000000\r
+vt 0.228941 0.274018 0.000000\r
+vt 0.230311 0.270229 0.000000\r
+vt 0.232096 0.265283 0.000000\r
+vt 0.234346 0.259033 0.000000\r
+vt 0.237109 0.251332 0.000000\r
+vt 0.240430 0.242044 0.000000\r
+vt 0.233084 0.282521 0.000000\r
+vt 0.233132 0.282268 0.000000\r
+vt 0.233254 0.281697 0.000000\r
+vt 0.233517 0.280504 0.000000\r
+vt 0.233957 0.278529 0.000000\r
+vt 0.234600 0.275643 0.000000\r
+vt 0.235476 0.271707 0.000000\r
+vt 0.236614 0.266572 0.000000\r
+vt 0.238045 0.260086 0.000000\r
+vt 0.239796 0.252098 0.000000\r
+vt 0.241890 0.242463 0.000000\r
+vt 0.239912 0.283571 0.000000\r
+vt 0.239926 0.283310 0.000000\r
+vt 0.239971 0.282725 0.000000\r
+vt 0.240076 0.281504 0.000000\r
+vt 0.240255 0.279484 0.000000\r
+vt 0.240517 0.276535 0.000000\r
+vt 0.240873 0.272515 0.000000\r
+vt 0.241332 0.267274 0.000000\r
+vt 0.241905 0.260658 0.000000\r
+vt 0.242597 0.252514 0.000000\r
+vt 0.243412 0.242693 0.000000\r
+vt 0.246985 0.283723 0.000000\r
+vt 0.246962 0.283458 0.000000\r
+vt 0.246927 0.282869 0.000000\r
+vt 0.246866 0.281640 0.000000\r
+vt 0.246771 0.279610 0.000000\r
+vt 0.246635 0.276647 0.000000\r
+vt 0.246450 0.272610 0.000000\r
+vt 0.246204 0.267353 0.000000\r
+vt 0.245887 0.260720 0.000000\r
+vt 0.245486 0.252560 0.000000\r
+vt 0.244980 0.242721 0.000000\r
+vt 0.254236 0.282913 0.000000\r
+vt 0.254175 0.282650 0.000000\r
+vt 0.254055 0.282066 0.000000\r
+vt 0.253821 0.280853 0.000000\r
+vt 0.253443 0.278850 0.000000\r
+vt 0.252896 0.275929 0.000000\r
+vt 0.252153 0.271952 0.000000\r
+vt 0.251183 0.266774 0.000000\r
+vt 0.249955 0.260246 0.000000\r
+vt 0.248435 0.252217 0.000000\r
+vt 0.246579 0.242538 0.000000\r
+vt 0.261322 0.281144 0.000000\r
+vt 0.261222 0.280888 0.000000\r
+vt 0.261020 0.280323 0.000000\r
+vt 0.260617 0.279150 0.000000\r
+vt 0.259961 0.277214 0.000000\r
+vt 0.259011 0.274391 0.000000\r
+vt 0.257721 0.270549 0.000000\r
+vt 0.256042 0.265547 0.000000\r
+vt 0.253923 0.259243 0.000000\r
+vt 0.251310 0.251492 0.000000\r
+vt 0.248139 0.242148 0.000000\r
+vt 0.267911 0.278519 0.000000\r
+vt 0.267777 0.278275 0.000000\r
+vt 0.267500 0.277739 0.000000\r
+vt 0.266941 0.276627 0.000000\r
+vt 0.266028 0.274792 0.000000\r
+vt 0.264703 0.272117 0.000000\r
+vt 0.262905 0.268477 0.000000\r
+vt 0.260565 0.263739 0.000000\r
+vt 0.257615 0.257768 0.000000\r
+vt 0.253984 0.250426 0.000000\r
+vt 0.249590 0.241573 0.000000\r
+vt 0.273953 0.275111 0.000000\r
+vt 0.273789 0.274884 0.000000\r
+vt 0.273444 0.274385 0.000000\r
+vt 0.272742 0.273352 0.000000\r
+vt 0.271595 0.271649 0.000000\r
+vt 0.269927 0.269168 0.000000\r
+vt 0.267662 0.265792 0.000000\r
+vt 0.264716 0.261397 0.000000\r
+vt 0.261004 0.255858 0.000000\r
+vt 0.256438 0.249046 0.000000\r
+vt 0.250921 0.240829 0.000000\r
+vt 0.279400 0.270993 0.000000\r
+vt 0.279210 0.270785 0.000000\r
+vt 0.278803 0.270332 0.000000\r
+vt 0.277974 0.269396 0.000000\r
+vt 0.276615 0.267854 0.000000\r
+vt 0.274639 0.265607 0.000000\r
+vt 0.271953 0.262550 0.000000\r
+vt 0.268461 0.258571 0.000000\r
+vt 0.264062 0.253553 0.000000\r
+vt 0.258653 0.247380 0.000000\r
+vt 0.252121 0.239930 0.000000\r
+vt 0.284202 0.266237 0.000000\r
+vt 0.283989 0.266052 0.000000\r
+vt 0.283529 0.265652 0.000000\r
+vt 0.282588 0.264827 0.000000\r
+vt 0.281043 0.263471 0.000000\r
+vt 0.278796 0.261496 0.000000\r
+vt 0.275741 0.258808 0.000000\r
+vt 0.271767 0.255307 0.000000\r
+vt 0.266761 0.250892 0.000000\r
+vt 0.260608 0.245457 0.000000\r
+vt 0.253181 0.238893 0.000000\r
+vt 0.288311 0.260918 0.000000\r
+vt 0.288078 0.260760 0.000000\r
+vt 0.287574 0.260418 0.000000\r
+vt 0.286538 0.259719 0.000000\r
+vt 0.284835 0.258570 0.000000\r
+vt 0.282356 0.256897 0.000000\r
+vt 0.278986 0.254621 0.000000\r
+vt 0.274601 0.251656 0.000000\r
+vt 0.269076 0.247915 0.000000\r
+vt 0.262285 0.243305 0.000000\r
+vt 0.254090 0.237731 0.000000\r
+vt 0.291682 0.255110 0.000000\r
+vt 0.291434 0.254980 0.000000\r
+vt 0.290894 0.254703 0.000000\r
+vt 0.289780 0.254140 0.000000\r
+vt 0.287948 0.253218 0.000000\r
+vt 0.285281 0.251875 0.000000\r
+vt 0.281653 0.250049 0.000000\r
+vt 0.276931 0.247668 0.000000\r
+vt 0.270981 0.244661 0.000000\r
+vt 0.263666 0.240952 0.000000\r
+vt 0.254837 0.236458 0.000000\r
+vt 0.294270 0.248884 0.000000\r
+vt 0.294010 0.248785 0.000000\r
+vt 0.293443 0.248578 0.000000\r
+vt 0.292271 0.248161 0.000000\r
+vt 0.290341 0.247481 0.000000\r
+vt 0.287530 0.246492 0.000000\r
+vt 0.283705 0.245146 0.000000\r
+vt 0.278726 0.243391 0.000000\r
+vt 0.272450 0.241171 0.000000\r
+vt 0.264731 0.238427 0.000000\r
+vt 0.255414 0.235091 0.000000\r
+vt 0.296030 0.242313 0.000000\r
+vt 0.295763 0.242246 0.000000\r
+vt 0.295178 0.242113 0.000000\r
+vt 0.293967 0.241851 0.000000\r
+vt 0.291972 0.241426 0.000000\r
+vt 0.289064 0.240810 0.000000\r
+vt 0.285107 0.239971 0.000000\r
+vt 0.279954 0.238874 0.000000\r
+vt 0.273456 0.237483 0.000000\r
+vt 0.265462 0.235757 0.000000\r
+vt 0.255810 0.233644 0.000000\r
+vt 0.296919 0.235471 0.000000\r
+vt 0.296649 0.235439 0.000000\r
+vt 0.296056 0.235383 0.000000\r
+vt 0.294827 0.235282 0.000000\r
+vt 0.292800 0.235122 0.000000\r
+vt 0.289846 0.234892 0.000000\r
+vt 0.285824 0.234579 0.000000\r
+vt 0.280585 0.234167 0.000000\r
+vt 0.273976 0.233639 0.000000\r
+vt 0.265841 0.232971 0.000000\r
+vt 0.256015 0.232133 0.000000\r
+vt 0.296895 0.228430 0.000000\r
+vt 0.296626 0.228434 0.000000\r
+vt 0.296034 0.228458 0.000000\r
+vt 0.294809 0.228521 0.000000\r
+vt 0.292787 0.228634 0.000000\r
+vt 0.289839 0.228801 0.000000\r
+vt 0.285823 0.229028 0.000000\r
+vt 0.280590 0.229319 0.000000\r
+vt 0.273985 0.229676 0.000000\r
+vt 0.265849 0.230097 0.000000\r
+vt 0.256019 0.230573 0.000000\r
+vt 0.295910 0.221263 0.000000\r
+vt 0.295648 0.221304 0.000000\r
+vt 0.295070 0.221410 0.000000\r
+vt 0.293872 0.221641 0.000000\r
+vt 0.291893 0.222030 0.000000\r
+vt 0.289005 0.222600 0.000000\r
+vt 0.285070 0.223374 0.000000\r
+vt 0.279939 0.224378 0.000000\r
+vt 0.273458 0.225634 0.000000\r
+vt 0.265470 0.227163 0.000000\r
+vt 0.255812 0.228978 0.000000\r
+vt 0.165775 0.258087 0.000000\r
+vt 0.165843 0.253009 0.000000\r
+vt 0.367268 0.787422 0.000000\r
+vt 0.367268 0.803032 0.000000\r
+vt 0.355357 0.802729 0.000000\r
+vt 0.355674 0.786435 0.000000\r
+vt 0.323957 0.799540 0.000000\r
+vt 0.323180 0.781022 0.000000\r
+vt 0.330170 0.782181 0.000000\r
+vt 0.330198 0.800256 0.000000\r
+vt 0.337238 0.801128 0.000000\r
+vt 0.337715 0.783620 0.000000\r
+vt 0.345968 0.785549 0.000000\r
+vt 0.345471 0.802020 0.000000\r
+vt 0.346374 0.814607 0.000000\r
+vt 0.338606 0.813664 0.000000\r
+vt 0.355823 0.815287 0.000000\r
+vt 0.356796 0.826468 0.000000\r
+vt 0.348155 0.825815 0.000000\r
+vt 0.367266 0.815542 0.000000\r
+vt 0.367263 0.826680 0.000000\r
+vt 0.293216 0.817270 0.000000\r
+vt 0.300075 0.828373 0.000000\r
+vt 0.293097 0.833077 0.000000\r
+vt 0.285257 0.821714 0.000000\r
+vt 0.299961 0.814308 0.000000\r
+vt 0.306127 0.825179 0.000000\r
+vt 0.305866 0.812449 0.000000\r
+vt 0.311498 0.823138 0.000000\r
+vt 0.311226 0.811435 0.000000\r
+vt 0.316395 0.822012 0.000000\r
+vt 0.316291 0.811080 0.000000\r
+vt 0.321005 0.821640 0.000000\r
+vt 0.321287 0.811249 0.000000\r
+vt 0.325514 0.821891 0.000000\r
+vt 0.326461 0.811824 0.000000\r
+vt 0.330145 0.822630 0.000000\r
+vt 0.332110 0.812677 0.000000\r
+vt 0.335200 0.823680 0.000000\r
+vt 0.341070 0.824820 0.000000\r
+vt 0.344298 0.835170 0.000000\r
+vt 0.339145 0.834006 0.000000\r
+vt 0.350529 0.836117 0.000000\r
+vt 0.353180 0.845736 0.000000\r
+vt 0.347902 0.844977 0.000000\r
+vt 0.358105 0.836686 0.000000\r
+vt 0.359563 0.846161 0.000000\r
+vt 0.367259 0.836849 0.000000\r
+vt 0.367255 0.846267 0.000000\r
+vt 0.307620 0.838757 0.000000\r
+vt 0.315749 0.849031 0.000000\r
+vt 0.310462 0.853333 0.000000\r
+vt 0.301547 0.843419 0.000000\r
+vt 0.313028 0.835500 0.000000\r
+vt 0.320538 0.845931 0.000000\r
+vt 0.317903 0.833368 0.000000\r
+vt 0.324891 0.843843 0.000000\r
+vt 0.322375 0.832172 0.000000\r
+vt 0.328888 0.842626 0.000000\r
+vt 0.326570 0.831777 0.000000\r
+vt 0.332613 0.842169 0.000000\r
+vt 0.330618 0.832063 0.000000\r
+vt 0.336164 0.842360 0.000000\r
+vt 0.334712 0.832880 0.000000\r
+vt 0.339708 0.843046 0.000000\r
+vt 0.343510 0.844005 0.000000\r
+vt 0.347824 0.853662 0.000000\r
+vt 0.344596 0.853137 0.000000\r
+vt 0.351486 0.854233 0.000000\r
+vt 0.354727 0.862794 0.000000\r
+vt 0.351689 0.862761 0.000000\r
+vt 0.355817 0.854681 0.000000\r
+vt 0.358212 0.862851 0.000000\r
+vt 0.361009 0.854913 0.000000\r
+vt 0.362322 0.862859 0.000000\r
+vt 0.367250 0.854957 0.000000\r
+vt 0.367245 0.862835 0.000000\r
+vt 0.323989 0.859491 0.000000\r
+vt 0.331657 0.870225 0.000000\r
+vt 0.327639 0.873136 0.000000\r
+vt 0.319374 0.863169 0.000000\r
+vt 0.328153 0.856746 0.000000\r
+vt 0.335179 0.867909 0.000000\r
+vt 0.331912 0.854809 0.000000\r
+vt 0.338286 0.866110 0.000000\r
+vt 0.335340 0.853575 0.000000\r
+vt 0.341096 0.864757 0.000000\r
+vt 0.338524 0.852953 0.000000\r
+vt 0.343736 0.863794 0.000000\r
+vt 0.341562 0.852846 0.000000\r
+vt 0.346315 0.863177 0.000000\r
+vt 0.348930 0.862855 0.000000\r
+vt 0.352465 0.871921 0.000000\r
+vt 0.350187 0.872980 0.000000\r
+vt 0.354854 0.871115 0.000000\r
+vt 0.357253 0.878769 0.000000\r
+vt 0.355187 0.880362 0.000000\r
+vt 0.357401 0.870545 0.000000\r
+vt 0.359407 0.877537 0.000000\r
+vt 0.360202 0.870166 0.000000\r
+vt 0.361692 0.876674 0.000000\r
+vt 0.363417 0.869926 0.000000\r
+vt 0.364233 0.876158 0.000000\r
+vt 0.367240 0.869827 0.000000\r
+vt 0.367234 0.875979 0.000000\r
+vt 0.338176 0.881203 0.000000\r
+vt 0.343240 0.892543 0.000000\r
+vt 0.340142 0.894086 0.000000\r
+vt 0.334684 0.883365 0.000000\r
+vt 0.341095 0.879233 0.000000\r
+vt 0.345720 0.890736 0.000000\r
+vt 0.343583 0.877424 0.000000\r
+vt 0.347754 0.888713 0.000000\r
+vt 0.345826 0.875766 0.000000\r
+vt 0.349567 0.886554 0.000000\r
+vt 0.347991 0.874273 0.000000\r
+vt 0.351352 0.884362 0.000000\r
+vt 0.353216 0.882259 0.000000\r
+vt 0.353931 0.889740 0.000000\r
+vt 0.352237 0.892330 0.000000\r
+vt 0.355782 0.887311 0.000000\r
+vt 0.356380 0.893325 0.000000\r
+vt 0.354627 0.896192 0.000000\r
+vt 0.357783 0.885185 0.000000\r
+vt 0.358302 0.890762 0.000000\r
+vt 0.359914 0.883466 0.000000\r
+vt 0.360366 0.888646 0.000000\r
+vt 0.362181 0.882215 0.000000\r
+vt 0.362550 0.887077 0.000000\r
+vt 0.364617 0.881459 0.000000\r
+vt 0.364845 0.886117 0.000000\r
+vt 0.367229 0.881209 0.000000\r
+vt 0.367223 0.885797 0.000000\r
+vt 0.345092 0.901030 0.000000\r
+vt 0.346428 0.908517 0.000000\r
+vt 0.344195 0.909359 0.000000\r
+vt 0.342577 0.902060 0.000000\r
+vt 0.347244 0.899414 0.000000\r
+vt 0.348398 0.906946 0.000000\r
+vt 0.349048 0.897330 0.000000\r
+vt 0.350080 0.904755 0.000000\r
+vt 0.350652 0.894916 0.000000\r
+vt 0.351575 0.902106 0.000000\r
+vt 0.353045 0.899185 0.000000\r
+vt 0.353546 0.904415 0.000000\r
+vt 0.352142 0.907602 0.000000\r
+vt 0.355064 0.901115 0.000000\r
+vt 0.355220 0.904526 0.000000\r
+vt 0.353736 0.908024 0.000000\r
+vt 0.356760 0.897923 0.000000\r
+vt 0.356893 0.901126 0.000000\r
+vt 0.358634 0.895042 0.000000\r
+vt 0.358753 0.898043 0.000000\r
+vt 0.360651 0.892639 0.000000\r
+vt 0.360758 0.895460 0.000000\r
+vt 0.362773 0.890842 0.000000\r
+vt 0.362859 0.893519 0.000000\r
+vt 0.364972 0.889733 0.000000\r
+vt 0.365020 0.892317 0.000000\r
+vt 0.367217 0.889362 0.000000\r
+vt 0.367212 0.891913 0.000000\r
+vt 0.347243 0.914356 0.000000\r
+vt 0.347652 0.918379 0.000000\r
+vt 0.345676 0.919082 0.000000\r
+vt 0.345166 0.915111 0.000000\r
+vt 0.349105 0.912765 0.000000\r
+vt 0.349440 0.916769 0.000000\r
+vt 0.350712 0.910455 0.000000\r
+vt 0.350992 0.914375 0.000000\r
+vt 0.352373 0.911386 0.000000\r
+vt 0.352410 0.913790 0.000000\r
+vt 0.351066 0.916847 0.000000\r
+vt 0.353741 0.910339 0.000000\r
+vt 0.353743 0.911793 0.000000\r
+vt 0.352433 0.915286 0.000000\r
+vt 0.355211 0.906737 0.000000\r
+vt 0.355202 0.908142 0.000000\r
+vt 0.356882 0.903226 0.000000\r
+vt 0.356874 0.904575 0.000000\r
+vt 0.358747 0.900033 0.000000\r
+vt 0.358744 0.901326 0.000000\r
+vt 0.360759 0.897354 0.000000\r
+vt 0.360759 0.898595 0.000000\r
+vt 0.362866 0.895340 0.000000\r
+vt 0.362867 0.896544 0.000000\r
+vt 0.365024 0.894092 0.000000\r
+vt 0.365024 0.895278 0.000000\r
+vt 0.367207 0.893672 0.000000\r
+vt 0.367204 0.894853 0.000000\r
+vt 0.347827 0.920895 0.000000\r
+vt 0.347928 0.922442 0.000000\r
+vt 0.346028 0.923093 0.000000\r
+vt 0.345915 0.921560 0.000000\r
+vt 0.349561 0.919279 0.000000\r
+vt 0.349643 0.920825 0.000000\r
+vt 0.351122 0.918372 0.000000\r
+vt 0.351331 0.919449 0.000000\r
+vt 0.349843 0.921943 0.000000\r
+vt 0.352630 0.916315 0.000000\r
+vt 0.348084 0.923597 0.000000\r
+vt 0.346102 0.924257 0.000000\r
+vt 0.365072 0.896039 0.000000\r
+vt 0.367201 0.895610 0.000000\r
+vt 0.362960 0.897320 0.000000\r
+vt 0.360886 0.899403 0.000000\r
+vt 0.358890 0.902174 0.000000\r
+vt 0.357030 0.905468 0.000000\r
+vt 0.355365 0.909081 0.000000\r
+vt 0.353918 0.912777 0.000000\r
+vt 0.318153 0.799067 0.000000\r
+vt 0.316399 0.780090 0.000000\r
+vt 0.312534 0.798928 0.000000\r
+vt 0.309657 0.779509 0.000000\r
+vt 0.306860 0.799231 0.000000\r
+vt 0.302759 0.779318 0.000000\r
+vt 0.300896 0.800115 0.000000\r
+vt 0.295797 0.779792 0.000000\r
+vt 0.294342 0.801757 0.000000\r
+vt 0.286832 0.804403 0.000000\r
+vt 0.277913 0.808362 0.000000\r
+vt 0.268702 0.786362 0.000000\r
+vt 0.516684 0.796244 0.000000\r
+vt 0.529740 0.797529 0.000000\r
+vt 0.529414 0.798635 0.000000\r
+vt 0.515760 0.797750 0.000000\r
+vt 0.517569 0.794804 0.000000\r
+vt 0.530080 0.796424 0.000000\r
+vt 0.518562 0.793123 0.000000\r
+vt 0.530450 0.794852 0.000000\r
+vt 0.519642 0.790854 0.000000\r
+vt 0.530861 0.792548 0.000000\r
+vt 0.520755 0.787833 0.000000\r
+vt 0.531318 0.789413 0.000000\r
+vt 0.521860 0.783952 0.000000\r
+vt 0.531819 0.785406 0.000000\r
+vt 0.522929 0.779301 0.000000\r
+vt 0.532358 0.780511 0.000000\r
+vt 0.528455 0.809669 0.000000\r
+vt 0.528406 0.814634 0.000000\r
+vt 0.513868 0.814688 0.000000\r
+vt 0.513590 0.809691 0.000000\r
+vt 0.513748 0.805501 0.000000\r
+vt 0.528605 0.805645 0.000000\r
+vt 0.514189 0.802161 0.000000\r
+vt 0.528830 0.802510 0.000000\r
+vt 0.514850 0.799580 0.000000\r
+vt 0.529106 0.800207 0.000000\r
+vt 0.544828 0.800699 0.000000\r
+vt 0.544986 0.802909 0.000000\r
+vt 0.544619 0.799204 0.000000\r
+vt 0.557889 0.799795 0.000000\r
+vt 0.558512 0.801266 0.000000\r
+vt 0.544377 0.798166 0.000000\r
+vt 0.557197 0.798761 0.000000\r
+vt 0.544134 0.797127 0.000000\r
+vt 0.556497 0.797727 0.000000\r
+vt 0.543933 0.795623 0.000000\r
+vt 0.555857 0.796240 0.000000\r
+vt 0.543811 0.793388 0.000000\r
+vt 0.555340 0.794037 0.000000\r
+vt 0.543805 0.790318 0.000000\r
+vt 0.555008 0.791008 0.000000\r
+vt 0.543948 0.786362 0.000000\r
+vt 0.554920 0.787096 0.000000\r
+vt 0.544267 0.781486 0.000000\r
+vt 0.555134 0.782256 0.000000\r
+vt 0.545139 0.809822 0.000000\r
+vt 0.559607 0.810059 0.000000\r
+vt 0.559668 0.814657 0.000000\r
+vt 0.545150 0.814629 0.000000\r
+vt 0.545089 0.805932 0.000000\r
+vt 0.559391 0.806329 0.000000\r
+vt 0.559021 0.803414 0.000000\r
+vt 0.571060 0.803996 0.000000\r
+vt 0.571595 0.806800 0.000000\r
+vt 0.570319 0.801899 0.000000\r
+vt 0.580323 0.802650 0.000000\r
+vt 0.581168 0.804697 0.000000\r
+vt 0.569411 0.800431 0.000000\r
+vt 0.579264 0.801167 0.000000\r
+vt 0.568397 0.799377 0.000000\r
+vt 0.578059 0.800063 0.000000\r
+vt 0.567360 0.798326 0.000000\r
+vt 0.576808 0.798967 0.000000\r
+vt 0.566393 0.796839 0.000000\r
+vt 0.575625 0.797463 0.000000\r
+vt 0.565584 0.794653 0.000000\r
+vt 0.574618 0.795279 0.000000\r
+vt 0.565017 0.791650 0.000000\r
+vt 0.573891 0.792290 0.000000\r
+vt 0.564774 0.787769 0.000000\r
+vt 0.573549 0.788429 0.000000\r
+vt 0.564940 0.782962 0.000000\r
+vt 0.573697 0.783646 0.000000\r
+vt 0.571907 0.810350 0.000000\r
+vt 0.582097 0.810700 0.000000\r
+vt 0.582186 0.814754 0.000000\r
+vt 0.571996 0.814702 0.000000\r
+vt 0.581762 0.807368 0.000000\r
+vt 0.589967 0.808022 0.000000\r
+vt 0.590265 0.811096 0.000000\r
+vt 0.589409 0.805512 0.000000\r
+vt 0.595924 0.806366 0.000000\r
+vt 0.596385 0.808692 0.000000\r
+vt 0.588582 0.803526 0.000000\r
+vt 0.595210 0.804461 0.000000\r
+vt 0.587509 0.802015 0.000000\r
+vt 0.594246 0.802927 0.000000\r
+vt 0.586253 0.800832 0.000000\r
+vt 0.593076 0.801648 0.000000\r
+vt 0.584917 0.799659 0.000000\r
+vt 0.591789 0.800373 0.000000\r
+vt 0.583630 0.798113 0.000000\r
+vt 0.590514 0.798763 0.000000\r
+vt 0.582517 0.795917 0.000000\r
+vt 0.589386 0.796540 0.000000\r
+vt 0.581699 0.792929 0.000000\r
+vt 0.588540 0.793539 0.000000\r
+vt 0.581299 0.789073 0.000000\r
+vt 0.588111 0.789671 0.000000\r
+vt 0.581438 0.784301 0.000000\r
+vt 0.588230 0.784894 0.000000\r
+vt 0.596617 0.811493 0.000000\r
+vt 0.596664 0.814853 0.000000\r
+vt 0.590337 0.814806 0.000000\r
+vt 0.601502 0.811828 0.000000\r
+vt 0.601529 0.814893 0.000000\r
+vt 0.601333 0.809272 0.000000\r
+vt 0.605276 0.809667 0.000000\r
+vt 0.605399 0.812055 0.000000\r
+vt 0.600988 0.807126 0.000000\r
+vt 0.605029 0.807658 0.000000\r
+vt 0.600436 0.805318 0.000000\r
+vt 0.604638 0.805937 0.000000\r
+vt 0.599665 0.803782 0.000000\r
+vt 0.604085 0.804420 0.000000\r
+vt 0.598692 0.802419 0.000000\r
+vt 0.603368 0.803005 0.000000\r
+vt 0.597577 0.801035 0.000000\r
+vt 0.602511 0.801535 0.000000\r
+vt 0.596428 0.799350 0.000000\r
+vt 0.601582 0.799780 0.000000\r
+vt 0.595374 0.797091 0.000000\r
+vt 0.600684 0.797489 0.000000\r
+vt 0.594555 0.794070 0.000000\r
+vt 0.599944 0.794448 0.000000\r
+vt 0.594115 0.790176 0.000000\r
+vt 0.599500 0.790528 0.000000\r
+vt 0.594186 0.785379 0.000000\r
+vt 0.599477 0.785710 0.000000\r
+vt 0.608876 0.812157 0.000000\r
+vt 0.608892 0.814960 0.000000\r
+vt 0.605417 0.814927 0.000000\r
+vt 0.612547 0.812141 0.000000\r
+vt 0.612566 0.814996 0.000000\r
+vt 0.608777 0.809833 0.000000\r
+vt 0.612449 0.809776 0.000000\r
+vt 0.608596 0.807884 0.000000\r
+vt 0.612298 0.807798 0.000000\r
+vt 0.608330 0.806209 0.000000\r
+vt 0.612105 0.806106 0.000000\r
+vt 0.607968 0.804709 0.000000\r
+vt 0.611869 0.804595 0.000000\r
+vt 0.607498 0.803272 0.000000\r
+vt 0.611581 0.803144 0.000000\r
+vt 0.606921 0.801752 0.000000\r
+vt 0.611229 0.801601 0.000000\r
+vt 0.606260 0.799951 0.000000\r
+vt 0.610807 0.799780 0.000000\r
+vt 0.605574 0.797638 0.000000\r
+vt 0.610330 0.797464 0.000000\r
+vt 0.604953 0.794592 0.000000\r
+vt 0.609838 0.794436 0.000000\r
+vt 0.604511 0.790665 0.000000\r
+vt 0.609400 0.790535 0.000000\r
+vt 0.604349 0.785841 0.000000\r
+vt 0.609084 0.785730 0.000000\r
+vt 0.617026 0.812032 0.000000\r
+vt 0.622280 0.811911 0.000000\r
+vt 0.622307 0.815100 0.000000\r
+vt 0.617052 0.815042 0.000000\r
+vt 0.616915 0.809538 0.000000\r
+vt 0.622160 0.809270 0.000000\r
+vt 0.616755 0.807456 0.000000\r
+vt 0.621985 0.807071 0.000000\r
+vt 0.616569 0.805687 0.000000\r
+vt 0.621780 0.805210 0.000000\r
+vt 0.616366 0.804123 0.000000\r
+vt 0.621556 0.803574 0.000000\r
+vt 0.616140 0.802637 0.000000\r
+vt 0.621312 0.802032 0.000000\r
+vt 0.615881 0.801073 0.000000\r
+vt 0.621041 0.800426 0.000000\r
+vt 0.615571 0.799245 0.000000\r
+vt 0.620730 0.798576 0.000000\r
+vt 0.615200 0.796947 0.000000\r
+vt 0.620366 0.796284 0.000000\r
+vt 0.614774 0.793969 0.000000\r
+vt 0.619945 0.793348 0.000000\r
+vt 0.614323 0.790137 0.000000\r
+vt 0.619478 0.789583 0.000000\r
+vt 0.613883 0.785372 0.000000\r
+vt 0.618986 0.784861 0.000000\r
+vt 0.627889 0.811815 0.000000\r
+vt 0.633904 0.811727 0.000000\r
+vt 0.633917 0.815239 0.000000\r
+vt 0.627910 0.815165 0.000000\r
+vt 0.627774 0.809045 0.000000\r
+vt 0.633801 0.808830 0.000000\r
+vt 0.627604 0.806746 0.000000\r
+vt 0.633645 0.806434 0.000000\r
+vt 0.627398 0.804806 0.000000\r
+vt 0.633455 0.804426 0.000000\r
+vt 0.627168 0.803109 0.000000\r
+vt 0.633237 0.802684 0.000000\r
+vt 0.626913 0.801517 0.000000\r
+vt 0.632988 0.801063 0.000000\r
+vt 0.626626 0.799870 0.000000\r
+vt 0.632704 0.799397 0.000000\r
+vt 0.626302 0.797990 0.000000\r
+vt 0.632380 0.797500 0.000000\r
+vt 0.625931 0.795683 0.000000\r
+vt 0.632015 0.795175 0.000000\r
+vt 0.625514 0.792753 0.000000\r
+vt 0.631616 0.792230 0.000000\r
+vt 0.625060 0.789010 0.000000\r
+vt 0.631197 0.788477 0.000000\r
+vt 0.624584 0.784303 0.000000\r
+vt 0.630776 0.783758 0.000000\r
+vt 0.640454 0.811634 0.000000\r
+vt 0.647695 0.811533 0.000000\r
+vt 0.647697 0.815420 0.000000\r
+vt 0.640460 0.815323 0.000000\r
+vt 0.640362 0.808598 0.000000\r
+vt 0.647605 0.808344 0.000000\r
+vt 0.640220 0.806105 0.000000\r
+vt 0.647466 0.805747 0.000000\r
+vt 0.640046 0.804039 0.000000\r
+vt 0.647292 0.803634 0.000000\r
+vt 0.639843 0.802276 0.000000\r
+vt 0.647088 0.801878 0.000000\r
+vt 0.639606 0.800661 0.000000\r
+vt 0.646845 0.800308 0.000000\r
+vt 0.639328 0.799010 0.000000\r
+vt 0.646556 0.798713 0.000000\r
+vt 0.639007 0.797120 0.000000\r
+vt 0.646224 0.796860 0.000000\r
+vt 0.638650 0.794786 0.000000\r
+vt 0.645863 0.794528 0.000000\r
+vt 0.638274 0.791815 0.000000\r
+vt 0.645499 0.791527 0.000000\r
+vt 0.637898 0.788030 0.000000\r
+vt 0.645160 0.787691 0.000000\r
+vt 0.637547 0.783273 0.000000\r
+vt 0.644877 0.782878 0.000000\r
+vt 0.655795 0.811428 0.000000\r
+vt 0.664921 0.811329 0.000000\r
+vt 0.664935 0.815668 0.000000\r
+vt 0.655798 0.815534 0.000000\r
+vt 0.655691 0.808070 0.000000\r
+vt 0.664777 0.807793 0.000000\r
+vt 0.655526 0.805366 0.000000\r
+vt 0.664548 0.804978 0.000000\r
+vt 0.655321 0.803216 0.000000\r
+vt 0.664258 0.802795 0.000000\r
+vt 0.655077 0.801491 0.000000\r
+vt 0.663918 0.801121 0.000000\r
+vt 0.654790 0.800006 0.000000\r
+vt 0.663526 0.799751 0.000000\r
+vt 0.654452 0.798506 0.000000\r
+vt 0.663083 0.798377 0.000000\r
+vt 0.654074 0.796717 0.000000\r
+vt 0.662604 0.796670 0.000000\r
+vt 0.653679 0.794397 0.000000\r
+vt 0.662127 0.794368 0.000000\r
+vt 0.653302 0.791362 0.000000\r
+vt 0.661694 0.791295 0.000000\r
+vt 0.652979 0.787464 0.000000\r
+vt 0.661352 0.787327 0.000000\r
+vt 0.652749 0.782581 0.000000\r
+vt 0.661146 0.782368 0.000000\r
+vt 0.675231 0.811251 0.000000\r
+vt 0.686862 0.811208 0.000000\r
+vt 0.686933 0.816008 0.000000\r
+vt 0.675267 0.815825 0.000000\r
+vt 0.675013 0.807533 0.000000\r
+vt 0.686531 0.807315 0.000000\r
+vt 0.674666 0.804604 0.000000\r
+vt 0.686006 0.804271 0.000000\r
+vt 0.674226 0.802388 0.000000\r
+vt 0.685336 0.802014 0.000000\r
+vt 0.673714 0.800772 0.000000\r
+vt 0.684563 0.800441 0.000000\r
+vt 0.673139 0.799530 0.000000\r
+vt 0.683713 0.799314 0.000000\r
+vt 0.672512 0.798297 0.000000\r
+vt 0.682812 0.798209 0.000000\r
+vt 0.671862 0.796678 0.000000\r
+vt 0.681905 0.796665 0.000000\r
+vt 0.671237 0.794390 0.000000\r
+vt 0.681053 0.794384 0.000000\r
+vt 0.670691 0.791276 0.000000\r
+vt 0.680321 0.791225 0.000000\r
+vt 0.670279 0.787236 0.000000\r
+vt 0.679773 0.787116 0.000000\r
+vt 0.670056 0.782200 0.000000\r
+vt 0.679476 0.782012 0.000000\r
+vt 0.699912 0.811225 0.000000\r
+vt 0.714352 0.811347 0.000000\r
+vt 0.714534 0.816460 0.000000\r
+vt 0.700031 0.816220 0.000000\r
+vt 0.699433 0.807176 0.000000\r
+vt 0.713693 0.807202 0.000000\r
+vt 0.698672 0.804019 0.000000\r
+vt 0.712655 0.803965 0.000000\r
+vt 0.697698 0.801701 0.000000\r
+vt 0.711327 0.801574 0.000000\r
+vt 0.696572 0.800131 0.000000\r
+vt 0.709796 0.799927 0.000000\r
+vt 0.695347 0.799061 0.000000\r
+vt 0.708141 0.798777 0.000000\r
+vt 0.694074 0.798027 0.000000\r
+vt 0.706436 0.797668 0.000000\r
+vt 0.692815 0.796521 0.000000\r
+vt 0.704753 0.796092 0.000000\r
+vt 0.691642 0.794228 0.000000\r
+vt 0.703172 0.793733 0.000000\r
+vt 0.690632 0.791023 0.000000\r
+vt 0.701779 0.790467 0.000000\r
+vt 0.689861 0.786853 0.000000\r
+vt 0.700665 0.786248 0.000000\r
+vt 0.689410 0.781696 0.000000\r
+vt 0.699919 0.781070 0.000000\r
+vt 0.714326 0.784240 0.000000\r
+vt 0.713123 0.779335 0.000000\r
+vt 0.715782 0.788190 0.000000\r
+vt 0.717201 0.791337 0.000000\r
+vt 0.718614 0.793721 0.000000\r
+vt 0.719897 0.795462 0.000000\r
+vt 0.721577 0.796834 0.000000\r
+vt 0.723428 0.798554 0.000000\r
+vt 0.724917 0.800660 0.000000\r
+vt 0.726848 0.803391 0.000000\r
+vt 0.728284 0.806978 0.000000\r
+vt 0.729009 0.811422 0.000000\r
+vt 0.728819 0.816702 0.000000\r
+vt 0.004023 0.250741 0.000000\r
+vt 0.005446 0.250470 0.000000\r
+vt 0.006916 0.250192 0.000000\r
+vt 0.009401 0.249736 0.000000\r
+vt 0.012695 0.249147 0.000000\r
+vt 0.016669 0.248458 0.000000\r
+vt 0.021378 0.247668 0.000000\r
+vt 0.001578 0.218569 0.000000\r
+vt 0.000073 0.218677 0.000000\r
+vt 0.003133 0.218459 0.000000\r
+vt 0.005755 0.218293 0.000000\r
+vt 0.009225 0.218094 0.000000\r
+vt 0.013405 0.217881 0.000000\r
+vt 0.018347 0.217665 0.000000\r
+vt 0.001583 0.185740 0.000000\r
+vt 0.000000 0.185659 0.000000\r
+vt 0.003218 0.185826 0.000000\r
+vt 0.005966 0.185991 0.000000\r
+vt 0.009598 0.186235 0.000000\r
+vt 0.013964 0.186562 0.000000\r
+vt 0.019115 0.186993 0.000000\r
+vt 0.005731 0.151970 0.000000\r
+vt 0.004063 0.151681 0.000000\r
+vt 0.007453 0.152272 0.000000\r
+vt 0.010341 0.152808 0.000000\r
+vt 0.014149 0.153552 0.000000\r
+vt 0.018712 0.154494 0.000000\r
+vt 0.024070 0.155669 0.000000\r
+vt 0.014216 0.116662 0.000000\r
+vt 0.012331 0.116103 0.000000\r
+vt 0.016155 0.117255 0.000000\r
+vt 0.019356 0.118303 0.000000\r
+vt 0.023515 0.119750 0.000000\r
+vt 0.028428 0.121561 0.000000\r
+vt 0.034106 0.123768 0.000000\r
+vt 0.029315 0.075713 0.000000\r
+vt 0.026592 0.073600 0.000000\r
+vt 0.032052 0.077834 0.000000\r
+vt 0.035835 0.080734 0.000000\r
+vt 0.040382 0.084199 0.000000\r
+vt 0.045511 0.088089 0.000000\r
+vt 0.051247 0.092421 0.000000\r
+vt 0.062911 0.048834 0.000000\r
+vt 0.063951 0.050454 0.000000\r
+vt 0.065040 0.052117 0.000000\r
+vt 0.066907 0.054843 0.000000\r
+vt 0.069423 0.058363 0.000000\r
+vt 0.072500 0.062494 0.000000\r
+vt 0.076178 0.067234 0.000000\r
+vt 0.093836 0.031146 0.000000\r
+vt 0.094577 0.032619 0.000000\r
+vt 0.095347 0.034138 0.000000\r
+vt 0.096667 0.036679 0.000000\r
+vt 0.098446 0.040019 0.000000\r
+vt 0.100630 0.044009 0.000000\r
+vt 0.103266 0.048678 0.000000\r
+vt 0.124204 0.017673 0.000000\r
+vt 0.124734 0.019113 0.000000\r
+vt 0.125284 0.020600 0.000000\r
+vt 0.126232 0.023095 0.000000\r
+vt 0.127509 0.026386 0.000000\r
+vt 0.129080 0.030335 0.000000\r
+vt 0.130982 0.034982 0.000000\r
+vt 0.154628 0.008179 0.000000\r
+vt 0.154969 0.009592 0.000000\r
+vt 0.155322 0.011052 0.000000\r
+vt 0.155937 0.013507 0.000000\r
+vt 0.156773 0.016752 0.000000\r
+vt 0.157808 0.020655 0.000000\r
+vt 0.159070 0.025263 0.000000\r
+vt 0.185251 0.003753 0.000000\r
+vt 0.185076 0.002377 0.000000\r
+vt 0.185432 0.005174 0.000000\r
+vt 0.185755 0.007572 0.000000\r
+vt 0.186198 0.010748 0.000000\r
+vt 0.186756 0.014577 0.000000\r
+vt 0.187445 0.019108 0.000000\r
+vt 0.215563 0.000000 0.000000\r
+vt 0.215596 0.001337 0.000000\r
+vt 0.215633 0.002718 0.000000\r
+vt 0.215697 0.005052 0.000000\r
+vt 0.215791 0.008148 0.000000\r
+vt 0.215916 0.011884 0.000000\r
+vt 0.216085 0.016312 0.000000\r
+vt 0.245354 0.002289 0.000000\r
+vt 0.245597 0.001018 0.000000\r
+vt 0.245159 0.003618 0.000000\r
+vt 0.244926 0.005888 0.000000\r
+vt 0.244666 0.008904 0.000000\r
+vt 0.244381 0.012549 0.000000\r
+vt 0.244063 0.016869 0.000000\r
+vt 0.273446 0.006251 0.000000\r
+vt 0.273892 0.005091 0.000000\r
+vt 0.273065 0.007502 0.000000\r
+vt 0.272568 0.009691 0.000000\r
+vt 0.271979 0.012618 0.000000\r
+vt 0.271310 0.016159 0.000000\r
+vt 0.270539 0.020355 0.000000\r
+vt 0.299982 0.012921 0.000000\r
+vt 0.300563 0.011884 0.000000\r
+vt 0.299458 0.014081 0.000000\r
+vt 0.298726 0.016177 0.000000\r
+vt 0.297834 0.018994 0.000000\r
+vt 0.296800 0.022407 0.000000\r
+vt 0.295599 0.026453 0.000000\r
+vt 0.325023 0.022056 0.000000\r
+vt 0.325688 0.021130 0.000000\r
+vt 0.324393 0.023130 0.000000\r
+vt 0.323453 0.025120 0.000000\r
+vt 0.322277 0.027810 0.000000\r
+vt 0.320900 0.031073 0.000000\r
+vt 0.319290 0.034942 0.000000\r
+vt 0.348593 0.033504 0.000000\r
+vt 0.349310 0.032663 0.000000\r
+vt 0.347879 0.034500 0.000000\r
+vt 0.346753 0.036377 0.000000\r
+vt 0.345314 0.038923 0.000000\r
+vt 0.343612 0.042013 0.000000\r
+vt 0.341616 0.045675 0.000000\r
+vt 0.370682 0.047142 0.000000\r
+vt 0.371440 0.046358 0.000000\r
+vt 0.369896 0.048073 0.000000\r
+vt 0.368601 0.049832 0.000000\r
+vt 0.366918 0.052217 0.000000\r
+vt 0.364914 0.055113 0.000000\r
+vt 0.362556 0.058546 0.000000\r
+vt 0.391295 0.062862 0.000000\r
+vt 0.392101 0.062113 0.000000\r
+vt 0.390438 0.063736 0.000000\r
+vt 0.388985 0.065368 0.000000\r
+vt 0.387076 0.067577 0.000000\r
+vt 0.384790 0.070255 0.000000\r
+vt 0.382094 0.073431 0.000000\r
+vt 0.410381 0.080661 0.000000\r
+vt 0.411253 0.079938 0.000000\r
+vt 0.409446 0.081480 0.000000\r
+vt 0.407841 0.082977 0.000000\r
+vt 0.405717 0.084995 0.000000\r
+vt 0.403164 0.087439 0.000000\r
+vt 0.400145 0.090335 0.000000\r
+vt 0.427914 0.100545 0.000000\r
+vt 0.428873 0.099849 0.000000\r
+vt 0.426892 0.101306 0.000000\r
+vt 0.425136 0.102662 0.000000\r
+vt 0.422804 0.104480 0.000000\r
+vt 0.419993 0.106677 0.000000\r
+vt 0.416662 0.109279 0.000000\r
+vt 0.443937 0.122648 0.000000\r
+vt 0.445007 0.121991 0.000000\r
+vt 0.442810 0.123344 0.000000\r
+vt 0.440886 0.124555 0.000000\r
+vt 0.438330 0.126165 0.000000\r
+vt 0.435243 0.128103 0.000000\r
+vt 0.431580 0.130390 0.000000\r
+vt 0.458463 0.147544 0.000000\r
+vt 0.459675 0.146963 0.000000\r
+vt 0.457205 0.148145 0.000000\r
+vt 0.455073 0.149169 0.000000\r
+vt 0.452245 0.150518 0.000000\r
+vt 0.448831 0.152128 0.000000\r
+vt 0.444784 0.154009 0.000000\r
+vt 0.041439 0.244573 0.000000\r
+vt 0.059155 0.242179 0.000000\r
+vt 0.074672 0.240314 0.000000\r
+vt 0.088258 0.238829 0.000000\r
+vt 0.100158 0.237612 0.000000\r
+vt 0.110586 0.236576 0.000000\r
+vt 0.119719 0.235651 0.000000\r
+vt 0.039303 0.217111 0.000000\r
+vt 0.057664 0.217060 0.000000\r
+vt 0.073633 0.217306 0.000000\r
+vt 0.087530 0.217714 0.000000\r
+vt 0.099643 0.218198 0.000000\r
+vt 0.110218 0.218708 0.000000\r
+vt 0.119467 0.219223 0.000000\r
+vt 0.040799 0.189318 0.000000\r
+vt 0.059588 0.191870 0.000000\r
+vt 0.075776 0.194414 0.000000\r
+vt 0.089764 0.196836 0.000000\r
+vt 0.101894 0.199087 0.000000\r
+vt 0.112455 0.201156 0.000000\r
+vt 0.121691 0.203054 0.000000\r
+vt 0.129811 0.204806 0.000000\r
+vt 0.127577 0.219724 0.000000\r
+vt 0.137000 0.206449 0.000000\r
+vt 0.134775 0.220438 0.000000\r
+vt 0.143409 0.207985 0.000000\r
+vt 0.141131 0.221214 0.000000\r
+vt 0.149186 0.209412 0.000000\r
+vt 0.146946 0.222090 0.000000\r
+vt 0.154411 0.210704 0.000000\r
+vt 0.152316 0.222867 0.000000\r
+vt 0.046244 0.161370 0.000000\r
+vt 0.065129 0.166865 0.000000\r
+vt 0.081199 0.171907 0.000000\r
+vt 0.094969 0.176447 0.000000\r
+vt 0.106846 0.180500 0.000000\r
+vt 0.117154 0.184112 0.000000\r
+vt 0.126153 0.187337 0.000000\r
+vt 0.134058 0.190225 0.000000\r
+vt 0.141047 0.192823 0.000000\r
+vt 0.147270 0.195169 0.000000\r
+vt 0.152855 0.197292 0.000000\r
+vt 0.157880 0.199207 0.000000\r
+vt 0.056227 0.133698 0.000000\r
+vt 0.074605 0.142540 0.000000\r
+vt 0.090039 0.150245 0.000000\r
+vt 0.103170 0.156944 0.000000\r
+vt 0.114454 0.162783 0.000000\r
+vt 0.124228 0.167894 0.000000\r
+vt 0.132753 0.172388 0.000000\r
+vt 0.140237 0.176359 0.000000\r
+vt 0.146850 0.179886 0.000000\r
+vt 0.152732 0.183035 0.000000\r
+vt 0.158004 0.185863 0.000000\r
+vt 0.162740 0.188404 0.000000\r
+vt 0.071555 0.107513 0.000000\r
+vt 0.088288 0.119847 0.000000\r
+vt 0.102334 0.130139 0.000000\r
+vt 0.114305 0.138874 0.000000\r
+vt 0.124613 0.146370 0.000000\r
+vt 0.133560 0.152862 0.000000\r
+vt 0.141376 0.158524 0.000000\r
+vt 0.148247 0.163494 0.000000\r
+vt 0.154323 0.167884 0.000000\r
+vt 0.159731 0.171785 0.000000\r
+vt 0.164580 0.175276 0.000000\r
+vt 0.168937 0.178408 0.000000\r
+vt 0.091961 0.085289 0.000000\r
+vt 0.105761 0.100071 0.000000\r
+vt 0.117697 0.112367 0.000000\r
+vt 0.128043 0.122762 0.000000\r
+vt 0.137046 0.131653 0.000000\r
+vt 0.144916 0.139330 0.000000\r
+vt 0.151828 0.146009 0.000000\r
+vt 0.157925 0.151859 0.000000\r
+vt 0.163333 0.157016 0.000000\r
+vt 0.168156 0.161591 0.000000\r
+vt 0.172486 0.165681 0.000000\r
+vt 0.176382 0.169345 0.000000\r
+vt 0.115076 0.067781 0.000000\r
+vt 0.125851 0.083870 0.000000\r
+vt 0.135451 0.097455 0.000000\r
+vt 0.143943 0.109031 0.000000\r
+vt 0.151439 0.118978 0.000000\r
+vt 0.158059 0.127588 0.000000\r
+vt 0.163916 0.135091 0.000000\r
+vt 0.169113 0.141669 0.000000\r
+vt 0.173742 0.147470 0.000000\r
+vt 0.177885 0.152619 0.000000\r
+vt 0.181615 0.157223 0.000000\r
+vt 0.184978 0.161348 0.000000\r
+vt 0.139544 0.054432 0.000000\r
+vt 0.147570 0.071161 0.000000\r
+vt 0.154891 0.085497 0.000000\r
+vt 0.161491 0.097839 0.000000\r
+vt 0.167403 0.108520 0.000000\r
+vt 0.172684 0.117813 0.000000\r
+vt 0.177399 0.125939 0.000000\r
+vt 0.181611 0.133081 0.000000\r
+vt 0.185384 0.139393 0.000000\r
+vt 0.188776 0.145004 0.000000\r
+vt 0.191841 0.150027 0.000000\r
+vt 0.194613 0.154532 0.000000\r
+vt 0.164826 0.044732 0.000000\r
+vt 0.170366 0.061711 0.000000\r
+vt 0.175538 0.076430 0.000000\r
+vt 0.180290 0.089217 0.000000\r
+vt 0.184614 0.100361 0.000000\r
+vt 0.188525 0.110109 0.000000\r
+vt 0.192053 0.118668 0.000000\r
+vt 0.195231 0.126217 0.000000\r
+vt 0.198097 0.132905 0.000000\r
+vt 0.200688 0.138863 0.000000\r
+vt 0.203041 0.144205 0.000000\r
+vt 0.205177 0.149004 0.000000\r
+vt 0.190689 0.038376 0.000000\r
+vt 0.193952 0.055347 0.000000\r
+vt 0.197100 0.070185 0.000000\r
+vt 0.200071 0.083170 0.000000\r
+vt 0.202832 0.094553 0.000000\r
+vt 0.205372 0.104559 0.000000\r
+vt 0.207695 0.113379 0.000000\r
+vt 0.209812 0.121183 0.000000\r
+vt 0.211740 0.128116 0.000000\r
+vt 0.213496 0.134306 0.000000\r
+vt 0.215102 0.139867 0.000000\r
+vt 0.216569 0.144870 0.000000\r
+vt 0.217040 0.035234 0.000000\r
+vt 0.218180 0.052010 0.000000\r
+vt 0.219408 0.066765 0.000000\r
+vt 0.220658 0.079745 0.000000\r
+vt 0.221885 0.091177 0.000000\r
+vt 0.223064 0.101264 0.000000\r
+vt 0.224177 0.110187 0.000000\r
+vt 0.225219 0.118103 0.000000\r
+vt 0.226188 0.125152 0.000000\r
+vt 0.227087 0.131458 0.000000\r
+vt 0.227920 0.137133 0.000000\r
+vt 0.228690 0.142246 0.000000\r
+vt 0.242902 0.035359 0.000000\r
+vt 0.242073 0.051796 0.000000\r
+vt 0.241507 0.066299 0.000000\r
+vt 0.241137 0.079096 0.000000\r
+vt 0.240909 0.090401 0.000000\r
+vt 0.240783 0.100402 0.000000\r
+vt 0.240730 0.109268 0.000000\r
+vt 0.240728 0.117151 0.000000\r
+vt 0.240760 0.124183 0.000000\r
+vt 0.240816 0.130484 0.000000\r
+vt 0.240886 0.136162 0.000000\r
+vt 0.240966 0.141284 0.000000\r
+vt 0.267393 0.038316 0.000000\r
+vt 0.264743 0.054299 0.000000\r
+vt 0.262523 0.068421 0.000000\r
+vt 0.260658 0.080905 0.000000\r
+vt 0.259084 0.091950 0.000000\r
+vt 0.257748 0.101737 0.000000\r
+vt 0.256608 0.110428 0.000000\r
+vt 0.255629 0.118164 0.000000\r
+vt 0.254781 0.125073 0.000000\r
+vt 0.254043 0.131270 0.000000\r
+vt 0.253394 0.136860 0.000000\r
+vt 0.252821 0.141906 0.000000\r
+vt 0.290583 0.043769 0.000000\r
+vt 0.286226 0.059182 0.000000\r
+vt 0.282461 0.072810 0.000000\r
+vt 0.279201 0.084866 0.000000\r
+vt 0.276370 0.095542 0.000000\r
+vt 0.273904 0.105011 0.000000\r
+vt 0.271746 0.113424 0.000000\r
+vt 0.269851 0.120920 0.000000\r
+vt 0.268177 0.127619 0.000000\r
+vt 0.266692 0.133631 0.000000\r
+vt 0.265364 0.139056 0.000000\r
+vt 0.264175 0.143957 0.000000\r
+vt 0.312505 0.051494 0.000000\r
+vt 0.306537 0.066225 0.000000\r
+vt 0.301320 0.079250 0.000000\r
+vt 0.296750 0.090775 0.000000\r
+vt 0.292740 0.100983 0.000000\r
+vt 0.289212 0.110038 0.000000\r
+vt 0.286099 0.118088 0.000000\r
+vt 0.283343 0.125260 0.000000\r
+vt 0.280893 0.131673 0.000000\r
+vt 0.278705 0.137429 0.000000\r
+vt 0.276738 0.142625 0.000000\r
+vt 0.274968 0.147319 0.000000\r
+vt 0.333156 0.061342 0.000000\r
+vt 0.325668 0.075279 0.000000\r
+vt 0.319080 0.087596 0.000000\r
+vt 0.313277 0.098490 0.000000\r
+vt 0.308157 0.108137 0.000000\r
+vt 0.303630 0.116692 0.000000\r
+vt 0.299619 0.124296 0.000000\r
+vt 0.296053 0.131070 0.000000\r
+vt 0.292873 0.137126 0.000000\r
+vt 0.290024 0.142561 0.000000\r
+vt 0.287457 0.147467 0.000000\r
+vt 0.285141 0.151899 0.000000\r
+vt 0.352508 0.073209 0.000000\r
+vt 0.343582 0.086241 0.000000\r
+vt 0.335701 0.097747 0.000000\r
+vt 0.328735 0.107914 0.000000\r
+vt 0.322570 0.116910 0.000000\r
+vt 0.317104 0.124881 0.000000\r
+vt 0.312248 0.131961 0.000000\r
+vt 0.307923 0.138264 0.000000\r
+vt 0.304058 0.143896 0.000000\r
+vt 0.300590 0.148948 0.000000\r
+vt 0.297460 0.153508 0.000000\r
+vt 0.294633 0.157626 0.000000\r
+vt 0.370551 0.086976 0.000000\r
+vt 0.360266 0.098999 0.000000\r
+vt 0.351160 0.109600 0.000000\r
+vt 0.343094 0.118951 0.000000\r
+vt 0.335942 0.127211 0.000000\r
+vt 0.329590 0.134520 0.000000\r
+vt 0.323938 0.141003 0.000000\r
+vt 0.318898 0.146768 0.000000\r
+vt 0.314390 0.151914 0.000000\r
+vt 0.310341 0.156527 0.000000\r
+vt 0.306684 0.160686 0.000000\r
+vt 0.303380 0.164439 0.000000\r
+vt 0.387189 0.102665 0.000000\r
+vt 0.375617 0.113579 0.000000\r
+vt 0.365357 0.123173 0.000000\r
+vt 0.356255 0.131611 0.000000\r
+vt 0.348174 0.139044 0.000000\r
+vt 0.340991 0.145603 0.000000\r
+vt 0.334595 0.151408 0.000000\r
+vt 0.328888 0.156562 0.000000\r
+vt 0.323781 0.161154 0.000000\r
+vt 0.319192 0.165264 0.000000\r
+vt 0.315047 0.168966 0.000000\r
+vt 0.311300 0.172303 0.000000\r
+vt 0.402336 0.120296 0.000000\r
+vt 0.389536 0.129994 0.000000\r
+vt 0.378190 0.138480 0.000000\r
+vt 0.368115 0.145900 0.000000\r
+vt 0.359163 0.152402 0.000000\r
+vt 0.351203 0.158117 0.000000\r
+vt 0.344115 0.163159 0.000000\r
+vt 0.337791 0.167622 0.000000\r
+vt 0.332131 0.171589 0.000000\r
+vt 0.327046 0.175133 0.000000\r
+vt 0.322453 0.178318 0.000000\r
+vt 0.318302 0.181185 0.000000\r
+vt 0.415841 0.139957 0.000000\r
+vt 0.401855 0.148307 0.000000\r
+vt 0.389537 0.155595 0.000000\r
+vt 0.378543 0.161865 0.000000\r
+vt 0.368771 0.167312 0.000000\r
+vt 0.360088 0.172073 0.000000\r
+vt 0.352364 0.176254 0.000000\r
+vt 0.345477 0.179942 0.000000\r
+vt 0.339317 0.183208 0.000000\r
+vt 0.333784 0.186116 0.000000\r
+vt 0.328787 0.188723 0.000000\r
+vt 0.324270 0.191064 0.000000\r
+vt 0.427416 0.161657 0.000000\r
+vt 0.399372 0.174793 0.000000\r
+vt 0.387368 0.179606 0.000000\r
+vt 0.376796 0.183818 0.000000\r
+vt 0.367447 0.187493 0.000000\r
+vt 0.359153 0.190705 0.000000\r
+vt 0.351772 0.193523 0.000000\r
+vt 0.345178 0.196007 0.000000\r
+vt 0.339260 0.198208 0.000000\r
+vt 0.333913 0.200168 0.000000\r
+vt 0.329039 0.201919 0.000000\r
+vt 0.165513 0.235277 0.000000\r
+vt 0.169439 0.234959 0.000000\r
+vt 0.173167 0.234678 0.000000\r
+vt 0.176686 0.234429 0.000000\r
+vt 0.179950 0.234210 0.000000\r
+vt 0.182899 0.234022 0.000000\r
+vt 0.185468 0.233865 0.000000\r
+vt 0.187611 0.233739 0.000000\r
+vt 0.189388 0.233637 0.000000\r
+vt 0.190711 0.233563 0.000000\r
+vt 0.161350 0.235575 0.000000\r
+vt 0.161465 0.223892 0.000000\r
+vt 0.165554 0.224256 0.000000\r
+vt 0.169447 0.224583 0.000000\r
+vt 0.173162 0.224887 0.000000\r
+vt 0.176679 0.225171 0.000000\r
+vt 0.179947 0.225435 0.000000\r
+vt 0.182902 0.225674 0.000000\r
+vt 0.185476 0.225884 0.000000\r
+vt 0.187623 0.226060 0.000000\r
+vt 0.189404 0.226206 0.000000\r
+vt 0.190730 0.226315 0.000000\r
+vt 0.159046 0.211833 0.000000\r
+vt 0.157123 0.223456 0.000000\r
+vt 0.163229 0.212832 0.000000\r
+vt 0.167164 0.213755 0.000000\r
+vt 0.170930 0.214623 0.000000\r
+vt 0.174540 0.215446 0.000000\r
+vt 0.177967 0.216219 0.000000\r
+vt 0.181159 0.216935 0.000000\r
+vt 0.184049 0.217581 0.000000\r
+vt 0.186571 0.218142 0.000000\r
+vt 0.188675 0.218611 0.000000\r
+vt 0.190421 0.218998 0.000000\r
+vt 0.191721 0.219285 0.000000\r
+vt 0.162322 0.200898 0.000000\r
+vt 0.166322 0.202417 0.000000\r
+vt 0.170083 0.203838 0.000000\r
+vt 0.173682 0.205190 0.000000\r
+vt 0.177135 0.206481 0.000000\r
+vt 0.180417 0.207702 0.000000\r
+vt 0.183477 0.208835 0.000000\r
+vt 0.186250 0.209859 0.000000\r
+vt 0.188671 0.210750 0.000000\r
+vt 0.190693 0.211493 0.000000\r
+vt 0.192371 0.212109 0.000000\r
+vt 0.193622 0.212566 0.000000\r
+vt 0.166920 0.190646 0.000000\r
+vt 0.170683 0.192660 0.000000\r
+vt 0.174219 0.194548 0.000000\r
+vt 0.177602 0.196349 0.000000\r
+vt 0.180849 0.198072 0.000000\r
+vt 0.183935 0.199705 0.000000\r
+vt 0.186814 0.201224 0.000000\r
+vt 0.189425 0.202598 0.000000\r
+vt 0.191705 0.203795 0.000000\r
+vt 0.193610 0.204794 0.000000\r
+vt 0.195192 0.205622 0.000000\r
+vt 0.196372 0.206238 0.000000\r
+vt 0.172784 0.181166 0.000000\r
+vt 0.176246 0.183643 0.000000\r
+vt 0.179500 0.185965 0.000000\r
+vt 0.182614 0.188180 0.000000\r
+vt 0.185603 0.190301 0.000000\r
+vt 0.188446 0.192313 0.000000\r
+vt 0.191098 0.194184 0.000000\r
+vt 0.193504 0.195879 0.000000\r
+vt 0.195606 0.197356 0.000000\r
+vt 0.197363 0.198589 0.000000\r
+vt 0.198823 0.199612 0.000000\r
+vt 0.199911 0.200375 0.000000\r
+vt 0.179825 0.172571 0.000000\r
+vt 0.182927 0.175466 0.000000\r
+vt 0.185844 0.178179 0.000000\r
+vt 0.188638 0.180769 0.000000\r
+vt 0.191321 0.183249 0.000000\r
+vt 0.193874 0.185601 0.000000\r
+vt 0.196257 0.187792 0.000000\r
+vt 0.198420 0.189775 0.000000\r
+vt 0.200310 0.191505 0.000000\r
+vt 0.201891 0.192950 0.000000\r
+vt 0.203204 0.194149 0.000000\r
+vt 0.204184 0.195043 0.000000\r
+vt 0.187956 0.164979 0.000000\r
+vt 0.190643 0.168239 0.000000\r
+vt 0.193173 0.171295 0.000000\r
+vt 0.195600 0.174212 0.000000\r
+vt 0.197932 0.177006 0.000000\r
+vt 0.200152 0.179658 0.000000\r
+vt 0.202227 0.182128 0.000000\r
+vt 0.204111 0.184365 0.000000\r
+vt 0.205758 0.186317 0.000000\r
+vt 0.207137 0.187947 0.000000\r
+vt 0.208281 0.189300 0.000000\r
+vt 0.209135 0.190310 0.000000\r
+vt 0.197074 0.158501 0.000000\r
+vt 0.199300 0.162065 0.000000\r
+vt 0.201401 0.165408 0.000000\r
+vt 0.203418 0.168601 0.000000\r
+vt 0.205359 0.171660 0.000000\r
+vt 0.207210 0.174565 0.000000\r
+vt 0.208940 0.177271 0.000000\r
+vt 0.210512 0.179723 0.000000\r
+vt 0.211889 0.181864 0.000000\r
+vt 0.213041 0.183651 0.000000\r
+vt 0.213998 0.185136 0.000000\r
+vt 0.214711 0.186243 0.000000\r
+vt 0.207081 0.153237 0.000000\r
+vt 0.208808 0.157042 0.000000\r
+vt 0.210442 0.160612 0.000000\r
+vt 0.212014 0.164025 0.000000\r
+vt 0.213529 0.167296 0.000000\r
+vt 0.214975 0.170403 0.000000\r
+vt 0.216329 0.173299 0.000000\r
+vt 0.217561 0.175925 0.000000\r
+vt 0.218641 0.178217 0.000000\r
+vt 0.219545 0.180131 0.000000\r
+vt 0.220297 0.181720 0.000000\r
+vt 0.220858 0.182906 0.000000\r
+vt 0.217882 0.149289 0.000000\r
+vt 0.219078 0.153265 0.000000\r
+vt 0.220214 0.157000 0.000000\r
+vt 0.221309 0.160572 0.000000\r
+vt 0.222367 0.163998 0.000000\r
+vt 0.223379 0.167253 0.000000\r
+vt 0.224329 0.170289 0.000000\r
+vt 0.225195 0.173042 0.000000\r
+vt 0.225956 0.175446 0.000000\r
+vt 0.226594 0.177454 0.000000\r
+vt 0.227126 0.179122 0.000000\r
+vt 0.227524 0.180365 0.000000\r
+vt 0.229386 0.146767 0.000000\r
+vt 0.230024 0.150841 0.000000\r
+vt 0.230635 0.154670 0.000000\r
+vt 0.231226 0.158335 0.000000\r
+vt 0.231801 0.161853 0.000000\r
+vt 0.232354 0.165198 0.000000\r
+vt 0.232876 0.168319 0.000000\r
+vt 0.233354 0.171151 0.000000\r
+vt 0.233776 0.173624 0.000000\r
+vt 0.234133 0.175690 0.000000\r
+vt 0.234432 0.177405 0.000000\r
+vt 0.234659 0.178684 0.000000\r
+vt 0.241049 0.145818 0.000000\r
+vt 0.241132 0.149907 0.000000\r
+vt 0.241217 0.153754 0.000000\r
+vt 0.241304 0.157440 0.000000\r
+vt 0.241395 0.160981 0.000000\r
+vt 0.241486 0.164350 0.000000\r
+vt 0.241576 0.167496 0.000000\r
+vt 0.241663 0.170352 0.000000\r
+vt 0.241744 0.172847 0.000000\r
+vt 0.241816 0.174933 0.000000\r
+vt 0.241881 0.176665 0.000000\r
+vt 0.241936 0.177954 0.000000\r
+vt 0.252322 0.146376 0.000000\r
+vt 0.251878 0.150410 0.000000\r
+vt 0.251464 0.154209 0.000000\r
+vt 0.251073 0.157851 0.000000\r
+vt 0.250701 0.161352 0.000000\r
+vt 0.250352 0.164687 0.000000\r
+vt 0.250030 0.167802 0.000000\r
+vt 0.249742 0.170632 0.000000\r
+vt 0.249495 0.173107 0.000000\r
+vt 0.249293 0.175175 0.000000\r
+vt 0.249130 0.176893 0.000000\r
+vt 0.249015 0.178173 0.000000\r
+vt 0.263127 0.148300 0.000000\r
+vt 0.262186 0.152221 0.000000\r
+vt 0.261302 0.155915 0.000000\r
+vt 0.260457 0.159459 0.000000\r
+vt 0.259649 0.162869 0.000000\r
+vt 0.258882 0.166118 0.000000\r
+vt 0.258168 0.169155 0.000000\r
+vt 0.257524 0.171916 0.000000\r
+vt 0.256964 0.174330 0.000000\r
+vt 0.256499 0.176348 0.000000\r
+vt 0.256118 0.178025 0.000000\r
+vt 0.255841 0.179274 0.000000\r
+vt 0.273403 0.151479 0.000000\r
+vt 0.271993 0.155237 0.000000\r
+vt 0.270666 0.158778 0.000000\r
+vt 0.269394 0.162177 0.000000\r
+vt 0.268174 0.165448 0.000000\r
+vt 0.267012 0.168567 0.000000\r
+vt 0.265929 0.171484 0.000000\r
+vt 0.264947 0.174134 0.000000\r
+vt 0.264091 0.176453 0.000000\r
+vt 0.263378 0.178392 0.000000\r
+vt 0.262789 0.180003 0.000000\r
+vt 0.262356 0.181202 0.000000\r
+vt 0.283090 0.155827 0.000000\r
+vt 0.281240 0.159376 0.000000\r
+vt 0.279497 0.162721 0.000000\r
+vt 0.277825 0.165931 0.000000\r
+vt 0.276217 0.169022 0.000000\r
+vt 0.274685 0.171969 0.000000\r
+vt 0.273254 0.174724 0.000000\r
+vt 0.271955 0.177229 0.000000\r
+vt 0.270820 0.179420 0.000000\r
+vt 0.269873 0.181252 0.000000\r
+vt 0.269088 0.182774 0.000000\r
+vt 0.268508 0.183906 0.000000\r
+vt 0.292127 0.161275 0.000000\r
+vt 0.289865 0.164571 0.000000\r
+vt 0.287732 0.167678 0.000000\r
+vt 0.285685 0.170660 0.000000\r
+vt 0.283716 0.173530 0.000000\r
+vt 0.281838 0.176265 0.000000\r
+vt 0.280082 0.178824 0.000000\r
+vt 0.278487 0.181148 0.000000\r
+vt 0.277093 0.183181 0.000000\r
+vt 0.275927 0.184880 0.000000\r
+vt 0.274960 0.186291 0.000000\r
+vt 0.274242 0.187340 0.000000\r
+vt 0.300450 0.167765 0.000000\r
+vt 0.297804 0.170766 0.000000\r
+vt 0.295309 0.173594 0.000000\r
+vt 0.292915 0.176307 0.000000\r
+vt 0.290609 0.178918 0.000000\r
+vt 0.288411 0.181406 0.000000\r
+vt 0.286355 0.183731 0.000000\r
+vt 0.284486 0.185843 0.000000\r
+vt 0.282852 0.187689 0.000000\r
+vt 0.281484 0.189232 0.000000\r
+vt 0.280349 0.190511 0.000000\r
+vt 0.279503 0.191461 0.000000\r
+vt 0.307978 0.175257 0.000000\r
+vt 0.304979 0.177921 0.000000\r
+vt 0.302151 0.180430 0.000000\r
+vt 0.299437 0.182836 0.000000\r
+vt 0.296825 0.185148 0.000000\r
+vt 0.294334 0.187351 0.000000\r
+vt 0.292005 0.189408 0.000000\r
+vt 0.289887 0.191276 0.000000\r
+vt 0.288033 0.192907 0.000000\r
+vt 0.286483 0.194269 0.000000\r
+vt 0.285194 0.195398 0.000000\r
+vt 0.284233 0.196234 0.000000\r
+vt 0.314623 0.183720 0.000000\r
+vt 0.311302 0.186003 0.000000\r
+vt 0.308174 0.188152 0.000000\r
+vt 0.305173 0.190209 0.000000\r
+vt 0.302285 0.192185 0.000000\r
+vt 0.299532 0.194065 0.000000\r
+vt 0.296958 0.195819 0.000000\r
+vt 0.294618 0.197410 0.000000\r
+vt 0.292570 0.198798 0.000000\r
+vt 0.290857 0.199956 0.000000\r
+vt 0.289433 0.200914 0.000000\r
+vt 0.288371 0.201621 0.000000\r
+vt 0.320271 0.193131 0.000000\r
+vt 0.316669 0.194989 0.000000\r
+vt 0.313279 0.196732 0.000000\r
+vt 0.310028 0.198397 0.000000\r
+vt 0.306902 0.199994 0.000000\r
+vt 0.303923 0.201512 0.000000\r
+vt 0.301137 0.202927 0.000000\r
+vt 0.298606 0.204209 0.000000\r
+vt 0.296391 0.205327 0.000000\r
+vt 0.294539 0.206257 0.000000\r
+vt 0.292999 0.207025 0.000000\r
+vt 0.291850 0.207591 0.000000\r
+vt 0.324757 0.203481 0.000000\r
+vt 0.320940 0.204868 0.000000\r
+vt 0.317355 0.206157 0.000000\r
+vt 0.313903 0.207369 0.000000\r
+vt 0.310581 0.208539 0.000000\r
+vt 0.307415 0.209655 0.000000\r
+vt 0.304457 0.210695 0.000000\r
+vt 0.301768 0.211637 0.000000\r
+vt 0.299418 0.212457 0.000000\r
+vt 0.297452 0.213138 0.000000\r
+vt 0.295817 0.213699 0.000000\r
+vt 0.294598 0.214111 0.000000\r
+vt 0.191366 0.233532 0.000000\r
+vt 0.191642 0.233527 0.000000\r
+vt 0.192246 0.233504 0.000000\r
+vt 0.193493 0.233443 0.000000\r
+vt 0.195547 0.233336 0.000000\r
+vt 0.198538 0.233177 0.000000\r
+vt 0.202604 0.232964 0.000000\r
+vt 0.207893 0.232692 0.000000\r
+vt 0.214555 0.232359 0.000000\r
+vt 0.222742 0.231964 0.000000\r
+vt 0.232611 0.231516 0.000000\r
+vt 0.191386 0.226373 0.000000\r
+vt 0.191662 0.226406 0.000000\r
+vt 0.192266 0.226466 0.000000\r
+vt 0.193515 0.226578 0.000000\r
+vt 0.195572 0.226755 0.000000\r
+vt 0.198565 0.227009 0.000000\r
+vt 0.202634 0.227352 0.000000\r
+vt 0.207923 0.227800 0.000000\r
+vt 0.214581 0.228369 0.000000\r
+vt 0.222761 0.229077 0.000000\r
+vt 0.232618 0.229952 0.000000\r
+vt 0.192365 0.219431 0.000000\r
+vt 0.192635 0.219501 0.000000\r
+vt 0.193228 0.219642 0.000000\r
+vt 0.194453 0.219921 0.000000\r
+vt 0.196471 0.220373 0.000000\r
+vt 0.199408 0.221026 0.000000\r
+vt 0.203400 0.221911 0.000000\r
+vt 0.208591 0.223058 0.000000\r
+vt 0.215126 0.224503 0.000000\r
+vt 0.223153 0.226281 0.000000\r
+vt 0.232827 0.228438 0.000000\r
+vt 0.194241 0.212797 0.000000\r
+vt 0.194502 0.212901 0.000000\r
+vt 0.195073 0.213118 0.000000\r
+vt 0.196252 0.213555 0.000000\r
+vt 0.198194 0.214268 0.000000\r
+vt 0.201021 0.215302 0.000000\r
+vt 0.204866 0.216702 0.000000\r
+vt 0.209866 0.218518 0.000000\r
+vt 0.216163 0.220801 0.000000\r
+vt 0.223899 0.223605 0.000000\r
+vt 0.233227 0.226990 0.000000\r
+vt 0.196956 0.206547 0.000000\r
+vt 0.197204 0.206682 0.000000\r
+vt 0.197744 0.206969 0.000000\r
+vt 0.198857 0.207554 0.000000\r
+vt 0.200690 0.208512 0.000000\r
+vt 0.203358 0.209902 0.000000\r
+vt 0.206989 0.211787 0.000000\r
+vt 0.211712 0.214232 0.000000\r
+vt 0.217664 0.217306 0.000000\r
+vt 0.224981 0.221077 0.000000\r
+vt 0.233808 0.225623 0.000000\r
+vt 0.200452 0.200755 0.000000\r
+vt 0.200682 0.200919 0.000000\r
+vt 0.201183 0.201270 0.000000\r
+vt 0.202212 0.201990 0.000000\r
+vt 0.203905 0.203173 0.000000\r
+vt 0.206371 0.204890 0.000000\r
+vt 0.209726 0.207222 0.000000\r
+vt 0.214095 0.210250 0.000000\r
+vt 0.219602 0.214056 0.000000\r
+vt 0.226378 0.218726 0.000000\r
+vt 0.234560 0.224351 0.000000\r
+vt 0.204671 0.195487 0.000000\r
+vt 0.204881 0.195676 0.000000\r
+vt 0.205334 0.196085 0.000000\r
+vt 0.206263 0.196928 0.000000\r
+vt 0.207789 0.198312 0.000000\r
+vt 0.210011 0.200326 0.000000\r
+vt 0.213036 0.203063 0.000000\r
+vt 0.216977 0.206618 0.000000\r
+vt 0.221948 0.211091 0.000000\r
+vt 0.228071 0.216580 0.000000\r
+vt 0.235472 0.223191 0.000000\r
+vt 0.209562 0.190811 0.000000\r
+vt 0.209747 0.191021 0.000000\r
+vt 0.210145 0.191481 0.000000\r
+vt 0.210958 0.192431 0.000000\r
+vt 0.212292 0.193994 0.000000\r
+vt 0.214234 0.196270 0.000000\r
+vt 0.216877 0.199364 0.000000\r
+vt 0.220323 0.203387 0.000000\r
+vt 0.224674 0.208450 0.000000\r
+vt 0.230040 0.214667 0.000000\r
+vt 0.236536 0.222156 0.000000\r
+vt 0.215069 0.186791 0.000000\r
+vt 0.215227 0.187020 0.000000\r
+vt 0.215563 0.187523 0.000000\r
+vt 0.216245 0.188564 0.000000\r
+vt 0.217364 0.190279 0.000000\r
+vt 0.218991 0.192778 0.000000\r
+vt 0.221208 0.196178 0.000000\r
+vt 0.224098 0.200601 0.000000\r
+vt 0.227752 0.206171 0.000000\r
+vt 0.232264 0.213014 0.000000\r
+vt 0.237739 0.221260 0.000000\r
+vt 0.221141 0.183492 0.000000\r
+vt 0.221269 0.183736 0.000000\r
+vt 0.221536 0.184273 0.000000\r
+vt 0.222075 0.185388 0.000000\r
+vt 0.222957 0.187227 0.000000\r
+vt 0.224239 0.189908 0.000000\r
+vt 0.225986 0.193557 0.000000\r
+vt 0.228266 0.198306 0.000000\r
+vt 0.231153 0.204292 0.000000\r
+vt 0.234725 0.211649 0.000000\r
+vt 0.239071 0.220520 0.000000\r
+vt 0.227727 0.180978 0.000000\r
+vt 0.227821 0.181233 0.000000\r
+vt 0.228014 0.181796 0.000000\r
+vt 0.228398 0.182966 0.000000\r
+vt 0.229023 0.184898 0.000000\r
+vt 0.229932 0.187715 0.000000\r
+vt 0.231171 0.191552 0.000000\r
+vt 0.232791 0.196548 0.000000\r
+vt 0.234848 0.202849 0.000000\r
+vt 0.237401 0.210600 0.000000\r
+vt 0.240523 0.219950 0.000000\r
+vt 0.234778 0.179314 0.000000\r
+vt 0.234835 0.179575 0.000000\r
+vt 0.234946 0.180154 0.000000\r
+vt 0.235163 0.181359 0.000000\r
+vt 0.235515 0.183350 0.000000\r
+vt 0.236025 0.186255 0.000000\r
+vt 0.236723 0.190213 0.000000\r
+vt 0.237640 0.195370 0.000000\r
+vt 0.238810 0.201878 0.000000\r
+vt 0.240274 0.209891 0.000000\r
+vt 0.242082 0.219565 0.000000\r
+vt 0.241970 0.178589 0.000000\r
+vt 0.241989 0.178851 0.000000\r
+vt 0.242017 0.179435 0.000000\r
+vt 0.242064 0.180653 0.000000\r
+vt 0.242138 0.182665 0.000000\r
+vt 0.242244 0.185603 0.000000\r
+vt 0.242393 0.189609 0.000000\r
+vt 0.242595 0.194833 0.000000\r
+vt 0.242863 0.201432 0.000000\r
+vt 0.243215 0.209563 0.000000\r
+vt 0.243680 0.219386 0.000000\r
+vt 0.248965 0.178801 0.000000\r
+vt 0.248949 0.179060 0.000000\r
+vt 0.248898 0.179638 0.000000\r
+vt 0.248784 0.180846 0.000000\r
+vt 0.248591 0.182844 0.000000\r
+vt 0.248308 0.185763 0.000000\r
+vt 0.247925 0.189746 0.000000\r
+vt 0.247433 0.194945 0.000000\r
+vt 0.246825 0.201516 0.000000\r
+vt 0.246094 0.209621 0.000000\r
+vt 0.245245 0.219418 0.000000\r
+vt 0.255710 0.179886 0.000000\r
+vt 0.255659 0.180137 0.000000\r
+vt 0.255534 0.180701 0.000000\r
+vt 0.255265 0.181880 0.000000\r
+vt 0.254818 0.183831 0.000000\r
+vt 0.254163 0.186685 0.000000\r
+vt 0.253271 0.190580 0.000000\r
+vt 0.252113 0.195668 0.000000\r
+vt 0.250659 0.202104 0.000000\r
+vt 0.248882 0.210045 0.000000\r
+vt 0.246763 0.219649 0.000000\r
+vt 0.262147 0.181790 0.000000\r
+vt 0.262064 0.182030 0.000000\r
+vt 0.261869 0.182570 0.000000\r
+vt 0.261455 0.183703 0.000000\r
+vt 0.260766 0.185579 0.000000\r
+vt 0.259758 0.188323 0.000000\r
+vt 0.258382 0.192071 0.000000\r
+vt 0.256590 0.196968 0.000000\r
+vt 0.254330 0.203165 0.000000\r
+vt 0.251554 0.210816 0.000000\r
+vt 0.248220 0.220070 0.000000\r
+vt 0.268226 0.184460 0.000000\r
+vt 0.268114 0.184685 0.000000\r
+vt 0.267852 0.185195 0.000000\r
+vt 0.267301 0.186265 0.000000\r
+vt 0.266385 0.188039 0.000000\r
+vt 0.265043 0.190633 0.000000\r
+vt 0.263212 0.194178 0.000000\r
+vt 0.260822 0.198810 0.000000\r
+vt 0.257802 0.204674 0.000000\r
+vt 0.254082 0.211913 0.000000\r
+vt 0.249598 0.220669 0.000000\r
+vt 0.273892 0.187852 0.000000\r
+vt 0.273751 0.188059 0.000000\r
+vt 0.273429 0.188532 0.000000\r
+vt 0.272749 0.189524 0.000000\r
+vt 0.271621 0.191169 0.000000\r
+vt 0.269970 0.193577 0.000000\r
+vt 0.267715 0.196866 0.000000\r
+vt 0.264768 0.201164 0.000000\r
+vt 0.261039 0.206603 0.000000\r
+vt 0.256440 0.213318 0.000000\r
+vt 0.250885 0.221436 0.000000\r
+vt 0.279090 0.191924 0.000000\r
+vt 0.278924 0.192111 0.000000\r
+vt 0.278544 0.192539 0.000000\r
+vt 0.277747 0.193439 0.000000\r
+vt 0.276423 0.194933 0.000000\r
+vt 0.274487 0.197117 0.000000\r
+vt 0.271841 0.200101 0.000000\r
+vt 0.268383 0.203999 0.000000\r
+vt 0.264005 0.208929 0.000000\r
+vt 0.258600 0.215011 0.000000\r
+vt 0.252064 0.222360 0.000000\r
+vt 0.283763 0.196640 0.000000\r
+vt 0.283572 0.196804 0.000000\r
+vt 0.283141 0.197181 0.000000\r
+vt 0.282236 0.197974 0.000000\r
+vt 0.280736 0.199292 0.000000\r
+vt 0.278542 0.201219 0.000000\r
+vt 0.275543 0.203850 0.000000\r
+vt 0.271624 0.207285 0.000000\r
+vt 0.266662 0.211625 0.000000\r
+vt 0.260535 0.216975 0.000000\r
+vt 0.253121 0.223431 0.000000\r
+vt 0.287849 0.201964 0.000000\r
+vt 0.287637 0.202101 0.000000\r
+vt 0.287159 0.202420 0.000000\r
+vt 0.286159 0.203094 0.000000\r
+vt 0.284503 0.204212 0.000000\r
+vt 0.282080 0.205849 0.000000\r
+vt 0.278771 0.208082 0.000000\r
+vt 0.274448 0.210993 0.000000\r
+vt 0.268975 0.214667 0.000000\r
+vt 0.262217 0.219190 0.000000\r
+vt 0.254039 0.224638 0.000000\r
+vt 0.291284 0.207863 0.000000\r
+vt 0.291052 0.207971 0.000000\r
+vt 0.290534 0.208226 0.000000\r
+vt 0.289452 0.208766 0.000000\r
+vt 0.287662 0.209664 0.000000\r
+vt 0.285045 0.210976 0.000000\r
+vt 0.281473 0.212766 0.000000\r
+vt 0.276807 0.215096 0.000000\r
+vt 0.270904 0.218032 0.000000\r
+vt 0.263619 0.221638 0.000000\r
+vt 0.254804 0.225972 0.000000\r
+vt 0.293997 0.214307 0.000000\r
+vt 0.293748 0.214383 0.000000\r
+vt 0.293196 0.214567 0.000000\r
+vt 0.292048 0.214959 0.000000\r
+vt 0.290149 0.215614 0.000000\r
+vt 0.287375 0.216571 0.000000\r
+vt 0.283591 0.217874 0.000000\r
+vt 0.278654 0.219567 0.000000\r
+vt 0.272412 0.221695 0.000000\r
+vt 0.264713 0.224302 0.000000\r
+vt 0.255400 0.227423 0.000000\r
+vt 0.455997 0.782471 0.000000\r
+vt 0.159597 0.236027 0.000000\r
+vt 0.378863 0.786432 0.000000\r
+vt 0.379181 0.802730 0.000000\r
+vt 0.410603 0.799545 0.000000\r
+vt 0.404356 0.800260 0.000000\r
+vt 0.404385 0.782169 0.000000\r
+vt 0.411382 0.781008 0.000000\r
+vt 0.397310 0.801132 0.000000\r
+vt 0.389072 0.802023 0.000000\r
+vt 0.388573 0.785543 0.000000\r
+vt 0.396832 0.783611 0.000000\r
+vt 0.395937 0.813676 0.000000\r
+vt 0.388164 0.814615 0.000000\r
+vt 0.378711 0.815292 0.000000\r
+vt 0.386376 0.825828 0.000000\r
+vt 0.377731 0.826475 0.000000\r
+vt 0.441374 0.817311 0.000000\r
+vt 0.434497 0.828424 0.000000\r
+vt 0.434622 0.814340 0.000000\r
+vt 0.428440 0.825221 0.000000\r
+vt 0.428710 0.812475 0.000000\r
+vt 0.423064 0.823173 0.000000\r
+vt 0.423343 0.811458 0.000000\r
+vt 0.418163 0.822044 0.000000\r
+vt 0.418273 0.811100 0.000000\r
+vt 0.413548 0.821669 0.000000\r
+vt 0.413271 0.811267 0.000000\r
+vt 0.409035 0.821917 0.000000\r
+vt 0.408093 0.811839 0.000000\r
+vt 0.404400 0.822652 0.000000\r
+vt 0.402439 0.812691 0.000000\r
+vt 0.399340 0.823700 0.000000\r
+vt 0.393466 0.824837 0.000000\r
+vt 0.395385 0.834029 0.000000\r
+vt 0.390228 0.835189 0.000000\r
+vt 0.383993 0.836132 0.000000\r
+vt 0.386614 0.844997 0.000000\r
+vt 0.381333 0.845751 0.000000\r
+vt 0.376415 0.836694 0.000000\r
+vt 0.374948 0.846169 0.000000\r
+vt 0.426934 0.838814 0.000000\r
+vt 0.418786 0.849089 0.000000\r
+vt 0.421524 0.835548 0.000000\r
+vt 0.413996 0.845981 0.000000\r
+vt 0.416645 0.833410 0.000000\r
+vt 0.409642 0.843888 0.000000\r
+vt 0.412170 0.832208 0.000000\r
+vt 0.405642 0.842664 0.000000\r
+vt 0.407972 0.831810 0.000000\r
+vt 0.401915 0.842204 0.000000\r
+vt 0.403920 0.832093 0.000000\r
+vt 0.398361 0.842392 0.000000\r
+vt 0.399823 0.832906 0.000000\r
+vt 0.394814 0.843075 0.000000\r
+vt 0.391008 0.844030 0.000000\r
+vt 0.389912 0.853164 0.000000\r
+vt 0.386683 0.853686 0.000000\r
+vt 0.383018 0.854252 0.000000\r
+vt 0.382805 0.862783 0.000000\r
+vt 0.379766 0.862812 0.000000\r
+vt 0.378686 0.854695 0.000000\r
+vt 0.376280 0.862864 0.000000\r
+vt 0.373492 0.854921 0.000000\r
+vt 0.372169 0.862866 0.000000\r
+vt 0.410527 0.859548 0.000000\r
+vt 0.402840 0.870278 0.000000\r
+vt 0.406362 0.856796 0.000000\r
+vt 0.399318 0.867957 0.000000\r
+vt 0.402603 0.854853 0.000000\r
+vt 0.396212 0.866153 0.000000\r
+vt 0.399174 0.853614 0.000000\r
+vt 0.393401 0.864795 0.000000\r
+vt 0.395989 0.852987 0.000000\r
+vt 0.390761 0.863828 0.000000\r
+vt 0.392948 0.852878 0.000000\r
+vt 0.388181 0.863207 0.000000\r
+vt 0.385565 0.862882 0.000000\r
+vt 0.384294 0.873010 0.000000\r
+vt 0.382016 0.871947 0.000000\r
+vt 0.379627 0.871136 0.000000\r
+vt 0.379279 0.880389 0.000000\r
+vt 0.377214 0.878791 0.000000\r
+vt 0.377080 0.870562 0.000000\r
+vt 0.375060 0.877553 0.000000\r
+vt 0.374278 0.870178 0.000000\r
+vt 0.372776 0.876685 0.000000\r
+vt 0.371063 0.869933 0.000000\r
+vt 0.370235 0.876164 0.000000\r
+vt 0.396306 0.881255 0.000000\r
+vt 0.391227 0.892603 0.000000\r
+vt 0.393386 0.879281 0.000000\r
+vt 0.388744 0.890791 0.000000\r
+vt 0.390898 0.877467 0.000000\r
+vt 0.386709 0.888763 0.000000\r
+vt 0.388655 0.875804 0.000000\r
+vt 0.384896 0.886598 0.000000\r
+vt 0.386490 0.874308 0.000000\r
+vt 0.383111 0.884400 0.000000\r
+vt 0.381248 0.882291 0.000000\r
+vt 0.382213 0.892380 0.000000\r
+vt 0.380519 0.889782 0.000000\r
+vt 0.378670 0.887345 0.000000\r
+vt 0.379812 0.896247 0.000000\r
+vt 0.378059 0.893369 0.000000\r
+vt 0.376671 0.885211 0.000000\r
+vt 0.376138 0.890796 0.000000\r
+vt 0.374541 0.883485 0.000000\r
+vt 0.374076 0.888670 0.000000\r
+vt 0.372275 0.882227 0.000000\r
+vt 0.371893 0.887092 0.000000\r
+vt 0.369840 0.881465 0.000000\r
+vt 0.369600 0.886125 0.000000\r
+vt 0.389366 0.901105 0.000000\r
+vt 0.388027 0.908612 0.000000\r
+vt 0.387210 0.899485 0.000000\r
+vt 0.386051 0.907037 0.000000\r
+vt 0.385404 0.897395 0.000000\r
+vt 0.384365 0.904840 0.000000\r
+vt 0.383798 0.894974 0.000000\r
+vt 0.382867 0.902182 0.000000\r
+vt 0.381395 0.899251 0.000000\r
+vt 0.382296 0.907697 0.000000\r
+vt 0.380888 0.904498 0.000000\r
+vt 0.379368 0.901186 0.000000\r
+vt 0.380696 0.908121 0.000000\r
+vt 0.379209 0.904609 0.000000\r
+vt 0.377670 0.897981 0.000000\r
+vt 0.377532 0.901195 0.000000\r
+vt 0.375795 0.895086 0.000000\r
+vt 0.375669 0.898097 0.000000\r
+vt 0.373779 0.892670 0.000000\r
+vt 0.373663 0.895498 0.000000\r
+vt 0.371659 0.890861 0.000000\r
+vt 0.371562 0.893543 0.000000\r
+vt 0.369461 0.889742 0.000000\r
+vt 0.369402 0.892329 0.000000\r
+vt 0.387217 0.914467 0.000000\r
+vt 0.386818 0.918503 0.000000\r
+vt 0.385346 0.912874 0.000000\r
+vt 0.385018 0.916894 0.000000\r
+vt 0.383732 0.910559 0.000000\r
+vt 0.383455 0.914494 0.000000\r
+vt 0.382065 0.911495 0.000000\r
+vt 0.383386 0.916976 0.000000\r
+vt 0.382030 0.913909 0.000000\r
+vt 0.380691 0.910445 0.000000\r
+vt 0.382009 0.915412 0.000000\r
+vt 0.380689 0.911905 0.000000\r
+vt 0.379217 0.906829 0.000000\r
+vt 0.379225 0.908238 0.000000\r
+vt 0.377541 0.903304 0.000000\r
+vt 0.377548 0.904659 0.000000\r
+vt 0.375672 0.900096 0.000000\r
+vt 0.375674 0.901395 0.000000\r
+vt 0.373656 0.897400 0.000000\r
+vt 0.373653 0.898647 0.000000\r
+vt 0.371548 0.895369 0.000000\r
+vt 0.371542 0.896577 0.000000\r
+vt 0.369390 0.894105 0.000000\r
+vt 0.369384 0.895294 0.000000\r
+vt 0.386654 0.921027 0.000000\r
+vt 0.386562 0.922579 0.000000\r
+vt 0.384906 0.919414 0.000000\r
+vt 0.384831 0.920966 0.000000\r
+vt 0.383334 0.918510 0.000000\r
+vt 0.384637 0.922090 0.000000\r
+vt 0.383128 0.919592 0.000000\r
+vt 0.381812 0.916447 0.000000\r
+vt 0.386413 0.923738 0.000000\r
+vt 0.369331 0.896056 0.000000\r
+vt 0.371444 0.897357 0.000000\r
+vt 0.373523 0.899459 0.000000\r
+vt 0.375526 0.902248 0.000000\r
+vt 0.377392 0.905555 0.000000\r
+vt 0.379061 0.909181 0.000000\r
+vt 0.380514 0.912894 0.000000\r
+vt 0.416413 0.799073 0.000000\r
+vt 0.418171 0.780074 0.000000\r
+vt 0.422039 0.798935 0.000000\r
+vt 0.424922 0.779492 0.000000\r
+vt 0.427720 0.799241 0.000000\r
+vt 0.431830 0.779301 0.000000\r
+vt 0.433691 0.800127 0.000000\r
+vt 0.438802 0.779776 0.000000\r
+vt 0.440254 0.801774 0.000000\r
+vt 0.447774 0.804427 0.000000\r
+vt 0.516818 0.833005 0.000000\r
+vt 0.515895 0.831516 0.000000\r
+vt 0.529456 0.830585 0.000000\r
+vt 0.529782 0.831686 0.000000\r
+vt 0.530122 0.832785 0.000000\r
+vt 0.517702 0.834428 0.000000\r
+vt 0.530491 0.834348 0.000000\r
+vt 0.518691 0.836091 0.000000\r
+vt 0.530902 0.836638 0.000000\r
+vt 0.519767 0.838338 0.000000\r
+vt 0.531357 0.839753 0.000000\r
+vt 0.520875 0.841332 0.000000\r
+vt 0.531854 0.843732 0.000000\r
+vt 0.521974 0.845180 0.000000\r
+vt 0.528474 0.819593 0.000000\r
+vt 0.513673 0.819671 0.000000\r
+vt 0.513856 0.823832 0.000000\r
+vt 0.528636 0.823606 0.000000\r
+vt 0.528868 0.826729 0.000000\r
+vt 0.514312 0.827147 0.000000\r
+vt 0.529147 0.829021 0.000000\r
+vt 0.514982 0.829705 0.000000\r
+vt 0.544966 0.826330 0.000000\r
+vt 0.544804 0.828533 0.000000\r
+vt 0.544592 0.830022 0.000000\r
+vt 0.558441 0.828019 0.000000\r
+vt 0.557813 0.829481 0.000000\r
+vt 0.544349 0.831055 0.000000\r
+vt 0.557118 0.830508 0.000000\r
+vt 0.544106 0.832090 0.000000\r
+vt 0.556415 0.831535 0.000000\r
+vt 0.543902 0.833587 0.000000\r
+vt 0.555771 0.833012 0.000000\r
+vt 0.543777 0.835810 0.000000\r
+vt 0.555247 0.835202 0.000000\r
+vt 0.543765 0.838863 0.000000\r
+vt 0.554903 0.838213 0.000000\r
+vt 0.543899 0.842793 0.000000\r
+vt 0.554799 0.842100 0.000000\r
+vt 0.545131 0.819433 0.000000\r
+vt 0.559582 0.819251 0.000000\r
+vt 0.545074 0.823315 0.000000\r
+vt 0.559345 0.822974 0.000000\r
+vt 0.558961 0.825880 0.000000\r
+vt 0.571527 0.822593 0.000000\r
+vt 0.570969 0.825385 0.000000\r
+vt 0.570212 0.827470 0.000000\r
+vt 0.581055 0.824786 0.000000\r
+vt 0.580190 0.826818 0.000000\r
+vt 0.569295 0.828925 0.000000\r
+vt 0.579118 0.828284 0.000000\r
+vt 0.568277 0.829967 0.000000\r
+vt 0.577906 0.829371 0.000000\r
+vt 0.567236 0.831006 0.000000\r
+vt 0.576649 0.830450 0.000000\r
+vt 0.566262 0.832478 0.000000\r
+vt 0.575456 0.831936 0.000000\r
+vt 0.565442 0.834649 0.000000\r
+vt 0.574434 0.834100 0.000000\r
+vt 0.564857 0.837631 0.000000\r
+vt 0.573684 0.837065 0.000000\r
+vt 0.564590 0.841485 0.000000\r
+vt 0.573310 0.840899 0.000000\r
+vt 0.571869 0.819051 0.000000\r
+vt 0.582050 0.818805 0.000000\r
+vt 0.581678 0.822128 0.000000\r
+vt 0.590214 0.818513 0.000000\r
+vt 0.589874 0.821579 0.000000\r
+vt 0.589283 0.824076 0.000000\r
+vt 0.596289 0.821004 0.000000\r
+vt 0.595794 0.823318 0.000000\r
+vt 0.588432 0.826045 0.000000\r
+vt 0.595053 0.825207 0.000000\r
+vt 0.587343 0.827536 0.000000\r
+vt 0.594069 0.826721 0.000000\r
+vt 0.586076 0.828700 0.000000\r
+vt 0.592883 0.827978 0.000000\r
+vt 0.584731 0.829851 0.000000\r
+vt 0.591583 0.829231 0.000000\r
+vt 0.583431 0.831375 0.000000\r
+vt 0.590292 0.830816 0.000000\r
+vt 0.582298 0.833547 0.000000\r
+vt 0.589139 0.833013 0.000000\r
+vt 0.581452 0.836509 0.000000\r
+vt 0.588258 0.835985 0.000000\r
+vt 0.581012 0.840336 0.000000\r
+vt 0.587782 0.839822 0.000000\r
+vt 0.596564 0.818211 0.000000\r
+vt 0.601449 0.817956 0.000000\r
+vt 0.601238 0.820506 0.000000\r
+vt 0.605347 0.817798 0.000000\r
+vt 0.605181 0.820181 0.000000\r
+vt 0.600857 0.822641 0.000000\r
+vt 0.604898 0.822182 0.000000\r
+vt 0.600276 0.824436 0.000000\r
+vt 0.604476 0.823892 0.000000\r
+vt 0.599482 0.825954 0.000000\r
+vt 0.603899 0.825394 0.000000\r
+vt 0.598490 0.827297 0.000000\r
+vt 0.603159 0.826792 0.000000\r
+vt 0.597357 0.828658 0.000000\r
+vt 0.602279 0.828242 0.000000\r
+vt 0.596186 0.830319 0.000000\r
+vt 0.601324 0.829974 0.000000\r
+vt 0.595103 0.832550 0.000000\r
+vt 0.600392 0.832239 0.000000\r
+vt 0.594244 0.835542 0.000000\r
+vt 0.599605 0.835251 0.000000\r
+vt 0.593749 0.839403 0.000000\r
+vt 0.599100 0.839137 0.000000\r
+vt 0.608823 0.817761 0.000000\r
+vt 0.612489 0.817849 0.000000\r
+vt 0.608679 0.820079 0.000000\r
+vt 0.612344 0.820208 0.000000\r
+vt 0.608461 0.822022 0.000000\r
+vt 0.612154 0.822180 0.000000\r
+vt 0.608164 0.823688 0.000000\r
+vt 0.611927 0.823864 0.000000\r
+vt 0.607775 0.825177 0.000000\r
+vt 0.611661 0.825366 0.000000\r
+vt 0.607280 0.826601 0.000000\r
+vt 0.611345 0.826808 0.000000\r
+vt 0.606676 0.828105 0.000000\r
+vt 0.610964 0.828338 0.000000\r
+vt 0.605984 0.829886 0.000000\r
+vt 0.610508 0.830144 0.000000\r
+vt 0.605259 0.832176 0.000000\r
+vt 0.609987 0.832440 0.000000\r
+vt 0.604586 0.835194 0.000000\r
+vt 0.609438 0.835442 0.000000\r
+vt 0.604075 0.839088 0.000000\r
+vt 0.608927 0.839309 0.000000\r
+vt 0.616962 0.818050 0.000000\r
+vt 0.622209 0.818287 0.000000\r
+vt 0.616798 0.820539 0.000000\r
+vt 0.622029 0.820921 0.000000\r
+vt 0.616594 0.822614 0.000000\r
+vt 0.621805 0.823113 0.000000\r
+vt 0.616372 0.824375 0.000000\r
+vt 0.621559 0.824965 0.000000\r
+vt 0.616135 0.825930 0.000000\r
+vt 0.621298 0.826591 0.000000\r
+vt 0.615879 0.827407 0.000000\r
+vt 0.621020 0.828122 0.000000\r
+vt 0.615587 0.828960 0.000000\r
+vt 0.620714 0.829717 0.000000\r
+vt 0.615240 0.830774 0.000000\r
+vt 0.620363 0.831553 0.000000\r
+vt 0.614822 0.833054 0.000000\r
+vt 0.619949 0.833826 0.000000\r
+vt 0.614335 0.836007 0.000000\r
+vt 0.619464 0.836738 0.000000\r
+vt 0.613806 0.839805 0.000000\r
+vt 0.618915 0.840469 0.000000\r
+vt 0.627809 0.818513 0.000000\r
+vt 0.633816 0.818748 0.000000\r
+vt 0.627628 0.821276 0.000000\r
+vt 0.633640 0.821639 0.000000\r
+vt 0.627404 0.823567 0.000000\r
+vt 0.633424 0.824026 0.000000\r
+vt 0.627153 0.825497 0.000000\r
+vt 0.633184 0.826025 0.000000\r
+vt 0.626883 0.827185 0.000000\r
+vt 0.632923 0.827757 0.000000\r
+vt 0.626590 0.828766 0.000000\r
+vt 0.632635 0.829367 0.000000\r
+vt 0.626266 0.830400 0.000000\r
+vt 0.632310 0.831020 0.000000\r
+vt 0.625897 0.832265 0.000000\r
+vt 0.631939 0.832903 0.000000\r
+vt 0.625474 0.834554 0.000000\r
+vt 0.631518 0.835208 0.000000\r
+vt 0.624988 0.837460 0.000000\r
+vt 0.631046 0.838130 0.000000\r
+vt 0.624446 0.841169 0.000000\r
+vt 0.630534 0.841852 0.000000\r
+vt 0.640356 0.819009 0.000000\r
+vt 0.647588 0.819305 0.000000\r
+vt 0.640185 0.822039 0.000000\r
+vt 0.647411 0.822488 0.000000\r
+vt 0.639978 0.824524 0.000000\r
+vt 0.647200 0.825076 0.000000\r
+vt 0.639750 0.826581 0.000000\r
+vt 0.646969 0.827180 0.000000\r
+vt 0.639501 0.828334 0.000000\r
+vt 0.646716 0.828927 0.000000\r
+vt 0.639222 0.829938 0.000000\r
+vt 0.646430 0.830485 0.000000\r
+vt 0.638901 0.831577 0.000000\r
+vt 0.646098 0.832068 0.000000\r
+vt 0.638532 0.833452 0.000000\r
+vt 0.645716 0.833907 0.000000\r
+vt 0.638115 0.835768 0.000000\r
+vt 0.645293 0.836220 0.000000\r
+vt 0.637661 0.838716 0.000000\r
+vt 0.644846 0.839199 0.000000\r
+vt 0.637186 0.842473 0.000000\r
+vt 0.644402 0.843009 0.000000\r
+vt 0.655677 0.819637 0.000000\r
+vt 0.664792 0.820003 0.000000\r
+vt 0.655477 0.822988 0.000000\r
+vt 0.664542 0.823531 0.000000\r
+vt 0.655235 0.825684 0.000000\r
+vt 0.664229 0.826336 0.000000\r
+vt 0.654968 0.827824 0.000000\r
+vt 0.663876 0.828507 0.000000\r
+vt 0.654676 0.829538 0.000000\r
+vt 0.663486 0.830167 0.000000\r
+vt 0.654346 0.831011 0.000000\r
+vt 0.663054 0.831523 0.000000\r
+vt 0.653966 0.832497 0.000000\r
+vt 0.662571 0.832879 0.000000\r
+vt 0.653538 0.834271 0.000000\r
+vt 0.662043 0.834568 0.000000\r
+vt 0.653078 0.836572 0.000000\r
+vt 0.661498 0.836850 0.000000\r
+vt 0.652614 0.839586 0.000000\r
+vt 0.660974 0.839900 0.000000\r
+vt 0.652179 0.843458 0.000000\r
+vt 0.660514 0.843843 0.000000\r
+vt 0.675090 0.820396 0.000000\r
+vt 0.686709 0.820804 0.000000\r
+vt 0.674758 0.824102 0.000000\r
+vt 0.686255 0.824682 0.000000\r
+vt 0.674320 0.827016 0.000000\r
+vt 0.685633 0.827706 0.000000\r
+vt 0.673813 0.829215 0.000000\r
+vt 0.684893 0.829938 0.000000\r
+vt 0.673252 0.830813 0.000000\r
+vt 0.684071 0.831483 0.000000\r
+vt 0.672640 0.832035 0.000000\r
+vt 0.683186 0.832581 0.000000\r
+vt 0.671976 0.833246 0.000000\r
+vt 0.682252 0.833656 0.000000\r
+vt 0.671278 0.834842 0.000000\r
+vt 0.681299 0.835168 0.000000\r
+vt 0.670584 0.837104 0.000000\r
+vt 0.680377 0.837418 0.000000\r
+vt 0.669943 0.840193 0.000000\r
+vt 0.679545 0.840546 0.000000\r
+vt 0.669407 0.844208 0.000000\r
+vt 0.678869 0.844627 0.000000\r
+vt 0.699749 0.821208 0.000000\r
+vt 0.714182 0.821563 0.000000\r
+vt 0.699139 0.825238 0.000000\r
+vt 0.713385 0.825683 0.000000\r
+vt 0.698275 0.828366 0.000000\r
+vt 0.712240 0.828881 0.000000\r
+vt 0.697227 0.830648 0.000000\r
+vt 0.710834 0.831225 0.000000\r
+vt 0.696051 0.832180 0.000000\r
+vt 0.709250 0.832820 0.000000\r
+vt 0.694794 0.833209 0.000000\r
+vt 0.707560 0.833912 0.000000\r
+vt 0.693490 0.834199 0.000000\r
+vt 0.705820 0.834964 0.000000\r
+vt 0.692184 0.835662 0.000000\r
+vt 0.704088 0.836482 0.000000\r
+vt 0.690939 0.837913 0.000000\r
+vt 0.702432 0.838784 0.000000\r
+vt 0.689827 0.841079 0.000000\r
+vt 0.700933 0.841998 0.000000\r
+vt 0.688923 0.845215 0.000000\r
+vt 0.699683 0.846173 0.000000\r
+vt 0.713250 0.848630 0.000000\r
+vt 0.714835 0.844737 0.000000\r
+vt 0.716357 0.841643 0.000000\r
+vt 0.717848 0.839310 0.000000\r
+vt 0.719187 0.837616 0.000000\r
+vt 0.720911 0.836303 0.000000\r
+vt 0.722818 0.834648 0.000000\r
+vt 0.724377 0.832595 0.000000\r
+vt 0.726398 0.829933 0.000000\r
+vt 0.727955 0.826399 0.000000\r
+vt 0.728830 0.821984 0.000000\r
+vt 0.154025 0.723700 -0.167330\r
+vt 0.153994 0.725474 -0.167330\r
+vt 0.153968 0.727894 -0.167330\r
+vt 0.153950 0.731556 0.163685\r
+vt 0.137728 0.723577 -0.167330\r
+vt 0.137696 0.725366 -0.167330\r
+vt 0.137667 0.727804 -0.167330\r
+vt 0.137643 0.731490 0.163073\r
+vt 0.121523 0.723436 -0.167330\r
+vt 0.121493 0.725241 -0.167330\r
+vt 0.121463 0.727698 -0.167330\r
+vt 0.121432 0.731409 0.162336\r
+vt 0.105321 0.723281 -0.167330\r
+vt 0.105297 0.725101 -0.167330\r
+vt 0.105268 0.727577 -0.167330\r
+vt 0.105232 0.731313 0.161496\r
+vt 0.089037 0.723124 -0.167330\r
+vt 0.089023 0.724957 -0.167330\r
+vt 0.089000 0.727449 -0.167330\r
+vt 0.088964 0.731206 0.160582\r
+vt 0.072590 0.722967 -0.167330\r
+vt 0.072590 0.724809 -0.167330\r
+vt 0.072579 0.727313 -0.167330\r
+vt 0.072549 0.731086 0.159637\r
+vt 0.055899 0.722828 -0.167330\r
+vt 0.868571 0.003878 0.000000\r
+vt 0.870416 0.006188 0.000000\r
+vt 0.872386 0.009154 0.000000\r
+vt 0.867004 0.002131 0.000000\r
+vt 0.865797 0.000462 0.000000\r
+vt 0.889127 0.028959 0.000000\r
+vt 0.891865 0.029395 0.000000\r
+vt 0.886454 0.027638 0.000000\r
+vt 0.883840 0.025549 0.000000\r
+vt 0.881299 0.022828 0.000000\r
+vt 0.878868 0.019630 0.000000\r
+vt 0.876577 0.016135 0.000000\r
+vt 0.874426 0.012560 0.000000\r
+vt 0.055918 0.724672 -0.167330\r
+vt 0.055924 0.727178 -0.167330\r
+vt 0.055910 0.730957 0.158708\r
+vt 0.038893 0.722736 -0.167330\r
+vt 0.038929 0.724565 -0.167330\r
+vt 0.038953 0.727055 -0.167330\r
+vt 0.038955 0.730819 0.157868\r
+vt 0.021538 0.722729 -0.167330\r
+vt 0.021566 0.724514 -0.167330\r
+vt 0.021585 0.726958 -0.167330\r
+vt 0.021585 0.730673 0.157229\r
+vt 0.384075 0.667239 -0.167330\r
+vt 0.391874 0.670250 -0.167330\r
+vt 0.383422 0.624484 -0.167330\r
+vt 0.391464 0.621408 -0.167330\r
+vt 0.377205 0.628877 -0.167330\r
+vt 0.372978 0.634256 -0.167330\r
+vt 0.370611 0.640163 -0.167330\r
+vt 0.369978 0.646283 -0.167330\r
+vt 0.371004 0.652313 -0.167330\r
+vt 0.373652 0.657993 -0.167330\r
+vt 0.377829 0.662831 -0.167330\r
+vt 0.024695 0.562860 -0.167330\r
+vt 0.912988 0.005801 0.000000\r
+vt 0.914729 0.003471 0.000000\r
+vt 0.911092 0.008753 0.000000\r
+vt 0.916229 0.001672 0.000000\r
+vt 0.894595 0.028900 0.000000\r
+vt 0.897246 0.027521 0.000000\r
+vt 0.899831 0.025375 0.000000\r
+vt 0.902334 0.022597 0.000000\r
+vt 0.904722 0.019339 0.000000\r
+vt 0.906973 0.015787 0.000000\r
+vt 0.909089 0.012169 0.000000\r
+vt 0.523037 0.849793 0.000000\r
+vt 0.532387 0.848589 0.000000\r
+vt 0.544205 0.847634 0.000000\r
+vt 0.554990 0.846905 0.000000\r
+vt 0.564723 0.846258 0.000000\r
+vt 0.573415 0.845647 0.000000\r
+vt 0.581098 0.845072 0.000000\r
+vt 0.587840 0.844563 0.000000\r
+vt 0.593750 0.844162 0.000000\r
+vt 0.598998 0.843915 0.000000\r
+vt 0.603828 0.843869 0.000000\r
+vt 0.608518 0.844069 0.000000\r
+vt 0.613267 0.844524 0.000000\r
+vt 0.618317 0.845146 0.000000\r
+vt 0.623859 0.845833 0.000000\r
+vt 0.629994 0.846531 0.000000\r
+vt 0.636708 0.847193 0.000000\r
+vt 0.643985 0.847789 0.000000\r
+vt 0.651807 0.848312 0.000000\r
+vt 0.660158 0.848776 0.000000\r
+vt 0.669028 0.849219 0.000000\r
+vt 0.678409 0.849706 0.000000\r
+vt 0.688304 0.850343 0.000000\r
+vt 0.698768 0.851314 0.000000\r
+vt 0.711887 0.853485 0.000000\r
+vt 0.796115 0.145023 0.000000\r
+vt 0.805680 0.146481 0.000000\r
+vt 0.038513 0.557324 -0.167330\r
+vt 0.038790 0.554992 -0.167330\r
+vt 0.030266 0.545468 -0.167330\r
+vt 0.006096 0.647379 -0.167330\r
+vt 0.010035 0.649205 -0.167330\r
+vt 0.014905 0.664815 -0.167330\r
+vt 0.975769 0.092187 0.000000\r
+vt 0.983914 0.104509 0.000000\r
+vt 0.957610 0.070742 0.000000\r
+vt 0.966932 0.081113 0.000000\r
+vt 0.939697 0.050948 0.000000\r
+vt 0.948304 0.060754 0.000000\r
+vt 0.927018 0.031173 0.000000\r
+vt 0.932445 0.041168 0.000000\r
+vt 0.921889 0.008308 0.000000\r
+vt 0.923626 0.020462 0.000000\r
+vt 0.920615 0.003300 0.000000\r
+vt 0.921267 0.005427 0.000000\r
+vt 0.919430 0.000986 0.000000\r
+vt 0.919980 0.001849 0.000000\r
+vt 0.919034 0.000595 0.000000\r
+vt 0.016314 0.662111 -0.167330\r
+vt 0.005224 0.671360 -0.167330\r
+vt 0.037355 0.559368 -0.167330\r
+vt 0.035353 0.561033 -0.167330\r
+vt 0.991419 0.119024 0.000000\r
+vt 0.032554 0.562244 -0.167330\r
+vt 1.000000 0.141319 0.000000\r
+vt 0.028990 0.562899 -0.167330\r
+vt 0.038137 0.552548 -0.167330\r
+vt 0.036525 0.550067 -0.167330\r
+vt 0.033915 0.547663 -0.167330\r
+vt 0.012651 0.667561 -0.167330\r
+vt 0.009427 0.669817 -0.167330\r
+vt 0.016778 0.659265 -0.167330\r
+vt 0.980993 0.283427 0.000000\r
+vt 0.016403 0.656422 -0.167330\r
+vt 0.988384 0.283898 0.000000\r
+vt 0.015189 0.653871 -0.167330\r
+vt 0.013047 0.651424 -0.167330\r
+vt 0.400191 0.527422 -0.167330\r
+vt 0.418099 0.527200 -0.167330\r
+vt 0.400162 0.525753 -0.167330\r
+vt 0.957438 0.281735 0.000000\r
+vt 0.968668 0.282605 0.000000\r
+vt 0.938326 0.279850 0.000000\r
+vt 0.947324 0.280808 0.000000\r
+vt 0.923579 0.278086 0.000000\r
+vt 0.930424 0.278919 0.000000\r
+vt 0.912775 0.276979 0.000000\r
+vt 0.917731 0.277421 0.000000\r
+vt 0.904562 0.276832 0.000000\r
+vt 0.908511 0.276783 0.000000\r
+vt 0.895561 0.277659 0.000000\r
+vt 0.900394 0.277134 0.000000\r
+vt 0.883870 0.279031 0.000000\r
+vt 0.890038 0.278316 0.000000\r
+vt 0.869748 0.280418 0.000000\r
+vt 0.877097 0.279746 0.000000\r
+vt 0.853422 0.281574 0.000000\r
+vt 0.861850 0.281028 0.000000\r
+vt 0.835015 0.282561 0.000000\r
+vt 0.844475 0.282073 0.000000\r
+vt 0.814528 0.283745 0.000000\r
+vt 0.825038 0.283092 0.000000\r
+vt 0.418085 0.525527 -0.167330\r
+vt 0.803624 0.284652 0.000000\r
+vt 0.435552 0.527137 -0.167330\r
+vt 0.435553 0.525462 -0.167330\r
+vt 0.452650 0.527224 -0.167330\r
+vt 0.452666 0.525550 -0.167330\r
+vt 0.469464 0.527458 -0.167330\r
+vt 0.469494 0.525789 -0.167330\r
+vt 0.486047 0.527825 -0.167330\r
+vt 0.486090 0.526165 -0.167330\r
+vt 0.502444 0.528303 -0.167330\r
+vt 0.502496 0.526656 -0.167330\r
+vt 0.518704 0.528854 -0.167330\r
+vt 0.518763 0.527222 -0.167330\r
+vt 0.979629 0.146576 0.000000\r
+vt 0.534877 0.529468 -0.167330\r
+vt 0.534941 0.527854 -0.167330\r
+vt 0.551016 0.530121 -0.167330\r
+vt 0.551082 0.528526 -0.167330\r
+vt 0.567187 0.530778 -0.167330\r
+vt 0.567249 0.529205 -0.167330\r
+vt 0.583472 0.531401 -0.167330\r
+vt 0.583529 0.529851 -0.167330\r
+vt 0.599986 0.531959 -0.167330\r
+vt 0.600034 0.530429 -0.167330\r
+vt 0.616494 0.532433 -0.167330\r
+vt 0.616532 0.530920 -0.167330\r
+vt 0.632318 0.532767 -0.167330\r
+vt 0.632341 0.531269 -0.167330\r
+vt 0.647599 0.532915 -0.167330\r
+vt 0.647602 0.531433 -0.167330\r
+vt 0.662456 0.532841 -0.167330\r
+vt 0.662434 0.531374 -0.167330\r
+vt 0.676984 0.532504 -0.167330\r
+vt 0.676933 0.531053 -0.167330\r
+vt 0.691267 0.531856 -0.167330\r
+vt 0.691183 0.530421 -0.167330\r
+vt 0.705385 0.530848 -0.167330\r
+vt 0.705262 0.529429 -0.167330\r
+vt 0.719403 0.529426 -0.167330\r
+vt 0.719237 0.528025 -0.167330\r
+vt 0.733380 0.527519 -0.167330\r
+vt 0.733163 0.526139 -0.167330\r
+vt 0.747361 0.525028 -0.167330\r
+vt 0.747085 0.523672 -0.167330\r
+vt 0.761390 0.521804 -0.167330\r
+vt 0.761043 0.520476 -0.167330\r
+vt 0.775479 0.517678 -0.167330\r
+vt 0.775080 0.516372 -0.167330\r
+vt 0.382320 0.527815 -0.167330\r
+vt 0.382277 0.526149 -0.167330\r
+vt 0.364968 0.528339 -0.167330\r
+vt 0.364911 0.526677 -0.167330\r
+vt 0.348031 0.528981 -0.167330\r
+vt 0.347961 0.527326 -0.167330\r
+vt 0.331438 0.529732 -0.167330\r
+vt 0.331359 0.528088 -0.167330\r
+vt 0.315124 0.530561 -0.167330\r
+vt 0.315037 0.528931 -0.167330\r
+vt 0.299026 0.531449 -0.167330\r
+vt 0.298934 0.529834 -0.167330\r
+vt 0.283094 0.532376 -0.167330\r
+vt 0.282999 0.530779 -0.167330\r
+vt 0.267284 0.533326 -0.167330\r
+vt 0.267188 0.531750 -0.167330\r
+vt 0.446226 0.404616 0.000000\r
+vt 0.251539 0.534269 -0.167330\r
+vt 0.251447 0.532715 -0.167330\r
+vt 0.235795 0.535172 -0.167330\r
+vt 0.235711 0.533641 -0.167330\r
+vt 0.219964 0.535990 -0.167330\r
+vt 0.219891 0.534484 -0.167330\r
+vt 0.203934 0.536690 -0.167330\r
+vt 0.287495 0.780761 0.000000\r
+vt 0.278629 0.782480 0.000000\r
+vt 0.127995 0.251206 0.000000\r
+vt 0.131672 0.259823 0.000000\r
+vt 0.152626 0.272064 0.000000\r
+vt 0.147680 0.271806 0.000000\r
+vt 0.142183 0.269924 0.000000\r
+vt 0.136632 0.265860 0.000000\r
+vt 0.441482 0.833140 0.000000\r
+vt 0.449342 0.821766 0.000000\r
+vt 0.424072 0.853402 0.000000\r
+vt 0.433010 0.843487 0.000000\r
+vt 0.406857 0.873196 0.000000\r
+vt 0.415140 0.863234 0.000000\r
+vt 0.394328 0.894150 0.000000\r
+vt 0.399798 0.883422 0.000000\r
+vt 0.390267 0.909453 0.000000\r
+vt 0.391887 0.902137 0.000000\r
+vt 0.388801 0.919200 0.000000\r
+vt 0.389300 0.915220 0.000000\r
+vt 0.388470 0.923220 0.000000\r
+vt 0.388574 0.921684 0.000000\r
+vt 0.388405 0.924386 0.000000\r
+vt 0.156903 0.270996 0.000000\r
+vt 0.160400 0.268905 0.000000\r
+vt 0.163088 0.266011 0.000000\r
+vt 0.164782 0.262565 0.000000\r
+vt 0.456706 0.808396 0.000000\r
+vt 0.164470 0.247052 0.000000\r
+vt 0.465940 0.786362 0.000000\r
+vt 0.426517 0.213906 0.000000\r
+vt 0.429037 0.213108 0.000000\r
+vt 0.423911 0.213088 0.000000\r
+vt 0.421333 0.211329 0.000000\r
+vt 0.418662 0.208674 0.000000\r
+vt 0.415978 0.205016 0.000000\r
+vt 0.413546 0.200219 0.000000\r
+vt 0.411593 0.194092 0.000000\r
+vt 0.432046 0.188695 0.000000\r
+vt 0.433872 0.196624 0.000000\r
+vt 0.434043 0.203629 0.000000\r
+vt 0.433266 0.208758 0.000000\r
+vt 0.431437 0.211936 0.000000\r
+vt 0.331614 0.216790 0.000000\r
+vt 0.331351 0.214143 0.000000\r
+vt 0.331533 0.219145 0.000000\r
+vt 0.331071 0.220947 0.000000\r
+vt 0.330388 0.222186 0.000000\r
+vt 0.329578 0.222972 0.000000\r
+vt 0.328581 0.223484 0.000000\r
+vt 0.327263 0.223548 0.000000\r
+vt 0.325943 0.223066 0.000000\r
+vt 0.324391 0.222144 0.000000\r
+vt 0.323008 0.220651 0.000000\r
+vt 0.321957 0.218598 0.000000\r
+vt 0.321356 0.215964 0.000000\r
+vt 0.203875 0.535206 -0.167330\r
+vt 0.187931 0.537249 -0.167330\r
+vt 0.187889 0.535783 -0.167330\r
+vt 0.172604 0.537600 -0.167330\r
+vt 0.172583 0.536150 -0.167330\r
+vt 0.157807 0.537712 -0.167330\r
+vt 0.157811 0.536277 -0.167330\r
+vt 0.143425 0.537551 -0.167330\r
+vt 0.143458 0.536130 -0.167330\r
+vt 0.129349 0.537072 -0.167330\r
+vt 0.129416 0.535666 -0.167330\r
+vt 0.115494 0.536249 -0.167330\r
+vt 0.115598 0.534857 -0.167330\r
+vt 0.101789 0.535038 -0.167330\r
+vt 0.101933 0.533661 -0.167330\r
+vt 0.088168 0.533392 -0.167330\r
+vt 0.088357 0.532030 -0.167330\r
+vt 0.074573 0.531248 -0.167330\r
+vt 0.074813 0.529905 -0.167330\r
+vt 0.060961 0.528515 -0.167330\r
+vt 0.061260 0.527194 -0.167330\r
+vt 0.047304 0.525062 -0.167330\r
+vt 0.047672 0.523770 -0.167330\r
+vt 0.162481 0.240948 0.000000\r
+vt 0.447117 0.780748 0.000000\r
+vt 0.126910 0.242237 0.000000\r
+vt 0.135643 0.226421 0.000000\r
+vt 0.140050 0.224959 0.000000\r
+vt 0.128437 0.235177 0.000000\r
+vt 0.131517 0.229755 0.000000\r
+vt 0.144549 0.225008 0.000000\r
+vt 0.148884 0.226309 0.000000\r
+vt 0.152913 0.228614 0.000000\r
+vt 0.156329 0.231709 0.000000\r
+vt 0.413426 0.170311 0.000000\r
+vt 0.415971 0.169748 0.000000\r
+vt 0.411764 0.172204 0.000000\r
+vt 0.410592 0.174873 0.000000\r
+vt 0.409788 0.178363 0.000000\r
+vt 0.409489 0.182738 0.000000\r
+vt 0.409977 0.187973 0.000000\r
+vt 0.429083 0.181159 0.000000\r
+vt 0.425276 0.175337 0.000000\r
+vt 0.421744 0.171447 0.000000\r
+vt 0.418528 0.169650 0.000000\r
+vt 0.330390 0.211636 0.000000\r
+vt 0.329237 0.209512 0.000000\r
+vt 0.327984 0.208036 0.000000\r
+vt 0.326791 0.207142 0.000000\r
+vt 0.325702 0.206715 0.000000\r
+vt 0.324572 0.206604 0.000000\r
+vt 0.323350 0.207009 0.000000\r
+vt 0.322364 0.207909 0.000000\r
+vt 0.321369 0.209300 0.000000\r
+vt 0.320785 0.211154 0.000000\r
+vt 0.320742 0.213391 0.000000\r
+vt 0.350295 0.923110 0.000000\r
+vt 0.351829 0.920484 0.000000\r
+vt 0.353122 0.917234 0.000000\r
+vt 0.348402 0.924879 0.000000\r
+vt 0.917347 0.000000 0.000000\r
+vt 0.346189 0.925603 0.000000\r
+vt 0.388329 0.925735 0.000000\r
+vt 0.365277 0.896675 0.000000\r
+vt 0.367190 0.896256 0.000000\r
+vt 0.363333 0.897917 0.000000\r
+vt 0.361338 0.899980 0.000000\r
+vt 0.359362 0.902773 0.000000\r
+vt 0.357500 0.906122 0.000000\r
+vt 0.355831 0.909809 0.000000\r
+vt 0.354394 0.913594 0.000000\r
+vt 0.382636 0.920637 0.000000\r
+vt 0.384195 0.923267 0.000000\r
+vt 0.381320 0.917372 0.000000\r
+vt 0.386106 0.925028 0.000000\r
+vt 0.369109 0.896689 0.000000\r
+vt 0.371064 0.897952 0.000000\r
+vt 0.373069 0.900036 0.000000\r
+vt 0.375052 0.902847 0.000000\r
+vt 0.376919 0.906210 0.000000\r
+vt 0.378590 0.909911 0.000000\r
+vt 0.380033 0.913713 0.000000\r
+vt 0.706577 0.290821 0.000000\r
+vt 0.709862 0.287908 0.000000\r
+vt 0.701988 0.294891 0.000000\r
+vt 0.695839 0.300343 0.000000\r
+vt 0.687884 0.307397 0.000000\r
+vt 0.677878 0.316271 0.000000\r
+vt 0.665581 0.327180 0.000000\r
+vt 0.650750 0.340340 0.000000\r
+vt 0.697741 0.282070 0.000000\r
+vt 0.700631 0.278766 0.000000\r
+vt 0.693704 0.286686 0.000000\r
+vt 0.688294 0.292870 0.000000\r
+vt 0.681295 0.300872 0.000000\r
+vt 0.672493 0.310939 0.000000\r
+vt 0.661674 0.323314 0.000000\r
+vt 0.648629 0.338241 0.000000\r
+vt 0.687803 0.274501 0.000000\r
+vt 0.690248 0.270858 0.000000\r
+vt 0.684385 0.279589 0.000000\r
+vt 0.679807 0.286407 0.000000\r
+vt 0.673883 0.295229 0.000000\r
+vt 0.666434 0.306328 0.000000\r
+vt 0.657280 0.319971 0.000000\r
+vt 0.646243 0.336427 0.000000\r
+vt 0.676863 0.268227 0.000000\r
+vt 0.678821 0.264304 0.000000\r
+vt 0.674127 0.273707 0.000000\r
+vt 0.670463 0.281051 0.000000\r
+vt 0.665723 0.290554 0.000000\r
+vt 0.659764 0.302507 0.000000\r
+vt 0.652443 0.317202 0.000000\r
+vt 0.643617 0.334925 0.000000\r
+vt 0.665019 0.263359 0.000000\r
+vt 0.666448 0.259215 0.000000\r
+vt 0.663022 0.269146 0.000000\r
+vt 0.660348 0.276899 0.000000\r
+vt 0.656890 0.286931 0.000000\r
+vt 0.652545 0.299548 0.000000\r
+vt 0.647207 0.315057 0.000000\r
+vt 0.640775 0.333762 0.000000\r
+vt 0.652368 0.260019 0.000000\r
+vt 0.653231 0.255724 0.000000\r
+vt 0.651162 0.266017 0.000000\r
+vt 0.649547 0.274052 0.000000\r
+vt 0.647460 0.284447 0.000000\r
+vt 0.644837 0.297520 0.000000\r
+vt 0.641618 0.313588 0.000000\r
+vt 0.637741 0.332965 0.000000\r
+vt 0.032810 0.522957 -0.167330\r
+vt 0.033186 0.521989 -0.167330\r
+vt 0.032342 0.524182 -0.167330\r
+vt 0.031777 0.525692 -0.167330\r
+vt 0.031118 0.527495 -0.167330\r
+vt 0.030369 0.529594 -0.167330\r
+vt 0.029533 0.531991 -0.167330\r
+vt 0.026029 0.542141 -0.167330\r
+vt 0.016506 0.573378 -0.167330\r
+vt 0.019306 0.563350 -0.167330\r
+vt 0.013847 0.583262 -0.167330\r
+vt 0.011374 0.592974 -0.167330\r
+vt 0.009116 0.602489 -0.167330\r
+vt 0.007085 0.611782 -0.167330\r
+vt 0.005286 0.620835 -0.167330\r
+vt 0.003712 0.629638 -0.167330\r
+vt 0.002343 0.638191 -0.167330\r
+vt 0.000742 0.680490 -0.167330\r
+vt 0.000102 0.673175 -0.167330\r
+vt 0.001429 0.687612 -0.167330\r
+vt 0.002126 0.694471 -0.167330\r
+vt 0.002784 0.700948 -0.167330\r
+vt 0.003351 0.706882 -0.167330\r
+vt 0.003780 0.712083 -0.167330\r
+vt 0.004045 0.716341 -0.167330\r
+vt 0.004136 0.719450 -0.167330\r
+vt 0.004065 0.721333 -0.167330\r
+vt 0.003921 0.722814 -0.167330\r
+vt 0.003799 0.724504 -0.167330\r
+vt 0.003717 0.726873 -0.167330\r
+vt 0.003687 0.730520 0.156972\r
+vt 0.025525 0.543597 -0.167330\r
+vt 0.000000 0.671982 -0.167330\r
+vt 0.019684 0.561985 -0.167330\r
+vt 0.001157 0.646129 -0.167330\r
+vt 0.033605 0.520720 -0.167330\r
+vt 0.034025 0.519450 -0.167330\r
+# 6460 texture coords\r
+\r
+g Base
+usemtl default
+f 2/3 1/4 1536/1 1537/2 \r
+f 1/4 3/6 4/5 1536/1 \r
+f 3/6 5/8 6/7 4/5 \r
+f 5/8 7/10 8/9 6/7 \r
+f 7/10 9/12 10/11 8/9 \r
+f 9/12 11/14 12/13 10/11 \r
+f 13/16 1/4 2/3 14/15 \r
+f 15/17 3/6 1/4 13/16 \r
+f 15/17 16/18 5/8 3/6 \r
+f 16/18 17/19 7/10 5/8 \r
+f 17/19 18/20 9/12 7/10 \r
+f 18/20 19/21 11/14 9/12 \r
+f 20/23 13/16 14/15 21/22 \r
+f 22/24 15/17 13/16 20/23 \r
+f 22/24 23/25 16/18 15/17 \r
+f 23/25 24/26 17/19 16/18 \r
+f 24/26 25/27 18/20 17/19 \r
+f 25/27 26/28 19/21 18/20 \r
+f 27/30 20/23 21/22 28/29 \r
+f 29/31 22/24 20/23 27/30 \r
+f 29/31 30/32 23/25 22/24 \r
+f 30/32 31/33 24/26 23/25 \r
+f 31/33 32/34 25/27 24/26 \r
+f 32/34 33/35 26/28 25/27 \r
+f 34/37 27/30 28/29 35/36 \r
+f 34/37 36/38 29/31 27/30 \r
+f 36/38 37/39 30/32 29/31 \r
+f 37/39 38/40 31/33 30/32 \r
+f 38/40 39/41 32/34 31/33 \r
+f 39/41 40/42 33/35 32/34 \r
+f 41/44 34/37 35/36 42/43 \r
+f 41/44 43/45 36/38 34/37 \r
+f 43/45 44/46 37/39 36/38 \r
+f 44/46 45/47 38/40 37/39 \r
+f 45/47 46/48 39/41 38/40 \r
+f 46/48 47/49 40/42 39/41 \r
+f 42/43 49/51 48/50 41/44 \r
+f 41/44 48/50 50/52 43/45 \r
+f 43/45 50/52 51/53 44/46 \r
+f 44/46 51/53 52/54 45/47 \r
+f 45/47 52/54 53/55 46/48 \r
+f 46/48 53/55 54/56 47/49 \r
+f 49/51 56/58 55/57 48/50 \r
+f 48/50 55/57 57/59 50/52 \r
+f 50/52 57/59 58/60 51/53 \r
+f 51/53 58/60 59/61 52/54 \r
+f 52/54 59/61 60/62 53/55 \r
+f 53/55 60/62 61/63 54/56 \r
+f 56/58 63/65 62/64 55/57 \r
+f 55/57 62/64 64/66 57/59 \r
+f 57/59 64/66 65/67 58/60 \r
+f 58/60 65/67 66/68 59/61 \r
+f 59/61 66/68 67/69 60/62 \r
+f 60/62 67/69 68/70 61/63 \r
+f 63/65 70/72 69/71 62/64 \r
+f 62/64 69/71 71/73 64/66 \r
+f 64/66 71/73 72/74 65/67 \r
+f 65/67 72/74 73/75 66/68 \r
+f 66/68 73/75 74/76 67/69 \r
+f 67/69 74/76 75/77 68/70 \r
+f 76/79 69/71 70/72 77/78 \r
+f 69/71 76/79 78/80 71/73 \r
+f 71/73 78/80 79/81 72/74 \r
+f 72/74 79/81 80/82 73/75 \r
+f 73/75 80/82 81/83 74/76 \r
+f 74/76 81/83 82/84 75/77 \r
+f 77/78 84/86 83/85 76/79 \r
+f 76/79 83/85 85/87 78/80 \r
+f 78/80 85/87 86/88 79/81 \r
+f 79/81 86/88 87/89 80/82 \r
+f 80/82 87/89 88/90 81/83 \r
+f 81/83 88/90 89/91 82/84 \r
+f 90/93 83/85 84/86 91/92 \r
+f 92/94 85/87 83/85 90/93 \r
+f 93/95 86/88 85/87 92/94 \r
+f 94/96 87/89 86/88 93/95 \r
+f 95/97 88/90 87/89 94/96 \r
+f 95/97 96/98 89/91 88/90 \r
+f 97/100 90/93 91/92 98/99 \r
+f 99/101 92/94 90/93 97/100 \r
+f 100/102 93/95 92/94 99/101 \r
+f 101/103 94/96 93/95 100/102 \r
+f 102/104 95/97 94/96 101/103 \r
+f 103/105 96/98 95/97 102/104 \r
+f 104/107 97/100 98/99 105/106 \r
+f 106/108 99/101 97/100 104/107 \r
+f 107/109 100/102 99/101 106/108 \r
+f 108/110 101/103 100/102 107/109 \r
+f 109/111 102/104 101/103 108/110 \r
+f 110/112 103/105 102/104 109/111 \r
+f 111/114 104/107 105/106 112/113 \r
+f 113/115 106/108 104/107 111/114 \r
+f 114/116 107/109 106/108 113/115 \r
+f 115/117 108/110 107/109 114/116 \r
+f 116/118 109/111 108/110 115/117 \r
+f 117/119 110/112 109/111 116/118 \r
+f 118/121 111/114 112/113 119/120 \r
+f 120/122 113/115 111/114 118/121 \r
+f 121/123 114/116 113/115 120/122 \r
+f 122/124 115/117 114/116 121/123 \r
+f 123/125 116/118 115/117 122/124 \r
+f 124/126 117/119 116/118 123/125 \r
+f 125/128 118/121 119/120 126/127 \r
+f 127/129 120/122 118/121 125/128 \r
+f 128/130 121/123 120/122 127/129 \r
+f 129/131 122/124 121/123 128/130 \r
+f 130/132 123/125 122/124 129/131 \r
+f 131/133 124/126 123/125 130/132 \r
+f 132/135 125/128 126/127 133/134 \r
+f 134/136 127/129 125/128 132/135 \r
+f 135/137 128/130 127/129 134/136 \r
+f 136/138 129/131 128/130 135/137 \r
+f 137/139 130/132 129/131 136/138 \r
+f 138/140 131/133 130/132 137/139 \r
+f 139/142 132/135 133/134 140/141 \r
+f 141/143 134/136 132/135 139/142 \r
+f 142/144 135/137 134/136 141/143 \r
+f 143/145 136/138 135/137 142/144 \r
+f 144/146 137/139 136/138 143/145 \r
+f 145/147 138/140 137/139 144/146 \r
+f 146/149 139/142 140/141 147/148 \r
+f 148/150 141/143 139/142 146/149 \r
+f 149/151 142/144 141/143 148/150 \r
+f 150/152 143/145 142/144 149/151 \r
+f 151/153 144/146 143/145 150/152 \r
+f 152/154 145/147 144/146 151/153 \r
+f 153/156 146/149 147/148 154/155 \r
+f 155/157 148/150 146/149 153/156 \r
+f 156/158 149/151 148/150 155/157 \r
+f 157/159 150/152 149/151 156/158 \r
+f 158/160 151/153 150/152 157/159 \r
+f 159/161 152/154 151/153 158/160 \r
+f 160/163 153/156 154/155 161/162 \r
+f 162/164 155/157 153/156 160/163 \r
+f 163/165 156/158 155/157 162/164 \r
+f 164/166 157/159 156/158 163/165 \r
+f 165/167 158/160 157/159 164/166 \r
+f 166/168 159/161 158/160 165/167 \r
+f 167/170 160/163 161/162 168/169 \r
+f 169/171 162/164 160/163 167/170 \r
+f 170/172 163/165 162/164 169/171 \r
+f 171/173 164/166 163/165 170/172 \r
+f 172/174 165/167 164/166 171/173 \r
+f 173/175 166/168 165/167 172/174 \r
+f 11/14 174/177 175/176 12/13 \r
+f 174/177 176/179 1700/178 175/176 \r
+f 176/179 177/181 1702/180 1700/178 \r
+f 177/181 178/183 1704/182 1702/180 \r
+f 178/183 179/185 1706/184 1704/182 \r
+f 179/185 180/187 1708/186 1706/184 \r
+f 180/187 181/189 182/188 1708/186 \r
+f 19/21 183/190 174/177 11/14 \r
+f 183/190 184/191 176/179 174/177 \r
+f 184/191 185/192 177/181 176/179 \r
+f 185/192 186/193 178/183 177/181 \r
+f 186/193 187/194 179/185 178/183 \r
+f 187/194 188/195 180/187 179/185 \r
+f 188/195 189/196 181/189 180/187 \r
+f 26/28 195/197 183/190 19/21 \r
+f 195/197 196/198 184/191 183/190 \r
+f 196/198 197/199 185/192 184/191 \r
+f 197/199 198/200 186/193 185/192 \r
+f 198/200 199/201 187/194 186/193 \r
+f 199/201 200/202 188/195 187/194 \r
+f 200/202 201/203 189/196 188/195 \r
+f 201/203 202/205 190/204 189/196 \r
+f 202/205 203/207 191/206 190/204 \r
+f 203/207 204/209 192/208 191/206 \r
+f 204/209 205/211 193/210 192/208 \r
+f 205/211 206/213 194/212 193/210 \r
+f 33/35 207/214 195/197 26/28 \r
+f 207/214 208/215 196/198 195/197 \r
+f 208/215 209/216 197/199 196/198 \r
+f 209/216 210/217 198/200 197/199 \r
+f 210/217 211/218 199/201 198/200 \r
+f 211/218 212/219 200/202 199/201 \r
+f 212/219 213/220 201/203 200/202 \r
+f 213/220 214/221 202/205 201/203 \r
+f 214/221 215/222 203/207 202/205 \r
+f 215/222 216/223 204/209 203/207 \r
+f 216/223 217/224 205/211 204/209 \r
+f 217/224 218/225 206/213 205/211 \r
+f 40/42 219/226 207/214 33/35 \r
+f 219/226 220/227 208/215 207/214 \r
+f 220/227 221/228 209/216 208/215 \r
+f 221/228 222/229 210/217 209/216 \r
+f 222/229 223/230 211/218 210/217 \r
+f 223/230 224/231 212/219 211/218 \r
+f 224/231 225/232 213/220 212/219 \r
+f 225/232 226/233 214/221 213/220 \r
+f 226/233 227/234 215/222 214/221 \r
+f 227/234 228/235 216/223 215/222 \r
+f 228/235 229/236 217/224 216/223 \r
+f 229/236 230/237 218/225 217/224 \r
+f 47/49 231/238 219/226 40/42 \r
+f 231/238 232/239 220/227 219/226 \r
+f 232/239 233/240 221/228 220/227 \r
+f 233/240 234/241 222/229 221/228 \r
+f 234/241 235/242 223/230 222/229 \r
+f 235/242 236/243 224/231 223/230 \r
+f 236/243 237/244 225/232 224/231 \r
+f 237/244 238/245 226/233 225/232 \r
+f 238/245 239/246 227/234 226/233 \r
+f 239/246 240/247 228/235 227/234 \r
+f 240/247 241/248 229/236 228/235 \r
+f 241/248 242/249 230/237 229/236 \r
+f 47/49 54/56 243/250 231/238 \r
+f 231/238 243/250 244/251 232/239 \r
+f 232/239 244/251 245/252 233/240 \r
+f 233/240 245/252 246/253 234/241 \r
+f 234/241 246/253 247/254 235/242 \r
+f 235/242 247/254 248/255 236/243 \r
+f 236/243 248/255 249/256 237/244 \r
+f 237/244 249/256 250/257 238/245 \r
+f 238/245 250/257 251/258 239/246 \r
+f 239/246 251/258 252/259 240/247 \r
+f 240/247 252/259 253/260 241/248 \r
+f 241/248 253/260 254/261 242/249 \r
+f 54/56 61/63 255/262 243/250 \r
+f 243/250 255/262 256/263 244/251 \r
+f 244/251 256/263 257/264 245/252 \r
+f 245/252 257/264 258/265 246/253 \r
+f 246/253 258/265 259/266 247/254 \r
+f 247/254 259/266 260/267 248/255 \r
+f 248/255 260/267 261/268 249/256 \r
+f 249/256 261/268 262/269 250/257 \r
+f 250/257 262/269 263/270 251/258 \r
+f 251/258 263/270 264/271 252/259 \r
+f 252/259 264/271 265/272 253/260 \r
+f 253/260 265/272 266/273 254/261 \r
+f 61/63 68/70 267/274 255/262 \r
+f 255/262 267/274 268/275 256/263 \r
+f 256/263 268/275 269/276 257/264 \r
+f 257/264 269/276 270/277 258/265 \r
+f 258/265 270/277 271/278 259/266 \r
+f 259/266 271/278 272/279 260/267 \r
+f 260/267 272/279 273/280 261/268 \r
+f 261/268 273/280 274/281 262/269 \r
+f 262/269 274/281 275/282 263/270 \r
+f 263/270 275/282 276/283 264/271 \r
+f 264/271 276/283 277/284 265/272 \r
+f 265/272 277/284 278/285 266/273 \r
+f 68/70 75/77 279/286 267/274 \r
+f 267/274 279/286 280/287 268/275 \r
+f 268/275 280/287 281/288 269/276 \r
+f 269/276 281/288 282/289 270/277 \r
+f 270/277 282/289 283/290 271/278 \r
+f 271/278 283/290 284/291 272/279 \r
+f 272/279 284/291 285/292 273/280 \r
+f 273/280 285/292 286/293 274/281 \r
+f 274/281 286/293 287/294 275/282 \r
+f 275/282 287/294 288/295 276/283 \r
+f 276/283 288/295 289/296 277/284 \r
+f 277/284 289/296 290/297 278/285 \r
+f 75/77 82/84 291/298 279/286 \r
+f 279/286 291/298 292/299 280/287 \r
+f 280/287 292/299 293/300 281/288 \r
+f 281/288 293/300 294/301 282/289 \r
+f 282/289 294/301 295/302 283/290 \r
+f 283/290 295/302 296/303 284/291 \r
+f 284/291 296/303 297/304 285/292 \r
+f 285/292 297/304 298/305 286/293 \r
+f 286/293 298/305 299/306 287/294 \r
+f 287/294 299/306 300/307 288/295 \r
+f 288/295 300/307 301/308 289/296 \r
+f 289/296 301/308 302/309 290/297 \r
+f 82/84 89/91 303/310 291/298 \r
+f 291/298 303/310 304/311 292/299 \r
+f 292/299 304/311 305/312 293/300 \r
+f 293/300 305/312 306/313 294/301 \r
+f 294/301 306/313 307/314 295/302 \r
+f 295/302 307/314 308/315 296/303 \r
+f 296/303 308/315 309/316 297/304 \r
+f 297/304 309/316 310/317 298/305 \r
+f 298/305 310/317 311/318 299/306 \r
+f 299/306 311/318 312/319 300/307 \r
+f 300/307 312/319 313/320 301/308 \r
+f 301/308 313/320 314/321 302/309 \r
+f 96/98 315/322 303/310 89/91 \r
+f 315/322 316/323 304/311 303/310 \r
+f 316/323 317/324 305/312 304/311 \r
+f 317/324 318/325 306/313 305/312 \r
+f 318/325 319/326 307/314 306/313 \r
+f 319/326 320/327 308/315 307/314 \r
+f 320/327 321/328 309/316 308/315 \r
+f 321/328 322/329 310/317 309/316 \r
+f 322/329 323/330 311/318 310/317 \r
+f 323/330 324/331 312/319 311/318 \r
+f 324/331 325/332 313/320 312/319 \r
+f 325/332 326/333 314/321 313/320 \r
+f 103/105 327/334 315/322 96/98 \r
+f 327/334 328/335 316/323 315/322 \r
+f 328/335 329/336 317/324 316/323 \r
+f 329/336 330/337 318/325 317/324 \r
+f 330/337 331/338 319/326 318/325 \r
+f 331/338 332/339 320/327 319/326 \r
+f 332/339 333/340 321/328 320/327 \r
+f 333/340 334/341 322/329 321/328 \r
+f 334/341 335/342 323/330 322/329 \r
+f 335/342 336/343 324/331 323/330 \r
+f 336/343 337/344 325/332 324/331 \r
+f 337/344 338/345 326/333 325/332 \r
+f 110/112 339/346 327/334 103/105 \r
+f 339/346 340/347 328/335 327/334 \r
+f 340/347 341/348 329/336 328/335 \r
+f 341/348 342/349 330/337 329/336 \r
+f 342/349 343/350 331/338 330/337 \r
+f 343/350 344/351 332/339 331/338 \r
+f 344/351 345/352 333/340 332/339 \r
+f 345/352 346/353 334/341 333/340 \r
+f 346/353 347/354 335/342 334/341 \r
+f 347/354 348/355 336/343 335/342 \r
+f 348/355 349/356 337/344 336/343 \r
+f 349/356 350/357 338/345 337/344 \r
+f 117/119 351/358 339/346 110/112 \r
+f 351/358 352/359 340/347 339/346 \r
+f 352/359 353/360 341/348 340/347 \r
+f 353/360 354/361 342/349 341/348 \r
+f 354/361 355/362 343/350 342/349 \r
+f 355/362 356/363 344/351 343/350 \r
+f 356/363 357/364 345/352 344/351 \r
+f 357/364 358/365 346/353 345/352 \r
+f 358/365 359/366 347/354 346/353 \r
+f 359/366 360/367 348/355 347/354 \r
+f 360/367 361/368 349/356 348/355 \r
+f 361/368 362/369 350/357 349/356 \r
+f 124/126 363/370 351/358 117/119 \r
+f 363/370 364/371 352/359 351/358 \r
+f 364/371 365/372 353/360 352/359 \r
+f 365/372 366/373 354/361 353/360 \r
+f 366/373 367/374 355/362 354/361 \r
+f 367/374 368/375 356/363 355/362 \r
+f 368/375 369/376 357/364 356/363 \r
+f 369/376 370/377 358/365 357/364 \r
+f 370/377 371/378 359/366 358/365 \r
+f 371/378 372/379 360/367 359/366 \r
+f 372/379 373/380 361/368 360/367 \r
+f 373/380 374/381 362/369 361/368 \r
+f 131/133 375/382 363/370 124/126 \r
+f 375/382 376/383 364/371 363/370 \r
+f 376/383 377/384 365/372 364/371 \r
+f 377/384 378/385 366/373 365/372 \r
+f 378/385 379/386 367/374 366/373 \r
+f 379/386 380/387 368/375 367/374 \r
+f 380/387 381/388 369/376 368/375 \r
+f 381/388 382/389 370/377 369/376 \r
+f 382/389 383/390 371/378 370/377 \r
+f 383/390 384/391 372/379 371/378 \r
+f 384/391 385/392 373/380 372/379 \r
+f 385/392 386/393 374/381 373/380 \r
+f 131/133 138/140 387/394 375/382 \r
+f 375/382 387/394 388/395 376/383 \r
+f 376/383 388/395 389/396 377/384 \r
+f 377/384 389/396 390/397 378/385 \r
+f 378/385 390/397 391/398 379/386 \r
+f 379/386 391/398 392/399 380/387 \r
+f 380/387 392/399 393/400 381/388 \r
+f 381/388 393/400 394/401 382/389 \r
+f 382/389 394/401 395/402 383/390 \r
+f 383/390 395/402 396/403 384/391 \r
+f 384/391 396/403 397/404 385/392 \r
+f 385/392 397/404 398/405 386/393 \r
+f 138/140 145/147 399/406 387/394 \r
+f 387/394 399/406 400/407 388/395 \r
+f 388/395 400/407 401/408 389/396 \r
+f 389/396 401/408 402/409 390/397 \r
+f 390/397 402/409 403/410 391/398 \r
+f 391/398 403/410 404/411 392/399 \r
+f 392/399 404/411 405/412 393/400 \r
+f 393/400 405/412 406/413 394/401 \r
+f 394/401 406/413 407/414 395/402 \r
+f 395/402 407/414 408/415 396/403 \r
+f 396/403 408/415 409/416 397/404 \r
+f 397/404 409/416 410/417 398/405 \r
+f 145/147 152/154 411/418 399/406 \r
+f 399/406 411/418 412/419 400/407 \r
+f 400/407 412/419 413/420 401/408 \r
+f 401/408 413/420 414/421 402/409 \r
+f 402/409 414/421 415/422 403/410 \r
+f 403/410 415/422 416/423 404/411 \r
+f 404/411 416/423 417/424 405/412 \r
+f 405/412 417/424 418/425 406/413 \r
+f 406/413 418/425 419/426 407/414 \r
+f 407/414 419/426 420/427 408/415 \r
+f 408/415 420/427 421/428 409/416 \r
+f 409/416 421/428 422/429 410/417 \r
+f 152/154 159/161 423/430 411/418 \r
+f 411/418 423/430 424/431 412/419 \r
+f 412/419 424/431 425/432 413/420 \r
+f 413/420 425/432 426/433 414/421 \r
+f 414/421 426/433 427/434 415/422 \r
+f 415/422 427/434 428/435 416/423 \r
+f 416/423 428/435 429/436 417/424 \r
+f 417/424 429/436 430/437 418/425 \r
+f 418/425 430/437 431/438 419/426 \r
+f 419/426 431/438 432/439 420/427 \r
+f 420/427 432/439 433/440 421/428 \r
+f 421/428 433/440 434/441 422/429 \r
+f 159/161 166/168 435/442 423/430 \r
+f 425/432 436/444 437/443 426/433 \r
+f 426/433 437/443 438/445 427/434 \r
+f 427/434 438/445 439/446 428/435 \r
+f 428/435 439/446 440/447 429/436 \r
+f 429/436 440/447 441/448 430/437 \r
+f 430/437 441/448 442/449 431/438 \r
+f 431/438 442/449 443/450 432/439 \r
+f 432/439 443/450 444/451 433/440 \r
+f 433/440 444/451 445/452 434/441 \r
+f 166/168 173/175 446/453 435/442 \r
+f 436/444 447/455 448/454 437/443 \r
+f 437/443 448/454 449/456 438/445 \r
+f 438/445 449/456 450/457 439/446 \r
+f 439/446 450/457 451/458 440/447 \r
+f 440/447 451/458 452/459 441/448 \r
+f 441/448 452/459 453/460 442/449 \r
+f 442/449 453/460 454/461 443/450 \r
+f 443/450 454/461 455/462 444/451 \r
+f 458/465 457/466 459/463 1975/464 \r
+f 1975/464 459/463 460/467 1978/468 \r
+f 1978/468 460/467 461/469 1980/470 \r
+f 1980/470 461/469 462/471 1982/472 \r
+f 1982/472 462/471 463/473 1984/474 \r
+f 1984/474 463/473 464/475 465/476 \r
+f 465/476 464/475 466/477 467/478 \r
+f 467/478 466/477 468/479 1988/480 \r
+f 1988/480 468/479 469/481 470/482 \r
+f 456/484 472/485 473/483 457/466 \r
+f 457/466 473/483 474/486 459/463 \r
+f 459/463 474/486 475/487 460/467 \r
+f 460/467 475/487 476/488 461/469 \r
+f 461/469 476/488 477/489 462/471 \r
+f 462/471 477/489 478/490 463/473 \r
+f 463/473 478/490 479/491 464/475 \r
+f 464/475 479/491 480/492 466/477 \r
+f 466/477 480/492 481/493 468/479 \r
+f 468/479 481/493 482/494 469/481 \r
+f 194/212 206/213 483/495 471/496 \r
+f 471/496 483/495 484/497 472/485 \r
+f 472/485 484/497 485/498 473/483 \r
+f 473/483 485/498 486/499 474/486 \r
+f 474/486 486/499 487/500 475/487 \r
+f 475/487 487/500 488/501 476/488 \r
+f 476/488 488/501 489/502 477/489 \r
+f 477/489 489/502 490/503 478/490 \r
+f 478/490 490/503 491/504 479/491 \r
+f 479/491 491/504 492/505 480/492 \r
+f 480/492 492/505 493/506 481/493 \r
+f 481/493 493/506 494/507 482/494 \r
+f 206/213 218/225 495/508 483/495 \r
+f 483/495 495/508 496/509 484/497 \r
+f 484/497 496/509 497/510 485/498 \r
+f 485/498 497/510 498/511 486/499 \r
+f 486/499 498/511 499/512 487/500 \r
+f 487/500 499/512 500/513 488/501 \r
+f 488/501 500/513 501/514 489/502 \r
+f 489/502 501/514 502/515 490/503 \r
+f 490/503 502/515 503/516 491/504 \r
+f 491/504 503/516 504/517 492/505 \r
+f 492/505 504/517 505/518 493/506 \r
+f 493/506 505/518 506/519 494/507 \r
+f 218/225 230/237 507/520 495/508 \r
+f 495/508 507/520 508/521 496/509 \r
+f 496/509 508/521 509/522 497/510 \r
+f 497/510 509/522 510/523 498/511 \r
+f 498/511 510/523 511/524 499/512 \r
+f 499/512 511/524 512/525 500/513 \r
+f 500/513 512/525 513/526 501/514 \r
+f 501/514 513/526 514/527 502/515 \r
+f 502/515 514/527 515/528 503/516 \r
+f 503/516 515/528 516/529 504/517 \r
+f 504/517 516/529 517/530 505/518 \r
+f 505/518 517/530 518/531 506/519 \r
+f 230/237 242/249 519/532 507/520 \r
+f 507/520 519/532 520/533 508/521 \r
+f 508/521 520/533 521/534 509/522 \r
+f 509/522 521/534 522/535 510/523 \r
+f 510/523 522/535 523/536 511/524 \r
+f 511/524 523/536 524/537 512/525 \r
+f 512/525 524/537 525/538 513/526 \r
+f 513/526 525/538 526/539 514/527 \r
+f 514/527 526/539 527/540 515/528 \r
+f 515/528 527/540 528/541 516/529 \r
+f 516/529 528/541 529/542 517/530 \r
+f 517/530 529/542 530/543 518/531 \r
+f 254/261 531/544 519/532 242/249 \r
+f 531/544 532/545 520/533 519/532 \r
+f 532/545 533/546 521/534 520/533 \r
+f 533/546 534/547 522/535 521/534 \r
+f 534/547 535/548 523/536 522/535 \r
+f 535/548 536/549 524/537 523/536 \r
+f 536/549 537/550 525/538 524/537 \r
+f 537/550 538/551 526/539 525/538 \r
+f 538/551 539/552 527/540 526/539 \r
+f 539/552 540/553 528/541 527/540 \r
+f 540/553 541/554 529/542 528/541 \r
+f 541/554 542/555 530/543 529/542 \r
+f 266/273 543/556 531/544 254/261 \r
+f 543/556 544/557 532/545 531/544 \r
+f 544/557 545/558 533/546 532/545 \r
+f 545/558 546/559 534/547 533/546 \r
+f 546/559 547/560 535/548 534/547 \r
+f 547/560 548/561 536/549 535/548 \r
+f 548/561 549/562 537/550 536/549 \r
+f 549/562 550/563 538/551 537/550 \r
+f 550/563 551/564 539/552 538/551 \r
+f 551/564 552/565 540/553 539/552 \r
+f 552/565 553/566 541/554 540/553 \r
+f 553/566 554/567 542/555 541/554 \r
+f 278/285 555/568 543/556 266/273 \r
+f 555/568 556/569 544/557 543/556 \r
+f 556/569 557/570 545/558 544/557 \r
+f 557/570 558/571 546/559 545/558 \r
+f 558/571 559/572 547/560 546/559 \r
+f 559/572 560/573 548/561 547/560 \r
+f 560/573 561/574 549/562 548/561 \r
+f 561/574 562/575 550/563 549/562 \r
+f 562/575 563/576 551/564 550/563 \r
+f 563/576 564/577 552/565 551/564 \r
+f 564/577 565/578 553/566 552/565 \r
+f 565/578 566/579 554/567 553/566 \r
+f 290/297 567/580 555/568 278/285 \r
+f 567/580 568/581 556/569 555/568 \r
+f 568/581 569/582 557/570 556/569 \r
+f 569/582 570/583 558/571 557/570 \r
+f 570/583 571/584 559/572 558/571 \r
+f 571/584 572/585 560/573 559/572 \r
+f 572/585 573/586 561/574 560/573 \r
+f 573/586 574/587 562/575 561/574 \r
+f 574/587 575/588 563/576 562/575 \r
+f 575/588 576/589 564/577 563/576 \r
+f 576/589 577/590 565/578 564/577 \r
+f 577/590 578/591 566/579 565/578 \r
+f 302/309 579/592 567/580 290/297 \r
+f 579/592 580/593 568/581 567/580 \r
+f 580/593 581/594 569/582 568/581 \r
+f 581/594 582/595 570/583 569/582 \r
+f 582/595 583/596 571/584 570/583 \r
+f 583/596 584/597 572/585 571/584 \r
+f 584/597 585/598 573/586 572/585 \r
+f 585/598 586/599 574/587 573/586 \r
+f 586/599 587/600 575/588 574/587 \r
+f 587/600 588/601 576/589 575/588 \r
+f 588/601 589/602 577/590 576/589 \r
+f 589/602 590/603 578/591 577/590 \r
+f 314/321 591/604 579/592 302/309 \r
+f 591/604 592/605 580/593 579/592 \r
+f 592/605 593/606 581/594 580/593 \r
+f 593/606 594/607 582/595 581/594 \r
+f 594/607 595/608 583/596 582/595 \r
+f 595/608 596/609 584/597 583/596 \r
+f 596/609 597/610 585/598 584/597 \r
+f 597/610 598/611 586/599 585/598 \r
+f 598/611 599/612 587/600 586/599 \r
+f 599/612 600/613 588/601 587/600 \r
+f 600/613 601/614 589/602 588/601 \r
+f 601/614 602/615 590/603 589/602 \r
+f 314/321 326/333 603/616 591/604 \r
+f 591/604 603/616 604/617 592/605 \r
+f 592/605 604/617 605/618 593/606 \r
+f 593/606 605/618 606/619 594/607 \r
+f 594/607 606/619 607/620 595/608 \r
+f 595/608 607/620 608/621 596/609 \r
+f 596/609 608/621 609/622 597/610 \r
+f 597/610 609/622 610/623 598/611 \r
+f 598/611 610/623 611/624 599/612 \r
+f 599/612 611/624 612/625 600/613 \r
+f 600/613 612/625 613/626 601/614 \r
+f 601/614 613/626 614/627 602/615 \r
+f 326/333 338/345 615/628 603/616 \r
+f 603/616 615/628 616/629 604/617 \r
+f 604/617 616/629 617/630 605/618 \r
+f 605/618 617/630 618/631 606/619 \r
+f 606/619 618/631 619/632 607/620 \r
+f 607/620 619/632 620/633 608/621 \r
+f 608/621 620/633 621/634 609/622 \r
+f 609/622 621/634 622/635 610/623 \r
+f 610/623 622/635 623/636 611/624 \r
+f 611/624 623/636 624/637 612/625 \r
+f 612/625 624/637 625/638 613/626 \r
+f 613/626 625/638 626/639 614/627 \r
+f 338/345 350/357 627/640 615/628 \r
+f 615/628 627/640 628/641 616/629 \r
+f 616/629 628/641 629/642 617/630 \r
+f 617/630 629/642 630/643 618/631 \r
+f 618/631 630/643 631/644 619/632 \r
+f 619/632 631/644 632/645 620/633 \r
+f 620/633 632/645 633/646 621/634 \r
+f 621/634 633/646 634/647 622/635 \r
+f 622/635 634/647 635/648 623/636 \r
+f 623/636 635/648 636/649 624/637 \r
+f 624/637 636/649 637/650 625/638 \r
+f 625/638 637/650 638/651 626/639 \r
+f 350/357 362/369 639/652 627/640 \r
+f 627/640 639/652 640/653 628/641 \r
+f 628/641 640/653 641/654 629/642 \r
+f 629/642 641/654 642/655 630/643 \r
+f 630/643 642/655 643/656 631/644 \r
+f 631/644 643/656 644/657 632/645 \r
+f 632/645 644/657 645/658 633/646 \r
+f 633/646 645/658 646/659 634/647 \r
+f 634/647 646/659 647/660 635/648 \r
+f 635/648 647/660 648/661 636/649 \r
+f 636/649 648/661 649/662 637/650 \r
+f 637/650 649/662 650/663 638/651 \r
+f 362/369 374/381 651/664 639/652 \r
+f 639/652 651/664 652/665 640/653 \r
+f 640/653 652/665 653/666 641/654 \r
+f 641/654 653/666 654/667 642/655 \r
+f 642/655 654/667 655/668 643/656 \r
+f 643/656 655/668 656/669 644/657 \r
+f 644/657 656/669 657/670 645/658 \r
+f 645/658 657/670 658/671 646/659 \r
+f 646/659 658/671 659/672 647/660 \r
+f 647/660 659/672 660/673 648/661 \r
+f 648/661 660/673 661/674 649/662 \r
+f 649/662 661/674 662/675 650/663 \r
+f 374/381 386/393 663/676 651/664 \r
+f 651/664 663/676 664/677 652/665 \r
+f 652/665 664/677 665/678 653/666 \r
+f 653/666 665/678 666/679 654/667 \r
+f 654/667 666/679 667/680 655/668 \r
+f 655/668 667/680 668/681 656/669 \r
+f 656/669 668/681 669/682 657/670 \r
+f 657/670 669/682 670/683 658/671 \r
+f 658/671 670/683 671/684 659/672 \r
+f 659/672 671/684 672/685 660/673 \r
+f 660/673 672/685 673/686 661/674 \r
+f 661/674 673/686 674/687 662/675 \r
+f 398/405 675/688 663/676 386/393 \r
+f 675/688 676/689 664/677 663/676 \r
+f 676/689 677/690 665/678 664/677 \r
+f 677/690 678/691 666/679 665/678 \r
+f 678/691 679/692 667/680 666/679 \r
+f 679/692 680/693 668/681 667/680 \r
+f 680/693 681/694 669/682 668/681 \r
+f 681/694 682/695 670/683 669/682 \r
+f 682/695 683/696 671/684 670/683 \r
+f 683/696 684/697 672/685 671/684 \r
+f 684/697 685/698 673/686 672/685 \r
+f 685/698 686/699 674/687 673/686 \r
+f 410/417 687/700 675/688 398/405 \r
+f 687/700 688/701 676/689 675/688 \r
+f 688/701 689/702 677/690 676/689 \r
+f 689/702 690/703 678/691 677/690 \r
+f 690/703 691/704 679/692 678/691 \r
+f 691/704 692/705 680/693 679/692 \r
+f 692/705 693/706 681/694 680/693 \r
+f 693/706 694/707 682/695 681/694 \r
+f 694/707 695/708 683/696 682/695 \r
+f 695/708 696/709 684/697 683/696 \r
+f 696/709 697/710 685/698 684/697 \r
+f 697/710 698/711 686/699 685/698 \r
+f 422/429 699/712 687/700 410/417 \r
+f 699/712 700/713 688/701 687/700 \r
+f 700/713 701/714 689/702 688/701 \r
+f 701/714 702/715 690/703 689/702 \r
+f 702/715 703/716 691/704 690/703 \r
+f 703/716 704/717 692/705 691/704 \r
+f 704/717 705/718 693/706 692/705 \r
+f 705/718 706/719 694/707 693/706 \r
+f 706/719 707/720 695/708 694/707 \r
+f 707/720 708/721 696/709 695/708 \r
+f 708/721 709/722 697/710 696/709 \r
+f 709/722 710/723 698/711 697/710 \r
+f 434/441 711/724 699/712 422/429 \r
+f 711/724 712/725 700/713 699/712 \r
+f 712/725 713/726 701/714 700/713 \r
+f 713/726 714/727 702/715 701/714 \r
+f 714/727 715/728 703/716 702/715 \r
+f 715/728 716/729 704/717 703/716 \r
+f 716/729 717/730 705/718 704/717 \r
+f 717/730 718/731 706/719 705/718 \r
+f 718/731 719/732 707/720 706/719 \r
+f 719/732 720/733 708/721 707/720 \r
+f 720/733 721/734 709/722 708/721 \r
+f 721/734 722/735 710/723 709/722 \r
+f 445/452 723/736 711/724 434/441 \r
+f 723/736 724/737 712/725 711/724 \r
+f 724/737 725/738 713/726 712/725 \r
+f 725/738 726/739 714/727 713/726 \r
+f 726/739 727/740 715/728 714/727 \r
+f 727/740 728/741 716/729 715/728 \r
+f 728/741 729/742 717/730 716/729 \r
+f 729/742 730/743 718/731 717/730 \r
+f 730/743 731/744 719/732 718/731 \r
+f 731/744 732/745 720/733 719/732 \r
+f 732/745 733/746 721/734 720/733 \r
+f 733/746 734/747 722/735 721/734 \r
+f 735/748 736/749 726/739 725/738 \r
+f 736/749 737/750 727/740 726/739 \r
+f 737/750 738/751 728/741 727/740 \r
+f 738/751 739/752 729/742 728/741 \r
+f 739/752 740/753 730/743 729/742 \r
+f 740/753 741/754 731/744 730/743 \r
+f 741/754 742/755 732/745 731/744 \r
+f 742/755 743/756 733/746 732/745 \r
+f 743/756 744/757 734/747 733/746 \r
+f 470/482 469/481 745/758 2256/759 \r
+f 2256/759 745/758 746/760 2258/761 \r
+f 2258/761 746/760 747/762 748/763 \r
+f 748/763 747/762 749/764 2261/765 \r
+f 2261/768 749/769 750/766 2263/767 \r
+f 2263/767 750/766 751/770 2265/771 \r
+f 2265/771 751/770 752/772 2267/773 \r
+f 2267/773 752/772 753/774 2269/775 \r
+f 2269/775 753/774 754/776 2271/777 \r
+f 2271/777 754/776 755/778 756/779 \r
+f 756/779 755/778 757/780 758/785 \r
+f 758/785 757/780 2274/786 \r
+f 469/481 482/494 759/781 745/758 \r
+f 745/758 759/781 760/782 746/760 \r
+f 746/760 760/782 761/783 747/762 \r
+f 747/762 761/783 762/784 749/764 \r
+f 749/769 762/788 763/787 750/766 \r
+f 750/766 763/787 764/789 751/770 \r
+f 751/770 764/789 765/790 752/772 \r
+f 752/772 765/790 766/791 753/774 \r
+f 753/774 766/791 767/796 754/776 \r
+f 754/776 767/796 768/797 755/778 \r
+f 755/778 768/797 769/798 757/780 \r
+f 757/780 769/798 2274/786 \r
+f 482/494 494/507 770/792 759/781 \r
+f 759/781 770/792 771/793 760/782 \r
+f 760/782 771/793 772/794 761/783 \r
+f 761/783 772/794 773/795 762/784 \r
+f 762/788 773/800 774/799 763/787 \r
+f 763/787 774/799 775/801 764/789 \r
+f 764/789 775/801 776/802 765/790 \r
+f 765/790 776/802 777/807 766/791 \r
+f 766/791 777/807 778/808 767/796 \r
+f 767/796 778/808 779/809 768/797 \r
+f 768/797 779/809 780/810 769/798 \r
+f 769/798 780/810 2274/786 \r
+f 494/507 506/519 781/803 770/792 \r
+f 770/792 781/803 782/804 771/793 \r
+f 771/793 782/804 783/805 772/794 \r
+f 772/794 783/805 784/806 773/795 \r
+f 773/800 784/812 785/811 774/799 \r
+f 774/799 785/811 786/813 775/801 \r
+f 775/801 786/813 787/818 776/802 \r
+f 776/802 787/818 788/819 777/807 \r
+f 777/807 788/819 789/820 778/808 \r
+f 778/808 789/820 790/821 779/809 \r
+f 779/809 790/821 791/822 780/810 \r
+f 780/810 791/822 2274/786 \r
+f 506/519 518/531 792/814 781/803 \r
+f 781/803 792/814 793/815 782/804 \r
+f 782/804 793/815 794/816 783/805 \r
+f 783/805 794/816 795/817 784/806 \r
+f 784/812 795/824 796/823 785/811 \r
+f 785/811 796/823 797/829 786/813 \r
+f 786/813 797/829 798/830 787/818 \r
+f 787/818 798/830 799/831 788/819 \r
+f 788/819 799/831 800/832 789/820 \r
+f 789/820 800/832 801/833 790/821 \r
+f 790/821 801/833 802/834 791/822 \r
+f 791/822 802/834 2274/786 \r
+f 518/531 530/543 803/825 792/814 \r
+f 792/814 803/825 804/826 793/815 \r
+f 793/815 804/826 805/827 794/816 \r
+f 794/816 805/827 806/828 795/817 \r
+f 795/824 806/840 807/835 796/823 \r
+f 796/823 807/835 808/841 797/829 \r
+f 797/829 808/841 809/842 798/830 \r
+f 798/830 809/842 810/843 799/831 \r
+f 799/831 810/843 811/844 800/832 \r
+f 800/832 811/844 812/845 801/833 \r
+f 801/833 812/845 813/846 802/834 \r
+f 802/834 813/846 2274/786 \r
+f 542/555 814/836 803/825 530/543 \r
+f 814/836 815/837 804/826 803/825 \r
+f 815/837 816/838 805/827 804/826 \r
+f 816/838 817/839 806/828 805/827 \r
+f 817/851 818/852 807/835 806/840 \r
+f 818/852 819/853 808/841 807/835 \r
+f 819/853 820/854 809/842 808/841 \r
+f 820/854 821/855 810/843 809/842 \r
+f 821/855 822/856 811/844 810/843 \r
+f 822/856 823/857 812/845 811/844 \r
+f 823/857 824/862 813/846 812/845 \r
+f 813/846 824/862 2274/786 \r
+f 554/567 825/847 814/836 542/555 \r
+f 825/847 826/848 815/837 814/836 \r
+f 826/848 827/849 816/838 815/837 \r
+f 827/849 828/850 817/839 816/838 \r
+f 828/863 829/864 818/852 817/851 \r
+f 829/864 830/865 819/853 818/852 \r
+f 830/865 831/866 820/854 819/853 \r
+f 831/866 832/867 821/855 820/854 \r
+f 832/867 833/868 822/856 821/855 \r
+f 833/868 834/873 823/857 822/856 \r
+f 834/873 835/874 824/862 823/857 \r
+f 824/862 835/874 2274/786 \r
+f 566/579 836/858 825/847 554/567 \r
+f 836/858 837/859 826/848 825/847 \r
+f 837/859 838/860 827/849 826/848 \r
+f 838/860 839/861 828/850 827/849 \r
+f 839/875 840/876 829/864 828/863 \r
+f 840/876 841/877 830/865 829/864 \r
+f 841/877 842/878 831/866 830/865 \r
+f 842/878 843/879 832/867 831/866 \r
+f 843/879 844/884 833/868 832/867 \r
+f 844/884 845/885 834/873 833/868 \r
+f 845/885 846/886 835/874 834/873 \r
+f 835/874 846/886 2274/786 \r
+f 578/591 847/869 836/858 566/579 \r
+f 847/869 848/870 837/859 836/858 \r
+f 848/870 849/871 838/860 837/859 \r
+f 849/871 850/872 839/861 838/860 \r
+f 850/887 851/888 840/876 839/875 \r
+f 851/888 852/889 841/877 840/876 \r
+f 852/889 853/890 842/878 841/877 \r
+f 853/890 854/895 843/879 842/878 \r
+f 854/895 855/896 844/884 843/879 \r
+f 855/896 856/897 845/885 844/884 \r
+f 856/897 857/898 846/886 845/885 \r
+f 846/886 857/898 2274/786 \r
+f 590/603 858/880 847/869 578/591 \r
+f 858/880 859/881 848/870 847/869 \r
+f 859/881 860/882 849/871 848/870 \r
+f 860/882 861/883 850/872 849/871 \r
+f 861/899 862/900 851/888 850/887 \r
+f 862/900 863/901 852/889 851/888 \r
+f 863/901 864/906 853/890 852/889 \r
+f 864/906 865/907 854/895 853/890 \r
+f 865/907 866/908 855/896 854/895 \r
+f 866/908 867/909 856/897 855/896 \r
+f 867/909 868/910 857/898 856/897 \r
+f 857/898 868/910 2274/786 \r
+f 602/615 869/891 858/880 590/603 \r
+f 869/891 870/892 859/881 858/880 \r
+f 870/892 871/893 860/882 859/881 \r
+f 871/893 872/894 861/883 860/882 \r
+f 872/911 873/912 862/900 861/899 \r
+f 873/912 874/917 863/901 862/900 \r
+f 874/917 875/918 864/906 863/901 \r
+f 875/918 876/919 865/907 864/906 \r
+f 876/919 877/920 866/908 865/907 \r
+f 877/920 878/921 867/909 866/908 \r
+f 878/921 879/922 868/910 867/909 \r
+f 868/910 879/922 2274/786 \r
+f 602/615 614/627 880/902 869/891 \r
+f 869/891 880/902 881/903 870/892 \r
+f 870/892 881/903 882/904 871/893 \r
+f 871/893 882/904 883/905 872/894 \r
+f 872/911 883/928 884/923 873/912 \r
+f 873/912 884/923 885/929 874/917 \r
+f 874/917 885/929 886/930 875/918 \r
+f 875/918 886/930 887/931 876/919 \r
+f 876/919 887/931 888/932 877/920 \r
+f 877/920 888/932 889/933 878/921 \r
+f 878/921 889/933 890/934 879/922 \r
+f 879/922 890/934 2274/786 \r
+f 614/627 626/639 891/913 880/902 \r
+f 880/902 891/913 892/914 881/903 \r
+f 881/903 892/914 893/915 882/904 \r
+f 882/904 893/915 894/916 883/905 \r
+f 883/928 894/940 895/939 884/923 \r
+f 884/923 895/939 896/941 885/929 \r
+f 885/929 896/941 897/942 886/930 \r
+f 886/930 897/942 898/943 887/931 \r
+f 887/931 898/943 899/944 888/932 \r
+f 888/932 899/944 900/945 889/933 \r
+f 889/933 900/945 901/950 890/934 \r
+f 890/934 901/950 2274/786 \r
+f 626/639 638/651 902/924 891/913 \r
+f 891/913 902/924 903/925 892/914 \r
+f 892/914 903/925 904/926 893/915 \r
+f 893/915 904/926 905/927 894/916 \r
+f 894/940 905/952 906/951 895/939 \r
+f 895/939 906/951 907/953 896/941 \r
+f 896/941 907/953 908/954 897/942 \r
+f 897/942 908/954 909/955 898/943 \r
+f 898/943 909/955 910/956 899/944 \r
+f 899/944 910/956 911/961 900/945 \r
+f 900/945 911/961 912/962 901/950 \r
+f 901/950 912/962 2274/786 \r
+f 638/651 650/663 913/935 902/924 \r
+f 902/924 913/935 914/936 903/925 \r
+f 903/925 914/936 915/937 904/926 \r
+f 904/926 915/937 916/938 905/927 \r
+f 905/952 916/964 917/963 906/951 \r
+f 906/951 917/963 918/965 907/953 \r
+f 907/953 918/965 919/966 908/954 \r
+f 908/954 919/966 920/967 909/955 \r
+f 909/955 920/967 921/972 910/956 \r
+f 910/956 921/972 922/973 911/961 \r
+f 911/961 922/973 923/974 912/962 \r
+f 912/962 923/974 2274/786 \r
+f 650/663 662/675 924/946 913/935 \r
+f 913/935 924/946 925/947 914/936 \r
+f 914/936 925/947 926/948 915/937 \r
+f 915/937 926/948 927/949 916/938 \r
+f 916/964 927/976 928/975 917/963 \r
+f 917/963 928/975 929/977 918/965 \r
+f 918/965 929/977 930/978 919/966 \r
+f 919/966 930/978 931/983 920/967 \r
+f 920/967 931/983 932/984 921/972 \r
+f 921/972 932/984 933/985 922/973 \r
+f 922/973 933/985 934/986 923/974 \r
+f 923/974 934/986 2274/786 \r
+f 662/675 674/687 935/957 924/946 \r
+f 924/946 935/957 936/958 925/947 \r
+f 925/947 936/958 937/959 926/948 \r
+f 926/948 937/959 938/960 927/949 \r
+f 927/976 938/988 939/987 928/975 \r
+f 928/975 939/987 940/989 929/977 \r
+f 929/977 940/989 941/994 930/978 \r
+f 930/978 941/994 942/995 931/983 \r
+f 931/983 942/995 943/996 932/984 \r
+f 932/984 943/996 944/997 933/985 \r
+f 933/985 944/997 945/998 934/986 \r
+f 934/986 945/998 2274/786 \r
+f 686/699 946/968 935/957 674/687 \r
+f 946/968 947/969 936/958 935/957 \r
+f 947/969 948/970 937/959 936/958 \r
+f 948/970 949/971 938/960 937/959 \r
+f 949/999 950/1000 939/987 938/988 \r
+f 950/1000 951/1005 940/989 939/987 \r
+f 951/1005 952/1006 941/994 940/989 \r
+f 952/1006 953/1007 942/995 941/994 \r
+f 953/1007 954/1008 943/996 942/995 \r
+f 954/1008 955/1009 944/997 943/996 \r
+f 955/1009 956/1010 945/998 944/997 \r
+f 945/998 956/1010 2274/786 \r
+f 698/711 957/979 946/968 686/699 \r
+f 957/979 958/980 947/969 946/968 \r
+f 958/980 959/981 948/970 947/969 \r
+f 959/981 960/982 949/971 948/970 \r
+f 960/1011 961/1016 950/1000 949/999 \r
+f 961/1016 962/1017 951/1005 950/1000 \r
+f 962/1017 963/1018 952/1006 951/1005 \r
+f 963/1018 964/1019 953/1007 952/1006 \r
+f 964/1019 965/1020 954/1008 953/1007 \r
+f 965/1020 966/1021 955/1009 954/1008 \r
+f 966/1021 967/1022 956/1010 955/1009 \r
+f 956/1010 967/1022 2274/786 \r
+f 710/723 968/990 957/979 698/711 \r
+f 968/990 969/991 958/980 957/979 \r
+f 969/991 970/992 959/981 958/980 \r
+f 970/992 971/993 960/982 959/981 \r
+f 971/1027 972/1028 961/1016 960/1011 \r
+f 972/1028 973/1029 962/1017 961/1016 \r
+f 973/1029 974/1030 963/1018 962/1017 \r
+f 974/1030 975/1031 964/1019 963/1018 \r
+f 975/1031 976/1032 965/1020 964/1019 \r
+f 976/1032 977/1033 966/1021 965/1020 \r
+f 977/1033 978/2290 967/1022 966/1021 \r
+f 967/1022 978/2290 2274/786 \r
+f 722/735 979/1001 968/990 710/723 \r
+f 979/1001 980/1002 969/991 968/990 \r
+f 980/1002 981/1003 970/992 969/991 \r
+f 981/1003 982/1004 971/993 970/992 \r
+f 982/2291 983/2292 972/1028 971/1027 \r
+f 983/2292 984/2293 973/1029 972/1028 \r
+f 984/2293 985/2294 974/1030 973/1029 \r
+f 985/2294 986/2295 975/1031 974/1030 \r
+f 986/2295 987/2296 976/1032 975/1031 \r
+f 987/2296 988/2301 977/1033 976/1032 \r
+f 988/2301 989/2302 978/2290 977/1033 \r
+f 978/2290 989/2302 2274/786 \r
+f 734/747 990/1012 979/1001 722/735 \r
+f 990/1012 991/1013 980/1002 979/1001 \r
+f 991/1013 992/1014 981/1003 980/1002 \r
+f 992/1014 993/1015 982/1004 981/1003 \r
+f 993/2303 994/2304 983/2292 982/2291 \r
+f 994/2304 995/2305 984/2293 983/2292 \r
+f 995/2305 996/2306 985/2294 984/2293 \r
+f 996/2306 997/2307 986/2295 985/2294 \r
+f 997/2307 998/2312 987/2296 986/2295 \r
+f 998/2312 999/2313 988/2301 987/2296 \r
+f 999/2313 1000/2314 989/2302 988/2301 \r
+f 989/2302 1000/2314 2274/786 \r
+f 744/757 1001/1023 990/1012 734/747 \r
+f 1001/1023 1002/1024 991/1013 990/1012 \r
+f 1002/1024 1003/1025 992/1014 991/1013 \r
+f 1003/1025 1004/1026 993/1015 992/1014 \r
+f 1004/2315 1005/2316 994/2304 993/2303 \r
+f 1005/2316 1006/2317 995/2305 994/2304 \r
+f 1006/2317 1007/2318 996/2306 995/2305 \r
+f 1007/2318 1008/2323 997/2307 996/2306 \r
+f 1008/2323 1009/2324 998/2312 997/2307 \r
+f 1009/2324 1010/2325 999/2313 998/2312 \r
+f 1010/2325 1011/2326 1000/2314 999/2313 \r
+f 1000/2314 1011/2326 2274/786 \r
+f 456/484 1023/1034 1022/1035 \r
+f 1013/1038 1012/1039 1025/1036 2521/1037 \r
+f 1214/1042 1213/1043 1016/1040 1017/1041 \r
+f 1026/1046 1027/1047 1014/1044 1015/1045 \r
+f 1027/1047 1026/1046 1028/1048 1029/1049 \r
+f 1025/1036 1027/1047 1029/1049 1030/1050 \r
+f 1030/1050 1029/1049 1031/1051 1032/1052 \r
+f 1033/1054 1030/1050 1032/1052 2535/1053 \r
+f 1036/1057 1034/1058 1035/1055 1037/1056 \r
+f 1038/1060 1036/1057 1037/1056 1039/1059 \r
+f 1040/1062 1038/1060 1039/1059 1041/1061 \r
+f 1042/1064 1040/1062 1041/1061 1043/1063 \r
+f 1044/1066 1042/1064 1043/1063 1045/1065 \r
+f 1046/1068 1044/1066 1045/1065 1047/1067 \r
+f 1048/1070 1046/1068 1047/1067 1049/1069 \r
+f 1050/1072 1048/1070 1049/1069 1051/1071 \r
+f 1028/1048 1050/1072 1051/1071 1052/1073 \r
+f 1052/1073 1051/1071 1053/1074 1054/1075 \r
+f 1031/1051 1052/1073 1054/1075 1055/1076 \r
+f 1055/1076 1054/1075 1056/1077 1057/1078 \r
+f 1058/1080 1055/1076 1057/1078 1059/1079 \r
+f 1060/1082 1058/1080 1059/1079 2560/1081 \r
+f 1063/1085 1061/1086 1062/1083 1064/1084 \r
+f 1065/1088 1063/1085 1064/1084 1066/1087 \r
+f 1067/1090 1065/1088 1066/1087 1068/1089 \r
+f 1069/1092 1067/1090 1068/1089 1070/1091 \r
+f 1071/1094 1069/1092 1070/1091 1072/1093 \r
+f 1073/1096 1071/1094 1072/1093 1074/1095 \r
+f 1075/1098 1073/1096 1074/1095 1076/1097 \r
+f 1053/1074 1075/1098 1076/1097 1077/1099 \r
+f 1077/1099 1076/1097 1078/1100 1079/1101 \r
+f 1056/1077 1077/1099 1079/1101 1080/1102 \r
+f 1080/1102 1079/1101 1081/1103 1082/1104 \r
+f 1083/1106 1080/1102 1082/1104 1084/1105 \r
+f 1085/1108 1083/1106 1084/1105 1086/1107 \r
+f 2585/1110 1085/1108 1086/1107 1087/1109 \r
+f 1090/1113 1088/1114 1089/1111 1091/1112 \r
+f 1092/1116 1090/1113 1091/1112 1093/1115 \r
+f 1094/1118 1092/1116 1093/1115 1095/1117 \r
+f 1096/1120 1094/1118 1095/1117 1097/1119 \r
+f 1098/1122 1096/1120 1097/1119 1099/1121 \r
+f 1100/1124 1098/1122 1099/1121 1101/1123 \r
+f 1078/1100 1100/1124 1101/1123 1102/1125 \r
+f 1102/1125 1101/1123 1103/1126 1104/1127 \r
+f 1081/1103 1102/1125 1104/1127 1105/1128 \r
+f 1105/1128 1104/1127 1106/1129 1107/1130 \r
+f 1108/1132 1105/1128 1107/1130 1109/1131 \r
+f 1110/1134 1108/1132 1109/1131 1111/1133 \r
+f 1112/1136 1110/1134 1111/1133 1113/1135 \r
+f 1114/1138 1112/1136 1113/1135 2610/1137 \r
+f 1117/1141 1115/1142 1116/1139 1118/1140 \r
+f 1119/1144 1117/1141 1118/1140 1120/1143 \r
+f 1121/1146 1119/1144 1120/1143 1122/1145 \r
+f 1123/1148 1121/1146 1122/1145 1124/1147 \r
+f 1125/1150 1123/1148 1124/1147 1126/1149 \r
+f 1103/1126 1125/1150 1126/1149 1127/1151 \r
+f 1127/1151 1126/1149 1128/1152 1129/1153 \r
+f 1106/1129 1127/1151 1129/1153 1130/1154 \r
+f 1130/1154 1129/1153 1131/1155 1132/1156 \r
+f 1133/1158 1130/1154 1132/1156 1134/1157 \r
+f 1135/1160 1133/1158 1134/1157 1136/1159 \r
+f 1137/1162 1135/1160 1136/1159 1138/1161 \r
+f 1139/1164 1137/1162 1138/1161 1140/1163 \r
+f 2635/1166 1139/1164 1140/1163 1141/1165 \r
+f 1144/1169 1142/1170 1143/1167 1145/1168 \r
+f 1146/1172 1144/1169 1145/1168 1147/1171 \r
+f 1148/1174 1146/1172 1147/1171 1149/1173 \r
+f 1150/1176 1148/1174 1149/1173 1151/1175 \r
+f 1128/1152 1150/1176 1151/1175 1152/1177 \r
+f 1152/1177 1151/1175 1153/1178 1154/1179 \r
+f 1131/1155 1152/1177 1154/1179 1155/1180 \r
+f 1155/1180 1154/1179 1156/1181 1157/1182 \r
+f 1158/1184 1155/1180 1157/1182 1159/1183 \r
+f 1160/1186 1158/1184 1159/1183 1161/1185 \r
+f 1162/1188 1160/1186 1161/1185 1163/1187 \r
+f 1164/1190 1162/1188 1163/1187 1165/1189 \r
+f 1166/1192 1164/1190 1165/1189 1167/1191 \r
+f 2660/1194 1166/1192 1167/1191 2661/1193 \r
+f 1169/1197 1168/1198 2663/1195 1170/1196 \r
+f 1171/1200 1169/1197 1170/1196 1172/1199 \r
+f 1173/1202 1171/1200 1172/1199 1174/1201 \r
+f 1153/1178 1173/1202 1174/1201 1175/1203 \r
+f 1175/1203 1174/1201 1176/1204 1177/1205 \r
+f 1156/1181 1175/1203 1177/1205 1178/1206 \r
+f 1178/1206 1177/1205 1179/1207 1180/1208 \r
+f 1181/1210 1178/1206 1180/1208 1182/1209 \r
+f 1183/1212 1181/1210 1182/1209 1184/1211 \r
+f 1185/1214 1183/1212 1184/1211 1186/1213 \r
+f 1187/1216 1185/1214 1186/1213 1188/1215 \r
+f 1189/1218 1187/1216 1188/1215 1190/1217 \r
+f 1191/1220 1189/1218 1190/1217 1192/1219 \r
+f 1193/1222 1191/1220 1192/1219 1194/1221 \r
+f 1196/1225 2688/1226 1195/1223 1197/1224 \r
+f 1198/1228 1196/1225 1197/1224 1199/1227 \r
+f 1176/1204 1198/1228 1199/1227 1200/1229 \r
+f 1200/1229 1199/1227 1201/1230 1202/1231 \r
+f 1179/1207 1200/1229 1202/1231 1203/1232 \r
+f 1204/1233 1201/1230 1199/1227 1197/1224 \r
+f 2697/1234 1204/1233 1197/1224 1195/1223 \r
+f 1196/1225 1198/1228 1172/1199 1170/1196 \r
+f 2688/1226 1196/1225 1170/1196 2663/1195 \r
+f 1206/1235 1205/1236 1194/1221 1192/1219 \r
+f 1207/1237 1206/1235 1192/1219 1190/1217 \r
+f 1191/1220 1193/1222 2661/1193 1167/1191 \r
+f 1208/1238 1207/1237 1190/1217 1188/1215 \r
+f 1189/1218 1191/1220 1167/1191 1165/1189 \r
+f 1209/1239 1208/1238 1188/1215 1186/1213 \r
+f 1187/1216 1189/1218 1165/1189 1163/1187 \r
+f 1210/1240 1209/1239 1186/1213 1184/1211 \r
+f 1185/1214 1187/1216 1163/1187 1161/1185 \r
+f 1211/1241 1210/1240 1184/1211 1182/1209 \r
+f 1183/1212 1185/1214 1161/1185 1159/1183 \r
+f 1212/1242 1211/1241 1182/1209 1180/1208 \r
+f 1181/1210 1183/1212 1159/1183 1157/1182 \r
+f 1203/1232 1212/1242 1180/1208 1179/1207 \r
+f 1178/1206 1181/1210 1157/1182 1156/1181 \r
+f 1200/1229 1179/1207 1177/1205 1176/1204 \r
+f 1198/1228 1176/1204 1174/1201 1172/1199 \r
+f 1171/1200 1173/1202 1149/1173 1147/1171 \r
+f 1169/1197 1171/1200 1147/1171 1145/1168 \r
+f 1168/1198 1169/1197 1145/1168 1143/1167 \r
+f 1166/1192 2660/1194 1141/1165 1140/1163 \r
+f 1164/1190 1166/1192 1140/1163 1138/1161 \r
+f 1162/1188 1164/1190 1138/1161 1136/1159 \r
+f 1160/1186 1162/1188 1136/1159 1134/1157 \r
+f 1158/1184 1160/1186 1134/1157 1132/1156 \r
+f 1155/1180 1158/1184 1132/1156 1131/1155 \r
+f 1175/1203 1156/1181 1154/1179 1153/1178 \r
+f 1173/1202 1153/1178 1151/1175 1149/1173 \r
+f 1148/1174 1150/1176 1124/1147 1122/1145 \r
+f 1146/1172 1148/1174 1122/1145 1120/1143 \r
+f 1144/1169 1146/1172 1120/1143 1118/1140 \r
+f 1142/1170 1144/1169 1118/1140 1116/1139 \r
+f 1139/1164 2635/1166 2610/1137 1113/1135 \r
+f 1137/1162 1139/1164 1113/1135 1111/1133 \r
+f 1135/1160 1137/1162 1111/1133 1109/1131 \r
+f 1133/1158 1135/1160 1109/1131 1107/1130 \r
+f 1130/1154 1133/1158 1107/1130 1106/1129 \r
+f 1152/1177 1131/1155 1129/1153 1128/1152 \r
+f 1150/1176 1128/1152 1126/1149 1124/1147 \r
+f 1123/1148 1125/1150 1099/1121 1097/1119 \r
+f 1121/1146 1123/1148 1097/1119 1095/1117 \r
+f 1119/1144 1121/1146 1095/1117 1093/1115 \r
+f 1117/1141 1119/1144 1093/1115 1091/1112 \r
+f 1115/1142 1117/1141 1091/1112 1089/1111 \r
+f 1112/1136 1114/1138 1087/1109 1086/1107 \r
+f 1110/1134 1112/1136 1086/1107 1084/1105 \r
+f 1108/1132 1110/1134 1084/1105 1082/1104 \r
+f 1105/1128 1108/1132 1082/1104 1081/1103 \r
+f 1127/1151 1106/1129 1104/1127 1103/1126 \r
+f 1125/1150 1103/1126 1101/1123 1099/1121 \r
+f 1098/1122 1100/1124 1074/1095 1072/1093 \r
+f 1096/1120 1098/1122 1072/1093 1070/1091 \r
+f 1094/1118 1096/1120 1070/1091 1068/1089 \r
+f 1092/1116 1094/1118 1068/1089 1066/1087 \r
+f 1090/1113 1092/1116 1066/1087 1064/1084 \r
+f 1088/1114 1090/1113 1064/1084 1062/1083 \r
+f 1085/1108 2585/1110 2560/1081 1059/1079 \r
+f 1083/1106 1085/1108 1059/1079 1057/1078 \r
+f 1080/1102 1083/1106 1057/1078 1056/1077 \r
+f 1102/1125 1081/1103 1079/1101 1078/1100 \r
+f 1100/1124 1078/1100 1076/1097 1074/1095 \r
+f 1073/1096 1075/1098 1049/1069 1047/1067 \r
+f 1071/1094 1073/1096 1047/1067 1045/1065 \r
+f 1069/1092 1071/1094 1045/1065 1043/1063 \r
+f 1067/1090 1069/1092 1043/1063 1041/1061 \r
+f 1065/1088 1067/1090 1041/1061 1039/1059 \r
+f 1063/1085 1065/1088 1039/1059 1037/1056 \r
+f 1061/1086 1063/1085 1037/1056 1035/1055 \r
+f 1058/1080 1060/1082 2535/1053 1032/1052 \r
+f 1055/1076 1058/1080 1032/1052 1031/1051 \r
+f 1077/1099 1056/1077 1054/1075 1053/1074 \r
+f 1075/1098 1053/1074 1051/1071 1049/1069 \r
+f 1048/1070 1050/1072 1213/1043 1214/1042 \r
+f 1026/1046 1213/1043 1050/1072 1028/1048 \r
+f 1046/1068 1048/1070 1214/1042 1215/1243 \r
+f 1018/1244 1215/1243 1214/1042 1017/1041 \r
+f 1044/1066 1046/1068 1215/1243 1216/1245 \r
+f 1019/1246 1216/1245 1215/1243 1018/1244 \r
+f 1042/1064 1044/1066 1216/1245 1217/1247 \r
+f 1020/1248 1217/1247 1216/1245 1019/1246 \r
+f 1040/1062 1042/1064 1217/1247 1218/1249 \r
+f 1020/1248 1021/1250 1218/1249 1217/1247 \r
+f 1038/1060 1040/1062 1218/1249 1219/1251 \r
+f 1021/1250 1022/6099 1219/1251 1218/1249 \r
+f 1036/1057 1038/1060 1219/1251 1220/1252 \r
+f 1023/6098 1220/1252 1219/1251 1022/6099 \r
+f 1034/1058 1036/1057 1220/1252 1221/1253 \r
+f 1024/1254 1221/1253 1220/1252 1023/6098 \r
+f 1030/1050 1033/1054 2521/1037 1025/1036 \r
+f 1052/1073 1031/1051 1029/1049 1028/1048 \r
+f 1016/1040 1213/1043 1026/1046 1015/1045 \r
+f 1014/1044 1027/1047 1025/1036 1012/1039 \r
+f 1228/1257 1229/1258 1248/1255 1249/1256 \r
+f 1249/1256 1250/1260 1227/1259 1228/1257 \r
+f 1250/1260 1251/1262 1226/1261 1227/1259 \r
+f 1251/1262 1252/1264 1225/1263 1226/1261 \r
+f 1252/1264 1253/1266 1224/1265 1225/1263 \r
+f 1253/1266 1254/1268 1223/1267 1224/1265 \r
+f 1222/1270 1223/1267 1254/1268 2729/1269 \r
+f 1256/1273 1233/1274 1234/1271 1255/1272 \r
+f 1232/1276 1233/1274 1256/1273 1257/1275 \r
+f 1257/1275 1258/1278 1231/1277 1232/1276 \r
+f 1258/1278 1259/1280 1230/1279 1231/1277 \r
+f 1259/1280 1258/1278 1260/1281 1261/1282 \r
+f 1248/1255 1259/1280 1261/1282 1262/1283 \r
+f 1262/1283 1261/1282 1263/1284 1264/1285 \r
+f 1265/1287 1262/1283 1264/1285 1266/1286 \r
+f 1267/1289 1265/1287 1266/1286 1268/1288 \r
+f 1269/1291 1267/1289 1268/1288 1270/1290 \r
+f 1271/1293 1269/1291 1270/1290 1272/1292 \r
+f 1273/1295 1271/1293 1272/1292 1274/1294 \r
+f 1275/1297 1273/1295 1274/1294 1276/1296 \r
+f 1277/1299 1275/1297 1276/1296 1278/1298 \r
+f 1281/1302 1279/1303 1280/1300 1282/1301 \r
+f 1283/1305 1281/1302 1282/1301 1284/1304 \r
+f 1260/1281 1283/1305 1284/1304 1285/1306 \r
+f 1285/1306 1284/1304 1286/1307 1287/1308 \r
+f 1263/1284 1285/1306 1287/1308 1288/1309 \r
+f 1288/1309 1287/1308 1289/1310 1290/1311 \r
+f 1291/1313 1288/1309 1290/1311 1292/1312 \r
+f 1293/1315 1291/1313 1292/1312 1294/1314 \r
+f 1295/1317 1293/1315 1294/1314 1296/1316 \r
+f 1297/1319 1295/1317 1296/1316 1298/1318 \r
+f 1299/1321 1297/1319 1298/1318 1300/1320 \r
+f 1301/1323 1299/1321 1300/1320 1302/1322 \r
+f 1303/1325 1301/1323 1302/1322 1304/1324 \r
+f 1305/1327 1303/1325 1304/1324 1306/1326 \r
+f 1309/1330 1307/1331 1308/1328 1310/1329 \r
+f 1286/1307 1309/1330 1310/1329 1311/1332 \r
+f 1311/1332 1310/1329 1312/1333 1313/1334 \r
+f 1289/1310 1311/1332 1313/1334 1314/1335 \r
+f 1314/1335 1313/1334 1315/1336 1316/1337 \r
+f 1317/1339 1314/1335 1316/1337 1318/1338 \r
+f 1319/1341 1317/1339 1318/1338 1320/1340 \r
+f 1321/1343 1319/1341 1320/1340 1322/1342 \r
+f 1323/1345 1321/1343 1322/1342 1324/1344 \r
+f 1325/1347 1323/1345 1324/1344 1326/1346 \r
+f 1327/1349 1325/1347 1326/1346 1328/1348 \r
+f 1329/1351 1327/1349 1328/1348 1330/1350 \r
+f 1331/1353 1329/1351 1330/1350 1332/1352 \r
+f 1333/1355 1331/1353 1332/1352 1334/1354 \r
+f 1312/1333 1335/1358 1336/1356 1337/1357 \r
+f 1337/1357 1336/1356 1338/1359 1339/1360 \r
+f 1315/1336 1337/1357 1339/1360 1340/1361 \r
+f 1340/1361 1339/1360 1341/1362 1342/1363 \r
+f 1343/1365 1340/1361 1342/1363 1344/1364 \r
+f 1345/1367 1343/1365 1344/1364 1346/1366 \r
+f 1347/1369 1345/1367 1346/1366 1348/1368 \r
+f 1349/1371 1347/1369 1348/1368 1350/1370 \r
+f 1351/1373 1349/1371 1350/1370 1352/1372 \r
+f 1353/1375 1351/1373 1352/1372 1354/1374 \r
+f 1355/1377 1353/1375 1354/1374 1356/1376 \r
+f 1357/1379 1355/1377 1356/1376 1358/1378 \r
+f 1359/1381 1357/1379 1358/1378 1360/1380 \r
+f 1361/1383 1359/1381 1360/1380 2826/1382 \r
+f 1341/1362 1362/1386 1363/1384 1364/1385 \r
+f 1364/1385 1363/1384 1365/1387 1366/1388 \r
+f 1367/1390 1364/1385 1366/1388 1368/1389 \r
+f 1369/1392 1367/1390 1368/1389 1370/1391 \r
+f 1371/1394 1369/1392 1370/1391 1372/1393 \r
+f 1373/1396 1371/1394 1372/1393 1374/1395 \r
+f 1375/1398 1373/1396 1374/1395 1376/1397 \r
+f 1377/1400 1375/1398 1376/1397 1378/1399 \r
+f 1379/1402 1377/1400 1378/1399 1380/1401 \r
+f 1381/1404 1379/1402 1380/1401 1382/1403 \r
+f 1383/1406 1381/1404 1382/1403 1384/1405 \r
+f 1385/1408 1383/1406 1384/1405 1386/1407 \r
+f 2849/1410 1385/1408 1386/1407 1387/1409 \r
+f 1390/1413 1388/1414 1389/1411 1391/1412 \r
+f 1392/1416 1390/1413 1391/1412 1393/1415 \r
+f 1394/1418 1392/1416 1393/1415 1395/1417 \r
+f 1396/1420 1394/1418 1395/1417 1397/1419 \r
+f 1398/1422 1396/1420 1397/1419 1399/1421 \r
+f 1400/1424 1398/1422 1399/1421 1401/1423 \r
+f 1402/1426 1400/1424 1401/1423 1403/1425 \r
+f 1404/1428 1402/1426 1403/1425 1405/1427 \r
+f 1406/1430 1404/1428 1405/1427 1407/1429 \r
+f 1408/1432 1406/1430 1407/1429 1409/1431 \r
+f 1410/1434 1408/1432 1409/1431 1411/1433 \r
+f 1412/1436 1410/1434 1411/1433 2872/1435 \r
+f 1415/1439 1413/1440 1414/1437 1416/1438 \r
+f 1417/1442 1415/1439 1416/1438 1418/1441 \r
+f 1419/1444 1417/1442 1418/1441 1420/1443 \r
+f 1421/1446 1419/1444 1420/1443 1422/1445 \r
+f 1423/1448 1421/1446 1422/1445 1424/1447 \r
+f 1425/1450 1423/1448 1424/1447 1426/1449 \r
+f 1427/1452 1425/1450 1426/1449 1428/1451 \r
+f 1429/1454 1427/1452 1428/1451 1430/1453 \r
+f 1431/1456 1429/1454 1430/1453 1432/1455 \r
+f 1433/1458 1431/1456 1432/1455 1434/1457 \r
+f 1435/1460 1433/1458 1434/1457 1436/1459 \r
+f 2895/1462 1435/1460 1436/1459 1437/1461 \r
+f 1440/1465 1438/1466 1439/1463 1441/1464 \r
+f 1442/1468 1440/1465 1441/1464 1443/1467 \r
+f 1444/1470 1442/1468 1443/1467 1445/1469 \r
+f 1446/1472 1444/1470 1445/1469 1447/1471 \r
+f 1448/1474 1446/1472 1447/1471 1449/1473 \r
+f 1450/1476 1448/1474 1449/1473 1451/1475 \r
+f 1452/1478 1450/1476 1451/1475 1453/1477 \r
+f 1454/1480 1452/1478 1453/1477 1455/1479 \r
+f 1456/1482 1454/1480 1455/1479 1457/1481 \r
+f 1458/1484 1456/1482 1457/1481 1459/1483 \r
+f 1460/1486 1458/1484 1459/1483 1461/1485 \r
+f 1462/1488 1460/1486 1461/1485 2918/1487 \r
+f 1465/1491 1463/1492 1464/1489 1466/1490 \r
+f 1467/1494 1465/1491 1466/1490 1468/1493 \r
+f 1469/1496 1467/1494 1468/1493 1470/1495 \r
+f 1471/1498 1469/1496 1470/1495 1472/1497 \r
+f 1473/1500 1471/1498 1472/1497 1474/1499 \r
+f 1475/1502 1473/1500 1474/1499 1476/1501 \r
+f 1477/1504 1475/1502 1476/1501 1478/1503 \r
+f 1479/1506 1477/1504 1478/1503 1480/1505 \r
+f 1481/1508 1479/1506 1480/1505 1482/1507 \r
+f 1483/1510 1481/1508 1482/1507 1484/1509 \r
+f 1485/1512 1483/1510 1484/1509 1486/1511 \r
+f 2941/1514 1485/1512 1486/1511 2942/1513 \r
+f 1489/1517 1487/1518 1488/1515 1490/1516 \r
+f 1491/1520 1489/1517 1490/1516 1492/1519 \r
+f 1493/1522 1491/1520 1492/1519 1494/1521 \r
+f 1495/1524 1493/1522 1494/1521 1496/1523 \r
+f 1497/1526 1495/1524 1496/1523 1498/1525 \r
+f 1499/1528 1497/1526 1498/1525 1500/1527 \r
+f 1501/1530 1499/1528 1500/1527 1502/1529 \r
+f 1503/1532 1501/1530 1502/1529 1504/1531 \r
+f 1505/1534 1503/1532 1504/1531 1506/1533 \r
+f 1507/1536 1505/1534 1506/1533 1508/1535 \r
+f 1509/1538 1507/1536 1508/1535 1510/1537 \r
+f 1511/1540 1509/1538 1510/1537 2965/1539 \r
+f 1513/1543 2967/1544 1512/1541 1514/1542 \r
+f 1515/1546 1513/1543 1514/1542 1516/1545 \r
+f 1517/1548 1515/1546 1516/1545 1518/1547 \r
+f 1519/1550 1517/1548 1518/1547 1520/1549 \r
+f 1521/1552 1519/1550 1520/1549 1522/1551 \r
+f 1523/1554 1521/1552 1522/1551 1524/1553 \r
+f 1525/1556 1523/1554 1524/1553 1526/1555 \r
+f 1527/1558 1525/1556 1526/1555 1528/1557 \r
+f 1529/1560 1527/1558 1528/1557 1530/1559 \r
+f 1531/1562 1529/1560 1530/1559 1532/1561 \r
+f 1533/1564 1531/1562 1532/1561 1534/1563 \r
+f 2989/1566 1533/1564 1534/1563 1535/1565 \r
+f 1236/1567 1235/1568 1535/1565 1534/1563 \r
+f 1533/1564 2989/1566 2965/1539 1510/1537 \r
+f 1237/1569 1236/1567 1534/1563 1532/1561 \r
+f 1531/1562 1533/1564 1510/1537 1508/1535 \r
+f 1238/1570 1237/1569 1532/1561 1530/1559 \r
+f 1529/1560 1531/1562 1508/1535 1506/1533 \r
+f 1239/1571 1238/1570 1530/1559 1528/1557 \r
+f 1527/1558 1529/1560 1506/1533 1504/1531 \r
+f 1240/1572 1239/1571 1528/1557 1526/1555 \r
+f 1241/1573 1240/1572 1526/1555 1524/1553 \r
+f 1525/1556 1527/1558 1504/1531 1502/1529 \r
+f 1523/1554 1525/1556 1502/1529 1500/1527 \r
+f 1242/1574 1241/1573 1524/1553 1522/1551 \r
+f 1521/1552 1523/1554 1500/1527 1498/1525 \r
+f 1243/1575 1242/1574 1522/1551 1520/1549 \r
+f 1243/1575 1520/1549 1518/1547 1244/1576 \r
+f 1519/1550 1521/1552 1498/1525 1496/1523 \r
+f 1517/1548 1519/1550 1496/1523 1494/1521 \r
+f 1245/1577 1244/1576 1518/1547 1516/1545 \r
+f 1515/1546 1517/1548 1494/1521 1492/1519 \r
+f 1246/1578 1245/1577 1516/1545 1514/1542 \r
+f 1513/1543 1515/1546 1492/1519 1490/1516 \r
+f 1247/1579 1246/1578 1514/1542 1512/1541 \r
+f 2967/1544 1513/1543 1490/1516 1488/1515 \r
+f 1509/1538 1511/1540 2942/1513 1486/1511 \r
+f 1507/1536 1509/1538 1486/1511 1484/1509 \r
+f 1505/1534 1507/1536 1484/1509 1482/1507 \r
+f 1503/1532 1505/1534 1482/1507 1480/1505 \r
+f 1501/1530 1503/1532 1480/1505 1478/1503 \r
+f 1499/1528 1501/1530 1478/1503 1476/1501 \r
+f 1497/1526 1499/1528 1476/1501 1474/1499 \r
+f 1495/1524 1497/1526 1474/1499 1472/1497 \r
+f 1493/1522 1495/1524 1472/1497 1470/1495 \r
+f 1491/1520 1493/1522 1470/1495 1468/1493 \r
+f 1489/1517 1491/1520 1468/1493 1466/1490 \r
+f 1487/1518 1489/1517 1466/1490 1464/1489 \r
+f 1485/1512 2941/1514 2918/1487 1461/1485 \r
+f 1483/1510 1485/1512 1461/1485 1459/1483 \r
+f 1481/1508 1483/1510 1459/1483 1457/1481 \r
+f 1479/1506 1481/1508 1457/1481 1455/1479 \r
+f 1477/1504 1479/1506 1455/1479 1453/1477 \r
+f 1475/1502 1477/1504 1453/1477 1451/1475 \r
+f 1473/1500 1475/1502 1451/1475 1449/1473 \r
+f 1471/1498 1473/1500 1449/1473 1447/1471 \r
+f 1469/1496 1471/1498 1447/1471 1445/1469 \r
+f 1467/1494 1469/1496 1445/1469 1443/1467 \r
+f 1465/1491 1467/1494 1443/1467 1441/1464 \r
+f 1463/1492 1465/1491 1441/1464 1439/1463 \r
+f 1460/1486 1462/1488 1437/1461 1436/1459 \r
+f 1458/1484 1460/1486 1436/1459 1434/1457 \r
+f 1456/1482 1458/1484 1434/1457 1432/1455 \r
+f 1454/1480 1456/1482 1432/1455 1430/1453 \r
+f 1452/1478 1454/1480 1430/1453 1428/1451 \r
+f 1450/1476 1452/1478 1428/1451 1426/1449 \r
+f 1448/1474 1450/1476 1426/1449 1424/1447 \r
+f 1446/1472 1448/1474 1424/1447 1422/1445 \r
+f 1444/1470 1446/1472 1422/1445 1420/1443 \r
+f 1442/1468 1444/1470 1420/1443 1418/1441 \r
+f 1440/1465 1442/1468 1418/1441 1416/1438 \r
+f 1438/1466 1440/1465 1416/1438 1414/1437 \r
+f 1435/1460 2895/1462 2872/1435 1411/1433 \r
+f 1433/1458 1435/1460 1411/1433 1409/1431 \r
+f 1431/1456 1433/1458 1409/1431 1407/1429 \r
+f 1429/1454 1431/1456 1407/1429 1405/1427 \r
+f 1427/1452 1429/1454 1405/1427 1403/1425 \r
+f 1425/1450 1427/1452 1403/1425 1401/1423 \r
+f 1423/1448 1425/1450 1401/1423 1399/1421 \r
+f 1421/1446 1423/1448 1399/1421 1397/1419 \r
+f 1419/1444 1421/1446 1397/1419 1395/1417 \r
+f 1417/1442 1419/1444 1395/1417 1393/1415 \r
+f 1415/1439 1417/1442 1393/1415 1391/1412 \r
+f 1413/1440 1415/1439 1391/1412 1389/1411 \r
+f 1410/1434 1412/1436 1387/1409 1386/1407 \r
+f 1408/1432 1410/1434 1386/1407 1384/1405 \r
+f 1406/1430 1408/1432 1384/1405 1382/1403 \r
+f 1404/1428 1406/1430 1382/1403 1380/1401 \r
+f 1402/1426 1404/1428 1380/1401 1378/1399 \r
+f 1400/1424 1402/1426 1378/1399 1376/1397 \r
+f 1398/1422 1400/1424 1376/1397 1374/1395 \r
+f 1396/1420 1398/1422 1374/1395 1372/1393 \r
+f 1394/1418 1396/1420 1372/1393 1370/1391 \r
+f 1392/1416 1394/1418 1370/1391 1368/1389 \r
+f 1390/1413 1392/1416 1368/1389 1366/1388 \r
+f 1388/1414 1390/1413 1366/1388 1365/1387 \r
+f 1385/1408 2849/1410 2826/1382 1360/1380 \r
+f 1383/1406 1385/1408 1360/1380 1358/1378 \r
+f 1381/1404 1383/1406 1358/1378 1356/1376 \r
+f 1379/1402 1381/1404 1356/1376 1354/1374 \r
+f 1377/1400 1379/1402 1354/1374 1352/1372 \r
+f 1375/1398 1377/1400 1352/1372 1350/1370 \r
+f 1373/1396 1375/1398 1350/1370 1348/1368 \r
+f 1371/1394 1373/1396 1348/1368 1346/1366 \r
+f 1369/1392 1371/1394 1346/1366 1344/1364 \r
+f 1367/1390 1369/1392 1344/1364 1342/1363 \r
+f 1364/1385 1367/1390 1342/1363 1341/1362 \r
+f 1359/1381 1361/1383 1334/1354 1332/1352 \r
+f 1357/1379 1359/1381 1332/1352 1330/1350 \r
+f 1355/1377 1357/1379 1330/1350 1328/1348 \r
+f 1353/1375 1355/1377 1328/1348 1326/1346 \r
+f 1351/1373 1353/1375 1326/1346 1324/1344 \r
+f 1349/1371 1351/1373 1324/1344 1322/1342 \r
+f 1347/1369 1349/1371 1322/1342 1320/1340 \r
+f 1345/1367 1347/1369 1320/1340 1318/1338 \r
+f 1343/1365 1345/1367 1318/1338 1316/1337 \r
+f 1340/1361 1343/1365 1316/1337 1315/1336 \r
+f 1362/1386 1341/1362 1339/1360 1338/1359 \r
+f 1331/1353 1333/1355 1306/1326 1304/1324 \r
+f 1329/1351 1331/1353 1304/1324 1302/1322 \r
+f 1327/1349 1329/1351 1302/1322 1300/1320 \r
+f 1325/1347 1327/1349 1300/1320 1298/1318 \r
+f 1323/1345 1325/1347 1298/1318 1296/1316 \r
+f 1321/1343 1323/1345 1296/1316 1294/1314 \r
+f 1319/1341 1321/1343 1294/1314 1292/1312 \r
+f 1317/1339 1319/1341 1292/1312 1290/1311 \r
+f 1314/1335 1317/1339 1290/1311 1289/1310 \r
+f 1337/1357 1315/1336 1313/1334 1312/1333 \r
+f 1335/1358 1312/1333 1310/1329 1308/1328 \r
+f 1307/1331 1309/1330 1282/1301 1280/1300 \r
+f 1303/1325 1305/1327 1278/1298 1276/1296 \r
+f 1301/1323 1303/1325 1276/1296 1274/1294 \r
+f 1299/1321 1301/1323 1274/1294 1272/1292 \r
+f 1297/1319 1299/1321 1272/1292 1270/1290 \r
+f 1295/1317 1297/1319 1270/1290 1268/1288 \r
+f 1293/1315 1295/1317 1268/1288 1266/1286 \r
+f 1291/1313 1293/1315 1266/1286 1264/1285 \r
+f 1288/1309 1291/1313 1264/1285 1263/1284 \r
+f 1311/1332 1289/1310 1287/1308 1286/1307 \r
+f 1309/1330 1286/1307 1284/1304 1282/1301 \r
+f 1281/1302 1283/1305 1257/1275 1256/1273 \r
+f 1279/1303 1281/1302 1256/1273 1255/1272 \r
+f 1275/1297 1277/1299 2729/1269 1254/1268 \r
+f 1273/1295 1275/1297 1254/1268 1253/1266 \r
+f 1271/1293 1273/1295 1253/1266 1252/1264 \r
+f 1269/1291 1271/1293 1252/1264 1251/1262 \r
+f 1267/1289 1269/1291 1251/1262 1250/1260 \r
+f 1265/1287 1267/1289 1250/1260 1249/1256 \r
+f 1262/1283 1265/1287 1249/1256 1248/1255 \r
+f 1285/1306 1263/1284 1261/1282 1260/1281 \r
+f 1283/1305 1260/1281 1258/1278 1257/1275 \r
+f 1259/1280 1248/1255 1229/1258 1230/1279 \r
+f 189/196 190/204 1014/1580 181/189 \r
+f 1012/1581 181/189 1014/1580 \r
+f 190/204 1015/1582 1014/1580 \r
+f 1016/1584 191/206 192/208 1017/1583 \r
+f 192/208 193/210 1018/1585 1017/1583 \r
+f 1019/1586 194/212 1020/1587 \r
+f 1020/1587 471/496 1021/1588 \r
+f 1022/1035 1021/1588 456/484 \r
+f 457/466 1023/1034 456/484 \r
+f 436/444 1223/1589 447/455 \r
+f 425/432 424/431 1228/1590 436/444 \r
+f 424/431 423/430 1229/1591 1228/1590 \r
+f 1234/1592 1233/1593 446/453 \r
+f 444/451 1236/1594 445/452 \r
+f 1236/1594 1237/1595 445/452 \r
+f 724/737 1242/1596 1243/1597 \r
+f 735/748 1246/1598 1247/1599 \r
+f 457/466 458/465 1023/1034 \r
+f 1021/1588 471/496 472/485 \r
+f 1020/1587 194/212 471/496 \r
+f 1019/1586 1018/1585 193/210 \r
+f 1019/1586 193/210 194/212 \r
+f 458/465 1024/1600 1023/1034 \r
+f 1021/1588 472/485 456/484 \r
+f 1016/1584 1015/1582 190/204 191/206 \r
+f 1012/1581 1013/1601 182/188 \r
+f 1012/1581 182/188 181/189 \r
+f 436/444 1228/1590 1227/1602 \r
+f 436/444 1227/1602 1226/1603 \r
+f 436/444 1226/1603 1225/1604 \r
+f 436/444 1225/1604 1224/1605 \r
+f 436/444 1224/1605 1223/1589 \r
+f 1223/1589 1222/1606 447/455 \r
+f 423/430 435/442 1229/1591 \r
+f 1230/1607 1229/1591 435/442 \r
+f 1231/1608 1230/1607 435/442 \r
+f 1232/1609 1231/1608 435/442 \r
+f 446/453 1233/1593 1232/1609 435/442 \r
+f 725/738 1243/1597 1244/1610 \r
+f 725/738 1244/1610 1245/1611 \r
+f 725/738 724/737 1243/1597 \r
+f 725/738 1245/1611 1246/1598 735/748 \r
+f 1242/1596 724/737 723/736 1241/1612 \r
+f 723/736 1240/1613 1241/1612 \r
+f 723/736 445/452 1239/1614 1240/1613 \r
+f 1238/1615 1239/1614 445/452 \r
+f 1237/1595 1238/1615 445/452 \r
+f 455/462 1235/1616 1236/1594 \r
+f 444/451 455/462 1236/1594 \r
+f 1538/1618 1537/2 1536/1 1539/1617 \r
+f 1539/1617 1536/1 4/5 1540/1619 \r
+f 1540/1619 4/5 6/7 1541/1620 \r
+f 1541/1620 6/7 8/9 1542/1621 \r
+f 1542/1621 8/9 10/11 1543/1622 \r
+f 1543/1622 10/11 12/13 1544/1623 \r
+f 1545/1624 1546/1625 1538/1618 1539/1617 \r
+f 1547/1626 1545/1624 1539/1617 1540/1619 \r
+f 1547/1626 1540/1619 1541/1620 1548/1627 \r
+f 1548/1627 1541/1620 1542/1621 1549/1628 \r
+f 1549/1628 1542/1621 1543/1622 1550/1629 \r
+f 1550/1629 1543/1622 1544/1623 1551/1630 \r
+f 1552/1631 1553/1632 1546/1625 1545/1624 \r
+f 1554/1633 1552/1631 1545/1624 1547/1626 \r
+f 1554/1633 1547/1626 1548/1627 1555/1634 \r
+f 1555/1634 1548/1627 1549/1628 1556/1635 \r
+f 1556/1635 1549/1628 1550/1629 1557/1636 \r
+f 1557/1636 1550/1629 1551/1630 1558/1637 \r
+f 1559/1638 1560/1639 1553/1632 1552/1631 \r
+f 1561/1640 1559/1638 1552/1631 1554/1633 \r
+f 1561/1640 1554/1633 1555/1634 1562/1641 \r
+f 1562/1641 1555/1634 1556/1635 1563/1642 \r
+f 1563/1642 1556/1635 1557/1636 1564/1643 \r
+f 1564/1643 1557/1636 1558/1637 1565/1644 \r
+f 1566/1645 1567/1646 1560/1639 1559/1638 \r
+f 1566/1645 1559/1638 1561/1640 1568/1647 \r
+f 1568/1647 1561/1640 1562/1641 1569/1648 \r
+f 1569/1648 1562/1641 1563/1642 1570/1649 \r
+f 1570/1649 1563/1642 1564/1643 1571/1650 \r
+f 1571/1650 1564/1643 1565/1644 1572/1651 \r
+f 1573/1652 1574/1653 1567/1646 1566/1645 \r
+f 1573/1652 1566/1645 1568/1647 1575/1654 \r
+f 1575/1654 1568/1647 1569/1648 1576/1655 \r
+f 1576/1655 1569/1648 1570/1649 1577/1656 \r
+f 1577/1656 1570/1649 1571/1650 1578/1657 \r
+f 1578/1657 1571/1650 1572/1651 1579/1658 \r
+f 1574/1653 1573/1652 1580/1659 1581/1660 \r
+f 1573/1652 1575/1654 1582/1661 1580/1659 \r
+f 1575/1654 1576/1655 1583/1662 1582/1661 \r
+f 1576/1655 1577/1656 1584/1663 1583/1662 \r
+f 1577/1656 1578/1657 1585/1664 1584/1663 \r
+f 1578/1657 1579/1658 1586/1665 1585/1664 \r
+f 1581/1660 1580/1659 1587/1666 1588/1667 \r
+f 1580/1659 1582/1661 1589/1668 1587/1666 \r
+f 1582/1661 1583/1662 1590/1669 1589/1668 \r
+f 1583/1662 1584/1663 1591/1670 1590/1669 \r
+f 1584/1663 1585/1664 1592/1671 1591/1670 \r
+f 1585/1664 1586/1665 1593/1672 1592/1671 \r
+f 1588/1667 1587/1666 1594/1673 1595/1674 \r
+f 1587/1666 1589/1668 1596/1675 1594/1673 \r
+f 1589/1668 1590/1669 1597/1676 1596/1675 \r
+f 1590/1669 1591/1670 1598/1677 1597/1676 \r
+f 1591/1670 1592/1671 1599/1678 1598/1677 \r
+f 1592/1671 1593/1672 1600/1679 1599/1678 \r
+f 1595/1674 1594/1673 1601/1680 1602/1681 \r
+f 1594/1673 1596/1675 1603/1682 1601/1680 \r
+f 1596/1675 1597/1676 1604/1683 1603/1682 \r
+f 1597/1676 1598/1677 1605/1684 1604/1683 \r
+f 1598/1677 1599/1678 1606/1685 1605/1684 \r
+f 1599/1678 1600/1679 1607/1686 1606/1685 \r
+f 1608/1687 1609/1688 1602/1681 1601/1680 \r
+f 1601/1680 1603/1682 1610/1689 1608/1687 \r
+f 1603/1682 1604/1683 1611/1690 1610/1689 \r
+f 1604/1683 1605/1684 1612/1691 1611/1690 \r
+f 1605/1684 1606/1685 1613/1692 1612/1691 \r
+f 1606/1685 1607/1686 1614/1693 1613/1692 \r
+f 1609/1688 1608/1687 1615/1694 1616/1695 \r
+f 1608/1687 1610/1689 1617/1696 1615/1694 \r
+f 1610/1689 1611/1690 1618/1697 1617/1696 \r
+f 1611/1690 1612/1691 1619/1698 1618/1697 \r
+f 1612/1691 1613/1692 1620/1699 1619/1698 \r
+f 1613/1692 1614/1693 1621/1700 1620/1699 \r
+f 1622/1701 1623/1702 1616/1695 1615/1694 \r
+f 1624/1703 1622/1701 1615/1694 1617/1696 \r
+f 1625/1704 1624/1703 1617/1696 1618/1697 \r
+f 1626/1705 1625/1704 1618/1697 1619/1698 \r
+f 1627/1706 1626/1705 1619/1698 1620/1699 \r
+f 1627/1706 1620/1699 1621/1700 1628/1707 \r
+f 1629/1708 1630/1709 1623/1702 1622/1701 \r
+f 1631/1710 1629/1708 1622/1701 1624/1703 \r
+f 1632/1711 1631/1710 1624/1703 1625/1704 \r
+f 1633/1712 1632/1711 1625/1704 1626/1705 \r
+f 1634/1713 1633/1712 1626/1705 1627/1706 \r
+f 1635/1714 1634/1713 1627/1706 1628/1707 \r
+f 1636/1715 1637/1716 1630/1709 1629/1708 \r
+f 1638/1717 1636/1715 1629/1708 1631/1710 \r
+f 1639/1718 1638/1717 1631/1710 1632/1711 \r
+f 1640/1719 1639/1718 1632/1711 1633/1712 \r
+f 1641/1720 1640/1719 1633/1712 1634/1713 \r
+f 1642/1721 1641/1720 1634/1713 1635/1714 \r
+f 1643/1722 1644/1723 1637/1716 1636/1715 \r
+f 1645/1724 1643/1722 1636/1715 1638/1717 \r
+f 1646/1725 1645/1724 1638/1717 1639/1718 \r
+f 1647/1726 1646/1725 1639/1718 1640/1719 \r
+f 1648/1727 1647/1726 1640/1719 1641/1720 \r
+f 1649/1728 1648/1727 1641/1720 1642/1721 \r
+f 1650/1729 1651/1730 1644/1723 1643/1722 \r
+f 1652/1731 1650/1729 1643/1722 1645/1724 \r
+f 1653/1732 1652/1731 1645/1724 1646/1725 \r
+f 1654/1733 1653/1732 1646/1725 1647/1726 \r
+f 1655/1734 1654/1733 1647/1726 1648/1727 \r
+f 1656/1735 1655/1734 1648/1727 1649/1728 \r
+f 1657/1736 1658/1737 1651/1730 1650/1729 \r
+f 1659/1738 1657/1736 1650/1729 1652/1731 \r
+f 1660/1739 1659/1738 1652/1731 1653/1732 \r
+f 1661/1740 1660/1739 1653/1732 1654/1733 \r
+f 1662/1741 1661/1740 1654/1733 1655/1734 \r
+f 1663/1742 1662/1741 1655/1734 1656/1735 \r
+f 1664/1743 1665/1744 1658/1737 1657/1736 \r
+f 1666/1745 1664/1743 1657/1736 1659/1738 \r
+f 1667/1746 1666/1745 1659/1738 1660/1739 \r
+f 1668/1747 1667/1746 1660/1739 1661/1740 \r
+f 1669/1748 1668/1747 1661/1740 1662/1741 \r
+f 1670/1749 1669/1748 1662/1741 1663/1742 \r
+f 1671/1750 1672/1751 1665/1744 1664/1743 \r
+f 1673/1752 1671/1750 1664/1743 1666/1745 \r
+f 1674/1753 1673/1752 1666/1745 1667/1746 \r
+f 1675/1754 1674/1753 1667/1746 1668/1747 \r
+f 1676/1755 1675/1754 1668/1747 1669/1748 \r
+f 1677/1756 1676/1755 1669/1748 1670/1749 \r
+f 1678/1757 1679/1758 1672/1751 1671/1750 \r
+f 1680/1759 1678/1757 1671/1750 1673/1752 \r
+f 1681/1760 1680/1759 1673/1752 1674/1753 \r
+f 1682/1761 1681/1760 1674/1753 1675/1754 \r
+f 1683/1762 1682/1761 1675/1754 1676/1755 \r
+f 1684/1763 1683/1762 1676/1755 1677/1756 \r
+f 1685/1764 1686/1765 1679/1758 1678/1757 \r
+f 1687/1766 1685/1764 1678/1757 1680/1759 \r
+f 1688/1767 1687/1766 1680/1759 1681/1760 \r
+f 1689/1768 1688/1767 1681/1760 1682/1761 \r
+f 1690/1769 1689/1768 1682/1761 1683/1762 \r
+f 1691/1770 1690/1769 1683/1762 1684/1763 \r
+f 1692/1771 1693/1772 1686/1765 1685/1764 \r
+f 1694/1773 1692/1771 1685/1764 1687/1766 \r
+f 1695/1774 1694/1773 1687/1766 1688/1767 \r
+f 1696/1775 1695/1774 1688/1767 1689/1768 \r
+f 1697/1776 1696/1775 1689/1768 1690/1769 \r
+f 1698/1777 1697/1776 1690/1769 1691/1770 \r
+f 167/6424 168/6425 1693/1772 1692/1771 \r
+f 169/6426 167/6424 1692/1771 1694/1773 \r
+f 170/6427 169/6426 1694/1773 1695/1774 \r
+f 171/6428 170/6427 1695/1774 1696/1775 \r
+f 172/6429 171/6428 1696/1775 1697/1776 \r
+f 173/6430 172/6429 1697/1776 1698/1777 \r
+f 1544/1623 12/13 175/176 1699/1778 \r
+f 1699/1778 175/176 1700/178 1701/1779 \r
+f 1701/1779 1700/178 1702/180 1703/1780 \r
+f 1703/1780 1702/180 1704/182 1705/1781 \r
+f 1705/1781 1704/182 1706/184 1707/1782 \r
+f 1707/1782 1706/184 1708/186 1709/1783 \r
+f 1709/1783 1708/186 182/188 1710/1784 \r
+f 1551/1630 1544/1623 1699/1778 1711/1785 \r
+f 1711/1785 1699/1778 1701/1779 1712/1786 \r
+f 1712/1786 1701/1779 1703/1780 1713/1787 \r
+f 1713/1787 1703/1780 1705/1781 1714/1788 \r
+f 1714/1788 1705/1781 1707/1782 1715/1789 \r
+f 1715/1789 1707/1782 1709/1783 1716/1790 \r
+f 1716/1790 1709/1783 1710/1784 1717/1791 \r
+f 1558/1637 1551/1630 1711/1785 1718/1792 \r
+f 1718/1792 1711/1785 1712/1786 1719/1793 \r
+f 1719/1793 1712/1786 1713/1787 1720/1794 \r
+f 1720/1794 1713/1787 1714/1788 1721/1795 \r
+f 1721/1795 1714/1788 1715/1789 1722/1796 \r
+f 1722/1796 1715/1789 1716/1790 1723/1797 \r
+f 1723/1797 1716/1790 1717/1791 1724/1798 \r
+f 1724/1798 1717/1791 1725/1799 1726/1800 \r
+f 1726/1800 1725/1799 1727/1801 1728/1802 \r
+f 1728/1802 1727/1801 1729/1803 1730/1804 \r
+f 1730/1804 1729/1803 1731/1805 1732/1806 \r
+f 1732/1806 1731/1805 1733/1807 1734/1808 \r
+f 1565/1644 1558/1637 1718/1792 1735/1809 \r
+f 1735/1809 1718/1792 1719/1793 1736/1810 \r
+f 1736/1810 1719/1793 1720/1794 1737/1811 \r
+f 1737/1811 1720/1794 1721/1795 1738/1812 \r
+f 1738/1812 1721/1795 1722/1796 1739/1813 \r
+f 1739/1813 1722/1796 1723/1797 1740/1814 \r
+f 1740/1814 1723/1797 1724/1798 1741/1815 \r
+f 1741/1815 1724/1798 1726/1800 1742/1816 \r
+f 1742/1816 1726/1800 1728/1802 1743/1817 \r
+f 1743/1817 1728/1802 1730/1804 1744/1818 \r
+f 1744/1818 1730/1804 1732/1806 1745/1819 \r
+f 1745/1819 1732/1806 1734/1808 1746/1820 \r
+f 1572/1651 1565/1644 1735/1809 1747/1821 \r
+f 1747/1821 1735/1809 1736/1810 1748/1822 \r
+f 1748/1822 1736/1810 1737/1811 1749/1823 \r
+f 1749/1823 1737/1811 1738/1812 1750/1824 \r
+f 1750/1824 1738/1812 1739/1813 1751/1825 \r
+f 1751/1825 1739/1813 1740/1814 1752/1826 \r
+f 1752/1826 1740/1814 1741/1815 1753/1827 \r
+f 1753/1827 1741/1815 1742/1816 1754/1828 \r
+f 1754/1828 1742/1816 1743/1817 1755/1829 \r
+f 1755/1829 1743/1817 1744/1818 1756/1830 \r
+f 1756/1830 1744/1818 1745/1819 1757/1831 \r
+f 1757/1831 1745/1819 1746/1820 1758/1832 \r
+f 1579/1658 1572/1651 1747/1821 1759/1833 \r
+f 1759/1833 1747/1821 1748/1822 1760/1834 \r
+f 1760/1834 1748/1822 1749/1823 1761/1835 \r
+f 1761/1835 1749/1823 1750/1824 1762/1836 \r
+f 1762/1836 1750/1824 1751/1825 1763/1837 \r
+f 1763/1837 1751/1825 1752/1826 1764/1838 \r
+f 1764/1838 1752/1826 1753/1827 1765/1839 \r
+f 1765/1839 1753/1827 1754/1828 1766/1840 \r
+f 1766/1840 1754/1828 1755/1829 1767/1841 \r
+f 1767/1841 1755/1829 1756/1830 1768/1842 \r
+f 1768/1842 1756/1830 1757/1831 1769/1843 \r
+f 1769/1843 1757/1831 1758/1832 1770/1844 \r
+f 1579/1658 1759/1833 1771/1845 1586/1665 \r
+f 1759/1833 1760/1834 1772/1846 1771/1845 \r
+f 1760/1834 1761/1835 1773/1847 1772/1846 \r
+f 1761/1835 1762/1836 1774/1848 1773/1847 \r
+f 1762/1836 1763/1837 1775/1849 1774/1848 \r
+f 1763/1837 1764/1838 1776/1850 1775/1849 \r
+f 1764/1838 1765/1839 1777/1851 1776/1850 \r
+f 1765/1839 1766/1840 1778/1852 1777/1851 \r
+f 1766/1840 1767/1841 1779/1853 1778/1852 \r
+f 1767/1841 1768/1842 1780/1854 1779/1853 \r
+f 1768/1842 1769/1843 1781/1855 1780/1854 \r
+f 1769/1843 1770/1844 1782/1856 1781/1855 \r
+f 1586/1665 1771/1845 1783/1857 1593/1672 \r
+f 1771/1845 1772/1846 1784/1858 1783/1857 \r
+f 1772/1846 1773/1847 1785/1859 1784/1858 \r
+f 1773/1847 1774/1848 1786/1860 1785/1859 \r
+f 1774/1848 1775/1849 1787/1861 1786/1860 \r
+f 1775/1849 1776/1850 1788/1862 1787/1861 \r
+f 1776/1850 1777/1851 1789/1863 1788/1862 \r
+f 1777/1851 1778/1852 1790/1864 1789/1863 \r
+f 1778/1852 1779/1853 1791/1865 1790/1864 \r
+f 1779/1853 1780/1854 1792/1866 1791/1865 \r
+f 1780/1854 1781/1855 1793/1867 1792/1866 \r
+f 1781/1855 1782/1856 1794/1868 1793/1867 \r
+f 1593/1672 1783/1857 1795/1869 1600/1679 \r
+f 1783/1857 1784/1858 1796/1870 1795/1869 \r
+f 1784/1858 1785/1859 1797/1871 1796/1870 \r
+f 1785/1859 1786/1860 1798/1872 1797/1871 \r
+f 1786/1860 1787/1861 1799/1873 1798/1872 \r
+f 1787/1861 1788/1862 1800/1874 1799/1873 \r
+f 1788/1862 1789/1863 1801/1875 1800/1874 \r
+f 1789/1863 1790/1864 1802/1876 1801/1875 \r
+f 1790/1864 1791/1865 1803/1877 1802/1876 \r
+f 1791/1865 1792/1866 1804/1878 1803/1877 \r
+f 1792/1866 1793/1867 1805/1879 1804/1878 \r
+f 1793/1867 1794/1868 1806/1880 1805/1879 \r
+f 1600/1679 1795/1869 1807/1881 1607/1686 \r
+f 1795/1869 1796/1870 1808/1882 1807/1881 \r
+f 1796/1870 1797/1871 1809/1883 1808/1882 \r
+f 1797/1871 1798/1872 1810/1884 1809/1883 \r
+f 1798/1872 1799/1873 1811/1885 1810/1884 \r
+f 1799/1873 1800/1874 1812/1886 1811/1885 \r
+f 1800/1874 1801/1875 1813/1887 1812/1886 \r
+f 1801/1875 1802/1876 1814/1888 1813/1887 \r
+f 1802/1876 1803/1877 1815/1889 1814/1888 \r
+f 1803/1877 1804/1878 1816/1890 1815/1889 \r
+f 1804/1878 1805/1879 1817/1891 1816/1890 \r
+f 1805/1879 1806/1880 1818/1892 1817/1891 \r
+f 1607/1686 1807/1881 1819/1893 1614/1693 \r
+f 1807/1881 1808/1882 1820/1894 1819/1893 \r
+f 1808/1882 1809/1883 1821/1895 1820/1894 \r
+f 1809/1883 1810/1884 1822/1896 1821/1895 \r
+f 1810/1884 1811/1885 1823/1897 1822/1896 \r
+f 1811/1885 1812/1886 1824/1898 1823/1897 \r
+f 1812/1886 1813/1887 1825/1899 1824/1898 \r
+f 1813/1887 1814/1888 1826/1900 1825/1899 \r
+f 1814/1888 1815/1889 1827/1901 1826/1900 \r
+f 1815/1889 1816/1890 1828/1902 1827/1901 \r
+f 1816/1890 1817/1891 1829/1903 1828/1902 \r
+f 1817/1891 1818/1892 1830/1904 1829/1903 \r
+f 1614/1693 1819/1893 1831/1905 1621/1700 \r
+f 1819/1893 1820/1894 1832/1906 1831/1905 \r
+f 1820/1894 1821/1895 1833/1907 1832/1906 \r
+f 1821/1895 1822/1896 1834/1908 1833/1907 \r
+f 1822/1896 1823/1897 1835/1909 1834/1908 \r
+f 1823/1897 1824/1898 1836/1910 1835/1909 \r
+f 1824/1898 1825/1899 1837/1911 1836/1910 \r
+f 1825/1899 1826/1900 1838/1912 1837/1911 \r
+f 1826/1900 1827/1901 1839/1913 1838/1912 \r
+f 1827/1901 1828/1902 1840/1914 1839/1913 \r
+f 1828/1902 1829/1903 1841/1915 1840/1914 \r
+f 1829/1903 1830/1904 1842/1916 1841/1915 \r
+f 1628/1707 1621/1700 1831/1905 1843/1917 \r
+f 1843/1917 1831/1905 1832/1906 1844/1918 \r
+f 1844/1918 1832/1906 1833/1907 1845/1919 \r
+f 1845/1919 1833/1907 1834/1908 1846/1920 \r
+f 1846/1920 1834/1908 1835/1909 1847/1921 \r
+f 1847/1921 1835/1909 1836/1910 1848/1922 \r
+f 1848/1922 1836/1910 1837/1911 1849/1923 \r
+f 1849/1923 1837/1911 1838/1912 1850/1924 \r
+f 1850/1924 1838/1912 1839/1913 1851/1925 \r
+f 1851/1925 1839/1913 1840/1914 1852/1926 \r
+f 1852/1926 1840/1914 1841/1915 1853/1927 \r
+f 1853/1927 1841/1915 1842/1916 1854/1928 \r
+f 1635/1714 1628/1707 1843/1917 1855/1929 \r
+f 1855/1929 1843/1917 1844/1918 1856/1930 \r
+f 1856/1930 1844/1918 1845/1919 1857/1931 \r
+f 1857/1931 1845/1919 1846/1920 1858/1932 \r
+f 1858/1932 1846/1920 1847/1921 1859/1933 \r
+f 1859/1933 1847/1921 1848/1922 1860/1934 \r
+f 1860/1934 1848/1922 1849/1923 1861/1935 \r
+f 1861/1935 1849/1923 1850/1924 1862/1936 \r
+f 1862/1936 1850/1924 1851/1925 1863/1937 \r
+f 1863/1937 1851/1925 1852/1926 1864/1938 \r
+f 1864/1938 1852/1926 1853/1927 1865/1939 \r
+f 1865/1939 1853/1927 1854/1928 1866/1940 \r
+f 1642/1721 1635/1714 1855/1929 1867/1941 \r
+f 1867/1941 1855/1929 1856/1930 1868/1942 \r
+f 1868/1942 1856/1930 1857/1931 1869/1943 \r
+f 1869/1943 1857/1931 1858/1932 1870/1944 \r
+f 1870/1944 1858/1932 1859/1933 1871/1945 \r
+f 1871/1945 1859/1933 1860/1934 1872/1946 \r
+f 1872/1946 1860/1934 1861/1935 1873/1947 \r
+f 1873/1947 1861/1935 1862/1936 1874/1948 \r
+f 1874/1948 1862/1936 1863/1937 1875/1949 \r
+f 1875/1949 1863/1937 1864/1938 1876/1950 \r
+f 1876/1950 1864/1938 1865/1939 1877/1951 \r
+f 1877/1951 1865/1939 1866/1940 1878/1952 \r
+f 1649/1728 1642/1721 1867/1941 1879/1953 \r
+f 1879/1953 1867/1941 1868/1942 1880/1954 \r
+f 1880/1954 1868/1942 1869/1943 1881/1955 \r
+f 1881/1955 1869/1943 1870/1944 1882/1956 \r
+f 1882/1956 1870/1944 1871/1945 1883/1957 \r
+f 1883/1957 1871/1945 1872/1946 1884/1958 \r
+f 1884/1958 1872/1946 1873/1947 1885/1959 \r
+f 1885/1959 1873/1947 1874/1948 1886/1960 \r
+f 1886/1960 1874/1948 1875/1949 1887/1961 \r
+f 1887/1961 1875/1949 1876/1950 1888/1962 \r
+f 1888/1962 1876/1950 1877/1951 1889/1963 \r
+f 1889/1963 1877/1951 1878/1952 1890/1964 \r
+f 1656/1735 1649/1728 1879/1953 1891/1965 \r
+f 1891/1965 1879/1953 1880/1954 1892/1966 \r
+f 1892/1966 1880/1954 1881/1955 1893/1967 \r
+f 1893/1967 1881/1955 1882/1956 1894/1968 \r
+f 1894/1968 1882/1956 1883/1957 1895/1969 \r
+f 1895/1969 1883/1957 1884/1958 1896/1970 \r
+f 1896/1970 1884/1958 1885/1959 1897/1971 \r
+f 1897/1971 1885/1959 1886/1960 1898/1972 \r
+f 1898/1972 1886/1960 1887/1961 1899/1973 \r
+f 1899/1973 1887/1961 1888/1962 1900/1974 \r
+f 1900/1974 1888/1962 1889/1963 1901/1975 \r
+f 1901/1975 1889/1963 1890/1964 1902/1976 \r
+f 1663/1742 1656/1735 1891/1965 1903/1977 \r
+f 1903/1977 1891/1965 1892/1966 1904/1978 \r
+f 1904/1978 1892/1966 1893/1967 1905/1979 \r
+f 1905/1979 1893/1967 1894/1968 1906/1980 \r
+f 1906/1980 1894/1968 1895/1969 1907/1981 \r
+f 1907/1981 1895/1969 1896/1970 1908/1982 \r
+f 1908/1982 1896/1970 1897/1971 1909/1983 \r
+f 1909/1983 1897/1971 1898/1972 1910/1984 \r
+f 1910/1984 1898/1972 1899/1973 1911/1985 \r
+f 1911/1985 1899/1973 1900/1974 1912/1986 \r
+f 1912/1986 1900/1974 1901/1975 1913/1987 \r
+f 1913/1987 1901/1975 1902/1976 1914/1988 \r
+f 1663/1742 1903/1977 1915/1989 1670/1749 \r
+f 1903/1977 1904/1978 1916/1990 1915/1989 \r
+f 1904/1978 1905/1979 1917/1991 1916/1990 \r
+f 1905/1979 1906/1980 1918/1992 1917/1991 \r
+f 1906/1980 1907/1981 1919/1993 1918/1992 \r
+f 1907/1981 1908/1982 1920/1994 1919/1993 \r
+f 1908/1982 1909/1983 1921/1995 1920/1994 \r
+f 1909/1983 1910/1984 1922/1996 1921/1995 \r
+f 1910/1984 1911/1985 1923/1997 1922/1996 \r
+f 1911/1985 1912/1986 1924/1998 1923/1997 \r
+f 1912/1986 1913/1987 1925/1999 1924/1998 \r
+f 1913/1987 1914/1988 1926/2000 1925/1999 \r
+f 1670/1749 1915/1989 1927/2001 1677/1756 \r
+f 1915/1989 1916/1990 1928/2002 1927/2001 \r
+f 1916/1990 1917/1991 1929/2003 1928/2002 \r
+f 1917/1991 1918/1992 1930/2004 1929/2003 \r
+f 1918/1992 1919/1993 1931/2005 1930/2004 \r
+f 1919/1993 1920/1994 1932/2006 1931/2005 \r
+f 1920/1994 1921/1995 1933/2007 1932/2006 \r
+f 1921/1995 1922/1996 1934/2008 1933/2007 \r
+f 1922/1996 1923/1997 1935/2009 1934/2008 \r
+f 1923/1997 1924/1998 1936/2010 1935/2009 \r
+f 1924/1998 1925/1999 1937/2011 1936/2010 \r
+f 1925/1999 1926/2000 1938/2012 1937/2011 \r
+f 1677/1756 1927/2001 1939/2013 1684/1763 \r
+f 1927/2001 1928/2002 1940/2014 1939/2013 \r
+f 1928/2002 1929/2003 1941/2015 1940/2014 \r
+f 1929/2003 1930/2004 1942/2016 1941/2015 \r
+f 1930/2004 1931/2005 1943/2017 1942/2016 \r
+f 1931/2005 1932/2006 1944/2018 1943/2017 \r
+f 1932/2006 1933/2007 1945/2019 1944/2018 \r
+f 1933/2007 1934/2008 1946/2020 1945/2019 \r
+f 1934/2008 1935/2009 1947/2021 1946/2020 \r
+f 1935/2009 1936/2010 1948/2022 1947/2021 \r
+f 1936/2010 1937/2011 1949/2023 1948/2022 \r
+f 1937/2011 1938/2012 1950/2024 1949/2023 \r
+f 1684/1763 1939/2013 1951/2025 1691/1770 \r
+f 1939/2013 1940/2014 1952/2026 1951/2025 \r
+f 1940/2014 1941/2015 1953/2027 1952/2026 \r
+f 1941/2015 1942/2016 1954/2028 1953/2027 \r
+f 1942/2016 1943/2017 1955/2029 1954/2028 \r
+f 1943/2017 1944/2018 1956/2030 1955/2029 \r
+f 1944/2018 1945/2019 1957/2031 1956/2030 \r
+f 1945/2019 1946/2020 1958/2032 1957/2031 \r
+f 1946/2020 1947/2021 1959/2033 1958/2032 \r
+f 1947/2021 1948/2022 1960/2034 1959/2033 \r
+f 1948/2022 1949/2023 1961/2035 1960/2034 \r
+f 1949/2023 1950/2024 1962/2036 1961/2035 \r
+f 1691/1770 1951/2025 1963/2037 1698/1777 \r
+f 1953/2027 1954/2028 1964/2038 1965/2039 \r
+f 1954/2028 1955/2029 1966/2040 1964/2038 \r
+f 1955/2029 1956/2030 1967/2041 1966/2040 \r
+f 1956/2030 1957/2031 1968/2042 1967/2041 \r
+f 1957/2031 1958/2032 1969/2043 1968/2042 \r
+f 1958/2032 1959/2033 1970/2044 1969/2043 \r
+f 1959/2033 1960/2034 1971/2045 1970/2044 \r
+f 1960/2034 1961/2035 1972/2046 1971/2045 \r
+f 1961/2035 1962/2036 1973/2047 1972/2046 \r
+f 1698/1777 1963/2037 446/6431 173/6430 \r
+f 1965/2039 1964/2038 448/6432 447/6433 \r
+f 1964/2038 1966/2040 449/6434 448/6432 \r
+f 1966/2040 1967/2041 450/6435 449/6434 \r
+f 1967/2041 1968/2042 451/6436 450/6435 \r
+f 1968/2042 1969/2043 452/6437 451/6436 \r
+f 1969/2043 1970/2044 453/6438 452/6437 \r
+f 1970/2044 1971/2045 454/6439 453/6438 \r
+f 1971/2045 1972/2046 455/6440 454/6439 \r
+f 458/465 1975/464 1974/2048 1976/2049 \r
+f 1975/464 1978/468 1977/2050 1974/2048 \r
+f 1978/468 1980/470 1979/2051 1977/2050 \r
+f 1980/470 1982/472 1981/2052 1979/2051 \r
+f 1982/472 1984/474 1983/2053 1981/2052 \r
+f 1984/474 465/476 1985/2054 1983/2053 \r
+f 465/476 467/478 1986/2055 1985/2054 \r
+f 467/478 1988/480 1987/2056 1986/2055 \r
+f 1988/480 470/482 1989/2057 1987/2056 \r
+f 1991/2060 1976/2049 1990/2058 1992/2059 \r
+f 1976/2049 1974/2048 1993/2061 1990/2058 \r
+f 1974/2048 1977/2050 1994/2062 1993/2061 \r
+f 1977/2050 1979/2051 1995/2063 1994/2062 \r
+f 1979/2051 1981/2052 1996/2064 1995/2063 \r
+f 1981/2052 1983/2053 1997/2065 1996/2064 \r
+f 1983/2053 1985/2054 1998/2066 1997/2065 \r
+f 1985/2054 1986/2055 1999/2067 1998/2066 \r
+f 1986/2055 1987/2056 2000/2068 1999/2067 \r
+f 1987/2056 1989/2057 2001/2069 2000/2068 \r
+f 1733/1807 2003/2071 2002/2070 1734/1808 \r
+f 2003/2071 1992/2059 2004/2072 2002/2070 \r
+f 1992/2059 1990/2058 2005/2073 2004/2072 \r
+f 1990/2058 1993/2061 2006/2074 2005/2073 \r
+f 1993/2061 1994/2062 2007/2075 2006/2074 \r
+f 1994/2062 1995/2063 2008/2076 2007/2075 \r
+f 1995/2063 1996/2064 2009/2077 2008/2076 \r
+f 1996/2064 1997/2065 2010/2078 2009/2077 \r
+f 1997/2065 1998/2066 2011/2079 2010/2078 \r
+f 1998/2066 1999/2067 2012/2080 2011/2079 \r
+f 1999/2067 2000/2068 2013/2081 2012/2080 \r
+f 2000/2068 2001/2069 2014/2082 2013/2081 \r
+f 1734/1808 2002/2070 2015/2083 1746/1820 \r
+f 2002/2070 2004/2072 2016/2084 2015/2083 \r
+f 2004/2072 2005/2073 2017/2085 2016/2084 \r
+f 2005/2073 2006/2074 2018/2086 2017/2085 \r
+f 2006/2074 2007/2075 2019/2087 2018/2086 \r
+f 2007/2075 2008/2076 2020/2088 2019/2087 \r
+f 2008/2076 2009/2077 2021/2089 2020/2088 \r
+f 2009/2077 2010/2078 2022/2090 2021/2089 \r
+f 2010/2078 2011/2079 2023/2091 2022/2090 \r
+f 2011/2079 2012/2080 2024/2092 2023/2091 \r
+f 2012/2080 2013/2081 2025/2093 2024/2092 \r
+f 2013/2081 2014/2082 2026/2094 2025/2093 \r
+f 1746/1820 2015/2083 2027/2095 1758/1832 \r
+f 2015/2083 2016/2084 2028/2096 2027/2095 \r
+f 2016/2084 2017/2085 2029/2097 2028/2096 \r
+f 2017/2085 2018/2086 2030/2098 2029/2097 \r
+f 2018/2086 2019/2087 2031/2099 2030/2098 \r
+f 2019/2087 2020/2088 2032/2100 2031/2099 \r
+f 2020/2088 2021/2089 2033/2101 2032/2100 \r
+f 2021/2089 2022/2090 2034/2102 2033/2101 \r
+f 2022/2090 2023/2091 2035/2103 2034/2102 \r
+f 2023/2091 2024/2092 2036/2104 2035/2103 \r
+f 2024/2092 2025/2093 2037/2105 2036/2104 \r
+f 2025/2093 2026/2094 2038/2106 2037/2105 \r
+f 1758/1832 2027/2095 2039/2107 1770/1844 \r
+f 2027/2095 2028/2096 2040/2108 2039/2107 \r
+f 2028/2096 2029/2097 2041/2109 2040/2108 \r
+f 2029/2097 2030/2098 2042/2110 2041/2109 \r
+f 2030/2098 2031/2099 2043/2111 2042/2110 \r
+f 2031/2099 2032/2100 2044/2112 2043/2111 \r
+f 2032/2100 2033/2101 2045/2113 2044/2112 \r
+f 2033/2101 2034/2102 2046/2114 2045/2113 \r
+f 2034/2102 2035/2103 2047/2115 2046/2114 \r
+f 2035/2103 2036/2104 2048/2116 2047/2115 \r
+f 2036/2104 2037/2105 2049/2117 2048/2116 \r
+f 2037/2105 2038/2106 2050/2118 2049/2117 \r
+f 1782/1856 1770/1844 2039/2107 2051/2119 \r
+f 2051/2119 2039/2107 2040/2108 2052/2120 \r
+f 2052/2120 2040/2108 2041/2109 2053/2121 \r
+f 2053/2121 2041/2109 2042/2110 2054/2122 \r
+f 2054/2122 2042/2110 2043/2111 2055/2123 \r
+f 2055/2123 2043/2111 2044/2112 2056/2124 \r
+f 2056/2124 2044/2112 2045/2113 2057/2125 \r
+f 2057/2125 2045/2113 2046/2114 2058/2126 \r
+f 2058/2126 2046/2114 2047/2115 2059/2127 \r
+f 2059/2127 2047/2115 2048/2116 2060/2128 \r
+f 2060/2128 2048/2116 2049/2117 2061/2129 \r
+f 2061/2129 2049/2117 2050/2118 2062/2130 \r
+f 1794/1868 1782/1856 2051/2119 2063/2131 \r
+f 2063/2131 2051/2119 2052/2120 2064/2132 \r
+f 2064/2132 2052/2120 2053/2121 2065/2133 \r
+f 2065/2133 2053/2121 2054/2122 2066/2134 \r
+f 2066/2134 2054/2122 2055/2123 2067/2135 \r
+f 2067/2135 2055/2123 2056/2124 2068/2136 \r
+f 2068/2136 2056/2124 2057/2125 2069/2137 \r
+f 2069/2137 2057/2125 2058/2126 2070/2138 \r
+f 2070/2138 2058/2126 2059/2127 2071/2139 \r
+f 2071/2139 2059/2127 2060/2128 2072/2140 \r
+f 2072/2140 2060/2128 2061/2129 2073/2141 \r
+f 2073/2141 2061/2129 2062/2130 2074/2142 \r
+f 1806/1880 1794/1868 2063/2131 2075/2143 \r
+f 2075/2143 2063/2131 2064/2132 2076/2144 \r
+f 2076/2144 2064/2132 2065/2133 2077/2145 \r
+f 2077/2145 2065/2133 2066/2134 2078/2146 \r
+f 2078/2146 2066/2134 2067/2135 2079/2147 \r
+f 2079/2147 2067/2135 2068/2136 2080/2148 \r
+f 2080/2148 2068/2136 2069/2137 2081/2149 \r
+f 2081/2149 2069/2137 2070/2138 2082/2150 \r
+f 2082/2150 2070/2138 2071/2139 2083/2151 \r
+f 2083/2151 2071/2139 2072/2140 2084/2152 \r
+f 2084/2152 2072/2140 2073/2141 2085/2153 \r
+f 2085/2153 2073/2141 2074/2142 2086/2154 \r
+f 1818/1892 1806/1880 2075/2143 2087/2155 \r
+f 2087/2155 2075/2143 2076/2144 2088/2156 \r
+f 2088/2156 2076/2144 2077/2145 2089/2157 \r
+f 2089/2157 2077/2145 2078/2146 2090/2158 \r
+f 2090/2158 2078/2146 2079/2147 2091/2159 \r
+f 2091/2159 2079/2147 2080/2148 2092/2160 \r
+f 2092/2160 2080/2148 2081/2149 2093/2161 \r
+f 2093/2161 2081/2149 2082/2150 2094/2162 \r
+f 2094/2162 2082/2150 2083/2151 2095/2163 \r
+f 2095/2163 2083/2151 2084/2152 2096/2164 \r
+f 2096/2164 2084/2152 2085/2153 2097/2165 \r
+f 2097/2165 2085/2153 2086/2154 2098/2166 \r
+f 1830/1904 1818/1892 2087/2155 2099/2167 \r
+f 2099/2167 2087/2155 2088/2156 2100/2168 \r
+f 2100/2168 2088/2156 2089/2157 2101/2169 \r
+f 2101/2169 2089/2157 2090/2158 2102/2170 \r
+f 2102/2170 2090/2158 2091/2159 2103/2171 \r
+f 2103/2171 2091/2159 2092/2160 2104/2172 \r
+f 2104/2172 2092/2160 2093/2161 2105/2173 \r
+f 2105/2173 2093/2161 2094/2162 2106/2174 \r
+f 2106/2174 2094/2162 2095/2163 2107/2175 \r
+f 2107/2175 2095/2163 2096/2164 2108/2176 \r
+f 2108/2176 2096/2164 2097/2165 2109/2177 \r
+f 2109/2177 2097/2165 2098/2166 2110/2178 \r
+f 1842/1916 1830/1904 2099/2167 2111/2179 \r
+f 2111/2179 2099/2167 2100/2168 2112/2180 \r
+f 2112/2180 2100/2168 2101/2169 2113/2181 \r
+f 2113/2181 2101/2169 2102/2170 2114/2182 \r
+f 2114/2182 2102/2170 2103/2171 2115/2183 \r
+f 2115/2183 2103/2171 2104/2172 2116/2184 \r
+f 2116/2184 2104/2172 2105/2173 2117/2185 \r
+f 2117/2185 2105/2173 2106/2174 2118/2186 \r
+f 2118/2186 2106/2174 2107/2175 2119/2187 \r
+f 2119/2187 2107/2175 2108/2176 2120/2188 \r
+f 2120/2188 2108/2176 2109/2177 2121/2189 \r
+f 2121/2189 2109/2177 2110/2178 2122/2190 \r
+f 1842/1916 2111/2179 2123/2191 1854/1928 \r
+f 2111/2179 2112/2180 2124/2192 2123/2191 \r
+f 2112/2180 2113/2181 2125/2193 2124/2192 \r
+f 2113/2181 2114/2182 2126/2194 2125/2193 \r
+f 2114/2182 2115/2183 2127/2195 2126/2194 \r
+f 2115/2183 2116/2184 2128/2196 2127/2195 \r
+f 2116/2184 2117/2185 2129/2197 2128/2196 \r
+f 2117/2185 2118/2186 2130/2198 2129/2197 \r
+f 2118/2186 2119/2187 2131/2199 2130/2198 \r
+f 2119/2187 2120/2188 2132/2200 2131/2199 \r
+f 2120/2188 2121/2189 2133/2201 2132/2200 \r
+f 2121/2189 2122/2190 2134/2202 2133/2201 \r
+f 1854/1928 2123/2191 2135/2203 1866/1940 \r
+f 2123/2191 2124/2192 2136/2204 2135/2203 \r
+f 2124/2192 2125/2193 2137/2205 2136/2204 \r
+f 2125/2193 2126/2194 2138/2206 2137/2205 \r
+f 2126/2194 2127/2195 2139/2207 2138/2206 \r
+f 2127/2195 2128/2196 2140/2208 2139/2207 \r
+f 2128/2196 2129/2197 2141/2209 2140/2208 \r
+f 2129/2197 2130/2198 2142/2210 2141/2209 \r
+f 2130/2198 2131/2199 2143/2211 2142/2210 \r
+f 2131/2199 2132/2200 2144/2212 2143/2211 \r
+f 2132/2200 2133/2201 2145/2213 2144/2212 \r
+f 2133/2201 2134/2202 2146/2214 2145/2213 \r
+f 1866/1940 2135/2203 2147/2215 1878/1952 \r
+f 2135/2203 2136/2204 2148/2216 2147/2215 \r
+f 2136/2204 2137/2205 2149/2217 2148/2216 \r
+f 2137/2205 2138/2206 2150/2218 2149/2217 \r
+f 2138/2206 2139/2207 2151/2219 2150/2218 \r
+f 2139/2207 2140/2208 2152/2220 2151/2219 \r
+f 2140/2208 2141/2209 2153/2221 2152/2220 \r
+f 2141/2209 2142/2210 2154/2222 2153/2221 \r
+f 2142/2210 2143/2211 2155/2223 2154/2222 \r
+f 2143/2211 2144/2212 2156/2224 2155/2223 \r
+f 2144/2212 2145/2213 2157/2225 2156/2224 \r
+f 2145/2213 2146/2214 2158/2226 2157/2225 \r
+f 1878/1952 2147/2215 2159/2227 1890/1964 \r
+f 2147/2215 2148/2216 2160/2228 2159/2227 \r
+f 2148/2216 2149/2217 2161/2229 2160/2228 \r
+f 2149/2217 2150/2218 2162/2230 2161/2229 \r
+f 2150/2218 2151/2219 2163/2231 2162/2230 \r
+f 2151/2219 2152/2220 2164/2232 2163/2231 \r
+f 2152/2220 2153/2221 2165/2233 2164/2232 \r
+f 2153/2221 2154/2222 2166/2234 2165/2233 \r
+f 2154/2222 2155/2223 2167/2235 2166/2234 \r
+f 2155/2223 2156/2224 2168/2236 2167/2235 \r
+f 2156/2224 2157/2225 2169/2237 2168/2236 \r
+f 2157/2225 2158/2226 2170/2238 2169/2237 \r
+f 1890/1964 2159/2227 2171/2239 1902/1976 \r
+f 2159/2227 2160/2228 2172/2240 2171/2239 \r
+f 2160/2228 2161/2229 2173/2241 2172/2240 \r
+f 2161/2229 2162/2230 2174/2242 2173/2241 \r
+f 2162/2230 2163/2231 2175/2243 2174/2242 \r
+f 2163/2231 2164/2232 2176/2244 2175/2243 \r
+f 2164/2232 2165/2233 2177/2245 2176/2244 \r
+f 2165/2233 2166/2234 2178/2246 2177/2245 \r
+f 2166/2234 2167/2235 2179/2247 2178/2246 \r
+f 2167/2235 2168/2236 2180/2248 2179/2247 \r
+f 2168/2236 2169/2237 2181/2249 2180/2248 \r
+f 2169/2237 2170/2238 2182/2250 2181/2249 \r
+f 1902/1976 2171/2239 2183/2251 1914/1988 \r
+f 2171/2239 2172/2240 2184/2252 2183/2251 \r
+f 2172/2240 2173/2241 2185/2253 2184/2252 \r
+f 2173/2241 2174/2242 2186/2254 2185/2253 \r
+f 2174/2242 2175/2243 2187/2255 2186/2254 \r
+f 2175/2243 2176/2244 2188/2256 2187/2255 \r
+f 2176/2244 2177/2245 2189/2257 2188/2256 \r
+f 2177/2245 2178/2246 2190/2258 2189/2257 \r
+f 2178/2246 2179/2247 2191/2259 2190/2258 \r
+f 2179/2247 2180/2248 2192/2260 2191/2259 \r
+f 2180/2248 2181/2249 2193/2261 2192/2260 \r
+f 2181/2249 2182/2250 2194/2262 2193/2261 \r
+f 1926/2000 1914/1988 2183/2251 2195/2263 \r
+f 2195/2263 2183/2251 2184/2252 2196/2264 \r
+f 2196/2264 2184/2252 2185/2253 2197/2265 \r
+f 2197/2265 2185/2253 2186/2254 2198/2266 \r
+f 2198/2266 2186/2254 2187/2255 2199/2267 \r
+f 2199/2267 2187/2255 2188/2256 2200/2268 \r
+f 2200/2268 2188/2256 2189/2257 2201/2269 \r
+f 2201/2269 2189/2257 2190/2258 2202/2270 \r
+f 2202/2270 2190/2258 2191/2259 2203/2271 \r
+f 2203/2271 2191/2259 2192/2260 2204/2272 \r
+f 2204/2272 2192/2260 2193/2261 2205/2273 \r
+f 2205/2273 2193/2261 2194/2262 2206/2274 \r
+f 1938/2012 1926/2000 2195/2263 2207/2275 \r
+f 2207/2275 2195/2263 2196/2264 2208/2276 \r
+f 2208/2276 2196/2264 2197/2265 2209/2277 \r
+f 2209/2277 2197/2265 2198/2266 2210/2278 \r
+f 2210/2278 2198/2266 2199/2267 2211/2279 \r
+f 2211/2279 2199/2267 2200/2268 2212/2280 \r
+f 2212/2280 2200/2268 2201/2269 2213/2281 \r
+f 2213/2281 2201/2269 2202/2270 2214/2282 \r
+f 2214/2282 2202/2270 2203/2271 2215/2283 \r
+f 2215/2283 2203/2271 2204/2272 2216/2284 \r
+f 2216/2284 2204/2272 2205/2273 2217/2285 \r
+f 2217/2285 2205/2273 2206/2274 2218/2286 \r
+f 1950/2024 1938/2012 2207/2275 2219/2287 \r
+f 2219/2287 2207/2275 2208/2276 2220/2288 \r
+f 2220/2288 2208/2276 2209/2277 2221/2289 \r
+f 2221/2289 2209/2277 2210/2278 2222/2297 \r
+f 2222/2297 2210/2278 2211/2279 2223/2298 \r
+f 2223/2298 2211/2279 2212/2280 2224/2299 \r
+f 2224/2299 2212/2280 2213/2281 2225/2300 \r
+f 2225/2300 2213/2281 2214/2282 2226/2308 \r
+f 2226/2308 2214/2282 2215/2283 2227/2309 \r
+f 2227/2309 2215/2283 2216/2284 2228/2310 \r
+f 2228/2310 2216/2284 2217/2285 2229/2311 \r
+f 2229/2311 2217/2285 2218/2286 2230/2319 \r
+f 1962/2036 1950/2024 2219/2287 2231/2320 \r
+f 2231/2320 2219/2287 2220/2288 2232/2321 \r
+f 2232/2321 2220/2288 2221/2289 2233/2322 \r
+f 2233/2322 2221/2289 2222/2297 2234/2330 \r
+f 2234/2330 2222/2297 2223/2298 2235/2331 \r
+f 2235/2331 2223/2298 2224/2299 2236/2332 \r
+f 2236/2332 2224/2299 2225/2300 2237/2333 \r
+f 2237/2333 2225/2300 2226/2308 2238/2341 \r
+f 2238/2341 2226/2308 2227/2309 2239/2342 \r
+f 2239/2342 2227/2309 2228/2310 2240/2343 \r
+f 2240/2343 2228/2310 2229/2311 2241/2344 \r
+f 2241/2344 2229/2311 2230/2319 2242/2352 \r
+f 1973/2047 1962/2036 2231/2320 2243/2353 \r
+f 2243/2353 2231/2320 2232/2321 2244/2354 \r
+f 2244/2354 2232/2321 2233/2322 2245/2355 \r
+f 2245/2355 2233/2322 2234/2330 2246/2363 \r
+f 2246/2363 2234/2330 2235/2331 2247/2364 \r
+f 2247/2364 2235/2331 2236/2332 2248/2365 \r
+f 2248/2365 2236/2332 2237/2333 2249/2366 \r
+f 2249/2366 2237/2333 2238/2341 2250/2374 \r
+f 2250/2374 2238/2341 2239/2342 2251/2375 \r
+f 2251/2375 2239/2342 2240/2343 2252/2376 \r
+f 2252/2376 2240/2343 2241/2344 2253/2377 \r
+f 2253/2377 2241/2344 2242/2352 2254/2385 \r
+f 735/6442 2245/2355 2246/2363 736/6441 \r
+f 736/6441 2246/2363 2247/2364 737/6443 \r
+f 737/6443 2247/2364 2248/2365 738/6444 \r
+f 738/6444 2248/2365 2249/2366 739/6445 \r
+f 739/6445 2249/2366 2250/2374 740/6446 \r
+f 740/6446 2250/2374 2251/2375 741/6447 \r
+f 741/6447 2251/2375 2252/2376 742/6448 \r
+f 742/6448 2252/2376 2253/2377 743/6449 \r
+f 743/6449 2253/2377 2254/2385 744/6450 \r
+f 470/482 2256/759 2255/2386 1989/2057 \r
+f 2256/759 2258/761 2257/2387 2255/2386 \r
+f 2258/761 748/763 2259/2388 2257/2387 \r
+f 748/763 2261/765 2260/2396 2259/2388 \r
+f 2261/768 2263/767 2262/2327 2260/2328 \r
+f 2263/767 2265/771 2264/2329 2262/2327 \r
+f 2265/771 2267/773 2266/2334 2264/2329 \r
+f 2267/773 2269/775 2268/2335 2266/2334 \r
+f 2269/775 2271/777 2270/2336 2268/2335 \r
+f 2271/777 756/779 2272/2337 2270/2336 \r
+f 756/779 758/785 2273/2338 2272/2337 \r
+f 758/785 2274/786 2273/2338 \r
+f 1989/2057 2255/2386 2275/2397 2001/2069 \r
+f 2255/2386 2257/2387 2276/2398 2275/2397 \r
+f 2257/2387 2259/2388 2277/2399 2276/2398 \r
+f 2259/2388 2260/2396 2278/2407 2277/2399 \r
+f 2260/2328 2262/2327 2279/2339 2278/2340 \r
+f 2262/2327 2264/2329 2280/2345 2279/2339 \r
+f 2264/2329 2266/2334 2281/2346 2280/2345 \r
+f 2266/2334 2268/2335 2282/2347 2281/2346 \r
+f 2268/2335 2270/2336 2283/2348 2282/2347 \r
+f 2270/2336 2272/2337 2284/2349 2283/2348 \r
+f 2272/2337 2273/2338 2285/2350 2284/2349 \r
+f 2273/2338 2274/786 2285/2350 \r
+f 2001/2069 2275/2397 2286/2408 2014/2082 \r
+f 2275/2397 2276/2398 2287/2409 2286/2408 \r
+f 2276/2398 2277/2399 2288/2410 2287/2409 \r
+f 2277/2399 2278/2407 2289/2418 2288/2410 \r
+f 2278/2340 2279/2339 2290/2351 2289/2356 \r
+f 2279/2339 2280/2345 2291/2357 2290/2351 \r
+f 2280/2345 2281/2346 2292/2358 2291/2357 \r
+f 2281/2346 2282/2347 2293/2359 2292/2358 \r
+f 2282/2347 2283/2348 2294/2360 2293/2359 \r
+f 2283/2348 2284/2349 2295/2361 2294/2360 \r
+f 2284/2349 2285/2350 2296/2362 2295/2361 \r
+f 2285/2350 2274/786 2296/2362 \r
+f 2014/2082 2286/2408 2297/2419 2026/2094 \r
+f 2286/2408 2287/2409 2298/2420 2297/2419 \r
+f 2287/2409 2288/2410 2299/2421 2298/2420 \r
+f 2288/2410 2289/2418 2300/2429 2299/2421 \r
+f 2289/2356 2290/2351 2301/2367 2300/2368 \r
+f 2290/2351 2291/2357 2302/2369 2301/2367 \r
+f 2291/2357 2292/2358 2303/2370 2302/2369 \r
+f 2292/2358 2293/2359 2304/2371 2303/2370 \r
+f 2293/2359 2294/2360 2305/2372 2304/2371 \r
+f 2294/2360 2295/2361 2306/2373 2305/2372 \r
+f 2295/2361 2296/2362 2307/2378 2306/2373 \r
+f 2296/2362 2274/786 2307/2378 \r
+f 2026/2094 2297/2419 2308/2430 2038/2106 \r
+f 2297/2419 2298/2420 2309/2431 2308/2430 \r
+f 2298/2420 2299/2421 2310/2432 2309/2431 \r
+f 2299/2421 2300/2429 2311/2440 2310/2432 \r
+f 2300/2368 2301/2367 2312/2379 2311/2380 \r
+f 2301/2367 2302/2369 2313/2381 2312/2379 \r
+f 2302/2369 2303/2370 2314/2382 2313/2381 \r
+f 2303/2370 2304/2371 2315/2383 2314/2382 \r
+f 2304/2371 2305/2372 2316/2384 2315/2383 \r
+f 2305/2372 2306/2373 2317/2389 2316/2384 \r
+f 2306/2373 2307/2378 2318/2390 2317/2389 \r
+f 2307/2378 2274/786 2318/2390 \r
+f 2038/2106 2308/2430 2319/2441 2050/2118 \r
+f 2308/2430 2309/2431 2320/2442 2319/2441 \r
+f 2309/2431 2310/2432 2321/2443 2320/2442 \r
+f 2310/2432 2311/2440 2322/2451 2321/2443 \r
+f 2311/2380 2312/2379 2323/2391 2322/2392 \r
+f 2312/2379 2313/2381 2324/2393 2323/2391 \r
+f 2313/2381 2314/2382 2325/2394 2324/2393 \r
+f 2314/2382 2315/2383 2326/2395 2325/2394 \r
+f 2315/2383 2316/2384 2327/2400 2326/2395 \r
+f 2316/2384 2317/2389 2328/2401 2327/2400 \r
+f 2317/2389 2318/2390 2329/2402 2328/2401 \r
+f 2318/2390 2274/786 2329/2402 \r
+f 2062/2130 2050/2118 2319/2441 2330/2452 \r
+f 2330/2452 2319/2441 2320/2442 2331/2453 \r
+f 2331/2453 2320/2442 2321/2443 2332/2454 \r
+f 2332/2454 2321/2443 2322/2451 2333/2462 \r
+f 2333/2404 2322/2392 2323/2391 2334/2403 \r
+f 2334/2403 2323/2391 2324/2393 2335/2405 \r
+f 2335/2405 2324/2393 2325/2394 2336/2406 \r
+f 2336/2406 2325/2394 2326/2395 2337/2411 \r
+f 2337/2411 2326/2395 2327/2400 2338/2412 \r
+f 2338/2412 2327/2400 2328/2401 2339/2413 \r
+f 2339/2413 2328/2401 2329/2402 2340/2414 \r
+f 2329/2402 2274/786 2340/2414 \r
+f 2074/2142 2062/2130 2330/2452 2341/2463 \r
+f 2341/2463 2330/2452 2331/2453 2342/2464 \r
+f 2342/2464 2331/2453 2332/2454 2343/2465 \r
+f 2343/2465 2332/2454 2333/2462 2344/2473 \r
+f 2344/2416 2333/2404 2334/2403 2345/2415 \r
+f 2345/2415 2334/2403 2335/2405 2346/2417 \r
+f 2346/2417 2335/2405 2336/2406 2347/2422 \r
+f 2347/2422 2336/2406 2337/2411 2348/2423 \r
+f 2348/2423 2337/2411 2338/2412 2349/2424 \r
+f 2349/2424 2338/2412 2339/2413 2350/2425 \r
+f 2350/2425 2339/2413 2340/2414 2351/2426 \r
+f 2340/2414 2274/786 2351/2426 \r
+f 2086/2154 2074/2142 2341/2463 2352/2474 \r
+f 2352/2474 2341/2463 2342/2464 2353/2475 \r
+f 2353/2475 2342/2464 2343/2465 2354/2476 \r
+f 2354/2476 2343/2465 2344/2473 2355/2484 \r
+f 2355/2428 2344/2416 2345/2415 2356/2427 \r
+f 2356/2427 2345/2415 2346/2417 2357/2433 \r
+f 2357/2433 2346/2417 2347/2422 2358/2434 \r
+f 2358/2434 2347/2422 2348/2423 2359/2435 \r
+f 2359/2435 2348/2423 2349/2424 2360/2436 \r
+f 2360/2436 2349/2424 2350/2425 2361/2437 \r
+f 2361/2437 2350/2425 2351/2426 2362/2438 \r
+f 2351/2426 2274/786 2362/2438 \r
+f 2098/2166 2086/2154 2352/2474 2363/2485 \r
+f 2363/2485 2352/2474 2353/2475 2364/2486 \r
+f 2364/2486 2353/2475 2354/2476 2365/2487 \r
+f 2365/2487 2354/2476 2355/2484 2366/2495 \r
+f 2366/2444 2355/2428 2356/2427 2367/2439 \r
+f 2367/2439 2356/2427 2357/2433 2368/2445 \r
+f 2368/2445 2357/2433 2358/2434 2369/2446 \r
+f 2369/2446 2358/2434 2359/2435 2370/2447 \r
+f 2370/2447 2359/2435 2360/2436 2371/2448 \r
+f 2371/2448 2360/2436 2361/2437 2372/2449 \r
+f 2372/2449 2361/2437 2362/2438 2373/2450 \r
+f 2362/2438 2274/786 2373/2450 \r
+f 2110/2178 2098/2166 2363/2485 2374/2496 \r
+f 2374/2496 2363/2485 2364/2486 2375/2497 \r
+f 2375/2497 2364/2486 2365/2487 2376/2498 \r
+f 2376/2498 2365/2487 2366/2495 2377/2506 \r
+f 2377/2456 2366/2444 2367/2439 2378/2455 \r
+f 2378/2455 2367/2439 2368/2445 2379/2457 \r
+f 2379/2457 2368/2445 2369/2446 2380/2458 \r
+f 2380/2458 2369/2446 2370/2447 2381/2459 \r
+f 2381/2459 2370/2447 2371/2448 2382/2460 \r
+f 2382/2460 2371/2448 2372/2449 2383/2461 \r
+f 2383/2461 2372/2449 2373/2450 2384/2466 \r
+f 2373/2450 2274/786 2384/2466 \r
+f 2122/2190 2110/2178 2374/2496 2385/2507 \r
+f 2385/2507 2374/2496 2375/2497 2386/2508 \r
+f 2386/2508 2375/2497 2376/2498 2387/2509 \r
+f 2387/2509 2376/2498 2377/2506 2388/2517 \r
+f 2388/2468 2377/2456 2378/2455 2389/2467 \r
+f 2389/2467 2378/2455 2379/2457 2390/2469 \r
+f 2390/2469 2379/2457 2380/2458 2391/2470 \r
+f 2391/2470 2380/2458 2381/2459 2392/2471 \r
+f 2392/2471 2381/2459 2382/2460 2393/2472 \r
+f 2393/2472 2382/2460 2383/2461 2394/2477 \r
+f 2394/2477 2383/2461 2384/2466 2395/2478 \r
+f 2384/2466 2274/786 2395/2478 \r
+f 2122/2190 2385/2507 2396/2518 2134/2202 \r
+f 2385/2507 2386/2508 2397/2519 2396/2518 \r
+f 2386/2508 2387/2509 2398/2520 2397/2519 \r
+f 2387/2509 2388/2517 2399/2528 2398/2520 \r
+f 2388/2468 2389/2467 2400/2479 2399/2480 \r
+f 2389/2467 2390/2469 2401/2481 2400/2479 \r
+f 2390/2469 2391/2470 2402/2482 2401/2481 \r
+f 2391/2470 2392/2471 2403/2483 2402/2482 \r
+f 2392/2471 2393/2472 2404/2488 2403/2483 \r
+f 2393/2472 2394/2477 2405/2489 2404/2488 \r
+f 2394/2477 2395/2478 2406/2490 2405/2489 \r
+f 2395/2478 2274/786 2406/2490 \r
+f 2134/2202 2396/2518 2407/2529 2146/2214 \r
+f 2396/2518 2397/2519 2408/2530 2407/2529 \r
+f 2397/2519 2398/2520 2409/2531 2408/2530 \r
+f 2398/2520 2399/2528 2410/2539 2409/2531 \r
+f 2399/2480 2400/2479 2411/2491 2410/2492 \r
+f 2400/2479 2401/2481 2412/2493 2411/2491 \r
+f 2401/2481 2402/2482 2413/2494 2412/2493 \r
+f 2402/2482 2403/2483 2414/2499 2413/2494 \r
+f 2403/2483 2404/2488 2415/2500 2414/2499 \r
+f 2404/2488 2405/2489 2416/2501 2415/2500 \r
+f 2405/2489 2406/2490 2417/2502 2416/2501 \r
+f 2406/2490 2274/786 2417/2502 \r
+f 2146/2214 2407/2529 2418/6001 2158/2226 \r
+f 2407/2529 2408/2530 2419/6002 2418/6001 \r
+f 2408/2530 2409/2531 2420/6003 2419/6002 \r
+f 2409/2531 2410/2539 2421/6004 2420/6003 \r
+f 2410/2492 2411/2491 2422/2503 2421/2504 \r
+f 2411/2491 2412/2493 2423/2505 2422/2503 \r
+f 2412/2493 2413/2494 2424/2510 2423/2505 \r
+f 2413/2494 2414/2499 2425/2511 2424/2510 \r
+f 2414/2499 2415/2500 2426/2512 2425/2511 \r
+f 2415/2500 2416/2501 2427/2513 2426/2512 \r
+f 2416/2501 2417/2502 2428/2514 2427/2513 \r
+f 2417/2502 2274/786 2428/2514 \r
+f 2158/2226 2418/6001 2429/6005 2170/2238 \r
+f 2418/6001 2419/6002 2430/6006 2429/6005 \r
+f 2419/6002 2420/6003 2431/6007 2430/6006 \r
+f 2420/6003 2421/6004 2432/6008 2431/6007 \r
+f 2421/2504 2422/2503 2433/2515 2432/2516 \r
+f 2422/2503 2423/2505 2434/2521 2433/2515 \r
+f 2423/2505 2424/2510 2435/2522 2434/2521 \r
+f 2424/2510 2425/2511 2436/2523 2435/2522 \r
+f 2425/2511 2426/2512 2437/2524 2436/2523 \r
+f 2426/2512 2427/2513 2438/2525 2437/2524 \r
+f 2427/2513 2428/2514 2439/2526 2438/2525 \r
+f 2428/2514 2274/786 2439/2526 \r
+f 2170/2238 2429/6005 2440/6009 2182/2250 \r
+f 2429/6005 2430/6006 2441/6010 2440/6009 \r
+f 2430/6006 2431/6007 2442/6011 2441/6010 \r
+f 2431/6007 2432/6008 2443/6012 2442/6011 \r
+f 2432/2516 2433/2515 2444/2527 2443/2532 \r
+f 2433/2515 2434/2521 2445/2533 2444/2527 \r
+f 2434/2521 2435/2522 2446/2534 2445/2533 \r
+f 2435/2522 2436/2523 2447/2535 2446/2534 \r
+f 2436/2523 2437/2524 2448/2536 2447/2535 \r
+f 2437/2524 2438/2525 2449/2537 2448/2536 \r
+f 2438/2525 2439/2526 2450/2538 2449/2537 \r
+f 2439/2526 2274/786 2450/2538 \r
+f 2182/2250 2440/6009 2451/6013 2194/2262 \r
+f 2440/6009 2441/6010 2452/6014 2451/6013 \r
+f 2441/6010 2442/6011 2453/6015 2452/6014 \r
+f 2442/6011 2443/6012 2454/6016 2453/6015 \r
+f 2443/2532 2444/2527 2455/6376 2454/6377 \r
+f 2444/2527 2445/2533 2456/6378 2455/6376 \r
+f 2445/2533 2446/2534 2457/6379 2456/6378 \r
+f 2446/2534 2447/2535 2458/6380 2457/6379 \r
+f 2447/2535 2448/2536 2459/6381 2458/6380 \r
+f 2448/2536 2449/2537 2460/6382 2459/6381 \r
+f 2449/2537 2450/2538 2461/6383 2460/6382 \r
+f 2450/2538 2274/786 2461/6383 \r
+f 2206/2274 2194/2262 2451/6013 2462/6017 \r
+f 2462/6017 2451/6013 2452/6014 2463/6018 \r
+f 2463/6018 2452/6014 2453/6015 2464/6019 \r
+f 2464/6019 2453/6015 2454/6016 2465/6020 \r
+f 2465/6385 2454/6377 2455/6376 2466/6384 \r
+f 2466/6384 2455/6376 2456/6378 2467/6386 \r
+f 2467/6386 2456/6378 2457/6379 2468/6387 \r
+f 2468/6387 2457/6379 2458/6380 2469/6388 \r
+f 2469/6388 2458/6380 2459/6381 2470/6389 \r
+f 2470/6389 2459/6381 2460/6382 2471/6390 \r
+f 2471/6390 2460/6382 2461/6383 2472/6391 \r
+f 2461/6383 2274/786 2472/6391 \r
+f 2218/2286 2206/2274 2462/6017 2473/6021 \r
+f 2473/6021 2462/6017 2463/6018 2474/6022 \r
+f 2474/6022 2463/6018 2464/6019 2475/6023 \r
+f 2475/6023 2464/6019 2465/6020 2476/6024 \r
+f 2476/6393 2465/6385 2466/6384 2477/6392 \r
+f 2477/6392 2466/6384 2467/6386 2478/6394 \r
+f 2478/6394 2467/6386 2468/6387 2479/6395 \r
+f 2479/6395 2468/6387 2469/6388 2480/6396 \r
+f 2480/6396 2469/6388 2470/6389 2481/6397 \r
+f 2481/6397 2470/6389 2471/6390 2482/6398 \r
+f 2482/6398 2471/6390 2472/6391 2483/6399 \r
+f 2472/6391 2274/786 2483/6399 \r
+f 2230/2319 2218/2286 2473/6021 2484/6025 \r
+f 2484/6025 2473/6021 2474/6022 2485/6039 \r
+f 2485/6039 2474/6022 2475/6023 2486/6040 \r
+f 2486/6040 2475/6023 2476/6024 2487/6041 \r
+f 2487/6401 2476/6393 2477/6392 2488/6400 \r
+f 2488/6400 2477/6392 2478/6394 2489/6402 \r
+f 2489/6402 2478/6394 2479/6395 2490/6403 \r
+f 2490/6403 2479/6395 2480/6396 2491/6404 \r
+f 2491/6404 2480/6396 2481/6397 2492/6405 \r
+f 2492/6405 2481/6397 2482/6398 2493/6406 \r
+f 2493/6406 2482/6398 2483/6399 2494/6407 \r
+f 2483/6399 2274/786 2494/6407 \r
+f 2242/2352 2230/2319 2484/6025 2495/6042 \r
+f 2495/6042 2484/6025 2485/6039 2496/6043 \r
+f 2496/6043 2485/6039 2486/6040 2497/6044 \r
+f 2497/6044 2486/6040 2487/6041 2498/6045 \r
+f 2498/6409 2487/6401 2488/6400 2499/6408 \r
+f 2499/6408 2488/6400 2489/6402 2500/6410 \r
+f 2500/6410 2489/6402 2490/6403 2501/6411 \r
+f 2501/6411 2490/6403 2491/6404 2502/6412 \r
+f 2502/6412 2491/6404 2492/6405 2503/6413 \r
+f 2503/6413 2492/6405 2493/6406 2504/6414 \r
+f 2504/6414 2493/6406 2494/6407 2505/6415 \r
+f 2494/6407 2274/786 2505/6415 \r
+f 2254/2385 2242/2352 2495/6042 2506/6046 \r
+f 2506/6046 2495/6042 2496/6043 2507/6047 \r
+f 2507/6047 2496/6043 2497/6044 2508/6048 \r
+f 2508/6048 2497/6044 2498/6045 2509/6049 \r
+f 2509/6417 2498/6409 2499/6408 2510/6416 \r
+f 2510/6416 2499/6408 2500/6410 2511/6418 \r
+f 2511/6418 2500/6410 2501/6411 2512/6419 \r
+f 2512/6419 2501/6411 2502/6412 2513/6420 \r
+f 2513/6420 2502/6412 2503/6413 2514/6421 \r
+f 2514/6421 2503/6413 2504/6414 2515/6422 \r
+f 2515/6422 2504/6414 2505/6415 2516/6423 \r
+f 2505/6415 2274/786 2516/6423 \r
+f 744/6450 2254/2385 2506/6046 1001/6451 \r
+f 1001/6451 2506/6046 2507/6047 1002/6452 \r
+f 1002/6452 2507/6047 2508/6048 1003/6453 \r
+f 1003/6453 2508/6048 2509/6049 1004/6454 \r
+f 1004/2315 2509/6417 2510/6416 1005/2316 \r
+f 1005/2316 2510/6416 2511/6418 1006/2317 \r
+f 1006/2317 2511/6418 2512/6419 1007/2318 \r
+f 1007/2318 2512/6419 2513/6420 1008/2323 \r
+f 1008/2323 2513/6420 2514/6421 1009/2324 \r
+f 1009/2324 2514/6421 2515/6422 1010/2325 \r
+f 1010/2325 2515/6422 2516/6423 1011/2326 \r
+f 2516/6423 2274/786 1011/2326 \r
+f 1991/2060 2518/6050 2517/6051 \r
+f 1013/1038 2521/1037 2520/2541 2519/2542 \r
+f 2524/2545 2523/2546 2522/2543 2525/2544 \r
+f 2528/2549 2527/2550 2526/2547 2529/2548 \r
+f 2529/2548 2531/2552 2530/2551 2528/2549 \r
+f 2520/2541 2532/2553 2531/2552 2529/2548 \r
+f 2532/2553 2534/2555 2533/2554 2531/2552 \r
+f 1033/1054 2535/1053 2534/2555 2532/2553 \r
+f 2536/2556 2537/2557 1035/6106 1034/6107 \r
+f 2538/2558 2539/2559 2537/2557 2536/2556 \r
+f 2540/2560 2541/2561 2539/2559 2538/2558 \r
+f 2542/2562 2543/2563 2541/2561 2540/2560 \r
+f 2544/2564 2545/2565 2543/2563 2542/2562 \r
+f 2546/2566 2547/2567 2545/2565 2544/2564 \r
+f 2548/2568 2549/2569 2547/2567 2546/2566 \r
+f 2550/2570 2551/2571 2549/2569 2548/2568 \r
+f 2530/2551 2552/2572 2551/2571 2550/2570 \r
+f 2552/2572 2554/2574 2553/2573 2551/2571 \r
+f 2533/2554 2555/2575 2554/2574 2552/2572 \r
+f 2555/2575 2557/2577 2556/2576 2554/2574 \r
+f 2558/2578 2559/2579 2557/2577 2555/2575 \r
+f 1060/1082 2560/1081 2559/2579 2558/2578 \r
+f 2561/2580 2562/2581 1062/6108 1061/6109 \r
+f 2563/2582 2564/2583 2562/2581 2561/2580 \r
+f 2565/2584 2566/2585 2564/2583 2563/2582 \r
+f 2567/2586 2568/2587 2566/2585 2565/2584 \r
+f 2569/2588 2570/2589 2568/2587 2567/2586 \r
+f 2571/2590 2572/2591 2570/2589 2569/2588 \r
+f 2573/2592 2574/2593 2572/2591 2571/2590 \r
+f 2553/2573 2575/2594 2574/2593 2573/2592 \r
+f 2575/2594 2577/2596 2576/2595 2574/2593 \r
+f 2556/2576 2578/2597 2577/2596 2575/2594 \r
+f 2578/2597 2580/2599 2579/2598 2577/2596 \r
+f 2581/2600 2582/2601 2580/2599 2578/2597 \r
+f 2583/2602 2584/2603 2582/2601 2581/2600 \r
+f 2585/1110 1087/1109 2584/2603 2583/2602 \r
+f 2586/2604 2587/2605 1089/6110 1088/6111 \r
+f 2588/2606 2589/2607 2587/2605 2586/2604 \r
+f 2590/2608 2591/2609 2589/2607 2588/2606 \r
+f 2592/2610 2593/2611 2591/2609 2590/2608 \r
+f 2594/2612 2595/2613 2593/2611 2592/2610 \r
+f 2596/2614 2597/2615 2595/2613 2594/2612 \r
+f 2576/2595 2598/2616 2597/2615 2596/2614 \r
+f 2598/2616 2600/2618 2599/2617 2597/2615 \r
+f 2579/2598 2601/2619 2600/2618 2598/2616 \r
+f 2601/2619 2603/2621 2602/2620 2600/2618 \r
+f 2604/2622 2605/2623 2603/2621 2601/2619 \r
+f 2606/2624 2607/2625 2605/2623 2604/2622 \r
+f 2608/2626 2609/2627 2607/2625 2606/2624 \r
+f 1114/1138 2610/1137 2609/2627 2608/2626 \r
+f 2611/2628 2612/2629 1116/6112 1115/6113 \r
+f 2613/2630 2614/2631 2612/2629 2611/2628 \r
+f 2615/2632 2616/2633 2614/2631 2613/2630 \r
+f 2617/2634 2618/2635 2616/2633 2615/2632 \r
+f 2619/2636 2620/2637 2618/2635 2617/2634 \r
+f 2599/2617 2621/2638 2620/2637 2619/2636 \r
+f 2621/2638 2623/2640 2622/2639 2620/2637 \r
+f 2602/2620 2624/2641 2623/2640 2621/2638 \r
+f 2624/2641 2626/2643 2625/2642 2623/2640 \r
+f 2627/2644 2628/2645 2626/2643 2624/2641 \r
+f 2629/2646 2630/2647 2628/2645 2627/2644 \r
+f 2631/2648 2632/2649 2630/2647 2629/2646 \r
+f 2633/2650 2634/2651 2632/2649 2631/2648 \r
+f 2635/1166 1141/1165 2634/2651 2633/2650 \r
+f 2636/2652 2637/2653 1143/6114 1142/6115 \r
+f 2638/2654 2639/2655 2637/2653 2636/2652 \r
+f 2640/2656 2641/2657 2639/2655 2638/2654 \r
+f 2642/2658 2643/2659 2641/2657 2640/2656 \r
+f 2622/2639 2644/2660 2643/2659 2642/2658 \r
+f 2644/2660 2646/2662 2645/2661 2643/2659 \r
+f 2625/2642 2647/2663 2646/2662 2644/2660 \r
+f 2647/2663 2649/2665 2648/2664 2646/2662 \r
+f 2650/2666 2651/2667 2649/2665 2647/2663 \r
+f 2652/2668 2653/2669 2651/2667 2650/2666 \r
+f 2654/2670 2655/2671 2653/2669 2652/2668 \r
+f 2656/2672 2657/2673 2655/2671 2654/2670 \r
+f 2658/2674 2659/2675 2657/2673 2656/2672 \r
+f 2660/1194 2661/1193 2659/2675 2658/2674 \r
+f 2662/2676 2664/2677 2663/6116 1168/6117 \r
+f 2665/2678 2666/2679 2664/2677 2662/2676 \r
+f 2667/2680 2668/2681 2666/2679 2665/2678 \r
+f 2645/2661 2669/2682 2668/2681 2667/2680 \r
+f 2669/2682 2671/2684 2670/2683 2668/2681 \r
+f 2648/2664 2672/2685 2671/2684 2669/2682 \r
+f 2672/2685 2674/2687 2673/2686 2671/2684 \r
+f 2675/2688 2676/2689 2674/2687 2672/2685 \r
+f 2677/2690 2678/2691 2676/2689 2675/2688 \r
+f 2679/2692 2680/2693 2678/2691 2677/2690 \r
+f 2681/2694 2682/2695 2680/2693 2679/2692 \r
+f 2683/2696 2684/2697 2682/2695 2681/2694 \r
+f 2685/2698 2686/2699 2684/2697 2683/2696 \r
+f 1193/1222 1194/1221 2686/2699 2685/2698 \r
+f 2687/2700 2689/2701 1195/6118 2688/6119 \r
+f 2690/2702 2691/2703 2689/2701 2687/2700 \r
+f 2670/2683 2692/2704 2691/2703 2690/2702 \r
+f 2692/2704 2694/2706 2693/2705 2691/2703 \r
+f 2673/2686 2695/2707 2694/2706 2692/2704 \r
+f 2696/2708 2689/2701 2691/2703 2693/2705 \r
+f 2697/6120 1195/6118 2689/2701 2696/2708 \r
+f 2687/2700 2664/2677 2666/2679 2690/2702 \r
+f 2688/6119 2663/6116 2664/2677 2687/2700 \r
+f 2698/2709 2686/2699 1194/1221 1205/1236 \r
+f 2699/2710 2684/2697 2686/2699 2698/2709 \r
+f 2685/2698 2659/2675 2661/1193 1193/1222 \r
+f 2700/2711 2682/2695 2684/2697 2699/2710 \r
+f 2683/2696 2657/2673 2659/2675 2685/2698 \r
+f 2701/2712 2680/2693 2682/2695 2700/2711 \r
+f 2681/2694 2655/2671 2657/2673 2683/2696 \r
+f 2702/2713 2678/2691 2680/2693 2701/2712 \r
+f 2679/2692 2653/2669 2655/2671 2681/2694 \r
+f 2703/2714 2676/2689 2678/2691 2702/2713 \r
+f 2677/2690 2651/2667 2653/2669 2679/2692 \r
+f 2704/2715 2674/2687 2676/2689 2703/2714 \r
+f 2675/2688 2649/2665 2651/2667 2677/2690 \r
+f 2695/2707 2673/2686 2674/2687 2704/2715 \r
+f 2672/2685 2648/2664 2649/2665 2675/2688 \r
+f 2692/2704 2670/2683 2671/2684 2673/2686 \r
+f 2690/2702 2666/2679 2668/2681 2670/2683 \r
+f 2665/2678 2639/2655 2641/2657 2667/2680 \r
+f 2662/2676 2637/2653 2639/2655 2665/2678 \r
+f 1168/6117 1143/6114 2637/2653 2662/2676 \r
+f 2658/2674 2634/2651 1141/1165 2660/1194 \r
+f 2656/2672 2632/2649 2634/2651 2658/2674 \r
+f 2654/2670 2630/2647 2632/2649 2656/2672 \r
+f 2652/2668 2628/2645 2630/2647 2654/2670 \r
+f 2650/2666 2626/2643 2628/2645 2652/2668 \r
+f 2647/2663 2625/2642 2626/2643 2650/2666 \r
+f 2669/2682 2645/2661 2646/2662 2648/2664 \r
+f 2667/2680 2641/2657 2643/2659 2645/2661 \r
+f 2640/2656 2616/2633 2618/2635 2642/2658 \r
+f 2638/2654 2614/2631 2616/2633 2640/2656 \r
+f 2636/2652 2612/2629 2614/2631 2638/2654 \r
+f 1142/6115 1116/6112 2612/2629 2636/2652 \r
+f 2633/2650 2609/2627 2610/1137 2635/1166 \r
+f 2631/2648 2607/2625 2609/2627 2633/2650 \r
+f 2629/2646 2605/2623 2607/2625 2631/2648 \r
+f 2627/2644 2603/2621 2605/2623 2629/2646 \r
+f 2624/2641 2602/2620 2603/2621 2627/2644 \r
+f 2644/2660 2622/2639 2623/2640 2625/2642 \r
+f 2642/2658 2618/2635 2620/2637 2622/2639 \r
+f 2617/2634 2593/2611 2595/2613 2619/2636 \r
+f 2615/2632 2591/2609 2593/2611 2617/2634 \r
+f 2613/2630 2589/2607 2591/2609 2615/2632 \r
+f 2611/2628 2587/2605 2589/2607 2613/2630 \r
+f 1115/6113 1089/6110 2587/2605 2611/2628 \r
+f 2608/2626 2584/2603 1087/1109 1114/1138 \r
+f 2606/2624 2582/2601 2584/2603 2608/2626 \r
+f 2604/2622 2580/2599 2582/2601 2606/2624 \r
+f 2601/2619 2579/2598 2580/2599 2604/2622 \r
+f 2621/2638 2599/2617 2600/2618 2602/2620 \r
+f 2619/2636 2595/2613 2597/2615 2599/2617 \r
+f 2594/2612 2570/2589 2572/2591 2596/2614 \r
+f 2592/2610 2568/2587 2570/2589 2594/2612 \r
+f 2590/2608 2566/2585 2568/2587 2592/2610 \r
+f 2588/2606 2564/2583 2566/2585 2590/2608 \r
+f 2586/2604 2562/2581 2564/2583 2588/2606 \r
+f 1088/6111 1062/6108 2562/2581 2586/2604 \r
+f 2583/2602 2559/2579 2560/1081 2585/1110 \r
+f 2581/2600 2557/2577 2559/2579 2583/2602 \r
+f 2578/2597 2556/2576 2557/2577 2581/2600 \r
+f 2598/2616 2576/2595 2577/2596 2579/2598 \r
+f 2596/2614 2572/2591 2574/2593 2576/2595 \r
+f 2571/2590 2547/2567 2549/2569 2573/2592 \r
+f 2569/2588 2545/2565 2547/2567 2571/2590 \r
+f 2567/2586 2543/2563 2545/2565 2569/2588 \r
+f 2565/2584 2541/2561 2543/2563 2567/2586 \r
+f 2563/2582 2539/2559 2541/2561 2565/2584 \r
+f 2561/2580 2537/2557 2539/2559 2563/2582 \r
+f 1061/6109 1035/6106 2537/2557 2561/2580 \r
+f 2558/2578 2534/2555 2535/1053 1060/1082 \r
+f 2555/2575 2533/2554 2534/2555 2558/2578 \r
+f 2575/2594 2553/2573 2554/2574 2556/2576 \r
+f 2573/2592 2549/2569 2551/2571 2553/2573 \r
+f 2548/2568 2524/2545 2525/2544 2550/2570 \r
+f 2528/2549 2530/2551 2550/2570 2525/2544 \r
+f 2546/2566 2705/2716 2524/2545 2548/2568 \r
+f 2706/2717 2523/2546 2524/2545 2705/2716 \r
+f 2544/2564 2707/2718 2705/2716 2546/2566 \r
+f 2708/2719 2706/2717 2705/2716 2707/2718 \r
+f 2542/2562 2709/2720 2707/2718 2544/2564 \r
+f 2710/2721 2708/2719 2707/2718 2709/2720 \r
+f 2540/2560 2711/2722 2709/2720 2542/2562 \r
+f 2710/2721 2709/2720 2711/2722 2712/2723 \r
+f 2538/2558 2713/2724 2711/2722 2540/2560 \r
+f 2712/2723 2711/2722 2713/2724 2518/6179 \r
+f 2536/2556 2714/2725 2713/2724 2538/2558 \r
+f 2517/2540 2518/6179 2713/2724 2714/2725 \r
+f 1034/6107 1221/6125 2714/2725 2536/2556 \r
+f 1024/6127 2517/2540 2714/2725 1221/6125 \r
+f 2532/2553 2520/2541 2521/1037 1033/1054 \r
+f 2552/2572 2530/2551 2531/2552 2533/2554 \r
+f 2522/2543 2527/2550 2528/2549 2525/2544 \r
+f 2526/2547 2519/2542 2520/2541 2529/2548 \r
+f 2717/2728 2716/2729 2715/2726 2718/2727 \r
+f 2716/2729 2717/2728 2719/2730 2720/2731 \r
+f 2720/2731 2719/2730 2721/2732 2722/2733 \r
+f 2722/2733 2721/2732 2723/2734 2724/2735 \r
+f 2724/2735 2723/2734 2725/2736 2726/2737 \r
+f 2726/2737 2725/2736 2727/2738 2728/2739 \r
+f 1222/6137 2729/6135 2728/2739 2727/2738 \r
+f 2730/2741 1255/1272 1234/1271 2731/2740 \r
+f 2733/2742 2732/2743 2730/2741 2731/2740 \r
+f 2732/2743 2733/2742 2734/2744 2735/2745 \r
+f 2735/2745 2734/2744 2736/2746 2737/2747 \r
+f 2737/2747 2739/2749 2738/2748 2735/2745 \r
+f 2715/2726 2740/2750 2739/2749 2737/2747 \r
+f 2740/2750 2742/2752 2741/2751 2739/2749 \r
+f 2743/2753 2744/2754 2742/2752 2740/2750 \r
+f 2745/2755 2746/2756 2744/2754 2743/2753 \r
+f 2747/2757 2748/2758 2746/2756 2745/2755 \r
+f 2749/2759 2750/2760 2748/2758 2747/2757 \r
+f 2751/2761 2752/2762 2750/2760 2749/2759 \r
+f 2753/2763 2754/2764 2752/2762 2751/2761 \r
+f 1277/6144 1278/6143 2754/2764 2753/2763 \r
+f 2755/2765 2756/2766 1280/1300 1279/1303 \r
+f 2757/2767 2758/2768 2756/2766 2755/2765 \r
+f 2738/2748 2759/2769 2758/2768 2757/2767 \r
+f 2759/2769 2761/2771 2760/2770 2758/2768 \r
+f 2741/2751 2762/2772 2761/2771 2759/2769 \r
+f 2762/2772 2764/2774 2763/2773 2761/2771 \r
+f 2765/2775 2766/2776 2764/2774 2762/2772 \r
+f 2767/2777 2768/2778 2766/2776 2765/2775 \r
+f 2769/2779 2770/2780 2768/2778 2767/2777 \r
+f 2771/2781 2772/2782 2770/2780 2769/2779 \r
+f 2773/2783 2774/2784 2772/2782 2771/2781 \r
+f 2775/2785 2776/2786 2774/2784 2773/2783 \r
+f 2777/2787 2778/2788 2776/2786 2775/2785 \r
+f 1305/6146 1306/6145 2778/2788 2777/2787 \r
+f 2779/2789 2780/2790 1308/1328 1307/1331 \r
+f 2760/2770 2781/2791 2780/2790 2779/2789 \r
+f 2781/2791 2783/2793 2782/2792 2780/2790 \r
+f 2763/2773 2784/2794 2783/2793 2781/2791 \r
+f 2784/2794 2786/2796 2785/2795 2783/2793 \r
+f 2787/2797 2788/2798 2786/2796 2784/2794 \r
+f 2789/2799 2790/2800 2788/2798 2787/2797 \r
+f 2791/2801 2792/2802 2790/2800 2789/2799 \r
+f 2793/2803 2794/2804 2792/2802 2791/2801 \r
+f 2795/2805 2796/2806 2794/2804 2793/2803 \r
+f 2797/2807 2798/2808 2796/2806 2795/2805 \r
+f 2799/2809 2800/2810 2798/2808 2797/2807 \r
+f 2801/2811 2802/2812 2800/2810 2799/2809 \r
+f 1333/6148 1334/6147 2802/2812 2801/2811 \r
+f 2782/2792 2803/2813 1336/1356 1335/1358 \r
+f 2803/2813 2804/2814 1338/1359 1336/1356 \r
+f 2785/2795 2805/2815 2804/2814 2803/2813 \r
+f 2805/2815 2807/2817 2806/2816 2804/2814 \r
+f 2808/2818 2809/2819 2807/2817 2805/2815 \r
+f 2810/2820 2811/2821 2809/2819 2808/2818 \r
+f 2812/2822 2813/2823 2811/2821 2810/2820 \r
+f 2814/2824 2815/2825 2813/2823 2812/2822 \r
+f 2816/2826 2817/2827 2815/2825 2814/2824 \r
+f 2818/2828 2819/2829 2817/2827 2816/2826 \r
+f 2820/2830 2821/2831 2819/2829 2818/2828 \r
+f 2822/2832 2823/2833 2821/2831 2820/2830 \r
+f 2824/2834 2825/2835 2823/2833 2822/2832 \r
+f 1361/6150 2826/6149 2825/2835 2824/2834 \r
+f 2806/2816 2827/2836 1363/1384 1362/1386 \r
+f 2827/2836 2828/2837 1365/1387 1363/1384 \r
+f 2829/2838 2830/2839 2828/2837 2827/2836 \r
+f 2831/2840 2832/2841 2830/2839 2829/2838 \r
+f 2833/2842 2834/2843 2832/2841 2831/2840 \r
+f 2835/2844 2836/2845 2834/2843 2833/2842 \r
+f 2837/2846 2838/2847 2836/2845 2835/2844 \r
+f 2839/2848 2840/2849 2838/2847 2837/2846 \r
+f 2841/2850 2842/2851 2840/2849 2839/2848 \r
+f 2843/2852 2844/2853 2842/2851 2841/2850 \r
+f 2845/2854 2846/2855 2844/2853 2843/2852 \r
+f 2847/2856 2848/2857 2846/2855 2845/2854 \r
+f 2849/6152 1387/6151 2848/2857 2847/2856 \r
+f 2850/2858 2851/2859 1389/1411 1388/1414 \r
+f 2852/2860 2853/2861 2851/2859 2850/2858 \r
+f 2854/2862 2855/2863 2853/2861 2852/2860 \r
+f 2856/2864 2857/2865 2855/2863 2854/2862 \r
+f 2858/2866 2859/2867 2857/2865 2856/2864 \r
+f 2860/2868 2861/2869 2859/2867 2858/2866 \r
+f 2862/2870 2863/2871 2861/2869 2860/2868 \r
+f 2864/2872 2865/2873 2863/2871 2862/2870 \r
+f 2866/2874 2867/2875 2865/2873 2864/2872 \r
+f 2868/2876 2869/2877 2867/2875 2866/2874 \r
+f 2870/2878 2871/2879 2869/2877 2868/2876 \r
+f 1412/6154 2872/6153 2871/2879 2870/2878 \r
+f 2873/2880 2874/2881 1414/1437 1413/1440 \r
+f 2875/2882 2876/2883 2874/2881 2873/2880 \r
+f 2877/2884 2878/2885 2876/2883 2875/2882 \r
+f 2879/2886 2880/2887 2878/2885 2877/2884 \r
+f 2881/2888 2882/2889 2880/2887 2879/2886 \r
+f 2883/2890 2884/2891 2882/2889 2881/2888 \r
+f 2885/2892 2886/2893 2884/2891 2883/2890 \r
+f 2887/2894 2888/2895 2886/2893 2885/2892 \r
+f 2889/2896 2890/2897 2888/2895 2887/2894 \r
+f 2891/2898 2892/2899 2890/2897 2889/2896 \r
+f 2893/2900 2894/2901 2892/2899 2891/2898 \r
+f 2895/6156 1437/6155 2894/2901 2893/2900 \r
+f 2896/2902 2897/2903 1439/1463 1438/1466 \r
+f 2898/2904 2899/2905 2897/2903 2896/2902 \r
+f 2900/2906 2901/2907 2899/2905 2898/2904 \r
+f 2902/2908 2903/2909 2901/2907 2900/2906 \r
+f 2904/2910 2905/2911 2903/2909 2902/2908 \r
+f 2906/2912 2907/2913 2905/2911 2904/2910 \r
+f 2908/2914 2909/2915 2907/2913 2906/2912 \r
+f 2910/2916 2911/2917 2909/2915 2908/2914 \r
+f 2912/2918 2913/2919 2911/2917 2910/2916 \r
+f 2914/2920 2915/2921 2913/2919 2912/2918 \r
+f 2916/2922 2917/2923 2915/2921 2914/2920 \r
+f 1462/6158 2918/6157 2917/2923 2916/2922 \r
+f 2919/2924 2920/2925 1464/1489 1463/1492 \r
+f 2921/2926 2922/2927 2920/2925 2919/2924 \r
+f 2923/2928 2924/2929 2922/2927 2921/2926 \r
+f 2925/2930 2926/2931 2924/2929 2923/2928 \r
+f 2927/2932 2928/2933 2926/2931 2925/2930 \r
+f 2929/2934 2930/2935 2928/2933 2927/2932 \r
+f 2931/2936 2932/2937 2930/2935 2929/2934 \r
+f 2933/2938 2934/2939 2932/2937 2931/2936 \r
+f 2935/2940 2936/2941 2934/2939 2933/2938 \r
+f 2937/2942 2938/2943 2936/2941 2935/2940 \r
+f 2939/2944 2940/2945 2938/2943 2937/2942 \r
+f 2941/6160 2942/6159 2940/2945 2939/2944 \r
+f 2943/2946 2944/2947 1488/1515 1487/1518 \r
+f 2945/2948 2946/2949 2944/2947 2943/2946 \r
+f 2947/2950 2948/2951 2946/2949 2945/2948 \r
+f 2949/2952 2950/2953 2948/2951 2947/2950 \r
+f 2951/2954 2952/2955 2950/2953 2949/2952 \r
+f 2953/2956 2954/2957 2952/2955 2951/2954 \r
+f 2955/2958 2956/2959 2954/2957 2953/2956 \r
+f 2957/2960 2958/2961 2956/2959 2955/2958 \r
+f 2959/2962 2960/2963 2958/2961 2957/2960 \r
+f 2961/2964 2962/2965 2960/2963 2959/2962 \r
+f 2963/2966 2964/2967 2962/2965 2961/2964 \r
+f 1511/6162 2965/6161 2964/2967 2963/2966 \r
+f 2966/2968 2968/2969 1512/1541 2967/1544 \r
+f 2969/2970 2970/2971 2968/2969 2966/2968 \r
+f 2971/2972 2972/2973 2970/2971 2969/2970 \r
+f 2973/2974 2974/2975 2972/2973 2971/2972 \r
+f 2975/2976 2976/2977 2974/2975 2973/2974 \r
+f 2977/2978 2978/2979 2976/2977 2975/2976 \r
+f 2979/2980 2980/2981 2978/2979 2977/2978 \r
+f 2981/2982 2982/2983 2980/2981 2979/2980 \r
+f 2983/2984 2984/2985 2982/2983 2981/2982 \r
+f 2985/2986 2986/2987 2984/2985 2983/2984 \r
+f 2987/2988 2988/2989 2986/2987 2985/2986 \r
+f 2989/6164 1535/6163 2988/2989 2987/2988 \r
+f 2990/2990 2988/2989 1535/6163 1235/6166 \r
+f 2987/2988 2964/2967 2965/6161 2989/6164 \r
+f 2991/2991 2986/2987 2988/2989 2990/2990 \r
+f 2985/2986 2962/2965 2964/2967 2987/2988 \r
+f 2992/2992 2984/2985 2986/2987 2991/2991 \r
+f 2983/2984 2960/2963 2962/2965 2985/2986 \r
+f 2993/2993 2982/2983 2984/2985 2992/2992 \r
+f 2981/2982 2958/2961 2960/2963 2983/2984 \r
+f 2994/2994 2980/2981 2982/2983 2993/2993 \r
+f 2995/2995 2978/2979 2980/2981 2994/2994 \r
+f 2979/2980 2956/2959 2958/2961 2981/2982 \r
+f 2977/2978 2954/2957 2956/2959 2979/2980 \r
+f 2996/2996 2976/2977 2978/2979 2995/2995 \r
+f 2975/2976 2952/2955 2954/2957 2977/2978 \r
+f 2997/2997 2974/2975 2976/2977 2996/2996 \r
+f 2997/2997 2998/2998 2972/2973 2974/2975 \r
+f 2973/2974 2950/2953 2952/2955 2975/2976 \r
+f 2971/2972 2948/2951 2950/2953 2973/2974 \r
+f 2999/2999 2970/2971 2972/2973 2998/2998 \r
+f 2969/2970 2946/2949 2948/2951 2971/2972 \r
+f 3000/3000 2968/2969 2970/2971 2999/2999 \r
+f 2966/2968 2944/2947 2946/2949 2969/2970 \r
+f 1247/1579 1512/1541 2968/2969 3000/3000 \r
+f 2967/1544 1488/1515 2944/2947 2966/2968 \r
+f 2963/2966 2940/2945 2942/6159 1511/6162 \r
+f 2961/2964 2938/2943 2940/2945 2963/2966 \r
+f 2959/2962 2936/2941 2938/2943 2961/2964 \r
+f 2957/2960 2934/2939 2936/2941 2959/2962 \r
+f 2955/2958 2932/2937 2934/2939 2957/2960 \r
+f 2953/2956 2930/2935 2932/2937 2955/2958 \r
+f 2951/2954 2928/2933 2930/2935 2953/2956 \r
+f 2949/2952 2926/2931 2928/2933 2951/2954 \r
+f 2947/2950 2924/2929 2926/2931 2949/2952 \r
+f 2945/2948 2922/2927 2924/2929 2947/2950 \r
+f 2943/2946 2920/2925 2922/2927 2945/2948 \r
+f 1487/1518 1464/1489 2920/2925 2943/2946 \r
+f 2939/2944 2917/2923 2918/6157 2941/6160 \r
+f 2937/2942 2915/2921 2917/2923 2939/2944 \r
+f 2935/2940 2913/2919 2915/2921 2937/2942 \r
+f 2933/2938 2911/2917 2913/2919 2935/2940 \r
+f 2931/2936 2909/2915 2911/2917 2933/2938 \r
+f 2929/2934 2907/2913 2909/2915 2931/2936 \r
+f 2927/2932 2905/2911 2907/2913 2929/2934 \r
+f 2925/2930 2903/2909 2905/2911 2927/2932 \r
+f 2923/2928 2901/2907 2903/2909 2925/2930 \r
+f 2921/2926 2899/2905 2901/2907 2923/2928 \r
+f 2919/2924 2897/2903 2899/2905 2921/2926 \r
+f 1463/1492 1439/1463 2897/2903 2919/2924 \r
+f 2916/2922 2894/2901 1437/6155 1462/6158 \r
+f 2914/2920 2892/2899 2894/2901 2916/2922 \r
+f 2912/2918 2890/2897 2892/2899 2914/2920 \r
+f 2910/2916 2888/2895 2890/2897 2912/2918 \r
+f 2908/2914 2886/2893 2888/2895 2910/2916 \r
+f 2906/2912 2884/2891 2886/2893 2908/2914 \r
+f 2904/2910 2882/2889 2884/2891 2906/2912 \r
+f 2902/2908 2880/2887 2882/2889 2904/2910 \r
+f 2900/2906 2878/2885 2880/2887 2902/2908 \r
+f 2898/2904 2876/2883 2878/2885 2900/2906 \r
+f 2896/2902 2874/2881 2876/2883 2898/2904 \r
+f 1438/1466 1414/1437 2874/2881 2896/2902 \r
+f 2893/2900 2871/2879 2872/6153 2895/6156 \r
+f 2891/2898 2869/2877 2871/2879 2893/2900 \r
+f 2889/2896 2867/2875 2869/2877 2891/2898 \r
+f 2887/2894 2865/2873 2867/2875 2889/2896 \r
+f 2885/2892 2863/2871 2865/2873 2887/2894 \r
+f 2883/2890 2861/2869 2863/2871 2885/2892 \r
+f 2881/2888 2859/2867 2861/2869 2883/2890 \r
+f 2879/2886 2857/2865 2859/2867 2881/2888 \r
+f 2877/2884 2855/2863 2857/2865 2879/2886 \r
+f 2875/2882 2853/2861 2855/2863 2877/2884 \r
+f 2873/2880 2851/2859 2853/2861 2875/2882 \r
+f 1413/1440 1389/1411 2851/2859 2873/2880 \r
+f 2870/2878 2848/2857 1387/6151 1412/6154 \r
+f 2868/2876 2846/2855 2848/2857 2870/2878 \r
+f 2866/2874 2844/2853 2846/2855 2868/2876 \r
+f 2864/2872 2842/2851 2844/2853 2866/2874 \r
+f 2862/2870 2840/2849 2842/2851 2864/2872 \r
+f 2860/2868 2838/2847 2840/2849 2862/2870 \r
+f 2858/2866 2836/2845 2838/2847 2860/2868 \r
+f 2856/2864 2834/2843 2836/2845 2858/2866 \r
+f 2854/2862 2832/2841 2834/2843 2856/2864 \r
+f 2852/2860 2830/2839 2832/2841 2854/2862 \r
+f 2850/2858 2828/2837 2830/2839 2852/2860 \r
+f 1388/1414 1365/1387 2828/2837 2850/2858 \r
+f 2847/2856 2825/2835 2826/6149 2849/6152 \r
+f 2845/2854 2823/2833 2825/2835 2847/2856 \r
+f 2843/2852 2821/2831 2823/2833 2845/2854 \r
+f 2841/2850 2819/2829 2821/2831 2843/2852 \r
+f 2839/2848 2817/2827 2819/2829 2841/2850 \r
+f 2837/2846 2815/2825 2817/2827 2839/2848 \r
+f 2835/2844 2813/2823 2815/2825 2837/2846 \r
+f 2833/2842 2811/2821 2813/2823 2835/2844 \r
+f 2831/2840 2809/2819 2811/2821 2833/2842 \r
+f 2829/2838 2807/2817 2809/2819 2831/2840 \r
+f 2827/2836 2806/2816 2807/2817 2829/2838 \r
+f 2824/2834 2802/2812 1334/6147 1361/6150 \r
+f 2822/2832 2800/2810 2802/2812 2824/2834 \r
+f 2820/2830 2798/2808 2800/2810 2822/2832 \r
+f 2818/2828 2796/2806 2798/2808 2820/2830 \r
+f 2816/2826 2794/2804 2796/2806 2818/2828 \r
+f 2814/2824 2792/2802 2794/2804 2816/2826 \r
+f 2812/2822 2790/2800 2792/2802 2814/2824 \r
+f 2810/2820 2788/2798 2790/2800 2812/2822 \r
+f 2808/2818 2786/2796 2788/2798 2810/2820 \r
+f 2805/2815 2785/2795 2786/2796 2808/2818 \r
+f 1362/1386 1338/1359 2804/2814 2806/2816 \r
+f 2801/2811 2778/2788 1306/6145 1333/6148 \r
+f 2799/2809 2776/2786 2778/2788 2801/2811 \r
+f 2797/2807 2774/2784 2776/2786 2799/2809 \r
+f 2795/2805 2772/2782 2774/2784 2797/2807 \r
+f 2793/2803 2770/2780 2772/2782 2795/2805 \r
+f 2791/2801 2768/2778 2770/2780 2793/2803 \r
+f 2789/2799 2766/2776 2768/2778 2791/2801 \r
+f 2787/2797 2764/2774 2766/2776 2789/2799 \r
+f 2784/2794 2763/2773 2764/2774 2787/2797 \r
+f 2803/2813 2782/2792 2783/2793 2785/2795 \r
+f 1335/1358 1308/1328 2780/2790 2782/2792 \r
+f 1307/1331 1280/1300 2756/2766 2779/2789 \r
+f 2777/2787 2754/2764 1278/6143 1305/6146 \r
+f 2775/2785 2752/2762 2754/2764 2777/2787 \r
+f 2773/2783 2750/2760 2752/2762 2775/2785 \r
+f 2771/2781 2748/2758 2750/2760 2773/2783 \r
+f 2769/2779 2746/2756 2748/2758 2771/2781 \r
+f 2767/2777 2744/2754 2746/2756 2769/2779 \r
+f 2765/2775 2742/2752 2744/2754 2767/2777 \r
+f 2762/2772 2741/2751 2742/2752 2765/2775 \r
+f 2781/2791 2760/2770 2761/2771 2763/2773 \r
+f 2779/2789 2756/2766 2758/2768 2760/2770 \r
+f 2755/2765 2730/2741 2732/2743 2757/2767 \r
+f 1279/1303 1255/1272 2730/2741 2755/2765 \r
+f 2753/2763 2728/2739 2729/6135 1277/6144 \r
+f 2751/2761 2726/2737 2728/2739 2753/2763 \r
+f 2749/2759 2724/2735 2726/2737 2751/2761 \r
+f 2747/2757 2722/2733 2724/2735 2749/2759 \r
+f 2745/2755 2720/2731 2722/2733 2747/2757 \r
+f 2743/2753 2716/2729 2720/2731 2745/2755 \r
+f 2740/2750 2715/2726 2716/2729 2743/2753 \r
+f 2759/2769 2738/2748 2739/2749 2741/2751 \r
+f 2757/2767 2732/2743 2735/2745 2738/2748 \r
+f 2737/2747 2736/2746 2718/2727 2715/2726 \r
+f 1717/1791 1710/1784 2526/6052 1725/1799 \r
+f 2519/6053 2526/6052 1710/1784 \r
+f 1725/1799 2526/6052 2527/6054 \r
+f 2522/6055 2523/6056 1729/1803 1727/1801 \r
+f 1729/1803 2523/6056 2706/6057 1731/1805 \r
+f 2708/6058 2710/6059 1733/1807 \r
+f 2710/6059 2712/6060 2003/2071 \r
+f 2518/6050 1991/2060 2712/6060 \r
+f 1976/2049 1991/2060 2517/6051 \r
+f 1965/2039 447/6433 2727/6061 \r
+f 1953/2027 1965/2039 2717/6100 1952/2026 \r
+f 1952/2026 2717/6100 2718/6101 1951/2025 \r
+f 1234/6455 446/6431 2731/6102 \r
+f 1972/2046 1973/2047 2990/6103 \r
+f 2990/6103 1973/2047 2991/6104 \r
+f 2244/2354 2997/6105 2996/6121 \r
+f 735/6442 1247/6456 3000/6122 \r
+f 1976/2049 2517/6051 458/465 \r
+f 2712/6060 1992/2059 2003/2071 \r
+f 2710/6059 2003/2071 1733/1807 \r
+f 2708/6058 1731/1805 2706/6057 \r
+f 2708/6058 1733/1807 1731/1805 \r
+f 458/465 2517/6051 1024/1600 \r
+f 2712/6060 1991/2060 1992/2059 \r
+f 2522/6055 1727/1801 1725/1799 2527/6054 \r
+f 2519/6053 182/188 1013/1601 \r
+f 2519/6053 1710/1784 182/188 \r
+f 1965/2039 2719/6123 2717/6100 \r
+f 1965/2039 2721/6124 2719/6123 \r
+f 1965/2039 2723/6126 2721/6124 \r
+f 1965/2039 2725/6128 2723/6126 \r
+f 1965/2039 2727/6061 2725/6128 \r
+f 2727/6061 447/6433 1222/6457 \r
+f 1951/2025 2718/6101 1963/2037 \r
+f 2736/6129 1963/2037 2718/6101 \r
+f 2734/6130 1963/2037 2736/6129 \r
+f 2733/6131 1963/2037 2734/6130 \r
+f 446/6431 1963/2037 2733/6131 2731/6102 \r
+f 2245/2355 2998/6132 2997/6105 \r
+f 2245/2355 2999/6133 2998/6132 \r
+f 2245/2355 2997/6105 2244/2354 \r
+f 2245/2355 735/6442 3000/6122 2999/6133 \r
+f 2996/6121 2995/6134 2243/2353 2244/2354 \r
+f 2243/2353 2995/6134 2994/6136 \r
+f 2243/2353 2994/6136 2993/6138 1973/2047 \r
+f 2992/6139 1973/2047 2993/6138 \r
+f 2991/6104 1973/2047 2992/6139 \r
+f 455/6440 2990/6103 1235/6458 \r
+f 1972/2046 2990/6103 455/6440 \r
+f 4536/3003 3001/3004 3002/3001 4537/3002 \r
+f 3004/3005 3003/3006 3001/3004 4536/3003 \r
+f 3006/3007 3005/3008 3003/3006 3004/3005 \r
+f 3008/3009 3007/3010 3005/3008 3006/3007 \r
+f 3010/3011 3009/3012 3007/3010 3008/3009 \r
+f 3012/3013 3011/3014 3009/3012 3010/3011 \r
+f 3002/3001 3001/3004 3013/3015 3014/3016 \r
+f 3001/3004 3003/3006 3015/3017 3013/3015 \r
+f 3005/3008 3016/3018 3015/3017 3003/3006 \r
+f 3007/3010 3017/3019 3016/3018 3005/3008 \r
+f 3009/3012 3018/3020 3017/3019 3007/3010 \r
+f 3011/3014 3019/3021 3018/3020 3009/3012 \r
+f 3014/3016 3013/3015 3020/3022 3021/3023 \r
+f 3013/3015 3015/3017 3022/3024 3020/3022 \r
+f 3016/3018 3023/3025 3022/3024 3015/3017 \r
+f 3017/3019 3024/3026 3023/3025 3016/3018 \r
+f 3018/3020 3025/3027 3024/3026 3017/3019 \r
+f 3019/3021 3026/3028 3025/3027 3018/3020 \r
+f 3021/3023 3020/3022 3027/3029 3028/3030 \r
+f 3020/3022 3022/3024 3029/3031 3027/3029 \r
+f 3023/3025 3030/3032 3029/3031 3022/3024 \r
+f 3024/3026 3031/3033 3030/3032 3023/3025 \r
+f 3025/3027 3032/3034 3031/3033 3024/3026 \r
+f 3026/3028 3033/3035 3032/3034 3025/3027 \r
+f 3028/3030 3027/3029 3034/3036 3035/3037 \r
+f 3029/3031 3036/3038 3034/3036 3027/3029 \r
+f 3030/3032 3037/3039 3036/3038 3029/3031 \r
+f 3031/3033 3038/3040 3037/3039 3030/3032 \r
+f 3032/3034 3039/3041 3038/3040 3031/3033 \r
+f 3033/3035 3040/3042 3039/3041 3032/3034 \r
+f 3035/3037 3034/3036 3041/3043 3042/3044 \r
+f 3036/3038 3043/3045 3041/3043 3034/3036 \r
+f 3037/3039 3044/3046 3043/3045 3036/3038 \r
+f 3038/3040 3045/3047 3044/3046 3037/3039 \r
+f 3039/3041 3046/3048 3045/3047 3038/3040 \r
+f 3040/3042 3047/3049 3046/3048 3039/3041 \r
+f 3048/3050 3049/3051 3042/3044 3041/3043 \r
+f 3050/3052 3048/3050 3041/3043 3043/3045 \r
+f 3051/3053 3050/3052 3043/3045 3044/3046 \r
+f 3052/3054 3051/3053 3044/3046 3045/3047 \r
+f 3053/3055 3052/3054 3045/3047 3046/3048 \r
+f 3054/3056 3053/3055 3046/3048 3047/3049 \r
+f 3055/3057 3056/3058 3049/3051 3048/3050 \r
+f 3057/3059 3055/3057 3048/3050 3050/3052 \r
+f 3058/3060 3057/3059 3050/3052 3051/3053 \r
+f 3059/3061 3058/3060 3051/3053 3052/3054 \r
+f 3060/3062 3059/3061 3052/3054 3053/3055 \r
+f 3061/3063 3060/3062 3053/3055 3054/3056 \r
+f 3062/3064 3063/3065 3056/3058 3055/3057 \r
+f 3064/3066 3062/3064 3055/3057 3057/3059 \r
+f 3065/3067 3064/3066 3057/3059 3058/3060 \r
+f 3066/3068 3065/3067 3058/3060 3059/3061 \r
+f 3067/3069 3066/3068 3059/3061 3060/3062 \r
+f 3068/3070 3067/3069 3060/3062 3061/3063 \r
+f 3069/3071 3070/3072 3063/3065 3062/3064 \r
+f 3071/3073 3069/3071 3062/3064 3064/3066 \r
+f 3072/3074 3071/3073 3064/3066 3065/3067 \r
+f 3073/3075 3072/3074 3065/3067 3066/3068 \r
+f 3074/3076 3073/3075 3066/3068 3067/3069 \r
+f 3075/3077 3074/3076 3067/3069 3068/3070 \r
+f 3070/3072 3069/3071 3076/3078 3077/3079 \r
+f 3078/3080 3076/3078 3069/3071 3071/3073 \r
+f 3079/3081 3078/3080 3071/3073 3072/3074 \r
+f 3080/3082 3079/3081 3072/3074 3073/3075 \r
+f 3081/3083 3080/3082 3073/3075 3074/3076 \r
+f 3082/3084 3081/3083 3074/3076 3075/3077 \r
+f 3083/3085 3084/3086 3077/3079 3076/3078 \r
+f 3085/3087 3083/3085 3076/3078 3078/3080 \r
+f 3086/3088 3085/3087 3078/3080 3079/3081 \r
+f 3087/3089 3086/3088 3079/3081 3080/3082 \r
+f 3088/3090 3087/3089 3080/3082 3081/3083 \r
+f 3089/3091 3088/3090 3081/3083 3082/3084 \r
+f 3084/3086 3083/3085 3090/3092 3091/3093 \r
+f 3083/3085 3085/3087 3092/3094 3090/3092 \r
+f 3085/3087 3086/3088 3093/3095 3092/3094 \r
+f 3086/3088 3087/3089 3094/3096 3093/3095 \r
+f 3087/3089 3088/3090 3095/3097 3094/3096 \r
+f 3089/3091 3096/3098 3095/3097 3088/3090 \r
+f 3091/3093 3090/3092 3097/3099 3098/3100 \r
+f 3090/3092 3092/3094 3099/3101 3097/3099 \r
+f 3092/3094 3093/3095 3100/3102 3099/3101 \r
+f 3093/3095 3094/3096 3101/3103 3100/3102 \r
+f 3094/3096 3095/3097 3102/3104 3101/3103 \r
+f 3095/3097 3096/3098 3103/3105 3102/3104 \r
+f 3098/3100 3097/3099 3104/3106 3105/3107 \r
+f 3097/3099 3099/3101 3106/3108 3104/3106 \r
+f 3099/3101 3100/3102 3107/3109 3106/3108 \r
+f 3100/3102 3101/3103 3108/3110 3107/3109 \r
+f 3101/3103 3102/3104 3109/3111 3108/3110 \r
+f 3102/3104 3103/3105 3110/3112 3109/3111 \r
+f 3105/3107 3104/3106 3111/3113 3112/3114 \r
+f 3104/3106 3106/3108 3113/3115 3111/3113 \r
+f 3106/3108 3107/3109 3114/3116 3113/3115 \r
+f 3107/3109 3108/3110 3115/3117 3114/3116 \r
+f 3108/3110 3109/3111 3116/3118 3115/3117 \r
+f 3109/3111 3110/3112 3117/3119 3116/3118 \r
+f 3112/3114 3111/3113 3118/3120 3119/3121 \r
+f 3111/3113 3113/3115 3120/3122 3118/3120 \r
+f 3113/3115 3114/3116 3121/3123 3120/3122 \r
+f 3114/3116 3115/3117 3122/3124 3121/3123 \r
+f 3115/3117 3116/3118 3123/3125 3122/3124 \r
+f 3116/3118 3117/3119 3124/3126 3123/3125 \r
+f 3119/6230 3118/3120 3125/3127 3126/3128 \r
+f 3118/3120 3120/3122 3127/3129 3125/3127 \r
+f 3120/3122 3121/3123 3128/3130 3127/3129 \r
+f 3121/3123 3122/3124 3129/3131 3128/3130 \r
+f 3122/3124 3123/3125 3130/3132 3129/3131 \r
+f 3123/3125 3124/3126 3131/3133 3130/3132 \r
+f 3126/3128 3125/3127 3132/3134 3133/3135 \r
+f 3125/3127 3127/3129 3134/3136 3132/3134 \r
+f 3127/3129 3128/3130 3135/3137 3134/3136 \r
+f 3128/3130 3129/3131 3136/3138 3135/3137 \r
+f 3129/3131 3130/3132 3137/3139 3136/3138 \r
+f 3130/3132 3131/3133 3138/3140 3137/3139 \r
+f 3133/3135 3132/3134 3139/3141 3140/3142 \r
+f 3132/3134 3134/3136 3141/3143 3139/3141 \r
+f 3134/3136 3135/3137 3142/3144 3141/3143 \r
+f 3135/3137 3136/3138 3143/3145 3142/3144 \r
+f 3136/3138 3137/3139 3144/3146 3143/3145 \r
+f 3137/3139 3138/3140 3145/3147 3144/3146 \r
+f 3140/3142 3139/3141 3146/3148 3147/3149 \r
+f 3139/3141 3141/3143 3148/3150 3146/3148 \r
+f 3141/3143 3142/3144 3149/3151 3148/3150 \r
+f 3142/3144 3143/3145 3150/3152 3149/3151 \r
+f 3143/3145 3144/3146 3151/3153 3150/3152 \r
+f 3144/3146 3145/3147 3152/3154 3151/3153 \r
+f 3147/3149 3146/3148 3153/3155 3154/3156 \r
+f 3146/3148 3148/3150 3155/3157 3153/3155 \r
+f 3148/3150 3149/3151 3156/3158 3155/3157 \r
+f 3149/3151 3150/3152 3157/3159 3156/3158 \r
+f 3150/3152 3151/3153 3158/3160 3157/3159 \r
+f 3151/3153 3152/3154 3159/3161 3158/3160 \r
+f 3154/3156 3153/3155 3160/3162 3161/3163 \r
+f 3153/3155 3155/3157 3162/3164 3160/3162 \r
+f 3155/3157 3156/3158 3163/3165 3162/3164 \r
+f 3156/3158 3157/3159 3164/3166 3163/3165 \r
+f 3157/3159 3158/3160 3165/3167 3164/3166 \r
+f 3158/3160 3159/3161 3166/3168 3165/3167 \r
+f 3161/3163 3160/3162 3167/3169 3168/3170 \r
+f 3160/3162 3162/3164 3169/3171 3167/3169 \r
+f 3162/3164 3163/3165 3170/3172 3169/3171 \r
+f 3163/3165 3164/3166 3171/3173 3170/3172 \r
+f 3164/3166 3165/3167 3172/3174 3171/3173 \r
+f 3165/3167 3166/3168 3173/3175 3172/3174 \r
+f 3175/3176 3174/3177 3011/3014 3012/3013 \r
+f 4700/3178 3176/3179 3174/3177 3175/3176 \r
+f 4702/3180 3177/3181 3176/3179 4700/3178 \r
+f 4704/3182 3178/3183 3177/3181 4702/3180 \r
+f 4706/3184 3179/3185 3178/3183 4704/3182 \r
+f 4708/3186 3180/3187 3179/3185 4706/3184 \r
+f 3182/3188 3181/3189 3180/3187 4708/3186 \r
+f 3174/3177 3183/3190 3019/3021 3011/3014 \r
+f 3176/3179 3184/3191 3183/3190 3174/3177 \r
+f 3177/3181 3185/3192 3184/3191 3176/3179 \r
+f 3178/3183 3186/3193 3185/3192 3177/3181 \r
+f 3179/3185 3187/3194 3186/3193 3178/3183 \r
+f 3180/3187 3188/3195 3187/3194 3179/3185 \r
+f 3181/3189 3189/3196 3188/3195 3180/3187 \r
+f 3183/3190 3195/3197 3026/3028 3019/3021 \r
+f 3184/3191 3196/3198 3195/3197 3183/3190 \r
+f 3185/3192 3197/3199 3196/3198 3184/3191 \r
+f 3186/3193 3198/3200 3197/3199 3185/3192 \r
+f 3187/3194 3199/3201 3198/3200 3186/3193 \r
+f 3188/3195 3200/3202 3199/3201 3187/3194 \r
+f 3189/3196 3201/3203 3200/3202 3188/3195 \r
+f 3190/3204 3202/3205 3201/3203 3189/3196 \r
+f 3191/3206 3203/3207 3202/3205 3190/3204 \r
+f 3192/3208 3204/3209 3203/3207 3191/3206 \r
+f 3193/3210 3205/3211 3204/3209 3192/3208 \r
+f 3194/3212 3206/3213 3205/3211 3193/3210 \r
+f 3195/3197 3207/3214 3033/3035 3026/3028 \r
+f 3196/3198 3208/3215 3207/3214 3195/3197 \r
+f 3197/3199 3209/3216 3208/3215 3196/3198 \r
+f 3198/3200 3210/3217 3209/3216 3197/3199 \r
+f 3199/3201 3211/3218 3210/3217 3198/3200 \r
+f 3200/3202 3212/3219 3211/3218 3199/3201 \r
+f 3201/3203 3213/3220 3212/3219 3200/3202 \r
+f 3202/3205 3214/3221 3213/3220 3201/3203 \r
+f 3203/3207 3215/3222 3214/3221 3202/3205 \r
+f 3204/3209 3216/3223 3215/3222 3203/3207 \r
+f 3205/3211 3217/3224 3216/3223 3204/3209 \r
+f 3206/3213 3218/3225 3217/3224 3205/3211 \r
+f 3207/3214 3219/3226 3040/3042 3033/3035 \r
+f 3208/3215 3220/3227 3219/3226 3207/3214 \r
+f 3209/3216 3221/3228 3220/3227 3208/3215 \r
+f 3210/3217 3222/3229 3221/3228 3209/3216 \r
+f 3211/3218 3223/3230 3222/3229 3210/3217 \r
+f 3212/3219 3224/3231 3223/3230 3211/3218 \r
+f 3213/3220 3225/3232 3224/3231 3212/3219 \r
+f 3214/3221 3226/3233 3225/3232 3213/3220 \r
+f 3215/3222 3227/3234 3226/3233 3214/3221 \r
+f 3216/3223 3228/3235 3227/3234 3215/3222 \r
+f 3217/3224 3229/3236 3228/3235 3216/3223 \r
+f 3218/3225 3230/3237 3229/3236 3217/3224 \r
+f 3219/3226 3231/3238 3047/3049 3040/3042 \r
+f 3220/3227 3232/3239 3231/3238 3219/3226 \r
+f 3221/3228 3233/3240 3232/3239 3220/3227 \r
+f 3222/3229 3234/3241 3233/3240 3221/3228 \r
+f 3223/3230 3235/3242 3234/3241 3222/3229 \r
+f 3224/3231 3236/3243 3235/3242 3223/3230 \r
+f 3225/3232 3237/3244 3236/3243 3224/3231 \r
+f 3226/3233 3238/3245 3237/3244 3225/3232 \r
+f 3227/3234 3239/3246 3238/3245 3226/3233 \r
+f 3228/3235 3240/3247 3239/3246 3227/3234 \r
+f 3229/3236 3241/3248 3240/3247 3228/3235 \r
+f 3230/3237 3242/3249 3241/3248 3229/3236 \r
+f 3243/3250 3054/3056 3047/3049 3231/3238 \r
+f 3244/3251 3243/3250 3231/3238 3232/3239 \r
+f 3245/3252 3244/3251 3232/3239 3233/3240 \r
+f 3246/3253 3245/3252 3233/3240 3234/3241 \r
+f 3247/3254 3246/3253 3234/3241 3235/3242 \r
+f 3248/3255 3247/3254 3235/3242 3236/3243 \r
+f 3249/3256 3248/3255 3236/3243 3237/3244 \r
+f 3250/3257 3249/3256 3237/3244 3238/3245 \r
+f 3251/3258 3250/3257 3238/3245 3239/3246 \r
+f 3252/3259 3251/3258 3239/3246 3240/3247 \r
+f 3253/3260 3252/3259 3240/3247 3241/3248 \r
+f 3254/3261 3253/3260 3241/3248 3242/3249 \r
+f 3255/3262 3061/3063 3054/3056 3243/3250 \r
+f 3256/3263 3255/3262 3243/3250 3244/3251 \r
+f 3257/3264 3256/3263 3244/3251 3245/3252 \r
+f 3258/3265 3257/3264 3245/3252 3246/3253 \r
+f 3259/3266 3258/3265 3246/3253 3247/3254 \r
+f 3260/3267 3259/3266 3247/3254 3248/3255 \r
+f 3261/3268 3260/3267 3248/3255 3249/3256 \r
+f 3262/3269 3261/3268 3249/3256 3250/3257 \r
+f 3263/3270 3262/3269 3250/3257 3251/3258 \r
+f 3264/3271 3263/3270 3251/3258 3252/3259 \r
+f 3265/3272 3264/3271 3252/3259 3253/3260 \r
+f 3266/3273 3265/3272 3253/3260 3254/3261 \r
+f 3267/3274 3068/3070 3061/3063 3255/3262 \r
+f 3268/3275 3267/3274 3255/3262 3256/3263 \r
+f 3269/3276 3268/3275 3256/3263 3257/3264 \r
+f 3270/3277 3269/3276 3257/3264 3258/3265 \r
+f 3271/3278 3270/3277 3258/3265 3259/3266 \r
+f 3272/3279 3271/3278 3259/3266 3260/3267 \r
+f 3273/3280 3272/3279 3260/3267 3261/3268 \r
+f 3274/3281 3273/3280 3261/3268 3262/3269 \r
+f 3275/3282 3274/3281 3262/3269 3263/3270 \r
+f 3276/3283 3275/3282 3263/3270 3264/3271 \r
+f 3277/3284 3276/3283 3264/3271 3265/3272 \r
+f 3278/3285 3277/3284 3265/3272 3266/3273 \r
+f 3279/3286 3075/3077 3068/3070 3267/3274 \r
+f 3280/3287 3279/3286 3267/3274 3268/3275 \r
+f 3281/3288 3280/3287 3268/3275 3269/3276 \r
+f 3282/3289 3281/3288 3269/3276 3270/3277 \r
+f 3283/3290 3282/3289 3270/3277 3271/3278 \r
+f 3284/3291 3283/3290 3271/3278 3272/3279 \r
+f 3285/3292 3284/3291 3272/3279 3273/3280 \r
+f 3286/3293 3285/3292 3273/3280 3274/3281 \r
+f 3287/3294 3286/3293 3274/3281 3275/3282 \r
+f 3288/3295 3287/3294 3275/3282 3276/3283 \r
+f 3289/3296 3288/3295 3276/3283 3277/3284 \r
+f 3290/3297 3289/3296 3277/3284 3278/3285 \r
+f 3291/3298 3082/3084 3075/3077 3279/3286 \r
+f 3292/3299 3291/3298 3279/3286 3280/3287 \r
+f 3293/3300 3292/3299 3280/3287 3281/3288 \r
+f 3294/3301 3293/3300 3281/3288 3282/3289 \r
+f 3295/3302 3294/3301 3282/3289 3283/3290 \r
+f 3296/3303 3295/3302 3283/3290 3284/3291 \r
+f 3297/3304 3296/3303 3284/3291 3285/3292 \r
+f 3298/3305 3297/3304 3285/3292 3286/3293 \r
+f 3299/3306 3298/3305 3286/3293 3287/3294 \r
+f 3300/3307 3299/3306 3287/3294 3288/3295 \r
+f 3301/3308 3300/3307 3288/3295 3289/3296 \r
+f 3302/3309 3301/3308 3289/3296 3290/3297 \r
+f 3303/3310 3089/3091 3082/3084 3291/3298 \r
+f 3304/3311 3303/3310 3291/3298 3292/3299 \r
+f 3305/3312 3304/3311 3292/3299 3293/3300 \r
+f 3306/3313 3305/3312 3293/3300 3294/3301 \r
+f 3307/3314 3306/3313 3294/3301 3295/3302 \r
+f 3308/3315 3307/3314 3295/3302 3296/3303 \r
+f 3309/3316 3308/3315 3296/3303 3297/3304 \r
+f 3310/3317 3309/3316 3297/3304 3298/3305 \r
+f 3311/3318 3310/3317 3298/3305 3299/3306 \r
+f 3312/3319 3311/3318 3299/3306 3300/3307 \r
+f 3313/3320 3312/3319 3300/3307 3301/3308 \r
+f 3314/3321 3313/3320 3301/3308 3302/3309 \r
+f 3303/3310 3315/3322 3096/3098 3089/3091 \r
+f 3304/3311 3316/3323 3315/3322 3303/3310 \r
+f 3305/3312 3317/3324 3316/3323 3304/3311 \r
+f 3306/3313 3318/3325 3317/3324 3305/3312 \r
+f 3307/3314 3319/3326 3318/3325 3306/3313 \r
+f 3308/3315 3320/3327 3319/3326 3307/3314 \r
+f 3309/3316 3321/3328 3320/3327 3308/3315 \r
+f 3310/3317 3322/3329 3321/3328 3309/3316 \r
+f 3311/3318 3323/3330 3322/3329 3310/3317 \r
+f 3312/3319 3324/3331 3323/3330 3311/3318 \r
+f 3313/3320 3325/3332 3324/3331 3312/3319 \r
+f 3314/3321 3326/3333 3325/3332 3313/3320 \r
+f 3315/3322 3327/3334 3103/3105 3096/3098 \r
+f 3316/3323 3328/3335 3327/3334 3315/3322 \r
+f 3317/3324 3329/3336 3328/3335 3316/3323 \r
+f 3318/3325 3330/3337 3329/3336 3317/3324 \r
+f 3319/3326 3331/3338 3330/3337 3318/3325 \r
+f 3320/3327 3332/3339 3331/3338 3319/3326 \r
+f 3321/3328 3333/3340 3332/3339 3320/3327 \r
+f 3322/3329 3334/3341 3333/3340 3321/3328 \r
+f 3323/3330 3335/3342 3334/3341 3322/3329 \r
+f 3324/3331 3336/3343 3335/3342 3323/3330 \r
+f 3325/3332 3337/3344 3336/3343 3324/3331 \r
+f 3326/3333 3338/3345 3337/3344 3325/3332 \r
+f 3327/3334 3339/3346 3110/3112 3103/3105 \r
+f 3328/3335 3340/3347 3339/3346 3327/3334 \r
+f 3329/3336 3341/3348 3340/3347 3328/3335 \r
+f 3330/3337 3342/3349 3341/3348 3329/3336 \r
+f 3331/3338 3343/3350 3342/3349 3330/3337 \r
+f 3332/3339 3344/3351 3343/3350 3331/3338 \r
+f 3333/3340 3345/3352 3344/3351 3332/3339 \r
+f 3334/3341 3346/3353 3345/3352 3333/3340 \r
+f 3335/3342 3347/3354 3346/3353 3334/3341 \r
+f 3336/3343 3348/3355 3347/3354 3335/3342 \r
+f 3337/3344 3349/3356 3348/3355 3336/3343 \r
+f 3338/3345 3350/3357 3349/3356 3337/3344 \r
+f 3339/3346 3351/3358 3117/3119 3110/3112 \r
+f 3340/3347 3352/3359 3351/3358 3339/3346 \r
+f 3341/3348 3353/3360 3352/3359 3340/3347 \r
+f 3342/3349 3354/3361 3353/3360 3341/3348 \r
+f 3343/3350 3355/3362 3354/3361 3342/3349 \r
+f 3344/3351 3356/3363 3355/3362 3343/3350 \r
+f 3345/3352 3357/3364 3356/3363 3344/3351 \r
+f 3346/3353 3358/3365 3357/3364 3345/3352 \r
+f 3347/3354 3359/3366 3358/3365 3346/3353 \r
+f 3348/3355 3360/3367 3359/3366 3347/3354 \r
+f 3349/3356 3361/3368 3360/3367 3348/3355 \r
+f 3350/3357 3362/3369 3361/3368 3349/3356 \r
+f 3351/3358 3363/3370 3124/3126 3117/3119 \r
+f 3352/3359 3364/3371 3363/3370 3351/3358 \r
+f 3353/3360 3365/3372 3364/3371 3352/3359 \r
+f 3354/3361 3366/3373 3365/3372 3353/3360 \r
+f 3355/3362 3367/3374 3366/3373 3354/3361 \r
+f 3356/3363 3368/3375 3367/3374 3355/3362 \r
+f 3357/3364 3369/3376 3368/3375 3356/3363 \r
+f 3358/3365 3370/3377 3369/3376 3357/3364 \r
+f 3359/3366 3371/3378 3370/3377 3358/3365 \r
+f 3360/3367 3372/3379 3371/3378 3359/3366 \r
+f 3361/3368 3373/3380 3372/3379 3360/3367 \r
+f 3362/3369 3374/3381 3373/3380 3361/3368 \r
+f 3363/3370 3375/3382 3131/3133 3124/3126 \r
+f 3364/3371 3376/3383 3375/3382 3363/3370 \r
+f 3365/3372 3377/3384 3376/3383 3364/3371 \r
+f 3366/3373 3378/3385 3377/3384 3365/3372 \r
+f 3367/3374 3379/3386 3378/3385 3366/3373 \r
+f 3368/3375 3380/3387 3379/3386 3367/3374 \r
+f 3369/3376 3381/3388 3380/3387 3368/3375 \r
+f 3370/3377 3382/3389 3381/3388 3369/3376 \r
+f 3371/3378 3383/3390 3382/3389 3370/3377 \r
+f 3372/3379 3384/3391 3383/3390 3371/3378 \r
+f 3373/3380 3385/3392 3384/3391 3372/3379 \r
+f 3374/3381 3386/3393 3385/3392 3373/3380 \r
+f 3387/3394 3138/3140 3131/3133 3375/3382 \r
+f 3388/3395 3387/3394 3375/3382 3376/3383 \r
+f 3389/3396 3388/3395 3376/3383 3377/3384 \r
+f 3390/3397 3389/3396 3377/3384 3378/3385 \r
+f 3391/3398 3390/3397 3378/3385 3379/3386 \r
+f 3392/3399 3391/3398 3379/3386 3380/3387 \r
+f 3393/3400 3392/3399 3380/3387 3381/3388 \r
+f 3394/3401 3393/3400 3381/3388 3382/3389 \r
+f 3395/3402 3394/3401 3382/3389 3383/3390 \r
+f 3396/3403 3395/3402 3383/3390 3384/3391 \r
+f 3397/3404 3396/3403 3384/3391 3385/3392 \r
+f 3398/3405 3397/3404 3385/3392 3386/3393 \r
+f 3399/3406 3145/3147 3138/3140 3387/3394 \r
+f 3400/3407 3399/3406 3387/3394 3388/3395 \r
+f 3401/3408 3400/3407 3388/3395 3389/3396 \r
+f 3402/3409 3401/3408 3389/3396 3390/3397 \r
+f 3403/3410 3402/3409 3390/3397 3391/3398 \r
+f 3404/3411 3403/3410 3391/3398 3392/3399 \r
+f 3405/3412 3404/3411 3392/3399 3393/3400 \r
+f 3406/3413 3405/3412 3393/3400 3394/3401 \r
+f 3407/3414 3406/3413 3394/3401 3395/3402 \r
+f 3408/3415 3407/3414 3395/3402 3396/3403 \r
+f 3409/3416 3408/3415 3396/3403 3397/3404 \r
+f 3410/3417 3409/3416 3397/3404 3398/3405 \r
+f 3411/3418 3152/3154 3145/3147 3399/3406 \r
+f 3412/3419 3411/3418 3399/3406 3400/3407 \r
+f 3413/3420 3412/3419 3400/3407 3401/3408 \r
+f 3414/3421 3413/3420 3401/3408 3402/3409 \r
+f 3415/3422 3414/3421 3402/3409 3403/3410 \r
+f 3416/3423 3415/3422 3403/3410 3404/3411 \r
+f 3417/3424 3416/3423 3404/3411 3405/3412 \r
+f 3418/3425 3417/3424 3405/3412 3406/3413 \r
+f 3419/3426 3418/3425 3406/3413 3407/3414 \r
+f 3420/3427 3419/3426 3407/3414 3408/3415 \r
+f 3421/3428 3420/3427 3408/3415 3409/3416 \r
+f 3422/3429 3421/3428 3409/3416 3410/3417 \r
+f 3423/3430 3159/3161 3152/3154 3411/3418 \r
+f 3424/3431 3423/3430 3411/3418 3412/3419 \r
+f 3425/3432 3424/3431 3412/3419 3413/3420 \r
+f 3426/3433 3425/3432 3413/3420 3414/3421 \r
+f 3427/3434 3426/3433 3414/3421 3415/3422 \r
+f 3428/3435 3427/3434 3415/3422 3416/3423 \r
+f 3429/3436 3428/3435 3416/3423 3417/3424 \r
+f 3430/3437 3429/3436 3417/3424 3418/3425 \r
+f 3431/3438 3430/3437 3418/3425 3419/3426 \r
+f 3432/3439 3431/3438 3419/3426 3420/3427 \r
+f 3433/3440 3432/3439 3420/3427 3421/3428 \r
+f 3434/3441 3433/3440 3421/3428 3422/3429 \r
+f 3435/3442 3166/3168 3159/3161 3423/3430 \r
+f 3437/3443 3436/3444 3425/3432 3426/3433 \r
+f 3438/3445 3437/3443 3426/3433 3427/3434 \r
+f 3439/3446 3438/3445 3427/3434 3428/3435 \r
+f 3440/3447 3439/3446 3428/3435 3429/3436 \r
+f 3441/3448 3440/3447 3429/3436 3430/3437 \r
+f 3442/3449 3441/3448 3430/3437 3431/3438 \r
+f 3443/3450 3442/3449 3431/3438 3432/3439 \r
+f 3444/3451 3443/3450 3432/3439 3433/3440 \r
+f 3445/3452 3444/3451 3433/3440 3434/3441 \r
+f 3446/3453 3173/3175 3166/3168 3435/3442 \r
+f 3448/3454 3447/3455 3436/3444 3437/3443 \r
+f 3449/3456 3448/3454 3437/3443 3438/3445 \r
+f 3450/3457 3449/3456 3438/3445 3439/3446 \r
+f 3451/3458 3450/3457 3439/3446 3440/3447 \r
+f 3452/3459 3451/3458 3440/3447 3441/3448 \r
+f 3453/3460 3452/3459 3441/3448 3442/3449 \r
+f 3454/3461 3453/3460 3442/3449 3443/3450 \r
+f 3455/3462 3454/3461 3443/3450 3444/3451 \r
+f 3459/3465 3457/3466 3458/3463 4975/3464 \r
+f 3460/3468 3459/3465 4975/3464 4978/3467 \r
+f 3461/3470 3460/3468 4978/3467 4980/3469 \r
+f 3462/3472 3461/3470 4980/3469 4982/3471 \r
+f 3463/3474 3462/3472 4982/3471 4984/3473 \r
+f 3464/3476 3463/3474 4984/3473 3465/3475 \r
+f 3466/3478 3464/3476 3465/3475 3467/3477 \r
+f 3468/3480 3466/3478 3467/3477 4988/3479 \r
+f 3469/3482 3468/3480 4988/3479 3470/3481 \r
+f 3473/3484 3472/3485 3456/3483 3457/3466 \r
+f 3474/3486 3473/3484 3457/3466 3459/3465 \r
+f 3475/3487 3474/3486 3459/3465 3460/3468 \r
+f 3476/3488 3475/3487 3460/3468 3461/3470 \r
+f 3477/3489 3476/3488 3461/3470 3462/3472 \r
+f 3478/3490 3477/3489 3462/3472 3463/3474 \r
+f 3479/3491 3478/3490 3463/3474 3464/3476 \r
+f 3480/3492 3479/3491 3464/3476 3466/3478 \r
+f 3481/3493 3480/3492 3466/3478 3468/3480 \r
+f 3482/3494 3481/3493 3468/3480 3469/3482 \r
+f 3483/3496 3206/3213 3194/3212 3471/3495 \r
+f 3484/3497 3483/3496 3471/3495 3472/3485 \r
+f 3485/3498 3484/3497 3472/3485 3473/3484 \r
+f 3486/3499 3485/3498 3473/3484 3474/3486 \r
+f 3487/3500 3486/3499 3474/3486 3475/3487 \r
+f 3488/3501 3487/3500 3475/3487 3476/3488 \r
+f 3489/3502 3488/3501 3476/3488 3477/3489 \r
+f 3490/3503 3489/3502 3477/3489 3478/3490 \r
+f 3491/3504 3490/3503 3478/3490 3479/3491 \r
+f 3492/3505 3491/3504 3479/3491 3480/3492 \r
+f 3493/3506 3492/3505 3480/3492 3481/3493 \r
+f 3494/3507 3493/3506 3481/3493 3482/3494 \r
+f 3495/3508 3218/3225 3206/3213 3483/3496 \r
+f 3496/3509 3495/3508 3483/3496 3484/3497 \r
+f 3497/3510 3496/3509 3484/3497 3485/3498 \r
+f 3498/3511 3497/3510 3485/3498 3486/3499 \r
+f 3499/3512 3498/3511 3486/3499 3487/3500 \r
+f 3500/3513 3499/3512 3487/3500 3488/3501 \r
+f 3501/3514 3500/3513 3488/3501 3489/3502 \r
+f 3502/3515 3501/3514 3489/3502 3490/3503 \r
+f 3503/3516 3502/3515 3490/3503 3491/3504 \r
+f 3504/3517 3503/3516 3491/3504 3492/3505 \r
+f 3505/3518 3504/3517 3492/3505 3493/3506 \r
+f 3506/3519 3505/3518 3493/3506 3494/3507 \r
+f 3507/3520 3230/3237 3218/3225 3495/3508 \r
+f 3508/3521 3507/3520 3495/3508 3496/3509 \r
+f 3509/3522 3508/3521 3496/3509 3497/3510 \r
+f 3510/3523 3509/3522 3497/3510 3498/3511 \r
+f 3511/3524 3510/3523 3498/3511 3499/3512 \r
+f 3512/3525 3511/3524 3499/3512 3500/3513 \r
+f 3513/3526 3512/3525 3500/3513 3501/3514 \r
+f 3514/3527 3513/3526 3501/3514 3502/3515 \r
+f 3515/3528 3514/3527 3502/3515 3503/3516 \r
+f 3516/3529 3515/3528 3503/3516 3504/3517 \r
+f 3517/3530 3516/3529 3504/3517 3505/3518 \r
+f 3518/3531 3517/3530 3505/3518 3506/3519 \r
+f 3519/3532 3242/3249 3230/3237 3507/3520 \r
+f 3520/3533 3519/3532 3507/3520 3508/3521 \r
+f 3521/3534 3520/3533 3508/3521 3509/3522 \r
+f 3522/3535 3521/3534 3509/3522 3510/3523 \r
+f 3523/3536 3522/3535 3510/3523 3511/3524 \r
+f 3524/3537 3523/3536 3511/3524 3512/3525 \r
+f 3525/3538 3524/3537 3512/3525 3513/3526 \r
+f 3526/3539 3525/3538 3513/3526 3514/3527 \r
+f 3527/3540 3526/3539 3514/3527 3515/3528 \r
+f 3528/3541 3527/3540 3515/3528 3516/3529 \r
+f 3529/3542 3528/3541 3516/3529 3517/3530 \r
+f 3530/3543 3529/3542 3517/3530 3518/3531 \r
+f 3519/3532 3531/3544 3254/3261 3242/3249 \r
+f 3520/3533 3532/3545 3531/3544 3519/3532 \r
+f 3521/3534 3533/3546 3532/3545 3520/3533 \r
+f 3522/3535 3534/3547 3533/3546 3521/3534 \r
+f 3523/3536 3535/3548 3534/3547 3522/3535 \r
+f 3524/3537 3536/3549 3535/3548 3523/3536 \r
+f 3525/3538 3537/3550 3536/3549 3524/3537 \r
+f 3526/3539 3538/3551 3537/3550 3525/3538 \r
+f 3527/3540 3539/3552 3538/3551 3526/3539 \r
+f 3528/3541 3540/3553 3539/3552 3527/3540 \r
+f 3529/3542 3541/3554 3540/3553 3528/3541 \r
+f 3530/3543 3542/3555 3541/3554 3529/3542 \r
+f 3531/3544 3543/3556 3266/3273 3254/3261 \r
+f 3532/3545 3544/3557 3543/3556 3531/3544 \r
+f 3533/3546 3545/3558 3544/3557 3532/3545 \r
+f 3534/3547 3546/3559 3545/3558 3533/3546 \r
+f 3535/3548 3547/3560 3546/3559 3534/3547 \r
+f 3536/3549 3548/3561 3547/3560 3535/3548 \r
+f 3537/3550 3549/3562 3548/3561 3536/3549 \r
+f 3538/3551 3550/3563 3549/3562 3537/3550 \r
+f 3539/3552 3551/3564 3550/3563 3538/3551 \r
+f 3540/3553 3552/3565 3551/3564 3539/3552 \r
+f 3541/3554 3553/3566 3552/3565 3540/3553 \r
+f 3542/3555 3554/3567 3553/3566 3541/3554 \r
+f 3543/3556 3555/3568 3278/3285 3266/3273 \r
+f 3544/3557 3556/3569 3555/3568 3543/3556 \r
+f 3545/3558 3557/3570 3556/3569 3544/3557 \r
+f 3546/3559 3558/3571 3557/3570 3545/3558 \r
+f 3547/3560 3559/3572 3558/3571 3546/3559 \r
+f 3548/3561 3560/3573 3559/3572 3547/3560 \r
+f 3549/3562 3561/3574 3560/3573 3548/3561 \r
+f 3550/3563 3562/3575 3561/3574 3549/3562 \r
+f 3551/3564 3563/3576 3562/3575 3550/3563 \r
+f 3552/3565 3564/3577 3563/3576 3551/3564 \r
+f 3553/3566 3565/3578 3564/3577 3552/3565 \r
+f 3554/3567 3566/3579 3565/3578 3553/3566 \r
+f 3555/3568 3567/3580 3290/3297 3278/3285 \r
+f 3556/3569 3568/3581 3567/3580 3555/3568 \r
+f 3557/3570 3569/3582 3568/3581 3556/3569 \r
+f 3558/3571 3570/3583 3569/3582 3557/3570 \r
+f 3559/3572 3571/3584 3570/3583 3558/3571 \r
+f 3560/3573 3572/3585 3571/3584 3559/3572 \r
+f 3561/3574 3573/3586 3572/3585 3560/3573 \r
+f 3562/3575 3574/3587 3573/3586 3561/3574 \r
+f 3563/3576 3575/3588 3574/3587 3562/3575 \r
+f 3564/3577 3576/3589 3575/3588 3563/3576 \r
+f 3565/3578 3577/3590 3576/3589 3564/3577 \r
+f 3566/3579 3578/3591 3577/3590 3565/3578 \r
+f 3567/3580 3579/3592 3302/3309 3290/3297 \r
+f 3568/3581 3580/3593 3579/3592 3567/3580 \r
+f 3569/3582 3581/3594 3580/3593 3568/3581 \r
+f 3570/3583 3582/3595 3581/3594 3569/3582 \r
+f 3571/3584 3583/3596 3582/3595 3570/3583 \r
+f 3572/3585 3584/3597 3583/3596 3571/3584 \r
+f 3573/3586 3585/3598 3584/3597 3572/3585 \r
+f 3574/3587 3586/3599 3585/3598 3573/3586 \r
+f 3575/3588 3587/3600 3586/3599 3574/3587 \r
+f 3576/3589 3588/3601 3587/3600 3575/3588 \r
+f 3577/3590 3589/3602 3588/3601 3576/3589 \r
+f 3578/3591 3590/3603 3589/3602 3577/3590 \r
+f 3579/3592 3591/3604 3314/3321 3302/3309 \r
+f 3580/3593 3592/3605 3591/3604 3579/3592 \r
+f 3581/3594 3593/3606 3592/3605 3580/3593 \r
+f 3582/3595 3594/3607 3593/3606 3581/3594 \r
+f 3583/3596 3595/3608 3594/3607 3582/3595 \r
+f 3584/3597 3596/3609 3595/3608 3583/3596 \r
+f 3585/3598 3597/3610 3596/3609 3584/3597 \r
+f 3586/3599 3598/3611 3597/3610 3585/3598 \r
+f 3587/3600 3599/3612 3598/3611 3586/3599 \r
+f 3588/3601 3600/3613 3599/3612 3587/3600 \r
+f 3589/3602 3601/3614 3600/3613 3588/3601 \r
+f 3590/3603 3602/3615 3601/3614 3589/3602 \r
+f 3603/3616 3326/3333 3314/3321 3591/3604 \r
+f 3604/3617 3603/3616 3591/3604 3592/3605 \r
+f 3605/3618 3604/3617 3592/3605 3593/3606 \r
+f 3606/3619 3605/3618 3593/3606 3594/3607 \r
+f 3607/3620 3606/3619 3594/3607 3595/3608 \r
+f 3608/3621 3607/3620 3595/3608 3596/3609 \r
+f 3609/3622 3608/3621 3596/3609 3597/3610 \r
+f 3610/3623 3609/3622 3597/3610 3598/3611 \r
+f 3611/3624 3610/3623 3598/3611 3599/3612 \r
+f 3612/3625 3611/3624 3599/3612 3600/3613 \r
+f 3613/3626 3612/3625 3600/3613 3601/3614 \r
+f 3614/3627 3613/3626 3601/3614 3602/3615 \r
+f 3615/3628 3338/3345 3326/3333 3603/3616 \r
+f 3616/3629 3615/3628 3603/3616 3604/3617 \r
+f 3617/3630 3616/3629 3604/3617 3605/3618 \r
+f 3618/3631 3617/3630 3605/3618 3606/3619 \r
+f 3619/3632 3618/3631 3606/3619 3607/3620 \r
+f 3620/3633 3619/3632 3607/3620 3608/3621 \r
+f 3621/3634 3620/3633 3608/3621 3609/3622 \r
+f 3622/3635 3621/3634 3609/3622 3610/3623 \r
+f 3623/3636 3622/3635 3610/3623 3611/3624 \r
+f 3624/3637 3623/3636 3611/3624 3612/3625 \r
+f 3625/3638 3624/3637 3612/3625 3613/3626 \r
+f 3626/3639 3625/3638 3613/3626 3614/3627 \r
+f 3627/3640 3350/3357 3338/3345 3615/3628 \r
+f 3628/3641 3627/3640 3615/3628 3616/3629 \r
+f 3629/3642 3628/3641 3616/3629 3617/3630 \r
+f 3630/3643 3629/3642 3617/3630 3618/3631 \r
+f 3631/3644 3630/3643 3618/3631 3619/3632 \r
+f 3632/3645 3631/3644 3619/3632 3620/3633 \r
+f 3633/3646 3632/3645 3620/3633 3621/3634 \r
+f 3634/3647 3633/3646 3621/3634 3622/3635 \r
+f 3635/3648 3634/3647 3622/3635 3623/3636 \r
+f 3636/3649 3635/3648 3623/3636 3624/3637 \r
+f 3637/3650 3636/3649 3624/3637 3625/3638 \r
+f 3638/3651 3637/3650 3625/3638 3626/3639 \r
+f 3639/3652 3362/3369 3350/3357 3627/3640 \r
+f 3640/3653 3639/3652 3627/3640 3628/3641 \r
+f 3641/3654 3640/3653 3628/3641 3629/3642 \r
+f 3642/3655 3641/3654 3629/3642 3630/3643 \r
+f 3643/3656 3642/3655 3630/3643 3631/3644 \r
+f 3644/3657 3643/3656 3631/3644 3632/3645 \r
+f 3645/3658 3644/3657 3632/3645 3633/3646 \r
+f 3646/3659 3645/3658 3633/3646 3634/3647 \r
+f 3647/3660 3646/3659 3634/3647 3635/3648 \r
+f 3648/3661 3647/3660 3635/3648 3636/3649 \r
+f 3649/3662 3648/3661 3636/3649 3637/3650 \r
+f 3650/3663 3649/3662 3637/3650 3638/3651 \r
+f 3651/3664 3374/3381 3362/3369 3639/3652 \r
+f 3652/3665 3651/3664 3639/3652 3640/3653 \r
+f 3653/3666 3652/3665 3640/3653 3641/3654 \r
+f 3654/3667 3653/3666 3641/3654 3642/3655 \r
+f 3655/3668 3654/3667 3642/3655 3643/3656 \r
+f 3656/3669 3655/3668 3643/3656 3644/3657 \r
+f 3657/3670 3656/3669 3644/3657 3645/3658 \r
+f 3658/3671 3657/3670 3645/3658 3646/3659 \r
+f 3659/3672 3658/3671 3646/3659 3647/3660 \r
+f 3660/3673 3659/3672 3647/3660 3648/3661 \r
+f 3661/3674 3660/3673 3648/3661 3649/3662 \r
+f 3662/3675 3661/3674 3649/3662 3650/3663 \r
+f 3663/3676 3386/3393 3374/3381 3651/3664 \r
+f 3664/3677 3663/3676 3651/3664 3652/3665 \r
+f 3665/3678 3664/3677 3652/3665 3653/3666 \r
+f 3666/3679 3665/3678 3653/3666 3654/3667 \r
+f 3667/3680 3666/3679 3654/3667 3655/3668 \r
+f 3668/3681 3667/3680 3655/3668 3656/3669 \r
+f 3669/3682 3668/3681 3656/3669 3657/3670 \r
+f 3670/3683 3669/3682 3657/3670 3658/3671 \r
+f 3671/3684 3670/3683 3658/3671 3659/3672 \r
+f 3672/3685 3671/3684 3659/3672 3660/3673 \r
+f 3673/3686 3672/3685 3660/3673 3661/3674 \r
+f 3674/3687 3673/3686 3661/3674 3662/3675 \r
+f 3663/3676 3675/3688 3398/3405 3386/3393 \r
+f 3664/3677 3676/3689 3675/3688 3663/3676 \r
+f 3665/3678 3677/3690 3676/3689 3664/3677 \r
+f 3666/3679 3678/3691 3677/3690 3665/3678 \r
+f 3667/3680 3679/3692 3678/3691 3666/3679 \r
+f 3668/3681 3680/3693 3679/3692 3667/3680 \r
+f 3669/3682 3681/3694 3680/3693 3668/3681 \r
+f 3670/3683 3682/3695 3681/3694 3669/3682 \r
+f 3671/3684 3683/3696 3682/3695 3670/3683 \r
+f 3672/3685 3684/3697 3683/3696 3671/3684 \r
+f 3673/3686 3685/3698 3684/3697 3672/3685 \r
+f 3674/3687 3686/3699 3685/3698 3673/3686 \r
+f 3675/3688 3687/3700 3410/3417 3398/3405 \r
+f 3676/3689 3688/3701 3687/3700 3675/3688 \r
+f 3677/3690 3689/3702 3688/3701 3676/3689 \r
+f 3678/3691 3690/3703 3689/3702 3677/3690 \r
+f 3679/3692 3691/3704 3690/3703 3678/3691 \r
+f 3680/3693 3692/3705 3691/3704 3679/3692 \r
+f 3681/3694 3693/3706 3692/3705 3680/3693 \r
+f 3682/3695 3694/3707 3693/3706 3681/3694 \r
+f 3683/3696 3695/3708 3694/3707 3682/3695 \r
+f 3684/3697 3696/3709 3695/3708 3683/3696 \r
+f 3685/3698 3697/3710 3696/3709 3684/3697 \r
+f 3686/3699 3698/3711 3697/3710 3685/3698 \r
+f 3687/3700 3699/3712 3422/3429 3410/3417 \r
+f 3688/3701 3700/3713 3699/3712 3687/3700 \r
+f 3689/3702 3701/3714 3700/3713 3688/3701 \r
+f 3690/3703 3702/3715 3701/3714 3689/3702 \r
+f 3691/3704 3703/3716 3702/3715 3690/3703 \r
+f 3692/3705 3704/3717 3703/3716 3691/3704 \r
+f 3693/3706 3705/3718 3704/3717 3692/3705 \r
+f 3694/3707 3706/3719 3705/3718 3693/3706 \r
+f 3695/3708 3707/3720 3706/3719 3694/3707 \r
+f 3696/3709 3708/3721 3707/3720 3695/3708 \r
+f 3697/3710 3709/3722 3708/3721 3696/3709 \r
+f 3698/3711 3710/3723 3709/3722 3697/3710 \r
+f 3699/3712 3711/3724 3434/3441 3422/3429 \r
+f 3700/3713 3712/3725 3711/3724 3699/3712 \r
+f 3701/3714 3713/3726 3712/3725 3700/3713 \r
+f 3702/3715 3714/3727 3713/3726 3701/3714 \r
+f 3703/3716 3715/3728 3714/3727 3702/3715 \r
+f 3704/3717 3716/3729 3715/3728 3703/3716 \r
+f 3705/3718 3717/3730 3716/3729 3704/3717 \r
+f 3706/3719 3718/3731 3717/3730 3705/3718 \r
+f 3707/3720 3719/3732 3718/3731 3706/3719 \r
+f 3708/3721 3720/3733 3719/3732 3707/3720 \r
+f 3709/3722 3721/3734 3720/3733 3708/3721 \r
+f 3710/3723 3722/3735 3721/3734 3709/3722 \r
+f 3711/3724 3723/3736 3445/3452 3434/3441 \r
+f 3712/3725 3724/3737 3723/3736 3711/3724 \r
+f 3713/3726 3725/3738 3724/3737 3712/3725 \r
+f 3714/3727 3726/3739 3725/3738 3713/3726 \r
+f 3715/3728 3727/3740 3726/3739 3714/3727 \r
+f 3716/3729 3728/3741 3727/3740 3715/3728 \r
+f 3717/3730 3729/3742 3728/3741 3716/3729 \r
+f 3718/3731 3730/3743 3729/3742 3717/3730 \r
+f 3719/3732 3731/3744 3730/3743 3718/3731 \r
+f 3720/3733 3732/3745 3731/3744 3719/3732 \r
+f 3721/3734 3733/3746 3732/3745 3720/3733 \r
+f 3722/3735 3734/3747 3733/3746 3721/3734 \r
+f 3726/3739 3736/3749 3735/3748 3725/3738 \r
+f 3727/3740 3737/3750 3736/3749 3726/3739 \r
+f 3728/3741 3738/3751 3737/3750 3727/3740 \r
+f 3729/3742 3739/3752 3738/3751 3728/3741 \r
+f 3730/3743 3740/3753 3739/3752 3729/3742 \r
+f 3731/3744 3741/3754 3740/3753 3730/3743 \r
+f 3732/3745 3742/3755 3741/3754 3731/3744 \r
+f 3733/3746 3743/3756 3742/3755 3732/3745 \r
+f 3734/3747 3744/3757 3743/3756 3733/3746 \r
+f 3745/3759 3469/3482 3470/3481 5256/3758 \r
+f 3746/3761 3745/3759 5256/3758 5258/3760 \r
+f 3747/3763 3746/3761 5258/3760 3748/3762 \r
+f 3749/3765 3747/3763 3748/3762 5261/3764 \r
+f 3750/3767 3749/3765 5261/3764 5263/3766 \r
+f 3751/3769 3750/3767 5263/3766 5265/3768 \r
+f 3752/3771 3751/3769 5265/3768 5267/3770 \r
+f 3753/3773 3752/3771 5267/3770 5269/3772 \r
+f 3754/3775 3753/3773 5269/3772 5271/3774 \r
+f 3755/3777 3754/3775 5271/3774 3756/3776 \r
+f 3757/3779 3755/3777 3756/3776 3758/3778 \r
+f 5274/3780 3757/3779 3758/3778 \r
+f 3759/3781 3482/3494 3469/3482 3745/3759 \r
+f 3760/3782 3759/3781 3745/3759 3746/3761 \r
+f 3761/3783 3760/3782 3746/3761 3747/3763 \r
+f 3762/3784 3761/3783 3747/3763 3749/3765 \r
+f 3763/3785 3762/3784 3749/3765 3750/3767 \r
+f 3764/3786 3763/3785 3750/3767 3751/3769 \r
+f 3765/3787 3764/3786 3751/3769 3752/3771 \r
+f 3766/3788 3765/3787 3752/3771 3753/3773 \r
+f 3767/3789 3766/3788 3753/3773 3754/3775 \r
+f 3768/3790 3767/3789 3754/3775 3755/3777 \r
+f 3769/3791 3768/3790 3755/3777 3757/3779 \r
+f 5274/3780 3769/3791 3757/3779 \r
+f 3770/3792 3494/3507 3482/3494 3759/3781 \r
+f 3771/3793 3770/3792 3759/3781 3760/3782 \r
+f 3772/3794 3771/3793 3760/3782 3761/3783 \r
+f 3773/3795 3772/3794 3761/3783 3762/3784 \r
+f 3774/3796 3773/3795 3762/3784 3763/3785 \r
+f 3775/3797 3774/3796 3763/3785 3764/3786 \r
+f 3776/3798 3775/3797 3764/3786 3765/3787 \r
+f 3777/3799 3776/3798 3765/3787 3766/3788 \r
+f 3778/3800 3777/3799 3766/3788 3767/3789 \r
+f 3779/3801 3778/3800 3767/3789 3768/3790 \r
+f 3780/3802 3779/3801 3768/3790 3769/3791 \r
+f 5274/3780 3780/3802 3769/3791 \r
+f 3781/3803 3506/3519 3494/3507 3770/3792 \r
+f 3782/3804 3781/3803 3770/3792 3771/3793 \r
+f 3783/3805 3782/3804 3771/3793 3772/3794 \r
+f 3784/3806 3783/3805 3772/3794 3773/3795 \r
+f 3785/3807 3784/3806 3773/3795 3774/3796 \r
+f 3786/3808 3785/3807 3774/3796 3775/3797 \r
+f 3787/3809 3786/3808 3775/3797 3776/3798 \r
+f 3788/3810 3787/3809 3776/3798 3777/3799 \r
+f 3789/3811 3788/3810 3777/3799 3778/3800 \r
+f 3790/3812 3789/3811 3778/3800 3779/3801 \r
+f 3791/3813 3790/3812 3779/3801 3780/3802 \r
+f 5274/3780 3791/3813 3780/3802 \r
+f 3792/3814 3518/3531 3506/3519 3781/3803 \r
+f 3793/3815 3792/3814 3781/3803 3782/3804 \r
+f 3794/3816 3793/3815 3782/3804 3783/3805 \r
+f 3795/3817 3794/3816 3783/3805 3784/3806 \r
+f 3796/3818 3795/3817 3784/3806 3785/3807 \r
+f 3797/3819 3796/3818 3785/3807 3786/3808 \r
+f 3798/3820 3797/3819 3786/3808 3787/3809 \r
+f 3799/3821 3798/3820 3787/3809 3788/3810 \r
+f 3800/3822 3799/3821 3788/3810 3789/3811 \r
+f 3801/3823 3800/3822 3789/3811 3790/3812 \r
+f 3802/3824 3801/3823 3790/3812 3791/3813 \r
+f 5274/3780 3802/3824 3791/3813 \r
+f 3803/3825 3530/3543 3518/3531 3792/3814 \r
+f 3804/3826 3803/3825 3792/3814 3793/3815 \r
+f 3805/3827 3804/3826 3793/3815 3794/3816 \r
+f 3806/3828 3805/3827 3794/3816 3795/3817 \r
+f 3807/3829 3806/3828 3795/3817 3796/3818 \r
+f 3808/3830 3807/3829 3796/3818 3797/3819 \r
+f 3809/3831 3808/3830 3797/3819 3798/3820 \r
+f 3810/3832 3809/3831 3798/3820 3799/3821 \r
+f 3811/3833 3810/3832 3799/3821 3800/3822 \r
+f 3812/3834 3811/3833 3800/3822 3801/3823 \r
+f 3813/3835 3812/3834 3801/3823 3802/3824 \r
+f 5274/3780 3813/3835 3802/3824 \r
+f 3803/3825 3814/3836 3542/3555 3530/3543 \r
+f 3804/3826 3815/3837 3814/3836 3803/3825 \r
+f 3805/3827 3816/3838 3815/3837 3804/3826 \r
+f 3806/3828 3817/3839 3816/3838 3805/3827 \r
+f 3807/3829 3818/3840 3817/3839 3806/3828 \r
+f 3808/3830 3819/3841 3818/3840 3807/3829 \r
+f 3809/3831 3820/3842 3819/3841 3808/3830 \r
+f 3810/3832 3821/3843 3820/3842 3809/3831 \r
+f 3811/3833 3822/3844 3821/3843 3810/3832 \r
+f 3812/3834 3823/3845 3822/3844 3811/3833 \r
+f 3813/3835 3824/3846 3823/3845 3812/3834 \r
+f 5274/3780 3824/3846 3813/3835 \r
+f 3814/3836 3825/3847 3554/3567 3542/3555 \r
+f 3815/3837 3826/3848 3825/3847 3814/3836 \r
+f 3816/3838 3827/3849 3826/3848 3815/3837 \r
+f 3817/3839 3828/3850 3827/3849 3816/3838 \r
+f 3818/3840 3829/3851 3828/3850 3817/3839 \r
+f 3819/3841 3830/3852 3829/3851 3818/3840 \r
+f 3820/3842 3831/3853 3830/3852 3819/3841 \r
+f 3821/3843 3832/3854 3831/3853 3820/3842 \r
+f 3822/3844 3833/3855 3832/3854 3821/3843 \r
+f 3823/3845 3834/3856 3833/3855 3822/3844 \r
+f 3824/3846 3835/3857 3834/3856 3823/3845 \r
+f 5274/3780 3835/3857 3824/3846 \r
+f 3825/3847 3836/3858 3566/3579 3554/3567 \r
+f 3826/3848 3837/3859 3836/3858 3825/3847 \r
+f 3827/3849 3838/3860 3837/3859 3826/3848 \r
+f 3828/3850 3839/3861 3838/3860 3827/3849 \r
+f 3829/3851 3840/3862 3839/3861 3828/3850 \r
+f 3830/3852 3841/3863 3840/3862 3829/3851 \r
+f 3831/3853 3842/3864 3841/3863 3830/3852 \r
+f 3832/3854 3843/3865 3842/3864 3831/3853 \r
+f 3833/3855 3844/3866 3843/3865 3832/3854 \r
+f 3834/3856 3845/3867 3844/3866 3833/3855 \r
+f 3835/3857 3846/3868 3845/3867 3834/3856 \r
+f 5274/3780 3846/3868 3835/3857 \r
+f 3836/3858 3847/3869 3578/3591 3566/3579 \r
+f 3837/3859 3848/3870 3847/3869 3836/3858 \r
+f 3838/3860 3849/3871 3848/3870 3837/3859 \r
+f 3839/3861 3850/3872 3849/3871 3838/3860 \r
+f 3840/3862 3851/3873 3850/3872 3839/3861 \r
+f 3841/3863 3852/3874 3851/3873 3840/3862 \r
+f 3842/3864 3853/3875 3852/3874 3841/3863 \r
+f 3843/3865 3854/3876 3853/3875 3842/3864 \r
+f 3844/3866 3855/3877 3854/3876 3843/3865 \r
+f 3845/3867 3856/3878 3855/3877 3844/3866 \r
+f 3846/3868 3857/3879 3856/3878 3845/3867 \r
+f 5274/3780 3857/3879 3846/3868 \r
+f 3847/3869 3858/3880 3590/3603 3578/3591 \r
+f 3848/3870 3859/3881 3858/3880 3847/3869 \r
+f 3849/3871 3860/3882 3859/3881 3848/3870 \r
+f 3850/3872 3861/3883 3860/3882 3849/3871 \r
+f 3851/3873 3862/3884 3861/3883 3850/3872 \r
+f 3852/3874 3863/3885 3862/3884 3851/3873 \r
+f 3853/3875 3864/3886 3863/3885 3852/3874 \r
+f 3854/3876 3865/3887 3864/3886 3853/3875 \r
+f 3855/3877 3866/3888 3865/3887 3854/3876 \r
+f 3856/3878 3867/3889 3866/3888 3855/3877 \r
+f 3857/3879 3868/3890 3867/3889 3856/3878 \r
+f 5274/3780 3868/3890 3857/3879 \r
+f 3858/3880 3869/3891 3602/3615 3590/3603 \r
+f 3859/3881 3870/3892 3869/3891 3858/3880 \r
+f 3860/3882 3871/3893 3870/3892 3859/3881 \r
+f 3861/3883 3872/3894 3871/3893 3860/3882 \r
+f 3862/3884 3873/3895 3872/3894 3861/3883 \r
+f 3863/3885 3874/3896 3873/3895 3862/3884 \r
+f 3864/3886 3875/3897 3874/3896 3863/3885 \r
+f 3865/3887 3876/3898 3875/3897 3864/3886 \r
+f 3866/3888 3877/3899 3876/3898 3865/3887 \r
+f 3867/3889 3878/3900 3877/3899 3866/3888 \r
+f 3868/3890 3879/3901 3878/3900 3867/3889 \r
+f 5274/3780 3879/3901 3868/3890 \r
+f 3880/3902 3614/3627 3602/3615 3869/3891 \r
+f 3881/3903 3880/3902 3869/3891 3870/3892 \r
+f 3882/3904 3881/3903 3870/3892 3871/3893 \r
+f 3883/3905 3882/3904 3871/3893 3872/3894 \r
+f 3884/3906 3883/3905 3872/3894 3873/3895 \r
+f 3885/3907 3884/3906 3873/3895 3874/3896 \r
+f 3886/3908 3885/3907 3874/3896 3875/3897 \r
+f 3887/3909 3886/3908 3875/3897 3876/3898 \r
+f 3888/3910 3887/3909 3876/3898 3877/3899 \r
+f 3889/3911 3888/3910 3877/3899 3878/3900 \r
+f 3890/3912 3889/3911 3878/3900 3879/3901 \r
+f 5274/3780 3890/3912 3879/3901 \r
+f 3891/3913 3626/3639 3614/3627 3880/3902 \r
+f 3892/3914 3891/3913 3880/3902 3881/3903 \r
+f 3893/3915 3892/3914 3881/3903 3882/3904 \r
+f 3894/3916 3893/3915 3882/3904 3883/3905 \r
+f 3895/3917 3894/3916 3883/3905 3884/3906 \r
+f 3896/3918 3895/3917 3884/3906 3885/3907 \r
+f 3897/3919 3896/3918 3885/3907 3886/3908 \r
+f 3898/3920 3897/3919 3886/3908 3887/3909 \r
+f 3899/3921 3898/3920 3887/3909 3888/3910 \r
+f 3900/3922 3899/3921 3888/3910 3889/3911 \r
+f 3901/3923 3900/3922 3889/3911 3890/3912 \r
+f 5274/3780 3901/3923 3890/3912 \r
+f 3902/3924 3638/3651 3626/3639 3891/3913 \r
+f 3903/3925 3902/3924 3891/3913 3892/3914 \r
+f 3904/3926 3903/3925 3892/3914 3893/3915 \r
+f 3905/3927 3904/3926 3893/3915 3894/3916 \r
+f 3906/3928 3905/3927 3894/3916 3895/3917 \r
+f 3907/3929 3906/3928 3895/3917 3896/3918 \r
+f 3908/3930 3907/3929 3896/3918 3897/3919 \r
+f 3909/3931 3908/3930 3897/3919 3898/3920 \r
+f 3910/3932 3909/3931 3898/3920 3899/3921 \r
+f 3911/3933 3910/3932 3899/3921 3900/3922 \r
+f 3912/3934 3911/3933 3900/3922 3901/3923 \r
+f 5274/3780 3912/3934 3901/3923 \r
+f 3913/3935 3650/3663 3638/3651 3902/3924 \r
+f 3914/3936 3913/3935 3902/3924 3903/3925 \r
+f 3915/3937 3914/3936 3903/3925 3904/3926 \r
+f 3916/3938 3915/3937 3904/3926 3905/3927 \r
+f 3917/3939 3916/3938 3905/3927 3906/3928 \r
+f 3918/3940 3917/3939 3906/3928 3907/3929 \r
+f 3919/3941 3918/3940 3907/3929 3908/3930 \r
+f 3920/3942 3919/3941 3908/3930 3909/3931 \r
+f 3921/3943 3920/3942 3909/3931 3910/3932 \r
+f 3922/3944 3921/3943 3910/3932 3911/3933 \r
+f 3923/3945 3922/3944 3911/3933 3912/3934 \r
+f 5274/3780 3923/3945 3912/3934 \r
+f 3924/3946 3662/3675 3650/3663 3913/3935 \r
+f 3925/3947 3924/3946 3913/3935 3914/3936 \r
+f 3926/3948 3925/3947 3914/3936 3915/3937 \r
+f 3927/3949 3926/3948 3915/3937 3916/3938 \r
+f 3928/3950 3927/3949 3916/3938 3917/3939 \r
+f 3929/3951 3928/3950 3917/3939 3918/3940 \r
+f 3930/3952 3929/3951 3918/3940 3919/3941 \r
+f 3931/3953 3930/3952 3919/3941 3920/3942 \r
+f 3932/3954 3931/3953 3920/3942 3921/3943 \r
+f 3933/3955 3932/3954 3921/3943 3922/3944 \r
+f 3934/3956 3933/3955 3922/3944 3923/3945 \r
+f 5274/3780 3934/3956 3923/3945 \r
+f 3935/3957 3674/3687 3662/3675 3924/3946 \r
+f 3936/3958 3935/3957 3924/3946 3925/3947 \r
+f 3937/3959 3936/3958 3925/3947 3926/3948 \r
+f 3938/3960 3937/3959 3926/3948 3927/3949 \r
+f 3939/3961 3938/3960 3927/3949 3928/3950 \r
+f 3940/3962 3939/3961 3928/3950 3929/3951 \r
+f 3941/3963 3940/3962 3929/3951 3930/3952 \r
+f 3942/3964 3941/3963 3930/3952 3931/3953 \r
+f 3943/3965 3942/3964 3931/3953 3932/3954 \r
+f 3944/3966 3943/3965 3932/3954 3933/3955 \r
+f 3945/3967 3944/3966 3933/3955 3934/3956 \r
+f 5274/3780 3945/3967 3934/3956 \r
+f 3935/3957 3946/3968 3686/3699 3674/3687 \r
+f 3936/3958 3947/3969 3946/3968 3935/3957 \r
+f 3937/3959 3948/3970 3947/3969 3936/3958 \r
+f 3938/3960 3949/3971 3948/3970 3937/3959 \r
+f 3939/3961 3950/3972 3949/3971 3938/3960 \r
+f 3940/3962 3951/3973 3950/3972 3939/3961 \r
+f 3941/3963 3952/3974 3951/3973 3940/3962 \r
+f 3942/3964 3953/3975 3952/3974 3941/3963 \r
+f 3943/3965 3954/3976 3953/3975 3942/3964 \r
+f 3944/3966 3955/3977 3954/3976 3943/3965 \r
+f 3945/3967 3956/3978 3955/3977 3944/3966 \r
+f 5274/3780 3956/3978 3945/3967 \r
+f 3946/3968 3957/3979 3698/3711 3686/3699 \r
+f 3947/3969 3958/3980 3957/3979 3946/3968 \r
+f 3948/3970 3959/3981 3958/3980 3947/3969 \r
+f 3949/3971 3960/3982 3959/3981 3948/3970 \r
+f 3950/3972 3961/3983 3960/3982 3949/3971 \r
+f 3951/3973 3962/3984 3961/3983 3950/3972 \r
+f 3952/3974 3963/3985 3962/3984 3951/3973 \r
+f 3953/3975 3964/3986 3963/3985 3952/3974 \r
+f 3954/3976 3965/3987 3964/3986 3953/3975 \r
+f 3955/3977 3966/3988 3965/3987 3954/3976 \r
+f 3956/3978 3967/3989 3966/3988 3955/3977 \r
+f 5274/3780 3967/3989 3956/3978 \r
+f 3957/3979 3968/3990 3710/3723 3698/3711 \r
+f 3958/3980 3969/3991 3968/3990 3957/3979 \r
+f 3959/3981 3970/3992 3969/3991 3958/3980 \r
+f 3960/3982 3971/3993 3970/3992 3959/3981 \r
+f 3961/3983 3972/3994 3971/3993 3960/3982 \r
+f 3962/3984 3973/3995 3972/3994 3961/3983 \r
+f 3963/3985 3974/3996 3973/3995 3962/3984 \r
+f 3964/3986 3975/3997 3974/3996 3963/3985 \r
+f 3965/3987 3976/3998 3975/3997 3964/3986 \r
+f 3966/3988 3977/3999 3976/3998 3965/3987 \r
+f 3967/3989 3978/4000 3977/3999 3966/3988 \r
+f 5274/3780 3978/4000 3967/3989 \r
+f 3968/3990 3979/4001 3722/3735 3710/3723 \r
+f 3969/3991 3980/4002 3979/4001 3968/3990 \r
+f 3970/3992 3981/4003 3980/4002 3969/3991 \r
+f 3971/3993 3982/4004 3981/4003 3970/3992 \r
+f 3972/3994 3983/4005 3982/4004 3971/3993 \r
+f 3973/3995 3984/4006 3983/4005 3972/3994 \r
+f 3974/3996 3985/4007 3984/4006 3973/3995 \r
+f 3975/3997 3986/4008 3985/4007 3974/3996 \r
+f 3976/3998 3987/4009 3986/4008 3975/3997 \r
+f 3977/3999 3988/4010 3987/4009 3976/3998 \r
+f 3978/4000 3989/4011 3988/4010 3977/3999 \r
+f 5274/3780 3989/4011 3978/4000 \r
+f 3979/4001 3990/4012 3734/3747 3722/3735 \r
+f 3980/4002 3991/4013 3990/4012 3979/4001 \r
+f 3981/4003 3992/4014 3991/4013 3980/4002 \r
+f 3982/4004 3993/4015 3992/4014 3981/4003 \r
+f 3983/4005 3994/4016 3993/4015 3982/4004 \r
+f 3984/4006 3995/4017 3994/4016 3983/4005 \r
+f 3985/4007 3996/4018 3995/4017 3984/4006 \r
+f 3986/4008 3997/4019 3996/4018 3985/4007 \r
+f 3987/4009 3998/4020 3997/4019 3986/4008 \r
+f 3988/4010 3999/4021 3998/4020 3987/4009 \r
+f 3989/4011 4000/4022 3999/4021 3988/4010 \r
+f 5274/3780 4000/4022 3989/4011 \r
+f 3990/4012 4001/4023 3744/3757 3734/3747 \r
+f 3991/4013 4002/4024 4001/4023 3990/4012 \r
+f 3992/4014 4003/4025 4002/4024 3991/4013 \r
+f 3993/4015 4004/4026 4003/4025 3992/4014 \r
+f 3994/4016 4005/4027 4004/4026 3993/4015 \r
+f 3995/4017 4006/4028 4005/4027 3994/4016 \r
+f 3996/4018 4007/4029 4006/4028 3995/4017 \r
+f 3997/4019 4008/4030 4007/4029 3996/4018 \r
+f 3998/4020 4009/4031 4008/4030 3997/4019 \r
+f 3999/4021 4010/4032 4009/4031 3998/4020 \r
+f 4000/4022 4011/4033 4010/4032 3999/4021 \r
+f 5274/3780 4011/4033 4000/4022 \r
+f 4022/4034 4023/4035 3456/3483 \r
+f 4025/4038 4012/4039 4013/4036 5521/4037 \r
+f 4016/4042 4213/4043 4214/4040 4017/4041 \r
+f 4014/4046 4027/4047 4026/4044 4015/4045 \r
+f 4028/4049 4026/4044 4027/4047 4029/4048 \r
+f 4029/4048 4027/4047 4025/4038 4030/4050 \r
+f 4031/4052 4029/4048 4030/4050 4032/4051 \r
+f 4032/4051 4030/4050 4033/4053 5535/4054 \r
+f 4035/4057 4034/4058 4036/4055 4037/4056 \r
+f 4037/4056 4036/4055 4038/4059 4039/4060 \r
+f 4039/4060 4038/4059 4040/4061 4041/4062 \r
+f 4041/4062 4040/4061 4042/4063 4043/4064 \r
+f 4043/4064 4042/4063 4044/4065 4045/4066 \r
+f 4045/4066 4044/4065 4046/4067 4047/4068 \r
+f 4047/4068 4046/4067 4048/4069 4049/4070 \r
+f 4049/4070 4048/4069 4050/4071 4051/4072 \r
+f 4051/4072 4050/4071 4028/4049 4052/4073 \r
+f 4053/4075 4051/4072 4052/4073 4054/4074 \r
+f 4054/4074 4052/4073 4031/4052 4055/4076 \r
+f 4056/4078 4054/4074 4055/4076 4057/4077 \r
+f 4057/4077 4055/4076 4058/4079 4059/4080 \r
+f 4059/4080 4058/4079 4060/4081 5560/4082 \r
+f 4062/4085 4061/4086 4063/4083 4064/4084 \r
+f 4064/4084 4063/4083 4065/4087 4066/4088 \r
+f 4066/4088 4065/4087 4067/4089 4068/4090 \r
+f 4068/4090 4067/4089 4069/4091 4070/4092 \r
+f 4070/4092 4069/4091 4071/4093 4072/4094 \r
+f 4072/4094 4071/4093 4073/4095 4074/4096 \r
+f 4074/4096 4073/4095 4075/4097 4076/4098 \r
+f 4076/4098 4075/4097 4053/4075 4077/4099 \r
+f 4078/4101 4076/4098 4077/4099 4079/4100 \r
+f 4079/4100 4077/4099 4056/4078 4080/4102 \r
+f 4081/4104 4079/4100 4080/4102 4082/4103 \r
+f 4082/4103 4080/4102 4083/4105 4084/4106 \r
+f 4084/4106 4083/4105 4085/4107 4086/4108 \r
+f 4086/4108 4085/4107 5585/4109 4087/4110 \r
+f 4089/4113 4088/4114 4090/4111 4091/4112 \r
+f 4091/4112 4090/4111 4092/4115 4093/4116 \r
+f 4093/4116 4092/4115 4094/4117 4095/4118 \r
+f 4095/4118 4094/4117 4096/4119 4097/4120 \r
+f 4097/4120 4096/4119 4098/4121 4099/4122 \r
+f 4099/4122 4098/4121 4100/4123 4101/4124 \r
+f 4101/4124 4100/4123 4078/4101 4102/4125 \r
+f 4103/4127 4101/4124 4102/4125 4104/4126 \r
+f 4104/4126 4102/4125 4081/4104 4105/4128 \r
+f 4106/4130 4104/4126 4105/4128 4107/4129 \r
+f 4107/4129 4105/4128 4108/4131 4109/4132 \r
+f 4109/4132 4108/4131 4110/4133 4111/4134 \r
+f 4111/4134 4110/4133 4112/4135 4113/4136 \r
+f 4113/4136 4112/4135 4114/4137 5610/4138 \r
+f 4116/4141 4115/4142 4117/4139 4118/4140 \r
+f 4118/4140 4117/4139 4119/4143 4120/4144 \r
+f 4120/4144 4119/4143 4121/4145 4122/4146 \r
+f 4122/4146 4121/4145 4123/4147 4124/4148 \r
+f 4124/4148 4123/4147 4125/4149 4126/4150 \r
+f 4126/4150 4125/4149 4103/4127 4127/4151 \r
+f 4128/4153 4126/4150 4127/4151 4129/4152 \r
+f 4129/4152 4127/4151 4106/4130 4130/4154 \r
+f 4131/4156 4129/4152 4130/4154 4132/4155 \r
+f 4132/4155 4130/4154 4133/4157 4134/4158 \r
+f 4134/4158 4133/4157 4135/4159 4136/4160 \r
+f 4136/4160 4135/4159 4137/4161 4138/4162 \r
+f 4138/4162 4137/4161 4139/4163 4140/4164 \r
+f 4140/4164 4139/4163 5635/4165 4141/4166 \r
+f 4143/4169 4142/4170 4144/4167 4145/4168 \r
+f 4145/4168 4144/4167 4146/4171 4147/4172 \r
+f 4147/4172 4146/4171 4148/4173 4149/4174 \r
+f 4149/4174 4148/4173 4150/4175 4151/4176 \r
+f 4151/4176 4150/4175 4128/4153 4152/4177 \r
+f 4153/4179 4151/4176 4152/4177 4154/4178 \r
+f 4154/4178 4152/4177 4131/4156 4155/4180 \r
+f 4156/4182 4154/4178 4155/4180 4157/4181 \r
+f 4157/4181 4155/4180 4158/4183 4159/4184 \r
+f 4159/4184 4158/4183 4160/4185 4161/4186 \r
+f 4161/4186 4160/4185 4162/4187 4163/4188 \r
+f 4163/4188 4162/4187 4164/4189 4165/4190 \r
+f 4165/4190 4164/4189 4166/4191 4167/4192 \r
+f 4167/4192 4166/4191 5660/4193 5661/4194 \r
+f 5663/4197 4168/4198 4169/4195 4170/4196 \r
+f 4170/4196 4169/4195 4171/4199 4172/4200 \r
+f 4172/4200 4171/4199 4173/4201 4174/4202 \r
+f 4174/4202 4173/4201 4153/4179 4175/4203 \r
+f 4176/4205 4174/4202 4175/4203 4177/4204 \r
+f 4177/4204 4175/4203 4156/4182 4178/4206 \r
+f 4179/4208 4177/4204 4178/4206 4180/4207 \r
+f 4180/4207 4178/4206 4181/4209 4182/4210 \r
+f 4182/4210 4181/4209 4183/4211 4184/4212 \r
+f 4184/4212 4183/4211 4185/4213 4186/4214 \r
+f 4186/4214 4185/4213 4187/4215 4188/4216 \r
+f 4188/4216 4187/4215 4189/4217 4190/4218 \r
+f 4190/4218 4189/4217 4191/4219 4192/4220 \r
+f 4192/4220 4191/4219 4193/4221 4194/4222 \r
+f 4195/4225 5688/4226 4196/4223 4197/4224 \r
+f 4197/4224 4196/4223 4198/4227 4199/4228 \r
+f 4199/4228 4198/4227 4176/4205 4200/4229 \r
+f 4201/4231 4199/4228 4200/4229 4202/4230 \r
+f 4202/4230 4200/4229 4179/4208 4203/4232 \r
+f 4199/4228 4201/4231 4204/4233 4197/4224 \r
+f 4197/4224 4204/4233 5697/4234 4195/4225 \r
+f 4172/4200 4198/4227 4196/4223 4170/4196 \r
+f 4170/4196 4196/4223 5688/4226 5663/4197 \r
+f 4194/4222 4205/4236 4206/4235 4192/4220 \r
+f 4192/4220 4206/4235 4207/4237 4190/4218 \r
+f 5661/4194 4193/4221 4191/4219 4167/4192 \r
+f 4190/4218 4207/4237 4208/4238 4188/4216 \r
+f 4167/4192 4191/4219 4189/4217 4165/4190 \r
+f 4188/4216 4208/4238 4209/4239 4186/4214 \r
+f 4165/4190 4189/4217 4187/4215 4163/4188 \r
+f 4186/4214 4209/4239 4210/4240 4184/4212 \r
+f 4163/4188 4187/4215 4185/4213 4161/4186 \r
+f 4184/4212 4210/4240 4211/4241 4182/4210 \r
+f 4161/4186 4185/4213 4183/4211 4159/4184 \r
+f 4182/4210 4211/4241 4212/4242 4180/4207 \r
+f 4159/4184 4183/4211 4181/4209 4157/4181 \r
+f 4180/4207 4212/4242 4203/4232 4179/4208 \r
+f 4157/4181 4181/4209 4178/4206 4156/4182 \r
+f 4177/4204 4179/4208 4200/4229 4176/4205 \r
+f 4174/4202 4176/4205 4198/4227 4172/4200 \r
+f 4149/4174 4173/4201 4171/4199 4147/4172 \r
+f 4147/4172 4171/4199 4169/4195 4145/4168 \r
+f 4145/4168 4169/4195 4168/4198 4143/4169 \r
+f 4141/4166 5660/4193 4166/4191 4140/4164 \r
+f 4140/4164 4166/4191 4164/4189 4138/4162 \r
+f 4138/4162 4164/4189 4162/4187 4136/4160 \r
+f 4136/4160 4162/4187 4160/4185 4134/4158 \r
+f 4134/4158 4160/4185 4158/4183 4132/4155 \r
+f 4132/4155 4158/4183 4155/4180 4131/4156 \r
+f 4154/4178 4156/4182 4175/4203 4153/4179 \r
+f 4151/4176 4153/4179 4173/4201 4149/4174 \r
+f 4124/4148 4150/4175 4148/4173 4122/4146 \r
+f 4122/4146 4148/4173 4146/4171 4120/4144 \r
+f 4120/4144 4146/4171 4144/4167 4118/4140 \r
+f 4118/4140 4144/4167 4142/4170 4116/4141 \r
+f 5610/4138 5635/4165 4139/4163 4113/4136 \r
+f 4113/4136 4139/4163 4137/4161 4111/4134 \r
+f 4111/4134 4137/4161 4135/4159 4109/4132 \r
+f 4109/4132 4135/4159 4133/4157 4107/4129 \r
+f 4107/4129 4133/4157 4130/4154 4106/4130 \r
+f 4129/4152 4131/4156 4152/4177 4128/4153 \r
+f 4126/4150 4128/4153 4150/4175 4124/4148 \r
+f 4099/4122 4125/4149 4123/4147 4097/4120 \r
+f 4097/4120 4123/4147 4121/4145 4095/4118 \r
+f 4095/4118 4121/4145 4119/4143 4093/4116 \r
+f 4093/4116 4119/4143 4117/4139 4091/4112 \r
+f 4091/4112 4117/4139 4115/4142 4089/4113 \r
+f 4087/4110 4114/4137 4112/4135 4086/4108 \r
+f 4086/4108 4112/4135 4110/4133 4084/4106 \r
+f 4084/4106 4110/4133 4108/4131 4082/4103 \r
+f 4082/4103 4108/4131 4105/4128 4081/4104 \r
+f 4104/4126 4106/4130 4127/4151 4103/4127 \r
+f 4101/4124 4103/4127 4125/4149 4099/4122 \r
+f 4074/4096 4100/4123 4098/4121 4072/4094 \r
+f 4072/4094 4098/4121 4096/4119 4070/4092 \r
+f 4070/4092 4096/4119 4094/4117 4068/4090 \r
+f 4068/4090 4094/4117 4092/4115 4066/4088 \r
+f 4066/4088 4092/4115 4090/4111 4064/4084 \r
+f 4064/4084 4090/4111 4088/4114 4062/4085 \r
+f 5560/4082 5585/4109 4085/4107 4059/4080 \r
+f 4059/4080 4085/4107 4083/4105 4057/4077 \r
+f 4057/4077 4083/4105 4080/4102 4056/4078 \r
+f 4079/4100 4081/4104 4102/4125 4078/4101 \r
+f 4076/4098 4078/4101 4100/4123 4074/4096 \r
+f 4049/4070 4075/4097 4073/4095 4047/4068 \r
+f 4047/4068 4073/4095 4071/4093 4045/4066 \r
+f 4045/4066 4071/4093 4069/4091 4043/4064 \r
+f 4043/4064 4069/4091 4067/4089 4041/4062 \r
+f 4041/4062 4067/4089 4065/4087 4039/4060 \r
+f 4039/4060 4065/4087 4063/4083 4037/4056 \r
+f 4037/4056 4063/4083 4061/4086 4035/4057 \r
+f 5535/4054 4060/4081 4058/4079 4032/4051 \r
+f 4032/4051 4058/4079 4055/4076 4031/4052 \r
+f 4054/4074 4056/4078 4077/4099 4053/4075 \r
+f 4051/4072 4053/4075 4075/4097 4049/4070 \r
+f 4213/4043 4050/4071 4048/4069 4214/4040 \r
+f 4050/4071 4213/4043 4026/4044 4028/4049 \r
+f 4214/4040 4048/4069 4046/4067 4215/4243 \r
+f 4214/4040 4215/4243 4018/4244 4017/4041 \r
+f 4215/4243 4046/4067 4044/4065 4216/4245 \r
+f 4215/4243 4216/4245 4019/4246 4018/4244 \r
+f 4216/4245 4044/4065 4042/4063 4217/4247 \r
+f 4216/4245 4217/4247 4020/4248 4019/4246 \r
+f 4217/4247 4042/4063 4040/4061 4218/4249 \r
+f 4218/4249 4021/4250 4020/4248 4217/4247 \r
+f 4218/4249 4040/4061 4038/4059 4219/4251 \r
+f 4219/4251 4022/6238 4021/4250 4218/4249 \r
+f 4219/4251 4038/4059 4036/4055 4220/4252 \r
+f 4219/4251 4220/4252 4023/6239 4022/6238 \r
+f 4220/4252 4036/4055 4034/4058 4221/4253 \r
+f 4220/4252 4221/4253 4024/4254 4023/6239 \r
+f 5521/4037 4033/4053 4030/4050 4025/4038 \r
+f 4029/4048 4031/4052 4052/4073 4028/4049 \r
+f 4026/4044 4213/4043 4016/4042 4015/4045 \r
+f 4025/4038 4027/4047 4014/4046 4012/4039 \r
+f 4248/4257 4229/4258 4228/4255 4249/4256 \r
+f 4227/4259 4250/4260 4249/4256 4228/4255 \r
+f 4226/4261 4251/4262 4250/4260 4227/4259 \r
+f 4225/4263 4252/4264 4251/4262 4226/4261 \r
+f 4224/4265 4253/4266 4252/4264 4225/4263 \r
+f 4223/4267 4254/4268 4253/4266 4224/4265 \r
+f 4254/4268 4223/4267 4222/4269 5729/4270 \r
+f 4234/4273 4233/4274 4256/4271 4255/4272 \r
+f 4256/4271 4233/4274 4232/4275 4257/4276 \r
+f 4231/4277 4258/4278 4257/4276 4232/4275 \r
+f 4230/4279 4259/4280 4258/4278 4231/4277 \r
+f 4260/4282 4258/4278 4259/4280 4261/4281 \r
+f 4261/4281 4259/4280 4248/4257 4262/4283 \r
+f 4263/4285 4261/4281 4262/4283 4264/4284 \r
+f 4264/4284 4262/4283 4265/4286 4266/4287 \r
+f 4266/4287 4265/4286 4267/4288 4268/4289 \r
+f 4268/4289 4267/4288 4269/4290 4270/4291 \r
+f 4270/4291 4269/4290 4271/4292 4272/4293 \r
+f 4272/4293 4271/4292 4273/4294 4274/4295 \r
+f 4274/4295 4273/4294 4275/4296 4276/4297 \r
+f 4276/4297 4275/4296 4277/4298 4278/4299 \r
+f 4280/4302 4279/4303 4281/4300 4282/4301 \r
+f 4282/4301 4281/4300 4283/4304 4284/4305 \r
+f 4284/4305 4283/4304 4260/4282 4285/4306 \r
+f 4286/4308 4284/4305 4285/4306 4287/4307 \r
+f 4287/4307 4285/4306 4263/4285 4288/4309 \r
+f 4289/4311 4287/4307 4288/4309 4290/4310 \r
+f 4290/4310 4288/4309 4291/4312 4292/4313 \r
+f 4292/4313 4291/4312 4293/4314 4294/4315 \r
+f 4294/4315 4293/4314 4295/4316 4296/4317 \r
+f 4296/4317 4295/4316 4297/4318 4298/4319 \r
+f 4298/4319 4297/4318 4299/4320 4300/4321 \r
+f 4300/4321 4299/4320 4301/4322 4302/4323 \r
+f 4302/4323 4301/4322 4303/4324 4304/4325 \r
+f 4304/4325 4303/4324 4305/4326 4306/4327 \r
+f 4308/4330 4307/4331 4309/4328 4310/4329 \r
+f 4310/4329 4309/4328 4286/4308 4311/4332 \r
+f 4312/4334 4310/4329 4311/4332 4313/4333 \r
+f 4313/4333 4311/4332 4289/4311 4314/4335 \r
+f 4315/4337 4313/4333 4314/4335 4316/4336 \r
+f 4316/4336 4314/4335 4317/4338 4318/4339 \r
+f 4318/4339 4317/4338 4319/4340 4320/4341 \r
+f 4320/4341 4319/4340 4321/4342 4322/4343 \r
+f 4322/4343 4321/4342 4323/4344 4324/4345 \r
+f 4324/4345 4323/4344 4325/4346 4326/4347 \r
+f 4326/4347 4325/4346 4327/4348 4328/4349 \r
+f 4328/4349 4327/4348 4329/4350 4330/4351 \r
+f 4330/4351 4329/4350 4331/4352 4332/4353 \r
+f 4332/4353 4331/4352 4333/4354 4334/4355 \r
+f 4336/4357 4335/4358 4312/4334 4337/4356 \r
+f 4338/4360 4336/4357 4337/4356 4339/4359 \r
+f 4339/4359 4337/4356 4315/4337 4340/4361 \r
+f 4341/4363 4339/4359 4340/4361 4342/4362 \r
+f 4342/4362 4340/4361 4343/4364 4344/4365 \r
+f 4344/4365 4343/4364 4345/4366 4346/4367 \r
+f 4346/4367 4345/4366 4347/4368 4348/4369 \r
+f 4348/4369 4347/4368 4349/4370 4350/4371 \r
+f 4350/4371 4349/4370 4351/4372 4352/4373 \r
+f 4352/4373 4351/4372 4353/4374 4354/4375 \r
+f 4354/4375 4353/4374 4355/4376 4356/4377 \r
+f 4356/4377 4355/4376 4357/4378 4358/4379 \r
+f 4358/4379 4357/4378 4359/4380 4360/4381 \r
+f 4360/4381 4359/4380 4361/4382 5826/4383 \r
+f 4363/4385 4362/4386 4341/4363 4364/4384 \r
+f 4365/4388 4363/4385 4364/4384 4366/4387 \r
+f 4366/4387 4364/4384 4367/4389 4368/4390 \r
+f 4368/4390 4367/4389 4369/4391 4370/4392 \r
+f 4370/4392 4369/4391 4371/4393 4372/4394 \r
+f 4372/4394 4371/4393 4373/4395 4374/4396 \r
+f 4374/4396 4373/4395 4375/4397 4376/4398 \r
+f 4376/4398 4375/4397 4377/4399 4378/4400 \r
+f 4378/4400 4377/4399 4379/4401 4380/4402 \r
+f 4380/4402 4379/4401 4381/4403 4382/4404 \r
+f 4382/4404 4381/4403 4383/4405 4384/4406 \r
+f 4384/4406 4383/4405 4385/4407 4386/4408 \r
+f 4386/4408 4385/4407 5849/4409 4387/4410 \r
+f 4389/4413 4388/4414 4390/4411 4391/4412 \r
+f 4391/4412 4390/4411 4392/4415 4393/4416 \r
+f 4393/4416 4392/4415 4394/4417 4395/4418 \r
+f 4395/4418 4394/4417 4396/4419 4397/4420 \r
+f 4397/4420 4396/4419 4398/4421 4399/4422 \r
+f 4399/4422 4398/4421 4400/4423 4401/4424 \r
+f 4401/4424 4400/4423 4402/4425 4403/4426 \r
+f 4403/4426 4402/4425 4404/4427 4405/4428 \r
+f 4405/4428 4404/4427 4406/4429 4407/4430 \r
+f 4407/4430 4406/4429 4408/4431 4409/4432 \r
+f 4409/4432 4408/4431 4410/4433 4411/4434 \r
+f 4411/4434 4410/4433 4412/4435 5872/4436 \r
+f 4414/4439 4413/4440 4415/4437 4416/4438 \r
+f 4416/4438 4415/4437 4417/4441 4418/4442 \r
+f 4418/4442 4417/4441 4419/4443 4420/4444 \r
+f 4420/4444 4419/4443 4421/4445 4422/4446 \r
+f 4422/4446 4421/4445 4423/4447 4424/4448 \r
+f 4424/4448 4423/4447 4425/4449 4426/4450 \r
+f 4426/4450 4425/4449 4427/4451 4428/4452 \r
+f 4428/4452 4427/4451 4429/4453 4430/4454 \r
+f 4430/4454 4429/4453 4431/4455 4432/4456 \r
+f 4432/4456 4431/4455 4433/4457 4434/4458 \r
+f 4434/4458 4433/4457 4435/4459 4436/4460 \r
+f 4436/4460 4435/4459 5895/4461 4437/4462 \r
+f 4439/4465 4438/4466 4440/4463 4441/4464 \r
+f 4441/4464 4440/4463 4442/4467 4443/4468 \r
+f 4443/4468 4442/4467 4444/4469 4445/4470 \r
+f 4445/4470 4444/4469 4446/4471 4447/4472 \r
+f 4447/4472 4446/4471 4448/4473 4449/4474 \r
+f 4449/4474 4448/4473 4450/4475 4451/4476 \r
+f 4451/4476 4450/4475 4452/4477 4453/4478 \r
+f 4453/4478 4452/4477 4454/4479 4455/4480 \r
+f 4455/4480 4454/4479 4456/4481 4457/4482 \r
+f 4457/4482 4456/4481 4458/4483 4459/4484 \r
+f 4459/4484 4458/4483 4460/4485 4461/4486 \r
+f 4461/4486 4460/4485 4462/4487 5918/4488 \r
+f 4464/4491 4463/4492 4465/4489 4466/4490 \r
+f 4466/4490 4465/4489 4467/4493 4468/4494 \r
+f 4468/4494 4467/4493 4469/4495 4470/4496 \r
+f 4470/4496 4469/4495 4471/4497 4472/4498 \r
+f 4472/4498 4471/4497 4473/4499 4474/4500 \r
+f 4474/4500 4473/4499 4475/4501 4476/4502 \r
+f 4476/4502 4475/4501 4477/4503 4478/4504 \r
+f 4478/4504 4477/4503 4479/4505 4480/4506 \r
+f 4480/4506 4479/4505 4481/4507 4482/4508 \r
+f 4482/4508 4481/4507 4483/4509 4484/4510 \r
+f 4484/4510 4483/4509 4485/4511 4486/4512 \r
+f 4486/4512 4485/4511 5941/4513 5942/4514 \r
+f 4488/4517 4487/4518 4489/4515 4490/4516 \r
+f 4490/4516 4489/4515 4491/4519 4492/4520 \r
+f 4492/4520 4491/4519 4493/4521 4494/4522 \r
+f 4494/4522 4493/4521 4495/4523 4496/4524 \r
+f 4496/4524 4495/4523 4497/4525 4498/4526 \r
+f 4498/4526 4497/4525 4499/4527 4500/4528 \r
+f 4500/4528 4499/4527 4501/4529 4502/4530 \r
+f 4502/4530 4501/4529 4503/4531 4504/4532 \r
+f 4504/4532 4503/4531 4505/4533 4506/4534 \r
+f 4506/4534 4505/4533 4507/4535 4508/4536 \r
+f 4508/4536 4507/4535 4509/4537 4510/4538 \r
+f 4510/4538 4509/4537 4511/4539 5965/4540 \r
+f 4512/4543 5967/4544 4513/4541 4514/4542 \r
+f 4514/4542 4513/4541 4515/4545 4516/4546 \r
+f 4516/4546 4515/4545 4517/4547 4518/4548 \r
+f 4518/4548 4517/4547 4519/4549 4520/4550 \r
+f 4520/4550 4519/4549 4521/4551 4522/4552 \r
+f 4522/4552 4521/4551 4523/4553 4524/4554 \r
+f 4524/4554 4523/4553 4525/4555 4526/4556 \r
+f 4526/4556 4525/4555 4527/4557 4528/4558 \r
+f 4528/4558 4527/4557 4529/4559 4530/4560 \r
+f 4530/4560 4529/4559 4531/4561 4532/4562 \r
+f 4532/4562 4531/4561 4533/4563 4534/4564 \r
+f 4534/4564 4533/4563 5989/4565 4535/4566 \r
+f 4535/4566 4235/4568 4236/4567 4534/4564 \r
+f 5965/4540 5989/4565 4533/4563 4510/4538 \r
+f 4534/4564 4236/4567 4237/4569 4532/4562 \r
+f 4510/4538 4533/4563 4531/4561 4508/4536 \r
+f 4532/4562 4237/4569 4238/4570 4530/4560 \r
+f 4508/4536 4531/4561 4529/4559 4506/4534 \r
+f 4530/4560 4238/4570 4239/4571 4528/4558 \r
+f 4506/4534 4529/4559 4527/4557 4504/4532 \r
+f 4528/4558 4239/4571 4240/4572 4526/4556 \r
+f 4526/4556 4240/4572 4241/4573 4524/4554 \r
+f 4504/4532 4527/4557 4525/4555 4502/4530 \r
+f 4502/4530 4525/4555 4523/4553 4500/4528 \r
+f 4524/4554 4241/4573 4242/4574 4522/4552 \r
+f 4500/4528 4523/4553 4521/4551 4498/4526 \r
+f 4522/4552 4242/4574 4243/4575 4520/4550 \r
+f 4518/4548 4520/4550 4243/4575 4244/4576 \r
+f 4498/4526 4521/4551 4519/4549 4496/4524 \r
+f 4496/4524 4519/4549 4517/4547 4494/4522 \r
+f 4518/4548 4244/4576 4245/4577 4516/4546 \r
+f 4494/4522 4517/4547 4515/4545 4492/4520 \r
+f 4516/4546 4245/4577 4246/4578 4514/4542 \r
+f 4492/4520 4515/4545 4513/4541 4490/4516 \r
+f 4514/4542 4246/4578 4247/4579 4512/4543 \r
+f 4490/4516 4513/4541 5967/4544 4488/4517 \r
+f 5942/4514 4511/4539 4509/4537 4486/4512 \r
+f 4486/4512 4509/4537 4507/4535 4484/4510 \r
+f 4484/4510 4507/4535 4505/4533 4482/4508 \r
+f 4482/4508 4505/4533 4503/4531 4480/4506 \r
+f 4480/4506 4503/4531 4501/4529 4478/4504 \r
+f 4478/4504 4501/4529 4499/4527 4476/4502 \r
+f 4476/4502 4499/4527 4497/4525 4474/4500 \r
+f 4474/4500 4497/4525 4495/4523 4472/4498 \r
+f 4472/4498 4495/4523 4493/4521 4470/4496 \r
+f 4470/4496 4493/4521 4491/4519 4468/4494 \r
+f 4468/4494 4491/4519 4489/4515 4466/4490 \r
+f 4466/4490 4489/4515 4487/4518 4464/4491 \r
+f 5918/4488 5941/4513 4485/4511 4461/4486 \r
+f 4461/4486 4485/4511 4483/4509 4459/4484 \r
+f 4459/4484 4483/4509 4481/4507 4457/4482 \r
+f 4457/4482 4481/4507 4479/4505 4455/4480 \r
+f 4455/4480 4479/4505 4477/4503 4453/4478 \r
+f 4453/4478 4477/4503 4475/4501 4451/4476 \r
+f 4451/4476 4475/4501 4473/4499 4449/4474 \r
+f 4449/4474 4473/4499 4471/4497 4447/4472 \r
+f 4447/4472 4471/4497 4469/4495 4445/4470 \r
+f 4445/4470 4469/4495 4467/4493 4443/4468 \r
+f 4443/4468 4467/4493 4465/4489 4441/4464 \r
+f 4441/4464 4465/4489 4463/4492 4439/4465 \r
+f 4437/4462 4462/4487 4460/4485 4436/4460 \r
+f 4436/4460 4460/4485 4458/4483 4434/4458 \r
+f 4434/4458 4458/4483 4456/4481 4432/4456 \r
+f 4432/4456 4456/4481 4454/4479 4430/4454 \r
+f 4430/4454 4454/4479 4452/4477 4428/4452 \r
+f 4428/4452 4452/4477 4450/4475 4426/4450 \r
+f 4426/4450 4450/4475 4448/4473 4424/4448 \r
+f 4424/4448 4448/4473 4446/4471 4422/4446 \r
+f 4422/4446 4446/4471 4444/4469 4420/4444 \r
+f 4420/4444 4444/4469 4442/4467 4418/4442 \r
+f 4418/4442 4442/4467 4440/4463 4416/4438 \r
+f 4416/4438 4440/4463 4438/4466 4414/4439 \r
+f 5872/4436 5895/4461 4435/4459 4411/4434 \r
+f 4411/4434 4435/4459 4433/4457 4409/4432 \r
+f 4409/4432 4433/4457 4431/4455 4407/4430 \r
+f 4407/4430 4431/4455 4429/4453 4405/4428 \r
+f 4405/4428 4429/4453 4427/4451 4403/4426 \r
+f 4403/4426 4427/4451 4425/4449 4401/4424 \r
+f 4401/4424 4425/4449 4423/4447 4399/4422 \r
+f 4399/4422 4423/4447 4421/4445 4397/4420 \r
+f 4397/4420 4421/4445 4419/4443 4395/4418 \r
+f 4395/4418 4419/4443 4417/4441 4393/4416 \r
+f 4393/4416 4417/4441 4415/4437 4391/4412 \r
+f 4391/4412 4415/4437 4413/4440 4389/4413 \r
+f 4387/4410 4412/4435 4410/4433 4386/4408 \r
+f 4386/4408 4410/4433 4408/4431 4384/4406 \r
+f 4384/4406 4408/4431 4406/4429 4382/4404 \r
+f 4382/4404 4406/4429 4404/4427 4380/4402 \r
+f 4380/4402 4404/4427 4402/4425 4378/4400 \r
+f 4378/4400 4402/4425 4400/4423 4376/4398 \r
+f 4376/4398 4400/4423 4398/4421 4374/4396 \r
+f 4374/4396 4398/4421 4396/4419 4372/4394 \r
+f 4372/4394 4396/4419 4394/4417 4370/4392 \r
+f 4370/4392 4394/4417 4392/4415 4368/4390 \r
+f 4368/4390 4392/4415 4390/4411 4366/4387 \r
+f 4366/4387 4390/4411 4388/4414 4365/4388 \r
+f 5826/4383 5849/4409 4385/4407 4360/4381 \r
+f 4360/4381 4385/4407 4383/4405 4358/4379 \r
+f 4358/4379 4383/4405 4381/4403 4356/4377 \r
+f 4356/4377 4381/4403 4379/4401 4354/4375 \r
+f 4354/4375 4379/4401 4377/4399 4352/4373 \r
+f 4352/4373 4377/4399 4375/4397 4350/4371 \r
+f 4350/4371 4375/4397 4373/4395 4348/4369 \r
+f 4348/4369 4373/4395 4371/4393 4346/4367 \r
+f 4346/4367 4371/4393 4369/4391 4344/4365 \r
+f 4344/4365 4369/4391 4367/4389 4342/4362 \r
+f 4342/4362 4367/4389 4364/4384 4341/4363 \r
+f 4334/4355 4361/4382 4359/4380 4332/4353 \r
+f 4332/4353 4359/4380 4357/4378 4330/4351 \r
+f 4330/4351 4357/4378 4355/4376 4328/4349 \r
+f 4328/4349 4355/4376 4353/4374 4326/4347 \r
+f 4326/4347 4353/4374 4351/4372 4324/4345 \r
+f 4324/4345 4351/4372 4349/4370 4322/4343 \r
+f 4322/4343 4349/4370 4347/4368 4320/4341 \r
+f 4320/4341 4347/4368 4345/4366 4318/4339 \r
+f 4318/4339 4345/4366 4343/4364 4316/4336 \r
+f 4316/4336 4343/4364 4340/4361 4315/4337 \r
+f 4339/4359 4341/4363 4362/4386 4338/4360 \r
+f 4306/4327 4333/4354 4331/4352 4304/4325 \r
+f 4304/4325 4331/4352 4329/4350 4302/4323 \r
+f 4302/4323 4329/4350 4327/4348 4300/4321 \r
+f 4300/4321 4327/4348 4325/4346 4298/4319 \r
+f 4298/4319 4325/4346 4323/4344 4296/4317 \r
+f 4296/4317 4323/4344 4321/4342 4294/4315 \r
+f 4294/4315 4321/4342 4319/4340 4292/4313 \r
+f 4292/4313 4319/4340 4317/4338 4290/4310 \r
+f 4290/4310 4317/4338 4314/4335 4289/4311 \r
+f 4313/4333 4315/4337 4337/4356 4312/4334 \r
+f 4310/4329 4312/4334 4335/4358 4308/4330 \r
+f 4282/4301 4309/4328 4307/4331 4280/4302 \r
+f 4278/4299 4305/4326 4303/4324 4276/4297 \r
+f 4276/4297 4303/4324 4301/4322 4274/4295 \r
+f 4274/4295 4301/4322 4299/4320 4272/4293 \r
+f 4272/4293 4299/4320 4297/4318 4270/4291 \r
+f 4270/4291 4297/4318 4295/4316 4268/4289 \r
+f 4268/4289 4295/4316 4293/4314 4266/4287 \r
+f 4266/4287 4293/4314 4291/4312 4264/4284 \r
+f 4264/4284 4291/4312 4288/4309 4263/4285 \r
+f 4287/4307 4289/4311 4311/4332 4286/4308 \r
+f 4284/4305 4286/4308 4309/4328 4282/4301 \r
+f 4257/4276 4283/4304 4281/4300 4256/4271 \r
+f 4256/4271 4281/4300 4279/4303 4255/4272 \r
+f 5729/4270 4277/4298 4275/4296 4254/4268 \r
+f 4254/4268 4275/4296 4273/4294 4253/4266 \r
+f 4253/4266 4273/4294 4271/4292 4252/4264 \r
+f 4252/4264 4271/4292 4269/4290 4251/4262 \r
+f 4251/4262 4269/4290 4267/4288 4250/4260 \r
+f 4250/4260 4267/4288 4265/4286 4249/4256 \r
+f 4249/4256 4265/4286 4262/4283 4248/4257 \r
+f 4261/4281 4263/4285 4285/4306 4260/4282 \r
+f 4258/4278 4260/4282 4283/4304 4257/4276 \r
+f 4229/4258 4248/4257 4259/4280 4230/4279 \r
+f 4014/6245 3190/3204 3189/3196 3181/3189 \r
+f 4014/6245 3181/3189 4012/6241 \r
+f 4014/6245 4015/6244 3190/3204 \r
+f 3192/3208 3191/3206 4016/6243 4017/6242 \r
+f 4018/6261 3193/3210 3192/3208 4017/6242 \r
+f 4020/6263 3194/3212 4019/6262 \r
+f 4021/6264 3471/3495 4020/6263 \r
+f 3456/3483 4021/6264 4022/4034 \r
+f 3456/3483 4023/4035 3457/3466 \r
+f 3447/3455 4223/6274 3436/3444 \r
+f 4228/6268 3424/3431 3425/3432 3436/3444 \r
+f 4229/6269 3423/3430 3424/3431 4228/6268 \r
+f 3446/3453 4233/6277 4234/6276 \r
+f 3445/3452 4236/6281 3444/3451 \r
+f 3445/3452 4237/6283 4236/6281 \r
+f 4243/6289 4242/6288 3724/3737 \r
+f 4247/6293 4246/6292 3735/3748 \r
+f 4023/4035 3458/3463 3457/3466 \r
+f 3472/3485 3471/3495 4021/6264 \r
+f 3471/3495 3194/3212 4020/6263 \r
+f 3193/3210 4018/6261 4019/6262 \r
+f 3194/3212 3193/3210 4019/6262 \r
+f 4023/4035 4024/6266 3458/3463 \r
+f 3456/3483 3472/3485 4021/6264 \r
+f 3190/3204 4015/6244 4016/6243 3191/3206 \r
+f 3182/3188 4013/6240 4012/6241 \r
+f 3181/3189 3182/3188 4012/6241 \r
+f 4227/6270 4228/6268 3436/3444 \r
+f 4226/6271 4227/6270 3436/3444 \r
+f 4225/6272 4226/6271 3436/3444 \r
+f 4224/6273 4225/6272 3436/3444 \r
+f 4223/6274 4224/6273 3436/3444 \r
+f 3447/3455 4222/6275 4223/6274 \r
+f 4229/6269 3435/3442 3423/3430 \r
+f 3435/3442 4229/6269 4230/6280 \r
+f 3435/3442 4230/6280 4231/6279 \r
+f 3435/3442 4231/6279 4232/6278 \r
+f 4232/6278 4233/6277 3446/3453 3435/3442 \r
+f 4244/6290 4243/6289 3725/3738 \r
+f 4245/6291 4244/6290 3725/3738 \r
+f 4243/6289 3724/3737 3725/3738 \r
+f 4246/6292 4245/6291 3725/3738 3735/3748 \r
+f 3723/3736 3724/3737 4242/6288 4241/6287 \r
+f 4241/6287 4240/6286 3723/3736 \r
+f 4239/6285 3445/3452 3723/3736 4240/6286 \r
+f 3445/3452 4239/6285 4238/6284 \r
+f 3445/3452 4238/6284 4237/6283 \r
+f 4236/6281 4235/6282 3455/3462 \r
+f 4236/6281 3455/3462 3444/3451 \r
+f 4536/3003 4537/3002 4538/4580 4539/4581 \r
+f 3004/3005 4536/3003 4539/4581 4540/4582 \r
+f 3006/3007 3004/3005 4540/4582 4541/4583 \r
+f 3008/3009 3006/3007 4541/4583 4542/4584 \r
+f 3010/3011 3008/3009 4542/4584 4543/4585 \r
+f 3012/3013 3010/3011 4543/4585 4544/4586 \r
+f 4538/4580 4546/4588 4545/4587 4539/4581 \r
+f 4539/4581 4545/4587 4547/4589 4540/4582 \r
+f 4541/4583 4540/4582 4547/4589 4548/4590 \r
+f 4542/4584 4541/4583 4548/4590 4549/4591 \r
+f 4543/4585 4542/4584 4549/4591 4550/4592 \r
+f 4544/4586 4543/4585 4550/4592 4551/4593 \r
+f 4546/4588 4553/4595 4552/4594 4545/4587 \r
+f 4545/4587 4552/4594 4554/4596 4547/4589 \r
+f 4548/4590 4547/4589 4554/4596 4555/4597 \r
+f 4549/4591 4548/4590 4555/4597 4556/4598 \r
+f 4550/4592 4549/4591 4556/4598 4557/4599 \r
+f 4551/4593 4550/4592 4557/4599 4558/4600 \r
+f 4553/4595 4560/4602 4559/4601 4552/4594 \r
+f 4552/4594 4559/4601 4561/4603 4554/4596 \r
+f 4555/4597 4554/4596 4561/4603 4562/4604 \r
+f 4556/4598 4555/4597 4562/4604 4563/4605 \r
+f 4557/4599 4556/4598 4563/4605 4564/4606 \r
+f 4558/4600 4557/4599 4564/4606 4565/4607 \r
+f 4560/4602 4567/4609 4566/4608 4559/4601 \r
+f 4561/4603 4559/4601 4566/4608 4568/4610 \r
+f 4562/4604 4561/4603 4568/4610 4569/4611 \r
+f 4563/4605 4562/4604 4569/4611 4570/4612 \r
+f 4564/4606 4563/4605 4570/4612 4571/4613 \r
+f 4565/4607 4564/4606 4571/4613 4572/4614 \r
+f 4567/4609 4574/4616 4573/4615 4566/4608 \r
+f 4568/4610 4566/4608 4573/4615 4575/4617 \r
+f 4569/4611 4568/4610 4575/4617 4576/4618 \r
+f 4570/4612 4569/4611 4576/4618 4577/4619 \r
+f 4571/4613 4570/4612 4577/4619 4578/4620 \r
+f 4572/4614 4571/4613 4578/4620 4579/4621 \r
+f 4580/4623 4573/4615 4574/4616 4581/4622 \r
+f 4582/4624 4575/4617 4573/4615 4580/4623 \r
+f 4583/4625 4576/4618 4575/4617 4582/4624 \r
+f 4584/4626 4577/4619 4576/4618 4583/4625 \r
+f 4585/4627 4578/4620 4577/4619 4584/4626 \r
+f 4586/4628 4579/4621 4578/4620 4585/4627 \r
+f 4587/4630 4580/4623 4581/4622 4588/4629 \r
+f 4589/4631 4582/4624 4580/4623 4587/4630 \r
+f 4590/4632 4583/4625 4582/4624 4589/4631 \r
+f 4591/4633 4584/4626 4583/4625 4590/4632 \r
+f 4592/4634 4585/4627 4584/4626 4591/4633 \r
+f 4593/4635 4586/4628 4585/4627 4592/4634 \r
+f 4594/4637 4587/4630 4588/4629 4595/4636 \r
+f 4596/4638 4589/4631 4587/4630 4594/4637 \r
+f 4597/4639 4590/4632 4589/4631 4596/4638 \r
+f 4598/4640 4591/4633 4590/4632 4597/4639 \r
+f 4599/4641 4592/4634 4591/4633 4598/4640 \r
+f 4600/4642 4593/4635 4592/4634 4599/4641 \r
+f 4601/4644 4594/4637 4595/4636 4602/4643 \r
+f 4603/4645 4596/4638 4594/4637 4601/4644 \r
+f 4604/4646 4597/4639 4596/4638 4603/4645 \r
+f 4605/4647 4598/4640 4597/4639 4604/4646 \r
+f 4606/4648 4599/4641 4598/4640 4605/4647 \r
+f 4607/4649 4600/4642 4599/4641 4606/4648 \r
+f 4602/4643 4609/4651 4608/4650 4601/4644 \r
+f 4610/4652 4603/4645 4601/4644 4608/4650 \r
+f 4611/4653 4604/4646 4603/4645 4610/4652 \r
+f 4612/4654 4605/4647 4604/4646 4611/4653 \r
+f 4613/4655 4606/4648 4605/4647 4612/4654 \r
+f 4614/4656 4607/4649 4606/4648 4613/4655 \r
+f 4615/4658 4608/4650 4609/4651 4616/4657 \r
+f 4617/4659 4610/4652 4608/4650 4615/4658 \r
+f 4618/4660 4611/4653 4610/4652 4617/4659 \r
+f 4619/4661 4612/4654 4611/4653 4618/4660 \r
+f 4620/4662 4613/4655 4612/4654 4619/4661 \r
+f 4621/4663 4614/4656 4613/4655 4620/4662 \r
+f 4616/4657 4623/4665 4622/4664 4615/4658 \r
+f 4615/4658 4622/4664 4624/4666 4617/4659 \r
+f 4617/4659 4624/4666 4625/4667 4618/4660 \r
+f 4618/4660 4625/4667 4626/4668 4619/4661 \r
+f 4619/4661 4626/4668 4627/4669 4620/4662 \r
+f 4621/4663 4620/4662 4627/4669 4628/4670 \r
+f 4623/4665 4630/4672 4629/4671 4622/4664 \r
+f 4622/4664 4629/4671 4631/4673 4624/4666 \r
+f 4624/4666 4631/4673 4632/4674 4625/4667 \r
+f 4625/4667 4632/4674 4633/4675 4626/4668 \r
+f 4626/4668 4633/4675 4634/4676 4627/4669 \r
+f 4627/4669 4634/4676 4635/4677 4628/4670 \r
+f 4630/4672 4637/4679 4636/4678 4629/4671 \r
+f 4629/4671 4636/4678 4638/4680 4631/4673 \r
+f 4631/4673 4638/4680 4639/4681 4632/4674 \r
+f 4632/4674 4639/4681 4640/4682 4633/4675 \r
+f 4633/4675 4640/4682 4641/4683 4634/4676 \r
+f 4634/4676 4641/4683 4642/4684 4635/4677 \r
+f 4637/4679 4644/4686 4643/4685 4636/4678 \r
+f 4636/4678 4643/4685 4645/4687 4638/4680 \r
+f 4638/4680 4645/4687 4646/4688 4639/4681 \r
+f 4639/4681 4646/4688 4647/4689 4640/4682 \r
+f 4640/4682 4647/4689 4648/4690 4641/4683 \r
+f 4641/4683 4648/4690 4649/4691 4642/4684 \r
+f 4644/4686 4651/4693 4650/4692 4643/4685 \r
+f 4643/4685 4650/4692 4652/4694 4645/4687 \r
+f 4645/4687 4652/4694 4653/4695 4646/4688 \r
+f 4646/4688 4653/4695 4654/4696 4647/4689 \r
+f 4647/4689 4654/4696 4655/4697 4648/4690 \r
+f 4648/4690 4655/4697 4656/4698 4649/4691 \r
+f 4651/4693 4658/4700 4657/4699 4650/4692 \r
+f 4650/4692 4657/4699 4659/4701 4652/4694 \r
+f 4652/4694 4659/4701 4660/4702 4653/4695 \r
+f 4653/4695 4660/4702 4661/4703 4654/4696 \r
+f 4654/4696 4661/4703 4662/4704 4655/4697 \r
+f 4655/4697 4662/4704 4663/4705 4656/4698 \r
+f 4658/4700 4665/4707 4664/4706 4657/4699 \r
+f 4657/4699 4664/4706 4666/4708 4659/4701 \r
+f 4659/4701 4666/4708 4667/4709 4660/4702 \r
+f 4660/4702 4667/4709 4668/4710 4661/4703 \r
+f 4661/4703 4668/4710 4669/4711 4662/4704 \r
+f 4662/4704 4669/4711 4670/4712 4663/4705 \r
+f 4665/4707 4672/4714 4671/4713 4664/4706 \r
+f 4664/4706 4671/4713 4673/4715 4666/4708 \r
+f 4666/4708 4673/4715 4674/4716 4667/4709 \r
+f 4667/4709 4674/4716 4675/4717 4668/4710 \r
+f 4668/4710 4675/4717 4676/4718 4669/4711 \r
+f 4669/4711 4676/4718 4677/4719 4670/4712 \r
+f 4672/4714 4679/4721 4678/4720 4671/4713 \r
+f 4671/4713 4678/4720 4680/4722 4673/4715 \r
+f 4673/4715 4680/4722 4681/4723 4674/4716 \r
+f 4674/4716 4681/4723 4682/4724 4675/4717 \r
+f 4675/4717 4682/4724 4683/4725 4676/4718 \r
+f 4676/4718 4683/4725 4684/4726 4677/4719 \r
+f 4679/4721 4686/4728 4685/4727 4678/4720 \r
+f 4678/4720 4685/4727 4687/4729 4680/4722 \r
+f 4680/4722 4687/4729 4688/4730 4681/4723 \r
+f 4681/4723 4688/4730 4689/4731 4682/4724 \r
+f 4682/4724 4689/4731 4690/4732 4683/4725 \r
+f 4683/4725 4690/4732 4691/4733 4684/4726 \r
+f 4686/4728 4693/4735 4692/4734 4685/4727 \r
+f 4685/4727 4692/4734 4694/4736 4687/4729 \r
+f 4687/4729 4694/4736 4695/4737 4688/4730 \r
+f 4688/4730 4695/4737 4696/4738 4689/4731 \r
+f 4689/4731 4696/4738 4697/4739 4690/4732 \r
+f 4690/4732 4697/4739 4698/4740 4691/4733 \r
+f 4693/4735 3168/3170 3167/3169 4692/4734 \r
+f 4692/4734 3167/3169 3169/3171 4694/4736 \r
+f 4694/4736 3169/3171 3170/3172 4695/4737 \r
+f 4695/4737 3170/3172 3171/3173 4696/4738 \r
+f 4696/4738 3171/3173 3172/3174 4697/4739 \r
+f 4697/4739 3172/3174 3173/3175 4698/4740 \r
+f 3175/3176 3012/3013 4544/4586 4699/4741 \r
+f 4700/3178 3175/3176 4699/4741 4701/4742 \r
+f 4702/3180 4700/3178 4701/4742 4703/4743 \r
+f 4704/3182 4702/3180 4703/4743 4705/4744 \r
+f 4706/3184 4704/3182 4705/4744 4707/4745 \r
+f 4708/3186 4706/3184 4707/4745 4709/4746 \r
+f 3182/3188 4708/3186 4709/4746 4710/4747 \r
+f 4699/4741 4544/4586 4551/4593 4711/4748 \r
+f 4701/4742 4699/4741 4711/4748 4712/4749 \r
+f 4703/4743 4701/4742 4712/4749 4713/4750 \r
+f 4705/4744 4703/4743 4713/4750 4714/4751 \r
+f 4707/4745 4705/4744 4714/4751 4715/4752 \r
+f 4709/4746 4707/4745 4715/4752 4716/4753 \r
+f 4710/4747 4709/4746 4716/4753 4717/4754 \r
+f 4711/4748 4551/4593 4558/4600 4718/4755 \r
+f 4712/4749 4711/4748 4718/4755 4719/4756 \r
+f 4713/4750 4712/4749 4719/4756 4720/4757 \r
+f 4714/4751 4713/4750 4720/4757 4721/4758 \r
+f 4715/4752 4714/4751 4721/4758 4722/4759 \r
+f 4716/4753 4715/4752 4722/4759 4723/4760 \r
+f 4717/4754 4716/4753 4723/4760 4724/4761 \r
+f 4725/4763 4717/4754 4724/4761 4726/4762 \r
+f 4727/4765 4725/4763 4726/4762 4728/4764 \r
+f 4729/4767 4727/4765 4728/4764 4730/4766 \r
+f 4731/4769 4729/4767 4730/4766 4732/4768 \r
+f 4733/4771 4731/4769 4732/4768 4734/4770 \r
+f 4718/4755 4558/4600 4565/4607 4735/4772 \r
+f 4719/4756 4718/4755 4735/4772 4736/4773 \r
+f 4720/4757 4719/4756 4736/4773 4737/4774 \r
+f 4721/4758 4720/4757 4737/4774 4738/4775 \r
+f 4722/4759 4721/4758 4738/4775 4739/4776 \r
+f 4723/4760 4722/4759 4739/4776 4740/4777 \r
+f 4724/4761 4723/4760 4740/4777 4741/4778 \r
+f 4726/4762 4724/4761 4741/4778 4742/4779 \r
+f 4728/4764 4726/4762 4742/4779 4743/4780 \r
+f 4730/4766 4728/4764 4743/4780 4744/4781 \r
+f 4732/4768 4730/4766 4744/4781 4745/4782 \r
+f 4734/4770 4732/4768 4745/4782 4746/4783 \r
+f 4735/4772 4565/4607 4572/4614 4747/4784 \r
+f 4736/4773 4735/4772 4747/4784 4748/4785 \r
+f 4737/4774 4736/4773 4748/4785 4749/4786 \r
+f 4738/4775 4737/4774 4749/4786 4750/4787 \r
+f 4739/4776 4738/4775 4750/4787 4751/4788 \r
+f 4740/4777 4739/4776 4751/4788 4752/4789 \r
+f 4741/4778 4740/4777 4752/4789 4753/4790 \r
+f 4742/4779 4741/4778 4753/4790 4754/4791 \r
+f 4743/4780 4742/4779 4754/4791 4755/4792 \r
+f 4744/4781 4743/4780 4755/4792 4756/4793 \r
+f 4745/4782 4744/4781 4756/4793 4757/4794 \r
+f 4746/4783 4745/4782 4757/4794 4758/4795 \r
+f 4747/4784 4572/4614 4579/4621 4759/4796 \r
+f 4748/4785 4747/4784 4759/4796 4760/4797 \r
+f 4749/4786 4748/4785 4760/4797 4761/4798 \r
+f 4750/4787 4749/4786 4761/4798 4762/4799 \r
+f 4751/4788 4750/4787 4762/4799 4763/4800 \r
+f 4752/4789 4751/4788 4763/4800 4764/4801 \r
+f 4753/4790 4752/4789 4764/4801 4765/4802 \r
+f 4754/4791 4753/4790 4765/4802 4766/4803 \r
+f 4755/4792 4754/4791 4766/4803 4767/4804 \r
+f 4756/4793 4755/4792 4767/4804 4768/4805 \r
+f 4757/4794 4756/4793 4768/4805 4769/4806 \r
+f 4758/4795 4757/4794 4769/4806 4770/4807 \r
+f 4771/4808 4759/4796 4579/4621 4586/4628 \r
+f 4772/4809 4760/4797 4759/4796 4771/4808 \r
+f 4773/4810 4761/4798 4760/4797 4772/4809 \r
+f 4774/4811 4762/4799 4761/4798 4773/4810 \r
+f 4775/4812 4763/4800 4762/4799 4774/4811 \r
+f 4776/4813 4764/4801 4763/4800 4775/4812 \r
+f 4777/4814 4765/4802 4764/4801 4776/4813 \r
+f 4778/4815 4766/4803 4765/4802 4777/4814 \r
+f 4779/4816 4767/4804 4766/4803 4778/4815 \r
+f 4780/4817 4768/4805 4767/4804 4779/4816 \r
+f 4781/4818 4769/4806 4768/4805 4780/4817 \r
+f 4782/4819 4770/4807 4769/4806 4781/4818 \r
+f 4783/4820 4771/4808 4586/4628 4593/4635 \r
+f 4784/4821 4772/4809 4771/4808 4783/4820 \r
+f 4785/4822 4773/4810 4772/4809 4784/4821 \r
+f 4786/4823 4774/4811 4773/4810 4785/4822 \r
+f 4787/4824 4775/4812 4774/4811 4786/4823 \r
+f 4788/4825 4776/4813 4775/4812 4787/4824 \r
+f 4789/4826 4777/4814 4776/4813 4788/4825 \r
+f 4790/4827 4778/4815 4777/4814 4789/4826 \r
+f 4791/4828 4779/4816 4778/4815 4790/4827 \r
+f 4792/4829 4780/4817 4779/4816 4791/4828 \r
+f 4793/4830 4781/4818 4780/4817 4792/4829 \r
+f 4794/4831 4782/4819 4781/4818 4793/4830 \r
+f 4795/4832 4783/4820 4593/4635 4600/4642 \r
+f 4796/4833 4784/4821 4783/4820 4795/4832 \r
+f 4797/4834 4785/4822 4784/4821 4796/4833 \r
+f 4798/4835 4786/4823 4785/4822 4797/4834 \r
+f 4799/4836 4787/4824 4786/4823 4798/4835 \r
+f 4800/4837 4788/4825 4787/4824 4799/4836 \r
+f 4801/4838 4789/4826 4788/4825 4800/4837 \r
+f 4802/4839 4790/4827 4789/4826 4801/4838 \r
+f 4803/4840 4791/4828 4790/4827 4802/4839 \r
+f 4804/4841 4792/4829 4791/4828 4803/4840 \r
+f 4805/4842 4793/4830 4792/4829 4804/4841 \r
+f 4806/4843 4794/4831 4793/4830 4805/4842 \r
+f 4807/4844 4795/4832 4600/4642 4607/4649 \r
+f 4808/4845 4796/4833 4795/4832 4807/4844 \r
+f 4809/4846 4797/4834 4796/4833 4808/4845 \r
+f 4810/4847 4798/4835 4797/4834 4809/4846 \r
+f 4811/4848 4799/4836 4798/4835 4810/4847 \r
+f 4812/4849 4800/4837 4799/4836 4811/4848 \r
+f 4813/4850 4801/4838 4800/4837 4812/4849 \r
+f 4814/4851 4802/4839 4801/4838 4813/4850 \r
+f 4815/4852 4803/4840 4802/4839 4814/4851 \r
+f 4816/4853 4804/4841 4803/4840 4815/4852 \r
+f 4817/4854 4805/4842 4804/4841 4816/4853 \r
+f 4818/4855 4806/4843 4805/4842 4817/4854 \r
+f 4819/4856 4807/4844 4607/4649 4614/4656 \r
+f 4820/4857 4808/4845 4807/4844 4819/4856 \r
+f 4821/4858 4809/4846 4808/4845 4820/4857 \r
+f 4822/4859 4810/4847 4809/4846 4821/4858 \r
+f 4823/4860 4811/4848 4810/4847 4822/4859 \r
+f 4824/4861 4812/4849 4811/4848 4823/4860 \r
+f 4825/4862 4813/4850 4812/4849 4824/4861 \r
+f 4826/4863 4814/4851 4813/4850 4825/4862 \r
+f 4827/4864 4815/4852 4814/4851 4826/4863 \r
+f 4828/4865 4816/4853 4815/4852 4827/4864 \r
+f 4829/4866 4817/4854 4816/4853 4828/4865 \r
+f 4830/4867 4818/4855 4817/4854 4829/4866 \r
+f 4831/4868 4819/4856 4614/4656 4621/4663 \r
+f 4832/4869 4820/4857 4819/4856 4831/4868 \r
+f 4833/4870 4821/4858 4820/4857 4832/4869 \r
+f 4834/4871 4822/4859 4821/4858 4833/4870 \r
+f 4835/4872 4823/4860 4822/4859 4834/4871 \r
+f 4836/4873 4824/4861 4823/4860 4835/4872 \r
+f 4837/4874 4825/4862 4824/4861 4836/4873 \r
+f 4838/4875 4826/4863 4825/4862 4837/4874 \r
+f 4839/4876 4827/4864 4826/4863 4838/4875 \r
+f 4840/4877 4828/4865 4827/4864 4839/4876 \r
+f 4841/4878 4829/4866 4828/4865 4840/4877 \r
+f 4842/4879 4830/4867 4829/4866 4841/4878 \r
+f 4831/4868 4621/4663 4628/4670 4843/4880 \r
+f 4832/4869 4831/4868 4843/4880 4844/4881 \r
+f 4833/4870 4832/4869 4844/4881 4845/4882 \r
+f 4834/4871 4833/4870 4845/4882 4846/4883 \r
+f 4835/4872 4834/4871 4846/4883 4847/4884 \r
+f 4836/4873 4835/4872 4847/4884 4848/4885 \r
+f 4837/4874 4836/4873 4848/4885 4849/4886 \r
+f 4838/4875 4837/4874 4849/4886 4850/4887 \r
+f 4839/4876 4838/4875 4850/4887 4851/4888 \r
+f 4840/4877 4839/4876 4851/4888 4852/4889 \r
+f 4841/4878 4840/4877 4852/4889 4853/4890 \r
+f 4842/4879 4841/4878 4853/4890 4854/4891 \r
+f 4843/4880 4628/4670 4635/4677 4855/4892 \r
+f 4844/4881 4843/4880 4855/4892 4856/4893 \r
+f 4845/4882 4844/4881 4856/4893 4857/4894 \r
+f 4846/4883 4845/4882 4857/4894 4858/4895 \r
+f 4847/4884 4846/4883 4858/4895 4859/4896 \r
+f 4848/4885 4847/4884 4859/4896 4860/4897 \r
+f 4849/4886 4848/4885 4860/4897 4861/4898 \r
+f 4850/4887 4849/4886 4861/4898 4862/4899 \r
+f 4851/4888 4850/4887 4862/4899 4863/4900 \r
+f 4852/4889 4851/4888 4863/4900 4864/4901 \r
+f 4853/4890 4852/4889 4864/4901 4865/4902 \r
+f 4854/4891 4853/4890 4865/4902 4866/4903 \r
+f 4855/4892 4635/4677 4642/4684 4867/4904 \r
+f 4856/4893 4855/4892 4867/4904 4868/4905 \r
+f 4857/4894 4856/4893 4868/4905 4869/4906 \r
+f 4858/4895 4857/4894 4869/4906 4870/4907 \r
+f 4859/4896 4858/4895 4870/4907 4871/4908 \r
+f 4860/4897 4859/4896 4871/4908 4872/4909 \r
+f 4861/4898 4860/4897 4872/4909 4873/4910 \r
+f 4862/4899 4861/4898 4873/4910 4874/4911 \r
+f 4863/4900 4862/4899 4874/4911 4875/4912 \r
+f 4864/4901 4863/4900 4875/4912 4876/4913 \r
+f 4865/4902 4864/4901 4876/4913 4877/4914 \r
+f 4866/4903 4865/4902 4877/4914 4878/4915 \r
+f 4867/4904 4642/4684 4649/4691 4879/4916 \r
+f 4868/4905 4867/4904 4879/4916 4880/4917 \r
+f 4869/4906 4868/4905 4880/4917 4881/4918 \r
+f 4870/4907 4869/4906 4881/4918 4882/4919 \r
+f 4871/4908 4870/4907 4882/4919 4883/4920 \r
+f 4872/4909 4871/4908 4883/4920 4884/4921 \r
+f 4873/4910 4872/4909 4884/4921 4885/4922 \r
+f 4874/4911 4873/4910 4885/4922 4886/4923 \r
+f 4875/4912 4874/4911 4886/4923 4887/4924 \r
+f 4876/4913 4875/4912 4887/4924 4888/4925 \r
+f 4877/4914 4876/4913 4888/4925 4889/4926 \r
+f 4878/4915 4877/4914 4889/4926 4890/4927 \r
+f 4879/4916 4649/4691 4656/4698 4891/4928 \r
+f 4880/4917 4879/4916 4891/4928 4892/4929 \r
+f 4881/4918 4880/4917 4892/4929 4893/4930 \r
+f 4882/4919 4881/4918 4893/4930 4894/4931 \r
+f 4883/4920 4882/4919 4894/4931 4895/4932 \r
+f 4884/4921 4883/4920 4895/4932 4896/4933 \r
+f 4885/4922 4884/4921 4896/4933 4897/4934 \r
+f 4886/4923 4885/4922 4897/4934 4898/4935 \r
+f 4887/4924 4886/4923 4898/4935 4899/4936 \r
+f 4888/4925 4887/4924 4899/4936 4900/4937 \r
+f 4889/4926 4888/4925 4900/4937 4901/4938 \r
+f 4890/4927 4889/4926 4901/4938 4902/4939 \r
+f 4891/4928 4656/4698 4663/4705 4903/4940 \r
+f 4892/4929 4891/4928 4903/4940 4904/4941 \r
+f 4893/4930 4892/4929 4904/4941 4905/4942 \r
+f 4894/4931 4893/4930 4905/4942 4906/4943 \r
+f 4895/4932 4894/4931 4906/4943 4907/4944 \r
+f 4896/4933 4895/4932 4907/4944 4908/4945 \r
+f 4897/4934 4896/4933 4908/4945 4909/4946 \r
+f 4898/4935 4897/4934 4909/4946 4910/4947 \r
+f 4899/4936 4898/4935 4910/4947 4911/4948 \r
+f 4900/4937 4899/4936 4911/4948 4912/4949 \r
+f 4901/4938 4900/4937 4912/4949 4913/4950 \r
+f 4902/4939 4901/4938 4913/4950 4914/4951 \r
+f 4915/4952 4903/4940 4663/4705 4670/4712 \r
+f 4916/4953 4904/4941 4903/4940 4915/4952 \r
+f 4917/4954 4905/4942 4904/4941 4916/4953 \r
+f 4918/4955 4906/4943 4905/4942 4917/4954 \r
+f 4919/4956 4907/4944 4906/4943 4918/4955 \r
+f 4920/4957 4908/4945 4907/4944 4919/4956 \r
+f 4921/4958 4909/4946 4908/4945 4920/4957 \r
+f 4922/4959 4910/4947 4909/4946 4921/4958 \r
+f 4923/4960 4911/4948 4910/4947 4922/4959 \r
+f 4924/4961 4912/4949 4911/4948 4923/4960 \r
+f 4925/4962 4913/4950 4912/4949 4924/4961 \r
+f 4926/4963 4914/4951 4913/4950 4925/4962 \r
+f 4927/4964 4915/4952 4670/4712 4677/4719 \r
+f 4928/4965 4916/4953 4915/4952 4927/4964 \r
+f 4929/4966 4917/4954 4916/4953 4928/4965 \r
+f 4930/4967 4918/4955 4917/4954 4929/4966 \r
+f 4931/4968 4919/4956 4918/4955 4930/4967 \r
+f 4932/4969 4920/4957 4919/4956 4931/4968 \r
+f 4933/4970 4921/4958 4920/4957 4932/4969 \r
+f 4934/4971 4922/4959 4921/4958 4933/4970 \r
+f 4935/4972 4923/4960 4922/4959 4934/4971 \r
+f 4936/4973 4924/4961 4923/4960 4935/4972 \r
+f 4937/4974 4925/4962 4924/4961 4936/4973 \r
+f 4938/4975 4926/4963 4925/4962 4937/4974 \r
+f 4939/4976 4927/4964 4677/4719 4684/4726 \r
+f 4940/4977 4928/4965 4927/4964 4939/4976 \r
+f 4941/4978 4929/4966 4928/4965 4940/4977 \r
+f 4942/4979 4930/4967 4929/4966 4941/4978 \r
+f 4943/4980 4931/4968 4930/4967 4942/4979 \r
+f 4944/4981 4932/4969 4931/4968 4943/4980 \r
+f 4945/4982 4933/4970 4932/4969 4944/4981 \r
+f 4946/4983 4934/4971 4933/4970 4945/4982 \r
+f 4947/4984 4935/4972 4934/4971 4946/4983 \r
+f 4948/4985 4936/4973 4935/4972 4947/4984 \r
+f 4949/4986 4937/4974 4936/4973 4948/4985 \r
+f 4950/4987 4938/4975 4937/4974 4949/4986 \r
+f 4951/4988 4939/4976 4684/4726 4691/4733 \r
+f 4952/4989 4940/4977 4939/4976 4951/4988 \r
+f 4953/4990 4941/4978 4940/4977 4952/4989 \r
+f 4954/4991 4942/4979 4941/4978 4953/4990 \r
+f 4955/4992 4943/4980 4942/4979 4954/4991 \r
+f 4956/4993 4944/4981 4943/4980 4955/4992 \r
+f 4957/4994 4945/4982 4944/4981 4956/4993 \r
+f 4958/4995 4946/4983 4945/4982 4957/4994 \r
+f 4959/4996 4947/4984 4946/4983 4958/4995 \r
+f 4960/4997 4948/4985 4947/4984 4959/4996 \r
+f 4961/4998 4949/4986 4948/4985 4960/4997 \r
+f 4962/4999 4950/4987 4949/4986 4961/4998 \r
+f 4963/5000 4951/4988 4691/4733 4698/4740 \r
+f 4964/5002 4954/4991 4953/4990 4965/5001 \r
+f 4966/5003 4955/4992 4954/4991 4964/5002 \r
+f 4967/5004 4956/4993 4955/4992 4966/5003 \r
+f 4968/5005 4957/4994 4956/4993 4967/5004 \r
+f 4969/5006 4958/4995 4957/4994 4968/5005 \r
+f 4970/5007 4959/4996 4958/4995 4969/5006 \r
+f 4971/5008 4960/4997 4959/4996 4970/5007 \r
+f 4972/5009 4961/4998 4960/4997 4971/5008 \r
+f 4973/5010 4962/4999 4961/4998 4972/5009 \r
+f 3446/3453 4963/5000 4698/4740 3173/3175 \r
+f 3448/3454 4964/5002 4965/5001 3447/3455 \r
+f 3449/3456 4966/5003 4964/5002 3448/3454 \r
+f 3450/3457 4967/5004 4966/5003 3449/3456 \r
+f 3451/3458 4968/5005 4967/5004 3450/3457 \r
+f 3452/3459 4969/5006 4968/5005 3451/3458 \r
+f 3453/3460 4970/5007 4969/5006 3452/3459 \r
+f 3454/3461 4971/5008 4970/5007 3453/3460 \r
+f 3455/3462 4972/5009 4971/5008 3454/3461 \r
+f 4974/5012 4975/3464 3458/3463 4976/5011 \r
+f 4977/5013 4978/3467 4975/3464 4974/5012 \r
+f 4979/5014 4980/3469 4978/3467 4977/5013 \r
+f 4981/5015 4982/3471 4980/3469 4979/5014 \r
+f 4983/5016 4984/3473 4982/3471 4981/5015 \r
+f 4985/5017 3465/3475 4984/3473 4983/5016 \r
+f 4986/5018 3467/3477 3465/3475 4985/5017 \r
+f 4987/5019 4988/3479 3467/3477 4986/5018 \r
+f 4989/5020 3470/3481 4988/3479 4987/5019 \r
+f 4990/5023 4976/5011 4991/5021 4992/5022 \r
+f 4993/5024 4974/5012 4976/5011 4990/5023 \r
+f 4994/5025 4977/5013 4974/5012 4993/5024 \r
+f 4995/5026 4979/5014 4977/5013 4994/5025 \r
+f 4996/5027 4981/5015 4979/5014 4995/5026 \r
+f 4997/5028 4983/5016 4981/5015 4996/5027 \r
+f 4998/5029 4985/5017 4983/5016 4997/5028 \r
+f 4999/5030 4986/5018 4985/5017 4998/5029 \r
+f 5000/5031 4987/5019 4986/5018 4999/5030 \r
+f 5001/5032 4989/5020 4987/5019 5000/5031 \r
+f 5002/5033 5003/5034 4733/4771 4734/4770 \r
+f 5004/5035 4992/5022 5003/5034 5002/5033 \r
+f 5005/5036 4990/5023 4992/5022 5004/5035 \r
+f 5006/5037 4993/5024 4990/5023 5005/5036 \r
+f 5007/5038 4994/5025 4993/5024 5006/5037 \r
+f 5008/5039 4995/5026 4994/5025 5007/5038 \r
+f 5009/5040 4996/5027 4995/5026 5008/5039 \r
+f 5010/5041 4997/5028 4996/5027 5009/5040 \r
+f 5011/5042 4998/5029 4997/5028 5010/5041 \r
+f 5012/5043 4999/5030 4998/5029 5011/5042 \r
+f 5013/5044 5000/5031 4999/5030 5012/5043 \r
+f 5014/5045 5001/5032 5000/5031 5013/5044 \r
+f 5015/5046 5002/5033 4734/4770 4746/4783 \r
+f 5016/5047 5004/5035 5002/5033 5015/5046 \r
+f 5017/5048 5005/5036 5004/5035 5016/5047 \r
+f 5018/5049 5006/5037 5005/5036 5017/5048 \r
+f 5019/5050 5007/5038 5006/5037 5018/5049 \r
+f 5020/5051 5008/5039 5007/5038 5019/5050 \r
+f 5021/5052 5009/5040 5008/5039 5020/5051 \r
+f 5022/5053 5010/5041 5009/5040 5021/5052 \r
+f 5023/5054 5011/5042 5010/5041 5022/5053 \r
+f 5024/5055 5012/5043 5011/5042 5023/5054 \r
+f 5025/5056 5013/5044 5012/5043 5024/5055 \r
+f 5026/5057 5014/5045 5013/5044 5025/5056 \r
+f 5027/5058 5015/5046 4746/4783 4758/4795 \r
+f 5028/5059 5016/5047 5015/5046 5027/5058 \r
+f 5029/5060 5017/5048 5016/5047 5028/5059 \r
+f 5030/5061 5018/5049 5017/5048 5029/5060 \r
+f 5031/5062 5019/5050 5018/5049 5030/5061 \r
+f 5032/5063 5020/5051 5019/5050 5031/5062 \r
+f 5033/5064 5021/5052 5020/5051 5032/5063 \r
+f 5034/5065 5022/5053 5021/5052 5033/5064 \r
+f 5035/5066 5023/5054 5022/5053 5034/5065 \r
+f 5036/5067 5024/5055 5023/5054 5035/5066 \r
+f 5037/5068 5025/5056 5024/5055 5036/5067 \r
+f 5038/5069 5026/5057 5025/5056 5037/5068 \r
+f 5039/5070 5027/5058 4758/4795 4770/4807 \r
+f 5040/5071 5028/5059 5027/5058 5039/5070 \r
+f 5041/5072 5029/5060 5028/5059 5040/5071 \r
+f 5042/5073 5030/5061 5029/5060 5041/5072 \r
+f 5043/5074 5031/5062 5030/5061 5042/5073 \r
+f 5044/5075 5032/5063 5031/5062 5043/5074 \r
+f 5045/5076 5033/5064 5032/5063 5044/5075 \r
+f 5046/5077 5034/5065 5033/5064 5045/5076 \r
+f 5047/5078 5035/5066 5034/5065 5046/5077 \r
+f 5048/5079 5036/5067 5035/5066 5047/5078 \r
+f 5049/5080 5037/5068 5036/5067 5048/5079 \r
+f 5050/5081 5038/5069 5037/5068 5049/5080 \r
+f 5039/5070 4770/4807 4782/4819 5051/5082 \r
+f 5040/5071 5039/5070 5051/5082 5052/5083 \r
+f 5041/5072 5040/5071 5052/5083 5053/5084 \r
+f 5042/5073 5041/5072 5053/5084 5054/5085 \r
+f 5043/5074 5042/5073 5054/5085 5055/5086 \r
+f 5044/5075 5043/5074 5055/5086 5056/5087 \r
+f 5045/5076 5044/5075 5056/5087 5057/5088 \r
+f 5046/5077 5045/5076 5057/5088 5058/5089 \r
+f 5047/5078 5046/5077 5058/5089 5059/5090 \r
+f 5048/5079 5047/5078 5059/5090 5060/5091 \r
+f 5049/5080 5048/5079 5060/5091 5061/5092 \r
+f 5050/5081 5049/5080 5061/5092 5062/5093 \r
+f 5051/5082 4782/4819 4794/4831 5063/5094 \r
+f 5052/5083 5051/5082 5063/5094 5064/5095 \r
+f 5053/5084 5052/5083 5064/5095 5065/5096 \r
+f 5054/5085 5053/5084 5065/5096 5066/5097 \r
+f 5055/5086 5054/5085 5066/5097 5067/5098 \r
+f 5056/5087 5055/5086 5067/5098 5068/5099 \r
+f 5057/5088 5056/5087 5068/5099 5069/5100 \r
+f 5058/5089 5057/5088 5069/5100 5070/5101 \r
+f 5059/5090 5058/5089 5070/5101 5071/5102 \r
+f 5060/5091 5059/5090 5071/5102 5072/5103 \r
+f 5061/5092 5060/5091 5072/5103 5073/5104 \r
+f 5062/5093 5061/5092 5073/5104 5074/5105 \r
+f 5063/5094 4794/4831 4806/4843 5075/5106 \r
+f 5064/5095 5063/5094 5075/5106 5076/5107 \r
+f 5065/5096 5064/5095 5076/5107 5077/5108 \r
+f 5066/5097 5065/5096 5077/5108 5078/5109 \r
+f 5067/5098 5066/5097 5078/5109 5079/5110 \r
+f 5068/5099 5067/5098 5079/5110 5080/5111 \r
+f 5069/5100 5068/5099 5080/5111 5081/5112 \r
+f 5070/5101 5069/5100 5081/5112 5082/5113 \r
+f 5071/5102 5070/5101 5082/5113 5083/5114 \r
+f 5072/5103 5071/5102 5083/5114 5084/5115 \r
+f 5073/5104 5072/5103 5084/5115 5085/5116 \r
+f 5074/5105 5073/5104 5085/5116 5086/5117 \r
+f 5075/5106 4806/4843 4818/4855 5087/5118 \r
+f 5076/5107 5075/5106 5087/5118 5088/5119 \r
+f 5077/5108 5076/5107 5088/5119 5089/5120 \r
+f 5078/5109 5077/5108 5089/5120 5090/5121 \r
+f 5079/5110 5078/5109 5090/5121 5091/5122 \r
+f 5080/5111 5079/5110 5091/5122 5092/5123 \r
+f 5081/5112 5080/5111 5092/5123 5093/5124 \r
+f 5082/5113 5081/5112 5093/5124 5094/5125 \r
+f 5083/5114 5082/5113 5094/5125 5095/5126 \r
+f 5084/5115 5083/5114 5095/5126 5096/5127 \r
+f 5085/5116 5084/5115 5096/5127 5097/5128 \r
+f 5086/5117 5085/5116 5097/5128 5098/5129 \r
+f 5087/5118 4818/4855 4830/4867 5099/5130 \r
+f 5088/5119 5087/5118 5099/5130 5100/5131 \r
+f 5089/5120 5088/5119 5100/5131 5101/5132 \r
+f 5090/5121 5089/5120 5101/5132 5102/5133 \r
+f 5091/5122 5090/5121 5102/5133 5103/5134 \r
+f 5092/5123 5091/5122 5103/5134 5104/5135 \r
+f 5093/5124 5092/5123 5104/5135 5105/5136 \r
+f 5094/5125 5093/5124 5105/5136 5106/5137 \r
+f 5095/5126 5094/5125 5106/5137 5107/5138 \r
+f 5096/5127 5095/5126 5107/5138 5108/5139 \r
+f 5097/5128 5096/5127 5108/5139 5109/5140 \r
+f 5098/5129 5097/5128 5109/5140 5110/5141 \r
+f 5099/5130 4830/4867 4842/4879 5111/5142 \r
+f 5100/5131 5099/5130 5111/5142 5112/5143 \r
+f 5101/5132 5100/5131 5112/5143 5113/5144 \r
+f 5102/5133 5101/5132 5113/5144 5114/5145 \r
+f 5103/5134 5102/5133 5114/5145 5115/5146 \r
+f 5104/5135 5103/5134 5115/5146 5116/5147 \r
+f 5105/5136 5104/5135 5116/5147 5117/5148 \r
+f 5106/5137 5105/5136 5117/5148 5118/5149 \r
+f 5107/5138 5106/5137 5118/5149 5119/5150 \r
+f 5108/5139 5107/5138 5119/5150 5120/5151 \r
+f 5109/5140 5108/5139 5120/5151 5121/5152 \r
+f 5110/5141 5109/5140 5121/5152 5122/5153 \r
+f 5123/5154 5111/5142 4842/4879 4854/4891 \r
+f 5124/5155 5112/5143 5111/5142 5123/5154 \r
+f 5125/5156 5113/5144 5112/5143 5124/5155 \r
+f 5126/5157 5114/5145 5113/5144 5125/5156 \r
+f 5127/5158 5115/5146 5114/5145 5126/5157 \r
+f 5128/5159 5116/5147 5115/5146 5127/5158 \r
+f 5129/5160 5117/5148 5116/5147 5128/5159 \r
+f 5130/5161 5118/5149 5117/5148 5129/5160 \r
+f 5131/5162 5119/5150 5118/5149 5130/5161 \r
+f 5132/5163 5120/5151 5119/5150 5131/5162 \r
+f 5133/5164 5121/5152 5120/5151 5132/5163 \r
+f 5134/5165 5122/5153 5121/5152 5133/5164 \r
+f 5135/5166 5123/5154 4854/4891 4866/4903 \r
+f 5136/5167 5124/5155 5123/5154 5135/5166 \r
+f 5137/5168 5125/5156 5124/5155 5136/5167 \r
+f 5138/5169 5126/5157 5125/5156 5137/5168 \r
+f 5139/5170 5127/5158 5126/5157 5138/5169 \r
+f 5140/5171 5128/5159 5127/5158 5139/5170 \r
+f 5141/5172 5129/5160 5128/5159 5140/5171 \r
+f 5142/5173 5130/5161 5129/5160 5141/5172 \r
+f 5143/5174 5131/5162 5130/5161 5142/5173 \r
+f 5144/5175 5132/5163 5131/5162 5143/5174 \r
+f 5145/5176 5133/5164 5132/5163 5144/5175 \r
+f 5146/5177 5134/5165 5133/5164 5145/5176 \r
+f 5147/5178 5135/5166 4866/4903 4878/4915 \r
+f 5148/5179 5136/5167 5135/5166 5147/5178 \r
+f 5149/5180 5137/5168 5136/5167 5148/5179 \r
+f 5150/5181 5138/5169 5137/5168 5149/5180 \r
+f 5151/5182 5139/5170 5138/5169 5150/5181 \r
+f 5152/5183 5140/5171 5139/5170 5151/5182 \r
+f 5153/5184 5141/5172 5140/5171 5152/5183 \r
+f 5154/5185 5142/5173 5141/5172 5153/5184 \r
+f 5155/5186 5143/5174 5142/5173 5154/5185 \r
+f 5156/5187 5144/5175 5143/5174 5155/5186 \r
+f 5157/5188 5145/5176 5144/5175 5156/5187 \r
+f 5158/5189 5146/5177 5145/5176 5157/5188 \r
+f 5159/5190 5147/5178 4878/4915 4890/4927 \r
+f 5160/5191 5148/5179 5147/5178 5159/5190 \r
+f 5161/5192 5149/5180 5148/5179 5160/5191 \r
+f 5162/5193 5150/5181 5149/5180 5161/5192 \r
+f 5163/5194 5151/5182 5150/5181 5162/5193 \r
+f 5164/5195 5152/5183 5151/5182 5163/5194 \r
+f 5165/5196 5153/5184 5152/5183 5164/5195 \r
+f 5166/5197 5154/5185 5153/5184 5165/5196 \r
+f 5167/5198 5155/5186 5154/5185 5166/5197 \r
+f 5168/5199 5156/5187 5155/5186 5167/5198 \r
+f 5169/5200 5157/5188 5156/5187 5168/5199 \r
+f 5170/5201 5158/5189 5157/5188 5169/5200 \r
+f 5171/5202 5159/5190 4890/4927 4902/4939 \r
+f 5172/5203 5160/5191 5159/5190 5171/5202 \r
+f 5173/5204 5161/5192 5160/5191 5172/5203 \r
+f 5174/5205 5162/5193 5161/5192 5173/5204 \r
+f 5175/5206 5163/5194 5162/5193 5174/5205 \r
+f 5176/5207 5164/5195 5163/5194 5175/5206 \r
+f 5177/5208 5165/5196 5164/5195 5176/5207 \r
+f 5178/5209 5166/5197 5165/5196 5177/5208 \r
+f 5179/5210 5167/5198 5166/5197 5178/5209 \r
+f 5180/5211 5168/5199 5167/5198 5179/5210 \r
+f 5181/5212 5169/5200 5168/5199 5180/5211 \r
+f 5182/5213 5170/5201 5169/5200 5181/5212 \r
+f 5183/5214 5171/5202 4902/4939 4914/4951 \r
+f 5184/5215 5172/5203 5171/5202 5183/5214 \r
+f 5185/5216 5173/5204 5172/5203 5184/5215 \r
+f 5186/5217 5174/5205 5173/5204 5185/5216 \r
+f 5187/5218 5175/5206 5174/5205 5186/5217 \r
+f 5188/5219 5176/5207 5175/5206 5187/5218 \r
+f 5189/5220 5177/5208 5176/5207 5188/5219 \r
+f 5190/5221 5178/5209 5177/5208 5189/5220 \r
+f 5191/5222 5179/5210 5178/5209 5190/5221 \r
+f 5192/5223 5180/5211 5179/5210 5191/5222 \r
+f 5193/5224 5181/5212 5180/5211 5192/5223 \r
+f 5194/5225 5182/5213 5181/5212 5193/5224 \r
+f 5183/5214 4914/4951 4926/4963 5195/5226 \r
+f 5184/5215 5183/5214 5195/5226 5196/5227 \r
+f 5185/5216 5184/5215 5196/5227 5197/5228 \r
+f 5186/5217 5185/5216 5197/5228 5198/5229 \r
+f 5187/5218 5186/5217 5198/5229 5199/5230 \r
+f 5188/5219 5187/5218 5199/5230 5200/5231 \r
+f 5189/5220 5188/5219 5200/5231 5201/5232 \r
+f 5190/5221 5189/5220 5201/5232 5202/5233 \r
+f 5191/5222 5190/5221 5202/5233 5203/5234 \r
+f 5192/5223 5191/5222 5203/5234 5204/5235 \r
+f 5193/5224 5192/5223 5204/5235 5205/5236 \r
+f 5194/5225 5193/5224 5205/5236 5206/5237 \r
+f 5195/5226 4926/4963 4938/4975 5207/5238 \r
+f 5196/5227 5195/5226 5207/5238 5208/5239 \r
+f 5197/5228 5196/5227 5208/5239 5209/5240 \r
+f 5198/5229 5197/5228 5209/5240 5210/5241 \r
+f 5199/5230 5198/5229 5210/5241 5211/5242 \r
+f 5200/5231 5199/5230 5211/5242 5212/5243 \r
+f 5201/5232 5200/5231 5212/5243 5213/5244 \r
+f 5202/5233 5201/5232 5213/5244 5214/5245 \r
+f 5203/5234 5202/5233 5214/5245 5215/5246 \r
+f 5204/5235 5203/5234 5215/5246 5216/5247 \r
+f 5205/5236 5204/5235 5216/5247 5217/5248 \r
+f 5206/5237 5205/5236 5217/5248 5218/5249 \r
+f 5207/5238 4938/4975 4950/4987 5219/5250 \r
+f 5208/5239 5207/5238 5219/5250 5220/5251 \r
+f 5209/5240 5208/5239 5220/5251 5221/5252 \r
+f 5210/5241 5209/5240 5221/5252 5222/5253 \r
+f 5211/5242 5210/5241 5222/5253 5223/5254 \r
+f 5212/5243 5211/5242 5223/5254 5224/5255 \r
+f 5213/5244 5212/5243 5224/5255 5225/5256 \r
+f 5214/5245 5213/5244 5225/5256 5226/5257 \r
+f 5215/5246 5214/5245 5226/5257 5227/5258 \r
+f 5216/5247 5215/5246 5227/5258 5228/5259 \r
+f 5217/5248 5216/5247 5228/5259 5229/5260 \r
+f 5218/5249 5217/5248 5229/5260 5230/5261 \r
+f 5219/5250 4950/4987 4962/4999 5231/5262 \r
+f 5220/5251 5219/5250 5231/5262 5232/5263 \r
+f 5221/5252 5220/5251 5232/5263 5233/5264 \r
+f 5222/5253 5221/5252 5233/5264 5234/5265 \r
+f 5223/5254 5222/5253 5234/5265 5235/5266 \r
+f 5224/5255 5223/5254 5235/5266 5236/5267 \r
+f 5225/5256 5224/5255 5236/5267 5237/5268 \r
+f 5226/5257 5225/5256 5237/5268 5238/5269 \r
+f 5227/5258 5226/5257 5238/5269 5239/5270 \r
+f 5228/5259 5227/5258 5239/5270 5240/5271 \r
+f 5229/5260 5228/5259 5240/5271 5241/5272 \r
+f 5230/5261 5229/5260 5241/5272 5242/5273 \r
+f 5231/5262 4962/4999 4973/5010 5243/5274 \r
+f 5232/5263 5231/5262 5243/5274 5244/5275 \r
+f 5233/5264 5232/5263 5244/5275 5245/5276 \r
+f 5234/5265 5233/5264 5245/5276 5246/5277 \r
+f 5235/5266 5234/5265 5246/5277 5247/5278 \r
+f 5236/5267 5235/5266 5247/5278 5248/5279 \r
+f 5237/5268 5236/5267 5248/5279 5249/5280 \r
+f 5238/5269 5237/5268 5249/5280 5250/5281 \r
+f 5239/5270 5238/5269 5250/5281 5251/5282 \r
+f 5240/5271 5239/5270 5251/5282 5252/5283 \r
+f 5241/5272 5240/5271 5252/5283 5253/5284 \r
+f 5242/5273 5241/5272 5253/5284 5254/5285 \r
+f 5246/5277 5245/5276 3735/3748 3736/3749 \r
+f 5247/5278 5246/5277 3736/3749 3737/3750 \r
+f 5248/5279 5247/5278 3737/3750 3738/3751 \r
+f 5249/5280 5248/5279 3738/3751 3739/3752 \r
+f 5250/5281 5249/5280 3739/3752 3740/3753 \r
+f 5251/5282 5250/5281 3740/3753 3741/3754 \r
+f 5252/5283 5251/5282 3741/3754 3742/3755 \r
+f 5253/5284 5252/5283 3742/3755 3743/3756 \r
+f 5254/5285 5253/5284 3743/3756 3744/3757 \r
+f 5255/5286 5256/3758 3470/3481 4989/5020 \r
+f 5257/5287 5258/3760 5256/3758 5255/5286 \r
+f 5259/5288 3748/3762 5258/3760 5257/5287 \r
+f 5260/5289 5261/3764 3748/3762 5259/5288 \r
+f 5262/5290 5263/3766 5261/3764 5260/5289 \r
+f 5264/5291 5265/3768 5263/3766 5262/5290 \r
+f 5266/5292 5267/3770 5265/3768 5264/5291 \r
+f 5268/5293 5269/3772 5267/3770 5266/5292 \r
+f 5270/5294 5271/3774 5269/3772 5268/5293 \r
+f 5272/5295 3756/3776 5271/3774 5270/5294 \r
+f 5273/5296 3758/3778 3756/3776 5272/5295 \r
+f 5273/5296 5274/3780 3758/3778 \r
+f 5275/5297 5255/5286 4989/5020 5001/5032 \r
+f 5276/5298 5257/5287 5255/5286 5275/5297 \r
+f 5277/5299 5259/5288 5257/5287 5276/5298 \r
+f 5278/5300 5260/5289 5259/5288 5277/5299 \r
+f 5279/5301 5262/5290 5260/5289 5278/5300 \r
+f 5280/5302 5264/5291 5262/5290 5279/5301 \r
+f 5281/5303 5266/5292 5264/5291 5280/5302 \r
+f 5282/5304 5268/5293 5266/5292 5281/5303 \r
+f 5283/5305 5270/5294 5268/5293 5282/5304 \r
+f 5284/5306 5272/5295 5270/5294 5283/5305 \r
+f 5285/5307 5273/5296 5272/5295 5284/5306 \r
+f 5285/5307 5274/3780 5273/5296 \r
+f 5286/5308 5275/5297 5001/5032 5014/5045 \r
+f 5287/5309 5276/5298 5275/5297 5286/5308 \r
+f 5288/5310 5277/5299 5276/5298 5287/5309 \r
+f 5289/5311 5278/5300 5277/5299 5288/5310 \r
+f 5290/5312 5279/5301 5278/5300 5289/5311 \r
+f 5291/5313 5280/5302 5279/5301 5290/5312 \r
+f 5292/5314 5281/5303 5280/5302 5291/5313 \r
+f 5293/5315 5282/5304 5281/5303 5292/5314 \r
+f 5294/5316 5283/5305 5282/5304 5293/5315 \r
+f 5295/5317 5284/5306 5283/5305 5294/5316 \r
+f 5296/5318 5285/5307 5284/5306 5295/5317 \r
+f 5296/5318 5274/3780 5285/5307 \r
+f 5297/5319 5286/5308 5014/5045 5026/5057 \r
+f 5298/5320 5287/5309 5286/5308 5297/5319 \r
+f 5299/5321 5288/5310 5287/5309 5298/5320 \r
+f 5300/5322 5289/5311 5288/5310 5299/5321 \r
+f 5301/5323 5290/5312 5289/5311 5300/5322 \r
+f 5302/5324 5291/5313 5290/5312 5301/5323 \r
+f 5303/5325 5292/5314 5291/5313 5302/5324 \r
+f 5304/5326 5293/5315 5292/5314 5303/5325 \r
+f 5305/5327 5294/5316 5293/5315 5304/5326 \r
+f 5306/5328 5295/5317 5294/5316 5305/5327 \r
+f 5307/5329 5296/5318 5295/5317 5306/5328 \r
+f 5307/5329 5274/3780 5296/5318 \r
+f 5308/5330 5297/5319 5026/5057 5038/5069 \r
+f 5309/5331 5298/5320 5297/5319 5308/5330 \r
+f 5310/5332 5299/5321 5298/5320 5309/5331 \r
+f 5311/5333 5300/5322 5299/5321 5310/5332 \r
+f 5312/5334 5301/5323 5300/5322 5311/5333 \r
+f 5313/5335 5302/5324 5301/5323 5312/5334 \r
+f 5314/5336 5303/5325 5302/5324 5313/5335 \r
+f 5315/5337 5304/5326 5303/5325 5314/5336 \r
+f 5316/5338 5305/5327 5304/5326 5315/5337 \r
+f 5317/5339 5306/5328 5305/5327 5316/5338 \r
+f 5318/5340 5307/5329 5306/5328 5317/5339 \r
+f 5318/5340 5274/3780 5307/5329 \r
+f 5319/5341 5308/5330 5038/5069 5050/5081 \r
+f 5320/5342 5309/5331 5308/5330 5319/5341 \r
+f 5321/5343 5310/5332 5309/5331 5320/5342 \r
+f 5322/5344 5311/5333 5310/5332 5321/5343 \r
+f 5323/5345 5312/5334 5311/5333 5322/5344 \r
+f 5324/5346 5313/5335 5312/5334 5323/5345 \r
+f 5325/5347 5314/5336 5313/5335 5324/5346 \r
+f 5326/5348 5315/5337 5314/5336 5325/5347 \r
+f 5327/5349 5316/5338 5315/5337 5326/5348 \r
+f 5328/5350 5317/5339 5316/5338 5327/5349 \r
+f 5329/5351 5318/5340 5317/5339 5328/5350 \r
+f 5329/5351 5274/3780 5318/5340 \r
+f 5319/5341 5050/5081 5062/5093 5330/5352 \r
+f 5320/5342 5319/5341 5330/5352 5331/5353 \r
+f 5321/5343 5320/5342 5331/5353 5332/5354 \r
+f 5322/5344 5321/5343 5332/5354 5333/5355 \r
+f 5323/5345 5322/5344 5333/5355 5334/5356 \r
+f 5324/5346 5323/5345 5334/5356 5335/5357 \r
+f 5325/5347 5324/5346 5335/5357 5336/5358 \r
+f 5326/5348 5325/5347 5336/5358 5337/5359 \r
+f 5327/5349 5326/5348 5337/5359 5338/5360 \r
+f 5328/5350 5327/5349 5338/5360 5339/5361 \r
+f 5329/5351 5328/5350 5339/5361 5340/5362 \r
+f 5340/5362 5274/3780 5329/5351 \r
+f 5330/5352 5062/5093 5074/5105 5341/5363 \r
+f 5331/5353 5330/5352 5341/5363 5342/5364 \r
+f 5332/5354 5331/5353 5342/5364 5343/5365 \r
+f 5333/5355 5332/5354 5343/5365 5344/5366 \r
+f 5334/5356 5333/5355 5344/5366 5345/5367 \r
+f 5335/5357 5334/5356 5345/5367 5346/5368 \r
+f 5336/5358 5335/5357 5346/5368 5347/5369 \r
+f 5337/5359 5336/5358 5347/5369 5348/5370 \r
+f 5338/5360 5337/5359 5348/5370 5349/5371 \r
+f 5339/5361 5338/5360 5349/5371 5350/5372 \r
+f 5340/5362 5339/5361 5350/5372 5351/5373 \r
+f 5351/5373 5274/3780 5340/5362 \r
+f 5341/5363 5074/5105 5086/5117 5352/5374 \r
+f 5342/5364 5341/5363 5352/5374 5353/5375 \r
+f 5343/5365 5342/5364 5353/5375 5354/5376 \r
+f 5344/5366 5343/5365 5354/5376 5355/5377 \r
+f 5345/5367 5344/5366 5355/5377 5356/5378 \r
+f 5346/5368 5345/5367 5356/5378 5357/5379 \r
+f 5347/5369 5346/5368 5357/5379 5358/5380 \r
+f 5348/5370 5347/5369 5358/5380 5359/5381 \r
+f 5349/5371 5348/5370 5359/5381 5360/5382 \r
+f 5350/5372 5349/5371 5360/5382 5361/5383 \r
+f 5351/5373 5350/5372 5361/5383 5362/5384 \r
+f 5362/5384 5274/3780 5351/5373 \r
+f 5352/5374 5086/5117 5098/5129 5363/5385 \r
+f 5353/5375 5352/5374 5363/5385 5364/5386 \r
+f 5354/5376 5353/5375 5364/5386 5365/5387 \r
+f 5355/5377 5354/5376 5365/5387 5366/5388 \r
+f 5356/5378 5355/5377 5366/5388 5367/5389 \r
+f 5357/5379 5356/5378 5367/5389 5368/5390 \r
+f 5358/5380 5357/5379 5368/5390 5369/5391 \r
+f 5359/5381 5358/5380 5369/5391 5370/5392 \r
+f 5360/5382 5359/5381 5370/5392 5371/5393 \r
+f 5361/5383 5360/5382 5371/5393 5372/5394 \r
+f 5362/5384 5361/5383 5372/5394 5373/5395 \r
+f 5373/5395 5274/3780 5362/5384 \r
+f 5363/5385 5098/5129 5110/5141 5374/5396 \r
+f 5364/5386 5363/5385 5374/5396 5375/5397 \r
+f 5365/5387 5364/5386 5375/5397 5376/5398 \r
+f 5366/5388 5365/5387 5376/5398 5377/5399 \r
+f 5367/5389 5366/5388 5377/5399 5378/5400 \r
+f 5368/5390 5367/5389 5378/5400 5379/5401 \r
+f 5369/5391 5368/5390 5379/5401 5380/5402 \r
+f 5370/5392 5369/5391 5380/5402 5381/5403 \r
+f 5371/5393 5370/5392 5381/5403 5382/5404 \r
+f 5372/5394 5371/5393 5382/5404 5383/5405 \r
+f 5373/5395 5372/5394 5383/5405 5384/5406 \r
+f 5384/5406 5274/3780 5373/5395 \r
+f 5374/5396 5110/5141 5122/5153 5385/5407 \r
+f 5375/5397 5374/5396 5385/5407 5386/5408 \r
+f 5376/5398 5375/5397 5386/5408 5387/5409 \r
+f 5377/5399 5376/5398 5387/5409 5388/5410 \r
+f 5378/5400 5377/5399 5388/5410 5389/5411 \r
+f 5379/5401 5378/5400 5389/5411 5390/5412 \r
+f 5380/5402 5379/5401 5390/5412 5391/5413 \r
+f 5381/5403 5380/5402 5391/5413 5392/5414 \r
+f 5382/5404 5381/5403 5392/5414 5393/5415 \r
+f 5383/5405 5382/5404 5393/5415 5394/5416 \r
+f 5384/5406 5383/5405 5394/5416 5395/5417 \r
+f 5395/5417 5274/3780 5384/5406 \r
+f 5396/5418 5385/5407 5122/5153 5134/5165 \r
+f 5397/5419 5386/5408 5385/5407 5396/5418 \r
+f 5398/5420 5387/5409 5386/5408 5397/5419 \r
+f 5399/5421 5388/5410 5387/5409 5398/5420 \r
+f 5400/5422 5389/5411 5388/5410 5399/5421 \r
+f 5401/5423 5390/5412 5389/5411 5400/5422 \r
+f 5402/5424 5391/5413 5390/5412 5401/5423 \r
+f 5403/5425 5392/5414 5391/5413 5402/5424 \r
+f 5404/5426 5393/5415 5392/5414 5403/5425 \r
+f 5405/5427 5394/5416 5393/5415 5404/5426 \r
+f 5406/5428 5395/5417 5394/5416 5405/5427 \r
+f 5406/5428 5274/3780 5395/5417 \r
+f 5407/5429 5396/5418 5134/5165 5146/5177 \r
+f 5408/5430 5397/5419 5396/5418 5407/5429 \r
+f 5409/5431 5398/5420 5397/5419 5408/5430 \r
+f 5410/5432 5399/5421 5398/5420 5409/5431 \r
+f 5411/5433 5400/5422 5399/5421 5410/5432 \r
+f 5412/5434 5401/5423 5400/5422 5411/5433 \r
+f 5413/5435 5402/5424 5401/5423 5412/5434 \r
+f 5414/5436 5403/5425 5402/5424 5413/5435 \r
+f 5415/5437 5404/5426 5403/5425 5414/5436 \r
+f 5416/5438 5405/5427 5404/5426 5415/5437 \r
+f 5417/5439 5406/5428 5405/5427 5416/5438 \r
+f 5417/5439 5274/3780 5406/5428 \r
+f 5418/5440 5407/5429 5146/5177 5158/5189 \r
+f 5419/5441 5408/5430 5407/5429 5418/5440 \r
+f 5420/5442 5409/5431 5408/5430 5419/5441 \r
+f 5421/5443 5410/5432 5409/5431 5420/5442 \r
+f 5422/5444 5411/5433 5410/5432 5421/5443 \r
+f 5423/5445 5412/5434 5411/5433 5422/5444 \r
+f 5424/5446 5413/5435 5412/5434 5423/5445 \r
+f 5425/5447 5414/5436 5413/5435 5424/5446 \r
+f 5426/5448 5415/5437 5414/5436 5425/5447 \r
+f 5427/5449 5416/5438 5415/5437 5426/5448 \r
+f 5428/5450 5417/5439 5416/5438 5427/5449 \r
+f 5428/5450 5274/3780 5417/5439 \r
+f 5429/5451 5418/5440 5158/5189 5170/5201 \r
+f 5430/5452 5419/5441 5418/5440 5429/5451 \r
+f 5431/5453 5420/5442 5419/5441 5430/5452 \r
+f 5432/5454 5421/5443 5420/5442 5431/5453 \r
+f 5433/5455 5422/5444 5421/5443 5432/5454 \r
+f 5434/5456 5423/5445 5422/5444 5433/5455 \r
+f 5435/5457 5424/5446 5423/5445 5434/5456 \r
+f 5436/5458 5425/5447 5424/5446 5435/5457 \r
+f 5437/5459 5426/5448 5425/5447 5436/5458 \r
+f 5438/5460 5427/5449 5426/5448 5437/5459 \r
+f 5439/5461 5428/5450 5427/5449 5438/5460 \r
+f 5439/5461 5274/3780 5428/5450 \r
+f 5440/5462 5429/5451 5170/5201 5182/5213 \r
+f 5441/5463 5430/5452 5429/5451 5440/5462 \r
+f 5442/5464 5431/5453 5430/5452 5441/5463 \r
+f 5443/5465 5432/5454 5431/5453 5442/5464 \r
+f 5444/5466 5433/5455 5432/5454 5443/5465 \r
+f 5445/5467 5434/5456 5433/5455 5444/5466 \r
+f 5446/5468 5435/5457 5434/5456 5445/5467 \r
+f 5447/5469 5436/5458 5435/5457 5446/5468 \r
+f 5448/5470 5437/5459 5436/5458 5447/5469 \r
+f 5449/5471 5438/5460 5437/5459 5448/5470 \r
+f 5450/5472 5439/5461 5438/5460 5449/5471 \r
+f 5450/5472 5274/3780 5439/5461 \r
+f 5451/5473 5440/5462 5182/5213 5194/5225 \r
+f 5452/5474 5441/5463 5440/5462 5451/5473 \r
+f 5453/5475 5442/5464 5441/5463 5452/5474 \r
+f 5454/5476 5443/5465 5442/5464 5453/5475 \r
+f 5455/5477 5444/5466 5443/5465 5454/5476 \r
+f 5456/5478 5445/5467 5444/5466 5455/5477 \r
+f 5457/5479 5446/5468 5445/5467 5456/5478 \r
+f 5458/5480 5447/5469 5446/5468 5457/5479 \r
+f 5459/5481 5448/5470 5447/5469 5458/5480 \r
+f 5460/5482 5449/5471 5448/5470 5459/5481 \r
+f 5461/5483 5450/5472 5449/5471 5460/5482 \r
+f 5461/5483 5274/3780 5450/5472 \r
+f 5451/5473 5194/5225 5206/5237 5462/5484 \r
+f 5452/5474 5451/5473 5462/5484 5463/5485 \r
+f 5453/5475 5452/5474 5463/5485 5464/5486 \r
+f 5454/5476 5453/5475 5464/5486 5465/5487 \r
+f 5455/5477 5454/5476 5465/5487 5466/5488 \r
+f 5456/5478 5455/5477 5466/5488 5467/5489 \r
+f 5457/5479 5456/5478 5467/5489 5468/5490 \r
+f 5458/5480 5457/5479 5468/5490 5469/5491 \r
+f 5459/5481 5458/5480 5469/5491 5470/5492 \r
+f 5460/5482 5459/5481 5470/5492 5471/5493 \r
+f 5461/5483 5460/5482 5471/5493 5472/5494 \r
+f 5472/5494 5274/3780 5461/5483 \r
+f 5462/5484 5206/5237 5218/5249 5473/5495 \r
+f 5463/5485 5462/5484 5473/5495 5474/5496 \r
+f 5464/5486 5463/5485 5474/5496 5475/5497 \r
+f 5465/5487 5464/5486 5475/5497 5476/5498 \r
+f 5466/5488 5465/5487 5476/5498 5477/5499 \r
+f 5467/5489 5466/5488 5477/5499 5478/5500 \r
+f 5468/5490 5467/5489 5478/5500 5479/5501 \r
+f 5469/5491 5468/5490 5479/5501 5480/5502 \r
+f 5470/5492 5469/5491 5480/5502 5481/5503 \r
+f 5471/5493 5470/5492 5481/5503 5482/5504 \r
+f 5472/5494 5471/5493 5482/5504 5483/5505 \r
+f 5483/5505 5274/3780 5472/5494 \r
+f 5473/5495 5218/5249 5230/5261 5484/5506 \r
+f 5474/5496 5473/5495 5484/5506 5485/5507 \r
+f 5475/5497 5474/5496 5485/5507 5486/5508 \r
+f 5476/5498 5475/5497 5486/5508 5487/5509 \r
+f 5477/5499 5476/5498 5487/5509 5488/5510 \r
+f 5478/5500 5477/5499 5488/5510 5489/5511 \r
+f 5479/5501 5478/5500 5489/5511 5490/5512 \r
+f 5480/5502 5479/5501 5490/5512 5491/5513 \r
+f 5481/5503 5480/5502 5491/5513 5492/5514 \r
+f 5482/5504 5481/5503 5492/5514 5493/5515 \r
+f 5483/5505 5482/5504 5493/5515 5494/5516 \r
+f 5494/5516 5274/3780 5483/5505 \r
+f 5484/5506 5230/5261 5242/5273 5495/5517 \r
+f 5485/5507 5484/5506 5495/5517 5496/5518 \r
+f 5486/5508 5485/5507 5496/5518 5497/5519 \r
+f 5487/5509 5486/5508 5497/5519 5498/5520 \r
+f 5488/5510 5487/5509 5498/5520 5499/5521 \r
+f 5489/5511 5488/5510 5499/5521 5500/5522 \r
+f 5490/5512 5489/5511 5500/5522 5501/5523 \r
+f 5491/5513 5490/5512 5501/5523 5502/5524 \r
+f 5492/5514 5491/5513 5502/5524 5503/5525 \r
+f 5493/5515 5492/5514 5503/5525 5504/5526 \r
+f 5494/5516 5493/5515 5504/5526 5505/5527 \r
+f 5505/5527 5274/3780 5494/5516 \r
+f 5495/5517 5242/5273 5254/5285 5506/5528 \r
+f 5496/5518 5495/5517 5506/5528 5507/5529 \r
+f 5497/5519 5496/5518 5507/5529 5508/5530 \r
+f 5498/5520 5497/5519 5508/5530 5509/5531 \r
+f 5499/5521 5498/5520 5509/5531 5510/5532 \r
+f 5500/5522 5499/5521 5510/5532 5511/5533 \r
+f 5501/5523 5500/5522 5511/5533 5512/5534 \r
+f 5502/5524 5501/5523 5512/5534 5513/5535 \r
+f 5503/5525 5502/5524 5513/5535 5514/5536 \r
+f 5504/5526 5503/5525 5514/5536 5515/5537 \r
+f 5505/5527 5504/5526 5515/5537 5516/5538 \r
+f 5516/5538 5274/3780 5505/5527 \r
+f 5506/5528 5254/5285 3744/3757 4001/4023 \r
+f 5507/5529 5506/5528 4001/4023 4002/4024 \r
+f 5508/5530 5507/5529 4002/4024 4003/4025 \r
+f 5509/5531 5508/5530 4003/4025 4004/4026 \r
+f 5510/5532 5509/5531 4004/4026 4005/4027 \r
+f 5511/5533 5510/5532 4005/4027 4006/4028 \r
+f 5512/5534 5511/5533 4006/4028 4007/4029 \r
+f 5513/5535 5512/5534 4007/4029 4008/4030 \r
+f 5514/5536 5513/5535 4008/4030 4009/4031 \r
+f 5515/5537 5514/5536 4009/4031 4010/4032 \r
+f 5516/5538 5515/5537 4010/4032 4011/4033 \r
+f 4011/4033 5274/3780 5516/5538 \r
+f 5517/6317 5518/5540 4991/5021 \r
+f 5520/5542 5521/4037 4013/4036 5519/5541 \r
+f 5522/5545 5523/5546 5524/5543 5525/5544 \r
+f 5526/5549 5527/5550 5528/5547 5529/5548 \r
+f 5530/5551 5531/5552 5529/5548 5528/5547 \r
+f 5531/5552 5532/5553 5520/5542 5529/5548 \r
+f 5533/5554 5534/5555 5532/5553 5531/5552 \r
+f 5534/5555 5535/4054 4033/4053 5532/5553 \r
+f 4035/6246 5537/5557 5536/5556 4034/6247 \r
+f 5537/5557 5539/5559 5538/5558 5536/5556 \r
+f 5539/5559 5541/5561 5540/5560 5538/5558 \r
+f 5541/5561 5543/5563 5542/5562 5540/5560 \r
+f 5543/5563 5545/5565 5544/5564 5542/5562 \r
+f 5545/5565 5547/5567 5546/5566 5544/5564 \r
+f 5547/5567 5549/5569 5548/5568 5546/5566 \r
+f 5549/5569 5551/5571 5550/5570 5548/5568 \r
+f 5551/5571 5552/5572 5530/5551 5550/5570 \r
+f 5553/5573 5554/5574 5552/5572 5551/5571 \r
+f 5554/5574 5555/5575 5533/5554 5552/5572 \r
+f 5556/5576 5557/5577 5555/5575 5554/5574 \r
+f 5557/5577 5559/5579 5558/5578 5555/5575 \r
+f 5559/5579 5560/4082 4060/4081 5558/5578 \r
+f 4062/6248 5562/5581 5561/5580 4061/6249 \r
+f 5562/5581 5564/5583 5563/5582 5561/5580 \r
+f 5564/5583 5566/5585 5565/5584 5563/5582 \r
+f 5566/5585 5568/5587 5567/5586 5565/5584 \r
+f 5568/5587 5570/5589 5569/5588 5567/5586 \r
+f 5570/5589 5572/5591 5571/5590 5569/5588 \r
+f 5572/5591 5574/5593 5573/5592 5571/5590 \r
+f 5574/5593 5575/5594 5553/5573 5573/5592 \r
+f 5576/5595 5577/5596 5575/5594 5574/5593 \r
+f 5577/5596 5578/5597 5556/5576 5575/5594 \r
+f 5579/5598 5580/5599 5578/5597 5577/5596 \r
+f 5580/5599 5582/5601 5581/5600 5578/5597 \r
+f 5582/5601 5584/5603 5583/5602 5581/5600 \r
+f 5584/5603 4087/4110 5585/4109 5583/5602 \r
+f 4089/6250 5587/5605 5586/5604 4088/6251 \r
+f 5587/5605 5589/5607 5588/5606 5586/5604 \r
+f 5589/5607 5591/5609 5590/5608 5588/5606 \r
+f 5591/5609 5593/5611 5592/5610 5590/5608 \r
+f 5593/5611 5595/5613 5594/5612 5592/5610 \r
+f 5595/5613 5597/5615 5596/5614 5594/5612 \r
+f 5597/5615 5598/5616 5576/5595 5596/5614 \r
+f 5599/5617 5600/5618 5598/5616 5597/5615 \r
+f 5600/5618 5601/5619 5579/5598 5598/5616 \r
+f 5602/5620 5603/5621 5601/5619 5600/5618 \r
+f 5603/5621 5605/5623 5604/5622 5601/5619 \r
+f 5605/5623 5607/5625 5606/5624 5604/5622 \r
+f 5607/5625 5609/5627 5608/5626 5606/5624 \r
+f 5609/5627 5610/4138 4114/4137 5608/5626 \r
+f 4116/6252 5612/5629 5611/5628 4115/6253 \r
+f 5612/5629 5614/5631 5613/5630 5611/5628 \r
+f 5614/5631 5616/5633 5615/5632 5613/5630 \r
+f 5616/5633 5618/5635 5617/5634 5615/5632 \r
+f 5618/5635 5620/5637 5619/5636 5617/5634 \r
+f 5620/5637 5621/5638 5599/5617 5619/5636 \r
+f 5622/5639 5623/5640 5621/5638 5620/5637 \r
+f 5623/5640 5624/5641 5602/5620 5621/5638 \r
+f 5625/5642 5626/5643 5624/5641 5623/5640 \r
+f 5626/5643 5628/5645 5627/5644 5624/5641 \r
+f 5628/5645 5630/5647 5629/5646 5627/5644 \r
+f 5630/5647 5632/5649 5631/5648 5629/5646 \r
+f 5632/5649 5634/5651 5633/5650 5631/5648 \r
+f 5634/5651 4141/4166 5635/4165 5633/5650 \r
+f 4143/6254 5637/5653 5636/5652 4142/6255 \r
+f 5637/5653 5639/5655 5638/5654 5636/5652 \r
+f 5639/5655 5641/5657 5640/5656 5638/5654 \r
+f 5641/5657 5643/5659 5642/5658 5640/5656 \r
+f 5643/5659 5644/5660 5622/5639 5642/5658 \r
+f 5645/5661 5646/5662 5644/5660 5643/5659 \r
+f 5646/5662 5647/5663 5625/5642 5644/5660 \r
+f 5648/5664 5649/5665 5647/5663 5646/5662 \r
+f 5649/5665 5651/5667 5650/5666 5647/5663 \r
+f 5651/5667 5653/5669 5652/5668 5650/5666 \r
+f 5653/5669 5655/5671 5654/5670 5652/5668 \r
+f 5655/5671 5657/5673 5656/5672 5654/5670 \r
+f 5657/5673 5659/5675 5658/5674 5656/5672 \r
+f 5659/5675 5661/4194 5660/4193 5658/5674 \r
+f 5663/6256 5664/5677 5662/5676 4168/6257 \r
+f 5664/5677 5666/5679 5665/5678 5662/5676 \r
+f 5666/5679 5668/5681 5667/5680 5665/5678 \r
+f 5668/5681 5669/5682 5645/5661 5667/5680 \r
+f 5670/5683 5671/5684 5669/5682 5668/5681 \r
+f 5671/5684 5672/5685 5648/5664 5669/5682 \r
+f 5673/5686 5674/5687 5672/5685 5671/5684 \r
+f 5674/5687 5676/5689 5675/5688 5672/5685 \r
+f 5676/5689 5678/5691 5677/5690 5675/5688 \r
+f 5678/5691 5680/5693 5679/5692 5677/5690 \r
+f 5680/5693 5682/5695 5681/5694 5679/5692 \r
+f 5682/5695 5684/5697 5683/5696 5681/5694 \r
+f 5684/5697 5686/5699 5685/5698 5683/5696 \r
+f 5686/5699 4194/4222 4193/4221 5685/5698 \r
+f 4195/6258 5689/5701 5687/5700 5688/6259 \r
+f 5689/5701 5691/5703 5690/5702 5687/5700 \r
+f 5691/5703 5692/5704 5670/5683 5690/5702 \r
+f 5693/5705 5694/5706 5692/5704 5691/5703 \r
+f 5694/5706 5695/5707 5673/5686 5692/5704 \r
+f 5691/5703 5689/5701 5696/5708 5693/5705 \r
+f 5689/5701 4195/6258 5697/6260 5696/5708 \r
+f 5666/5679 5664/5677 5687/5700 5690/5702 \r
+f 5664/5677 5663/6256 5688/6259 5687/5700 \r
+f 4194/4222 5686/5699 5698/5709 4205/4236 \r
+f 5686/5699 5684/5697 5699/5710 5698/5709 \r
+f 5661/4194 5659/5675 5685/5698 4193/4221 \r
+f 5684/5697 5682/5695 5700/5711 5699/5710 \r
+f 5659/5675 5657/5673 5683/5696 5685/5698 \r
+f 5682/5695 5680/5693 5701/5712 5700/5711 \r
+f 5657/5673 5655/5671 5681/5694 5683/5696 \r
+f 5680/5693 5678/5691 5702/5713 5701/5712 \r
+f 5655/5671 5653/5669 5679/5692 5681/5694 \r
+f 5678/5691 5676/5689 5703/5714 5702/5713 \r
+f 5653/5669 5651/5667 5677/5690 5679/5692 \r
+f 5676/5689 5674/5687 5704/5715 5703/5714 \r
+f 5651/5667 5649/5665 5675/5688 5677/5690 \r
+f 5674/5687 5673/5686 5695/5707 5704/5715 \r
+f 5649/5665 5648/5664 5672/5685 5675/5688 \r
+f 5671/5684 5670/5683 5692/5704 5673/5686 \r
+f 5668/5681 5666/5679 5690/5702 5670/5683 \r
+f 5641/5657 5639/5655 5665/5678 5667/5680 \r
+f 5639/5655 5637/5653 5662/5676 5665/5678 \r
+f 5637/5653 4143/6254 4168/6257 5662/5676 \r
+f 4141/4166 5634/5651 5658/5674 5660/4193 \r
+f 5634/5651 5632/5649 5656/5672 5658/5674 \r
+f 5632/5649 5630/5647 5654/5670 5656/5672 \r
+f 5630/5647 5628/5645 5652/5668 5654/5670 \r
+f 5628/5645 5626/5643 5650/5666 5652/5668 \r
+f 5626/5643 5625/5642 5647/5663 5650/5666 \r
+f 5646/5662 5645/5661 5669/5682 5648/5664 \r
+f 5643/5659 5641/5657 5667/5680 5645/5661 \r
+f 5618/5635 5616/5633 5640/5656 5642/5658 \r
+f 5616/5633 5614/5631 5638/5654 5640/5656 \r
+f 5614/5631 5612/5629 5636/5652 5638/5654 \r
+f 5612/5629 4116/6252 4142/6255 5636/5652 \r
+f 5610/4138 5609/5627 5633/5650 5635/4165 \r
+f 5609/5627 5607/5625 5631/5648 5633/5650 \r
+f 5607/5625 5605/5623 5629/5646 5631/5648 \r
+f 5605/5623 5603/5621 5627/5644 5629/5646 \r
+f 5603/5621 5602/5620 5624/5641 5627/5644 \r
+f 5623/5640 5622/5639 5644/5660 5625/5642 \r
+f 5620/5637 5618/5635 5642/5658 5622/5639 \r
+f 5595/5613 5593/5611 5617/5634 5619/5636 \r
+f 5593/5611 5591/5609 5615/5632 5617/5634 \r
+f 5591/5609 5589/5607 5613/5630 5615/5632 \r
+f 5589/5607 5587/5605 5611/5628 5613/5630 \r
+f 5587/5605 4089/6250 4115/6253 5611/5628 \r
+f 4087/4110 5584/5603 5608/5626 4114/4137 \r
+f 5584/5603 5582/5601 5606/5624 5608/5626 \r
+f 5582/5601 5580/5599 5604/5622 5606/5624 \r
+f 5580/5599 5579/5598 5601/5619 5604/5622 \r
+f 5600/5618 5599/5617 5621/5638 5602/5620 \r
+f 5597/5615 5595/5613 5619/5636 5599/5617 \r
+f 5572/5591 5570/5589 5594/5612 5596/5614 \r
+f 5570/5589 5568/5587 5592/5610 5594/5612 \r
+f 5568/5587 5566/5585 5590/5608 5592/5610 \r
+f 5566/5585 5564/5583 5588/5606 5590/5608 \r
+f 5564/5583 5562/5581 5586/5604 5588/5606 \r
+f 5562/5581 4062/6248 4088/6251 5586/5604 \r
+f 5560/4082 5559/5579 5583/5602 5585/4109 \r
+f 5559/5579 5557/5577 5581/5600 5583/5602 \r
+f 5557/5577 5556/5576 5578/5597 5581/5600 \r
+f 5577/5596 5576/5595 5598/5616 5579/5598 \r
+f 5574/5593 5572/5591 5596/5614 5576/5595 \r
+f 5549/5569 5547/5567 5571/5590 5573/5592 \r
+f 5547/5567 5545/5565 5569/5588 5571/5590 \r
+f 5545/5565 5543/5563 5567/5586 5569/5588 \r
+f 5543/5563 5541/5561 5565/5584 5567/5586 \r
+f 5541/5561 5539/5559 5563/5582 5565/5584 \r
+f 5539/5559 5537/5557 5561/5580 5563/5582 \r
+f 5537/5557 4035/6246 4061/6249 5561/5580 \r
+f 5535/4054 5534/5555 5558/5578 4060/4081 \r
+f 5534/5555 5533/5554 5555/5575 5558/5578 \r
+f 5554/5574 5553/5573 5575/5594 5556/5576 \r
+f 5551/5571 5549/5569 5573/5592 5553/5573 \r
+f 5525/5544 5524/5543 5548/5568 5550/5570 \r
+f 5550/5570 5530/5551 5528/5547 5525/5544 \r
+f 5524/5543 5705/5716 5546/5566 5548/5568 \r
+f 5524/5543 5523/5546 5706/5717 5705/5716 \r
+f 5705/5716 5707/5718 5544/5564 5546/5566 \r
+f 5705/5716 5706/5717 5708/5719 5707/5718 \r
+f 5707/5718 5709/5720 5542/5562 5544/5564 \r
+f 5707/5718 5708/5719 5710/5721 5709/5720 \r
+f 5709/5720 5711/5722 5540/5560 5542/5562 \r
+f 5711/5722 5709/5720 5710/5721 5712/5723 \r
+f 5711/5722 5713/5724 5538/5558 5540/5560 \r
+f 5713/5724 5711/5722 5712/5723 5518/6318 \r
+f 5713/5724 5714/5725 5536/5556 5538/5558 \r
+f 5713/5724 5518/6318 5517/5539 5714/5725 \r
+f 5714/5725 4221/6265 4034/6247 5536/5556 \r
+f 5714/5725 5517/5539 4024/6267 4221/6265 \r
+f 5521/4037 5520/5542 5532/5553 4033/4053 \r
+f 5531/5552 5530/5551 5552/5572 5533/5554 \r
+f 5528/5547 5527/5550 5522/5545 5525/5544 \r
+f 5520/5542 5519/5541 5526/5549 5529/5548 \r
+f 5715/5728 5716/5729 5717/5726 5718/5727 \r
+f 5719/5731 5717/5726 5716/5729 5720/5730 \r
+f 5721/5733 5719/5731 5720/5730 5722/5732 \r
+f 5723/5735 5721/5733 5722/5732 5724/5734 \r
+f 5725/5737 5723/5735 5724/5734 5726/5736 \r
+f 5727/5739 5725/5737 5726/5736 5728/5738 \r
+f 5728/5738 5729/6074 4222/6073 5727/5739 \r
+f 4234/4273 4255/4272 5730/5740 5731/5741 \r
+f 5730/5740 5732/5743 5733/5742 5731/5741 \r
+f 5734/5745 5733/5742 5732/5743 5735/5744 \r
+f 5736/5747 5734/5745 5735/5744 5737/5746 \r
+f 5738/5748 5739/5749 5737/5746 5735/5744 \r
+f 5739/5749 5740/5750 5715/5728 5737/5746 \r
+f 5741/5751 5742/5752 5740/5750 5739/5749 \r
+f 5742/5752 5744/5754 5743/5753 5740/5750 \r
+f 5744/5754 5746/5756 5745/5755 5743/5753 \r
+f 5746/5756 5748/5758 5747/5757 5745/5755 \r
+f 5748/5758 5750/5760 5749/5759 5747/5757 \r
+f 5750/5760 5752/5762 5751/5761 5749/5759 \r
+f 5752/5762 5754/5764 5753/5763 5751/5761 \r
+f 5754/5764 4278/6076 4277/6075 5753/5763 \r
+f 4280/4302 5756/5766 5755/5765 4279/4303 \r
+f 5756/5766 5758/5768 5757/5767 5755/5765 \r
+f 5758/5768 5759/5769 5738/5748 5757/5767 \r
+f 5760/5770 5761/5771 5759/5769 5758/5768 \r
+f 5761/5771 5762/5772 5741/5751 5759/5769 \r
+f 5763/5773 5764/5774 5762/5772 5761/5771 \r
+f 5764/5774 5766/5776 5765/5775 5762/5772 \r
+f 5766/5776 5768/5778 5767/5777 5765/5775 \r
+f 5768/5778 5770/5780 5769/5779 5767/5777 \r
+f 5770/5780 5772/5782 5771/5781 5769/5779 \r
+f 5772/5782 5774/5784 5773/5783 5771/5781 \r
+f 5774/5784 5776/5786 5775/5785 5773/5783 \r
+f 5776/5786 5778/5788 5777/5787 5775/5785 \r
+f 5778/5788 4306/6078 4305/6077 5777/5787 \r
+f 4308/4330 5780/5790 5779/5789 4307/4331 \r
+f 5780/5790 5781/5791 5760/5770 5779/5789 \r
+f 5782/5792 5783/5793 5781/5791 5780/5790 \r
+f 5783/5793 5784/5794 5763/5773 5781/5791 \r
+f 5785/5795 5786/5796 5784/5794 5783/5793 \r
+f 5786/5796 5788/5798 5787/5797 5784/5794 \r
+f 5788/5798 5790/5800 5789/5799 5787/5797 \r
+f 5790/5800 5792/5802 5791/5801 5789/5799 \r
+f 5792/5802 5794/5804 5793/5803 5791/5801 \r
+f 5794/5804 5796/5806 5795/5805 5793/5803 \r
+f 5796/5806 5798/5808 5797/5807 5795/5805 \r
+f 5798/5808 5800/5810 5799/5809 5797/5807 \r
+f 5800/5810 5802/5812 5801/5811 5799/5809 \r
+f 5802/5812 4334/6080 4333/6079 5801/5811 \r
+f 4336/4357 5803/5813 5782/5792 4335/4358 \r
+f 4338/4360 5804/5814 5803/5813 4336/4357 \r
+f 5804/5814 5805/5815 5785/5795 5803/5813 \r
+f 5806/5816 5807/5817 5805/5815 5804/5814 \r
+f 5807/5817 5809/5819 5808/5818 5805/5815 \r
+f 5809/5819 5811/5821 5810/5820 5808/5818 \r
+f 5811/5821 5813/5823 5812/5822 5810/5820 \r
+f 5813/5823 5815/5825 5814/5824 5812/5822 \r
+f 5815/5825 5817/5827 5816/5826 5814/5824 \r
+f 5817/5827 5819/5829 5818/5828 5816/5826 \r
+f 5819/5829 5821/5831 5820/5830 5818/5828 \r
+f 5821/5831 5823/5833 5822/5832 5820/5830 \r
+f 5823/5833 5825/5835 5824/5834 5822/5832 \r
+f 5825/5835 5826/6082 4361/6081 5824/5834 \r
+f 4363/4385 5827/5836 5806/5816 4362/4386 \r
+f 4365/4388 5828/5837 5827/5836 4363/4385 \r
+f 5828/5837 5830/5839 5829/5838 5827/5836 \r
+f 5830/5839 5832/5841 5831/5840 5829/5838 \r
+f 5832/5841 5834/5843 5833/5842 5831/5840 \r
+f 5834/5843 5836/5845 5835/5844 5833/5842 \r
+f 5836/5845 5838/5847 5837/5846 5835/5844 \r
+f 5838/5847 5840/5849 5839/5848 5837/5846 \r
+f 5840/5849 5842/5851 5841/5850 5839/5848 \r
+f 5842/5851 5844/5853 5843/5852 5841/5850 \r
+f 5844/5853 5846/5855 5845/5854 5843/5852 \r
+f 5846/5855 5848/5857 5847/5856 5845/5854 \r
+f 5848/5857 4387/6084 5849/6083 5847/5856 \r
+f 4389/4413 5851/5859 5850/5858 4388/4414 \r
+f 5851/5859 5853/5861 5852/5860 5850/5858 \r
+f 5853/5861 5855/5863 5854/5862 5852/5860 \r
+f 5855/5863 5857/5865 5856/5864 5854/5862 \r
+f 5857/5865 5859/5867 5858/5866 5856/5864 \r
+f 5859/5867 5861/5869 5860/5868 5858/5866 \r
+f 5861/5869 5863/5871 5862/5870 5860/5868 \r
+f 5863/5871 5865/5873 5864/5872 5862/5870 \r
+f 5865/5873 5867/5875 5866/5874 5864/5872 \r
+f 5867/5875 5869/5877 5868/5876 5866/5874 \r
+f 5869/5877 5871/5879 5870/5878 5868/5876 \r
+f 5871/5879 5872/6086 4412/6085 5870/5878 \r
+f 4414/4439 5874/5881 5873/5880 4413/4440 \r
+f 5874/5881 5876/5883 5875/5882 5873/5880 \r
+f 5876/5883 5878/5885 5877/5884 5875/5882 \r
+f 5878/5885 5880/5887 5879/5886 5877/5884 \r
+f 5880/5887 5882/5889 5881/5888 5879/5886 \r
+f 5882/5889 5884/5891 5883/5890 5881/5888 \r
+f 5884/5891 5886/5893 5885/5892 5883/5890 \r
+f 5886/5893 5888/5895 5887/5894 5885/5892 \r
+f 5888/5895 5890/5897 5889/5896 5887/5894 \r
+f 5890/5897 5892/5899 5891/5898 5889/5896 \r
+f 5892/5899 5894/5901 5893/5900 5891/5898 \r
+f 5894/5901 4437/6088 5895/6087 5893/5900 \r
+f 4439/4465 5897/5903 5896/5902 4438/4466 \r
+f 5897/5903 5899/5905 5898/5904 5896/5902 \r
+f 5899/5905 5901/5907 5900/5906 5898/5904 \r
+f 5901/5907 5903/5909 5902/5908 5900/5906 \r
+f 5903/5909 5905/5911 5904/5910 5902/5908 \r
+f 5905/5911 5907/5913 5906/5912 5904/5910 \r
+f 5907/5913 5909/5915 5908/5914 5906/5912 \r
+f 5909/5915 5911/5917 5910/5916 5908/5914 \r
+f 5911/5917 5913/5919 5912/5918 5910/5916 \r
+f 5913/5919 5915/5921 5914/5920 5912/5918 \r
+f 5915/5921 5917/5923 5916/5922 5914/5920 \r
+f 5917/5923 5918/6090 4462/6089 5916/5922 \r
+f 4464/4491 5920/5925 5919/5924 4463/4492 \r
+f 5920/5925 5922/5927 5921/5926 5919/5924 \r
+f 5922/5927 5924/5929 5923/5928 5921/5926 \r
+f 5924/5929 5926/5931 5925/5930 5923/5928 \r
+f 5926/5931 5928/5933 5927/5932 5925/5930 \r
+f 5928/5933 5930/5935 5929/5934 5927/5932 \r
+f 5930/5935 5932/5937 5931/5936 5929/5934 \r
+f 5932/5937 5934/5939 5933/5938 5931/5936 \r
+f 5934/5939 5936/5941 5935/5940 5933/5938 \r
+f 5936/5941 5938/5943 5937/5942 5935/5940 \r
+f 5938/5943 5940/5945 5939/5944 5937/5942 \r
+f 5940/5945 5942/6092 5941/6091 5939/5944 \r
+f 4488/4517 5944/5947 5943/5946 4487/4518 \r
+f 5944/5947 5946/5949 5945/5948 5943/5946 \r
+f 5946/5949 5948/5951 5947/5950 5945/5948 \r
+f 5948/5951 5950/5953 5949/5952 5947/5950 \r
+f 5950/5953 5952/5955 5951/5954 5949/5952 \r
+f 5952/5955 5954/5957 5953/5956 5951/5954 \r
+f 5954/5957 5956/5959 5955/5958 5953/5956 \r
+f 5956/5959 5958/5961 5957/5960 5955/5958 \r
+f 5958/5961 5960/5963 5959/5962 5957/5960 \r
+f 5960/5963 5962/5965 5961/5964 5959/5962 \r
+f 5962/5965 5964/5967 5963/5966 5961/5964 \r
+f 5964/5967 5965/6094 4511/6093 5963/5966 \r
+f 4512/4543 5968/5969 5966/5968 5967/4544 \r
+f 5968/5969 5970/5971 5969/5970 5966/5968 \r
+f 5970/5971 5972/5973 5971/5972 5969/5970 \r
+f 5972/5973 5974/5975 5973/5974 5971/5972 \r
+f 5974/5975 5976/5977 5975/5976 5973/5974 \r
+f 5976/5977 5978/5979 5977/5978 5975/5976 \r
+f 5978/5979 5980/5981 5979/5980 5977/5978 \r
+f 5980/5981 5982/5983 5981/5982 5979/5980 \r
+f 5982/5983 5984/5985 5983/5984 5981/5982 \r
+f 5984/5985 5986/5987 5985/5986 5983/5984 \r
+f 5986/5987 5988/5989 5987/5988 5985/5986 \r
+f 5988/5989 4535/6096 5989/6095 5987/5988 \r
+f 4535/6096 5988/5989 5990/5990 4235/6097 \r
+f 5965/6094 5964/5967 5987/5988 5989/6095 \r
+f 5988/5989 5986/5987 5991/5991 5990/5990 \r
+f 5964/5967 5962/5965 5985/5986 5987/5988 \r
+f 5986/5987 5984/5985 5992/5992 5991/5991 \r
+f 5962/5965 5960/5963 5983/5984 5985/5986 \r
+f 5984/5985 5982/5983 5993/5993 5992/5992 \r
+f 5960/5963 5958/5961 5981/5982 5983/5984 \r
+f 5982/5983 5980/5981 5994/5994 5993/5993 \r
+f 5980/5981 5978/5979 5995/5995 5994/5994 \r
+f 5958/5961 5956/5959 5979/5980 5981/5982 \r
+f 5956/5959 5954/5957 5977/5978 5979/5980 \r
+f 5978/5979 5976/5977 5996/5996 5995/5995 \r
+f 5954/5957 5952/5955 5975/5976 5977/5978 \r
+f 5976/5977 5974/5975 5997/5997 5996/5996 \r
+f 5972/5973 5998/5998 5997/5997 5974/5975 \r
+f 5952/5955 5950/5953 5973/5974 5975/5976 \r
+f 5950/5953 5948/5951 5971/5972 5973/5974 \r
+f 5972/5973 5970/5971 5999/5999 5998/5998 \r
+f 5948/5951 5946/5949 5969/5970 5971/5972 \r
+f 5970/5971 5968/5969 6000/6000 5999/5999 \r
+f 5946/5949 5944/5947 5966/5968 5969/5970 \r
+f 5968/5969 4512/4543 4247/4579 6000/6000 \r
+f 5944/5947 4488/4517 5967/4544 5966/5968 \r
+f 5942/6092 5940/5945 5963/5966 4511/6093 \r
+f 5940/5945 5938/5943 5961/5964 5963/5966 \r
+f 5938/5943 5936/5941 5959/5962 5961/5964 \r
+f 5936/5941 5934/5939 5957/5960 5959/5962 \r
+f 5934/5939 5932/5937 5955/5958 5957/5960 \r
+f 5932/5937 5930/5935 5953/5956 5955/5958 \r
+f 5930/5935 5928/5933 5951/5954 5953/5956 \r
+f 5928/5933 5926/5931 5949/5952 5951/5954 \r
+f 5926/5931 5924/5929 5947/5950 5949/5952 \r
+f 5924/5929 5922/5927 5945/5948 5947/5950 \r
+f 5922/5927 5920/5925 5943/5946 5945/5948 \r
+f 5920/5925 4464/4491 4487/4518 5943/5946 \r
+f 5918/6090 5917/5923 5939/5944 5941/6091 \r
+f 5917/5923 5915/5921 5937/5942 5939/5944 \r
+f 5915/5921 5913/5919 5935/5940 5937/5942 \r
+f 5913/5919 5911/5917 5933/5938 5935/5940 \r
+f 5911/5917 5909/5915 5931/5936 5933/5938 \r
+f 5909/5915 5907/5913 5929/5934 5931/5936 \r
+f 5907/5913 5905/5911 5927/5932 5929/5934 \r
+f 5905/5911 5903/5909 5925/5930 5927/5932 \r
+f 5903/5909 5901/5907 5923/5928 5925/5930 \r
+f 5901/5907 5899/5905 5921/5926 5923/5928 \r
+f 5899/5905 5897/5903 5919/5924 5921/5926 \r
+f 5897/5903 4439/4465 4463/4492 5919/5924 \r
+f 4437/6088 5894/5901 5916/5922 4462/6089 \r
+f 5894/5901 5892/5899 5914/5920 5916/5922 \r
+f 5892/5899 5890/5897 5912/5918 5914/5920 \r
+f 5890/5897 5888/5895 5910/5916 5912/5918 \r
+f 5888/5895 5886/5893 5908/5914 5910/5916 \r
+f 5886/5893 5884/5891 5906/5912 5908/5914 \r
+f 5884/5891 5882/5889 5904/5910 5906/5912 \r
+f 5882/5889 5880/5887 5902/5908 5904/5910 \r
+f 5880/5887 5878/5885 5900/5906 5902/5908 \r
+f 5878/5885 5876/5883 5898/5904 5900/5906 \r
+f 5876/5883 5874/5881 5896/5902 5898/5904 \r
+f 5874/5881 4414/4439 4438/4466 5896/5902 \r
+f 5872/6086 5871/5879 5893/5900 5895/6087 \r
+f 5871/5879 5869/5877 5891/5898 5893/5900 \r
+f 5869/5877 5867/5875 5889/5896 5891/5898 \r
+f 5867/5875 5865/5873 5887/5894 5889/5896 \r
+f 5865/5873 5863/5871 5885/5892 5887/5894 \r
+f 5863/5871 5861/5869 5883/5890 5885/5892 \r
+f 5861/5869 5859/5867 5881/5888 5883/5890 \r
+f 5859/5867 5857/5865 5879/5886 5881/5888 \r
+f 5857/5865 5855/5863 5877/5884 5879/5886 \r
+f 5855/5863 5853/5861 5875/5882 5877/5884 \r
+f 5853/5861 5851/5859 5873/5880 5875/5882 \r
+f 5851/5859 4389/4413 4413/4440 5873/5880 \r
+f 4387/6084 5848/5857 5870/5878 4412/6085 \r
+f 5848/5857 5846/5855 5868/5876 5870/5878 \r
+f 5846/5855 5844/5853 5866/5874 5868/5876 \r
+f 5844/5853 5842/5851 5864/5872 5866/5874 \r
+f 5842/5851 5840/5849 5862/5870 5864/5872 \r
+f 5840/5849 5838/5847 5860/5868 5862/5870 \r
+f 5838/5847 5836/5845 5858/5866 5860/5868 \r
+f 5836/5845 5834/5843 5856/5864 5858/5866 \r
+f 5834/5843 5832/5841 5854/5862 5856/5864 \r
+f 5832/5841 5830/5839 5852/5860 5854/5862 \r
+f 5830/5839 5828/5837 5850/5858 5852/5860 \r
+f 5828/5837 4365/4388 4388/4414 5850/5858 \r
+f 5826/6082 5825/5835 5847/5856 5849/6083 \r
+f 5825/5835 5823/5833 5845/5854 5847/5856 \r
+f 5823/5833 5821/5831 5843/5852 5845/5854 \r
+f 5821/5831 5819/5829 5841/5850 5843/5852 \r
+f 5819/5829 5817/5827 5839/5848 5841/5850 \r
+f 5817/5827 5815/5825 5837/5846 5839/5848 \r
+f 5815/5825 5813/5823 5835/5844 5837/5846 \r
+f 5813/5823 5811/5821 5833/5842 5835/5844 \r
+f 5811/5821 5809/5819 5831/5840 5833/5842 \r
+f 5809/5819 5807/5817 5829/5838 5831/5840 \r
+f 5807/5817 5806/5816 5827/5836 5829/5838 \r
+f 4334/6080 5802/5812 5824/5834 4361/6081 \r
+f 5802/5812 5800/5810 5822/5832 5824/5834 \r
+f 5800/5810 5798/5808 5820/5830 5822/5832 \r
+f 5798/5808 5796/5806 5818/5828 5820/5830 \r
+f 5796/5806 5794/5804 5816/5826 5818/5828 \r
+f 5794/5804 5792/5802 5814/5824 5816/5826 \r
+f 5792/5802 5790/5800 5812/5822 5814/5824 \r
+f 5790/5800 5788/5798 5810/5820 5812/5822 \r
+f 5788/5798 5786/5796 5808/5818 5810/5820 \r
+f 5786/5796 5785/5795 5805/5815 5808/5818 \r
+f 5804/5814 4338/4360 4362/4386 5806/5816 \r
+f 4306/6078 5778/5788 5801/5811 4333/6079 \r
+f 5778/5788 5776/5786 5799/5809 5801/5811 \r
+f 5776/5786 5774/5784 5797/5807 5799/5809 \r
+f 5774/5784 5772/5782 5795/5805 5797/5807 \r
+f 5772/5782 5770/5780 5793/5803 5795/5805 \r
+f 5770/5780 5768/5778 5791/5801 5793/5803 \r
+f 5768/5778 5766/5776 5789/5799 5791/5801 \r
+f 5766/5776 5764/5774 5787/5797 5789/5799 \r
+f 5764/5774 5763/5773 5784/5794 5787/5797 \r
+f 5783/5793 5782/5792 5803/5813 5785/5795 \r
+f 5780/5790 4308/4330 4335/4358 5782/5792 \r
+f 5756/5766 4280/4302 4307/4331 5779/5789 \r
+f 4278/6076 5754/5764 5777/5787 4305/6077 \r
+f 5754/5764 5752/5762 5775/5785 5777/5787 \r
+f 5752/5762 5750/5760 5773/5783 5775/5785 \r
+f 5750/5760 5748/5758 5771/5781 5773/5783 \r
+f 5748/5758 5746/5756 5769/5779 5771/5781 \r
+f 5746/5756 5744/5754 5767/5777 5769/5779 \r
+f 5744/5754 5742/5752 5765/5775 5767/5777 \r
+f 5742/5752 5741/5751 5762/5772 5765/5775 \r
+f 5761/5771 5760/5770 5781/5791 5763/5773 \r
+f 5758/5768 5756/5766 5779/5789 5760/5770 \r
+f 5732/5743 5730/5740 5755/5765 5757/5767 \r
+f 5730/5740 4255/4272 4279/4303 5755/5765 \r
+f 5729/6074 5728/5738 5753/5763 4277/6075 \r
+f 5728/5738 5726/5736 5751/5761 5753/5763 \r
+f 5726/5736 5724/5734 5749/5759 5751/5761 \r
+f 5724/5734 5722/5732 5747/5757 5749/5759 \r
+f 5722/5732 5720/5730 5745/5755 5747/5757 \r
+f 5720/5730 5716/5729 5743/5753 5745/5755 \r
+f 5716/5729 5715/5728 5740/5750 5743/5753 \r
+f 5739/5749 5738/5748 5759/5769 5741/5751 \r
+f 5735/5744 5732/5743 5757/5767 5738/5748 \r
+f 5718/5727 5736/5747 5737/5746 5715/5728 \r
+f 5526/6322 4710/4747 4717/4754 4725/4763 \r
+f 4710/4747 5526/6322 5519/6319 \r
+f 5527/6323 5526/6322 4725/4763 \r
+f 4729/4767 5523/6321 5522/6320 4727/4765 \r
+f 5706/6324 5523/6321 4729/4767 4731/4769 \r
+f 4733/4771 5710/6326 5708/6325 \r
+f 5003/5034 5712/6327 5710/6326 \r
+f 5712/6327 4991/5021 5518/5540 \r
+f 5517/6317 4991/5021 4976/5011 \r
+f 5727/6334 3447/3455 4965/5001 \r
+f 5717/6328 4965/5001 4953/4990 4952/4989 \r
+f 5718/6329 5717/6328 4952/4989 4951/4988 \r
+f 5731/6335 3446/3453 4234/6276 \r
+f 5990/6339 4973/5010 4972/5009 \r
+f 5991/6340 4973/5010 5990/6339 \r
+f 5996/6345 5997/6346 5244/5275 \r
+f 6000/6349 4247/6293 3735/3748 \r
+f 3458/3463 5517/6317 4976/5011 \r
+f 5003/5034 4992/5022 5712/6327 \r
+f 4733/4771 5003/5034 5710/6326 \r
+f 5706/6324 4731/4769 5708/6325 \r
+f 4731/4769 4733/4771 5708/6325 \r
+f 4024/6266 5517/6317 3458/3463 \r
+f 4992/5022 4991/5021 5712/6327 \r
+f 4725/4763 4727/4765 5522/6320 5527/6323 \r
+f 4013/6240 3182/3188 5519/6319 \r
+f 3182/3188 4710/4747 5519/6319 \r
+f 5717/6328 5719/6330 4965/5001 \r
+f 5719/6330 5721/6331 4965/5001 \r
+f 5721/6331 5723/6332 4965/5001 \r
+f 5723/6332 5725/6333 4965/5001 \r
+f 5725/6333 5727/6334 4965/5001 \r
+f 4222/6275 3447/3455 5727/6334 \r
+f 4963/5000 5718/6329 4951/4988 \r
+f 5718/6329 4963/5000 5736/6338 \r
+f 5736/6338 4963/5000 5734/6337 \r
+f 5734/6337 4963/5000 5733/6336 \r
+f 5733/6336 4963/5000 3446/3453 5731/6335 \r
+f 5997/6346 5998/6347 5245/5276 \r
+f 5998/6347 5999/6348 5245/5276 \r
+f 5244/5275 5997/6346 5245/5276 \r
+f 6000/6349 3735/3748 5245/5276 5999/6348 \r
+f 5243/5274 5995/6344 5996/6345 5244/5275 \r
+f 5994/6343 5995/6344 5243/5274 \r
+f 5993/6342 5994/6343 5243/5274 4973/5010 \r
+f 5993/6342 4973/5010 5992/6341 \r
+f 5992/6341 4973/5010 5991/6340 \r
+f 4235/6282 5990/6339 3455/3462 \r
+f 3455/3462 5990/6339 4972/5009 \r
+f 6037/6140 6001/6141 2/3 1537/2 \r
+f 4537/6142 3002/6165 6001/6141 6037/6140 \r
+f 6001/6141 6002/6167 14/15 2/3 \r
+f 3002/6165 3014/6168 6002/6167 6001/6141 \r
+f 6002/6167 6003/6169 21/22 14/15 \r
+f 3014/6168 3021/6170 6003/6169 6002/6167 \r
+f 6003/6169 6004/6171 28/29 21/22 \r
+f 3021/6170 3028/6172 6004/6171 6003/6169 \r
+f 6004/6171 6005/6173 35/36 28/29 \r
+f 3028/6172 3035/6174 6005/6173 6004/6171 \r
+f 6005/6173 6006/6175 42/43 35/36 \r
+f 3035/6174 3042/6176 6006/6175 6005/6173 \r
+f 6006/6175 6007/6177 49/51 42/43 \r
+f 3042/6176 3049/6178 6007/6177 6006/6175 \r
+f 6007/6177 6008/6180 56/58 49/51 \r
+f 3049/6178 3056/6181 6008/6180 6007/6177 \r
+f 6008/6180 6009/6182 63/65 56/58 \r
+f 3056/6181 3063/6183 6009/6182 6008/6180 \r
+f 6009/6182 6010/6184 70/72 63/65 \r
+f 3063/6183 3070/6185 6010/6184 6009/6182 \r
+f 6010/6184 6011/6186 77/78 70/72 \r
+f 3070/6185 3077/6187 6011/6186 6010/6184 \r
+f 6011/6186 6012/6188 84/86 77/78 \r
+f 3077/6187 3084/6189 6012/6188 6011/6186 \r
+f 6012/6188 6013/6190 91/92 84/86 \r
+f 3084/6189 3091/6191 6013/6190 6012/6188 \r
+f 6013/6190 6014/6192 98/99 91/92 \r
+f 3091/6191 3098/6193 6014/6192 6013/6190 \r
+f 6014/6192 6015/6194 105/106 98/99 \r
+f 3098/6193 3105/6195 6015/6194 6014/6192 \r
+f 6015/6194 6016/6196 112/113 105/106 \r
+f 3105/6195 3112/6197 6016/6196 6015/6194 \r
+f 6016/6196 6017/6198 119/120 112/113 \r
+f 3112/6197 3119/6199 6017/6198 6016/6196 \r
+f 6017/6198 6018/6200 126/127 119/120 \r
+f 3119/6199 3126/6201 6018/6200 6017/6198 \r
+f 6018/6200 6019/6202 133/134 126/127 \r
+f 3126/6201 3133/6203 6019/6202 6018/6200 \r
+f 6019/6202 6020/6204 140/141 133/134 \r
+f 3133/6203 3140/6205 6020/6204 6019/6202 \r
+f 6020/6204 6021/6206 147/148 140/141 \r
+f 3140/6205 3147/6207 6021/6206 6020/6204 \r
+f 6021/6206 6022/6208 154/155 147/148 \r
+f 3147/6207 3154/6209 6022/6208 6021/6206 \r
+f 6022/6208 6023/6210 161/162 154/155 \r
+f 3154/6209 3161/6211 6023/6210 6022/6208 \r
+f 6023/6210 6024/6212 168/169 161/162 \r
+f 3161/6211 3168/6213 6024/6212 6023/6210 \r
+f 6027/6026 6025/6027 1202/1231 1201/1230 \r
+f 4201/4231 4202/4230 6025/6351 6027/6350 \r
+f 6025/6027 6026/6028 1203/1232 1202/1231 \r
+f 4202/4230 4203/4232 6026/6352 6025/6351 \r
+f 6028/6029 6027/6026 1201/1230 1204/1233 \r
+f 4204/4233 4201/4231 6027/6350 6028/6353 \r
+f 6064/6030 6028/6029 1204/1233 2697/1234 \r
+f 5697/4234 4204/4233 6028/6353 6064/6355 \r
+f 6030/6031 6029/6032 1205/1236 1206/1235 \r
+f 4206/4235 4205/4236 6029/6358 6030/6357 \r
+f 6031/6033 6030/6031 1206/1235 1207/1237 \r
+f 4207/4237 4206/4235 6030/6357 6031/6359 \r
+f 6032/6034 6031/6033 1207/1237 1208/1238 \r
+f 4208/4238 4207/4237 6031/6359 6032/6360 \r
+f 6033/6035 6032/6034 1208/1238 1209/1239 \r
+f 4209/4239 4208/4238 6032/6360 6033/6361 \r
+f 6034/6036 6033/6035 1209/1239 1210/1240 \r
+f 4210/4240 4209/4239 6033/6361 6034/6362 \r
+f 6035/6037 6034/6036 1210/1240 1211/1241 \r
+f 4211/4241 4210/4240 6034/6362 6035/6363 \r
+f 6036/6038 6035/6037 1211/1241 1212/1242 \r
+f 4212/4242 4211/4241 6035/6363 6036/6364 \r
+f 6026/6028 6036/6038 1212/1242 1203/1232 \r
+f 4203/4232 4212/4242 6036/6364 6026/6352 \r
+f 6038/6214 6037/6140 1537/2 1538/1618 \r
+f 4538/6215 4537/6142 6037/6140 6038/6214 \r
+f 6039/6216 6038/6214 1538/1618 1546/1625 \r
+f 4546/6217 4538/6215 6038/6214 6039/6216 \r
+f 6040/6218 6039/6216 1546/1625 1553/1632 \r
+f 4553/6219 4546/6217 6039/6216 6040/6218 \r
+f 6041/6220 6040/6218 1553/1632 1560/1639 \r
+f 4560/6221 4553/6219 6040/6218 6041/6220 \r
+f 6042/6222 6041/6220 1560/1639 1567/1646 \r
+f 4567/6223 4560/6221 6041/6220 6042/6222 \r
+f 6043/6224 6042/6222 1567/1646 1574/1653 \r
+f 4574/6225 4567/6223 6042/6222 6043/6224 \r
+f 6044/6226 6043/6224 1574/1653 1581/1660 \r
+f 4581/6227 4574/6225 6043/6224 6044/6226 \r
+f 6045/6228 6044/6226 1581/1660 1588/1667 \r
+f 4588/6229 4581/6227 6044/6226 6045/6228 \r
+f 6046/6231 6045/6228 1588/1667 1595/1674 \r
+f 4595/6232 4588/6229 6045/6228 6046/6231 \r
+f 6047/6233 6046/6231 1595/1674 1602/1681 \r
+f 4602/6234 4595/6232 6046/6231 6047/6233 \r
+f 6048/6235 6047/6233 1602/1681 1609/1688 \r
+f 4609/6236 4602/6234 6047/6233 6048/6235 \r
+f 6049/6237 6048/6235 1609/1688 1616/1695 \r
+f 4616/6294 4609/6236 6048/6235 6049/6237 \r
+f 6050/6295 6049/6237 1616/1695 1623/1702 \r
+f 4623/6296 4616/6294 6049/6237 6050/6295 \r
+f 6051/6297 6050/6295 1623/1702 1630/1709 \r
+f 4630/6298 4623/6296 6050/6295 6051/6297 \r
+f 6052/6299 6051/6297 1630/1709 1637/1716 \r
+f 4637/6300 4630/6298 6051/6297 6052/6299 \r
+f 6053/6301 6052/6299 1637/1716 1644/1723 \r
+f 4644/6302 4637/6300 6052/6299 6053/6301 \r
+f 6054/6303 6053/6301 1644/1723 1651/1730 \r
+f 4651/6304 4644/6302 6053/6301 6054/6303 \r
+f 6055/6305 6054/6303 1651/1730 1658/1737 \r
+f 4658/6306 4651/6304 6054/6303 6055/6305 \r
+f 6056/6307 6055/6305 1658/1737 1665/1744 \r
+f 4665/6308 4658/6306 6055/6305 6056/6307 \r
+f 6057/6309 6056/6307 1665/1744 1672/1751 \r
+f 4672/6310 4665/6308 6056/6307 6057/6309 \r
+f 6058/6311 6057/6309 1672/1751 1679/1758 \r
+f 4679/6312 4672/6310 6057/6309 6058/6311 \r
+f 6059/6313 6058/6311 1679/1758 1686/1765 \r
+f 4686/6314 4679/6312 6058/6311 6059/6313 \r
+f 6060/6315 6059/6313 1686/1765 1693/1772 \r
+f 4693/6316 4686/6314 6059/6313 6060/6315 \r
+f 6024/6459 6060/6315 1693/1772 168/6425 \r
+f 3168/6460 4693/6316 6060/6315 6024/6459 \r
+f 6062/6062 6061/6063 2693/2705 2694/2706 \r
+f 5694/5706 5693/5705 6061/6366 6062/6365 \r
+f 6072/6064 6062/6062 2694/2706 2695/2707 \r
+f 5695/5707 5694/5706 6062/6365 6072/6367 \r
+f 6061/6063 6063/6065 2696/2708 2693/2705 \r
+f 5693/5705 5696/5708 6063/6368 6061/6366 \r
+f 6063/6065 6064/6354 2697/6120 2696/2708 \r
+f 5696/5708 5697/6260 6064/6356 6063/6368 \r
+f 6029/6032 6065/6066 2698/2709 1205/1236 \r
+f 4205/4236 5698/5709 6065/6369 6029/6358 \r
+f 6065/6066 6066/6067 2699/2710 2698/2709 \r
+f 5698/5709 5699/5710 6066/6370 6065/6369 \r
+f 6066/6067 6067/6068 2700/2711 2699/2710 \r
+f 5699/5710 5700/5711 6067/6371 6066/6370 \r
+f 6067/6068 6068/6069 2701/2712 2700/2711 \r
+f 5700/5711 5701/5712 6068/6372 6067/6371 \r
+f 6068/6069 6069/6070 2702/2713 2701/2712 \r
+f 5701/5712 5702/5713 6069/6373 6068/6372 \r
+f 6069/6070 6070/6071 2703/2714 2702/2713 \r
+f 5702/5713 5703/5714 6070/6374 6069/6373 \r
+f 6070/6071 6071/6072 2704/2715 2703/2714 \r
+f 5703/5714 5704/5715 6071/6375 6070/6374 \r
+f 6071/6072 6072/6064 2695/2707 2704/2715 \r
+f 5704/5715 5695/5707 6072/6367 6071/6375 \r
+# 5948 polygons - 256 triangles\r
+\r
+#\r
+# object Object001\r
+#\r
+\r
+v  -0.000000 79.006561 -0.000000\r
+v  4.342016 78.851936 -0.000000\r
+v  7.195853 78.414864 -0.000000\r
+v  8.794600 77.735779 -0.000000\r
+v  9.371342 76.854965 -0.000000\r
+v  9.159172 75.812813 -0.000000\r
+v  8.391177 74.649605 -0.000000\r
+v  7.300444 73.405716 -0.000000\r
+v  6.120061 72.121498 -0.000000\r
+v  5.083117 70.837273 -0.000000\r
+v  4.422700 69.593384 -0.000000\r
+v  4.371899 68.430191 -0.000000\r
+v  5.163801 67.388016 -0.000000\r
+v  4.303226 78.851936 0.598502\r
+v  7.131566 78.414894 0.991864\r
+v  8.716028 77.735794 1.212205\r
+v  9.287612 76.854980 1.291645\r
+v  9.077331 75.812813 1.262304\r
+v  8.316182 74.649612 1.156301\r
+v  7.235176 73.405716 1.005755\r
+v  6.065313 72.121498 0.842786\r
+v  5.037603 70.837280 0.699513\r
+v  4.383047 69.593391 0.608055\r
+v  4.332651 68.430191 0.600533\r
+v  5.117423 67.388016 0.709066\r
+v  4.189994 78.851929 1.169678\r
+v  6.943910 78.414864 1.938445\r
+v  8.486671 77.735779 2.369077\r
+v  9.043203 76.854958 2.524348\r
+v  8.838431 75.812798 2.467033\r
+v  8.097276 74.649597 2.259910\r
+v  7.044666 73.405716 1.965751\r
+v  5.905522 72.121483 1.647334\r
+v  4.904771 70.837257 1.367432\r
+v  4.267336 69.593384 1.188822\r
+v  4.218141 68.430183 1.174278\r
+v  4.982112 67.388008 1.386576\r
+v  4.007034 78.851936 1.708817\r
+v  6.640695 78.414894 2.831936\r
+v  8.116080 77.735779 3.461070\r
+v  8.648290 76.854973 3.687933\r
+v  8.452425 75.812813 3.604241\r
+v  7.743583 74.649612 3.301706\r
+v  6.736865 73.405716 2.872042\r
+v  5.647370 72.121498 2.406965\r
+v  4.690197 70.837273 1.998187\r
+v  4.080445 69.593384 1.737422\r
+v  4.033215 68.430191 1.716386\r
+v  4.763607 67.388016 2.026792\r
+v  3.759058 78.851921 2.211209\r
+v  6.229729 78.414856 3.664528\r
+v  7.613796 77.735771 4.478641\r
+v  8.113045 76.854958 4.772230\r
+v  7.929260 75.812790 4.663979\r
+v  7.264224 74.649597 4.272567\r
+v  6.319721 73.405708 3.716680\r
+v  5.297535 72.121483 3.114998\r
+v  4.399451 70.837257 2.586204\r
+v  3.827251 69.593384 2.248981\r
+v  3.782721 68.430176 2.222010\r
+v  4.467644 67.388000 2.623976\r
+v  3.450776 78.851936 2.672140\r
+v  5.718820 78.414864 4.428411\r
+v  6.989367 77.735779 5.412244\r
+v  7.447644 76.854965 5.767063\r
+v  7.278886 75.812805 5.636296\r
+v  6.668322 74.649605 5.163371\r
+v  5.801183 73.405716 4.491714\r
+v  4.862700 72.121490 3.764752\r
+v  4.038107 70.837257 3.125911\r
+v  3.512632 69.593384 2.718619\r
+v  3.471506 68.430183 2.686303\r
+v  4.099962 67.388016 3.172390\r
+v  3.086899 78.851936 3.086899\r
+v  5.115779 78.414864 5.115779\r
+v  6.252335 77.735779 6.252335\r
+v  6.662259 76.854965 6.662258\r
+v  6.511249 75.812813 6.511249\r
+v  5.964997 74.649605 5.964997\r
+v  5.189198 73.405716 5.189198\r
+v  4.349546 72.121498 4.349546\r
+v  3.611736 70.837273 3.611736\r
+v  3.141462 69.593391 3.141462\r
+v  3.104417 68.430191 3.104417\r
+v  3.666299 67.388016 3.666299\r
+v  2.672140 78.851936 3.450776\r
+v  4.428411 78.414864 5.718820\r
+v  5.412244 77.735779 6.989367\r
+v  5.767063 76.854965 7.447643\r
+v  5.636296 75.812813 7.278886\r
+v  5.163371 74.649597 6.668322\r
+v  4.491714 73.405716 5.801183\r
+v  3.764752 72.121490 4.862700\r
+v  3.125911 70.837257 4.038107\r
+v  2.718620 69.593384 3.512632\r
+v  2.686303 68.430191 3.471506\r
+v  3.172391 67.388008 4.099962\r
+v  2.211209 78.851936 3.759058\r
+v  3.664528 78.414864 6.229729\r
+v  4.478641 77.735779 7.613795\r
+v  4.772230 76.854965 8.113047\r
+v  4.663979 75.812813 7.929260\r
+v  4.272567 74.649605 7.264224\r
+v  3.716680 73.405716 6.319721\r
+v  3.114998 72.121498 5.297536\r
+v  2.586204 70.837273 4.399451\r
+v  2.248981 69.593384 3.827251\r
+v  2.222010 68.430191 3.782721\r
+v  2.623976 67.388016 4.467644\r
+v  1.708818 78.851936 4.007034\r
+v  2.831937 78.414864 6.640695\r
+v  3.461071 77.735779 8.116081\r
+v  3.687935 76.854965 8.648291\r
+v  3.604242 75.812813 8.452425\r
+v  3.301707 74.649597 7.743583\r
+v  2.872044 73.405716 6.736865\r
+v  2.406966 72.121490 5.647369\r
+v  1.998188 70.837257 4.690196\r
+v  1.737423 69.593384 4.080445\r
+v  1.716387 68.430191 4.033215\r
+v  2.026793 67.388008 4.763606\r
+v  1.169679 78.851936 4.189994\r
+v  1.938446 78.414864 6.943909\r
+v  2.369078 77.735779 8.486671\r
+v  2.524349 76.854965 9.043203\r
+v  2.467035 75.812813 8.838430\r
+v  2.259911 74.649597 8.097277\r
+v  1.965752 73.405716 7.044664\r
+v  1.647335 72.121490 5.905521\r
+v  1.367433 70.837257 4.904771\r
+v  1.188823 69.593384 4.267335\r
+v  1.174279 68.430191 4.218141\r
+v  1.386577 67.388008 4.982112\r
+v  0.598503 78.851929 4.303226\r
+v  0.991865 78.414864 7.131566\r
+v  1.212206 77.735779 8.716026\r
+v  1.291647 76.854958 9.287613\r
+v  1.262305 75.812798 9.077330\r
+v  1.156302 74.649597 8.316181\r
+v  1.005756 73.405716 7.235174\r
+v  0.842787 72.121498 6.065312\r
+v  0.699513 70.837273 5.037601\r
+v  0.608056 69.593384 4.383046\r
+v  0.600534 68.430191 4.332651\r
+v  0.709067 67.388016 5.117422\r
+v  0.000001 78.851929 4.342015\r
+v  0.000001 78.414864 7.195852\r
+v  0.000002 77.735779 8.794600\r
+v  0.000002 76.854965 9.371340\r
+v  0.000002 75.812798 9.159172\r
+v  0.000002 74.649605 8.391176\r
+v  0.000001 73.405716 7.300443\r
+v  0.000001 72.121498 6.120060\r
+v  0.000001 70.837273 5.083117\r
+v  0.000001 69.593391 4.422700\r
+v  0.000001 68.430191 4.371898\r
+v  0.000001 67.388016 5.163800\r
+v  -0.598502 78.851936 4.303226\r
+v  -0.991864 78.414894 7.131566\r
+v  -1.212205 77.735794 8.716028\r
+v  -1.291645 76.854980 9.287613\r
+v  -1.262304 75.812813 9.077332\r
+v  -1.156301 74.649612 8.316183\r
+v  -1.005755 73.405716 7.235175\r
+v  -0.842786 72.121498 6.065313\r
+v  -0.699513 70.837280 5.037602\r
+v  -0.608056 69.593391 4.383046\r
+v  -0.600534 68.430191 4.332651\r
+v  -0.709066 67.388016 5.117422\r
+v  -1.169678 78.851929 4.189994\r
+v  -1.938445 78.414864 6.943910\r
+v  -2.369077 77.735779 8.486671\r
+v  -2.524348 76.854958 9.043203\r
+v  -2.467033 75.812798 8.838432\r
+v  -2.259910 74.649597 8.097277\r
+v  -1.965752 73.405716 7.044665\r
+v  -1.647334 72.121483 5.905522\r
+v  -1.367432 70.837257 4.904771\r
+v  -1.188822 69.593384 4.267336\r
+v  -1.174278 68.430183 4.218141\r
+v  -1.386576 67.388008 4.982112\r
+v  -1.708817 78.851936 4.007034\r
+v  -2.831936 78.414894 6.640695\r
+v  -3.461070 77.735779 8.116081\r
+v  -3.687933 76.854973 8.648291\r
+v  -3.604241 75.812813 8.452425\r
+v  -3.301706 74.649612 7.743583\r
+v  -2.872042 73.405716 6.736865\r
+v  -2.406965 72.121498 5.647370\r
+v  -1.998187 70.837273 4.690196\r
+v  -1.737423 69.593384 4.080445\r
+v  -1.716386 68.430191 4.033215\r
+v  -2.026792 67.388016 4.763606\r
+v  -2.211209 78.851921 3.759058\r
+v  -3.664528 78.414856 6.229729\r
+v  -4.478641 77.735771 7.613795\r
+v  -4.772230 76.854958 8.113045\r
+v  -4.663979 75.812790 7.929260\r
+v  -4.272567 74.649597 7.264223\r
+v  -3.716680 73.405708 6.319721\r
+v  -3.114998 72.121483 5.297535\r
+v  -2.586204 70.837257 4.399450\r
+v  -2.248981 69.593384 3.827251\r
+v  -2.222010 68.430176 3.782721\r
+v  -2.623976 67.388000 4.467644\r
+v  -2.672140 78.851936 3.450776\r
+v  -4.428411 78.414864 5.718820\r
+v  -5.412244 77.735779 6.989367\r
+v  -5.767063 76.854965 7.447643\r
+v  -5.636296 75.812805 7.278886\r
+v  -5.163371 74.649605 6.668322\r
+v  -4.491714 73.405716 5.801183\r
+v  -3.764752 72.121490 4.862700\r
+v  -3.125911 70.837257 4.038107\r
+v  -2.718619 69.593384 3.512632\r
+v  -2.686303 68.430183 3.471506\r
+v  -3.172390 67.388016 4.099962\r
+v  -3.086899 78.851936 3.086899\r
+v  -5.115779 78.414864 5.115779\r
+v  -6.252335 77.735779 6.252335\r
+v  -6.662259 76.854965 6.662258\r
+v  -6.511249 75.812813 6.511249\r
+v  -5.964997 74.649605 5.964997\r
+v  -5.189198 73.405716 5.189198\r
+v  -4.349546 72.121498 4.349546\r
+v  -3.611736 70.837273 3.611736\r
+v  -3.141462 69.593391 3.141462\r
+v  -3.104417 68.430191 3.104417\r
+v  -3.666299 67.388016 3.666299\r
+v  -3.450776 78.851936 2.672140\r
+v  -5.718820 78.414864 4.428411\r
+v  -6.989367 77.735779 5.412244\r
+v  -7.447644 76.854965 5.767063\r
+v  -7.278886 75.812813 5.636296\r
+v  -6.668322 74.649597 5.163371\r
+v  -5.801183 73.405716 4.491714\r
+v  -4.862700 72.121490 3.764752\r
+v  -4.038107 70.837257 3.125911\r
+v  -3.512632 69.593384 2.718620\r
+v  -3.471506 68.430191 2.686303\r
+v  -4.099963 67.388008 3.172391\r
+v  -3.759058 78.851936 2.211209\r
+v  -6.229729 78.414864 3.664528\r
+v  -7.613796 77.735779 4.478641\r
+v  -8.113047 76.854965 4.772230\r
+v  -7.929260 75.812813 4.663979\r
+v  -7.264224 74.649605 4.272567\r
+v  -6.319722 73.405716 3.716680\r
+v  -5.297536 72.121498 3.114998\r
+v  -4.399451 70.837273 2.586204\r
+v  -3.827251 69.593384 2.248981\r
+v  -3.782721 68.430191 2.222010\r
+v  -4.467644 67.388016 2.623976\r
+v  -4.007034 78.851936 1.708818\r
+v  -6.640695 78.414864 2.831937\r
+v  -8.116080 77.735779 3.461071\r
+v  -8.648290 76.854965 3.687935\r
+v  -8.452425 75.812813 3.604242\r
+v  -7.743583 74.649597 3.301707\r
+v  -6.736865 73.405716 2.872044\r
+v  -5.647369 72.121490 2.406966\r
+v  -4.690197 70.837257 1.998187\r
+v  -4.080445 69.593384 1.737423\r
+v  -4.033215 68.430191 1.716387\r
+v  -4.763606 67.388008 2.026793\r
+v  -4.189994 78.851936 1.169679\r
+v  -6.943909 78.414864 1.938446\r
+v  -8.486670 77.735779 2.369078\r
+v  -9.043202 76.854965 2.524349\r
+v  -8.838429 75.812813 2.467035\r
+v  -8.097276 74.649597 2.259911\r
+v  -7.044665 73.405716 1.965752\r
+v  -5.905521 72.121490 1.647335\r
+v  -4.904771 70.837257 1.367433\r
+v  -4.267335 69.593384 1.188823\r
+v  -4.218141 68.430191 1.174278\r
+v  -4.982112 67.388008 1.386577\r
+v  -4.303226 78.851929 0.598502\r
+v  -7.131566 78.414864 0.991865\r
+v  -8.716026 77.735779 1.212206\r
+v  -9.287612 76.854958 1.291646\r
+v  -9.077330 75.812798 1.262305\r
+v  -8.316181 74.649597 1.156302\r
+v  -7.235175 73.405716 1.005756\r
+v  -6.065313 72.121498 0.842786\r
+v  -5.037602 70.837273 0.699513\r
+v  -4.383047 69.593384 0.608056\r
+v  -4.332651 68.430191 0.600534\r
+v  -5.117423 67.388016 0.709067\r
+v  -4.342015 78.851929 0.000001\r
+v  -7.195852 78.414864 0.000001\r
+v  -8.794599 77.735779 0.000002\r
+v  -9.371340 76.854965 0.000002\r
+v  -9.159172 75.812798 0.000002\r
+v  -8.391176 74.649605 0.000002\r
+v  -7.300443 73.405716 0.000001\r
+v  -6.120060 72.121498 0.000001\r
+v  -5.083117 70.837273 0.000001\r
+v  -4.422700 69.593391 0.000001\r
+v  -4.371898 68.430191 0.000001\r
+v  -5.163801 67.388016 0.000001\r
+v  -4.303226 78.851936 -0.598502\r
+v  -7.131566 78.414894 -0.991864\r
+v  -8.716028 77.735794 -1.212205\r
+v  -9.287612 76.854980 -1.291645\r
+v  -9.077331 75.812813 -1.262304\r
+v  -8.316182 74.649612 -1.156301\r
+v  -7.235176 73.405716 -1.005755\r
+v  -6.065313 72.121498 -0.842786\r
+v  -5.037603 70.837280 -0.699513\r
+v  -4.383047 69.593391 -0.608056\r
+v  -4.332651 68.430191 -0.600534\r
+v  -5.117423 67.388016 -0.709067\r
+v  -4.189994 78.851929 -1.169678\r
+v  -6.943910 78.414864 -1.938445\r
+v  -8.486671 77.735779 -2.369077\r
+v  -9.043203 76.854958 -2.524348\r
+v  -8.838431 75.812798 -2.467033\r
+v  -8.097276 74.649597 -2.259910\r
+v  -7.044666 73.405716 -1.965752\r
+v  -5.905522 72.121483 -1.647334\r
+v  -4.904771 70.837257 -1.367432\r
+v  -4.267336 69.593384 -1.188822\r
+v  -4.218141 68.430183 -1.174278\r
+v  -4.982112 67.388008 -1.386576\r
+v  -4.007034 78.851936 -1.708817\r
+v  -6.640695 78.414894 -2.831936\r
+v  -8.116080 77.735779 -3.461070\r
+v  -8.648290 76.854973 -3.687933\r
+v  -8.452425 75.812813 -3.604241\r
+v  -7.743583 74.649612 -3.301706\r
+v  -6.736865 73.405716 -2.872042\r
+v  -5.647370 72.121498 -2.406965\r
+v  -4.690197 70.837273 -1.998187\r
+v  -4.080445 69.593384 -1.737423\r
+v  -4.033215 68.430191 -1.716386\r
+v  -4.763607 67.388016 -2.026792\r
+v  -3.759058 78.851921 -2.211209\r
+v  -6.229729 78.414856 -3.664528\r
+v  -7.613796 77.735771 -4.478641\r
+v  -8.113045 76.854958 -4.772230\r
+v  -7.929260 75.812790 -4.663979\r
+v  -7.264224 74.649597 -4.272568\r
+v  -6.319721 73.405708 -3.716680\r
+v  -5.297535 72.121483 -3.114998\r
+v  -4.399451 70.837257 -2.586204\r
+v  -3.827251 69.593384 -2.248981\r
+v  -3.782721 68.430176 -2.222010\r
+v  -4.467644 67.388000 -2.623976\r
+v  -3.450776 78.851936 -2.672140\r
+v  -5.718820 78.414864 -4.428411\r
+v  -6.989367 77.735779 -5.412245\r
+v  -7.447644 76.854965 -5.767063\r
+v  -7.278886 75.812805 -5.636296\r
+v  -6.668322 74.649605 -5.163371\r
+v  -5.801183 73.405716 -4.491714\r
+v  -4.862700 72.121490 -3.764752\r
+v  -4.038107 70.837257 -3.125911\r
+v  -3.512632 69.593384 -2.718619\r
+v  -3.471506 68.430183 -2.686303\r
+v  -4.099962 67.388016 -3.172390\r
+v  -3.086899 78.851936 -3.086899\r
+v  -5.115779 78.414864 -5.115779\r
+v  -6.252335 77.735779 -6.252335\r
+v  -6.662259 76.854965 -6.662259\r
+v  -6.511249 75.812813 -6.511250\r
+v  -5.964997 74.649605 -5.964997\r
+v  -5.189198 73.405716 -5.189198\r
+v  -4.349546 72.121498 -4.349546\r
+v  -3.611736 70.837273 -3.611736\r
+v  -3.141462 69.593391 -3.141462\r
+v  -3.104417 68.430191 -3.104417\r
+v  -3.666299 67.388016 -3.666299\r
+v  -2.672140 78.851936 -3.450776\r
+v  -4.428411 78.414864 -5.718821\r
+v  -5.412244 77.735779 -6.989367\r
+v  -5.767063 76.854965 -7.447644\r
+v  -5.636296 75.812813 -7.278886\r
+v  -5.163371 74.649597 -6.668323\r
+v  -4.491714 73.405716 -5.801183\r
+v  -3.764752 72.121490 -4.862700\r
+v  -3.125911 70.837257 -4.038108\r
+v  -2.718620 69.593384 -3.512632\r
+v  -2.686303 68.430191 -3.471506\r
+v  -3.172391 67.388008 -4.099963\r
+v  -2.211209 78.851936 -3.759058\r
+v  -3.664528 78.414864 -6.229729\r
+v  -4.478641 77.735779 -7.613796\r
+v  -4.772230 76.854965 -8.113047\r
+v  -4.663979 75.812813 -7.929260\r
+v  -4.272567 74.649605 -7.264224\r
+v  -3.716680 73.405716 -6.319722\r
+v  -3.114998 72.121498 -5.297536\r
+v  -2.586204 70.837273 -4.399451\r
+v  -2.248981 69.593384 -3.827251\r
+v  -2.222010 68.430191 -3.782721\r
+v  -2.623976 67.388016 -4.467644\r
+v  -1.708818 78.851936 -4.007034\r
+v  -2.831937 78.414864 -6.640695\r
+v  -3.461071 77.735779 -8.116079\r
+v  -3.687935 76.854965 -8.648289\r
+v  -3.604242 75.812813 -8.452425\r
+v  -3.301707 74.649597 -7.743584\r
+v  -2.872044 73.405716 -6.736865\r
+v  -2.406966 72.121490 -5.647369\r
+v  -1.998188 70.837257 -4.690197\r
+v  -1.737423 69.593384 -4.080445\r
+v  -1.716387 68.430191 -4.033215\r
+v  -2.026793 67.388008 -4.763606\r
+v  -1.169679 78.851936 -4.189994\r
+v  -1.938446 78.414864 -6.943910\r
+v  -2.369078 77.735779 -8.486670\r
+v  -2.524349 76.854965 -9.043201\r
+v  -2.467035 75.812813 -8.838428\r
+v  -2.259911 74.649597 -8.097275\r
+v  -1.965752 73.405716 -7.044665\r
+v  -1.647335 72.121490 -5.905521\r
+v  -1.367433 70.837257 -4.904771\r
+v  -1.188823 69.593384 -4.267336\r
+v  -1.174279 68.430191 -4.218141\r
+v  -1.386577 67.388008 -4.982112\r
+v  -0.598503 78.851929 -4.303226\r
+v  -0.991865 78.414864 -7.131566\r
+v  -1.212206 77.735779 -8.716026\r
+v  -1.291647 76.854958 -9.287611\r
+v  -1.262305 75.812798 -9.077330\r
+v  -1.156302 74.649597 -8.316181\r
+v  -1.005756 73.405716 -7.235175\r
+v  -0.842787 72.121498 -6.065313\r
+v  -0.699513 70.837273 -5.037602\r
+v  -0.608056 69.593384 -4.383047\r
+v  -0.600534 68.430191 -4.332651\r
+v  -0.709067 67.388016 -5.117423\r
+v  -0.000001 78.851929 -4.342015\r
+v  -0.000001 78.414864 -7.195852\r
+v  -0.000002 77.735779 -8.794598\r
+v  -0.000002 76.854965 -9.371340\r
+v  -0.000002 75.812798 -9.159172\r
+v  -0.000002 74.649605 -8.391176\r
+v  -0.000001 73.405716 -7.300444\r
+v  -0.000001 72.121498 -6.120060\r
+v  -0.000001 70.837273 -5.083117\r
+v  -0.000001 69.593391 -4.422701\r
+v  -0.000001 68.430191 -4.371899\r
+v  -0.000001 67.388016 -5.163801\r
+v  0.598502 78.851936 -4.303226\r
+v  0.991864 78.414894 -7.131566\r
+v  1.212205 77.735794 -8.716028\r
+v  1.291645 76.854980 -9.287611\r
+v  1.262304 75.812813 -9.077330\r
+v  1.156301 74.649612 -8.316181\r
+v  1.005755 73.405716 -7.235176\r
+v  0.842786 72.121498 -6.065313\r
+v  0.699513 70.837280 -5.037603\r
+v  0.608056 69.593391 -4.383047\r
+v  0.600534 68.430191 -4.332651\r
+v  0.709066 67.388016 -5.117423\r
+v  1.169678 78.851929 -4.189995\r
+v  1.938445 78.414864 -6.943911\r
+v  2.369077 77.735779 -8.486671\r
+v  2.524348 76.854958 -9.043203\r
+v  2.467033 75.812798 -8.838430\r
+v  2.259910 74.649597 -8.097275\r
+v  1.965752 73.405716 -7.044666\r
+v  1.647334 72.121483 -5.905522\r
+v  1.367432 70.837257 -4.904771\r
+v  1.188822 69.593384 -4.267336\r
+v  1.174278 68.430183 -4.218141\r
+v  1.386576 67.388008 -4.982112\r
+v  1.708817 78.851936 -4.007034\r
+v  2.831936 78.414894 -6.640695\r
+v  3.461070 77.735779 -8.116079\r
+v  3.687933 76.854973 -8.648289\r
+v  3.604241 75.812813 -8.452425\r
+v  3.301706 74.649612 -7.743584\r
+v  2.872042 73.405716 -6.736865\r
+v  2.406965 72.121498 -5.647370\r
+v  1.998187 70.837273 -4.690197\r
+v  1.737423 69.593384 -4.080445\r
+v  1.716386 68.430191 -4.033216\r
+v  2.026792 67.388016 -4.763607\r
+v  2.211209 78.851921 -3.759058\r
+v  3.664528 78.414856 -6.229729\r
+v  4.478641 77.735771 -7.613796\r
+v  4.772230 76.854958 -8.113045\r
+v  4.663979 75.812790 -7.929260\r
+v  4.272567 74.649597 -7.264224\r
+v  3.716680 73.405708 -6.319721\r
+v  3.114998 72.121483 -5.297536\r
+v  2.586204 70.837257 -4.399451\r
+v  2.248981 69.593384 -3.827251\r
+v  2.222010 68.430176 -3.782721\r
+v  2.623976 67.388000 -4.467644\r
+v  2.672140 78.851936 -3.450776\r
+v  4.428411 78.414864 -5.718821\r
+v  5.412244 77.735779 -6.989367\r
+v  5.767063 76.854965 -7.447644\r
+v  5.636296 75.812805 -7.278886\r
+v  5.163371 74.649605 -6.668323\r
+v  4.491714 73.405716 -5.801183\r
+v  3.764752 72.121490 -4.862700\r
+v  3.125911 70.837257 -4.038107\r
+v  2.718619 69.593384 -3.512632\r
+v  2.686303 68.430183 -3.471506\r
+v  3.172390 67.388016 -4.099962\r
+v  3.086899 78.851936 -3.086899\r
+v  5.115779 78.414864 -5.115779\r
+v  6.252335 77.735779 -6.252335\r
+v  6.662259 76.854965 -6.662259\r
+v  6.511249 75.812813 -6.511250\r
+v  5.964997 74.649605 -5.964997\r
+v  5.189198 73.405716 -5.189198\r
+v  4.349546 72.121498 -4.349546\r
+v  3.611736 70.837273 -3.611736\r
+v  3.141462 69.593391 -3.141462\r
+v  3.104417 68.430191 -3.104417\r
+v  3.666299 67.388016 -3.666299\r
+v  3.450776 78.851936 -2.672140\r
+v  5.718820 78.414864 -4.428411\r
+v  6.989367 77.735779 -5.412245\r
+v  7.447644 76.854965 -5.767063\r
+v  7.278886 75.812813 -5.636296\r
+v  6.668322 74.649597 -5.163371\r
+v  5.801183 73.405716 -4.491714\r
+v  4.862700 72.121490 -3.764752\r
+v  4.038107 70.837257 -3.125911\r
+v  3.512632 69.593384 -2.718620\r
+v  3.471506 68.430191 -2.686303\r
+v  4.099963 67.388008 -3.172391\r
+v  3.759058 78.851936 -2.211209\r
+v  6.229729 78.414864 -3.664528\r
+v  7.613796 77.735779 -4.478641\r
+v  8.113047 76.854965 -4.772230\r
+v  7.929260 75.812813 -4.663979\r
+v  7.264224 74.649605 -4.272568\r
+v  6.319722 73.405716 -3.716680\r
+v  5.297536 72.121498 -3.114998\r
+v  4.399451 70.837273 -2.586204\r
+v  3.827251 69.593384 -2.248981\r
+v  3.782721 68.430191 -2.222010\r
+v  4.467644 67.388016 -2.623976\r
+v  4.007034 78.851936 -1.708818\r
+v  6.640695 78.414864 -2.831937\r
+v  8.116080 77.735779 -3.461071\r
+v  8.648290 76.854965 -3.687935\r
+v  8.452425 75.812813 -3.604242\r
+v  7.743583 74.649597 -3.301707\r
+v  6.736865 73.405716 -2.872044\r
+v  5.647369 72.121490 -2.406966\r
+v  4.690197 70.837257 -1.998188\r
+v  4.080445 69.593384 -1.737423\r
+v  4.033215 68.430191 -1.716387\r
+v  4.763606 67.388008 -2.026793\r
+v  4.189994 78.851936 -1.169679\r
+v  6.943909 78.414864 -1.938446\r
+v  8.486670 77.735779 -2.369078\r
+v  9.043202 76.854965 -2.524349\r
+v  8.838429 75.812813 -2.467035\r
+v  8.097276 74.649597 -2.259911\r
+v  7.044665 73.405716 -1.965753\r
+v  5.905521 72.121490 -1.647335\r
+v  4.904771 70.837257 -1.367433\r
+v  4.267335 69.593384 -1.188823\r
+v  4.218141 68.430191 -1.174279\r
+v  4.982112 67.388008 -1.386577\r
+v  4.303226 78.851929 -0.598503\r
+v  7.131566 78.414864 -0.991865\r
+v  8.716026 77.735779 -1.212206\r
+v  9.287612 76.854958 -1.291647\r
+v  9.077330 75.812798 -1.262305\r
+v  8.316181 74.649597 -1.156302\r
+v  7.235175 73.405716 -1.005756\r
+v  6.065313 72.121498 -0.842787\r
+v  5.037602 70.837273 -0.699514\r
+v  4.383047 69.593384 -0.608056\r
+v  4.332651 68.430191 -0.600534\r
+v  5.117423 67.388016 -0.709067\r
+v  6.807373 66.496002 -0.000000\r
+v  9.060557 65.738457 -0.000000\r
+v  11.779922 65.088509 -0.000000\r
+v  14.822021 64.519234 -0.000000\r
+v  18.043423 64.003746 -0.000000\r
+v  21.300680 63.515160 -0.000000\r
+v  24.450356 63.026573 -0.000000\r
+v  27.349018 62.511086 -0.000000\r
+v  29.853222 61.941803 -0.000000\r
+v  31.819530 61.291855 -0.000000\r
+v  33.104507 60.534313 -0.000000\r
+v  33.564705 59.642311 -0.000000\r
+v  6.746233 66.496010 0.934753\r
+v  8.979181 65.738464 1.244149\r
+v  11.674121 65.088509 1.617558\r
+v  14.688896 64.519234 2.035283\r
+v  17.881365 64.003761 2.477629\r
+v  21.109367 63.515160 2.924899\r
+v  24.230757 63.026573 3.357397\r
+v  27.103382 62.511093 3.755425\r
+v  29.585096 61.941818 4.099290\r
+v  31.533745 61.291862 4.369293\r
+v  32.807175 60.534321 4.545739\r
+v  33.263241 59.642311 4.608932\r
+v  6.567853 66.495995 1.827905\r
+v  8.741759 65.738457 2.432928\r
+v  11.365441 65.088493 3.163126\r
+v  14.300503 64.519226 3.979986\r
+v  17.408558 64.003746 4.844993\r
+v  20.551210 63.515160 5.719625\r
+v  23.590065 63.026573 6.565372\r
+v  26.386736 62.511078 7.343717\r
+v  28.802830 61.941803 8.016142\r
+v  30.699951 61.291855 8.544132\r
+v  31.939709 60.534313 8.889172\r
+v  32.383724 59.642303 9.012745\r
+v  6.279801 66.496002 2.671894\r
+v  8.358364 65.738457 3.556269\r
+v  10.866977 65.088509 4.623619\r
+v  13.673313 64.519234 5.817642\r
+v  16.645054 64.003746 7.082042\r
+v  19.649876 63.515160 8.360518\r
+v  22.555456 63.026573 9.596766\r
+v  25.229469 62.511086 10.734489\r
+v  27.539598 61.941803 11.717390\r
+v  29.353514 61.291855 12.489166\r
+v  30.538906 60.534313 12.993517\r
+v  30.963442 59.642311 13.174147\r
+v  5.889637 66.495987 3.459154\r
+v  7.839059 65.738449 4.604105\r
+v  10.191812 65.088493 5.985945\r
+v  12.823790 64.519226 7.531781\r
+v  15.610899 64.003746 9.168730\r
+v  18.429029 63.515160 10.823900\r
+v  21.154083 63.026573 12.424404\r
+v  23.661961 62.511078 13.897350\r
+v  25.828558 61.941803 15.169857\r
+v  27.529781 61.291855 16.169033\r
+v  28.641518 60.534313 16.821989\r
+v  29.039680 59.642303 17.055840\r
+v  5.404928 66.496002 4.182122\r
+v  7.193915 65.738457 5.566370\r
+v  9.353037 65.088509 7.237017\r
+v  11.768411 64.519234 9.105936\r
+v  14.326141 64.003746 11.085011\r
+v  16.912344 63.515160 13.086113\r
+v  19.413128 63.026573 15.021124\r
+v  21.714611 62.511086 16.801922\r
+v  23.702902 61.941803 18.340385\r
+v  25.264116 61.291862 19.548389\r
+v  26.284359 60.534325 20.337816\r
+v  26.649752 59.642315 20.620541\r
+v  4.833235 66.496002 4.833235\r
+v  6.432997 65.738457 6.432997\r
+v  8.363744 65.088501 8.363745\r
+v  10.523636 64.519226 10.523636\r
+v  12.810829 64.003746 12.810829\r
+v  15.123482 63.515152 15.123482\r
+v  17.359755 63.026573 17.359755\r
+v  19.417801 62.511086 19.417801\r
+v  21.195789 61.941803 21.195789\r
+v  22.591866 61.291851 22.591866\r
+v  23.504200 60.534313 23.504200\r
+v  23.830942 59.642311 23.830942\r
+v  4.182122 66.495995 5.404928\r
+v  5.566370 65.738457 7.193915\r
+v  7.237017 65.088493 9.353039\r
+v  9.105937 64.519226 11.768412\r
+v  11.085011 64.003746 14.326143\r
+v  13.086112 63.515160 16.912344\r
+v  15.021124 63.026573 19.413128\r
+v  16.801920 62.511086 21.714611\r
+v  18.340382 61.941803 23.702902\r
+v  19.548389 61.291855 25.264116\r
+v  20.337816 60.534313 26.284359\r
+v  20.620539 59.642311 26.649752\r
+v  3.459154 66.496002 5.889637\r
+v  4.604106 65.738449 7.839059\r
+v  5.985946 65.088501 10.191813\r
+v  7.531783 64.519211 12.823792\r
+v  9.168732 64.003746 15.610901\r
+v  10.823901 63.515152 18.429033\r
+v  12.424403 63.026573 21.154087\r
+v  13.897353 62.511086 23.661966\r
+v  15.169860 61.941803 25.828564\r
+v  16.169035 61.291851 27.529787\r
+v  16.821993 60.534313 28.641527\r
+v  17.055843 59.642311 29.039686\r
+v  2.671894 66.495995 6.279799\r
+v  3.556270 65.738457 8.358364\r
+v  4.623620 65.088493 10.866978\r
+v  5.817645 64.519226 13.673313\r
+v  7.082044 64.003746 16.645054\r
+v  8.360518 63.515160 19.649876\r
+v  9.596766 63.026573 22.555454\r
+v  10.734490 62.511086 25.229469\r
+v  11.717392 61.941803 27.539598\r
+v  12.489168 61.291855 29.353514\r
+v  12.993523 60.534313 30.538906\r
+v  13.174150 59.642311 30.963442\r
+v  1.827906 66.495995 6.567853\r
+v  2.432929 65.738457 8.741760\r
+v  3.163129 65.088509 11.365442\r
+v  3.979989 64.519226 14.300503\r
+v  4.844995 64.003754 17.408558\r
+v  5.719629 63.515160 20.551210\r
+v  6.565377 63.026573 23.590065\r
+v  7.343721 62.511093 26.386736\r
+v  8.016148 61.941818 28.802830\r
+v  8.544137 61.291862 30.699951\r
+v  8.889176 60.534321 31.939709\r
+v  9.012749 59.642311 32.383724\r
+v  0.934754 66.496002 6.746233\r
+v  1.244150 65.738457 8.979181\r
+v  1.617560 65.088509 11.674122\r
+v  2.035286 64.519234 14.688898\r
+v  2.477632 64.003746 17.881367\r
+v  2.924902 63.515160 21.109369\r
+v  3.357400 63.026573 24.230759\r
+v  3.755430 62.511078 27.103382\r
+v  4.099295 61.941803 29.585100\r
+v  4.369298 61.291855 31.533745\r
+v  4.545744 60.534313 32.807182\r
+v  4.608937 59.642303 33.263245\r
+v  0.000001 66.496010 6.807371\r
+v  0.000002 65.738464 9.060558\r
+v  0.000002 65.088509 11.779921\r
+v  0.000003 64.519234 14.822021\r
+v  0.000004 64.003761 18.043423\r
+v  0.000004 63.515160 21.300680\r
+v  0.000005 63.026573 24.450357\r
+v  0.000005 62.511093 27.349022\r
+v  0.000006 61.941818 29.853224\r
+v  0.000006 61.291862 31.819530\r
+v  0.000007 60.534325 33.104507\r
+v  0.000007 59.642315 33.564709\r
+v  -0.934753 66.496010 6.746233\r
+v  -1.244149 65.738464 8.979181\r
+v  -1.617558 65.088509 11.674122\r
+v  -2.035283 64.519234 14.688896\r
+v  -2.477629 64.003761 17.881365\r
+v  -2.924899 63.515160 21.109367\r
+v  -3.357397 63.026573 24.230757\r
+v  -3.755425 62.511093 27.103382\r
+v  -4.099290 61.941818 29.585096\r
+v  -4.369293 61.291862 31.533745\r
+v  -4.545739 60.534321 32.807175\r
+v  -4.608932 59.642311 33.263241\r
+v  -1.827905 66.495995 6.567853\r
+v  -2.432928 65.738457 8.741760\r
+v  -3.163126 65.088493 11.365442\r
+v  -3.979986 64.519226 14.300503\r
+v  -4.844993 64.003746 17.408558\r
+v  -5.719626 63.515160 20.551210\r
+v  -6.565372 63.026573 23.590065\r
+v  -7.343717 62.511078 26.386736\r
+v  -8.016142 61.941803 28.802830\r
+v  -8.544132 61.291855 30.699951\r
+v  -8.889172 60.534313 31.939709\r
+v  -9.012744 59.642303 32.383724\r
+v  -2.671894 66.496002 6.279800\r
+v  -3.556269 65.738457 8.358364\r
+v  -4.623619 65.088509 10.866978\r
+v  -5.817642 64.519234 13.673313\r
+v  -7.082042 64.003746 16.645054\r
+v  -8.360517 63.515160 19.649876\r
+v  -9.596765 63.026573 22.555456\r
+v  -10.734488 62.511086 25.229469\r
+v  -11.717389 61.941803 27.539598\r
+v  -12.489166 61.291855 29.353514\r
+v  -12.993517 60.534313 30.538906\r
+v  -13.174147 59.642311 30.963442\r
+v  -3.459154 66.495987 5.889637\r
+v  -4.604105 65.738449 7.839059\r
+v  -5.985945 65.088493 10.191813\r
+v  -7.531782 64.519226 12.823790\r
+v  -9.168730 64.003746 15.610899\r
+v  -10.823899 63.515160 18.429029\r
+v  -12.424403 63.026573 21.154083\r
+v  -13.897350 62.511078 23.661961\r
+v  -15.169857 61.941803 25.828558\r
+v  -16.169033 61.291855 27.529781\r
+v  -16.821989 60.534313 28.641518\r
+v  -17.055840 59.642303 29.039680\r
+v  -4.182122 66.496002 5.404928\r
+v  -5.566370 65.738457 7.193915\r
+v  -7.237017 65.088509 9.353037\r
+v  -9.105935 64.519234 11.768412\r
+v  -11.085011 64.003746 14.326141\r
+v  -13.086113 63.515160 16.912344\r
+v  -15.021124 63.026573 19.413128\r
+v  -16.801922 62.511086 21.714611\r
+v  -18.340385 61.941803 23.702902\r
+v  -19.548389 61.291862 25.264116\r
+v  -20.337816 60.534325 26.284359\r
+v  -20.620541 59.642315 26.649752\r
+v  -4.833235 66.496002 4.833235\r
+v  -6.432997 65.738457 6.432997\r
+v  -8.363744 65.088501 8.363745\r
+v  -10.523636 64.519226 10.523636\r
+v  -12.810829 64.003746 12.810829\r
+v  -15.123482 63.515152 15.123482\r
+v  -17.359755 63.026573 17.359755\r
+v  -19.417801 62.511086 19.417801\r
+v  -21.195789 61.941803 21.195789\r
+v  -22.591866 61.291851 22.591866\r
+v  -23.504200 60.534313 23.504200\r
+v  -23.830942 59.642311 23.830942\r
+v  -5.404928 66.495995 4.182122\r
+v  -7.193915 65.738457 5.566370\r
+v  -9.353039 65.088493 7.237017\r
+v  -11.768411 64.519226 9.105938\r
+v  -14.326142 64.003746 11.085011\r
+v  -16.912344 63.515160 13.086113\r
+v  -19.413128 63.026573 15.021124\r
+v  -21.714611 62.511086 16.801920\r
+v  -23.702902 61.941803 18.340382\r
+v  -25.264116 61.291855 19.548389\r
+v  -26.284359 60.534313 20.337816\r
+v  -26.649752 59.642311 20.620539\r
+v  -5.889637 66.496002 3.459154\r
+v  -7.839059 65.738449 4.604106\r
+v  -10.191813 65.088501 5.985946\r
+v  -12.823792 64.519211 7.531783\r
+v  -15.610900 64.003746 9.168732\r
+v  -18.429033 63.515152 10.823902\r
+v  -21.154087 63.026573 12.424404\r
+v  -23.661966 62.511086 13.897354\r
+v  -25.828564 61.941803 15.169861\r
+v  -27.529787 61.291851 16.169035\r
+v  -28.641527 60.534313 16.821993\r
+v  -29.039686 59.642311 17.055843\r
+v  -6.279800 66.495995 2.671894\r
+v  -8.358364 65.738457 3.556270\r
+v  -10.866977 65.088493 4.623620\r
+v  -13.673313 64.519226 5.817645\r
+v  -16.645054 64.003746 7.082044\r
+v  -19.649876 63.515160 8.360519\r
+v  -22.555454 63.026573 9.596767\r
+v  -25.229469 62.511086 10.734491\r
+v  -27.539598 61.941803 11.717392\r
+v  -29.353514 61.291855 12.489168\r
+v  -30.538906 60.534313 12.993523\r
+v  -30.963442 59.642311 13.174150\r
+v  -6.567853 66.495995 1.827906\r
+v  -8.741759 65.738457 2.432929\r
+v  -11.365441 65.088509 3.163129\r
+v  -14.300503 64.519226 3.979989\r
+v  -17.408558 64.003754 4.844995\r
+v  -20.551210 63.515160 5.719629\r
+v  -23.590065 63.026573 6.565376\r
+v  -26.386736 62.511093 7.343720\r
+v  -28.802830 61.941818 8.016148\r
+v  -30.699951 61.291862 8.544138\r
+v  -31.939709 60.534321 8.889177\r
+v  -32.383724 59.642311 9.012749\r
+v  -6.746233 66.496002 0.934754\r
+v  -8.979180 65.738457 1.244150\r
+v  -11.674121 65.088509 1.617559\r
+v  -14.688898 64.519234 2.035286\r
+v  -17.881367 64.003746 2.477632\r
+v  -21.109369 63.515160 2.924902\r
+v  -24.230759 63.026573 3.357400\r
+v  -27.103382 62.511078 3.755430\r
+v  -29.585100 61.941803 4.099295\r
+v  -31.533745 61.291855 4.369298\r
+v  -32.807182 60.534313 4.545744\r
+v  -33.263245 59.642303 4.608937\r
+v  -6.807372 66.496010 0.000001\r
+v  -9.060557 65.738464 0.000002\r
+v  -11.779920 65.088509 0.000002\r
+v  -14.822021 64.519234 0.000003\r
+v  -18.043423 64.003761 0.000004\r
+v  -21.300680 63.515160 0.000004\r
+v  -24.450357 63.026573 0.000005\r
+v  -27.349022 62.511093 0.000005\r
+v  -29.853224 61.941818 0.000006\r
+v  -31.819530 61.291862 0.000006\r
+v  -33.104507 60.534325 0.000007\r
+v  -33.564709 59.642315 0.000007\r
+v  -6.746233 66.496010 -0.934753\r
+v  -8.979181 65.738464 -1.244149\r
+v  -11.674121 65.088509 -1.617558\r
+v  -14.688896 64.519234 -2.035283\r
+v  -17.881365 64.003761 -2.477629\r
+v  -21.109367 63.515160 -2.924899\r
+v  -24.230757 63.026573 -3.357397\r
+v  -27.103382 62.511093 -3.755425\r
+v  -29.585096 61.941818 -4.099290\r
+v  -31.533745 61.291862 -4.369293\r
+v  -32.807175 60.534321 -4.545739\r
+v  -33.263241 59.642311 -4.608932\r
+v  -6.567853 66.495995 -1.827906\r
+v  -8.741759 65.738457 -2.432928\r
+v  -11.365441 65.088493 -3.163126\r
+v  -14.300503 64.519226 -3.979986\r
+v  -17.408558 64.003746 -4.844994\r
+v  -20.551210 63.515160 -5.719626\r
+v  -23.590065 63.026573 -6.565372\r
+v  -26.386736 62.511078 -7.343718\r
+v  -28.802830 61.941803 -8.016142\r
+v  -30.699951 61.291855 -8.544132\r
+v  -31.939709 60.534313 -8.889172\r
+v  -32.383724 59.642303 -9.012743\r
+v  -6.279801 66.496002 -2.671894\r
+v  -8.358364 65.738457 -3.556269\r
+v  -10.866977 65.088509 -4.623619\r
+v  -13.673313 64.519234 -5.817642\r
+v  -16.645054 64.003746 -7.082043\r
+v  -19.649876 63.515160 -8.360516\r
+v  -22.555456 63.026573 -9.596764\r
+v  -25.229469 62.511086 -10.734488\r
+v  -27.539598 61.941803 -11.717388\r
+v  -29.353514 61.291855 -12.489166\r
+v  -30.538906 60.534313 -12.993517\r
+v  -30.963442 59.642311 -13.174147\r
+v  -5.889637 66.495987 -3.459154\r
+v  -7.839059 65.738449 -4.604106\r
+v  -10.191812 65.088493 -5.985945\r
+v  -12.823790 64.519226 -7.531782\r
+v  -15.610899 64.003746 -9.168730\r
+v  -18.429029 63.515160 -10.823898\r
+v  -21.154083 63.026573 -12.424402\r
+v  -23.661961 62.511078 -13.897350\r
+v  -25.828558 61.941803 -15.169857\r
+v  -27.529781 61.291855 -16.169033\r
+v  -28.641518 60.534313 -16.821989\r
+v  -29.039680 59.642303 -17.055840\r
+v  -5.404928 66.496002 -4.182122\r
+v  -7.193915 65.738457 -5.566371\r
+v  -9.353037 65.088509 -7.237017\r
+v  -11.768411 64.519234 -9.105934\r
+v  -14.326141 64.003746 -11.085011\r
+v  -16.912344 63.515160 -13.086113\r
+v  -19.413128 63.026573 -15.021124\r
+v  -21.714611 62.511086 -16.801922\r
+v  -23.702902 61.941803 -18.340385\r
+v  -25.264116 61.291862 -19.548389\r
+v  -26.284359 60.534325 -20.337816\r
+v  -26.649752 59.642315 -20.620541\r
+v  -4.833235 66.496002 -4.833235\r
+v  -6.432997 65.738457 -6.432997\r
+v  -8.363744 65.088501 -8.363743\r
+v  -10.523636 64.519226 -10.523636\r
+v  -12.810829 64.003746 -12.810829\r
+v  -15.123482 63.515152 -15.123482\r
+v  -17.359755 63.026573 -17.359755\r
+v  -19.417801 62.511086 -19.417801\r
+v  -21.195789 61.941803 -21.195789\r
+v  -22.591866 61.291851 -22.591866\r
+v  -23.504200 60.534313 -23.504200\r
+v  -23.830942 59.642311 -23.830942\r
+v  -4.182122 66.495995 -5.404928\r
+v  -5.566370 65.738457 -7.193915\r
+v  -7.237017 65.088493 -9.353039\r
+v  -9.105937 64.519226 -11.768410\r
+v  -11.085011 64.003746 -14.326141\r
+v  -13.086112 63.515160 -16.912344\r
+v  -15.021124 63.026573 -19.413128\r
+v  -16.801920 62.511086 -21.714611\r
+v  -18.340382 61.941803 -23.702902\r
+v  -19.548389 61.291855 -25.264116\r
+v  -20.337816 60.534313 -26.284359\r
+v  -20.620539 59.642311 -26.649752\r
+v  -3.459154 66.496002 -5.889638\r
+v  -4.604106 65.738449 -7.839060\r
+v  -5.985946 65.088501 -10.191813\r
+v  -7.531783 64.519211 -12.823792\r
+v  -9.168732 64.003746 -15.610899\r
+v  -10.823901 63.515152 -18.429033\r
+v  -12.424403 63.026573 -21.154087\r
+v  -13.897353 62.511086 -23.661966\r
+v  -15.169860 61.941803 -25.828564\r
+v  -16.169035 61.291851 -27.529787\r
+v  -16.821993 60.534313 -28.641527\r
+v  -17.055843 59.642311 -29.039686\r
+v  -2.671894 66.495995 -6.279800\r
+v  -3.556270 65.738457 -8.358364\r
+v  -4.623620 65.088493 -10.866976\r
+v  -5.817645 64.519226 -13.673313\r
+v  -7.082044 64.003746 -16.645054\r
+v  -8.360518 63.515160 -19.649876\r
+v  -9.596766 63.026573 -22.555454\r
+v  -10.734490 62.511086 -25.229469\r
+v  -11.717392 61.941803 -27.539598\r
+v  -12.489168 61.291855 -29.353514\r
+v  -12.993523 60.534313 -30.538906\r
+v  -13.174150 59.642311 -30.963442\r
+v  -1.827906 66.495995 -6.567854\r
+v  -2.432929 65.738457 -8.741758\r
+v  -3.163129 65.088509 -11.365440\r
+v  -3.979989 64.519226 -14.300503\r
+v  -4.844995 64.003754 -17.408558\r
+v  -5.719629 63.515160 -20.551210\r
+v  -6.565377 63.026573 -23.590065\r
+v  -7.343721 62.511093 -26.386736\r
+v  -8.016148 61.941818 -28.802830\r
+v  -8.544137 61.291862 -30.699951\r
+v  -8.889176 60.534321 -31.939709\r
+v  -9.012749 59.642311 -32.383724\r
+v  -0.934754 66.496002 -6.746233\r
+v  -1.244150 65.738457 -8.979179\r
+v  -1.617560 65.088509 -11.674120\r
+v  -2.035286 64.519234 -14.688898\r
+v  -2.477632 64.003746 -17.881367\r
+v  -2.924902 63.515160 -21.109369\r
+v  -3.357400 63.026573 -24.230759\r
+v  -3.755430 62.511078 -27.103382\r
+v  -4.099295 61.941803 -29.585100\r
+v  -4.369298 61.291855 -31.533745\r
+v  -4.545744 60.534313 -32.807182\r
+v  -4.608937 59.642303 -33.263245\r
+v  -0.000001 66.496010 -6.807372\r
+v  -0.000002 65.738464 -9.060556\r
+v  -0.000002 65.088509 -11.779919\r
+v  -0.000003 64.519234 -14.822021\r
+v  -0.000004 64.003761 -18.043423\r
+v  -0.000004 63.515160 -21.300680\r
+v  -0.000005 63.026573 -24.450357\r
+v  -0.000005 62.511093 -27.349022\r
+v  -0.000006 61.941818 -29.853224\r
+v  -0.000006 61.291862 -31.819530\r
+v  -0.000007 60.534325 -33.104507\r
+v  -0.000007 59.642315 -33.564709\r
+v  0.934753 66.496010 -6.746233\r
+v  1.244149 65.738464 -8.979181\r
+v  1.617558 65.088509 -11.674120\r
+v  2.035283 64.519234 -14.688896\r
+v  2.477629 64.003761 -17.881365\r
+v  2.924899 63.515160 -21.109367\r
+v  3.357397 63.026573 -24.230757\r
+v  3.755425 62.511093 -27.103382\r
+v  4.099290 61.941818 -29.585096\r
+v  4.369293 61.291862 -31.533745\r
+v  4.545739 60.534321 -32.807175\r
+v  4.608932 59.642311 -33.263241\r
+v  1.827905 66.495995 -6.567854\r
+v  2.432928 65.738457 -8.741758\r
+v  3.163126 65.088493 -11.365440\r
+v  3.979986 64.519226 -14.300503\r
+v  4.844993 64.003746 -17.408558\r
+v  5.719626 63.515160 -20.551210\r
+v  6.565372 63.026573 -23.590065\r
+v  7.343717 62.511078 -26.386736\r
+v  8.016142 61.941803 -28.802830\r
+v  8.544132 61.291855 -30.699951\r
+v  8.889172 60.534313 -31.939709\r
+v  9.012744 59.642303 -32.383724\r
+v  2.671894 66.496002 -6.279801\r
+v  3.556269 65.738457 -8.358364\r
+v  4.623619 65.088509 -10.866976\r
+v  5.817642 64.519234 -13.673313\r
+v  7.082042 64.003746 -16.645054\r
+v  8.360517 63.515160 -19.649876\r
+v  9.596765 63.026573 -22.555456\r
+v  10.734488 62.511086 -25.229469\r
+v  11.717389 61.941803 -27.539598\r
+v  12.489166 61.291855 -29.353514\r
+v  12.993517 60.534313 -30.538906\r
+v  13.174147 59.642311 -30.963442\r
+v  3.459154 66.495987 -5.889637\r
+v  4.604105 65.738449 -7.839059\r
+v  5.985945 65.088493 -10.191811\r
+v  7.531782 64.519226 -12.823790\r
+v  9.168730 64.003746 -15.610899\r
+v  10.823899 63.515160 -18.429029\r
+v  12.424403 63.026573 -21.154083\r
+v  13.897350 62.511078 -23.661961\r
+v  15.169857 61.941803 -25.828558\r
+v  16.169033 61.291855 -27.529781\r
+v  16.821989 60.534313 -28.641518\r
+v  17.055840 59.642303 -29.039680\r
+v  4.182122 66.496002 -5.404928\r
+v  5.566370 65.738457 -7.193915\r
+v  7.237017 65.088509 -9.353037\r
+v  9.105935 64.519234 -11.768410\r
+v  11.085011 64.003746 -14.326141\r
+v  13.086113 63.515160 -16.912344\r
+v  15.021124 63.026573 -19.413128\r
+v  16.801922 62.511086 -21.714611\r
+v  18.340385 61.941803 -23.702902\r
+v  19.548389 61.291862 -25.264116\r
+v  20.337816 60.534325 -26.284359\r
+v  20.620541 59.642315 -26.649752\r
+v  4.833235 66.496002 -4.833235\r
+v  6.432997 65.738457 -6.432997\r
+v  8.363744 65.088501 -8.363743\r
+v  10.523636 64.519226 -10.523636\r
+v  12.810829 64.003746 -12.810829\r
+v  15.123482 63.515152 -15.123482\r
+v  17.359755 63.026573 -17.359755\r
+v  19.417801 62.511086 -19.417801\r
+v  21.195789 61.941803 -21.195789\r
+v  22.591866 61.291851 -22.591866\r
+v  23.504200 60.534313 -23.504200\r
+v  23.830942 59.642311 -23.830942\r
+v  5.404928 66.495995 -4.182122\r
+v  7.193915 65.738457 -5.566371\r
+v  9.353039 65.088493 -7.237017\r
+v  11.768411 64.519226 -9.105936\r
+v  14.326142 64.003746 -11.085011\r
+v  16.912344 63.515160 -13.086111\r
+v  19.413128 63.026573 -15.021124\r
+v  21.714611 62.511086 -16.801920\r
+v  23.702902 61.941803 -18.340382\r
+v  25.264116 61.291855 -19.548389\r
+v  26.284359 60.534313 -20.337816\r
+v  26.649752 59.642311 -20.620539\r
+v  5.889637 66.496002 -3.459154\r
+v  7.839059 65.738449 -4.604106\r
+v  10.191813 65.088501 -5.985946\r
+v  12.823792 64.519211 -7.531783\r
+v  15.610900 64.003746 -9.168732\r
+v  18.429033 63.515152 -10.823900\r
+v  21.154087 63.026573 -12.424402\r
+v  23.661966 62.511086 -13.897352\r
+v  25.828564 61.941803 -15.169859\r
+v  27.529787 61.291851 -16.169035\r
+v  28.641527 60.534313 -16.821993\r
+v  29.039686 59.642311 -17.055843\r
+v  6.279800 66.495995 -2.671894\r
+v  8.358364 65.738457 -3.556270\r
+v  10.866977 65.088493 -4.623620\r
+v  13.673313 64.519226 -5.817645\r
+v  16.645054 64.003746 -7.082044\r
+v  19.649876 63.515160 -8.360518\r
+v  22.555454 63.026573 -9.596766\r
+v  25.229469 62.511086 -10.734489\r
+v  27.539598 61.941803 -11.717392\r
+v  29.353514 61.291855 -12.489168\r
+v  30.538906 60.534313 -12.993523\r
+v  30.963442 59.642311 -13.174149\r
+v  6.567853 66.495995 -1.827907\r
+v  8.741759 65.738457 -2.432929\r
+v  11.365441 65.088509 -3.163129\r
+v  14.300503 64.519226 -3.979989\r
+v  17.408558 64.003754 -4.844995\r
+v  20.551210 63.515160 -5.719629\r
+v  23.590065 63.026573 -6.565377\r
+v  26.386736 62.511093 -7.343721\r
+v  28.802830 61.941818 -8.016148\r
+v  30.699951 61.291862 -8.544136\r
+v  31.939709 60.534321 -8.889175\r
+v  32.383724 59.642311 -9.012749\r
+v  6.746233 66.496002 -0.934754\r
+v  8.979180 65.738457 -1.244150\r
+v  11.674121 65.088509 -1.617560\r
+v  14.688898 64.519234 -2.035286\r
+v  17.881367 64.003746 -2.477632\r
+v  21.109369 63.515160 -2.924902\r
+v  24.230759 63.026573 -3.357400\r
+v  27.103382 62.511078 -3.755430\r
+v  29.585100 61.941803 -4.099295\r
+v  31.533745 61.291855 -4.369298\r
+v  32.807182 60.534313 -4.545744\r
+v  33.263245 59.642303 -4.608937\r
+v  4.175292 66.220215 -0.000003\r
+v  4.137718 66.219955 0.579769\r
+v  4.028358 66.219543 1.129795\r
+v  3.852195 66.219147 1.647351\r
+v  3.613852 66.218819 2.129044\r
+v  3.317832 66.218651 2.570930\r
+v  2.968682 66.218590 2.968678\r
+v  2.570909 66.218651 3.317835\r
+v  2.129032 66.218857 3.613835\r
+v  1.647353 66.219162 3.852169\r
+v  1.129786 66.219559 4.028337\r
+v  0.579775 66.219971 4.137702\r
+v  0.000005 66.220215 4.175292\r
+v  -0.579770 66.219955 4.137717\r
+v  -1.129795 66.219543 4.028358\r
+v  -1.647351 66.219147 3.852194\r
+v  -2.129044 66.218819 3.613852\r
+v  -2.570930 66.218651 3.317832\r
+v  -2.968678 66.218590 2.968682\r
+v  -3.317836 66.218651 2.570909\r
+v  -3.613835 66.218857 2.129032\r
+v  -3.852170 66.219162 1.647353\r
+v  -4.028337 66.219559 1.129786\r
+v  -4.137702 66.219971 0.579775\r
+v  -4.175293 66.220215 0.000005\r
+v  -4.137718 66.219955 -0.579770\r
+v  -4.028358 66.219543 -1.129795\r
+v  -3.852195 66.219147 -1.647351\r
+v  -3.613852 66.218819 -2.129044\r
+v  -3.317832 66.218651 -2.570930\r
+v  -2.968681 66.218590 -2.968678\r
+v  -2.570910 66.218651 -3.317836\r
+v  -2.129032 66.218857 -3.613835\r
+v  -1.647353 66.219162 -3.852170\r
+v  -1.129785 66.219559 -4.028337\r
+v  -0.579774 66.219971 -4.137703\r
+v  -0.000005 66.220215 -4.175293\r
+v  0.579769 66.219955 -4.137719\r
+v  1.129795 66.219543 -4.028358\r
+v  1.647351 66.219147 -3.852195\r
+v  2.129043 66.218819 -3.613852\r
+v  2.570930 66.218651 -3.317832\r
+v  2.968678 66.218590 -2.968682\r
+v  3.317836 66.218651 -2.570909\r
+v  3.613835 66.218857 -2.129032\r
+v  3.852170 66.219162 -1.647353\r
+v  4.028337 66.219559 -1.129786\r
+v  4.137702 66.219971 -0.579775\r
+v  6.201021 65.091286 0.000005\r
+v  8.641148 64.267067 0.000004\r
+v  11.462789 63.591736 -0.000000\r
+v  14.561222 63.011623 0.000001\r
+v  17.809366 62.491756 0.000003\r
+v  21.069777 62.002682 -0.000000\r
+v  24.198446 61.517452 0.000000\r
+v  27.043957 61.011806 0.000003\r
+v  29.440260 60.468586 0.000002\r
+v  31.181738 59.901127 0.000001\r
+v  31.984381 59.492096 -0.000000\r
+v  32.204998 58.940819 -0.000001\r
+v  6.145373 65.091171 0.855437\r
+v  8.563578 64.267014 1.189293\r
+v  11.359868 63.591705 1.576076\r
+v  14.430465 63.011604 2.001174\r
+v  17.649429 62.491753 2.447023\r
+v  20.880548 62.002666 2.894708\r
+v  23.981119 61.517437 3.324461\r
+v  26.801065 61.011787 3.715542\r
+v  29.175833 60.468559 4.045304\r
+v  30.901613 59.901051 4.285910\r
+v  31.696806 59.491966 4.399200\r
+v  31.915375 58.940559 4.430877\r
+v  5.983104 65.090942 1.670440\r
+v  8.337337 64.266899 2.324025\r
+v  11.059649 63.591625 3.080790\r
+v  14.049033 63.011551 3.912279\r
+v  17.182875 62.491703 4.784228\r
+v  20.328558 62.002632 5.659685\r
+v  23.347149 61.517395 6.499983\r
+v  26.092556 61.011715 7.264530\r
+v  28.404572 60.468441 7.908945\r
+v  30.084745 59.900810 8.378545\r
+v  30.858644 59.491493 8.598101\r
+v  31.071236 58.939999 8.659134\r
+v  5.721213 65.090729 2.439314\r
+v  7.972076 64.266785 3.395432\r
+v  10.574908 63.591576 4.502018\r
+v  13.433131 63.011517 5.717649\r
+v  16.429502 62.491665 6.992306\r
+v  19.437225 62.002598 8.271993\r
+v  22.323454 61.517353 9.500188\r
+v  24.948500 61.011662 10.617534\r
+v  27.159210 60.468327 11.559056\r
+v  28.765854 59.900555 12.244556\r
+v  29.505793 59.490963 12.563400\r
+v  29.708918 58.939430 12.651628\r
+v  5.366520 65.090538 3.155886\r
+v  7.477330 64.266685 4.394402\r
+v  9.918324 63.591507 5.827400\r
+v  12.598894 63.011471 7.401408\r
+v  15.409068 62.491638 9.051731\r
+v  18.229918 62.002567 10.708480\r
+v  20.936850 61.517319 12.298484\r
+v  23.398880 61.011600 13.744857\r
+v  25.472383 60.468231 14.963408\r
+v  26.979475 59.900337 15.850061\r
+v  27.673721 59.490517 16.260956\r
+v  27.864246 58.938946 16.374264\r
+v  4.925807 65.090446 3.813668\r
+v  6.862631 64.266640 5.311602\r
+v  9.102573 63.591488 7.044404\r
+v  11.562452 63.011456 8.947548\r
+v  14.141309 62.491619 10.942869\r
+v  16.730003 62.002548 12.945889\r
+v  19.214195 61.517296 14.868143\r
+v  21.473692 61.011574 16.616657\r
+v  23.376730 60.468166 18.089561\r
+v  24.760141 59.900204 19.160835\r
+v  25.397820 59.490234 19.656036\r
+v  25.572845 58.938660 19.792263\r
+v  4.405915 65.090408 4.405908\r
+v  6.137529 64.266624 6.137528\r
+v  8.140368 63.591469 8.140359\r
+v  10.339951 63.011440 10.339947\r
+v  12.645984 62.491611 12.645984\r
+v  14.960860 62.002537 14.960860\r
+v  17.182339 61.517288 17.182339\r
+v  19.202940 61.011562 19.202940\r
+v  20.904892 60.468147 20.904894\r
+v  22.142389 59.900146 22.142387\r
+v  22.713455 59.490120 22.713451\r
+v  22.870312 58.938549 22.870312\r
+v  3.813660 65.090439 4.925814\r
+v  5.311601 64.266640 6.862630\r
+v  7.044400 63.591473 9.102573\r
+v  8.947554 63.011448 11.562453\r
+v  10.942870 62.491619 14.141311\r
+v  12.945888 62.002548 16.730003\r
+v  14.868143 61.517296 19.214197\r
+v  16.616653 61.011574 21.473694\r
+v  18.089558 60.468170 23.376728\r
+v  19.160833 59.900200 24.760139\r
+v  19.656034 59.490223 25.397821\r
+v  19.792261 58.938652 25.572849\r
+v  3.155886 65.090561 5.366519\r
+v  4.394403 64.266693 7.477328\r
+v  5.827399 63.591515 9.918323\r
+v  7.401411 63.011456 12.598896\r
+v  9.051734 62.491634 15.409071\r
+v  10.708481 62.002560 18.229921\r
+v  12.298485 61.517315 20.936857\r
+v  13.744860 61.011608 23.398886\r
+v  14.963408 60.468231 25.472387\r
+v  15.850062 59.900333 26.979483\r
+v  16.260960 59.490513 27.673733\r
+v  16.374268 58.938953 27.864254\r
+v  2.439325 65.090721 5.721208\r
+v  3.395431 64.266785 7.972075\r
+v  4.502016 63.591560 10.574908\r
+v  5.717647 63.011509 13.433135\r
+v  6.992305 62.491665 16.429504\r
+v  8.271992 62.002598 19.437225\r
+v  9.500189 61.517353 22.323452\r
+v  10.617533 61.011662 24.948502\r
+v  11.559055 60.468327 27.159212\r
+v  12.244558 59.900551 28.765854\r
+v  12.563406 59.490963 29.505793\r
+v  12.651630 58.939430 29.708918\r
+v  1.670442 65.090942 5.983103\r
+v  2.324031 64.266899 8.337340\r
+v  3.080785 63.591640 11.059650\r
+v  3.912280 63.011551 14.049033\r
+v  4.784234 62.491711 17.182873\r
+v  5.659689 62.002636 20.328558\r
+v  6.499989 61.517395 23.347153\r
+v  7.264538 61.011730 26.092558\r
+v  7.908952 60.468456 28.404568\r
+v  8.378550 59.900818 30.084743\r
+v  8.598106 59.491501 30.858644\r
+v  8.659139 58.940006 31.071234\r
+v  0.855432 65.091164 6.145371\r
+v  1.189291 64.267006 8.563581\r
+v  1.576084 63.591705 11.359868\r
+v  2.001176 63.011604 14.430465\r
+v  2.447024 62.491737 17.649431\r
+v  2.894711 62.002666 20.880552\r
+v  3.324464 61.517437 23.981119\r
+v  3.715547 61.011772 26.801064\r
+v  4.045310 60.468544 29.175837\r
+v  4.285915 59.901043 30.901617\r
+v  4.399204 59.491959 31.696812\r
+v  4.430880 58.940556 31.915377\r
+v  -0.000004 65.091293 6.201021\r
+v  -0.000003 64.267075 8.641148\r
+v  0.000002 63.591736 11.462786\r
+v  0.000003 63.011623 14.561224\r
+v  -0.000000 62.491772 17.809366\r
+v  0.000003 62.002686 21.069775\r
+v  0.000005 61.517452 24.198450\r
+v  0.000003 61.011814 27.043962\r
+v  0.000003 60.468605 29.440262\r
+v  0.000005 59.901134 31.181738\r
+v  0.000007 59.492107 31.984383\r
+v  0.000007 58.940823 32.205002\r
+v  -0.855432 65.091171 6.145374\r
+v  -1.189288 64.267014 8.563579\r
+v  -1.576076 63.591705 11.359868\r
+v  -2.001174 63.011604 14.430465\r
+v  -2.447019 62.491753 17.649429\r
+v  -2.894707 62.002666 20.880548\r
+v  -3.324460 61.517437 23.981119\r
+v  -3.715541 61.011787 26.801067\r
+v  -4.045301 60.468559 29.175833\r
+v  -4.285908 59.901051 30.901613\r
+v  -4.399199 59.491966 31.696806\r
+v  -4.430876 58.940559 31.915375\r
+v  -1.670440 65.090942 5.983104\r
+v  -2.324025 64.266899 8.337337\r
+v  -3.080790 63.591625 11.059649\r
+v  -3.912279 63.011551 14.049033\r
+v  -4.784229 62.491703 17.182875\r
+v  -5.659686 62.002632 20.328558\r
+v  -6.499983 61.517395 23.347149\r
+v  -7.264531 61.011715 26.092556\r
+v  -7.908945 60.468441 28.404572\r
+v  -8.378545 59.900810 30.084745\r
+v  -8.598101 59.491493 30.858644\r
+v  -8.659133 58.939999 31.071236\r
+v  -2.439314 65.090729 5.721213\r
+v  -3.395432 64.266785 7.972077\r
+v  -4.502018 63.591576 10.574909\r
+v  -5.717649 63.011517 13.433131\r
+v  -6.992306 62.491665 16.429502\r
+v  -8.271992 62.002598 19.437225\r
+v  -9.500187 61.517353 22.323454\r
+v  -10.617533 61.011662 24.948500\r
+v  -11.559055 60.468327 27.159210\r
+v  -12.244556 59.900555 28.765854\r
+v  -12.563400 59.490963 29.505793\r
+v  -12.651628 58.939430 29.708918\r
+v  -3.155886 65.090538 5.366520\r
+v  -4.394403 64.266685 7.477330\r
+v  -5.827400 63.591507 9.918324\r
+v  -7.401408 63.011471 12.598894\r
+v  -9.051731 62.491638 15.409068\r
+v  -10.708479 62.002567 18.229916\r
+v  -12.298483 61.517319 20.936850\r
+v  -13.744857 61.011600 23.398880\r
+v  -14.963408 60.468231 25.472383\r
+v  -15.850061 59.900337 26.979475\r
+v  -16.260956 59.490517 27.673721\r
+v  -16.374264 58.938946 27.864246\r
+v  -3.813668 65.090446 4.925807\r
+v  -5.311603 64.266640 6.862631\r
+v  -7.044404 63.591488 9.102573\r
+v  -8.947547 63.011456 11.562453\r
+v  -10.942869 62.491619 14.141309\r
+v  -12.945889 62.002548 16.730003\r
+v  -14.868143 61.517296 19.214195\r
+v  -16.616657 61.011574 21.473692\r
+v  -18.089561 60.468166 23.376730\r
+v  -19.160835 59.900204 24.760141\r
+v  -19.656036 59.490234 25.397820\r
+v  -19.792263 58.938660 25.572845\r
+v  -4.405908 65.090408 4.405915\r
+v  -6.137528 64.266624 6.137529\r
+v  -8.140358 63.591469 8.140368\r
+v  -10.339947 63.011440 10.339951\r
+v  -12.645984 62.491611 12.645984\r
+v  -14.960860 62.002537 14.960860\r
+v  -17.182339 61.517288 17.182339\r
+v  -19.202940 61.011562 19.202940\r
+v  -20.904894 60.468147 20.904892\r
+v  -22.142387 59.900146 22.142389\r
+v  -22.713451 59.490120 22.713455\r
+v  -22.870312 58.938549 22.870312\r
+v  -4.925814 65.090439 3.813660\r
+v  -6.862630 64.266640 5.311600\r
+v  -9.102573 63.591473 7.044400\r
+v  -11.562452 63.011448 8.947555\r
+v  -14.141310 62.491619 10.942870\r
+v  -16.730003 62.002548 12.945889\r
+v  -19.214197 61.517296 14.868143\r
+v  -21.473694 61.011574 16.616653\r
+v  -23.376728 60.468170 18.089558\r
+v  -24.760139 59.900200 19.160833\r
+v  -25.397821 59.490223 19.656034\r
+v  -25.572849 58.938652 19.792261\r
+v  -5.366520 65.090561 3.155886\r
+v  -7.477329 64.266693 4.394403\r
+v  -9.918323 63.591515 5.827399\r
+v  -12.598896 63.011456 7.401411\r
+v  -15.409070 62.491634 9.051734\r
+v  -18.229921 62.002560 10.708482\r
+v  -20.936857 61.517315 12.298485\r
+v  -23.398886 61.011608 13.744861\r
+v  -25.472387 60.468231 14.963409\r
+v  -26.979483 59.900333 15.850062\r
+v  -27.673733 59.490513 16.260960\r
+v  -27.864254 58.938953 16.374268\r
+v  -5.721209 65.090721 2.439325\r
+v  -7.972075 64.266785 3.395431\r
+v  -10.574907 63.591560 4.502016\r
+v  -13.433135 63.011509 5.717647\r
+v  -16.429504 62.491665 6.992305\r
+v  -19.437225 62.002598 8.271993\r
+v  -22.323452 61.517353 9.500190\r
+v  -24.948502 61.011662 10.617534\r
+v  -27.159212 60.468327 11.559055\r
+v  -28.765854 59.900551 12.244558\r
+v  -29.505793 59.490963 12.563406\r
+v  -29.708918 58.939430 12.651631\r
+v  -5.983103 65.090942 1.670442\r
+v  -8.337339 64.266899 2.324032\r
+v  -11.059650 63.591640 3.080785\r
+v  -14.049033 63.011551 3.912280\r
+v  -17.182873 62.491711 4.784234\r
+v  -20.328558 62.002636 5.659689\r
+v  -23.347153 61.517395 6.499988\r
+v  -26.092558 61.011730 7.264538\r
+v  -28.404568 60.468456 7.908952\r
+v  -30.084743 59.900818 8.378551\r
+v  -30.858644 59.491501 8.598107\r
+v  -31.071234 58.940006 8.659139\r
+v  -6.145371 65.091164 0.855432\r
+v  -8.563580 64.267006 1.189291\r
+v  -11.359867 63.591705 1.576084\r
+v  -14.430465 63.011604 2.001176\r
+v  -17.649431 62.491737 2.447024\r
+v  -20.880552 62.002666 2.894711\r
+v  -23.981119 61.517437 3.324464\r
+v  -26.801064 61.011772 3.715547\r
+v  -29.175837 60.468544 4.045310\r
+v  -30.901617 59.901043 4.285915\r
+v  -31.696812 59.491959 4.399204\r
+v  -31.915377 58.940556 4.430880\r
+v  -6.201021 65.091293 -0.000004\r
+v  -8.641146 64.267075 -0.000003\r
+v  -11.462785 63.591736 0.000002\r
+v  -14.561225 63.011623 0.000003\r
+v  -17.809366 62.491772 -0.000000\r
+v  -21.069775 62.002686 0.000003\r
+v  -24.198450 61.517452 0.000005\r
+v  -27.043962 61.011814 0.000003\r
+v  -29.440262 60.468605 0.000003\r
+v  -31.181738 59.901134 0.000005\r
+v  -31.984383 59.492107 0.000007\r
+v  -32.205002 58.940823 0.000007\r
+v  -6.145374 65.091171 -0.855432\r
+v  -8.563579 64.267014 -1.189288\r
+v  -11.359867 63.591705 -1.576076\r
+v  -14.430465 63.011604 -2.001174\r
+v  -17.649429 62.491753 -2.447019\r
+v  -20.880548 62.002666 -2.894707\r
+v  -23.981119 61.517437 -3.324460\r
+v  -26.801067 61.011787 -3.715541\r
+v  -29.175833 60.468559 -4.045301\r
+v  -30.901613 59.901051 -4.285908\r
+v  -31.696806 59.491966 -4.399199\r
+v  -31.915375 58.940559 -4.430876\r
+v  -5.983104 65.090942 -1.670440\r
+v  -8.337337 64.266899 -2.324025\r
+v  -11.059649 63.591625 -3.080790\r
+v  -14.049033 63.011551 -3.912279\r
+v  -17.182875 62.491703 -4.784229\r
+v  -20.328558 62.002632 -5.659686\r
+v  -23.347149 61.517395 -6.499983\r
+v  -26.092556 61.011715 -7.264531\r
+v  -28.404572 60.468441 -7.908945\r
+v  -30.084745 59.900810 -8.378545\r
+v  -30.858644 59.491493 -8.598101\r
+v  -31.071234 58.939999 -8.659132\r
+v  -5.721213 65.090729 -2.439314\r
+v  -7.972076 64.266785 -3.395432\r
+v  -10.574908 63.591576 -4.502018\r
+v  -13.433131 63.011517 -5.717649\r
+v  -16.429502 62.491665 -6.992307\r
+v  -19.437225 62.002598 -8.271991\r
+v  -22.323454 61.517353 -9.500186\r
+v  -24.948500 61.011662 -10.617532\r
+v  -27.159210 60.468327 -11.559054\r
+v  -28.765854 59.900555 -12.244556\r
+v  -29.505793 59.490963 -12.563400\r
+v  -29.708918 58.939430 -12.651628\r
+v  -5.366520 65.090538 -3.155886\r
+v  -7.477330 64.266685 -4.394403\r
+v  -9.918324 63.591507 -5.827400\r
+v  -12.598894 63.011471 -7.401409\r
+v  -15.409068 62.491638 -9.051731\r
+v  -18.229916 62.002567 -10.708478\r
+v  -20.936850 61.517319 -12.298482\r
+v  -23.398880 61.011600 -13.744857\r
+v  -25.472383 60.468231 -14.963408\r
+v  -26.979475 59.900337 -15.850061\r
+v  -27.673721 59.490517 -16.260956\r
+v  -27.864246 58.938946 -16.374264\r
+v  -4.925807 65.090446 -3.813668\r
+v  -6.862631 64.266640 -5.311603\r
+v  -9.102573 63.591488 -7.044404\r
+v  -11.562452 63.011456 -8.947546\r
+v  -14.141309 62.491619 -10.942869\r
+v  -16.730003 62.002548 -12.945889\r
+v  -19.214195 61.517296 -14.868143\r
+v  -21.473692 61.011574 -16.616657\r
+v  -23.376730 60.468166 -18.089561\r
+v  -24.760141 59.900204 -19.160835\r
+v  -25.397820 59.490234 -19.656036\r
+v  -25.572845 58.938660 -19.792263\r
+v  -4.405915 65.090408 -4.405908\r
+v  -6.137529 64.266624 -6.137528\r
+v  -8.140368 63.591469 -8.140357\r
+v  -10.339951 63.011440 -10.339947\r
+v  -12.645984 62.491611 -12.645984\r
+v  -14.960860 62.002537 -14.960860\r
+v  -17.182339 61.517288 -17.182339\r
+v  -19.202940 61.011562 -19.202940\r
+v  -20.904892 60.468147 -20.904894\r
+v  -22.142389 59.900146 -22.142387\r
+v  -22.713455 59.490120 -22.713451\r
+v  -22.870312 58.938549 -22.870312\r
+v  -3.813659 65.090439 -4.925814\r
+v  -5.311601 64.266640 -6.862630\r
+v  -7.044400 63.591473 -9.102573\r
+v  -8.947554 63.011448 -11.562451\r
+v  -10.942870 62.491619 -14.141309\r
+v  -12.945888 62.002548 -16.730003\r
+v  -14.868143 61.517296 -19.214197\r
+v  -16.616653 61.011574 -21.473694\r
+v  -18.089558 60.468170 -23.376728\r
+v  -19.160833 59.900200 -24.760139\r
+v  -19.656034 59.490223 -25.397821\r
+v  -19.792261 58.938652 -25.572849\r
+v  -3.155886 65.090561 -5.366520\r
+v  -4.394403 64.266693 -7.477329\r
+v  -5.827399 63.591515 -9.918323\r
+v  -7.401411 63.011456 -12.598896\r
+v  -9.051734 62.491634 -15.409069\r
+v  -10.708481 62.002560 -18.229921\r
+v  -12.298485 61.517315 -20.936857\r
+v  -13.744860 61.011608 -23.398886\r
+v  -14.963408 60.468231 -25.472387\r
+v  -15.850062 59.900333 -26.979483\r
+v  -16.260960 59.490513 -27.673733\r
+v  -16.374268 58.938953 -27.864254\r
+v  -2.439325 65.090721 -5.721210\r
+v  -3.395431 64.266785 -7.972075\r
+v  -4.502016 63.591560 -10.574906\r
+v  -5.717647 63.011509 -13.433135\r
+v  -6.992305 62.491665 -16.429504\r
+v  -8.271992 62.002598 -19.437225\r
+v  -9.500189 61.517353 -22.323452\r
+v  -10.617533 61.011662 -24.948502\r
+v  -11.559055 60.468327 -27.159212\r
+v  -12.244558 59.900551 -28.765854\r
+v  -12.563406 59.490963 -29.505793\r
+v  -12.651630 58.939430 -29.708918\r
+v  -1.670442 65.090942 -5.983104\r
+v  -2.324032 64.266899 -8.337338\r
+v  -3.080785 63.591640 -11.059649\r
+v  -3.912280 63.011551 -14.049033\r
+v  -4.784234 62.491711 -17.182873\r
+v  -5.659689 62.002636 -20.328558\r
+v  -6.499989 61.517395 -23.347153\r
+v  -7.264538 61.011730 -26.092558\r
+v  -7.908952 60.468456 -28.404568\r
+v  -8.378550 59.900818 -30.084743\r
+v  -8.598106 59.491501 -30.858644\r
+v  -8.659139 58.940006 -31.071234\r
+v  -0.855432 65.091164 -6.145370\r
+v  -1.189291 64.267006 -8.563579\r
+v  -1.576084 63.591705 -11.359867\r
+v  -2.001176 63.011604 -14.430465\r
+v  -2.447024 62.491737 -17.649431\r
+v  -2.894711 62.002666 -20.880552\r
+v  -3.324464 61.517437 -23.981119\r
+v  -3.715547 61.011772 -26.801064\r
+v  -4.045310 60.468544 -29.175837\r
+v  -4.285915 59.901043 -30.901617\r
+v  -4.399204 59.491959 -31.696812\r
+v  -4.430880 58.940556 -31.915377\r
+v  0.000004 65.091293 -6.201021\r
+v  0.000003 64.267075 -8.641145\r
+v  -0.000002 63.591736 -11.462784\r
+v  -0.000003 63.011623 -14.561225\r
+v  0.000000 62.491772 -17.809366\r
+v  -0.000003 62.002686 -21.069775\r
+v  -0.000005 61.517452 -24.198450\r
+v  -0.000003 61.011814 -27.043962\r
+v  -0.000003 60.468605 -29.440262\r
+v  -0.000005 59.901134 -31.181738\r
+v  -0.000007 59.492107 -31.984383\r
+v  -0.000007 58.940823 -32.205002\r
+v  0.855432 65.091171 -6.145374\r
+v  1.189288 64.267014 -8.563579\r
+v  1.576076 63.591705 -11.359866\r
+v  2.001174 63.011604 -14.430465\r
+v  2.447019 62.491753 -17.649429\r
+v  2.894707 62.002666 -20.880548\r
+v  3.324460 61.517437 -23.981119\r
+v  3.715541 61.011787 -26.801067\r
+v  4.045301 60.468559 -29.175833\r
+v  4.285908 59.901051 -30.901613\r
+v  4.399199 59.491966 -31.696806\r
+v  4.430876 58.940559 -31.915375\r
+v  1.670440 65.090942 -5.983104\r
+v  2.324025 64.266899 -8.337336\r
+v  3.080790 63.591625 -11.059648\r
+v  3.912279 63.011551 -14.049033\r
+v  4.784229 62.491703 -17.182875\r
+v  5.659686 62.002632 -20.328558\r
+v  6.499983 61.517395 -23.347149\r
+v  7.264531 61.011715 -26.092556\r
+v  7.908945 60.468441 -28.404572\r
+v  8.378545 59.900810 -30.084745\r
+v  8.598101 59.491493 -30.858644\r
+v  8.659133 58.939999 -31.071236\r
+v  2.439314 65.090729 -5.721214\r
+v  3.395432 64.266785 -7.972076\r
+v  4.502018 63.591576 -10.574907\r
+v  5.717649 63.011517 -13.433131\r
+v  6.992306 62.491665 -16.429502\r
+v  8.271992 62.002598 -19.437225\r
+v  9.500187 61.517353 -22.323454\r
+v  10.617533 61.011662 -24.948500\r
+v  11.559055 60.468327 -27.159210\r
+v  12.244556 59.900555 -28.765854\r
+v  12.563400 59.490963 -29.505793\r
+v  12.651628 58.939430 -29.708918\r
+v  3.155886 65.090538 -5.366520\r
+v  4.394403 64.266693 -7.477330\r
+v  5.827400 63.591507 -9.918323\r
+v  7.401408 63.011471 -12.598894\r
+v  9.051731 62.491638 -15.409068\r
+v  10.708479 62.002567 -18.229916\r
+v  12.298483 61.517319 -20.936850\r
+v  13.744857 61.011600 -23.398880\r
+v  14.963408 60.468231 -25.472383\r
+v  15.850061 59.900337 -26.979475\r
+v  16.260956 59.490517 -27.673721\r
+v  16.374264 58.938946 -27.864246\r
+v  3.813668 65.090446 -4.925807\r
+v  5.311603 64.266640 -6.862631\r
+v  7.044404 63.591488 -9.102573\r
+v  8.947547 63.011456 -11.562451\r
+v  10.942869 62.491619 -14.141309\r
+v  12.945889 62.002548 -16.730003\r
+v  14.868143 61.517296 -19.214195\r
+v  16.616657 61.011574 -21.473692\r
+v  18.089561 60.468166 -23.376730\r
+v  19.160835 59.900204 -24.760141\r
+v  19.656036 59.490234 -25.397820\r
+v  19.792263 58.938660 -25.572845\r
+v  4.405908 65.090408 -4.405915\r
+v  6.137528 64.266624 -6.137529\r
+v  8.140358 63.591469 -8.140367\r
+v  10.339947 63.011440 -10.339951\r
+v  12.645984 62.491611 -12.645984\r
+v  14.960860 62.002537 -14.960860\r
+v  17.182339 61.517288 -17.182339\r
+v  19.202940 61.011562 -19.202940\r
+v  20.904894 60.468147 -20.904892\r
+v  22.142387 59.900146 -22.142389\r
+v  22.713451 59.490120 -22.713455\r
+v  22.870312 58.938549 -22.870312\r
+v  4.925814 65.090439 -3.813660\r
+v  6.862630 64.266640 -5.311601\r
+v  9.102573 63.591473 -7.044400\r
+v  11.562452 63.011448 -8.947553\r
+v  14.141310 62.491619 -10.942870\r
+v  16.730003 62.002548 -12.945887\r
+v  19.214197 61.517296 -14.868143\r
+v  21.473694 61.011574 -16.616653\r
+v  23.376728 60.468170 -18.089558\r
+v  24.760139 59.900200 -19.160833\r
+v  25.397821 59.490223 -19.656034\r
+v  25.572849 58.938652 -19.792261\r
+v  5.366520 65.090561 -3.155886\r
+v  7.477329 64.266693 -4.394403\r
+v  9.918323 63.591515 -5.827399\r
+v  12.598896 63.011456 -7.401411\r
+v  15.409070 62.491634 -9.051734\r
+v  18.229921 62.002560 -10.708480\r
+v  20.936857 61.517315 -12.298483\r
+v  23.398886 61.011608 -13.744859\r
+v  25.472387 60.468231 -14.963408\r
+v  26.979483 59.900333 -15.850062\r
+v  27.673733 59.490513 -16.260960\r
+v  27.864254 58.938953 -16.374268\r
+v  5.721209 65.090721 -2.439325\r
+v  7.972075 64.266785 -3.395431\r
+v  10.574907 63.591560 -4.502016\r
+v  13.433135 63.011509 -5.717647\r
+v  16.429504 62.491665 -6.992305\r
+v  19.437225 62.002598 -8.271991\r
+v  22.323452 61.517353 -9.500188\r
+v  24.948502 61.011662 -10.617532\r
+v  27.159212 60.468327 -11.559055\r
+v  28.765854 59.900551 -12.244558\r
+v  29.505793 59.490963 -12.563406\r
+v  29.708918 58.939430 -12.651629\r
+v  5.983103 65.090942 -1.670442\r
+v  8.337339 64.266899 -2.324032\r
+v  11.059650 63.591640 -3.080785\r
+v  14.049033 63.011551 -3.912280\r
+v  17.182873 62.491711 -4.784234\r
+v  20.328558 62.002636 -5.659689\r
+v  23.347153 61.517395 -6.499989\r
+v  26.092558 61.011730 -7.264539\r
+v  28.404568 60.468456 -7.908952\r
+v  30.084743 59.900818 -8.378549\r
+v  30.858644 59.491501 -8.598105\r
+v  31.071234 58.940006 -8.659139\r
+v  6.145370 65.091164 -0.855437\r
+v  8.563581 64.267006 -1.189295\r
+v  11.359867 63.591705 -1.576084\r
+v  14.430463 63.011604 -2.001177\r
+v  17.649431 62.491737 -2.447027\r
+v  20.880552 62.002666 -2.894711\r
+v  23.981119 61.517437 -3.324464\r
+v  26.801064 61.011772 -3.715549\r
+v  29.175838 60.468544 -4.045312\r
+v  30.901615 59.901043 -4.285916\r
+v  31.696812 59.491959 -4.399205\r
+v  31.915377 58.940556 -4.430881\r
+v  -0.000000 66.219269 -0.000000\r
+# 1778 vertices\r
+\r
+vt 0.900647 0.560912 0.000000\r
+vt 0.900409 0.560414 0.000000\r
+vt 0.904319 0.559056 0.000000\r
+vt 0.898246 0.562200 0.000000\r
+vt 0.897849 0.561360 0.000000\r
+vt 0.896793 0.562999 0.000000\r
+vt 0.896294 0.561947 0.000000\r
+vt 0.895879 0.563504 0.000000\r
+vt 0.895314 0.562319 0.000000\r
+vt 0.894866 0.564057 0.000000\r
+vt 0.894229 0.562729 0.000000\r
+vt 0.893271 0.564922 0.000000\r
+vt 0.892520 0.563369 0.000000\r
+vt 0.890747 0.566284 0.000000\r
+vt 0.889814 0.564377 0.000000\r
+vt 0.886853 0.568398 0.000000\r
+vt 0.885618 0.565945 0.000000\r
+vt 0.881084 0.571627 0.000000\r
+vt 0.879348 0.568369 0.000000\r
+vt 0.873358 0.576321 0.000000\r
+vt 0.870796 0.572006 0.000000\r
+vt 0.864459 0.582657 0.000000\r
+vt 0.860657 0.577253 0.000000\r
+vt 0.621787 0.109822 0.000000\r
+vt 0.620994 0.108019 0.000000\r
+vt 0.900943 0.561364 0.000000\r
+vt 0.898740 0.562958 0.000000\r
+vt 0.897411 0.563945 0.000000\r
+vt 0.896579 0.564565 0.000000\r
+vt 0.895655 0.565244 0.000000\r
+vt 0.894200 0.566307 0.000000\r
+vt 0.891900 0.567980 0.000000\r
+vt 0.888364 0.570569 0.000000\r
+vt 0.883168 0.574483 0.000000\r
+vt 0.876313 0.580037 0.000000\r
+vt 0.868588 0.587205 0.000000\r
+vt 0.622783 0.111460 0.000000\r
+vt 0.901291 0.561766 0.000000\r
+vt 0.899318 0.563630 0.000000\r
+vt 0.898132 0.564779 0.000000\r
+vt 0.897392 0.565499 0.000000\r
+vt 0.896571 0.566288 0.000000\r
+vt 0.895275 0.567522 0.000000\r
+vt 0.893231 0.569465 0.000000\r
+vt 0.890096 0.572461 0.000000\r
+vt 0.885522 0.576952 0.000000\r
+vt 0.879560 0.583206 0.000000\r
+vt 0.872957 0.591020 0.000000\r
+vt 0.623961 0.112921 0.000000\r
+vt 0.901685 0.562115 0.000000\r
+vt 0.899969 0.564213 0.000000\r
+vt 0.898942 0.565501 0.000000\r
+vt 0.898302 0.566306 0.000000\r
+vt 0.897593 0.567188 0.000000\r
+vt 0.896474 0.568570 0.000000\r
+vt 0.894708 0.570743 0.000000\r
+vt 0.892007 0.574083 0.000000\r
+vt 0.888088 0.579052 0.000000\r
+vt 0.883033 0.585870 0.000000\r
+vt 0.877509 0.594186 0.000000\r
+vt 0.625300 0.114197 0.000000\r
+vt 0.902119 0.562410 0.000000\r
+vt 0.900685 0.564704 0.000000\r
+vt 0.899828 0.566108 0.000000\r
+vt 0.899295 0.566983 0.000000\r
+vt 0.898705 0.567945 0.000000\r
+vt 0.897775 0.569450 0.000000\r
+vt 0.896307 0.571814 0.000000\r
+vt 0.894065 0.575438 0.000000\r
+vt 0.890827 0.580796 0.000000\r
+vt 0.886686 0.588061 0.000000\r
+vt 0.882207 0.596762 0.000000\r
+vt 0.626779 0.115279 0.000000\r
+vt 0.902587 0.562647 0.000000\r
+vt 0.901455 0.565100 0.000000\r
+vt 0.900778 0.566598 0.000000\r
+vt 0.900358 0.567530 0.000000\r
+vt 0.899895 0.568555 0.000000\r
+vt 0.899164 0.570160 0.000000\r
+vt 0.898009 0.572679 0.000000\r
+vt 0.896246 0.576529 0.000000\r
+vt 0.893708 0.582193 0.000000\r
+vt 0.890483 0.589801 0.000000\r
+vt 0.887027 0.598791 0.000000\r
+vt 0.628378 0.116155 0.000000\r
+vt 0.903083 0.562827 0.000000\r
+vt 0.902271 0.565399 0.000000\r
+vt 0.901783 0.566967 0.000000\r
+vt 0.901481 0.567944 0.000000\r
+vt 0.901150 0.569017 0.000000\r
+vt 0.900627 0.570698 0.000000\r
+vt 0.899798 0.573334 0.000000\r
+vt 0.898530 0.577356 0.000000\r
+vt 0.896706 0.583247 0.000000\r
+vt 0.894401 0.591106 0.000000\r
+vt 0.891949 0.600299 0.000000\r
+vt 0.630078 0.116818 0.000000\r
+vt 0.903602 0.562944 0.000000\r
+vt 0.903123 0.565595 0.000000\r
+vt 0.902833 0.567212 0.000000\r
+vt 0.902654 0.568219 0.000000\r
+vt 0.902460 0.569326 0.000000\r
+vt 0.902152 0.571060 0.000000\r
+vt 0.901660 0.573776 0.000000\r
+vt 0.900900 0.577913 0.000000\r
+vt 0.899802 0.583957 0.000000\r
+vt 0.898419 0.591979 0.000000\r
+vt 0.896960 0.601301 0.000000\r
+vt 0.631858 0.117257 0.000000\r
+vt 0.904137 0.562998 0.000000\r
+vt 0.904004 0.565686 0.000000\r
+vt 0.903919 0.567327 0.000000\r
+vt 0.903868 0.568351 0.000000\r
+vt 0.903815 0.569476 0.000000\r
+vt 0.903729 0.571238 0.000000\r
+vt 0.903582 0.573995 0.000000\r
+vt 0.903341 0.578194 0.000000\r
+vt 0.902980 0.584317 0.000000\r
+vt 0.902525 0.592421 0.000000\r
+vt 0.902055 0.601801 0.000000\r
+vt 0.633697 0.117464 0.000000\r
+vt 0.904684 0.562985 0.000000\r
+vt 0.904904 0.565665 0.000000\r
+vt 0.905032 0.567305 0.000000\r
+vt 0.905113 0.568330 0.000000\r
+vt 0.905205 0.569457 0.000000\r
+vt 0.905345 0.571221 0.000000\r
+vt 0.905551 0.573981 0.000000\r
+vt 0.905839 0.578183 0.000000\r
+vt 0.906226 0.584312 0.000000\r
+vt 0.906707 0.592417 0.000000\r
+vt 0.907233 0.601793 0.000000\r
+vt 0.635575 0.117428 0.000000\r
+vt 0.905235 0.562903 0.000000\r
+vt 0.905814 0.565529 0.000000\r
+vt 0.906161 0.567138 0.000000\r
+vt 0.906378 0.568147 0.000000\r
+vt 0.906619 0.569258 0.000000\r
+vt 0.906989 0.570994 0.000000\r
+vt 0.907552 0.573714 0.000000\r
+vt 0.908378 0.577860 0.000000\r
+vt 0.909527 0.583917 0.000000\r
+vt 0.910960 0.591944 0.000000\r
+vt 0.912497 0.601253 0.000000\r
+vt 0.637473 0.117141 0.000000\r
+vt 0.905786 0.562749 0.000000\r
+vt 0.906726 0.565271 0.000000\r
+vt 0.907294 0.566818 0.000000\r
+vt 0.907650 0.567790 0.000000\r
+vt 0.908040 0.568861 0.000000\r
+vt 0.908641 0.570539 0.000000\r
+vt 0.909565 0.573170 0.000000\r
+vt 0.910938 0.577192 0.000000\r
+vt 0.912865 0.583092 0.000000\r
+vt 0.915277 0.590957 0.000000\r
+vt 0.917860 0.600142 0.000000\r
+vt 0.639368 0.116592 0.000000\r
+vt 0.906310 0.562529 0.000000\r
+vt 0.907596 0.564900 0.000000\r
+vt 0.908375 0.566355 0.000000\r
+vt 0.908863 0.567268 0.000000\r
+vt 0.909394 0.568277 0.000000\r
+vt 0.910217 0.569862 0.000000\r
+vt 0.911490 0.572356 0.000000\r
+vt 0.913397 0.576185 0.000000\r
+vt 0.916097 0.581839 0.000000\r
+vt 0.919501 0.589451 0.000000\r
+vt 0.923167 0.598455 0.000000\r
+vt 0.641174 0.115800 0.000000\r
+vt 0.906786 0.562255 0.000000\r
+vt 0.908385 0.564437 0.000000\r
+vt 0.909352 0.565775 0.000000\r
+vt 0.909957 0.566614 0.000000\r
+vt 0.910617 0.567543 0.000000\r
+vt 0.911643 0.569009 0.000000\r
+vt 0.913240 0.571322 0.000000\r
+vt 0.915649 0.574895 0.000000\r
+vt 0.919093 0.580218 0.000000\r
+vt 0.923484 0.587479 0.000000\r
+vt 0.928266 0.596226 0.000000\r
+vt 0.642815 0.114805 0.000000\r
+vt 0.907210 0.561931 0.000000\r
+vt 0.909087 0.563891 0.000000\r
+vt 0.910221 0.565093 0.000000\r
+vt 0.910929 0.565845 0.000000\r
+vt 0.911705 0.566680 0.000000\r
+vt 0.912914 0.568000 0.000000\r
+vt 0.914808 0.570097 0.000000\r
+vt 0.917685 0.573354 0.000000\r
+vt 0.921841 0.578256 0.000000\r
+vt 0.927214 0.585051 0.000000\r
+vt 0.933157 0.593432 0.000000\r
+vt 0.644279 0.113629 0.000000\r
+vt 0.907579 0.561564 0.000000\r
+vt 0.909698 0.563272 0.000000\r
+vt 0.910977 0.564319 0.000000\r
+vt 0.911776 0.564974 0.000000\r
+vt 0.912653 0.565702 0.000000\r
+vt 0.914026 0.566858 0.000000\r
+vt 0.916187 0.568701 0.000000\r
+vt 0.919492 0.571584 0.000000\r
+vt 0.924320 0.575971 0.000000\r
+vt 0.930664 0.582165 0.000000\r
+vt 0.937821 0.590038 0.000000\r
+vt 0.645557 0.112293 0.000000\r
+vt 0.907891 0.561159 0.000000\r
+vt 0.910215 0.562589 0.000000\r
+vt 0.911617 0.563466 0.000000\r
+vt 0.912492 0.564015 0.000000\r
+vt 0.913457 0.564625 0.000000\r
+vt 0.914972 0.565597 0.000000\r
+vt 0.917367 0.567154 0.000000\r
+vt 0.921054 0.569606 0.000000\r
+vt 0.926500 0.573379 0.000000\r
+vt 0.933790 0.578818 0.000000\r
+vt 0.942216 0.585994 0.000000\r
+vt 0.646640 0.110816 0.000000\r
+vt 0.908143 0.560721 0.000000\r
+vt 0.910632 0.561850 0.000000\r
+vt 0.912134 0.562544 0.000000\r
+vt 0.913074 0.562979 0.000000\r
+vt 0.914111 0.563462 0.000000\r
+vt 0.915745 0.564232 0.000000\r
+vt 0.918335 0.565472 0.000000\r
+vt 0.922348 0.567438 0.000000\r
+vt 0.928340 0.570499 0.000000\r
+vt 0.936522 0.575006 0.000000\r
+vt 0.946273 0.581233 0.000000\r
+vt 0.647519 0.109219 0.000000\r
+vt 0.908331 0.560255 0.000000\r
+vt 0.910945 0.561064 0.000000\r
+vt 0.912525 0.561564 0.000000\r
+vt 0.913514 0.561877 0.000000\r
+vt 0.914607 0.562223 0.000000\r
+vt 0.916333 0.562777 0.000000\r
+vt 0.919077 0.563673 0.000000\r
+vt 0.923347 0.565105 0.000000\r
+vt 0.929789 0.567357 0.000000\r
+vt 0.938766 0.570736 0.000000\r
+vt 0.949884 0.575671 0.000000\r
+vt 0.648183 0.107522 0.000000\r
+vt 0.908453 0.559767 0.000000\r
+vt 0.911150 0.560241 0.000000\r
+vt 0.912783 0.560535 0.000000\r
+vt 0.913806 0.560720 0.000000\r
+vt 0.914939 0.560922 0.000000\r
+vt 0.916728 0.561247 0.000000\r
+vt 0.919576 0.561778 0.000000\r
+vt 0.924024 0.562635 0.000000\r
+vt 0.930784 0.563991 0.000000\r
+vt 0.940385 0.566043 0.000000\r
+vt 0.952881 0.569202 0.000000\r
+vt 0.648623 0.105745 0.000000\r
+vt 0.908506 0.559262 0.000000\r
+vt 0.911241 0.559388 0.000000\r
+vt 0.912901 0.559469 0.000000\r
+vt 0.913942 0.559520 0.000000\r
+vt 0.915095 0.559572 0.000000\r
+vt 0.916917 0.559658 0.000000\r
+vt 0.919817 0.559809 0.000000\r
+vt 0.924351 0.560061 0.000000\r
+vt 0.931261 0.560460 0.000000\r
+vt 0.941190 0.561015 0.000000\r
+vt 0.955008 0.561685 0.000000\r
+vt 0.648830 0.103908 0.000000\r
+vt 0.908487 0.558745 0.000000\r
+vt 0.911214 0.558515 0.000000\r
+vt 0.912871 0.558376 0.000000\r
+vt 0.913912 0.558287 0.000000\r
+vt 0.915066 0.558185 0.000000\r
+vt 0.916886 0.558028 0.000000\r
+vt 0.919781 0.557790 0.000000\r
+vt 0.924300 0.557425 0.000000\r
+vt 0.931166 0.556847 0.000000\r
+vt 0.940911 0.555866 0.000000\r
+vt 0.953568 0.553929 0.000000\r
+vt 0.648794 0.102033 0.000000\r
+vt 0.908395 0.558222 0.000000\r
+vt 0.911063 0.557632 0.000000\r
+vt 0.912685 0.557267 0.000000\r
+vt 0.913707 0.557036 0.000000\r
+vt 0.914838 0.556779 0.000000\r
+vt 0.916621 0.556378 0.000000\r
+vt 0.919450 0.555750 0.000000\r
+vt 0.923853 0.554772 0.000000\r
+vt 0.930492 0.553240 0.000000\r
+vt 0.939729 0.550842 0.000000\r
+vt 0.951109 0.547008 0.000000\r
+vt 0.648506 0.100138 0.000000\r
+vt 0.908227 0.557697 0.000000\r
+vt 0.910783 0.556748 0.000000\r
+vt 0.912337 0.556159 0.000000\r
+vt 0.913315 0.555786 0.000000\r
+vt 0.914399 0.555374 0.000000\r
+vt 0.916104 0.554733 0.000000\r
+vt 0.918806 0.553723 0.000000\r
+vt 0.922993 0.552150 0.000000\r
+vt 0.929246 0.549719 0.000000\r
+vt 0.937768 0.546073 0.000000\r
+vt 0.947860 0.540821 0.000000\r
+vt 0.647956 0.098246 0.000000\r
+vt 0.907989 0.557198 0.000000\r
+vt 0.910386 0.555908 0.000000\r
+vt 0.911838 0.555107 0.000000\r
+vt 0.912750 0.554602 0.000000\r
+vt 0.913761 0.554048 0.000000\r
+vt 0.915354 0.553182 0.000000\r
+vt 0.917872 0.551819 0.000000\r
+vt 0.921758 0.549703 0.000000\r
+vt 0.927509 0.546471 0.000000\r
+vt 0.935207 0.541776 0.000000\r
+vt 0.944062 0.535448 0.000000\r
+vt 0.647163 0.096443 0.000000\r
+vt 0.907693 0.556747 0.000000\r
+vt 0.909893 0.555150 0.000000\r
+vt 0.911219 0.554162 0.000000\r
+vt 0.912050 0.553542 0.000000\r
+vt 0.912972 0.552862 0.000000\r
+vt 0.914425 0.551800 0.000000\r
+vt 0.916720 0.550127 0.000000\r
+vt 0.920247 0.547537 0.000000\r
+vt 0.925427 0.543625 0.000000\r
+vt 0.932257 0.538076 0.000000\r
+vt 0.939944 0.530924 0.000000\r
+vt 0.646167 0.094805 0.000000\r
+vt 0.907346 0.556345 0.000000\r
+vt 0.909315 0.554478 0.000000\r
+vt 0.910498 0.553329 0.000000\r
+vt 0.911237 0.552609 0.000000\r
+vt 0.912057 0.551820 0.000000\r
+vt 0.913350 0.550586 0.000000\r
+vt 0.915391 0.548644 0.000000\r
+vt 0.918518 0.545649 0.000000\r
+vt 0.923078 0.541163 0.000000\r
+vt 0.929018 0.534921 0.000000\r
+vt 0.935591 0.527130 0.000000\r
+vt 0.644989 0.093344 0.000000\r
+vt 0.906952 0.555995 0.000000\r
+vt 0.908664 0.553896 0.000000\r
+vt 0.909689 0.552608 0.000000\r
+vt 0.910328 0.551803 0.000000\r
+vt 0.911036 0.550921 0.000000\r
+vt 0.912153 0.549540 0.000000\r
+vt 0.913916 0.547368 0.000000\r
+vt 0.916610 0.544031 0.000000\r
+vt 0.920517 0.539070 0.000000\r
+vt 0.925555 0.532268 0.000000\r
+vt 0.931056 0.523980 0.000000\r
+vt 0.643650 0.092068 0.000000\r
+vt 0.906518 0.555701 0.000000\r
+vt 0.907948 0.553405 0.000000\r
+vt 0.908804 0.552001 0.000000\r
+vt 0.909336 0.551126 0.000000\r
+vt 0.909925 0.550165 0.000000\r
+vt 0.910854 0.548661 0.000000\r
+vt 0.912319 0.546299 0.000000\r
+vt 0.914556 0.542679 0.000000\r
+vt 0.917785 0.537331 0.000000\r
+vt 0.921914 0.530084 0.000000\r
+vt 0.926377 0.521415 0.000000\r
+vt 0.642171 0.090987 0.000000\r
+vt 0.906050 0.555463 0.000000\r
+vt 0.907179 0.553009 0.000000\r
+vt 0.907855 0.551512 0.000000\r
+vt 0.908274 0.550580 0.000000\r
+vt 0.908736 0.549555 0.000000\r
+vt 0.909467 0.547952 0.000000\r
+vt 0.910620 0.545436 0.000000\r
+vt 0.912379 0.541590 0.000000\r
+vt 0.914912 0.535937 0.000000\r
+vt 0.918130 0.528349 0.000000\r
+vt 0.921578 0.519393 0.000000\r
+vt 0.640572 0.090111 0.000000\r
+vt 0.905554 0.555284 0.000000\r
+vt 0.906364 0.552711 0.000000\r
+vt 0.906851 0.551143 0.000000\r
+vt 0.907153 0.550167 0.000000\r
+vt 0.907483 0.549094 0.000000\r
+vt 0.908006 0.547414 0.000000\r
+vt 0.908833 0.544781 0.000000\r
+vt 0.910100 0.540764 0.000000\r
+vt 0.911922 0.534885 0.000000\r
+vt 0.914225 0.527046 0.000000\r
+vt 0.916677 0.517887 0.000000\r
+vt 0.638873 0.089449 0.000000\r
+vt 0.905036 0.555166 0.000000\r
+vt 0.905513 0.552515 0.000000\r
+vt 0.905802 0.550899 0.000000\r
+vt 0.905981 0.549892 0.000000\r
+vt 0.906175 0.548785 0.000000\r
+vt 0.906482 0.547053 0.000000\r
+vt 0.906974 0.544339 0.000000\r
+vt 0.907734 0.540206 0.000000\r
+vt 0.908834 0.534174 0.000000\r
+vt 0.910220 0.526171 0.000000\r
+vt 0.911686 0.516882 0.000000\r
+vt 0.637093 0.089010 0.000000\r
+vt 0.904500 0.555113 0.000000\r
+vt 0.904633 0.552425 0.000000\r
+vt 0.904717 0.550784 0.000000\r
+vt 0.904769 0.549760 0.000000\r
+vt 0.904822 0.548636 0.000000\r
+vt 0.904908 0.546875 0.000000\r
+vt 0.905055 0.544119 0.000000\r
+vt 0.905298 0.539925 0.000000\r
+vt 0.905663 0.533811 0.000000\r
+vt 0.906127 0.525725 0.000000\r
+vt 0.906611 0.516375 0.000000\r
+vt 0.635254 0.088803 0.000000\r
+vt 0.903954 0.555126 0.000000\r
+vt 0.903734 0.552445 0.000000\r
+vt 0.903606 0.550806 0.000000\r
+vt 0.903525 0.549781 0.000000\r
+vt 0.903432 0.548654 0.000000\r
+vt 0.903293 0.546891 0.000000\r
+vt 0.903089 0.544132 0.000000\r
+vt 0.902804 0.539932 0.000000\r
+vt 0.902424 0.533812 0.000000\r
+vt 0.901956 0.525722 0.000000\r
+vt 0.901452 0.516372 0.000000\r
+vt 0.633376 0.088839 0.000000\r
+vt 0.903403 0.555208 0.000000\r
+vt 0.902823 0.552581 0.000000\r
+vt 0.902477 0.550972 0.000000\r
+vt 0.902260 0.549963 0.000000\r
+vt 0.902020 0.548852 0.000000\r
+vt 0.901651 0.547116 0.000000\r
+vt 0.901090 0.544396 0.000000\r
+vt 0.900268 0.540252 0.000000\r
+vt 0.899129 0.534202 0.000000\r
+vt 0.897713 0.526186 0.000000\r
+vt 0.896203 0.516897 0.000000\r
+vt 0.631479 0.089127 0.000000\r
+vt 0.902853 0.555362 0.000000\r
+vt 0.901911 0.552839 0.000000\r
+vt 0.901344 0.551291 0.000000\r
+vt 0.900989 0.550319 0.000000\r
+vt 0.900599 0.549248 0.000000\r
+vt 0.899999 0.547569 0.000000\r
+vt 0.899078 0.544937 0.000000\r
+vt 0.897711 0.540916 0.000000\r
+vt 0.895795 0.535019 0.000000\r
+vt 0.893403 0.527161 0.000000\r
+vt 0.890852 0.517988 0.000000\r
+vt 0.629584 0.089676 0.000000\r
+vt 0.902328 0.555582 0.000000\r
+vt 0.901041 0.553209 0.000000\r
+vt 0.900263 0.551753 0.000000\r
+vt 0.899776 0.550839 0.000000\r
+vt 0.899245 0.549830 0.000000\r
+vt 0.898424 0.548244 0.000000\r
+vt 0.897153 0.545748 0.000000\r
+vt 0.895253 0.541919 0.000000\r
+vt 0.892565 0.536263 0.000000\r
+vt 0.889183 0.528652 0.000000\r
+vt 0.885552 0.519652 0.000000\r
+vt 0.627777 0.090468 0.000000\r
+vt 0.901852 0.555857 0.000000\r
+vt 0.900253 0.553671 0.000000\r
+vt 0.899286 0.552331 0.000000\r
+vt 0.898681 0.551492 0.000000\r
+vt 0.898021 0.550562 0.000000\r
+vt 0.896997 0.549096 0.000000\r
+vt 0.895403 0.546779 0.000000\r
+vt 0.893000 0.543202 0.000000\r
+vt 0.889569 0.537876 0.000000\r
+vt 0.885200 0.530609 0.000000\r
+vt 0.880455 0.521858 0.000000\r
+vt 0.626137 0.091463 0.000000\r
+vt 0.901427 0.556180 0.000000\r
+vt 0.899550 0.554216 0.000000\r
+vt 0.898416 0.553013 0.000000\r
+vt 0.897708 0.552260 0.000000\r
+vt 0.896933 0.551423 0.000000\r
+vt 0.895725 0.550100 0.000000\r
+vt 0.893834 0.548001 0.000000\r
+vt 0.890962 0.544739 0.000000\r
+vt 0.886819 0.539829 0.000000\r
+vt 0.881467 0.533022 0.000000\r
+vt 0.875561 0.524628 0.000000\r
+vt 0.624673 0.092638 0.000000\r
+vt 0.901058 0.556547 0.000000\r
+vt 0.898938 0.554834 0.000000\r
+vt 0.897659 0.553785 0.000000\r
+vt 0.896861 0.553129 0.000000\r
+vt 0.895984 0.552399 0.000000\r
+vt 0.894612 0.551241 0.000000\r
+vt 0.892453 0.549394 0.000000\r
+vt 0.889152 0.546504 0.000000\r
+vt 0.884334 0.542106 0.000000\r
+vt 0.878010 0.535893 0.000000\r
+vt 0.870888 0.527997 0.000000\r
+vt 0.623394 0.093975 0.000000\r
+vt 0.900747 0.556953 0.000000\r
+vt 0.898421 0.555517 0.000000\r
+vt 0.897019 0.554638 0.000000\r
+vt 0.896143 0.554087 0.000000\r
+vt 0.895179 0.553474 0.000000\r
+vt 0.893664 0.552500 0.000000\r
+vt 0.891271 0.550939 0.000000\r
+vt 0.887587 0.548478 0.000000\r
+vt 0.882147 0.544690 0.000000\r
+vt 0.874874 0.539227 0.000000\r
+vt 0.866478 0.532019 0.000000\r
+vt 0.622311 0.095451 0.000000\r
+vt 0.900496 0.557391 0.000000\r
+vt 0.898004 0.556255 0.000000\r
+vt 0.896500 0.555559 0.000000\r
+vt 0.895561 0.555122 0.000000\r
+vt 0.894524 0.554637 0.000000\r
+vt 0.892890 0.553864 0.000000\r
+vt 0.890300 0.552619 0.000000\r
+vt 0.886288 0.550643 0.000000\r
+vt 0.880299 0.547565 0.000000\r
+vt 0.872127 0.543029 0.000000\r
+vt 0.862399 0.536758 0.000000\r
+vt 0.621433 0.097048 0.000000\r
+vt 0.900308 0.557858 0.000000\r
+vt 0.897690 0.557041 0.000000\r
+vt 0.896109 0.556539 0.000000\r
+vt 0.895119 0.556224 0.000000\r
+vt 0.894025 0.555875 0.000000\r
+vt 0.892299 0.555319 0.000000\r
+vt 0.889555 0.554417 0.000000\r
+vt 0.885283 0.552974 0.000000\r
+vt 0.878841 0.550704 0.000000\r
+vt 0.869866 0.547291 0.000000\r
+vt 0.858759 0.542302 0.000000\r
+vt 0.620768 0.098745 0.000000\r
+vt 0.900186 0.558347 0.000000\r
+vt 0.897484 0.557865 0.000000\r
+vt 0.895850 0.557567 0.000000\r
+vt 0.894826 0.557381 0.000000\r
+vt 0.893693 0.557177 0.000000\r
+vt 0.891902 0.556849 0.000000\r
+vt 0.889052 0.556312 0.000000\r
+vt 0.884601 0.555445 0.000000\r
+vt 0.877836 0.554070 0.000000\r
+vt 0.868228 0.551982 0.000000\r
+vt 0.855723 0.548761 0.000000\r
+vt 0.620328 0.100521 0.000000\r
+vt 0.900133 0.558851 0.000000\r
+vt 0.897392 0.558719 0.000000\r
+vt 0.895732 0.558635 0.000000\r
+vt 0.894690 0.558583 0.000000\r
+vt 0.893535 0.558528 0.000000\r
+vt 0.891712 0.558438 0.000000\r
+vt 0.888808 0.558282 0.000000\r
+vt 0.884269 0.558020 0.000000\r
+vt 0.877349 0.557604 0.000000\r
+vt 0.867403 0.557015 0.000000\r
+vt 0.853551 0.556279 0.000000\r
+vt 0.620121 0.102357 0.000000\r
+vt 0.900150 0.559368 0.000000\r
+vt 0.897419 0.559592 0.000000\r
+vt 0.895761 0.559728 0.000000\r
+vt 0.894718 0.559816 0.000000\r
+vt 0.893563 0.559916 0.000000\r
+vt 0.891741 0.560069 0.000000\r
+vt 0.888842 0.560303 0.000000\r
+vt 0.884316 0.560660 0.000000\r
+vt 0.877436 0.561223 0.000000\r
+vt 0.867667 0.562177 0.000000\r
+vt 0.854964 0.564073 0.000000\r
+vt 0.620156 0.104233 0.000000\r
+vt 0.900242 0.559890 0.000000\r
+vt 0.897570 0.560476 0.000000\r
+vt 0.895946 0.560837 0.000000\r
+vt 0.894922 0.561067 0.000000\r
+vt 0.893789 0.561322 0.000000\r
+vt 0.892005 0.561721 0.000000\r
+vt 0.889171 0.562346 0.000000\r
+vt 0.884759 0.563318 0.000000\r
+vt 0.878105 0.564838 0.000000\r
+vt 0.868839 0.567218 0.000000\r
+vt 0.857410 0.571031 0.000000\r
+vt 0.620444 0.106127 0.000000\r
+vt 0.617099 0.112307 0.000000\r
+vt 0.616012 0.109836 0.000000\r
+vt 0.610982 0.115547 0.000000\r
+vt 0.609512 0.112204 0.000000\r
+vt 0.603707 0.119399 0.000000\r
+vt 0.601780 0.115019 0.000000\r
+vt 0.595608 0.123687 0.000000\r
+vt 0.593173 0.118153 0.000000\r
+vt 0.587044 0.128224 0.000000\r
+vt 0.584069 0.121468 0.000000\r
+vt 0.578379 0.132817 0.000000\r
+vt 0.574858 0.124826 0.000000\r
+vt 0.569981 0.137272 0.000000\r
+vt 0.565927 0.128086 0.000000\r
+vt 0.562211 0.141398 0.000000\r
+vt 0.557663 0.131105 0.000000\r
+vt 0.555422 0.145007 0.000000\r
+vt 0.550441 0.133749 0.000000\r
+vt 0.549933 0.147927 0.000000\r
+vt 0.544601 0.135889 0.000000\r
+vt 0.545961 0.150039 0.000000\r
+vt 0.540376 0.137440 0.000000\r
+vt 0.543258 0.151469 0.000000\r
+vt 0.537504 0.138496 0.000000\r
+vt 0.618464 0.114550 0.000000\r
+vt 0.612828 0.118581 0.000000\r
+vt 0.606125 0.123375 0.000000\r
+vt 0.598664 0.128710 0.000000\r
+vt 0.590775 0.134353 0.000000\r
+vt 0.582795 0.140065 0.000000\r
+vt 0.575061 0.145605 0.000000\r
+vt 0.567907 0.150732 0.000000\r
+vt 0.561657 0.155215 0.000000\r
+vt 0.556604 0.158841 0.000000\r
+vt 0.552947 0.161462 0.000000\r
+vt 0.550457 0.163236 0.000000\r
+vt 0.620077 0.116552 0.000000\r
+vt 0.615010 0.121289 0.000000\r
+vt 0.608983 0.126922 0.000000\r
+vt 0.602276 0.133192 0.000000\r
+vt 0.595184 0.139822 0.000000\r
+vt 0.588012 0.146531 0.000000\r
+vt 0.581061 0.153036 0.000000\r
+vt 0.574633 0.159056 0.000000\r
+vt 0.569017 0.164318 0.000000\r
+vt 0.564477 0.168573 0.000000\r
+vt 0.561191 0.171649 0.000000\r
+vt 0.558954 0.173732 0.000000\r
+vt 0.621912 0.118301 0.000000\r
+vt 0.617491 0.123654 0.000000\r
+vt 0.612233 0.130019 0.000000\r
+vt 0.606381 0.137103 0.000000\r
+vt 0.600195 0.144594 0.000000\r
+vt 0.593939 0.152174 0.000000\r
+vt 0.587877 0.159521 0.000000\r
+vt 0.582271 0.166319 0.000000\r
+vt 0.577373 0.172260 0.000000\r
+vt 0.573415 0.177063 0.000000\r
+vt 0.570550 0.180537 0.000000\r
+vt 0.568601 0.182891 0.000000\r
+vt 0.623940 0.119782 0.000000\r
+vt 0.620233 0.125657 0.000000\r
+vt 0.615824 0.132643 0.000000\r
+vt 0.610918 0.140417 0.000000\r
+vt 0.605731 0.148636 0.000000\r
+vt 0.600486 0.156952 0.000000\r
+vt 0.595404 0.165012 0.000000\r
+vt 0.590705 0.172469 0.000000\r
+vt 0.586600 0.178985 0.000000\r
+vt 0.583282 0.184253 0.000000\r
+vt 0.580882 0.188063 0.000000\r
+vt 0.579251 0.190647 0.000000\r
+vt 0.626132 0.120983 0.000000\r
+vt 0.623198 0.127281 0.000000\r
+vt 0.619707 0.134769 0.000000\r
+vt 0.615822 0.143103 0.000000\r
+vt 0.611715 0.151913 0.000000\r
+vt 0.607563 0.160825 0.000000\r
+vt 0.603540 0.169463 0.000000\r
+vt 0.599820 0.177453 0.000000\r
+vt 0.596570 0.184435 0.000000\r
+vt 0.593945 0.190079 0.000000\r
+vt 0.592046 0.194162 0.000000\r
+vt 0.590758 0.196933 0.000000\r
+vt 0.628461 0.121891 0.000000\r
+vt 0.626347 0.128509 0.000000\r
+vt 0.623832 0.136377 0.000000\r
+vt 0.621032 0.145132 0.000000\r
+vt 0.618072 0.154389 0.000000\r
+vt 0.615080 0.163752 0.000000\r
+vt 0.612180 0.172825 0.000000\r
+vt 0.609500 0.181219 0.000000\r
+vt 0.607158 0.188553 0.000000\r
+vt 0.605267 0.194481 0.000000\r
+vt 0.603901 0.198770 0.000000\r
+vt 0.602977 0.201682 0.000000\r
+vt 0.630900 0.122493 0.000000\r
+vt 0.629644 0.129322 0.000000\r
+vt 0.628149 0.137442 0.000000\r
+vt 0.626485 0.146477 0.000000\r
+vt 0.624726 0.156029 0.000000\r
+vt 0.622947 0.165690 0.000000\r
+vt 0.621223 0.175053 0.000000\r
+vt 0.619630 0.183713 0.000000\r
+vt 0.618238 0.191280 0.000000\r
+vt 0.617115 0.197397 0.000000\r
+vt 0.616305 0.201822 0.000000\r
+vt 0.615762 0.204828 0.000000\r
+vt 0.633419 0.122776 0.000000\r
+vt 0.633050 0.129704 0.000000\r
+vt 0.632610 0.137942 0.000000\r
+vt 0.632119 0.147108 0.000000\r
+vt 0.631600 0.156798 0.000000\r
+vt 0.631075 0.166600 0.000000\r
+vt 0.630566 0.176098 0.000000\r
+vt 0.630095 0.184884 0.000000\r
+vt 0.629684 0.192560 0.000000\r
+vt 0.629354 0.198765 0.000000\r
+vt 0.629118 0.203254 0.000000\r
+vt 0.628967 0.206303 0.000000\r
+vt 0.635991 0.122727 0.000000\r
+vt 0.636528 0.129637 0.000000\r
+vt 0.637165 0.137853 0.000000\r
+vt 0.637873 0.146995 0.000000\r
+vt 0.638620 0.156661 0.000000\r
+vt 0.639375 0.166437 0.000000\r
+vt 0.640105 0.175912 0.000000\r
+vt 0.640781 0.184676 0.000000\r
+vt 0.641371 0.192333 0.000000\r
+vt 0.641850 0.198523 0.000000\r
+vt 0.642200 0.203001 0.000000\r
+vt 0.642448 0.206042 0.000000\r
+vt 0.638589 0.122332 0.000000\r
+vt 0.640040 0.129102 0.000000\r
+vt 0.641765 0.137152 0.000000\r
+vt 0.643682 0.146110 0.000000\r
+vt 0.645708 0.155581 0.000000\r
+vt 0.647756 0.165161 0.000000\r
+vt 0.649740 0.174446 0.000000\r
+vt 0.651574 0.183035 0.000000\r
+vt 0.653176 0.190540 0.000000\r
+vt 0.654471 0.196607 0.000000\r
+vt 0.655411 0.200996 0.000000\r
+vt 0.656057 0.203977 0.000000\r
+vt 0.641183 0.121579 0.000000\r
+vt 0.643548 0.128082 0.000000\r
+vt 0.646359 0.135816 0.000000\r
+vt 0.649486 0.144422 0.000000\r
+vt 0.652791 0.153522 0.000000\r
+vt 0.656132 0.162728 0.000000\r
+vt 0.659368 0.171651 0.000000\r
+vt 0.662359 0.179906 0.000000\r
+vt 0.664973 0.187120 0.000000\r
+vt 0.667084 0.192952 0.000000\r
+vt 0.668612 0.197172 0.000000\r
+vt 0.669651 0.200040 0.000000\r
+vt 0.643656 0.120493 0.000000\r
+vt 0.646893 0.126614 0.000000\r
+vt 0.650741 0.133892 0.000000\r
+vt 0.655021 0.141993 0.000000\r
+vt 0.659546 0.150559 0.000000\r
+vt 0.664120 0.159226 0.000000\r
+vt 0.668552 0.167627 0.000000\r
+vt 0.672649 0.175400 0.000000\r
+vt 0.676228 0.182193 0.000000\r
+vt 0.679119 0.187686 0.000000\r
+vt 0.681208 0.191661 0.000000\r
+vt 0.682621 0.194367 0.000000\r
+vt 0.645902 0.119130 0.000000\r
+vt 0.649929 0.124770 0.000000\r
+vt 0.654718 0.131477 0.000000\r
+vt 0.660047 0.138943 0.000000\r
+vt 0.665679 0.146839 0.000000\r
+vt 0.671375 0.154829 0.000000\r
+vt 0.676893 0.162575 0.000000\r
+vt 0.681995 0.169742 0.000000\r
+vt 0.686452 0.176007 0.000000\r
+vt 0.690052 0.181074 0.000000\r
+vt 0.692654 0.184741 0.000000\r
+vt 0.694413 0.187240 0.000000\r
+vt 0.647906 0.117518 0.000000\r
+vt 0.652640 0.122589 0.000000\r
+vt 0.658269 0.128621 0.000000\r
+vt 0.664533 0.135336 0.000000\r
+vt 0.671155 0.142439 0.000000\r
+vt 0.677853 0.149626 0.000000\r
+vt 0.684342 0.156596 0.000000\r
+vt 0.690344 0.163047 0.000000\r
+vt 0.695586 0.168687 0.000000\r
+vt 0.699822 0.173248 0.000000\r
+vt 0.702884 0.176551 0.000000\r
+vt 0.704956 0.178801 0.000000\r
+vt 0.649656 0.115685 0.000000\r
+vt 0.655006 0.120110 0.000000\r
+vt 0.661369 0.125374 0.000000\r
+vt 0.668451 0.131234 0.000000\r
+vt 0.675938 0.137433 0.000000\r
+vt 0.683512 0.143708 0.000000\r
+vt 0.690852 0.149794 0.000000\r
+vt 0.697641 0.155429 0.000000\r
+vt 0.703572 0.160355 0.000000\r
+vt 0.708365 0.164341 0.000000\r
+vt 0.711831 0.167227 0.000000\r
+vt 0.714179 0.169192 0.000000\r
+vt 0.651139 0.113659 0.000000\r
+vt 0.657012 0.117370 0.000000\r
+vt 0.663996 0.121784 0.000000\r
+vt 0.671771 0.126699 0.000000\r
+vt 0.679992 0.131899 0.000000\r
+vt 0.688309 0.137164 0.000000\r
+vt 0.696371 0.142271 0.000000\r
+vt 0.703829 0.147000 0.000000\r
+vt 0.710347 0.151137 0.000000\r
+vt 0.715615 0.154485 0.000000\r
+vt 0.719425 0.156909 0.000000\r
+vt 0.722009 0.158557 0.000000\r
+vt 0.652342 0.111468 0.000000\r
+vt 0.658638 0.114406 0.000000\r
+vt 0.666127 0.117901 0.000000\r
+vt 0.674463 0.121794 0.000000\r
+vt 0.683279 0.125912 0.000000\r
+vt 0.692200 0.130082 0.000000\r
+vt 0.700849 0.134129 0.000000\r
+vt 0.708853 0.137877 0.000000\r
+vt 0.715848 0.141157 0.000000\r
+vt 0.721504 0.143812 0.000000\r
+vt 0.725595 0.145734 0.000000\r
+vt 0.728372 0.147039 0.000000\r
+vt 0.653251 0.109141 0.000000\r
+vt 0.659867 0.111257 0.000000\r
+vt 0.667737 0.113776 0.000000\r
+vt 0.676498 0.116581 0.000000\r
+vt 0.685764 0.119549 0.000000\r
+vt 0.695142 0.122554 0.000000\r
+vt 0.704236 0.125471 0.000000\r
+vt 0.712653 0.128174 0.000000\r
+vt 0.720012 0.130540 0.000000\r
+vt 0.725964 0.132455 0.000000\r
+vt 0.730270 0.133842 0.000000\r
+vt 0.733195 0.134781 0.000000\r
+vt 0.653854 0.106704 0.000000\r
+vt 0.660682 0.107961 0.000000\r
+vt 0.668803 0.109457 0.000000\r
+vt 0.677845 0.111123 0.000000\r
+vt 0.687410 0.112886 0.000000\r
+vt 0.697090 0.114671 0.000000\r
+vt 0.706479 0.116403 0.000000\r
+vt 0.715172 0.118007 0.000000\r
+vt 0.722773 0.119412 0.000000\r
+vt 0.728924 0.120550 0.000000\r
+vt 0.733376 0.121372 0.000000\r
+vt 0.736401 0.121925 0.000000\r
+vt 0.654137 0.104186 0.000000\r
+vt 0.661064 0.104555 0.000000\r
+vt 0.669303 0.104994 0.000000\r
+vt 0.678476 0.105483 0.000000\r
+vt 0.688180 0.106001 0.000000\r
+vt 0.698002 0.106523 0.000000\r
+vt 0.707528 0.107030 0.000000\r
+vt 0.716348 0.107497 0.000000\r
+vt 0.724064 0.107905 0.000000\r
+vt 0.730309 0.108233 0.000000\r
+vt 0.734832 0.108466 0.000000\r
+vt 0.737910 0.108615 0.000000\r
+vt 0.654088 0.101616 0.000000\r
+vt 0.660996 0.101077 0.000000\r
+vt 0.669213 0.100438 0.000000\r
+vt 0.678361 0.099725 0.000000\r
+vt 0.688038 0.098971 0.000000\r
+vt 0.697833 0.098205 0.000000\r
+vt 0.707332 0.097460 0.000000\r
+vt 0.716125 0.096767 0.000000\r
+vt 0.723815 0.096157 0.000000\r
+vt 0.730037 0.095659 0.000000\r
+vt 0.734540 0.095292 0.000000\r
+vt 0.737600 0.095031 0.000000\r
+vt 0.653693 0.099020 0.000000\r
+vt 0.660460 0.097566 0.000000\r
+vt 0.668510 0.095837 0.000000\r
+vt 0.677471 0.093912 0.000000\r
+vt 0.686949 0.091874 0.000000\r
+vt 0.696542 0.089808 0.000000\r
+vt 0.705843 0.087801 0.000000\r
+vt 0.714452 0.085940 0.000000\r
+vt 0.721978 0.084308 0.000000\r
+vt 0.728063 0.082983 0.000000\r
+vt 0.732467 0.082020 0.000000\r
+vt 0.735459 0.081356 0.000000\r
+vt 0.652938 0.096428 0.000000\r
+vt 0.659438 0.094060 0.000000\r
+vt 0.667170 0.091243 0.000000\r
+vt 0.675776 0.088106 0.000000\r
+vt 0.684878 0.084787 0.000000\r
+vt 0.694088 0.081425 0.000000\r
+vt 0.703017 0.078161 0.000000\r
+vt 0.711279 0.075136 0.000000\r
+vt 0.718499 0.072488 0.000000\r
+vt 0.724337 0.070343 0.000000\r
+vt 0.728561 0.068789 0.000000\r
+vt 0.731432 0.067732 0.000000\r
+vt 0.651851 0.093957 0.000000\r
+vt 0.657967 0.090717 0.000000\r
+vt 0.665241 0.086863 0.000000\r
+vt 0.673338 0.082572 0.000000\r
+vt 0.681900 0.078033 0.000000\r
+vt 0.690562 0.073436 0.000000\r
+vt 0.698958 0.068977 0.000000\r
+vt 0.706725 0.064846 0.000000\r
+vt 0.713511 0.061233 0.000000\r
+vt 0.718997 0.058310 0.000000\r
+vt 0.722968 0.056196 0.000000\r
+vt 0.725669 0.054764 0.000000\r
+vt 0.650486 0.091715 0.000000\r
+vt 0.656121 0.087683 0.000000\r
+vt 0.662822 0.082888 0.000000\r
+vt 0.670281 0.077551 0.000000\r
+vt 0.678167 0.071905 0.000000\r
+vt 0.686144 0.066191 0.000000\r
+vt 0.693874 0.060648 0.000000\r
+vt 0.701024 0.055517 0.000000\r
+vt 0.707270 0.051031 0.000000\r
+vt 0.712319 0.047403 0.000000\r
+vt 0.715973 0.044779 0.000000\r
+vt 0.718462 0.043004 0.000000\r
+vt 0.648872 0.089713 0.000000\r
+vt 0.653938 0.084975 0.000000\r
+vt 0.659963 0.079342 0.000000\r
+vt 0.666668 0.073071 0.000000\r
+vt 0.673756 0.066440 0.000000\r
+vt 0.680925 0.059728 0.000000\r
+vt 0.687871 0.053221 0.000000\r
+vt 0.694295 0.047199 0.000000\r
+vt 0.699906 0.041935 0.000000\r
+vt 0.704442 0.037678 0.000000\r
+vt 0.707724 0.034601 0.000000\r
+vt 0.709960 0.032517 0.000000\r
+vt 0.647037 0.087965 0.000000\r
+vt 0.651457 0.082612 0.000000\r
+vt 0.656713 0.076246 0.000000\r
+vt 0.662562 0.069161 0.000000\r
+vt 0.668744 0.061670 0.000000\r
+vt 0.674996 0.054090 0.000000\r
+vt 0.681054 0.046741 0.000000\r
+vt 0.686655 0.039942 0.000000\r
+vt 0.691547 0.034000 0.000000\r
+vt 0.695501 0.029196 0.000000\r
+vt 0.698362 0.025722 0.000000\r
+vt 0.700310 0.023367 0.000000\r
+vt 0.645010 0.086484 0.000000\r
+vt 0.648715 0.080610 0.000000\r
+vt 0.653122 0.073624 0.000000\r
+vt 0.658025 0.065850 0.000000\r
+vt 0.663208 0.057631 0.000000\r
+vt 0.668449 0.049315 0.000000\r
+vt 0.673526 0.041256 0.000000\r
+vt 0.678220 0.033799 0.000000\r
+vt 0.682320 0.027283 0.000000\r
+vt 0.685633 0.022016 0.000000\r
+vt 0.688029 0.018206 0.000000\r
+vt 0.689659 0.015622 0.000000\r
+vt 0.642817 0.085284 0.000000\r
+vt 0.645751 0.078986 0.000000\r
+vt 0.649239 0.071498 0.000000\r
+vt 0.653121 0.063166 0.000000\r
+vt 0.657224 0.054357 0.000000\r
+vt 0.661373 0.045446 0.000000\r
+vt 0.665391 0.036810 0.000000\r
+vt 0.669106 0.028822 0.000000\r
+vt 0.672350 0.021841 0.000000\r
+vt 0.674972 0.016198 0.000000\r
+vt 0.676867 0.012116 0.000000\r
+vt 0.678153 0.009346 0.000000\r
+vt 0.640488 0.084376 0.000000\r
+vt 0.642601 0.077759 0.000000\r
+vt 0.645115 0.069892 0.000000\r
+vt 0.647912 0.061138 0.000000\r
+vt 0.650869 0.051884 0.000000\r
+vt 0.653857 0.042523 0.000000\r
+vt 0.656752 0.033452 0.000000\r
+vt 0.659429 0.025062 0.000000\r
+vt 0.661766 0.017730 0.000000\r
+vt 0.663653 0.011804 0.000000\r
+vt 0.665016 0.007517 0.000000\r
+vt 0.665938 0.004606 0.000000\r
+vt 0.638050 0.083774 0.000000\r
+vt 0.639305 0.076946 0.000000\r
+vt 0.640798 0.068828 0.000000\r
+vt 0.642460 0.059795 0.000000\r
+vt 0.644217 0.050246 0.000000\r
+vt 0.645993 0.040588 0.000000\r
+vt 0.647713 0.031229 0.000000\r
+vt 0.649303 0.022572 0.000000\r
+vt 0.650691 0.015009 0.000000\r
+vt 0.651811 0.008895 0.000000\r
+vt 0.652618 0.004473 0.000000\r
+vt 0.653159 0.001469 0.000000\r
+vt 0.635531 0.083492 0.000000\r
+vt 0.635899 0.076565 0.000000\r
+vt 0.636338 0.068329 0.000000\r
+vt 0.636828 0.059166 0.000000\r
+vt 0.637345 0.049479 0.000000\r
+vt 0.637868 0.039681 0.000000\r
+vt 0.638375 0.030187 0.000000\r
+vt 0.638843 0.021406 0.000000\r
+vt 0.639251 0.013734 0.000000\r
+vt 0.639579 0.007533 0.000000\r
+vt 0.639813 0.003047 0.000000\r
+vt 0.639962 0.000000 0.000000\r
+vt 0.632959 0.083541 0.000000\r
+vt 0.632422 0.076633 0.000000\r
+vt 0.631785 0.068419 0.000000\r
+vt 0.631077 0.059279 0.000000\r
+vt 0.630329 0.049617 0.000000\r
+vt 0.629572 0.039845 0.000000\r
+vt 0.628840 0.030376 0.000000\r
+vt 0.628163 0.021617 0.000000\r
+vt 0.627571 0.013965 0.000000\r
+vt 0.627092 0.007779 0.000000\r
+vt 0.626741 0.003305 0.000000\r
+vt 0.626492 0.000266 0.000000\r
+vt 0.630362 0.083936 0.000000\r
+vt 0.628911 0.077167 0.000000\r
+vt 0.627187 0.069120 0.000000\r
+vt 0.625269 0.060165 0.000000\r
+vt 0.623243 0.050698 0.000000\r
+vt 0.621195 0.041122 0.000000\r
+vt 0.619211 0.031842 0.000000\r
+vt 0.617377 0.023259 0.000000\r
+vt 0.615775 0.015759 0.000000\r
+vt 0.614480 0.009696 0.000000\r
+vt 0.613540 0.005311 0.000000\r
+vt 0.612894 0.002332 0.000000\r
+vt 0.627769 0.084689 0.000000\r
+vt 0.625404 0.078187 0.000000\r
+vt 0.622593 0.070456 0.000000\r
+vt 0.619467 0.061852 0.000000\r
+vt 0.616164 0.052756 0.000000\r
+vt 0.612824 0.043554 0.000000\r
+vt 0.609590 0.034636 0.000000\r
+vt 0.606599 0.026387 0.000000\r
+vt 0.603987 0.019178 0.000000\r
+vt 0.601876 0.013351 0.000000\r
+vt 0.600349 0.009134 0.000000\r
+vt 0.599311 0.006268 0.000000\r
+vt 0.625296 0.085775 0.000000\r
+vt 0.622060 0.079656 0.000000\r
+vt 0.618213 0.072379 0.000000\r
+vt 0.613934 0.064281 0.000000\r
+vt 0.609412 0.055718 0.000000\r
+vt 0.604840 0.047055 0.000000\r
+vt 0.600411 0.038658 0.000000\r
+vt 0.596316 0.030890 0.000000\r
+vt 0.592740 0.024102 0.000000\r
+vt 0.589851 0.018613 0.000000\r
+vt 0.587764 0.014641 0.000000\r
+vt 0.586352 0.011937 0.000000\r
+vt 0.623051 0.087138 0.000000\r
+vt 0.619024 0.081499 0.000000\r
+vt 0.614237 0.074793 0.000000\r
+vt 0.608910 0.067329 0.000000\r
+vt 0.603281 0.059436 0.000000\r
+vt 0.597589 0.051449 0.000000\r
+vt 0.592075 0.043707 0.000000\r
+vt 0.586976 0.036544 0.000000\r
+vt 0.582524 0.030283 0.000000\r
+vt 0.578926 0.025219 0.000000\r
+vt 0.576327 0.021554 0.000000\r
+vt 0.574569 0.019058 0.000000\r
+vt 0.621046 0.088750 0.000000\r
+vt 0.616314 0.083679 0.000000\r
+vt 0.610687 0.077648 0.000000\r
+vt 0.604425 0.070934 0.000000\r
+vt 0.597807 0.063834 0.000000\r
+vt 0.591114 0.056648 0.000000\r
+vt 0.584629 0.049681 0.000000\r
+vt 0.578632 0.043233 0.000000\r
+vt 0.573395 0.037596 0.000000\r
+vt 0.569163 0.033037 0.000000\r
+vt 0.566104 0.029737 0.000000\r
+vt 0.564034 0.027488 0.000000\r
+vt 0.619296 0.090582 0.000000\r
+vt 0.613947 0.086157 0.000000\r
+vt 0.607587 0.080894 0.000000\r
+vt 0.600508 0.075034 0.000000\r
+vt 0.593025 0.068836 0.000000\r
+vt 0.585456 0.062562 0.000000\r
+vt 0.578122 0.056478 0.000000\r
+vt 0.571338 0.050845 0.000000\r
+vt 0.565413 0.045919 0.000000\r
+vt 0.560624 0.041935 0.000000\r
+vt 0.557163 0.039050 0.000000\r
+vt 0.554817 0.037086 0.000000\r
+vt 0.617813 0.092608 0.000000\r
+vt 0.611942 0.088897 0.000000\r
+vt 0.604960 0.084483 0.000000\r
+vt 0.597189 0.079567 0.000000\r
+vt 0.588972 0.074367 0.000000\r
+vt 0.580660 0.069102 0.000000\r
+vt 0.572603 0.063995 0.000000\r
+vt 0.565151 0.059265 0.000000\r
+vt 0.558639 0.055128 0.000000\r
+vt 0.553376 0.051781 0.000000\r
+vt 0.549571 0.049357 0.000000\r
+vt 0.546990 0.047709 0.000000\r
+vt 0.616610 0.094798 0.000000\r
+vt 0.610316 0.091860 0.000000\r
+vt 0.602829 0.088364 0.000000\r
+vt 0.594496 0.084471 0.000000\r
+vt 0.585684 0.080351 0.000000\r
+vt 0.576767 0.076180 0.000000\r
+vt 0.568124 0.072131 0.000000\r
+vt 0.560126 0.068381 0.000000\r
+vt 0.553137 0.065100 0.000000\r
+vt 0.547486 0.062443 0.000000\r
+vt 0.543399 0.060520 0.000000\r
+vt 0.540625 0.059214 0.000000\r
+vt 0.615701 0.097125 0.000000\r
+vt 0.609086 0.095008 0.000000\r
+vt 0.601219 0.092488 0.000000\r
+vt 0.592460 0.089682 0.000000\r
+vt 0.583198 0.086712 0.000000\r
+vt 0.573824 0.083703 0.000000\r
+vt 0.564735 0.080783 0.000000\r
+vt 0.556323 0.078077 0.000000\r
+vt 0.548969 0.075708 0.000000\r
+vt 0.543022 0.073789 0.000000\r
+vt 0.538719 0.072401 0.000000\r
+vt 0.535797 0.071460 0.000000\r
+vt 0.615098 0.099561 0.000000\r
+vt 0.608271 0.098304 0.000000\r
+vt 0.600151 0.096806 0.000000\r
+vt 0.591111 0.095138 0.000000\r
+vt 0.581550 0.093372 0.000000\r
+vt 0.571872 0.091584 0.000000\r
+vt 0.562487 0.089847 0.000000\r
+vt 0.553799 0.088238 0.000000\r
+vt 0.546201 0.086828 0.000000\r
+vt 0.540054 0.085686 0.000000\r
+vt 0.535605 0.084860 0.000000\r
+vt 0.532582 0.084305 0.000000\r
+vt 0.614814 0.102079 0.000000\r
+vt 0.607888 0.101709 0.000000\r
+vt 0.599650 0.101268 0.000000\r
+vt 0.590479 0.100776 0.000000\r
+vt 0.580777 0.100255 0.000000\r
+vt 0.570958 0.099728 0.000000\r
+vt 0.561433 0.099217 0.000000\r
+vt 0.552616 0.098744 0.000000\r
+vt 0.544902 0.098331 0.000000\r
+vt 0.538659 0.097998 0.000000\r
+vt 0.534137 0.097760 0.000000\r
+vt 0.531060 0.097608 0.000000\r
+vt 0.614863 0.104649 0.000000\r
+vt 0.607956 0.105186 0.000000\r
+vt 0.599739 0.105824 0.000000\r
+vt 0.590592 0.106533 0.000000\r
+vt 0.580916 0.107284 0.000000\r
+vt 0.571122 0.108045 0.000000\r
+vt 0.561624 0.108785 0.000000\r
+vt 0.552831 0.109472 0.000000\r
+vt 0.545142 0.110077 0.000000\r
+vt 0.538921 0.110570 0.000000\r
+vt 0.534417 0.110933 0.000000\r
+vt 0.531357 0.111191 0.000000\r
+vt 0.615258 0.107244 0.000000\r
+vt 0.608491 0.108697 0.000000\r
+vt 0.600441 0.110424 0.000000\r
+vt 0.591480 0.112347 0.000000\r
+vt 0.582001 0.114381 0.000000\r
+vt 0.572408 0.116442 0.000000\r
+vt 0.563106 0.118444 0.000000\r
+vt 0.554497 0.120300 0.000000\r
+vt 0.546971 0.121926 0.000000\r
+vt 0.540884 0.123246 0.000000\r
+vt 0.536480 0.124206 0.000000\r
+vt 0.533487 0.124868 0.000000\r
+vt 0.624841 0.108209 0.000000\r
+vt 0.624237 0.106832 0.000000\r
+vt 0.625597 0.109457 0.000000\r
+vt 0.626489 0.110569 0.000000\r
+vt 0.627502 0.111539 0.000000\r
+vt 0.628621 0.112359 0.000000\r
+vt 0.629832 0.113024 0.000000\r
+vt 0.631119 0.113525 0.000000\r
+vt 0.632468 0.113857 0.000000\r
+vt 0.633863 0.114011 0.000000\r
+vt 0.635291 0.113982 0.000000\r
+vt 0.636736 0.113761 0.000000\r
+vt 0.638183 0.113342 0.000000\r
+vt 0.639565 0.112739 0.000000\r
+vt 0.640816 0.111986 0.000000\r
+vt 0.641931 0.111096 0.000000\r
+vt 0.642904 0.110086 0.000000\r
+vt 0.643727 0.108970 0.000000\r
+vt 0.644393 0.107762 0.000000\r
+vt 0.644896 0.106479 0.000000\r
+vt 0.645229 0.105133 0.000000\r
+vt 0.645384 0.103742 0.000000\r
+vt 0.645354 0.102318 0.000000\r
+vt 0.645133 0.100876 0.000000\r
+vt 0.644713 0.099433 0.000000\r
+vt 0.644109 0.098056 0.000000\r
+vt 0.643353 0.096808 0.000000\r
+vt 0.642462 0.095696 0.000000\r
+vt 0.641449 0.094726 0.000000\r
+vt 0.640330 0.093906 0.000000\r
+vt 0.639119 0.093242 0.000000\r
+vt 0.637832 0.092741 0.000000\r
+vt 0.636484 0.092410 0.000000\r
+vt 0.635088 0.092256 0.000000\r
+vt 0.633661 0.092285 0.000000\r
+vt 0.632216 0.092506 0.000000\r
+vt 0.630768 0.092926 0.000000\r
+vt 0.629387 0.093529 0.000000\r
+vt 0.628136 0.094282 0.000000\r
+vt 0.627020 0.095171 0.000000\r
+vt 0.626047 0.096182 0.000000\r
+vt 0.625224 0.097297 0.000000\r
+vt 0.624557 0.098505 0.000000\r
+vt 0.624054 0.099788 0.000000\r
+vt 0.623721 0.101133 0.000000\r
+vt 0.623566 0.102524 0.000000\r
+vt 0.623596 0.103948 0.000000\r
+vt 0.623817 0.105389 0.000000\r
+vt 0.101713 0.894641 0.000000\r
+vt 0.101291 0.900830 0.000000\r
+vt 0.098689 0.900482 0.000000\r
+vt 0.099950 0.894406 0.000000\r
+vt 0.100782 0.908285 0.000000\r
+vt 0.097164 0.907800 0.000000\r
+vt 0.100193 0.916905 0.000000\r
+vt 0.095399 0.916262 0.000000\r
+vt 0.099547 0.926372 0.000000\r
+vt 0.093460 0.925555 0.000000\r
+vt 0.098869 0.936295 0.000000\r
+vt 0.091426 0.935296 0.000000\r
+vt 0.098189 0.946256 0.000000\r
+vt 0.089385 0.945074 0.000000\r
+vt 0.097536 0.955814 0.000000\r
+vt 0.087425 0.954457 0.000000\r
+vt 0.096943 0.964508 0.000000\r
+vt 0.085642 0.962990 0.000000\r
+vt 0.096443 0.971829 0.000000\r
+vt 0.084139 0.970177 0.000000\r
+vt 0.096079 0.977149 0.000000\r
+vt 0.083044 0.975399 0.000000\r
+vt 0.095912 0.979601 0.000000\r
+vt 0.082532 0.977805 0.000000\r
+vt 0.095866 0.980275 0.000000\r
+vt 0.082390 0.978466 0.000000\r
+vt 0.096233 0.899816 0.000000\r
+vt 0.098292 0.893957 0.000000\r
+vt 0.093745 0.906872 0.000000\r
+vt 0.090865 0.915031 0.000000\r
+vt 0.087701 0.923991 0.000000\r
+vt 0.084383 0.933383 0.000000\r
+vt 0.081053 0.942811 0.000000\r
+vt 0.077856 0.951858 0.000000\r
+vt 0.074947 0.960086 0.000000\r
+vt 0.072496 0.967015 0.000000\r
+vt 0.070711 0.972050 0.000000\r
+vt 0.069879 0.974368 0.000000\r
+vt 0.069648 0.975005 0.000000\r
+vt 0.093938 0.898856 0.000000\r
+vt 0.096748 0.893311 0.000000\r
+vt 0.090548 0.905533 0.000000\r
+vt 0.086624 0.913254 0.000000\r
+vt 0.082314 0.921732 0.000000\r
+vt 0.077795 0.930621 0.000000\r
+vt 0.073258 0.939543 0.000000\r
+vt 0.068903 0.948104 0.000000\r
+vt 0.064942 0.955891 0.000000\r
+vt 0.061604 0.962448 0.000000\r
+vt 0.059175 0.967214 0.000000\r
+vt 0.058046 0.969408 0.000000\r
+vt 0.057735 0.970010 0.000000\r
+vt 0.091823 0.897622 0.000000\r
+vt 0.095326 0.892482 0.000000\r
+vt 0.087599 0.903813 0.000000\r
+vt 0.082712 0.910971 0.000000\r
+vt 0.077344 0.918832 0.000000\r
+vt 0.071716 0.927073 0.000000\r
+vt 0.066066 0.935346 0.000000\r
+vt 0.060643 0.943284 0.000000\r
+vt 0.055711 0.950504 0.000000\r
+vt 0.051556 0.956585 0.000000\r
+vt 0.048532 0.961004 0.000000\r
+vt 0.047132 0.963039 0.000000\r
+vt 0.046746 0.963598 0.000000\r
+vt 0.089905 0.896139 0.000000\r
+vt 0.094038 0.891486 0.000000\r
+vt 0.084925 0.901743 0.000000\r
+vt 0.079164 0.908225 0.000000\r
+vt 0.072836 0.915343 0.000000\r
+vt 0.066203 0.922806 0.000000\r
+vt 0.059543 0.930297 0.000000\r
+vt 0.053152 0.937485 0.000000\r
+vt 0.047339 0.944023 0.000000\r
+vt 0.042442 0.949530 0.000000\r
+vt 0.038881 0.953533 0.000000\r
+vt 0.037235 0.955378 0.000000\r
+vt 0.036782 0.955884 0.000000\r
+vt 0.088205 0.894427 0.000000\r
+vt 0.092895 0.890336 0.000000\r
+vt 0.082553 0.899356 0.000000\r
+vt 0.076016 0.905057 0.000000\r
+vt 0.068838 0.911318 0.000000\r
+vt 0.061311 0.917882 0.000000\r
+vt 0.053756 0.924472 0.000000\r
+vt 0.046506 0.930795 0.000000\r
+vt 0.039911 0.936547 0.000000\r
+vt 0.034357 0.941391 0.000000\r
+vt 0.030318 0.944914 0.000000\r
+vt 0.028454 0.946539 0.000000\r
+vt 0.027942 0.946986 0.000000\r
+vt 0.086740 0.892509 0.000000\r
+vt 0.091912 0.889048 0.000000\r
+vt 0.080510 0.896681 0.000000\r
+vt 0.073305 0.901508 0.000000\r
+vt 0.065393 0.906809 0.000000\r
+vt 0.057098 0.912367 0.000000\r
+vt 0.048772 0.917946 0.000000\r
+vt 0.040781 0.923301 0.000000\r
+vt 0.033513 0.928172 0.000000\r
+vt 0.027392 0.932274 0.000000\r
+vt 0.022942 0.935259 0.000000\r
+vt 0.020891 0.936639 0.000000\r
+vt 0.020328 0.937018 0.000000\r
+vt 0.085531 0.890407 0.000000\r
+vt 0.091099 0.887636 0.000000\r
+vt 0.078823 0.893751 0.000000\r
+vt 0.071067 0.897620 0.000000\r
+vt 0.062549 0.901869 0.000000\r
+vt 0.053620 0.906325 0.000000\r
+vt 0.044656 0.910798 0.000000\r
+vt 0.036054 0.915091 0.000000\r
+vt 0.028231 0.918996 0.000000\r
+vt 0.021642 0.922286 0.000000\r
+vt 0.016853 0.924681 0.000000\r
+vt 0.014646 0.925791 0.000000\r
+vt 0.014040 0.926098 0.000000\r
+vt 0.084596 0.888144 0.000000\r
+vt 0.090472 0.886115 0.000000\r
+vt 0.077520 0.890596 0.000000\r
+vt 0.069338 0.893434 0.000000\r
+vt 0.060352 0.896551 0.000000\r
+vt 0.050932 0.899820 0.000000\r
+vt 0.041476 0.903103 0.000000\r
+vt 0.032402 0.906253 0.000000\r
+vt 0.024149 0.909119 0.000000\r
+vt 0.017199 0.911534 0.000000\r
+vt 0.012147 0.913293 0.000000\r
+vt 0.009820 0.914113 0.000000\r
+vt 0.009181 0.914340 0.000000\r
+vt 0.083957 0.885741 0.000000\r
+vt 0.090042 0.884497 0.000000\r
+vt 0.076628 0.887246 0.000000\r
+vt 0.068153 0.888990 0.000000\r
+vt 0.058847 0.890907 0.000000\r
+vt 0.049091 0.892917 0.000000\r
+vt 0.039298 0.894936 0.000000\r
+vt 0.029900 0.896873 0.000000\r
+vt 0.021353 0.898636 0.000000\r
+vt 0.014155 0.900123 0.000000\r
+vt 0.008924 0.901207 0.000000\r
+vt 0.006514 0.901716 0.000000\r
+vt 0.005852 0.901858 0.000000\r
+vt 0.083631 0.883217 0.000000\r
+vt 0.089822 0.882794 0.000000\r
+vt 0.076173 0.883732 0.000000\r
+vt 0.067550 0.884331 0.000000\r
+vt 0.058080 0.884989 0.000000\r
+vt 0.048153 0.885680 0.000000\r
+vt 0.038188 0.886373 0.000000\r
+vt 0.028626 0.887039 0.000000\r
+vt 0.019929 0.887646 0.000000\r
+vt 0.012605 0.888158 0.000000\r
+vt 0.007282 0.888533 0.000000\r
+vt 0.004829 0.888713 0.000000\r
+vt 0.004155 0.888764 0.000000\r
+vt 0.083639 0.880592 0.000000\r
+vt 0.089828 0.881015 0.000000\r
+vt 0.076185 0.880083 0.000000\r
+vt 0.067564 0.879494 0.000000\r
+vt 0.058098 0.878848 0.000000\r
+vt 0.048175 0.878170 0.000000\r
+vt 0.038214 0.877490 0.000000\r
+vt 0.028655 0.876838 0.000000\r
+vt 0.019962 0.876244 0.000000\r
+vt 0.012641 0.875744 0.000000\r
+vt 0.007321 0.875381 0.000000\r
+vt 0.004868 0.875213 0.000000\r
+vt 0.004194 0.875167 0.000000\r
+vt 0.083988 0.877990 0.000000\r
+vt 0.090064 0.879251 0.000000\r
+vt 0.076670 0.876466 0.000000\r
+vt 0.068207 0.874701 0.000000\r
+vt 0.058915 0.872761 0.000000\r
+vt 0.049174 0.870728 0.000000\r
+vt 0.039396 0.868686 0.000000\r
+vt 0.030013 0.866726 0.000000\r
+vt 0.021479 0.864943 0.000000\r
+vt 0.014293 0.863440 0.000000\r
+vt 0.009071 0.862345 0.000000\r
+vt 0.006665 0.861833 0.000000\r
+vt 0.006004 0.861691 0.000000\r
+vt 0.084654 0.875534 0.000000\r
+vt 0.090513 0.877593 0.000000\r
+vt 0.077598 0.873046 0.000000\r
+vt 0.069438 0.870166 0.000000\r
+vt 0.060479 0.867002 0.000000\r
+vt 0.051087 0.863685 0.000000\r
+vt 0.041659 0.860354 0.000000\r
+vt 0.032612 0.857157 0.000000\r
+vt 0.024384 0.854248 0.000000\r
+vt 0.017455 0.851797 0.000000\r
+vt 0.012420 0.850012 0.000000\r
+vt 0.010101 0.849180 0.000000\r
+vt 0.009465 0.848949 0.000000\r
+vt 0.085614 0.873240 0.000000\r
+vt 0.091159 0.876049 0.000000\r
+vt 0.078937 0.869849 0.000000\r
+vt 0.071216 0.865925 0.000000\r
+vt 0.062737 0.861615 0.000000\r
+vt 0.053849 0.857096 0.000000\r
+vt 0.044927 0.852559 0.000000\r
+vt 0.036365 0.848204 0.000000\r
+vt 0.028579 0.844243 0.000000\r
+vt 0.022021 0.840906 0.000000\r
+vt 0.017256 0.838476 0.000000\r
+vt 0.015062 0.837348 0.000000\r
+vt 0.014460 0.837036 0.000000\r
+vt 0.086847 0.871124 0.000000\r
+vt 0.091988 0.874627 0.000000\r
+vt 0.080657 0.866900 0.000000\r
+vt 0.073498 0.862013 0.000000\r
+vt 0.065637 0.856645 0.000000\r
+vt 0.057396 0.851017 0.000000\r
+vt 0.049124 0.845367 0.000000\r
+vt 0.041185 0.839945 0.000000\r
+vt 0.033965 0.835012 0.000000\r
+vt 0.027885 0.830857 0.000000\r
+vt 0.023466 0.827834 0.000000\r
+vt 0.021430 0.826434 0.000000\r
+vt 0.020872 0.826048 0.000000\r
+vt 0.088331 0.869207 0.000000\r
+vt 0.092984 0.873339 0.000000\r
+vt 0.082726 0.864226 0.000000\r
+vt 0.076244 0.858465 0.000000\r
+vt 0.069126 0.852138 0.000000\r
+vt 0.061664 0.845504 0.000000\r
+vt 0.054173 0.838844 0.000000\r
+vt 0.046984 0.832453 0.000000\r
+vt 0.040446 0.826640 0.000000\r
+vt 0.034939 0.821743 0.000000\r
+vt 0.030936 0.818182 0.000000\r
+vt 0.029092 0.816536 0.000000\r
+vt 0.028585 0.816083 0.000000\r
+vt 0.090043 0.867506 0.000000\r
+vt 0.094134 0.872197 0.000000\r
+vt 0.085114 0.861854 0.000000\r
+vt 0.079413 0.855318 0.000000\r
+vt 0.073152 0.848139 0.000000\r
+vt 0.066587 0.840613 0.000000\r
+vt 0.059998 0.833057 0.000000\r
+vt 0.053675 0.825807 0.000000\r
+vt 0.047923 0.819212 0.000000\r
+vt 0.043078 0.813658 0.000000\r
+vt 0.039556 0.809619 0.000000\r
+vt 0.037930 0.807755 0.000000\r
+vt 0.037484 0.807243 0.000000\r
+vt 0.091961 0.866041 0.000000\r
+vt 0.095422 0.871213 0.000000\r
+vt 0.087788 0.859811 0.000000\r
+vt 0.082962 0.852607 0.000000\r
+vt 0.077661 0.844694 0.000000\r
+vt 0.072103 0.836399 0.000000\r
+vt 0.066523 0.828073 0.000000\r
+vt 0.061169 0.820082 0.000000\r
+vt 0.056298 0.812815 0.000000\r
+vt 0.052195 0.806693 0.000000\r
+vt 0.049211 0.802243 0.000000\r
+vt 0.047831 0.800192 0.000000\r
+vt 0.047451 0.799629 0.000000\r
+vt 0.094062 0.864832 0.000000\r
+vt 0.096834 0.870401 0.000000\r
+vt 0.090719 0.858125 0.000000\r
+vt 0.086850 0.850368 0.000000\r
+vt 0.082600 0.841850 0.000000\r
+vt 0.078145 0.832921 0.000000\r
+vt 0.073672 0.823957 0.000000\r
+vt 0.069379 0.815356 0.000000\r
+vt 0.065473 0.807532 0.000000\r
+vt 0.062183 0.800943 0.000000\r
+vt 0.059789 0.796154 0.000000\r
+vt 0.058678 0.793947 0.000000\r
+vt 0.058372 0.793341 0.000000\r
+vt 0.096325 0.863898 0.000000\r
+vt 0.098355 0.869773 0.000000\r
+vt 0.093874 0.856822 0.000000\r
+vt 0.091036 0.848639 0.000000\r
+vt 0.087918 0.839653 0.000000\r
+vt 0.084649 0.830233 0.000000\r
+vt 0.081367 0.820777 0.000000\r
+vt 0.078217 0.811703 0.000000\r
+vt 0.075351 0.803450 0.000000\r
+vt 0.072936 0.796500 0.000000\r
+vt 0.071177 0.791448 0.000000\r
+vt 0.070357 0.789121 0.000000\r
+vt 0.070130 0.788482 0.000000\r
+vt 0.098729 0.863258 0.000000\r
+vt 0.099973 0.869343 0.000000\r
+vt 0.097223 0.855929 0.000000\r
+vt 0.095479 0.847454 0.000000\r
+vt 0.093563 0.838148 0.000000\r
+vt 0.091552 0.828392 0.000000\r
+vt 0.089534 0.818599 0.000000\r
+vt 0.087596 0.809201 0.000000\r
+vt 0.085833 0.800654 0.000000\r
+vt 0.084347 0.793457 0.000000\r
+vt 0.083263 0.788225 0.000000\r
+vt 0.082753 0.785815 0.000000\r
+vt 0.082611 0.785153 0.000000\r
+vt 0.101253 0.862932 0.000000\r
+vt 0.101676 0.869123 0.000000\r
+vt 0.100737 0.855475 0.000000\r
+vt 0.100139 0.846851 0.000000\r
+vt 0.099481 0.837381 0.000000\r
+vt 0.098790 0.827454 0.000000\r
+vt 0.098096 0.817489 0.000000\r
+vt 0.097430 0.807927 0.000000\r
+vt 0.096824 0.799230 0.000000\r
+vt 0.096312 0.791906 0.000000\r
+vt 0.095937 0.786584 0.000000\r
+vt 0.095756 0.784131 0.000000\r
+vt 0.095705 0.783456 0.000000\r
+vt 0.103878 0.862941 0.000000\r
+vt 0.103455 0.869129 0.000000\r
+vt 0.104387 0.855486 0.000000\r
+vt 0.104975 0.846866 0.000000\r
+vt 0.105622 0.837399 0.000000\r
+vt 0.106299 0.827476 0.000000\r
+vt 0.106980 0.817515 0.000000\r
+vt 0.107632 0.807957 0.000000\r
+vt 0.108226 0.799263 0.000000\r
+vt 0.108726 0.791942 0.000000\r
+vt 0.109089 0.786622 0.000000\r
+vt 0.109256 0.784170 0.000000\r
+vt 0.109302 0.783496 0.000000\r
+vt 0.106480 0.863289 0.000000\r
+vt 0.105219 0.869365 0.000000\r
+vt 0.108004 0.855971 0.000000\r
+vt 0.109769 0.847509 0.000000\r
+vt 0.111708 0.838216 0.000000\r
+vt 0.113742 0.828475 0.000000\r
+vt 0.115784 0.818697 0.000000\r
+vt 0.117743 0.809314 0.000000\r
+vt 0.119527 0.800780 0.000000\r
+vt 0.121029 0.793594 0.000000\r
+vt 0.122124 0.788372 0.000000\r
+vt 0.122636 0.785966 0.000000\r
+vt 0.122779 0.785305 0.000000\r
+vt 0.108936 0.863955 0.000000\r
+vt 0.106876 0.869814 0.000000\r
+vt 0.111424 0.856899 0.000000\r
+vt 0.114303 0.848740 0.000000\r
+vt 0.117467 0.839780 0.000000\r
+vt 0.120785 0.830388 0.000000\r
+vt 0.124116 0.820960 0.000000\r
+vt 0.127313 0.811913 0.000000\r
+vt 0.130221 0.803685 0.000000\r
+vt 0.132672 0.796756 0.000000\r
+vt 0.134457 0.791721 0.000000\r
+vt 0.135290 0.789403 0.000000\r
+vt 0.135521 0.788766 0.000000\r
+vt 0.111230 0.864915 0.000000\r
+vt 0.108421 0.870460 0.000000\r
+vt 0.114621 0.858238 0.000000\r
+vt 0.118544 0.850517 0.000000\r
+vt 0.122855 0.842039 0.000000\r
+vt 0.127374 0.833150 0.000000\r
+vt 0.131911 0.824228 0.000000\r
+vt 0.136265 0.815667 0.000000\r
+vt 0.140226 0.807880 0.000000\r
+vt 0.143564 0.801322 0.000000\r
+vt 0.145993 0.796557 0.000000\r
+vt 0.147122 0.794363 0.000000\r
+vt 0.147434 0.793761 0.000000\r
+vt 0.113345 0.866148 0.000000\r
+vt 0.109843 0.871289 0.000000\r
+vt 0.117569 0.859958 0.000000\r
+vt 0.122457 0.852800 0.000000\r
+vt 0.127825 0.844938 0.000000\r
+vt 0.133453 0.836697 0.000000\r
+vt 0.139103 0.828425 0.000000\r
+vt 0.144525 0.820487 0.000000\r
+vt 0.149457 0.813267 0.000000\r
+vt 0.153613 0.807186 0.000000\r
+vt 0.156636 0.802767 0.000000\r
+vt 0.158036 0.800731 0.000000\r
+vt 0.158422 0.800173 0.000000\r
+vt 0.115263 0.867632 0.000000\r
+vt 0.111131 0.872285 0.000000\r
+vt 0.120243 0.862027 0.000000\r
+vt 0.126004 0.855546 0.000000\r
+vt 0.132332 0.848428 0.000000\r
+vt 0.138966 0.840965 0.000000\r
+vt 0.145625 0.833474 0.000000\r
+vt 0.152016 0.826286 0.000000\r
+vt 0.157829 0.819747 0.000000\r
+vt 0.162726 0.814241 0.000000\r
+vt 0.166288 0.810238 0.000000\r
+vt 0.167934 0.808393 0.000000\r
+vt 0.168386 0.807886 0.000000\r
+vt 0.116964 0.869344 0.000000\r
+vt 0.112273 0.873435 0.000000\r
+vt 0.122615 0.864415 0.000000\r
+vt 0.129152 0.858714 0.000000\r
+vt 0.136331 0.852453 0.000000\r
+vt 0.143857 0.845889 0.000000\r
+vt 0.151412 0.839299 0.000000\r
+vt 0.158662 0.832976 0.000000\r
+vt 0.165257 0.827224 0.000000\r
+vt 0.170812 0.822380 0.000000\r
+vt 0.174851 0.818857 0.000000\r
+vt 0.176714 0.817232 0.000000\r
+vt 0.177226 0.816785 0.000000\r
+vt 0.118429 0.871262 0.000000\r
+vt 0.113257 0.874723 0.000000\r
+vt 0.124658 0.867090 0.000000\r
+vt 0.131863 0.862263 0.000000\r
+vt 0.139775 0.856962 0.000000\r
+vt 0.148070 0.851404 0.000000\r
+vt 0.156397 0.845824 0.000000\r
+vt 0.164387 0.840470 0.000000\r
+vt 0.171655 0.835599 0.000000\r
+vt 0.177776 0.831497 0.000000\r
+vt 0.182226 0.828512 0.000000\r
+vt 0.184278 0.827132 0.000000\r
+vt 0.184841 0.826753 0.000000\r
+vt 0.119638 0.873363 0.000000\r
+vt 0.114069 0.876135 0.000000\r
+vt 0.126345 0.870020 0.000000\r
+vt 0.134101 0.866151 0.000000\r
+vt 0.142619 0.861902 0.000000\r
+vt 0.151549 0.857446 0.000000\r
+vt 0.160512 0.852973 0.000000\r
+vt 0.169114 0.848680 0.000000\r
+vt 0.176938 0.844775 0.000000\r
+vt 0.183527 0.841484 0.000000\r
+vt 0.188316 0.839090 0.000000\r
+vt 0.190523 0.837980 0.000000\r
+vt 0.191128 0.837673 0.000000\r
+vt 0.120572 0.875627 0.000000\r
+vt 0.114697 0.877656 0.000000\r
+vt 0.127648 0.873175 0.000000\r
+vt 0.135831 0.870337 0.000000\r
+vt 0.144817 0.867220 0.000000\r
+vt 0.154237 0.863951 0.000000\r
+vt 0.163693 0.860668 0.000000\r
+vt 0.172767 0.857518 0.000000\r
+vt 0.181019 0.854652 0.000000\r
+vt 0.187970 0.852237 0.000000\r
+vt 0.193021 0.850478 0.000000\r
+vt 0.195348 0.849658 0.000000\r
+vt 0.195987 0.849431 0.000000\r
+vt 0.121212 0.878030 0.000000\r
+vt 0.115127 0.879274 0.000000\r
+vt 0.128540 0.876525 0.000000\r
+vt 0.137015 0.874780 0.000000\r
+vt 0.146322 0.872864 0.000000\r
+vt 0.156078 0.870854 0.000000\r
+vt 0.165871 0.868835 0.000000\r
+vt 0.175268 0.866898 0.000000\r
+vt 0.183815 0.865135 0.000000\r
+vt 0.191013 0.863648 0.000000\r
+vt 0.196244 0.862564 0.000000\r
+vt 0.198654 0.862055 0.000000\r
+vt 0.199317 0.861913 0.000000\r
+vt 0.121537 0.880554 0.000000\r
+vt 0.115346 0.880977 0.000000\r
+vt 0.128995 0.880038 0.000000\r
+vt 0.137619 0.879440 0.000000\r
+vt 0.147088 0.878782 0.000000\r
+vt 0.157016 0.878091 0.000000\r
+vt 0.166980 0.877398 0.000000\r
+vt 0.176543 0.876732 0.000000\r
+vt 0.185239 0.876125 0.000000\r
+vt 0.192563 0.875613 0.000000\r
+vt 0.197886 0.875238 0.000000\r
+vt 0.200339 0.875058 0.000000\r
+vt 0.201013 0.875007 0.000000\r
+vt 0.121529 0.883179 0.000000\r
+vt 0.115340 0.882756 0.000000\r
+vt 0.128984 0.883688 0.000000\r
+vt 0.137604 0.884277 0.000000\r
+vt 0.147070 0.884923 0.000000\r
+vt 0.156994 0.885601 0.000000\r
+vt 0.166955 0.886281 0.000000\r
+vt 0.176513 0.886933 0.000000\r
+vt 0.185206 0.887527 0.000000\r
+vt 0.192527 0.888027 0.000000\r
+vt 0.197848 0.888390 0.000000\r
+vt 0.200300 0.888558 0.000000\r
+vt 0.200974 0.888604 0.000000\r
+vt 0.121180 0.885781 0.000000\r
+vt 0.115104 0.884520 0.000000\r
+vt 0.128499 0.887305 0.000000\r
+vt 0.136961 0.889070 0.000000\r
+vt 0.146253 0.891010 0.000000\r
+vt 0.155995 0.893043 0.000000\r
+vt 0.165773 0.895085 0.000000\r
+vt 0.175156 0.897045 0.000000\r
+vt 0.183689 0.898828 0.000000\r
+vt 0.190876 0.900331 0.000000\r
+vt 0.196098 0.901426 0.000000\r
+vt 0.198504 0.901938 0.000000\r
+vt 0.199165 0.902080 0.000000\r
+vt 0.120515 0.888237 0.000000\r
+vt 0.114656 0.886177 0.000000\r
+vt 0.127571 0.890725 0.000000\r
+vt 0.135730 0.893605 0.000000\r
+vt 0.144689 0.896769 0.000000\r
+vt 0.154082 0.900086 0.000000\r
+vt 0.163509 0.903417 0.000000\r
+vt 0.172556 0.906614 0.000000\r
+vt 0.180784 0.909523 0.000000\r
+vt 0.187713 0.911974 0.000000\r
+vt 0.192748 0.913759 0.000000\r
+vt 0.195067 0.914591 0.000000\r
+vt 0.195704 0.914822 0.000000\r
+vt 0.119554 0.890531 0.000000\r
+vt 0.114009 0.887722 0.000000\r
+vt 0.126231 0.893922 0.000000\r
+vt 0.133952 0.897846 0.000000\r
+vt 0.142431 0.902156 0.000000\r
+vt 0.151319 0.906675 0.000000\r
+vt 0.160241 0.911212 0.000000\r
+vt 0.168803 0.915566 0.000000\r
+vt 0.176590 0.919528 0.000000\r
+vt 0.183147 0.922865 0.000000\r
+vt 0.187913 0.925295 0.000000\r
+vt 0.190107 0.926423 0.000000\r
+vt 0.190709 0.926735 0.000000\r
+vt 0.118321 0.892646 0.000000\r
+vt 0.113181 0.889144 0.000000\r
+vt 0.124512 0.896871 0.000000\r
+vt 0.131670 0.901758 0.000000\r
+vt 0.139531 0.907126 0.000000\r
+vt 0.147772 0.912754 0.000000\r
+vt 0.156045 0.918404 0.000000\r
+vt 0.163983 0.923826 0.000000\r
+vt 0.171203 0.928759 0.000000\r
+vt 0.177284 0.932914 0.000000\r
+vt 0.181703 0.935937 0.000000\r
+vt 0.183738 0.937337 0.000000\r
+vt 0.184297 0.937723 0.000000\r
+vt 0.116838 0.894564 0.000000\r
+vt 0.112184 0.890432 0.000000\r
+vt 0.122442 0.899545 0.000000\r
+vt 0.128924 0.905306 0.000000\r
+vt 0.136042 0.911633 0.000000\r
+vt 0.143505 0.918267 0.000000\r
+vt 0.150995 0.924927 0.000000\r
+vt 0.158184 0.931317 0.000000\r
+vt 0.164722 0.937131 0.000000\r
+vt 0.170229 0.942028 0.000000\r
+vt 0.174232 0.945589 0.000000\r
+vt 0.176077 0.947235 0.000000\r
+vt 0.176583 0.947688 0.000000\r
+vt 0.115126 0.896265 0.000000\r
+vt 0.111035 0.891574 0.000000\r
+vt 0.120055 0.901917 0.000000\r
+vt 0.125756 0.908453 0.000000\r
+vt 0.132017 0.915632 0.000000\r
+vt 0.138581 0.923158 0.000000\r
+vt 0.145170 0.930713 0.000000\r
+vt 0.151494 0.937964 0.000000\r
+vt 0.157245 0.944558 0.000000\r
+vt 0.162090 0.950113 0.000000\r
+vt 0.165612 0.954152 0.000000\r
+vt 0.167238 0.956016 0.000000\r
+vt 0.167685 0.956528 0.000000\r
+vt 0.113208 0.897730 0.000000\r
+vt 0.109746 0.892558 0.000000\r
+vt 0.117380 0.903960 0.000000\r
+vt 0.122207 0.911164 0.000000\r
+vt 0.127508 0.919077 0.000000\r
+vt 0.133066 0.927371 0.000000\r
+vt 0.138645 0.935698 0.000000\r
+vt 0.144000 0.943688 0.000000\r
+vt 0.148870 0.950956 0.000000\r
+vt 0.152973 0.957077 0.000000\r
+vt 0.155957 0.961527 0.000000\r
+vt 0.157337 0.963579 0.000000\r
+vt 0.157717 0.964142 0.000000\r
+vt 0.111106 0.898939 0.000000\r
+vt 0.108335 0.893370 0.000000\r
+vt 0.114450 0.905646 0.000000\r
+vt 0.118318 0.913403 0.000000\r
+vt 0.122568 0.921920 0.000000\r
+vt 0.127024 0.930850 0.000000\r
+vt 0.131497 0.939814 0.000000\r
+vt 0.135790 0.948415 0.000000\r
+vt 0.139695 0.956239 0.000000\r
+vt 0.142985 0.962828 0.000000\r
+vt 0.145380 0.967617 0.000000\r
+vt 0.146490 0.969824 0.000000\r
+vt 0.146797 0.970430 0.000000\r
+vt 0.108843 0.899873 0.000000\r
+vt 0.106813 0.893998 0.000000\r
+vt 0.111295 0.906949 0.000000\r
+vt 0.114132 0.915132 0.000000\r
+vt 0.117250 0.924118 0.000000\r
+vt 0.120519 0.933538 0.000000\r
+vt 0.123801 0.942994 0.000000\r
+vt 0.126951 0.952068 0.000000\r
+vt 0.129817 0.960321 0.000000\r
+vt 0.132233 0.967271 0.000000\r
+vt 0.133992 0.972322 0.000000\r
+vt 0.134812 0.974650 0.000000\r
+vt 0.135039 0.975289 0.000000\r
+vt 0.106439 0.900513 0.000000\r
+vt 0.105195 0.894428 0.000000\r
+vt 0.107945 0.907842 0.000000\r
+vt 0.109689 0.916317 0.000000\r
+vt 0.111606 0.925623 0.000000\r
+vt 0.113616 0.935379 0.000000\r
+vt 0.115634 0.945172 0.000000\r
+vt 0.117572 0.954569 0.000000\r
+vt 0.119335 0.963116 0.000000\r
+vt 0.120821 0.970314 0.000000\r
+vt 0.121906 0.975545 0.000000\r
+vt 0.122415 0.977956 0.000000\r
+vt 0.122557 0.978618 0.000000\r
+vt 0.103916 0.900839 0.000000\r
+vt 0.103492 0.894647 0.000000\r
+vt 0.104431 0.908296 0.000000\r
+vt 0.105030 0.916920 0.000000\r
+vt 0.105688 0.926390 0.000000\r
+vt 0.106378 0.936317 0.000000\r
+vt 0.107072 0.946282 0.000000\r
+vt 0.107738 0.955844 0.000000\r
+vt 0.108345 0.964541 0.000000\r
+vt 0.108857 0.971865 0.000000\r
+vt 0.109232 0.977187 0.000000\r
+vt 0.109412 0.979640 0.000000\r
+vt 0.109463 0.980315 0.000000\r
+vt 0.095582 0.984429 0.000000\r
+vt 0.081564 0.982547 0.000000\r
+vt 0.068294 0.978941 0.000000\r
+vt 0.055877 0.973734 0.000000\r
+vt 0.044419 0.967047 0.000000\r
+vt 0.034027 0.959002 0.000000\r
+vt 0.024807 0.949720 0.000000\r
+vt 0.016865 0.939324 0.000000\r
+vt 0.010307 0.927935 0.000000\r
+vt 0.005239 0.915675 0.000000\r
+vt 0.001768 0.902665 0.000000\r
+vt 0.000000 0.889027 0.000000\r
+vt 0.000040 0.874884 0.000000\r
+vt 0.001923 0.860866 0.000000\r
+vt 0.005529 0.847595 0.000000\r
+vt 0.010736 0.835178 0.000000\r
+vt 0.017423 0.823720 0.000000\r
+vt 0.025468 0.813328 0.000000\r
+vt 0.034749 0.804108 0.000000\r
+vt 0.045146 0.796166 0.000000\r
+vt 0.056535 0.789608 0.000000\r
+vt 0.068795 0.784541 0.000000\r
+vt 0.081805 0.781070 0.000000\r
+vt 0.095442 0.779301 0.000000\r
+vt 0.109586 0.779342 0.000000\r
+vt 0.123604 0.781224 0.000000\r
+vt 0.136875 0.784830 0.000000\r
+vt 0.149292 0.790037 0.000000\r
+vt 0.160750 0.796724 0.000000\r
+vt 0.171142 0.804769 0.000000\r
+vt 0.180362 0.814051 0.000000\r
+vt 0.188304 0.824447 0.000000\r
+vt 0.194862 0.835836 0.000000\r
+vt 0.199929 0.848096 0.000000\r
+vt 0.203400 0.861106 0.000000\r
+vt 0.205168 0.874744 0.000000\r
+vt 0.205128 0.888887 0.000000\r
+vt 0.203246 0.902905 0.000000\r
+vt 0.199640 0.916176 0.000000\r
+vt 0.194433 0.928593 0.000000\r
+vt 0.187746 0.940051 0.000000\r
+vt 0.179700 0.950443 0.000000\r
+vt 0.170419 0.959663 0.000000\r
+vt 0.160023 0.967605 0.000000\r
+vt 0.148634 0.974163 0.000000\r
+vt 0.136373 0.979230 0.000000\r
+vt 0.123364 0.982701 0.000000\r
+vt 0.109726 0.984470 0.000000\r
+vt 0.102584 0.881885 0.000000\r
+# 1874 texture coords\r
+\r
+g Top
+usemtl Default
+f 6086/6461 6074/6462 6073/6463 \r
+f 6074/6462 6086/6461 6087/6464 6075/6465 \r
+f 6075/6465 6087/6464 6088/6466 6076/6467 \r
+f 6076/6467 6088/6466 6089/6468 6077/6469 \r
+f 6077/6469 6089/6468 6090/6470 6078/6471 \r
+f 6078/6471 6090/6470 6091/6472 6079/6473 \r
+f 6079/6473 6091/6472 6092/6474 6080/6475 \r
+f 6080/6475 6092/6474 6093/6476 6081/6477 \r
+f 6081/6477 6093/6476 6094/6478 6082/6479 \r
+f 6082/6479 6094/6478 6095/6480 6083/6481 \r
+f 6083/6481 6095/6480 6096/6482 6084/6483 \r
+f 6084/7615 6096/7614 6097/6484 6085/6485 \r
+f 6098/6486 6086/6461 6073/6463 \r
+f 6086/6461 6098/6486 6099/6487 6087/6464 \r
+f 6087/6464 6099/6487 6100/6488 6088/6466 \r
+f 6088/6466 6100/6488 6101/6489 6089/6468 \r
+f 6089/6468 6101/6489 6102/6490 6090/6470 \r
+f 6090/6470 6102/6490 6103/6491 6091/6472 \r
+f 6091/6472 6103/6491 6104/6492 6092/6474 \r
+f 6092/6474 6104/6492 6105/6493 6093/6476 \r
+f 6093/6476 6105/6493 6106/6494 6094/6478 \r
+f 6094/6478 6106/6494 6107/6495 6095/6480 \r
+f 6095/6480 6107/6495 6108/6496 6096/6482 \r
+f 6096/7614 6108/7616 6109/6497 6097/6484 \r
+f 6110/6498 6098/6486 6073/6463 \r
+f 6098/6486 6110/6498 6111/6499 6099/6487 \r
+f 6099/6487 6111/6499 6112/6500 6100/6488 \r
+f 6100/6488 6112/6500 6113/6501 6101/6489 \r
+f 6101/6489 6113/6501 6114/6502 6102/6490 \r
+f 6102/6490 6114/6502 6115/6503 6103/6491 \r
+f 6103/6491 6115/6503 6116/6504 6104/6492 \r
+f 6104/6492 6116/6504 6117/6505 6105/6493 \r
+f 6105/6493 6117/6505 6118/6506 6106/6494 \r
+f 6106/6494 6118/6506 6119/6507 6107/6495 \r
+f 6107/6495 6119/6507 6120/6508 6108/6496 \r
+f 6108/7616 6120/7617 6121/6509 6109/6497 \r
+f 6122/6510 6110/6498 6073/6463 \r
+f 6110/6498 6122/6510 6123/6511 6111/6499 \r
+f 6111/6499 6123/6511 6124/6512 6112/6500 \r
+f 6112/6500 6124/6512 6125/6513 6113/6501 \r
+f 6113/6501 6125/6513 6126/6514 6114/6502 \r
+f 6114/6502 6126/6514 6127/6515 6115/6503 \r
+f 6115/6503 6127/6515 6128/6516 6116/6504 \r
+f 6116/6504 6128/6516 6129/6517 6117/6505 \r
+f 6117/6505 6129/6517 6130/6518 6118/6506 \r
+f 6118/6506 6130/6518 6131/6519 6119/6507 \r
+f 6119/6507 6131/6519 6132/6520 6120/6508 \r
+f 6120/7617 6132/7618 6133/6521 6121/6509 \r
+f 6134/6522 6122/6510 6073/6463 \r
+f 6122/6510 6134/6522 6135/6523 6123/6511 \r
+f 6123/6511 6135/6523 6136/6524 6124/6512 \r
+f 6124/6512 6136/6524 6137/6525 6125/6513 \r
+f 6125/6513 6137/6525 6138/6526 6126/6514 \r
+f 6126/6514 6138/6526 6139/6527 6127/6515 \r
+f 6127/6515 6139/6527 6140/6528 6128/6516 \r
+f 6128/6516 6140/6528 6141/6529 6129/6517 \r
+f 6129/6517 6141/6529 6142/6530 6130/6518 \r
+f 6130/6518 6142/6530 6143/6531 6131/6519 \r
+f 6131/6519 6143/6531 6144/6532 6132/6520 \r
+f 6132/7618 6144/7619 6145/6533 6133/6521 \r
+f 6146/6534 6134/6522 6073/6463 \r
+f 6134/6522 6146/6534 6147/6535 6135/6523 \r
+f 6135/6523 6147/6535 6148/6536 6136/6524 \r
+f 6136/6524 6148/6536 6149/6537 6137/6525 \r
+f 6137/6525 6149/6537 6150/6538 6138/6526 \r
+f 6138/6526 6150/6538 6151/6539 6139/6527 \r
+f 6139/6527 6151/6539 6152/6540 6140/6528 \r
+f 6140/6528 6152/6540 6153/6541 6141/6529 \r
+f 6141/6529 6153/6541 6154/6542 6142/6530 \r
+f 6142/6530 6154/6542 6155/6543 6143/6531 \r
+f 6143/6531 6155/6543 6156/6544 6144/6532 \r
+f 6144/7619 6156/7620 6157/6545 6145/6533 \r
+f 6158/6546 6146/6534 6073/6463 \r
+f 6146/6534 6158/6546 6159/6547 6147/6535 \r
+f 6147/6535 6159/6547 6160/6548 6148/6536 \r
+f 6148/6536 6160/6548 6161/6549 6149/6537 \r
+f 6149/6537 6161/6549 6162/6550 6150/6538 \r
+f 6150/6538 6162/6550 6163/6551 6151/6539 \r
+f 6151/6539 6163/6551 6164/6552 6152/6540 \r
+f 6152/6540 6164/6552 6165/6553 6153/6541 \r
+f 6153/6541 6165/6553 6166/6554 6154/6542 \r
+f 6154/6542 6166/6554 6167/6555 6155/6543 \r
+f 6155/6543 6167/6555 6168/6556 6156/6544 \r
+f 6156/7620 6168/7621 6169/6557 6157/6545 \r
+f 6170/6558 6158/6546 6073/6463 \r
+f 6158/6546 6170/6558 6171/6559 6159/6547 \r
+f 6159/6547 6171/6559 6172/6560 6160/6548 \r
+f 6160/6548 6172/6560 6173/6561 6161/6549 \r
+f 6161/6549 6173/6561 6174/6562 6162/6550 \r
+f 6162/6550 6174/6562 6175/6563 6163/6551 \r
+f 6163/6551 6175/6563 6176/6564 6164/6552 \r
+f 6164/6552 6176/6564 6177/6565 6165/6553 \r
+f 6165/6553 6177/6565 6178/6566 6166/6554 \r
+f 6166/6554 6178/6566 6179/6567 6167/6555 \r
+f 6167/6555 6179/6567 6180/6568 6168/6556 \r
+f 6168/7621 6180/7622 6181/6569 6169/6557 \r
+f 6182/6570 6170/6558 6073/6463 \r
+f 6170/6558 6182/6570 6183/6571 6171/6559 \r
+f 6171/6559 6183/6571 6184/6572 6172/6560 \r
+f 6172/6560 6184/6572 6185/6573 6173/6561 \r
+f 6173/6561 6185/6573 6186/6574 6174/6562 \r
+f 6174/6562 6186/6574 6187/6575 6175/6563 \r
+f 6175/6563 6187/6575 6188/6576 6176/6564 \r
+f 6176/6564 6188/6576 6189/6577 6177/6565 \r
+f 6177/6565 6189/6577 6190/6578 6178/6566 \r
+f 6178/6566 6190/6578 6191/6579 6179/6567 \r
+f 6179/6567 6191/6579 6192/6580 6180/6568 \r
+f 6180/7622 6192/7623 6193/6581 6181/6569 \r
+f 6194/6582 6182/6570 6073/6463 \r
+f 6182/6570 6194/6582 6195/6583 6183/6571 \r
+f 6183/6571 6195/6583 6196/6584 6184/6572 \r
+f 6184/6572 6196/6584 6197/6585 6185/6573 \r
+f 6185/6573 6197/6585 6198/6586 6186/6574 \r
+f 6186/6574 6198/6586 6199/6587 6187/6575 \r
+f 6187/6575 6199/6587 6200/6588 6188/6576 \r
+f 6188/6576 6200/6588 6201/6589 6189/6577 \r
+f 6189/6577 6201/6589 6202/6590 6190/6578 \r
+f 6190/6578 6202/6590 6203/6591 6191/6579 \r
+f 6191/6579 6203/6591 6204/6592 6192/6580 \r
+f 6192/7623 6204/7624 6205/6593 6193/6581 \r
+f 6206/6594 6194/6582 6073/6463 \r
+f 6194/6582 6206/6594 6207/6595 6195/6583 \r
+f 6195/6583 6207/6595 6208/6596 6196/6584 \r
+f 6196/6584 6208/6596 6209/6597 6197/6585 \r
+f 6197/6585 6209/6597 6210/6598 6198/6586 \r
+f 6198/6586 6210/6598 6211/6599 6199/6587 \r
+f 6199/6587 6211/6599 6212/6600 6200/6588 \r
+f 6200/6588 6212/6600 6213/6601 6201/6589 \r
+f 6201/6589 6213/6601 6214/6602 6202/6590 \r
+f 6202/6590 6214/6602 6215/6603 6203/6591 \r
+f 6203/6591 6215/6603 6216/6604 6204/6592 \r
+f 6204/7624 6216/7625 6217/6605 6205/6593 \r
+f 6218/6606 6206/6594 6073/6463 \r
+f 6206/6594 6218/6606 6219/6607 6207/6595 \r
+f 6207/6595 6219/6607 6220/6608 6208/6596 \r
+f 6208/6596 6220/6608 6221/6609 6209/6597 \r
+f 6209/6597 6221/6609 6222/6610 6210/6598 \r
+f 6210/6598 6222/6610 6223/6611 6211/6599 \r
+f 6211/6599 6223/6611 6224/6612 6212/6600 \r
+f 6212/6600 6224/6612 6225/6613 6213/6601 \r
+f 6213/6601 6225/6613 6226/6614 6214/6602 \r
+f 6214/6602 6226/6614 6227/6615 6215/6603 \r
+f 6215/6603 6227/6615 6228/6616 6216/6604 \r
+f 6216/7625 6228/7626 6229/6617 6217/6605 \r
+f 6230/6618 6218/6606 6073/6463 \r
+f 6218/6606 6230/6618 6231/6619 6219/6607 \r
+f 6219/6607 6231/6619 6232/6620 6220/6608 \r
+f 6220/6608 6232/6620 6233/6621 6221/6609 \r
+f 6221/6609 6233/6621 6234/6622 6222/6610 \r
+f 6222/6610 6234/6622 6235/6623 6223/6611 \r
+f 6223/6611 6235/6623 6236/6624 6224/6612 \r
+f 6224/6612 6236/6624 6237/6625 6225/6613 \r
+f 6225/6613 6237/6625 6238/6626 6226/6614 \r
+f 6226/6614 6238/6626 6239/6627 6227/6615 \r
+f 6227/6615 6239/6627 6240/6628 6228/6616 \r
+f 6228/7626 6240/7627 6241/6629 6229/6617 \r
+f 6242/6630 6230/6618 6073/6463 \r
+f 6230/6618 6242/6630 6243/6631 6231/6619 \r
+f 6231/6619 6243/6631 6244/6632 6232/6620 \r
+f 6232/6620 6244/6632 6245/6633 6233/6621 \r
+f 6233/6621 6245/6633 6246/6634 6234/6622 \r
+f 6234/6622 6246/6634 6247/6635 6235/6623 \r
+f 6235/6623 6247/6635 6248/6636 6236/6624 \r
+f 6236/6624 6248/6636 6249/6637 6237/6625 \r
+f 6237/6625 6249/6637 6250/6638 6238/6626 \r
+f 6238/6626 6250/6638 6251/6639 6239/6627 \r
+f 6239/6627 6251/6639 6252/6640 6240/6628 \r
+f 6240/7627 6252/7628 6253/6641 6241/6629 \r
+f 6254/6642 6242/6630 6073/6463 \r
+f 6242/6630 6254/6642 6255/6643 6243/6631 \r
+f 6243/6631 6255/6643 6256/6644 6244/6632 \r
+f 6244/6632 6256/6644 6257/6645 6245/6633 \r
+f 6245/6633 6257/6645 6258/6646 6246/6634 \r
+f 6246/6634 6258/6646 6259/6647 6247/6635 \r
+f 6247/6635 6259/6647 6260/6648 6248/6636 \r
+f 6248/6636 6260/6648 6261/6649 6249/6637 \r
+f 6249/6637 6261/6649 6262/6650 6250/6638 \r
+f 6250/6638 6262/6650 6263/6651 6251/6639 \r
+f 6251/6639 6263/6651 6264/6652 6252/6640 \r
+f 6252/7628 6264/7629 6265/6653 6253/6641 \r
+f 6266/6654 6254/6642 6073/6463 \r
+f 6254/6642 6266/6654 6267/6655 6255/6643 \r
+f 6255/6643 6267/6655 6268/6656 6256/6644 \r
+f 6256/6644 6268/6656 6269/6657 6257/6645 \r
+f 6257/6645 6269/6657 6270/6658 6258/6646 \r
+f 6258/6646 6270/6658 6271/6659 6259/6647 \r
+f 6259/6647 6271/6659 6272/6660 6260/6648 \r
+f 6260/6648 6272/6660 6273/6661 6261/6649 \r
+f 6261/6649 6273/6661 6274/6662 6262/6650 \r
+f 6262/6650 6274/6662 6275/6663 6263/6651 \r
+f 6263/6651 6275/6663 6276/6664 6264/6652 \r
+f 6264/7629 6276/7630 6277/6665 6265/6653 \r
+f 6278/6666 6266/6654 6073/6463 \r
+f 6266/6654 6278/6666 6279/6667 6267/6655 \r
+f 6267/6655 6279/6667 6280/6668 6268/6656 \r
+f 6268/6656 6280/6668 6281/6669 6269/6657 \r
+f 6269/6657 6281/6669 6282/6670 6270/6658 \r
+f 6270/6658 6282/6670 6283/6671 6271/6659 \r
+f 6271/6659 6283/6671 6284/6672 6272/6660 \r
+f 6272/6660 6284/6672 6285/6673 6273/6661 \r
+f 6273/6661 6285/6673 6286/6674 6274/6662 \r
+f 6274/6662 6286/6674 6287/6675 6275/6663 \r
+f 6275/6663 6287/6675 6288/6676 6276/6664 \r
+f 6276/7630 6288/7631 6289/6677 6277/6665 \r
+f 6290/6678 6278/6666 6073/6463 \r
+f 6278/6666 6290/6678 6291/6679 6279/6667 \r
+f 6279/6667 6291/6679 6292/6680 6280/6668 \r
+f 6280/6668 6292/6680 6293/6681 6281/6669 \r
+f 6281/6669 6293/6681 6294/6682 6282/6670 \r
+f 6282/6670 6294/6682 6295/6683 6283/6671 \r
+f 6283/6671 6295/6683 6296/6684 6284/6672 \r
+f 6284/6672 6296/6684 6297/6685 6285/6673 \r
+f 6285/6673 6297/6685 6298/6686 6286/6674 \r
+f 6286/6674 6298/6686 6299/6687 6287/6675 \r
+f 6287/6675 6299/6687 6300/6688 6288/6676 \r
+f 6288/7631 6300/7632 6301/6689 6289/6677 \r
+f 6302/6690 6290/6678 6073/6463 \r
+f 6290/6678 6302/6690 6303/6691 6291/6679 \r
+f 6291/6679 6303/6691 6304/6692 6292/6680 \r
+f 6292/6680 6304/6692 6305/6693 6293/6681 \r
+f 6293/6681 6305/6693 6306/6694 6294/6682 \r
+f 6294/6682 6306/6694 6307/6695 6295/6683 \r
+f 6295/6683 6307/6695 6308/6696 6296/6684 \r
+f 6296/6684 6308/6696 6309/6697 6297/6685 \r
+f 6297/6685 6309/6697 6310/6698 6298/6686 \r
+f 6298/6686 6310/6698 6311/6699 6299/6687 \r
+f 6299/6687 6311/6699 6312/6700 6300/6688 \r
+f 6300/7632 6312/7633 6313/6701 6301/6689 \r
+f 6314/6702 6302/6690 6073/6463 \r
+f 6302/6690 6314/6702 6315/6703 6303/6691 \r
+f 6303/6691 6315/6703 6316/6704 6304/6692 \r
+f 6304/6692 6316/6704 6317/6705 6305/6693 \r
+f 6305/6693 6317/6705 6318/6706 6306/6694 \r
+f 6306/6694 6318/6706 6319/6707 6307/6695 \r
+f 6307/6695 6319/6707 6320/6708 6308/6696 \r
+f 6308/6696 6320/6708 6321/6709 6309/6697 \r
+f 6309/6697 6321/6709 6322/6710 6310/6698 \r
+f 6310/6698 6322/6710 6323/6711 6311/6699 \r
+f 6311/6699 6323/6711 6324/6712 6312/6700 \r
+f 6312/7633 6324/7634 6325/6713 6313/6701 \r
+f 6326/6714 6314/6702 6073/6463 \r
+f 6314/6702 6326/6714 6327/6715 6315/6703 \r
+f 6315/6703 6327/6715 6328/6716 6316/6704 \r
+f 6316/6704 6328/6716 6329/6717 6317/6705 \r
+f 6317/6705 6329/6717 6330/6718 6318/6706 \r
+f 6318/6706 6330/6718 6331/6719 6319/6707 \r
+f 6319/6707 6331/6719 6332/6720 6320/6708 \r
+f 6320/6708 6332/6720 6333/6721 6321/6709 \r
+f 6321/6709 6333/6721 6334/6722 6322/6710 \r
+f 6322/6710 6334/6722 6335/6723 6323/6711 \r
+f 6323/6711 6335/6723 6336/6724 6324/6712 \r
+f 6324/7634 6336/7635 6337/6725 6325/6713 \r
+f 6338/6726 6326/6714 6073/6463 \r
+f 6326/6714 6338/6726 6339/6727 6327/6715 \r
+f 6327/6715 6339/6727 6340/6728 6328/6716 \r
+f 6328/6716 6340/6728 6341/6729 6329/6717 \r
+f 6329/6717 6341/6729 6342/6730 6330/6718 \r
+f 6330/6718 6342/6730 6343/6731 6331/6719 \r
+f 6331/6719 6343/6731 6344/6732 6332/6720 \r
+f 6332/6720 6344/6732 6345/6733 6333/6721 \r
+f 6333/6721 6345/6733 6346/6734 6334/6722 \r
+f 6334/6722 6346/6734 6347/6735 6335/6723 \r
+f 6335/6723 6347/6735 6348/6736 6336/6724 \r
+f 6336/7635 6348/7636 6349/6737 6337/6725 \r
+f 6350/6738 6338/6726 6073/6463 \r
+f 6338/6726 6350/6738 6351/6739 6339/6727 \r
+f 6339/6727 6351/6739 6352/6740 6340/6728 \r
+f 6340/6728 6352/6740 6353/6741 6341/6729 \r
+f 6341/6729 6353/6741 6354/6742 6342/6730 \r
+f 6342/6730 6354/6742 6355/6743 6343/6731 \r
+f 6343/6731 6355/6743 6356/6744 6344/6732 \r
+f 6344/6732 6356/6744 6357/6745 6345/6733 \r
+f 6345/6733 6357/6745 6358/6746 6346/6734 \r
+f 6346/6734 6358/6746 6359/6747 6347/6735 \r
+f 6347/6735 6359/6747 6360/6748 6348/6736 \r
+f 6348/7636 6360/7637 6361/6749 6349/6737 \r
+f 6362/6750 6350/6738 6073/6463 \r
+f 6350/6738 6362/6750 6363/6751 6351/6739 \r
+f 6351/6739 6363/6751 6364/6752 6352/6740 \r
+f 6352/6740 6364/6752 6365/6753 6353/6741 \r
+f 6353/6741 6365/6753 6366/6754 6354/6742 \r
+f 6354/6742 6366/6754 6367/6755 6355/6743 \r
+f 6355/6743 6367/6755 6368/6756 6356/6744 \r
+f 6356/6744 6368/6756 6369/6757 6357/6745 \r
+f 6357/6745 6369/6757 6370/6758 6358/6746 \r
+f 6358/6746 6370/6758 6371/6759 6359/6747 \r
+f 6359/6747 6371/6759 6372/6760 6360/6748 \r
+f 6360/7637 6372/7638 6373/6761 6361/6749 \r
+f 6374/6762 6362/6750 6073/6463 \r
+f 6362/6750 6374/6762 6375/6763 6363/6751 \r
+f 6363/6751 6375/6763 6376/6764 6364/6752 \r
+f 6364/6752 6376/6764 6377/6765 6365/6753 \r
+f 6365/6753 6377/6765 6378/6766 6366/6754 \r
+f 6366/6754 6378/6766 6379/6767 6367/6755 \r
+f 6367/6755 6379/6767 6380/6768 6368/6756 \r
+f 6368/6756 6380/6768 6381/6769 6369/6757 \r
+f 6369/6757 6381/6769 6382/6770 6370/6758 \r
+f 6370/6758 6382/6770 6383/6771 6371/6759 \r
+f 6371/6759 6383/6771 6384/6772 6372/6760 \r
+f 6372/7638 6384/7639 6385/6773 6373/6761 \r
+f 6386/6774 6374/6762 6073/6463 \r
+f 6374/6762 6386/6774 6387/6775 6375/6763 \r
+f 6375/6763 6387/6775 6388/6776 6376/6764 \r
+f 6376/6764 6388/6776 6389/6777 6377/6765 \r
+f 6377/6765 6389/6777 6390/6778 6378/6766 \r
+f 6378/6766 6390/6778 6391/6779 6379/6767 \r
+f 6379/6767 6391/6779 6392/6780 6380/6768 \r
+f 6380/6768 6392/6780 6393/6781 6381/6769 \r
+f 6381/6769 6393/6781 6394/6782 6382/6770 \r
+f 6382/6770 6394/6782 6395/6783 6383/6771 \r
+f 6383/6771 6395/6783 6396/6784 6384/6772 \r
+f 6384/7639 6396/7640 6397/6785 6385/6773 \r
+f 6398/6786 6386/6774 6073/6463 \r
+f 6386/6774 6398/6786 6399/6787 6387/6775 \r
+f 6387/6775 6399/6787 6400/6788 6388/6776 \r
+f 6388/6776 6400/6788 6401/6789 6389/6777 \r
+f 6389/6777 6401/6789 6402/6790 6390/6778 \r
+f 6390/6778 6402/6790 6403/6791 6391/6779 \r
+f 6391/6779 6403/6791 6404/6792 6392/6780 \r
+f 6392/6780 6404/6792 6405/6793 6393/6781 \r
+f 6393/6781 6405/6793 6406/6794 6394/6782 \r
+f 6394/6782 6406/6794 6407/6795 6395/6783 \r
+f 6395/6783 6407/6795 6408/6796 6396/6784 \r
+f 6396/7640 6408/7641 6409/6797 6397/6785 \r
+f 6410/6798 6398/6786 6073/6463 \r
+f 6398/6786 6410/6798 6411/6799 6399/6787 \r
+f 6399/6787 6411/6799 6412/6800 6400/6788 \r
+f 6400/6788 6412/6800 6413/6801 6401/6789 \r
+f 6401/6789 6413/6801 6414/6802 6402/6790 \r
+f 6402/6790 6414/6802 6415/6803 6403/6791 \r
+f 6403/6791 6415/6803 6416/6804 6404/6792 \r
+f 6404/6792 6416/6804 6417/6805 6405/6793 \r
+f 6405/6793 6417/6805 6418/6806 6406/6794 \r
+f 6406/6794 6418/6806 6419/6807 6407/6795 \r
+f 6407/6795 6419/6807 6420/6808 6408/6796 \r
+f 6408/7641 6420/7642 6421/6809 6409/6797 \r
+f 6422/6810 6410/6798 6073/6463 \r
+f 6410/6798 6422/6810 6423/6811 6411/6799 \r
+f 6411/6799 6423/6811 6424/6812 6412/6800 \r
+f 6412/6800 6424/6812 6425/6813 6413/6801 \r
+f 6413/6801 6425/6813 6426/6814 6414/6802 \r
+f 6414/6802 6426/6814 6427/6815 6415/6803 \r
+f 6415/6803 6427/6815 6428/6816 6416/6804 \r
+f 6416/6804 6428/6816 6429/6817 6417/6805 \r
+f 6417/6805 6429/6817 6430/6818 6418/6806 \r
+f 6418/6806 6430/6818 6431/6819 6419/6807 \r
+f 6419/6807 6431/6819 6432/6820 6420/6808 \r
+f 6420/7642 6432/7643 6433/6821 6421/6809 \r
+f 6434/6822 6422/6810 6073/6463 \r
+f 6422/6810 6434/6822 6435/6823 6423/6811 \r
+f 6423/6811 6435/6823 6436/6824 6424/6812 \r
+f 6424/6812 6436/6824 6437/6825 6425/6813 \r
+f 6425/6813 6437/6825 6438/6826 6426/6814 \r
+f 6426/6814 6438/6826 6439/6827 6427/6815 \r
+f 6427/6815 6439/6827 6440/6828 6428/6816 \r
+f 6428/6816 6440/6828 6441/6829 6429/6817 \r
+f 6429/6817 6441/6829 6442/6830 6430/6818 \r
+f 6430/6818 6442/6830 6443/6831 6431/6819 \r
+f 6431/6819 6443/6831 6444/6832 6432/6820 \r
+f 6432/7643 6444/7644 6445/6833 6433/6821 \r
+f 6446/6834 6434/6822 6073/6463 \r
+f 6434/6822 6446/6834 6447/6835 6435/6823 \r
+f 6435/6823 6447/6835 6448/6836 6436/6824 \r
+f 6436/6824 6448/6836 6449/6837 6437/6825 \r
+f 6437/6825 6449/6837 6450/6838 6438/6826 \r
+f 6438/6826 6450/6838 6451/6839 6439/6827 \r
+f 6439/6827 6451/6839 6452/6840 6440/6828 \r
+f 6440/6828 6452/6840 6453/6841 6441/6829 \r
+f 6441/6829 6453/6841 6454/6842 6442/6830 \r
+f 6442/6830 6454/6842 6455/6843 6443/6831 \r
+f 6443/6831 6455/6843 6456/6844 6444/6832 \r
+f 6444/7644 6456/7645 6457/6845 6445/6833 \r
+f 6458/6846 6446/6834 6073/6463 \r
+f 6446/6834 6458/6846 6459/6847 6447/6835 \r
+f 6447/6835 6459/6847 6460/6848 6448/6836 \r
+f 6448/6836 6460/6848 6461/6849 6449/6837 \r
+f 6449/6837 6461/6849 6462/6850 6450/6838 \r
+f 6450/6838 6462/6850 6463/6851 6451/6839 \r
+f 6451/6839 6463/6851 6464/6852 6452/6840 \r
+f 6452/6840 6464/6852 6465/6853 6453/6841 \r
+f 6453/6841 6465/6853 6466/6854 6454/6842 \r
+f 6454/6842 6466/6854 6467/6855 6455/6843 \r
+f 6455/6843 6467/6855 6468/6856 6456/6844 \r
+f 6456/7645 6468/7646 6469/6857 6457/6845 \r
+f 6470/6858 6458/6846 6073/6463 \r
+f 6458/6846 6470/6858 6471/6859 6459/6847 \r
+f 6459/6847 6471/6859 6472/6860 6460/6848 \r
+f 6460/6848 6472/6860 6473/6861 6461/6849 \r
+f 6461/6849 6473/6861 6474/6862 6462/6850 \r
+f 6462/6850 6474/6862 6475/6863 6463/6851 \r
+f 6463/6851 6475/6863 6476/6864 6464/6852 \r
+f 6464/6852 6476/6864 6477/6865 6465/6853 \r
+f 6465/6853 6477/6865 6478/6866 6466/6854 \r
+f 6466/6854 6478/6866 6479/6867 6467/6855 \r
+f 6467/6855 6479/6867 6480/6868 6468/6856 \r
+f 6468/7646 6480/7647 6481/6869 6469/6857 \r
+f 6482/6870 6470/6858 6073/6463 \r
+f 6470/6858 6482/6870 6483/6871 6471/6859 \r
+f 6471/6859 6483/6871 6484/6872 6472/6860 \r
+f 6472/6860 6484/6872 6485/6873 6473/6861 \r
+f 6473/6861 6485/6873 6486/6874 6474/6862 \r
+f 6474/6862 6486/6874 6487/6875 6475/6863 \r
+f 6475/6863 6487/6875 6488/6876 6476/6864 \r
+f 6476/6864 6488/6876 6489/6877 6477/6865 \r
+f 6477/6865 6489/6877 6490/6878 6478/6866 \r
+f 6478/6866 6490/6878 6491/6879 6479/6867 \r
+f 6479/6867 6491/6879 6492/6880 6480/6868 \r
+f 6480/7647 6492/7648 6493/6881 6481/6869 \r
+f 6494/6882 6482/6870 6073/6463 \r
+f 6482/6870 6494/6882 6495/6883 6483/6871 \r
+f 6483/6871 6495/6883 6496/6884 6484/6872 \r
+f 6484/6872 6496/6884 6497/6885 6485/6873 \r
+f 6485/6873 6497/6885 6498/6886 6486/6874 \r
+f 6486/6874 6498/6886 6499/6887 6487/6875 \r
+f 6487/6875 6499/6887 6500/6888 6488/6876 \r
+f 6488/6876 6500/6888 6501/6889 6489/6877 \r
+f 6489/6877 6501/6889 6502/6890 6490/6878 \r
+f 6490/6878 6502/6890 6503/6891 6491/6879 \r
+f 6491/6879 6503/6891 6504/6892 6492/6880 \r
+f 6492/7648 6504/7649 6505/6893 6493/6881 \r
+f 6506/6894 6494/6882 6073/6463 \r
+f 6494/6882 6506/6894 6507/6895 6495/6883 \r
+f 6495/6883 6507/6895 6508/6896 6496/6884 \r
+f 6496/6884 6508/6896 6509/6897 6497/6885 \r
+f 6497/6885 6509/6897 6510/6898 6498/6886 \r
+f 6498/6886 6510/6898 6511/6899 6499/6887 \r
+f 6499/6887 6511/6899 6512/6900 6500/6888 \r
+f 6500/6888 6512/6900 6513/6901 6501/6889 \r
+f 6501/6889 6513/6901 6514/6902 6502/6890 \r
+f 6502/6890 6514/6902 6515/6903 6503/6891 \r
+f 6503/6891 6515/6903 6516/6904 6504/6892 \r
+f 6504/7649 6516/7650 6517/6905 6505/6893 \r
+f 6518/6906 6506/6894 6073/6463 \r
+f 6506/6894 6518/6906 6519/6907 6507/6895 \r
+f 6507/6895 6519/6907 6520/6908 6508/6896 \r
+f 6508/6896 6520/6908 6521/6909 6509/6897 \r
+f 6509/6897 6521/6909 6522/6910 6510/6898 \r
+f 6510/6898 6522/6910 6523/6911 6511/6899 \r
+f 6511/6899 6523/6911 6524/6912 6512/6900 \r
+f 6512/6900 6524/6912 6525/6913 6513/6901 \r
+f 6513/6901 6525/6913 6526/6914 6514/6902 \r
+f 6514/6902 6526/6914 6527/6915 6515/6903 \r
+f 6515/6903 6527/6915 6528/6916 6516/6904 \r
+f 6516/7650 6528/7651 6529/6917 6517/6905 \r
+f 6530/6918 6518/6906 6073/6463 \r
+f 6518/6906 6530/6918 6531/6919 6519/6907 \r
+f 6519/6907 6531/6919 6532/6920 6520/6908 \r
+f 6520/6908 6532/6920 6533/6921 6521/6909 \r
+f 6521/6909 6533/6921 6534/6922 6522/6910 \r
+f 6522/6910 6534/6922 6535/6923 6523/6911 \r
+f 6523/6911 6535/6923 6536/6924 6524/6912 \r
+f 6524/6912 6536/6924 6537/6925 6525/6913 \r
+f 6525/6913 6537/6925 6538/6926 6526/6914 \r
+f 6526/6914 6538/6926 6539/6927 6527/6915 \r
+f 6527/6915 6539/6927 6540/6928 6528/6916 \r
+f 6528/7651 6540/7652 6541/6929 6529/6917 \r
+f 6542/6930 6530/6918 6073/6463 \r
+f 6530/6918 6542/6930 6543/6931 6531/6919 \r
+f 6531/6919 6543/6931 6544/6932 6532/6920 \r
+f 6532/6920 6544/6932 6545/6933 6533/6921 \r
+f 6533/6921 6545/6933 6546/6934 6534/6922 \r
+f 6534/6922 6546/6934 6547/6935 6535/6923 \r
+f 6535/6923 6547/6935 6548/6936 6536/6924 \r
+f 6536/6924 6548/6936 6549/6937 6537/6925 \r
+f 6537/6925 6549/6937 6550/6938 6538/6926 \r
+f 6538/6926 6550/6938 6551/6939 6539/6927 \r
+f 6539/6927 6551/6939 6552/6940 6540/6928 \r
+f 6540/7652 6552/7653 6553/6941 6541/6929 \r
+f 6554/6942 6542/6930 6073/6463 \r
+f 6542/6930 6554/6942 6555/6943 6543/6931 \r
+f 6543/6931 6555/6943 6556/6944 6544/6932 \r
+f 6544/6932 6556/6944 6557/6945 6545/6933 \r
+f 6545/6933 6557/6945 6558/6946 6546/6934 \r
+f 6546/6934 6558/6946 6559/6947 6547/6935 \r
+f 6547/6935 6559/6947 6560/6948 6548/6936 \r
+f 6548/6936 6560/6948 6561/6949 6549/6937 \r
+f 6549/6937 6561/6949 6562/6950 6550/6938 \r
+f 6550/6938 6562/6950 6563/6951 6551/6939 \r
+f 6551/6939 6563/6951 6564/6952 6552/6940 \r
+f 6552/7653 6564/7654 6565/6953 6553/6941 \r
+f 6566/6954 6554/6942 6073/6463 \r
+f 6554/6942 6566/6954 6567/6955 6555/6943 \r
+f 6555/6943 6567/6955 6568/6956 6556/6944 \r
+f 6556/6944 6568/6956 6569/6957 6557/6945 \r
+f 6557/6945 6569/6957 6570/6958 6558/6946 \r
+f 6558/6946 6570/6958 6571/6959 6559/6947 \r
+f 6559/6947 6571/6959 6572/6960 6560/6948 \r
+f 6560/6948 6572/6960 6573/6961 6561/6949 \r
+f 6561/6949 6573/6961 6574/6962 6562/6950 \r
+f 6562/6950 6574/6962 6575/6963 6563/6951 \r
+f 6563/6951 6575/6963 6576/6964 6564/6952 \r
+f 6564/7654 6576/7655 6577/6965 6565/6953 \r
+f 6578/6966 6566/6954 6073/6463 \r
+f 6566/6954 6578/6966 6579/6967 6567/6955 \r
+f 6567/6955 6579/6967 6580/6968 6568/6956 \r
+f 6568/6956 6580/6968 6581/6969 6569/6957 \r
+f 6569/6957 6581/6969 6582/6970 6570/6958 \r
+f 6570/6958 6582/6970 6583/6971 6571/6959 \r
+f 6571/6959 6583/6971 6584/6972 6572/6960 \r
+f 6572/6960 6584/6972 6585/6973 6573/6961 \r
+f 6573/6961 6585/6973 6586/6974 6574/6962 \r
+f 6574/6962 6586/6974 6587/6975 6575/6963 \r
+f 6575/6963 6587/6975 6588/6976 6576/6964 \r
+f 6576/7655 6588/7656 6589/6977 6577/6965 \r
+f 6590/6978 6578/6966 6073/6463 \r
+f 6578/6966 6590/6978 6591/6979 6579/6967 \r
+f 6579/6967 6591/6979 6592/6980 6580/6968 \r
+f 6580/6968 6592/6980 6593/6981 6581/6969 \r
+f 6581/6969 6593/6981 6594/6982 6582/6970 \r
+f 6582/6970 6594/6982 6595/6983 6583/6971 \r
+f 6583/6971 6595/6983 6596/6984 6584/6972 \r
+f 6584/6972 6596/6984 6597/6985 6585/6973 \r
+f 6585/6973 6597/6985 6598/6986 6586/6974 \r
+f 6586/6974 6598/6986 6599/6987 6587/6975 \r
+f 6587/6975 6599/6987 6600/6988 6588/6976 \r
+f 6588/7656 6600/7657 6601/6989 6589/6977 \r
+f 6602/6990 6590/6978 6073/6463 \r
+f 6590/6978 6602/6990 6603/6991 6591/6979 \r
+f 6591/6979 6603/6991 6604/6992 6592/6980 \r
+f 6592/6980 6604/6992 6605/6993 6593/6981 \r
+f 6593/6981 6605/6993 6606/6994 6594/6982 \r
+f 6594/6982 6606/6994 6607/6995 6595/6983 \r
+f 6595/6983 6607/6995 6608/6996 6596/6984 \r
+f 6596/6984 6608/6996 6609/6997 6597/6985 \r
+f 6597/6985 6609/6997 6610/6998 6598/6986 \r
+f 6598/6986 6610/6998 6611/6999 6599/6987 \r
+f 6599/6987 6611/6999 6612/7000 6600/6988 \r
+f 6600/7657 6612/7658 6613/7001 6601/6989 \r
+f 6614/7002 6602/6990 6073/6463 \r
+f 6602/6990 6614/7002 6615/7003 6603/6991 \r
+f 6603/6991 6615/7003 6616/7004 6604/6992 \r
+f 6604/6992 6616/7004 6617/7005 6605/6993 \r
+f 6605/6993 6617/7005 6618/7006 6606/6994 \r
+f 6606/6994 6618/7006 6619/7007 6607/6995 \r
+f 6607/6995 6619/7007 6620/7008 6608/6996 \r
+f 6608/6996 6620/7008 6621/7009 6609/6997 \r
+f 6609/6997 6621/7009 6622/7010 6610/6998 \r
+f 6610/6998 6622/7010 6623/7011 6611/6999 \r
+f 6611/6999 6623/7011 6624/7012 6612/7000 \r
+f 6612/7658 6624/7659 6625/7013 6613/7001 \r
+f 6626/7014 6614/7002 6073/6463 \r
+f 6614/7002 6626/7014 6627/7015 6615/7003 \r
+f 6615/7003 6627/7015 6628/7016 6616/7004 \r
+f 6616/7004 6628/7016 6629/7017 6617/7005 \r
+f 6617/7005 6629/7017 6630/7018 6618/7006 \r
+f 6618/7006 6630/7018 6631/7019 6619/7007 \r
+f 6619/7007 6631/7019 6632/7020 6620/7008 \r
+f 6620/7008 6632/7020 6633/7021 6621/7009 \r
+f 6621/7009 6633/7021 6634/7022 6622/7010 \r
+f 6622/7010 6634/7022 6635/7023 6623/7011 \r
+f 6623/7011 6635/7023 6636/7024 6624/7012 \r
+f 6624/7659 6636/7660 6637/7025 6625/7013 \r
+f 6638/7026 6626/7014 6073/6463 \r
+f 6626/7014 6638/7026 6639/7027 6627/7015 \r
+f 6627/7015 6639/7027 6640/7028 6628/7016 \r
+f 6628/7016 6640/7028 6641/7029 6629/7017 \r
+f 6629/7017 6641/7029 6642/7030 6630/7018 \r
+f 6630/7018 6642/7030 6643/7031 6631/7019 \r
+f 6631/7019 6643/7031 6644/7032 6632/7020 \r
+f 6632/7020 6644/7032 6645/7033 6633/7021 \r
+f 6633/7021 6645/7033 6646/7034 6634/7022 \r
+f 6634/7022 6646/7034 6647/7035 6635/7023 \r
+f 6635/7023 6647/7035 6648/7036 6636/7024 \r
+f 6636/7660 6648/7661 6649/7037 6637/7025 \r
+f 6074/6462 6638/7026 6073/6463 \r
+f 6638/7026 6074/6462 6075/6465 6639/7027 \r
+f 6639/7027 6075/6465 6076/6467 6640/7028 \r
+f 6640/7028 6076/6467 6077/6469 6641/7029 \r
+f 6641/7029 6077/6469 6078/6471 6642/7030 \r
+f 6642/7030 6078/6471 6079/6473 6643/7031 \r
+f 6643/7031 6079/6473 6080/6475 6644/7032 \r
+f 6644/7032 6080/6475 6081/6477 6645/7033 \r
+f 6645/7033 6081/6477 6082/6479 6646/7034 \r
+f 6646/7034 6082/6479 6083/6481 6647/7035 \r
+f 6647/7035 6083/6481 6084/6483 6648/7036 \r
+f 6648/7661 6084/7615 6085/6485 6649/7037 \r
+f 6085/6485 6097/6484 6662/7038 6650/7039 \r
+f 6650/7039 6662/7038 6663/7040 6651/7041 \r
+f 6651/7041 6663/7040 6664/7042 6652/7043 \r
+f 6652/7043 6664/7042 6665/7044 6653/7045 \r
+f 6653/7045 6665/7044 6666/7046 6654/7047 \r
+f 6654/7047 6666/7046 6667/7048 6655/7049 \r
+f 6655/7049 6667/7048 6668/7050 6656/7051 \r
+f 6656/7051 6668/7050 6669/7052 6657/7053 \r
+f 6657/7053 6669/7052 6670/7054 6658/7055 \r
+f 6658/7055 6670/7054 6671/7056 6659/7057 \r
+f 6659/7057 6671/7056 6672/7058 6660/7059 \r
+f 6660/7059 6672/7058 6673/7060 6661/7061 \r
+f 6097/6484 6109/6497 6674/7062 6662/7038 \r
+f 6662/7038 6674/7062 6675/7063 6663/7040 \r
+f 6663/7040 6675/7063 6676/7064 6664/7042 \r
+f 6664/7042 6676/7064 6677/7065 6665/7044 \r
+f 6665/7044 6677/7065 6678/7066 6666/7046 \r
+f 6666/7046 6678/7066 6679/7067 6667/7048 \r
+f 6667/7048 6679/7067 6680/7068 6668/7050 \r
+f 6668/7050 6680/7068 6681/7069 6669/7052 \r
+f 6669/7052 6681/7069 6682/7070 6670/7054 \r
+f 6670/7054 6682/7070 6683/7071 6671/7056 \r
+f 6671/7056 6683/7071 6684/7072 6672/7058 \r
+f 6672/7058 6684/7072 6685/7073 6673/7060 \r
+f 6109/6497 6121/6509 6686/7074 6674/7062 \r
+f 6674/7062 6686/7074 6687/7075 6675/7063 \r
+f 6675/7063 6687/7075 6688/7076 6676/7064 \r
+f 6676/7064 6688/7076 6689/7077 6677/7065 \r
+f 6677/7065 6689/7077 6690/7078 6678/7066 \r
+f 6678/7066 6690/7078 6691/7079 6679/7067 \r
+f 6679/7067 6691/7079 6692/7080 6680/7068 \r
+f 6680/7068 6692/7080 6693/7081 6681/7069 \r
+f 6681/7069 6693/7081 6694/7082 6682/7070 \r
+f 6682/7070 6694/7082 6695/7083 6683/7071 \r
+f 6683/7071 6695/7083 6696/7084 6684/7072 \r
+f 6684/7072 6696/7084 6697/7085 6685/7073 \r
+f 6121/6509 6133/6521 6698/7086 6686/7074 \r
+f 6686/7074 6698/7086 6699/7087 6687/7075 \r
+f 6687/7075 6699/7087 6700/7088 6688/7076 \r
+f 6688/7076 6700/7088 6701/7089 6689/7077 \r
+f 6689/7077 6701/7089 6702/7090 6690/7078 \r
+f 6690/7078 6702/7090 6703/7091 6691/7079 \r
+f 6691/7079 6703/7091 6704/7092 6692/7080 \r
+f 6692/7080 6704/7092 6705/7093 6693/7081 \r
+f 6693/7081 6705/7093 6706/7094 6694/7082 \r
+f 6694/7082 6706/7094 6707/7095 6695/7083 \r
+f 6695/7083 6707/7095 6708/7096 6696/7084 \r
+f 6696/7084 6708/7096 6709/7097 6697/7085 \r
+f 6133/6521 6145/6533 6710/7098 6698/7086 \r
+f 6698/7086 6710/7098 6711/7099 6699/7087 \r
+f 6699/7087 6711/7099 6712/7100 6700/7088 \r
+f 6700/7088 6712/7100 6713/7101 6701/7089 \r
+f 6701/7089 6713/7101 6714/7102 6702/7090 \r
+f 6702/7090 6714/7102 6715/7103 6703/7091 \r
+f 6703/7091 6715/7103 6716/7104 6704/7092 \r
+f 6704/7092 6716/7104 6717/7105 6705/7093 \r
+f 6705/7093 6717/7105 6718/7106 6706/7094 \r
+f 6706/7094 6718/7106 6719/7107 6707/7095 \r
+f 6707/7095 6719/7107 6720/7108 6708/7096 \r
+f 6708/7096 6720/7108 6721/7109 6709/7097 \r
+f 6145/6533 6157/6545 6722/7110 6710/7098 \r
+f 6710/7098 6722/7110 6723/7111 6711/7099 \r
+f 6711/7099 6723/7111 6724/7112 6712/7100 \r
+f 6712/7100 6724/7112 6725/7113 6713/7101 \r
+f 6713/7101 6725/7113 6726/7114 6714/7102 \r
+f 6714/7102 6726/7114 6727/7115 6715/7103 \r
+f 6715/7103 6727/7115 6728/7116 6716/7104 \r
+f 6716/7104 6728/7116 6729/7117 6717/7105 \r
+f 6717/7105 6729/7117 6730/7118 6718/7106 \r
+f 6718/7106 6730/7118 6731/7119 6719/7107 \r
+f 6719/7107 6731/7119 6732/7120 6720/7108 \r
+f 6720/7108 6732/7120 6733/7121 6721/7109 \r
+f 6157/6545 6169/6557 6734/7122 6722/7110 \r
+f 6722/7110 6734/7122 6735/7123 6723/7111 \r
+f 6723/7111 6735/7123 6736/7124 6724/7112 \r
+f 6724/7112 6736/7124 6737/7125 6725/7113 \r
+f 6725/7113 6737/7125 6738/7126 6726/7114 \r
+f 6726/7114 6738/7126 6739/7127 6727/7115 \r
+f 6727/7115 6739/7127 6740/7128 6728/7116 \r
+f 6728/7116 6740/7128 6741/7129 6729/7117 \r
+f 6729/7117 6741/7129 6742/7130 6730/7118 \r
+f 6730/7118 6742/7130 6743/7131 6731/7119 \r
+f 6731/7119 6743/7131 6744/7132 6732/7120 \r
+f 6732/7120 6744/7132 6745/7133 6733/7121 \r
+f 6169/6557 6181/6569 6746/7134 6734/7122 \r
+f 6734/7122 6746/7134 6747/7135 6735/7123 \r
+f 6735/7123 6747/7135 6748/7136 6736/7124 \r
+f 6736/7124 6748/7136 6749/7137 6737/7125 \r
+f 6737/7125 6749/7137 6750/7138 6738/7126 \r
+f 6738/7126 6750/7138 6751/7139 6739/7127 \r
+f 6739/7127 6751/7139 6752/7140 6740/7128 \r
+f 6740/7128 6752/7140 6753/7141 6741/7129 \r
+f 6741/7129 6753/7141 6754/7142 6742/7130 \r
+f 6742/7130 6754/7142 6755/7143 6743/7131 \r
+f 6743/7131 6755/7143 6756/7144 6744/7132 \r
+f 6744/7132 6756/7144 6757/7145 6745/7133 \r
+f 6181/6569 6193/6581 6758/7146 6746/7134 \r
+f 6746/7134 6758/7146 6759/7147 6747/7135 \r
+f 6747/7135 6759/7147 6760/7148 6748/7136 \r
+f 6748/7136 6760/7148 6761/7149 6749/7137 \r
+f 6749/7137 6761/7149 6762/7150 6750/7138 \r
+f 6750/7138 6762/7150 6763/7151 6751/7139 \r
+f 6751/7139 6763/7151 6764/7152 6752/7140 \r
+f 6752/7140 6764/7152 6765/7153 6753/7141 \r
+f 6753/7141 6765/7153 6766/7154 6754/7142 \r
+f 6754/7142 6766/7154 6767/7155 6755/7143 \r
+f 6755/7143 6767/7155 6768/7156 6756/7144 \r
+f 6756/7144 6768/7156 6769/7157 6757/7145 \r
+f 6193/6581 6205/6593 6770/7158 6758/7146 \r
+f 6758/7146 6770/7158 6771/7159 6759/7147 \r
+f 6759/7147 6771/7159 6772/7160 6760/7148 \r
+f 6760/7148 6772/7160 6773/7161 6761/7149 \r
+f 6761/7149 6773/7161 6774/7162 6762/7150 \r
+f 6762/7150 6774/7162 6775/7163 6763/7151 \r
+f 6763/7151 6775/7163 6776/7164 6764/7152 \r
+f 6764/7152 6776/7164 6777/7165 6765/7153 \r
+f 6765/7153 6777/7165 6778/7166 6766/7154 \r
+f 6766/7154 6778/7166 6779/7167 6767/7155 \r
+f 6767/7155 6779/7167 6780/7168 6768/7156 \r
+f 6768/7156 6780/7168 6781/7169 6769/7157 \r
+f 6205/6593 6217/6605 6782/7170 6770/7158 \r
+f 6770/7158 6782/7170 6783/7171 6771/7159 \r
+f 6771/7159 6783/7171 6784/7172 6772/7160 \r
+f 6772/7160 6784/7172 6785/7173 6773/7161 \r
+f 6773/7161 6785/7173 6786/7174 6774/7162 \r
+f 6774/7162 6786/7174 6787/7175 6775/7163 \r
+f 6775/7163 6787/7175 6788/7176 6776/7164 \r
+f 6776/7164 6788/7176 6789/7177 6777/7165 \r
+f 6777/7165 6789/7177 6790/7178 6778/7166 \r
+f 6778/7166 6790/7178 6791/7179 6779/7167 \r
+f 6779/7167 6791/7179 6792/7180 6780/7168 \r
+f 6780/7168 6792/7180 6793/7181 6781/7169 \r
+f 6217/6605 6229/6617 6794/7182 6782/7170 \r
+f 6782/7170 6794/7182 6795/7183 6783/7171 \r
+f 6783/7171 6795/7183 6796/7184 6784/7172 \r
+f 6784/7172 6796/7184 6797/7185 6785/7173 \r
+f 6785/7173 6797/7185 6798/7186 6786/7174 \r
+f 6786/7174 6798/7186 6799/7187 6787/7175 \r
+f 6787/7175 6799/7187 6800/7188 6788/7176 \r
+f 6788/7176 6800/7188 6801/7189 6789/7177 \r
+f 6789/7177 6801/7189 6802/7190 6790/7178 \r
+f 6790/7178 6802/7190 6803/7191 6791/7179 \r
+f 6791/7179 6803/7191 6804/7192 6792/7180 \r
+f 6792/7180 6804/7192 6805/7193 6793/7181 \r
+f 6229/6617 6241/6629 6806/7194 6794/7182 \r
+f 6794/7182 6806/7194 6807/7195 6795/7183 \r
+f 6795/7183 6807/7195 6808/7196 6796/7184 \r
+f 6796/7184 6808/7196 6809/7197 6797/7185 \r
+f 6797/7185 6809/7197 6810/7198 6798/7186 \r
+f 6798/7186 6810/7198 6811/7199 6799/7187 \r
+f 6799/7187 6811/7199 6812/7200 6800/7188 \r
+f 6800/7188 6812/7200 6813/7201 6801/7189 \r
+f 6801/7189 6813/7201 6814/7202 6802/7190 \r
+f 6802/7190 6814/7202 6815/7203 6803/7191 \r
+f 6803/7191 6815/7203 6816/7204 6804/7192 \r
+f 6804/7192 6816/7204 6817/7205 6805/7193 \r
+f 6241/6629 6253/6641 6818/7206 6806/7194 \r
+f 6806/7194 6818/7206 6819/7207 6807/7195 \r
+f 6807/7195 6819/7207 6820/7208 6808/7196 \r
+f 6808/7196 6820/7208 6821/7209 6809/7197 \r
+f 6809/7197 6821/7209 6822/7210 6810/7198 \r
+f 6810/7198 6822/7210 6823/7211 6811/7199 \r
+f 6811/7199 6823/7211 6824/7212 6812/7200 \r
+f 6812/7200 6824/7212 6825/7213 6813/7201 \r
+f 6813/7201 6825/7213 6826/7214 6814/7202 \r
+f 6814/7202 6826/7214 6827/7215 6815/7203 \r
+f 6815/7203 6827/7215 6828/7216 6816/7204 \r
+f 6816/7204 6828/7216 6829/7217 6817/7205 \r
+f 6253/6641 6265/6653 6830/7218 6818/7206 \r
+f 6818/7206 6830/7218 6831/7219 6819/7207 \r
+f 6819/7207 6831/7219 6832/7220 6820/7208 \r
+f 6820/7208 6832/7220 6833/7221 6821/7209 \r
+f 6821/7209 6833/7221 6834/7222 6822/7210 \r
+f 6822/7210 6834/7222 6835/7223 6823/7211 \r
+f 6823/7211 6835/7223 6836/7224 6824/7212 \r
+f 6824/7212 6836/7224 6837/7225 6825/7213 \r
+f 6825/7213 6837/7225 6838/7226 6826/7214 \r
+f 6826/7214 6838/7226 6839/7227 6827/7215 \r
+f 6827/7215 6839/7227 6840/7228 6828/7216 \r
+f 6828/7216 6840/7228 6841/7229 6829/7217 \r
+f 6265/6653 6277/6665 6842/7230 6830/7218 \r
+f 6830/7218 6842/7230 6843/7231 6831/7219 \r
+f 6831/7219 6843/7231 6844/7232 6832/7220 \r
+f 6832/7220 6844/7232 6845/7233 6833/7221 \r
+f 6833/7221 6845/7233 6846/7234 6834/7222 \r
+f 6834/7222 6846/7234 6847/7235 6835/7223 \r
+f 6835/7223 6847/7235 6848/7236 6836/7224 \r
+f 6836/7224 6848/7236 6849/7237 6837/7225 \r
+f 6837/7225 6849/7237 6850/7238 6838/7226 \r
+f 6838/7226 6850/7238 6851/7239 6839/7227 \r
+f 6839/7227 6851/7239 6852/7240 6840/7228 \r
+f 6840/7228 6852/7240 6853/7241 6841/7229 \r
+f 6277/6665 6289/6677 6854/7242 6842/7230 \r
+f 6842/7230 6854/7242 6855/7243 6843/7231 \r
+f 6843/7231 6855/7243 6856/7244 6844/7232 \r
+f 6844/7232 6856/7244 6857/7245 6845/7233 \r
+f 6845/7233 6857/7245 6858/7246 6846/7234 \r
+f 6846/7234 6858/7246 6859/7247 6847/7235 \r
+f 6847/7235 6859/7247 6860/7248 6848/7236 \r
+f 6848/7236 6860/7248 6861/7249 6849/7237 \r
+f 6849/7237 6861/7249 6862/7250 6850/7238 \r
+f 6850/7238 6862/7250 6863/7251 6851/7239 \r
+f 6851/7239 6863/7251 6864/7252 6852/7240 \r
+f 6852/7240 6864/7252 6865/7253 6853/7241 \r
+f 6289/6677 6301/6689 6866/7254 6854/7242 \r
+f 6854/7242 6866/7254 6867/7255 6855/7243 \r
+f 6855/7243 6867/7255 6868/7256 6856/7244 \r
+f 6856/7244 6868/7256 6869/7257 6857/7245 \r
+f 6857/7245 6869/7257 6870/7258 6858/7246 \r
+f 6858/7246 6870/7258 6871/7259 6859/7247 \r
+f 6859/7247 6871/7259 6872/7260 6860/7248 \r
+f 6860/7248 6872/7260 6873/7261 6861/7249 \r
+f 6861/7249 6873/7261 6874/7262 6862/7250 \r
+f 6862/7250 6874/7262 6875/7263 6863/7251 \r
+f 6863/7251 6875/7263 6876/7264 6864/7252 \r
+f 6864/7252 6876/7264 6877/7265 6865/7253 \r
+f 6301/6689 6313/6701 6878/7266 6866/7254 \r
+f 6866/7254 6878/7266 6879/7267 6867/7255 \r
+f 6867/7255 6879/7267 6880/7268 6868/7256 \r
+f 6868/7256 6880/7268 6881/7269 6869/7257 \r
+f 6869/7257 6881/7269 6882/7270 6870/7258 \r
+f 6870/7258 6882/7270 6883/7271 6871/7259 \r
+f 6871/7259 6883/7271 6884/7272 6872/7260 \r
+f 6872/7260 6884/7272 6885/7273 6873/7261 \r
+f 6873/7261 6885/7273 6886/7274 6874/7262 \r
+f 6874/7262 6886/7274 6887/7275 6875/7263 \r
+f 6875/7263 6887/7275 6888/7276 6876/7264 \r
+f 6876/7264 6888/7276 6889/7277 6877/7265 \r
+f 6313/6701 6325/6713 6890/7278 6878/7266 \r
+f 6878/7266 6890/7278 6891/7279 6879/7267 \r
+f 6879/7267 6891/7279 6892/7280 6880/7268 \r
+f 6880/7268 6892/7280 6893/7281 6881/7269 \r
+f 6881/7269 6893/7281 6894/7282 6882/7270 \r
+f 6882/7270 6894/7282 6895/7283 6883/7271 \r
+f 6883/7271 6895/7283 6896/7284 6884/7272 \r
+f 6884/7272 6896/7284 6897/7285 6885/7273 \r
+f 6885/7273 6897/7285 6898/7286 6886/7274 \r
+f 6886/7274 6898/7286 6899/7287 6887/7275 \r
+f 6887/7275 6899/7287 6900/7288 6888/7276 \r
+f 6888/7276 6900/7288 6901/7289 6889/7277 \r
+f 6325/6713 6337/6725 6902/7290 6890/7278 \r
+f 6890/7278 6902/7290 6903/7291 6891/7279 \r
+f 6891/7279 6903/7291 6904/7292 6892/7280 \r
+f 6892/7280 6904/7292 6905/7293 6893/7281 \r
+f 6893/7281 6905/7293 6906/7294 6894/7282 \r
+f 6894/7282 6906/7294 6907/7295 6895/7283 \r
+f 6895/7283 6907/7295 6908/7296 6896/7284 \r
+f 6896/7284 6908/7296 6909/7297 6897/7285 \r
+f 6897/7285 6909/7297 6910/7298 6898/7286 \r
+f 6898/7286 6910/7298 6911/7299 6899/7287 \r
+f 6899/7287 6911/7299 6912/7300 6900/7288 \r
+f 6900/7288 6912/7300 6913/7301 6901/7289 \r
+f 6337/6725 6349/6737 6914/7302 6902/7290 \r
+f 6902/7290 6914/7302 6915/7303 6903/7291 \r
+f 6903/7291 6915/7303 6916/7304 6904/7292 \r
+f 6904/7292 6916/7304 6917/7305 6905/7293 \r
+f 6905/7293 6917/7305 6918/7306 6906/7294 \r
+f 6906/7294 6918/7306 6919/7307 6907/7295 \r
+f 6907/7295 6919/7307 6920/7308 6908/7296 \r
+f 6908/7296 6920/7308 6921/7309 6909/7297 \r
+f 6909/7297 6921/7309 6922/7310 6910/7298 \r
+f 6910/7298 6922/7310 6923/7311 6911/7299 \r
+f 6911/7299 6923/7311 6924/7312 6912/7300 \r
+f 6912/7300 6924/7312 6925/7313 6913/7301 \r
+f 6349/6737 6361/6749 6926/7314 6914/7302 \r
+f 6914/7302 6926/7314 6927/7315 6915/7303 \r
+f 6915/7303 6927/7315 6928/7316 6916/7304 \r
+f 6916/7304 6928/7316 6929/7317 6917/7305 \r
+f 6917/7305 6929/7317 6930/7318 6918/7306 \r
+f 6918/7306 6930/7318 6931/7319 6919/7307 \r
+f 6919/7307 6931/7319 6932/7320 6920/7308 \r
+f 6920/7308 6932/7320 6933/7321 6921/7309 \r
+f 6921/7309 6933/7321 6934/7322 6922/7310 \r
+f 6922/7310 6934/7322 6935/7323 6923/7311 \r
+f 6923/7311 6935/7323 6936/7324 6924/7312 \r
+f 6924/7312 6936/7324 6937/7325 6925/7313 \r
+f 6361/6749 6373/6761 6938/7326 6926/7314 \r
+f 6926/7314 6938/7326 6939/7327 6927/7315 \r
+f 6927/7315 6939/7327 6940/7328 6928/7316 \r
+f 6928/7316 6940/7328 6941/7329 6929/7317 \r
+f 6929/7317 6941/7329 6942/7330 6930/7318 \r
+f 6930/7318 6942/7330 6943/7331 6931/7319 \r
+f 6931/7319 6943/7331 6944/7332 6932/7320 \r
+f 6932/7320 6944/7332 6945/7333 6933/7321 \r
+f 6933/7321 6945/7333 6946/7334 6934/7322 \r
+f 6934/7322 6946/7334 6947/7335 6935/7323 \r
+f 6935/7323 6947/7335 6948/7336 6936/7324 \r
+f 6936/7324 6948/7336 6949/7337 6937/7325 \r
+f 6373/6761 6385/6773 6950/7338 6938/7326 \r
+f 6938/7326 6950/7338 6951/7339 6939/7327 \r
+f 6939/7327 6951/7339 6952/7340 6940/7328 \r
+f 6940/7328 6952/7340 6953/7341 6941/7329 \r
+f 6941/7329 6953/7341 6954/7342 6942/7330 \r
+f 6942/7330 6954/7342 6955/7343 6943/7331 \r
+f 6943/7331 6955/7343 6956/7344 6944/7332 \r
+f 6944/7332 6956/7344 6957/7345 6945/7333 \r
+f 6945/7333 6957/7345 6958/7346 6946/7334 \r
+f 6946/7334 6958/7346 6959/7347 6947/7335 \r
+f 6947/7335 6959/7347 6960/7348 6948/7336 \r
+f 6948/7336 6960/7348 6961/7349 6949/7337 \r
+f 6385/6773 6397/6785 6962/7350 6950/7338 \r
+f 6950/7338 6962/7350 6963/7351 6951/7339 \r
+f 6951/7339 6963/7351 6964/7352 6952/7340 \r
+f 6952/7340 6964/7352 6965/7353 6953/7341 \r
+f 6953/7341 6965/7353 6966/7354 6954/7342 \r
+f 6954/7342 6966/7354 6967/7355 6955/7343 \r
+f 6955/7343 6967/7355 6968/7356 6956/7344 \r
+f 6956/7344 6968/7356 6969/7357 6957/7345 \r
+f 6957/7345 6969/7357 6970/7358 6958/7346 \r
+f 6958/7346 6970/7358 6971/7359 6959/7347 \r
+f 6959/7347 6971/7359 6972/7360 6960/7348 \r
+f 6960/7348 6972/7360 6973/7361 6961/7349 \r
+f 6397/6785 6409/6797 6974/7362 6962/7350 \r
+f 6962/7350 6974/7362 6975/7363 6963/7351 \r
+f 6963/7351 6975/7363 6976/7364 6964/7352 \r
+f 6964/7352 6976/7364 6977/7365 6965/7353 \r
+f 6965/7353 6977/7365 6978/7366 6966/7354 \r
+f 6966/7354 6978/7366 6979/7367 6967/7355 \r
+f 6967/7355 6979/7367 6980/7368 6968/7356 \r
+f 6968/7356 6980/7368 6981/7369 6969/7357 \r
+f 6969/7357 6981/7369 6982/7370 6970/7358 \r
+f 6970/7358 6982/7370 6983/7371 6971/7359 \r
+f 6971/7359 6983/7371 6984/7372 6972/7360 \r
+f 6972/7360 6984/7372 6985/7373 6973/7361 \r
+f 6409/6797 6421/6809 6986/7374 6974/7362 \r
+f 6974/7362 6986/7374 6987/7375 6975/7363 \r
+f 6975/7363 6987/7375 6988/7376 6976/7364 \r
+f 6976/7364 6988/7376 6989/7377 6977/7365 \r
+f 6977/7365 6989/7377 6990/7378 6978/7366 \r
+f 6978/7366 6990/7378 6991/7379 6979/7367 \r
+f 6979/7367 6991/7379 6992/7380 6980/7368 \r
+f 6980/7368 6992/7380 6993/7381 6981/7369 \r
+f 6981/7369 6993/7381 6994/7382 6982/7370 \r
+f 6982/7370 6994/7382 6995/7383 6983/7371 \r
+f 6983/7371 6995/7383 6996/7384 6984/7372 \r
+f 6984/7372 6996/7384 6997/7385 6985/7373 \r
+f 6421/6809 6433/6821 6998/7386 6986/7374 \r
+f 6986/7374 6998/7386 6999/7387 6987/7375 \r
+f 6987/7375 6999/7387 7000/7388 6988/7376 \r
+f 6988/7376 7000/7388 7001/7389 6989/7377 \r
+f 6989/7377 7001/7389 7002/7390 6990/7378 \r
+f 6990/7378 7002/7390 7003/7391 6991/7379 \r
+f 6991/7379 7003/7391 7004/7392 6992/7380 \r
+f 6992/7380 7004/7392 7005/7393 6993/7381 \r
+f 6993/7381 7005/7393 7006/7394 6994/7382 \r
+f 6994/7382 7006/7394 7007/7395 6995/7383 \r
+f 6995/7383 7007/7395 7008/7396 6996/7384 \r
+f 6996/7384 7008/7396 7009/7397 6997/7385 \r
+f 6433/6821 6445/6833 7010/7398 6998/7386 \r
+f 6998/7386 7010/7398 7011/7399 6999/7387 \r
+f 6999/7387 7011/7399 7012/7400 7000/7388 \r
+f 7000/7388 7012/7400 7013/7401 7001/7389 \r
+f 7001/7389 7013/7401 7014/7402 7002/7390 \r
+f 7002/7390 7014/7402 7015/7403 7003/7391 \r
+f 7003/7391 7015/7403 7016/7404 7004/7392 \r
+f 7004/7392 7016/7404 7017/7405 7005/7393 \r
+f 7005/7393 7017/7405 7018/7406 7006/7394 \r
+f 7006/7394 7018/7406 7019/7407 7007/7395 \r
+f 7007/7395 7019/7407 7020/7408 7008/7396 \r
+f 7008/7396 7020/7408 7021/7409 7009/7397 \r
+f 6445/6833 6457/6845 7022/7410 7010/7398 \r
+f 7010/7398 7022/7410 7023/7411 7011/7399 \r
+f 7011/7399 7023/7411 7024/7412 7012/7400 \r
+f 7012/7400 7024/7412 7025/7413 7013/7401 \r
+f 7013/7401 7025/7413 7026/7414 7014/7402 \r
+f 7014/7402 7026/7414 7027/7415 7015/7403 \r
+f 7015/7403 7027/7415 7028/7416 7016/7404 \r
+f 7016/7404 7028/7416 7029/7417 7017/7405 \r
+f 7017/7405 7029/7417 7030/7418 7018/7406 \r
+f 7018/7406 7030/7418 7031/7419 7019/7407 \r
+f 7019/7407 7031/7419 7032/7420 7020/7408 \r
+f 7020/7408 7032/7420 7033/7421 7021/7409 \r
+f 6457/6845 6469/6857 7034/7422 7022/7410 \r
+f 7022/7410 7034/7422 7035/7423 7023/7411 \r
+f 7023/7411 7035/7423 7036/7424 7024/7412 \r
+f 7024/7412 7036/7424 7037/7425 7025/7413 \r
+f 7025/7413 7037/7425 7038/7426 7026/7414 \r
+f 7026/7414 7038/7426 7039/7427 7027/7415 \r
+f 7027/7415 7039/7427 7040/7428 7028/7416 \r
+f 7028/7416 7040/7428 7041/7429 7029/7417 \r
+f 7029/7417 7041/7429 7042/7430 7030/7418 \r
+f 7030/7418 7042/7430 7043/7431 7031/7419 \r
+f 7031/7419 7043/7431 7044/7432 7032/7420 \r
+f 7032/7420 7044/7432 7045/7433 7033/7421 \r
+f 6469/6857 6481/6869 7046/7434 7034/7422 \r
+f 7034/7422 7046/7434 7047/7435 7035/7423 \r
+f 7035/7423 7047/7435 7048/7436 7036/7424 \r
+f 7036/7424 7048/7436 7049/7437 7037/7425 \r
+f 7037/7425 7049/7437 7050/7438 7038/7426 \r
+f 7038/7426 7050/7438 7051/7439 7039/7427 \r
+f 7039/7427 7051/7439 7052/7440 7040/7428 \r
+f 7040/7428 7052/7440 7053/7441 7041/7429 \r
+f 7041/7429 7053/7441 7054/7442 7042/7430 \r
+f 7042/7430 7054/7442 7055/7443 7043/7431 \r
+f 7043/7431 7055/7443 7056/7444 7044/7432 \r
+f 7044/7432 7056/7444 7057/7445 7045/7433 \r
+f 6481/6869 6493/6881 7058/7446 7046/7434 \r
+f 7046/7434 7058/7446 7059/7447 7047/7435 \r
+f 7047/7435 7059/7447 7060/7448 7048/7436 \r
+f 7048/7436 7060/7448 7061/7449 7049/7437 \r
+f 7049/7437 7061/7449 7062/7450 7050/7438 \r
+f 7050/7438 7062/7450 7063/7451 7051/7439 \r
+f 7051/7439 7063/7451 7064/7452 7052/7440 \r
+f 7052/7440 7064/7452 7065/7453 7053/7441 \r
+f 7053/7441 7065/7453 7066/7454 7054/7442 \r
+f 7054/7442 7066/7454 7067/7455 7055/7443 \r
+f 7055/7443 7067/7455 7068/7456 7056/7444 \r
+f 7056/7444 7068/7456 7069/7457 7057/7445 \r
+f 6493/6881 6505/6893 7070/7458 7058/7446 \r
+f 7058/7446 7070/7458 7071/7459 7059/7447 \r
+f 7059/7447 7071/7459 7072/7460 7060/7448 \r
+f 7060/7448 7072/7460 7073/7461 7061/7449 \r
+f 7061/7449 7073/7461 7074/7462 7062/7450 \r
+f 7062/7450 7074/7462 7075/7463 7063/7451 \r
+f 7063/7451 7075/7463 7076/7464 7064/7452 \r
+f 7064/7452 7076/7464 7077/7465 7065/7453 \r
+f 7065/7453 7077/7465 7078/7466 7066/7454 \r
+f 7066/7454 7078/7466 7079/7467 7067/7455 \r
+f 7067/7455 7079/7467 7080/7468 7068/7456 \r
+f 7068/7456 7080/7468 7081/7469 7069/7457 \r
+f 6505/6893 6517/6905 7082/7470 7070/7458 \r
+f 7070/7458 7082/7470 7083/7471 7071/7459 \r
+f 7071/7459 7083/7471 7084/7472 7072/7460 \r
+f 7072/7460 7084/7472 7085/7473 7073/7461 \r
+f 7073/7461 7085/7473 7086/7474 7074/7462 \r
+f 7074/7462 7086/7474 7087/7475 7075/7463 \r
+f 7075/7463 7087/7475 7088/7476 7076/7464 \r
+f 7076/7464 7088/7476 7089/7477 7077/7465 \r
+f 7077/7465 7089/7477 7090/7478 7078/7466 \r
+f 7078/7466 7090/7478 7091/7479 7079/7467 \r
+f 7079/7467 7091/7479 7092/7480 7080/7468 \r
+f 7080/7468 7092/7480 7093/7481 7081/7469 \r
+f 6517/6905 6529/6917 7094/7482 7082/7470 \r
+f 7082/7470 7094/7482 7095/7483 7083/7471 \r
+f 7083/7471 7095/7483 7096/7484 7084/7472 \r
+f 7084/7472 7096/7484 7097/7485 7085/7473 \r
+f 7085/7473 7097/7485 7098/7486 7086/7474 \r
+f 7086/7474 7098/7486 7099/7487 7087/7475 \r
+f 7087/7475 7099/7487 7100/7488 7088/7476 \r
+f 7088/7476 7100/7488 7101/7489 7089/7477 \r
+f 7089/7477 7101/7489 7102/7490 7090/7478 \r
+f 7090/7478 7102/7490 7103/7491 7091/7479 \r
+f 7091/7479 7103/7491 7104/7492 7092/7480 \r
+f 7092/7480 7104/7492 7105/7493 7093/7481 \r
+f 6529/6917 6541/6929 7106/7494 7094/7482 \r
+f 7094/7482 7106/7494 7107/7495 7095/7483 \r
+f 7095/7483 7107/7495 7108/7496 7096/7484 \r
+f 7096/7484 7108/7496 7109/7497 7097/7485 \r
+f 7097/7485 7109/7497 7110/7498 7098/7486 \r
+f 7098/7486 7110/7498 7111/7499 7099/7487 \r
+f 7099/7487 7111/7499 7112/7500 7100/7488 \r
+f 7100/7488 7112/7500 7113/7501 7101/7489 \r
+f 7101/7489 7113/7501 7114/7502 7102/7490 \r
+f 7102/7490 7114/7502 7115/7503 7103/7491 \r
+f 7103/7491 7115/7503 7116/7504 7104/7492 \r
+f 7104/7492 7116/7504 7117/7505 7105/7493 \r
+f 6541/6929 6553/6941 7118/7506 7106/7494 \r
+f 7106/7494 7118/7506 7119/7507 7107/7495 \r
+f 7107/7495 7119/7507 7120/7508 7108/7496 \r
+f 7108/7496 7120/7508 7121/7509 7109/7497 \r
+f 7109/7497 7121/7509 7122/7510 7110/7498 \r
+f 7110/7498 7122/7510 7123/7511 7111/7499 \r
+f 7111/7499 7123/7511 7124/7512 7112/7500 \r
+f 7112/7500 7124/7512 7125/7513 7113/7501 \r
+f 7113/7501 7125/7513 7126/7514 7114/7502 \r
+f 7114/7502 7126/7514 7127/7515 7115/7503 \r
+f 7115/7503 7127/7515 7128/7516 7116/7504 \r
+f 7116/7504 7128/7516 7129/7517 7117/7505 \r
+f 6553/6941 6565/6953 7130/7518 7118/7506 \r
+f 7118/7506 7130/7518 7131/7519 7119/7507 \r
+f 7119/7507 7131/7519 7132/7520 7120/7508 \r
+f 7120/7508 7132/7520 7133/7521 7121/7509 \r
+f 7121/7509 7133/7521 7134/7522 7122/7510 \r
+f 7122/7510 7134/7522 7135/7523 7123/7511 \r
+f 7123/7511 7135/7523 7136/7524 7124/7512 \r
+f 7124/7512 7136/7524 7137/7525 7125/7513 \r
+f 7125/7513 7137/7525 7138/7526 7126/7514 \r
+f 7126/7514 7138/7526 7139/7527 7127/7515 \r
+f 7127/7515 7139/7527 7140/7528 7128/7516 \r
+f 7128/7516 7140/7528 7141/7529 7129/7517 \r
+f 6565/6953 6577/6965 7142/7530 7130/7518 \r
+f 7130/7518 7142/7530 7143/7531 7131/7519 \r
+f 7131/7519 7143/7531 7144/7532 7132/7520 \r
+f 7132/7520 7144/7532 7145/7533 7133/7521 \r
+f 7133/7521 7145/7533 7146/7534 7134/7522 \r
+f 7134/7522 7146/7534 7147/7535 7135/7523 \r
+f 7135/7523 7147/7535 7148/7536 7136/7524 \r
+f 7136/7524 7148/7536 7149/7537 7137/7525 \r
+f 7137/7525 7149/7537 7150/7538 7138/7526 \r
+f 7138/7526 7150/7538 7151/7539 7139/7527 \r
+f 7139/7527 7151/7539 7152/7540 7140/7528 \r
+f 7140/7528 7152/7540 7153/7541 7141/7529 \r
+f 6577/6965 6589/6977 7154/7542 7142/7530 \r
+f 7142/7530 7154/7542 7155/7543 7143/7531 \r
+f 7143/7531 7155/7543 7156/7544 7144/7532 \r
+f 7144/7532 7156/7544 7157/7545 7145/7533 \r
+f 7145/7533 7157/7545 7158/7546 7146/7534 \r
+f 7146/7534 7158/7546 7159/7547 7147/7535 \r
+f 7147/7535 7159/7547 7160/7548 7148/7536 \r
+f 7148/7536 7160/7548 7161/7549 7149/7537 \r
+f 7149/7537 7161/7549 7162/7550 7150/7538 \r
+f 7150/7538 7162/7550 7163/7551 7151/7539 \r
+f 7151/7539 7163/7551 7164/7552 7152/7540 \r
+f 7152/7540 7164/7552 7165/7553 7153/7541 \r
+f 6589/6977 6601/6989 7166/7554 7154/7542 \r
+f 7154/7542 7166/7554 7167/7555 7155/7543 \r
+f 7155/7543 7167/7555 7168/7556 7156/7544 \r
+f 7156/7544 7168/7556 7169/7557 7157/7545 \r
+f 7157/7545 7169/7557 7170/7558 7158/7546 \r
+f 7158/7546 7170/7558 7171/7559 7159/7547 \r
+f 7159/7547 7171/7559 7172/7560 7160/7548 \r
+f 7160/7548 7172/7560 7173/7561 7161/7549 \r
+f 7161/7549 7173/7561 7174/7562 7162/7550 \r
+f 7162/7550 7174/7562 7175/7563 7163/7551 \r
+f 7163/7551 7175/7563 7176/7564 7164/7552 \r
+f 7164/7552 7176/7564 7177/7565 7165/7553 \r
+f 6601/6989 6613/7001 7178/7566 7166/7554 \r
+f 7166/7554 7178/7566 7179/7567 7167/7555 \r
+f 7167/7555 7179/7567 7180/7568 7168/7556 \r
+f 7168/7556 7180/7568 7181/7569 7169/7557 \r
+f 7169/7557 7181/7569 7182/7570 7170/7558 \r
+f 7170/7558 7182/7570 7183/7571 7171/7559 \r
+f 7171/7559 7183/7571 7184/7572 7172/7560 \r
+f 7172/7560 7184/7572 7185/7573 7173/7561 \r
+f 7173/7561 7185/7573 7186/7574 7174/7562 \r
+f 7174/7562 7186/7574 7187/7575 7175/7563 \r
+f 7175/7563 7187/7575 7188/7576 7176/7564 \r
+f 7176/7564 7188/7576 7189/7577 7177/7565 \r
+f 6613/7001 6625/7013 7190/7578 7178/7566 \r
+f 7178/7566 7190/7578 7191/7579 7179/7567 \r
+f 7179/7567 7191/7579 7192/7580 7180/7568 \r
+f 7180/7568 7192/7580 7193/7581 7181/7569 \r
+f 7181/7569 7193/7581 7194/7582 7182/7570 \r
+f 7182/7570 7194/7582 7195/7583 7183/7571 \r
+f 7183/7571 7195/7583 7196/7584 7184/7572 \r
+f 7184/7572 7196/7584 7197/7585 7185/7573 \r
+f 7185/7573 7197/7585 7198/7586 7186/7574 \r
+f 7186/7574 7198/7586 7199/7587 7187/7575 \r
+f 7187/7575 7199/7587 7200/7588 7188/7576 \r
+f 7188/7576 7200/7588 7201/7589 7189/7577 \r
+f 6625/7013 6637/7025 7202/7590 7190/7578 \r
+f 7190/7578 7202/7590 7203/7591 7191/7579 \r
+f 7191/7579 7203/7591 7204/7592 7192/7580 \r
+f 7192/7580 7204/7592 7205/7593 7193/7581 \r
+f 7193/7581 7205/7593 7206/7594 7194/7582 \r
+f 7194/7582 7206/7594 7207/7595 7195/7583 \r
+f 7195/7583 7207/7595 7208/7596 7196/7584 \r
+f 7196/7584 7208/7596 7209/7597 7197/7585 \r
+f 7197/7585 7209/7597 7210/7598 7198/7586 \r
+f 7198/7586 7210/7598 7211/7599 7199/7587 \r
+f 7199/7587 7211/7599 7212/7600 7200/7588 \r
+f 7200/7588 7212/7600 7213/7601 7201/7589 \r
+f 6637/7025 6649/7037 7214/7602 7202/7590 \r
+f 7202/7590 7214/7602 7215/7603 7203/7591 \r
+f 7203/7591 7215/7603 7216/7604 7204/7592 \r
+f 7204/7592 7216/7604 7217/7605 7205/7593 \r
+f 7205/7593 7217/7605 7218/7606 7206/7594 \r
+f 7206/7594 7218/7606 7219/7607 7207/7595 \r
+f 7207/7595 7219/7607 7220/7608 7208/7596 \r
+f 7208/7596 7220/7608 7221/7609 7209/7597 \r
+f 7209/7597 7221/7609 7222/7610 7210/7598 \r
+f 7210/7598 7222/7610 7223/7611 7211/7599 \r
+f 7211/7599 7223/7611 7224/7612 7212/7600 \r
+f 7212/7600 7224/7612 7225/7613 7213/7601 \r
+f 6649/7037 6085/6485 6650/7039 7214/7602 \r
+f 7214/7602 6650/7039 6651/7041 7215/7603 \r
+f 7215/7603 6651/7041 6652/7043 7216/7604 \r
+f 7216/7604 6652/7043 6653/7045 7217/7605 \r
+f 7217/7605 6653/7045 6654/7047 7218/7606 \r
+f 7218/7606 6654/7047 6655/7049 7219/7607 \r
+f 7219/7607 6655/7049 6656/7051 7220/7608 \r
+f 7220/7608 6656/7051 6657/7053 7221/7609 \r
+f 7221/7609 6657/7053 6658/7055 7222/7610 \r
+f 7222/7610 6658/7055 6659/7057 7223/7611 \r
+f 7223/7611 6659/7057 6660/7059 7224/7612 \r
+f 7224/7612 6660/7059 6661/7061 7225/7613 \r
+f 7286/7664 7227/7665 7226/7662 7274/7663 \r
+f 7287/7667 7286/7664 7274/7663 7275/7666 \r
+f 7288/7669 7287/7667 7275/7666 7276/7668 \r
+f 7289/7671 7288/7669 7276/7668 7277/7670 \r
+f 7290/7673 7289/7671 7277/7670 7278/7672 \r
+f 7291/7675 7290/7673 7278/7672 7279/7674 \r
+f 7292/7677 7291/7675 7279/7674 7280/7676 \r
+f 7293/7679 7292/7677 7280/7676 7281/7678 \r
+f 7294/7681 7293/7679 7281/7678 7282/7680 \r
+f 7295/7683 7294/7681 7282/7680 7283/7682 \r
+f 7296/7685 7295/7683 7283/7682 7284/7684 \r
+f 7297/7687 7296/7685 7284/7684 7285/7686 \r
+f 7298/7688 7228/7689 7227/7665 7286/7664 \r
+f 7299/7690 7298/7688 7286/7664 7287/7667 \r
+f 7300/7691 7299/7690 7287/7667 7288/7669 \r
+f 7301/7692 7300/7691 7288/7669 7289/7671 \r
+f 7302/7693 7301/7692 7289/7671 7290/7673 \r
+f 7303/7694 7302/7693 7290/7673 7291/7675 \r
+f 7304/7695 7303/7694 7291/7675 7292/7677 \r
+f 7305/7696 7304/7695 7292/7677 7293/7679 \r
+f 7306/7697 7305/7696 7293/7679 7294/7681 \r
+f 7307/7698 7306/7697 7294/7681 7295/7683 \r
+f 7308/7699 7307/7698 7295/7683 7296/7685 \r
+f 7309/7700 7308/7699 7296/7685 7297/7687 \r
+f 7310/7701 7229/7702 7228/7689 7298/7688 \r
+f 7311/7703 7310/7701 7298/7688 7299/7690 \r
+f 7312/7704 7311/7703 7299/7690 7300/7691 \r
+f 7313/7705 7312/7704 7300/7691 7301/7692 \r
+f 7314/7706 7313/7705 7301/7692 7302/7693 \r
+f 7315/7707 7314/7706 7302/7693 7303/7694 \r
+f 7316/7708 7315/7707 7303/7694 7304/7695 \r
+f 7317/7709 7316/7708 7304/7695 7305/7696 \r
+f 7318/7710 7317/7709 7305/7696 7306/7697 \r
+f 7319/7711 7318/7710 7306/7697 7307/7698 \r
+f 7320/7712 7319/7711 7307/7698 7308/7699 \r
+f 7321/7713 7320/7712 7308/7699 7309/7700 \r
+f 7322/7714 7230/7715 7229/7702 7310/7701 \r
+f 7323/7716 7322/7714 7310/7701 7311/7703 \r
+f 7324/7717 7323/7716 7311/7703 7312/7704 \r
+f 7325/7718 7324/7717 7312/7704 7313/7705 \r
+f 7326/7719 7325/7718 7313/7705 7314/7706 \r
+f 7327/7720 7326/7719 7314/7706 7315/7707 \r
+f 7328/7721 7327/7720 7315/7707 7316/7708 \r
+f 7329/7722 7328/7721 7316/7708 7317/7709 \r
+f 7330/7723 7329/7722 7317/7709 7318/7710 \r
+f 7331/7724 7330/7723 7318/7710 7319/7711 \r
+f 7332/7725 7331/7724 7319/7711 7320/7712 \r
+f 7333/7726 7332/7725 7320/7712 7321/7713 \r
+f 7334/7727 7231/7728 7230/7715 7322/7714 \r
+f 7335/7729 7334/7727 7322/7714 7323/7716 \r
+f 7336/7730 7335/7729 7323/7716 7324/7717 \r
+f 7337/7731 7336/7730 7324/7717 7325/7718 \r
+f 7338/7732 7337/7731 7325/7718 7326/7719 \r
+f 7339/7733 7338/7732 7326/7719 7327/7720 \r
+f 7340/7734 7339/7733 7327/7720 7328/7721 \r
+f 7341/7735 7340/7734 7328/7721 7329/7722 \r
+f 7342/7736 7341/7735 7329/7722 7330/7723 \r
+f 7343/7737 7342/7736 7330/7723 7331/7724 \r
+f 7344/7738 7343/7737 7331/7724 7332/7725 \r
+f 7345/7739 7344/7738 7332/7725 7333/7726 \r
+f 7346/7740 7232/7741 7231/7728 7334/7727 \r
+f 7347/7742 7346/7740 7334/7727 7335/7729 \r
+f 7348/7743 7347/7742 7335/7729 7336/7730 \r
+f 7349/7744 7348/7743 7336/7730 7337/7731 \r
+f 7350/7745 7349/7744 7337/7731 7338/7732 \r
+f 7351/7746 7350/7745 7338/7732 7339/7733 \r
+f 7352/7747 7351/7746 7339/7733 7340/7734 \r
+f 7353/7748 7352/7747 7340/7734 7341/7735 \r
+f 7354/7749 7353/7748 7341/7735 7342/7736 \r
+f 7355/7750 7354/7749 7342/7736 7343/7737 \r
+f 7356/7751 7355/7750 7343/7737 7344/7738 \r
+f 7357/7752 7356/7751 7344/7738 7345/7739 \r
+f 7358/7753 7233/7754 7232/7741 7346/7740 \r
+f 7359/7755 7358/7753 7346/7740 7347/7742 \r
+f 7360/7756 7359/7755 7347/7742 7348/7743 \r
+f 7361/7757 7360/7756 7348/7743 7349/7744 \r
+f 7362/7758 7361/7757 7349/7744 7350/7745 \r
+f 7363/7759 7362/7758 7350/7745 7351/7746 \r
+f 7364/7760 7363/7759 7351/7746 7352/7747 \r
+f 7365/7761 7364/7760 7352/7747 7353/7748 \r
+f 7366/7762 7365/7761 7353/7748 7354/7749 \r
+f 7367/7763 7366/7762 7354/7749 7355/7750 \r
+f 7368/7764 7367/7763 7355/7750 7356/7751 \r
+f 7369/7765 7368/7764 7356/7751 7357/7752 \r
+f 7370/7766 7234/7767 7233/7754 7358/7753 \r
+f 7371/7768 7370/7766 7358/7753 7359/7755 \r
+f 7372/7769 7371/7768 7359/7755 7360/7756 \r
+f 7373/7770 7372/7769 7360/7756 7361/7757 \r
+f 7374/7771 7373/7770 7361/7757 7362/7758 \r
+f 7375/7772 7374/7771 7362/7758 7363/7759 \r
+f 7376/7773 7375/7772 7363/7759 7364/7760 \r
+f 7377/7774 7376/7773 7364/7760 7365/7761 \r
+f 7378/7775 7377/7774 7365/7761 7366/7762 \r
+f 7379/7776 7378/7775 7366/7762 7367/7763 \r
+f 7380/7777 7379/7776 7367/7763 7368/7764 \r
+f 7381/7778 7380/7777 7368/7764 7369/7765 \r
+f 7382/7779 7235/7780 7234/7767 7370/7766 \r
+f 7383/7781 7382/7779 7370/7766 7371/7768 \r
+f 7384/7782 7383/7781 7371/7768 7372/7769 \r
+f 7385/7783 7384/7782 7372/7769 7373/7770 \r
+f 7386/7784 7385/7783 7373/7770 7374/7771 \r
+f 7387/7785 7386/7784 7374/7771 7375/7772 \r
+f 7388/7786 7387/7785 7375/7772 7376/7773 \r
+f 7389/7787 7388/7786 7376/7773 7377/7774 \r
+f 7390/7788 7389/7787 7377/7774 7378/7775 \r
+f 7391/7789 7390/7788 7378/7775 7379/7776 \r
+f 7392/7790 7391/7789 7379/7776 7380/7777 \r
+f 7393/7791 7392/7790 7380/7777 7381/7778 \r
+f 7394/7792 7236/7793 7235/7780 7382/7779 \r
+f 7395/7794 7394/7792 7382/7779 7383/7781 \r
+f 7396/7795 7395/7794 7383/7781 7384/7782 \r
+f 7397/7796 7396/7795 7384/7782 7385/7783 \r
+f 7398/7797 7397/7796 7385/7783 7386/7784 \r
+f 7399/7798 7398/7797 7386/7784 7387/7785 \r
+f 7400/7799 7399/7798 7387/7785 7388/7786 \r
+f 7401/7800 7400/7799 7388/7786 7389/7787 \r
+f 7402/7801 7401/7800 7389/7787 7390/7788 \r
+f 7403/7802 7402/7801 7390/7788 7391/7789 \r
+f 7404/7803 7403/7802 7391/7789 7392/7790 \r
+f 7405/7804 7404/7803 7392/7790 7393/7791 \r
+f 7406/7805 7237/7806 7236/7793 7394/7792 \r
+f 7407/7807 7406/7805 7394/7792 7395/7794 \r
+f 7408/7808 7407/7807 7395/7794 7396/7795 \r
+f 7409/7809 7408/7808 7396/7795 7397/7796 \r
+f 7410/7810 7409/7809 7397/7796 7398/7797 \r
+f 7411/7811 7410/7810 7398/7797 7399/7798 \r
+f 7412/7812 7411/7811 7399/7798 7400/7799 \r
+f 7413/7813 7412/7812 7400/7799 7401/7800 \r
+f 7414/7814 7413/7813 7401/7800 7402/7801 \r
+f 7415/7815 7414/7814 7402/7801 7403/7802 \r
+f 7416/7816 7415/7815 7403/7802 7404/7803 \r
+f 7417/7817 7416/7816 7404/7803 7405/7804 \r
+f 7418/7818 7238/7819 7237/7806 7406/7805 \r
+f 7419/7820 7418/7818 7406/7805 7407/7807 \r
+f 7420/7821 7419/7820 7407/7807 7408/7808 \r
+f 7421/7822 7420/7821 7408/7808 7409/7809 \r
+f 7422/7823 7421/7822 7409/7809 7410/7810 \r
+f 7423/7824 7422/7823 7410/7810 7411/7811 \r
+f 7424/7825 7423/7824 7411/7811 7412/7812 \r
+f 7425/7826 7424/7825 7412/7812 7413/7813 \r
+f 7426/7827 7425/7826 7413/7813 7414/7814 \r
+f 7427/7828 7426/7827 7414/7814 7415/7815 \r
+f 7428/7829 7427/7828 7415/7815 7416/7816 \r
+f 7429/7830 7428/7829 7416/7816 7417/7817 \r
+f 7430/7831 7239/7832 7238/7819 7418/7818 \r
+f 7431/7833 7430/7831 7418/7818 7419/7820 \r
+f 7432/7834 7431/7833 7419/7820 7420/7821 \r
+f 7433/7835 7432/7834 7420/7821 7421/7822 \r
+f 7434/7836 7433/7835 7421/7822 7422/7823 \r
+f 7435/7837 7434/7836 7422/7823 7423/7824 \r
+f 7436/7838 7435/7837 7423/7824 7424/7825 \r
+f 7437/7839 7436/7838 7424/7825 7425/7826 \r
+f 7438/7840 7437/7839 7425/7826 7426/7827 \r
+f 7439/7841 7438/7840 7426/7827 7427/7828 \r
+f 7440/7842 7439/7841 7427/7828 7428/7829 \r
+f 7441/7843 7440/7842 7428/7829 7429/7830 \r
+f 7442/7844 7240/7845 7239/7832 7430/7831 \r
+f 7443/7846 7442/7844 7430/7831 7431/7833 \r
+f 7444/7847 7443/7846 7431/7833 7432/7834 \r
+f 7445/7848 7444/7847 7432/7834 7433/7835 \r
+f 7446/7849 7445/7848 7433/7835 7434/7836 \r
+f 7447/7850 7446/7849 7434/7836 7435/7837 \r
+f 7448/7851 7447/7850 7435/7837 7436/7838 \r
+f 7449/7852 7448/7851 7436/7838 7437/7839 \r
+f 7450/7853 7449/7852 7437/7839 7438/7840 \r
+f 7451/7854 7450/7853 7438/7840 7439/7841 \r
+f 7452/7855 7451/7854 7439/7841 7440/7842 \r
+f 7453/7856 7452/7855 7440/7842 7441/7843 \r
+f 7454/7857 7241/7858 7240/7845 7442/7844 \r
+f 7455/7859 7454/7857 7442/7844 7443/7846 \r
+f 7456/7860 7455/7859 7443/7846 7444/7847 \r
+f 7457/7861 7456/7860 7444/7847 7445/7848 \r
+f 7458/7862 7457/7861 7445/7848 7446/7849 \r
+f 7459/7863 7458/7862 7446/7849 7447/7850 \r
+f 7460/7864 7459/7863 7447/7850 7448/7851 \r
+f 7461/7865 7460/7864 7448/7851 7449/7852 \r
+f 7462/7866 7461/7865 7449/7852 7450/7853 \r
+f 7463/7867 7462/7866 7450/7853 7451/7854 \r
+f 7464/7868 7463/7867 7451/7854 7452/7855 \r
+f 7465/7869 7464/7868 7452/7855 7453/7856 \r
+f 7466/7870 7242/7871 7241/7858 7454/7857 \r
+f 7467/7872 7466/7870 7454/7857 7455/7859 \r
+f 7468/7873 7467/7872 7455/7859 7456/7860 \r
+f 7469/7874 7468/7873 7456/7860 7457/7861 \r
+f 7470/7875 7469/7874 7457/7861 7458/7862 \r
+f 7471/7876 7470/7875 7458/7862 7459/7863 \r
+f 7472/7877 7471/7876 7459/7863 7460/7864 \r
+f 7473/7878 7472/7877 7460/7864 7461/7865 \r
+f 7474/7879 7473/7878 7461/7865 7462/7866 \r
+f 7475/7880 7474/7879 7462/7866 7463/7867 \r
+f 7476/7881 7475/7880 7463/7867 7464/7868 \r
+f 7477/7882 7476/7881 7464/7868 7465/7869 \r
+f 7478/7883 7243/7884 7242/7871 7466/7870 \r
+f 7479/7885 7478/7883 7466/7870 7467/7872 \r
+f 7480/7886 7479/7885 7467/7872 7468/7873 \r
+f 7481/7887 7480/7886 7468/7873 7469/7874 \r
+f 7482/7888 7481/7887 7469/7874 7470/7875 \r
+f 7483/7889 7482/7888 7470/7875 7471/7876 \r
+f 7484/7890 7483/7889 7471/7876 7472/7877 \r
+f 7485/7891 7484/7890 7472/7877 7473/7878 \r
+f 7486/7892 7485/7891 7473/7878 7474/7879 \r
+f 7487/7893 7486/7892 7474/7879 7475/7880 \r
+f 7488/7894 7487/7893 7475/7880 7476/7881 \r
+f 7489/7895 7488/7894 7476/7881 7477/7882 \r
+f 7490/7896 7244/7897 7243/7884 7478/7883 \r
+f 7491/7898 7490/7896 7478/7883 7479/7885 \r
+f 7492/7899 7491/7898 7479/7885 7480/7886 \r
+f 7493/7900 7492/7899 7480/7886 7481/7887 \r
+f 7494/7901 7493/7900 7481/7887 7482/7888 \r
+f 7495/7902 7494/7901 7482/7888 7483/7889 \r
+f 7496/7903 7495/7902 7483/7889 7484/7890 \r
+f 7497/7904 7496/7903 7484/7890 7485/7891 \r
+f 7498/7905 7497/7904 7485/7891 7486/7892 \r
+f 7499/7906 7498/7905 7486/7892 7487/7893 \r
+f 7500/7907 7499/7906 7487/7893 7488/7894 \r
+f 7501/7908 7500/7907 7488/7894 7489/7895 \r
+f 7502/7909 7245/7910 7244/7897 7490/7896 \r
+f 7503/7911 7502/7909 7490/7896 7491/7898 \r
+f 7504/7912 7503/7911 7491/7898 7492/7899 \r
+f 7505/7913 7504/7912 7492/7899 7493/7900 \r
+f 7506/7914 7505/7913 7493/7900 7494/7901 \r
+f 7507/7915 7506/7914 7494/7901 7495/7902 \r
+f 7508/7916 7507/7915 7495/7902 7496/7903 \r
+f 7509/7917 7508/7916 7496/7903 7497/7904 \r
+f 7510/7918 7509/7917 7497/7904 7498/7905 \r
+f 7511/7919 7510/7918 7498/7905 7499/7906 \r
+f 7512/7920 7511/7919 7499/7906 7500/7907 \r
+f 7513/7921 7512/7920 7500/7907 7501/7908 \r
+f 7514/7922 7246/7923 7245/7910 7502/7909 \r
+f 7515/7924 7514/7922 7502/7909 7503/7911 \r
+f 7516/7925 7515/7924 7503/7911 7504/7912 \r
+f 7517/7926 7516/7925 7504/7912 7505/7913 \r
+f 7518/7927 7517/7926 7505/7913 7506/7914 \r
+f 7519/7928 7518/7927 7506/7914 7507/7915 \r
+f 7520/7929 7519/7928 7507/7915 7508/7916 \r
+f 7521/7930 7520/7929 7508/7916 7509/7917 \r
+f 7522/7931 7521/7930 7509/7917 7510/7918 \r
+f 7523/7932 7522/7931 7510/7918 7511/7919 \r
+f 7524/7933 7523/7932 7511/7919 7512/7920 \r
+f 7525/7934 7524/7933 7512/7920 7513/7921 \r
+f 7526/7935 7247/7936 7246/7923 7514/7922 \r
+f 7527/7937 7526/7935 7514/7922 7515/7924 \r
+f 7528/7938 7527/7937 7515/7924 7516/7925 \r
+f 7529/7939 7528/7938 7516/7925 7517/7926 \r
+f 7530/7940 7529/7939 7517/7926 7518/7927 \r
+f 7531/7941 7530/7940 7518/7927 7519/7928 \r
+f 7532/7942 7531/7941 7519/7928 7520/7929 \r
+f 7533/7943 7532/7942 7520/7929 7521/7930 \r
+f 7534/7944 7533/7943 7521/7930 7522/7931 \r
+f 7535/7945 7534/7944 7522/7931 7523/7932 \r
+f 7536/7946 7535/7945 7523/7932 7524/7933 \r
+f 7537/7947 7536/7946 7524/7933 7525/7934 \r
+f 7538/7948 7248/7949 7247/7936 7526/7935 \r
+f 7539/7950 7538/7948 7526/7935 7527/7937 \r
+f 7540/7951 7539/7950 7527/7937 7528/7938 \r
+f 7541/7952 7540/7951 7528/7938 7529/7939 \r
+f 7542/7953 7541/7952 7529/7939 7530/7940 \r
+f 7543/7954 7542/7953 7530/7940 7531/7941 \r
+f 7544/7955 7543/7954 7531/7941 7532/7942 \r
+f 7545/7956 7544/7955 7532/7942 7533/7943 \r
+f 7546/7957 7545/7956 7533/7943 7534/7944 \r
+f 7547/7958 7546/7957 7534/7944 7535/7945 \r
+f 7548/7959 7547/7958 7535/7945 7536/7946 \r
+f 7549/7960 7548/7959 7536/7946 7537/7947 \r
+f 7550/7961 7249/7962 7248/7949 7538/7948 \r
+f 7551/7963 7550/7961 7538/7948 7539/7950 \r
+f 7552/7964 7551/7963 7539/7950 7540/7951 \r
+f 7553/7965 7552/7964 7540/7951 7541/7952 \r
+f 7554/7966 7553/7965 7541/7952 7542/7953 \r
+f 7555/7967 7554/7966 7542/7953 7543/7954 \r
+f 7556/7968 7555/7967 7543/7954 7544/7955 \r
+f 7557/7969 7556/7968 7544/7955 7545/7956 \r
+f 7558/7970 7557/7969 7545/7956 7546/7957 \r
+f 7559/7971 7558/7970 7546/7957 7547/7958 \r
+f 7560/7972 7559/7971 7547/7958 7548/7959 \r
+f 7561/7973 7560/7972 7548/7959 7549/7960 \r
+f 7562/7974 7250/7975 7249/7962 7550/7961 \r
+f 7563/7976 7562/7974 7550/7961 7551/7963 \r
+f 7564/7977 7563/7976 7551/7963 7552/7964 \r
+f 7565/7978 7564/7977 7552/7964 7553/7965 \r
+f 7566/7979 7565/7978 7553/7965 7554/7966 \r
+f 7567/7980 7566/7979 7554/7966 7555/7967 \r
+f 7568/7981 7567/7980 7555/7967 7556/7968 \r
+f 7569/7982 7568/7981 7556/7968 7557/7969 \r
+f 7570/7983 7569/7982 7557/7969 7558/7970 \r
+f 7571/7984 7570/7983 7558/7970 7559/7971 \r
+f 7572/7985 7571/7984 7559/7971 7560/7972 \r
+f 7573/7986 7572/7985 7560/7972 7561/7973 \r
+f 7574/7987 7251/7988 7250/7975 7562/7974 \r
+f 7575/7989 7574/7987 7562/7974 7563/7976 \r
+f 7576/7990 7575/7989 7563/7976 7564/7977 \r
+f 7577/7991 7576/7990 7564/7977 7565/7978 \r
+f 7578/7992 7577/7991 7565/7978 7566/7979 \r
+f 7579/7993 7578/7992 7566/7979 7567/7980 \r
+f 7580/7994 7579/7993 7567/7980 7568/7981 \r
+f 7581/7995 7580/7994 7568/7981 7569/7982 \r
+f 7582/7996 7581/7995 7569/7982 7570/7983 \r
+f 7583/7997 7582/7996 7570/7983 7571/7984 \r
+f 7584/7998 7583/7997 7571/7984 7572/7985 \r
+f 7585/7999 7584/7998 7572/7985 7573/7986 \r
+f 7586/8000 7252/8001 7251/7988 7574/7987 \r
+f 7587/8002 7586/8000 7574/7987 7575/7989 \r
+f 7588/8003 7587/8002 7575/7989 7576/7990 \r
+f 7589/8004 7588/8003 7576/7990 7577/7991 \r
+f 7590/8005 7589/8004 7577/7991 7578/7992 \r
+f 7591/8006 7590/8005 7578/7992 7579/7993 \r
+f 7592/8007 7591/8006 7579/7993 7580/7994 \r
+f 7593/8008 7592/8007 7580/7994 7581/7995 \r
+f 7594/8009 7593/8008 7581/7995 7582/7996 \r
+f 7595/8010 7594/8009 7582/7996 7583/7997 \r
+f 7596/8011 7595/8010 7583/7997 7584/7998 \r
+f 7597/8012 7596/8011 7584/7998 7585/7999 \r
+f 7598/8013 7253/8014 7252/8001 7586/8000 \r
+f 7599/8015 7598/8013 7586/8000 7587/8002 \r
+f 7600/8016 7599/8015 7587/8002 7588/8003 \r
+f 7601/8017 7600/8016 7588/8003 7589/8004 \r
+f 7602/8018 7601/8017 7589/8004 7590/8005 \r
+f 7603/8019 7602/8018 7590/8005 7591/8006 \r
+f 7604/8020 7603/8019 7591/8006 7592/8007 \r
+f 7605/8021 7604/8020 7592/8007 7593/8008 \r
+f 7606/8022 7605/8021 7593/8008 7594/8009 \r
+f 7607/8023 7606/8022 7594/8009 7595/8010 \r
+f 7608/8024 7607/8023 7595/8010 7596/8011 \r
+f 7609/8025 7608/8024 7596/8011 7597/8012 \r
+f 7610/8026 7254/8027 7253/8014 7598/8013 \r
+f 7611/8028 7610/8026 7598/8013 7599/8015 \r
+f 7612/8029 7611/8028 7599/8015 7600/8016 \r
+f 7613/8030 7612/8029 7600/8016 7601/8017 \r
+f 7614/8031 7613/8030 7601/8017 7602/8018 \r
+f 7615/8032 7614/8031 7602/8018 7603/8019 \r
+f 7616/8033 7615/8032 7603/8019 7604/8020 \r
+f 7617/8034 7616/8033 7604/8020 7605/8021 \r
+f 7618/8035 7617/8034 7605/8021 7606/8022 \r
+f 7619/8036 7618/8035 7606/8022 7607/8023 \r
+f 7620/8037 7619/8036 7607/8023 7608/8024 \r
+f 7621/8038 7620/8037 7608/8024 7609/8025 \r
+f 7622/8039 7255/8040 7254/8027 7610/8026 \r
+f 7623/8041 7622/8039 7610/8026 7611/8028 \r
+f 7624/8042 7623/8041 7611/8028 7612/8029 \r
+f 7625/8043 7624/8042 7612/8029 7613/8030 \r
+f 7626/8044 7625/8043 7613/8030 7614/8031 \r
+f 7627/8045 7626/8044 7614/8031 7615/8032 \r
+f 7628/8046 7627/8045 7615/8032 7616/8033 \r
+f 7629/8047 7628/8046 7616/8033 7617/8034 \r
+f 7630/8048 7629/8047 7617/8034 7618/8035 \r
+f 7631/8049 7630/8048 7618/8035 7619/8036 \r
+f 7632/8050 7631/8049 7619/8036 7620/8037 \r
+f 7633/8051 7632/8050 7620/8037 7621/8038 \r
+f 7634/8052 7256/8053 7255/8040 7622/8039 \r
+f 7635/8054 7634/8052 7622/8039 7623/8041 \r
+f 7636/8055 7635/8054 7623/8041 7624/8042 \r
+f 7637/8056 7636/8055 7624/8042 7625/8043 \r
+f 7638/8057 7637/8056 7625/8043 7626/8044 \r
+f 7639/8058 7638/8057 7626/8044 7627/8045 \r
+f 7640/8059 7639/8058 7627/8045 7628/8046 \r
+f 7641/8060 7640/8059 7628/8046 7629/8047 \r
+f 7642/8061 7641/8060 7629/8047 7630/8048 \r
+f 7643/8062 7642/8061 7630/8048 7631/8049 \r
+f 7644/8063 7643/8062 7631/8049 7632/8050 \r
+f 7645/8064 7644/8063 7632/8050 7633/8051 \r
+f 7646/8065 7257/8066 7256/8053 7634/8052 \r
+f 7647/8067 7646/8065 7634/8052 7635/8054 \r
+f 7648/8068 7647/8067 7635/8054 7636/8055 \r
+f 7649/8069 7648/8068 7636/8055 7637/8056 \r
+f 7650/8070 7649/8069 7637/8056 7638/8057 \r
+f 7651/8071 7650/8070 7638/8057 7639/8058 \r
+f 7652/8072 7651/8071 7639/8058 7640/8059 \r
+f 7653/8073 7652/8072 7640/8059 7641/8060 \r
+f 7654/8074 7653/8073 7641/8060 7642/8061 \r
+f 7655/8075 7654/8074 7642/8061 7643/8062 \r
+f 7656/8076 7655/8075 7643/8062 7644/8063 \r
+f 7657/8077 7656/8076 7644/8063 7645/8064 \r
+f 7658/8078 7258/8079 7257/8066 7646/8065 \r
+f 7659/8080 7658/8078 7646/8065 7647/8067 \r
+f 7660/8081 7659/8080 7647/8067 7648/8068 \r
+f 7661/8082 7660/8081 7648/8068 7649/8069 \r
+f 7662/8083 7661/8082 7649/8069 7650/8070 \r
+f 7663/8084 7662/8083 7650/8070 7651/8071 \r
+f 7664/8085 7663/8084 7651/8071 7652/8072 \r
+f 7665/8086 7664/8085 7652/8072 7653/8073 \r
+f 7666/8087 7665/8086 7653/8073 7654/8074 \r
+f 7667/8088 7666/8087 7654/8074 7655/8075 \r
+f 7668/8089 7667/8088 7655/8075 7656/8076 \r
+f 7669/8090 7668/8089 7656/8076 7657/8077 \r
+f 7670/8091 7259/8092 7258/8079 7658/8078 \r
+f 7671/8093 7670/8091 7658/8078 7659/8080 \r
+f 7672/8094 7671/8093 7659/8080 7660/8081 \r
+f 7673/8095 7672/8094 7660/8081 7661/8082 \r
+f 7674/8096 7673/8095 7661/8082 7662/8083 \r
+f 7675/8097 7674/8096 7662/8083 7663/8084 \r
+f 7676/8098 7675/8097 7663/8084 7664/8085 \r
+f 7677/8099 7676/8098 7664/8085 7665/8086 \r
+f 7678/8100 7677/8099 7665/8086 7666/8087 \r
+f 7679/8101 7678/8100 7666/8087 7667/8088 \r
+f 7680/8102 7679/8101 7667/8088 7668/8089 \r
+f 7681/8103 7680/8102 7668/8089 7669/8090 \r
+f 7682/8104 7260/8105 7259/8092 7670/8091 \r
+f 7683/8106 7682/8104 7670/8091 7671/8093 \r
+f 7684/8107 7683/8106 7671/8093 7672/8094 \r
+f 7685/8108 7684/8107 7672/8094 7673/8095 \r
+f 7686/8109 7685/8108 7673/8095 7674/8096 \r
+f 7687/8110 7686/8109 7674/8096 7675/8097 \r
+f 7688/8111 7687/8110 7675/8097 7676/8098 \r
+f 7689/8112 7688/8111 7676/8098 7677/8099 \r
+f 7690/8113 7689/8112 7677/8099 7678/8100 \r
+f 7691/8114 7690/8113 7678/8100 7679/8101 \r
+f 7692/8115 7691/8114 7679/8101 7680/8102 \r
+f 7693/8116 7692/8115 7680/8102 7681/8103 \r
+f 7694/8117 7261/8118 7260/8105 7682/8104 \r
+f 7695/8119 7694/8117 7682/8104 7683/8106 \r
+f 7696/8120 7695/8119 7683/8106 7684/8107 \r
+f 7697/8121 7696/8120 7684/8107 7685/8108 \r
+f 7698/8122 7697/8121 7685/8108 7686/8109 \r
+f 7699/8123 7698/8122 7686/8109 7687/8110 \r
+f 7700/8124 7699/8123 7687/8110 7688/8111 \r
+f 7701/8125 7700/8124 7688/8111 7689/8112 \r
+f 7702/8126 7701/8125 7689/8112 7690/8113 \r
+f 7703/8127 7702/8126 7690/8113 7691/8114 \r
+f 7704/8128 7703/8127 7691/8114 7692/8115 \r
+f 7705/8129 7704/8128 7692/8115 7693/8116 \r
+f 7706/8130 7262/8131 7261/8118 7694/8117 \r
+f 7707/8132 7706/8130 7694/8117 7695/8119 \r
+f 7708/8133 7707/8132 7695/8119 7696/8120 \r
+f 7709/8134 7708/8133 7696/8120 7697/8121 \r
+f 7710/8135 7709/8134 7697/8121 7698/8122 \r
+f 7711/8136 7710/8135 7698/8122 7699/8123 \r
+f 7712/8137 7711/8136 7699/8123 7700/8124 \r
+f 7713/8138 7712/8137 7700/8124 7701/8125 \r
+f 7714/8139 7713/8138 7701/8125 7702/8126 \r
+f 7715/8140 7714/8139 7702/8126 7703/8127 \r
+f 7716/8141 7715/8140 7703/8127 7704/8128 \r
+f 7717/8142 7716/8141 7704/8128 7705/8129 \r
+f 7718/8143 7263/8144 7262/8131 7706/8130 \r
+f 7719/8145 7718/8143 7706/8130 7707/8132 \r
+f 7720/8146 7719/8145 7707/8132 7708/8133 \r
+f 7721/8147 7720/8146 7708/8133 7709/8134 \r
+f 7722/8148 7721/8147 7709/8134 7710/8135 \r
+f 7723/8149 7722/8148 7710/8135 7711/8136 \r
+f 7724/8150 7723/8149 7711/8136 7712/8137 \r
+f 7725/8151 7724/8150 7712/8137 7713/8138 \r
+f 7726/8152 7725/8151 7713/8138 7714/8139 \r
+f 7727/8153 7726/8152 7714/8139 7715/8140 \r
+f 7728/8154 7727/8153 7715/8140 7716/8141 \r
+f 7729/8155 7728/8154 7716/8141 7717/8142 \r
+f 7730/8156 7264/8157 7263/8144 7718/8143 \r
+f 7731/8158 7730/8156 7718/8143 7719/8145 \r
+f 7732/8159 7731/8158 7719/8145 7720/8146 \r
+f 7733/8160 7732/8159 7720/8146 7721/8147 \r
+f 7734/8161 7733/8160 7721/8147 7722/8148 \r
+f 7735/8162 7734/8161 7722/8148 7723/8149 \r
+f 7736/8163 7735/8162 7723/8149 7724/8150 \r
+f 7737/8164 7736/8163 7724/8150 7725/8151 \r
+f 7738/8165 7737/8164 7725/8151 7726/8152 \r
+f 7739/8166 7738/8165 7726/8152 7727/8153 \r
+f 7740/8167 7739/8166 7727/8153 7728/8154 \r
+f 7741/8168 7740/8167 7728/8154 7729/8155 \r
+f 7742/8169 7265/8170 7264/8157 7730/8156 \r
+f 7743/8171 7742/8169 7730/8156 7731/8158 \r
+f 7744/8172 7743/8171 7731/8158 7732/8159 \r
+f 7745/8173 7744/8172 7732/8159 7733/8160 \r
+f 7746/8174 7745/8173 7733/8160 7734/8161 \r
+f 7747/8175 7746/8174 7734/8161 7735/8162 \r
+f 7748/8176 7747/8175 7735/8162 7736/8163 \r
+f 7749/8177 7748/8176 7736/8163 7737/8164 \r
+f 7750/8178 7749/8177 7737/8164 7738/8165 \r
+f 7751/8179 7750/8178 7738/8165 7739/8166 \r
+f 7752/8180 7751/8179 7739/8166 7740/8167 \r
+f 7753/8181 7752/8180 7740/8167 7741/8168 \r
+f 7754/8182 7266/8183 7265/8170 7742/8169 \r
+f 7755/8184 7754/8182 7742/8169 7743/8171 \r
+f 7756/8185 7755/8184 7743/8171 7744/8172 \r
+f 7757/8186 7756/8185 7744/8172 7745/8173 \r
+f 7758/8187 7757/8186 7745/8173 7746/8174 \r
+f 7759/8188 7758/8187 7746/8174 7747/8175 \r
+f 7760/8189 7759/8188 7747/8175 7748/8176 \r
+f 7761/8190 7760/8189 7748/8176 7749/8177 \r
+f 7762/8191 7761/8190 7749/8177 7750/8178 \r
+f 7763/8192 7762/8191 7750/8178 7751/8179 \r
+f 7764/8193 7763/8192 7751/8179 7752/8180 \r
+f 7765/8194 7764/8193 7752/8180 7753/8181 \r
+f 7766/8195 7267/8196 7266/8183 7754/8182 \r
+f 7767/8197 7766/8195 7754/8182 7755/8184 \r
+f 7768/8198 7767/8197 7755/8184 7756/8185 \r
+f 7769/8199 7768/8198 7756/8185 7757/8186 \r
+f 7770/8200 7769/8199 7757/8186 7758/8187 \r
+f 7771/8201 7770/8200 7758/8187 7759/8188 \r
+f 7772/8202 7771/8201 7759/8188 7760/8189 \r
+f 7773/8203 7772/8202 7760/8189 7761/8190 \r
+f 7774/8204 7773/8203 7761/8190 7762/8191 \r
+f 7775/8205 7774/8204 7762/8191 7763/8192 \r
+f 7776/8206 7775/8205 7763/8192 7764/8193 \r
+f 7777/8207 7776/8206 7764/8193 7765/8194 \r
+f 7778/8208 7268/8209 7267/8196 7766/8195 \r
+f 7779/8210 7778/8208 7766/8195 7767/8197 \r
+f 7780/8211 7779/8210 7767/8197 7768/8198 \r
+f 7781/8212 7780/8211 7768/8198 7769/8199 \r
+f 7782/8213 7781/8212 7769/8199 7770/8200 \r
+f 7783/8214 7782/8213 7770/8200 7771/8201 \r
+f 7784/8215 7783/8214 7771/8201 7772/8202 \r
+f 7785/8216 7784/8215 7772/8202 7773/8203 \r
+f 7786/8217 7785/8216 7773/8203 7774/8204 \r
+f 7787/8218 7786/8217 7774/8204 7775/8205 \r
+f 7788/8219 7787/8218 7775/8205 7776/8206 \r
+f 7789/8220 7788/8219 7776/8206 7777/8207 \r
+f 7790/8221 7269/8222 7268/8209 7778/8208 \r
+f 7791/8223 7790/8221 7778/8208 7779/8210 \r
+f 7792/8224 7791/8223 7779/8210 7780/8211 \r
+f 7793/8225 7792/8224 7780/8211 7781/8212 \r
+f 7794/8226 7793/8225 7781/8212 7782/8213 \r
+f 7795/8227 7794/8226 7782/8213 7783/8214 \r
+f 7796/8228 7795/8227 7783/8214 7784/8215 \r
+f 7797/8229 7796/8228 7784/8215 7785/8216 \r
+f 7798/8230 7797/8229 7785/8216 7786/8217 \r
+f 7799/8231 7798/8230 7786/8217 7787/8218 \r
+f 7800/8232 7799/8231 7787/8218 7788/8219 \r
+f 7801/8233 7800/8232 7788/8219 7789/8220 \r
+f 7802/8234 7270/8235 7269/8222 7790/8221 \r
+f 7803/8236 7802/8234 7790/8221 7791/8223 \r
+f 7804/8237 7803/8236 7791/8223 7792/8224 \r
+f 7805/8238 7804/8237 7792/8224 7793/8225 \r
+f 7806/8239 7805/8238 7793/8225 7794/8226 \r
+f 7807/8240 7806/8239 7794/8226 7795/8227 \r
+f 7808/8241 7807/8240 7795/8227 7796/8228 \r
+f 7809/8242 7808/8241 7796/8228 7797/8229 \r
+f 7810/8243 7809/8242 7797/8229 7798/8230 \r
+f 7811/8244 7810/8243 7798/8230 7799/8231 \r
+f 7812/8245 7811/8244 7799/8231 7800/8232 \r
+f 7813/8246 7812/8245 7800/8232 7801/8233 \r
+f 7814/8247 7271/8248 7270/8235 7802/8234 \r
+f 7815/8249 7814/8247 7802/8234 7803/8236 \r
+f 7816/8250 7815/8249 7803/8236 7804/8237 \r
+f 7817/8251 7816/8250 7804/8237 7805/8238 \r
+f 7818/8252 7817/8251 7805/8238 7806/8239 \r
+f 7819/8253 7818/8252 7806/8239 7807/8240 \r
+f 7820/8254 7819/8253 7807/8240 7808/8241 \r
+f 7821/8255 7820/8254 7808/8241 7809/8242 \r
+f 7822/8256 7821/8255 7809/8242 7810/8243 \r
+f 7823/8257 7822/8256 7810/8243 7811/8244 \r
+f 7824/8258 7823/8257 7811/8244 7812/8245 \r
+f 7825/8259 7824/8258 7812/8245 7813/8246 \r
+f 7826/8260 7272/8261 7271/8248 7814/8247 \r
+f 7827/8262 7826/8260 7814/8247 7815/8249 \r
+f 7828/8263 7827/8262 7815/8249 7816/8250 \r
+f 7829/8264 7828/8263 7816/8250 7817/8251 \r
+f 7830/8265 7829/8264 7817/8251 7818/8252 \r
+f 7831/8266 7830/8265 7818/8252 7819/8253 \r
+f 7832/8267 7831/8266 7819/8253 7820/8254 \r
+f 7833/8268 7832/8267 7820/8254 7821/8255 \r
+f 7834/8269 7833/8268 7821/8255 7822/8256 \r
+f 7835/8270 7834/8269 7822/8256 7823/8257 \r
+f 7836/8271 7835/8270 7823/8257 7824/8258 \r
+f 7837/8272 7836/8271 7824/8258 7825/8259 \r
+f 7838/8273 7273/8274 7272/8261 7826/8260 \r
+f 7839/8275 7838/8273 7826/8260 7827/8262 \r
+f 7840/8276 7839/8275 7827/8262 7828/8263 \r
+f 7841/8277 7840/8276 7828/8263 7829/8264 \r
+f 7842/8278 7841/8277 7829/8264 7830/8265 \r
+f 7843/8279 7842/8278 7830/8265 7831/8266 \r
+f 7844/8280 7843/8279 7831/8266 7832/8267 \r
+f 7845/8281 7844/8280 7832/8267 7833/8268 \r
+f 7846/8282 7845/8281 7833/8268 7834/8269 \r
+f 7847/8283 7846/8282 7834/8269 7835/8270 \r
+f 7848/8284 7847/8283 7835/8270 7836/8271 \r
+f 7849/8285 7848/8284 7836/8271 7837/8272 \r
+f 7274/7663 7226/7662 7273/8274 7838/8273 \r
+f 7275/7666 7274/7663 7838/8273 7839/8275 \r
+f 7276/7668 7275/7666 7839/8275 7840/8276 \r
+f 7277/7670 7276/7668 7840/8276 7841/8277 \r
+f 7278/7672 7277/7670 7841/8277 7842/8278 \r
+f 7279/7674 7278/7672 7842/8278 7843/8279 \r
+f 7280/7676 7279/7674 7843/8279 7844/8280 \r
+f 7281/7678 7280/7676 7844/8280 7845/8281 \r
+f 7282/7680 7281/7678 7845/8281 7846/8282 \r
+f 7283/7682 7282/7680 7846/8282 7847/8283 \r
+f 7284/7684 7283/7682 7847/8283 7848/8284 \r
+f 7285/7686 7284/7684 7848/8284 7849/8285 \r
+f 7297/7687 7285/7686 6661/8286 6673/8287 \r
+f 7309/7700 7297/7687 6673/8287 6685/8288 \r
+f 7321/7713 7309/7700 6685/8288 6697/8289 \r
+f 7333/7726 7321/7713 6697/8289 6709/8290 \r
+f 7345/7739 7333/7726 6709/8290 6721/8291 \r
+f 7357/7752 7345/7739 6721/8291 6733/8292 \r
+f 7369/7765 7357/7752 6733/8292 6745/8293 \r
+f 7381/7778 7369/7765 6745/8293 6757/8294 \r
+f 7393/7791 7381/7778 6757/8294 6769/8295 \r
+f 7405/7804 7393/7791 6769/8295 6781/8296 \r
+f 7417/7817 7405/7804 6781/8296 6793/8297 \r
+f 7429/7830 7417/7817 6793/8297 6805/8298 \r
+f 7441/7843 7429/7830 6805/8298 6817/8299 \r
+f 7453/7856 7441/7843 6817/8299 6829/8300 \r
+f 7465/7869 7453/7856 6829/8300 6841/8301 \r
+f 7477/7882 7465/7869 6841/8301 6853/8302 \r
+f 7489/7895 7477/7882 6853/8302 6865/8303 \r
+f 7501/7908 7489/7895 6865/8303 6877/8304 \r
+f 7513/7921 7501/7908 6877/8304 6889/8305 \r
+f 7525/7934 7513/7921 6889/8305 6901/8306 \r
+f 7537/7947 7525/7934 6901/8306 6913/8307 \r
+f 7549/7960 7537/7947 6913/8307 6925/8308 \r
+f 7561/7973 7549/7960 6925/8308 6937/8309 \r
+f 7573/7986 7561/7973 6937/8309 6949/8310 \r
+f 7585/7999 7573/7986 6949/8310 6961/8311 \r
+f 7597/8012 7585/7999 6961/8311 6973/8312 \r
+f 7609/8025 7597/8012 6973/8312 6985/8313 \r
+f 7621/8038 7609/8025 6985/8313 6997/8314 \r
+f 7633/8051 7621/8038 6997/8314 7009/8315 \r
+f 7645/8064 7633/8051 7009/8315 7021/8316 \r
+f 7657/8077 7645/8064 7021/8316 7033/8317 \r
+f 7669/8090 7657/8077 7033/8317 7045/8318 \r
+f 7681/8103 7669/8090 7045/8318 7057/8319 \r
+f 7693/8116 7681/8103 7057/8319 7069/8320 \r
+f 7705/8129 7693/8116 7069/8320 7081/8321 \r
+f 7717/8142 7705/8129 7081/8321 7093/8322 \r
+f 7729/8155 7717/8142 7093/8322 7105/8323 \r
+f 7741/8168 7729/8155 7105/8323 7117/8324 \r
+f 7753/8181 7741/8168 7117/8324 7129/8325 \r
+f 7765/8194 7753/8181 7129/8325 7141/8326 \r
+f 7777/8207 7765/8194 7141/8326 7153/8327 \r
+f 7789/8220 7777/8207 7153/8327 7165/8328 \r
+f 7801/8233 7789/8220 7165/8328 7177/8329 \r
+f 7813/8246 7801/8233 7177/8329 7189/8330 \r
+f 7825/8259 7813/8246 7189/8330 7201/8331 \r
+f 7837/8272 7825/8259 7201/8331 7213/8332 \r
+f 7849/8285 7837/8272 7213/8332 7225/8333 \r
+f 7285/7686 7849/8285 7225/8333 6661/8286 \r
+f 7226/7662 7227/7665 7850/8334 \r
+f 7227/7665 7228/7689 7850/8334 \r
+f 7228/7689 7229/7702 7850/8334 \r
+f 7229/7702 7230/7715 7850/8334 \r
+f 7230/7715 7231/7728 7850/8334 \r
+f 7231/7728 7232/7741 7850/8334 \r
+f 7232/7741 7233/7754 7850/8334 \r
+f 7233/7754 7234/7767 7850/8334 \r
+f 7234/7767 7235/7780 7850/8334 \r
+f 7235/7780 7236/7793 7850/8334 \r
+f 7236/7793 7237/7806 7850/8334 \r
+f 7237/7806 7238/7819 7850/8334 \r
+f 7238/7819 7239/7832 7850/8334 \r
+f 7239/7832 7240/7845 7850/8334 \r
+f 7240/7845 7241/7858 7850/8334 \r
+f 7241/7858 7242/7871 7850/8334 \r
+f 7242/7871 7243/7884 7850/8334 \r
+f 7243/7884 7244/7897 7850/8334 \r
+f 7244/7897 7245/7910 7850/8334 \r
+f 7245/7910 7246/7923 7850/8334 \r
+f 7246/7923 7247/7936 7850/8334 \r
+f 7247/7936 7248/7949 7850/8334 \r
+f 7248/7949 7249/7962 7850/8334 \r
+f 7249/7962 7250/7975 7850/8334 \r
+f 7250/7975 7251/7988 7850/8334 \r
+f 7251/7988 7252/8001 7850/8334 \r
+f 7252/8001 7253/8014 7850/8334 \r
+f 7253/8014 7254/8027 7850/8334 \r
+f 7254/8027 7255/8040 7850/8334 \r
+f 7255/8040 7256/8053 7850/8334 \r
+f 7256/8053 7257/8066 7850/8334 \r
+f 7257/8066 7258/8079 7850/8334 \r
+f 7258/8079 7259/8092 7850/8334 \r
+f 7259/8092 7260/8105 7850/8334 \r
+f 7260/8105 7261/8118 7850/8334 \r
+f 7261/8118 7262/8131 7850/8334 \r
+f 7262/8131 7263/8144 7850/8334 \r
+f 7263/8144 7264/8157 7850/8334 \r
+f 7264/8157 7265/8170 7850/8334 \r
+f 7265/8170 7266/8183 7850/8334 \r
+f 7266/8183 7267/8196 7850/8334 \r
+f 7267/8196 7268/8209 7850/8334 \r
+f 7268/8209 7269/8222 7850/8334 \r
+f 7269/8222 7270/8235 7850/8334 \r
+f 7270/8235 7271/8248 7850/8334 \r
+f 7271/8248 7272/8261 7850/8334 \r
+f 7272/8261 7273/8274 7850/8334 \r
+f 7273/8274 7226/7662 7850/8334 \r
+# 1728 polygons - 96 triangles\r
+\r
diff --git a/resources/po/as.po b/resources/po/as.po
new file mode 100755 (executable)
index 0000000..bab37b3
--- /dev/null
@@ -0,0 +1,176 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "অ্যানিমেটেড ইমেজ"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "অ্যানিমেটেড আকার"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "বেসিক আলো"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "অৱৰুদ্ধ কৰক"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "বেলুন"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "ক্লিক্"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "Clipping"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "ঝুৰ্"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "অঁপইতা "
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "ঘনক পৰিৱৰ্তনীয় প্ৰভাৱ"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "পৰিৱৰ্তনীয় প্ৰভাৱ"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "অকৃতকাৰ্য্য হ"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "Emoji"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox ডেমো"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "অনুবিম্ব ইজাৰ"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "প্ৰতিচ্ছবি স্কেল কৰক"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "অনুবিম্ব"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "অনুবিম্ব অনুৰেখ পত্ৰ"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "অনুবিম্ব Pixel Area"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "অনুবিম্ব SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "আইটেম দর্শন"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "ছাঁয়া"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "অঁকোৱা-পকোৱা"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "পৰিবৰ্দ্ধক"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "মেশ অঙ্কুৰিত"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "3D অনুগামী"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "মেটাবল মহা-বিস্ফোৰণবাদ"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "মেটাবল প্ৰতিসৰিত"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "অস্পষ্ট"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "বিস্তাৰ"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "অইন অনুবিম্ব"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "অকণমান আপোচ কৰ্"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "পোপা মেনু"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "অগ্রগতি বার"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "অংশ্যমান অৰ্কিড"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "ৰেডিয়েল নক্সা"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "প্ৰতিফলিত কৰক"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "চক্ৰলেখন"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "লিপি"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "স্ক্ৰ'ল কৰক"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "তাৰকা"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "শৈলী"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "টেক্সটারেদ মেশ"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "অকনিষ্ঠ আনুবংশিক"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "অকনিষ্ঠ অগ্ৰণী"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "লেৱেল কৰক"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "অক্ষশক্তি অঁকা অকনিষ্ঠ"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "অকনিষ্ঠ অৰ্জুন বঁটা"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "টিল্ট অনুভূতি"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "Tooltip"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP খেলা"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "ৰেণ্ডাৰিং  গাঁথনি"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "ৰেণ্ডাৰিং  ঘনক"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "ৰেণ্ডাৰিং  ত্ৰিকোণমিতি"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "ৰেণ্ডাৰিং  শাৰী"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "রশ্মীয় অগ্রগতি অঙ্কন"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "রে মার্চিং"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
diff --git a/resources/po/de.po b/resources/po/de.po
new file mode 100755 (executable)
index 0000000..6190e2a
--- /dev/null
@@ -0,0 +1,176 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "Animierte Bilder"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "Animierte Formen"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "Grundleuchte"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "Blöcke"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "Schaumbildung"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "Tasten"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "Clipping"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "Farbverlauf"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "Kontakt"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "Würfel Übergangseffekt"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "Auflösen Übergangseffekt"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "Auswirkungen"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "Emoji"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "Bild Montage und Sampling"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox Playground"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "Bildskalierung"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "Bildansicht "
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "Bildansicht mit Transparenz"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "Bildansicht Pixelbereich"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "Bildansicht SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "Item-Ansicht"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "Licht und Schatten"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "Linien"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "Bildschirmlupe"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "Mesh Veränderung"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "3D-Modelle"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "Metaball Explosion"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "Metaball Brechung"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "Bewegungsunschärfe"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "Bewegung Strecke"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "Nativen Bild"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "Größe Verhandlung"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "Popup-Menü"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "Fortschrittsanzeige"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "Grundformen"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "Radialmenü"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "Brechung"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "Schablone"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "Scripting"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "Scroll-Ansicht"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "Funkeln"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "Styling"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "Strukturiertem Mesh"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "Texteditor"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "Textfeld"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "Beschriftung"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "Mehrere Sprachen Beschriftung"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "Text Scrollen"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "Neigungssensor"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "Kurzinfo"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP Spiel"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "Texturierter Würfel"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "Würfel zeichnen"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "Dreieck zeichnen"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "Zeichnen"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "Radialer Fortschritt zeichnen"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "Ray marschieren"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
diff --git a/resources/po/en.po b/resources/po/en.po
new file mode 120000 (symlink)
index 0000000..2ed6a9a
--- /dev/null
@@ -0,0 +1 @@
+en_US.po
\ No newline at end of file
diff --git a/resources/po/en_GB.po b/resources/po/en_GB.po
new file mode 100755 (executable)
index 0000000..6a3e68e
--- /dev/null
@@ -0,0 +1,287 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "Animated Images"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "Animated Shapes"
+
+msgid "DALI_DEMO_STR_TITLE_ALPHA_BLENDING_CPU"
+msgstr "CPU Alpha Blending"
+
+msgid "DALI_DEMO_STR_TITLE_ARC_VISUAL"
+msgstr "Arc Visual"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "Basic Light"
+
+msgid "DALI_DEMO_STR_TITLE_BENCHMARK"
+msgstr "ImageView Benchmark"
+
+msgid "DALI_DEMO_STR_TITLE_BEZIER_CURVE"
+msgstr "Bezier Curve"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "Blocks"
+
+msgid "DALI_DEMO_STR_TITLE_BLOOM_VIEW"
+msgstr "Bloom"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "Bubbles"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "Buttons"
+
+msgid "DALI_DEMO_STR_TITLE_CALL_ACTIVE"
+msgstr "Call Active"
+
+msgid "DALI_DEMO_STR_TITLE_CARD_ACTIVE"
+msgstr "Card Active"
+
+msgid "DALI_DEMO_STR_TITLE_COMPRESSED_TEXTURE_FORMATS"
+msgstr "Compressed Texture Formats"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "Clipping"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING_DRAW_ORDER"
+msgstr "Clipping Draw Order"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_VISUAL"
+msgstr "Colour Visual"
+
+msgid "DALI_DEMO_STR_TITLE_GAUSSIAN_BLUR_VIEW"
+msgstr "Gaussian Blur"
+
+msgid "DALI_DEMO_STR_TITLE_GESTURES"
+msgstr "Gestures"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "Colour Gradient"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "Contact Cards"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "Cube Effect"
+
+msgid "DALI_DEMO_STR_TITLE_DEFERRED_SHADING"
+msgstr "Deferred Shading"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "Dissolve Effect"
+
+msgid "DALI_DEMO_STR_TITLE_DRAG_AND_DROP"
+msgstr "Drag and Drop"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "Effects View"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "Emoji Text"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox Playground"
+
+msgid "DALI_DEMO_STR_TITLE_FRAME_CALLBACK"
+msgstr "Frame Callback"
+
+msgid "DALI_DEMO_STR_TITLE_HELLO_WORLD"
+msgstr "Hello World"
+
+msgid "DALI_DEMO_STR_TITLE_HOMESCREEN"
+msgstr "Homescreen Benchmark"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "Image Fitting and Sampling"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_POLICIES"
+msgstr "Image Policies"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "Image Scaling Grid"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "Image View"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "Image View Alpha Blending"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "Image View Pixel Area"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "Image View SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "Item View"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "Lights and Shadows"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "Mesh Line"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "Magnifier"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "Mesh Morph"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "Mesh Visual"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "Metaball Explosion"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "Metaball Refraction"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "Motion Blur"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "Motion Stretch"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "Native Image Source"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "Negotiate Size"
+
+msgid "DALI_DEMO_STR_TITLE_PAGE_TURN"
+msgstr "Page Turn"
+
+msgid "DALI_DEMO_STR_TITLE_PERF_SCROLL"
+msgstr "Scrolling Performance"
+
+msgid "DALI_DEMO_STR_TITLE_POINT_MESH"
+msgstr "Point Mesh"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "Popup"
+
+msgid "DALI_DEMO_STR_TITLE_PIVOT"
+msgstr "Pivot"
+
+msgid "DALI_DEMO_STR_TITLE_PRE_RENDER_CALLBACK"
+msgstr "Pre Render Callback"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "Progress Bar"
+
+msgid "DALI_DEMO_STR_TITLE_PROPERTY_NOTIFICATION"
+msgstr "Property Notification"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "Primitive Shapes"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "Radial Menu"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "Refraction"
+
+msgid "DALI_DEMO_STR_TITLE_REFLECTION"
+msgstr "Reflection"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "Renderer Stencil"
+
+msgid "DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL"
+msgstr "Simple Visuals Control"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "Script-based UI"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "Scroll View"
+
+msgid "DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW"
+msgstr "Simple Scroll View"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "Sparkle"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "Styling"
+
+msgid "DALI_DEMO_STR_TITLE_SUPER_BLUR_VIEW"
+msgstr "Super Blur"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "Mesh Texture"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "Text Editor"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "Text Field"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FONTS"
+msgstr "Text Fonts"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "Text Label"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_MEMORY_PROFILING"
+msgstr "Text Memory Profiling"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_OVERLAP"
+msgstr "Text Overlap"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "Text Scripts"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "Text Scrolling"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "Tilt Sensor"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "Tooltip"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP Game"
+
+msgid "DALI_DEMO_STR_TITLE_VISUAL_FITTING_MODE"
+msgstr "Visual Fitting Mode"
+
+msgid "DALI_DEMO_STR_TITLE_VISUAL_TRANSITIONS"
+msgstr "Visual Transitions"
+
+msgid "DALI_DEMO_STR_TITLE_REMOTE_IMAGE"
+msgstr "Remote Image"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "Textured cube"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "Draw cube"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "Draw triangle"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "Draw line"
+
+msgid "DALI_DEMO_STR_TITLE_FOCUS_INTEGRATION"
+msgstr "Focus integration"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "Draw radial progress"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "Ray Marching"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
+
+msgid "DALI_DEMO_STR_TITLE_WEB_VIEW"
+msgstr "Web View"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES"
+msgstr "Animated Vector Images"
diff --git a/resources/po/en_US.po b/resources/po/en_US.po
new file mode 100755 (executable)
index 0000000..4e7d858
--- /dev/null
@@ -0,0 +1,299 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "Animated Images"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "Animated Shapes"
+
+msgid "DALI_DEMO_STR_TITLE_ALPHA_BLENDING_CPU"
+msgstr "CPU Alpha Blending"
+
+msgid "DALI_DEMO_STR_TITLE_ARC_VISUAL"
+msgstr "Arc Visual"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "Basic Light"
+
+msgid "DALI_DEMO_STR_TITLE_BENCHMARK"
+msgstr "ImageView Benchmark"
+
+msgid "DALI_DEMO_STR_TITLE_BEZIER_CURVE"
+msgstr "Bezier Curve"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "Blocks"
+
+msgid "DALI_DEMO_STR_TITLE_BLOOM_VIEW"
+msgstr "Bloom"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "Bubbles"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "Buttons"
+
+msgid "DALI_DEMO_STR_TITLE_CALL_ACTIVE"
+msgstr "Call Active"
+
+msgid "DALI_DEMO_STR_TITLE_CARD_ACTIVE"
+msgstr "Card Active"
+
+msgid "DALI_DEMO_STR_TITLE_COMPRESSED_TEXTURE_FORMATS"
+msgstr "Compressed Texture Formats"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "Clipping"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING_DRAW_ORDER"
+msgstr "Clipping Draw Order"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_VISUAL"
+msgstr "Color Visual"
+
+msgid "DALI_DEMO_STR_TITLE_DEFERRED_SHADING"
+msgstr "Deferred Shading"
+
+msgid "DALI_DEMO_STR_TITLE_GAUSSIAN_BLUR_VIEW"
+msgstr "Gaussian Blur"
+
+msgid "DALI_DEMO_STR_TITLE_GESTURES"
+msgstr "Gestures"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "Color Gradient"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "Contact Cards"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "Cube Effect"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "Dissolve Effect"
+
+msgid "DALI_DEMO_STR_TITLE_DRAG_AND_DROP"
+msgstr "Drag and Drop"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "Effects View"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "Emoji Text"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox Playground"
+
+msgid "DALI_DEMO_STR_TITLE_FRAME_CALLBACK"
+msgstr "Frame Callback"
+
+msgid "DALI_DEMO_STR_TITLE_HELLO_WORLD"
+msgstr "Hello World"
+
+msgid "DALI_DEMO_STR_TITLE_HOMESCREEN"
+msgstr "Homescreen Benchmark"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_POLICIES"
+msgstr "Image Policies"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "Image Fitting and Sampling"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "Image Scaling Grid"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "Image View"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "Image View Alpha Blending"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "Image View Pixel Area"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "Image View SVG"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_URL"
+msgstr "Image View URL"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "Item View"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "Lights and Shadows"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "Mesh Line"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "Magnifier"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "Mesh Morph"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "Mesh Visual"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "Metaball Explosion"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "Metaball Refraction"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "Motion Blur"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "Motion Stretch"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "Native Image Source"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "Negotiate Size"
+
+msgid "DALI_DEMO_STR_TITLE_PAGE_TURN"
+msgstr "Page Turn"
+
+msgid "DALI_DEMO_STR_TITLE_PERF_SCROLL"
+msgstr "Scrolling Performance"
+
+msgid "DALI_DEMO_STR_TITLE_POINT_MESH"
+msgstr "Point Mesh"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "Popup"
+
+msgid "DALI_DEMO_STR_TITLE_PIVOT"
+msgstr "Pivot"
+
+msgid "DALI_DEMO_STR_TITLE_PRE_RENDER_CALLBACK"
+msgstr "Pre Render Callback"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "Progress Bar"
+
+msgid "DALI_DEMO_STR_TITLE_PROPERTY_NOTIFICATION"
+msgstr "Property Notification"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "Primitive Shapes"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "Radial Menu"
+
+msgid "DALI_DEMO_STR_TITLE_REFLECTION"
+msgstr "Reflection"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "Refraction"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "Renderer Stencil"
+
+msgid "DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL"
+msgstr "Simple Visuals Control"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "Script-based UI"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "Scroll View"
+
+msgid "DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW"
+msgstr "Simple Scroll View"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "Sparkle"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "Styling"
+
+msgid "DALI_DEMO_STR_TITLE_SUPER_BLUR_VIEW"
+msgstr "Super Blur"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "Mesh Texture"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "Text Editor"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "Text Field"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FONTS"
+msgstr "Text Fonts"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "Text Label"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_MEMORY_PROFILING"
+msgstr "Text Memory Profiling"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_OVERLAP"
+msgstr "Text Overlap"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "Text Scripts"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "Text Scrolling"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "Tilt Sensor"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "Tooltip"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP Game"
+
+msgid "DALI_DEMO_STR_TITLE_VISUAL_FITTING_MODE"
+msgstr "Visual Fitting Mode"
+
+msgid "DALI_DEMO_STR_TITLE_VISUAL_TRANSITIONS"
+msgstr "Visual Transitions"
+
+msgid "DALI_DEMO_STR_TITLE_REMOTE_IMAGE"
+msgstr "Remote Image"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "Textured cube"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "Draw cube"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "Draw triangle"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "Draw line"
+
+msgid "DALI_DEMO_STR_TITLE_FOCUS_INTEGRATION"
+msgstr "Focus integration"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "Draw radial progress"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "Ray Marching"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
+
+msgid "DALI_DEMO_STR_TITLE_WEB_VIEW"
+msgstr "Web View"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES"
+msgstr "Animated Vector Images"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_RENDERER"
+msgstr "Text Renderer"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_VISUAL"
+msgstr "Text Visual"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_BITMAP_FONT"
+msgstr "Text Bitmap Font"
diff --git a/resources/po/es.po b/resources/po/es.po
new file mode 100755 (executable)
index 0000000..6b4458b
--- /dev/null
@@ -0,0 +1,176 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "Imágenes animadas"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "Formas Animadas"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "Iluminación Básica"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "Bloques"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "Burbujas"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "Botones"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "Recorte"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "Gradiente de color"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "Contactos"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "Transición cubos"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "Transición disolver"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "Vista de efectos"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "Texto con emojis"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox Playground"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "Modo de encaje y muestreo"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "Modo de escalado de imagen"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "Control con imagenes"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "Control con imagenes con transparencias"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "Control con imagenes con area de pixeles"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "Control con imagenes SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "Vista de elementos"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "Luces y sombras"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "Lineas"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "Lupa"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "Transformacion de geometrias"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "Gemeotria 3D"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "Explosion de metabolas"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "Refraccion de metabolas"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "Desenfoque de movimiento"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "Movimiento con deformación"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "Fuente de imagenes nativas"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "Negociacion de tamaño"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "Popup"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "Barra de progreso"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "Primitvas 3D"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "Menú radial"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "Refracción"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "Dibujado con stencil"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "Interfaz definida por Script"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "Vista de desplazamiento"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "Brillar"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "Estilo"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "Geometria con texturas"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "Editor de texto"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "Campo de texto"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "Etiqueta de texto"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "Textos internacionales"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "Texto con desplazamiento"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "Sensor de inclinacion"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "Tooltip"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "Juego FPP"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "Cubo con textura"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "Dibujar cubo"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "Dibujar triángulo"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "Dibujar linea"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "Dibujo progreso radial"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "trazado de rayos"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
diff --git a/resources/po/fi.po b/resources/po/fi.po
new file mode 100755 (executable)
index 0000000..5e7552e
--- /dev/null
@@ -0,0 +1,176 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "animoituja kuvia"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "Animoidut Muodot"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "Perusvalo"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "Lohko Peli"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "Kuplat"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "Painikkeet"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "Leikkaaminen"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "Liukuväri"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "Yhteystietokortit"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "Kuutioefekti"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "Häivytysefekti"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "Efektinäkymä"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "Teksti Hymiöillä"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox Testi Sovellus"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "Kuvien Sovitus ja Suodatus"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "Kuvien Skaalaus"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "Kuvanäkymä"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "Kuvanäkymän Läpinäkyvyysmoodit"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "Kuvanäkymän Pikselialue"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "SVG Kuvanäkymä"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "Esinenäkymä"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "Valot ja Varjot"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "Viivapolygoniverkko"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "Suurennuslasi"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "Polygoniverkon Muodonmuutos"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "Polygoniverkkovisuaali"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "Metaball Räjähdys"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "Metaball Valon Taittumisella"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "Liikesumennus"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "Liikevenytys"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "Natiivi Kuvalähde"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "Kokoneuvottelu"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "Ponnahdusikkuna"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "Edistymispalkki"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "Primitiivimuodot"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "Säteittäinen Valikko"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "Valon Taittuminen"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "Sapluuna Efekti"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "Skriptipohjainen UI"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "Vieritysnäkymä"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "Kimalteluefekti"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "UI Tyyli"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "Teksturoitu Polygoniverkko"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "Tekstieditori"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "Tekstikenttä"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "Tekstietiketti"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "Monikielinen Teksti"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "Tekstin Vieritys"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "Kallistustunnistin"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "Tooltip"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP peli"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "kuvioitu kuutio"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "piirtää kuutio"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "Piirrä kolmio"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "Draw linja"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "Piirustus radial edistyminen"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "Ray marssi"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
diff --git a/resources/po/ko.po b/resources/po/ko.po
new file mode 100755 (executable)
index 0000000..d96a77d
--- /dev/null
@@ -0,0 +1,194 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "애니메이션 이미지"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "애니메이션 모양"
+
+msgid "DALI_DEMO_STR_TITLE_ARC_VISUAL"
+msgstr "호 비주얼"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "기본 조명"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "블록"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "방울"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "버튼"
+
+msgid "DALI_DEMO_STR_TITLE_CALL_ACTIVE"
+msgstr "통화 수신"
+
+msgid "DALI_DEMO_STR_TITLE_CARD_ACTIVE"
+msgstr "NFC 카드 태깅"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "클리핑"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING_DRAW_ORDER"
+msgstr "드로잉 순서를 클리핑"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_VISUAL"
+msgstr "색상 비주얼"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "색상 그라디언트"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "연락처"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "입방체 전환"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "디졸브 전환"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "이펙트 뷰"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "이모티콘 텍스트"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox 데모"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "이미지 조정 샘플링"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "이미지 확대"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "이미지 뷰"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "이미지 뷰 알파 블렌딩"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "이미지 뷰 픽셀 영역"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "이미지 뷰 SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "아이템 뷰"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "빛과 그림자"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "라인 메쉬"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "돋보기"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "메쉬 형태"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "메쉬 비주얼"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "메타볼 폭발"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "메타볼 굴절"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "모션 블러"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "늘이기"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "네이티브 이미지 소스"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "사이즈 조절"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "팝업"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "진행률 표시 줄"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "기본 모양"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "레이디 얼 메뉴"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "굴절 효과"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "렌더러 스텐실"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "스크립팅"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "스크롤 뷰"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "불꽃"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "스타일링"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "텍스쳐 메쉬"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "텍스트 편집기"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "텍스트 필드"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "텍스트 라벨"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "다국어"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "텍스트 스크롤"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "기울기 센서"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "툴팁"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP Game"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "질감 입방체"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "큐브 그리기"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "삼각형 그리기"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "선 그리기"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "방사형 진행 상황 그리기"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "레이 마칭"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES"
+msgstr "애니메이션 벡터 이미지"
diff --git a/resources/po/ml.po b/resources/po/ml.po
new file mode 100755 (executable)
index 0000000..8873d62
--- /dev/null
@@ -0,0 +1,176 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "അനിമേറ്റഡ് ചിത്രങ്ങൾ"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "ആനിമേഷൻ രൂപങ്ങൾ"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "അടിസ്ഥാന വെളിച്ചം"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "തടയപ്പെട്ട"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "കുമിള"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "ബട്ടണുകൾ"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "ക്ലിപ്പിംഗ്"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "വർണ്ണ ഗ്രേഡിയന്റ്"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "ബന്ധങ്ങൾ"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "സമചതുരക്കട്ട സംക്രമണ ഇഫക്ട്"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "സ്ഥാനാന്തരം സംക്രമണ ഇഫക്ട്"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "എഫക്റ്റുകൾ"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "ഇമോട്ടികോണുകൾ"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "ഫ്ലക്സ്ബോക്സിനുള്ള ഡെമോ"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "ചിത്രം ഉചിതമാണ് ആൻഡ് ഒരുപറ്റം"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "ഇമേജിംഗ്"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "ചിത്രം കാഴ്ച"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "ചിത്രം കാഴ്ച"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "സുതാര്യത ഉപയോഗിച്ച് ഇമേജ് കാഴ്ച"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "ചിത്രം കാഴ്ച SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "ഇനം കാഴ്ച"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "നിഴല്"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "വര"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "ഭൂതക്കണ്ണാടി"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "മോർഫ് mesh"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "3D മോഡലിങ്"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "മെറ്റാ പന്ത് സ്ഫോടനം"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "മെറ്റാ പന്ത് അപവർത്തനം"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "അവ്യക്തമാക്കല്"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "സ്ട്രെച്ച്"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "നേറ്റീവ് ചിത്രം"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "വലുപ്പം കൂടിയാലോചന"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "പോപപ്പ് മെനുവിൽ"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "പ്രോഗ്രസ് ബാർ"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "അടിസ്ഥാന രൂപങ്ങൾ"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "റേഡിയല് രേഖാചിത്രം"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "പ്രതിഫലിക്കുക"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "സീരിയോലിത്തോഗ്രാഫ്"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "സ്ക്രിപ്റ്റ്"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "സ്ക്രോള്ചെയ്യുക കാഴ്ച"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "നക്ഷത്ര"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "ശൈലി"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "ടെക്സ്ചർ mesh"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "ടെക്സ്റ്റ് എഡിറ്റർ"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "ടെക്സ്റ്റ് ഫീൽഡ്"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "ലേബലുചെയ്യുക"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "ഒന്നിലധികം ഭാഷ വാചകം"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "ടെക്സ്റ്റ് സ്ക്രോളിംഗ്"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "ചെരിവ് സെൻസർ"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "കൂടുതൽ വിവരങ്ങൾ"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP Game"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "ടെക്സ്ചർ ക്യൂബ്"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "ക്യൂബ് വരയ്ക്കുക"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "ത്രികോണം വരയ്ക്കുക"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "സമനില ലൈൻ"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "റേഡിയൽ പുരോഗതി ഡ്രോയിംഗ്"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "ലൈറ്റ് മാർച്ചിംഗ്"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
diff --git a/resources/po/ur.po b/resources/po/ur.po
new file mode 100755 (executable)
index 0000000..324368c
--- /dev/null
@@ -0,0 +1,176 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "متحرک تصاویر"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "متحرک شکلیں"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "بیسک روشنی"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "اینٹیں"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "بلبلے"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "بٹنوں"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "کاٹنا"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "رنگ میلان"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "لوگ"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "کیوب منتقلی"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "حل منتقلی"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "اثرات"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "اموٹکان"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "فلیکس باکس ڈیمو"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "تصویر فٹنگ"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "تصویر پیمائی"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "تصویر کنٹرول"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "تصویر کنٹرول"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "تصویر کنٹرول شفافیت کے ساتھ"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "تصویر کنٹرول SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "چیزوں کی فہرست"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "روشنی اور سائے"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "لکیریں"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "مکبر"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "میش کی تبدیلی"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "3D میش"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "میٹابال دھماکہ"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "میٹابال اپورتن"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "دھندلانے کی حرکت"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "کھینچھنے کی حرکت"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "نیٹو تصویر"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "سائز مذاکرات"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "پاپ اپ"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "ترقی بار"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "سادہ ماڈلیے"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "ریڈیل مینو"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "رفراکشن"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "سٹینسل"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "سکرپٹ"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "سکرول ویو"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "سٹار"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "سٹائل"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "ٹیکسچرد میش"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "حروف ایڈیٹر"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "حروف لائن ایڈیٹر"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "حروف کا لیبل"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "کئی زبانوں"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "حروف کاسکرال "
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "ٹلٹ سینسر"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "مزید معلومات"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP گیم"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "بویک ٹوانب "
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "ارڈ بویک "
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "ارڈ ثلثم "
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "انچنیھک ریکل "
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "ریڈیل پیش رفت ڈرائنگ"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "رے چلتے"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
diff --git a/resources/po/zn_CH.po b/resources/po/zn_CH.po
new file mode 100755 (executable)
index 0000000..68dfa53
--- /dev/null
@@ -0,0 +1,179 @@
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES"
+msgstr "动态图"
+
+msgid "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES"
+msgstr "动画造型"
+
+msgid "DALI_DEMO_STR_TITLE_BASIC_LIGHT"
+msgstr "基本光"
+
+msgid "DALI_DEMO_STR_TITLE_BLOCKS"
+msgstr "块体"
+
+msgid "DALI_DEMO_STR_TITLE_BUBBLES"
+msgstr "气泡"
+
+msgid "DALI_DEMO_STR_TITLE_BUTTONS"
+msgstr "按钮"
+
+msgid "DALI_DEMO_STR_TITLE_CLIPPING"
+msgstr "剪裁"
+
+msgid "DALI_DEMO_STR_TITLE_COLOR_GRADIENT"
+msgstr "颜色梯度"
+
+msgid "DALI_DEMO_STR_TITLE_CONTACT_CARDS"
+msgstr "往来"
+
+msgid "DALI_DEMO_STR_TITLE_CUBE_TRANSITION"
+msgstr "方块切换效果"
+
+msgid "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION"
+msgstr "冰消瓦解切换效果"
+
+msgid "DALI_DEMO_STR_TITLE_DRAG_AND_DROP"
+msgstr "拖放"
+
+msgid "DALI_DEMO_STR_TITLE_EFFECTS_VIEW"
+msgstr "效果视图"
+
+msgid "DALI_DEMO_STR_TITLE_EMOJI_TEXT"
+msgstr "表情符号"
+
+msgid "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND"
+msgstr "Flexbox演示"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING"
+msgstr "图像填充及采样"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_SCALING"
+msgstr "图像缩放"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW"
+msgstr "图像视图"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING"
+msgstr "图像视图透明度"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA"
+msgstr "图像视图像素区域"
+
+msgid "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG"
+msgstr "图像视图 SVG"
+
+msgid "DALI_DEMO_STR_TITLE_ITEM_VIEW"
+msgstr "项目视图"
+
+msgid "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS"
+msgstr "阴影"
+
+msgid "DALI_DEMO_STR_TITLE_LINE_MESH"
+msgstr "线条"
+
+msgid "DALI_DEMO_STR_TITLE_MAGNIFIER"
+msgstr "放大鏡"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_MORPH"
+msgstr "网格变形"
+
+msgid "DALI_DEMO_STR_TITLE_MESH_VISUAL"
+msgstr "3D模型"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION"
+msgstr "元球爆炸"
+
+msgid "DALI_DEMO_STR_TITLE_METABALL_REFRAC"
+msgstr "元球折射"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_BLUR"
+msgstr "动作模糊"
+
+msgid "DALI_DEMO_STR_TITLE_MOTION_STRETCH"
+msgstr "动作拉伸"
+
+msgid "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE"
+msgstr "本地图像"
+
+msgid "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE"
+msgstr "尺寸协商"
+
+msgid "DALI_DEMO_STR_TITLE_POPUP"
+msgstr "弹窗"
+
+msgid "DALI_DEMO_STR_TITLE_PROGRESS_BAR"
+msgstr "进度条"
+
+msgid "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES"
+msgstr "基本形状"
+
+msgid "DALI_DEMO_STR_TITLE_RADIAL_MENU"
+msgstr "径向菜单"
+
+msgid "DALI_DEMO_STR_TITLE_REFRACTION"
+msgstr "折射"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERER_STENCIL"
+msgstr "模板缓冲"
+
+msgid "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI"
+msgstr "脚本用户界面"
+
+msgid "DALI_DEMO_STR_TITLE_SCROLL_VIEW"
+msgstr "滚动视图"
+
+msgid "DALI_DEMO_STR_TITLE_SPARKLE"
+msgstr "火花"
+
+msgid "DALI_DEMO_STR_TITLE_STYLING"
+msgstr "样式"
+
+msgid "DALI_DEMO_STR_TITLE_TEXTURED_MESH"
+msgstr "纹理网格"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_EDITOR"
+msgstr "文字编辑器"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_FIELD"
+msgstr "文字栏"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL"
+msgstr "标签"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE"
+msgstr "多语言标签"
+
+msgid "DALI_DEMO_STR_TITLE_TEXT_SCROLLING"
+msgstr "滚动文字"
+
+msgid "DALI_DEMO_STR_TITLE_TILT_SENSOR"
+msgstr "倾斜传感器"
+
+msgid "DALI_DEMO_STR_TITLE_TOOLTIP"
+msgstr "更多信息"
+
+msgid "DALI_DEMO_STR_TITLE_FPP_GAME"
+msgstr "FPP游戏"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE"
+msgstr "纹理的多维数据集"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE"
+msgstr "绘制多维数据集"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE"
+msgstr "绘制三角形"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE"
+msgstr "画线"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS"
+msgstr "绘制径向进度"
+
+msgid "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING"
+msgstr "射线行军"
+
+msgid "DALI_DEMO_STR_TITLE_SKYBOX"
+msgstr "Skybox"
+
+msgid "DALI_DEMO_STR_TITLE_PBR"
+msgstr "PBR"
diff --git a/resources/scripts/animated-colors.json b/resources/scripts/animated-colors.json
new file mode 100644 (file)
index 0000000..e930a2b
--- /dev/null
@@ -0,0 +1,1270 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  "stage": [
+    {
+      "type": "Control",
+      "actors": [
+        {
+          "type": "Control",
+          "name": "Control 8",
+          "position": [
+            0,
+            0,
+            0
+          ],
+          "inheritPosition": true,
+          "parentOrigin": [
+            0,
+            0.5,
+            0.5
+          ],
+          "anchorPoint": [
+            1,
+            0.5,
+            0.5
+          ],
+          "widthResizePolicy":"FILL_TO_PARENT",
+          "heightResizePolicy":"FILL_TO_PARENT",
+          "sizeAspectRatio": false,
+          "background": {
+            "visualType": "COLOR",
+            "mixColor": [1,1,1,1]
+          },
+          "color": [
+            0.5686274509803921,
+            0.5294117647058824,
+            0.17647058823529413,
+            1
+          ]
+        },
+        {
+          "type": "Control",
+          "actors": [
+            {
+              "type": "Control",
+              "name": "Container 2",
+              "position": [
+                0,
+                0,
+                0
+              ],
+              "inheritPosition": true,
+              "parentOrigin": [
+                0,
+                0.5,
+                0.5
+              ],
+              "anchorPoint": [
+                1,
+                0.5,
+                0.5
+              ],
+              "widthResizePolicy":"FILL_TO_PARENT",
+              "heightResizePolicy":"FILL_TO_PARENT",
+              "sizeAspectRatio": false,
+              "background": {
+                "visualType": "COLOR",
+                "mixColor": [1,1,1,1]
+              },
+              "color": [
+                0.17647058823529413,
+                0.5686274509803921,
+                0.5215686274509804,
+                1
+              ]
+            },
+            {
+              "type": "Control",
+              "actors": [
+                {
+                  "type": "Control",
+                  "name": "Container 4",
+                  "position": [
+                    0,
+                    0,
+                    0
+                  ],
+                  "inheritPosition": true,
+                  "parentOrigin": [
+                    1,
+                    0.5,
+                    0.5
+                  ],
+                  "anchorPoint": [
+                    0,
+                    0.5,
+                    0.5
+                  ],
+                  "widthResizePolicy":"FILL_TO_PARENT",
+                  "heightResizePolicy":"FILL_TO_PARENT",
+                  "sizeAspectRatio": false,
+                  "background": {
+                    "visualType": "COLOR",
+                    "mixColor": [1,1,1,1]
+                  },
+                  "color": [
+                    0.7411764705882353,
+                    0,
+                    0,
+                    1
+                  ]
+                }
+              ],
+              "name": "Container 3",
+              "position": [
+                0,
+                0,
+                0
+              ],
+              "inheritPosition": true,
+              "parentOrigin": [
+                1,
+                0.5,
+                0.5
+              ],
+              "anchorPoint": [
+                0,
+                0.5,
+                0.5
+              ],
+              "widthResizePolicy":"FILL_TO_PARENT",
+              "heightResizePolicy":"FILL_TO_PARENT",
+              "sizeAspectRatio": false,
+              "background": {
+                "visualType": "COLOR",
+                "mixColor": [1,1,1,1]
+              },
+              "color": [
+                0.23137254901960785,
+                0.09803921568627451,
+                0.09803921568627451,
+                1
+              ]
+            },
+            {
+              "type": "Control",
+              "actors": [
+                {
+                  "type": "Control",
+                  "name": "Container 5",
+                  "position": [
+                    0,
+                    0,
+                    0
+                  ],
+                  "inheritPosition": true,
+                  "parentOrigin": [
+                    0,
+                    0.5,
+                    0.5
+                  ],
+                  "anchorPoint": [
+                    1,
+                    0.5,
+                    0.5
+                  ],
+                  "widthResizePolicy":"FILL_TO_PARENT",
+                  "heightResizePolicy":"FILL_TO_PARENT",
+                  "sizeAspectRatio": false,
+                  "background": {
+                    "visualType": "COLOR",
+                    "mixColor": [1,1,1,1]
+                  },
+                  "color": [
+                    0.17647058823529413,
+                    0.24313725490196078,
+                    0.5686274509803921,
+                    1
+                  ]
+                },
+                {
+                  "type": "Control",
+                  "actors": [
+                    {
+                      "type": "Control",
+                      "name": "Container 7",
+                      "position": [
+                        0,
+                        0,
+                        0
+                      ],
+                      "inheritPosition": true,
+                      "parentOrigin": [
+                        1,
+                        0.5,
+                        0.5
+                      ],
+                      "anchorPoint": [
+                        0,
+                        0.5,
+                        0.5
+                      ],
+                      "widthResizePolicy":"FILL_TO_PARENT",
+                      "heightResizePolicy":"FILL_TO_PARENT",
+                      "sizeAspectRatio": false,
+                      "background": {
+                        "visualType": "COLOR",
+                        "mixColor": [1,1,1,1]
+                      },
+                      "color": [
+                        0.396078431372549,
+                        0.29411764705882354,
+                        0.8,
+                        1
+                      ]
+                    }
+                  ],
+                  "name": "Container 6",
+                  "position": [
+                    0,
+                    0,
+                    0
+                  ],
+                  "inheritPosition": true,
+                  "parentOrigin": [
+                    1,
+                    0.5,
+                    0.5
+                  ],
+                  "anchorPoint": [
+                    0,
+                    0.5,
+                    0.5
+                  ],
+                  "widthResizePolicy":"FILL_TO_PARENT",
+                  "heightResizePolicy":"FILL_TO_PARENT",
+                  "sizeAspectRatio": false,
+                  "background": {
+                    "visualType": "COLOR",
+                    "mixColor": [1,1,1,1]
+                  },
+                  "color": [
+                    0,
+                    0.6901960784313725,
+                    0.7411764705882353,
+                    1
+                  ]
+                },
+                {
+                  "type": "Control",
+                  "actors": [
+                    {
+                      "type": "Control",
+                      "name": "Container 8",
+                      "position": [
+                        0,
+                        0,
+                        0
+                      ],
+                      "inheritPosition": true,
+                      "parentOrigin": [
+                        0,
+                        0.5,
+                        0.5
+                      ],
+                      "anchorPoint": [
+                        1,
+                        0.5,
+                        0.5
+                      ],
+                      "widthResizePolicy":"FILL_TO_PARENT",
+                      "heightResizePolicy":"FILL_TO_PARENT",
+                      "sizeAspectRatio": false,
+                      "background": {
+                        "visualType": "COLOR",
+                        "mixColor": [1,1,1,1]
+                      },
+                      "color": [
+                        0.20784313725490197,
+                        0.5686274509803921,
+                        0.17647058823529413,
+                        1
+                      ]
+                    },
+                    {
+                      "type": "Control",
+                      "actors": [
+                        {
+                          "type": "Control",
+                          "name": "Container 10",
+                          "position": [
+                            0,
+                            0,
+                            0
+                          ],
+                          "inheritPosition": true,
+                          "parentOrigin": [
+                            1,
+                            0.5,
+                            0.5
+                          ],
+                          "anchorPoint": [
+                            0,
+                            0.5,
+                            0.5
+                          ],
+                          "widthResizePolicy":"FILL_TO_PARENT",
+                          "heightResizePolicy":"FILL_TO_PARENT",
+                          "sizeAspectRatio": false,
+                          "background": {
+                            "visualType": "COLOR",
+                            "mixColor": [1,1,1,1]
+                          },
+                          "color": [
+                            0.4196078431372549,
+                            0.047058823529411764,
+                            0.047058823529411764,
+                            1
+                          ]
+                        }
+                      ],
+                      "name": "Container 9",
+                      "position": [
+                        0,
+                        0,
+                        0
+                      ],
+                      "inheritPosition": true,
+                      "parentOrigin": [
+                        1,
+                        0.5,
+                        0.5
+                      ],
+                      "anchorPoint": [
+                        0,
+                        0.5,
+                        0.5
+                      ],
+                      "widthResizePolicy":"FILL_TO_PARENT",
+                      "heightResizePolicy":"FILL_TO_PARENT",
+                      "sizeAspectRatio": false,
+                      "background": {
+                        "visualType": "COLOR",
+                        "mixColor": [1,1,1,1]
+                      },
+                      "color": [
+                        0.47843137254901963,
+                        0.42745098039215684,
+                        0.25098039215686274,
+                        1
+                      ]
+                    }
+                  ],
+                  "name": "Control 5",
+                  "position": [
+                    0,
+                    0,
+                    0
+                  ],
+                  "inheritPosition": true,
+                  "parentOrigin": [
+                    0.5,
+                    1,
+                    0.5
+                  ],
+                  "anchorPoint": [
+                    0.5,
+                    0,
+                    0.5
+                  ],
+                  "widthResizePolicy":"FILL_TO_PARENT",
+                  "heightResizePolicy":"FILL_TO_PARENT",
+                  "sizeAspectRatio": false,
+                  "background": {
+                    "visualType": "COLOR",
+                    "mixColor": [1,1,1,1]
+                  },
+                  "color": [
+                    0.4470588235294118,
+                    0.45098039215686275,
+                    0.47058823529411764,
+                    1
+                  ]
+                }
+              ],
+              "name": "Control 3",
+              "position": [
+                0,
+                0,
+                0
+              ],
+              "inheritPosition": true,
+              "parentOrigin": [
+                0.5,
+                1,
+                0.5
+              ],
+              "anchorPoint": [
+                0.5,
+                0,
+                0.5
+              ],
+              "widthResizePolicy":"FILL_TO_PARENT",
+              "heightResizePolicy":"FILL_TO_PARENT",
+              "sizeAspectRatio": false,
+              "background": {
+                "visualType": "COLOR",
+                "mixColor": [1,1,1,1]
+              },
+              "color": [
+                1,
+                0.4823529411764706,
+                0,
+                1
+              ]
+            }
+          ],
+          "name": "Control 2",
+          "position": [
+            0,
+            0,
+            0
+          ],
+          "inheritPosition": true,
+          "parentOrigin": [
+            0.5,
+            1,
+            0.5
+          ],
+          "anchorPoint": [
+            0.5,
+            0,
+            0.5
+          ],
+          "widthResizePolicy":"FILL_TO_PARENT",
+          "heightResizePolicy":"FILL_TO_PARENT",
+          "sizeAspectRatio": false,
+          "background": {
+            "visualType": "COLOR",
+            "mixColor": [1,1,1,1]
+          },
+          "color": [
+            0.43137254901960786,
+            0,
+            0.1568627450980392,
+            1
+          ]
+        },
+        {
+          "type": "Control",
+          "actors": [
+            {
+              "type": "Control",
+              "name": "Control 4",
+              "position": [
+                0,
+                0,
+                0
+              ],
+              "inheritPosition": true,
+              "parentOrigin": [
+                1,
+                0.5,
+                0.5
+              ],
+              "anchorPoint": [
+                0,
+                0.5,
+                0.5
+              ],
+              "widthResizePolicy":"FILL_TO_PARENT",
+              "heightResizePolicy":"FILL_TO_PARENT",
+              "sizeAspectRatio": false,
+              "background": {
+                "visualType": "COLOR",
+                "mixColor": [1,1,1,1]
+              },
+              "color": [
+                0.8196078431372549,
+                0.5803921568627451,
+                0.5803921568627451,
+                1
+              ]
+            }
+          ],
+          "name": "Control 1",
+          "position": [
+            0,
+            0,
+            0
+          ],
+          "inheritPosition": true,
+          "parentOrigin": [
+            1,
+            0.5,
+            0.5
+          ],
+          "anchorPoint": [
+            0,
+            0.5,
+            0.5
+          ],
+          "widthResizePolicy":"FILL_TO_PARENT",
+          "heightResizePolicy":"FILL_TO_PARENT",
+          "sizeAspectRatio": false,
+          "background": {
+            "visualType": "COLOR",
+            "mixColor": [1,1,1,1]
+          },
+          "color": [
+            0.6313725490196078,
+            0.6274509803921569,
+            0.47843137254901963,
+            1
+          ]
+        },
+        {
+          "type": "Control",
+          "actors": [
+            {
+              "type": "Control",
+              "actors": [
+                {
+                  "type": "Control",
+                  "name": "Container 13",
+                  "position": [
+                    0,
+                    0,
+                    0
+                  ],
+                  "inheritPosition": true,
+                  "parentOrigin": [
+                    1,
+                    0.5,
+                    0.5
+                  ],
+                  "anchorPoint": [
+                    0,
+                    0.5,
+                    0.5
+                  ],
+                  "widthResizePolicy":"FILL_TO_PARENT",
+                  "heightResizePolicy":"FILL_TO_PARENT",
+                  "sizeAspectRatio": false,
+                  "background": {
+                    "visualType": "COLOR",
+                    "mixColor": [1,1,1,1]
+                  },
+                  "color": [
+                    0.9176470588235294,
+                    0,
+                    1,
+                    1
+                  ]
+                }
+              ],
+              "name": "Container 12",
+              "position": [
+                0,
+                0,
+                0
+              ],
+              "inheritPosition": true,
+              "parentOrigin": [
+                1,
+                0.5,
+                0.5
+              ],
+              "anchorPoint": [
+                0,
+                0.5,
+                0.5
+              ],
+              "widthResizePolicy":"FILL_TO_PARENT",
+              "heightResizePolicy":"FILL_TO_PARENT",
+              "sizeAspectRatio": false,
+              "background": {
+                "visualType": "COLOR",
+                "mixColor": [1,1,1,1]
+              },
+              "color": [
+                0.24313725490196078,
+                0.25882352941176473,
+                0.19607843137254902,
+                1
+              ]
+            },
+            {
+              "type": "Control",
+              "name": "Container 11",
+              "position": [
+                0,
+                0,
+                0
+              ],
+              "inheritPosition": true,
+              "parentOrigin": [
+                0,
+                0.5,
+                0.5
+              ],
+              "anchorPoint": [
+                1,
+                0.5,
+                0.5
+              ],
+              "widthResizePolicy":"FILL_TO_PARENT",
+              "heightResizePolicy":"FILL_TO_PARENT",
+              "sizeAspectRatio": false,
+              "background": {
+                "visualType": "COLOR",
+                "mixColor": [1,1,1,1]
+              },
+              "color": [
+                0,
+                1,
+                0.7686274509803922,
+                1
+              ]
+            },
+            {
+              "type": "Control",
+              "actors": [
+                {
+                  "type": "Control",
+                  "actors": [
+                    {
+                      "type": "Control",
+                      "name": "Container 15",
+                      "position": [
+                        0,
+                        0,
+                        0
+                      ],
+                      "inheritPosition": true,
+                      "parentOrigin": [
+                        1,
+                        0.5,
+                        0.5
+                      ],
+                      "anchorPoint": [
+                        0,
+                        0.5,
+                        0.5
+                      ],
+                      "widthResizePolicy":"FILL_TO_PARENT",
+                      "heightResizePolicy":"FILL_TO_PARENT",
+                      "sizeAspectRatio": false,
+                      "background": {
+                        "visualType": "COLOR",
+                        "mixColor": [1,1,1,1]
+                      },
+                      "color": [
+                        1,
+                        0.8980392156862745,
+                        0,
+                        1
+                      ]
+                    }
+                  ],
+                  "name": "Container 14",
+                  "position": [
+                    0,
+                    0,
+                    0
+                  ],
+                  "inheritPosition": true,
+                  "parentOrigin": [
+                    1,
+                    0.5,
+                    0.5
+                  ],
+                  "anchorPoint": [
+                    0,
+                    0.5,
+                    0.5
+                  ],
+                  "widthResizePolicy":"FILL_TO_PARENT",
+                  "heightResizePolicy":"FILL_TO_PARENT",
+                  "sizeAspectRatio": false,
+                  "background": {
+                    "visualType": "COLOR",
+                    "mixColor": [1,1,1,1]
+                  },
+                  "color": [
+                    0,
+                    0.6,
+                    0.48627450980392156,
+                    1
+                  ]
+                },
+                {
+                  "type": "Control",
+                  "name": "Container 16",
+                  "position": [
+                    0,
+                    0,
+                    0
+                  ],
+                  "inheritPosition": true,
+                  "parentOrigin": [
+                    0,
+                    0.5,
+                    0.5
+                  ],
+                  "anchorPoint": [
+                    1,
+                    0.5,
+                    0.5
+                  ],
+                  "widthResizePolicy":"FILL_TO_PARENT",
+                  "heightResizePolicy":"FILL_TO_PARENT",
+                  "sizeAspectRatio": false,
+                  "background": {
+                    "visualType": "COLOR",
+                    "mixColor": [1,1,1,1]
+                  },
+                  "color": [
+                    1,
+                    0,
+                    0,
+                    1
+                  ]
+                }
+              ],
+              "name": "Control 7",
+              "position": [
+                0,
+                0,
+                0
+              ],
+              "inheritPosition": true,
+              "parentOrigin": [
+                0.5,
+                0,
+                0.5
+              ],
+              "anchorPoint": [
+                0.5,
+                1,
+                0.5
+              ],
+              "widthResizePolicy":"FILL_TO_PARENT",
+              "heightResizePolicy":"FILL_TO_PARENT",
+              "sizeAspectRatio": false,
+              "background": {
+                "visualType": "COLOR",
+                "mixColor": [1,1,1,1]
+              },
+              "color": [
+                0.01568627450980392,
+                0,
+                1,
+                1
+              ]
+            }
+          ],
+          "name": "Control 6",
+          "position": [
+            0,
+            0,
+            0
+          ],
+          "inheritPosition": true,
+          "parentOrigin": [
+            0.5,
+            0,
+            0.5
+          ],
+          "anchorPoint": [
+            0.5,
+            1,
+            0.5
+          ],
+          "widthResizePolicy":"FILL_TO_PARENT",
+          "heightResizePolicy":"FILL_TO_PARENT",
+          "sizeAspectRatio": false,
+          "background": {
+            "visualType": "COLOR",
+            "mixColor": [1,1,1,1]
+          },
+          "color": [
+            0.2784313725490196,
+            0.1803921568627451,
+            0.3411764705882353,
+            1
+          ]
+        }
+      ],
+      "name": "Container 1",
+      "position": [
+        0,
+        0,
+        0
+      ],
+      "inheritPosition": true,
+      "parentOrigin": [
+        0.5,
+        0.5,
+        0.5
+      ],
+      "anchorPoint": [
+        1,
+        1,
+        0.5
+      ],
+      "widthResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [0.25,0.166667,1],
+      "sizeAspectRatio": false,
+      "background": {
+        "visualType": "COLOR",
+        "mixColor": [1,1,1,1]
+      },
+      "color": [
+        0.1568627450980392,
+        0.9215686274509803,
+        0.32941176470588235,
+        1
+      ],
+      "signals": [
+        {
+          "name": "onStage",
+          "action": "play",
+          "animation": "Animation_1"
+        }
+      ]
+    }
+  ],
+  "animations": {
+    "Animation_1": {
+      "loop": true,
+      "properties": [
+        {
+          "actor": "Container 1",
+          "property": "color",
+          "value": [
+            0.13333333333333333,
+            0.11372549019607843,
+            0.32941176470588235,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#eec5f8"
+        },
+        {
+          "actor": "Control 8",
+          "property": "color",
+          "value": [
+            0.8588235294117647,
+            0.2627450980392157,
+            0.9098039215686274,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#7fdbb3"
+        },
+        {
+          "actor": "Control 2",
+          "property": "color",
+          "value": [
+            0.6784313725490196,
+            0.7686274509803922,
+            0.4235294117647059,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#8587e7"
+        },
+        {
+          "actor": "Container 2",
+          "property": "color",
+          "value": [
+            0.25882352941176473,
+            0.24705882352941178,
+            0.027450980392156862,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#a7acf3"
+        },
+        {
+          "actor": "Container 3",
+          "property": "color",
+          "value": [
+            0.8784313725490196,
+            0.35294117647058826,
+            0.8627450980392157,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#a3939e"
+        },
+        {
+          "actor": "Container 4",
+          "property": "color",
+          "value": [
+            0.0392156862745098,
+            0.043137254901960784,
+            0.1803921568627451,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#ddfb95"
+        },
+        {
+          "actor": "Control 3",
+          "property": "color",
+          "value": [
+            1,
+            0,
+            0.5333333333333333,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#eba898"
+        },
+        {
+          "actor": "Container 5",
+          "property": "color",
+          "value": [
+            0.4196078431372549,
+            0,
+            0,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#81967f"
+        },
+        {
+          "actor": "Container 6",
+          "property": "color",
+          "value": [
+            1,
+            1,
+            1,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#c7e29d"
+        },
+        {
+          "actor": "Container 7",
+          "property": "color",
+          "value": [
+            0,
+            0.23137254901960785,
+            0.06666666666666667,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#9cdff2"
+        },
+        {
+          "actor": "Control 5",
+          "property": "color",
+          "value": [
+            1,
+            0.3333333333333333,
+            0,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#a7f1e2"
+        },
+        {
+          "actor": "Container 8",
+          "property": "color",
+          "value": [
+            0,
+            0.4980392156862745,
+            0.788235294117647,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#e180a2"
+        },
+        {
+          "actor": "Container 9",
+          "property": "color",
+          "value": [
+            0.07450980392156863,
+            0.5372549019607843,
+            0.7294117647058823,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0.001,
+            "duration": 2
+          },
+          "timelineColor": "#fad4f4"
+        },
+        {
+          "actor": "Container 10",
+          "property": "color",
+          "value": [
+            0.9098039215686274,
+            0.6588235294117647,
+            1,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#d6a78f"
+        },
+        {
+          "actor": "Control 1",
+          "property": "color",
+          "value": [
+            1,
+            0,
+            0,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#d9aef2"
+        },
+        {
+          "actor": "Control 4",
+          "property": "color",
+          "value": [
+            0,
+            0.0196078431372549,
+            0.5607843137254902,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#d0d0ba"
+        },
+        {
+          "actor": "Control 6",
+          "property": "color",
+          "value": [
+            0.26666666666666666,
+            0,
+            1,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#9dd9c0"
+        },
+        {
+          "actor": "Container 12",
+          "property": "color",
+          "value": [
+            0.8666666666666667,
+            1,
+            0,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0.001,
+            "duration": 2
+          },
+          "timelineColor": "#b7c5c1"
+        },
+        {
+          "actor": "Container 13",
+          "property": "color",
+          "value": [
+            0.17254901960784313,
+            0.5882352941176471,
+            0.24313725490196078,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#82d7fe"
+        },
+        {
+          "actor": "Container 11",
+          "property": "color",
+          "value": [
+            0.4235294117647059,
+            0,
+            0.43137254901960786,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#f9d2f6"
+        },
+        {
+          "actor": "Control 7",
+          "property": "color",
+          "value": [
+            0.8666666666666667,
+            1,
+            0,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#f8c29d"
+        },
+        {
+          "actor": "Container 14",
+          "property": "color",
+          "value": [
+            0.9882352941176471,
+            0.4,
+            1,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#90faf9"
+        },
+        {
+          "actor": "Container 15",
+          "property": "color",
+          "value": [
+            0.8509803921568627,
+            0.6784313725490196,
+            0.6784313725490196,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#94b5c0"
+        },
+        {
+          "actor": "Container 16",
+          "property": "color",
+          "value": [
+            0,
+            0.23921568627450981,
+            0.4196078431372549,
+            1
+          ],
+          "alphaFunction": "SIN",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 2
+          },
+          "timelineColor": "#bd92e6"
+        }
+      ],
+      "page": ""
+    }
+  },
+  "connections": {
+    "Connection_1": {
+      "id": "_192ea2ao4045",
+      "name": "Connection_1",
+      "target": {
+        "type": "animation",
+        "name": "Animation_1",
+        "action": "play"
+      },
+      "sources": [
+        "text"
+      ],
+      "signal": "click"
+    },
+    "Connection_2": {
+      "id": "_192ea2ao4046",
+      "name": "Connection_2",
+      "target": {
+        "type": "animation",
+        "name": "HideText",
+        "action": "play"
+      },
+      "sources": [
+        "text"
+      ],
+      "signal": "click"
+    }
+  },
+  "constants": {},
+  "styles": {},
+  "deviceHeight": 800,
+  "deviceWidth": 480,
+  "deviceOrientation": "portrait",
+  "version": "781"
+}
diff --git a/resources/scripts/animation.json b/resources/scripts/animation.json
new file mode 100644 (file)
index 0000000..bff6d83
--- /dev/null
@@ -0,0 +1,133 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  // library of styles
+  "styles": {
+    "redTheme": {
+      "color": [1, 0, 0, 1]
+    },
+    "basicText": {
+      "parentOrigin": "CENTER"
+    }
+  },
+  "paths":
+  {
+    "path0":
+    {
+      "points":[ [-150, -50, 0], [0.0,70.0,0.0], [190.0,-150.0,0.0] ],
+      "curvature":0.35
+    }
+  },
+  // library of animations
+  "animations": {
+    "animate": {
+      "duration": 10.0,
+      "properties": [{
+        "actor": "greeting", // referenced actors must exist on stage
+        "property": "position",
+        "value": [300, 300, -1000],
+        "alphaFunction": "EASE_IN_OUT",
+        "timePeriod": {
+          "delay": 0,
+          "duration": 3
+        }
+      }, {
+        "actor": "greeting", // referenced actors must exist on stage
+        "property": "scale",
+        "value": [5, 5, 1],
+        "timePeriod": {
+          "delay": 2,
+          "duration": 3
+        }
+      }]
+    },
+    "rotate": {
+      "duration": 10.0,
+      "properties": [{
+        "actor": "image", // referenced actors must exist on stage
+        "property": "orientation",
+        "value": [0, 0, -45],
+        "alphaFunction": "EASE_IN_OUT",
+        "timePeriod": {
+          "delay": 0,
+          "duration": 3
+        }
+      }]
+    },
+    "pathAnimation": {
+      "duration": 3.0,
+      "properties": [{
+        "actor": "greeting2", // referenced actors must exist on stage
+        "path":"path0",
+        "forward":[1,0,0],
+        "alphaFunction": "EASE_IN_OUT",
+        "timePeriod": {
+          "delay": 0,
+          "duration": 3
+        }
+      }]
+    }
+  },
+  // a tree of actors
+  "stage": [{
+    "name": "greeting",
+    "type": "TextLabel",
+    "text": "Touch me",
+    "styles": ["basicText"],
+    "position": [0, -120, 0],
+    "size": [200, 200, 1],
+    "orientation": [0, 0, 30],
+    "signals": [{
+      "name": "touch",
+      "action": "play",
+      "animation": "animate"
+    }]
+  }, {
+    "name":"greeting2",
+    "type": "TextLabel",
+    "parentOrigin": "CENTER",
+    "anchorPoint": "CENTER",
+    "size": [200, 200, 1],
+    "orientation": [0, 0, 39],
+    "position": [-150, -50, 0],
+    "text": "or me",
+    "signals": [{
+      "name": "touch",
+      "action": "play",
+      "animation": "pathAnimation"
+    }]
+  }, {
+    "type": "TextLabel", // styles can be additive
+    "parentOrigin": "CENTER",
+    "anchorPoint": "CENTER",
+    "size": [200, 200, 1],
+    "text": "or the image.."
+  }, {
+    "name": "image",
+    "type": "ImageView",
+    "image": "{DEMO_IMAGE_DIR}gallery-large-21.jpg",
+    "relayoutEnabled": false,
+    "position": [0, 200, 0],
+    "size": [200, 200, 1],
+    "signals": [{
+      "name": "touch",
+      "action": "play",
+      "animation": "rotate"
+    }],
+    "positionInheritance": "DONT_INHERIT_POSITION"
+  }]
+}
diff --git a/resources/scripts/background.json b/resources/scripts/background.json
new file mode 100644 (file)
index 0000000..9a744bd
--- /dev/null
@@ -0,0 +1,123 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  "stage": [
+    // A TextLabel with a color background
+    {
+      "type": "TextLabel",
+      "drawMode": "OVERLAY_2D",
+      "text": "Hello World",
+      "parentOrigin": "TOP_LEFT",
+      "anchorPoint": "TOP_LEFT",
+      "pointSize": 20,
+      "horizontalAlignment": "CENTER",
+      "verticalAlignment": "CENTER",
+      "widthResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [ 0.5, 0.333333333333, 1 ],
+      "background":{
+        "visualType": "COLOR",
+        "mixColor": [ 0.8, 0, 0.2, 1 ]
+       }
+    },
+
+    // A control with an SVG image
+    {
+      "type": "Control",
+      "relayoutEnabled": false,
+      "parentOrigin": "TOP_RIGHT",
+      "anchorPoint": "TOP_RIGHT",
+      "widthResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [ 0.5, 0.333333333333, 1 ],
+      "background": {
+        "visualType": "IMAGE",
+        "url": "{DEMO_IMAGE_DIR}Kid1.svg"
+      }
+    },
+
+    // A control with a border
+    {
+      "type": "Control",
+      "relayoutEnabled": false,
+      "parentOrigin": "CENTER_LEFT",
+      "anchorPoint": "CENTER_LEFT",
+      "widthResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [ 0.5, 0.333333333333, 1 ],
+      "background": {
+        "visualType" : "BORDER",
+        "borderColor" : [ 0.5, 0.5, 0.5, 1 ],
+        "borderSize" : 15.0
+      }
+    },
+
+    // A control with a JPG image
+    {
+      "type": "Control",
+      "relayoutEnabled": false,
+      "parentOrigin": "CENTER_RIGHT",
+      "anchorPoint": "CENTER_RIGHT",
+      "widthResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [ 0.5, 0.333333333333, 1 ],
+      "background": {
+        "visualType": "IMAGE",
+        "url": "{DEMO_IMAGE_DIR}gallery-large-9.jpg"
+      }
+    },
+
+    // A control with a yellow background
+    {
+      "type": "Control",
+      "relayoutEnabled": false,
+      "parentOrigin": "BOTTOM_LEFT",
+      "anchorPoint": "BOTTOM_LEFT",
+      "widthResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [ 0.5, 0.333333333333, 1 ],
+      "background":{
+        "visualType": "COLOR",
+        "mixColor": [ 1, 1, 0, 1 ]
+      }
+    },
+
+    // A control with a gradient
+    {
+      "type": "Control",
+      "relayoutEnabled": false,
+      "parentOrigin": "BOTTOM_RIGHT",
+      "anchorPoint": "BOTTOM_RIGHT",
+      "widthResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [ 0.5, 0.333333333333, 1 ],
+      "background": {
+        "visualType" : "GRADIENT",
+        "startPosition" : [ -0.5, -0.5 ],
+        "endPosition": [ 0.5, 0.5 ],
+        "stopColor" : [
+          [ 1.0, 0.0, 0.0, 1.0 ],
+          [ 1.0, 0.25, 0.0, 1.0 ],
+          [ 1.0, 0.5, 0.0, 1.0 ],
+          [ 1.0, 0.75, 0.0, 1.0 ],
+          [ 1.0, 1.0, 0.0, 1.0 ]
+        ],
+        "stopOffset" : [ 0, 0.25, 0.5, 0.75, 1.0 ]
+       }
+    }
+  ]
+}
diff --git a/resources/scripts/button.json b/resources/scripts/button.json
new file mode 100644 (file)
index 0000000..670483a
--- /dev/null
@@ -0,0 +1,60 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  "stage": [
+    // First Button
+    {
+      "type": "PushButton",
+      "parentOrigin": "TOP_CENTER",
+      "anchorPoint": "TOP_CENTER",
+      "position": [0, 0, 0],
+      "widthResizePolicy":"FILL_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [1,0.25,1],
+      "label": "Normal"
+    },
+
+    // Second Button
+    {
+      "type": "PushButton",
+      "parentOrigin": "CENTER",
+      "anchorPoint": "CENTER",
+      "position": [0, 0, 0],
+      "widthResizePolicy":"FILL_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [1,0.25,1],
+      "disabled": true,
+      "label": "Disabled"
+    },
+
+    // Third Button
+    {
+      "type": "PushButton",
+      "name": "toggleButton",
+      "parentOrigin": "BOTTOM_CENTER",
+      "anchorPoint": "BOTTOM_CENTER",
+      "position": [0, 0, 0],
+      "widthResizePolicy":"FILL_TO_PARENT",
+      "heightResizePolicy":"SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [1,0.25,1],
+      "togglable": true,
+      "unselectedStateImage": "{DEMO_IMAGE_DIR}button-up-6.9.png",
+      "selectedStateImage": "{DEMO_IMAGE_DIR}button-up-8.9.png",
+      "label": "Toggle With Custom Images"
+    }
+  ]
+}
diff --git a/resources/scripts/clock.json b/resources/scripts/clock.json
new file mode 100644 (file)
index 0000000..a3048c1
--- /dev/null
@@ -0,0 +1,110 @@
+{
+  "stage": [{
+      "name": "seconds",
+      "type": "Control",
+      "actors": [],
+      "size": [10, 200, 1],
+      "position": [0, 0, -2],
+      "parentOrigin": [0.5, 0.5, 0.5],
+      "anchorPoint": [0.5, 1, 0.5],
+      "background": {
+        "visualType": "COLOR",
+        "mixColor": [0.71, 0, 0, 1]
+      },
+      "selected": false,
+      "signals": [
+      {
+        "name": "onStage",
+        "action": "play",
+        "animation": "animate-seconds"
+      }]
+    }, {
+      "name": "minutes",
+      "type": "Control",
+      "actors": [],
+      "size": [11, 180, 1],
+      "position": [0, 0, -2],
+      "parentOrigin": [0.5, 0.5, 0.5],
+      "anchorPoint": [0.5, 1, 0.5],
+      "background": {
+        "visualType": "COLOR",
+        "mixColor": [0, 0.14200000000000013, 0.71, 0.7]
+      },
+      "signals": [
+      {
+        "name": "onStage",
+        "action": "play",
+        "animation": "animate-minutes"
+      }]
+    }, {
+      "name": "hours",
+      "type": "Control",
+      "actors": [],
+      "size": [12, 120, 1],
+      "position": [0, 0, 0],
+      "parentOrigin": [0.5, 0.5, 0.5],
+      "anchorPoint": [0.5, 1, 0.5],
+      "background": {
+        "visualType": "COLOR",
+        "mixColor": [0.057450000000000064, 0.3, 0.0030000000000000027, 0.7]
+      },
+      "signals": [
+      {
+        "name": "onStage",
+        "action": "play",
+        "animation": "animate-hours"
+      }]
+    }],
+  "paths": {},
+  "animations": {
+    "animate-seconds": {
+      "properties": [{
+          "actor": "seconds",
+          "property": "orientation",
+          "value": [0, 0, 360],
+          "alphaFunction": "LINEAR",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 60.0
+          },
+          "gui-builder-timeline-color": "#f5aeb8",
+          "relative": true
+      }],
+      "loop": true
+    },
+    "animate-minutes": {
+      "properties": [{
+          "actor": "minutes",
+          "property": "orientation",
+          "value": [0, 0, 360],
+          "alphaFunction": "LINEAR",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 3600.0
+          },
+          "gui-builder-timeline-color": "#aabcc4",
+          "relative": true
+      }],
+      "loop": true
+    },
+    "animate-hours": {
+      "properties": [{
+          "actor": "hours",
+          "property": "orientation",
+          "value": [0, 0, 360],
+          "alphaFunction": "LINEAR",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 43200.0
+          },
+          "gui-builder-timeline-color": "#9e7f9e",
+          "relative": true
+      }],
+      "loop": true
+    }
+  },
+  "connections": [],
+  "gui-builder-device-height": 600,
+  "gui-builder-device-width": 400,
+  "gui-builder-json-version": "781"
+}
diff --git a/resources/scripts/hello-world.json b/resources/scripts/hello-world.json
new file mode 100644 (file)
index 0000000..6de3782
--- /dev/null
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  // a tree of actors
+  "stage": [{
+    "type": "TextLabel",
+    "text": "Hello World",
+    "parentOrigin": "CENTER"
+  }]
+}
diff --git a/resources/scripts/popup.json b/resources/scripts/popup.json
new file mode 100644 (file)
index 0000000..69ba378
--- /dev/null
@@ -0,0 +1,316 @@
+{
+  "constants": {
+    "CONFIG_SCRIPT_LOG_LEVEL": "Verbose"
+  },
+  "stage": [
+    {
+      "type": "ConfirmationPopup",
+      "name": "confirmationPopup",
+      "parentOrigin": [0.5, 0.55, 0.5],
+      "anchorPoint": "CENTER",
+      "widthResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy": "USE_NATURAL_SIZE",
+      "sizeModeFactor": [0.65, 1.0, 1.0],
+      "tailVisibility": false,
+      "tailPosition": [0, 0, 0],
+      "displayChangeAnimationDuration": 1.0,
+      "contextualMode": "NON_CONTEXTUAL",
+      "animationMode": "ZOOM",
+      "controlOk": "controlOk",
+      "controlCancel": "controlCancel",
+      "connectSignalOkSelected": "clicked",
+      "connectSignalCancelSelected": "clicked",
+      "title": {
+        "type": "TextLabel",
+        "text": "Title text",
+        "textColor": [1, 1, 1, 1]
+      },
+      "content": {
+        "type": "TextLabel",
+        "text": "Content text",
+        "padding": [20, 20, 20, 0],
+        "textColor": [1, 1, 1, 1]
+      },
+      "footer": {
+        "type": "Control",
+        "size": [0, 80, 0],
+        "widthResizePolicy": "FILL_TO_PARENT",
+        "heightResizePolicy": "FIXED",
+        "parentOrigin": "CENTER",
+        "anchorPoint": "CENTER",
+        "actors": [
+          {
+            "type": "PushButton",
+            "name": "controlOk",
+            "parentOrigin": "CENTER_LEFT",
+            "anchorPoint": "CENTER_LEFT",
+            "position": [20, 0, 0],
+            "label": "OK"
+          },
+          {
+            "type": "PushButton",
+            "name": "controlCancel",
+            "parentOrigin": "CENTER_RIGHT",
+            "anchorPoint": "CENTER_RIGHT",
+            "position": [-20, 0, 0],
+            "label": "Cancel"
+          }
+        ]
+      },
+      "signals": [
+        {
+          "name": "controlSignalOk",
+          "action": "set",
+          "actor": "selectionLabel",
+          "property": "text",
+          "value": "User pressed: OK Button"
+        },
+        {
+          "name": "controlSignalOk",
+          "action": "set",
+          "actor": "confirmationPopup",
+          "property": "displayState",
+          "value": "HIDDEN"
+        },
+        {
+          "name": "controlSignalCancel",
+          "action": "set",
+          "actor": "selectionLabel",
+          "property": "text",
+          "value": "User pressed: Cancel Button"
+        },
+        {
+          "name": "controlSignalCancel",
+          "action": "set",
+          "actor": "confirmationPopup",
+          "property": "displayState",
+          "value": "HIDDEN"
+        },
+        {
+          "name": "touchedOutside",
+          "action": "set",
+          "actor": "confirmationPopup",
+          "property": "displayState",
+          "value": "HIDDEN"
+        },
+        {
+          "name": "touchedOutside",
+          "action": "set",
+          "actor": "selectionLabel",
+          "property": "text",
+          "value": "No button pressed, backing touched"
+        }
+      ]
+    },
+    {
+      "type": "ConfirmationPopup",
+      "name": "customAnimationPopup",
+      "parentOrigin": [0.5, 0.55, 0.5],
+      "anchorPoint": "CENTER",
+      "widthResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy": "USE_NATURAL_SIZE",
+      "sizeModeFactor": [0.65, 1.0, 1.0],
+      "tailVisible": false,
+      "tailPosition": [0, 0, 0],
+      "displayChangeAnimationDuration": 1.0,
+      "contextualMode": "NON_CONTEXTUAL",
+      "controlOk": "controlOk",
+      "controlCancel": "controlCancel",
+      "connectSignalOkSelected": "clicked",
+      "connectSignalCancelSelected": "clicked",
+      "animationMode": "CUSTOM",
+      "entryAnimation": {
+        "actor": "customAnimationPopup",
+        "property": "position",
+        "value": [
+          0,
+          0,
+          0
+        ],
+        "alphaFunction": "EASE_OUT",
+        "timePeriod": {
+          "delay": 0.0,
+          "duration": 1.0
+        }
+      },
+      "exitAnimation": {
+        "actor": "customAnimationPopup",
+        "property": "position",
+        "value": [
+          -450,
+          -225,
+          0
+        ],
+        "alphaFunction": "EASE_IN",
+        "timePeriod": {
+          "delay": 0.0,
+          "duration": 1.0
+        }
+      },
+      "title": {
+        "type": "TextLabel",
+        "text": "Title text",
+        "textColor": [1, 1, 1, 1]
+      },
+      "content": {
+        "type": "TextLabel",
+        "text": "Content text",
+        "padding": [20, 20, 20, 0],
+        "textColor": [1, 1, 1, 1]
+      },
+      "footer": {
+        "type": "Control",
+        "size": [0, 80, 0],
+        "widthResizePolicy": "FILL_TO_PARENT",
+        "heightResizePolicy": "FIXED",
+        "parentOrigin": "CENTER",
+        "anchorPoint": "CENTER",
+        "actors": [
+          {
+            "type": "PushButton",
+            "name": "controlOk",
+            "parentOrigin": "CENTER_LEFT",
+            "anchorPoint": "CENTER_LEFT",
+            "position": [20, 0, 0],
+            "label": "OK"
+          },
+          {
+            "type": "PushButton",
+            "name": "controlCancel",
+            "parentOrigin": "CENTER_RIGHT",
+            "anchorPoint": "CENTER_RIGHT",
+            "position": [-20, 0, 0],
+            "label": "Cancel"
+          }
+        ]
+      },
+      "signals": [
+        {
+          "name": "controlSignalOk",
+          "action": "set",
+          "actor": "selectionLabel",
+          "property": "text",
+          "value": "User pressed: OK Button"
+        },
+        {
+          "name": "controlSignalOk",
+          "action": "set",
+          "actor": "customAnimationPopup",
+          "property": "displayState",
+          "value": "HIDDEN"
+        },
+        {
+          "name": "controlSignalCancel",
+          "action": "set",
+          "actor": "selectionLabel",
+          "property": "text",
+          "value": "User pressed: Cancel Button"
+        },
+        {
+          "name": "controlSignalCancel",
+          "action": "set",
+          "actor": "customAnimationPopup",
+          "property": "displayState",
+          "value": "HIDDEN"
+        },
+        {
+          "name": "touchedOutside",
+          "action": "set",
+          "actor": "customAnimationPopup",
+          "property": "displayState",
+          "value": "HIDDEN"
+        },
+        {
+          "name": "touchedOutside",
+          "action": "set",
+          "actor": "selectionLabel",
+          "property": "text",
+          "value": "No button pressed, backing touched"
+        }
+      ]
+    },
+    {
+      "type": "PopupToast",
+      "name": "toast",
+      "widthResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy": "USE_NATURAL_SIZE",
+      "sizeModeFactor": [0.85, 0, 0],
+      "title": {
+        "type": "TextLabel",
+        "widthResizePolicy": "FILL_TO_PARENT",
+        "heightResizePolicy": "USE_NATURAL_SIZE",
+        "parentOrigin": "CENTER",
+        "anchorPoint": "CENTER",
+        "text": "This is a toast popup. \nIt will auto-hide itself.",
+        "textColor": [1, 1, 1, 1],
+        "multiLine": true,
+        "horizontalAlignment": "CENTER",
+        "verticalAlignment": "CENTER",
+        "padding": [20.0, 20.0, 20.0, 20.0]
+      }
+    },
+    {
+      "type": "PushButton",
+      "name": "popupTriggerButton",
+      "parentOrigin": [0.1, 0.1, 0.5],
+      "anchorPoint": "TOP_LEFT",
+      "widthResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [0.38, 0.14, 1.0],
+      "label": "Popup",
+      "signals": [{
+        "name": "clicked",
+        "action": "set",
+        "actor": "confirmationPopup",
+        "property": "displayState",
+        "value": "SHOWN"
+      }]
+    },
+    {
+      "type": "PushButton",
+      "name": "animatedPopupTriggerButton",
+      "parentOrigin": [0.9, 0.1, 0.5],
+      "anchorPoint": "TOP_RIGHT",
+      "widthResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [0.38, 0.14, 1.0],
+      "label": "Animated",
+      "signals": [{
+        "name": "clicked",
+        "action": "set",
+        "actor": "customAnimationPopup",
+        "property": "displayState",
+        "value": "SHOWN"
+      }]
+    },
+    {
+      "type": "PushButton",
+      "name": "toastTriggerButton",
+      "parentOrigin": [0.5, 1.0, 0.5],
+      "anchorPoint": "BOTTOM_CENTER",
+      "widthResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [0.5, 0.14, 1.0],
+      "label": "Push for Toast",
+      "signals": [{
+        "name": "clicked",
+        "action": "set",
+        "actor": "toast",
+        "property": "displayState",
+        "value": "SHOWN"
+      }]
+    },
+    {
+      "type": "TextLabel",
+      "name": "selectionLabel",
+      "parentOrigin": [0.5, 0.22, 0.5],
+      "anchorPoint": "TOP_CENTER",
+      "widthResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "heightResizePolicy": "SIZE_RELATIVE_TO_PARENT",
+      "sizeModeFactor": [0.9, 0.14, 1.0],
+      "text": "No selection made",
+      "horizontalAlignment": "CENTER",
+      "verticalAlignment": "CENTER"
+    }
+  ]
+}
diff --git a/resources/scripts/shader-effect-ripple.json b/resources/scripts/shader-effect-ripple.json
new file mode 100644 (file)
index 0000000..24a5fb3
--- /dev/null
@@ -0,0 +1,67 @@
+{
+  "stage": [
+    {
+      "type": "ImageView",
+      "name": "Image1",
+      "position": [
+        0.40461349487305,
+        0.9150390625,
+        0.0
+      ],
+      "parentOrigin": [0.5, 0.5, 0.5],
+      "widthResizePolicy":"FILL_TO_PARENT",
+      "heightResizePolicy":"DIMENSION_DEPENDENCY",
+      "image": {
+        "url": "{DEMO_IMAGE_DIR}gallery-medium-25.jpg",
+        "desiredWidth": 400,
+        "desiredHeight": 400,
+        "shader": {
+          "fragmentShader": [
+              "precision mediump float;",
+              "uniform sampler2D sTexture;",
+              "uniform vec4 uColor;",
+              "uniform float uAmplitude;",
+              "uniform float uTime;",
+              "varying vec2 vTexCoord;",
+              "void main()",
+              "{",
+              "  highp vec2 pos = -1.0 + 2.0 * vTexCoord;",
+              "  highp float len = length(pos);",
+              "  highp vec2 texCoord = vTexCoord + pos/len * sin( len * 12.0 - uTime * 4.0 ) * uAmplitude;",
+              "  gl_FragColor = texture2D(sTexture, texCoord) * uColor;",
+              "}"
+            ]
+          }
+      },
+      "animatableProperties": {
+        "uAmplitude": 0.02,
+        "uTime": 0.0
+      },
+      "signals": [
+        {
+          "name": "onStage",
+          "action": "play",
+          "animation": "Animation_1"
+        }
+      ]
+    }
+  ],
+  "animations": {
+    "Animation_1": {
+      "loop":true,
+      "properties": [
+        {
+          "actor": "Image1",
+          "property": "uTime",
+          "value": 36.0,
+          "alphaFunction": "LINEAR",
+          "timePeriod": {
+            "delay": 0,
+            "duration": 20.0
+          },
+          "guiBuilderTimelineColor": "#8dc0da"
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/scripts/slider-test-style.json b/resources/scripts/slider-test-style.json
new file mode 100644 (file)
index 0000000..c906566
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+//******************************************************************************
+//
+// Default style theme for Tizen Light theme, The values should come from
+// UX design document.
+//
+//******************************************************************************
+{
+  "styles": {
+    "slider": {
+      "anchorPoint": [0.5, 0.0, 0.0],
+      "parentOrigin": [0.5, 0.0, 0.0],
+      "position": [0, 300, 0],
+      "size": [480, 72, 1],
+      "lowerBound": 0,
+      "upperBound": 10,
+      "showPopup": true,
+      "showValue": true,
+      "valuePrecision": 2,
+      "value": 0.0
+    }
+  }
+}
diff --git a/resources/scripts/slider.json b/resources/scripts/slider.json
new file mode 100644 (file)
index 0000000..d02bcae
--- /dev/null
@@ -0,0 +1,140 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  "stage": [{
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 144, 0],
+    "size": [480, 72, 1],
+    "lowerBound": 0,
+    "upperBound": 1,
+    "showPopup": true,
+    "showValue": true,
+    "valuePrecision": 2,
+    "value": 0.0
+  }, {
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 224, 0],
+    "size": [300, 72, 1],
+    "lowerBound": 1,
+    "upperBound": 10,
+    "showPopup": false,
+    "showValue": true,
+    "valuePrecision": 0,
+    "value": 5.0
+  }, {
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 304, 0],
+    "size": [300, 72, 1],
+    "lowerBound": 0,
+    "upperBound": 5,
+    "showPopup": false,
+    "showValue": false,
+    "value": 0.0,
+    "markTolerance": 0.1,
+    "marks": [0, 1, 2, 3, 4, 5]
+  }, {
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 384, 0],
+    "size": [480, 72, 1],
+    "lowerBound": 0,
+    "upperBound": 5,
+    "showPopup": false,
+    "showValue": false,
+    "value": 0.0,
+    "markTolerance": 0.1,
+    "snapToMarks": true,
+    "marks": [0, 1, 2, 3, 4, 5]
+  }, {
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 464, 0],
+    "size": [480, 72, 1],
+    "lowerBound": 5,
+    "upperBound": 100,
+    "showPopup": true,
+    "showValue": true,
+    "valuePrecision": 0,
+    "value": 50.0,
+    "trackVisual": {
+      "size": [0, 10]
+    },
+    "handleVisual": {
+      "size": [48, 48]
+    }
+  }, {
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 544, 0],
+    "size": [480, 72, 1],
+    "lowerBound": 10,
+    "upperBound": 100,
+    "showPopup": true,
+    "showValue": true,
+    "valuePrescision": 0,
+    "value": 100.0,
+    "trackVisual": {
+      "url": "{DEMO_IMAGE_DIR}button-up-14.9.png",
+      "size": [0, 30]
+    },
+    "handleVisual": {
+      "url": "{DEMO_IMAGE_DIR}blocks-ball.png",
+      "size": [48, 48]
+    },
+    "progressVisual": {
+      "url": "{DEMO_IMAGE_DIR}button-down.9.png"
+    }
+  }, {
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 624, 0],
+    "size": [480, 72, 1],
+    "lowerBound": 10,
+    "upperBound": 100,
+    "showPopup": true,
+    "showValue": true,
+    "valuePrecision": 0,
+    "value": 50.0,
+    "trackVisual": {
+      "size": [0, 10]
+    },
+    "handleVisual": {
+      "size": [48, 48]
+    }
+  }, {
+    "type": "Slider",
+    "parentOrigin": "TOP_CENTER",
+    "position": [0, 704, 0],
+    "size": [480, 72, 1],
+    "lowerBound": 10,
+    "upperBound": 100,
+    "showPopup": true,
+    "showValue": true,
+    "valuePrecision": 0,
+    "value": 50.0,
+    "trackVisual": {
+      "size": [0, 10]
+    },
+    "handleVisual": {
+      "size": [48, 48]
+    },
+    "disabledColor": [1, 0, 0, 1]
+  }]
+}
diff --git a/resources/scripts/super-blur-view.json b/resources/scripts/super-blur-view.json
new file mode 100644 (file)
index 0000000..d8b1de6
--- /dev/null
@@ -0,0 +1,79 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  "constants": {
+    "TEXT_VIEW_SIZE": [200, 150, 1]
+  },
+  "animations": {
+    "blur": {
+      "duration": 1,
+      "properties": [{
+        "actor": "superBlur",
+        "property": "blurStrength",
+        "value": 1,
+        "timePeriod": {
+          "delay": 0,
+          "duration": 1
+        }
+      }]
+    },
+    "clear": {
+      "duration": 1,
+      "properties": [{
+        "actor": "superBlur",
+        "property": "blurStrength",
+        "value": 0,
+        "timePeriod": {
+          "delay": 0,
+          "duration": 1
+        }
+      }]
+    }
+  },
+  "stage": [
+    // SuperBlurView
+    {
+      "type": "SuperBlurView",
+      "name": "superBlur",
+      "parentOrigin": "TOP_CENTER",
+      "anchorPoint": "TOP_CENTER",
+      "size": [800, 1280, 0],
+      "imageUrl": "{DEMO_IMAGE_DIR}background-4.jpg"
+    },
+
+    // Button to blur/clear
+    {
+      "type": "PushButton",
+      "name": "toggleButton",
+      "parentOrigin": "BOTTOM_CENTER",
+      "anchorPoint": "BOTTOM_CENTER",
+      "position": [0, 0, 0],
+      "size": [200, 100, 0],
+      "label": "Blur",
+      "siblingOrder": 1,
+      "signals": [{
+        "name": "pressed",
+        "action": "play",
+        "animation": "blur"
+      }, {
+        "name": "released",
+        "action": "play",
+        "animation": "clear"
+      }]
+    }
+  ]
+}
diff --git a/resources/scripts/table-view.json b/resources/scripts/table-view.json
new file mode 100644 (file)
index 0000000..4d699a5
--- /dev/null
@@ -0,0 +1,113 @@
+/*
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  // a tree of actors
+  /*
+   *  4 by 4 table:
+   * |------------------------------------|
+   * |          |    2(right,top)|   |    |
+   * |  -  -  - |----------------|---|----|
+   * |          |                |   |    |
+   * |          |                |   |    |
+   * |          |                |   |    |
+   * |  -  -  - |  -  -  -  -  - |--------|
+   * |          |                |   |    |
+   * |    1     |                |   |    |
+   * |          |  3             | 4 |    |
+   * |          |aligned to      |   |    |
+   * |          |(left, center)  |   |    |
+   * |  -  -  - |  -  -  -  -  - |--------|
+   * |          |                |   '    |
+   * |          |                |   '    |
+   * |          |                |   5    |
+   * |          |                |   '    |
+   * |          |                |   '    |
+   * |------------------------------------|
+  */
+
+  "stage": [{
+      "name":"simpleTable",
+      "type":"TableView",
+      "background":{
+        "visualType": "COLOR",
+        "mixColor": [0.5,0.5,0,1]
+        },
+      "parentOrigin": "CENTER",
+      "size":[400,400,1],
+      "rows": 4,
+      "columns": 4,
+      "cellPadding": [10, 5],
+      "layoutRows": {  // set the height of the rows
+        "0": { "policy": "fixed", "value": 40 },
+        "1": { "policy": "relative", "value": 0.33 },
+        "2": { "policy": "fit", "value": 0 }
+      },
+      "layoutColumns": { // set the widths of the columns
+        "0": { "policy": "fit", "value": 0 },
+        "2": { "policy": "relative", "value": 0.2 },
+        "3": { "policy": "fixed", "value": 30 }
+      },
+      "actors": [{
+          "name":"gallery1",
+          "type":"ImageView",
+          "heightResizePolicy":"FILL_TO_PARENT",
+          "image": "{DEMO_IMAGE_DIR}gallery-small-1.jpg",
+          "properties": { // properties registered dynamically
+            "cellIndex": [0,0], // property to specify the top-left cell this child occupies
+            "rowSpan":4, // property to specify how many rows this child occupies, if not set, default value is 1
+            "columnSpan":1 // property to specify how many columns this child occupies, if nor set, defualt cvalue is 1
+          }
+        },{
+          "name":"gallery2",
+          "type":"ImageView",
+          "heightResizePolicy":"FILL_TO_PARENT",
+          "image": "{DEMO_IMAGE_DIR}gallery-small-2.jpg",
+          "properties": { // properties registered dynamically
+            "cellIndex": [0,1],
+            "cellHorizontalAlignment": "right" // property to specify how to align horizontally inside the cells, if not set, default value is 'left'
+          }
+        },{
+          "name":"gallery3",
+          "type":"ImageView",
+          "image": "{DEMO_IMAGE_DIR}gallery-small-3.jpg",
+          "properties": {
+            "cellIndex":[1,1],
+            "rowSpan":3,
+            "cellHorizontalAlignment": "left",// property to specify how to align horizontally inside the cells, if not set, default value is 'left'
+            "cellVerticalAlignment": "center" // property to specify how to align vertically inside the cells, if not set, default value is 'top'
+          }
+        }, {
+          "name":"gallery4",
+          "type":"ImageView",
+          "widthResizePolicy":"FILL_TO_PARENT",
+          "image": "{DEMO_IMAGE_DIR}gallery-small-4.jpg",
+          "properties": {
+            "cellIndex":[2,2]
+          }
+        }, {
+          "name":"gallery5",
+          "type":"ImageView",
+          "widthResizePolicy":"FILL_TO_PARENT",
+          "heightResizePolicy":"FILL_TO_PARENT",
+          "image": "{DEMO_IMAGE_DIR}gallery-small-5.jpg",
+          "properties": {
+            "cellIndex":[3,2],
+            "columnSpan": 2
+          }
+        }]
+    }]
+}
diff --git a/resources/shaders/pbr_shader.fsh b/resources/shaders/pbr_shader.fsh
new file mode 100644 (file)
index 0000000..ffbdbe4
--- /dev/null
@@ -0,0 +1,124 @@
+#version 300 es
+
+precision highp float;
+
+uniform sampler2D sAlbedoMetal;
+uniform sampler2D sNormalRoughness;
+uniform samplerCube sDiffuse;
+uniform samplerCube sSpecular;
+
+// Transformation matrix of the cubemap texture
+
+// Number of mip map levels in the texture
+uniform float uMaxLOD;
+
+// Number of mip map levels in the texture
+uniform float uRoughness;
+
+// Number of mip map levels in the texture
+uniform float uMetallic;
+
+in vec2 vUV;
+in vec3 vNormal;
+in vec3 vTangent;
+in vec3 vBitangent;
+in vec3 vViewVec;
+in mat4 uCubeMatrix;
+
+out vec4 FragColor;
+
+// Functions for BRDF calculation come from
+// https://www.unrealengine.com/blog/physically-based-shading-on-mobile
+// Based on the paper by Dimitar Lazarov
+// http://blog.selfshadow.com/publications/s2013-shading-course/lazarov/s2013_pbs_black_ops_2_notes.pdf
+vec3 EnvBRDFApprox( vec3 SpecularColor, float Roughness, float NoV )
+{
+  const vec4 c0 = vec4( -1.0, -0.0275, -0.572, 0.022 );
+  const vec4 c1 = vec4( 1.0, 0.0425, 1.04, -0.04 );
+  vec4 r = Roughness * c0 + c1;
+  float a004 = min( r.x * r.x, exp2( -9.28 * NoV ) ) * r.x + r.y;
+  vec2 AB = vec2( -1.04, 1.04 ) * a004 + r.zw;
+
+  return SpecularColor * AB.x + AB.y;
+}
+
+void main()
+{
+  // We get information from the maps (albedo, normal map, roughness, metalness
+  // I access the maps in the order they will be used
+  vec4 normalRoughness = texture(sNormalRoughness, vUV.st);
+  vec3 normalMap = normalRoughness.rgb;
+  float roughness = normalRoughness.a * uRoughness;
+
+  vec4 albedoMetal = texture(sAlbedoMetal, vUV.st);
+  vec3 albedoColor = albedoMetal.rgb;
+  float metallic = albedoMetal.a * uMetallic;
+
+  //Normalize vectors
+  vec3 normal = normalize(vNormal);
+  vec3 tangent = normalize(vTangent);
+  vec3 bitangent = normalize(vBitangent);
+
+  vec3 viewVec = normalize(vViewVec);
+
+  // Create Inverse Local to world matrix
+  mat3 vInvTBN = mat3(tangent, bitangent, normal);
+
+  // Get normal map info in world space
+  normalMap = normalize((normalMap - 0.5) * 2.0);
+  vec3 newNormal = vInvTBN * normalMap.rgb;
+
+  // Calculate normal dot view vector
+  float NoV = clamp(dot(newNormal, -viewVec), 0.0, 1.0);
+
+  // Reflect vector
+  vec3 reflectionVec = reflect(viewVec, newNormal);
+
+  //transform it now to environment coordinates (used when the environment rotates)
+  vec3 reflecCube = (uCubeMatrix * vec4(reflectionVec,0)).xyz;
+  reflecCube = normalize(reflecCube);
+
+  //transform it now to environment coordinates
+  vec3 normalCube = (uCubeMatrix * vec4(newNormal,0)).xyz;
+  normalCube = normalize(normalCube);
+
+  // Get irradiance from diffuse cubemap
+  vec3 irradiance = texture(sDiffuse, normalCube).rgb;
+
+  // Way to access the mip map level - copied from UE
+  const float REFLECTION_CAPTURE_ROUGHEST_MIP = 1.;
+  const float REFLECTION_CAPTURE_ROUGHNESS_MIP_SCALE = 1.2;
+  float LevelFrom1x1 = REFLECTION_CAPTURE_ROUGHEST_MIP - REFLECTION_CAPTURE_ROUGHNESS_MIP_SCALE * log2(roughness);
+  // Note: must match GReflectionCaptureSize
+  // We need to subtract 2 levels from the uMaxLOD because we don't have the smallest mipmaps
+  // (and because these levels are very small 1x1, 2x2, etc.)
+  float finalLod = (uMaxLOD - 2.0) - 1.0 - LevelFrom1x1;
+
+  // calculate the convexity and increase the reflectance lobe
+  float convexity = length(fwidth(newNormal));
+  finalLod += convexity * (uMaxLOD - 2.0);
+
+  // Access reflection color using roughness value
+  vec3 reflectionColor = textureLod(sSpecular, reflecCube, finalLod).rgb;
+
+  // For increasing contrast a little bit - It should be Gamma correction (2.2) but it gets to dark
+  albedoColor = pow(albedoColor,vec3(1.2));
+
+  // We use DielectricColor of a plastic (almost everything)
+  // http://blog.selfshadow.com/publications/s2014-shading-course/hoffman/s2014_pbs_physics_math_slides.pdf
+  vec3 DielectricSpecular = vec3(0.04);
+  vec3 DiffuseColor = albedoColor - albedoColor * metallic;  // 1 mad
+  vec3 SpecularColor = (DielectricSpecular - DielectricSpecular * metallic) + albedoColor * metallic; //2 mad
+
+  // Calculate specular color using Magic Function (takes original rougness and normal dot view
+  vec3 specColor =  reflectionColor.rgb * EnvBRDFApprox(SpecularColor, roughness, NoV);// * irradiance;
+
+  // Multiply the result by albedo texture and do energy conservation
+  vec3 diffuseColor = irradiance * DiffuseColor;
+
+  // Final color is the sum of the diffuse and specular term
+  vec3 finalColor = diffuseColor + specColor;
+  //FragColor = vec4(1.0, 1.0, 1.0, 1.0);
+  finalColor = finalColor / (finalColor + vec3(1));
+  FragColor = vec4(finalColor,1.0);
+}
diff --git a/resources/shaders/pbr_shader.vsh b/resources/shaders/pbr_shader.vsh
new file mode 100644 (file)
index 0000000..a8213b4
--- /dev/null
@@ -0,0 +1,40 @@
+#version 300 es
+
+in vec3 aPosition;
+in vec2 aTexCoord;
+in vec3 aNormal;
+in vec3 aTangent;
+
+out vec2 vUV;
+out vec3 vNormal;
+out vec3 vTangent;
+out vec3 vBitangent;
+out vec3 vViewVec;
+out mat4 uCubeMatrix;
+
+uniform vec3 uSize;
+
+uniform mat4 uMvpMatrix;
+uniform mat3 uNormalMatrix;
+uniform mat4 uModelMatrix;
+uniform mat4 uModelView;
+uniform mat4 uViewMatrix;
+
+
+void main()
+{
+  vec4 vPosition = vec4( aPosition * uSize , 1.0);
+  gl_Position = uMvpMatrix * vPosition;
+  vUV = aTexCoord;
+
+  vNormal = normalize(uNormalMatrix * aNormal);
+
+  vTangent = normalize(uNormalMatrix * aTangent);
+
+  vBitangent = cross(vNormal, vTangent);
+
+  vViewVec = (uModelView * vPosition).xyz;
+
+  uCubeMatrix  = transpose(uModelView);
+
+}
diff --git a/resources/shaders/raymarch_sphere_shaded.fsh b/resources/shaders/raymarch_sphere_shaded.fsh
new file mode 100644 (file)
index 0000000..7e7d6b8
--- /dev/null
@@ -0,0 +1,124 @@
+/*
+ * Fragment shader for textured quad
+ */
+varying mediump vec2 vTexCoord;
+varying mediump vec2 vRayCastCoord;
+
+uniform mediump float uRadius;
+uniform mediump float uAdjuster;
+
+#define CAMERA_Z_POSITION 1.0  // gives us a FOV of 90 degrees if Plane of projection is at Z = 0 with size 2x2
+#define SPHERE_Z_POSITION -1.0 // Sphere placed behind Plane of projection
+#define SPHERE_RADIUS 0.5
+
+
+// signed distance function
+// returns
+// < 0 if inside sphere
+// 0 == on sphere surface
+// > 1 if outside sphere
+mediump float distanceToSphere( mediump vec3 point, mediump vec3 sphereCenter, mediump float radius )
+{
+  return distance( point, sphereCenter ) - radius;
+}
+
+// Simulate a simple spot light ( there's no ambient light in this example)
+mediump vec4 lightSphere( mediump vec3 point, mediump vec3 sphereCenter )
+{
+   // the normal = direction of the vector from the sphere center to the point on the surface of the sphere
+   mediump vec3 normal = normalize( point - sphereCenter );
+
+   // Animate the light around the sphere in a circular motion
+   mediump vec3 lightDirection = vec3( sin(uAdjuster)+uRadius, cos ( uAdjuster )+uRadius, CAMERA_Z_POSITION  );
+
+   // calculate the dot product to give us the intensity of the light bouncing off the surface
+   mediump float value =  dot( normal , lightDirection);
+
+   // add a purple tint to the final color by adjust green channel by 0.84
+   return vec4( value, value * 0.843, value , 1.0);
+
+}
+
+void main()
+{
+  // The fragment shader is called for every pixel that is to be drawn for our
+  // quad geometry ( 2 triangles ). The size and number of pixels drawn is
+  // determined by the size / position of the quad and the DALi camera position.
+  //
+  // For this example the vRayCastCoord is currently set to the range -1 to 1 by the Vertex Shader
+  //
+  // (-1,-1)
+  //    |--------------|
+  //    |       |      |
+  //    |       |      |
+  //    |_____(0,0)____|
+  //    |       |      |
+  //    |       |      |
+  //    |_______|______|(1,1)
+
+  mediump vec3 pixelPosition = vec3( vRayCastCoord, 0.0 );
+
+  // uncomment line below to see red / green colors only visible when x > 0, or y > 0
+  // gl_FragColor = vec4( pixelPosition, 1.0 ); return;
+
+  // We are going to assume there is a virtual camera infront of the plane of projection
+  // Side view:
+  //                projection
+  //                  plane (2x2)
+  //                  /|
+  //                /  |
+  //              /    |      /----\
+  //        Camera---->|     (SPHERE)
+  //              \    |      \----/
+  //                \  |
+  //                  \|
+  //      z=1        z=0     z  = -1
+  //
+  //
+  //  Why z=1 for camera? Our projection plane is at z = 0, with plane size 2x2 which gives a 90 degree FOV
+  // from the camera to the projection plane
+  //
+  mediump vec3 cameraPos = vec3( 0.0, 0.0, CAMERA_Z_POSITION );
+
+  // calculate the ray direction from the camera to the pixel on the quad
+  mediump vec3 rayDirection = normalize(  pixelPosition - cameraPos );
+
+  // uncomment to visualize the normalized ray direction vector
+  // gl_FragColor = vec4( rayDirection, 1.0 ); return;
+
+  // Setup the position on radius of our virtual sphere
+  mediump vec3 spherePosition = vec3( 0.0, 0.0, SPHERE_Z_POSITION );
+  mediump float sphereRadius = SPHERE_RADIUS + uRadius ; // use uRadius to animate radius from small to large
+
+  // We have the direction of the ray from the camera, now see if it
+  // hits our sphere using ray marching
+  // starting at a pixel position 0 on our projection plane, step in the direction
+  // of ray from the camera to see if it hits our sphere
+  // The concept of ray marching is the step size = minimum distance to an object
+
+  mediump vec3 hitPoint = pixelPosition;
+
+  int steps = 5;
+
+  for( int i = 0; i < steps ; ++i )
+  {
+      // calculate the shortest distance between our hitPoint and the sphere
+      mediump float distance = distanceToSphere( hitPoint, spherePosition, sphereRadius );
+
+      // if the distance < 0 then were inside the sphere
+      // if the distance > 0 then were outside the sphere
+      // if we're close to the edge of the sphere, then draw it
+      if( distance < 0.01 )
+      {
+        gl_FragColor = lightSphere(  hitPoint, spherePosition );
+        return;
+      }
+
+      // move the hit point along by the distance to the spin the direction of the ray
+      hitPoint +=  rayDirection * distance;
+
+  }
+  // no hit, color the pixel based on it's x,y position
+  gl_FragColor = vec4(pixelPosition.x,pixelPosition.y,0.5,1);
+
+}
\ No newline at end of file
diff --git a/resources/shaders/raymarch_sphere_shaded.vsh b/resources/shaders/raymarch_sphere_shaded.vsh
new file mode 100644 (file)
index 0000000..fcc1df3
--- /dev/null
@@ -0,0 +1,51 @@
+attribute mediump vec2 aPosition;
+uniform   mediump mat4 uMvpMatrix;  // DALi shader builtin
+uniform   mediump vec3 uSize; // DALi shader builtin
+
+varying mediump vec2 vTexCoord;
+varying mediump vec2 vRayCastCoord;
+void main()
+{
+  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);
+  vertexPosition.xyz *= uSize;
+
+  // In this ray march example we supply the fragment shader with 0..1 UV texture co-ordinates
+  // incase someone wants to extend the code and add texture mapping to it.
+  // DALi geometry typically ranges from -0.5 to 0.5, hence the +0.5 to make it 0..1
+
+  vTexCoord = aPosition + vec2(0.5);
+
+
+  // Our UV texture co-ordinates for the quad geometry should now range from 0..1
+  //
+  // (0,0)
+  //    |--------|
+  //    |      / |
+  //    |    /   |
+  //    |  /     |
+  //    |/-------|(1,1)
+  //
+  //
+  //
+  // We're going to use the UV co-ordinates as our virtual screen / plane of projection on to our
+  // raycasted scene.
+  //
+  // We first modify the range to be from -1,-1 to 1,1 with 0,0 in the centre. Then
+  // pass this as a varying value to the fragment shader.
+  //
+  //
+  // (-1,-1)
+  //    |--------------|
+  //    |       |      |
+  //    |       |      |
+  //    |_____(0,0)____|
+  //    |       |      |
+  //    |       |      |
+  //    |_______|______|(1,1)
+  //
+  //
+
+  vRayCastCoord = (2.0 * vTexCoord ) - 1.0 ;
+
+  gl_Position = uMvpMatrix * vertexPosition;
+}
\ No newline at end of file
diff --git a/resources/style/android/animated-gradient-call-active-style.json b/resources/style/android/animated-gradient-call-active-style.json
new file mode 100644 (file)
index 0000000..d73dc38
--- /dev/null
@@ -0,0 +1,76 @@
+{
+  "styles": {
+    "IncomeBackground": {
+      "background": {
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "RADIAL",
+        "unitType": "USER_SPACE",
+        "startPosition": [0.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.1333, 0.1647, 0.2941, 1.0],
+        "endColor": [0.0784, 0.3961, 0.4863, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.0,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "BACKWARD",
+          "duration": 1.25,
+          "delay": 0.0,
+          "repeat": -1,
+          "repeatDelay": 0.0,
+          "motionType": "LOOP",
+          "easingType": "LINEAR"
+        }
+      }
+    },
+    "ActiveBackground":{
+      "background":{
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "RADIAL",
+        "unitType": "USER_SPACE",
+        "startPosition": [0.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.1066, 0.1318, 0.2353, 1.0],
+        "endColor": [0.0627, 0.3169, 0.3890, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.0,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "BACKWARD",
+          "duration": 4.0,
+          "delay": 0.0,
+          "repeat": -1,
+          "repeatDelay": 0.0,
+          "motionType": "LOOP",
+          "easingType": "LINEAR"
+        }
+      }
+    },
+    "DeclineButton":{
+      "background":{
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "LINEAR",
+        "unitType": "USER_SPACE",
+        "startPosition": [-180.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.8941, 0.0078, 0.0078, 1.0],
+        "endColor": [1.0000, 0.5961, 0.0000, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.78539816,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "FORWARD",
+          "duration": 1.8,
+          "delay": -1.2,
+          "repeat": -1,
+          "repeatDelay": 1.2,
+          "motionType": "LOOP",
+          "easingType": "IN_OUT"
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/android/base-theme.json b/resources/style/android/base-theme.json
new file mode 100644 (file)
index 0000000..b477b96
--- /dev/null
@@ -0,0 +1,206 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ConfirmationPopup":{
+      "popupBackgroundImage":"{APPLICATION_RESOURCE_PATH}/images/00_popup_bg.9.png"
+    },
+
+    "CustomPopupStyle":{
+      "popupBackgroundImage":"{APPLICATION_RESOURCE_PATH}/images/popup.9.png",
+      "popupBackgroundBorder":[0,4,4,0],
+      "tailUpImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-up.png",
+      "tailDownImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-down.png",
+      "tailLeftImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-left.png",
+      "tailRightImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-right.png"
+    },
+
+    "DemoTileBase":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "color":[0.4, 0.6, 0.9, 0.6],
+          "visuals":
+          {
+            "image":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/demo-tile-texture.9.png",
+// TILE_BACKGROUND_ALPHA
+// This shader takes a texture.
+// An alpha discard is performed.
+// The shader uses the tiles position within the scroll-view page and the scroll-views rotation position to create a parallax effect.
+              "shader":
+              {
+                "fragmentShader":[
+                  "  varying mediump vec2  vTexCoord;",
+                  "  uniform lowp    vec4  uColor;",
+                  "  uniform sampler2D     sTexture;",
+                  "  uniform mediump vec3  uCustomPosition;",
+                  "",
+                  "  void main()",
+                  "  {",
+                  "    if( texture2D( sTexture, vTexCoord ).a <= 0.0001 )",
+                  "    {",
+                  "      discard;",
+                  "    }",
+                  "",
+                  "    mediump vec2 wrapTexCoord = vec2( ( vTexCoord.x / 4.0 ) + ( uCustomPosition.x / 4.0 ) + ( uCustomPosition.z / 2.0 ), vTexCoord.y / 4.0 );",
+                  "    mediump vec4 color = texture2D( sTexture, wrapTexCoord );",
+                  "    mediump float positionWeight = ( uCustomPosition.y + 0.3 ) * color.r * 2.0;",
+                  "",
+                  "    gl_FragColor = vec4( positionWeight, positionWeight, positionWeight, 0.9 ) * uColor + vec4( uColor.xyz, 0.0 );",
+                  "  }"
+                ]
+              }
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "color":[0.3, 0.5, 0.8, 0.5],
+          "visuals":
+          {
+            "image":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/demo-tile-texture-focused.9.png",
+// TILE_BACKGROUND_ALPHA
+// This shader takes a texture.
+// An alpha discard is performed.
+// The shader uses the tiles position within the scroll-view page and the scroll-views rotation position to create a parallax effect.
+              "shader":
+              {
+                "fragmentShader":[
+                  "  varying mediump vec2  vTexCoord;",
+                  "  uniform lowp    vec4  uColor;",
+                  "  uniform sampler2D     sTexture;",
+                  "  uniform mediump vec3  uCustomPosition;",
+                  "",
+                  "  void main()",
+                  "  {",
+                  "    if( texture2D( sTexture, vTexCoord ).a <= 0.0001 )",
+                  "    {",
+                  "      discard;",
+                  "    }",
+                  "",
+                  "    mediump vec2 wrapTexCoord = vec2( ( vTexCoord.x / 4.0 ) + ( uCustomPosition.x / 4.0 ) + ( uCustomPosition.z / 2.0 ), vTexCoord.y / 4.0 );",
+                  "    mediump vec4 color = texture2D( sTexture, wrapTexCoord );",
+                  "    mediump float positionWeight = ( uCustomPosition.y + 0.3 ) * color.r * 2.0;",
+                  "",
+                  "    gl_FragColor = vec4( positionWeight, positionWeight, positionWeight, 0.9 ) * uColor + vec4( uColor.xyz, 0.0 );",
+                  "  }"
+                ]
+              }
+            }
+          }
+        }
+      }
+    },
+    "FocusActor":
+    {
+      "visuals":
+      {
+        "image":
+        {
+          "url":"{APPLICATION_RESOURCE_PATH}/images/tile-focus.9.png"
+        }
+      }
+    },
+    "DemoTileBorder":
+    {
+      "visuals":
+      {
+        "image":
+        {
+          "url":"{APPLICATION_RESOURCE_PATH}/images/item-background.9.png" // TILE_BACKGROUND
+        }
+      }
+    },
+    "TextLabelRosemary":
+    {
+      "fontFamily":"Rosemary"
+    },
+    "TextLabel":
+    {
+      "fontStyle":{"weight":"normal"},
+      "pointSize":8
+    },
+    "LauncherLabel":
+    {
+      "pointSize":8
+    },
+
+    "ToolbarLabel":
+    {
+      "pointSize":8
+    },
+
+    "BuilderLabel":
+    {
+      "pointSize":8
+    },
+
+    "ScrollView":
+    {
+      "overshootEffectColor":"B018"
+    },
+
+    "ImageScalingGroupLabel":
+    {
+      "pointSize":8
+    },
+
+    "ImageScalingButton":
+    {
+      "label":{
+        "pointSize":8
+      }
+    },
+//
+// Simple Visuals Application Style section
+//
+    "MyControl":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-13.png"
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-83.png"
+            }
+          }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/android/basic-light-theme.json b/resources/style/android/basic-light-theme.json
new file mode 100644 (file)
index 0000000..ae863f2
--- /dev/null
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+   //
+   // Simple Visuals Application styling
+   //
+    "BasicLightButton":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+            "unselectedBackgroundVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+            }
+        },
+        "FOCUSED":
+        {
+            "unselectedBackgroundVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+            }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/android/contact-cards-example-theme.json b/resources/style/android/contact-cards-example-theme.json
new file mode 100644 (file)
index 0000000..3f4ea12
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ContactNameTextLabel":
+    {
+      "textColor": [ 0, 0, 0, 1 ],
+      "horizontalAlignment": "CENTER",
+      "pointSize": 8
+    },
+
+    "ContactDetailTextLabel":
+    {
+      "textColor": [ 0, 0, 0, 1 ],
+      "multiLine": true,
+      "pointSize": 8
+    }
+  }
+}
diff --git a/resources/style/android/progress-bar-example-theme.json b/resources/style/android/progress-bar-example-theme.json
new file mode 100644 (file)
index 0000000..971ee7d
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ProgressBar":
+    {
+      "trackVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-track.9.png"
+      },
+      "progressVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-progress.9.png"
+      },
+      "secondaryProgressVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-secondary-progress.9.png"
+      }
+    }
+  }
+}
diff --git a/resources/style/android/simple-example-theme.json b/resources/style/android/simple-example-theme.json
new file mode 100644 (file)
index 0000000..d2b68e5
--- /dev/null
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+   //
+   // Simple Visuals Application styling
+   //
+    "MyControl":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-13.png"
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-83.png"
+            }
+          }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/android/style-example-theme-one.json b/resources/style/android/style-example-theme-one.json
new file mode 100644 (file)
index 0000000..74025d2
--- /dev/null
@@ -0,0 +1,467 @@
+{
+  "constants":
+  {
+    "STYLE_DIR":"{APPLICATION_RESOURCE_PATH}/style"
+  },
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.03 ]
+      }
+    },
+    "FlexContainer":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.1 ]
+      }
+    },
+    "RadioButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "CheckBoxButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "ColorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "ColorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "ColorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "ThemeLabel":{
+      "textColor":[0,1,1,1]
+    },
+    "PopupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "PopupBody":{
+      "textColor":[1,1,0,1]
+    },
+    "TextLabel":{
+      "textColor":[0,0,0,1]
+    },
+    "ColorSlider1":{
+      "styles":["Slider"]
+    },
+    "ColorSlider2":{
+      "styles":["slider"]
+    },
+    "ColorSlider3":{
+      "styles":["slider"]
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"opacity",
+          "initialValue":0,
+          "targetValue":1,
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.25,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"opacity",
+          "targetValue":0,
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.25,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1,1]
+        }
+      ]
+    },
+    "ShadowButton":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "backgroundVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/shadowButtonBg.9.png",
+              "depthIndex":0
+            },
+
+            "checkboxBgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/CheckBg.png",
+              "transform":{
+                "size":[0.12, 0.37],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":1
+            },
+
+            "labelVisual":{
+              "visualType":"TEXT",
+              "text":"Don't show again",
+              "pointSize":8,
+              "horizontalAlignment":"END",
+              "verticalAlignment":"CENTER",
+              "textColor":[1,1,1,1],
+              "mixColor":[0,0,0,1],
+              "transform":{
+                "size":[0.9, 0.9],
+                "offset":[-30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_END",
+                "anchorPoint":"CENTER_END"
+              },
+              "depthIndex":1
+            }
+          },
+
+          "states":
+          {
+            "CHECKED":
+            {
+              "visuals":
+              {
+                "checkboxFgVisual":{
+                  "visualType":"IMAGE",
+                  "url":"{STYLE_DIR}/images/Tick.png",
+                  "transform":{
+                    "size":[0.12, 0.37],
+                    "offset":[30,0],
+                    "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                    "sizePolicy":["RELATIVE", "RELATIVE"],
+                    "origin":"CENTER_BEGIN",
+                    "anchorPoint":"CENTER_BEGIN"
+                  },
+                  "depthIndex":2
+                }
+              },
+              "entryTransition":
+              [
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"pixelArea",
+                  "initialValue":[0.0, 0.0, 0.0, 1.0],
+                  "targetValue":[0.0, 0.0, 1.0, 1.0],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_IN",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                },
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"size",
+                  "initialValue":[0.0, 0.37],
+                  "targetValue":[0.12, 0.37],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_IN",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                }
+              ],
+              "exitTransition":
+              [
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"pixelArea",
+                  "initialValue":[0.0, 0.0, 1.0, 1.0],
+                  "targetValue":[0.0, 0.0, 0.0, 1.0],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_OUT",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                },
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"size",
+                  "targetValue":[0.0, 0.37],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_OUT",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                }
+              ]
+            },
+            "UNCHECKED":
+            {
+            }
+          }
+        },
+        //"FOCUSED"
+        "DISABLED":
+        {
+          "visuals":
+          {
+            "checkboxBgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/CheckBg.png",
+              "transform":{
+                "size":[0.09, 0.28],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":0
+            },
+
+            "checkboxFgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/Tick.png",
+              "transform":{
+                "size":[0.09, 0.28],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":1
+            },
+
+            "labelVisual":{
+              "visualType":"TEXT",
+              "text":"Don't show again",
+              "pointSize":8,
+              "horizontalAlignment":"END",
+              "verticalAlignment":"CENTER",
+              "textColor":[1,1,1,1],
+              "mixColor":[0.3, 0.3, 0.3, 1],
+              "transform":{
+                "size":[0.9, 0.9],
+                "offset":[-30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_END",
+                "anchorPoint":"CENTER_END"
+              },
+              "depthIndex":1
+            }
+          },
+          "states":
+          {
+            "CHECKED":
+            {
+              "visuals":
+              {
+                "checkboxFgVisual":{
+                  "visualType":"IMAGE",
+                  "url":"{STYLE_DIR}/images/Tick.png",
+                  "transform":{
+                    "size":[0.09, 0.28],
+                    "offset":[30,0],
+                    "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                    "sizePolicy":["RELATIVE", "RELATIVE"],
+                    "origin":"CENTER_BEGIN",
+                    "anchorPoint":"CENTER_BEGIN"
+                  },
+                  "depthIndex":2
+                }
+              }
+            },
+            "UNCHECKED":
+            {
+            }
+          }
+        }
+      },
+      "transitions":
+      [
+        {
+          "from":"DISABLED",
+          "to":"NORMAL",
+          "visualName":"backgroundVisual",
+          "effect":"FADE_IN",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"DISABLED",
+          "to":"NORMAL",
+          "visualName":"*",
+          "effect":"CROSSFADE",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"NORMAL",
+          "to":"DISABLED",
+          "visualName":"backgroundVisual",
+          "effect":"FADE_OUT",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"NORMAL",
+          "to":"DISABLED",
+          "visualName":"*",
+          "effect":"CROSSFADE",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        }
+      ]
+    },
+    "BeatControl":
+    {
+      "beatVisual":{
+        "visualType":"IMAGE",
+        "url":"{APPLICATION_RESOURCE_PATH}/images/Logo-for-demo.png"
+      },
+
+      "bounceTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"size",
+          "initialValue":[0.5, 0.5],
+          "targetValue":[0.75, 0.75],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "leftTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"offset",
+          "initialValue":[0, 0],
+          "targetValue":[0.25, 0],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "upTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"offset",
+          "initialValue":[0, 0],
+          "targetValue":[0, 0.25],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "fadeTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"opacity",
+          "targetValue":0,
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/android/style-example-theme-three.json b/resources/style/android/style-example-theme-three.json
new file mode 100644 (file)
index 0000000..f77d957
--- /dev/null
@@ -0,0 +1,109 @@
+{
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.03 ]
+      }
+    },
+    "RadioButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "CheckboxButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "ColorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "ColorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "ColorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "ThemeLabel":{
+      "textColor":[0,1,1,1]
+    },
+    "PopupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "PopupBody":{
+      "textColor":[1,1,0,1]
+    },
+    "TextLabel":{
+      "textColor":[0,0,0,1]
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "initialValue":[0.1,0.1],
+          "targetValue":[1,1],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.1
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "initialValue":[1,1],
+          "targetValue":[0.1,0.1],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,0],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/android/style-example-theme-two.json b/resources/style/android/style-example-theme-two.json
new file mode 100644 (file)
index 0000000..fa8ed33
--- /dev/null
@@ -0,0 +1,235 @@
+{
+  "constants":
+  {
+    "STYLE_DIR":"{APPLICATION_RESOURCE_PATH}/style"
+  },
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"GRADIENT",
+        "startPosition": [0,-1],
+        "endPosition": [0,1],
+        "stopColor": [ [ 1.0, 0.0, 1.0, 0.03 ], [1.0,0.0,1.0,0.15] ]
+      }
+    },
+
+    // Change an icon size, see if it gets properly re-sized
+    "RadioButton":{
+     "unselectedVisual":
+      {
+        "visualType": "IMAGE",
+        "url": "{STYLE_DIR}/images/radio-button-unselected.png"
+      },
+      "selectedVisual":
+      {
+        "visualType": "IMAGE",
+        "url": "{STYLE_DIR}/images/radio-button-selected.png"
+      },
+      "label":{
+        "textColor": [0.1,1,1,1]
+      }
+    },
+    "checkboxbutton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "colorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "colorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "colorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "themelabel":{
+      "textColor":[0,1,1,1]
+    },
+    "popupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "popupBody":{
+      "textColor":[1,1,0,1]
+    },
+
+    // Note, this overrides any non-renamed label styles, e.g. those in a button.
+    "TextLabel":{
+      //"textColor":[0,0,0,1]
+    },
+
+    "ThinSlider":{
+      "styles": ["slider"],
+      "showPopup":true,
+      "showValue":false,
+      "valuePrecision":0,
+      "handleVisual":{
+        "size":[48,48]
+      },
+      "trackVisual":{
+        "size":[10, 10]
+      },
+      "enabled":true
+    },
+    "ColorSlider1":{
+      "styles":["ThinSlider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-red.9.png"
+      }
+    },
+    "ColorSlider2":{
+      "styles":["ThinSlider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-green.9.png"
+      }
+    },
+    "ColorSlider3":{
+      "styles":["thinslider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-blue.9.png"
+      }
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "initialValue":[1,1,1,0],
+          "targetValue":[1,1,1,1],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.4,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,0],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.4,
+              "delay":0.2
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ]
+    },
+    "ShadowButton":
+    {
+      "backgroundVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/shadowButtonBg.9.png"
+      },
+      "checkboxBgVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/CheckBg.png",
+        "transform":{
+          "size":[0.09, 0.28],
+          "offset":[30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_BEGIN",
+          "anchorPoint":"CENTER_BEGIN"
+        }
+      },
+      "checkboxFgVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/Tick.png",
+        "transform":{
+          "size":[0.09, 0.28],
+          "offset":[30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_BEGIN",
+          "anchorPoint":"CENTER_BEGIN"
+        }
+      },
+      "labelVisual":{
+        "visualType":"TEXT",
+        "text":"Don't show again",
+        "pointSize":8,
+        "horizontalAlignment":"END",
+        "verticalAlignment":"CENTER",
+        "textColor":[1,1,1,1],
+        "mixColor":[0.3, 0.3, 0.3, 1],
+        "transform":{
+          "size":[0.9, 0.9],
+          "offset":[-30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_END",
+          "anchorPoint":"CENTER_END"
+        }
+      },
+      "activeTransition":
+      [
+        {
+          "target":"checkboxBgVisual",
+          "property":"size",
+          "initialValue":[0.09, 0.28],
+          "targetValue":[0.12, 0.37],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ],
+      "inactiveTransition":
+      [
+        {
+          "target":"checkboxBgVisual",
+          "property":"size",
+          "initialValue":[0.12, 0.37],
+          "targetValue":[0.09, 0.28],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/android/text-editor-example-theme.json b/resources/style/android/text-editor-example-theme.json
new file mode 100644 (file)
index 0000000..48470b4
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ScrollBar":
+    {
+      "indicatorShowDuration":1.0,
+      "indicatorHideDuration":1.0,
+      "background": {
+        "rendererType": "image",
+        "url": "{APPLICATION_RESOURCE_PATH}/images/button-disabled.9.png"
+        }
+    },
+    "ScrollBarIndicator":
+    {
+      "resourceUrl":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+    }
+  }
+}
diff --git a/resources/style/android/tooltip-example-theme.json b/resources/style/android/tooltip-example-theme.json
new file mode 100644 (file)
index 0000000..74e4158
--- /dev/null
@@ -0,0 +1,85 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "TooltipTextOnly" :
+    {
+      "tooltip": "Using defaults defined in the Toolkit stylesheet"
+    },
+
+    "TooltipArray" :
+    {
+      "tooltip" :
+      {
+        "content" :
+        [
+          {
+            "visualType" : "IMAGE",
+            "url" : "{APPLICATION_RESOURCE_PATH}/images/application-icon-0.png",
+            "desiredWidth" : 75,
+            "desiredHeight" : 75
+          },
+          {
+            "visualType" : "TEXT",
+            "text" : "An icon on the left and\nmulti-line text on the right",
+            "multiLine" : true,
+            "pointSize" : 8
+          }
+        ],
+        "tail" : true
+      }
+    },
+
+    "TooltipCustom" :
+    {
+      "tooltip":
+      {
+        "content":
+        {
+          "visualType" : "TEXT",
+          "textColor" : [1,1,1,1],
+          "text" : "Completely custom style\nthat disappears on movement",
+          "multiLine" : true,
+          "pointSize" : 8
+        },
+        "waitTime":0.5,
+        "background":
+        {
+          "visual":"{APPLICATION_RESOURCE_PATH}/images/tooltip.9.png",
+          "border":[1,5,5,1]
+        },
+        "tail":
+        {
+          "visibility":true,
+          "aboveVisual":"{APPLICATION_RESOURCE_PATH}/images/tooltip-tail-above.png",
+          "belowVisual":"{APPLICATION_RESOURCE_PATH}/images/tooltip-tail-below.png"
+        },
+        "position":"ABOVE",
+        "hoverPointOffset":[10,10],
+        "movementThreshold":5,
+        "disappearOnMovement":true
+      }
+    },
+
+    "TableView" :
+    {
+      "cellPadding" : [ 5.0, 5.0 ]
+    }
+  }
+}
diff --git a/resources/style/animated-gradient-call-active-style.json b/resources/style/animated-gradient-call-active-style.json
new file mode 100644 (file)
index 0000000..d73dc38
--- /dev/null
@@ -0,0 +1,76 @@
+{
+  "styles": {
+    "IncomeBackground": {
+      "background": {
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "RADIAL",
+        "unitType": "USER_SPACE",
+        "startPosition": [0.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.1333, 0.1647, 0.2941, 1.0],
+        "endColor": [0.0784, 0.3961, 0.4863, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.0,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "BACKWARD",
+          "duration": 1.25,
+          "delay": 0.0,
+          "repeat": -1,
+          "repeatDelay": 0.0,
+          "motionType": "LOOP",
+          "easingType": "LINEAR"
+        }
+      }
+    },
+    "ActiveBackground":{
+      "background":{
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "RADIAL",
+        "unitType": "USER_SPACE",
+        "startPosition": [0.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.1066, 0.1318, 0.2353, 1.0],
+        "endColor": [0.0627, 0.3169, 0.3890, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.0,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "BACKWARD",
+          "duration": 4.0,
+          "delay": 0.0,
+          "repeat": -1,
+          "repeatDelay": 0.0,
+          "motionType": "LOOP",
+          "easingType": "LINEAR"
+        }
+      }
+    },
+    "DeclineButton":{
+      "background":{
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "LINEAR",
+        "unitType": "USER_SPACE",
+        "startPosition": [-180.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.8941, 0.0078, 0.0078, 1.0],
+        "endColor": [1.0000, 0.5961, 0.0000, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.78539816,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "FORWARD",
+          "duration": 1.8,
+          "delay": -1.2,
+          "repeat": -1,
+          "repeatDelay": 1.2,
+          "motionType": "LOOP",
+          "easingType": "IN_OUT"
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/base-theme.json b/resources/style/base-theme.json
new file mode 100644 (file)
index 0000000..12404e9
--- /dev/null
@@ -0,0 +1,206 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ConfirmationPopup":{
+      "popupBackgroundImage":"{APPLICATION_RESOURCE_PATH}/images/00_popup_bg.9.png"
+    },
+
+    "CustomPopupStyle":{
+      "popupBackgroundImage":"{APPLICATION_RESOURCE_PATH}/images/popup.9.png",
+      "popupBackgroundBorder":[0,4,4,0],
+      "tailUpImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-up.png",
+      "tailDownImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-down.png",
+      "tailLeftImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-left.png",
+      "tailRightImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-right.png"
+    },
+
+    "DemoTileBase":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "color":[0.4, 0.6, 0.9, 0.6],
+          "visuals":
+          {
+            "image":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/demo-tile-texture.9.png",
+// TILE_BACKGROUND_ALPHA
+// This shader takes a texture.
+// An alpha discard is performed.
+// The shader uses the tiles position within the scroll-view page and the scroll-views rotation position to create a parallax effect.
+              "shader":
+              {
+                "fragmentShader":[
+                  "  varying mediump vec2  vTexCoord;",
+                  "  uniform lowp    vec4  uColor;",
+                  "  uniform sampler2D     sTexture;",
+                  "  uniform mediump vec3  uCustomPosition;",
+                  "",
+                  "  void main()",
+                  "  {",
+                  "    if( texture2D( sTexture, vTexCoord ).a <= 0.0001 )",
+                  "    {",
+                  "      discard;",
+                  "    }",
+                  "",
+                  "    mediump vec2 wrapTexCoord = vec2( ( vTexCoord.x / 4.0 ) + ( uCustomPosition.x / 4.0 ) + ( uCustomPosition.z / 2.0 ), vTexCoord.y / 4.0 );",
+                  "    mediump vec4 color = texture2D( sTexture, wrapTexCoord );",
+                  "    mediump float positionWeight = ( uCustomPosition.y + 0.3 ) * color.r * 2.0;",
+                  "",
+                  "    gl_FragColor = vec4( positionWeight, positionWeight, positionWeight, 0.9 ) * uColor + vec4( uColor.xyz, 0.0 );",
+                  "  }"
+                ]
+              }
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "color":[0.3, 0.5, 0.8, 0.5],
+          "visuals":
+          {
+            "image":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/demo-tile-texture-focused.9.png",
+// TILE_BACKGROUND_ALPHA
+// This shader takes a texture.
+// An alpha discard is performed.
+// The shader uses the tiles position within the scroll-view page and the scroll-views rotation position to create a parallax effect.
+              "shader":
+              {
+                "fragmentShader":[
+                  "  varying mediump vec2  vTexCoord;",
+                  "  uniform lowp    vec4  uColor;",
+                  "  uniform sampler2D     sTexture;",
+                  "  uniform mediump vec3  uCustomPosition;",
+                  "",
+                  "  void main()",
+                  "  {",
+                  "    if( texture2D( sTexture, vTexCoord ).a <= 0.0001 )",
+                  "    {",
+                  "      discard;",
+                  "    }",
+                  "",
+                  "    mediump vec2 wrapTexCoord = vec2( ( vTexCoord.x / 4.0 ) + ( uCustomPosition.x / 4.0 ) + ( uCustomPosition.z / 2.0 ), vTexCoord.y / 4.0 );",
+                  "    mediump vec4 color = texture2D( sTexture, wrapTexCoord );",
+                  "    mediump float positionWeight = ( uCustomPosition.y + 0.3 ) * color.r * 2.0;",
+                  "",
+                  "    gl_FragColor = vec4( positionWeight, positionWeight, positionWeight, 0.9 ) * uColor + vec4( uColor.xyz, 0.0 );",
+                  "  }"
+                ]
+              }
+            }
+          }
+        }
+      }
+    },
+    "FocusActor":
+    {
+      "visuals":
+      {
+        "image":
+        {
+          "url":"{APPLICATION_RESOURCE_PATH}/images/tile-focus.9.png"
+        }
+      }
+    },
+    "DemoTileBorder":
+    {
+      "visuals":
+      {
+        "image":
+        {
+          "url":"{APPLICATION_RESOURCE_PATH}/images/item-background.9.png" // TILE_BACKGROUND
+        }
+      }
+    },
+    "TextLabelRosemary":
+    {
+      "fontFamily":"Rosemary"
+    },
+    "TextLabel":
+    {
+      "fontStyle":{"weight":"normal"},
+      "pointSize":18
+    },
+    "LauncherLabel":
+    {
+      "pointSize":18
+    },
+
+    "ToolbarLabel":
+    {
+      "pointSize":18
+    },
+
+    "BuilderLabel":
+    {
+      "pointSize":13
+    },
+
+    "ScrollView":
+    {
+      "overshootEffectColor":"B018"
+    },
+
+    "ImageScalingGroupLabel":
+    {
+      "pointSize":9
+    },
+
+    "ImageScalingButton":
+    {
+      "label":{
+        "pointSize":11
+      }
+    },
+//
+// Simple Visuals Application Style section
+//
+    "MyControl":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-13.png"
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-83.png"
+            }
+          }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/basic-light-theme.json b/resources/style/basic-light-theme.json
new file mode 100644 (file)
index 0000000..ae863f2
--- /dev/null
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+   //
+   // Simple Visuals Application styling
+   //
+    "BasicLightButton":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+            "unselectedBackgroundVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+            }
+        },
+        "FOCUSED":
+        {
+            "unselectedBackgroundVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+            }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/contact-cards-example-theme.json b/resources/style/contact-cards-example-theme.json
new file mode 100644 (file)
index 0000000..3a1448f
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ContactNameTextLabel":
+    {
+      "textColor": [ 0, 0, 0, 1 ],
+      "horizontalAlignment": "CENTER",
+      "pointSize": 14
+    },
+
+    "ContactDetailTextLabel":
+    {
+      "textColor": [ 0, 0, 0, 1 ],
+      "multiLine": true,
+      "pointSize": 20
+    }
+  }
+}
diff --git a/resources/style/demo-theme.json b/resources/style/demo-theme.json
new file mode 100644 (file)
index 0000000..1203c52
--- /dev/null
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "includes":
+  [
+    "{APPLICATION_RESOURCE_PATH}/style/base-theme.json"
+  ],
+
+  "styles":
+  {
+    "DemoTile":
+    {
+      "styles":[ "DemoTileBase" ]
+    },
+
+    "LauncherBackground":
+    {
+      "background":
+      {
+        "visualType": "GRADIENT",
+        "center": [240, 400],
+        "radius": 932,
+        "units": "USER_SPACE",
+        "stopColor": [[0.247,0.38,0.52,1.0],[0.055,0.18,0.286,1.0]]
+      }
+    },
+
+    "BubbleColor1":
+    {
+      "color": [ 0.3255, 0.3412, 0.6353, 0.32 ]
+    },
+
+    "BubbleColor2":
+    {
+      "color": [ 0.3647, 0.7569, 0.8157, 0.32 ]
+    },
+
+    "BubbleColor3":
+    {
+      "color": [ 0.3804, 0.7412, 0.6510, 0.32 ]
+    },
+
+    "BubbleColor4":
+    {
+      "color": [ 1, 1, 1, 0.13 ]
+    }
+
+  }
+}
diff --git a/resources/style/examples-theme.json b/resources/style/examples-theme.json
new file mode 100644 (file)
index 0000000..4dd7a86
--- /dev/null
@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "includes":
+  [
+    "{APPLICATION_RESOURCE_PATH}/style/base-theme.json"
+  ],
+
+  "styles":
+  {
+    "DemoTile":
+    {
+      "styles": ["DemoTileBase"],
+      "states":
+      {
+        "NORMAL":
+        {
+          "color":[0.9, 0.4, 0.4, 0.6]
+        }
+      }
+    },
+
+    "LauncherBackground":
+    {
+      "background":
+      {
+        "visualType": "GRADIENT",
+        "center": [240, 400],
+        "radius": 932,
+        "units": "USER_SPACE",
+        "stopColor": [[0,0,0,1.0],[0.556863,0.054902,0,1.0]]
+      }
+    },
+
+    "BubbleColor1":
+    {
+      "color": [ 0.8255, 0.2412, 0.1353, 0.32 ]
+    },
+
+    "BubbleColor2":
+    {
+      "color": [ 0.8647, 0.4569, 0.3157, 0.32 ]
+    },
+
+    "BubbleColor3":
+    {
+      "color": [ 0.9804, 0.5412, 0.5510, 0.32 ]
+    },
+
+    "BubbleColor4":
+    {
+      "color": [ 1, 0, 0, 0.13 ]
+    }
+
+  }
+}
diff --git a/resources/style/images/00_popup_bg.9.png b/resources/style/images/00_popup_bg.9.png
new file mode 100644 (file)
index 0000000..f0e84ff
Binary files /dev/null and b/resources/style/images/00_popup_bg.9.png differ
diff --git a/resources/style/images/CheckBg.png b/resources/style/images/CheckBg.png
new file mode 100644 (file)
index 0000000..960f947
Binary files /dev/null and b/resources/style/images/CheckBg.png differ
diff --git a/resources/style/images/Tick.png b/resources/style/images/Tick.png
new file mode 100644 (file)
index 0000000..72bf93e
Binary files /dev/null and b/resources/style/images/Tick.png differ
diff --git a/resources/style/images/radio-button-selected.png b/resources/style/images/radio-button-selected.png
new file mode 100644 (file)
index 0000000..96411bc
Binary files /dev/null and b/resources/style/images/radio-button-selected.png differ
diff --git a/resources/style/images/radio-button-unselected-disabled.png b/resources/style/images/radio-button-unselected-disabled.png
new file mode 100644 (file)
index 0000000..d2d8d24
Binary files /dev/null and b/resources/style/images/radio-button-unselected-disabled.png differ
diff --git a/resources/style/images/radio-button-unselected.png b/resources/style/images/radio-button-unselected.png
new file mode 100644 (file)
index 0000000..bdf4abd
Binary files /dev/null and b/resources/style/images/radio-button-unselected.png differ
diff --git a/resources/style/images/shadowButtonBg.9.png b/resources/style/images/shadowButtonBg.9.png
new file mode 100644 (file)
index 0000000..996f965
Binary files /dev/null and b/resources/style/images/shadowButtonBg.9.png differ
diff --git a/resources/style/images/slider-skin-progress-blue.9.png b/resources/style/images/slider-skin-progress-blue.9.png
new file mode 100644 (file)
index 0000000..9477280
Binary files /dev/null and b/resources/style/images/slider-skin-progress-blue.9.png differ
diff --git a/resources/style/images/slider-skin-progress-green.9.png b/resources/style/images/slider-skin-progress-green.9.png
new file mode 100644 (file)
index 0000000..6738075
Binary files /dev/null and b/resources/style/images/slider-skin-progress-green.9.png differ
diff --git a/resources/style/images/slider-skin-progress-red.9.png b/resources/style/images/slider-skin-progress-red.9.png
new file mode 100644 (file)
index 0000000..6c8cdbb
Binary files /dev/null and b/resources/style/images/slider-skin-progress-red.9.png differ
diff --git a/resources/style/mobile/animated-gradient-call-active-style.json b/resources/style/mobile/animated-gradient-call-active-style.json
new file mode 100644 (file)
index 0000000..d73dc38
--- /dev/null
@@ -0,0 +1,76 @@
+{
+  "styles": {
+    "IncomeBackground": {
+      "background": {
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "RADIAL",
+        "unitType": "USER_SPACE",
+        "startPosition": [0.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.1333, 0.1647, 0.2941, 1.0],
+        "endColor": [0.0784, 0.3961, 0.4863, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.0,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "BACKWARD",
+          "duration": 1.25,
+          "delay": 0.0,
+          "repeat": -1,
+          "repeatDelay": 0.0,
+          "motionType": "LOOP",
+          "easingType": "LINEAR"
+        }
+      }
+    },
+    "ActiveBackground":{
+      "background":{
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "RADIAL",
+        "unitType": "USER_SPACE",
+        "startPosition": [0.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.1066, 0.1318, 0.2353, 1.0],
+        "endColor": [0.0627, 0.3169, 0.3890, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.0,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "BACKWARD",
+          "duration": 4.0,
+          "delay": 0.0,
+          "repeat": -1,
+          "repeatDelay": 0.0,
+          "motionType": "LOOP",
+          "easingType": "LINEAR"
+        }
+      }
+    },
+    "DeclineButton":{
+      "background":{
+        "visualType": "ANIMATED_GRADIENT",
+        "gradientType": "LINEAR",
+        "unitType": "USER_SPACE",
+        "startPosition": [-180.0, 0.0],
+        "endPosition": [180.0, 0.0],
+        "startColor": [0.8941, 0.0078, 0.0078, 1.0],
+        "endColor": [1.0000, 0.5961, 0.0000, 1.0],
+        "rotateCenter": [0.0, 0.0],
+        "rotateAmount": 0.78539816,
+        "offset": {
+          "startValue": 0.0,
+          "targetValue": 2.0,
+          "directionType": "FORWARD",
+          "duration": 1.8,
+          "delay": -1.2,
+          "repeat": -1,
+          "repeatDelay": 1.2,
+          "motionType": "LOOP",
+          "easingType": "IN_OUT"
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/mobile/base-theme.json b/resources/style/mobile/base-theme.json
new file mode 100644 (file)
index 0000000..3a817c5
--- /dev/null
@@ -0,0 +1,194 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "CustomPopupStyle":{
+      "popupBackgroundImage":"{APPLICATION_RESOURCE_PATH}/images/popup.9.png",
+      "popupBackgroundBorder":[0,4,4,0],
+      "tailUpImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-up.png",
+      "tailDownImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-down.png",
+      "tailLeftImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-left.png",
+      "tailRightImage":"{APPLICATION_RESOURCE_PATH}/images/popup-tail-right.png"
+    },
+
+    "DemoTileBase":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "color":[0.4, 0.6, 0.9, 0.6],
+          "visuals":
+          {
+            "image":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/demo-tile-texture.9.png",
+// TILE_BACKGROUND_ALPHA
+// This shader takes a texture.
+// An alpha discard is performed.
+// The shader uses the tiles position within the scroll-view page and the scroll-views rotation position to create a parallax effect.
+              "shader":
+              {
+                "fragmentShader":[
+                  "  varying mediump vec2  vTexCoord;",
+                  "  uniform lowp    vec4  uColor;",
+                  "  uniform sampler2D     sTexture;",
+                  "  uniform mediump vec3  uCustomPosition;",
+                  "",
+                  "  void main()",
+                  "  {",
+                  "    if( texture2D( sTexture, vTexCoord ).a <= 0.0001 )",
+                  "    {",
+                  "      discard;",
+                  "    }",
+                  "",
+                  "    mediump vec2 wrapTexCoord = vec2( ( vTexCoord.x / 4.0 ) + ( uCustomPosition.x / 4.0 ) + ( uCustomPosition.z / 2.0 ), vTexCoord.y / 4.0 );",
+                  "    mediump vec4 color = texture2D( sTexture, wrapTexCoord );",
+                  "    mediump float positionWeight = ( uCustomPosition.y + 0.3 ) * color.r * 2.0;",
+                  "",
+                  "    gl_FragColor = vec4( positionWeight, positionWeight, positionWeight, 0.9 ) * uColor + vec4( uColor.xyz, 0.0 );",
+                  "  }"
+                ]
+              }
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "color":[0.3, 0.5, 0.8, 0.5],
+          "visuals":
+          {
+            "image":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/demo-tile-texture-focused.9.png",
+// TILE_BACKGROUND_ALPHA
+// This shader takes a texture.
+// An alpha discard is performed.
+// The shader uses the tiles position within the scroll-view page and the scroll-views rotation position to create a parallax effect.
+              "shader":
+              {
+                "fragmentShader":[
+                  "  varying mediump vec2  vTexCoord;",
+                  "  uniform lowp    vec4  uColor;",
+                  "  uniform sampler2D     sTexture;",
+                  "  uniform mediump vec3  uCustomPosition;",
+                  "",
+                  "  void main()",
+                  "  {",
+                  "    if( texture2D( sTexture, vTexCoord ).a <= 0.0001 )",
+                  "    {",
+                  "      discard;",
+                  "    }",
+                  "",
+                  "    mediump vec2 wrapTexCoord = vec2( ( vTexCoord.x / 4.0 ) + ( uCustomPosition.x / 4.0 ) + ( uCustomPosition.z / 2.0 ), vTexCoord.y / 4.0 );",
+                  "    mediump vec4 color = texture2D( sTexture, wrapTexCoord );",
+                  "    mediump float positionWeight = ( uCustomPosition.y + 0.3 ) * color.r * 2.0;",
+                  "",
+                  "    gl_FragColor = vec4( positionWeight, positionWeight, positionWeight, 0.9 ) * uColor + vec4( uColor.xyz, 0.0 );",
+                  "  }"
+                ]
+              }
+            }
+          }
+        }
+      }
+    },
+    "FocusActor":
+    {
+      "visuals":
+      {
+        "image":
+        {
+          "url":"{APPLICATION_RESOURCE_PATH}/images/tile-focus.9.png"
+        }
+      }
+    },
+    "DemoTileBorder":
+    {
+      "visuals":
+      {
+        "image":
+        {
+          "url":"{APPLICATION_RESOURCE_PATH}/images/item-background.9.png" // TILE_BACKGROUND
+        }
+      }
+    },
+    "TextLabelRosemary":
+    {
+      "fontFamily":"Rosemary"
+    },
+    "TextLabel":
+    {
+      "fontStyle":{"weight":"normal"},
+      "pointSize":18
+    },
+    "TextLabelFontSize0":
+    {
+      "pointSize":8
+    },
+    "TextLabelFontSize1":
+    {
+      "pointSize":10
+    },
+    "TextLabelFontSize2":
+    {
+      "pointSize":15
+    },
+    "TextLabelFontSize3":
+    {
+      "pointSize":19
+    },
+    "TextLabelFontSize4":
+    {
+      "pointSize":25
+    },
+
+    "Launcherlabel":
+    {
+      "pointSize":8
+    },
+
+    "ToolbarLabel":
+    {
+      "pointSize":10
+    },
+
+    "BuilderLabel":
+    {
+      "pointSize":10
+    },
+
+    "ScrollView":
+    {
+      "overshootEffectColor":"B018"
+    },
+
+    "GroupLabel":
+    {
+      "pointSize":6
+    },
+
+    "ChangeLayoutButton":
+    {
+      "label":{
+        "pointSize":5
+      }
+    }
+  }
+}
diff --git a/resources/style/mobile/basic-light-theme.json b/resources/style/mobile/basic-light-theme.json
new file mode 100644 (file)
index 0000000..ae863f2
--- /dev/null
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+   //
+   // Simple Visuals Application styling
+   //
+    "BasicLightButton":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+            "unselectedBackgroundVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+            }
+        },
+        "FOCUSED":
+        {
+            "unselectedBackgroundVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+            }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/mobile/contact-cards-example-theme.json b/resources/style/mobile/contact-cards-example-theme.json
new file mode 100644 (file)
index 0000000..03ece78
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ContactNameTextLabel":
+    {
+      "textColor": [ 0, 0, 0, 1 ],
+      "horizontalAlignment": "CENTER",
+      "pointSize": 7
+    },
+
+    "ContactDetailTextLabel":
+    {
+      "textColor": [ 0, 0, 0, 1 ],
+      "multiLine": true,
+      "pointSize": 13
+    }
+  }
+}
diff --git a/resources/style/mobile/demo-theme.json b/resources/style/mobile/demo-theme.json
new file mode 100644 (file)
index 0000000..05578b7
--- /dev/null
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "includes":
+  [
+    "{APPLICATION_RESOURCE_PATH}/style/base-theme.json"
+  ],
+
+  "styles":
+  {
+    "DemoTile":
+    {
+      "styles":[ "DemoTileBase" ]
+    },
+
+    "LauncherBackground":
+    {
+      "background":
+      {
+        "visualType": "GRADIENT",
+        "center": [360, 640],
+        "radius": 1468,
+        "units": "USER_SPACE",
+        "stopColor": [[0.247,0.38,0.52,1.0],[0.055,0.18,0.286,1.0]]
+      }
+    },
+
+    "BubbleColor1":
+    {
+      "color": [ 0.3255, 0.3412, 0.6353, 0.32 ]
+    },
+
+    "BubbleColor2":
+    {
+      "color": [ 0.3647, 0.7569, 0.8157, 0.32 ]
+    },
+
+    "BubbleColor3":
+    {
+      "color": [ 0.3804, 0.7412, 0.6510, 0.32 ]
+    },
+
+    "BubbleColor4":
+    {
+      "color": [ 1, 1, 1, 0.13 ]
+    }
+
+  }
+}
diff --git a/resources/style/mobile/examples-theme.json b/resources/style/mobile/examples-theme.json
new file mode 100644 (file)
index 0000000..f6e1c6b
--- /dev/null
@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "includes":
+  [
+    "{APPLICATION_RESOURCE_PATH}/style/base-theme.json"
+  ],
+
+  "styles":
+  {
+    "DemoTile":
+    {
+      "styles": ["DemoTileBase"],
+      "states":
+      {
+        "NORMAL":
+        {
+          "color":[0.9, 0.4, 0.4, 0.6]
+        }
+      }
+    },
+
+    "LauncherBackground":
+    {
+      "background":
+      {
+        "visualType": "GRADIENT",
+        "center": [360, 640],
+        "radius": 1468,
+        "units": "USER_SPACE",
+        "stopColor": [[0,0,0,1.0],[0.556863,0.054902,0,1.0]]
+      }
+    },
+
+    "BubbleColor1":
+    {
+      "color": [ 0.8255, 0.2412, 0.1353, 0.32 ]
+    },
+
+    "BubbleColor2":
+    {
+      "color": [ 0.8647, 0.4569, 0.3157, 0.32 ]
+    },
+
+    "BubbleColor3":
+    {
+      "color": [ 0.9804, 0.5412, 0.5510, 0.32 ]
+    },
+
+    "BubbleColor4":
+    {
+      "color": [ 1, 0, 0, 0.13 ]
+    }
+
+  }
+}
diff --git a/resources/style/mobile/images/CheckBg.png b/resources/style/mobile/images/CheckBg.png
new file mode 100644 (file)
index 0000000..960f947
Binary files /dev/null and b/resources/style/mobile/images/CheckBg.png differ
diff --git a/resources/style/mobile/images/Tick.png b/resources/style/mobile/images/Tick.png
new file mode 100644 (file)
index 0000000..72bf93e
Binary files /dev/null and b/resources/style/mobile/images/Tick.png differ
diff --git a/resources/style/mobile/images/radio-button-selected.png b/resources/style/mobile/images/radio-button-selected.png
new file mode 100644 (file)
index 0000000..96411bc
Binary files /dev/null and b/resources/style/mobile/images/radio-button-selected.png differ
diff --git a/resources/style/mobile/images/radio-button-unselected-disabled.png b/resources/style/mobile/images/radio-button-unselected-disabled.png
new file mode 100644 (file)
index 0000000..d2d8d24
Binary files /dev/null and b/resources/style/mobile/images/radio-button-unselected-disabled.png differ
diff --git a/resources/style/mobile/images/radio-button-unselected.png b/resources/style/mobile/images/radio-button-unselected.png
new file mode 100644 (file)
index 0000000..bdf4abd
Binary files /dev/null and b/resources/style/mobile/images/radio-button-unselected.png differ
diff --git a/resources/style/mobile/images/shadowButtonBg.9.png b/resources/style/mobile/images/shadowButtonBg.9.png
new file mode 100644 (file)
index 0000000..996f965
Binary files /dev/null and b/resources/style/mobile/images/shadowButtonBg.9.png differ
diff --git a/resources/style/mobile/images/slider-skin-progress-blue.9.png b/resources/style/mobile/images/slider-skin-progress-blue.9.png
new file mode 100644 (file)
index 0000000..9477280
Binary files /dev/null and b/resources/style/mobile/images/slider-skin-progress-blue.9.png differ
diff --git a/resources/style/mobile/images/slider-skin-progress-green.9.png b/resources/style/mobile/images/slider-skin-progress-green.9.png
new file mode 100644 (file)
index 0000000..6738075
Binary files /dev/null and b/resources/style/mobile/images/slider-skin-progress-green.9.png differ
diff --git a/resources/style/mobile/images/slider-skin-progress-red.9.png b/resources/style/mobile/images/slider-skin-progress-red.9.png
new file mode 100644 (file)
index 0000000..6c8cdbb
Binary files /dev/null and b/resources/style/mobile/images/slider-skin-progress-red.9.png differ
diff --git a/resources/style/mobile/progress-bar-example-theme.json b/resources/style/mobile/progress-bar-example-theme.json
new file mode 100644 (file)
index 0000000..d9a47ee
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+{
+  "styles":
+  {
+    "ProgressBar":
+    {
+      "trackVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-track.9.png"
+      },
+      "progressVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-progress.9.png"
+      },
+      "secondaryProgressVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-secondary-progress.9.png"
+      }
+    }
+  }
+}
diff --git a/resources/style/mobile/simple-example-theme.json b/resources/style/mobile/simple-example-theme.json
new file mode 100644 (file)
index 0000000..d2b68e5
--- /dev/null
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+   //
+   // Simple Visuals Application styling
+   //
+    "MyControl":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-13.png"
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-83.png"
+            }
+          }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/mobile/style-example-theme-one.json b/resources/style/mobile/style-example-theme-one.json
new file mode 100644 (file)
index 0000000..74025d2
--- /dev/null
@@ -0,0 +1,467 @@
+{
+  "constants":
+  {
+    "STYLE_DIR":"{APPLICATION_RESOURCE_PATH}/style"
+  },
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.03 ]
+      }
+    },
+    "FlexContainer":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.1 ]
+      }
+    },
+    "RadioButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "CheckBoxButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "ColorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "ColorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "ColorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "ThemeLabel":{
+      "textColor":[0,1,1,1]
+    },
+    "PopupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "PopupBody":{
+      "textColor":[1,1,0,1]
+    },
+    "TextLabel":{
+      "textColor":[0,0,0,1]
+    },
+    "ColorSlider1":{
+      "styles":["Slider"]
+    },
+    "ColorSlider2":{
+      "styles":["slider"]
+    },
+    "ColorSlider3":{
+      "styles":["slider"]
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"opacity",
+          "initialValue":0,
+          "targetValue":1,
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.25,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"opacity",
+          "targetValue":0,
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.25,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1,1]
+        }
+      ]
+    },
+    "ShadowButton":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "backgroundVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/shadowButtonBg.9.png",
+              "depthIndex":0
+            },
+
+            "checkboxBgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/CheckBg.png",
+              "transform":{
+                "size":[0.12, 0.37],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":1
+            },
+
+            "labelVisual":{
+              "visualType":"TEXT",
+              "text":"Don't show again",
+              "pointSize":8,
+              "horizontalAlignment":"END",
+              "verticalAlignment":"CENTER",
+              "textColor":[1,1,1,1],
+              "mixColor":[0,0,0,1],
+              "transform":{
+                "size":[0.9, 0.9],
+                "offset":[-30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_END",
+                "anchorPoint":"CENTER_END"
+              },
+              "depthIndex":1
+            }
+          },
+
+          "states":
+          {
+            "CHECKED":
+            {
+              "visuals":
+              {
+                "checkboxFgVisual":{
+                  "visualType":"IMAGE",
+                  "url":"{STYLE_DIR}/images/Tick.png",
+                  "transform":{
+                    "size":[0.12, 0.37],
+                    "offset":[30,0],
+                    "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                    "sizePolicy":["RELATIVE", "RELATIVE"],
+                    "origin":"CENTER_BEGIN",
+                    "anchorPoint":"CENTER_BEGIN"
+                  },
+                  "depthIndex":2
+                }
+              },
+              "entryTransition":
+              [
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"pixelArea",
+                  "initialValue":[0.0, 0.0, 0.0, 1.0],
+                  "targetValue":[0.0, 0.0, 1.0, 1.0],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_IN",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                },
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"size",
+                  "initialValue":[0.0, 0.37],
+                  "targetValue":[0.12, 0.37],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_IN",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                }
+              ],
+              "exitTransition":
+              [
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"pixelArea",
+                  "initialValue":[0.0, 0.0, 1.0, 1.0],
+                  "targetValue":[0.0, 0.0, 0.0, 1.0],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_OUT",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                },
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"size",
+                  "targetValue":[0.0, 0.37],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_OUT",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                }
+              ]
+            },
+            "UNCHECKED":
+            {
+            }
+          }
+        },
+        //"FOCUSED"
+        "DISABLED":
+        {
+          "visuals":
+          {
+            "checkboxBgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/CheckBg.png",
+              "transform":{
+                "size":[0.09, 0.28],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":0
+            },
+
+            "checkboxFgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/Tick.png",
+              "transform":{
+                "size":[0.09, 0.28],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":1
+            },
+
+            "labelVisual":{
+              "visualType":"TEXT",
+              "text":"Don't show again",
+              "pointSize":8,
+              "horizontalAlignment":"END",
+              "verticalAlignment":"CENTER",
+              "textColor":[1,1,1,1],
+              "mixColor":[0.3, 0.3, 0.3, 1],
+              "transform":{
+                "size":[0.9, 0.9],
+                "offset":[-30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_END",
+                "anchorPoint":"CENTER_END"
+              },
+              "depthIndex":1
+            }
+          },
+          "states":
+          {
+            "CHECKED":
+            {
+              "visuals":
+              {
+                "checkboxFgVisual":{
+                  "visualType":"IMAGE",
+                  "url":"{STYLE_DIR}/images/Tick.png",
+                  "transform":{
+                    "size":[0.09, 0.28],
+                    "offset":[30,0],
+                    "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                    "sizePolicy":["RELATIVE", "RELATIVE"],
+                    "origin":"CENTER_BEGIN",
+                    "anchorPoint":"CENTER_BEGIN"
+                  },
+                  "depthIndex":2
+                }
+              }
+            },
+            "UNCHECKED":
+            {
+            }
+          }
+        }
+      },
+      "transitions":
+      [
+        {
+          "from":"DISABLED",
+          "to":"NORMAL",
+          "visualName":"backgroundVisual",
+          "effect":"FADE_IN",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"DISABLED",
+          "to":"NORMAL",
+          "visualName":"*",
+          "effect":"CROSSFADE",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"NORMAL",
+          "to":"DISABLED",
+          "visualName":"backgroundVisual",
+          "effect":"FADE_OUT",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"NORMAL",
+          "to":"DISABLED",
+          "visualName":"*",
+          "effect":"CROSSFADE",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        }
+      ]
+    },
+    "BeatControl":
+    {
+      "beatVisual":{
+        "visualType":"IMAGE",
+        "url":"{APPLICATION_RESOURCE_PATH}/images/Logo-for-demo.png"
+      },
+
+      "bounceTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"size",
+          "initialValue":[0.5, 0.5],
+          "targetValue":[0.75, 0.75],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "leftTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"offset",
+          "initialValue":[0, 0],
+          "targetValue":[0.25, 0],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "upTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"offset",
+          "initialValue":[0, 0],
+          "targetValue":[0, 0.25],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "fadeTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"opacity",
+          "targetValue":0,
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/mobile/style-example-theme-three.json b/resources/style/mobile/style-example-theme-three.json
new file mode 100644 (file)
index 0000000..f77d957
--- /dev/null
@@ -0,0 +1,109 @@
+{
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.03 ]
+      }
+    },
+    "RadioButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "CheckboxButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "ColorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "ColorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "ColorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "ThemeLabel":{
+      "textColor":[0,1,1,1]
+    },
+    "PopupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "PopupBody":{
+      "textColor":[1,1,0,1]
+    },
+    "TextLabel":{
+      "textColor":[0,0,0,1]
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "initialValue":[0.1,0.1],
+          "targetValue":[1,1],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.1
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "initialValue":[1,1],
+          "targetValue":[0.1,0.1],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,0],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/mobile/style-example-theme-two.json b/resources/style/mobile/style-example-theme-two.json
new file mode 100644 (file)
index 0000000..fa8ed33
--- /dev/null
@@ -0,0 +1,235 @@
+{
+  "constants":
+  {
+    "STYLE_DIR":"{APPLICATION_RESOURCE_PATH}/style"
+  },
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"GRADIENT",
+        "startPosition": [0,-1],
+        "endPosition": [0,1],
+        "stopColor": [ [ 1.0, 0.0, 1.0, 0.03 ], [1.0,0.0,1.0,0.15] ]
+      }
+    },
+
+    // Change an icon size, see if it gets properly re-sized
+    "RadioButton":{
+     "unselectedVisual":
+      {
+        "visualType": "IMAGE",
+        "url": "{STYLE_DIR}/images/radio-button-unselected.png"
+      },
+      "selectedVisual":
+      {
+        "visualType": "IMAGE",
+        "url": "{STYLE_DIR}/images/radio-button-selected.png"
+      },
+      "label":{
+        "textColor": [0.1,1,1,1]
+      }
+    },
+    "checkboxbutton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "colorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "colorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "colorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "themelabel":{
+      "textColor":[0,1,1,1]
+    },
+    "popupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "popupBody":{
+      "textColor":[1,1,0,1]
+    },
+
+    // Note, this overrides any non-renamed label styles, e.g. those in a button.
+    "TextLabel":{
+      //"textColor":[0,0,0,1]
+    },
+
+    "ThinSlider":{
+      "styles": ["slider"],
+      "showPopup":true,
+      "showValue":false,
+      "valuePrecision":0,
+      "handleVisual":{
+        "size":[48,48]
+      },
+      "trackVisual":{
+        "size":[10, 10]
+      },
+      "enabled":true
+    },
+    "ColorSlider1":{
+      "styles":["ThinSlider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-red.9.png"
+      }
+    },
+    "ColorSlider2":{
+      "styles":["ThinSlider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-green.9.png"
+      }
+    },
+    "ColorSlider3":{
+      "styles":["thinslider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-blue.9.png"
+      }
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "initialValue":[1,1,1,0],
+          "targetValue":[1,1,1,1],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.4,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,0],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.4,
+              "delay":0.2
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ]
+    },
+    "ShadowButton":
+    {
+      "backgroundVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/shadowButtonBg.9.png"
+      },
+      "checkboxBgVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/CheckBg.png",
+        "transform":{
+          "size":[0.09, 0.28],
+          "offset":[30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_BEGIN",
+          "anchorPoint":"CENTER_BEGIN"
+        }
+      },
+      "checkboxFgVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/Tick.png",
+        "transform":{
+          "size":[0.09, 0.28],
+          "offset":[30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_BEGIN",
+          "anchorPoint":"CENTER_BEGIN"
+        }
+      },
+      "labelVisual":{
+        "visualType":"TEXT",
+        "text":"Don't show again",
+        "pointSize":8,
+        "horizontalAlignment":"END",
+        "verticalAlignment":"CENTER",
+        "textColor":[1,1,1,1],
+        "mixColor":[0.3, 0.3, 0.3, 1],
+        "transform":{
+          "size":[0.9, 0.9],
+          "offset":[-30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_END",
+          "anchorPoint":"CENTER_END"
+        }
+      },
+      "activeTransition":
+      [
+        {
+          "target":"checkboxBgVisual",
+          "property":"size",
+          "initialValue":[0.09, 0.28],
+          "targetValue":[0.12, 0.37],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ],
+      "inactiveTransition":
+      [
+        {
+          "target":"checkboxBgVisual",
+          "property":"size",
+          "initialValue":[0.12, 0.37],
+          "targetValue":[0.09, 0.28],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/mobile/tests-theme.json b/resources/style/mobile/tests-theme.json
new file mode 100644 (file)
index 0000000..90d8049
--- /dev/null
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "includes":
+  [
+    "{APPLICATION_RESOURCE_PATH}/style/base-theme.json"
+  ],
+
+  "styles":
+  {
+    "DemoTile":
+    {
+      "styles": ["DemoTileBase"],
+      "states":
+      {
+        "NORMAL":
+        {
+          "color":[0.6, 0.4, 0.9, 0.6]
+        }
+      }
+    },
+
+    "LauncherBackground":
+    {
+      "background":
+      {
+        "visualType": "GRADIENT",
+        "center": [360, 640],
+        "radius": 1468,
+        "units": "USER_SPACE",
+        "stopColor": [[0.392157,0.254902,0.647059,1.0],[0.164706,0.0313725,0.270588,1.0]]
+      }
+    },
+
+    "BubbleColor1":
+    {
+      "color": [ 0.8255, 0.2412, 0.9353, 0.32 ]
+    },
+
+    "BubbleColor2":
+    {
+      "color": [ 0.8647, 0.4569, 0.8157, 0.32 ]
+    },
+
+    "BubbleColor3":
+    {
+      "color": [ 0.9804, 0.5412, 0.9510, 0.32 ]
+    },
+
+    "BubbleColor4":
+    {
+      "color": [ 1, 1, 1, 0.13 ]
+    }
+
+  }
+}
diff --git a/resources/style/mobile/text-editor-example-theme.json b/resources/style/mobile/text-editor-example-theme.json
new file mode 100644 (file)
index 0000000..48470b4
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ScrollBar":
+    {
+      "indicatorShowDuration":1.0,
+      "indicatorHideDuration":1.0,
+      "background": {
+        "rendererType": "image",
+        "url": "{APPLICATION_RESOURCE_PATH}/images/button-disabled.9.png"
+        }
+    },
+    "ScrollBarIndicator":
+    {
+      "resourceUrl":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+    }
+  }
+}
diff --git a/resources/style/mobile/tooltip-example-theme.json b/resources/style/mobile/tooltip-example-theme.json
new file mode 100644 (file)
index 0000000..aa2cfb5
--- /dev/null
@@ -0,0 +1,85 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "TooltipTextOnly" :
+    {
+      "tooltip": "Using defaults defined in the Toolkit stylesheet"
+    },
+
+    "TooltipArray" :
+    {
+      "tooltip" :
+      {
+        "content" :
+        [
+          {
+            "visualType" : "IMAGE",
+            "url" : "{APPLICATION_RESOURCE_PATH}/images/application-icon-0.png",
+            "desiredWidth" : 75,
+            "desiredHeight" : 75
+          },
+          {
+            "visualType" : "TEXT",
+            "text" : "An icon on the left and\nmulti-line text on the right",
+            "multiLine" : true,
+            "pointSize" : 16
+          }
+        ],
+        "tail" : true
+      }
+    },
+
+    "TooltipCustom" :
+    {
+      "tooltip":
+      {
+        "content":
+        {
+          "visualType" : "TEXT",
+          "textColor" : [1,1,1,1],
+          "text" : "Completely custom style\nthat disappears on movement",
+          "multiLine" : true,
+          "pointSize" : 16
+        },
+        "waitTime":0.5,
+        "background":
+        {
+          "visual":"{APPLICATION_RESOURCE_PATH}/images/tooltip.9.png",
+          "border":[1,5,5,1]
+        },
+        "tail":
+        {
+          "visibility":true,
+          "aboveVisual":"{APPLICATION_RESOURCE_PATH}/images/tooltip-tail-above.png",
+          "belowVisual":"{APPLICATION_RESOURCE_PATH}/images/tooltip-tail-below.png"
+        },
+        "position":"ABOVE",
+        "hoverPointOffset":[10,10],
+        "movementThreshold":5,
+        "disappearOnMovement":true
+      }
+    },
+
+    "TableView" :
+    {
+      "cellPadding" : [ 5.0, 5.0 ]
+    }
+  }
+}
diff --git a/resources/style/progress-bar-example-theme.json b/resources/style/progress-bar-example-theme.json
new file mode 100644 (file)
index 0000000..971ee7d
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ProgressBar":
+    {
+      "trackVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-track.9.png"
+      },
+      "progressVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-progress.9.png"
+      },
+      "secondaryProgressVisual":{
+        "url":"{APPLICATION_RESOURCE_PATH}/images/new-progress-bar-secondary-progress.9.png"
+      }
+    }
+  }
+}
diff --git a/resources/style/simple-example-theme.json b/resources/style/simple-example-theme.json
new file mode 100644 (file)
index 0000000..d2b68e5
--- /dev/null
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+   //
+   // Simple Visuals Application styling
+   //
+    "MyControl":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-13.png"
+            }
+          }
+        },
+        "FOCUSED":
+        {
+          "visuals":
+          {
+            "iconVisual":
+            {
+              "url":"{APPLICATION_RESOURCE_PATH}/images/application-icon-83.png"
+            }
+          }
+        }
+      }
+    }
+  }
+}
diff --git a/resources/style/style-example-theme-one.json b/resources/style/style-example-theme-one.json
new file mode 100644 (file)
index 0000000..51ddc8b
--- /dev/null
@@ -0,0 +1,467 @@
+{
+  "constants":
+  {
+    "STYLE_DIR":"{APPLICATION_RESOURCE_PATH}/style"
+  },
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.03 ]
+      }
+    },
+    "FlexContainer":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.1 ]
+      }
+    },
+    "RadioButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "CheckBoxButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "ColorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "ColorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "ColorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "ThemeLabel":{
+      "textColor":[0,1,1,1]
+    },
+    "PopupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "PopupBody":{
+      "textColor":[1,1,0,1]
+    },
+    "TextLabel":{
+      "textColor":[0,0,0,1]
+    },
+    "ColorSlider1":{
+      "styles":["Slider"]
+    },
+    "ColorSlider2":{
+      "styles":["slider"]
+    },
+    "ColorSlider3":{
+      "styles":["slider"]
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"opacity",
+          "initialValue":0,
+          "targetValue":1,
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.25,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"opacity",
+          "targetValue":0,
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.25,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1,1]
+        }
+      ]
+    },
+    "ShadowButton":
+    {
+      "states":
+      {
+        "NORMAL":
+        {
+          "visuals":
+          {
+            "backgroundVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/shadowButtonBg.9.png",
+              "depthIndex":0
+            },
+
+            "checkboxBgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/CheckBg.png",
+              "transform":{
+                "size":[0.12, 0.37],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":1
+            },
+
+            "labelVisual":{
+              "visualType":"TEXT",
+              "text":"Don't show again",
+              "pointSize":20,
+              "horizontalAlignment":"END",
+              "verticalAlignment":"CENTER",
+              "textColor":[1,1,1,1],
+              "mixColor":[0,0,0,1],
+              "transform":{
+                "size":[0.9, 0.9],
+                "offset":[-30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_END",
+                "anchorPoint":"CENTER_END"
+              },
+              "depthIndex":1
+            }
+          },
+
+          "states":
+          {
+            "CHECKED":
+            {
+              "visuals":
+              {
+                "checkboxFgVisual":{
+                  "visualType":"IMAGE",
+                  "url":"{STYLE_DIR}/images/Tick.png",
+                  "transform":{
+                    "size":[0.12, 0.37],
+                    "offset":[30,0],
+                    "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                    "sizePolicy":["RELATIVE", "RELATIVE"],
+                    "origin":"CENTER_BEGIN",
+                    "anchorPoint":"CENTER_BEGIN"
+                  },
+                  "depthIndex":2
+                }
+              },
+              "entryTransition":
+              [
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"pixelArea",
+                  "initialValue":[0.0, 0.0, 0.0, 1.0],
+                  "targetValue":[0.0, 0.0, 1.0, 1.0],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_IN",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                },
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"size",
+                  "initialValue":[0.0, 0.37],
+                  "targetValue":[0.12, 0.37],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_IN",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                }
+              ],
+              "exitTransition":
+              [
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"pixelArea",
+                  "initialValue":[0.0, 0.0, 1.0, 1.0],
+                  "targetValue":[0.0, 0.0, 0.0, 1.0],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_OUT",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                },
+                {
+                  "target":"checkboxFgVisual",
+                  "property":"size",
+                  "targetValue":[0.0, 0.37],
+                  "animator":
+                  {
+                    "alphaFunction":"EASE_OUT",
+                    "timePeriod":
+                    {
+                      "duration":0.4,
+                      "delay":0
+                    }
+                  }
+                }
+              ]
+            },
+            "UNCHECKED":
+            {
+            }
+          }
+        },
+        //"FOCUSED"
+        "DISABLED":
+        {
+          "visuals":
+          {
+            "checkboxBgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/CheckBg.png",
+              "transform":{
+                "size":[0.09, 0.28],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":0
+            },
+
+            "checkboxFgVisual":{
+              "visualType":"IMAGE",
+              "url":"{STYLE_DIR}/images/Tick.png",
+              "transform":{
+                "size":[0.09, 0.28],
+                "offset":[30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_BEGIN",
+                "anchorPoint":"CENTER_BEGIN"
+              },
+              "depthIndex":1
+            },
+
+            "labelVisual":{
+              "visualType":"TEXT",
+              "text":"Don't show again",
+              "pointSize":20,
+              "horizontalAlignment":"END",
+              "verticalAlignment":"CENTER",
+              "textColor":[1,1,1,1],
+              "mixColor":[0.3, 0.3, 0.3, 1],
+              "transform":{
+                "size":[0.9, 0.9],
+                "offset":[-30,0],
+                "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                "sizePolicy":["RELATIVE", "RELATIVE"],
+                "origin":"CENTER_END",
+                "anchorPoint":"CENTER_END"
+              },
+              "depthIndex":1
+            }
+          },
+          "states":
+          {
+            "CHECKED":
+            {
+              "visuals":
+              {
+                "checkboxFgVisual":{
+                  "visualType":"IMAGE",
+                  "url":"{STYLE_DIR}/images/Tick.png",
+                  "transform":{
+                    "size":[0.09, 0.28],
+                    "offset":[30,0],
+                    "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+                    "sizePolicy":["RELATIVE", "RELATIVE"],
+                    "origin":"CENTER_BEGIN",
+                    "anchorPoint":"CENTER_BEGIN"
+                  },
+                  "depthIndex":2
+                }
+              }
+            },
+            "UNCHECKED":
+            {
+            }
+          }
+        }
+      },
+      "transitions":
+      [
+        {
+          "from":"DISABLED",
+          "to":"NORMAL",
+          "visualName":"backgroundVisual",
+          "effect":"FADE_IN",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"DISABLED",
+          "to":"NORMAL",
+          "visualName":"*",
+          "effect":"CROSSFADE",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"NORMAL",
+          "to":"DISABLED",
+          "visualName":"backgroundVisual",
+          "effect":"FADE_OUT",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        },
+        {
+          "from":"NORMAL",
+          "to":"DISABLED",
+          "visualName":"*",
+          "effect":"CROSSFADE",
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "duration":0.8
+          }
+        }
+      ]
+    },
+    "BeatControl":
+    {
+      "beatVisual":{
+        "visualType":"IMAGE",
+        "url":"{APPLICATION_RESOURCE_PATH}/images/Logo-for-demo.png"
+      },
+
+      "bounceTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"size",
+          "initialValue":[0.5, 0.5],
+          "targetValue":[0.75, 0.75],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "leftTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"offset",
+          "initialValue":[0, 0],
+          "targetValue":[0.25, 0],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "upTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"offset",
+          "initialValue":[0, 0],
+          "targetValue":[0, 0.25],
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.5,
+              "delay":0
+            }
+          }
+        }
+      ],
+
+      "fadeTransition":
+      [
+        {
+          "target":"beatVisual",
+          "property":"opacity",
+          "targetValue":0,
+          "animator":
+          {
+            "alphaFunction":"BOUNCE",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/style-example-theme-three.json b/resources/style/style-example-theme-three.json
new file mode 100644 (file)
index 0000000..f77d957
--- /dev/null
@@ -0,0 +1,109 @@
+{
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 0.03 ]
+      }
+    },
+    "RadioButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "CheckboxButton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "ColorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "ColorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "ColorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "ThemeLabel":{
+      "textColor":[0,1,1,1]
+    },
+    "PopupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "PopupBody":{
+      "textColor":[1,1,0,1]
+    },
+    "TextLabel":{
+      "textColor":[0,0,0,1]
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "initialValue":[0.1,0.1],
+          "targetValue":[1,1],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.1
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "initialValue":[1,1],
+          "targetValue":[0.1,0.1],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,0],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT",
+            "timePeriod":
+            {
+              "duration":0.3,
+              "delay":0.0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/style-example-theme-two.json b/resources/style/style-example-theme-two.json
new file mode 100644 (file)
index 0000000..d689bff
--- /dev/null
@@ -0,0 +1,235 @@
+{
+  "constants":
+  {
+    "STYLE_DIR":"{APPLICATION_RESOURCE_PATH}/style"
+  },
+  "styles":
+  {
+    "Title":{
+      "textColor":"#0000ff",
+      "background":
+      {
+        "visualType":"COLOR",
+        "mixColor": [ 1.0, 1.0, 1.0, 1.0 ]
+      }
+    },
+    "TableView":{
+      "background":
+      {
+        "visualType":"GRADIENT",
+        "startPosition": [0,-1],
+        "endPosition": [0,1],
+        "stopColor": [ [ 1.0, 0.0, 1.0, 0.03 ], [1.0,0.0,1.0,0.15] ]
+      }
+    },
+
+    // Change an icon size, see if it gets properly re-sized
+    "RadioButton":{
+     "unselectedVisual":
+      {
+        "visualType": "IMAGE",
+        "url": "{STYLE_DIR}/images/radio-button-unselected.png"
+      },
+      "selectedVisual":
+      {
+        "visualType": "IMAGE",
+        "url": "{STYLE_DIR}/images/radio-button-selected.png"
+      },
+      "label":{
+        "textColor": [0.1,1,1,1]
+      }
+    },
+    "checkboxbutton":{
+      "label":{
+        "textColor": [1,1,1,1]
+      }
+    },
+    "colorLabel1":{
+      "textColor": [1,0,0,1]
+    },
+    "colorLabel2":{
+      "textColor": [0,1,0,1]
+    },
+    "colorLabel3":{
+      "textColor": [0.3,0.3,1,1]
+    },
+    "themelabel":{
+      "textColor":[0,1,1,1]
+    },
+    "popupTitle":{
+      "textColor":[1,1,1,1]
+    },
+    "popupBody":{
+      "textColor":[1,1,0,1]
+    },
+
+    // Note, this overrides any non-renamed label styles, e.g. those in a button.
+    "TextLabel":{
+      //"textColor":[0,0,0,1]
+    },
+
+    "ThinSlider":{
+      "styles": ["slider"],
+      "showPopup":true,
+      "showValue":false,
+      "valuePrecision":0,
+      "handleVisual":{
+        "size":[48,48]
+      },
+      "trackVisual":{
+        "size":[10, 10]
+      },
+      "enabled":true
+    },
+    "ColorSlider1":{
+      "styles":["ThinSlider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-red.9.png"
+      }
+    },
+    "ColorSlider2":{
+      "styles":["ThinSlider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-green.9.png"
+      }
+    },
+    "ColorSlider3":{
+      "styles":["thinslider"],
+      "progressVisual":{
+        "url":"{STYLE_DIR}/images/slider-skin-progress-blue.9.png"
+      }
+    },
+    "ImageChannelControl":
+    {
+      "enableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "initialValue":[1,1,1,0],
+          "targetValue":[1,1,1,1],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.4,
+              "delay":0
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ],
+      "disableVisibilityTransition":
+      [
+        {
+          "target":"imageVisual",
+          "property":"mixColor",
+          "targetValue":[1,1,1,0],
+          "animator":
+          {
+            "alphaFunction":"EASE_IN_OUT",
+            "timePeriod":
+            {
+              "duration":0.4,
+              "delay":0.2
+            }
+          }
+        },
+        {
+          "target":"imageVisual",
+          "property":"size",
+          "targetValue":[1,1]
+        }
+      ]
+    },
+    "ShadowButton":
+    {
+      "backgroundVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/shadowButtonBg.9.png"
+      },
+      "checkboxBgVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/CheckBg.png",
+        "transform":{
+          "size":[0.09, 0.28],
+          "offset":[30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_BEGIN",
+          "anchorPoint":"CENTER_BEGIN"
+        }
+      },
+      "checkboxFgVisual":{
+        "visualType":"IMAGE",
+        "url":"{STYLE_DIR}/images/Tick.png",
+        "transform":{
+          "size":[0.09, 0.28],
+          "offset":[30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_BEGIN",
+          "anchorPoint":"CENTER_BEGIN"
+        }
+      },
+      "labelVisual":{
+        "visualType":"TEXT",
+        "text":"Don't show again",
+        "pointSize":20,
+        "horizontalAlignment":"END",
+        "verticalAlignment":"CENTER",
+        "textColor":[1,1,1,1],
+        "mixColor":[0.3, 0.3, 0.3, 1],
+        "transform":{
+          "size":[0.9, 0.9],
+          "offset":[-30,0],
+          "offsetPolicy":["ABSOLUTE", "ABSOLUTE"],
+          "sizePolicy":["RELATIVE", "RELATIVE"],
+          "origin":"CENTER_END",
+          "anchorPoint":"CENTER_END"
+        }
+      },
+      "activeTransition":
+      [
+        {
+          "target":"checkboxBgVisual",
+          "property":"size",
+          "initialValue":[0.09, 0.28],
+          "targetValue":[0.12, 0.37],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ],
+      "inactiveTransition":
+      [
+        {
+          "target":"checkboxBgVisual",
+          "property":"size",
+          "initialValue":[0.12, 0.37],
+          "targetValue":[0.09, 0.28],
+          "animator":
+          {
+            "alphaFunction":"EASE_OUT_BACK",
+            "timePeriod":
+            {
+              "duration":0.8,
+              "delay":0
+            }
+          }
+        }
+      ]
+    }
+  }
+}
diff --git a/resources/style/tests-theme.json b/resources/style/tests-theme.json
new file mode 100644 (file)
index 0000000..c25d961
--- /dev/null
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "includes":
+  [
+    "{APPLICATION_RESOURCE_PATH}/style/base-theme.json"
+  ],
+
+  "styles":
+  {
+    "DemoTile":
+    {
+      "styles": ["DemoTileBase"],
+      "states":
+      {
+        "NORMAL":
+        {
+          "color":[0.6, 0.4, 0.9, 0.6]
+        }
+      }
+    },
+
+    "LauncherBackground":
+    {
+      "background":
+      {
+        "visualType": "GRADIENT",
+        "center": [240, 400],
+        "radius": 932,
+        "units": "USER_SPACE",
+        "stopColor": [[0.392157,0.254902,0.647059,1.0],[0.164706,0.0313725,0.270588,1.0]]
+      }
+    },
+
+    "BubbleColor1":
+    {
+      "color": [ 0.8255, 0.2412, 0.9353, 0.32 ]
+    },
+
+    "BubbleColor2":
+    {
+      "color": [ 0.8647, 0.4569, 0.8157, 0.32 ]
+    },
+
+    "BubbleColor3":
+    {
+      "color": [ 0.9804, 0.5412, 0.9510, 0.32 ]
+    },
+
+    "BubbleColor4":
+    {
+      "color": [ 1, 1, 1, 0.13 ]
+    }
+
+  }
+}
diff --git a/resources/style/text-editor-example-theme.json b/resources/style/text-editor-example-theme.json
new file mode 100644 (file)
index 0000000..48470b4
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2000-2017 Samsung Electronics Co., Ltd
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "ScrollBar":
+    {
+      "indicatorShowDuration":1.0,
+      "indicatorHideDuration":1.0,
+      "background": {
+        "rendererType": "image",
+        "url": "{APPLICATION_RESOURCE_PATH}/images/button-disabled.9.png"
+        }
+    },
+    "ScrollBarIndicator":
+    {
+      "resourceUrl":"{APPLICATION_RESOURCE_PATH}/images/button-white-up.9.png"
+    }
+  }
+}
diff --git a/resources/style/tooltip-example-theme.json b/resources/style/tooltip-example-theme.json
new file mode 100644 (file)
index 0000000..aa2cfb5
--- /dev/null
@@ -0,0 +1,85 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+{
+  "styles":
+  {
+    "TooltipTextOnly" :
+    {
+      "tooltip": "Using defaults defined in the Toolkit stylesheet"
+    },
+
+    "TooltipArray" :
+    {
+      "tooltip" :
+      {
+        "content" :
+        [
+          {
+            "visualType" : "IMAGE",
+            "url" : "{APPLICATION_RESOURCE_PATH}/images/application-icon-0.png",
+            "desiredWidth" : 75,
+            "desiredHeight" : 75
+          },
+          {
+            "visualType" : "TEXT",
+            "text" : "An icon on the left and\nmulti-line text on the right",
+            "multiLine" : true,
+            "pointSize" : 16
+          }
+        ],
+        "tail" : true
+      }
+    },
+
+    "TooltipCustom" :
+    {
+      "tooltip":
+      {
+        "content":
+        {
+          "visualType" : "TEXT",
+          "textColor" : [1,1,1,1],
+          "text" : "Completely custom style\nthat disappears on movement",
+          "multiLine" : true,
+          "pointSize" : 16
+        },
+        "waitTime":0.5,
+        "background":
+        {
+          "visual":"{APPLICATION_RESOURCE_PATH}/images/tooltip.9.png",
+          "border":[1,5,5,1]
+        },
+        "tail":
+        {
+          "visibility":true,
+          "aboveVisual":"{APPLICATION_RESOURCE_PATH}/images/tooltip-tail-above.png",
+          "belowVisual":"{APPLICATION_RESOURCE_PATH}/images/tooltip-tail-below.png"
+        },
+        "position":"ABOVE",
+        "hoverPointOffset":[10,10],
+        "movementThreshold":5,
+        "disappearOnMovement":true
+      }
+    },
+
+    "TableView" :
+    {
+      "cellPadding" : [ 5.0, 5.0 ]
+    }
+  }
+}
diff --git a/resources/videos/demoVideo.mp4 b/resources/videos/demoVideo.mp4
new file mode 100755 (executable)
index 0000000..cd7dcd0
Binary files /dev/null and b/resources/videos/demoVideo.mp4 differ
diff --git a/shared/dali-demo-strings.h b/shared/dali-demo-strings.h
new file mode 100644 (file)
index 0000000..08290a1
--- /dev/null
@@ -0,0 +1,244 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+/* This header file includes all multi language strings which need display */
+#ifndef DALI_DEMO_STRINGS_H
+#define DALI_DEMO_STRINGS_H
+
+#ifdef INTERNATIONALIZATION_ENABLED
+#include <libintl.h>
+#endif
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif // __cplusplus
+
+#define DALI_DEMO_DOMAIN_LOCAL "dali-demo"
+
+#define DALI_DEMO_STR_EMPTY _("")
+
+#ifdef INTERNATIONALIZATION_ENABLED
+
+#define DALI_DEMO_STR_TITLE_ANIMATED_IMAGES             dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_ANIMATED_IMAGES")
+#define DALI_DEMO_STR_TITLE_ANIMATED_SHAPES             dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_ANIMATED_SHAPES")
+#define DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES      dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES")
+#define DALI_DEMO_STR_TITLE_ALPHA_BLENDING_CPU          dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_ALPHA_BLENDING_CPU")
+#define DALI_DEMO_STR_TITLE_ARC_VISUAL                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_ARC_VISUAL")
+#define DALI_DEMO_STR_TITLE_BASIC_LIGHT                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_BASIC_LIGHT")
+#define DALI_DEMO_STR_TITLE_BENCHMARK                   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_BENCHMARK")
+#define DALI_DEMO_STR_TITLE_BEZIER_CURVE                dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_BEZIER_CURVE")
+#define DALI_DEMO_STR_TITLE_BLOCKS                      dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_BLOCKS")
+#define DALI_DEMO_STR_TITLE_BLOOM_VIEW                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_BLOOM_VIEW")
+#define DALI_DEMO_STR_TITLE_BUBBLES                     dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_BUBBLES")
+#define DALI_DEMO_STR_TITLE_BUTTONS                     dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_BUTTONS")
+#define DALI_DEMO_STR_TITLE_CALL_ACTIVE                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_CALL_ACTIVE")
+#define DALI_DEMO_STR_TITLE_CARD_ACTIVE                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_CARD_ACTIVE")
+#define DALI_DEMO_STR_TITLE_CLIPPING                    dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_CLIPPING")
+#define DALI_DEMO_STR_TITLE_CLIPPING_DRAW_ORDER         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_CLIPPING_DRAW_ORDER")
+#define DALI_DEMO_STR_TITLE_COLOR_VISUAL                dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_COLOR_VISUAL")
+#define DALI_DEMO_STR_TITLE_DEFERRED_SHADING            dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_DEFERRED_SHADING")
+#define DALI_DEMO_STR_TITLE_GAUSSIAN_BLUR_VIEW          dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_GAUSSIAN_BLUR_VIEW")
+#define DALI_DEMO_STR_TITLE_GESTURES                    dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_GESTURES")
+#define DALI_DEMO_STR_TITLE_COLOR_GRADIENT              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_COLOR_GRADIENT")
+#define DALI_DEMO_STR_TITLE_COMPRESSED_TEXTURE_FORMATS  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_COMPRESSED_TEXTURE_FORMATS")
+#define DALI_DEMO_STR_TITLE_CONTACT_CARDS               dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_CONTACT_CARDS")
+#define DALI_DEMO_STR_TITLE_CUBE_TRANSITION             dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_CUBE_TRANSITION")
+#define DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION")
+#define DALI_DEMO_STR_TITLE_DRAG_AND_DROP               dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_DRAG_AND_DROP")
+#define DALI_DEMO_STR_TITLE_EFFECTS_VIEW                dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_EFFECTS_VIEW")
+#define DALI_DEMO_STR_TITLE_EMOJI_TEXT                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_EMOJI_TEXT")
+#define DALI_DEMO_STR_TITLE_FPP_GAME                    dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_FPP_GAME")
+#define DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND          dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND")
+#define DALI_DEMO_STR_TITLE_FOCUS_INTEGRATION           dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_FOCUS_INTEGRATION")
+#define DALI_DEMO_STR_TITLE_FRAME_CALLBACK              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_FRAME_CALLBACK")
+#define DALI_DEMO_STR_TITLE_HELLO_WORLD                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_HELLO_WORLD")
+#define DALI_DEMO_STR_TITLE_HOMESCREEN                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_HOMESCREEN")
+#define DALI_DEMO_STR_TITLE_IMAGE_POLICIES              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_POLICIES")
+#define DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING      dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING")
+#define DALI_DEMO_STR_TITLE_IMAGE_SCALING               dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_SCALING")
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_VIEW")
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING")
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA       dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA")
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG")
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_URL              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_IMAGE_VIEW_URL")
+#define DALI_DEMO_STR_TITLE_ITEM_VIEW                   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_ITEM_VIEW")
+#define DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS          dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS")
+#define DALI_DEMO_STR_TITLE_LINE_MESH                   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_LINE_MESH")
+#define DALI_DEMO_STR_TITLE_MAGNIFIER                   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_MAGNIFIER")
+#define DALI_DEMO_STR_TITLE_MESH_MORPH                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_MESH_MORPH")
+#define DALI_DEMO_STR_TITLE_MESH_VISUAL                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_MESH_VISUAL")
+#define DALI_DEMO_STR_TITLE_METABALL_EXPLOSION          dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_METABALL_EXPLOSION")
+#define DALI_DEMO_STR_TITLE_METABALL_REFRAC             dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_METABALL_REFRAC")
+#define DALI_DEMO_STR_TITLE_MOTION_BLUR                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_MOTION_BLUR")
+#define DALI_DEMO_STR_TITLE_MOTION_STRETCH              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_MOTION_STRETCH")
+#define DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE")
+#define DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE")
+#define DALI_DEMO_STR_TITLE_PAGE_TURN                   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PAGE_TURN")
+#define DALI_DEMO_STR_TITLE_PBR                         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PBR")
+#define DALI_DEMO_STR_TITLE_PERF_SCROLL                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PERF_SCROLL")
+#define DALI_DEMO_STR_TITLE_POINT_MESH                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_POINT_MESH")
+#define DALI_DEMO_STR_TITLE_POPUP                       dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_POPUP")
+#define DALI_DEMO_STR_TITLE_PIVOT                       dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PIVOT")
+#define DALI_DEMO_STR_TITLE_PRE_RENDER_CALLBACK         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PRE_RENDER_CALLBACK")
+#define DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES            dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES")
+#define DALI_DEMO_STR_TITLE_PROGRESS_BAR                dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PROGRESS_BAR")
+#define DALI_DEMO_STR_TITLE_PROPERTY_NOTIFICATION       dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_PROPERTY_NOTIFICATION")
+#define DALI_DEMO_STR_TITLE_REFLECTION                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_REFLECTION")
+#define DALI_DEMO_STR_TITLE_REFRACTION                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_REFRACTION")
+#define DALI_DEMO_STR_TITLE_REMOTE_IMAGE                dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_REMOTE_IMAGE")
+#define DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE")
+#define DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE     dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE")
+#define DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE")
+#define DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE     dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE")
+#define DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS")
+#define DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING      dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING")
+#define DALI_DEMO_STR_TITLE_RENDERER_STENCIL            dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_RENDERER_STENCIL")
+#define DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI             dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI")
+#define DALI_DEMO_STR_TITLE_SCROLL_VIEW                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SCROLL_VIEW")
+#define DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW          dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW")
+#define DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL      dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL")
+#define DALI_DEMO_STR_TITLE_SKYBOX                      dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SKYBOX")
+#define DALI_DEMO_STR_TITLE_SPARKLE                     dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SPARKLE")
+#define DALI_DEMO_STR_TITLE_STYLING                     dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_STYLING")
+#define DALI_DEMO_STR_TITLE_SUPER_BLUR_VIEW             dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_SUPER_BLUR_VIEW")
+#define DALI_DEMO_STR_TITLE_TEXTURED_MESH               dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXTURED_MESH")
+#define DALI_DEMO_STR_TITLE_TEXT_EDITOR                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_EDITOR")
+#define DALI_DEMO_STR_TITLE_TEXT_FIELD                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_FIELD")
+#define DALI_DEMO_STR_TITLE_TEXT_FONTS                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_FONTS")
+#define DALI_DEMO_STR_TITLE_TEXT_LABEL                  dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_LABEL")
+#define DALI_DEMO_STR_TITLE_TEXT_MEMORY_PROFILING       dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_MEMORY_PROFILING")
+#define DALI_DEMO_STR_TITLE_TEXT_OVERLAP                dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_OVERLAP")
+#define DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE   dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE")
+#define DALI_DEMO_STR_TITLE_TEXT_SCROLLING              dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_SCROLLING")
+#define DALI_DEMO_STR_TITLE_TILT_SENSOR                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TILT_SENSOR")
+#define DALI_DEMO_STR_TITLE_TOOLTIP                     dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TOOLTIP")
+#define DALI_DEMO_STR_TITLE_VISUAL_FITTING_MODE         dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_VISUAL_FITTING_MODE")
+#define DALI_DEMO_STR_TITLE_VISUAL_TRANSITIONS          dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_VISUAL_TRANSITIONS")
+#define DALI_DEMO_STR_TITLE_WEB_VIEW                    dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_WEB_VIEW")
+#define DALI_DEMO_STR_TITLE_TEXT_RENDERER               dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_RENDERER")
+#define DALI_DEMO_STR_TITLE_TEXT_VISUAL                 dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_VISUAL")
+#define DALI_DEMO_STR_TITLE_TEXT_LABEL_BITMAP_FONT      dgettext(DALI_DEMO_DOMAIN_LOCAL, "DALI_DEMO_STR_TITLE_TEXT_LABEL_BITMAP_FONT")
+
+#else // !INTERNATIONALIZATION_ENABLED
+
+#define DALI_DEMO_STR_TITLE_ANIMATED_IMAGES             "Animated Images"
+#define DALI_DEMO_STR_TITLE_ANIMATED_SHAPES             "Animated Shapes"
+#define DALI_DEMO_STR_TITLE_ANIMATED_VECTOR_IMAGES      "Animated Vector Images"
+#define DALI_DEMO_STR_TITLE_ALPHA_BLENDING_CPU          "CPU Alpha Blending"
+#define DALI_DEMO_STR_TITLE_ARC_VISUAL                  "Arc Visual"
+#define DALI_DEMO_STR_TITLE_BASIC_LIGHT                 "Basic Light"
+#define DALI_DEMO_STR_TITLE_BENCHMARK                   "ImageView Benchmark"
+#define DALI_DEMO_STR_TITLE_BEZIER_CURVE                "Alpha Function Bezier Curve"
+#define DALI_DEMO_STR_TITLE_BLOCKS                      "Blocks"
+#define DALI_DEMO_STR_TITLE_BLOOM_VIEW                  "Bloom"
+#define DALI_DEMO_STR_TITLE_BUBBLES                     "Bubbles"
+#define DALI_DEMO_STR_TITLE_BUTTONS                     "Buttons"
+#define DALI_DEMO_STR_TITLE_CALL_ACTIVE                 "Call Active"
+#define DALI_DEMO_STR_TITLE_CARD_ACTIVE                 "Card Active"
+#define DALI_DEMO_STR_TITLE_CLIPPING                    "Clipping"
+#define DALI_DEMO_STR_TITLE_CLIPPING_DRAW_ORDER         "Clipping Draw Order"
+#define DALI_DEMO_STR_TITLE_COLOR_VISUAL                "Color Visual"
+#define DALI_DEMO_STR_TITLE_GAUSSIAN_BLUR_VIEW          "Gaussian Blur"
+#define DALI_DEMO_STR_TITLE_GESTURES                    "Gestures"
+#define DALI_DEMO_STR_TITLE_COLOR_GRADIENT              "Color Gradient"
+#define DALI_DEMO_STR_TITLE_COMPRESSED_TEXTURE_FORMATS  "Compressed Texture Formats"
+#define DALI_DEMO_STR_TITLE_CONTACT_CARDS               "Contact Cards"
+#define DALI_DEMO_STR_TITLE_CUBE_TRANSITION             "Cube Effect"
+#define DALI_DEMO_STR_TITLE_DEFERRED_SHADING            "Deferred Shading"
+#define DALI_DEMO_STR_TITLE_DISSOLVE_TRANSITION         "Dissolve Effect"
+#define DALI_DEMO_STR_TITLE_DRAG_AND_DROP               "Drag and Drop"
+#define DALI_DEMO_STR_TITLE_EFFECTS_VIEW                "Effects View"
+#define DALI_DEMO_STR_TITLE_EMOJI_TEXT                  "Emoji Text"
+#define DALI_DEMO_STR_TITLE_FPP_GAME                    "First Person Game"
+#define DALI_DEMO_STR_TITLE_FLEXBOX_PLAYGROUND          "Flexbox Playground"
+#define DALI_DEMO_STR_TITLE_FOCUS_INTEGRATION           "Focus Integration"
+#define DALI_DEMO_STR_TITLE_FRAME_CALLBACK              "Frame Callback"
+#define DALI_DEMO_STR_TITLE_HELLO_WORLD                 "Hello World"
+#define DALI_DEMO_STR_TITLE_HOMESCREEN                  "Homescreen Benchmark"
+#define DALI_DEMO_STR_TITLE_IMAGE_POLICIES              "Image Policies"
+#define DALI_DEMO_STR_TITLE_IMAGE_FITTING_SAMPLING      "Image Fitting and Sampling"
+#define DALI_DEMO_STR_TITLE_IMAGE_SCALING               "Image Scaling Grid"
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW                  "Image View"
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_ALPHA_BLENDING   "Image View Alpha Blending"
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_PIXEL_AREA       "Image View Pixel Area"
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_SVG              "Image View SVG"
+#define DALI_DEMO_STR_TITLE_IMAGE_VIEW_URL              "Image View URL"
+#define DALI_DEMO_STR_TITLE_ITEM_VIEW                   "Item View"
+#define DALI_DEMO_STR_TITLE_LIGHTS_AND_SHADOWS          "Lights and shadows"
+#define DALI_DEMO_STR_TITLE_LINE_MESH                   "Mesh Line"
+#define DALI_DEMO_STR_TITLE_MAGNIFIER                   "Magnifier"
+#define DALI_DEMO_STR_TITLE_MESH_MORPH                  "Mesh Morph"
+#define DALI_DEMO_STR_TITLE_MESH_VISUAL                 "Mesh Visual"
+#define DALI_DEMO_STR_TITLE_METABALL_EXPLOSION          "Metaball Explosion"
+#define DALI_DEMO_STR_TITLE_METABALL_REFRAC             "Metaball Refractions"
+#define DALI_DEMO_STR_TITLE_MOTION_BLUR                 "Motion Blur"
+#define DALI_DEMO_STR_TITLE_MOTION_STRETCH              "Motion Stretch"
+#define DALI_DEMO_STR_TITLE_NATIVE_IMAGE_SOURCE         "Native Image Source"
+#define DALI_DEMO_STR_TITLE_NEGOTIATE_SIZE              "Negotiate Size"
+#define DALI_DEMO_STR_TITLE_PAGE_TURN                   "Page Turn"
+#define DALI_DEMO_STR_TITLE_PBR                         "PBR"
+#define DALI_DEMO_STR_TITLE_PERF_SCROLL                 "Scrolling Performance"
+#define DALI_DEMO_STR_TITLE_POINT_MESH                  "Point Mesh"
+#define DALI_DEMO_STR_TITLE_POPUP                       "Popup"
+#define DALI_DEMO_STR_TITLE_PIVOT                       "Pivot"
+#define DALI_DEMO_STR_TITLE_PRE_RENDER_CALLBACK         "Pre Render Callback"
+#define DALI_DEMO_STR_TITLE_PRIMITIVE_SHAPES            "Primitive Shapes"
+#define DALI_DEMO_STR_TITLE_PROGRESS_BAR                "Progress Bar"
+#define DALI_DEMO_STR_TITLE_PROPERTY_NOTIFICATION       "Property Notification"
+#define DALI_DEMO_STR_TITLE_REFLECTION                  "Reflection"
+#define DALI_DEMO_STR_TITLE_REFRACTION                  "Refract Effect"
+#define DALI_DEMO_STR_TITLE_REMOTE_IMAGE                "Remote Image"
+#define DALI_DEMO_STR_TITLE_RENDERING_DRAW_LINE         "Draw Line"
+#define DALI_DEMO_STR_TITLE_RENDERING_DRAW_TRIANGLE     "Draw Triangle"
+#define DALI_DEMO_STR_TITLE_RENDERING_DRAW_CUBE         "Draw Cube"
+#define DALI_DEMO_STR_TITLE_RENDERING_TEXTURED_CUBE     "Textured Cube"
+#define DALI_DEMO_STR_TITLE_RENDERING_RAY_MARCHING      "Ray Marching"
+#define DALI_DEMO_STR_TITLE_RENDERING_RADIAL_PROGRESS   "Radial Progress"
+#define DALI_DEMO_STR_TITLE_RENDERER_STENCIL            "Renderer Stencils"
+#define DALI_DEMO_STR_TITLE_SCRIPT_BASED_UI             "Script Based UI"
+#define DALI_DEMO_STR_TITLE_SCROLL_VIEW                 "Scroll View"
+#define DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW          "Simple Scroll View"
+#define DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL      "Simple Visuals Control"
+#define DALI_DEMO_STR_TITLE_SKYBOX                      "Skybox"
+#define DALI_DEMO_STR_TITLE_SPARKLE                     "Sparkle"
+#define DALI_DEMO_STR_TITLE_STYLING                     "Styling"
+#define DALI_DEMO_STR_TITLE_SUPER_BLUR_VIEW             "Super Blur"
+#define DALI_DEMO_STR_TITLE_TEXTURED_MESH               "Mesh Texture"
+#define DALI_DEMO_STR_TITLE_TEXT_EDITOR                 "Text Editor"
+#define DALI_DEMO_STR_TITLE_TEXT_FIELD                  "Text Field"
+#define DALI_DEMO_STR_TITLE_TEXT_FONTS                  "Text Fonts"
+#define DALI_DEMO_STR_TITLE_TEXT_LABEL                  "Text Label"
+#define DALI_DEMO_STR_TITLE_TEXT_MEMORY_PROFILING       "Text Memory Profiling"
+#define DALI_DEMO_STR_TITLE_TEXT_OVERLAP                "Text Overlap"
+#define DALI_DEMO_STR_TITLE_TEXT_LABEL_MULTI_LANGUAGE   "Text Scripts"
+#define DALI_DEMO_STR_TITLE_TEXT_SCROLLING              "Text Scrolling"
+#define DALI_DEMO_STR_TITLE_TILT_SENSOR                 "Tilt Sensor"
+#define DALI_DEMO_STR_TITLE_TOOLTIP                     "Tooltip"
+#define DALI_DEMO_STR_TITLE_VISUAL_FITTING_MODE         "Visual Fitting Mode"
+#define DALI_DEMO_STR_TITLE_VISUAL_TRANSITIONS          "Visual Transitions"
+#define DALI_DEMO_STR_TITLE_WEB_VIEW                    "Web View"
+#define DALI_DEMO_STR_TITLE_TEXT_RENDERER               "Text Renderer"
+#define DALI_DEMO_STR_TITLE_TEXT_VISUAL                 "Text Visual"
+#define DALI_DEMO_STR_TITLE_TEXT_LABEL_BITMAP_FONT      "Text Bitmap Font"
+#endif
+
+#ifdef __cplusplus
+}
+#endif // __cplusplus
+
+#endif // DALI_DEMO_STRINGS_H
diff --git a/shared/dali-table-view.cpp b/shared/dali-table-view.cpp
new file mode 100644 (file)
index 0000000..8fcf8b1
--- /dev/null
@@ -0,0 +1,951 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "dali-table-view.h"
+
+// EXTERNAL INCLUDES
+#include <algorithm>
+#include <dali/devel-api/images/distance-field.h>
+#include <dali-toolkit/devel-api/shader-effects/alpha-discard-effect.h>
+#include <dali-toolkit/devel-api/shader-effects/distance-field-effect.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+
+// INTERNAL INCLUDES
+#include "shared/execute-process.h"
+#include "shared/utility.h"
+#include "shared/view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+///////////////////////////////////////////////////////////////////////////////
+
+namespace
+{
+
+const std::string LOGO_PATH( DEMO_IMAGE_DIR "Logo-for-demo.png" );
+
+// Keyboard focus effect constants.
+const float KEYBOARD_FOCUS_ANIMATION_DURATION = 1.0f;           ///< The total duration of the keyboard focus animation
+const int32_t KEYBOARD_FOCUS_ANIMATION_LOOP_COUNT = 5;          ///< The number of loops for the keyboard focus animation
+const float KEYBOARD_FOCUS_FINAL_SCALE_FLOAT = 1.05f;           ///< The final scale of the focus highlight
+const float KEYBOARD_FOCUS_ANIMATED_SCALE_FLOAT = 1.18f;        ///< The scale of the focus highlight during the animation
+const float KEYBOARD_FOCUS_FINAL_ALPHA = 0.7f;                  ///< The final alpha of the focus highlight
+const float KEYBOARD_FOCUS_ANIMATING_ALPHA = 0.0f;              ///< The alpha of the focus highlight during the animation
+const float KEYBOARD_FOCUS_FADE_PERCENTAGE = 0.16f;             ///< The duration of the fade (from translucent to the final-alpha) as a percentage of the overall animation duration
+const Vector3 KEYBOARD_FOCUS_FINAL_SCALE( KEYBOARD_FOCUS_FINAL_SCALE_FLOAT, KEYBOARD_FOCUS_FINAL_SCALE_FLOAT, KEYBOARD_FOCUS_FINAL_SCALE_FLOAT );  ///< @see KEYBOARD_FOCUS_START_SCALE_FLOAT
+const Vector3 FOCUS_INDICATOR_ANIMATING_SCALE( KEYBOARD_FOCUS_ANIMATED_SCALE_FLOAT, KEYBOARD_FOCUS_ANIMATED_SCALE_FLOAT, KEYBOARD_FOCUS_ANIMATED_SCALE_FLOAT );   ///< @see KEYBOARD_FOCUS_END_SCALE_FLOAT
+const float KEYBOARD_FOCUS_MID_KEY_FRAME_TIME = KEYBOARD_FOCUS_ANIMATION_DURATION - ( KEYBOARD_FOCUS_ANIMATION_DURATION * KEYBOARD_FOCUS_FADE_PERCENTAGE ); ///< Time of the mid key-frame
+
+const float TILE_LABEL_PADDING = 8.0f;                          ///< Border between edge of tile and the example text
+const float BUTTON_PRESS_ANIMATION_TIME = 0.35f;                ///< Time to perform button scale effect.
+const float ROTATE_ANIMATION_TIME = 0.5f;                       ///< Time to perform rotate effect.
+const int MAX_PAGES = 256;                                      ///< Maximum pages (arbitrary safety limit)
+const int EXAMPLES_PER_ROW = 3;
+const int ROWS_PER_PAGE = 3;
+const int EXAMPLES_PER_PAGE = EXAMPLES_PER_ROW * ROWS_PER_PAGE;
+const float LOGO_MARGIN_RATIO = 0.1f / 0.3f;
+const float BOTTOM_PADDING_RATIO = 0.4f / 0.9f;
+const Vector3 SCROLLVIEW_RELATIVE_SIZE(0.9f, 1.0f, 0.8f );      ///< ScrollView's relative size to its parent
+const Vector3 TABLE_RELATIVE_SIZE(0.95f, 0.9f, 0.8f );          ///< TableView's relative size to the entire stage. The Y value means sum of the logo and table relative heights.
+const float STENCIL_RELATIVE_SIZE = 1.0f;
+
+const float EFFECT_SNAP_DURATION = 0.66f;                       ///< Scroll Snap Duration for Effects
+const float EFFECT_FLICK_DURATION = 0.5f;                       ///< Scroll Flick Duration for Effects
+const Vector3 ANGLE_CUBE_PAGE_ROTATE(Math::PI * 0.5f, Math::PI * 0.5f, 0.0f);
+
+const char * const BUBBLE_COLOR_STYLE_NAME[] =
+{
+  "BubbleColor1",
+  "BubbleColor2",
+  "BubbleColor3",
+  "BubbleColor4"
+};
+const int NUMBER_OF_BUBBLE_COLORS( sizeof( BUBBLE_COLOR_STYLE_NAME ) / sizeof( BUBBLE_COLOR_STYLE_NAME[ 0 ] ) );
+
+const char * const SHAPE_IMAGE_TABLE[] =
+{
+  DEMO_IMAGE_DIR "shape-circle.png",
+  DEMO_IMAGE_DIR "shape-bubble.png"
+};
+const int NUMBER_OF_SHAPE_IMAGES( sizeof( SHAPE_IMAGE_TABLE ) / sizeof( SHAPE_IMAGE_TABLE[0] ) );
+
+const int NUM_BACKGROUND_IMAGES = 18;
+const float BACKGROUND_SPREAD_SCALE = 1.5f;
+
+const unsigned int BACKGROUND_ANIMATION_DURATION = 15000; // 15 secs
+
+const float BUBBLE_MIN_Z = -1.0;
+const float BUBBLE_MAX_Z = 0.0f;
+
+const char * const DEMO_BUILD_DATE    = __DATE__ " " __TIME__;
+
+/**
+ * Creates the background image
+ */
+Control CreateBackground( std::string stylename )
+{
+  Control background = Control::New();
+  Stage::GetCurrent().Add( background );
+  background.SetStyleName( stylename );
+  background.SetName( "BACKGROUND" );
+  background.SetAnchorPoint( AnchorPoint::CENTER );
+  background.SetParentOrigin( ParentOrigin::CENTER );
+  background.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  return background;
+}
+
+/**
+ * Constraint to return a position for a bubble based on the scroll value and vertical wrapping
+ */
+struct AnimateBubbleConstraint
+{
+public:
+  AnimateBubbleConstraint( const Vector3& initialPos, float scale )
+  : mInitialX( initialPos.x ),
+    mScale( scale )
+  {
+  }
+
+  void operator()( Vector3& position, const PropertyInputContainer& inputs )
+  {
+    const Vector3& parentSize = inputs[1]->GetVector3();
+    const Vector3& childSize = inputs[2]->GetVector3();
+
+    // Wrap bubbles vertically.
+    float range = parentSize.y + childSize.y;
+    // This performs a float mod (we don't use fmod as we want the arithmetic modulus as opposed to the remainder).
+    position.y -= range * ( floor( position.y / range ) + 0.5f );
+
+    // Bubbles X position moves parallax to horizontal
+    // panning by a scale factor unique to each bubble.
+    position.x = mInitialX + ( inputs[0]->GetVector2().x * mScale );
+  }
+
+private:
+  float mInitialX;
+  float mScale;
+};
+
+/**
+ * Constraint to precalculate values from the scroll-view
+ * and tile positions to pass to the tile shader.
+ */
+struct TileShaderPositionConstraint
+{
+  TileShaderPositionConstraint( float pageWidth, float tileXOffset )
+  : mPageWidth( pageWidth ),
+    mTileXOffset( tileXOffset )
+  {
+  }
+
+  void operator()( Vector3& position, const PropertyInputContainer& inputs )
+  {
+    // Set up position.x as the tiles X offset (0.0 -> 1.0).
+    position.x = mTileXOffset;
+    // Set up position.z as the linear scroll-view X offset (0.0 -> 1.0).
+    position.z = 1.0f * ( -fmod( inputs[0]->GetVector2().x, mPageWidth ) / mPageWidth );
+    // Set up position.y as a rectified version of the scroll-views X offset.
+    // IE. instead of 0.0 -> 1.0, it moves between 0.0 -> 0.5 -> 0.0 within the same span.
+    if( position.z > 0.5f )
+    {
+      position.y = 1.0f - position.z;
+    }
+    else
+    {
+      position.y = position.z;
+    }
+  }
+
+private:
+  float mPageWidth;
+  float mTileXOffset;
+};
+
+bool CompareByTitle( const Example& lhs, const Example& rhs )
+{
+  return lhs.title < rhs.title;
+}
+
+} // namespace
+
+DaliTableView::DaliTableView( Application& application )
+: mApplication( application ),
+  mRootActor(),
+  mRotateAnimation(),
+  mPressedAnimation(),
+  mScrollView(),
+  mScrollViewEffect(),
+  mScrollRulerX(),
+  mScrollRulerY(),
+  mPressedActor(),
+  mAnimationTimer(),
+  mLogoTapDetector(),
+  mVersionPopup(),
+  mPages(),
+  mBackgroundAnimations(),
+  mExampleList(),
+  mPageWidth( 0.0f ),
+  mTotalPages(),
+  mScrolling( false ),
+  mSortAlphabetically( false ),
+  mBackgroundAnimsPlaying( false )
+{
+  application.InitSignal().Connect( this, &DaliTableView::Initialize );
+}
+
+DaliTableView::~DaliTableView()
+{
+}
+
+void DaliTableView::AddExample( Example example )
+{
+  mExampleList.push_back( example );
+}
+
+void DaliTableView::SortAlphabetically( bool sortAlphabetically )
+{
+  mSortAlphabetically = sortAlphabetically;
+}
+
+void DaliTableView::Initialize( Application& application )
+{
+  Stage::GetCurrent().KeyEventSignal().Connect( this, &DaliTableView::OnKeyEvent );
+  const Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+  // Background
+  mRootActor = CreateBackground( "LauncherBackground" );
+  Stage::GetCurrent().Add( mRootActor );
+
+  // Add logo
+  ImageView logo = ImageView::New( LOGO_PATH );
+  logo.SetName( "LOGO_IMAGE" );
+  logo.SetAnchorPoint( AnchorPoint::TOP_CENTER );
+  logo.SetParentOrigin( Vector3( 0.5f, 0.1f, 0.5f ) );
+  logo.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+  // The logo should appear on top of everything.
+  logo.SetDrawMode( DrawMode::OVERLAY_2D );
+  mRootActor.Add( logo );
+
+  // Show version in a popup when log is tapped
+  mLogoTapDetector = TapGestureDetector::New();
+  mLogoTapDetector.Attach( logo );
+  mLogoTapDetector.DetectedSignal().Connect( this, &DaliTableView::OnLogoTapped );
+
+  // Scrollview occupying the majority of the screen
+  mScrollView = ScrollView::New();
+  mScrollView.SetAnchorPoint( AnchorPoint::BOTTOM_CENTER );
+  mScrollView.SetParentOrigin( Vector3( 0.5f, 1.0f - 0.05f, 0.5f ) );
+  mScrollView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+  mScrollView.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::HEIGHT );
+  mScrollView.SetSizeModeFactor( Vector3( 0.0f, 0.6f, 0.0f ) );
+
+  const float buttonsPageMargin = ( 1.0f - TABLE_RELATIVE_SIZE.x ) * 0.5f * stageSize.width;
+  mScrollView.SetPadding( Padding( buttonsPageMargin, buttonsPageMargin, 0.0f, 0.0f ) );
+
+  mScrollView.SetAxisAutoLock( true );
+  mScrollView.ScrollCompletedSignal().Connect( this, &DaliTableView::OnScrollComplete );
+  mScrollView.ScrollStartedSignal().Connect( this, &DaliTableView::OnScrollStart );
+  mScrollView.TouchSignal().Connect( this, &DaliTableView::OnScrollTouched );
+
+  mPageWidth = stageSize.width * TABLE_RELATIVE_SIZE.x * 0.5f;
+
+  // Populate background and bubbles - needs to be scrollViewLayer so scroll ends show
+  Actor bubbleContainer = Actor::New();
+  bubbleContainer.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  bubbleContainer.SetAnchorPoint( AnchorPoint::CENTER );
+  bubbleContainer.SetParentOrigin( ParentOrigin::CENTER );
+  SetupBackground( bubbleContainer );
+
+  mRootActor.Add( bubbleContainer );
+  mRootActor.Add( mScrollView );
+
+  // Add scroll view effect and setup constraints on pages
+  ApplyScrollViewEffect();
+
+  // Add pages and tiles
+  Populate();
+
+  // Remove constraints for inner cube effect
+  ApplyCubeEffectToPages();
+
+  Dali::Window winHandle = application.GetWindow();
+
+  if( stageSize.width <= stageSize.height )
+  {
+    winHandle.AddAvailableOrientation( Dali::Window::PORTRAIT );
+    winHandle.RemoveAvailableOrientation( Dali::Window::LANDSCAPE );
+    winHandle.AddAvailableOrientation( Dali::Window::PORTRAIT_INVERSE );
+    winHandle.RemoveAvailableOrientation( Dali::Window::LANDSCAPE_INVERSE );
+  }
+  else
+  {
+    winHandle.AddAvailableOrientation( Dali::Window::LANDSCAPE );
+    winHandle.RemoveAvailableOrientation( Dali::Window::PORTRAIT );
+    winHandle.AddAvailableOrientation( Dali::Window::LANDSCAPE_INVERSE );
+    winHandle.RemoveAvailableOrientation( Dali::Window::PORTRAIT_INVERSE );
+  }
+
+  // Set initial orientation
+  unsigned int degrees = 0;
+  Rotate( degrees );
+
+  winHandle.ShowIndicator( Dali::Window::INVISIBLE );
+
+  // Background animation
+  mAnimationTimer = Timer::New( BACKGROUND_ANIMATION_DURATION );
+  mAnimationTimer.TickSignal().Connect( this, &DaliTableView::PauseBackgroundAnimation );
+  mAnimationTimer.Start();
+  mBackgroundAnimsPlaying = true;
+
+  CreateFocusEffect();
+}
+
+void DaliTableView::CreateFocusEffect()
+{
+  // Hook the required signals to manage the focus.
+  auto keyboardFocusManager = KeyboardFocusManager::Get();
+  keyboardFocusManager.PreFocusChangeSignal().Connect( this, &DaliTableView::OnKeyboardPreFocusChange );
+  keyboardFocusManager.FocusedActorEnterKeySignal().Connect( this, &DaliTableView::OnFocusedActorActivated );
+  AccessibilityManager::Get().FocusedActorActivatedSignal().Connect( this, &DaliTableView::OnFocusedActorActivated );
+
+  // Loop to create both actors for the focus highlight effect.
+  for( unsigned int i = 0; i < FOCUS_ANIMATION_ACTOR_NUMBER; ++i )
+  {
+    mFocusEffect[i].actor = ImageView::New();
+    mFocusEffect[i].actor.SetStyleName( "FocusActor" );
+    mFocusEffect[i].actor.SetParentOrigin( ParentOrigin::CENTER );
+    mFocusEffect[i].actor.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+    mFocusEffect[i].actor.SetInheritScale( false );
+    mFocusEffect[i].actor.SetColorMode( USE_OWN_COLOR );
+
+    KeyFrames alphaKeyFrames = KeyFrames::New();
+    alphaKeyFrames.Add( 0.0f, KEYBOARD_FOCUS_FINAL_ALPHA );
+    alphaKeyFrames.Add( KEYBOARD_FOCUS_MID_KEY_FRAME_TIME, KEYBOARD_FOCUS_ANIMATING_ALPHA );
+    alphaKeyFrames.Add( KEYBOARD_FOCUS_ANIMATION_DURATION, KEYBOARD_FOCUS_FINAL_ALPHA );
+
+    KeyFrames scaleKeyFrames = KeyFrames::New();
+    scaleKeyFrames.Add( 0.0f, KEYBOARD_FOCUS_FINAL_SCALE );
+    scaleKeyFrames.Add( KEYBOARD_FOCUS_MID_KEY_FRAME_TIME, FOCUS_INDICATOR_ANIMATING_SCALE );
+    scaleKeyFrames.Add( KEYBOARD_FOCUS_ANIMATION_DURATION, KEYBOARD_FOCUS_FINAL_SCALE );
+
+    mFocusEffect[i].animation = Animation::New( KEYBOARD_FOCUS_ANIMATION_DURATION );
+    mFocusEffect[i].animation.AnimateBetween( Property( mFocusEffect[i].actor, Actor::Property::COLOR_ALPHA ), alphaKeyFrames );
+    mFocusEffect[i].animation.AnimateBetween( Property( mFocusEffect[i].actor, Actor::Property::SCALE ), scaleKeyFrames );
+
+    mFocusEffect[i].animation.SetLoopCount( KEYBOARD_FOCUS_ANIMATION_LOOP_COUNT );
+  }
+
+  // Parent the secondary effect from the primary.
+  mFocusEffect[0].actor.Add( mFocusEffect[1].actor );
+
+  keyboardFocusManager.SetFocusIndicatorActor( mFocusEffect[0].actor );
+
+  // Connect to the on & off stage signals of the indicator which represents when it is enabled & disabled respectively
+  mFocusEffect[0].actor.OnStageSignal().Connect( this, &DaliTableView::OnFocusIndicatorEnabled );
+  mFocusEffect[0].actor.OffStageSignal().Connect( this, &DaliTableView::OnFocusIndicatorDisabled );
+}
+
+void DaliTableView::OnFocusIndicatorEnabled( Actor /* actor */ )
+{
+  // Play the animation on the 1st glow object.
+  mFocusEffect[0].animation.Play();
+
+  // Stagger the animation on the 2nd glow object half way through.
+  mFocusEffect[1].animation.PlayFrom( KEYBOARD_FOCUS_ANIMATION_DURATION / 2.0f );
+}
+
+void DaliTableView::OnFocusIndicatorDisabled( Dali::Actor /* actor */ )
+{
+  // Stop the focus effect animations
+  for( auto i = 0u; i < FOCUS_ANIMATION_ACTOR_NUMBER; ++i )
+  {
+    mFocusEffect[ i ].animation.Stop();
+  }
+}
+
+void DaliTableView::ApplyCubeEffectToPages()
+{
+  ScrollViewPagePathEffect effect = ScrollViewPagePathEffect::DownCast( mScrollViewEffect );
+  unsigned int pageCount(0);
+  for( std::vector< Actor >::iterator pageIter = mPages.begin(); pageIter != mPages.end(); ++pageIter )
+  {
+    Actor page = *pageIter;
+    effect.ApplyToPage( page, pageCount++ );
+  }
+}
+
+void DaliTableView::OnButtonsPageRelayout( const Dali::Actor& actor )
+{
+}
+
+void DaliTableView::Populate()
+{
+  const Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+  mTotalPages = ( mExampleList.size() + EXAMPLES_PER_PAGE - 1 ) / EXAMPLES_PER_PAGE;
+
+  // Populate ScrollView.
+  if( mExampleList.size() > 0 )
+  {
+    if( mSortAlphabetically )
+    {
+      sort( mExampleList.begin(), mExampleList.end(), CompareByTitle );
+    }
+
+    unsigned int exampleCount = 0;
+    ExampleListConstIter iter = mExampleList.begin();
+
+    for( int t = 0; t < mTotalPages; t++ )
+    {
+      // Create Table
+      TableView page = TableView::New( ROWS_PER_PAGE, EXAMPLES_PER_ROW );
+      page.SetAnchorPoint( AnchorPoint::CENTER );
+      page.SetParentOrigin( ParentOrigin::CENTER );
+      page.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+      mScrollView.Add( page );
+
+      // Calculate the number of images going across (columns) within a page, according to the screen resolution and dpi.
+      const float margin = 2.0f;
+      const float tileParentMultiplier = 1.0f / EXAMPLES_PER_ROW;
+
+      for(int row = 0; row < ROWS_PER_PAGE; row++)
+      {
+        for(int column = 0; column < EXAMPLES_PER_ROW; column++)
+        {
+          const Example& example = ( *iter );
+
+          // Calculate the tiles relative position on the page (between 0 & 1 in each dimension).
+          Vector2 position( static_cast<float>( column ) / ( EXAMPLES_PER_ROW - 1.0f ), static_cast<float>( row ) / ( EXAMPLES_PER_ROW - 1.0f ) );
+          Actor tile = CreateTile( example.name, example.title, Vector3( tileParentMultiplier, tileParentMultiplier, 1.0f ), position );
+          AccessibilityManager accessibilityManager = AccessibilityManager::Get();
+          accessibilityManager.SetFocusOrder( tile, ++exampleCount );
+          accessibilityManager.SetAccessibilityAttribute( tile, Dali::Toolkit::AccessibilityManager::ACCESSIBILITY_LABEL,
+                                                  example.title );
+          accessibilityManager.SetAccessibilityAttribute( tile, Dali::Toolkit::AccessibilityManager::ACCESSIBILITY_TRAIT, "Tile" );
+          accessibilityManager.SetAccessibilityAttribute( tile, Dali::Toolkit::AccessibilityManager::ACCESSIBILITY_HINT,
+                                                  "You can run this example" );
+
+          tile.SetPadding( Padding( margin, margin, margin, margin ) );
+          page.AddChild( tile, TableView::CellPosition( row, column ) );
+
+          iter++;
+
+          if( iter == mExampleList.end() )
+          {
+            break;
+          }
+        }
+
+        if( iter == mExampleList.end() )
+        {
+          break;
+        }
+      }
+
+      mPages.push_back( page );
+
+      if( iter == mExampleList.end() )
+      {
+        break;
+      }
+    }
+  }
+
+  // Update Ruler info.
+  mScrollRulerX = new FixedRuler( mPageWidth );
+  mScrollRulerY = new DefaultRuler();
+  mScrollRulerX->SetDomain( RulerDomain( 0.0f, (mTotalPages+1) * stageSize.width * TABLE_RELATIVE_SIZE.x * 0.5f, true ) );
+  mScrollRulerY->Disable();
+  mScrollView.SetRulerX( mScrollRulerX );
+  mScrollView.SetRulerY( mScrollRulerY );
+}
+
+void DaliTableView::Rotate( unsigned int degrees )
+{
+  // Resize the root actor
+  Vector2 stageSize = Stage::GetCurrent().GetSize();
+  Vector3 targetSize( stageSize.x, stageSize.y, 1.0f );
+
+  if( degrees == 90 || degrees == 270 )
+  {
+    targetSize = Vector3( stageSize.y, stageSize.x, 1.0f );
+  }
+
+  if( mRotateAnimation )
+  {
+    mRotateAnimation.Stop();
+    mRotateAnimation.Clear();
+  }
+
+  mRotateAnimation = Animation::New( ROTATE_ANIMATION_TIME );
+  mRotateAnimation.AnimateTo( Property( mRootActor, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( 360 - degrees ) ), Vector3::ZAXIS ), AlphaFunction::EASE_OUT );
+  mRotateAnimation.AnimateTo( Property( mRootActor, Actor::Property::SIZE ), targetSize, AlphaFunction::EASE_OUT );
+  mRotateAnimation.Play();
+}
+
+Actor DaliTableView::CreateTile( const std::string& name, const std::string& title, const Dali::Vector3& sizeMultiplier, Vector2& position )
+{
+  Toolkit::ImageView focusableTile = ImageView::New();
+
+  focusableTile.SetStyleName( "DemoTile" );
+  focusableTile.SetParentOrigin( ParentOrigin::CENTER );
+  focusableTile.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  focusableTile.SetSizeModeFactor( sizeMultiplier );
+  focusableTile.SetName( name );
+
+  // Set the tile to be keyboard focusable
+  focusableTile.SetKeyboardFocusable( true );
+
+  // Register a property with the ImageView. This allows us to inject the scroll-view position into the shader.
+  Property::Value value = Vector3( 0.0f, 0.0f, 0.0f );
+  Property::Index propertyIndex = focusableTile.RegisterProperty( "uCustomPosition", value );
+
+  // We create a constraint to perform a precalculation on the scroll-view X offset
+  // and pass it to the shader uniform, along with the tile's position.
+  Constraint shaderPosition = Constraint::New < Vector3 > ( focusableTile, propertyIndex, TileShaderPositionConstraint( mPageWidth, position.x ) );
+  shaderPosition.AddSource( Source( mScrollView, ScrollView::Property::SCROLL_POSITION ) );
+  shaderPosition.SetRemoveAction( Constraint::Discard );
+  shaderPosition.Apply();
+  //focusableTile.Add( tileContent );
+
+  // Create an ImageView for the 9-patch border around the tile.
+  ImageView borderImage = ImageView::New();
+  borderImage.SetStyleName("DemoTileBorder");
+  borderImage.SetAnchorPoint( AnchorPoint::CENTER );
+  borderImage.SetParentOrigin( ParentOrigin::CENTER );
+  borderImage.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+  borderImage.SetOpacity( 0.8f );
+  focusableTile.Add( borderImage );
+
+  TextLabel label = TextLabel::New();
+  label.SetAnchorPoint( AnchorPoint::CENTER );
+  label.SetParentOrigin( ParentOrigin::CENTER );
+  label.SetStyleName( "LauncherLabel" );
+  label.SetProperty( TextLabel::Property::MULTI_LINE, true );
+  label.SetProperty( TextLabel::Property::TEXT, title );
+  label.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  label.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+  label.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::HEIGHT );
+
+  // Pad around the label as its size is the same as the 9-patch border. It will overlap it without padding.
+  label.SetPadding( Padding( TILE_LABEL_PADDING, TILE_LABEL_PADDING, TILE_LABEL_PADDING, TILE_LABEL_PADDING ) );
+  focusableTile.Add( label );
+
+  // Connect to the touch events
+  focusableTile.TouchSignal().Connect( this, &DaliTableView::OnTilePressed );
+  focusableTile.HoveredSignal().Connect( this, &DaliTableView::OnTileHovered );
+
+  return focusableTile;
+}
+
+bool DaliTableView::OnTilePressed( Actor actor, const TouchData& event )
+{
+  return DoTilePress( actor, event.GetState( 0 ) );
+}
+
+bool DaliTableView::DoTilePress( Actor actor, PointState::Type pointState )
+{
+  bool consumed = false;
+
+  if( PointState::DOWN == pointState )
+  {
+    mPressedActor = actor;
+    consumed = true;
+  }
+
+  // A button press is only valid if the Down & Up events
+  // both occurred within the button.
+  if( ( PointState::UP == pointState ) &&
+      ( mPressedActor == actor ) )
+  {
+    // ignore Example button presses when scrolling or button animating.
+    if( ( !mScrolling ) && ( !mPressedAnimation ) )
+    {
+      std::string name = actor.GetName();
+      const ExampleListIter end = mExampleList.end();
+      for( ExampleListIter iter = mExampleList.begin(); iter != end; ++iter )
+      {
+        if( (*iter).name == name )
+        {
+          // do nothing, until pressed animation finished.
+          consumed = true;
+          break;
+        }
+      }
+    }
+
+    if( consumed )
+    {
+      mPressedAnimation = Animation::New( BUTTON_PRESS_ANIMATION_TIME );
+      mPressedAnimation.SetEndAction( Animation::Discard );
+
+      // scale the content actor within the Tile, as to not affect the placement within the Table.
+      Actor content = actor.GetChildAt(0);
+      mPressedAnimation.AnimateTo( Property( content, Actor::Property::SCALE ), Vector3( 0.7f, 0.7f, 1.0f ), AlphaFunction::EASE_IN_OUT,
+                                 TimePeriod( 0.0f, BUTTON_PRESS_ANIMATION_TIME * 0.5f ) );
+      mPressedAnimation.AnimateTo( Property( content, Actor::Property::SCALE ), Vector3::ONE, AlphaFunction::EASE_IN_OUT,
+                                 TimePeriod( BUTTON_PRESS_ANIMATION_TIME * 0.5f, BUTTON_PRESS_ANIMATION_TIME * 0.5f ) );
+
+      // Rotate button on the Y axis when pressed.
+      mPressedAnimation.AnimateBy( Property( content, Actor::Property::ORIENTATION ), Quaternion( Degree( 0.0f ), Degree( 180.0f ), Degree( 0.0f ) ) );
+
+      mPressedAnimation.Play();
+      mPressedAnimation.FinishedSignal().Connect( this, &DaliTableView::OnPressedAnimationFinished );
+    }
+  }
+  return consumed;
+}
+
+void DaliTableView::OnPressedAnimationFinished( Dali::Animation& source )
+{
+  mPressedAnimation.Reset();
+  if( mPressedActor )
+  {
+    std::string name = mPressedActor.GetName();
+
+    ExecuteProcess( name, mApplication );
+
+    mPressedActor.Reset();
+  }
+}
+
+void DaliTableView::OnScrollStart( const Dali::Vector2& position )
+{
+  mScrolling = true;
+
+  PlayAnimation();
+}
+
+void DaliTableView::OnScrollComplete( const Dali::Vector2& position )
+{
+  mScrolling = false;
+
+  // move focus to 1st item of new page
+  AccessibilityManager accessibilityManager = AccessibilityManager::Get();
+  accessibilityManager.SetCurrentFocusActor(mPages[mScrollView.GetCurrentPage()].GetChildAt(0) );
+}
+
+bool DaliTableView::OnScrollTouched( Actor actor, const TouchData& event )
+{
+  if( PointState::DOWN == event.GetState( 0 ) )
+  {
+    mPressedActor = actor;
+  }
+
+  return false;
+}
+
+void DaliTableView::ApplyScrollViewEffect()
+{
+  // Remove old effect if exists.
+
+  if( mScrollViewEffect )
+  {
+    mScrollView.RemoveEffect( mScrollViewEffect );
+  }
+
+  // Just one effect for now
+  SetupInnerPageCubeEffect();
+
+  mScrollView.ApplyEffect( mScrollViewEffect );
+}
+
+void DaliTableView::SetupInnerPageCubeEffect()
+{
+  const Vector2 stageSize = Stage::GetCurrent().GetSize();
+
+  Dali::Path path = Dali::Path::New();
+  Dali::Property::Array points;
+  points.Resize(3);
+  points[0] = Vector3( stageSize.x*0.5, 0.0f,  stageSize.x*0.5f);
+  points[1] = Vector3( 0.0f, 0.0f, 0.0f );
+  points[2] = Vector3( -stageSize.x*0.5f, 0.0f, stageSize.x*0.5f);
+  path.SetProperty( Path::Property::POINTS, points );
+
+  Dali::Property::Array controlPoints;
+  controlPoints.Resize(4);
+  controlPoints[0] = Vector3( stageSize.x*0.5f, 0.0f, stageSize.x*0.3f );
+  controlPoints[1] = Vector3( stageSize.x*0.3f, 0.0f, 0.0f );
+  controlPoints[2] = Vector3(-stageSize.x*0.3f, 0.0f, 0.0f );
+  controlPoints[3] = Vector3(-stageSize.x*0.5f, 0.0f,  stageSize.x*0.3f );
+  path.SetProperty( Path::Property::CONTROL_POINTS, controlPoints );
+
+
+  mScrollViewEffect = ScrollViewPagePathEffect::New(path,
+                                                    Vector3(-1.0f,0.0f,0.0f),
+                                                    Toolkit::ScrollView::Property::SCROLL_FINAL_X,
+                                                    Vector3(stageSize.x*TABLE_RELATIVE_SIZE.x,stageSize.y*TABLE_RELATIVE_SIZE.y,0.0f),mTotalPages);
+}
+
+void DaliTableView::OnKeyEvent( const KeyEvent& event )
+{
+  if( event.state == KeyEvent::Down )
+  {
+    if ( IsKey( event, Dali::DALI_KEY_ESCAPE) || IsKey( event, Dali::DALI_KEY_BACK) )
+    {
+      // If there's a Popup, Hide it if it's contributing to the display in any way (EG. transitioning in or out).
+      // Otherwise quit.
+      if ( mVersionPopup && ( mVersionPopup.GetDisplayState() != Toolkit::Popup::HIDDEN ) )
+      {
+        mVersionPopup.SetDisplayState( Popup::HIDDEN );
+      }
+      else
+      {
+        mApplication.Quit();
+      }
+    }
+  }
+}
+
+void DaliTableView::SetupBackground( Actor bubbleContainer )
+{
+  // Add bubbles to the bubbleContainer.
+  // Note: The bubbleContainer is parented externally to this function.
+  AddBackgroundActors( bubbleContainer, NUM_BACKGROUND_IMAGES );
+}
+
+void DaliTableView::InitialiseBackgroundActors( Actor actor )
+{
+  // Delete current animations
+  mBackgroundAnimations.clear();
+
+  // Create new animations
+  const Vector3 size = actor.GetTargetSize();
+
+  for( unsigned int i = 0, childCount = actor.GetChildCount(); i < childCount; ++i )
+  {
+    Actor child = actor.GetChildAt( i );
+
+    // Calculate a random position
+    Vector3 childPos( Random::Range( -size.x * 0.5f * BACKGROUND_SPREAD_SCALE, size.x * 0.85f * BACKGROUND_SPREAD_SCALE ),
+                      Random::Range( -size.y, size.y ),
+                      Random::Range( BUBBLE_MIN_Z, BUBBLE_MAX_Z ) );
+
+    child.SetPosition( childPos );
+
+    // Define bubble horizontal parallax and vertical wrapping
+    Constraint animConstraint = Constraint::New < Vector3 > ( child, Actor::Property::POSITION, AnimateBubbleConstraint( childPos, Random::Range( -0.85f, 0.25f ) ) );
+    animConstraint.AddSource( Source( mScrollView, ScrollView::Property::SCROLL_POSITION ) );
+    animConstraint.AddSource( Dali::ParentSource( Dali::Actor::Property::SIZE ) );
+    animConstraint.AddSource( Dali::LocalSource( Dali::Actor::Property::SIZE ) );
+    animConstraint.SetRemoveAction( Constraint::Discard );
+    animConstraint.Apply();
+
+    // Kickoff animation
+    Animation animation = Animation::New( Random::Range( 30.0f, 160.0f ) );
+    animation.AnimateBy( Property( child, Actor::Property::POSITION ), Vector3( 0.0f, -2000.0f, 0.0f ), AlphaFunction::LINEAR );
+    animation.SetLooping( true );
+    animation.Play();
+    mBackgroundAnimations.push_back( animation );
+  }
+}
+
+void DaliTableView::AddBackgroundActors( Actor layer, int count )
+{
+  for( int i = 0; i < count; ++i )
+  {
+    float randSize = Random::Range( 10.0f, 400.0f );
+    int shapeType = static_cast<int>( Random::Range( 0.0f, NUMBER_OF_SHAPE_IMAGES - 1 ) + 0.5f );
+
+    ImageView dfActor = ImageView::New();
+    dfActor.SetSize( Vector2( randSize, randSize ) );
+    dfActor.SetParentOrigin( ParentOrigin::CENTER );
+
+    // Set the Image URL and the custom shader at the same time
+    Dali::Property::Map effect = Toolkit::CreateDistanceFieldEffect();
+    Property::Map imageMap;
+    imageMap.Add( ImageVisual::Property::URL, SHAPE_IMAGE_TABLE[ shapeType ] );
+    imageMap.Add( Toolkit::Visual::Property::SHADER, effect );
+    dfActor.SetProperty( Toolkit::ImageView::Property::IMAGE, imageMap );
+
+    dfActor.SetStyleName( BUBBLE_COLOR_STYLE_NAME[ i%NUMBER_OF_BUBBLE_COLORS ] );
+
+    layer.Add( dfActor );
+  }
+
+  // Positioning will occur when the layer is relaid out
+  layer.OnRelayoutSignal().Connect( this, &DaliTableView::InitialiseBackgroundActors );
+}
+
+bool DaliTableView::PauseBackgroundAnimation()
+{
+  PauseAnimation();
+
+  return false;
+}
+
+void DaliTableView::PauseAnimation()
+{
+  if( mBackgroundAnimsPlaying )
+  {
+    for( AnimationListIter animIter = mBackgroundAnimations.begin(); animIter != mBackgroundAnimations.end(); ++animIter )
+    {
+      Animation anim = *animIter;
+
+      anim.Stop();
+    }
+
+    mBackgroundAnimsPlaying = false;
+  }
+}
+
+void DaliTableView::PlayAnimation()
+{
+  if ( !mBackgroundAnimsPlaying )
+  {
+    for( AnimationListIter animIter = mBackgroundAnimations.begin(); animIter != mBackgroundAnimations.end(); ++animIter )
+    {
+      Animation anim = *animIter;
+
+      anim.Play();
+    }
+
+    mBackgroundAnimsPlaying = true;
+  }
+
+  mAnimationTimer.SetInterval( BACKGROUND_ANIMATION_DURATION );
+}
+
+Dali::Actor DaliTableView::OnKeyboardPreFocusChange( Dali::Actor current, Dali::Actor proposed, Dali::Toolkit::Control::KeyboardFocus::Direction direction )
+{
+  Actor nextFocusActor = proposed;
+
+  if( !current && !proposed  )
+  {
+    // Set the initial focus to the first tile in the current page should be focused.
+    nextFocusActor = mPages[mScrollView.GetCurrentPage()].GetChildAt(0);
+  }
+  else if( !proposed )
+  {
+    // ScrollView is being focused but nothing in the current page can be focused further
+    // in the given direction. We should work out which page to scroll to next.
+    int currentPage = mScrollView.GetCurrentPage();
+    int newPage = currentPage;
+    if( direction == Dali::Toolkit::Control::KeyboardFocus::LEFT )
+    {
+      newPage--;
+    }
+    else if( direction == Dali::Toolkit::Control::KeyboardFocus::RIGHT )
+    {
+      newPage++;
+    }
+
+    newPage = std::max(0, std::min(mTotalPages - 1, newPage));
+    if( newPage == currentPage )
+    {
+      if( direction == Dali::Toolkit::Control::KeyboardFocus::LEFT )
+      {
+        newPage = mTotalPages - 1;
+      } else if( direction == Dali::Toolkit::Control::KeyboardFocus::RIGHT )
+      {
+        newPage = 0;
+      }
+    }
+
+    // Scroll to the page in the given direction
+    mScrollView.ScrollTo(newPage);
+
+    if( direction == Dali::Toolkit::Control::KeyboardFocus::LEFT )
+    {
+      // Work out the cell position for the last tile
+      int remainingExamples = mExampleList.size() - newPage * EXAMPLES_PER_PAGE;
+      int rowPos = (remainingExamples >= EXAMPLES_PER_PAGE) ? ROWS_PER_PAGE - 1 : ( (remainingExamples % EXAMPLES_PER_PAGE + EXAMPLES_PER_ROW) / EXAMPLES_PER_ROW - 1 );
+      int colPos = remainingExamples >= EXAMPLES_PER_PAGE ? EXAMPLES_PER_ROW - 1 : ( remainingExamples % EXAMPLES_PER_PAGE - rowPos * EXAMPLES_PER_ROW - 1 );
+
+      // Move the focus to the last tile in the new page.
+      nextFocusActor = mPages[newPage].GetChildAt(rowPos * EXAMPLES_PER_ROW + colPos);
+    }
+    else
+    {
+      // Move the focus to the first tile in the new page.
+      nextFocusActor = mPages[newPage].GetChildAt(0);
+    }
+  }
+
+  return nextFocusActor;
+}
+
+void DaliTableView::OnFocusedActorActivated( Dali::Actor activatedActor )
+{
+  if(activatedActor)
+  {
+    mPressedActor = activatedActor;
+
+    // Activate the current focused actor;
+    DoTilePress( mPressedActor, PointState::UP );
+  }
+}
+
+bool DaliTableView::OnTileHovered( Actor actor, const HoverEvent& event )
+{
+  KeyboardFocusManager::Get().SetCurrentFocusActor( actor );
+  return true;
+}
+
+void DaliTableView::OnLogoTapped( Dali::Actor actor, const Dali::TapGesture& tap )
+{
+  // Only show if currently fully hidden. If transitioning-out, the transition will not be interrupted.
+  if ( !mVersionPopup || ( mVersionPopup.GetDisplayState() == Toolkit::Popup::HIDDEN ) )
+  {
+    if ( !mVersionPopup )
+    {
+      std::ostringstream stream;
+      stream << "DALi Core: "    << CORE_MAJOR_VERSION << "." << CORE_MINOR_VERSION << "." << CORE_MICRO_VERSION << std::endl << "(" << CORE_BUILD_DATE << ")\n";
+      stream << "DALi Adaptor: " << ADAPTOR_MAJOR_VERSION << "." << ADAPTOR_MINOR_VERSION << "." << ADAPTOR_MICRO_VERSION << std::endl << "(" << ADAPTOR_BUILD_DATE << ")\n";
+      stream << "DALi Toolkit: " << TOOLKIT_MAJOR_VERSION << "." << TOOLKIT_MINOR_VERSION << "." << TOOLKIT_MICRO_VERSION << std::endl << "(" << TOOLKIT_BUILD_DATE << ")\n";
+      stream << "DALi Demo:" << "\n(" << DEMO_BUILD_DATE << ")\n";
+
+      mVersionPopup = Dali::Toolkit::Popup::New();
+
+      Toolkit::TextLabel titleActor = Toolkit::TextLabel::New( "Version information" );
+      titleActor.SetName( "titleActor" );
+      titleActor.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, HorizontalAlignment::CENTER );
+      titleActor.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+
+      Toolkit::TextLabel contentActor = Toolkit::TextLabel::New( stream.str() );
+      contentActor.SetName( "contentActor" );
+      contentActor.SetProperty( Toolkit::TextLabel::Property::MULTI_LINE, true );
+      contentActor.SetProperty( Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, HorizontalAlignment::CENTER );
+      contentActor.SetProperty( Toolkit::TextLabel::Property::TEXT_COLOR, Color::WHITE );
+      contentActor.SetPadding( Padding( 0.0f, 0.0f, 20.0f, 0.0f ) );
+
+      mVersionPopup.SetTitle( titleActor );
+      mVersionPopup.SetContent( contentActor );
+
+      mVersionPopup.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT, Dimension::WIDTH );
+      mVersionPopup.SetSizeModeFactor( Vector3( 0.75f, 1.0f, 1.0f ) );
+      mVersionPopup.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::HEIGHT );
+
+      mVersionPopup.OutsideTouchedSignal().Connect( this, &DaliTableView::HideVersionPopup );
+      Stage::GetCurrent().Add( mVersionPopup );
+    }
+
+    mVersionPopup.SetDisplayState( Popup::SHOWN );
+  }
+}
+
+void DaliTableView::HideVersionPopup()
+{
+  // Only hide if currently fully shown. If transitioning-in, the transition will not be interrupted.
+  if ( mVersionPopup && ( mVersionPopup.GetDisplayState() == Toolkit::Popup::SHOWN ) )
+  {
+    mVersionPopup.SetDisplayState( Popup::HIDDEN );
+  }
+}
diff --git a/shared/dali-table-view.h b/shared/dali-table-view.h
new file mode 100644 (file)
index 0000000..03b22eb
--- /dev/null
@@ -0,0 +1,385 @@
+#ifndef DALI_DEMO_TABLEVIEW_H
+#define DALI_DEMO_TABLEVIEW_H
+
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
+
+class Example;
+
+typedef std::vector<Example> ExampleList;
+typedef ExampleList::iterator ExampleListIter;
+typedef ExampleList::const_iterator ExampleListConstIter;
+
+typedef std::vector<Dali::Animation> AnimationList;
+typedef AnimationList::iterator AnimationListIter;
+typedef AnimationList::const_iterator AnimationListConstIter;
+
+/**
+ * Example information
+ *
+ * Represents a single Example.
+ */
+struct Example
+{
+  // Constructors
+
+  /**
+   * @param[in] name unique name of example
+   * @param[in] title The caption for the example to appear on a tile button.
+   */
+  Example(std::string name, std::string title)
+  : name(name),
+    title(title)
+  {
+  }
+
+  Example()
+  {
+  }
+
+  // Data
+
+  std::string name;                       ///< unique name of example
+  std::string title;                      ///< title (caption) of example to appear on tile button.
+};
+
+
+
+/**
+ * Dali-Demo instance
+ */
+class DaliTableView : public Dali::ConnectionTracker
+{
+public:
+
+  DaliTableView(Dali::Application& application);
+  ~DaliTableView();
+
+public:
+
+  /**
+   * Adds an Example to our demo showcase
+   *
+   * @param[in] example The Example description.
+   *
+   * @note Should be called before the Application MainLoop is started.
+   */
+  void AddExample(Example example);
+
+  /**
+   * Sorts the example list alphabetically by Title if parameter is true.
+   *
+   * @param[in] sortAlphabetically If true, example list is sorted alphabetically.
+   *
+   * @note Should be called before the Application MainLoop is started.
+   * @note By default the examples are NOT sorted alphabetically by Title.
+   */
+  void SortAlphabetically( bool sortAlphabetically );
+
+private: // Application callbacks & implementation
+
+  static const unsigned int FOCUS_ANIMATION_ACTOR_NUMBER = 2; ///< The number of elements used to form the custom focus effect
+
+  /**
+   * Shape enum for create function
+   */
+  enum ShapeType
+  {
+    CIRCLE,
+    BUBBLE
+  };
+
+  /**
+   * Initialize application.
+   *
+   * @param[in] app Application instance
+   */
+  void Initialize( Dali::Application& app );
+
+  /**
+   * Populates the contents (ScrollView) with all the
+   * Examples that have been Added using the AddExample(...)
+   * call
+   */
+  void Populate();
+
+  /**
+   * Rotates RootActor orientation to that specified.
+   *
+   * @param[in] degrees The requested angle.
+   */
+  void Rotate( unsigned int degrees );
+
+  /**
+   * Creates a tile for the main menu.
+   *
+   * @param[in] name The unique name for this Tile
+   * @param[in] title The text caption that appears on the Tile
+   * @param[in] parentSize Tile's parent size.
+   * @param[in] position The tiles relative position within a page
+   *
+   * @return The Actor for the created tile.
+   */
+  Dali::Actor CreateTile( const std::string& name, const std::string& title, const Dali::Vector3& sizeMultiplier, Dali::Vector2& position );
+
+  // Signal handlers
+
+  /**
+   * Signal emitted when any tile has been pressed
+   *
+   * @param[in] actor The Actor representing this tile.
+   * @param[in] event The Touch information.
+   *
+   * @return Consume flag
+   */
+  bool OnTilePressed( Dali::Actor actor, const Dali::TouchData& event );
+
+  /**
+   * Called by OnTilePressed & Accessibility to do the appropriate action.
+   *
+   * @param[in] actor The Actor representing this tile.
+   * @param[in] state The Touch state
+   *
+   * @return Consume flag
+   */
+  bool DoTilePress( Dali::Actor actor, Dali::PointState::Type state );
+
+  /**
+   * Signal emitted when any tile has been hovered
+   *
+   * @param[in] actor The Actor representing this tile.
+   * @param[in] event The HoverEvent
+   *
+   * @return Consume flag
+   */
+  bool OnTileHovered( Dali::Actor actor, const Dali::HoverEvent& event );
+
+  /**
+   * Signal emitted when the pressed animation has completed.
+   *
+   * @param[in] source The animation source.
+   */
+  void OnPressedAnimationFinished(Dali::Animation& source);
+
+  /**
+   * Signal emitted when the button has been clicked
+   *
+   * @param[in] button The Button that is clicked.
+   *
+   * @return Consume flag
+   */
+  bool OnButtonClicked( Dali::Toolkit::Button& button );
+
+  /**
+   * Signal emitted when scrolling has started.
+   *
+   * @param[in] position The current position of the scroll contents.
+   */
+  void OnScrollStart(const Dali::Vector2& position);
+
+  /**
+   * Signal emitted when scrolling has completed.
+   *
+   * @param[in] position The current position of the scroll contents.
+   */
+  void OnScrollComplete(const Dali::Vector2& position);
+
+  /**
+   * Signal emitted when any Sensitive Actor has been touched
+   * (other than those touches consumed by OnTilePressed)
+   *
+   * @param[in] actor The Actor touched.
+   * @param[in] event The Touch information.
+   *
+   * @return Consume flag
+   */
+  bool OnScrollTouched( Dali::Actor actor, const Dali::TouchData& event );
+
+  /**
+   * Setup the effect on the scroll view
+   */
+  void ApplyScrollViewEffect();
+
+  /**
+   * Apply the cube effect to all the page actors
+   */
+  void ApplyCubeEffectToPages();
+
+  /**
+   * Setup the inner cube effect
+   */
+  void SetupInnerPageCubeEffect();
+
+  /**
+   * Apply a shader effect to a table tile
+   */
+  void ApplyEffectToTile(Dali::Actor tile);
+
+  /**
+   * Apply effect to the content of a tile
+   */
+  void ApplyEffectToTileContent(Dali::Actor tileContent);
+
+  /**
+   * Key event handler
+   */
+  void OnKeyEvent( const Dali::KeyEvent& event );
+
+  /**
+   * Create a depth field background
+   *
+   * @param[in] bubbleLayer Add the graphics to this layer
+   */
+  void SetupBackground( Dali::Actor bubbleLayer );
+
+  /**
+   * Create background actors for the given layer
+   *
+   * @param[in] layer The layer to add the actors to
+   * @param[in] count The number of actors to generate
+   */
+  void AddBackgroundActors( Dali::Actor layer, int count );
+
+  /**
+   * Timer handler for ending background animation
+   *
+   * @return Return value for timer handler
+   */
+  bool PauseBackgroundAnimation();
+
+  /**
+   * Pause all animations
+   */
+  void PauseAnimation();
+
+  /**
+   * Resume all animations
+   */
+  void PlayAnimation();
+
+  /**
+   * @brief Creates and sets up the custom effect used for the keyboard (and mouse) focus.
+   */
+  void CreateFocusEffect();
+
+  /**
+   * Callback when the keyboard focus is going to be changed.
+   *
+   * @param[in] current The current focused actor
+   * @param[in] proposed The actor proposed by the keyboard focus manager to move the focus to
+   * @param[in] direction The direction to move the focus
+   * @return The actor to move the keyboard focus to.
+   */
+  Dali::Actor OnKeyboardPreFocusChange( Dali::Actor current, Dali::Actor proposed, Dali::Toolkit::Control::KeyboardFocus::Direction direction );
+
+  /**
+   * Callback when the keyboard focused actor is activated.
+   *
+   * @param[in] activatedActor The activated actor
+   */
+  void OnFocusedActorActivated( Dali::Actor activatedActor );
+
+  /**
+   * Callback when the keyboard focus indicator is enabled.
+   *
+   * @param[in] actor The keyboard focus indicator.
+   */
+  void OnFocusIndicatorEnabled( Dali::Actor actor );
+
+  /**
+   * Callback when the keyboard focus indicator is disabled.
+   *
+   * @param[in] actor The keyboard focus indicator.
+   */
+  void OnFocusIndicatorDisabled( Dali::Actor actor );
+
+  /**
+   * Called when the logo is tapped
+   *
+   * @param[in]  actor  The tapped actor
+   * @param[in]  tap    The tap information.
+   */
+  void OnLogoTapped( Dali::Actor actor, const Dali::TapGesture& tap );
+
+  /**
+   * Hides the popup
+   */
+  void HideVersionPopup();
+
+ /*
+  * @brief Callback called when the buttons page actor is relaid out
+  *
+  * @param[in] actor The page actor
+  */
+ void OnButtonsPageRelayout( const Dali::Actor& actor );
+
+ /**
+  * @brief The is connected to the keyboard focus highlight actor, and called when it is placed on stage.
+  * @param[in] actor The actor that has been placed on stage.
+  */
+ void OnStageConnect( Dali::Actor actor );
+
+ /**
+  * @brief Callback called to set up background actors
+  *
+  * @param[in] actor The actor raising the callback
+  */
+ void InitialiseBackgroundActors( Dali::Actor actor );
+
+private:
+
+  Dali::Application&              mApplication;              ///< Application instance.
+  Dali::Toolkit::Control          mRootActor;                ///< All content (excluding background is anchored to this Actor)
+  Dali::Animation                 mRotateAnimation;          ///< Animation to rotate and resize mRootActor.
+  Dali::Animation                 mPressedAnimation;         ///< Button press scaling animation.
+  Dali::Toolkit::ScrollView       mScrollView;               ///< ScrollView container (for all Examples)
+  Dali::Toolkit::ScrollViewEffect mScrollViewEffect;         ///< Effect to be applied to the scroll view
+  Dali::Toolkit::RulerPtr         mScrollRulerX;             ///< ScrollView X (horizontal) ruler
+  Dali::Toolkit::RulerPtr         mScrollRulerY;             ///< ScrollView Y (vertical) ruler
+  Dali::Actor                     mPressedActor;             ///< The currently pressed actor.
+  Dali::Timer                     mAnimationTimer;           ///< Timer used to turn off animation after a specific time period
+  Dali::TapGestureDetector        mLogoTapDetector;          ///< To detect taps on the logo
+  Dali::Toolkit::Popup            mVersionPopup;             ///< Displays DALi library version information
+
+  /**
+   * This struct encapsulates all data relevant to each of the elements used within the custom keyboard focus effect.
+   */
+  struct FocusEffect
+  {
+    Dali::Toolkit::ImageView        actor;                   ///< The parent keyboard focus highlight actor
+    Dali::Animation                 animation;               ///< The animation for the parent keyboard focus highlight actor
+  };
+  FocusEffect mFocusEffect[FOCUS_ANIMATION_ACTOR_NUMBER];    ///< The elements used to create the custom focus effect
+
+  std::vector< Dali::Actor >      mPages;                    ///< List of pages.
+  AnimationList                   mBackgroundAnimations;     ///< List of background bubble animations
+  ExampleList                     mExampleList;              ///< List of examples.
+
+  float                           mPageWidth;                ///< The width of a page within the scroll-view, used to calculate the domain
+  int                             mTotalPages;               ///< Total pages within scrollview.
+
+  bool                            mScrolling:1;              ///< Flag indicating whether view is currently being scrolled
+  bool                            mSortAlphabetically:1;     ///< Sort examples alphabetically.
+  bool                            mBackgroundAnimsPlaying:1; ///< Are background animations playing
+
+};
+
+#endif // DALI_DEMO_TABLEVIEW_H
diff --git a/shared/execute-process-android.cpp b/shared/execute-process-android.cpp
new file mode 100644 (file)
index 0000000..2b91241
--- /dev/null
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+ // FILE HEADER
+#include "execute-process.h"
+
+ // EXTERNAL INCLUDES
+#include <sstream>
+#include <unistd.h>
+
+#include <dali/public-api/common/dali-common.h>
+#include <dali/integration-api/debug.h>
+#include <dali/integration-api/adaptor-framework/android/android-framework.h>
+
+#include <android_native_app_glue.h>
+#include <dali-demo-native-activity-jni.h>
+
+void ExecuteProcess( const std::string& processName, Dali::Application& application )
+{
+  struct android_app* nativeApp = Dali::Integration::AndroidFramework::Get().GetNativeApplication();
+  if (!nativeApp)
+  {
+    DALI_LOG_ERROR("Couldn't get native app.");
+    return;
+  }
+
+  DaliDemoNativeActivity nativeActivity(nativeApp->activity);
+  nativeActivity.LaunchExample(processName);
+}
diff --git a/shared/execute-process-unix.cpp b/shared/execute-process-unix.cpp
new file mode 100644 (file)
index 0000000..aa77771
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+ // FILE HEADER
+#include "execute-process.h"
+
+ // EXTERNAL INCLUDES
+#include <sstream>
+#include <unistd.h>
+#include <dali/public-api/common/dali-common.h>
+
+void ExecuteProcess( const std::string& processName, Dali::Application& application )
+{
+  std::stringstream stream;
+  stream << DEMO_EXAMPLE_BIN << processName.c_str();
+  pid_t pid = fork();
+  if( pid == 0 )
+  {
+    execlp( stream.str().c_str(), processName.c_str(), NULL );
+    DALI_ASSERT_ALWAYS(false && "exec failed!");
+  }
+}
diff --git a/shared/execute-process-win.cpp b/shared/execute-process-win.cpp
new file mode 100644 (file)
index 0000000..4bbc672
--- /dev/null
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+ // FILE HEADER
+#include "execute-process.h"
+
+ // EXTERNAL INCLUDES
+#include <windows.h>
+#include <dali/public-api/common/dali-common.h>
+
+namespace
+{
+const std::string PATH_SEPARATOR( "\\" );
+}
+
+void ExecuteProcess( const std::string& processName, Dali::Application& application )
+{
+  std::string processPathName;
+
+  const bool isRelativePath = '.' == DEMO_EXAMPLE_BIN[0];
+  if (isRelativePath)
+  {
+    char currentPath[MAX_PATH];
+    DWORD numberOfCharacters = GetCurrentDirectory( MAX_PATH, currentPath );
+
+    if( 0u == numberOfCharacters )
+    {
+      DALI_ASSERT_ALWAYS( !"Failed to retrieve the current working directory" );
+    }
+
+    currentPath[numberOfCharacters] = '\0';
+    processPathName = std::string(currentPath) + PATH_SEPARATOR + DEMO_EXAMPLE_BIN + PATH_SEPARATOR + processName + ".exe";
+  }
+  else
+  {
+    processPathName = DEMO_EXAMPLE_BIN + PATH_SEPARATOR + processName + ".exe";
+  }
+
+  STARTUPINFO info = { sizeof( info ) };
+  PROCESS_INFORMATION processInfo;
+  if( CreateProcess( processPathName.c_str(), nullptr, nullptr, nullptr, TRUE, 0, nullptr, nullptr, &info, &processInfo ) )
+  {
+    WaitForSingleObject( processInfo.hProcess, INFINITE );
+    CloseHandle( processInfo.hProcess );
+    CloseHandle( processInfo.hThread );
+  }
+}
diff --git a/shared/execute-process.h b/shared/execute-process.h
new file mode 100644 (file)
index 0000000..c3d11cd
--- /dev/null
@@ -0,0 +1,28 @@
+#ifndef DALI_DEMO_EXECUTE_PROCESS_H
+#define DALI_DEMO_EXECUTE_PROCESS_H
+
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+ // EXTERNAL INCLUDES
+#include <string>
+#include <dali/public-api/adaptor-framework/application.h>
+
+void ExecuteProcess( const std::string& processName, Dali::Application& application );
+
+
+#endif // DALI_DEMO_EXECUTE_PROCESS_H
diff --git a/shared/multi-language-strings.h b/shared/multi-language-strings.h
new file mode 100644 (file)
index 0000000..5879d03
--- /dev/null
@@ -0,0 +1,230 @@
+#ifndef DALI_DEMO_MULTI_LANGUAGE_STRINGS_H
+#define DALI_DEMO_MULTI_LANGUAGE_STRINGS_H
+
+/*
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <string>
+
+namespace MultiLanguageStrings
+{
+  struct Language
+  {
+    std::string languageName;
+    std::string languageRomanName;
+    std::string text;
+  };
+
+  const Language LANGUAGES[] = {
+    {
+      "العَرَبِيةُ",
+      "(Arabic)",
+      "لإعادة ترتيب الشاشات، يجب تغيير نوع العرض إلى شبكة قابلة للتخصيص."
+    },
+    {
+      "অসমীয়া লিপি",
+      "(Assamese)",
+      "পৃষ্ঠাসমূহ পুনঃব্যৱস্থিত কৰিবলৈ, আপুনি দৰ্শনৰ প্ৰকাৰ এটা অনুকূলনযোগ্য গ্ৰীডলৈ পৰিৱৰ্তন কৰাটো আৱশ্যক৷"
+    },
+    {
+      "বাংলা",
+      "(Bengali)",
+      "তথ্য লোড করতে অক্ষম৷ পুনরায় চেষ্টা করতে ট্যাপ করুন৷"
+    },
+    {
+      "English",
+      "(English)",
+      "A Quick Brown Fox Jumps Over The Lazy Dog"
+    },
+    {
+      "Español",
+      "(Spanish)",
+      "No se puede añadir más aplicaciones. Se alcanzó la cantidad máxima."
+    },
+    {
+      "فارسی",
+      "(Persian)",
+      "برای مرتب کردن مجدد صفحه‌ها، باید نوع نمایش را به یک نمای شبکه‌ای قابل تنظیم تغییر دهید."
+    },
+    {
+      "Français",
+      "(French)",
+      "La nouvelle page sera composée des Dynamic Box S Planner, Tâches et S Memo"
+    },
+    {
+      "ગુજરાતી લિપિ",
+      "(Gujarati)",
+      "પૃષ્ઠોને ફરીથી ગોઠવવા માટે, તમારે દૃશ્ય પ્રકારને કસ્ટમાઇઝેશન યોગ્ય ગ્રિડ પર બદલવાની જરૂર છે."
+    },
+    {
+      "हिन्दी",
+      "(Hindi)",
+      "पेज पुनः व्यवस्थित करने के लिए, आपको दृश्य प्रकार को अनुकूलित करने योग्य ग्रिड में बदलना होगा।"
+    },
+    {
+      "Bahasa Indonesia",
+      "(Indonesian)",
+      "Tidak dapat menambahkan aplikasi lagi. Jumlah maksimum aplikasi tercapai."
+    },
+    {
+      "ខេមរភាសា",
+      "(Cambodian)",
+      "ដើម្បី​រៀបចំ​ទំព័រ​ឡើងវិញ អ្នក​ត្រូវ​ប្ដូរ​ប្រភេទ​បង្ហាញ​ទៅ​ក្រឡាចត្រង្គ​ដែល​អាច​ប្ដូរ​តាមបំណង។"
+    },
+    {
+      "ಕನ್ನಡ ",
+      "(Kannada)",
+      "ಪುಟಗಳನ್ನು ಮರುವ್ಯವಸ್ಥಿತವಾಗಿ ಇರಿಸಲು, ನೀವು ವೀಕ್ಷಣೆ ವಿಧವನ್ನು ಗ್ರಾಹಕೀಕರಿಸಬಲ್ಲ ಗ್ರಿಡ್‌ಗೆ ಬದಲಾಯಿಸುವುದು ಅಗತ್ಯವಿದೆ."
+    },
+    {
+      "한국어",
+      "(Korean)",
+      "페이지 순서를 변경하려면 보기 방식을 격자 보기(직접 설정)로 변경하세요."
+    },
+    {
+      "ພາສາລາວ",
+      "(Lao)",
+      "ເພື່ອຈັດລຽງໜ້າຄືນ, ທ່ານຈໍາເປັນຕ້ອງປ່ຽນຊະນິດຂອງມຸມມອງໄປຫາຕາຕະລາງທີ່ກຳນົດເອງໄດ້."
+    },
+    {
+      "മലയാളം",
+      "(Malayalam)",
+      "പേജുകൾ പുനഃക്രമീകരിക്കുന്നതിന്, ഇഷ്ടാനുസൃതമാക്കാവുന്ന ഗ്രിഡിലേക്ക് കാഴ്ചയുടെ തരം നിങ്ങൾ മാറ്റേണ്ടതുണ്ട്."
+    },
+    {
+      "मराठी",
+      "(Marathi)",
+      "पृष्‍ठांची पुनर्रचना करा, आपण सानुकूलित करण्‍यायोग्‍य ग्रिडमध्‍ये व्‍ह्यू प्रकार बदलणे गरजेचे आहे."
+    },
+    {
+      "Bahasa Melayu",
+      "(Malay)",
+      "Tidak boleh menambah aplikasi lagi. Bilangan maksimum aplikasi dicapai."
+    },
+    {
+      "မြန်မာဘာသာ",
+      "(Burmese)",
+      "စာမ်က္ႏွာမ်ား ျပန္စီစဥ္ရန္ အျမင္ပံုစံကို စိတ္ၾကိဳက္လုပ္ႏိုင္ေသာ ဂရစ္ တစ္ခုသို႔ ေျပာင္းဖို႔လိုသည္။"
+    },
+    {
+      "नेपाली",
+      "(Nepali)",
+      "थप अनुप्रयोगहरू थप्न सकिएन। अनुप्रयोगहरूको अधिकतम संख्या पुग्यो।"
+    },
+    {
+      "ଓଡ଼ିଆ",
+      "(Oriya)",
+      "ପରବର୍ତ୍ତୀ ପୃଷ୍ଠା ଦେଖିବା ପାଇଁ ଦୁଇ ଆଙ୍ଗୁଠିରେ ସ୍ୱାଇପ୍ କରନ୍ତୁ।"
+    },
+    {
+      "ਗੁਰਮੁਖੀ",
+      "(Punjabi)",
+      "ਇਹ ਫੋਲਡਰ ਅਤੇ ਇਸ ਵਿੱਚ ਸ਼ਾਮਲ ਸਾਰੇ ਆਈਟਮਾਂ ਨੂੰ ਮਿਟਾ ਦੇਵੇਗਾ।"
+    },
+    {
+      "Português",
+      "(Portuguese)",
+      "Para reorganizar páginas, é necessário alterar o tipo de exibição para uma grade personalizável."
+    },
+    {
+      "සිංහල",
+      "(Sinhala)",
+      "පිටු නැවත පෙළ ගැස්වීම සඳහා ඔබ විසින් දසුන් ප්‍රවර්ගය අභිමතීකෘත්‍ය ජාලයකට වෙනස් කළ යුතුය."
+    },
+    {
+      "தமிழ்",
+      "(Tamil)",
+      "பக்கங்களை மறுஒழுங்குபடுத்தவென காட்சி வகையை தனிப்பயனாக்கத்தக்க கட்டமைப்பிற்கு மாற்ற வேண்டியுள்ளது."
+    },
+    {
+      "తెలుగు",
+      "(Telugu)",
+      "మరిన్ని అప్లికేషన్‌లను జోడించడం సాధ్యం కాలేదు. గరిష్ట అప్లికేషన్‌ల సంఖ్యను చేరుకున్నాయి."
+    },
+    {
+      "ภาษาไทย",
+      "(Thai)",
+      "คุณต้องเปลี่ยนชนิดการแสดง เป็นตารางที่กำหนดเองได้ เพื่อจัดหน้าใหม่"
+    },
+    {
+      "Tagalog",
+      "(Tagalog)",
+      "Hindi makapagdagdag ng extra na linya dahil sa paghihigpit sa espasyo"
+    },
+    {
+      "Türkçe",
+      "(Turkish)",
+      "Sayfaları yeniden düzenlemek için özelleştirilebilir kılavuzun görünüm tipini değiştirmeniz gerekir."
+    },
+    {
+      "اُردُو",
+      "(Urdu)",
+      "صفحات کو دوبارہ ترتیب دینے کے لئے، آپ کو منظر کی قسم کو ایک حسب ضرورت گرڈ میں تبدیل کرنا ہوگا۔"
+    },
+    {
+      "tiếng Việt",
+      "(Vietnamese)",
+      "Để sắp xếp lại các trang, bạn cần thay đổi kiểu xem sang dạng lưới tùy chỉnh."
+    },
+    {
+      "漢語",
+      "(Chinese)",
+      "若要重新排列页面,您需要将视图类型更改为可自定义网格。"
+    },
+    {
+      "ꦧꦱꦗꦮ, basa Jawa",
+      "(Javanese)",
+      "ꦧꦱꦗꦮ ꦕꦫꦗꦮ ꦲꦏ꧀ꦱꦫꦗꦮ ꦲꦤꦕꦫꦏ ꧋ꦱꦧꦼꦤ꧀ꦲꦸꦮꦺꦴꦁꦏꦭꦲꦶꦫꦏꦺꦏꦤ꧀ꦛꦶꦩꦂꦢꦶꦏꦭꦤ꧀ꦢꦂꦧꦺꦩꦂꦠꦧꦠ꧀ꦭꦤ꧀ꦲꦏ꧀ꦲꦏ꧀ꦏꦁꦥꦝ꧉"
+    },
+    {
+      "Basa Sunda, ᮘᮞ ᮞᮥᮔ᮪ᮓ",
+      "(Sundanese)",
+      "ᮃᮊ᮪ᮞᮛ ᮞᮥᮔ᮪ᮓ ᮀᮁᮂᮃᮄᮅᮆᮇᮈᮉᮊᮋᮌᮍᮎᮏᮐᮑᮒᮓᮔᮕᮖᮗᮘᮙᮚᮛᮜᮝᮞᮟᮠᮡᮢᮣᮤᮥᮦᮧᮨᮩ᮪᮫ᮬᮭᮮᮯ᮰᮱᮲᮳᮴᮵᮶᮷᮸᮹ᮺᮻᮼᮽᮾᮿ᳀᳁᳂᳃᳄᳅᳆᳇"
+    },
+    {
+      "isiZulu",
+      "(Zulu)",
+      "Sawubona Mhlaba"
+    },
+    {
+      "isiXhosa",
+      "(Xhosa)",
+      "Molo Lizwe"
+    },
+    {
+      "አማርኛ",
+      "(Amharic)",
+      "ያስገቡት PIN ትክክለኛ አይደለም። እባክዎ እንደገና ይሞክሩ።"
+    },
+    {
+      "ᱚᱞ ᱪᱤᱠᱤ",
+      "(Ol Chiki)",
+      "ᱥᱟᱱᱛᱟᱞᱤ ᱵᱟᱝᱞᱟᱫᱮᱥ ᱵᱷᱩᱴᱟᱱ ᱱᱮᱯᱟᱲ"
+    },
+    {
+      "ꯃꯤꯇꯩ ꯃꯌꯦꯛ",
+      "(Meitei)",
+      "ꯅꯡ ꯀꯗꯥꯏꯗꯒꯤꯅꯣ ꯁꯣꯝꯒ ꯎꯟꯅꯖꯕ ꯁꯦ ꯌꯥꯝ ꯅꯨꯉꯥꯏꯖꯩ ꯎꯗꯕ ꯀꯨꯏꯔꯦ"
+    }
+  };
+
+  const unsigned int NUMBER_OF_LANGUAGES = 38u;
+
+} // MultiLanguageStrings
+
+#endif // DALI_DEMO_MULTI_LANGUAGE_STRINGS_H
diff --git a/shared/utility.h b/shared/utility.h
new file mode 100644 (file)
index 0000000..f3ba3e7
--- /dev/null
@@ -0,0 +1,84 @@
+#ifndef DALI_DEMO_UTILITY_H
+#define DALI_DEMO_UTILITY_H
+
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali/dali.h>
+#include <dali/public-api/rendering/geometry.h>
+#include <dali/public-api/rendering/texture.h>
+#include <dali/devel-api/adaptor-framework/image-loading.h>
+
+namespace DemoHelper
+{
+
+Dali::Texture LoadTexture( const char* imagePath,
+                           Dali::ImageDimensions size = Dali::ImageDimensions(),
+                           Dali::FittingMode::Type fittingMode = Dali::FittingMode::DEFAULT,
+                           Dali::SamplingMode::Type samplingMode = Dali::SamplingMode::DEFAULT,
+                           bool orientationCorrection = true )
+{
+  Dali::Devel::PixelBuffer pixelBuffer = LoadImageFromFile(imagePath, size, fittingMode, samplingMode, orientationCorrection );
+  Dali::Texture texture  = Dali::Texture::New( Dali::TextureType::TEXTURE_2D,
+                                               pixelBuffer.GetPixelFormat(),
+                                               pixelBuffer.GetWidth(),
+                                               pixelBuffer.GetHeight() );
+
+  Dali::PixelData pixelData = Dali::Devel::PixelBuffer::Convert(pixelBuffer);
+  texture.Upload( pixelData );
+
+  return texture;
+}
+
+Dali::Texture LoadStageFillingTexture( const char* imagePath )
+{
+  Dali::Vector2 stageSize = Dali::Stage::GetCurrent().GetSize();
+  return LoadTexture( imagePath, Dali::ImageDimensions( stageSize.x, stageSize.y ), Dali::FittingMode::SCALE_TO_FILL, Dali::SamplingMode::BOX_THEN_LINEAR );
+}
+
+Dali::Geometry CreateTexturedQuad()
+{
+  struct Vertex
+  {
+    Dali::Vector2 position;
+    Dali::Vector2 texCoord;
+  };
+
+  static const Vertex data[] = {{ Dali::Vector2( -0.5f, -0.5f ), Dali::Vector2( 0.0f, 0.0f ) },
+                                { Dali::Vector2(  0.5f, -0.5f ), Dali::Vector2( 1.0f, 0.0f ) },
+                                { Dali::Vector2( -0.5f,  0.5f ), Dali::Vector2( 0.0f, 1.0f ) },
+                                { Dali::Vector2(  0.5f,  0.5f ), Dali::Vector2( 1.0f, 1.0f ) }};
+
+  Dali::PropertyBuffer vertexBuffer;
+  Dali::Property::Map vertexFormat;
+  vertexFormat["aPosition"] = Dali::Property::VECTOR2;
+  vertexFormat["aTexCoord"] = Dali::Property::VECTOR2;
+
+  //Create a vertex buffer for vertex positions and texture coordinates
+  vertexBuffer = Dali::PropertyBuffer::New( vertexFormat );
+  vertexBuffer.SetData( data, 4u );
+
+  //Create the geometry
+  Dali::Geometry geometry = Dali::Geometry::New();
+  geometry.AddVertexBuffer( vertexBuffer );
+  geometry.SetType(Dali::Geometry::TRIANGLE_STRIP );
+
+  return geometry;
+}
+} // DemoHelper
+
+#endif // DALI_DEMO_UTILITY_H
diff --git a/shared/view.h b/shared/view.h
new file mode 100644 (file)
index 0000000..4497a63
--- /dev/null
@@ -0,0 +1,180 @@
+#ifndef DALI_DEMO_HELPER_VIEW_H
+#define DALI_DEMO_HELPER_VIEW_H
+
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <dali-toolkit/dali-toolkit.h>
+#include <dali-toolkit/devel-api/controls/tool-bar/tool-bar.h>
+
+
+namespace DemoHelper
+{
+
+/**
+ * Provide a style for the view and its tool bar.
+ */
+struct ViewStyle
+{
+  ViewStyle( float toolBarButtonPercentage, float toolBarTitlePercentage, float toolBarHeight, float toolBarPadding )
+  : mToolBarButtonPercentage( toolBarButtonPercentage ),
+    mToolBarTitlePercentage( toolBarTitlePercentage ),
+    mToolBarHeight( toolBarHeight ),
+    mToolBarPadding( toolBarPadding )
+  {}
+
+  float mToolBarButtonPercentage; ///< The tool bar button width is a percentage of the tool bar width.
+  float mToolBarTitlePercentage;  ///< The tool bar title width is a percentage of the tool bar width.
+  float mToolBarHeight;           ///< The tool bar height (in pixels).
+  float mToolBarPadding;          ///< The tool bar padding (in pixels)..
+};
+
+const ViewStyle DEFAULT_VIEW_STYLE( 0.1f, 0.7f, 80.f, 4.f );
+
+const char*                   DEFAULT_TEXT_STYLE_FONT_FAMILY("HelveticaNue");
+const float                   DEFAULT_TEXT_STYLE_POINT_SIZE( 8.0f );
+
+const Dali::Toolkit::Alignment::Padding DEFAULT_PLAY_PADDING(12.0f, 12.0f, 12.0f, 12.0f);
+const Dali::Toolkit::Alignment::Padding DEFAULT_MODE_SWITCH_PADDING(8.0f, 8.0f, 8.0f, 8.0f);
+
+float ScalePointSize(int pointSize)
+{
+  Dali::Vector2 dpi = Dali::Stage::GetCurrent().GetDpi();
+  float meanDpi = (dpi.height + dpi.width) * 0.5f;
+  return pointSize * 220.0f / meanDpi;        // 220 is the default horizontal DPI defined in adaptor Application
+}
+
+Dali::Layer CreateToolbar( Dali::Toolkit::ToolBar& toolBar,
+                           const std::string& toolbarImagePath,
+                           const std::string& title,
+                           const ViewStyle& style )
+{
+  Dali::Stage stage = Dali::Stage::GetCurrent();
+
+  Dali::Layer toolBarLayer = Dali::Layer::New();
+  toolBarLayer.SetName( "TOOLBAR_LAYER" );
+  toolBarLayer.SetAnchorPoint( Dali::AnchorPoint::TOP_CENTER );
+  toolBarLayer.SetParentOrigin( Dali::ParentOrigin::TOP_CENTER );
+  toolBarLayer.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::WIDTH );
+  toolBarLayer.SetSize( 0.0f, style.mToolBarHeight );
+
+  // Raise tool bar layer to the top.
+  toolBarLayer.RaiseToTop();
+
+  // Tool bar
+  toolBar = Dali::Toolkit::ToolBar::New();
+  toolBar.SetName( "TOOLBAR" );
+  Dali::Property::Map background;
+  background["url"] = toolbarImagePath;
+  toolBar.SetProperty( Dali::Toolkit::Control::Property::BACKGROUND, background );
+  toolBar.SetParentOrigin( Dali::ParentOrigin::TOP_CENTER );
+  toolBar.SetAnchorPoint( Dali::AnchorPoint::TOP_CENTER );
+  toolBar.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+
+  // Add the tool bar to the tool bar layer.
+  toolBarLayer.Add( toolBar );
+
+  // Tool bar text.
+  if( !title.empty() )
+  {
+    Dali::Toolkit::TextLabel label = Dali::Toolkit::TextLabel::New();
+    label.SetAnchorPoint( Dali::AnchorPoint::TOP_LEFT );
+    label.SetStyleName( "ToolbarLabel" );
+    label.SetProperty( Dali::Toolkit::TextLabel::Property::TEXT, title );
+    label.SetProperty( Dali::Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+    label.SetProperty( Dali::Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+    label.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::HEIGHT );
+
+    // Add title to the tool bar.
+    const float padding( style.mToolBarPadding );
+    toolBar.AddControl( label, style.mToolBarTitlePercentage, Dali::Toolkit::Alignment::HorizontalCenter, Dali::Toolkit::Alignment::Padding( padding, padding, padding, padding ) );
+  }
+
+  return toolBarLayer;
+}
+
+Dali::Layer CreateView( Dali::Application& application,
+                        Dali::Toolkit::Control& view,
+                        Dali::Toolkit::ToolBar& toolBar,
+                        const std::string& backgroundImagePath,
+                        const std::string& toolbarImagePath,
+                        const std::string& title,
+                        const ViewStyle& style = DEFAULT_VIEW_STYLE )
+{
+  Dali::Stage stage = Dali::Stage::GetCurrent();
+
+  // Hide the indicator bar
+  application.GetWindow().ShowIndicator( Dali::Window::INVISIBLE );
+
+  // Create default View.
+  view = Dali::Toolkit::Control::New();
+  view.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+  view.SetParentOrigin( Dali::ParentOrigin::CENTER );
+  view.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+
+  // Add the view to the stage before setting the background.
+  stage.Add( view );
+
+  // Set background image, loading it at screen resolution:
+  if ( !backgroundImagePath.empty() )
+  {
+    Dali::Property::Map map;
+    map[Dali::Toolkit::Visual::Property::TYPE] = Dali::Toolkit::Visual::IMAGE;
+    map[Dali::Toolkit::ImageVisual::Property::URL] = backgroundImagePath;
+    map[Dali::Toolkit::ImageVisual::Property::DESIRED_WIDTH] = stage.GetSize().x;
+    map[Dali::Toolkit::ImageVisual::Property::DESIRED_HEIGHT] = stage.GetSize().y;
+    map[Dali::Toolkit::ImageVisual::Property::FITTING_MODE] = Dali::FittingMode::SCALE_TO_FILL;
+    map[Dali::Toolkit::ImageVisual::Property::SAMPLING_MODE] = Dali::SamplingMode::BOX_THEN_LINEAR;
+    map[Dali::Toolkit::ImageVisual::Property::SYNCHRONOUS_LOADING] = true;
+    view.SetProperty( Dali::Toolkit::Control::Property::BACKGROUND, map );
+  }
+
+  // FIXME
+  // Connects the orientation signal with the View::OrientationChanged method.
+  //application.GetOrientation().ChangedSignal().Connect( &view, &Dali::Toolkit::View::OrientationChanged );
+
+  // Create default ToolBar
+  Dali::Layer toolBarLayer = CreateToolbar( toolBar, toolbarImagePath, title, style );
+
+  // Add tool bar layer to the view.
+  view.Add( toolBarLayer );
+
+  // Create a content layer.
+  Dali::Layer contentLayer = Dali::Layer::New();
+  contentLayer.SetAnchorPoint( Dali::AnchorPoint::CENTER );
+  contentLayer.SetParentOrigin( Dali::ParentOrigin::CENTER );
+  contentLayer.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::ALL_DIMENSIONS );
+  view.Add( contentLayer );
+  contentLayer.LowerBelow( toolBarLayer );
+
+  return contentLayer;
+}
+
+Dali::Toolkit::TextLabel CreateToolBarLabel( const std::string& text )
+{
+  Dali::Toolkit::TextLabel label = Dali::Toolkit::TextLabel::New( text );
+  label.SetStyleName( "ToolbarLabel" );
+  label.SetProperty( Dali::Toolkit::TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" );
+  label.SetProperty( Dali::Toolkit::TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" );
+  label.SetResizePolicy( Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::HEIGHT );
+
+  return label;
+}
+
+} // DemoHelper
+
+#endif // DALI_DEMO_HELPER_VIEW_H
diff --git a/tests-reel/dali-tests-reel.cpp b/tests-reel/dali-tests-reel.cpp
new file mode 100644 (file)
index 0000000..7abe064
--- /dev/null
@@ -0,0 +1,66 @@
+/*
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+#include <dali/dali.h>
+
+// INTERNAL INCLUDES
+#include "shared/dali-table-view.h"
+#include "shared/dali-demo-strings.h"
+
+using namespace Dali;
+
+int DALI_EXPORT_API main(int argc, char **argv)
+{
+  // Configure gettext for internalization
+#if INTERNATIONALIZATION_ENABLED
+  bindtextdomain(DALI_DEMO_DOMAIN_LOCAL, DEMO_LOCALE_DIR);
+  textdomain(DALI_DEMO_DOMAIN_LOCAL);
+  setlocale(LC_ALL, DEMO_LANG);
+#endif
+  Application app = Application::New( &argc, &argv, DEMO_STYLE_DIR "/tests-theme.json" );
+
+  // Create the demo launcher
+  DaliTableView demo(app);
+
+  demo.AddExample(Example("benchmark.example", DALI_DEMO_STR_TITLE_BENCHMARK));
+  demo.AddExample(Example("compressed-texture-formats.example", DALI_DEMO_STR_TITLE_COMPRESSED_TEXTURE_FORMATS));
+  demo.AddExample(Example("homescreen-benchmark.example", DALI_DEMO_STR_TITLE_HOMESCREEN));
+  demo.AddExample(Example("pre-render-callback.example", DALI_DEMO_STR_TITLE_PRE_RENDER_CALLBACK));
+  demo.AddExample(Example("perf-scroll.example", DALI_DEMO_STR_TITLE_PERF_SCROLL));
+  demo.AddExample(Example("point-mesh.example", DALI_DEMO_STR_TITLE_POINT_MESH));
+  demo.AddExample(Example("property-notification.example", DALI_DEMO_STR_TITLE_PROPERTY_NOTIFICATION));
+  demo.AddExample(Example("simple-visuals-control.example", DALI_DEMO_STR_TITLE_SIMPLE_VISUALS_CONTROL));
+  demo.AddExample(Example("text-fonts.example", DALI_DEMO_STR_TITLE_TEXT_FONTS));
+  demo.AddExample(Example("text-memory-profiling.example", DALI_DEMO_STR_TITLE_TEXT_MEMORY_PROFILING));
+  demo.AddExample(Example("text-overlap.example", DALI_DEMO_STR_TITLE_TEXT_OVERLAP));
+  demo.AddExample(Example("visual-fitting-mode.example", DALI_DEMO_STR_TITLE_VISUAL_FITTING_MODE));
+  demo.AddExample(Example("visual-transitions.example", DALI_DEMO_STR_TITLE_VISUAL_TRANSITIONS));
+  demo.AddExample(Example("simple-scroll-view.example", DALI_DEMO_STR_TITLE_SIMPLE_SCROLL_VIEW));
+  demo.AddExample(Example("simple-text-label.example", DALI_DEMO_STR_TITLE_TEXT_LABEL));
+  demo.AddExample(Example("simple-text-field.example", DALI_DEMO_STR_TITLE_TEXT_FIELD));
+  demo.AddExample(Example("simple-text-renderer.example", DALI_DEMO_STR_TITLE_TEXT_RENDERER));
+  demo.AddExample(Example("simple-text-visual.example", DALI_DEMO_STR_TITLE_TEXT_VISUAL));
+  demo.AddExample(Example("simple-bitmap-font-text-label.example", DALI_DEMO_STR_TITLE_TEXT_LABEL_BITMAP_FONT));
+
+  demo.SortAlphabetically( true );
+
+  // Start the event loop
+  app.MainLoop();
+
+  return 0;
+}